pax_global_header00006660000000000000000000000064122610712650014514gustar00rootroot0000000000000052 comment=4e4e653f9f0805745819b2e936c13311be48e8a7 qupzilla-1.6.0/000077500000000000000000000000001226107126500133615ustar00rootroot00000000000000qupzilla-1.6.0/.gitignore000066400000000000000000000005541226107126500153550ustar00rootroot00000000000000build DEBIAN *.deb *.pro.user* *.autosave *~ *.a *.orig *.qm *.o !qt_*.qm headers*.tar.gz license_template Makefile* bin/qupzilla lib*.so* bin/core qupzilla.sh git_revision *.exe *.dll *.lib *.exp *.zip Thumbs.db tests/modeltest *.pdb *.ilk *.kdev4 *.swp *_manifest.* *.embed.manifest bin/autotests .clang_complete .tx/ bin/qupzilla.app .DS_Store *.dylib hunspell qupzilla-1.6.0/AUTHORS000066400000000000000000000064601226107126500144370ustar00rootroot00000000000000Main developer and project maintainer: David Rosca Contributors: Mladen Pejaković (webview context menu improvements, speed dial background) Alexander Samilov (tab previews) Seyyed Razi Alavizadeh (fixed UI for RTL languages) Franz Fellner (new restore session ui) Bryan M Dunsmore (opening background tabs, closing window when closing last tab) Mariusz Fik (fixed tab order in preferences dialog) Daniele Cocca (close tabs with middle click, initial work on speed dial) Giuseppe Calà (fixed loading of bookmarklets) Jan Rajnoha (QupZilla icon) Translators: Jonathan Hooverman (German) Heimen Stoffels (Dutch) Peter Vacula (Slovak) Federico Fabiani (Italian) Francesco Marinucci (Italian) Jorge Sevilla (Spanish) Michał Szymanowski (Polish) Mariusz Fik (Polish) Jérôme Giry (French) Nicolas Ourceau (French) Vasilis Tsivikis (Greek) Rustam Salakhutdinov (Russian) Oleg Brezhnev (Russian) Sérgio Marques (Portuguese) Alexandre Carvalho (Brazilian Portuguese) Mladen Pejaković (Serbian) Unink-Lio (Chinese) Yu Hai (Chinese) Wu Cheng-Hong (Traditional Chinese) Widya Walesa (Indonesian) Beqa Arabuli (Georgian) Daiki Noda (Japanese) Ștefan Comănescu (Romanian) Gábor Oberle (Hungarian) Piccoro McKay Lenz (Venezulean Spanish) Stanislav Kuznietsov (Ukrainian) Seyyed Razi Alavizadeh (Persian) Guillem Prats (Catalan) Clara Villalba (Catalan) Xabier Aramendi (Basque) Special thanks: Jonathan Hooverman (english language correction) Peter Vacula (for a big support in the beginnigs) Sergio Cipolla (modifications to QupZilla icon) Radomir Orkac (qupzilla.com domain) qupzilla-1.6.0/BUILDING000066400000000000000000000172561226107126500145140ustar00rootroot00000000000000General ---------------------------------------------------------------------------------- If you can, you should use precompiled packages for your distribution. But if you cannot use them, or they are not available, please read this information before compiling. After your binary is successfuly compiled, you need to copy bin/ folder from git to specific directory by your system you compiled for. On Linux, you can easily do it by running make install. If you are unsure where is the right place, you can check it directly from QupZilla by clicking from Help Menu on Configuration Information, then in Path section. You may want to build QupZilla with debugging symbols (for generating backtrace of crash) as easily as adding one line to src/defines.pri: CONFIG += debug QupZilla requires Qt (>=4.7.0) and QtWebKit (at least version included in Qt 4.7) Microsoft Windows ---------------------------------------------------------------------------------- You need Microsoft Visual C++ Compiler 2010 or higher, Qt Libraries 4.8.0 or higher, QtWebKit 2.3 or higher and Hunspell library in order to build QupZilla. It is possible, with small changes, to build also with older Microsoft compilers or without Hunspell spellchecking. However, it is not expected from Windows users to build their software, so only one configuration is supported by default. Linux / Unix ---------------------------------------------------------------------------------- You need to have Qt 4 (>= 4.7) or Qt 5 development libraries, pkg-config is highly recommended to correctly detect QtWebKit version. Next compulsory requirement is OpenSSL (libcrypto). X11 libraries are also required unless you specify NO_X11 build option. To build spellcheck plugin, you need: - QtWebKit 2.3 or higher - pkg-config installed - libhunspell-dev installed To build KWallet plugin, you need: - kdelibs-dev installed - set KDE_INTEGRATION build flag MAC OS X ---------------------------------------------------------------------------------- There is no extra dependency, you only need Qt tools and XCode. After successful compilation, you need to run macdeploy.sh script to correctly build the application bundle. You will do it with following command: $ ./scripts/macdeploy.sh You need to specifiy path to macdeployqt (usually in QTDIR/bin/macdeployqt) only if it is not in PATH. OS/2 ---------------------------------------------------------------------------------- I cannot provide support for QupZilla on OS/2 as I don't have access to machine with OS/2, but it is possible to get QupZilla working there. Builds are provided by netlabs.org (http://svn.netlabs.org/qtapps/wiki/QT4%20Networking) FreeBSD ---------------------------------------------------------------------------------- You may need to set few sysctls to get QupZilla running with raster graphics system. For more informations, please see FAQ. Available Defines ---------------------------------------------------------------------------------- You can set define directly in file (src/defines.pri) or set environment variable by $ export NAME="value" General: PORTABLE_BUILD QupZilla won't write any data outside of path of exection. It will also disable plugins by default. (disabled by default) example: $ export PORTABLE_BUILD="true" USE_WEBGL Enable WebGL. You need to build QupZilla with WebKit built with WebGL support, otherwise you won't be able to compile without errors. Only for QtWebKit lower than 2.3 (disabled by default) example: $ export USE_WEBGL="true" NONBLOCK_JS_DIALOGS Enable non-blocking JavaScript dialogs from alert() prompt() and confirm() functions. They are shown inside page and are not blocking application window. However, due to synchronous API, there is a possible crash when closing browser windows with opened dialogs. If you can take this risk and/or make sure you aren't closing browser with opened dialogs, you may enable this option. These dialogs are much more beautiful than normal QDialogs. (disabled by default) example: $ export NONBLOCK_JS_DIALOGS="true" ENABLE_OPACITY_EFFECT Enable opacity effect on animated tab previews. Tab previews will then fade-in on show. However, this feature may result in wrong scrolling into anchor (#) links. Rendering of opacity effect may also be garbled due to Flash. (disabled by default) example: $ export ENABLE_OPACITY_EFFECT="true" Windows specific defines: W7API Enable Windows 7 API support Requires linking against libraries from Microsoft Visual C++ Compiler 2010 (enabled by default) W7TASKBAR Enable Windows 7 Taskbar support Requires linking against libraries from Microsoft Visual C++ Compiler 2010 May cause crash when downloading files on some systems. (disabled by default) Linux / Unix specific defines: NO_X11 Disable all direct X11 calls. Enable when building for Wayland. example: $ export NO_X11="true" KDE_INTEGRATION Enable KDE integration. Currently it enables building of KWallet Password plugin, which provides support for storing passwords in KWallet. example: $ export KDE_INTEGRATION="true" USE_LIBPATH By default, /usr/lib/ is used for libQupZilla and /usr/lib/qupzilla for plugins. You can change it by setting this define. Ending slash is needed! example: $ export USE_LIBPATH="/usr/lib64/" NO_SYSTEM_DATAPATH By default, QupZilla is using /usr/share/qupzilla/ path for storing themes and translations. By setting this define, QupZilla will use path of execution. (disabled by default) example: $ export NO_SYSTEM_DATAPATH="true" QUPZILLA_PREFIX You can define different prefix. Prefix must contain ending slash. (default prefix is "/usr/") QupZilla binary will then be moved to PREFIX/bin/, use PREFIX/share/qupzilla/ as datadir, PREFIX/share/applications for desktop launcher and PREFIX/share/pixmaps for icon. Ending slash is needed! example: $ export QUPZILLA_PREFIX="/usr/" DISABLE_DBUS Build without QtDBus module. Native desktop notifications will be disabled. example: $ export DISABLE_DBUS="true" qupzilla-1.6.0/CHANGELOG000066400000000000000000000604721226107126500146040ustar00rootroot00000000000000Version 1.6.0 * released 1 January 2014 * added support for Proxy Auto-Config (PAC) * added option to open another private window from private window * added option to detach tabs from window * added delete action in edit context menu on page * added possibility to remove EasyList from AdBlock * added inline domain completion to urlbar * added KWallet password backend plugin * added Gnome-Keyring password backend plugin * added StatusBar Icons plugin that adds extra icons to statusbar * added support for POST method in search engines manager * added context menu for translating webpage * added possibility to export bookmarks to html file * great performance improvement for matching basic rules in AdBlock * themes can now be loaded from profile directories * pagescreen can now save output into number of formats, including PDF * proxy exceptions now supports wildcards (*, ?) * cancel upload when trying to upload non-readable files * select previous / next engines with ctrl+up/down in websearchbar * ask user first before closing all but the current tab from tabbar * last 2 sessions are now backuped in profile directory * always show tab previews after a small delay * GreaseMonkey: added icon in statusbar * GreaseMonkey: added support for GM_Settings * GreaseMonkey: fixed userscripts when first loading plugin * GreaseMonkey: run userscripts in all frames on page * oxygen: set rounded corners for tooltips * oxygen: workaround for transparent background of tooltips * X11: Set correct WM_CLASS property to windows * fixed: size of preferences dialog on low-res screens * fixed: loading plugins with relative paths in portable build * fixed: displaying a lot of RSS feeds in RSS widget in locationbar * fixed: enabling disabled rules in AdBlock now works everytime * fixed: parsing OpenSearch files with XML declaration * fixed: don't show urls multiple times in url completer * fixed: drag & drop moving folders under bookmarks toolbar * fixed: files with relative paths can now be opened from command line * fixed: issues with overflowing tabs, it is now possible scroll through all tabs Version 1.4.4 * released 1 September 2013 * added ctrl/shift + insert shortcuts to copy/paste in webview * don't try to download empty page * reverted forcing SSLv3 protocol for secured connections * duckduckgo.com is now default search engine * fixed: correct height of icons widget in SiteInfo * fixed: hide tabbar with only one tab option now works in fullscreen * fixed: crash with Oxygen theme when closing windows with tabs on top * fixed: saving IgnoreAllSSLWarnings option from SSLManager * fixed: crash on saving settings with unavailable theme * fixed: Accept-Language header now works with all sites * fixed: using external download manager with use defined location setting * GreaseMonkey: fixed buttons in script list with RTL layout * GreaseMonkey: run userscripts in all frames on page * X11: Set correct WM_CLASS property to windows Version 1.4.3 * released 9 May 2013 * fixed: crash upon closing private browsing window * fixed: element hiding rules not working when more than 5000 in subscription * fixed: saving some tab icons in session file * fixed: make Acid3 test pass even with AdBlock enabled * mac: attempt to fix slow scrolling on trackpad Version 1.4.2 * released 22 April 2013 * don't limit speed of loading animation in tabbar * fixed loading HTML5 videos on YouTube * fixed saving cursive font in fonts preferences * fixed translating edit actions in page context menu * fixed connecting to older secured servers by forcing older SSL protocol * fixed installing bash completions to correct folder * fixed deleting lockfile upon closing application * fixed occasional crash when extracting form data from page * fixed crash in akn plugin while closing tab with labels shown * fixed crash on close when tabs on top is enabled with oxygen theme * GreaseMonkey: fixed laoding scripts with last line commented * mac: correctly refreshing state of menus * mac: added dock menu with basic actions Version 1.4.1 * released 15 March 2013 * fixed websearchbar not respecting select all on click settings * fixed certificates from custom path disappearing on saving preferences * fixed showing empty back/forward history menu upon restoring session * fixed duplicating current url in history when restoring session * fixed instantly showing popup when clicking on back/forward button Version 1.4.0 * released 11 March 2013 * highlighting host in address in locationbar * can now be compiled using Qt 5 * QtWebKit 2.3 new features - caret browsing, animated scrolling * added support for FTP listing files and downloading * added support for saving passwords of multiple users per site * added support for showing tabs on top * added bash autocompletion file * added more actions to super menu, also show menu inside window * possibility to select text on page with Shift+Arrow keys * asking user whether to allow site to use notifications/geolocation * option to set JavaScript privacy permissions * option to specify default search engine used in locationbar * option to disable search suggestions in websearchbar * option to search only whole words in source viewer * option to hide reload/stop buttons in navigationbar * option to disable alt/ctrl + numbers shortcuts * option to switch to tab from locationbar popup completer * option to set where to store network cache * use .qupzilla/tmp instead of /tmp for temporary data * saving passwords should now work for much more sites * don't steal Ctrl+B/U/I shortcuts from page * disabled by default opacity effect on tab previews - see BUILDING * improved showing navigation toolbar in fullscreen * moved config directory into ~/.config/qupzilla * certificates bundle is now only used on windows * reduced memory usage of AdBlock (saves up to 30MB with just EasyList) * greatly improved performance when matching regexp rules in AdBlock * GreaseMonkey: reload script if source file changed on disk * GreaseMonkey: fixed don't loading invalid scripts * fixed opening browser with url with ampersand (%26) as command line argument * fixed scrolling to anchor in background tabs * fixed parsing UTF-8 filenames in Content-Disposition header * fixed crash with context menu in websearchbar and locationbar * fixed loading NYTimes skimmer page * fixed cookie domain handling according to RFC 6265 * fixed qvalue format in Accept-Language HTTP header * fixed sorting files case insensitively in file scheme handler * fixed possible crash in saving page screen of a really long page * fixed showing window in fullscreen with XFCE * fixed AdBlock blocking netscape plugin even without Click2Flash * X11: fixed Ctrl+Q shortcut for DEs other than KDE and Gnome * windows: fixed color of found text when searching on page * windows: fixed navigating to file links and x: labels in file: scheme handler * windows: fixed downloading utf-8 encoded adblock subscriptions * windows: improved installer allows registering as default web browser * windows: check and set as default browser from preferences * mac: fixed not working global menu after closing browser window Version 1.3.5 * released 16 September 2012 * new Persian translation * option to remove web search bar * warning user when removing page from speed dial * option to align pages to center in speed dial * added shortcut for Clear private data * new options in AdBlock menu to disable it for domain and for single page * added option to disable search suggestions in search bar * added option to choose what to suggest in address bar * Save x as ... actions will always show file dialog * possibility to choose to use external download manager on every download * remember last section in preferences * much more tabs now fits into tabbar without overflowing into tab buttons * smarter address bar completer will show better search results * support for bookmarks manager and sidebar drag&drop managing bookmarks * new User Agent manager lets you set User Agent per site * new restore session page lets you choose which tabs you want to restore * new scheme handler for file protocol allows browsing through directories * new option to show loading progress in address bar * new option to hide close button on tabs * new option to start new instance with --no-remote option * X11: restore windows on correct virtual desktops * MouseGestures: added 2 new gestures for switching tabs * fixed visibility of navigation bar in fullscreen * fixed bad position of add tab button when there is a lot of tabs * fixed gui with RTL languages * fixed issue with infinite opening mailto links * fixed issue with showing warning after creating new profile * fixed clearing highlight when search text not found * fixed closing bookmarks menu when menu toolbar is hidden * fixed occasional crashes when closing tab while it is still loading Version 1.3.1 * released 16 July 2012 * Ctrl+= shortcut for + zoom in webview * Ctrl+Enter shortcut in PIM plugin now also works with enter on numpad * don't append QupZilla string to changed user agent * fixed ' and " chars in speed dial's input fields * fixed zooming with Ctrl+Wheel for some users * fixed issues with cookies filtering * fixed $subdocument matching in AdBlock * fixed $third-party in AdBlock rules when Referer header is empty * fixed issue with notification settings always reverting to osd notifications * fixed downloading UTF-8 subscriptions in AdBlock (eg. Ru Adlist) Version 1.3.0 * released 11 July 2012 * new Ukrainian translation * new plugins: GreaseMonkey and PIM (Personal Information Manager) * new command line option to open new window with url * can now open .xhtml files from open file dialog * added animated tab previews with option to turn animations off * possibility to change icon of bookmarks * ssl manager now can import own certificate * clear recent history now remembers last checked options * new urlbar completion widget can now show also entries from bookmarks * little changes in speed dial's preferences * support for 3rd party subscriptions in AdBlock * improved performance of AdBlock rules matching * possibility to add subscriptions with loading abp: links * private browsing is now opened in new window and new process * improved AdBlock dialog distinguishes rule types with colors * popup windows now have loading animation in urlbar * new gif for loading animation (spinner) * possibility to add RSS feed into external reader * option to specify preferred behaviour when opening new tab * inverting preferred new tab behaviour with shift modifier (eg. shift+middle click on link) * better support for Content-Disposition header (downloads) * Linux: middle clicking on add tab button will open new tab with global mouse selection's contents * Linux: generating backtrace and saving it into file upon application crash * Windows: fixed theme loading delay (showing ugly interface for a second when starting app) * fixed all issues with saving passwords (i hope so) * fixed saving passwords on some sites (parsing WebKit's data format) * fixed "go to web address" action when newlines were in string * fixed excessive ssl warnings when rejecting untrusted certificate * fixed dragging the whole text from some labels * fixed handling special characters when searching with shortcuts in urlbar * fixed "open external protocol" dialog overflowing out of desktop if url is too long * fixed "hide when there is only one tab" option in preferences * fixed "close other tabs" action in tabbar context menu * fixed rss popup in urlbar overflowing out of desktop if feed's title is too long * fixed animations occasionally stop working without any reason Version 1.2.0 * released 5 April 2012 * Brazilian Portuguese, Indonesian, Georgian, Japanese and Romanian translation * added information about configuration page qupzilla:config * added option to show only icons in bookmarks toolbar * added alt+d shortcut for focusing urlbar * added possibility to import bookmarks folder structure on html import * added option to create search engines from input element on page * added "don't load tabs until selected" option when restoring session * added option to separate http and https proxy configuration * added new page into site info: databases * added command line option to open url in current tab * support for utf-8 filenames in Content-Disposition header (downloads) * support for whitelisting/blacklisting cookies * improved source viewer, it now shows line numbers * improved html import - support for importing folders * improved performance of bookmarks import and deleting * sending referer header when opening new tab from webview * user agent workaround for google sites * fixed history of frames not saving * fixed loading unicode urls from command line * fixed removing local certificates * fixed dark color of text in urlbar when using dark theme * fixed garbled rendering of desktop notifications * fixed text in urlbar on https sites when using dark theme * fixed not saving cookies on crash * fixed option not to send Referer header to servers * fixed showing bad total + downloaded size when starting download * fixed toggling WebInspector Version 1.1.8 * released 14 February 2012 * added Swedish, Serbian and Traditional Chinese translation * added option to set Minimum font size in web pages * added option to edit bookmark from bookmarks toolbar context menu * added option to enable/disable HTML5 local storage (and to clear it) * added option not to send Referer header to servers * added option to use external download manager * added option to add/remove page in speed dial from bookmark star icon * added option to import/export passwords into xml file * added option to change user agent * added global shortcuts for loading sites in speed dial (Ctrl+1,2,...9) * added global shortcuts for switch to tabs (Alt+1,2,3...9) * added possibility to create new rss feeds in rss manager * added alt+left/right click shortcuts to navigate in page history * restoring / saving pinned tabs only on first window * Paste & Go option in urlbar and websearchbar * support for JavaScript Popup windows * improved History menu -> added Most visited menu here * don't saving icons in private mode * improved and refactored context menu on page * little improvements in speed dial * using global QSettings object, should save some writed to disk * remember last folder when saving new bookmarks * disabling adblock on local schemes * showing size of file going to be downloaded * improved browser responsibility when loading a lot of cookies/history * possibility to change background in Speed Dial * possibility to change number of dials in row in Speed Dial * possibility to change maximum number of dials in a row in Speed Dial * using QImages to store icons in database now - older icons won't work! * fixed showing file type when download file * fixed saving usernames with spaces in password manager * fixed loading of some rss feeds * fixed loading incomplete urls in speed dial * fixed all crashes/issues with web inspector * fixed memory leak when canceling download * fixed open new tab after active option * fixed saving of sidebar width * fixed occasional fails to restore session * fixed occasional crash when closing tabs/windows * fixed wrong tab focus order * fixed loss of speed dial settings * fixed cancelled downloads now no longer leak memory * fixed showing of "Are you sure to close x tabs?" question * fixed searching strings with special characters * fixed sending report in Report Bug page Version 1.1.5 * released 7 January 2012 * added Portuguese, French, Greek translation * support for loading long locale named qt translations * support for printing page through javascript window.print() * context menu in webview now handles also frames * using own CA certificates database instead of system one (+ automatic updates) * improved commandline options, possibility to use multiple options at once * hiding new tab while moving tabs * using bigger icons in Linux default theme * opens all bookmarks from folder on middle click * Ctrl+Enter in urlbar now appends .com & start loading * opening links in new tab now opens new tab next to current tab * drag&drop site icon on bookmarks toolbar creates bookmark * improved performance of deleting history entries -> moved into separate thread * fixed loading of local files from menu file -> open file... * fixed showing rss feeds without title * fixed searching on page when highlight is enabled + added shortcuts * fixed Click2Flash plugin and enables it by default again * fixed crash when closing WebInspector with QtWebKit 2.2 * fixed crash in Click2Flash plugin when element is not found * fixed "hide tabs when there is only one tab" option * fixed cookies loss when closing browser with private browsing * fixed overflowing bookmarks toolbar when there is a lot of bookmarks * fixed going to history items in history back/forward menu in new tab * fixed showing custom rules in AdBlock * fixed problem with downloading with right click -> download link * fixed suggestions for google and youtube Version 1.1.0 * released 14 December 2011 * option to turn on XSS Auditing * option to select all text in urlbar when clicking on it * added Speed Dial * possibility to select + copy text on a lot of labels * improved source code viewer performance + highlighting * importing bookmarks from html files * restoring closed tabs now remember position * multiple sizes icon in linux * fixed saving certificate exception * fixed overriding cursor by some flash objects * fixed problem with loading urls with % characters from history * fixed favicon of qupzilla internal pages in ubuntu * fixed loading of user defined stylesheet * fixed saving of user defined fonts Version 1.0.0 * released 9 November 2011 * possibility to place folders on bookmarks toolbar * password manager has now all passwords hidden by default * added a lot of keyboard shortcuts * fixed right click on back/next buttons shows menu * fixed fetching icons in bookmarks importing * fixed duplicated entries in back/next menus * fixed problem with adding addition tab when restoring more windows * fixed error handling in download manager * fixed various crashes * fixed updating AdBlock EasyList * fixed html highlighter Version 1.0.0-rc1 * possibility to delete click2flash object on page * improved SSL Manager (you can add paths to look for CA Certs) * Search Engines Manager + OpenSearch support with suggestions * add tab button is now shown next to last tab * you can open bookmark / history entry in new tab with middle button * fixed problem with bookmarks toolbar * fixed loading animation ending with page still loading * fixed occasional problem with updating address when going next/back in history * fixed crash when clearing history Version 1.0.0-beta4 * from this version, QupZilla is now fully skinnable * introduced 4 basic themes including Chrome, Windows and Mac theme * private browsing is now indicated in window title * added qupzilla: scheme - qupzilla:about, qupzilla:reportbug and new start page qupzilla:start * saving and restoring position and size of window * added "page screenshot" feature * fixed occasional problem with searching on Google from location bar * fixed crash in download manager Version 1.0.0-beta3 * whole urlbar has been rewritten - now every tab has own separate urlbar * click2flash now offers information about flash object * when downloading file with the name it already exists, it will be automatically renamed * history in menubar is refreshed only when needed, not with every click * added new library containing bookmarks, history and rss manager in single window * rewritten all animations, they are now smoother * fixed performance issue with web icons Version 1.0.0-beta2 * fixed issue with downloading secured content on Windows * image previews in site information dialog now properly handle relative links * reload with bypass cache feature (Shift+F5) * if download content is offered in empty tab with empty history, thus will be closed * hovered link url is shown even when statusbar is hidden * option to specify own CSS Style loaded with every page * fixed and enhanced command line interface * private browsing now uses temporary cookie jar * javascript prompts/alerts/confirms are now non-blocking * JumpList for Windows 7 integration Version 1.0.0-beta1 * duplicate panel feature added * added sidebars for history and bookmarks * close other tabs now keep pinned tabs open * option to hide 'add new tab' button * fixed some bugs in downloadmanager (with W7API also) * rewritten icon database, no longer forgetting icons * navigation in fullscreen is automatically showing/hiding * added support for notifications (OSD + native desktop on Linux) * added support for configuring Proxy (system configuration or your own) Version 0.9.9 * pinning tab feature added * basic AdBlock support * fixed some issues with restoring sessions * new Site Informations dialog including preview of pictures at the page * download manager now offers option to just open file (downloaded into temp folder) * added profiles support * edited look of some widgets for Windows Vista/7 Version 0.9.8 * added character encoding option in View menu * added option to change default fonts in Preferences * source viewer has now more features including HTML highlighter * option to specify how long history you want to delete from Clear Recent History in Tools menu * improved Windows installer, you can now choose which component to install Version 0.9.7 * fixed Flash issues on Windows * added SSL Exceptions Manager * added animated notifications for "save password" dialog Version 0.9.6 * fixed some issues with user background * added option to change font color (for dark backgrounds) * improved bookmarks / history / RSS Reader * new Windows installer * initial support for Plugins Version 0.9.5 * support for user specific background image for browser * new icons in navigation bar * brand new browser icon * new About dialog Version 0.9.4 * completely new design preferences + few changes in browser design * network disk cache added to speed up browsing * new options in preference with option to change maximum disk quota for cache * complete integration into Linux desktop * fixes in Debian packages Version 0.9.3 * another stability improves * added autosaver in case of browser crash * improved saving and restoring sessions with multiple windows * first Debian package for Linux Version 0.9.2 * lot of bugs fixed, including crash fixes * improved stability and speed of browser * added source viewer (without highlighting for now) * added simple download manager Version 0.9.1 * added bookmarks and history manager * added RSS Reader + indicator to location bar whether the page offers feeds * new design for Windows Vista/7 Version 0.9.0 * first version written in C++, built with mingw32 * almost all features from Python version implemented * finally fixed all problems relating to tabs * HTML5 supported from this version, including offline storage * added cookies manager * added simple Windows installer Version 0.x.x * written in Python qupzilla-1.6.0/COPYRIGHT000066400000000000000000000304351226107126500146610ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ ------------------------------------------------------------------------ AdBlock, LineEdit class and SqueezeLabel class: ------------------------------------------------------------------------ * Copyright (c) 2008 - 2009, Benjamin C. Meyer * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the Benjamin Meyer nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. ----------------------------------------------------------------------------- QtSingleApplication class: ----------------------------------------------------------------------------- ** ** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** This file is part of a Qt Solutions component. ** ** Commercial Usage ** Licensees holding valid Qt Commercial licenses may use this file in ** accordance with the Qt Solutions Commercial License Agreement provided ** with the Software or, alternatively, in accordance with the terms ** contained in a written agreement between you and Nokia. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Nokia gives you certain ** additional rights. These rights are described in the Nokia Qt LGPL ** Exception version 1.1, included in the file LGPL_EXCEPTION.txt in this ** package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** Please note Third Party Software included with Qt Solutions may impose ** additional restrictions and it is the user's responsibility to ensure ** that they have met the licensing requirements of the GPL, LGPL, or Qt ** Solutions Commercial license and the relevant license of the Third ** Party Software they are using. ** ** If you are unsure which license is appropriate for your use, please ** contact Nokia at qt-info@nokia.com. ** ----------------------------------------------------------------------------- HtmlHighlighter and PlainTextEditorWithLines classes: ----------------------------------------------------------------------------- /**************************************************************************** ** ** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:BSD$ ** You may use this file under the terms of the BSD license as follows: ** ** "Redistribution and use in source and binary forms, with or without ** modification, are permitted provided that the following conditions are ** met: ** * Redistributions of source code must retain the above copyright ** notice, this list of conditions and the following disclaimer. ** * Redistributions in binary form must reproduce the above copyright ** notice, this list of conditions and the following disclaimer in ** the documentation and/or other materials provided with the ** distribution. ** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor ** the names of its contributors may be used to endorse or promote ** products derived from this software without specific prior written ** permission. ** ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." ** $QT_END_LICENSE$ ** ****************************************************************************/ --------------------------------------------------------------------------- Click2Flash plugin: --------------------------------------------------------------------------- /* ============================================================ * * Copyright (C) 2009 by Benjamin C. Meyer * Copyright (C) 2010 by Matthieu Gicquel * * 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) version 3 or any later version * accepted by the membership of KDE e.V. (or its successor approved * by the membership of KDE e.V.), which shall act as a proxy * defined in Section 14 of version 3 of the license. * * 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, see . * * ============================================================ */ ----------------------------------------------------------------------------- EcWin7 class: ----------------------------------------------------------------------------- /* EcWin7 - Support library for integrating Windows 7 taskbar features * into any Qt application * Copyright (C) 2010 Emanuele Colombo * * 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. */ ----------------------------------------------------------------------------- OpenSearchReader + OpenSearchEngine class: ----------------------------------------------------------------------------- /* * Copyright 2009 Jakub Wieczorek * * 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., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA */ ----------------------------------------------------------------------------- CA certificates from Mozilla included in ca-bundle.crt: ----------------------------------------------------------------------------- # The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of # the License at http://www.mozilla.org/MPL/ # # Software distributed under the License is distributed on an "AS # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or # implied. See the License for the specific language governing # rights and limitations under the License. # # The Original Code is the Netscape security libraries. # # The Initial Developer of the Original Code is Netscape # Communications Corporation. Portions created by Netscape are # Copyright (C) 1994-2000 Netscape Communications Corporation. All # Rights Reserved. # # Contributor(s): # # Alternatively, the contents of this file may be used under the # terms of the GNU General Public License Version 2 or later (the # "GPL"), in which case the provisions of the GPL are applicable # instead of those above. If you wish to allow use of your # version of this file only under the terms of the GPL and not to # allow others to use your version of this file under the MPL, # indicate your decision by deleting the provisions above and # replace them with the notice and other provisions required by # the GPL. If you do not delete the provisions above, a recipient # may use your version of this file under either the MPL or the # GPL. ----------------------------------------------------------------------------- QtWin class from http://labs.qt.nokia.com/2009/09/15/using-blur-behind-on-windows/ ----------------------------------------------------------------------------- In application are used also some icons from Faenza and Oxygen icon sets, which are licensed under the GNU/GPL license. More info at http://tiheum.deviantart.com/art/Faenza-Icons-173323228 and http://www.oxygen-icons.org/ ----------------------------------------------------------------------------- qupzilla-1.6.0/FAQ000066400000000000000000000001121226107126500137050ustar00rootroot00000000000000Frequently Asked Questions https://github.com/QupZilla/qupzilla/wiki/FAQ qupzilla-1.6.0/GPLv3000066400000000000000000001045141226107126500142040ustar00rootroot00000000000000 GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The GNU General Public License is a free, copyleft license for software and other kinds of works. The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. The precise terms and conditions for copying, distribution and modification follow. TERMS AND CONDITIONS 0. Definitions. "This License" refers to version 3 of the GNU General Public License. "Copyright" also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. "The Program" refers to any copyrightable work licensed under this License. Each licensee is addressed as "you". "Licensees" and "recipients" may be individuals or organizations. To "modify" a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a "modified version" of the earlier work or a work "based on" the earlier work. A "covered work" means either the unmodified Program or a work based on the Program. To "propagate" a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. To "convey" a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. An interactive user interface displays "Appropriate Legal Notices" to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. 1. Source Code. The "source code" for a work means the preferred form of the work for making modifications to it. "Object code" means any non-source form of a work. A "Standard Interface" means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. The Corresponding Source for a work in source code form is that same work. 2. Basic Permissions. All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. 3. Protecting Users' Legal Rights From Anti-Circumvention Law. No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. 4. Conveying Verbatim Copies. You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. 5. Conveying Modified Source Versions. You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: a) The work must carry prominent notices stating that you modified it, and giving a relevant date. b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to "keep intact all notices". c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an "aggregate" if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. 6. Conveying Non-Source Forms. You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. A "User Product" is either (1) a "consumer product", which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, "normally used" refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. "Installation Information" for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. 7. Additional Terms. "Additional permissions" are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or d) Limiting the use for publicity purposes of names of licensors or authors of the material; or e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. All other non-permissive additional terms are considered "further restrictions" within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. 8. Termination. You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. 9. Acceptance Not Required for Having Copies. You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. 10. Automatic Licensing of Downstream Recipients. Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. An "entity transaction" is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. 11. Patents. A "contributor" is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's "contributor version". A contributor's "essential patent claims" are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, "control" includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. In the following three paragraphs, a "patent license" is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To "grant" such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. "Knowingly relying" means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. A patent license is "discriminatory" if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. 12. No Surrender of Others' Freedom. If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. 13. Use with the GNU Affero General Public License. Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. 14. Revised Versions of this License. The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. 15. Disclaimer of Warranty. THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. Limitation of Liability. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 17. Interpretation of Sections 15 and 16. If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 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 3 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, see . Also add information on how to contact you by electronic and paper mail. If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: Copyright (C) This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an "about box". You should also get your employer (if you work as a programmer) or school, if any, to sign a "copyright disclaimer" for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see . The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . qupzilla-1.6.0/QupZilla.pro000066400000000000000000000007331226107126500156470ustar00rootroot00000000000000#------------------------------------------------- # # QupZilla - QtWebKit browser # # Project created by QtCreator 2010-12-18T14:53:41 # #------------------------------------------------- lessThan(QT_VERSION, 4.7) { error("QupZilla requires at least Qt 4.7!") } # Create plugins directory first on Mac / Linux mac|unix: system(test -d bin/plugins || mkdir bin/plugins) TEMPLATE = subdirs SUBDIRS = src/lib src/main CONFIG += ordered SUBDIRS += src/plugins qupzilla-1.6.0/README.md000066400000000000000000000107071226107126500146450ustar00rootroot00000000000000QupZilla Web Browser ---------------------------------------------------------------------------------------- Homepage: [http://www.qupzilla.com](http://www.qupzilla.com) Blog: [http://blog.qupzilla.com](http://blog.qupzilla.com) IRC: `#qupzilla` at `irc.freenode.net` Translations: [https://www.transifex.com](https://www.transifex.com/projects/p/qupzilla) About QupZilla ---------------------------------------------------------------------------------------- QupZilla is a new and very fast QtWebKit browser. It aims to be a lightweight web browser available through all major platforms. This project has been originally started only for educational purposes. But from its start, QupZilla has grown into a feature-rich browser. QupZilla has all standard functions you expect from a web browser. It includes bookmarks, history (both also in sidebar) and tabs. Above that, you can manage RSS feeds with an included RSS reader, block ads with a builtin AdBlock plugin, block Flash content with Click2Flash and edit the local CA Certificates database with an SSL Manager. QupZilla's main aim is to be a very fast and very stable QtWebKit browser available to everyone. There are already a lot of QtWebKit browsers available, but they are either bound to the KDE environment (rekonq), are not actively developed or very unstable and miss important features. But there is missing a multiplatform, modern and actively developed browser. QupZilla is trying to fill this gap by providing a very stable browsing experience. History ---------------------------------------------------------------------------------------- The very first version of QupZilla has been released in Decemeber 2010 and it was written in Python with PyQt4 bindings. After a few versions, QupZilla has been completely rewritten in C++ with the Qt Framework. The Windows version of QupZilla was compiled using MingW, but due to a huge problem with Flash, it is now compiled with Microsoft Visual C++ Compiler 2008. First public release was 1.0.0-b4. Compiling ---------------------------------------------------------------------------------------- Before you start compiling, make sure that you have installed the Qt (>=4.7) development libraries and you have read the [BUILDING](https://github.com/QupZilla/qupzilla/blob/master/BUILDING) information. **Linux** * OpenSSL (libcrypto) is required * pkg-config is recommended (to correctly detect versions of QtWebKit) * pkg-config is required for Hunspell spellcheck * Hunspell development package for spellcheck * QtWebKit 2.3 is needed to have support for spellcheck **Windows** * OpenSSL (libeay32) is required * QtWebKit 2.3 is required * Hunspell library is required for spellcheck Then you can start compiling by running this commands: $ qmake $ make After a successful compilation the executable binary can be found in the bin/ directory. On Fedora and possibly other Linux distributions you need to replace `qmake` with `qmake-qt4` or `qmake-qt5` since `qmake` is for Qt3. On Linux/Unix: To install QupZilla, run this command: (it may be necessary to run it as root) $ make install On Mac OS X: To deploy QupZilla in bundle, run this command: $ ./scripts/macdeploy.sh full-path-to-macdeployqt You need to specify path to `macdeployqt` only if it is not in PATH. Current version ---------------------------------------------------------------------------------------- The current stable version of QupZilla is 1.6.0. You can download precompiled packages and the sources from the download section at [homepage](http://www.qupzilla.com/download). However, if you want the latest revision, just take the latest code snapshot either by downloading a tarball or running: $ git clone git://github.com/QupZilla/qupzilla.git If you are using Ubuntu, you can download QupZilla from PPA: $ sudo add-apt-repository ppa:nowrep/qupzilla $ sudo apt-get update $ sudo apt-get install qupzilla for development version: $ sudo apt-get install qupzilla-next FAQ and Changelog ---------------------------------------------------------------------------------------- If you are experiencing some sort of problem, please read the FAQ before you open an issue. [FAQ](https://github.com/QupZilla/qupzilla/wiki/FAQ) | [Changelog](https://github.com/QupZilla/qupzilla/blob/master/CHANGELOG) | [Bug Reports](https://github.com/QupZilla/qupzilla/wiki/Bug-Reports) qupzilla-1.6.0/bin/000077500000000000000000000000001226107126500141315ustar00rootroot00000000000000qupzilla-1.6.0/bin/locale/000077500000000000000000000000001226107126500153705ustar00rootroot00000000000000qupzilla-1.6.0/bin/locale/qt_ar.qm000066400000000000000000001554051226107126500170470ustar00rootroot00000000000000+K+QN++į+įOx+į+%F0imFn4VnFn4VG)pHw9Hw9)HI'D-I I#wI}J+IJ+<J6J6&J6* J6.J6QJ6TmJ6sJ6~ J6~J6iJ6PJ6VKQK:LZLUL'Lb M5.MblsMecM{M?ONEO|&sPFE>PFERPFEQGRGR|mRGS8^ZTTaTʴETtU}HV1oV1yVl ~VZV<VVeVVHW!$WWPWTo{WTw#WTX,XX˙,XYFYI*YSY>jZkZJ4\|\\_v(vW4L]5]6CDIA,[,RIygB{-MZ9qh<pb#Qh(Ŏ@=2cA5vKC8CcCeD"M aR?6kfP orSw^U|{ya^GFq2S28./Ai dXydx~"l) /=N?NNkyenUiW]VlyzNk1G  u:a6(t6P6UzOR[T^&zr[EE:I|{=V8A[y`vCjCnpmQMPvMww6e Iq#)*/eByfdZf{cփajC@u(IYX$}E$uD(^dK{֊&"\Z;y_{IxS$Mh^oiwxCۊ&@N"]=]AIIdII)I|IIIIYi)ycA{YIKD2ox ,),O,}, ,,]i0Xu+5$ vfR FfR=*;4=F>cduSH2V+FVfR5+ Fn Il%C&~G6+l,nMMV|Hgk{yj.5t5trF> HG%Lǥh~++z+Š`~t{yivA;JexAJrf9\IsJ%#%M5ƨƨҝz է?z2ߺZ1:^C!Yv~b<~bBo /p=/y6 GbAPѧ*=[}[^]k*<^ne {x{C}u}w }w<}wl%Bv{tZtv.M.}32aiUsD_ z+0OBW,D2/?;[CU]1DJ0[;K KtU|\ut |(^|vL}wZY}$}$}$|ϗ|Z|OK<+{f+׳y  _oELu.%5BTsJi~Wm1b9 wpCtIE'XU :fd}gAhIFx1 UNz0mMl^4jnvo†5niCC-ʴ5Qʴ5ʶS$z<ԄDbdF5 F5RCI I:As Ac Ac> 5 c 3 ҉p B 팤Wo  qI o1 )o + 7u =L Br^ Ty Y) T^ cEt dr e e w9 H~ H5 ! $8Y .@  i`  O %j J J9 k,  ̺LM -DM6 ۷v k k 0 Xy z+ IE %K2 7 .$ 7F >M >N& >N >\ ?t| DT I!U I# K K RV> RV RVs S.' Sya Y YT* hۮEe j7o4 p$  ^Y F j  T $ +>% 0E ;ɾ9 PtR Pt fev fet gn iFC i;b i8 m9 m9; u w6 wr w w}| w} w}@ ^UI ɰer' X Y< ! D  = t5R t5 SY ;**[ a.*vɅ4^\Ǘ:XABݖkg[ye  8$U %4-%4A0i)#02wTDHL$.Zc5c5g3uyC{~a:`bT99ZN3ky_ڔ.Pht2"tdt{i':D'B 'D*(HJ( Close Tab CloseButton'D*H'5D CommunicationPhonon:: 'D#D9(GamesPhonon::'D#:'FJMusicPhonon::'D*F(JG'* NotificationsPhonon::'DAJ/JHVideoPhonon::5'E)MutedPhonon::VolumeSlider-,E 'D5H*: %1% Volume: %1%Phonon::VolumeSlider0DE J*E 'D9+H1 9DI %1 %2%1, %2 not definedQ3Accel-0ADelete Q3DataTable.'7&False Q3DataTable %6'A)Insert Q3DataTable5-J-True Q3DataTable *-/J+Update Q3DataTablel%1 DE J*EQ %J,'/ 'DEDAQ. *-BQB EF 'DE3'1 H %3E 'DEDAQ.+%1 File not found. Check path and filename. Q3FileDialog-&0A&Delete Q3FileDialog&D'&No Q3FileDialog &EH'AB&OK Q3FileDialog&A*-&Open Q3FileDialog*&:JJ1 'D%3E&Rename Q3FileDialog&-A8&Save Q3FileDialog:J1 &EA1H2 &Unsorted Q3FileDialog&F9E&Yes Q3FileDialogD<qt>GD *1J/ A9D' -0A %1 "%2"</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialog",EJ9 'DEDAQ'* (*) All Files (*) Q3FileDialog&,EJ9 'DEDAQ'* (*.*)All Files (*.*) Q3FileDialog'D.'5QJ'* Attributes Q3FileDialog1,H9Back Q3FileDialog %D:'!Cancel Q3FileDialogF3. #H FBD EDAQCopy or Move a File Q3FileDialog%F4'! E,D/ ,/J/Create New Folder Q3FileDialog'D*'1J.Date Q3FileDialog -0A %1 Delete %1 Q3FileDialogE9'JF) EA5QD) Detail View Q3FileDialogE,D/Dir Q3FileDialog'DE,D/'* Directories Q3FileDialog E,D/: Directory: Q3FileDialog.7#Error Q3FileDialogEDAQFile Q3FileDialog%&3E 'DEDAQ: File &name: Q3FileDialog&FH9 'DEDAQ: File &type: Q3FileDialog(-+ 9F E,D/Find Directory Q3FileDialog&D' JECF 'DH5HD 'DJG Inaccessible Q3FileDialogE9'JF) ('DB'&E) List View Q3FileDialog(-+ &AJ: Look &in: Q3FileDialog 'D%3EName Q3FileDialogE,D/ ,/J/ New Folder Q3FileDialogE,D/ ,/J/ %1 New Folder %1 Q3FileDialogE,D/ ,/J/ 1 New Folder 1 Q3FileDialog/DJD DD#9DIOne directory up Q3FileDialogA*-Open Q3FileDialogA*-Open  Q3FileDialog2916 EB/QE DE-*HJ'* 'DEDAQPreview File Contents Q3FileDialog2916 EB/QE DE9DHE'* 'DEDAQPreview File Info Q3FileDialog%&9'/) 'D*Q-EJDR&eload Q3FileDialogB1'!) AB7 Read-only Q3FileDialogB1'!)-C*'() Read-write Q3FileDialogB1'!): %1Read: %1 Q3FileDialog-A8 *-*Save As Q3FileDialog'.*J'1 E,D/Select a Directory Q3FileDialog*9&16 'DEDAQ'* 'DE.AJ)Show &hidden files Q3FileDialog 'D-,ESize Q3FileDialogA12Sort Q3FileDialogA12 ('D*Q'&1J. Sort by &Date Q3FileDialogA12 ('D&%3E Sort by &Name Q3FileDialogA12 ('D3Q&9) Sort by &Size Q3FileDialogEDAQ .'5QSpecial Q3FileDialogH5D 1E2J D/DJDSymlink to Directory Q3FileDialogH5D 1E2J DEDAQSymlink to File Q3FileDialog&H5D 1E2J DEDAQ .'5QSymlink to Special Q3FileDialog 'DFH9Type Q3FileDialogC*'() AB7 Write-only Q3FileDialogC*'(): %1 Write: %1 Q3FileDialog 'DE,D/ the directory Q3FileDialog 'DEDAQthe file Q3FileDialog'DH5D 'D1QE2J the symlink Q3FileDialog.DE #3*79 5F9 'D/QDJD %1Could not create directory %1 Q3LocalFsDE #3*79 A*- %1Could not open %1 Q3LocalFs2DE #3*79 B1'!) 'D/QDJD %1Could not read directory %1 Q3LocalFsBDE #3*79 F29 'DEDAQ #H 'D/QDJD %1%Could not remove file or directory %1 Q3LocalFs<DE #3*79 %9'/) *3EJ) %1 %DI %2Could not rename %1 to %2 Q3LocalFs"DE #3*79 C*'() %1Could not write %1 Q3LocalFs*.5J5... Customize... Q3MainWindow *5AJALine up Q3MainWindow<#HBA* 'D9EDJQ) EF 71A 'DE3*./EOperation stopped by the userQ3NetworkProtocol %D:'!CancelQ3ProgressDialog *7(JBApply Q3TabDialog %D:'!Cancel Q3TabDialog'A*1'6J'*Defaults Q3TabDialog E3'9/)Help Q3TabDialog EH'AB)OK Q3TabDialog&F3.&Copy Q3TextEditD&5B&Paste Q3TextEdit %&9'/)&Redo Q3TextEdit &*1',9&Undo Q3TextEdit *A1J:Clear Q3TextEdit&B5QCu&t Q3TextEdit*-/J/ 'DCD Select All Q3TextEdit %:D'BClose Q3TitleBar *C(J1Maximize Q3TitleBar *5:J1Minimize Q3TitleBar#C+1...More... Q3ToolBar(E,GHD) (unknown) Q3UrlOperatorl'DE1'3E '%1' D' */9E F3. #H *-1JC 'DEDAQ'* #H 'D/QD'&DIThe protocol `%1' does not support copying or moving files or directories Q3UrlOperatorH'DE1'3E '%1' D' */9E 5F9 /D'&D ,/J/);The protocol `%1' does not support creating new directories Q3UrlOperatorJ'DE1'3E '%1' D' */9E '3*.D'5 'DEDAQ'*0The protocol `%1' does not support getting files Q3UrlOperatorN'DE1'3E '%1' D' */9E H69 BH'&E 'D/QD'&D6The protocol `%1' does not support listing directories Q3UrlOperatorB'DE1'3E '%1' D' */9E H69 'DEDAQ'*0The protocol `%1' does not support putting files Q3UrlOperatorZ'DE1'3E '%1' D' */9E F29 'DEDAQ'* #H 'D/QD'&D@The protocol `%1' does not support removing files or directories Q3UrlOperatorj'DE1'3E '%1' D' */9E %9'/) *3EJ) 'DEDAQ'* #H 'D/QD'&D@The protocol `%1' does not support renaming files or directories Q3UrlOperator.'DE1'3E '%1' :J1 E/9HE)"The protocol `%1' is not supported Q3UrlOperator &%D:'!&CancelQ3Wizard %&FG'!&FinishQ3Wizard&E3'9/)&HelpQ3Wizard'D&*Q'DJ >&Next >Q3Wizard< &1,H9< &BackQ3Wizard&*-/J/ 'DCD &Select AllQAbstractSpinBox&2J'/) .7H)&Step upQAbstractSpinBox*&1',9 .7H) Step &downQAbstractSpinBox *-/J/CheckQAccessibleButton6:7PressQAccessibleButton'D:'! 'D*-/J/UncheckQAccessibleButton *A9JDActivate QApplicationX'D(1F'E, '%1' J*7DQ( Qt %2 *EQ %J,'/ Qt %3.,Executable '%1' requires Qt %2, found Qt %3. QApplication0.7#: EC*() Qt :J1 EH'AB)Incompatible Qt Library Error QApplicationRTLQT_LAYOUT_DIRECTION QApplication &%D:'!&Cancel QAxSelect EH'ABOK QAxSelect *-/J/Check QCheckBox *(/JDToggle QCheckBox'D:'! 'D*-/J/Uncheck QCheckBox:'D%&6'A) %DI 'D#DH'F 'DE.5Q5)&Add to Custom Colors QColorDialog$'D#DH'F 'DB'&9/JQ) &Basic colors QColorDialog"'D#D&H'F 'DE.5Q5)&Custom colors QColorDialog #&.61:&Green: QColorDialog #&-E1:&Red: QColorDialog'D*Q&4(Q9:&Sat: QColorDialog'D&BJE):&Val: QColorDialogBF') #&DA':A&lpha channel: QColorDialog #&21B:Bl&ue: QColorDialog'D&5Q(:):Hu&e: QColorDialog%.*J'1 DHF Select Color QColorDialog %:D'BClose QComboBox.'7&False QComboBoxA*-Open QComboBox5-J-True QComboBox%1% {1 %2?}%1 %2QDeclarativeTypeLoader %F*GIDoneQDialogE' G0' What's This?QDialog &%D:'!&CancelQDialogButtonBox %&:D'B&CloseQDialogButtonBox&D'&NoQDialogButtonBox &EH'AB&OKQDialogButtonBox&-A8&SaveQDialogButtonBox&F9E&YesQDialogButtonBoxB79AbortQDialogButtonBox *7(JBApplyQDialogButtonBox %D:'!CancelQDialogButtonBox %:D'BCloseQDialogButtonBox':D'B (/HF -A8Close without SavingQDialogButtonBox *,'GDDiscardQDialogButtonBoxD' *BE ('D-A8 Don't SaveQDialogButtonBox E3'9/)HelpQDialogButtonBox *,'GDIgnoreQDialogButtonBoxD' DDC&D N&o to AllQDialogButtonBox EH'ABOKQDialogButtonBoxA*-OpenQDialogButtonBox'3*1,'9ResetQDialogButtonBox'3*1,'9 'D#5DRestore DefaultsQDialogButtonBox#9/ 'DE-'HD)RetryQDialogButtonBox-A8SaveQDialogButtonBox-A8 'DCDSave AllQDialogButtonBoxF9E DD&CD Yes to &AllQDialogButtonBox*'1J. 'D*9/JD Date Modified QDirModel5FAKind QDirModel 'D%3EName QDirModel 'D-,ESize QDirModel 'DFH9Type QDirModel %:D'BClose QDockWidget F'A0)Dock QDockWidget-1)Float QDockWidget#BDLessQDoubleSpinBox#C+1MoreQDoubleSpinBox&EH'AB)&OK QErrorMessage*#&916 E,/Q/'G0''D(D':&Show this message again QErrorMessage&(D': *5-J- 'D#.7'!:Debug Message: QErrorMessage.7# B'*D: Fatal Error: QErrorMessage %F0'1:Warning: QErrorMessage<D' JECF 'F4'! 'DEDA %1 DDC*'()Cannot create %1 for outputQFile8D' JECF A*- 'DEDA %1 DDB1'!)Cannot open %1 for inputQFile*D' JECF 'DA*- DDC*'()Cannot open for outputQFile0D' JECF -/A 'DEDA 'DE5/1Cannot remove source fileQFile"'DEDA 'DG/A EH,H/Destination file existsQFile.A4D E-'HD) C*'() 'DEB79Failure to write blockQFileb%1 'DE,D/ :J1 EH,H/. EF A6DCE *-BB EF '3E 'DE,D/.K%1 Directory not found. Please verify the correct directory name was given. QFileDialog^%1 'DEDA :J1 EH,H/. EF A6DCE *-BB EF '3E 'DEDA.A%1 File not found. Please verify the correct file name was given. QFileDialogD%1 EH,H/ E3(B'. GD *1J/ '3*(/'DG -%1 already exists. Do you want to replace it? QFileDialog%&.*J'1&Choose QFileDialog-&0A&Delete QFileDialog&E,D/ ,/J/ &New Folder QFileDialog&A*-&Open QFileDialog*&:JJ1 'D%3E&Rename QFileDialog&-A8&Save QFileDialog\'%1' E-EJ 6/ 'DC*'(). GD *1J/ -/AG 9DI CD -'D9'%1' is write protected. Do you want to delete it anyway? QFileDialog ,EJ9 'DEDA'* (*) All Files (*) QFileDialog$,EJ9 'DEDA'* (*.*)All Files (*.*) QFileDialog,GD *1J/ A9D' -0A '%1'!Are sure you want to delete '%1'? QFileDialog1,H9Back QFileDialog&D' JECF -0A 'DE,D/.Could not delete directory. QFileDialog%F4'! E,D/ ,/J/Create New Folder QFileDialog%F4'! E,D/ ,/J/Create a New Folder QFileDialogE9'JF) EA5QD) Detail View QFileDialog /D'&D Directories QFileDialog E,D/: Directory: QFileDialog 'DB15Drive QFileDialogEDAFile QFileDialog%&3E 'DEDAQ: File &name: QFileDialogEDA'* EF FH9:Files of type: QFileDialog'D(-+ 9F E,D/Find Directory QFileDialogE,D/Folder QFileDialog DD#E'EForward QFileDialog9H/) DD.DAGo back QFileDialog%DI 'D#E'E Go forward QFileDialog'DE,D/ 'D1&J3JGo to the parent directory QFileDialogE9'JF) ('DB'&E) List View QFileDialog%(-+ AJ:Look in: QFileDialog -'3H(J My Computer QFileDialogE,D/ ,/J/ New Folder QFileDialogA*-Open QFileDialog'DE,D/ 'D1&J3JParent Directory QFileDialog'.1 EC'F Recent Places QFileDialog-0ARemove QFileDialog-A8 *-*Save As QFileDialog916Show  QFileDialog(9&16 'DEDA'* 'DE.AJ)Show &hidden files QFileDialog E,GHDUnknown QFileDialog%1 ,J:'%1 GBQFileSystemModel%1 CJDH%1 KBQFileSystemModel%1 EJ:'%1 MBQFileSystemModel%1 *J1'%1 TBQFileSystemModel%1 (J*'*%1 bytesQFileSystemModel<b>'D'3E "%1" D' JECF '3*./'EG.</b><p>#9/ 'DE-'HD) ('3*./'E '3E '.1 J-*HJ 9DI 'DBDJD EF 'D-1HA.oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModel'D-'3H(ComputerQFileSystemModel*'1J. 'D*9/JD Date ModifiedQFileSystemModelEDA :J1 3DJEInvalid filenameQFileSystemModel5FAKindQFileSystemModel -'3H(J My ComputerQFileSystemModel 'D%3ENameQFileSystemModel 'D-,ESizeQFileSystemModel 'DFH9TypeQFileSystemModel#JAny QFontDatabase91(JArabic QFontDatabase #1EJFJArmenian QFontDatabase(JF,'DJBengali QFontDatabase#3H/Black QFontDatabase:DJ8Bold QFontDatabase 3J1JDJCyrillic QFontDatabase4(GDemi QFontDatabase4(G :DJ8 Demi Bold QFontDatabase/JA'F:'1J Devanagari QFontDatabase ,H1,JGeorgian QFontDatabase JHF'FJGreek QFontDatabaseCH,H1'*JGujarati QFontDatabase:1HEHCJGurmukhi QFontDatabase9(1JHebrew QFontDatabaseE'&DItalic QFontDatabase J'('FJJapanese QFontDatabase C'F/'Kannada QFontDatabase.EJ1Khmer QFontDatabaseCH1JKorean QFontDatabaseD'HJLao QFontDatabase D'*JFJLatin QFontDatabase.AJALight QFontDatabaseE'D'J'D'E Malayalam QFontDatabase EJFE'1Myanmar QFontDatabase9'/JNormal QFontDatabaseE'&DOblique QFontDatabase #:G'EOgham QFontDatabase #H1J'Oriya QFontDatabase1HFJRunic QFontDatabase5JFJ E(37Simplified Chinese QFontDatabase 3JFG'DSinhala QFontDatabase1EH2Symbol QFontDatabase3H1JSyriac QFontDatabase *'EJDTamil QFontDatabase *JD':HTelugu QFontDatabase7'F'Thaana QFontDatabase*'JD'F/JThai QFontDatabase *J(*JTibetan QFontDatabase5JFJ *BDJ/JTraditional Chinese QFontDatabaseAJ*F'EJ Vietnamese QFontDatabase 'D&.7&Font QFontDialog 'D&-,E&Size QFontDialog *&37J1 &Underline QFontDialog*#+J1'*Effects QFontDialog&71'2 'D.7Q Font st&yle QFontDialog 9JQF)Sample QFontDialog'F*B'! 'D.7Q Select Font QFontDialog *&47J( Stri&keout QFontDialogD&:) 'DC*'()Wr&iting System QFontDialog *(/JDToggle QGroupBox.7# :J1 E91HA Unknown error QHostInfo.7# :J1 E91HA Unknown error QIODevice#/.D BJE) E' :Enter a value: QInputDialog.7# E,GHD Unknown errorQLibrary&F3.&Copy QLineEditD&5B&Paste QLineEdit %&9'/)&Redo QLineEdit &*1',9&Undo QLineEdit&B5QCu&t QLineEdit-0ADelete QLineEdit*-/J/ 'DCD Select All QLineEdit((/HF 9FH'F) (Untitled)QMdiArea%1 - [%2] %1 - [%2] QMdiSubWindow %&:D'B&Close QMdiSubWindow&FBD&Move QMdiSubWindow'&3*9'/&Restore QMdiSubWindow 'D&-,E&Size QMdiSubWindow- [%1] QMdiSubWindow %:D'BClose QMdiSubWindow E3'9/)Help QMdiSubWindow *&C(J1 Ma&ximize QMdiSubWindow *C(J1Maximize QMdiSubWindowB'&E) 'D.J'1'*Menu QMdiSubWindow *&5:J1 Mi&nimize QMdiSubWindow *5:J1Minimize QMdiSubWindow '3*9'/Restore QMdiSubWindow '3*9'/ AJ 'D#3AD Restore Down QMdiSubWindow *8DJDShade QMdiSubWindow$'D&(B'! AJ 'DEB/E) Stay on &Top QMdiSubWindow%D:'! 'D*8DJDUnshade QMdiSubWindow %:D'BCloseQMenu *FAJ0ExecuteQMenuA*-OpenQMenu -HD QtAbout Qt QMessageBox E3'9/)Help QMessageBox"'.A'! 'D*A'5JD...Hide Details... QMessageBox EH'ABOK QMessageBox916 'D*A'5JD...Show Details... QMessageBox.7# 9F/ A*- %1Error opening %1QNetworkAccessCacheBackend<DE J*E 'D9+H1 9DI (1HC3J ED'&ENo suitable proxy foundQNetworkAccessFtpBackend<DE J*E 'D9+H1 9DI (1HC3J ED'&ENo suitable proxy foundQNetworkAccessHttpBackend'D9EDJ) #HBA*Operation canceledQNetworkReplyImpl 'D%3ENameQPPDOptionsModel3F*JE*1 (cm)Centimeters (cm)QPageSetupWidget 'D7HD:Height:QPageSetupWidget%F4 (in) Inches (in)QPageSetupWidgetEF81 LandscapeQPageSetupWidget'DGH'E4MarginsQPageSetupWidgetEJDJE*1 (mm)Millimeters (mm)QPageSetupWidget*H,JG 'D5A-) OrientationQPageSetupWidget-,E 'D5A-): Page size:QPageSetupWidget 'D5A-)PaperQPageSetupWidgetE5/1 'D5A-): Paper source:QPageSetupWidget5H1)PortraitQPageSetupWidget 'D916:Width:QPageSetupWidget'DG'E4 'D3ADJ bottom marginQPageSetupWidget'DG'E4 'D#J31 left marginQPageSetupWidget'DG'E4 'D#JEF right marginQPageSetupWidget'DG'E4 'D9DHJ top marginQPageSetupWidget.7# E,GHD Unknown error QPluginLoaderT'DEDA %1 EH,H/ E3(B' GD *1J/ 'DC*'() 3-BG/%1 already exists. Do you want to overwrite it? QPrintDialogP%1 9('1) 9F E,D/. EF A6DC %.*1 EDA' ".1.7%1 is a directory. Please choose a different file name. QPrintDialog&.J'1'* << &Options << QPrintDialog&.J'1'* >> &Options >> QPrintDialog &7('9)&Print QPrintDialog<<qt>GD *1J/ 'DC*'() 3-BG</qt>%Do you want to overwrite it? QPrintDialogA0A0 QPrintDialog$#0 (841 1189 EE)A0 (841 x 1189 mm) QPrintDialogA1A1 QPrintDialog"#1 (594 841 EE)A1 (594 x 841 mm) QPrintDialogA2A2 QPrintDialog"#2 (420 594 EE)A2 (420 x 594 mm) QPrintDialogA3A3 QPrintDialog"#3 (297 420 EE)A3 (297 x 420 mm) QPrintDialogA4A4 QPrintDialog%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialogA5A5 QPrintDialog"#5 (148 210 EE)A5 (148 x 210 mm) QPrintDialogA6A6 QPrintDialog"#6 (105 148 EE)A6 (105 x 148 mm) QPrintDialogA7A7 QPrintDialog #7 (74 105 EE)A7 (74 x 105 mm) QPrintDialogA8A8 QPrintDialog#8 (52 74 EE)A8 (52 x 74 mm) QPrintDialogA9A9 QPrintDialog#9 (37 52 EE)A9 (37 x 52 mm) QPrintDialog(/'&D: %1 Aliases: %1 QPrintDialogB0B0 QPrintDialog&(0 (1000 1414 EE)B0 (1000 x 1414 mm) QPrintDialogB1B1 QPrintDialog$(1 (707 1000 EE)B1 (707 x 1000 mm) QPrintDialogB10B10 QPrintDialog (10 (31 44 EE)B10 (31 x 44 mm) QPrintDialogB2B2 QPrintDialog"(2 (500 707 EE)B2 (500 x 707 mm) QPrintDialogB3B3 QPrintDialog"(3 (353 500 EE)B3 (353 x 500 mm) QPrintDialogB4B4 QPrintDialog"(4 (250 353 EE)B4 (250 x 353 mm) QPrintDialogB5B5 QPrintDialogJB5 (176 x 250 mm, 6.93 x 9.84 inches)%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialogB6B6 QPrintDialog"(6 (125 176 EE)B6 (125 x 176 mm) QPrintDialogB7B7 QPrintDialog (7 (88 125 EE)B7 (88 x 125 mm) QPrintDialogB8B8 QPrintDialog(4 (62 88 EE)B8 (62 x 88 mm) QPrintDialogB9B9 QPrintDialog(9 (44 62 EE)B9 (44 x 62 mm) QPrintDialogC5EC5E QPrintDialog(3J5%J (163 229 EE)C5E (163 x 229 mm) QPrintDialog CustomCustom QPrintDialogDLEDLE QPrintDialog./J #D %J (110 220 EE)DLE (110 x 220 mm) QPrintDialogExecutive Executive QPrintDialogRExecutive (7.5 x 10 inches, 191 x 254 mm))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialog`'DEDA %1 :J1 B'(D DDC*'() EF A6DC %.*1 EDA' ".1.=File %1 is not writable. Please choose a different file name. QPrintDialog"'DEDA EH,H/ E3(B' File exists QPrintDialog FolioFolio QPrintDialog&EDAQ (210 330 EE)Folio (210 x 330 mm) QPrintDialog LedgerLedger QPrintDialog&/A*1 (432 279 EE)Ledger (432 x 279 mm) QPrintDialog LegalLegal QPrintDialogJLegal (8.5 x 14 inches, 216 x 356 mm)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialog LetterLetter QPrintDialogLLetter (8.5 x 11 inches, 216 x 279 mm)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialogEDA E-DJ Local file QPrintDialog EH'ABOK QPrintDialog 7('9)Print QPrintDialog"7('9) 'DI EDA ...Print To File ... QPrintDialog7('9) 'DCD Print all QPrintDialogE/I 'D7Q('9) Print range QPrintDialog7('9) 'DE-//Print selection QPrintDialog&7('9) 'DI EDA (PDF)Print to File (PDF) QPrintDialog47('9) 'DI EDA (Postscript)Print to File (Postscript) QPrintDialogTabloidTabloid QPrintDialog(,1J/) (279 432 EE)Tabloid (279 x 432 mm) QPrintDialogUS Common #10 Envelope QPrintDialog`:D'A 13'D) #E1JCJ) E*/'HD) 1BE 10 (105 241 EE)%US Common #10 Envelope (105 x 241 mm) QPrintDialogC*'() %1 EDA Write %1 file QPrintDialogEH5D E-DJQ'locally connected QPrintDialog E,GHDunknown QPrintDialog%1%%1%QPrintPreviewDialog %:D'BCloseQPrintPreviewDialog*5/J1 %DI PDF Export to PDFQPrintPreviewDialog(*5/J1 %DI PostScriptExport to PostScriptQPrintPreviewDialog'D5A-) 'D#HDI First pageQPrintPreviewDialogEF81 LandscapeQPrintPreviewDialog'D5A-) 'D#.J1) Last pageQPrintPreviewDialog'D5A-) 'D*'DJ) Next pageQPrintPreviewDialog'9/'/'* 'D5A-) Page SetupQPrintPreviewDialog'9/'/'* 'D5A-) Page setupQPrintPreviewDialog5H1)PortraitQPrintPreviewDialog'D5A-) 'D3'(B) Previous pageQPrintPreviewDialog 7('9)PrintQPrintPreviewDialog&'3*91'6 B(D 'D7('9) Print PreviewQPrintPreviewDialog916 5A-) H'-/)Show single pageQPrintPreviewDialog 'DF3.CopiesQPrintSettingsOutput 'DF3.:Copies:QPrintSettingsOutput'D5A-) 'D-'DJ) Current PageQPrintSettingsOutput .J'1'*OptionsQPrintSettingsOutput%9/'/'* 'D%.1',Output SettingsQPrintSettingsOutput'D5A-'* EF Pages fromQPrintSettingsOutput7('9) 'D,EJ9 Print allQPrintSettingsOutputE/I 'D7('9) Print rangeQPrintSettingsOutput9C3ReverseQPrintSettingsOutput 'DE-// SelectionQPrintSettingsOutput%DItoQPrintSettingsOutput'D%&3E:&Name: QPrintWidget... QPrintWidgetForm QPrintWidget'DEH69: Location: QPrintWidgetE&DA 'D7('9): Output &file: QPrintWidget.&J'1'* P&roperties QPrintWidget%3*91'6Preview QPrintWidget'D7'(9)Printer QPrintWidget 'DFH9:Type: QPrintWidget %D:'!CancelQProgressDialogA*-Open QPushButton *-/J/Check QRadioButton*DE J-/+ GF'C #JQ .7#no error occurredQRegExp-0ADeleteQScriptBreakpointsWidget E*'(9)ContinueQScriptDebugger %:D'BCloseQScriptDebuggerCodeFinderWidget 'D%3ENameQScriptDebuggerLocalsModel 'D%3ENameQScriptDebuggerStackModel(-+SearchQScriptEngineDebugger %:D'BCloseQScriptNewBreakpointWidget'DI 'D#3ADBottom QScrollBar-/ 'DJ3'1 Left edge QScrollBar371 'DI 'D#3AD Line down QScrollBar371 'DI 'D#9DILine up QScrollBar5A-) 'DI 'D#3AD Page down QScrollBar5A-) 'DI 'DJ3'1 Page left QScrollBar5A-) 'DI 'DJEJF Page right QScrollBar5A-) 'DI 'D#9DIPage up QScrollBar 'DEH69Position QScrollBar-/ 'DJEJF Right edge QScrollBar 'F2DB 'DI 'D#3AD Scroll down QScrollBar'F2DB 'DI GF' Scroll here QScrollBar 'F2DB 'DI 'DJ3'1 Scroll left QScrollBar 'F2DB 'DI 'DJEJF Scroll right QScrollBar 'F2DB 'DI 'D#9DI Scroll up QScrollBar'DI 'D#9DITop QScrollBar++ QShortcut1,H9Back QShortcut,%F9'4 'D#5H'* 'D,GH1J) Bass Boost QShortcut,*FBJ5 'D#5H'* 'D,GH1J) Bass Down QShortcut,2J'/) 'D#5H'* 'D,GH1J)Bass Up QShortcut(%BA'D 'D-1HA 'DC(J1) Caps Lock QShortcut(%BA'D 'D-1HA 'DC(J1)CapsLock QShortcut *A1J:Clear QShortcut %:D'BClose QShortcutF3.Copy QShortcutB5Cut QShortcut-0ADel QShortcut-0ADelete QShortcut*-*Down QShortcut FG'J)End QShortcut %/.'DEnter QShortcutF%1F%1 QShortcut'DEA6D) Favorites QShortcutBD(Flip QShortcut DD#E'EForward QShortcut E3'9/)Help QShortcutEF2DHome QShortcut5A-) 'D(/'J) Home Page QShortcut %/1',Ins QShortcut %/1',Insert QShortcut*4:JD (0) Launch (0) QShortcut*4:JD (1) Launch (1) QShortcut*4:JD (2) Launch (2) QShortcut*4:JD (3) Launch (3) QShortcut*4:JD (4) Launch (4) QShortcut*4:JD (5) Launch (5) QShortcut*4:JD (6) Launch (6) QShortcut*4:JD (7) Launch (7) QShortcut*4:JD (8) Launch (8) QShortcut*4:JD (9) Launch (9) QShortcut*4:JD (A) Launch (A) QShortcut*4:JD (B) Launch (B) QShortcut*4:JD (C) Launch (C) QShortcut*4:JD (D) Launch (D) QShortcut*4:JD (E) Launch (E) QShortcut*4:JD (F) Launch (F) QShortcut*4:JD 'D(1J/ Launch Mail QShortcut*4:JD 'DH37 Launch Media QShortcutJ3'1Left QShortcut'DH37 'D*'DJ Media Next QShortcut*9DJB 'DH37 Media Pause QShortcut*4:JD 'DH37 Media Play QShortcut'DH37 'D3'(BMedia Previous QShortcut*3,JD 'DH37 Media Record QShortcut*HBJA 'DH37 Media Stop QShortcutB'&E) 'D.J'1'*Menu QShortcut'DEH3JBIMusic QShortcutD'No QShortcut%BA'D 'D#9/'/Num Lock QShortcut%BA'D 'D#9/'/NumLock QShortcut%BA'D 'D#9/'/ Number Lock QShortcutA*- 'D1'(7Open URL QShortcut5A-) 'DI 'D#3AD Page Down QShortcut5A-) 'DI 'D#9DIPage Up QShortcutD5BPaste QShortcut *9DJBPause QShortcut5A-) DD*-*PgDown QShortcut5A-) DDAHBPgUp QShortcut 7('9)Print QShortcut7('9) 'D4'4) Print Screen QShortcut %F9'4Refresh QShortcut%9'/) 'D*-EJDReload QShortcut9H/)Return QShortcutJEJFRight QShortcut-A8Save QShortcut%BA'D 'D*Q-1JC Scroll Lock QShortcut%BA'D 'D*Q-1JC ScrollLock QShortcut(-+Search QShortcut *-/J/Select QShortcut %F*8'1Standby QShortcutHBAStop QShortcut**FBJ5 'D#5H'* 'D-'/Q) Treble Down QShortcut*2J'/) 'D#5H'* 'D-'/Q) Treble Up QShortcutAHBUp QShortcut'DAJ/JHVideo QShortcut*.AJ6 'D5QH* Volume Down QShortcut%3C'* 'D5H* Volume Mute QShortcut1A9 'D5QH* Volume Up QShortcutF9EYes QShortcut5A-) 'DI 'D#3AD Page downQSlider5A-) 'DI 'DJ3'1 Page leftQSlider5A-) 'DI 'DJEJF Page rightQSlider5A-) 'DI 'D#9DIPage upQSlider 'DEH69PositionQSlider %D:'!CancelQSoftKeyManager %F*GIDoneQSoftKeyManager.1H,ExitQSoftKeyManager .J'1'*OptionsQSoftKeyManager *-/J/SelectQSoftKeyManager#BDLessQSpinBox#C+1MoreQSpinBox %D:'!CancelQSql %D:'! 'D*:JJ1'*Cancel your edits?QSql *#CJ/ConfirmQSql-0ADeleteQSql-0A G0''D3,DDelete this record?QSql %/1',InsertQSqlD'NoQSql-A8 'D*Q:JJ1'* Save edits?QSql *-/J+UpdateQSqlF9EYesQSql *A9JDActivateQTabBar*A9JD 'D*(HJ(Activate the tabQTabBar %:D'BCloseQTabBar':D'B 'D*(HJ( Close the tabQTabBar6:7PressQTabBar 'F2DB 'DI 'DJ3'1 Scroll LeftQTabBar 'F2DB 'DI 'DJEJF Scroll RightQTabBar&F3.&Copy QTextControl *&D5JB&Paste QTextControl %&9'/)&Redo QTextControl &*1',9&Undo QTextControl F3. 1'(&7 'DH5D)Copy &Link Location QTextControl&B5QCu&t QTextControl-0ADelete QTextControl*-/J/ 'DCD Select All QTextControlA*-Open QToolButton6:7Press QToolButton.G0G 'DEF5) D' */9E IPv6#This platform does not support IPv6 QUdpSocket %9'/)Default text for redo actionRedo QUndoGroup%9'/) %1Redo %1 QUndoGroup *1',9Default text for undo actionUndo QUndoGroup*1',9 9F %1Undo %1 QUndoGroup <A'1:> QUndoModel %9'/)Default text for redo actionRedo QUndoStack%9'/) %1Redo %1 QUndoStack *1',9Default text for undo actionUndo QUndoStack*1',9 9F %1Undo %1 QUndoStack"%6'A) -1A JHFJCH/ Insert Unicode control characterQUnicodeControlCharacterMenu$D' JECF 916 'D1'(7Cannot show URL QWebFrame'DEDA :J1 EH,H/File does not exist QWebFrame*E -81 'D7D(Request blocked QWebFrame*E %D:'! 'D7D(Request cancelled QWebFrame"'6'A) %DI 'DB'EH3Add To DictionaryQWebPage:DJ8BoldQWebPage 'D#3ADBottomQWebPageA-5 'D*G,#)Check SpellingQWebPage'.*J'1 EDA Choose FileQWebPageF3.CopyQWebPage F3. 'DEDA 'D5H*J Copy AudioQWebPageF3. 'D5H1) Copy ImageQWebPageF3. 1'(7 'D5H1)Copy Image AddressQWebPageF3. 'D1'(7 Copy LinkQWebPageF3. 'DAJ/JH Copy VideoQWebPageB5QCutQWebPage%A*1'6JDefaultQWebPage'D*A'5JDDetailsQWebPage'D%*,'G DirectionQWebPageH69 ED! 'D4'4)Enter FullscreenQWebPage 'D.7H7FontsQWebPage9H/) DD.DAGo BackQWebPage%DI 'D#E'E Go ForwardQWebPage *,'GDIgnoreQWebPage *,'GD Ignore Grammar context menu itemIgnoreQWebPage%6'A) 371 ,/J/Insert a new lineQWebPage %6'A) AB1) ,/J/)Insert a new paragraphQWebPage *-BJBInspectQWebPageE'&DItalicQWebPage'D-'A) 'DJ31I Left edgeQWebPage(EF 'DJ3'1 %DI 'DJEJF Left to RightQWebPage,'1J 'D*-EJD... Loading...QWebPage(-+ AJ 'DB'EH3Look Up In DictionaryQWebPage4DE J*E 'D9+H1 9DI #J *.EJFNo Guesses FoundQWebPage(DE J*E %.*J'1 #J EDANo file selectedQWebPage A*- 'DEDA 'D5H*J Open AudioQWebPageA*- 'D%7'1 Open FrameQWebPageA*- 'D5H1) Open ImageQWebPageA*- 'D1'(7 Open LinkQWebPageA*- 'DAJ/JH Open VideoQWebPage$A*- AJ F'A0) ,/J/)Open in New WindowQWebPage *#7J1OutlineQWebPage#3AD 'D5A-) Page downQWebPageJ3'1 'D5A-) Page leftQWebPageJEJF 'D5A-) Page rightQWebPage#9DI 'D5A-)Page upQWebPageD5BPasteQWebPage *9DJBPauseQWebPage *4:JDPlayQWebPage%9'/) 'D*Q-EJDReloadQWebPage'3*1,'9ResetQWebPage'D-'A) 'DJEFI Right edgeQWebPage(EF 'DJEJF %DI 'DJ3'1 Right to LeftQWebPage-A8 'D5H1) Save ImageQWebPage-A8 'D1'(7... Save Link...QWebPage 'F2DB 'DI 'D#3AD Scroll downQWebPage'F2DB 'DI GF' Scroll hereQWebPage 'F2DB 'DI 'DJ3'1 Scroll leftQWebPage 'F2DB 'DI 'DJEJF Scroll rightQWebPage 'F2DB 'DI 'D#9DI Scroll upQWebPage*(-+ AJ 4(C) 'D%F*1FJ*Search The WebQWebPage*-/J/ 'DCD Select AllQWebPage'D*G,#)SpellingQWebPage *HBQAStopQWebPage %13'DSubmitQWebPage %13'DQSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPage%*,'G 'DF5Text DirectionQWebPage 'D#9DITopQWebPage *37J1 UnderlineQWebPage E,GHDUnknownQWebPageE' G0' What's This?QWhatsThisAction**QWidget %&FG'!&FinishQWizard&E3'9/)&HelpQWizard'D&*'DJ&NextQWizard'D&*'DJ >&Next >QWizard< &1,H9< &BackQWizard %D:'!CancelQWizard %13'DCommitQWizard E*'(9)ContinueQWizard %F*GIDoneQWizard1,H9 DD.DAGo BackQWizard E3'9/)HelpQWizard%1 - [%2] %1 - [%2] QWorkspace %&:D'B&Close QWorkspace&FBD&Move QWorkspace'&3*9'/&Restore QWorkspace&-,E&Size QWorkspace%&D:'! 'D*8DJD&Unshade QWorkspace %:D'BClose QWorkspace *&C(J1 Ma&ximize QWorkspace *&5:J1 Mi&nimize QWorkspace *5:J1Minimize QWorkspace '3*9'/ AJ 'D#3AD Restore Down QWorkspace *&8DJDSh&ade QWorkspace$'D&(B'! AJ 'DEB/E) Stay on &Top QWorkspacev%9D'F 'D*Q1EJ2 #H %9D'F E3*BDQ E*HBQ9 9F/ B1'!) %9D'F 'DXMLYencoding declaration or standalone declaration expected while reading the XML declarationQXmlF.7# AJ 'D*Q91JA 'DFQ5QJ DCJ'F .'1,J3error in the text declaration of an external entityQXml@-/+ .7# 9F/ *-DJD *1CJ( 'D*Q9DJB$error occurred while parsing commentQXml>-/+ .7# 9F/ *-DJD *1CJ( 'DE-*HI$error occurred while parsing contentQXmlT-/+ .7# 9F/ *-DJD *1CJ( *91JA 71'2 'DH+JB)5error occurred while parsing document type definitionQXml<-/+ .7# 9F/ *-DJD *1CJ( 'D9F51$error occurred while parsing elementQXml<-/+ .7# 9F/ *-DJD *1CJ( 'DE1,9&error occurred while parsing referenceQXml4#7DB 'D.7# EF 71A 'DE3*GDCerror triggered by consumerQXmlj'DE1,9 %DI CJ'F .'1,J 9'EQ E91( :J1 E3EH- (G AJ 'DDTD;external parsed general entity reference not allowed in DTDQXmlz'DE1,9 %DI CJ'F .'1,J 9'EQ E91( :J1 E3EH- (G AJ BJE) 'D.'5QJ)Gexternal parsed general entity reference not allowed in attribute valueQXml`'DE1,9 %DI CJ'F /'.DJ 9'EQ :J1 E3EH- (G AJ 'DDTD4internal general entity reference not allowed in DTDQXml:%3E :J1 5'D- D*9DJE) 'DE9'D,)'invalid name for processing instructionQXml-1A E*HBQ9letter is expectedQXml6#C+1 EF *91JA D71'2 'DH+JB)&more than one document type definitionQXml*DE J-/+ GF'C #JQ .7#no error occurredQXmlCJ'F'* E9'H/)recursive entitiesQXmlR%9D'F E3*BDQ E*HBQ9 9F/ B1'!) %9D'F 'DXMLAstandalone declaration expected while reading the XML declarationQXml"9/E *7'(B 'D9D'E) tag mismatchQXml1E2 :J1 E*HBQ9unexpected characterQXml0FG'J) :J1 E*HBQ9) DDEDAQunexpected end of fileQXmlFE1,9 %DI CJ'F :J1 E91( AJ 3J'B .'7&*unparsed entity reference in wrong contextQXmlH'D%5/'1 E*HBQ9 9F/ B1'!) %9D'F 'DXML2version expected while reading the XML declarationQXml0BJE) .'7&) D%9D'F E3*BDQ&wrong value for standalone declarationQXml *-/J/SelectQmlJSDebugger::QmlToolBarF3. 'DDHF Copy ColorQmlJSDebugger::ToolBarColorBox$ * qupzilla-1.6.0/bin/locale/qt_ca.qm000066400000000000000000004302531226107126500170250ustar00rootroot00000000000000fBfOf^fkffBTgl-C3C^[P" R)d"7`0`Y^ymCe$eRSeeįC`įC~:^9fJQ]3j(4`(4`(5a"(5aV*y+4*yV*y@`*Tn *09D*0\t+Fi+F^+L\+f+fX6+z@++++@+zA*+i+X+nP++_S+į++į+į@+AZ7I:9&;|C:GMHw9*/Hw9MAHUtI'fI?I J++J6,J6BJ6MJ6RJ69J6J6J6_JcbKQUK\\LZ#LLBLbM5RMbMeQMNgO|BPFE/mPFEPFE`jQi!RiR|QRiS8^TTʴ3T&U?^GU|KtU}jV1VVVV-Vk%WBWT+WT.XOXWX˙PX.YkVYCY/Y_Zg0#ZkS^Zlx[;^\{\]4\]43\\LatuhgcHlG|^ǶcvL0v[4~fv4L5X.6CfIA'[P%4I+YɵnFRɵnɵnɵnNɵnӱɵnrɵn ɵn:Hy@ B *.MME;|+><n5%UT(Ŏa*45vS1$5~r< w?2a?NavMWUibW~XS]%r`H`ޖlgvtyDBvty1j"tgr(\~'2)656^^v+d@RcT=L~.v?/EE   d{C8AAtLؔ8H mMM^EpEzw)Aw I K>e`!eJ%d&x)1*/e2950; Ec<FKOZfB`cփ+fzg&4xjCamn̔q:qRu(%z{>kll~s Cy.$ C$kf f+(2pʁ`r^lDKKk n,7B9O{A;Sa=&H.q>/?IxS?R>YMqCYM{^oh^2Bi7jssc/s"wzU͗qxeۊAatN>]R]IzI)I*`IMwII5I]>I'Y'i'y(4&&''D&&TI)(()$)`(puDucuDD]ro,,K,#&,6,A]svɘe$5$ CfRfR^N$_#hHc5.SjRPqx{VNVRfRW%7" h| S -$%C2s&~iR&)+,?""KN>M RV|j]]gk-y^.5tWgF_o.jG%o?nص*ǥ`/+/t/ Y;lxAl9\l0slH2Ͼ%?6{C- 5,C^ƨOƨ7˾ҝzi=)է?6Z>}ߺfɘm^p!E p$~b^j~bdhok!H+3{/A1y4~U6 /X? 2[ADqGpkGbc=LAU?NPѧMQ}SnT]UrUėZ!Z"1Z"gZ"[]]k*^2]1^nj'_pSeTiuivkQ~oNwy;!{}u-\}w}w3}w-}|9f}r"ft׋ivtt.&.3P GiUaDDehYt9t{t [t/_ ,+Y%FC}ʢIsʢƴDdJZdddd0V59HNS7pUʉdBmeh߄wԉ NX? 'Vs+,DT/o2T 42>6w87D:֨?;CU]SDm INJ0K KWU|!V7D\arbt |(^X|U|4}wZ}$}$3J}$ϗZ?VN+DNK<O.f+P·C@·;ý7 ׳>/}}>UEnHIvu%5cT/ e~(i~i*wNb#%x'͆-..z5kE *=E=B??oCtIg-PXU ]bD0bGffdLgA' hIhi$x1 !z*2 SdTJU!(.z5 zTc.1҉EzIrXUmp^Q{n($.bb†5YieCPʴ5ʴ5_ʶԄc۔#4Dc6'NdiTF5/4F5Y{+>II]XAs I }$ qey ڤO ڥ1 E E֔  Ac! Ac` 35 n  nY O Y+ K-) E 팤 l~w %'D  ) =r. qk X };  ) */  .> 5 7uk ; =oq J" J"h Rۮp& Ty T^ Uj4} ]9 `~ ` b bQ c(N cE d6W eR e] e{J f1s f*P g5U8 gnk k,#P rD")u t>ѐ :@ f  f Y 4 .m? sH s[ AAw 9` NC 9  m,$S #-tO 0N=h A8 CUm LP L9r L\ Mc\QB R S Vr W4 ]$G io>n m`1 w! xR yrK  { H% HXe ; $Z .@1 (% ,^ B % J J\ t t. k@ Ӈ, M * N>| ̺n -Do .~ ۷ r< kt k U)J ' <02 D t 0,O TG , z+U  u  ~ Ig %mt NC , M xH!  .@ 7Fj >x5 >x >z >\ >2 > > >k ?t|J DT I?h P@ RV` RV[J RV S.5 SG S Y_ Y [G c`š hۮgm j7oV p@c  .x B m TF T T Td I h S )d T F ;> .G! . . . .[ .   a y/  hNz ҂vF  < ] |  ( Xt t a<  :b Uq  j  r4z  Y #$% %n +>A +k 0Eh& ;ɾA/ Fg K9˿ PtC Pt`. dBǔ e1. fe fe iFC$R i] i$ kGn1 m9R) n{G u-) u< v  v& v{ w9 w2 wB w}m w}3 w} |[X T r( {t %K ^j }b RIy PZ4 f xN U ɰex F { X & D + t5 t5_   >  ` ) 1} @aT:Q]ogT; *9*] /Ee=BI_'KOOXRuHCX[ ba.NnyGvɅ%y$ ~>24Ы&Й'4KGS^VǗV6:B8NHrݖ^Wry  [CGxq"#$U#%4Q%4c|-vEi0i)*0+1cC2wT*<<(D2H#JdK#L$.dWaic5[c5og3iCmhpyC3{~a*Y5*&/&{˾[r>>yl[>bRhMNU"~LLnLBt2>)7 }'UJi <html>S'est canviat al dispositiu de reproducci <b>%1</b><br/>que s disponible i t una preferncia major.</html>xSwitching to the audio playback device %1
which just became available and has higher preference. AudioOutput<html>El dispositiu de reproducci de so <b>%1</b> no funciona.<br/>S'est tornant a <b>%2</b>.</html>^The audio playback device %1 does not work.
Falling back to %2. AudioOutput0Torna al dispositiu '%1'Revert back to device '%1' AudioOutputQuant a %1About %1MAC_APPLICATION_MENUAmaga %1Hide %1MAC_APPLICATION_MENU Amaga els altres Hide OthersMAC_APPLICATION_MENUPreferncies...Preferences...MAC_APPLICATION_MENUSurt %1Quit %1MAC_APPLICATION_MENU ServeiServicesMAC_APPLICATION_MENUMostra'ls totsShow AllMAC_APPLICATION_MENUAccessibilitat AccessibilityPhonon::Comunicaci CommunicationPhonon::JocsGamesPhonon:: MsicaMusicPhonon::Notificacions NotificationsPhonon:: VdeoVideoPhonon::Avs: Sembla que no teniu installat els connectors bsics de GStreamer. S'ha inhabilitat el suport per a vdeo i udio~Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabledPhonon::Gstreamer::BackendAvs: Sembla que no teniu installat el paquet gstreamer0.10-plugins-good. S'han inhabilitat algunes caracterstiques de vdeo.Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled.Phonon::Gstreamer::BackendNo es troba un cdec requerit. Necessiteu installar el cdec segent per reproduir aquest contingut: %0No es troba un cdec requerit. Necessiteu installar els cdecs segents per reproduir aquest contingut: %0No es troba un cdec requerit. Necessiteu installar els cdecs segents per reproduir aquest contingut: %0`A required codec is missing. You need to install the following codec(s) to play this content: %0Phonon::Gstreamer::MediaObject,No es pot iniciar la reproducci Comproveu la installaci de GStreamer i assegureu-vos que teniu installat el connector libgstreamer-plugins-base.wCannot start playback. Check your Gstreamer installation and make sure you have libgstreamer-plugins-base installed.Phonon::Gstreamer::MediaObjectVNo es pot decodificar el suport multimdia.Could not decode media source.Phonon::Gstreamer::MediaObjectLNo es pot trobar el suport multimdia.Could not locate media source.Phonon::Gstreamer::MediaObjectNo es pot obrir el dispositiu d'udio. El dispositiu ja es troba en s.:Could not open audio device. The device is already in use.Phonon::Gstreamer::MediaObjectJNo es pot obrir el suport multimdia.Could not open media source.Phonon::Gstreamer::MediaObject0Tipus de font no vlida.Invalid source type.Phonon::Gstreamer::MediaObjectFeu servir el segent desplaador per a ajustar el volum. El lmit esquerre ser un 0% i el lmit dret ser %1%WUse this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1%Phonon::VolumeSliderVolum: %1% Volume: %1%Phonon::VolumeSlider"%1, %2 no definit%1, %2 not definedQ3Accel,%1 ambigu no gestionatAmbiguous %1 not handledQ3AccelSuprimeixDelete Q3DataTableFalsFalse Q3DataTableInsereixInsert Q3DataTableVertaderTrue Q3DataTableActualitzaUpdate Q3DataTable%1 No s'ha trobat el fitxer. Comproveu el cam i el nom del fitxer.+%1 File not found. Check path and filename. Q3FileDialog&Suprimeix&Delete Q3FileDialog&No&No Q3FileDialog&D'acord&OK Q3FileDialog &Obre&Open Q3FileDialog&Canvia el nom&Rename Q3FileDialog &Desa&Save Q3FileDialog&Sense ordre &Unsorted Q3FileDialog&S&Yes Q3FileDialog`<qt>Esteu segur que voleu esborrar %1 "%2"?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialog(Tots els fitxers (*) All Files (*) Q3FileDialogAtributs Attributes Q3FileDialog EnrereBack Q3FileDialogCancellaCancel Q3FileDialog*Copia o mou un fitxerCopy or Move a File Q3FileDialog"Crea nova carpetaCreate New Folder Q3FileDialogDataDate Q3FileDialogSuprimeix %1 Delete %1 Q3FileDialogVista detallada Detail View Q3FileDialogDirDir Q3FileDialogDirectoris Directories Q3FileDialogDirectori: Directory: Q3FileDialog ErrorError Q3FileDialog FitxerFile Q3FileDialog&Nom de fitxer: File &name: Q3FileDialog"&Tipus de fitxer: File &type: Q3FileDialogCerca directoriFind Directory Q3FileDialogInaccessible Inaccessible Q3FileDialog.Visualitza com a llista List View Q3FileDialogC&erca a: Look &in: Q3FileDialogNomName Q3FileDialogNova carpeta New Folder Q3FileDialogNova carpeta %1 New Folder %1 Q3FileDialogNova carpeta 1 New Folder 1 Q3FileDialog$Directori superiorOne directory up Q3FileDialogObreOpen Q3FileDialog8Mostra continguts del fitxerPreview File Contents Q3FileDialog8Mostra informaci del fitxerPreview File Info Q3FileDialog"To&rna a carregarR&eload Q3FileDialogNoms lectura Read-only Q3FileDialog$Lectura-escriptura Read-write Q3FileDialogLlegeix: %1Read: %1 Q3FileDialogAnomena i desaSave As Q3FileDialog4Mostra els fitxers &ocultsShow &hidden files Q3FileDialogMidaSize Q3FileDialog OrdenaSort Q3FileDialog Ordena per &data Sort by &Date Q3FileDialogOrdena per &nom Sort by &Name Q3FileDialog Ordena per &mida Sort by &Size Q3FileDialogEspecialSpecial Q3FileDialog6Enlla simblic a directoriSymlink to Directory Q3FileDialog0Enlla simblic a fitxerSymlink to File Q3FileDialog4Enlla simblic a especialSymlink to Special Q3FileDialog TipusType Q3FileDialog Noms-escriptura Write-only Q3FileDialogEscriu: %1 Write: %1 Q3FileDialogel directori the directory Q3FileDialogel fitxerthe file Q3FileDialog"l'enlla simblic the symlink Q3FileDialog>No es pot crear el directori %1Could not create directory %1 Q3LocalFs$No es pot obrir %1Could not open %1 Q3LocalFs@No es pot llegir el directori %1Could not read directory %1 Q3LocalFs\No es pot eliminar el fitxer o el directori %1%Could not remove file or directory %1 Q3LocalFs@No es pot canviar el nom %1 a %2Could not rename %1 to %2 Q3LocalFs*No es pot escriure %1Could not write %1 Q3LocalFsPersonalitza... Customize... Q3MainWindow AlineaLine up Q3MainWindow:Operaci aturada per l'usuariOperation stopped by the userQ3NetworkProtocolCancellaCancelQ3ProgressDialog AplicaApply Q3TabDialogCancellaCancel Q3TabDialogPer defecteDefaults Q3TabDialog AjudaHelp Q3TabDialogD'acordOK Q3TabDialog &Copia&Copy Q3TextEditEngan&xa&Paste Q3TextEdit &Refs&Redo Q3TextEdit&Desfs&Undo Q3TextEdit NetejaClear Q3TextEditRe&tallaCu&t Q3TextEdit"Selecciona-ho tot Select All Q3TextEdit TancaClose Q3TitleBar"Tanca la finestraCloses the window Q3TitleBarPCont ordres per a manipular la finestra*Contains commands to manipulate the window Q3TitleBarMostra el nom de la finestra i cont controls per a manipular-laFDisplays the name of the window and contains controls to manipulate it Q3TitleBarRFa que la finestra ocupi tota la pantallaMakes the window full screen Q3TitleBarMaximitzaMaximize Q3TitleBarMinimitzaMinimize Q3TitleBarNMou la finestra fora de l'espai visibleMoves the window out of the way Q3TitleBardRestaura una finestra maximitzada a l'estat normal&Puts a maximized window back to normal Q3TitleBardRestaura una finestra minimitzada a l'estat normalPuts a minimized back to normal Q3TitleBarRestaura a sota Restore down Q3TitleBar Restaura a sobre Restore up Q3TitleBarSistemaSystem Q3TitleBar Ms...More... Q3ToolBar(desconegut) (unknown) Q3UrlOperatorEl protocol `%1' no admet la cpia o desplaament de fitxers o directorisIThe protocol `%1' does not support copying or moving files or directories Q3UrlOperatornEl protocol `%1' no admet la creaci de nous directoris;The protocol `%1' does not support creating new directories Q3UrlOperator^El protocol `%1' no admet l'obtenci de fitxers0The protocol `%1' does not support getting files Q3UrlOperator^El protocol `%1' no admet llistat de directoris6The protocol `%1' does not support listing directories Q3UrlOperatorVEl protocol `%1' no admet afegir-hi fitxers0The protocol `%1' does not support putting files Q3UrlOperator|El protocol `%1' no admet l'eliminaci de fitxers o directoris@The protocol `%1' does not support removing files or directories Q3UrlOperatorEl protocol `%1' no admet el canvi de nom de fitxers o directoris@The protocol `%1' does not support renaming files or directories Q3UrlOperatorBEl protocol `%1' no est suportat"The protocol `%1' is not supported Q3UrlOperator&Cancella&CancelQ3Wizard&Finalitza&FinishQ3Wizard A&juda&HelpQ3WizardSege&nt >&Next >Q3Wizard< &Enrere< &BackQ3Wizard2S'ha rebutjat la connexiConnection refusedQAbstractSocket2No s'ha trobat l'amfitriHost not foundQAbstractSocket4No s'ha connectat el scolSocket is not connectedQAbstractSocketlS'ha excedit el temps d'espera en l'operaci del scolSocket operation timed outQAbstractSocket$&Selecciona-ho tot &Select AllQAbstractSpinBoxPa&s amunt&Step upQAbstractSpinBoxPas a&vall Step &downQAbstractSpinBox ActivaActivate QApplicationRActiva la finestra principal del programa#Activates the program's main window QApplicationtL'executable '%1' requereix Qt %2, per s'ha trobat Qt %3.,Executable '%1' requires Qt %2, found Qt %3. QApplicationfS'ha produt un error de biblioteca Qt incompatibleIncompatible Qt Library Error QApplicationLTRQT_LAYOUT_DIRECTION QApplication ActivaCheck QCheckBoxCommutaToggle QCheckBoxDesactivaUncheck QCheckBoxD&Afegeix als colors personalitzats&Add to Custom Colors QColorDialogColors &bsics &Basic colors QColorDialog,&Colors personalitzats&Custom colors QColorDialog Ver&d:&Green: QColorDialogVe&rmell:&Red: QColorDialog &Sat:&Sat: QColorDialog &Val:&Val: QColorDialogCanal a&lfa:A&lpha channel: QColorDialog Bla&u:Bl&ue: QColorDialog&Mats:Hu&e: QColorDialog&Selecciona el color Select color QColorDialog TancaClose QComboBoxFalsFalse QComboBoxObreOpen QComboBoxVertaderTrue QComboBox%1: ja existeix%1: already existsQCoreApplication%1: no existeix%1: doesn't existsQCoreApplication$%1: ha fallat ftok%1: ftok failedQCoreApplication(%1: la clau s buida%1: key is emptyQCoreApplicationD%1: s'han sobrepassat els recursos%1: out of resourcesQCoreApplication$%1: perms denegat%1: permission deniedQCoreApplication6%1: no es pot crear la clau%1: unable to make keyQCoreApplication.%1: error desconegut %2%1: unknown error %2QCoreApplication>No es pot validar la transacciUnable to commit transaction QDB2Driver&No es pot connectarUnable to connect QDB2DriverDNo es pot fer enrere la transacciUnable to rollback transaction QDB2DriverBNo es pot activar l'autovalidaciUnable to set autocommit QDB2Driver<No es pot vincular la variableUnable to bind variable QDB2Result@No es pot executar la declaraciUnable to execute statement QDB2Result8No es pot recollir el primerUnable to fetch first QDB2Result:No es pot recollir el segentUnable to fetch next QDB2ResultBNo es pot recollir el registre %1Unable to fetch record %1 QDB2Result@No es pot preparar la declaraciUnable to prepare statement QDB2ResultAMAM QDateTimeEditPMPM QDateTimeEditamam QDateTimeEditpmpm QDateTimeEdit QDialQDialQDial Grapat SliderHandleQDialTaqumetre SpeedoMeterQDialFetDoneQDialogQu s aix? What's This?QDialog&No&NoQDialogButtonBox&D'acord&OKQDialogButtonBox&S&YesQDialogButtonBoxInterrompAbortQDialogButtonBox AplicaApplyQDialogButtonBoxCancellaCancelQDialogButtonBox TancaCloseQDialogButtonBox"Tanca sense desarClose without SavingQDialogButtonBoxDescartaDiscardQDialogButtonBoxNo ho desis Don't SaveQDialogButtonBox AjudaHelpQDialogButtonBox IgnoraIgnoreQDialogButtonBoxN&o a tot N&o to AllQDialogButtonBoxD'acordOKQDialogButtonBoxObreOpenQDialogButtonBoxReiniciaResetQDialogButtonBoxDRestaura els valors predeterminatsRestore DefaultsQDialogButtonBoxTorna a provarRetryQDialogButtonBoxDesaSaveQDialogButtonBoxDesa-ho totSave AllQDialogButtonBoxSi a &tot Yes to &AllQDialogButtonBox&Data de modificaci Date Modified QDirModel TipusKind QDirModelNomName QDirModelMidaSize QDirModel TipusType QDirModel TancaClose QDockWidgetAcobladorDock QDockWidget FloatFloat QDockWidget MenysLessQDoubleSpinBoxMsMoreQDoubleSpinBox&D'acord&OK QErrorMessage@&Mostra aquest missatge novament&Show this message again QErrorMessage,Missatge de depuraci:Debug Message: QErrorMessageError fatal: Fatal Error: QErrorMessage Avs:Warning: QErrorMessage%1 No s'ha trobat el directori. Comproveu que el nom del directori es correcte.K%1 Directory not found. Please verify the correct directory name was given. QFileDialog%1 No s'ha trobat el fitxer. Comproveu que el nom del fitxer es correcte.A%1 File not found. Please verify the correct file name was given. QFileDialogF%1 ja existeix.Voleu reemplaar-lo?-%1 already exists. Do you want to replace it? QFileDialog &Tria&Choose QFileDialog&Suprimeix&Delete QFileDialog&Nova carpeta &New Folder QFileDialog &Obre&Open QFileDialog&Canvia el nom&Rename QFileDialog &Desa&Save QFileDialog'%1' est protegit contra escriptura.Voleu suprimir-lo igualment?9'%1' is write protected. Do you want to delete it anyway? QFileDialog(Tots els fitxers (*) All Files (*) QFileDialogHEsteu segur que voleu suprimir '%1'?!Are sure you want to delete '%1'? QFileDialog EnrereBack QFileDialogHNo s'ha pogut suprimir el directori.Could not delete directory. QFileDialog"Crea nova carpetaCreate New Folder QFileDialogVista detallada Detail View QFileDialogDirectoris Directories QFileDialogDirectori: Directory: QFileDialog UnitatDrive QFileDialog FitxerFile QFileDialog&Nom de fitxer: File &name: QFileDialog$Fitxers del tipus:Files of type: QFileDialogCerca directoriFind Directory QFileDialogEndavantForward QFileDialog.Visualitza com a llista List View QFileDialogCerca a:Look in: QFileDialog El meu ordinador My Computer QFileDialogNova carpeta New Folder QFileDialogObreOpen QFileDialogDirectori pareParent Directory QFileDialogEliminaRemove QFileDialogAnomena i desaSave As QFileDialogMostra Show  QFileDialog4Mostra els fitxers &ocultsShow &hidden files QFileDialogDesconegutUnknown QFileDialog %1 GB%1 GBQFileSystemModel %1 KB%1 KBQFileSystemModel %1 MB%1 MBQFileSystemModel %1 TB%1 TBQFileSystemModel%1 bytes%1 bytesQFileSystemModel<b>No es pot usar el nom "%1".</b><p>Proveu d'usar un altre nom, amb menys carcters o sense signes de puntuaci.oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModelOrdinadorComputerQFileSystemModel&Data de modificaci Date ModifiedQFileSystemModel,Nom de fitxer no vlidInvalid filenameQFileSystemModel TipusKindQFileSystemModel El meu ordinador My ComputerQFileSystemModelNomNameQFileSystemModelMidaSizeQFileSystemModel TipusTypeQFileSystemModelQualsevolAny QFontDatabaserabArabic QFontDatabase ArmeniArmenian QFontDatabaseBengaliBengali QFontDatabase NegreBlack QFontDatabaseNegretaBold QFontDatabaseCirlicCyrillic QFontDatabaseSemiDemi QFontDatabaseSemi-negreta Demi Bold QFontDatabaseDevanagari Devanagari QFontDatabaseGeorgiGeorgian QFontDatabaseGrecGreek QFontDatabaseGujaratiGujarati QFontDatabaseGurmukhiGurmukhi QFontDatabase HebreuHebrew QFontDatabaseCursivaItalic QFontDatabaseJaponsJapanese QFontDatabaseKannadaKannada QFontDatabase KhmerKhmer QFontDatabase CoreKorean QFontDatabaseLaoLao QFontDatabase LlatLatin QFontDatabaseLleugerLight QFontDatabaseMalayalam Malayalam QFontDatabaseMyanmarMyanmar QFontDatabase NormalNormal QFontDatabaseObliquaOblique QFontDatabase OghamOgham QFontDatabase OriyaOriya QFontDatabase RnicRunic QFontDatabase"Xins simplificatSimplified Chinese QFontDatabaseSinhalaSinhala QFontDatabase SmbolSymbol QFontDatabaseSiriSyriac QFontDatabase TamilTamil QFontDatabase TeluguTelugu QFontDatabase ThaanaThaana QFontDatabaseThaiThai QFontDatabase TibetTibetan QFontDatabase"Xins tradicionalTraditional Chinese QFontDatabaseVietnamita Vietnamese QFontDatabase &Tipus de lletra&Font QFontDialog &Mida&Size QFontDialog&Subratllat &Underline QFontDialogEfectesEffects QFontDialog &Estil de lletra Font st&yle QFontDialog MostraSample QFontDialog<Seleccioneu el tipus de lletra Select Font QFontDialog&Ratllat Stri&keout QFontDialog*S&istema d'escripturaWr&iting System QFontDialogLNo s'ha pogut canviar el directori: %1Changing directory failed: %1QFtp,Connectat a l'amfitriConnected to hostQFtp2Connectat a l'amfitri %1Connected to host %1QFtpPNo s'ha pogut connectar a l'amfitri: %1Connecting to host failed: %1QFtp.S'ha tancat la connexiConnection closedQFtp^S'ha rebutjat la connexi per connexi de dades&Connection refused for data connectionQFtpRS'ha rebutjat la connexi a l'amfitri %1Connection refused to host %1QFtp<S'ha tancat la connexi amb %1Connection to %1 closedQFtpBNo s'ha pogut crear el fitxer: %1Creating directory failed: %1QFtpNNo s'ha pogut descarregar el fitxer: %1Downloading file failed: %1QFtp2S'ha trobat l'amfitri %1 Host %1 foundQFtp8No s'ha trobat l'amfitri %1Host %1 not foundQFtp,S'ha trobat l'amfitri Host foundQFtpLNo s'ha pogut llistar el directori: %1Listing directory failed: %1QFtp2Identificaci fallida: %1Login failed: %1QFtp"No est connectat Not connectedQFtpNNo s'ha pogut suprimir el directori: %1Removing directory failed: %1QFtpHNo s'ha pogut suprimir el fitxer: %1Removing file failed: %1QFtp Error desconegut Unknown errorQFtpHNo s'ha pogut carregar el fitxer: %1Uploading file failed: %1QFtp Error desconegut Unknown error QHostInfo2No s'ha trobat l'amfitriHost not foundQHostInfoAgent2Tipus d'adrea desconegutUnknown address typeQHostInfoAgent Error desconegut Unknown errorQHostInfoAgent0Es requreix autenticaciAuthentication requiredQHttp,Connectat a l'amfitriConnected to hostQHttp2Connectat a l'amfitri %1Connected to host %1QHttp.S'ha tancat la connexiConnection closedQHttp2S'ha rebutjat la connexiConnection refusedQHttpdS'ha rebutjat la connexi (temps d'espera excedit)!Connection refused (or timed out)QHttp<S'ha tancat la connexi amb %1Connection to %1 closedQHttpDades corruptesData corruptedQHttp:Ha fallat la sollicitud HTTPHTTP request failedQHttpS'ha fet la consulta HTTP per no hi ha suport compilat per a SSL:HTTPS connection requested but SSL support not compiled inQHttp2S'ha trobat l'amfitri %1 Host %1 foundQHttp8No s'ha trobat l'amfitri %1Host %1 not foundQHttp,S'ha trobat l'amfitri Host foundQHttpNEs requereix autenticaci de l'amfitriHost requires authenticationQHttp,Fragment HTTP no vlidInvalid HTTP chunked bodyQHttpHCapalera de resposta HTTP no vlidaInvalid HTTP response headerQHttp8No s'ha especificat servidorNo server set to connect toQHttpfEs requereix autenticaci del servidor intermediariProxy authentication requiredQHttpfEs requereix autenticaci del servidor intermediariProxy requires authenticationQHttp>S'ha interromput la sollicitudRequest abortedQHttpnS'ha produt un error en la conformitat de connexi SSLSSL handshake failedQHttpLEl servidor s'ha tancat inesperadament%Server closed connection unexpectedlyQHttp Error desconegut Unknown errorQHttpJEl protocol esfecificat s desconegutUnknown protocol specifiedQHttp>Longitud del contingut errniaWrong content lengthQHttp0Es requreix autenticaciAuthentication requiredQHttpSocketEngineHNo s'ha pogut iniciar la transcacciCould not start transaction QIBaseDriver^S'ha produt un error en obrir la base de dadesError opening database QIBaseDriver>No es pot validar la transacciUnable to commit transaction QIBaseDriverDNo es pot fer enrere la transacciUnable to rollback transaction QIBaseDriverHNo s'ha pogut assignar la declaraciCould not allocate statement QIBaseResult^No s'ha pogut descriure la declaraci d'entrada"Could not describe input statement QIBaseResultJNo s'ha pogut descriure la declaraciCould not describe statement QIBaseResultPNo s'ha pogut recollir l'element segentCould not fetch next item QIBaseResult<No s'ha pogut trobar el vectorCould not find array QIBaseResultVNo s'han pogut obtenir les dades del vectorCould not get array data QIBaseResultdNo s'ha pogut obtenir la informaci de la consultaCould not get query info QIBaseResulthNo s'ha pogut obtenir la informaci de la declaraciCould not get statement info QIBaseResultHNo s'ha pogut preparar la declaraciCould not prepare statement QIBaseResultHNo s'ha pogut iniciar la transcacciCould not start transaction QIBaseResult<No es pot tancar la declaraciUnable to close statement QIBaseResult>No es pot validar la transacciUnable to commit transaction QIBaseResult(No es pot crear BLOBUnable to create BLOB QIBaseResult<No es pot executar la consultaUnable to execute query QIBaseResult(No es pot obrir BLOBUnable to open BLOB QIBaseResult*No es pot llegir BLOBUnable to read BLOB QIBaseResult.No es pot escriure BLOBUnable to write BLOB QIBaseResultLNo hi ha espai lliure en el dispositiuNo space left on device QIODeviceHNo s'ha trobat el fitxer o directoriNo such file or directory QIODevice,S'ha denegat el permsPermission denied QIODevice4Hi ha massa fitxers obertsToo many open files QIODevice Error desconegut Unknown error QIODevice2Mtode d'entrada Mac OS XMac OS X input method QInputContext0Mtode d'entrada WindowsWindows input method QInputContextXIMXIM QInputContext(Mtode d'entrada XIMXIM input method QInputContext6No s'ha pogut mmap '%1': %2Could not mmap '%1': %2QLibrary>No s'ha pogut desmapar '%1': %2Could not unmap '%1': %2QLibraryxLes dades de verificaci del connector sn diferents en '%1')Plugin verification data mismatch in '%1'QLibrary\QLibrary::load_sys: No es pot carregar %1 (%2)'QLibrary::load_sys: Cannot load %1 (%2)QLibrarynQLibrary::resolve_sys: Smbol "%1" indefinit en %2 (%3)7QLibrary::resolve_sys: Symbol "%1" undefined in %2 (%3)QLibraryfQLibrary::unload_sys: No es pot descarregar %1 (%2)+QLibrary::unload_sys: Cannot unload %1 (%2)QLibraryVEl fitxer '%1' no s un connector Qt vlid.'The file '%1' is not a valid Qt plugin.QLibraryEl connector '%1' usa biblioteca Qt incompatible. (%2.%3.%4) [%5]=The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]QLibraryEl connector '%1' fa servir una biblioteca Qt incompatible. (No es poden barrejar les biblioteques de depuraci i llanament.)WThe plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)QLibraryEl connector '%1' usa una bilioteca Qt incompatible. S'esperava build key "%2", got "%3"OThe plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"QLibraryPNo s'ha trobat la biblioteca compartida.!The shared library was not found.QLibrary Error desconegut Unknown errorQLibrary &Copia&Copy QLineEditEngan&xa&Paste QLineEdit &Refs&Redo QLineEdit&Desfs&Undo QLineEditRe&tallaCu&t QLineEditSuprimeixDelete QLineEdit"Selecciona-ho tot Select All QLineEdit0%1: L'adrea ja s en s%1: Address in use QLocalServer %1: Error de nom%1: Name error QLocalServer4%1: S'ha denegat el perms%1: Permission denied QLocalServer.%1: Error desconegut %2%1: Unknown error %2 QLocalServer*%1: Error de connexi%1: Connection error QLocalSocket:%1: S'ha rebutjat la connexi%1: Connection refused QLocalSocket2%1: Datagrama massa llarg%1: Datagram too large QLocalSocket %1: Nom no vlid%1: Invalid name QLocalSocket@%1: S'ha tancat la sessi remota%1: Remote closed QLocalSocket4%1: Error d'accs al scol%1: Socket access error QLocalSocketh%1: temps d'espera superat per a l'operaci de scol%1: Socket operation timed out QLocalSocket8%1: Error de recurs de scol%1: Socket resource error QLocalSocketZ%1: L'operaci de scol no es troba suportada)%1: The socket operation is not supported QLocalSocket.%1: error desconegut %2%1: Unknown error %2 QLocalSocket@No es pot comenar la transacciUnable to begin transaction QMYSQLDriver>No es pot validar la transacciUnable to commit transaction QMYSQLDriver&No es pot connectarUnable to connect QMYSQLDriverDNo es pot obrir la base de dades 'Unable to open database ' QMYSQLDriverDNo es pot fer enrere la transacciUnable to rollback transaction QMYSQLDriverTNo es poden vincular els valors de sortidaUnable to bind outvalues QMYSQLResult6No es pot vincular el valorUnable to bind value QMYSQLResultLNo es pot executar la segent consultaUnable to execute next query QMYSQLResult<No es pot executar la consultaUnable to execute query QMYSQLResult@No es pot executar la declaraciUnable to execute statement QMYSQLResult<No es poden recollir les dadesUnable to fetch data QMYSQLResult@No es pot preparar la declaraciUnable to prepare statement QMYSQLResultBNo es pot reiniciar la declaraciUnable to reset statement QMYSQLResultTNo es pot emmagatzemar el segent resultatUnable to store next result QMYSQLResultDNo es pot emmagatzemar el resultatUnable to store result QMYSQLResultnNo es poden emmagatzemar els resultats de la declaracio!Unable to store statement results QMYSQLResult(sense ttol) (Untitled)QMdiArea%1 - [%2] %1 - [%2] QMdiSubWindow &Tanca&Close QMdiSubWindow&Mou&Move QMdiSubWindow&Restaura&Restore QMdiSubWindow Mi&da&Size QMdiSubWindow - [%1]- [%1] QMdiSubWindow TancaClose QMdiSubWindow AjudaHelp QMdiSubWindowMa&ximitza Ma&ximize QMdiSubWindowMaximitzaMaximize QMdiSubWindowMenMenu QMdiSubWindowMi&nimitza Mi&nimize QMdiSubWindowMinimitzaMinimize QMdiSubWindowRestauraRestore QMdiSubWindowRestaura a sota Restore Down QMdiSubWindowEnfosqueixShade QMdiSubWindow$Sempre per damun&t Stay on &Top QMdiSubWindowDesenfosqueixUnshade QMdiSubWindow TancaCloseQMenuExecutaExecuteQMenuObreOpenQMenuB<h3>Quant a Qt</h3>%1<p>Qt s un toolkit C++ multiplataforma per al desenvolupament d'aplicacions.</p><p>Qt proveeix portabilitat a MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux i la gran part de totes les variants Unix comercials. Qt tamb es troba disponible per a dispositius empotrats.</p><p>Qt s un producte de Nokia. Vegeu <a href="http://www.trolltech.com/qt/">www.trolltech.com/qt/</a> per a ms informaci.</p>

About Qt

%1

Qt is a C++ toolkit for cross-platform application development.

Qt provides single-source portability across MS Windows, Mac OS X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.

Qt is a Nokia product. See www.trolltech.com/qt/ for more information.

 QMessageBox(<p>Aquest programa usa Qt Open Source Edition versi %1.</p><p>Qt Open Source Edition est pensat per al desenvolupament d'aplicacions de codi obert. Necessiteu una llicncia comercial de Qt per al desenvolupament d'aplicacions de propietat (codi tancat).</p><p>Vegeu <a href="http://www.trolltech.com/company/model/">www.trolltech.com/company/model/</a> per a ms informaci sobre les llicncies Qt.</p>|

This program uses Qt Open Source Edition version %1.

Qt Open Source Edition is intended for the development of Open Source applications. You need a commercial Qt license for development of proprietary (closed source) applications.

Please see www.trolltech.com/company/model/ for an overview of Qt licensing.

 QMessageBoxP<p>Aquest programa usa Qt versi %1.</p>'

This program uses Qt version %1.

 QMessageBoxQuant a QtAbout Qt QMessageBox AjudaHelp QMessageBox*Oculta els detalls...Hide Details... QMessageBoxD'acordOK QMessageBox*Mostra els detalls...Show Details... QMessageBoxSelecciona IM Select IMQMultiInputContextNCommutador de mtode d'entrada multipleMultiple input method switcherQMultiInputContextPluginCommutador de mtode d'entrada multiple que usa el menu contextual del giny de textMMultiple input method switcher that uses the context menu of the text widgetsQMultiInputContextPlugin^Un altre scol ja est escoltant el mateix port4Another socket is already listening on the same portQNativeSocketEngineS'est provant de fer servir un scol IPv6 en una plataforma que no admet IPv6=Attempt to use IPv6 socket on a platform with no IPv6 supportQNativeSocketEngine2S'ha rebutjat la connexiConnection refusedQNativeSocketEngine>La connexi ha excedit el tempsConnection timed outQNativeSocketEnginefEl datagrama era massa llarg i no s'ha pogut enviarDatagram was too large to sendQNativeSocketEngine6L'amfitri no s accessibleHost unreachableQNativeSocketEngine8Descriptor de scol no vlidInvalid socket descriptorQNativeSocketEngineError de xarxa Network errorQNativeSocketEngineNL'operaci de xarxa ha excedit el tempsNetwork operation timed outQNativeSocketEngine2La xarxa no s accessibleNetwork unreachableQNativeSocketEngine2L'operaci no t un scolOperation on non-socketQNativeSocketEngineSense recursosOut of resourcesQNativeSocketEngine,S'ha denegat el permsPermission deniedQNativeSocketEngine@Tipus de protocol no implementatProtocol type not supportedQNativeSocketEngine6L'adrea no est disponibleThe address is not availableQNativeSocketEngine.L'adrea est protegidaThe address is protectedQNativeSocketEngineHJa s'est fent servir l'adrea limit#The bound address is already in useQNativeSocketEnginehEl tipus de proxy no s vlid per a aquesta operaci,The proxy type is invalid for this operationQNativeSocketEngineLL'amfitri remot ha tancat la connexi%The remote host closed the connectionQNativeSocketEngineTNo es pot inicialitzar el scol de difusio%Unable to initialize broadcast socketQNativeSocketEngineXNo es pot inicialitzar el scol no bloquejat(Unable to initialize non-blocking socketQNativeSocketEngine6No es pot rebre un missatgeUnable to receive a messageQNativeSocketEngine8No es pot enviar un missatgeUnable to send a messageQNativeSocketEngine$No es pot escriureUnable to writeQNativeSocketEngine Error desconegut Unknown errorQNativeSocketEngineBOperacio de scol no implementadaUnsupported socket operationQNativeSocketEngineVNo es pot obrir %1: el cam s un directori#Cannot open %1: Path is a directoryQNetworkAccessFileBackendVS'ha produt un error mentre s'obria %1: %2Error opening %1: %2QNetworkAccessFileBackend<S'ha produt un error a %1: %2Read error reading from %1: %2QNetworkAccessFileBackendVSollicitud per obrir un fitxer no local %1%Request for opening non-local file %1QNetworkAccessFileBackendVS'ha produt un error d'escriptura a %1: %2Write error writing to %1: %2QNetworkAccessFileBackendFNo es pot obrir %1: s un directoriCannot open %1: is a directoryQNetworkAccessFtpBackend\S'ha produt un error mentre es baixava %1: %2Error while downloading %1: %2QNetworkAccessFtpBackendZS'ha produt un error mentre es pujava %1: %2Error while uploading %1: %2QNetworkAccessFtpBackendfHa fallat l'entrada a %1: es requereix autenticaci0Logging in to %1 failed: authentication requiredQNetworkAccessFtpBackendS'ha produt un error mentre es descarregava %1 - el servidor va respondre: %2)Error downloading %1 - server replied: %2 QNetworkReply<El protocol "%1" s desconegutProtocol "%1" is unknown QNetworkReply4S'ha cancellat l'operaciOperation canceledQNetworkReplyImpl@No es pot comenar la transacciUnable to begin transaction QOCIDriver>No es pot validar la transacciUnable to commit transaction QOCIDriver,No es pot inicialitzarUnable to initialize QOCIDriver6No es pot iniciar la sessiUnable to logon QOCIDriverDNo es pot fer enrere la transacciUnable to rollback transaction QOCIDriver@No es pot assignar la declaraciUnable to alloc statement QOCIResulthNo es pot vincular una columna per a executar el lot'Unable to bind column for batch execute QOCIResult6No es pot vincular el valorUnable to bind value QOCIResultNNo es pot executar la declaraci de lot!Unable to execute batch statement QOCIResultNNo es pot executar la declaraci select"Unable to execute select statement QOCIResult@No es pot executar la declaraciUnable to execute statement QOCIResult2No es pot anar al segentUnable to goto next QOCIResult@No es pot preparar la declaraciUnable to prepare statement QOCIResult>No es pot validar la transacciUnable to commit transaction QODBCDriver&No es pot connectarUnable to connect QODBCDriverNo es pot connectar - El programa de control no permet tota la funcionalitat necessriaCUnable to connect - Driver doesn't support all needed functionality QODBCDriverJNo es pot inhabilitar l'autovalidaciUnable to disable autocommit QODBCDriverFNo es pot habilitar l'autovalidaciUnable to enable autocommit QODBCDriverDNo es pot fer enrere la transacciUnable to rollback transaction QODBCDriver QODBCResult::reset: No es pot activar 'SQL_CURSOR_STATIC' com a atribut de la declaraci. Comproveu la configuraci del programa de control ODBCyQODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResult<No es pot vincular la variableUnable to bind variable QODBCResult@No es pot executar la declaraciUnable to execute statement QODBCResult$No es pot recollirUnable to fetch QODBCResult8No es pot recollir el primerUnable to fetch first QODBCResult4No es pot recollir l'ltimUnable to fetch last QODBCResult:No es pot recollir el segentUnable to fetch next QODBCResult:No es pot recollir l'anteriorUnable to fetch previous QODBCResult@No es pot preparar la declaraciUnable to prepare statement QODBCResult"URI no vlida: %1Invalid URI: %1QObject4Operaci no suportada a %1Operation not supported on %1QObjectbError de protocol: s'ha rebut un paquet de mida 0)Protocol error: packet of size 0 receivedQObject<S'ha produt un error a %1: %2Read error reading from %1: %2QObjectTAmfitri remot ha tancat la connexi en %13Remote host closed the connection prematurely on %1QObject.Error de scol a %1: %2Socket error on %1: %2QObjectVS'ha produt un error d'escriptura a %1: %2Write error writing to %1: %2QObjectNomNameQPPDOptionsModel ValorValueQPPDOptionsModelJNo s'ha pogut comenar la transcacciCould not begin transaction QPSQLDriverFNo s'ha pogut validar la transacciCould not commit transaction QPSQLDriverLNo s'ha pogut fer enrere la transacciCould not rollback transaction QPSQLDriver&No es pot connectarUnable to connect QPSQLDriver(No es pot subscriureUnable to subscribe QPSQLDriver0No es pot donar de baixaUnable to unsubscribe QPSQLDriver6No es pot crear la consultaUnable to create query QPSQLResult@No es pot preparar la declaraciUnable to prepare statement QPSQLResult Centmetres (cm)Centimeters (cm)QPageSetupWidgetFormulariFormQPageSetupWidgetAlada:Height:QPageSetupWidgetPolades (in) Inches (in)QPageSetupWidgetHoritzontal LandscapeQPageSetupWidget MargesMarginsQPageSetupWidgetMilmetres (mm)Millimeters (mm)QPageSetupWidgetOrientaci OrientationQPageSetupWidget$Mida de la pgina: Page size:QPageSetupWidget PaperPaperQPageSetupWidgetFont del paper: Paper source:QPageSetupWidgetPunts (pt) Points (pt)QPageSetupWidgetVerticalPortraitQPageSetupWidget$Horitzontal reversReverse landscapeQPageSetupWidgetVertical reversReverse portraitQPageSetupWidgetAmplada:Width:QPageSetupWidgetMarge inferior bottom marginQPageSetupWidgetMarge esquerre left marginQPageSetupWidgetMarge dret right marginQPageSetupWidgetMarge superior top marginQPageSetupWidget<No s'ha carregat el connector.The plugin was not loaded. QPluginLoader Error desconegut Unknown error QPluginLoaderL%1 ja existeix. Voleu sobreescriure'l?/%1 already exists. Do you want to overwrite it? QPrintDialogh%1 s un directori. Trieu un nom de fitxer diferent.7%1 is a directory. Please choose a different file name. QPrintDialog&Opcions << &Options << QPrintDialog&Opcions >> &Options >> QPrintDialogIm&primeix&Print QPrintDialogA0A0 QPrintDialogA1A1 QPrintDialogA2A2 QPrintDialogA3A3 QPrintDialogA4A4 QPrintDialogA5A5 QPrintDialogA6A6 QPrintDialogA7A7 QPrintDialogA8A8 QPrintDialogA9A9 QPrintDialoglies: %1 Aliases: %1 QPrintDialogB0B0 QPrintDialogB1B1 QPrintDialogB10B10 QPrintDialogB2B2 QPrintDialogB3B3 QPrintDialogB4B4 QPrintDialogB5B5 QPrintDialogB6B6 QPrintDialogB7B7 QPrintDialogB8B8 QPrintDialogB9B9 QPrintDialogC5EC5E QPrintDialogPersonalitzatCustom QPrintDialogDLEDLE QPrintDialogExecutiu Executive QPrintDialogzNo es pot escriure al fitxer %1 Trieu un altre nom de fitxer.=File %1 is not writable. Please choose a different file name. QPrintDialogFoliFolio QPrintDialog LlibreLedger QPrintDialog LegalLegal QPrintDialog CartaLetter QPrintDialogFitxer local Local file QPrintDialog0Imprimeix a un fitxer...Print To File ... QPrintDialog6Imprimeix a un fitxer (PDF)Print to File (PDF) QPrintDialogDImprimeix a un fitxer (Postscript)Print to File (Postscript) QPrintDialogTabloideTabloid QPrintDialog,US Common #10 EnvelopeUS Common #10 Envelope QPrintDialog&Escriu el fitxer %1 Write %1 file QPrintDialog&connectat localmentlocally connected QPrintDialogdesconegutunknown QPrintDialog TancaCloseQPrintPreviewDialogPrimera pgina First pageQPrintPreviewDialog$AJusta a la pginaFit pageQPrintPreviewDialog$Ajusta a l'amplada Fit widthQPrintPreviewDialogHoritzontal LandscapeQPrintPreviewDialogltima pgina Last pageQPrintPreviewDialogPgina segent Next pageQPrintPreviewDialog2Configuraci de la pgina Page SetupQPrintPreviewDialog2Configuraci de la pgina Page setupQPrintPreviewDialogVerticalPortraitQPrintPreviewDialogPgina anterior Previous pageQPrintPreviewDialogImprimeixPrintQPrintPreviewDialog8Previsualitzaci d'impressi Print PreviewQPrintPreviewDialog$Mostra les pginesShow facing pagesQPrintPreviewDialogHMostra un resum de totes les pginesShow overview of all pagesQPrintPreviewDialog"Mostra una pginaShow single pageQPrintPreviewDialog ApropaZoom inQPrintPreviewDialogAllunyaZoom outQPrintPreviewDialogAvanatAdvancedQPrintPropertiesWidgetFormulariFormQPrintPropertiesWidget PginaPageQPrintPropertiesWidgetCompaginaCollateQPrintSettingsOutput ColorColorQPrintSettingsOutputMode de color Color ModeQPrintSettingsOutput CpiesCopiesQPrintSettingsOutputCpies:Copies:QPrintSettingsOutput,Impressi a doble caraDuplex PrintingQPrintSettingsOutputFormulariFormQPrintSettingsOutput Escala de grisos GrayscaleQPrintSettingsOutputCostat llarg Long sideQPrintSettingsOutputCapNoneQPrintSettingsOutputOpcionsOptionsQPrintSettingsOutput*Parmetres de sortidaOutput SettingsQPrintSettingsOutputPgines des de Pages fromQPrintSettingsOutput Imprimeix-ho tot Print allQPrintSettingsOutput Rang d'impressi Print rangeQPrintSettingsOutput ReversReverseQPrintSettingsOutputSelecci SelectionQPrintSettingsOutputCostat curt Short sideQPrintSettingsOutput fins atoQPrintSettingsOutput &Nom:&Name: QPrintWidget...... QPrintWidgetFormulariForm QPrintWidgetUbicaci: Location: QPrintWidget&&Fitxer de sortida: Output &file: QPrintWidgetP&ropietats P&roperties QPrintWidget PrevisualitzaciPreview QPrintWidgetImpressoraPrinter QPrintWidget Tipus:Type: QPrintWidgetCancellaCancelQProgressDialogObreOpen QPushButton ActivaCheck QRadioButtonLerror de sintaxi al tipus de carctersbad char class syntaxQRegExp6error de sintaxi a l'ulladabad lookahead syntaxQRegExp>error de sintaxi a la repeticibad repetition syntaxQRegExp`s'ha fet servir una caracterstica no habilitadadisabled feature usedQRegExp(valor octal no vlidinvalid octal valueQRegExp8s'ha arribat al lmit internmet internal limitQRegExp.falta el delim esquerremissing left delimQRegExp2no s'ha produt cap errorno error occurredQRegExpfinal inesperatunexpected endQRegExpZS'ha produt un error per obrir base de dadesError to open databaseQSQLite2Driver@No es pot comenar la transacciUnable to begin transactionQSQLite2Driver>No es pot validar la transacciUnable to commit transactionQSQLite2DriverDNo es pot fer enrere la transacciUnable to rollback TransactionQSQLite2Driver@No es pot executar la declaraciUnable to execute statementQSQLite2ResultDNo es poden recollir els resultatsUnable to fetch resultsQSQLite2Result`S'ha produt un error en tancar la base de dadesError closing database QSQLiteDriver^S'ha produt un error en obrir la base de dadesError opening database QSQLiteDriver@No es pot comenar la transacciUnable to begin transaction QSQLiteDriver>No es pot validar la transacciUnable to commit transaction QSQLiteDriverDNo es pot fer enrere la transacciUnable to rollback transaction QSQLiteDriverCap consultaNo query QSQLiteResultNEl nombre dels parmetres s discordantParameter count mismatch QSQLiteResultFNo es poden vincular els parmetresUnable to bind parameters QSQLiteResult@No es pot executar la declaraciUnable to execute statement QSQLiteResult4No es pot recollir la filaUnable to fetch row QSQLiteResultBNo es pot reiniciar la declaraciUnable to reset statement QSQLiteResultInferiorBottom QScrollBarVora esquerra Left edge QScrollBarLnia avall Line down QScrollBar AlineaLine up QScrollBar Av Pag Page down QScrollBarPgina esquerra Page left QScrollBarPgina dreta Page right QScrollBar Re PagPage up QScrollBarPosiciPosition QScrollBarVora dreta Right edge QScrollBarDesplaa avall Scroll down QScrollBarDesplaa ac Scroll here QScrollBar*Desplaa a l'esquerra Scroll left QScrollBar&Desplaa a la dreta Scroll right QScrollBarDesplaa amunt Scroll up QScrollBarSuperiorTop QScrollBar%1: ja existeix%1: already exists QSharedMemoryJ%1: la mida de creaci s menor que 0%1: create size is less then 0 QSharedMemory%1: no existeix%1: doesn't exists QSharedMemory$%1: ha fallat ftok%1: ftok failed QSharedMemory(%1: la clau s buida%1: key is empty QSharedMemory*%1: no est connectat%1: not attached QSharedMemoryD%1: s'han sobrepassat els recursos%1: out of resources QSharedMemory$%1: perms denegat%1: permission denied QSharedMemoryX%1: el sistema ha posat restriccions de mida$%1: system-imposed size restrictions QSharedMemory.%1: no es pot bloquejar%1: unable to lock QSharedMemory6%1: no es pot crear la clau%1: unable to make key QSharedMemoryT%1: no es pot definir la clau del blocatge%1: unable to set key on lock QSharedMemory4%1: no es pot desbloquejar%1: unable to unlock QSharedMemoryL%1: no existeix el fitxer de clau unix %1: unix key file doesn't exists QSharedMemory.%1: error desconegut %2%1: unknown error %2 QSharedMemory++ QShortcutAltAlt QShortcut EnrereBack QShortcutRetrocs Backspace QShortcutRetro TabBacktab QShortcut"Potencia els geus Bass Boost QShortcutBaixa els greus Bass Down QShortcutPuja els greusBass Up QShortcut CridaCall QShortcutBloq Majs Caps Lock QShortcutBloq MajsCapsLock QShortcutContext1Context1 QShortcutContext2Context2 QShortcutContext3Context3 QShortcutContext4Context4 QShortcutCtrlCtrl QShortcutSuprDel QShortcutSuprimeixDelete QShortcut AvallDown QShortcutFiEnd QShortcut IntroEnter QShortcutEscEsc QShortcutEscEscape QShortcutF%1F%1 QShortcutPreferits Favorites QShortcutInverteixFlip QShortcutEndavantForward QShortcut PenjaHangup QShortcut AjudaHelp QShortcut IniciHome QShortcutPgina d'inici Home Page QShortcutInsIns QShortcutInsereixInsert QShortcutInicia (0) Launch (0) QShortcutInicia (1) Launch (1) QShortcutInicia (2) Launch (2) QShortcutInicia (3) Launch (3) QShortcutInicia (4) Launch (4) QShortcutInicia (5) Launch (5) QShortcutInicia (6) Launch (6) QShortcutInicia (7) Launch (7) QShortcutInicia (8) Launch (8) QShortcutInicia (9) Launch (9) QShortcutInicia (A) Launch (A) QShortcutInicia (B) Launch (B) QShortcutInicia (C) Launch (C) QShortcutInicia (D) Launch (D) QShortcutInicia (E) Launch (E) QShortcutInicia (F) Launch (F) QShortcutInicia Correu Launch Mail QShortcutInicia Mdia Launch Media QShortcutEsquerraLeft QShortcutMdia Segent Media Next QShortcutInicia Mdia Media Play QShortcutMdia AnteriorMedia Previous QShortcutGrava Mdia Media Record QShortcutAtura Mdia Media Stop QShortcutMenMenu QShortcutMetaMeta QShortcutNoNo QShortcutBloq NumNum Lock QShortcutBloq NumNumLock QShortcutBloq Num Number Lock QShortcutObre URLOpen URL QShortcut Av Pag Page Down QShortcut Re PagPage Up QShortcut PausaPause QShortcut Av PagPgDown QShortcut Re PagPgUp QShortcutImprimeixPrint QShortcutImpr Pant Print Screen QShortcutRefrescaRefresh QShortcut RetornReturn QShortcut DretaRight QShortcutBloq Despl Scroll Lock QShortcutBloq Despl ScrollLock QShortcut CercaSearch QShortcutSeleccionaSelect QShortcutMajShift QShortcut EspaiSpace QShortcut RepsStandby QShortcut AturaStop QShortcutPet SisSysReq QShortcutPet SisSystem Request QShortcutTabTab QShortcutBaixa els aguts Treble Down QShortcutPuja els aguts  Treble Up QShortcut AmuntUp QShortcutBaixa el volum Volume Down QShortcutSilenci Volume Mute QShortcutPuja el volum Volume Up QShortcutSYes QShortcut Av Pag Page downQSliderPgina esquerra Page leftQSliderPgina dreta Page rightQSlider Re PagPage upQSliderPosiciPositionQSliderNL'operaci de xarxa ha excedit el tempsNetwork operation timed outQSocks5SocketEngineS'ha produt un error de temps excedit Socks5 en connectar al servidor de scols/Socks5 timeout error connecting to socks serverQSocks5SocketEngine MenysLessQSpinBoxMsMoreQSpinBoxCancellaCancelQSql8Voleu cancellar els canvis?Cancel your edits?QSqlConfirmaConfirmQSqlSuprimeixDeleteQSql>Voleu suprimir aquest registre?Delete this record?QSqlInsereixInsertQSqlNoNoQSql.Voleu desar els canvis? Save edits?QSqlActualitzaUpdateQSqlSYesQSqldNo es pot proveir un certificat sense una clau, %1,Cannot provide a certificate with no key, %1 QSslSocketdS'ha produt un error en crear el context SSL (%1)Error creating SSL context (%1) QSslSocket`S'ha produt un error en crear la sessi SSL, %1Error creating SSL session, %1 QSslSocket`S'ha produt un error en crear la sessi SSL: %1Error creating SSL session: %1 QSslSocketvS'ha produt un error en la conformitat de connexi SSL: %1Error during SSL handshake: %1 QSslSocketrS'ha produt un error en carregar el certificat local, %1#Error loading local certificate, %1 QSslSocketjS'ha produt un error en carregar la clau privada, %1Error loading private key, %1 QSslSocketFS'ha produt un error en llegir: %1Error while reading: %1 QSslSocketNLlista de xifres no vlida o buida (%1)!Invalid or empty cipher list (%1) QSslSocket`La clau privada no certifica la clau pblica, %1/Private key does not certificate public key, %1 QSslSocketDNo es poden escriure les dades: %1Unable to write data: %1 QSslSocket6No es pot obrir la connexiUnable to open connection QTDSDriver>No es pot usar la base de dadesUnable to use database QTDSDriver*Desplaa a l'esquerra Scroll LeftQTabBar&Desplaa a la dreta Scroll RightQTabBar &Copia&Copy QTextControlEngan&xa&Paste QTextControl &Refs&Redo QTextControl&Desfs&Undo QTextControl6Copia l'adrea de l'en&llaCopy &Link Location QTextControlRe&tallaCu&t QTextControlSuprimeixDelete QTextControl"Selecciona-ho tot Select All QTextControlObreOpen QToolButton PremeuPress QToolButton@Aquesta plataforma no admet IPV6#This platform does not support IPv6 QUdpSocket RefsRedo QUndoGroup DesfsUndo QUndoGroup <buit> QUndoModel RefsRedo QUndoStack DesfsUndo QUndoStackNInsereix un carcter de control Unicode Insert Unicode control characterQUnicodeControlCharacterMenuXLRE Inici de la incrustaci esquerra-a-dreta$LRE Start of left-to-right embeddingQUnicodeControlCharacterMenu4LRM Marca esquerra-a-dretaLRM Left-to-right markQUnicodeControlCharacterMenu`LRO Inici de la sobreescriptura esquerra-a-dreta#LRO Start of left-to-right overrideQUnicodeControlCharacterMenu4Format direccional pop PDFPDF Pop directional formattingQUnicodeControlCharacterMenuXRLE Inici de la incrustaci dreta-a-esquerra$RLE Start of right-to-left embeddingQUnicodeControlCharacterMenu4RLM marca dreta-a-esquerraRLM Right-to-left markQUnicodeControlCharacterMenu`RLO Inici de la sobreescriptura dreta-a-esquerra#RLO Start of right-to-left overrideQUnicodeControlCharacterMenu<Ensamblador d'amplada zero ZWJZWJ Zero width joinerQUnicodeControlCharacterMenuDNo-ensamblador d'amplada zero ZWNJZWNJ Zero width non-joinerQUnicodeControlCharacterMenu2ZWSP Espai d'amplada zeroZWSP Zero width spaceQUnicodeControlCharacterMenu.No es pot mostrar l'URLCannot show URL QWebFrame:No es pot mostrar el mimetypeCannot show mimetype QWebFrame*El fitxer no existeixFile does not exist QWebFramebS'ha interromput la crrega per canvi de poltica&Frame load interruped by policy change QWebFrame:S'ha bloquejat la sollicitudRequest blocked QWebFrame<S'ha cancellat la sollicitudRequest cancelled QWebFrame"%1 (%2x%3 pxels)%1 (%2x%3 pixels)QWebPage*Afegeix al diccionariAdd To DictionaryQWebPage:Ha fallat la sollicitud HTTPBad HTTP requestQWebPageNegretaBoldQWebPageJComprova la gramtica mentre s'escriuCheck Grammar With SpellingQWebPage*Comprova l'ortografiaCheck SpellingQWebPageJComprova l'ortografia mentre s'escriuCheck Spelling While TypingQWebPageTrieu un fitxer Choose FileQWebPage4Neteja les cerques recentsClear recent searchesQWebPage CopiaCopyQWebPageCopia la imatge Copy ImageQWebPageCopia l'enlla Copy LinkQWebPageRetallaCutQWebPagePredeterminatDefaultQWebPageDirecci DirectionQWebPageTipus de lletraFontsQWebPageVs enrereGo BackQWebPageVs endavant Go ForwardQWebPageBAmaga l'ortografia i la gramticaHide Spelling and GrammarQWebPage IgnoraIgnoreQWebPage Ignora Ignore Grammar context menu itemIgnoreQWebPageInspeccionaInspectQWebPageCursivaItalicQWebPageEADLTRQWebPage&Cerca al diccionariLook Up In DictionaryQWebPage8No s'ha trobat cap suposiciNo Guesses FoundQWebPage<No s'ha seleccionat cap fitxerNo file selectedQWebPage0No hi ha cerques recentsNo recent searchesQWebPageObre el marc Open FrameQWebPageObre la imatge Open ImageQWebPageObre l'enlla Open LinkQWebPage0Obre a una nova finestraOpen in New WindowQWebPageContornOutlineQWebPageEnganxaPasteQWebPageDAERTLQWebPageCerques recentsRecent searchesQWebPage Torna a carregarReloadQWebPageReiniciaResetQWebPageDesa la imatge Save ImageQWebPage Desa l'enlla... Save Link...QWebPageCerca al webSearch The WebQWebPageDMostra l'ortografia i la gramticaShow Spelling and GrammarQWebPageOrtografiaSpellingQWebPage AturaStopQWebPage EnviaSubmitQWebPage EnviaQSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPageAquest s un ndex on es pot cercar. Introduu les paraules de cerca: 3This is a searchable index. Enter search keywords: QWebPageSubratllat UnderlineQWebPageDesconegutUnknownQWebPage$Web inspector - %2Web Inspector - %2QWebPageQu s aix? What's This?QWhatsThisAction**QWidget&Finalitza&FinishQWizard A&juda&HelpQWizardSege&nt&NextQWizardSege&nt >&Next >QWizard< &Enrere< &BackQWizardCancellaCancelQWizard ValidaCommitQWizardContinuaContinueQWizardFetDoneQWizardVs enrereGo BackQWizard AjudaHelpQWizardSurtQuitQWizard%1 - [%2] %1 - [%2] QWorkspace &Tanca&Close QWorkspace&Mou&Move QWorkspace&Restaura&Restore QWorkspace Mi&da&Size QWorkspace&Desenfosqueix&Unshade QWorkspace TancaClose QWorkspaceMa&ximitza Ma&ximize QWorkspaceMi&nimitza Mi&nimize QWorkspaceMinimitzaMinimize QWorkspaceRestaura a sota Restore Down QWorkspace&EnfosqueixSh&ade QWorkspace$&Sempre per damunt Stay on &Top QWorkspaces'esperava la declaraci 'encoding' o 'standalone' en llegir la declaraci XMLYencoding declaration or standalone declaration expected while reading the XML declarationQXmlferror a la declaraci textual d'una entitat externa3error in the text declaration of an external entityQXmlfs'ha produt un error quan s'analitzava el document$error occurred while parsing commentQXmlls'ha produt un error mentre s'analitzava el contingut$error occurred while parsing contentQXmls'ha produt un error mentre s'analitzava la definici del tipus de document5error occurred while parsing document type definitionQXmlfs'ha produt un error mentre s'analitzava l'element$error occurred while parsing elementQXmljs'ha produt un error quan s'analitzava la referncia&error occurred while parsing referenceQXml6error provocat per l'usuarierror triggered by consumerQXmlno estan permeses referncies externes a entitats generals que ja s'han analitzat a la DTD;external parsed general entity reference not allowed in DTDQXmlno estan permeses referncies externes a entitats generals que ja s'han analitzat al valor de l'atributGexternal parsed general entity reference not allowed in attribute valueQXmlno estan permeses referncies internes a entitats generals a la DTD4internal general entity reference not allowed in DTDQXmlPnom per processar la instrucci no vlid'invalid name for processing instructionQXml$s'espera una cartaletter is expectedQXmlRms d'una definici del tipus de document&more than one document type definitionQXml2no s'ha produt cap errorno error occurredQXml&entitats recursivesrecursive entitiesQXmls'esperava la declaraci 'standalone' en llegir la declaraci XMLAstandalone declaration expected while reading the XML declarationQXml marca discordant tag mismatchQXml$carcter inesperatunexpected characterQXml4final del fitxer inesperatunexpected end of fileQXmlxreferncia a l'entitat no analitzada en un context inadequat*unparsed entity reference in wrong contextQXmlns'esperava llegir la versi en llegir la declaraci XML2version expected while reading the XML declarationQXmlZvalor erroni per a la declaraci 'standalone'&wrong value for standalone declarationQXmlN%1 s un identificador PUBLIC no vlid.#%1 is an invalid PUBLIC identifier. QXmlStreamJ%1 s un nom de codificaci no vlid.%1 is an invalid encoding name. QXmlStreamd%1 s un nom per processar la instrucci no vlid.-%1 is an invalid processing instruction name. QXmlStream, per t ' , but got ' QXmlStream@S'ha tornat a definir l'atribut.Attribute redefined. QXmlStreamDLa codificaci %1 no s compatibleEncoding %1 is unsupported QXmlStream^S'ha trobat contingut codificat incorrectament.(Encountered incorrectly encoded content. QXmlStream4Entitat '%1' no declarada.Entity '%1' not declared. QXmlStreamEsperat  Expected  QXmlStream>S'esperaven dades del carcter.Expected character data. QXmlStreamLContingut extra al final del document.!Extra content at end of document. QXmlStream@Declaraci 'namespace' illegal.Illegal namespace declaration. QXmlStream,Carcter XML no vlid.Invalid XML character. QXmlStream"Nom XML no vlid.Invalid XML name. QXmlStream>Cadena de versi XML no vlida.Invalid XML version string. QXmlStreamLAtribut no vlid en la declaraci XML.%Invalid attribute in XML declaration. QXmlStreamBReferncia de carcter no vlida.Invalid character reference. QXmlStream$Document no vlid.Invalid document. QXmlStream2Valor d'entitat no vlid.Invalid entity value. QXmlStreamRNom per processar la instrucci no vlid.$Invalid processing instruction name. QXmlStreamfNDATA en la declaraci de l'entitat d'un parmetre.&NDATA in parameter entity declaration. QXmlStreamJPrefix '%1' del namespace no declarat"Namespace prefix '%1' not declared QXmlStreamfL'obertura i el tancament de la marca no concorden. Opening and ending tag mismatch. QXmlStream8Final del document prematur.Premature end of document. QXmlStreamHS'ha detectat una entitat recursiva.Recursive entity detected. QXmlStreamjReferncia a l'entitat externa '%1' en valor atribut.5Reference to external entity '%1' in attribute value. QXmlStreamTReferncia a l'entitat no analitzada '%1'."Reference to unparsed entity '%1'. QXmlStreamVSeqncia ']]>' no permesa en el contingut.&Sequence ']]>' not allowed in content. QXmlStreamF'Standalone' noms accepta s o no."Standalone accepts only yes or no. QXmlStream8S'esperava l'inici de marca.Start tag expected. QXmlStreamEl pseudo atribut 'standalone' ha d'aparixer desprs de la codificaci.?The standalone pseudo attribute must appear after the encoding. QXmlStreamInesperat ' Unexpected ' QXmlStreamZCarcter '%1' inesperat en literal id pblic./Unexpected character '%1' in public id literal. QXmlStream2Versi XML no compatible.Unsupported XML version. QXmlStreamHi ha una declaraci XML que no est al comenament del document.)XML declaration not at start of document. QXmlStreamf%1 i %2 coincideixen a l'inici i al final de lnia.,%1 and %2 match the start and end of a line. QtXmlPatterns0No s'ha pogut obtenir %1%1 cannot be retrieved QtXmlPatterns %1 s un tipus complexe. La fundici a tipus complexes no s possible. Tot i aix, la fundici a tipus atmics com %2 s que funciona.s%1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works. QtXmlPatterns(%1 s un %2 no vlid%1 is an invalid %2 QtXmlPatterns%1 s un indicador no vlid per a expressions regulars. Indicadors vlids sn:?%1 is an invalid flag for regular expressions. Valid flags are: QtXmlPatterns>%1 no s un nomespai URI vlid.%1 is an invalid namespace URI. QtXmlPatternsR%1 no s un patr d'expressi regular: %2/%1 is an invalid regular expression pattern: %2 QtXmlPatternsD%1 s un tipus esquema desconegut.%1 is an unknown schema type. QtXmlPatternsF%1 no s un carcter XML 1.0 vlid.$%1 is not a valid XML 1.0 character. QtXmlPatterns%1 no s un nom vlid per a una instrucci de processat. A ms aquest nom de prova mai coincidir._%1 is not a valid name for a processing-instruction. Therefore this name test will never match. QtXmlPatternsD%1 no s un literal numric vlid."%1 is not a valid numeric literal. QtXmlPatterns%1 no s un nom objectiu vlid en una instrucci de processat. Ha de ser un valor %2, e.x. %3.Z%1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3. QtXmlPatternsJ%1 no s un valor vlid del tipus %2.#%1 is not a valid value of type %2. QtXmlPatternsD%1 no s un valor enter de minuts.$%1 is not a whole number of minutes. QtXmlPatterns%1 no s un tipus atmic. La fundici noms s possible per a tipus atmics.C%1 is not an atomic type. Casting is only possible to atomic types. QtXmlPatterns%1 no s una declaraci d'atribut in-scope. Tingueu en compte que la caracterstica d'importaci d'esquemes no est suportada.g%1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported. QtXmlPatternsP%1 no s vlid com a valor del tipus %2.&%1 is not valid as a value of type %2. QtXmlPatternsR%1 coincideix amb carcters de nova lnia%1 matches newline characters QtXmlPatterns%1 ha de ser continuat per %2 o %3, no un final de la cadena de reempla.J%1 must be followed by %2 or %3, not at the end of the replacement string. QtXmlPatterns~%1 requereix com a mnim %n argument. Per tant, %2 no s vlid.%1 requereix com a mnim %n arguments. Per tant, %2 no s vlid.%1 requereix com a mnim %n arguments. Per tant, %2 no s vlid.=%1 requires at least %n argument(s). %2 is therefore invalid. QtXmlPatterns%1 fa servir com a mxim %n(s) argument. Per tant, %2 no s vlid.%1 fa servir com a mxim %n(s) arguments. Per tant, %2 no s vlid.%1 fa servir com a mxim %n(s) arguments. Per tant, %2 no s vlid.9%1 takes at most %n argument(s). %2 is therefore invalid. QtXmlPatterns Es va cridar %1.%1 was called. QtXmlPatterns>Un comentari no pot contenir %1A comment cannot contain %1 QtXmlPatternsDUn comentari no pot acabar amb %1.A comment cannot end with a %1. QtXmlPatternsUna declaraci nomespai per defecte ha d'ocrrer abans de la funci, variable i declaracions d'opci.^A default namespace declaration must occur before function, variable, and option declarations. QtXmlPatternsUn constructor d'element directe no s'ha format correctament. %1 s'ha finalitzat amb %2.EA direct element constructor is not well-formed. %1 is ended with %2. QtXmlPatternsVJa existeix una funci amb la signatura %1.0A function already exists with the signature %1. QtXmlPatternsUn mdul de biblioteca no pot avaluar-se directament. Ha de ser importat des d'un mdul principal.VA library module cannot be evaluated directly. It must be imported from a main module. QtXmlPatternstUn predicat posicioanl ha d'avaluar un nic valor numric.?A positional predicate must evaluate to a single numeric value. QtXmlPatternsUn valor del tipus %1 no pot ser un predicat. Un predicat ha de tenir un tipus numric o un tipus valor boole efectiu.yA value of type %1 cannot be a predicate. A predicate must have either a numeric type or an Effective Boolean Value type. QtXmlPatternsvUn valor del tipus %1 no pot tenir un valor boole efectiu.:A value of type %1 cannot have an Effective Boolean Value. QtXmlPatternsUn valor del tipus %1 ha de contenir un valor senar de dgits. El valor %2 no el cont.PA value of type %1 must contain an even number of digits. The value %2 does not. QtXmlPatternslJa s'ha declarat una variable amb el nom %1 al prleg.>A variable by name %1 has already been declared in the prolog. QtXmlPatternsUna zona de retard ha d'estar en el rang %1..%2 inclosos. %3 est fora del rang.HA zone offset must be in the range %1..%2 inclusive. %3 is out of range. QtXmlPatternsUn atribut %1 ha de tenir com a valor vlid %2, cosa que %3 no s.>An %1-attribute must have a valid %2 as value, which %3 isn't. QtXmlPatterns^Ja s'ha declarat un atribut %1 amb un valor %2.8An %1-attribute with value %2 has already been declared. QtXmlPatternsUn argument amb el nom %1 ja ha estat declarat. Tots els noms d'arguments han de ser nics.UAn argument by name %1 has already been declared. Every argument name must be unique. QtXmlPatternspJa ha aparegut un atribut am el nom%1 en aquest element.=An attribute by name %1 has already appeared on this element. QtXmlPatternsRJa s'ha declarat un atribut am el nom %1.1An attribute by name %1 has already been created. QtXmlPatternsUn node atribut no pot ser un fill d'un node document. Per tant, l'atribut %1 est fora de lloc.dAn attribute node cannot be a child of a document node. Therefore, the attribute %1 is out of place. QtXmlPatterns^Com a mnim un dels elements ha de ser present.'At least one component must be present. QtXmlPatternsCom a mnim un component de l'hora ha d'aparixer desprs del delimitador %1.?At least one time component must appear after the %1-delimiter. QtXmlPatternsNo es pot llistar l'atribut %1 perqu sembla que es troba a dalt de tot.EAttribute %1 can't be serialized because it appears at the top level. QtXmlPatternsNo s possible l'emissi a %1 perqu s un tipus abstract, i no podr ser mai instanciat.fCasting to %1 is not possible because it is an abstract type, and can therefore never be instantiated. QtXmlPatternsHEl dia %1 no s vlid per al mes %2.Day %1 is invalid for month %2. QtXmlPatternsPEl dia %1 es troba fora del rang %2..%3.#Day %1 is outside the range %2..%3. QtXmlPatternsNo est perms dividir un valor del tipus %1 per un del tipus %2 (no s un nmero).@Dividing a value of type %1 by %2 (not-a-number) is not allowed. QtXmlPatternsNo est permesa la divisi d'un valor del tipus %1 per un del tipus %2 o %3 (per sobre o sota de cero).LDividing a value of type %1 by %2 or %3 (plus or minus zero) is not allowed. QtXmlPatterns^La divisi (%1) per cero (%2) no est definida.(Division (%1) by zero (%2) is undefined. QtXmlPatternsUn valor boole efectiu no pot calcular-se per a una seqncia contenint dos o ms valors atmics.aEffective Boolean Value cannot be calculated for a sequence containing two or more atomic values. QtXmlPatternsNo es pot llistar l'element %1 perqu sembla que es troba fora l'element document.OElement %1 can't be serialized because it appears outside the document element. QtXmlPatternsrS'ha produt una fallada quan s'emetia des de %1 a %2: %3&Failure when casting from %1 to %2: %3 QtXmlPatternsSi els dos valors tenen retards de zona, han de tenir el mateix retard de zona. %1 i %2 no tenen el mateix.bIf both values have zone offsets, they must have the same zone offset. %1 and %2 are not the same. QtXmlPatterns,Si el primer argument s una seqncia buida o una cadena de mida cero (sense espais), no es pot especificar un prefix. S'ha especificat el prefix %1.If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified. QtXmlPatternsA la cadena de reempla, %1 noms pot fer-se servir per omissi o %2, no per %3MIn the replacement string, %1 can only be used to escape itself or %2, not %3 QtXmlPatternsA la cadena de reempla, %1 ha d'estar seguit per almenys un dgit quan no s'ometi.VIn the replacement string, %1 must be followed by at least one digit when not escaped. QtXmlPatternslLa divisi entera (%1) per cero (%2) no est definida.0Integer division (%1) by zero (%2) is undefined. QtXmlPatternsRNo s possible la vinculaci al prefix %1+It is not possible to bind to the prefix %1 QtXmlPatternsJNo s possible emitir des de %1 a %2.)It is not possible to cast from %1 to %2. QtXmlPatternsRNo es pot tornar a declarar el prefix %1.*It is not possible to redeclare prefix %1. QtXmlPatterns8No ser possible obtenir %1.'It will not be possible to retrieve %1. QtXmlPatternsNo s possible afegir atributs desprs de qualsevol tipus de node.AIt's not possible to add attributes after any other kind of node. QtXmlPatternsfNo s possible emitir el valor %1 del tipus %2 a %37It's not possible to cast the value %1 of type %2 to %3 QtXmlPatterns6Coincideixen les majsculesMatches are case insensitive QtXmlPatternsLa importaci de mduls ha d'ocrrer abans de la funci, variable i declaracions d'opci.MModule imports must occur before function, variable, and option declarations. QtXmlPatternsnLa divisi modular (%1) per cero (%2) no est definida.0Modulus division (%1) by zero (%2) is undefined. QtXmlPatternsPEl mes %1 es troba fora del rang %2..%3.%Month %1 is outside the range %2..%3. QtXmlPatternsNo est permesa la multiplicaci d'un valor del tipus %1 per un del tipus %2 o %3 (ms o menys infinit).YMultiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed. QtXmlPatternsEl nomespai %1 nom pot vincular-se a %2 (i est, en qualsevol cas, predeclarat).ONamespace %1 can only be bound to %2 (and it is, in either case, pre-declared). QtXmlPatternsUna declaraci nomespai ha d'ocrrer abans de la funci, variable i declaracions d'opci.UNamespace declarations must occur before function, variable, and option declarations. QtXmlPatterns\S'ha excedit el temps d'espera de la connexi.Network timeout. QtXmlPatternsxNo hi ha possibilitat d'emissi amb %1 com a tipus objectiu.2No casting is possible with %1 as the target type. QtXmlPatternsZNo es poden fer comparacions amb el tipus %1.1No comparisons can be done involving the type %1. QtXmlPatterns8No estan suportades funcions externes. Totes les funcions suportades es poden utilitzar direcctament, sense haver-les de declarar primerament com a externes{No external functions are supported. All supported functions can be used directly, without first declaring them as external QtXmlPatternsZNo hi ha cap funci disponible amb el nom %1.$No function by name %1 is available. QtXmlPatternsbNo hi ha cap funci disponible am la signatura %1*No function with signature %1 is available QtXmlPatternsVNo existeix cap vinculaci per al prefix %1-No namespace binding exists for the prefix %1 QtXmlPatterns`No existeix cap vinculaci per al prefix %1 a %23No namespace binding exists for the prefix %1 in %2 QtXmlPatternslSense operants en una divis d'enters, %1, pot ser %2.1No operand in an integer division, %1, can be %2. QtXmlPatternsNo hi ha cap valor disponible per a la variable externa amb el nom %1.;No value is available for the external variable by name %1. QtXmlPatternsLNo existeix cap variable amb el nom %1No variable by name %1 exists QtXmlPatternsCap de les expressions pragma no est suportada. A ms, una expressi fallback ha d'estar present^None of the pragma expressions are supported. Therefore, a fallback expression must be present QtXmlPatterns~Noms una declaraci %1 pot aparixer en el prleg de consulta.6Only one %1 declaration can occur in the query prolog. QtXmlPatternsNoms est suportat l'Unicode Codepoint Collation (%1). %2 no est suportat.IOnly the Unicode Codepoint Collation is supported(%1). %2 is unsupported. QtXmlPatternsNoms el prefix %1 pot ser declarat per enllaar el nomespai %2. Per defecte, ja est enllaat al prefix %1.nOnly the prefix %1 can be declared to bind the namespace %2. By default, it is already bound to the prefix %1. QtXmlPatternsL'operador %1 no pot fer-se servir en valors atmics del tipus %2 i %3.>Operator %1 cannot be used on atomic values of type %2 and %3. QtXmlPatternsdL'operador %1 no pot fer-se servir en el tipus %2.&Operator %1 cannot be used on type %2. QtXmlPatternsL'operador %1 no est disponible per a valors atmics del tipus %2 i %3.EOperator %1 is not available between atomic values of type %2 and %3. QtXmlPatterns^Desbordament: no es pot representar la data %1."Overflow: Can't represent date %1. QtXmlPatternsXDesbordament: no es pot representar la data.$Overflow: Date can't be represented. QtXmlPatternsEl prefix %1 nom pot vincular-se a %2 (i est, en qualsevol cas, predeclarat).LPrefix %1 can only be bound to %2 (and it is, in either case, pre-declared). QtXmlPatternsPEl prefix %1 ja est declarat al prleg.,Prefix %1 is already declared in the prolog. QtXmlPatternsxSi es promou %1 a %2 es pot produir una prdua de precissi./Promoting %1 to %2 may cause loss of precision. QtXmlPatternsrEs requereix un cardinal %1; es va enviar el cardinal %2./Required cardinality is %1; got cardinality %2. QtXmlPatternsZEl tipus requerit s %1, per s'ha trobat %2.&Required type is %1, but %2 was found. QtXmlPatternsDL'eix %1 no est suportat a XQuery$The %1-axis is unsupported in XQuery QtXmlPatternsNo est suportada la caracterstica d'importaci d'esquema, i per tant les delcaracions %1 no ocorreran.WThe Schema Import feature is not supported, and therefore %1 declarations cannot occur. QtXmlPatternsLa Caracterstica de validaci esquemtica no est suportada. Per tant, les expressions %1 no es poden utilitzar.VThe Schema Validation Feature is not supported. Hence, %1-expressions may not be used. QtXmlPatternsLes dades d'una instrucci de processat no poden contenir la cadena %1AThe data of a processing instruction cannot contain the string %1 QtXmlPatternsTNo est definida la collecci per defecte#The default collection is undefined QtXmlPatternsLa codificaci %1 no s vlida. Noms ha de contenir carcters llatins, no pot contenir espais i ha de coincidir amb l'expressi regular %2.The encoding %1 is invalid. It must contain Latin characters only, must not contain whitespace, and must match the regular expression %2. QtXmlPatternshEl primer argument per a %1 no pot ser del tipus %2..The first argument to %1 cannot be of type %2. QtXmlPatternsEl primer argument per a %1 no pot ser del tipus %2. Ha de ser un tipus numric, xs:anymesdurada o xs:diahoradurada.uThe first argument to %1 cannot be of type %2. It must be a numeric type, xs:yearMonthDuration or xs:dayTimeDuration. QtXmlPatternsEl primer argument per a %1 no pot ser del tipus %2. Ha de ser del tipus %3, %4 o %5.PThe first argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. QtXmlPatternsEl primer operant en una divisi d'enters, %1, no pot ser infinit (%2).FThe first operand in an integer division, %1, cannot be infinity (%2). QtXmlPatterns2El focus no est definit.The focus is undefined. QtXmlPatternspLa inicialitzaci de la variable %1 depn d'ella mateixa3The initialization of variable %1 depends on itself QtXmlPatternsbL'tem %1 no coincideix amb el tipus requerit %2./The item %1 did not match the required type %2. QtXmlPatternsL'ltim pas a un cam ha de contenir nodes o valors atmics. No pot ser una barreja dels dos.kThe last step in a path must contain either nodes or atomic values. It cannot be a mixture between the two. QtXmlPatternsRLa importaci de mduls no est suportada*The module import feature is not supported QtXmlPatterns^El nom %1 no es refereix a cap tipus d'esquema..The name %1 does not refer to any schema type. QtXmlPatternsEl nom per a un valor computat no pot tenir una URI %1 amb un nom local %2.ZThe name for a computed attribute cannot have the namespace URI %1 with the local name %2. QtXmlPatterns El nom d'una variable lligada a una expressi for ha de ser diferent d'una variableposicional. Per tant, les dues variables anomnades %1 xoquen.The name of a variable bound in a for-expression must be different from the positional variable. Hence, the two variables named %1 collide. QtXmlPatternstEl nom d'una expressi extensi ha d'estar en un nomespai.;The name of an extension expression must be in a namespace. QtXmlPatternsEl nom d'una opci ha de tenir un prefix. No hi ha nomespai per defecte per a opcions.TThe name of an option must have a prefix. There is no default namespace for options. QtXmlPatternsREl nomespai %1 est reservat; a ms, les funcions definides per l'usuari no haurien de fer-lo servir. Proveu el prefix predefinit %2 que existeix per a casos com aquest.The namespace %1 is reserved; therefore user defined functions may not use it. Try the predefined prefix %2, which exists for these cases. QtXmlPatternsEl nomespai URI no pot ser una cadena buida quan estigui vinculat a un prefix, %1.JThe namespace URI cannot be the empty string when binding to a prefix, %1. QtXmlPatternslL'URI del nom per a un atribut computat no pot ser %1.DThe namespace URI in the name for a computed attribute cannot be %1. QtXmlPatternsEl nomespai URI ha de ser una constant i no pot fer servir expressions tancades.IThe namespace URI must be a constant and cannot use enclosed expressions. QtXmlPatternsEl nomespai per a una funci definida per l'usuari no pot estar buit (proveu amb el prefix predefinit %1 que existeix per a casos com aquest)yThe namespace for a user defined function cannot be empty (try the predefined prefix %1 which exists for cases like this) QtXmlPatternsHEl nomespai d'una funci definida per l'usuari en un mdul de biblioteca ha de ser equivalent al mdul namespace. En altres paraules, hauria de ser %1 en lloc de %2The namespace of a user defined function in a library module must be equivalent to the module namespace. In other words, it should be %1 instead of %2 QtXmlPatterns*No est suportat el formulari de normalitzaci %1. Els formularis suportats sn %2, %3, %4 i %5, i buit, i.e. una cadena buida (sense normalitzaci).The normalization form %1 is unsupported. The supported forms are %2, %3, %4, and %5, and none, i.e. the empty string (no normalization). QtXmlPatternsEl node root del segon argument de la funci %1 ha de ser un node document. %2 no s un node document.gThe root node of the second argument to function %1 must be a document node. %2 is not a document node. QtXmlPatternsEl segon argument per a %1 no pot ser del tipus %2. Ha de ser del tipus %3, %4 o %5.QThe second argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. QtXmlPatternstEl segon operant en una divisi, %1, no pot ser cero (%2).:The second operand in a division, %1, cannot be zero (%2). QtXmlPatternsEl nom objectiu en una instraci de processat no pot ser %1 en cap combinaci en majscules o minscules. Per tant, no s vlid %2.~The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, is %2 invalid. QtXmlPatternsZEl nomespai objectiu d'un %1 no pot ser buit.-The target namespace of a %1 cannot be empty. QtXmlPatterns<No es fa servir la variable %1The variable %1 is unused QtXmlPatterns<Temps %1:%2.%3.%4 no s vlid.Time %1:%2:%3.%4 is invalid. QtXmlPatternsTemps 24:%1:%2.%3 no s vlid. L''hora s 24, per els minuts, segons i milisegons no sn tots 0; _Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0;  QtXmlPatternsxDos atributs de declaraci nomespai tenen el mateix nom: %1.@BjHC:`F0iεFn4Fn4GQH/eHw9HHw9I'I;I_IJ+JJ+:J6KDJ6cJ6J6J6dJ6gUJ6~J6J6 J6J6JcbJKL !]LZ!L2lLdLb9M5&Mb'M M~N]NB*O|cLPFEMPFEePFEĒQ )QRR|΃R̼URS=S8^THT5Tʴ/nTESU?^U|U}V1V1|Vl=oVV7V8-V/VE8W\WvWTqWTڋWT9X~.sX9:zX!X˙X:Y`YfY=Y[Z+=Zg>ZZ [;^[={[f3BK\\]4\]4L\\\\Datڠgc׶lGanrUNt>y/|^|Ac%_vvRԱ'm1f%4)CF*MdJW^OPe4L5 ]..(6C2dIAF-ȾA[WCg)I3 ,ÉyXtDD(%5kEFRnɵngɵn<ɵnDPɵn[DɵnJɵnɵn2ɵn]uVX( B<T5*xP'=9nnM1lN(8a,Dq.pT۔ >ĿH_4sBy8,*A<p:5#Qp%UT(Ŏm)9*4-ctd-ctp.2ï3"J[urFt.C0 T߮<SIQW  ~W Yd $qs!g)v"la%%%&Xd)[-&/=NC)/XtZ1$25~!H< J<3=So>?2!?Nń@EC@VJB! FRRNkyUiW~']D`j@`jtlgSlyzK>l} oivty".hN$<1l%"١::6 [{9vz.4DV)G }6S6c6S^% JRtRTR=|R~.sk< K@E E {w=Q8A8τgN%Hn{A#ۓr1JY[yLQtqTnUSGj_ 88mdqMcDM›EE+#nwGw v6e2;^} I҂ Aڎmn N 4<F^U !eo&)D*/eD*++N^,N\6u:ϭ;S?4\ByEcFFBIQ~K~TNjOZfv[ \S~d\cMr\)`b{b b@b-gcփ2fOg&4jC2mneqW/qtuL1u(({>!}kaPz}.R> l~1"A_yYB Tz>K$$$Ώɟ3k+";(E?u3,.*ʁ`r^K1 L6֊cv]*>Suހ.G n^,?.ߵhQ &fqjF;yω"faO2-I*2T>^#AW5Cn n7^0N*H$=&H?&m,n ,}.v/>0Ib4r4!$5)5>Q8f8w?4 BMRCIxS`JKLLOR.R>UXmXE%YM 'YM+^DdKf_h^PbiUtnfnϟn]rG*ssc}ssw * x&/^25 '"%NV6ۊcat;T] ]&~m I7xIHIIIIzIQCIRIx( ZQI-Y.i.Oy.,--W-,_,I0/ /G//.uD$uD0BDoYo,2:,S,<, ,Sj,v ]?>6 ]r7N`V.hW_@>Yq.ɘe" ˓B5$>i 45N8әfR< fR G>/M* 0L<mU::_k9GN#N&k Q~'cS0S$Pq'{V?fR|ET2)SSb < Q L_^HW@T(OFl;bbg4 l+"o$G$ %CP&~&)2L))+ʹ,E/`j535158181;_?"]?>uG?%MAqFumKNrrK-M8N>pO>R|U5V|];]CXe`g^7bk8Zy^M6{yʸw?JiC5t:>F ::XΞ8 ;HG%Qn1nnǥ<+=*+RBD`nt59{ym~m;/ xArU9\,@As`P1ϾY6NS%`7hu:{DBC-BdE56UüNZ2C^0ƨ3 ƨTo˾Cҝz;ل)AiY\է?S؊=̯؊=Z>i}Eziܓ7ܳwIߺZftZ롥``+!'=~UaNwm^!DD"  ( UeG$a~b V~bo=9^hMKt `6!A%?B~'(yh)ўI+u-+3T,8X/"/і/1a4~+6 <8<i? 2A B>N#DElFgFGQGvGbHULAUrM~OrIPѧ*Q.RC(SnTUUHhU+UT:XYĻZ|Z]ZZZ[/[]k* ]'^n_PG_pܙ`u^d`3d`iem?$oNx2y;\{{R }u7}w }wH}w} Kfhsvp~Mz~L~B~Ql.yqIr'/up~Kz~K~`~oBv*tDtYd%W. .I3P&iU}>hE tu2k+57DYU^pttWt,+tDo(-n6 lI_ 7&\aȄF`'Cʢkʢ9ʬWƴdld`d]dYd59@эiVp+71NS:>T1H:kGyWUdT|e<BYhwN0 2|,%9N;^#?(^ A5 z!'M+3 /2Z3/425@5 6&F7D89 ::%T?;dCU]CUADE[<Gn]IN0J0JڭK>Q~U|V7WCXw)\D\D]]/t are n g*.bgldn8dYnWNp&qt>wF y'z5]|ٖ}wZ5}$ L}$H}$d~9a4DϗlшZ~VND5L>z{n9W2N&}q.giln-nK<|E.ͮY^·d·y·pýO׳:N^:nvT~ (nA/.fC9u!n<-nmet>Ugf@e73E~_ȥNv>[U!ONu7%5\TK6 e~i~5WW*_DMbi9%Nb!T#l%K%d!"'J-.).5kE=gT==r?U%?Zm@Ji@T CtIEfjmNP4PQsAAV%'V%)XU  Z`yawLbD@qbGLffd%fgAEhIni$fknlIsfRwx1 z*2||QRdJbUch(.Ozc.3{4C5e^Q*)P L^XX^menG: bFӿ†57iCq~U'2ʴ5cʴ5>ʶf"5D^ 9ӞJ=g}Ԅ۔#~D6'NdXA/F5MF5eIY'p7+>#4Nu3&DI:I 7As7 l9 }$b qe*! ڤ~ ڥ dO E^i E 5g Ac? Ac K~ n * 35 6@  WMNI `B b bbxJ b` r b`_ de gUW i3T kkK la{V lf lo ok= qv qvf qzDm tNV u xqh |o ~/ |  nQ?    J  _a t?i t ^y .F  . t  p )~7 F>  U  le X4  N  BWm ҉$ 4 + > ; Ug k   E _E nX C N = A 9>j VX $T  u" Y+ Y> 0W KK zE @M 쉥4 팤 E l~6S %'x MN 3? 0? P / C+ =׊ q  DG B } 9 o% Ądz  l  + $ )П ) ) */ .>Y_ 5} 74 7u ;O $ l@ p_ z" ˔ }pG PW P " -. ~tI .F 68 >> n% v" :a f 6^ f  b3 4@N n .g  ' s9^ sq ~ AA& 9 1 9c 051 r F  m,B 5 ݡ% !4 #-t ' l 0N] 5H 5\ AU CU E9? G] I> LWl L Mc\Z Oi# P..q Rƒ SBO VG> Wa Z5 \Ot0 ]$i `A c f)6 f) f=ַ io> j!9 l#;> luB m`O n|n w?0 xRW yrx {nS }QG. ~Lw > 4 7 H4 H& [N  n? С$ $ .@C` 0 F i <O ?  K S v<  $y % J9 J   o t. ks ӇKt  M IK N>M / ̺ &:/ [ N -D .Q x ۷6 r k % k 9Y U)1T T>55 <Nc fR  q8 06j ̟ G $r<(  ~?  $1  /  I )Y 9Nom % e N0 n%| 6 A> Lʇ s"  xH6b Z I "X  !p{ $ %6bT )Ε .a@ 2 7Fͫ =ю >'; >(o >*| >5 >I$ >Rn >Z > >m >pE ?t| A^ B~ DT1\ FnP G& I`k J>1 Lk Mb>Q P@ QT& RV RV RnF S.R SG S7 T~f Yù Yg [| \W eN+ hۮ! j7o m(_ pa sL u%K ve  BE! Ц Th T\ T T  Fo k&  A"  K /.A+ w ,& ,. S( )dP TX R^V { .h .= .] . .J . ./ ~ P1 >ɸ 'e . ay P yN  r e.;4 x. Cp 'x N  # hN' ɾd# ɾd& eP ̈́^tO >V ҂ۂ Ӵ ء ߢ.] t >b %s u t g / | # b! GI Xt n- t  aX 7 .( " :b1 UqB ; _ ʜ_ f fg f $ >&D   , $m #|   #$Po #= %n '.k (I$IM (N +>b +k" 0Ed 64 ;ɾup Cn?[ Fg K9 LcQ Pte PtZ R"y S,@ T>\ ^Ue `K c dB fe fe g { gv hQ$-0 iFC"b i i" jN j jӮӸ kGnC l"r m9  n s'~E u7 u; uX` v  v& v{  w wH w w}  w}HS w} yn |[@ 5  uE  + <; J8R bٵ  | ^{ %& L n $# }P S R~ %7n 2 xN "9 UVD ɰeԖ F 0 X< bh Y ] & x]B D>  [ + t t5e t5" =c  ?\ >  fY  )1 0 O$tRk;'9wb>Yl @aTZ'8+" 6z<zngTZpSvpS! e4!a&-*W*G+/EY /E4Qt#J7S!IESI.fI_2uKgNVOOW S5bXRu}DXZo[ \[ ƞa.a.a% gcJi"nyGsWv6|=v<{vɅDUy$y?.H~4%)>Ce&!=j4M}NNN34^\':,4y~zSH#N4}^5g:.Z5D]BVR~  5ML3Ӯ`oӮ``Ӯ`l֒щ rTݖmU1Q[y_4^rFjej G ' . 8 pGlDn^ݟ"#O$UB%4%4'x[*^*],-g-vy0i)203@1c2wT2 DPF74ZGeHB#Jd3JgKO L$.TW[{(\c5 c5cdg3iCeiT%lpqiiev)ŠyCQ{`k{~a06$@Y5/V&&Dy$tL{f;`nY%FN[>#)nͣ8ޖ8(tZN E"~gdLJrYrs-1lky!֠&U}"'T-44LnL >Ρ3BGPȃo`t2]ZdUtih7ZavYt kartu Close Tab CloseButton"Napodoben chyba! Fake error ! FakeReplyNepltn URL Invalid URL FakeReplyO %1About %1MAC_APPLICATION_MENUSkrt %1Hide %1MAC_APPLICATION_MENUSkrt ostatn Hide OthersMAC_APPLICATION_MENUNastaven...Preferences...MAC_APPLICATION_MENUUkon it %1Quit %1MAC_APPLICATION_MENU Slu~byServicesMAC_APPLICATION_MENUUkzat vaeShow AllMAC_APPLICATION_MENUDostupnost AccessibilityPhonon::Spojen CommunicationPhonon::HryGamesPhonon:: HudbaMusicPhonon::Oznmen NotificationsPhonon:: VideoVideoPhonon::<html>PYepn se na zvukov pYehrvac zaYzen <b>%1</b><br/>, kter m vta pYednost, nebo bylo zvlat nastaveno pro tento proud.</html>Switching to the audio playback device %1
which has higher preference or is specifically configured for this stream.Phonon::AudioOutput<html>ZaYzen pro pYehrvn zvuku <b>%1</b> bylo spuatno,<br/>proto~e je prv dostupn a m vta pYednost.</html>xSwitching to the audio playback device %1
which just became available and has higher preference.Phonon::AudioOutput<html>ZaYzen pro pYehrvn zvuku <b>%1</b> nepracuje.<br/>Msto nj <b>%2</b> se pou~v.</html>^The audio playback device %1 does not work.
Falling back to %2.Phonon::AudioOutput<PYepnout zpt na zaYzen '%1'Revert back to device '%1'Phonon::AudioOutputUpozornn: Zd se, ~e zkldn pYdavn moduly pro GStreamer nejsou nainstalovny. Podpora audia a videa byla vypnuta~Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabledPhonon::Gstreamer::BackendVarovn: Bal ek gstreamer0.10-plugins-good nen nainstalovn. Nkter vlastnosti videa nejsou dostupn.Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled.Phonon::Gstreamer::BackendVaechny vy~adovan kodeky nejsou nainstalovny. Kvoli pYehrn tohoto obsahu je potYeba nainstalovat nsledujc kodek(y): %0`A required codec is missing. You need to install the following codec(s) to play this content: %0Phonon::Gstreamer::MediaObjectPYehrvn nelze spustit. OvYte, prosm, instalaci Gstreamer a ujistte se, ~e je nainstalovn bal ek libgstreamer-plugins-base.wCannot start playback. Check your GStreamer installation and make sure you have libgstreamer-plugins-base installed.Phonon::Gstreamer::MediaObjectLZdroj s mdii se nepodaYilo rozluatit.Could not decode media source.Phonon::Gstreamer::MediaObjectFZdroj s mdii se nepodaYilo nalzt.Could not locate media source.Phonon::Gstreamer::MediaObject~Zvukov zaYzen se nepodaYilo otevYt, proto~e se ji~ pou~v.:Could not open audio device. The device is already in use.Phonon::Gstreamer::MediaObjectHZdroj s mdii se nepodaYilo otevYt.Could not open media source.Phonon::Gstreamer::MediaObject8Neplatn typ zdroje s mdii.Invalid source type.Phonon::Gstreamer::MediaObject`Chyb skriptov pomocnk pro npovdu ke kodeku.&Missing codec helper script assistant.Phonon::Gstreamer::MediaObjectzInstalace pYdavnho modulu kodeku se nezdaYila pro kodek: %0.Plugin codec installation failed for codec: %0Phonon::Gstreamer::MediaObjectPYstup odepYen Access denied Phonon::MMFJi~ existujeAlready exists Phonon::MMFVstup zvuku Audio Output Phonon::MMFdZvukov nebo obrazov slo~ky se nepodaYilo pYehrt-Audio or video components could not be played Phonon::MMF.Chyba pYi vstupu zvukuAudio output error Phonon::MMFHNepodaYilo se vytvoYit ~dn spojenCould not connect Phonon::MMFChyba DRM DRM error Phonon::MMF Chyba v dekodru Decoder error Phonon::MMFOdpojeno Disconnected Phonon::MMFJi~ se pou~vIn use Phonon::MMF0Nedostate n aYka psmaInsufficient bandwidth Phonon::MMFNepltn URL Invalid URL Phonon::MMF"Neplatn protokolInvalid protocol Phonon::MMFBChyba ve vcepo tn (multicast)Multicast error Phonon::MMF4Chyba pYi spojen pYes seNetwork communication error Phonon::MMF"Se nen dostupnNetwork unavailable Phonon::MMF}dn chybaNo error Phonon::MMFNenalezeno Not found Phonon::MMFNepYipraven Not ready Phonon::MMFNepodporovno Not supported Phonon::MMF>Nen dostupn ~dn dala pame Out of memory Phonon::MMFPYete enOverflow Phonon::MMF Cesta nenalezenaPath not found Phonon::MMFPYstup odepYenPermission denied Phonon::MMFjChyba pYi spojen u zprostYedkujcho serveru (proxy)Proxy server error Phonon::MMFFZprostYedkujc server nepodporovnProxy server not supported Phonon::MMF0Stav pohotovosti serveru Server alert Phonon::MMF,Proudn nepodporovnoStreaming not supported Phonon::MMF2ZaYzen pro vstup zvukuThe audio output device Phonon::MMFPodte en Underflow Phonon::MMF$Neznm chyba (%1)Unknown error (%1) Phonon::MMF0Chyba pYi vstupu obrazuVideo output error Phonon::MMF&Chyba pYi stahovnDownload error Phonon::MMF::AbstractMediaPlayer8Adresu se nepodaYilo otevYtError opening URL Phonon::MMF::AbstractMediaPlayer8Soubor se nepodaYilo otevYtError opening file Phonon::MMF::AbstractMediaPlayer@NepodaYilo se otevYt prostYedkyError opening resource Phonon::MMF::AbstractMediaPlayerhZdroj se nepodaYilo otevYt: prostYedek nen otevYen)Error opening source: resource not opened Phonon::MMF::AbstractMediaPlayer6Ukzku se nepodaYilo nahrtLoading clip failed Phonon::MMF::AbstractMediaPlayer0NepYipraven k pYehrvnNot ready to play Phonon::MMF::AbstractMediaPlayer(PYehrvn dokon enoPlayback complete Phonon::MMF::AbstractMediaPlayer@Hlasitost se nepodaYilo nastavitSetting volume failed Phonon::MMF::AbstractMediaPlayer4Polohu se nepodaYilo ur itGetting position failed Phonon::MMF::AbstractVideoPlayer8Ukzku se nepodaYilo otevYtOpening clip failed Phonon::MMF::AbstractVideoPlayerBPozastaven se nepodaYilo provst Pause failed Phonon::MMF::AbstractVideoPlayer:Hledn se nepodaYilo provst Seek failed Phonon::MMF::AbstractVideoPlayer %1 Hz%1 HzPhonon::MMF::AudioEqualizer4Polohu se nepodaYilo ur itGetting position failedPhonon::MMF::AudioPlayer2Chyba pYi zobrazen videaVideo display errorPhonon::MMF::DsaVideoPlayerPovolenoEnabledPhonon::MMF::EffectFactoryJPomr dozvuku u vysokch kmito to (%)Decay HF ratio (%) Phonon::MMF::EnvironmentalReverb  as dozvuku (ms)Decay time (ms) Phonon::MMF::EnvironmentalReverbHustota (%) Density (%) Phonon::MMF::EnvironmentalReverbRozptyl (%) Diffusion (%) Phonon::MMF::EnvironmentalReverb(Zpo~dn odrazu (ms)Reflections delay (ms) Phonon::MMF::EnvironmentalReverb Sla odrazu (mB)Reflections level (mB) Phonon::MMF::EnvironmentalReverb(Zpo~dn ozvny (ms)Reverb delay (ms) Phonon::MMF::EnvironmentalReverb Sla ozvny (mB)Reverb level (mB) Phonon::MMF::EnvironmentalReverbHHladina vysokho kmito tu v prostoru Room HF level Phonon::MMF::EnvironmentalReverb*Hladina prostoru (mB)Room level (mB) Phonon::MMF::EnvironmentalReverbtZdroj se nepodaYilo otevYt: nepodaYilo se ur it typ mdia8Error opening source: media type could not be determinedPhonon::MMF::MediaObjectnZdroj se nepodaYilo otevYt: prostYedek je zkomprimovn,Error opening source: resource is compressedPhonon::MMF::MediaObjectfZdroj se nepodaYilo otevYt: prostYedek nen platn(Error opening source: resource not validPhonon::MMF::MediaObjectlZdroj se nepodaYilo otevYt: tento typ nen podporovn(Error opening source: type not supportedPhonon::MMF::MediaObjectSla (%) Level (%)Phonon::MMF::StereoWidening2Chyba pYi zobrazen videaVideo display errorPhonon::MMF::SurfaceVideoPlayerZtlumenoMutedPhonon::VolumeSliderPosuvnk se pou~v k nastaven hlasitosti. Poloha nejvce vlevo odpovd 0%; poloha nejvce vpravo odpovd %1%WUse this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1%Phonon::VolumeSliderHlasitost: %1% Volume: %1%Phonon::VolumeSlider.%1, %2 nejsou stanoveny%1, %2 not definedQ3AccelNNejednozna n %1 nemohou bt zpracovnyAmbiguous %1 not handledQ3Accel SmazatDelete Q3DataTableNepravdivFalse Q3DataTable Vlo~itInsert Q3DataTablePravdivTrue Q3DataTableObnovitUpdate Q3DataTablez%1 Soubor se nepodaYilo nalzt. OvYte cestu a nzev souboru.+%1 File not found. Check path and filename. Q3FileDialog&Smazat&Delete Q3FileDialog&Ne&No Q3FileDialog&OK&OK Q3FileDialog&OtevYt&Open Q3FileDialog&PYejmenovat&Rename Q3FileDialog&Ulo~it&Save Q3FileDialog&NeroztYdn &Unsorted Q3FileDialog&Ano&Yes Q3FileDialogb<qt>Jste si jist, ~e chcete smazat %1 "%2"?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialog&Vaechny soubory (*) All Files (*) Q3FileDialog*Vaechny soubory (*.*)All Files (*.*) Q3FileDialogVlastnosti Attributes Q3FileDialogZptBack Q3FileDialog ZruaitCancel Q3FileDialog<Soubor koprovat nebo posunoutCopy or Move a File Q3FileDialog*VytvoYit novou slo~kuCreate New Folder Q3FileDialog DatumDate Q3FileDialogSmazat %1 Delete %1 Q3FileDialogPodrobn pohled Detail View Q3FileDialogAdresYDir Q3FileDialogAdresYe Directories Q3FileDialogAdresY: Directory: Q3FileDialog ChybaError Q3FileDialog SouborFile Q3FileDialogNzev &souboru: File &name: Q3FileDialogTyp &souboru: File &type: Q3FileDialogNajt adresYFind Directory Q3FileDialogNepYstupn Inaccessible Q3FileDialog$Pohled se seznamem List View Q3FileDialogHle&dat v: Look &in: Q3FileDialog NzevName Q3FileDialogNov slo~ka New Folder Q3FileDialogNov slo~ka %1 New Folder %1 Q3FileDialogNov slo~ka 1 New Folder 1 Q3FileDialog,O jeden adresY nahoruOne directory up Q3FileDialogOtevYtOpen Q3FileDialogOtevYtOpen  Q3FileDialog*Nhled obsahu souboruPreview File Contents Q3FileDialog4Nhled informace o souboruPreview File Info Q3FileDialogNahrt &znovuR&eload Q3FileDialogPouze  st Read-only Q3FileDialog st/Zapisovat Read-write Q3FileDialog st: %1Read: %1 Q3FileDialogUlo~it jakoSave As Q3FileDialogVyberte adresYSelect a Directory Q3FileDialog,&Ukzat skryt souboryShow &hidden files Q3FileDialogVelikostSize Q3FileDialogRoztYditSort Q3FileDialog*RoztYdit podle &data Sort by &Date Q3FileDialog,RoztYdit podle &nzvu Sort by &Name Q3FileDialog4RoztYdit podle &velikosti Sort by &Size Q3FileDialog$Zvlatn vlastnostSpecial Q3FileDialog6Symbolick odkaz k adresYiSymlink to Directory Q3FileDialog4Symbolick odkaz k souboruSymlink to File Q3FileDialogJSymbolick odkaz k zvlatnmu souboruSymlink to Special Q3FileDialogTypType Q3FileDialogPouze zpis Write-only Q3FileDialogZapsat: %1 Write: %1 Q3FileDialogAdresY the directory Q3FileDialog Souborthe file Q3FileDialog Symbolick odkaz the symlink Q3FileDialogBNepodaYilo se vytvoYit adresY %1Could not create directory %1 Q3LocalFs2NepodaYilo se otevYt: %1Could not open %1 Q3LocalFs@NepodaYilo se pYe st adresY %1Could not read directory %1 Q3LocalFs\NepodaYilo se odstranit soubor nebo adresY %1%Could not remove file or directory %1 Q3LocalFsFNepodaYilo se pYejmenovat: %1 na %2Could not rename %1 to %2 Q3LocalFs0NepodaYilo se zapsat: %1Could not write %1 Q3LocalFsPYizposobit... Customize... Q3MainWindowUspoYdatLine up Q3MainWindowBOperace byla zastavena u~ivatelemOperation stopped by the userQ3NetworkProtocol ZruaitCancelQ3ProgressDialog Pou~tApply Q3TabDialog ZruaitCancel Q3TabDialogVchozDefaults Q3TabDialogNpovdaHelp Q3TabDialogOKOK Q3TabDialog&Koprovat&Copy Q3TextEdit&Vlo~it&Paste Q3TextEdit &Znovu&Redo Q3TextEdit &Zpt&Undo Q3TextEdit SmazatClear Q3TextEditVyj&moutCu&t Q3TextEditVybrat vae Select All Q3TextEdit ZavYtClose Q3TitleBarZavYe oknoCloses the window Q3TitleBar^Obsahuje pYkazy pro zachzen s velikost okna*Contains commands to manipulate the window Q3TitleBarrZobraz nzev okna a obsahuje pYkazy pro zachzen s nmFDisplays the name of the window and contains controls to manipulate it Q3TitleBar4D okno na celou obrazovkuMakes the window full screen Q3TitleBarZvtaitMaximize Q3TitleBarZmenaitMinimize Q3TitleBarZmena oknoMoves the window out of the way Q3TitleBarjD velikost zvtaenho okna zptky do obvyklho stavu&Puts a maximized window back to normal Q3TitleBarjD velikost zmenaenho okna zptky do obvyklho stavu&Puts a minimized window back to normal Q3TitleBarObnovit Restore down Q3TitleBarObnovit Restore up Q3TitleBar SystmSystem Q3TitleBarVce...More... Q3ToolBar(neznm) (unknown) Q3UrlOperatorProtokol `%1' nepodporuje koprovn  i pYesun souboro nebo adresYoIThe protocol `%1' does not support copying or moving files or directories Q3UrlOperatorfProtokol `%1' nepodporuje vytvYen novch adresYo;The protocol `%1' does not support creating new directories Q3UrlOperatorVProtokol `%1' nepodporuje nahrvn souboro0The protocol `%1' does not support getting files Q3UrlOperatorlProtokol `%1' nepodporuje sestavovn seznamu adresYo6The protocol `%1' does not support listing directories Q3UrlOperatorTProtokol `%1' nepodporuje ukldn souboro0The protocol `%1' does not support putting files Q3UrlOperatorxProtokol `%1' nepodporuje odstraHovn souboro nebo adresYo@The protocol `%1' does not support removing files or directories Q3UrlOperator|Protokol `%1' nepodporuje pYejmenovvn souboro nebo adresYo@The protocol `%1' does not support renaming files or directories Q3UrlOperator:Protokol `%1' nen podporovn"The protocol `%1' is not supported Q3UrlOperator&Zruait&CancelQ3WizardDo&kon it&FinishQ3Wizard&Npovda&HelpQ3Wizard&Dala >&Next >Q3Wizard< &Zpt< &BackQ3Wizard,Spojen bylo odmtnutoConnection refusedQAbstractSocketL asov limit pro spojen byl pYekro enConnection timed outQAbstractSocket6NepodaYilo se najt po ta Host not foundQAbstractSocket(Se nen dosa~itelnNetwork unreachableQAbstractSocket`Tato zsuvkov (socket) operace nen podporovna$Operation on socket is not supportedQAbstractSocket:Zsuvka (socket) nen spojenaSocket is not connectedQAbstractSockett asov limit pro zsuvkovou (socket) operaci byl pYekro enSocket operation timed outQAbstractSocket&Vybrat vae &Select AllQAbstractSpinBox&Krok nahoru&Step upQAbstractSpinBoxKrok &dolo Step &downQAbstractSpinBoxStisknoutPressQAccessibleButtonSpustitActivate QApplication6Spust hlavn okno programu#Activates the program's main window QApplicationjPou~it '%1' vy~aduje Qt %2; bylo ale nalezeno Qt %3.,Executable '%1' requires Qt %2, found Qt %3. QApplication$Qt nen slu itelnIncompatible Qt Library Error QApplicationLTRTranslate this string to the string 'LTR' in left-to-right languages or to 'RTL' in right-to-left languages (such as Hebrew and Arabic) to get proper widget layout.QT_LAYOUT_DIRECTION QApplication&Zruait&Cancel QAxSelectCOM-&Objekt: COM &Object: QAxSelectOKOK QAxSelect(Vybrat prvek ActiveXSelect ActiveX Control QAxSelectOzna it kY~kemCheck QCheckBoxPYepnoutToggle QCheckBox.Zruait ozna en kY~kemUncheck QCheckBoxL&PYidat k u~ivatelem stanovenm barvm&Add to Custom Colors QColorDialogZkladn &barvy &Basic colors QColorDialog6&U~ivatelem stanoven barvy&Custom colors QColorDialog&Zelen:&Green: QColorDialog& erven:&Red: QColorDialog&Sytost:&Sat: QColorDialog&Jasnost:&Val: QColorDialogA&lfa kanl:A&lpha channel: QColorDialog&Modr:Bl&ue: QColorDialog Barevn &odstn:Hu&e: QColorDialogVybrat barvu Select Color QColorDialog ZavYtClose QComboBoxNesprvnFalse QComboBoxOtevYtOpen QComboBoxPravdivTrue QComboBox %1: Ji~ existuje%1: already existsQCoreApplication%1: Neexistuje%1: does not existQCoreApplication<%1: Vyvoln ftok se nezdaYiloQSystemSemaphore%1: ftok failedQCoreApplicationF%1: Neplatn daj u kl e (przdn)QSystemSemaphore%1: key is emptyQCoreApplication@%1: Nejsou ji~ pou~iteln zdroje%1: out of resourcesQCoreApplication>%1: NepodaYilo se vytvoYit kl QSystemSemaphore%1: unable to make keyQCoreApplication(%1: Neznm chyba %2%1: unknown error %2QCoreApplicationTransakci se nepodaYilo provst (operace 'commit', odesln, se nezdaYila)Unable to commit transaction QDB2Driver:NepodaYilo se navzat spojenUnable to connect QDB2DriverTransakci se nepodaYilo zvrtit (operace 'rollback', zvrcen, se nezdaYila)Unable to rollback transaction QDB2DriverF'autocommit' se nepodaYilo nastavitUnable to set autocommit QDB2Driver>Promnnou se nepodaYilo provstUnable to bind variable QDB2Result8PYkaz se nepodaYilo provstUnable to execute statement QDB2ResultVPrvn datov zznam se nepodaYilo nathnoutUnable to fetch first QDB2ResultVDala datov zznam se nepodaYilo nathnoutUnable to fetch next QDB2ResultPDatov zznam %1 se nepodaYilo nathnoutUnable to fetch record %1 QDB2Result<PYkaz se nepodaYilo pYipravitUnable to prepare statement QDB2ResultAMAM QDateTimeEditPMPM QDateTimeEditamam QDateTimeEditpmpm QDateTimeEdit6Animace je abstraktn tYdaAnimation is an abstract classQDeclarativeAbstractAnimationfVlastnost '%1" neexistuje a nelze ji proto animovat)Cannot animate non-existent property "%1"QDeclarativeAbstractAnimationvVlastnost '%1" je pouze pro  ten a nelze ji proto animovat&Cannot animate read-only property "%1"QDeclarativeAbstractAnimation<Nelze nastavit dobu trvn < 0Cannot set a duration of < 0QDeclarativeAnchorAnimationKotva pro vchoz bod se nesm pou~vat spole n s dalami kotevnmi daji pro nahoYe, dole a umstno svisle do stYedu.SBaseline anchor cannot be used in conjunction with top, bottom, or vcenter anchors.QDeclarativeAnchorsTNelze ukotvit vodorovn okraj ke svislmu.3Cannot anchor a horizontal edge to a vertical edge.QDeclarativeAnchorsRNelze ukotvit svisl okraj k vodorovnmu.3Cannot anchor a vertical edge to a horizontal edge.QDeclarativeAnchorsJPrvek nemo~e mt kotvu k sob sammu.Cannot anchor item to self.QDeclarativeAnchorsBNelze dt kotvu k nulovmu prvku.Cannot anchor to a null item.QDeclarativeAnchorsClem kotvy mus bt rodi ovsk prvek nebo prvek na stejn rovni.8Cannot anchor to an item that isn't a parent or sibling.QDeclarativeAnchorsNelze zadat kotevn daje pro vlevo, vpravo a umstno vodorovn do stYedu. Nesm se vyskytovat spole n.0Cannot specify left, right, and hcenter anchors.QDeclarativeAnchorsNelze zadat kotevn daje pro nahoYe, dole a umstno svisle do stYedu. Nesm se vyskytovat spole n.0Cannot specify top, bottom, and vcenter anchors.QDeclarativeAnchorsPYi operaci 'centerIn' byla zjiatna pYpadn nekone n smy ka kotvy.*Possible anchor loop detected on centerIn.QDeclarativeAnchorsPYi operaci naplnn byla zjiatna pYpadn nekone n smy ka kotvy.&Possible anchor loop detected on fill.QDeclarativeAnchorsPYi vodorovn kotv byla zjiatna pYpadn nekone n smy ka kotvy.3Possible anchor loop detected on horizontal anchor.QDeclarativeAnchors~PYi svisl kotv byla zjiatna pYpadn nekone n smy ka kotvy.1Possible anchor loop detected on vertical anchor.QDeclarativeAnchorsPQt bylo sestaveno bez podpory pro QMovie'Qt was built without support for QMovieQDeclarativeAnimatedImage\Animaci patYc k prvku Behavior nelze zmnit.3Cannot change the animation assigned to a Behavior.QDeclarativeBehaviorU pro vlastnost "%1" zadan vazby byla zjiatna nekone n smy ka'Binding loop detected for property "%1"QDeclarativeBindingU pro vlastnost "%1" zadan vazby byla zjiatna nekone n smy ka'Binding loop detected for property "%1"QDeclarativeCompiledBindings2"%1" nelze pou~t na "%2""%1" cannot operate on "%2"QDeclarativeCompilerLVlastnost alias pYekra uje vazby alias#Alias property exceeds alias boundsQDeclarativeCompilerNa tomto mst nemohou bt pYipojen vlastnosti (typu 'attached') pou~vny'Attached properties cannot be used hereQDeclarativeCompilerbK seznamom lze pYiYadit pouze jednu jedinou vazbu$Can only assign one binding to listsQDeclarativeCompilerU vlastnosti, kter je  st seskupen, nen ~dn pYm pYiYazen hodnoty pYpustn4Cannot assign a value directly to a grouped propertyQDeclarativeCompiler|K signlu nelze pYiYadit hodnotu (o ekv se spuatn skriptu)@Cannot assign a value to a signal (expecting a script to be run)QDeclarativeCompilerrPYiYazen vce hodnot k vlastnosti skriptu nen pYpustn2Cannot assign multiple values to a script propertyQDeclarativeCompilernPYiYazen vce hodnot k jedn vlastnosti nen pYpustn4Cannot assign multiple values to a singular propertyQDeclarativeCompilerXPYiYazen pYedmtu k seznamom nen pYpustnCannot assign object to listQDeclarativeCompiler\PYiYazen pYedmtu k vlastnosti nen pYpustn Cannot assign object to propertyQDeclarativeCompilerPYiYazen jednoduch hodnoty (primitivy) k seznamom nen pYpustn!Cannot assign primitives to listsQDeclarativeCompilerNelze provst ~dn pYiYazen, neboe neexistuje vchoz vlastnost.Cannot assign to non-existent default propertyQDeclarativeCompilerNelze provst ~dn pYiYazen, neboe neexistuje vchoz vlastnost pojmenovan jako "%1"+Cannot assign to non-existent property "%1"QDeclarativeCompilerRNelze vytvoYit przdn vymezen sou stky+Cannot create empty component specificationQDeclarativeCompilerdNelze pYepsat vlastnost prohlaaovanou jako 'FINAL'Cannot override FINAL propertyQDeclarativeCompilerrPrvky sou stek nesm krom ID obsahovat dala vlastnosti;Component elements may not contain properties other than idQDeclarativeCompilerbPYedmty sou stek nemohou prohlsit nov funkce./Component objects cannot declare new functions.QDeclarativeCompilerjPYedmty sou stek nemohou prohlsit nov vlastnosti.0Component objects cannot declare new properties.QDeclarativeCompilerdPYedmty sou stek nemohou prohlsit nov signly.-Component objects cannot declare new signals.QDeclarativeCompiler4Zdvojen vchoz vlastnostDuplicate default propertyQDeclarativeCompiler*Zdvojen nzev metodyDuplicate method nameQDeclarativeCompiler2Zdvojen nzev vlastnostiDuplicate property nameQDeclarativeCompiler,Zdvojen nzev signluDuplicate signal nameQDeclarativeCompiler,PYkaz nelze vytvoYit.Element is not creatable.QDeclarativeCompiler8Przdn pYiYazen vlastnostiEmpty property assignmentQDeclarativeCompiler2Przdn pYiYazen signluEmpty signal assignmentQDeclarativeCompiler|Hodnota ID nedovolen zakrv celkovou vlastnost z JavaScriptu-ID illegally masks global JavaScript propertyQDeclarativeCompilerPHodnoty ID nesm za nat velkm psmenem)IDs cannot start with an uppercase letterQDeclarativeCompilerHodnoty ID mus obsahovat pouze psmena,  slice nebo znaky _podtr~tka7IDs must contain only letters, numbers, and underscoresQDeclarativeCompilerpHodnoty ID mus za nat psmenem nebo znakem _podtr~tka*IDs must start with a letter or underscoreQDeclarativeCompiler*Neplatn nzev metodyIllegal method nameQDeclarativeCompiler2Neplatn nzev vlastnostiIllegal property nameQDeclarativeCompiler,Neplatn nzev signluIllegal signal nameQDeclarativeCompilerHNesprvn vymezen pYiYazen signlu'Incorrectly specified signal assignmentQDeclarativeCompiler.Neplatn umstn aliasInvalid alias locationQDeclarativeCompiler6Neplatn odkazovn na vlastnost alias. Odkazovn na vlastnost alias mus bt ur eno jako <id>, <id>.<vlastnost> nebo <id>.<vlastnost hodnoty>.<vlastnost>zInvalid alias reference. An alias reference must be specified as , . or ..QDeclarativeCompilervNeplatn odkazovn na vlastnost alias. Nelze najt ID "%1"/Invalid alias reference. Unable to find id "%1"QDeclarativeCompilerNNeplatn pYiYazen pYipojenho pYedmtu"Invalid attached object assignmentQDeclarativeCompilerDNeplatn vymezen obsahu sou stky$Invalid component body specificationQDeclarativeCompiler6Neplatn vymezen sou stky"Invalid component id specificationQDeclarativeCompilerJNeplatn, proto~e przdn, hodnota IDInvalid empty IDQDeclarativeCompilerZNesprvn seskupen pYi pYstupu k vlastnostiInvalid grouped property accessQDeclarativeCompilerNeplatn pYiYazen vlastnosti: "%1" je vlastnost pouze pro  ten9Invalid property assignment: "%1" is a read-only propertyQDeclarativeCompilertNeplatn pYiYazen vlastnosti: o ekvn tYrozmrn vektor/Invalid property assignment: 3D vector expectedQDeclarativeCompilervNeplatn pYiYazen vlastnosti: o ekvna boolensk hodnota-Invalid property assignment: boolean expectedQDeclarativeCompilernNeplatn pYiYazen vlastnosti: o ekvno vymezen barvy+Invalid property assignment: color expectedQDeclarativeCompilerhNeplatn pYiYazen vlastnosti: o ekvn daj s datem*Invalid property assignment: date expectedQDeclarativeCompilerhNeplatn pYiYazen vlastnosti: o ekvn daj s datem.Invalid property assignment: datetime expectedQDeclarativeCompilerxNeplatn pYiYazen vlastnosti: o ekvna celo seln hodnota)Invalid property assignment: int expectedQDeclarativeCompiler\Neplatn pYiYazen vlastnosti: o ekvno  slo,Invalid property assignment: number expectedQDeclarativeCompilerNeplatn pYiYazen vlastnosti: o ekvn souYadnicov daj pro jeden bod+Invalid property assignment: point expectedQDeclarativeCompilerNeplatn pYiYazen vlastnosti: o ekvn parametr pro pravohelnk*Invalid property assignment: rect expectedQDeclarativeCompiler\Neplatn pYiYazen vlastnosti: o ekvn skript,Invalid property assignment: script expectedQDeclarativeCompilerpNeplatn pYiYazen vlastnosti: o ekvn daj s velikost*Invalid property assignment: size expectedQDeclarativeCompiler^Neplatn pYiYazen vlastnosti: o ekvn Yetzec,Invalid property assignment: string expectedQDeclarativeCompilerfNeplatn pYiYazen vlastnosti: o ekvn  asov daj*Invalid property assignment: time expectedQDeclarativeCompilernNeplatn pYiYazen vlastnosti: neplatn v tov hodnota0Invalid property assignment: unknown enumerationQDeclarativeCompilerNeplatn pYiYazen vlastnosti: o ekvna celo seln hodnota bez znamnka2Invalid property assignment: unsigned int expectedQDeclarativeCompilernNeplatn pYiYazen vlastnosti: Typ "%1" nen podporovn2Invalid property assignment: unsupported type "%1"QDeclarativeCompilerjNeplatn pYiYazen vlastnosti: o ekvna adresa (URL))Invalid property assignment: url expectedQDeclarativeCompiler8Neplatn vkldn vlastnostInvalid property nestingQDeclarativeCompiler.Neplatn typ vlastnostiInvalid property typeQDeclarativeCompiler6Neplatn pou~it vlastnostiInvalid property useQDeclarativeCompilerJNeplatn pou~it vlastnosti typu 'id'Invalid use of id propertyQDeclarativeCompilerDNeplatn pou~it jmennho prostoruInvalid use of namespaceQDeclarativeCompilerRNzvy metod nesm za nat velkm psmenem3Method names cannot begin with an upper case letterQDeclarativeCompiler8Vlastnost alias bez umstnNo property alias locationQDeclarativeCompiler`Pro vlastnost neexistuje ~dn pYipojen pYedmtNon-existent attached objectQDeclarativeCompilerrNeplatn nzev pro pYipojenou vlastnost (typu 'attached')Not an attached property nameQDeclarativeCompiler<O ekvno pYiYazen vlastnostiProperty assignment expectedQDeclarativeCompilerJVlastnosti ji~ byla pYiYazena hodnota*Property has already been assigned a valueQDeclarativeCompiler\Nzvy vlastnost nesm za nat velkm psmenem5Property names cannot begin with an upper case letterQDeclarativeCompilerTVcensobn pYiYazen hodnoty k vlastnosti!Property value set multiple timesQDeclarativeCompilerVNzvy signlo nesm za nat velkm psmenem3Signal names cannot begin with an upper case letterQDeclarativeCompilerRO ekvno jednotliv pYiYazen vlastnosti#Single property assignment expectedQDeclarativeCompiler<NepYpustn pYiYazen pYedmtuUnexpected object assignmentQDeclarativeCompiler6Hodnota ID nen jednozna nid is not uniqueQDeclarativeCompiler:Nepltn przdn adresa (URL)Invalid empty URLQDeclarativeComponentNelze provst ~dn pYiYazen, neboe neexistuje vchoz vlastnost pojmenovan jako "%1"+Cannot assign to non-existent property "%1"QDeclarativeConnectionsTSpojen: vkldan pYedmty nejsou povoleny'Connections: nested objects not allowedQDeclarativeConnections0Spojen: o ekvn skriptConnections: script expectedQDeclarativeConnections2Spojen: chyba ve skladbConnections: syntax errorQDeclarativeConnections2Transakce pouze pro  tenRead-only TransactionQDeclarativeEngine4Transakce SQL se nezdaYilaSQL transaction failedQDeclarativeEngine\SQL: Verze databze neodpovd o ekvan verziSQL: database version mismatchQDeclarativeEngineHVerzi %2 nelze pou~vat; je tYeba %1'Version mismatch: expected %1, found %2QDeclarativeEngineZ'executeSql' byl vyvoln mimo 'transaction()''executeSql called outside transaction()QDeclarativeEngineRTransakce: chyb callback (zavolat znovu)transaction: missing callbackQDeclarativeEngine@'back' lze pYidlit pouze jednouback is a write-once propertyQDeclarativeFlipableB'front' lze pYidlit pouze jednoufront is a write-once propertyQDeclarativeFlipable>"%1": ~dn takov adresY nen"%1": no such directoryQDeclarativeImportDatabase,- %1 jmennm prostorem- %1 is not a namespaceQDeclarativeImportDatabaseT- vkldan jmenn prostory nejsou povoleny- nested namespaces not allowedQDeclarativeImportDatabasebVelikost psmen v nzvu souboru neodpovd pro %2 File name case mismatch for "%2"QDeclarativeImportDatabaseNelze nahrt modul "%1": Velikost psmen v nzvu souboru neodpovd pro %29cannot load module "%1": File name case mismatch for "%2"QDeclarativeImportDatabasevZaveden "%1" nem ~dn qmldir a nem ~dn jmenn prostor*import "%1" has no qmldir and no namespaceQDeclarativeImportDatabaseDje dvojzna n. Nalezen v %1 a v %2#is ambiguous. Found in %1 and in %2QDeclarativeImportDatabasedje dvojzna n. Nalezen v %1 ve verzi %2.%3 a %4.%54is ambiguous. Found in %1 in version %2.%3 and %4.%5QDeclarativeImportDatabase>je dolo~en pYkladem rekurzivnis instantiated recursivelyQDeclarativeImportDatabasenen typ is not a typeQDeclarativeImportDatabaseMstn adresYlocal directoryQDeclarativeImportDatabaseDModul "%1" vymezen "%2" ne iteln(module "%1" definition "%2" not readableQDeclarativeImportDatabase8Modul "%1" nen nainstalovnmodule "%1" is not installedQDeclarativeImportDatabasePModul "%1" pYdavn modul "%2" nenalezen!module "%1" plugin "%2" not foundQDeclarativeImportDatabasePModul "%1" verze %2.%3 nen nainstalovn*module "%1" version %2.%3 is not installedQDeclarativeImportDatabase\Nelze nahrt pYdavn modul pro modul "%1": %2+plugin cannot be loaded for module "%1": %2QDeclarativeImportDatabaseKlvesov navdn (KeyNavigation) je dostupn pouze pomoc pYipojench vlastnost7KeyNavigation is only available via attached properties!QDeclarativeKeyNavigationAttachedhKeys je dostupn pouze pomoc pYipojench vlastnost.Keys is only available via attached propertiesQDeclarativeKeysAttachedVListElement: nelze obsahovat vkldan prvky+ListElement: cannot contain nested elementsQDeclarativeListModelTListElement: nelze pou~vat vlastnost "ID".ListElement: cannot use reserved "id" propertyQDeclarativeListModelrListElement: nelze pou~vat skript pro hodnotu vlastnosti1ListElement: cannot use script for property valueQDeclarativeListModelNListModel: Vlastnost '%1' nen vymezena"ListModel: undefined property '%1'QDeclarativeListModelRpYipojit (append): Hodnota nen pYedmtemappend: value is not an objectQDeclarativeListModel`vlo~it (insert): Index %1 je mimo platnou oblastinsert: index %1 out of rangeQDeclarativeListModelNvlo~it (insert): Hodnota nen pYedmteminsert: value is not an objectQDeclarativeListModelPpYesunout (move): je mimo platnou oblastmove: out of rangeQDeclarativeListModelfodstranit (remove): Index %1 je mimo platnou oblastremove: index %1 out of rangeQDeclarativeListModel^nastavit (set): Index %1 je mimo platnou oblastset: index %1 out of rangeQDeclarativeListModelLnastavit (set): Hodnota nen pYedmtemset: value is not an objectQDeclarativeListModel^Nahrvn neviditelnch prvko nen podporovno.4Loader does not support loading non-visual elements.QDeclarativeLoaderRPYi slo~it promn nelze zachovat vzhled5Unable to preserve appearance under complex transformQDeclarativeParentAnimationhPYi nejednotn zmn velikosti nelze zachovat vzhled5Unable to preserve appearance under non-uniform scaleQDeclarativeParentAnimationZPYi zmn velikosti s 0 nelze zachovat vzhled.Unable to preserve appearance under scale of 0QDeclarativeParentAnimationRPYi slo~it promn nelze zachovat vzhled5Unable to preserve appearance under complex transformQDeclarativeParentChangehPYi nejednotn zmn velikosti nelze zachovat vzhled5Unable to preserve appearance under non-uniform scaleQDeclarativeParentChangeZPYi zmn velikosti s 0 nelze zachovat vzhled.Unable to preserve appearance under scale of 0QDeclarativeParentChange,O ekvn typ parametruExpected parameter typeQDeclarativeParser.O ekvn typ vlastnostiExpected property typeQDeclarativeParser*O ekvan symbol `%1'Expected token `%1'QDeclarativeParser(O ekvan nzev typuExpected type nameQDeclarativeParserbIdentifiktor nemo~e za nat s  selnm pYeklepem,Identifier cannot start with numeric literalQDeclarativeParserNeplatn znakIllegal characterQDeclarativeParser8Neplatn nikov posloupnostIllegal escape squenceQDeclarativeParserLNeplatn skladba exponencilnho  sla%Illegal syntax for exponential numberQDeclarativeParserHNeplatn nikov posloupnost unicodeIllegal unicode escape sequenceQDeclarativeParser>Neplatn daj o ID pYi zavdnInvalid import qualifier IDQDeclarativeParserNNeplatn modifiktor pro typ vlastnostiInvalid property type modifierQDeclarativeParserTNeplatn pYznak '%0' u regulrnho vrazu$Invalid regular expression flag '%0'QDeclarativeParserpProhlaen JavaScriptu nen mimo prvek skriptu pYpustn-JavaScript declaration outside Script elementQDeclarativeParserNZaveden knihovny vy~aduje daj o verzi!Library import requires a versionQDeclarativeParserTVcensobn pYiYazen hodnoty k vlastnosti!Property value set multiple timesQDeclarativeParserr"Pouze pro  ten" nen na tomto mst jeat nepodporovnoReadonly not yet supportedQDeclarativeParsernZamluven nzev "Qt" nemo~e bt pou~it jako kvalifikant1Reserved name "Qt" cannot be used as an qualifierQDeclarativeParser|Kvalifikanty zadan pro zaveden skriptu mus bt jednozna n.(Script import qualifiers must be unique.QDeclarativeParserZZaveden skriptu vy~aduje daj o kvalifikantu"Script import requires a qualifierQDeclarativeParser Chyba ve skladb Syntax errorQDeclarativeParserHNeuzavYen poznmka na konci souboruUnclosed comment at end of fileQDeclarativeParserBNeuzavYen Yetzec na konci YdkuUnclosed string at end of lineQDeclarativeParserTNeo ekvan modifiktor pro typ vlastnosti!Unexpected property type modifierQDeclarativeParser.Neo ekvan symbol `%1'Unexpected token `%1'QDeclarativeParser~NeuzavYen posloupnost se zptnm lomtkem u regulrnho vrazu2Unterminated regular expression backslash sequenceQDeclarativeParserdNeuzavYen tYda u neuzavYenho regulrnho vrazu%Unterminated regular expression classQDeclarativeParser4NeuzavYen regulrn vraz'Unterminated regular expression literalQDeclarativeParser<Nelze nastavit dobu trvn < 0Cannot set a duration of < 0QDeclarativePauseAnimation"Nelze otevYt: %1Cannot open: %1QDeclarativePixmap6Chba pYi dekdovn: %1: %2Error decoding: %1: %2QDeclarativePixmapnObrazov data se od poskytovatele nepodaYilo zskat: %1%Failed to get image from provider: %1QDeclarativePixmap<Nelze nastavit dobu trvn < 0Cannot set a duration of < 0QDeclarativePropertyAnimationNelze provst ~dn pYiYazen, neboe neexistuje vchoz vlastnost pojmenovan jako "%1"+Cannot assign to non-existent property "%1"QDeclarativePropertyChangesvVlastnost '%1" je pouze pro  ten a nelze ji proto pYiYadit(Cannot assign to read-only property "%1"QDeclarativePropertyChangesPropertyChanges nepodporuje vytvYen pYedmto, kter jsou pYiYazeny jednomu stavu.APropertyChanges does not support creating state-specific objects.QDeclarativePropertyChanges`Zstupce kurzoru se nepodaYilo dolo~it pYkladem%Could not instantiate cursor delegateQDeclarativeTextInputJNepodaYilo se nahrt zstupce kurzoruCould not load cursor delegateQDeclarativeTextInput %1 %2%1 %2QDeclarativeTypeLoaderNJmenn prostor %1 nelze pou~t jako typ%Namespace %1 cannot be used as a typeQDeclarativeTypeLoader(Skript %1 nedostupnScript %1 unavailableQDeclarativeTypeLoader"Typ %1 nedostupnType %1 unavailableQDeclarativeTypeLoaderdVlastnosti signlu %1 nelze pYiYadit ~dn pYedmt-Cannot assign an object to signal property %1QDeclarativeVME`Vlastnosti rozhran nelze pYiYadit ~dn pYedmt*Cannot assign object to interface propertyQDeclarativeVMEXPYiYazen pYedmtu k seznamom nen pYpustnCannot assign object to listQDeclarativeVMETyp pYedmtu %1 nelze pYiYadit, proto~e neexistuje ~dn vchoz metoda3Cannot assign object type %1 with no default methodQDeclarativeVMERHodnotu '%1' nelze pYiYadit vlastnosti %2%Cannot assign value %1 to property %2QDeclarativeVMENelze vytvoYit ~dn spojen mezi signlem %1 a otvorem %2, proto~e se k sob nehod0Cannot connect mismatched signal/slot %1 %vs. %2QDeclarativeVMEhVlastnosti nelze nastavit na %1, proto~e jsou 'null')Cannot set properties on %1 as it is nullQDeclarativeVMENepodaYilo se vytvoYit ~dn pYipojen pYedmt (typu 'attached') Unable to create attached objectQDeclarativeVMEXNepodaYilo se vytvoYit ~dn pYedmt typu %1"Unable to create object of type %1QDeclarativeVMEPSou stka zstupce mus bt typu 'item'.%Delegate component must be Item type.QDeclarativeVisualDataModelZQt bylo sestaveno bez podpory pro xmlpatterns,Qt was built without support for xmlpatternsQDeclarativeXmlListModelNVyhledvn XmlRole nesm za nat s '/'(An XmlRole query must not start with '/'QDeclarativeXmlListModelRolejVyhledvn XmlListModel mus za nat s '/' nebo "//"1An XmlListModel query must start with '/' or "//"QDeclarativeXmlRoleList QDialQDialQDialPosuvnk SliderHandleQDialRychlomr SpeedoMeterQDial HotovoDoneQDialogCo je toto? What's This?QDialog&Zruait&CancelQDialogButtonBox&ZavYt&CloseQDialogButtonBox&Ne&NoQDialogButtonBox&OK&OKQDialogButtonBox&Ulo~it&SaveQDialogButtonBox&Ano&YesQDialogButtonBox ZruaitAbortQDialogButtonBox Pou~tApplyQDialogButtonBox ZruaitCancelQDialogButtonBox ZavYtCloseQDialogButtonBox$ZavYt bez ulo~enClose without SavingQDialogButtonBoxOdmtnoutDiscardQDialogButtonBoxNeukldat Don't SaveQDialogButtonBoxNpovdaHelpQDialogButtonBoxPYehl~etIgnoreQDialogButtonBoxN&e, ~dn N&o to AllQDialogButtonBoxOKOKQDialogButtonBoxOtevYtOpenQDialogButtonBox VrtitResetQDialogButtonBoxObnovit vchozRestore DefaultsQDialogButtonBoxOpakovatRetryQDialogButtonBox Ulo~itSaveQDialogButtonBoxUlo~it vaeSave AllQDialogButtonBoxAno, &vae Yes to &AllQDialogButtonBoxDatum zmny Date Modified QDirModelDruhMatch OS X FinderKind QDirModel NzevName QDirModelVelikostSize QDirModelTypAll other platformsType QDirModel ZavYtClose QDockWidget Vplout do paneluDock QDockWidget PloutFloat QDockWidgetMnLessQDoubleSpinBoxVceMoreQDoubleSpinBox&OK&OK QErrorMessageBToto hlaen &ukzat jeat jednou&Show this message again QErrorMessage&Hlaen o odladn:Debug Message: QErrorMessageOsudov chyba: Fatal Error: QErrorMessageVarovn:Warning: QErrorMessageD%1 se nepodaYilo zYdit pro vstupCannot create %1 for outputQFileD%1 se nepodaYilo otevYt pro  tenCannot open %1 for inputQFile>NepodaYilo se otevYt pro zpisCannot open for outputQFile>Nelze odstranit zdrojov souborCannot remove source fileQFile4Clov soubor ji~ existujeDestination file existsQFile@Datov blok se nepodaYilo zapsatFailure to write blockQFile`NepYejmenuje posloupn soubor pomoc kopie bloku0Will not rename sequential file using block copyQFile%1 AdresY se nepodaYilo nalzt. OvYte, prosm, ~e byl zadn sprvn nzev adresYe.K%1 Directory not found. Please verify the correct directory name was given. QFileDialog%1 Soubor se nepodaYilo nalzt. OvYte, prosm, ~e byl zadn sprvn nzev souboru.A%1 File not found. Please verify the correct file name was given. QFileDialogXSoubor %1 ji~ existuje. Chcete jej nahradit?-%1 already exists. Do you want to replace it? QFileDialog&Vybrat&Choose QFileDialog&Smazat&Delete QFileDialog&Nov slo~ka &New Folder QFileDialog&OtevYt&Open QFileDialog&PYejmenovat&Rename QFileDialog&Ulo~it&Save QFileDialogt'%1' je chrnn proti zpisu. PYesto chcete soubor smazat?9'%1' is write protected. Do you want to delete it anyway? QFileDialogPYezdvkaAlias QFileDialog&Vaechny soubory (*) All Files (*) QFileDialog*Vaechny soubory (*.*)All Files (*.*) QFileDialogFJste si jist, ~e %1 chcete smazat?!Are sure you want to delete '%1'? QFileDialogZptBack QFileDialogHZmnit na re~im s podrobnm pohledemChange to detail view mode QFileDialogFZmnit na re~im pohledu se seznamemChange to list view mode QFileDialog:AdresY se nepodaYilo smazat.Could not delete directory. QFileDialog*VytvoYit novou slo~kuCreate New Folder QFileDialog*VytvoYit novou slo~kuCreate a New Folder QFileDialogPodrobn pohled Detail View QFileDialogAdresYe Directories QFileDialogAdresY: Directory: QFileDialog Diskov jednotkaDrive QFileDialog SouborFile QFileDialogNzev &souboru: File &name: QFileDialog Souborov slo~ka File Folder QFileDialogSoubory typu:Files of type: QFileDialogNajt adresYFind Directory QFileDialog Slo~kaFolder QFileDialogDopYeduForward QFileDialogJt zptGo back QFileDialogJt dopYedu Go forward QFileDialog8Jt do rodi ovskho adresYeGo to the parent directory QFileDialog$Pohled se seznamem List View QFileDialogHledat v:Look in: QFileDialogMoj po ta  My Computer QFileDialogNov slo~ka New Folder QFileDialogOtevYtOpen QFileDialog"NadYazen adresYParent Directory QFileDialog(Naposledy navatven Recent Places QFileDialogOdstranitRemove QFileDialogUlo~it jakoSave As QFileDialogZkratkaShortcut QFileDialogUkzat Show  QFileDialog,&Ukzat skryt souboryShow &hidden files QFileDialogNeznmUnknown QFileDialog %1 GB%1 GBQFileSystemModel %1 KB%1 KBQFileSystemModel %1 MB%1 MBQFileSystemModel %1 TB%1 TBQFileSystemModel%1 byt(o) %1 byte(s)QFileSystemModel%1 byto%1 bytesQFileSystemModel<b>Nzev "%1" nelze pou~t.</b><p>Zkuste pou~t jin nzev, s menam po tem znako nebo bez zvlatnch znako.oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModelPo ta ComputerQFileSystemModelDatum zmny Date ModifiedQFileSystemModel,Neplatn nzev souboruInvalid filenameQFileSystemModelDruhMatch OS X FinderKindQFileSystemModelMoj po ta  My ComputerQFileSystemModel NzevNameQFileSystemModelVelikostSizeQFileSystemModelTypAll other platformsTypeQFileSystemModelVaechnaAny QFontDatabaseArabskArabic QFontDatabaseArmnskArmenian QFontDatabaseBenglskBengali QFontDatabase  ernBlack QFontDatabase Tu nBold QFontDatabaseCyrilskCyrillic QFontDatabasePolotu nDemi QFontDatabasePolotu n Demi Bold QFontDatabaseDevanagari Devanagari QFontDatabaseGruznskGeorgian QFontDatabase XeckGreek QFontDatabaseGujaratiGujarati QFontDatabaseGurmukhiGurmukhi QFontDatabaseHebrejskHebrew QFontDatabase ItalaItalic QFontDatabaseJaponskJapanese QFontDatabaseKannadaKannada QFontDatabaseKhmerskKhmer QFontDatabaseKorejskKorean QFontDatabase LaoskLao QFontDatabaseLatinskLatin QFontDatabase LehkLight QFontDatabaseMalayalam Malayalam QFontDatabaseMyanmarMyanmar QFontDatabaseN'KoN'Ko QFontDatabaseObvyklNormal QFontDatabaseNaklonnOblique QFontDatabaseOgamskOgham QFontDatabase OriyaOriya QFontDatabase RunovRunic QFontDatabase*Zjednoduaen  natinaSimplified Chinese QFontDatabaseSinhlskSinhala QFontDatabase SymbolSymbol QFontDatabase SyrskSyriac QFontDatabaseTamilskTamil QFontDatabase TeluguTelugu QFontDatabase ThaanaThaana QFontDatabaseThajskThai QFontDatabaseTibetskTibetan QFontDatabase"Tradi n  natinaTraditional Chinese QFontDatabaseVtnamsk Vietnamese QFontDatabase &Psmo&Font QFontDialog&Velikost&Size QFontDialog&Podtrhnout &Underline QFontDialog EfektyEffects QFontDialogDruh ps&ma Font st&yle QFontDialog VzorekSample QFontDialogVybrat psmo Select Font QFontDialogPYe&akrtnout Stri&keout QFontDialogZposob &psanWr&iting System QFontDialog>Zmna adresYe se nezdaYila: %1Changing directory failed: %1QFtp8Spojen s po ta em navznoConnected to hostQFtp,Spojeno s po ta em %1Connected to host %1QFtpHSpojen s po ta em se nezdaYilo: %1Connecting to host failed: %1QFtp Spojen ukon enoConnection closedQFtpDOdmtnuto spojen spojen pro data&Connection refused for data connectionQFtp@Spojen s po ta em %1 odmtnutoConnection refused to host %1QFtpn asov limit pro spojen s po ta em '%1' byl pYekro enConnection timed out to host %1QFtp*Spojen s %1 ukon enoConnection to %1 closedQFtpFVytvoYen adresYo se nezdaYilo: %1Creating directory failed: %1QFtp@Sta~en souboru se nezdaYilo: %1Downloading file failed: %1QFtp,Po ta %1 byl nalezen Host %1 foundQFtp>Po ta %1 se nepodaYilo nalztHost %1 not foundQFtp&Po ta byl nalezen Host foundQFtp>Obsah adresYo nelze ukzat: %1Listing directory failed: %1QFtp6PYihlaen se nezdaYilo: %1Login failed: %1QFtp}dn spojen Not connectedQFtpHOdstrann adresYe se nezdaYilo: %1Removing directory failed: %1QFtpFOdstrann souboru se nezdaYilo: %1Removing file failed: %1QFtpNeznm chyba Unknown errorQFtp@Nahrn souboru se nezdaYilo: %1Uploading file failed: %1QFtpRNebyl zadn nzev pro hostitelsk po ta No host name given QHostInfoNeznm chyba Unknown error QHostInfo6NepodaYilo se najt po ta Host not foundQHostInfoAgentLNeplatn nzev pro hostitelsk po ta Invalid hostnameQHostInfoAgentRNebyl zadn nzev pro hostitelsk po ta No host name givenQHostInfoAgent$Neznm typ adresyUnknown address typeQHostInfoAgentNeznm chyba Unknown errorQHostInfoAgent,Po~adovna autentizaceAuthentication requiredQHttp8Spojen s po ta em navznoConnected to hostQHttp,Spojeno s po ta em %1Connected to host %1QHttp Spojen ukon enoConnection closedQHttp,Spojen bylo odmtnutoConnection refusedQHttppSpojen bylo odmtnuto (nebo byl pYekro en  asov limit)!Connection refused (or timed out)QHttp*Spojen s %1 ukon enoConnection to %1 closedQHttp&Data jsou poakozenaData corruptedQHttppPYi psan odpovdi vstupnmu zaYzen se vyskytla chyba Error writing response to deviceQHttp,HTTP dotaz se nezdaYilHTTP request failedQHttpPo~adovan HTTPS spojen nelze vytvoYit, proto~e neexistuje ~dn SSL podpora:HTTPS connection requested but SSL support not compiled inQHttp,Po ta %1 byl nalezen Host %1 foundQHttp>Po ta %1 se nepodaYilo nalztHost %1 not foundQHttp&Po ta byl nalezen Host foundQHttpPHostitelsk po ta po~aduje autentizaciHost requires authenticationQHttptObsah (chunked body - rozkouskovan tlo) HTTP je neplatnInvalid HTTP chunked bodyQHttpDHlavi ka HTTP odpovdi nen platnInvalid HTTP response headerQHttpbPro spojen nebyl nastaven ~dn po ta - serverNo server set to connect toQHttp8Po~adovna proxy autentizaceProxy authentication requiredQHttpBProxy server po~aduje autentizaciProxy requires authenticationQHttp(Po~adavek byl zruaenRequest abortedQHttpXBhem startu SSL protokolu se vyskytla chybaSSL handshake failedQHttpDServer neo ekvan uzavYel spojen%Server closed connection unexpectedlyQHttp4Neznm zposob autentizaceUnknown authentication methodQHttpNeznm chyba Unknown errorQHttp4Byl zadn neznm protokolUnknown protocol specifiedQHttp8Neplatn daj o dlce obsahuWrong content lengthQHttp,Po~adovna autentizaceAuthentication requiredQHttpSocketEngineF}dn HTTP odpov od proxy serveru(Did not receive HTTP response from proxyQHttpSocketEngineDChyba pYi spojen s proxy serverem#Error communicating with HTTP proxyQHttpSocketEnginexChyba pYi vyhodnocen autentiza nho po~adavku proxy serveru/Error parsing authentication request from proxyQHttpSocketEngineLProxy server pYed asn ukon il spojen#Proxy connection closed prematurelyQHttpSocketEngineHProxy server odmtl navzn spojenProxy connection refusedQHttpSocketEngine6Proxy server odmtl spojenProxy denied connectionQHttpSocketEnginenPYi spojen s proxy serverem byl pYekro en  asov limit!Proxy server connection timed outQHttpSocketEngineLNepodaYilo se najt ~dn proxy serverProxy server not foundQHttpSocketEngineLNepodaYilo se spustit ~dnou transakciCould not start transaction QIBaseDriverPNepodaYilo se otevYt spojen s databzError opening database QIBaseDriverTransakci se nepodaYilo provst (operace 'commit', odesln, se nezdaYila)Unable to commit transaction QIBaseDriverTransakci se nepodaYilo zvrtit (operace 'rollback', zvrcen, se nezdaYila)Unable to rollback transaction QIBaseDriver<PYidlen pYkazu se nezdaYiloCould not allocate statement QIBaseResultdNepodaYilo se zskat ~dn popis vstupnho pYkazu"Could not describe input statement QIBaseResultPNepodaYilo se zskat ~dn popis pYkazuCould not describe statement QIBaseResultHDala prvek se nepodaYilo vyzvednoutCould not fetch next item QIBaseResult0NepodaYilo se najt poleCould not find array QIBaseResult>NepodaYilo se pYe st data poleCould not get array data QIBaseResultjPo~adovan informace k vyhledvn nejsou k dispoziciCould not get query info QIBaseResultTK dispozici nen ~dn informace k pYkazuCould not get statement info QIBaseResult<PYkaz se nepodaYilo pYipravitCould not prepare statement QIBaseResultLNepodaYilo se spustit ~dnou transakciCould not start transaction QIBaseResult6PYkaz se nepodaYilo zavYtUnable to close statement QIBaseResultTransakci se nepodaYilo provst (operace 'commit', odesln, se nezdaYila)Unable to commit transaction QIBaseResultBNepodaYilo se vytvoYit ~dn BLOBUnable to create BLOB QIBaseResult6Dotaz se nepodaYilo provstUnable to execute query QIBaseResult4NepodaYilo se otevYt BLOBUnable to open BLOB QIBaseResult4BLOB se nepodaYilo pYe stUnable to read BLOB QIBaseResult2NepodaYilo se zapsat BLOBUnable to write BLOB QIBaseResultVNa zaYzen nen ~dn voln lo~n prostorNo space left on device QIODevicehNepodaYilo se najt ~dn takov soubor nebo adresYNo such file or directory QIODevicePYstup odepYenPermission denied QIODevice>PYlia mnoho otevYench souboroToo many open files QIODeviceNeznm chyba Unknown error QIODeviceFEPFEP QInputContext.Mac OS X-vstupn metodaMac OS X input method QInputContext,S60 FEP-vstupn metodaS60 FEP input method QInputContext,Windows-vstupn metodaWindows input method QInputContextXIMXIM QInputContext$XIM-vstupn metodaXIM input method QInputContext Zadejte hodnotu:Enter a value: QInputDialog8Knihovnu %1 nelze nahrt: %2Cannot load library %1: %2QLibraryDSymbol "%1" nelze v %2 vyYeait: %3$Cannot resolve symbol "%1" in %2: %3QLibrary:Knihovnu %1 nelze vyjmout: %2Cannot unload library %1: %2QLibraryVOvYovac data pYdavnho nesouhlas v '%1')Plugin verification data mismatch in '%1'QLibrary\Soubor '%1' nen platnm pYdavnm modulem Qt.'The file '%1' is not a valid Qt plugin.QLibraryPYdavn modul '%1' pou~v neslu itelnou Qt knihovnu. (%2.%3.%4) [%5]=The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]QLibraryPYdavn modul '%1' pou~v neslu itelnou Qt knihovnu. (Knihovny vytvoYen v re~imu ladn a vydn nemohou bt pou~vny spole n.)WThe plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)QLibraryPYdavn modul '%1' pou~v neslu itelnou Qt knihovnu. PotYebn byl zvlatn kl pro sestaven "%2", obdr~en "%3"OThe plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"QLibraryNNepodaYilo se nalzt sdlenou knihovnu.!The shared library was not found.QLibraryNeznm chyba Unknown errorQLibrary&Koprovat&Copy QLineEdit&Vlo~it&Paste QLineEdit &Znovu&Redo QLineEdit &Zpt&Undo QLineEdit&VyjmoutCu&t QLineEdit SmazatDelete QLineEditVybrat vae Select All QLineEdit2%1: Adresa se ji~ pou~v%1: Address in use QLocalServer %1: Chybn nzev%1: Name error QLocalServer&%1: PYstup odepYen%1: Permission denied QLocalServer(%1: Neznm chyba %2%1: Unknown error %2 QLocalServer"%1: Chyba spojen%1: Connection error QLocalSocket4%1: Spojen bylo odmtnuto%1: Connection refused QLocalSocket:%1: Datagram je pYlia velik%1: Datagram too large QLocalSocket$%1: Neplatn nzev%1: Invalid name QLocalSocketT%1: Spojen bylo protja stranou uzavYeno%1: Remote closed QLocalSocketT%1: Chyba pYi pYstupu k zsuvce (socketu)%1: Socket access error QLocalSocketl%1: PYekro en  asu pYi operaci se zsuvkou (socketem)%1: Socket operation timed out QLocalSocket^%1: Chyba zsuvky (socketu) - pot~e se zdrojem%1: Socket resource error QLocalSocketp%1: Tato operace se zsuvkou (socketem) nen podporovna)%1: The socket operation is not supported QLocalSocket"%1: Neznm chyba%1: Unknown error QLocalSocket(%1: Neznm chyba %2%1: Unknown error %2 QLocalSocket>Transakci se nepodaYilo spustitUnable to begin transaction QMYSQLDriverTransakci se nepodaYilo provst (operace 'commit', odesln, se nezdaYila)Unable to commit transaction QMYSQLDriver:NepodaYilo se navzat spojenUnable to connect QMYSQLDriverTNepodaYilo se otevYt spojen s databz 'Unable to open database ' QMYSQLDriverTransakci se nepodaYilo zvrtit (operace 'rollback', zvrcen, se nezdaYila)Unable to rollback transaction QMYSQLDriverJVstupn hodnoty se nepodaYilo spojitUnable to bind outvalues QMYSQLResult8Hodnotu se nepodaYilo spojitUnable to bind value QMYSQLResult2Dala dotaz nelze provstUnable to execute next query QMYSQLResult6Dotaz se nepodaYilo provstUnable to execute query QMYSQLResult8PYkaz se nepodaYilo provstUnable to execute statement QMYSQLResultDNepodaYilo se nathnout ~dn dataUnable to fetch data QMYSQLResult<PYkaz se nepodaYilo pYipravitUnable to prepare statement QMYSQLResultFPYkaz se nepodaYilo znovu nastavitUnable to reset statement QMYSQLResult6Dala vsledek nelze ulo~itUnable to store next result QMYSQLResult:Vsledek se nepodaYilo ulo~itUnable to store result QMYSQLResultJVsledky pYkazu se nepodaYilo ulo~it!Unable to store statement results QMYSQLResult(Bez nzvu) (Untitled)QMdiArea%1 - [%2] %1 - [%2] QMdiSubWindow&ZavYt&Close QMdiSubWindowPo&sunout&Move QMdiSubWindow&Obnovit&Restore QMdiSubWindow Zmnit &velikost&Size QMdiSubWindow - [%1]- [%1] QMdiSubWindow ZavYtClose QMdiSubWindowNpovdaHelp QMdiSubWindowZv&tait Ma&ximize QMdiSubWindowZvtaitMaximize QMdiSubWindowMenuMenu QMdiSubWindowZmen&ait Mi&nimize QMdiSubWindowZmenaitMinimize QMdiSubWindowObnovitRestore QMdiSubWindowObnovit Restore Down QMdiSubWindowNavinoutShade QMdiSubWindow"Zostat v &popYed Stay on &Top QMdiSubWindowOdvinoutUnshade QMdiSubWindow ZavYtCloseQMenuProvstExecuteQMenuOtevYtOpenQMenu innostiActionsQMenuBarl<h3>O Qt</h3><p>Tento program pou~v Qt-verze %1.</p>8

About Qt

This program uses Qt version %1.

 QMessageBox X<p>Qt je sadou softwarovch nstrojo C++ ur ench pro vvoj aplikac napY platformami.</p><p>Qt poskytuje jednoduchou pYenositelnost pYes MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, a vaechny hlavn obchodn varianty systmu Unix. Qt je rovn~ dostupn pro vlo~en zaYzen jako Qt pro Embedded Linux a Qt pro Windows CE.</p><p>Qt je dostupn pod tYemi rozdlnmi licen nmi volbami navr~enmi pro pYizposoben se potYebm naaich roznch u~ivatelo.</p>Qt licencovan pod naa obchodn licen n smlouvou je vhodn pro vvoj soukromho/obchodnho software, kde si nepYejete sdlet jakkoli zdrojov kd se tYetmi stranami, nebo jinak Ye eno, kdy~ nemo~ete vyhovt podmnkm GNU LGPL ve verzi 2.1 nebo GNU GPL ve verzi 3.0.</p><p>Qt licencovan pod GNU LGPL ve verzi 2.1 je vhodn pro vvoj Qt aplikac (soukromch nebo s otevYenm zdrojovm kdem), za pYedpokladu ~e mo~ete souhlasit s po~adavky a podmnkami GNU LGPL version 2.1.</p><p>Qt licencovan pod GNU General Public License ve verzi 3.0 je vhodn pro vvoj aplikac Qt, u nich~ si pYejete pou~t takovou aplikaci ve spojen se software, kter podlh po~adavkom GNU GPL ve verzi 3.0, nebo kde jste jinak ochoten souhlasit s podmnkami GNU GPL ve verzi 3.0.</p><p>Podvejte se, prosm, na <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> kvoli pYehledu licencovn Qt.</p><p>Autorsk prvo (C) 2011 Nokia Corporation a/nebo jej dceYinn() spole nost(i).</p><p>Qt je vrobkem spole nosti Nokia. Podvejte se na <a href="http://qt.nokia.com/">qt.nokia.com</a>kvoli vce informacm.</p>

Qt is a C++ toolkit for cross-platform application development.

Qt provides single-source portability across MS Windows, Mac OS X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.

Qt is available under three different licensing options designed to accommodate the needs of our various users.

Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.

Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.

Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.

Please see qt.nokia.com/products/licensing for an overview of Qt licensing.

Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).

Qt is a Nokia product. See qt.nokia.com for more information.

 QMessageBoxO QtAbout Qt QMessageBoxNpovdaHelp QMessageBox(Skrt podrobnosti...Hide Details... QMessageBoxOKOK QMessageBox*Ukzat podrobnosti...Show Details... QMessageBox(Zvolit zposob vstupu Select IMQMultiInputContext@PYepna pro vce zposobo vstupuMultiple input method switcherQMultiInputContextPluginPYepna pro vce zposobo vstupu, kter pou~v souvisejc nabdku textovho prvkuMMultiple input method switcher that uses the context menu of the text widgetsQMultiInputContextPlugindNa tomto portu ji~ naslouch jin zsuvka (socket)4Another socket is already listening on the same portQNativeSocketEngineVyzkouaelo se pou~t IPv6 zsuvku (socket) na systmu bez podpory IPv6=Attempt to use IPv6 socket on a platform with no IPv6 supportQNativeSocketEngine,Spojen bylo odmtnutoConnection refusedQNativeSocketEngineL asov limit pro spojen byl pYekro enConnection timed outQNativeSocketEngineNDatagram byl pro odesln pYlia velikDatagram was too large to sendQNativeSocketEngine>Clov po ta je nedosa~itelnHost unreachableQNativeSocketEngineJNeplatn deskriptor zsuvky (socketu)Invalid socket descriptorQNativeSocketEngineSeov chyba Network errorQNativeSocketEngine\ asov limit pro seovou operaci byl pYekro enNetwork operation timed outQNativeSocketEngine(Se je nedosa~itelnNetwork unreachableQNativeSocketEnginefOperaci lze pou~t pouze na jedn zsuvce (socketu)Operation on non-socketQNativeSocketEngine8Nejsou dostupn ~dn zdrojeOut of resourcesQNativeSocketEnginePYstup odepYenPermission deniedQNativeSocketEngineHProtokol tohoto typu nen podporovnProtocol type not supportedQNativeSocketEngine(Adresa nen dostupnThe address is not availableQNativeSocketEngine$Adresa je chrnnaThe address is protectedQNativeSocketEngine8Uveden adresa se u~ pou~v#The bound address is already in useQNativeSocketEngine\Tuto operaci nelze s tmto typem proxy provst,The proxy type is invalid for this operationQNativeSocketEngine@Vzdlen po ta uzavYel spojen%The remote host closed the connectionQNativeSocketEnginefZsuvku pro vysln (socket) se nepodaYilo spustit%Unable to initialize broadcast socketQNativeSocketEnginedNeblokujc zsuvku (socket) se nepodaYilo spustit(Unable to initialize non-blocking socketQNativeSocketEngine:Zprvu se nepodaYilo pYijmoutUnable to receive a messageQNativeSocketEngine:NepodaYilo se odeslat hlaenUnable to send a messageQNativeSocketEngine(NepodaYilo se zapsatUnable to writeQNativeSocketEngineNeznm chyba Unknown errorQNativeSocketEnginedNepodporovan zsuvkov operace (povel pro socket)Unsupported socket operationQNativeSocketEngine0%1 se nepodaYilo otevYtError opening %1QNetworkAccessCacheBackend Neplatn URI: %1Invalid URI: %1QNetworkAccessDataBackend@Tato operace nen %1 podporovnaOperation not supported on %1QNetworkAccessDataBackend^Vzdlen po ta pYed asn ukon il spojen s %13Remote host closed the connection prematurely on %1QNetworkAccessDebugPipeBackend@Chyba zsuvky (socketu) u %1: %2Socket error on %1: %2QNetworkAccessDebugPipeBackendTPYi zpisu do souboru %1: %2 nastala chybaWrite error writing to %1: %2QNetworkAccessDebugPipeBackendH%1 nelze otevYt: Jedn se o adresY#Cannot open %1: Path is a directoryQNetworkAccessFileBackend8%1 se nepodaYilo otevYt: %2Error opening %1: %2QNetworkAccessFileBackendRPYi  ten ze souboru %1 nastala chyba: %2Read error reading from %1: %2QNetworkAccessFileBackendRPo~adavek na otevYen souboru pYes se %1%Request for opening non-local file %1QNetworkAccessFileBackendTPYi zpisu do souboru %1: %2 nastala chybaWrite error writing to %1: %2QNetworkAccessFileBackendH%1 nelze otevYt: Jedn se o adresYCannot open %1: is a directoryQNetworkAccessFtpBackendLPYi stahovn %1 se vyskytla chyba: %2Error while downloading %1: %2QNetworkAccessFtpBackendLPYi nahrvn %1 se vyskytla chyba: %2Error while uploading %1: %2QNetworkAccessFtpBackendpPYihlaen do %1 se nezdaYilo: Je po~adovna autentizace0Logging in to %1 failed: authentication requiredQNetworkAccessFtpBackendZNepodaYilo se najt ~dn vhodn proxy serverNo suitable proxy foundQNetworkAccessFtpBackendZNepodaYilo se najt ~dn vhodn proxy serverNo suitable proxy foundQNetworkAccessHttpBackend8PYstup k sti nen dovolen.Network access is disabled.QNetworkAccessManagerBeim Herunterladen von %1 trat ein Fehler auf - Die Antwort des Servers ist: %2)Error downloading %1 - server replied: %2 QNetworkReply6Chyba pYi spojen pYes se.Network session error. QNetworkReply.Protokol "%1" nen znmProtocol "%1" is unknown QNetworkReply(Se do asn vypadla.Temporary network failure. QNetworkReply(Operace byla zruaenaOperation canceledQNetworkReplyImpl&Neplatn nastaven.Invalid configuration.QNetworkSession<Chyba pYi touln se (roaming) Roaming errorQNetworkSessionPrivateImplvTouln se (roaming) bylo bu zruaeno, nebo zde nen mo~n.'Roaming was aborted or is not possible.QNetworkSessionPrivateImplvSpojen bylo zruaeno bu u~ivatelem nebo opera nm systmem!Session aborted by user or systemQNetworkSessionPrivateImplZPo~adovan operace nen systmem podporovna.7The requested operation is not supported by the system.QNetworkSessionPrivateImplxSpojen bylo zruaeno bu u~ivatelem nebo opera nm systmem..The session was aborted by the user or system.QNetworkSessionPrivateImpl<Zadan nastaven nelze pou~t.+The specified configuration cannot be used.QNetworkSessionPrivateImplNeznm chybaUnidentified ErrorQNetworkSessionPrivateImplFNeznm chyba pYi spojen pYes se.Unknown session error.QNetworkSessionPrivateImpl>Transakci se nepodaYilo spustitUnable to begin transaction QOCIDriverTransakci se nepodaYilo provst (operace 'commit', odesln, se nezdaYila)Unable to commit transaction QOCIDriver*Spuatn se nezdaYilo QOCIDriverUnable to initialize QOCIDriver.PYihlaen se nezdaYiloUnable to logon QOCIDriverTransakci se nepodaYilo zvrtit (operace 'rollback', zvrcen, se nezdaYila)Unable to rollback transaction QOCIDriver>PYidlen pYkazu se nepodaYiloUnable to alloc statement QOCIResultNepodaYilo se spojit sloupec pro proveden pYkazu dvkovho zpracovn'Unable to bind column for batch execute QOCIResult8Hodnotu se nepodaYilo spojitUnable to bind value QOCIResultfPYkaz pro dvkov zpracovn se nepodaYilo provst!Unable to execute batch statement QOCIResult8PYkaz se nepodaYilo provstUnable to execute statement QOCIResult@NepodaYilo se zskat typ pYkazuUnable to get statement type QOCIResult2Nelze jt k dalamu prvkuUnable to goto next QOCIResult<PYkaz se nepodaYilo pYipravitUnable to prepare statement QOCIResultTransakci se nepodaYilo provst (operace 'commit', odesln, se nezdaYila)Unable to commit transaction QODBCDriver:NepodaYilo se navzat spojenUnable to connect QODBCDriverNepodaYilo se navzat spojen, proto~e ovlada nutnou funkcionalitu pln nepodporujeEUnable to connect - Driver doesn't support all functionality required QODBCDrivert'autocommit', automatick odesln, se nepodaYilo zastavitUnable to disable autocommit QODBCDriverD'autocommit' se nepodaYilo povolitUnable to enable autocommit QODBCDriverTransakci se nepodaYilo zvrtit (operace 'rollback', zvrcen, se nezdaYila)Unable to rollback transaction QODBCDriver QODBCResult::reset: 'SQL_CURSOR_STATIC' se nepodaYilo nastavit jako pYkaz vlastnosti . OvYte, prosm, nastaven svho ODBC ovlada eyQODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResult>Promnnou se nepodaYilo provstUnable to bind variable QODBCResult8PYkaz se nepodaYilo provstUnable to execute statement QODBCResultDNepodaYilo se nathnout ~dn dataUnable to fetch QODBCResultVPrvn datov zznam se nepodaYilo nathnoutUnable to fetch first QODBCResult\Posledn datov zznam se nepodaYilo nathnoutUnable to fetch last QODBCResultVDala datov zznam se nepodaYilo nathnoutUnable to fetch next QODBCResult^PYedchoz datov zznam se nepodaYilo nathnoutUnable to fetch previous QODBCResult8PYkaz se nepodaYilo spustitUnable to prepare statement QODBCResult"%1" je ji~ zadn jako nzev pYedchoz lohy, a je proto vypnut.:"%1" duplicates a previous role name and will be disabled.QObject2Zvukov server PulseAudioPulseAudio Sound ServerQObject(Nepltn dotaz: "%1"invalid query: "%1"QObject NzevNameQPPDOptionsModelHodnotaValueQPPDOptionsModel>Transakci se nepodaYilo spustitCould not begin transaction QPSQLDriverTransakci se nepodaYilo provst (operace 'commit', odesln, se nezdaYila)Could not commit transaction QPSQLDriverTransakci se nepodaYilo zvrtit (operace 'rollback', zvrcen, se nezdaYila)Could not rollback transaction QPSQLDriver:NepodaYilo se navzat spojenUnable to connect QPSQLDriver.Registrace se nezdaYilaUnable to subscribe QPSQLDriver>Registraci se nepodaYilo zruaitUnable to unsubscribe QPSQLDriverDNepodaYilo se vytvoYit ~dn dotazUnable to create query QPSQLResult<PYkaz se nepodaYilo pYipravitUnable to prepare statement QPSQLResultCentimetry (cm)Centimeters (cm)QPageSetupWidgetFormulYFormQPageSetupWidget Vaka:Height:QPageSetupWidgetPalce (in) Inches (in)QPageSetupWidgetFormt na aYku LandscapeQPageSetupWidget OkrajeMarginsQPageSetupWidgetMilimetry (mm)Millimeters (mm)QPageSetupWidgetZamYen OrientationQPageSetupWidgetVelikost stran: Page size:QPageSetupWidget PaprPaperQPageSetupWidgetZdroj papru: Paper source:QPageSetupWidgetBody (pt) Points (pt)QPageSetupWidgetFormt na vakuPortraitQPageSetupWidget0Obrcen formt na aYkuReverse landscapeQPageSetupWidget0Obrcen formt na vakuReverse portraitQPageSetupWidget `Yka:Width:QPageSetupWidgetDoln okraj bottom marginQPageSetupWidgetLev okraj left marginQPageSetupWidgetPrav okraj right marginQPageSetupWidgetHorn okraj top marginQPageSetupWidget8PYdavn modul nebyl nahrn.The plugin was not loaded. QPluginLoaderNeznm chyba Unknown error QPluginLoaderLSoubor %1 ji~ existuje. M se pYepsat?/%1 already exists. Do you want to overwrite it? QPrintDialogj%1 je adresY. Zvolte, prosm, pro soubor jin nzev.7%1 is a directory. Please choose a different file name. QPrintDialog&Nastaven <<  &Options << QPrintDialog&Nastaven >> &Options >> QPrintDialog &Tisk&Print QPrintDialog8<qt>Chcete jej pYepsat?</qt>%Do you want to overwrite it? QPrintDialogA0A0 QPrintDialog$A0 (841 x 1189 mm)A0 (841 x 1189 mm) QPrintDialogA1A1 QPrintDialog"A1 (594 x 841 mm)A1 (594 x 841 mm) QPrintDialogA2A2 QPrintDialog"A2 (420 x 594 mm)A2 (420 x 594 mm) QPrintDialogA3A3 QPrintDialog"A3 (297 x 420 mm)A3 (297 x 420 mm) QPrintDialogA4A4 QPrintDialogHA4 (210 x 297 mm, 8.26 x 11.7 palco)%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialogA5A5 QPrintDialog"A5 (148 x 210 mm)A5 (148 x 210 mm) QPrintDialogA6A6 QPrintDialog"A6 (105 x 148 mm)A6 (105 x 148 mm) QPrintDialogA7A7 QPrintDialog A7 (74 x 105 mm)A7 (74 x 105 mm) QPrintDialogA8A8 QPrintDialogA8 (52 x 74 mm)A8 (52 x 74 mm) QPrintDialogA9A9 QPrintDialogA9 (37 x 52 mm)A9 (37 x 52 mm) QPrintDialogPYezdvka: %1 Aliases: %1 QPrintDialogB0B0 QPrintDialog&B0 (1000 x 1414 mm)B0 (1000 x 1414 mm) QPrintDialogB1B1 QPrintDialog$B1 (707 x 1000 mm)B1 (707 x 1000 mm) QPrintDialogB10B10 QPrintDialog B10 (31 x 44 mm)B10 (31 x 44 mm) QPrintDialogB2B2 QPrintDialog"B2 (500 x 707 mm)B2 (500 x 707 mm) QPrintDialogB3B3 QPrintDialog"B3 (353 x 500 mm)B3 (353 x 500 mm) QPrintDialogB4B4 QPrintDialog"B4 (250 x 353 mm)B4 (250 x 353 mm) QPrintDialogB5B5 QPrintDialogFB5 (176 x 250 mm, 6.93 x 9.84 palco%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialogB6B6 QPrintDialog"B6 (125 x 176 mm)B6 (125 x 176 mm) QPrintDialogB7B7 QPrintDialog B7 (88 x 125 mm)B7 (88 x 125 mm) QPrintDialogB8B8 QPrintDialogB8 (62 x 88 mm)B8 (62 x 88 mm) QPrintDialogB9B9 QPrintDialogB9 (44 x 62 mm)B9 (44 x 62 mm) QPrintDialogC5EC5E QPrintDialog$C5E (163 x 229 mm)C5E (163 x 229 mm) QPrintDialog(Stanoven u~ivatelemCustom QPrintDialogDLEDLE QPrintDialog$DLE (110 x 220 mm)DLE (110 x 220 mm) QPrintDialogProvdc Executive QPrintDialogPProvdc (7,5 x 10 palco, 191 x 254 mm))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialogSoubor %1 je chrnn proti zpisu. Zvolte, prosm, pro soubor jin nzev.=File %1 is not writable. Please choose a different file name. QPrintDialog&Soubor ji~ existuje File exists QPrintDialog FolioFolio QPrintDialog(Folio (210 x 330 mm)Folio (210 x 330 mm) QPrintDialog*Hlavn ( etn) knihaLedger QPrintDialogHHlavn ( etn) kniha (432 x 279 mm)Ledger (432 x 279 mm) QPrintDialog PrvnLegal QPrintDialogJPrvn (8,5 x 14 palco, 216 x 356 mm)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialog DopisLetter QPrintDialogHDopis (8,5 x 11 palco, 216 x 279 mm)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialogMstn soubor Local file QPrintDialogOKOK QPrintDialogTiskPrint QPrintDialog$Tisk do souboru...Print To File ... QPrintDialogTisknout vae Print all QPrintDialog,Vytisknout tuto stranuPrint current page QPrintDialogTiskov oblast Print range QPrintDialogTisk vbruPrint selection QPrintDialog*Tisk do souboru (PDF)Print to File (PDF) QPrintDialog8Tisk do souboru (Postscript)Print to File (Postscript) QPrintDialogBulvrn novinyTabloid QPrintDialogFBulvrn noviny/tisk (279 x 432 mm)Tabloid (279 x 432 mm) QPrintDialogdaj pro prvn stranu nesm bt vta ne~ daj pro posledn stranu.7The 'From' value cannot be greater than the 'To' value. QPrintDialog&US b~n #10 oblkaUS Common #10 Envelope QPrintDialogDUS b~n #10 oblka (105 x 241 mm)%US Common #10 Envelope (105 x 241 mm) QPrintDialog Zapsat %1 soubor Write %1 file QPrintDialogpYmo spojenolocally connected QPrintDialogNeznmunknown QPrintDialog%1%%1%QPrintPreviewDialog ZavYtCloseQPrintPreviewDialogVyvst do PDF Export to PDFQPrintPreviewDialog*Vyvst do PostScriptuExport to PostScriptQPrintPreviewDialogPrvn strana First pageQPrintPreviewDialog$PYizposobit stranuFit pageQPrintPreviewDialog"PYizposobit aYku Fit widthQPrintPreviewDialogFormt na aYku LandscapeQPrintPreviewDialogPosledn strana Last pageQPrintPreviewDialogDala strana Next pageQPrintPreviewDialog Nastaven strany Page SetupQPrintPreviewDialog Nastaven strany Page setupQPrintPreviewDialogFormt na vakuPortraitQPrintPreviewDialog PYedchoz strana Previous pageQPrintPreviewDialogTiskPrintQPrintPreviewDialogNhled tisku Print PreviewQPrintPreviewDialog8Ukzat strany le~c naprotiShow facing pagesQPrintPreviewDialog4Ukzat pYehled vaech stranShow overview of all pagesQPrintPreviewDialog0Ukzat jednotliv stranyShow single pageQPrintPreviewDialogZvtaitZoom inQPrintPreviewDialogZmenaitZoom outQPrintPreviewDialogRozaYenAdvancedQPrintPropertiesWidgetFormulYFormQPrintPropertiesWidget StranaPageQPrintPropertiesWidgetSrovnatCollateQPrintSettingsOutput BarvaColorQPrintSettingsOutputBarevn re~im Color ModeQPrintSettingsOutputPo et exemplYoCopiesQPrintSettingsOutput Po et exemplYo:Copies:QPrintSettingsOutputNynja strana Current PageQPrintSettingsOutputZdvojen tiskDuplex PrintingQPrintSettingsOutputFormulYFormQPrintSettingsOutputOdstny aedi GrayscaleQPrintSettingsOutputDlouh strana Long sideQPrintSettingsOutput }dnNoneQPrintSettingsOutput VolbyOptionsQPrintSettingsOutput"Nastaven vstupuOutput SettingsQPrintSettingsOutputStrany od Pages fromQPrintSettingsOutputTisknout vae Print allQPrintSettingsOutputTisk oblasti Print rangeQPrintSettingsOutputObrcenReverseQPrintSettingsOutput Vbr SelectionQPrintSettingsOutputKrtk strana Short sideQPrintSettingsOutputdotoQPrintSettingsOutput&Nzev:&Name: QPrintWidget...... QPrintWidgetFormulYForm QPrintWidgetUmstn: Location: QPrintWidget"Vstupn &soubor: Output &file: QPrintWidget&Vlastnosti P&roperties QPrintWidget NhledPreview QPrintWidgetTiskrnaPrinter QPrintWidgetTyp:Type: QPrintWidgethVstupn pYesmrovn se nepodaYilo otevYt pro  ten,Could not open input redirection for readingQProcessjVstupn pYesmrovn se nepodaYilo otevYt pro zpis-Could not open output redirection for writingQProcess8 ten z procesu se nezdaYiloError reading from processQProcess8Zpis do procesu se nezdaYilError writing to processQProcess0Nestanoven ~dn programNo program definedQProcessProces spadlProcess crashedQProcess@Proces se nepodaYilo spustit: %1Process failed to start: %1QProcess2PYekro en  asu u procesuProcess operation timed outQProcesspPot~e se zdroji (selhn rozcest - "fork failure"): %1!Resource error (fork failure): %1QProcess ZruaitCancelQProgressDialogOtevYtOpen QPushButtonOzna it kY~kemCheck QRadioButton@nesprvn syntax pro tYdu znakubad char class syntaxQRegExpLnesprvn syntax pro plnovn dopYedubad lookahead syntaxQRegExp<nesprvn syntax pro opakovnbad repetition syntaxQRegExp>byla pou~ita zakzan vlastnostdisabled feature usedQRegExp neplatn skupinainvalid categoryQRegExp"neplatn intervalinvalid intervalQRegExp4neplatn osmi kov hodnotainvalid octal valueQRegExp(dosa~ena vnitYn mezmet internal limitQRegExp.chybjc lev vymezenmissing left delimQRegExp~dn chybano error occurredQRegExp"neo ekvan konecunexpected endQRegExpPNepodaYilo se otevYt spojen s databzError opening databaseQSQLite2Driver>Transakci se nepodaYilo spustitUnable to begin transactionQSQLite2DriverTransakci se nepodaYilo provst (operace 'commit', odesln, se nezdaYila)Unable to commit transactionQSQLite2DriverTransakci se nepodaYilo zvrtit (operace 'rollback', zvrcen, se nezdaYila)Unable to rollback transactionQSQLite2Driver8PYkaz se nepodaYilo provstUnable to execute statementQSQLite2Result@Vsledek se nepodaYilo nathnoutUnable to fetch resultsQSQLite2ResultTNepodaYilo se uzavYt spojen s datatabzError closing database QSQLiteDriverPNepodaYilo se otevYt spojen s databzError opening database QSQLiteDriver>Transakci se nepodaYilo spustitUnable to begin transaction QSQLiteDriverTransakci se nepodaYilo provst (operace 'commit', odesln, se nezdaYila)Unable to commit transaction QSQLiteDriverTransakci se nepodaYilo zvrtit (operace 'rollback', zvrcen, se nezdaYila)Unable to rollback transaction QSQLiteDriver}dn po~adavekNo query QSQLiteResult8Po et parametro nen sprvnParameter count mismatch QSQLiteResult<Parametry se nepodaYilo spojitUnable to bind parameters QSQLiteResult8PYkaz se nepodaYilo provstUnable to execute statement QSQLiteResult:Xdek se nepodaYilo nathnoutUnable to fetch row QSQLiteResultFPYkaz se nepodaYilo znovu nastavitUnable to reset statement QSQLiteResultPodmnka ConditionQScriptBreakpointsModelSpuatn Hit-countQScriptBreakpointsModelIDIDQScriptBreakpointsModelSpustit po Ignore-countQScriptBreakpointsModelUmstnLocationQScriptBreakpointsModelSpustit jednou Single-shotQScriptBreakpointsModel SmazatDeleteQScriptBreakpointsWidgetNovNewQScriptBreakpointsWidget*&Hledat ve skriptu...&Find in Script...QScriptDebuggerSmazat konzoli Clear ConsoleQScriptDebugger(Smazat vstup ladnClear Debug OutputQScriptDebugger>Smazat vstupn zpis s chybamiClear Error LogQScriptDebuggerPokra ovatContinueQScriptDebugger Ctrl+FCtrl+FQScriptDebuggerCtrl+F10Ctrl+F10QScriptDebugger Ctrl+GCtrl+GQScriptDebugger LaditDebugQScriptDebuggerF10F10QScriptDebuggerF11F11QScriptDebuggerF3F3QScriptDebuggerF5F5QScriptDebuggerF9F9QScriptDebuggerNajt &dala Find &NextQScriptDebugger Najt &pYedchozFind &PreviousQScriptDebuggerJt na Ydek Go to LineQScriptDebuggerPYeruait InterruptQScriptDebugger Xdek:Line:QScriptDebugger"Provst po kurzor Run to CursorQScriptDebugger,Provst po nov skriptRun to New ScriptQScriptDebuggerShift+F11 Shift+F11QScriptDebuggerShift+F3Shift+F3QScriptDebuggerShift+F5Shift+F5QScriptDebuggerKrok do Step IntoQScriptDebuggerKrok venStep OutQScriptDebuggerKrok pYes Step OverQScriptDebuggerDPYepnout bod pYeruaen (zastaven)Toggle BreakpointQScriptDebugger<img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;Hledn doshlo konceJ Search wrappedQScriptDebuggerCodeFinderWidget@Rozliaujc velk a mal psmenaCase SensitiveQScriptDebuggerCodeFinderWidget ZavYtCloseQScriptDebuggerCodeFinderWidget DalaNextQScriptDebuggerCodeFinderWidgetPYedchozPreviousQScriptDebuggerCodeFinderWidgetCel slova Whole wordsQScriptDebuggerCodeFinderWidget NzevNameQScriptDebuggerLocalsModelHodnotaValueQScriptDebuggerLocalsModel roveHLevelQScriptDebuggerStackModelUmstnLocationQScriptDebuggerStackModel NzevNameQScriptDebuggerStackModel&Podmnka zastaven:Breakpoint Condition: QScriptEdit*Vypnout bod zastavenDisable Breakpoint QScriptEdit*Zapnout bod zastavenEnable Breakpoint QScriptEdit,PYepnout bod zastavenToggle Breakpoint QScriptEditBody zastaven BreakpointsQScriptEngineDebuggerKonzoleConsoleQScriptEngineDebuggerVstup ladn Debug OutputQScriptEngineDebugger0Vstupn zpis s chybami Error LogQScriptEngineDebuggerNahran skriptyLoaded ScriptsQScriptEngineDebuggerMstn promnnLocalsQScriptEngineDebugger"Qt ladn skriptoQt Script DebuggerQScriptEngineDebugger HledatSearchQScriptEngineDebuggerZsobnkStackQScriptEngineDebugger PohledViewQScriptEngineDebugger ZavYtCloseQScriptNewBreakpointWidget KonecBottom QScrollBarLev okraj Left edge QScrollBar$O jeden Ydek dolo Line down QScrollBar(O jeden Ydek nahoruLine up QScrollBarO stranu dolo Page down QScrollBarO stranu doleva Page left QScrollBar O stranu doprava Page right QScrollBarO stranu nahoruPage up QScrollBar PolohaPosition QScrollBarPrav okraj Right edge QScrollBarProj~dt dolo Scroll down QScrollBar Proj~dt a~ sem Scroll here QScrollBar Proj~dt doleva Scroll left QScrollBar"Proj~dt doprava Scroll right QScrollBar Proj~dt nahoru Scroll up QScrollBarZa tekTop QScrollBarN%1: Soubor s unixovm kl em neexistuje%1: UNIX key file doesn't exist QSharedMemory %1: Ji~ existuje%1: already exists QSharedMemory`%1: daj o velikosti vytvoYen je mena ne~ nula%1: create size is less then 0 QSharedMemory%1: Neexistuje%1: doesn't exist QSharedMemory%1: Neexistuje%1: doesn't exists QSharedMemory<%1: Vyvoln ftok se nezdaYilo%1: ftok failed QSharedMemory*%1: Neplatn velikost%1: invalid size QSharedMemory%1: Chybn kl  %1: key error QSharedMemoryF%1: Neplatn daj u kl e (przdn)%1: key is empty QSharedMemory%1: NepYipojen%1: not attached QSharedMemory@%1: Nejsou ji~ pou~iteln zdroje%1: out of resources QSharedMemory&%1: PYstup odepYen%1: permission denied QSharedMemoryH%1: Vyhledn velikosti se nezdaYilo%1: size query failed QSharedMemoryf%1: Bylo dosa~eno systmem podmnn meze velikosti$%1: system-imposed size restrictions QSharedMemory2%1: UzavYen se nezdaYilo%1: unable to lock QSharedMemory>%1: NepodaYilo se vytvoYit kl %1: unable to make key QSharedMemoryX%1: NepodaYilo se nastavit kl pro uzavYen%1: unable to set key on lock QSharedMemoryB%1: UzavYen se nepodaYilo zruait%1: unable to unlock QSharedMemory(%1: Neznm chyba %2%1: unknown error %2 QSharedMemory++ QShortcutPYidat zlo~ku Add Favorite QShortcutUpravit jasAdjust Brightness QShortcutAltAlt QShortcutAplikace vlevoApplication Left QShortcutAplikace vpravoApplication Right QShortcut*Zmnit zvukovou stopuAudio Cycle Track QShortcut*Zvuk pYeto it dopYedu Audio Forward QShortcut,Zvuk pYehrvat nhodnAudio Random Play QShortcutOpakovat zvuk Audio Repeat QShortcut$Zvuk pYeto it zpt Audio Rewind QShortcutPry Away QShortcutZptBack QShortcutZpt dopYedu Back Forward QShortcutBackspace Backspace QShortcutZpt-TabBacktab QShortcutZeslen baso Bass Boost QShortcut Basy - Bass Down QShortcut Basy +Bass Up QShortcutBaterieBattery QShortcutModrozub Bluetooth QShortcut KnihaBook QShortcutProhl~e Browser QShortcutCDCD QShortcutKalkula ka Calculator QShortcut VolnCall QShortcut ZaostYen kamery Camera Focus QShortcutZvrka kameryCamera Shutter QShortcutCaps Lock Caps Lock QShortcutCapsLockCapsLock QShortcut SmazatClear QShortcutSmazat pYstup Clear Grab QShortcut ZavYtClose QShortcutVstup pro kd Code input QShortcutSpole enstv Community QShortcutKontext1Context1 QShortcutKontext2Context2 QShortcutKontext3Context3 QShortcutKontext4Context4 QShortcutKoprovatCopy QShortcutCtrlCtrl QShortcutVyjmoutCut QShortcutDOSDOS QShortcut DeleteDel QShortcut DeleteDelete QShortcutZobrazitDisplay QShortcutDokumenty Documents QShortcutDoloDown QShortcutEisu Posun Eisu Shift QShortcutEisu PYepna  Eisu toggle QShortcutVysunoutEject QShortcutEndEnd QShortcut EnterEnter QShortcutEscEsc QShortcut EscapeEscape QShortcutF%1F%1 QShortcutOblben Favorites QShortcutFinanceFinance QShortcutObrtitFlip QShortcutDopYeduForward QShortcutHraGame QShortcutDo tohoGo QShortcut HangulHangul QShortcutHangul Banja Hangul Banja QShortcutHangul konec Hangul End QShortcutHangul Hanja Hangul Hanja QShortcutHangul Jamo Hangul Jamo QShortcutHangul Jeonja Hangul Jeonja QShortcut Hangul PostHanjaHangul PostHanja QShortcutHangul PreHanjaHangul PreHanja QShortcutHangul Romaja Hangul Romaja QShortcutHangul zvlatnHangul Special QShortcutHangul za tek Hangul Start QShortcutPovsitHangup QShortcutHankakuHankaku QShortcutNpovdaHelp QShortcut HenkanHenkan QShortcutPYezimovat Hibernate QShortcutHiraganaHiragana QShortcut"Hiragana KatakanaHiragana Katakana QShortcut ProbhHistory QShortcutHomeHome QShortcutDomc kancelY Home Office QShortcut Domovsk strnka Home Page QShortcut"Doporu en odkazy Hot Links QShortcut InsertIns QShortcut InsertInsert QShortcutKana Zmek Kana Lock QShortcutKany Posun Kana Shift QShortcut Kand~iKanji QShortcutKatakanaKatakana QShortcut*Sn~it jas klvesniceKeyboard Brightness Down QShortcut*Zvait jas klvesniceKeyboard Brightness Up QShortcutJZapnout/Vypnout podsvcen klvesniceKeyboard Light On/Off QShortcut$Nabdka klvesnice Keyboard Menu QShortcutFOpakovan vyt en poslednho  slaLast Number Redial QShortcutSpustit (0) Launch (0) QShortcutSpustit (1) Launch (1) QShortcutSpustit (2) Launch (2) QShortcutSpustit (3) Launch (3) QShortcutSpustit (4) Launch (4) QShortcutSpustit (5) Launch (5) QShortcutSpustit (6) Launch (6) QShortcutSpustit (7) Launch (7) QShortcutSpustit (8) Launch (8) QShortcutSpustit (9) Launch (9) QShortcutSpustit (A) Launch (A) QShortcutSpustit (B) Launch (B) QShortcutSpustit (C) Launch (C) QShortcutSpustit (D) Launch (D) QShortcutSpustit (E) Launch (E) QShortcutSpustit (F) Launch (F) QShortcutSpustit e-mail Launch Mail QShortcut"Spustit pYehrva  Launch Media QShortcut VlevoLeft QShortcutOsvtlen LightBulb QShortcutOdhlsit seLogoff QShortcutPYedn dl Mail Forward QShortcutTrhMarket QShortcut MassyoMassyo QShortcut Dala Media Next QShortcut,Pozastaven pYehrvn Media Pause QShortcutPYehrvn Media Play QShortcutPYedchozMedia Previous QShortcut Nahrt Media Record QShortcut&Zastavit pYehrvn Media Stop QShortcut SchozeMeeting QShortcutMenuMenu QShortcutNabdka PBMenu PB QShortcut Posel Messenger QShortcutMetaMeta QShortcut(Sn~it jas obrazovkyMonitor Brightness Down QShortcut(Zvait jas obrazovkyMonitor Brightness Up QShortcutMuhenkanMuhenkan QShortcutVce nvrhoMultiple Candidate QShortcut HudbaMusic QShortcutMoje mstaMy Sites QShortcut ZprvyNews QShortcutNeNo QShortcutNum LockNum Lock QShortcutNumLockNumLock QShortcut*Zahlen-Feststelltaste Number Lock QShortcutOtevYt URLOpen URL QShortcut VolbaOption QShortcutObraz dolo Page Down QShortcutPage UpPage Up QShortcut Vlo~itPaste QShortcut PausePause QShortcut PgDownPgDown QShortcutPgUpPgUp QShortcutTelefonPhone QShortcutObrzkyPictures QShortcutVypnout Power Off QShortcutPYedchoz nvrhPrevious Candidate QShortcut PrintPrint QShortcutPrint Screen Print Screen QShortcutObnovitRefresh QShortcutNahrt znovuReload QShortcutOdpovdtReply QShortcut ReturnReturn QShortcut VpravoRight QShortcut RomajiRomaji QShortcutOt et oknyRotate Windows QShortcutOt en KB Rotation KB QShortcutOt en PB Rotation PB QShortcut Ulo~itSave QShortcut.SpoYi /`etYi obrazovky Screensaver QShortcutScroll Lock Scroll Lock QShortcutScrollLock ScrollLock QShortcut HledatSearch QShortcut VybratSelect QShortcut PoslatSend QShortcut ShiftShift QShortcut ObchodShop QShortcutRe~im spnkuSleep QShortcutMezernkSpace QShortcut"OvYen pravopisu Spellchecker QShortcut$Rozdlit obrazovku Split Screen QShortcut$Tabulkov dokument Spreadsheet QShortcutV pohotovostiStandby QShortcutStopStop QShortcutTitulkySubtitle QShortcutPodporaSupport QShortcutPozastavitSuspend QShortcut SysReqSysReq QShortcut}dost systmuSystem Request QShortcutTabTab QShortcutPanel s koly Task Panel QShortcutTerminlTerminal QShortcut asTime QShortcut,PYepnout volat/zavsitToggle Call/Hangup QShortcut:PYepnout pYehrvat/pozastavitToggle Media Play/Pause QShortcutNstrojeTools QShortcutHlavn nabdkaTop Menu QShortcutTourokuTouroku QShortcutCestovnTravel QShortcutVaky - Treble Down QShortcutVaky + Treble Up QShortcut$Ultra airok psmoUltra Wide Band QShortcut NahoruUp QShortcut VideoVideo QShortcut PohledView QShortcut Hlasov vyt en Voice Dial QShortcutHlasitost - Volume Down QShortcut"Ztlumit hlasitost Volume Mute QShortcutHlasitost + Volume Up QShortcutInternetWWW QShortcutProbuditWake Up QShortcut$Internetov kameraWebCam QShortcutBezdrtWireless QShortcut Zpracovn textuWord Processor QShortcutXFerXFer QShortcutAnoYes QShortcutZenkakuZenkaku QShortcutZenkaku HankakuZenkaku Hankaku QShortcutPYibl~itZoom In QShortcutOddlitZoom Out QShortcut iTouchiTouch QShortcutO stranu dolo Page downQSliderO stranu doleva Page leftQSlider O stranu doprava Page rightQSliderO stranu nahoruPage upQSlider PolohaPositionQSlider@Tento typ adresy nen podporovnAddress type not supportedQSocks5SocketEngine:SOCKSv5 server odmtl spojen(Connection not allowed by SOCKSv5 serverQSocks5SocketEngineLProxy server pYed asn ukon il spojen&Connection to proxy closed prematurelyQSocks5SocketEngineHProxy server odmtl navzn spojenConnection to proxy refusedQSocks5SocketEnginenPYi spojen s proxy serverem byl pYekro en  asov limitConnection to proxy timed outQSocks5SocketEngine\Vaeobecn chyba pYi spojen s SOCKSv5 serveremGeneral SOCKSv5 server failureQSocks5SocketEngine\ asov limit pro seovou operaci byl pYekro enNetwork operation timed outQSocks5SocketEnginePAutentizace u proxy serveru se nezdaYilaProxy authentication failedQSocks5SocketEngineXAutentizace u proxy serveru se nezdaYila: %1Proxy authentication failed: %1QSocks5SocketEngine@Proxy server se nepodaYilo najitProxy host not foundQSocks5SocketEngine>Chyba protokolu (SOCKS verze 5)SOCKS version 5 protocol errorQSocks5SocketEngineHTento SOCKSv5 pYkaz nen podporovnSOCKSv5 command not supportedQSocks5SocketEngineTTL uplynul TTL expiredQSocks5SocketEngine|Byl obdr~en neznm chybov kd od SOCKSv5 proxy serveru: 0x%1%Unknown SOCKSv5 proxy error code 0x%1QSocks5SocketEngine ZruaitCancelQSoftKeyManager HotovoDoneQSoftKeyManagerUkon itExitQSoftKeyManagerOKOkQSoftKeyManager VolbyOptionsQSoftKeyManager VybratSelectQSoftKeyManagerMnLessQSpinBoxVceMoreQSpinBox ZruaitCancelQSqlZruait zmny?Cancel your edits?QSqlPotvrditConfirmQSql DeleteDeleteQSql&Smazat tento zpis?Delete this record?QSql Vlo~itInsertQSqlNeNoQSqlUlo~it zmny? Save edits?QSqlObnovitUpdateQSqlAnoYesQSqlBez kl e nelze poskytnout ~dn osvd en k volnmu pou~it, %1,Cannot provide a certificate with no key, %1 QSslSocketZNepodaYilo se vytvoYit ~dn kontext SSL (%1)Error creating SSL context (%1) QSslSocketJNepodaYilo se vytvoYit sezen SSL, %1Error creating SSL session, %1 QSslSocketJNepodaYilo se vytvoYit sezen SSL: %1Error creating SSL session: %1 QSslSocket`Bhem startu SSL protokolu se vyskytla chyba: %1Error during SSL handshake: %1 QSslSocketRNepodaYilo se nahrt mstn osvd en, %1#Error loading local certificate, %1 QSslSocketLSoukrom kl se nepodaYilo nahrt, %1Error loading private key, %1 QSslSocket>PYi  ten se vyskytla chyba: %1Error while reading: %1 QSslSockethNeplatn  i przdn seznam se aifrovacmi kl i (%1)!Invalid or empty cipher list (%1) QSslSocketL}dn z osvd en se nepodaYilo ovYit!No certificates could be verified QSslSocket}dn chybaNo error QSslSocketlJedno z osvd en osvd ovacho msta (CA) je neplatn%One of the CA certificates is invalid QSslSocketVSoukrom kl nedosvd uje veYejn kl , %1+Private key does not certify public key, %1 QSslSocketZDlka cesty 'basicConstraints'byla pYekro ena QUndoModel ZnovuRedo QUndoStackZptUndo QUndoStack:Vlo~it kontroln znak Unicode Insert Unicode control characterQUnicodeControlCharacterMenuzLRE Za tek zapuatn zleva doprava (right-to-left embedding)$LRE Start of left-to-right embeddingQUnicodeControlCharacterMenuZLRM Zna ka zleva doprava (Left-to-right mark)LRM Left-to-right markQUnicodeControlCharacterMenutLRO Za tek zruaen zleva doprava (left-to-right override)#LRO Start of left-to-right overrideQUnicodeControlCharacterMenuxPDF Vsunout smrov formtovn (Pop directional formatting)PDF Pop directional formattingQUnicodeControlCharacterMenuzRLE Za tek zapuatn zprava doleva (right-to-left embedding)$RLE Start of right-to-left embeddingQUnicodeControlCharacterMenuZRLM Zna ka zprava doleva (Right-to-left mark)RLM Right-to-left markQUnicodeControlCharacterMenutRLO Za tek zruaen zprava doleva (right-to-left override)#RLO Start of right-to-left overrideQUnicodeControlCharacterMenubZWJ Spojova s nulovou aYkou (Zero width joiner)ZWJ Zero width joinerQUnicodeControlCharacterMenupZWNJ Nespojova s nulovou aYkou (Zero width non-joiner)ZWNJ Zero width non-joinerQUnicodeControlCharacterMenu`ZWSP Prostor s nulovou aYkou (Zero width space)ZWSP Zero width spaceQUnicodeControlCharacterMenu2Adresu (URL) nelze ukzatCannot show URL QWebFrame6Tento mime typ nelze ukzatCannot show mimetype QWebFrame"Soubor neexistujeFile does not exist QWebFrameXNahrn rmce bylo pYeruaeno zmnou smrnice'Frame load interrupted by policy change QWebFrame,Po~adavek byl odmtnutRequest blocked QWebFrame(Po~adavek byl zruaenRequest cancelled QWebFrame"%1 (%2x%3 pixelo)Title string for images%1 (%2x%3 pixels)QWebPageJ%1 dny %2 hodiny %3 minuty %4 sekundy&%1 days %2 hours %3 minutes %4 secondsQWebPage<%1 hodiny %2 minuty %3 sekundy%1 hours %2 minutes %3 secondsQWebPage(%1 minuty %2 sekundy%1 minutes %2 secondsQWebPage%1 sekundy %1 secondsQWebPagejeden soubor%n soubory%n souboronumber of chosen file %n file(s)QWebPage$PYidat do slovnku Learn Spelling context menu itemAdd To DictionaryQWebPageZarovnat vlevo Align LeftQWebPageZarovnat vpravo Align RightQWebPageZvukov prvek Audio ElementQWebPageRXzen pYehrvn zvuku a zobrazen stavu2Audio element playback controls and status displayQWebPage.Neplatn po~adavek HTTPBad HTTP requestQWebPage Za t pYehrvnBegin playbackQWebPage Tu nBold context menu itemBoldQWebPage KonecBottomQWebPageNa stYedCenterQWebPageNOvYovat mluvnici spole n s pravopisem-Check grammar with spelling context menu itemCheck Grammar With SpellingQWebPage"OvYen pravopisu Check spelling context menu itemCheck SpellingQWebPage:OvYovat pravopis bhem psan-Check spelling while typing context menu itemCheck Spelling While TypingQWebPageVybrat soubor(title for file button used in HTML forms Choose FileQWebPage>Smazat naposledy hledan vrazy>menu item in Recent Searches menu that empties menu's contentsClear recent searchesQWebPageKoprovatCopy context menu itemCopyQWebPage(Koprovat vyobrazenCopy Link context menu item Copy ImageQWebPage.Koprovat adresu odkazuCopy Link context menu item Copy LinkQWebPageStav filmuCurrent movie statusQWebPage( as pYehrvn filmuCurrent movie timeQWebPageVyjmoutCut context menu itemCutQWebPageVchoz+Default writing direction context menu itemDefaultQWebPage0Smazat a~ po konec slovaDelete to the end of the wordQWebPage4Smazat a~ po za tek slovaDelete to the start of the wordQWebPageSmr'Writing direction context sub-menu item DirectionQWebPageUplynul  as Elapsed TimeQWebPage PsmaFont context sub-menu itemFontsQWebPageRTla tko pro zobrazen na celou obrazovkuFullscreen ButtonQWebPageJt zptBack context menu itemGo BackQWebPageJt dopYeduForward context menu item Go ForwardQWebPage2Skrt pravopis a mluvnicimenu item titleHide Spelling and GrammarQWebPagePYehl~et Ignore Grammar context menu itemIgnoreQWebPagePYehl~et!Ignore Spelling context menu itemIgnoreQWebPageNeomezen  asIndefinite timeQWebPageOdsaditIndentQWebPage2Vlo~it seznam s odr~kamiInsert Bulleted ListQWebPage.Vlo~it  slovan seznamInsert Numbered ListQWebPage"Vlo~it nov YdekInsert a new lineQWebPage(Vlo~it nov odstavecInsert a new paragraphQWebPage"Provst prohldku!Inspect Element context menu itemInspectQWebPageKurzvaItalic context menu itemItalicQWebPage<Upozornn od JavaScriptu - %1JavaScript Alert - %1QWebPage:Potvrzen od JavaScriptu - %1JavaScript Confirm - %1QWebPage4Pot~e s JavaScriptem - %1JavaScript Problem - %1QWebPage2Vzva od JavaScriptu - %1JavaScript Prompt - %1QWebPageDo blokuJustifyQWebPageLev okraj Left edgeQWebPageZleva doprava Left to RightQWebPage}iv pYenosLive BroadcastQWebPageNahrv se... Loading...QWebPage,Podvat se do slovnku'Look Up in Dictionary context menu itemLook Up In DictionaryQWebPage0Chybjc pYdavn modulMissing Plug-inQWebPageTUkazatel polohy posunout a~ na konec bloku'Move the cursor to the end of the blockQWebPageVUkazatel polohy posunout na konec dokumentu*Move the cursor to the end of the documentQWebPageNUkazatel polohy posunout na konec Ydku&Move the cursor to the end of the lineQWebPage\Ukazatel polohy posunout k nsledujcmu znaku%Move the cursor to the next characterQWebPage\Ukazatel polohy posunout k nsledujcmu Ydku Move the cursor to the next lineQWebPage\Ukazatel polohy posunout k nsledujcmu slovu Move the cursor to the next wordQWebPageXUkazatel polohy posunout k pYedchozmu znaku)Move the cursor to the previous characterQWebPageVUkazatel polohy posunout na pYedchoz Ydku$Move the cursor to the previous lineQWebPageXUkazatel polohy posunout k pYedchozmu slovu$Move the cursor to the previous wordQWebPageRUkazatel polohy posunout na za tek bloku)Move the cursor to the start of the blockQWebPageZUkazatel polohy posunout na za tek dokumentu,Move the cursor to the start of the documentQWebPageRUkazatel polohy posunout na za tek Ydku(Move the cursor to the start of the lineQWebPage as pYehrvnMovie time scrubberQWebPageFPalec pro nastaven  asu pYehrvnMovie time scrubber thumbQWebPage*Tla tko pro ztlumen Mute ButtonQWebPage*Ztlumit zvukov stopyMute audio tracksQWebPage8Nebyly nalezeny ~dn nvrhy"No Guesses Found context menu itemNo Guesses FoundQWebPage2Nebyl vybrn ~dn souborJtext to display in file button used in HTML forms when no file is selectedNo file selectedQWebPageRNeexistuj ~dn naposledy hledan vrazyvLabel for only item in menu that appears when clicking on the search field image, when no searches have been performedNo recent searchesQWebPageOtevYt rmec*Open Frame in New Window context menu item Open FrameQWebPage>Vyobrazen otevYt v novm okn*Open Image in New Window context menu item Open ImageQWebPage*OtevYt adresu odkazuOpen Link context menu item Open LinkQWebPage(OtevYt v novm okn$Open in New Window context menu itemOpen in New WindowQWebPageZruait odsazenOutdentQWebPage ObrysOutline context menu itemOutlineQWebPageO stranu dolo Page downQWebPageO stranu doleva Page leftQWebPage O stranu doprava Page rightQWebPageO stranu nahoruPage upQWebPage Vlo~itPaste context menu itemPasteQWebPage0Vlo~it a odpovdat styluPaste and Match StyleQWebPage0Tla tko pro pozastaven Pause ButtonQWebPage*Pozastavit pYehrvnPause playbackQWebPage.Tla tko pro pYehrvn Play ButtonQWebPagehPYehrvat film v re~imu zobrazen na celou obrazovkuPlay movie in full-screen modeQWebPage0Dosavadn hledan vrazyrlabel for first item in the menu that appears when clicking on the search field image, used as embedded menu titleRecent searchesQWebPageJDosa~eno krajn meze pro pYesmrovnRedirection limit reachedQWebPageNahrt znovuReload context menu itemReloadQWebPageZbvajc  asRemaining TimeQWebPage@Zbvajc  as z pYehrvn filmuRemaining movie timeQWebPage*Odstranit formtovnRemove formattingQWebPage Vrtit5default label for Reset buttons in forms on web pagesResetQWebPage6Vrtit film na skute n  as#Return streaming movie to real-timeQWebPageLTla tko pro nvrat ke skute nmu  asuReturn to Real-time ButtonQWebPage,Tla tko pro pYeto en Rewind ButtonQWebPage$PYeto it film zpt Rewind movieQWebPagePrav okraj Right edgeQWebPageZprava doleva Right to LeftQWebPage"Ulo~it vyobrazen Download Image context menu item Save ImageQWebPageUlo~it odkaz...&Download Linked File context menu item Save Link...QWebPageProj~dt dolo Scroll downQWebPage Proj~dt a~ sem Scroll hereQWebPage Proj~dt doleva Scroll leftQWebPage"Proj~dt doprava Scroll rightQWebPage Proj~dt nahoru Scroll upQWebPageHledat na sti Search The Web context menu itemSearch The WebQWebPage6Tla tko pro hledn dozaduSeek Back ButtonQWebPage8Tla tko pro hledn dopYeduSeek Forward ButtonQWebPage*Rychl zptn hlednSeek quickly backQWebPage.Rychl dopYedn hlednSeek quickly forwardQWebPageVybrat vae Select allQWebPage0Vybrat a~ po konec blokuSelect to the end of the blockQWebPage8Vybrat a~ po konec dokumentu!Select to the end of the documentQWebPage4Vybrat a~ po za tek YdkuSelect to the end of the lineQWebPage:Vybrat a~ po nsledujc znakSelect to the next characterQWebPage<Vybrat a~ po nsledujc YdekSelect to the next lineQWebPage<Vybrat a~ po nsledujc slovoSelect to the next wordQWebPage6Vybrat a~ po pYedchoz znak Select to the previous characterQWebPage8Vybrat a~ po pYedchoz YdekSelect to the previous lineQWebPage8Vybrat a~ po pYedchoz slovoSelect to the previous wordQWebPage4Vybrat a~ po za tek bloku Select to the start of the blockQWebPage<Vybrat a~ po za tek dokumentu#Select to the start of the documentQWebPage4Vybrat a~ po za tek YdkuSelect to the start of the lineQWebPage4Ukzat pravopis a mluvnicimenu item titleShow Spelling and GrammarQWebPagePosuvnkSliderQWebPagePalec posuvnku Slider ThumbQWebPagePravopis*Spelling and Grammar context sub-menu itemSpellingQWebPagedaj o stavuStatus DisplayQWebPageZastavitStop context menu itemStopQWebPagePYeakrtnuto StrikethroughQWebPage PoslatQSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPage Poslat6default label for Submit buttons in forms on web pagesSubmitQWebPageDoln index SubscriptQWebPageHorn index SuperscriptQWebPageSmr psan$Text direction context sub-menu itemText DirectionQWebPageVypad to na to, ~e skript na tto stran m pot~e. Chcete tento skript zastavit?RThe script on this page appears to have a problem. Do you want to stop the script?QWebPage~Tento rejstYk m funkci hledn. Zadejte njak hledan vraz:_text that appears at the start of nearly-obsolete web pages in the form of a 'searchable index'3This is a searchable index. Enter search keywords: QWebPageZa tekTopQWebPagePodtr~enUnderline context menu item UnderlineQWebPageNeznm+Unknown filesize FTP directory listing itemUnknownQWebPage:Tla tko pro zruaen ztlumen Unmute ButtonQWebPage<Zruait ztlumen zvukovch stopUnmute audio tracksQWebPageVideoprvek Video ElementQWebPageRXzen pYehrvn videa a zobrazen stavu2Video element playback controls and status displayQWebPage$Web Inspektor - %2Web Inspector - %2QWebPageCo je toto? What's This?QWhatsThisAction**QWidgetDo&kon it&FinishQWizard&Npovda&HelpQWizard &Dala&NextQWizard&Dala >&Next >QWizard< &Zpt< &BackQWizard ZruaitCancelQWizard Pou~tCommitQWizardPokra ovatContinueQWizard HotovoDoneQWizardJt zptGo BackQWizardNpovdaHelpQWizard%1 - [%2] %1 - [%2] QWorkspace&ZavYt&Close QWorkspacePo&sunout&Move QWorkspace&Obnovit&Restore QWorkspace Zmnit &velikost&Size QWorkspace&Odvinout&Unshade QWorkspace ZavYtClose QWorkspaceZv&tait Ma&ximize QWorkspace&Zmenait Mi&nimize QWorkspaceZmenaitMinimize QWorkspaceObnovit Restore Down QWorkspace&NavinoutSh&ade QWorkspace"Zostat v &popYed Stay on &Top QWorkspacechybjc prohlaen kdovn nebo prohlaen samostatnosti pYi  ten prohlaen XMLYencoding declaration or standalone declaration expected while reading the XML declarationQXmlLChyba v prohlaen textu vnja entity3error in the text declaration of an external entityQXmlTpYi vyhodnocen poznmky se vyskytla chyba$error occurred while parsing commentQXmlPpYi vyhodnocen obsahu se vyskytla chyba$error occurred while parsing contentQXmlrpYi vyhodnocen definice typu dokumentu se vyskytla chyba5error occurred while parsing document type definitionQXmlNpYi vyhodnocen prvku se vyskytla chyba$error occurred while parsing elementQXmlPpYi vyhodnocen odkazu se vyskytla chyba&error occurred while parsing referenceQXml8chyba spuatn spotYebitelemerror triggered by consumerQXmlvv DTD nejsou dovoleny ~dn odkazy na vnja obecnou entitu;external parsed general entity reference not allowed in DTDQXmlv hodnot vlastnosti nejsou dovoleny ~dn odkazy na vnja obecnou entituGexternal parsed general entity reference not allowed in attribute valueQXmlxv DTD nejsou dovoleny ~dn odkazy na vnitYn obecnou entitu4internal general entity reference not allowed in DTDQXmlNneplatn nzev pro pokyn pro zpracovn'invalid name for processing instructionQXmlBna tomto mst je potYeba psmenoletter is expectedQXml8vce definic typu dokumentu&more than one document type definitionQXml~dn chybano error occurredQXml"rekurzivn entityrecursive entitiesQXmlvchybjc prohlaen samostatnosti pYi  ten prohlaen XMLAstandalone declaration expected while reading the XML declarationQXmlHZna ky prvko nejsou vkldny sprvn tag mismatchQXml neo ekvan znakunexpected characterQXml2neo ekvan konec souboruunexpected end of fileQXml|pou~vn nevyhodnocen odkaz na entitu v nesprvn souvislosti*unparsed entity reference in wrong contextQXmlPchybjc verze pYi  ten prohlaen XML2version expected while reading the XML declarationQXmlVnesprvn hodnota pro samostatn prohlaen&wrong value for standalone declarationQXmlTChyba %1 v %2, na Ydku %3, sloupec %4: %5)Error %1 in %2, at line %3, column %4: %5QXmlPatternistCLI"Chyba %1 v %2: %3Error %1 in %2: %3QXmlPatternistCLI Neznm umstnUnknown locationQXmlPatternistCLITVarovn v %1, na Ydku %2, sloupec %3: %4(Warning in %1, at line %2, column %3: %4QXmlPatternistCLI"Varovn v %1: %2Warning in %1: %2QXmlPatternistCLIj%1 nen platnm dajem VEXEJNHO identifiktoru (id).#%1 is an invalid PUBLIC identifier. QXmlStreamH%1 nen platnm nzvem pro kdovn.%1 is an invalid encoding name. QXmlStreamZ%1 nen platnm nzvem pokynu pro zpracovn.-%1 is an invalid processing instruction name. QXmlStreamDo ekvno, namsto toho obdr~eno ' , but got ' QXmlStream:Vlastnost byla nov vymezena.Attribute redefined. QXmlStream8Kdovn %1 nen podporovnoEncoding %1 is unsupported QXmlStreamPByl nalezen obsah s neplatnm kdovnm.(Encountered incorrectly encoded content. QXmlStream8Entita '%1' nen prohlaena.Entity '%1' not declared. QXmlStream Bylo  Expected  QXmlStream>Byly o ekvny daje o znacch.Expected character data. QXmlStreamJPYebyte n obsah za koncem dokumentu.!Extra content at end of document. QXmlStreamLNeplatn prohlaen jmennho prostoru.Illegal namespace declaration. QXmlStream$Neplatn znak XML.Invalid XML character. QXmlStream&Neplatn nzev XML.Invalid XML name. QXmlStream4Neplatn daj o verzi XML.Invalid XML version string. QXmlStreamXProhlaen XML obsahuje neplatnou vlastnost.%Invalid attribute in XML declaration. QXmlStream.Odkaz na neplatn znak.Invalid character reference. QXmlStream$Neplatn dokument.Invalid document. QXmlStream0neplatn hodnota entity.Invalid entity value. QXmlStreamPNzev pokynu pro zpracovn je neplatn.$Invalid processing instruction name. QXmlStreamtParametrick prohlaen entitynesm obsahovat ~dn NDATA.&NDATA in parameter entity declaration. QXmlStreambPYedpona jmennho prostoru '%1' nebyla prohlaena"Namespace prefix '%1' not declared QXmlStreamPo et otevrajcch prvko neodpovd neodpovd po tu zavrajcch prvko. Opening and ending tag mismatch. QXmlStream4PYed asn konec dokumentu.Premature end of document. QXmlStream@Byla zjiatna rekurzivn entita.Recursive entity detected. QXmlStreambV hodnot vlastnosti byla odkazovna entita '%1'.5Reference to external entity '%1' in attribute value. QXmlStreamHOdkaz na nevyhodnocenou entitu '%1'."Reference to unparsed entity '%1'. QXmlStreamNSled znako ']]>' nen v obsahu povolen.&Sequence ']]>' not allowed in content. QXmlStreamHodnota pro samostatnou vlastnost mo~e bt pouze "ano" nebo "ne"."Standalone accepts only yes or no. QXmlStream6O ekvn otevrajc prvek.Start tag expected. QXmlStreamSamostatn pseudovlastnost mus nsledovat bezprostYedn po kdovn.?The standalone pseudo attribute must appear after the encoding. QXmlStream4Na tomto mst neplatn '  Unexpected ' QXmlStream'%1' nen platnm znakem v daji veYejnho id, kter je tvoYen psmeny./Unexpected character '%1' in public id literal. QXmlStream@Tato verze XML nen podporovna.Unsupported XML version. QXmlStreambProhlaen XML se nenachz na za tku dokumentu.)XML declaration not at start of document. QXmlStreamVrazy %1 a %2 v~dy odpovdaj za tku nebo konci libovolnho Ydku.,%1 and %2 match the start and end of a line. QtXmlPatternsVlastnost %1 v %2 mus mt pou~it '%3' jako v zkladnm typu %4.9%1 attribute in %2 must have %3 use like in base type %4. QtXmlPatternsVlastnost %1 v odvozenm slo~itm typu mus bt jako v zkladnm typu %2.B%1 attribute in derived complex type must be %2 like in base type. QtXmlPatternsVlastnost %1 prvku %2 obsahuje neplatn obsah: {%3} nen hodnotou typu %4.T%1 attribute of %2 element contains invalid content: {%3} is not a value of type %4. QtXmlPatternshVlastnost %1 prvku %2 obsahuje neplatn obsah: {%3}.:%1 attribute of %2 element contains invalid content: {%3}. QtXmlPatternsHodnota vlastnosti %1 prvku %2 je vta ne~ hodnota vlastnosti %3.>%1 attribute of %2 element has larger value than %3 attribute. QtXmlPatterns\Vlastnost %1 prvku %2 mo~e bt jen %3 nebo %4.,%1 attribute of %2 element must be %3 or %4. QtXmlPatternsVlastnost %1 prvku %2 mus obsahovat %3, %4 nebo seznam adres (URL).A%1 attribute of %2 element must contain %3, %4 or a list of URIs. QtXmlPatternsHodnota vlastnosti %1 prvku %2 mus obsahovat bu %3 nebo jin hodnoty.F%1 attribute of %2 element must either contain %3 or the other values. QtXmlPatternszVlastnost %1 prvku %2 mo~e mt jen jednu z hodnot %3 nebo %4.9%1 attribute of %2 element must have a value of %3 or %4. QtXmlPatternsTVlastnost %1 prvku %2 mus mt hodnotu %3.3%1 attribute of %2 element must have a value of %3. QtXmlPatternsVlastnost %1 prvku %2 mus mt hodnotu %3, proto~e je nastavena vlastnost %4.R%1 attribute of %2 element must have the value %3 because the %4 attribute is set. QtXmlPatternsHVlastnost %1 prvku %2 nemo~e bt %3.*%1 attribute of %2 element must not be %3. QtXmlPatterns%1 nelze ur it%1 cannot be retrieved QtXmlPatternsj%1 nelze mt ~dn slo~it zkladn typ, kter m %2./%1 cannot have complex base type that has a %2. QtXmlPatternsZ%1 obsahuje strnku %2 s neplatnmi daty: %3.+%1 contains %2 facet with invalid data: %3. QtXmlPatterns4%1 obsahuje neplatn data.%1 contains invalid data. QtXmlPatternsr%1 obsahuje oktety, kter v kdovn %2 nejsou pYpustn.E%1 contains octets which are disallowed in the requested encoding %2. QtXmlPatternsPrvek %2 (%1) nen platnm omezenm pYepisovanho prvku (%3): %4.L%1 element %2 is not a valid restriction of the %3 element it redefines: %4. QtXmlPatternsrHodnota vlastnosti %2 prvku %1 mo~e bt pouze %3 nebo %4.C%1 element cannot have %2 attribute with value other than %3 or %4. QtXmlPatternsbHodnota vlastnosti %2 prvku %1 mo~e bt pouze %3.=%1 element cannot have %2 attribute with value other than %3. QtXmlPatterns^Prvek %1 nem ani vlastnost %2 ani podprvek %3.9%1 element has neither %2 attribute nor %3 child element. QtXmlPatternsRPrvek %1 nen v tto souvislosti dovolen.*%1 element is not allowed in this context. QtXmlPatternsHPrvek %1 nen v tto oblasti dovolen'%1 element is not allowed in this scope QtXmlPatternsKdy~ je pYtomna vlastnost %3, nesm se vyskytovat prvek %1 v prvku %2.G%1 element is not allowed inside %2 element if %3 attribute is present. QtXmlPatternsPrvek %1 nemo~e stanovit clov jmenn prostor %3 jako hodnotu vlastnosti %2.Y%1 element is not allowed to have the same %2 attribute value as the target namespace %3. QtXmlPatternsPrvek %1 mus mt bu vlastnost %2, nebo mt %3 nebo %4 jako podprvek.F%1 element must have either %2 attribute or %3 or %4 as child element. QtXmlPatternsVPrvek %1 mus mt bu vlastnost %2 nebo %3./%1 element must have either %2 or %3 attribute. QtXmlPatternstVlastnosti %2 a %3 se v prvku %1 nemohou objevit spole n.6%1 element must not have %2 and %3 attribute together. QtXmlPatternsVPrvek %1 vy~aduje bu vlastnost %2 nebo %3..%1 element requires either %2 or %3 attribute. QtXmlPatternsvPrvek %1 nesm mt vlastnost %3, kdy~ existuje podprvek %2.>%1 element with %2 child element must not have a %3 attribute. QtXmlPatternsVe schmatu bez jmennho prostoru mus mt prvek %1 vlastnost %2.V%1 element without %2 attribute is not allowed inside schema without target namespace. QtXmlPatternsRStrnky %1 a %2 se nemohou objevit spolu.-%1 facet and %2 facet cannot appear together. QtXmlPatternsStrnka %1 nesm bt %2, pokud je strnka %3 zkladnho typu %4.5%1 facet cannot be %2 if %3 facet of base type is %4. QtXmlPatternsStrnka %1 nesm bt %2 nebo %3, pokud je strnka %4 zkladnho typu %5.;%1 facet cannot be %2 or %3 if %4 facet of base type is %5. QtXmlPatternsLStrnka %1 se stYetv se strnkou %2. %1 facet collides with %2 facet. QtXmlPatternsZStrnka %1 obsahuje neplatn pravideln vraz,%1 facet contains invalid regular expression QtXmlPatternsZStrnka %1 obsahuje neplatnou hodnotu %2: %3.'%1 facet contains invalid value %2: %3. QtXmlPatternsStrnka %1 mus bt stejn nebo vta ne~ strnka %2 zkladnho typu.=%1 facet must be equal or greater than %2 facet of base type. QtXmlPatternsrStrnka %1 mus bt vta ne~ strnka %2 zkladnho typu.4%1 facet must be greater than %2 facet of base type. QtXmlPatternsStrnka %1 mus bt vta nebo stejn jako strnka %2 zkladnho typu.@%1 facet must be greater than or equal to %2 facet of base type. QtXmlPatternsrStrnka %1 mus bt mena ne~ strnka %2 zkladnho typu.1%1 facet must be less than %2 facet of base type. QtXmlPatternsRStrnka %1 mus bt mena ne~ strnka %2.$%1 facet must be less than %2 facet. QtXmlPatternsStrnka %1 mus bt mena nebo stejn jako strnka %2 zkladnho typu.=%1 facet must be less than or equal to %2 facet of base type. QtXmlPatternslStrnka %1 mus bt mena nebo stejn jako strnka %2.0%1 facet must be less than or equal to %2 facet. QtXmlPatternsStrnka %1 mus mt tut~ hodnotu, jakou m strnka %2 zkladnho typu.;%1 facet must have the same value as %2 facet of base type. QtXmlPatternsU %1 se lia po et pol od omezen toto~nosti %2, na kterou odkazuje.W%1 has a different number of fields from the identity constraint %2 that it references. QtXmlPatterns%1 m zstupn symbol vlastnosti (vzor hledn), ale jeho zkladn typ %2 nem.7%1 has attribute wildcard but its base type %2 has not. QtXmlPatterns%1 m ve svm zkladnm typu %2 v kruzch provdnou ddi nost.,%1 has inheritance loop in its base type %2. QtXmlPatterns%1 je slo~enm typem. Operace pYedveden u slo~ench typo nen mo~n. Mohou se ovaem provdt operace obsazen u atomrnch typo jako %2.s%1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works. QtXmlPatterns"%1 je neplatn %2%1 is an invalid %2 QtXmlPatterns%1 nen pro regulrn vrazy platnm pYznakem. Platnmi pYznaky jsou:?%1 is an invalid flag for regular expressions. Valid flags are: QtXmlPatternsL%1 nen platnm jmennm prostorem-URI.%1 is an invalid namespace URI. QtXmlPatternsN%1 nen platnm pravidelnm vrazem: %2/%1 is an invalid regular expression pattern: %2 QtXmlPatternsT%1 nen platnm nzvem pro Ye~im pYedlohy.$%1 is an invalid template mode name. QtXmlPatterns<%1 je neznmm typem schematu.%1 is an unknown schema type. QtXmlPatterns:Kdovn %1 nen podporovno.%1 is an unsupported encoding. QtXmlPatterns8%1 nen platn znak XML 1.0.$%1 is not a valid XML 1.0 character. QtXmlPatternsZ%1 nen platnm nzvem pokynu pro zpracovn.4%1 is not a valid name for a processing-instruction. QtXmlPatternsX%1 nen platn  seln daj tvoYen psmeny."%1 is not a valid numeric literal. QtXmlPatterns%1 nen platnm clovm nzvem pokynu pro zpracovn. Mus to bt hodnota %2 jakou je napYklad %3.Z%1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3. QtXmlPatternsB%1 nen platnou hodnotou typu %2.#%1 is not a valid value of type %2. QtXmlPatternsN%1 nen celo selnm dajem o minutch.$%1 is not a whole number of minutes. QtXmlPatterns%1 nen dovoleno odvodit z %2 pomoc rozaYen, neboe posledn uveden ji ur uje jako kone nou.S%1 is not allowed to derive from %2 by extension as the latter defines it as final. QtXmlPatterns%1 nen dovoleno odvodit z %2 pomoc seznamu, neboe posledn uveden ji ur uje jako kone nou.N%1 is not allowed to derive from %2 by list as the latter defines it as final. QtXmlPatterns%1 nen dovoleno odvodit z %2 pomoc omezen, neboe posledn uveden ji ur uje jako kone nou.U%1 is not allowed to derive from %2 by restriction as the latter defines it as final. QtXmlPatterns%1 nen dovoleno odvodit z %2 pomoc sjednocen, neboe posledn uveden ji ur uje jako kone nou.O%1 is not allowed to derive from %2 by union as the latter defines it as final. QtXmlPatternsp%1 nesm mt  lensk typ se stejnm nzvem, jak m sm.E%1 is not allowed to have a member type with the same name as itself. QtXmlPatterns6%1 nesm mt ~dn strnky.%%1 is not allowed to have any facets. QtXmlPatterns%1 nen atomrnm typem. Operace pYedstaven se daj provdt pouze s atomrnmi typy.C%1 is not an atomic type. Casting is only possible to atomic types. QtXmlPatterns%1 se nenachz v oblasti pod prohlaenm vlastnost. Vaimnte si, ~e funkce zaveden schmatu nen podporovna.g%1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported. QtXmlPatterns0%1 je podle %2 neplatn. %1 is not valid according to %2. QtXmlPatternsH%1 nen platn jako hodnota typu %2.&%1 is not valid as a value of type %2. QtXmlPatternsRVraz '%1' odpovd znakom pro nov Ydek%1 matches newline characters QtXmlPatternsPo %1 mus nsledovat %2 nebo %3; nesm se objevit na konci nahrazovacho Yetzce.J%1 must be followed by %2 or %3, not at the end of the replacement string. QtXmlPatternsVlastnost %1 odvozenho zstupnho symbolu (vzoru hledn) nen platnm omezenm %2 zkladnho zstupnho symbolu (vzoru hledn)H%1 of derived wildcard is not a valid restriction of %2 of base wildcard QtXmlPatternsVlastnost %1 nebo %2 odkazu %3 neodpovd prohlaen vlastnosti %4.T%1 or %2 attribute of reference %3 does not match with the attribute declaration %4. QtXmlPatterns%1 odkazuje na omezen toto~nosti %2, kter nen ani prvek '%3' ani '%4'.A%1 references identity constraint %2 that is no %3 or %4 element. QtXmlPatternsZ%1 odkazuje na neznm prvek %4 (%2 nebo %3).*%1 references unknown %2 or %3 element %4. QtXmlPatterns%1 vy~aduje alespoH %n argument; daj %2 je z toho dovodu neplatn.%1 vy~aduje alespoH %n argumenty; daj %2 je z toho dovodu neplatn.%1 vy~aduje alespoH %n argumenty; daj %2 je z toho dovodu neplatn.=%1 requires at least %n argument(s). %2 is therefore invalid. QtXmlPatternsp%1 m jen %n argument; daj %2 z tohoto dovodu neplatn.r%1 m jen %n argumenty; daj %2 z tohoto dovodu neplatn.r%1 m jen %n argumenty; daj %2 z tohoto dovodu neplatn.9%1 takes at most %n argument(s). %2 is therefore invalid. QtXmlPatterns%1 byl voln.%1 was called. QtXmlPatternsStrnky %1, %2, %3, %4, %5 a %6 nejsou pYi odvozen (ddi nosti) pomoc seznamu dovoleny.F%1, %2, %3, %4, %5 and %6 facets are not allowed when derived by list. QtXmlPatternsfVlastnost %1 obsahuje neplatn zposobil nzev: %2.2'%1' attribute contains invalid QName content: %2. QtXmlPatterns6Poznmka nesm obsahovat %1A comment cannot contain %1 QtXmlPatterns8Poznmka nesm kon it na %1.A comment cannot end with a %1. QtXmlPatternsNarazilo se na vtvor, kter v nynjam jazyce nen povolen (%1).LA construct was encountered which is disallowed in the current language(%1). QtXmlPatternsProhlaen vchozch jmennch prostoro mus stt pYed prohlaenmi funkc-, promnnch- nebo prohlaenmi voleb.^A default namespace declaration must occur before function, variable, and option declarations. QtXmlPatternsnByl nalezen chybn stavitel pYmho prvku. %1 kon %2.EA direct element constructor is not well-formed. %1 is ended with %2. QtXmlPatternsDJi~ existuje funkce s podpisem %1.0A function already exists with the signature %1. QtXmlPatternsKnihovn modul nemo~e bt posouzen pYmo, mus bt zaveden z hlavnho modulu.VA library module cannot be evaluated directly. It must be imported from a main module. QtXmlPatternsTParameter funkce nelze prohlsit za tunel.Can not process unknown element %1, expected elements are: %2. QtXmlPatternshPodprvek v oblasti chyb; mo~nmi podprvky jsou: %1.HChild element is missing in that scope, possible child elements are: %1. QtXmlPatternsVV kruzch provdn skupinov odkaz pro %1. Circular group reference for %1. QtXmlPatternsdV kruzch provdn ddi nost v zkladnm typu %1.%Circular inheritance of base type %1. QtXmlPatterns`V kruzch provdn ddi nost pYi sjednocen %1.!Circular inheritance of union %1. QtXmlPatternsSlo~it typ %1 nemo~e bt odvozen pomoc rozaYen z %2, neboe posledn obsahuje prvek '%3' ve svm modelu obsahu.nComplex type %1 cannot be derived by extension from %2 as the latter contains %3 element in its content model. QtXmlPatternstSlo~it typ %2 nemo~e bt odvozen ze zkladnho typu %2%3.6Complex type %1 cannot be derived from base type %2%3. QtXmlPatternsSlo~it typ %1 obsahuje vlastnost %2 s omezenm hodnoty, typ je ale odvozen z %3._Complex type %1 contains attribute %2 that has value constraint but type that inherits from %3. QtXmlPatternsZSlo~it typ %1 obsahuje vlastnost %2 dvakrt.,Complex type %1 contains attribute %2 twice. QtXmlPatternsSlo~it typ %1 obsahuje dv rozdln vlastnosti, ob s typy, kter jsou odvozeny z %2.WComplex type %1 contains two different attributes that both have types derived from %2. QtXmlPatternstSlo~it typ %1 m zdvojen prvek %2 ve svm modelu obsahu.?Complex type %1 has duplicated element %2 in its content model. QtXmlPatternsFSlo~it typ %1 m ne-nemnn obsah..Complex type %1 has non-deterministic content. QtXmlPatternsJSlo~it typ %1 nemo~e bt abstraktn..Complex type %1 is not allowed to be abstract. QtXmlPatternsRSlo~it typ %1 mus mt jednoduch obsah.)Complex type %1 must have simple content. QtXmlPatternsRSlo~it typ %1 mus mt jednoduch obsah.DComplex type %1 must have the same simple type as its base class %2. QtXmlPatternsSlo~it typ %1 s jednoduchm obsahem nemo~e bt odvozen ze slo~itho zkladnho typu %2.PComplex type %1 with simple content cannot be derived from complex base type %2. QtXmlPatternsSlo~it typ odvozenho prvku %1 nemo~e bt platn odvozen ze zkladnho prvku.OComplex type of derived element %1 cannot be validly derived from base element. QtXmlPatternsBSou st s ID %1 je ji~ stanovena.1Component with ID %1 has been defined previously. QtXmlPatternsModel obsahu slo~itho typu %1 obsahuje prvek %2; nelze jej proto odvodit pomoc rozaYen z ne-przdnho typu.pContent model of complex type %1 contains %2 element so it cannot be derived by extension from a non-empty type. QtXmlPatternsModel obsahu slo~itho typu %1 nen ~dnm platnm rozaYenm modelu obsahu %2.QContent model of complex type %1 is not a valid extension of content model of %2. QtXmlPatternsObsah vlastnosti %1 prvku %2 nemo~e pochzet ze jmennho prostoru %3.DContent of %1 attribute of %2 element must not be from namespace %3. QtXmlPatternsvObsah vlastnosti %1 neodpovd stanovenmu omezen hodnoty.@Content of attribute %1 does not match defined value constraint. QtXmlPatternsnObsah vlastnosti %1 neodpovd vymezen svho typu: %2.?Content of attribute %1 does not match its type definition: %2. QtXmlPatternslObsah prvku %1 neodpovd stanovenmu omezen hodnoty.>Content of element %1 does not match defined value constraint. QtXmlPatternsdObsah prvku %1 neodpovd vymezen svho typu: %2.=Content of element %1 does not match its type definition: %2. QtXmlPatternsBData typu %1 nemohou bt przdn.,Data of type %1 are not allowed to be empty. QtXmlPatternsbdaj o datu neodpovd strnce vzoru pro hledn./Date time content does not match pattern facet. QtXmlPatterns\daj o datu neodpovd strnce 'maxExclusive'.8Date time content does not match the maxExclusive facet. QtXmlPatterns\daj o datu neodpovd strnce 'maxInclusive'.8Date time content does not match the maxInclusive facet. QtXmlPatterns\daj o datu neodpovd strnce 'minExclusive'.8Date time content does not match the minExclusive facet. QtXmlPatterns\daj o datu neodpovd strnce 'minInclusive'.8Date time content does not match the minInclusive facet. QtXmlPatternsXdaj o datu nen obsa~en ve v tov strnce.9Date time content is not listed in the enumeration facet. QtXmlPatternsPdaj o dni %1 je neplatnm pro msc %2.Day %1 is invalid for month %2. QtXmlPatternsDdaj dne %1 je mimo rozsah %2..%3.#Day %1 is outside the range %2..%3. QtXmlPatternshDesetinn  slo neodpovd strnce 'fractionDigits'.;Decimal content does not match in the fractionDigits facet. QtXmlPatternsbDesetinn  slo neodpovd strnce 'totalDigits'.8Decimal content does not match in the totalDigits facet. QtXmlPatterns`Pro vlastnost %1 nen dostupn ~dn prohlaen.,Declaration for attribute %1 does not exist. QtXmlPatternsXPro prvek %1 nen dostupn ~dn prohlaen.*Declaration for element %1 does not exist. QtXmlPatternsRozaYen s mus pou~vat jako zposob ddi nosti (odvozen) pro %1, neboe zkladn typ %2 je jednoduchm typem.TDerivation method of %1 must be extension because the base type %2 is a simple type. QtXmlPatternslOdvozen vlastnost %1 neexistuje v zkladnm vymezen.;Derived attribute %1 does not exist in the base definition. QtXmlPatternsOdvozen vlastnost %1 neodpovd zstupnmu symbolu (vzoru hledn) v zkladnm vymezen.HDerived attribute %1 does not match the wildcard in the base definition. QtXmlPatternsOdvozen vymezen obsahuje prvek %1, kter v zkladnm vymezen neexistujeUDerived definition contains an %1 element that does not exists in the base definition QtXmlPatternsOdvozen prvek %1 nemo~e mt ~dnou vlastnost 'nillable', neboe zkladn prvek ~dnou nestanovuje.FDerived element %1 cannot be nillable as base element is not nillable. QtXmlPatternsOdvozen prvek %1 m slaba omezen hodnoty ne~ m zkladn  stice.BDerived element %1 has weaker value constraint than base particle. QtXmlPatternsV odvozenm prvku %1 chyb omezen hodnoty, jak je to stanoveno v zkladn  stici.KDerived element %1 is missing value constraint as defined in base particle. QtXmlPatternsOdvozen  stice dovoluje obsah, kter nen pYpustn pro zkladn  stici.IDerived particle allows content that is not allowed in the base particle. QtXmlPatternsDV odvozen  stici chyb prvek %1.'Derived particle is missing element %1. QtXmlPatternsOdvozen zstupn symbol (vzor hledn) nen ~dnou dl mno~inou zkladnho zstupnho symbolu (vzoru hledn).6Derived wildcard is not a subset of the base wildcard. QtXmlPatternsDlen hodnoty typu %1 prostYednictvm %2 (nen  selnou hodnotou) nen pYpustn.@Dividing a value of type %1 by %2 (not-a-number) is not allowed. QtXmlPatternsDlen hodnoty typu %1 prostYednictvm %2 nebo %3 (kladn nebo zporn nula) nen pYpustn.LDividing a value of type %1 by %2 or %3 (plus or minus zero) is not allowed. QtXmlPatternsLDlen (%1) nulou (%2) nen stanoveno.(Division (%1) by zero (%2) is undefined. QtXmlPatterns8Dokument nen schmatem XML.Document is not a XML schema. QtXmlPatterns~ slo s pohyblivou  rkou neodpovd strnce vzoru pro hledn.,Double content does not match pattern facet. QtXmlPatternsx slo s pohyblivou  rkou neodpovd strnce 'maxExclusive'.5Double content does not match the maxExclusive facet. QtXmlPatternsx slo s pohyblivou  rkou neodpovd strnce 'maxInclusive'.5Double content does not match the maxInclusive facet. QtXmlPatternsx slo s pohyblivou  rkou neodpovd strnce 'minExclusive'.5Double content does not match the minExclusive facet. QtXmlPatternsx slo s pohyblivou  rkou neodpovd strnce 'minInclusive'.5Double content does not match the minInclusive facet. QtXmlPatternsv slo s pohyblivou  rkou nen obsa~eno ve v tov strnce.6Double content is not listed in the enumeration facet. QtXmlPatterns`Nzev prvku %1 se vyskytuje v prvku %2 vcekrt.*Duplicated element names %1 in %2 element. QtXmlPatternsNZdvojen strnky v jednoduchm typu %1.$Duplicated facets in simple type %1. QtXmlPatternspdaj o dob trvn neodpovd strnce vzoru pro hledn..Duration content does not match pattern facet. QtXmlPatternsjdaj o dob trvn neodpovd strnce 'maxExclusive'.7Duration content does not match the maxExclusive facet. QtXmlPatternsjdaj o dob trvn neodpovd strnce 'maxInclusive'.7Duration content does not match the maxInclusive facet. QtXmlPatternsjdaj o dob trvn neodpovd strnce 'minExclusive'.7Duration content does not match the minExclusive facet. QtXmlPatternsjdaj o dob trvn neodpovd strnce 'minInclusive'.7Duration content does not match the minInclusive facet. QtXmlPatternsfdaj o dob trvn nen obsa~en ve v tov strnce.8Duration content is not listed in the enumeration facet. QtXmlPatterns|Nzvy parametro pYedloh mus bt jednozna n, %1 ji~ existuje.CEach name of a template parameter must be unique; %1 is duplicated. QtXmlPatternsSkute n Booleansk hodnota nemo~e bt vypo tna pro posloupnost ze dvou nebo vce atomrnch hodnot.aEffective Boolean Value cannot be calculated for a sequence containing two or more atomic values. QtXmlPatterns2Prvek %1 je ji~ stanoven.Element %1 already defined. QtXmlPatternsPrvek %1 nemo~e bt vydvn na pokra ovn, proto~e se objevuje mimo prvky dokumentu.OElement %1 can't be serialized because it appears outside the document element. QtXmlPatternsPrvek %1 nesm obsahovat ~dn jin prvky, proto~e m pevn obsah.DElement %1 cannot contain other elements, as it has a fixed content. QtXmlPatternsVPrvek %1 nemo~e mt stavitele posloupnosti..Element %1 cannot have a sequence constructor. QtXmlPatterns:Prvek %1 nemo~e mt podprvky. Element %1 cannot have children. QtXmlPatternsBPrvek %1 obsahuje neplatn obsah.$Element %1 contains invalid content. QtXmlPatternsRPrvek %1 obsahuje nepYpustn vlastnosti.+Element %1 contains not allowed attributes. QtXmlPatternsNPrvek %1 obsahuje nepYpustn podobsah..Element %1 contains not allowed child content. QtXmlPatternsNPrvek %1 obsahuje nepYpustn podprvek..Element %1 contains not allowed child element. QtXmlPatternsXPrvek %1 obsahuje nepYpustn textov obsah.-Element %1 contains not allowed text content. QtXmlPatternsRPrvek %1 obsahuje dv vlastnosti typu %2..Element %1 contains two attributes of type %2. QtXmlPatternsPPrvek %1 obsahuje neznmou vlastnost %2.)Element %1 contains unknown attribute %2. QtXmlPatternsPrvek %1 neodpovd omezen jmennho prostoru zstupnho symbolu (vzor hledn) v zkladn  stici.LElement %1 does not match namespace constraint of wildcard in base particle. QtXmlPatternsXPrvek %1 existuje dvakrt s rozdlnmi typy.-Element %1 exists twice with different types. QtXmlPatternsLPrvek %1 je prohlaen jako abstraktn.#Element %1 is declared as abstract. QtXmlPatterns4U prvku %1 chyb podprvek.$Element %1 is missing child element. QtXmlPatternsDPrvek %1 chyb v odvozen  stici.*Element %1 is missing in derived particle. QtXmlPatternsTU prvkuk %1 chyb vy~adovan vlastnost %2.,Element %1 is missing required attribute %2. QtXmlPatternsFPrvek %1 nesm stt na tomto mst.+Element %1 is not allowed at this location. QtXmlPatternszPrvek %1 nen v tto oblasti dovolen; mo~nmi prvky jsou: %2.CElement %1 is not allowed in this scope, possible elements are: %2. QtXmlPatternsPrvek %1 nesm mt omezen hodnoty, kdy~ je zkladn typ slo~it.QElement %1 is not allowed to have a value constraint if its base type is complex. QtXmlPatternsPrvek %1 nesm mt omezen hodnoty, kdy~ je jeho typ odvozen z %2.TElement %1 is not allowed to have a value constraint if its type is derived from %2. QtXmlPatternsPrvek %1 nesm patYit k skupin nahrazen, neboe nen celkovm prvkem.\Element %1 is not allowed to have substitution group affiliation as it is no global element. QtXmlPatternsLPrvek %1 nen v tto oblasti stanoven.(Element %1 is not defined in this scope. QtXmlPatternsTPrvek %1 nem zadnu vlastnost 'nillable'.Element %1 is not nillable. QtXmlPatternsBPrvek %1 mus stt jako posledn.Element %1 must come last. QtXmlPatternspPrvek %1 mus mt alespoH jednu z vlastnost %2 nebo %3.=Element %1 must have at least one of the attributes %2 or %3. QtXmlPatternsPrvek %1 mus mt bu jednu %2-vlastnost nebo se mus pou~vat stavitel posloupnosti.EElement %1 must have either a %2-attribute or a sequence constructor. QtXmlPatternsJPrvek m obsah, a koli je 'nillable'.1Element contains content although it is nillable. QtXmlPatternsDSkupina prvko %1 je ji~ stanovena.!Element group %1 already defined. QtXmlPatternszPrzdnou  stici nelze odvodit z  stice, kter nen przdn.9Empty particle cannot be derived from non-empty particle. QtXmlPatternsV tov strnka obsahuje neplatn obsah: {%1} nen hodnotou typu %2.KEnumeration facet contains invalid content: {%1} is not a value of type %2. QtXmlPatternsDPole %1 nem ~dn jednoduch typ.Field %1 has no simple type. QtXmlPatterns~Pevn omezen hodnoty nen dovoleno, pokud je prvek 'nillable'.:Fixed value constraint not allowed if element is nillable. QtXmlPatternsPevn omezen hodnoty prvku %1 se lia od omezen hodnoty zkladn  stici.TFixed value constraint of element %1 differs from value constraint in base particle. QtXmlPatterns>Hodnota ID %1 nen jednozna n.ID value '%1' is not unique. QtXmlPatternsNOmezen toto~nosti %1 je ji~ stanoveno.'Identity constraint %1 already defined. QtXmlPatternsKdy~ jsou zadny ob hodnoty s  asovmi znami, mus mt ten sam rozdl v  asov zn. %1 a %2 nejsou to sam a jsou tm pdem nepYpustn.bIf both values have zone offsets, they must have the same zone offset. %1 and %2 are not the same. QtXmlPatternsPrvek %1 nesm mt vlastnost %3 nebo %4, pokud nem vlastnost %2.EIf element %1 has no attribute %2, it cannot have attribute %3 or %4. QtXmlPatternsNelze zadat ~dnou pYedponu, jestli~e je prvn argument przdn nebo je przdn Yetzec znako (~dn jmenn prostor). Byla zadna pYedpona %1.If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified. QtXmlPatternsVe staviteli jmennho prostoru nesm mt hodnota jmennho prostoru przdnm Yetzcem.PIn a namespace constructor, the value for a namespace cannot be an empty string. QtXmlPatternsVe zjednoduaenm modulu stylovho listu mus bt pYtomna vlastnost %1.@In a simplified stylesheet module, attribute %1 must be present. QtXmlPatternsV XSL-T vyhledvacm vzoru se smj pou~vat jen osy %2 nebo %3, ne vaak %1.DIn an XSL-T pattern, axis %1 cannot be used, only axis %2 or %3 can. QtXmlPatterns|V XSL-T vyhledvacm vzoru nesm mt funkce %1 tYet argument.>In an XSL-T pattern, function %1 cannot have a third argument. QtXmlPatternsV XSL-T vyhledvacm vzoru se smj pro srovnvn pou~vat jen funkce %1 a %2, ne vaak %3.OIn an XSL-T pattern, only function %1 and %2, not %3, can be used for matching. QtXmlPatternsV XSL-T vyhledvacm vzoru mus bt prvn argument k funkci %1 pYi pou~it k hledn odkaz tvoYen psmeny nebo promnn.yIn an XSL-T pattern, the first argument to function %1 must be a literal or a variable reference, when used for matching. QtXmlPatternsV XSL-T vyhledvacm vzoru mus bt prvn argument k funkci %1 pYi pou~it k hledn Yetzec tvoYen psmeny.hIn an XSL-T pattern, the first argument to function %1 must be a string literal, when used for matching. QtXmlPatternsV nahrazen mo~e bt pou~it pouze %1, aby se chrnil sm, nebo %2, ne vaak pro %3MIn the replacement string, %1 can only be used to escape itself or %2, not %3 QtXmlPatternsV nahrazovacm Yetzci mus po %1 nsledovat alespoH jedna  slice, kdy~ nen chrnn znakem Escape.VIn the replacement string, %1 must be followed by at least one digit when not escaped. QtXmlPatternsdCelo seln dlen (%1) nulou (%2) nen stanoveno.0Integer division (%1) by zero (%2) is undefined. QtXmlPatternsdObsah zposobilho nzvu ('QName') je neplatn: %1.Invalid QName content: %1. QtXmlPatterns0PYedponu %1 nelze spojit+It is not possible to bind to the prefix %1 QtXmlPatterns8PYedponu %1 nelze prohlsit.*It is not possible to redeclare prefix %1. QtXmlPatterns%1 nelze ur it.'It will not be possible to retrieve %1. QtXmlPatternsbVlastnosti nesm nsledovat za jinmi druhy uzlo.AIt's not possible to add attributes after any other kind of node. QtXmlPatternsXSlo~kov typ %1 prvku %2 nemo~e bt vyYeaen..Item type %1 of %2 element cannot be resolved. QtXmlPatternsvSlo~kov typ zkladnho typu neodpovd slo~kovmu typu %1.6Item type of base type does not match item type of %1. QtXmlPatternsxSlo~kov typ jednoduchho typu %1 nemo~e bt slo~itm typem.5Item type of simple type %1 cannot be a complex type. QtXmlPatternsTOmezen kl e %1 obsahuje nepYtomn pole.)Key constraint %1 contains absent fields. QtXmlPatternsOmezen kl e %1 obsahuje odkazy na prvek %2, kter je 'nillable'.:Key constraint %1 contains references nillable element %2. QtXmlPatternsNObsah seznamu neodpovd strnce dlky.)List content does not match length facet. QtXmlPatternsZObsah seznamu neodpovd strnce 'maxLength'.,List content does not match maxLength facet. QtXmlPatternsZObsah seznamu neodpovd strnce 'minLength'.,List content does not match minLength facet. QtXmlPatternsfObsah seznamu neodpovd strnce vzoru pro hledn.*List content does not match pattern facet. QtXmlPatterns\Obsah seznamu nen obsa~en ve v tov strnce.4List content is not listed in the enumeration facet. QtXmlPatternsPNahran soubor se schmatem je neplatn.Loaded schema file is invalid. QtXmlPatterns^Na psan velkch/malch psmen nen brn zYetelMatches are case insensitive QtXmlPatterns lensk typ %1 nemo~e bt odvozen z  lenskho typu %2 ze zkladnho typu %4 %3.JMember type %1 cannot be derived from member type %2 of %3's base type %4. QtXmlPatternsV lensk typ %1 prvku %2 nemo~e bt vyYeaen.0Member type %1 of %2 element cannot be resolved. QtXmlPatternsv lensk typ jednoduchho typu %1 nemo~e bt slo~itm typem.7Member type of simple type %1 cannot be a complex type. QtXmlPatternsZaveden modulo mus nastat pYed prohlaenmi funkc, promnnch a voleb.MModule imports must occur before function, variable, and option declarations. QtXmlPatternsnDlen absolutn hodnoty (%1) nulou(%2) nen stanoveno.0Modulus division (%1) by zero (%2) is undefined. QtXmlPatternsNdaj o msci %1 je mimo rozsah %2..%3.%Month %1 is outside the range %2..%3. QtXmlPatternsLPro pole %1 bylo nalezeno vce hodnot.'More than one value found for field %1. QtXmlPatternsNsoben hodnoty typu %1 s %2 nebo %3 (kladn nebo zporn nekone no) nen pYpustn.YMultiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed. QtXmlPatternsJmenn prostor %1 lze spojit pouze s %2. Toto je stanoveno ji~ dopYedu.ONamespace %1 can only be bound to %2 (and it is, in either case, pre-declared). QtXmlPatternsProhlaen jmennch prostoro mus stt pYed prohlaenmi funkc-, promnnch- nebo prohlaenmi voleb.UNamespace declarations must occur before function, variable, and option declarations. QtXmlPatterns~PYedpona jmennho prostoru zposobilho nzvu %1 nen stanovena.5Namespace prefix of qualified name %1 is not defined. QtXmlPatternsT asov limit seov operace byl pYekro en.Network timeout. QtXmlPatternsTPro prvek %1 nen dostupn ~dn vymezen.'No definition for element %1 available. QtXmlPatterns Nejsou podporovny vnja funkce. Vaechny podporovan funkce se daj pou~vat pYmo, bez toho, ~e by byly nejprve prohlaeny za vnja{No external functions are supported. All supported functions can be used directly, without first declaring them as external QtXmlPatternsHNeexistuje ~dn funkce s nzvem %1.&No function with name %1 is available. QtXmlPatternsPNeexistuje ~dn funkce ozna en jako %1*No function with signature %1 is available QtXmlPatternstNeexistuje ~dn svzn jmennho prostoru pro pYedponu %1-No namespace binding exists for the prefix %1 QtXmlPatterns~Neexistuje ~dn svzn jmennho prostoru pro pYedponu %1 v %23No namespace binding exists for the prefix %1 in %2 QtXmlPatternstOdkazovanou hodnotu odkazu na kl %1 se nepodaYilo najt./No referenced value found for key reference %1. QtXmlPatternsTPro schvlen nen stanoveno ~dn schma.!No schema defined for validation. QtXmlPatternsLNeexistuje ~dn pYedloha s nzvem %1.No template by name %1 exists. QtXmlPatternszPro vnja promnnou s nzvem %1 nen dostupn ~dn hodnota.=No value is available for the external variable with name %1. QtXmlPatternsJNeexistuje ~dn promnn s nzvem %1No variable with name %1 exists QtXmlPatterns|Pro omezen %1 byla nalezena ne jednozna n stanoven hodnota.)Non-unique value found for constraint %1. QtXmlPatternsMus bt pYtomen zlo~n vraz, neboe nejsou podporovny ~dn vcn vrazy^None of the pragma expressions are supported. Therefore, a fallback expression must be present QtXmlPatterns2Zpis %1 je ji~ stanoven.Notation %1 already defined. QtXmlPatternsZObsah zpisu nen obsa~en ve v tov strnce.8Notation content is not listed in the enumeration facet. QtXmlPatternsPYi odvozen (ddi nosti) pomoc sjednocen jsou dovoleny pouze strnky %1 a %2.8Only %1 and %2 facets are allowed when derived by union. QtXmlPatternsPYedmluva k dotazu (prolog) sm obsahovat pouze jedno %1-prohlaen.6Only one %1 declaration can occur in the query prolog. QtXmlPatternsFMo~e bt jen jeden jedin %1-prvek.Only one %1-element can appear. QtXmlPatternsJe podporovn pouze Unicode Codepoint Collation (%1). %2 nen podporovn.IOnly the Unicode Codepoint Collation is supported(%1). %2 is unsupported. QtXmlPatternsjS %2 mo~e bt spojena pouze pYedpona %1 (a obrcen).5Only the prefix %1 can be bound to %2 and vice versa. QtXmlPatternsOpertor %1 se nemo~e pou~vat u atomrnch hodnot typo %2 a %3.>Operator %1 cannot be used on atomic values of type %2 and %3. QtXmlPatternsFOpertor %1 nelze pou~t na typ %2.&Operator %1 cannot be used on type %2. QtXmlPatternsLNelze pYedstavit datum %1 (PYete en)."Overflow: Can't represent date %1. QtXmlPatternsFNelze pYedstavit datum (PYete en).$Overflow: Date can't be represented. QtXmlPatterns*Chyba vyhodnocen: %1Parse error: %1 QtXmlPatternsz stice obsahuje ne-nemnn zstupn symboly (vzory hledn)..Particle contains non-deterministic wildcards. QtXmlPatternsPYedponu %1 lze spojit pouze s %2. Toto je prohlaeno ji~ dopYedu..LPrefix %1 can only be bound to %2 (and it is, in either case, pre-declared). QtXmlPatternslPYedpona %1 byla prohlaena ji~ v pYedmluv (prologu).,Prefix %1 is already declared in the prolog. QtXmlPatternsZPYedpona zposobilho nzvu %1 nen stanovena.+Prefix of qualified name %1 is not defined. QtXmlPatternshPostoupen od %1 k %2 mo~e vst ke ztrt pYesnosti./Promoting %1 to %2 may cause loss of precision. QtXmlPatternsObsah zposobilho nzvu ('QName') neodpovd strnce vzoru pro hledn.+QName content does not match pattern facet. QtXmlPatternsObsah zposobilho nzvu ('QName') nen obsa~en ve v tov strnce.5QName content is not listed in the enumeration facet. QtXmlPatternsJOdkaz %1 prvku %2 nemo~e bt vyYeaen..Reference %1 of %2 element cannot be resolved. QtXmlPatternsPo~adovan kardinln  slo (mohutnost mno~iny) je %1 (v sou asnosti %2)./Required cardinality is %1; got cardinality %2. QtXmlPatternsNPo~adovan typ je %1, byl ale zadn %2.&Required type is %1, but %2 was found. QtXmlPatternsJe zpracovvn jeden XSL-T 1.0 stylov list jednm procesorem verze 2.0.5Running an XSL-T 1.0 stylesheet with a 2.0 processor. QtXmlPatternsCelo seln hodnota ozna en znamnkem neodpovd strnce 'totalDigits'.?Signed integer content does not match in the totalDigits facet. QtXmlPatternsCelo seln hodnota ozna en znamnkem neodpovd strnce vzoru pro hledn.4Signed integer content does not match pattern facet. QtXmlPatternsCelo seln hodnota ozna en znamnkem neodpovd strnce 'maxExclusive'.=Signed integer content does not match the maxExclusive facet. QtXmlPatternsCelo seln hodnota ozna en znamnkem neodpovd strnce 'maxInclusive'.=Signed integer content does not match the maxInclusive facet. QtXmlPatternsCelo seln hodnota ozna en znamnkem neodpovd strnce 'minExclusive'.=Signed integer content does not match the minExclusive facet. QtXmlPatternsCelo seln hodnota ozna en znamnkem neodpovd strnce 'minInclusive'.=Signed integer content does not match the minInclusive facet. QtXmlPatternsCelo seln hodnota ozna en znamnkem nen obsa~ena ve v tov strnce.>Signed integer content is not listed in the enumeration facet. QtXmlPatterns~Jednoduch typ %1 mo~e mt jen jednoduch malink zkladn typ.=Simple type %1 can only have simple atomic type as base type. QtXmlPatternsJednoduch typ %1 nesm bt odvozen z %2 , neboe posledn ur uje omezen jako kone n.PSimple type %1 cannot derive from %2 as the latter defines restriction as final. QtXmlPatternsfJednoduch typ %1 nemo~e mt pYm zkladn typ %2./Simple type %1 cannot have direct base type %2. QtXmlPatternsjJednoduch typ %1 obsahuje nedovolen typ strnky %2.2Simple type %1 contains not allowed facet type %2. QtXmlPatternsXJednoduch typ %1 nesm mt zkladn typ %2.3Simple type %1 is not allowed to have base type %2. QtXmlPatternsTJednoduch typ %1 mo~e mt jen strnky %2.0Simple type %1 is only allowed to have %2 facet. QtXmlPatterns^Jednoduch typ obsahuje nedovolenou strnku %1.*Simple type contains not allowed facet %1. QtXmlPatternsJednoduch typ odvozenho prvku %1 nemo~e bt platn odvozen ze zkladnho prvku.NSimple type of derived element %1 cannot be validly derived from base element. QtXmlPatternsPZadan typ %1 nen ve schmatu stanoven.-Specified type %1 is not known to the schema. QtXmlPatternslZadan typ %1 nen platn nahraditeln typem prvku %2.DSpecified type %1 is not validly substitutable with element type %2. QtXmlPatternsZadn use='prohibited' ve skupin vlastnost nem naprosto ~dn  inek.DSpecifying use='prohibited' inside an attribute group has no effect. QtXmlPatternsrObsah Yetzce znako neodpovd strnce vzoru pro hledn.,String content does not match pattern facet. QtXmlPatternsZObsah Yetzce znako neodpovd strnce dlky./String content does not match the length facet. QtXmlPatternsObsah Yetzce znako neodpovd strnce dlky (nejvta daj; 'maxLength').2String content does not match the maxLength facet. QtXmlPatternsObsah Yetzce znako neodpovd strnce dlky (nejmena daj, 'minLength').2String content does not match the minLength facet. QtXmlPatternshObsah Yetzce znako nen obsa~en ve v tov strnce.6String content is not listed in the enumeration facet. QtXmlPatternsjSkupina nahrazen %1 m v kruzch provdn vymezen..Substitution group %1 has circular definition. QtXmlPatternsdSkupina nahrazen %1 prvku %2 nemo~e bt vyYeaena.7Substitution group %1 of %2 element cannot be resolved. QtXmlPatternsClov jmenn prostor %1 zavedenho schmatu se lia od jm vymezenho clovho jmennho prostoru %2.tTarget namespace %1 of imported schema is different from the target namespace %2 as defined by the importing schema. QtXmlPatternsClov jmenn prostor %1 zahrnutho schmatu se lia od jm vymezenho clovho jmennho prostoru %2.tTarget namespace %1 of included schema is different from the target namespace %2 as defined by the including schema. QtXmlPatternsZNa tomto mst nesm stt ~dn textov uzly.,Text nodes are not allowed at this location. QtXmlPatternsjText nebo odkazy na entitu nejsou v prvku %1 dovoleny7Text or entity references not allowed inside %1 element QtXmlPatterns@Osa %1 nen v XQuery podporovna$The %1-axis is unsupported in XQuery QtXmlPatternsProhlaen %1 je nepYpustn, proto~e nen podporovno zaveden schmat.WThe Schema Import feature is not supported, and therefore %1 declarations cannot occur. QtXmlPatterns%1-vrazy se nemohou pou~vat, proto~e funkce prohlaen schmatu platnm nen podporovna.VThe Schema Validation Feature is not supported. Hence, %1-expressions may not be used. QtXmlPatterns4URI nesm obsahovat kousekThe URI cannot have a fragment QtXmlPatternsTPouze prvn %2-prvek sm mt vlastnost %1.9The attribute %1 can only appear on the first %2 element. QtXmlPatternsn%2 nesm mt vlastnost %1 v pYpad, ~e je potomkem %3.?The attribute %1 cannot appear on %2, when it is a child of %3. QtXmlPatternsxKdovac bod %1 z %2 s kdovnm %3 nen platnm znakem XML.QThe codepoint %1, occurring in %2 using encoding %3, is an invalid XML character. QtXmlPatternsvData pokynu pro zpracovn nesm obsahovat Yetzec znako %1AThe data of a processing instruction cannot contain the string %1 QtXmlPatternsPPro sbrku nen stanovena ~dn pYedloha#The default collection is undefined QtXmlPatternsKdovn %1 je neplatn; sm sestvat pouze z latinskch psmen a mus odpovdat pravidelnu vrazu %2.The encoding %1 is invalid. It must contain Latin characters only, must not contain whitespace, and must match the regular expression %2. QtXmlPatternsPrvn argument k %1 nesm bt typu %2; mus to bt  seln typ, xs:yearMonthDuration nebo xs:dayTimeDuration.uThe first argument to %1 cannot be of type %2. It must be a numeric type, xs:yearMonthDuration or xs:dayTimeDuration. QtXmlPatternsPrvn argument %1 nemo~e bt typu %2. Mus to bt typ %3, %4 nebo %5.PThe first argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. QtXmlPatterns.Nen stanoveno ohnisko.The focus is undefined. QtXmlPatternsvInicializace promnn %1 je zvisl na jej vlastn hodnot3The initialization of variable %1 depends on itself QtXmlPatternsRPrvek %1 neodpovd po~adovanmu typu %2./The item %1 did not match the required type %2. QtXmlPatternsKl ov slovo %1 se nemo~e pou~vat dohromady s jinm nzvem zposobu.5The keyword %1 cannot occur with any other mode name. QtXmlPatternsPosledn krok cesty mus obsahovat bu jen uzly nebo jen atomrn hodnoty. Nesm se vyskytovat spole n.kThe last step in a path must contain either nodes or atomic values. It cannot be a mixture between the two. QtXmlPatternsNFunkce zaveden modulu nen podporovna*The module import feature is not supported QtXmlPatternstNzev %1 nem ~dnou spojitost s jakmkoli typem schmatu..The name %1 does not refer to any schema type. QtXmlPatternsNzev po tan vlastnosti nesm mt jmenn prostor-URI %1 s mstnm nzvem %2.ZThe name for a computed attribute cannot have the namespace URI %1 with the local name %2. QtXmlPatternsNzev promnn zce spojen s pro-vrazem se mus liait od pozi n promnn. Dv promnn s nzvem %1 se z tohoto dovodu stYetvaj.The name of a variable bound in a for-expression must be different from the positional variable. Hence, the two variables named %1 collide. QtXmlPatternsxNzev vrazu rozaYen se mus nachzet ve jmennm prostoru.;The name of an extension expression must be in a namespace. QtXmlPatternsNzev volby mus mt pYedponu. Pro volby nen ~dn pYedloha pro jmenn prostor.TThe name of an option must have a prefix. There is no default namespace for options. QtXmlPatterns Jmenn prostor %1 je vyhrazen a z toho dovodu jej nemohou pou~vat u~ivatelem stanoven funkce (pro tento  el je tu pYedstanoven pYedpona %2).The namespace %1 is reserved; therefore user defined functions may not use it. Try the predefined prefix %2, which exists for these cases. QtXmlPatternsJmenn prostor-URI nesm bt przdn, kdy~ je spojen s prefixem %1.JThe namespace URI cannot be the empty string when binding to a prefix, %1. QtXmlPatternsURI jmennho prostoru v nzvu vypo tan vlastnosti nesm bt %1.DThe namespace URI in the name for a computed attribute cannot be %1. QtXmlPatternsJmenn prostor-URI mus bt konstantou a nesm pou~vat vlo~en vrazy.IThe namespace URI must be a constant and cannot use enclosed expressions. QtXmlPatternsJmenn prostor u~ivatelem stanoven funkce nesm bt przdn (pro tento  el je pYedstanoven pYedpona %1)yThe namespace for a user defined function cannot be empty (try the predefined prefix %1 which exists for cases like this) QtXmlPatternsJmenn prostor u~ivatelem stanoven funkce v modulu knihovny mus odpovdat jmennmu prostoru modulu (Jinmi slovy by ml bt %1 namsto %2) The namespace of a user defined function in a library module must be equivalent to the module namespace. In other words, it should be %1 instead of %2 QtXmlPatternsXTato forma normalizovn %1 nen podporovna. Podporovanmi formami normalizovn jsou %2, %3, %4 a %5, a "~dn" (przdn znakov Yetzec zastupuje "~dn normalizovn").The normalization form %1 is unsupported. The supported forms are %2, %3, %4, and %5, and none, i.e. the empty string (no normalization). QtXmlPatternstNeexistuje ~dn odpovdajc %2 pro pYedan parameter %1.;The parameter %1 is passed, but no corresponding %2 exists. QtXmlPatternsvNebyl zadn ~dn odpovdajc %2 pro potYebn parametr %1.BThe parameter %1 is required, but no corresponding %2 is supplied. QtXmlPatterns2PYedponu %1 nelze spojit.The prefix %1 cannot be bound. QtXmlPatternsPYedpona %1 nemo~e bt spojena. Ve vchozm nastaven je ji~ spojena se jmennm prostorem %2.SThe prefix %1 cannot be bound. By default, it is already bound to the namespace %2. QtXmlPatterns`PYedpona mus bt platn %1, co~ nen pYpad %2./The prefix must be a valid %1, which %2 is not. QtXmlPatternsNadYzen uzel druhho agumentu funkce %1 mus bt uzlem dokumentu, co~ nen pYpad %2.gThe root node of the second argument to function %1 must be a document node. %2 is not a document node. QtXmlPatternsDruh argument %1 nemo~e bt typ %2. Mus to bt typ %3, %4 nebo %5.QThe second argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. QtXmlPatternsClov nzev pYkazu pro zpracovn nemo~e bt %1 (nezvisle na psan velkch/malch psmen). %2 je z toho dovodu neplatn.~The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, %2 is invalid. QtXmlPatternsVClov jmenn prostor %1 nesm bt przdn.-The target namespace of a %1 cannot be empty. QtXmlPatternsHodnota vlastnosti %1 prvku %2 mo~e bt jen %3 nebo %4, ne vaak %5.IThe value for attribute %1 on element %2 must either be %3 or %4, not %5. QtXmlPatternsHodnota vlastnosti %1 mus bt typu %2. %3 nen platnou hodnotou.=The value of attribute %1 must be of type %2, which %3 isn't. QtXmlPatternsHodnota XSL-T vlastnosti verze mus bt hodnotou typu %1, co~ nen pYpad %2.TThe value of the XSL-T version attribute must be a value of type %1, which %2 isn't. QtXmlPatterns0Promnn %1 se nepou~vThe variable %1 is unused QtXmlPatterns~Existuje hodnota IDREF, pro kterou neexistuje pYsluan ID: %1.6There is one IDREF value with no corresponding ID: %1. QtXmlPatterns%1 se nemo~e pou~vat, proto~e tento procesor nepodporuje ~dn schma.CThis processor is not Schema-aware and therefore %1 cannot be used. QtXmlPatternsH asov daj %1:%2:%3.%4 je neplatn.Time %1:%2:%3.%4 is invalid. QtXmlPatterns asov daj 24:%1:%2.%3 je neplatn. U hodinovho daje je 24, ale minuty, sekundy a milisekundy mus bt vaechny 0; _Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0;  QtXmlPatternspln nahoYe stojc prvky provdcho listu se nesm nachzet v nulovm jmennm prostoru, co~ je pYpad %1.NTop level stylesheet elements must be in a non-null namespace, which %1 isn't. QtXmlPatternsByly nalezeny dv vlastnosti prohlaen jmennho prostoru se stejnm nzvem (%1).!9bMEFEx%%Y֍֍֍֍0$0IU0000y5 DL, D`I+",Mb,3H9d<[p55A"#Qn%UT%UTDn(Ŏ^+*4-ct>t-ctK2q5vaf?tx"CoCCeD"D1nM TSžraR?UOe/fPl Ll=NoR7Normw^x |{y cGdXWT22{W}{'Z:.MRAiXP dNyiur { Yd\ ĭ"l)6R-q/=N(1$1$@5~m>< ?2?N|MkENky Ui֨W~]`B`jtdSlglyzl}coi` vty?%vty1e")YD)T6F66ym^qI<%+ OQRKTހ=~.0N'9lEwElm){R\=8ANAoy,p[ybLCRCR5}n B'f7 mMMyEEkEuw#w I :/~!eV5&C))S*/e);j;>ByFEO)ZfQ8\c.`cփ#f_g&4jC]q8 tu.u(}ka1f~}ny $$!=b_()ʁrH^KR֊=, n".,Zf2ܘ;y߸A8&H.0/ZIxS:MuR>oYMl!YMvA^h^*i0osscwblrxaۊ<N8] ]Y4ZI6I#I$7IHII2dI3kIx(IYi 5y oMeI! !!W! uDp3uDzDxZo$,H,, ,,41,Pm]O׌ɘe5$ 4fRfRZNi[`dc._SePqsVIV^fRTA4 d8 _ 'yb+ $%C+"&~d)2C+`,)?"\?>ugSKNLMRV|e]I]k%y^(l{y^5t&c5tkF\&:`gf!G%jUص=ǥ{ 'c+'+2+%`_t{yt^;gxAgr 9\gJ(Dsgr*ϾI%:U%sC-5$mC^{/ƨƨ50˾ҝzi:wէ?4XZ>zQߺxOfgfH^Y!Y $~bZ~b`zoME!+uxh+3//4~h6 ';? 2vvADGk_Gb_}LAUMOr+PѧHQy[SnU UUUDUTHZ{ZZZ#[ Y[x]k*Z^n_pneipizkQoN,y;a{{2}u%}w}w*}wj}KIrBv@tٔt..+3PPdiUDYt2tvtMt?_ $+sFʢCʢ{ƴdDdd8dSd70i59Gэ+NS4UVUIdBhWwǞ  Y_ +|,Dh?/_2NO6q?;ۘCU]^DJ0KKl5U|\cart|(^lr|h|}wZ؉}$J}$*}$jϗZfDcjq`K<If+[·>··J׳ b/xEj um%5_Ti~pi9%q_qwY#%'.5kE==L=?9?CtIcPVV%sV%tXU Y`7bD(hbGfdWgA!hIdli$x1 z*2|QRod́UuzNc.}B@I{rsX\Pmk^]0eoqn"&0bQ†5tiaCKdʴ5 ʴ5yʶV^ Ԅ~U۔#cD}dF5(F5AYptINIYAs D, }$N qet ڤ ڤ> ڥ d1 E Eɇ Ac Ac\ -{ 35 35Id  r ><  V nU Z Y+ K& T 팤 %'Su 9 " = qg!  D; Ӥ }% oO )+ */ .> 7uu ; =j B J"R K2r Rۮ( Ty  T^> Uj4 ] ]J3 ` ` ` `;h b c(_ cE d4 e eZB e{b f1m f*_ g5U gn k, rD"#R t $ %p6 , ,TR 7 M{ t\ `~ n` tv ˔i P2 Pw3 n w 68' >>L :; f ( f V 4 .hW s sXv AArd 9P H 9A  m, #-t$ #-tG 0N7 A6 CUh E9 Id L[u L2u Lw Mc\K S V ]$B f)r f)V_ f= io> m`* wN yrE n H HT 5 $Wm .@( " i nv & P n; % J> JX  t. kNN Ӈ& M $m N>x ̺i -Dj .2 ۷9 rn k kmu U){ . <) ?z ; Kn 0$G g \ z+iw  o  za Ic %h $ xH! ] .;0 7FI >r >t >uQ >r >} > > >S ?t|V{ DT I6 I: P@ : RV\ RVvF RVf S.3 SG* Sy Yz5 Y [U hۮc? j7oSx p;v B  TA3 T T* TԨ ޷ & Ck Ц c S )d )dHA T Te .A . . . .l . & % 1 a aEm y)G ҂  %e ue@ f | " 9Xu tL a9 :b|  ʜ9 #= (I$+R +>< 0E 64 ;ɾO FgT K95 Pt Ptz fe" fea( gP iFC iZ i< jӮ m9] ni u$ u9O v& v{ w w*? wj, w} w}*t w}jb |[ l v J ^ } RU PuH  xN UR ɰeQ  XG & Q R D7 [ +! t5 t5z e I {G ) *PRpwT4]xgT5_*2*w/E3/EV/EBI_|fOOXRuUP[ }a.Igc-nyG=vɅy$]~~r>44W*S^@Ǘi:$B1YUvDr9ݖ[y_rt  WlD"# "#b^ X%NRp EpD"~Ur4nrNky BPt28>0%;dOUViLuk fane Close Tab CloseButton Om %1About %1MAC_APPLICATION_MENUSkjul %1Hide %1MAC_APPLICATION_MENUSkjul andre Hide OthersMAC_APPLICATION_MENUIndstillinger &Preferences...MAC_APPLICATION_MENUSlut %1Quit %1MAC_APPLICATION_MENUTjenesterServicesMAC_APPLICATION_MENUVis alleShow AllMAC_APPLICATION_MENUTilgngelighed AccessibilityPhonon::Kommunikation CommunicationPhonon::SpilGamesPhonon:: MusikMusicPhonon::Meddelelser NotificationsPhonon::VideoPhonon::<html>Skifter til audio-playback-enheden, <b>%1</b><br/>der lige er blevet tilgngelig og har en hjere prference.</html>xSwitching to the audio playback device %1
which just became available and has higher preference.Phonon::AudioOutput<html>Audio-playback-enheden<b>%1</b> virker ikke.<br/>Falder tilbage til <b>%2</b>.</html>^The audio playback device %1 does not work.
Falling back to %2.Phonon::AudioOutput6G tilbage til enheden '%1'Revert back to device '%1'Phonon::AudioOutputAdvarsel: Det ser ikke ud til, at base GStreamer plugins er installeret. Al audio- og videosupport er deaktiveret~Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabledPhonon::Gstreamer::BackendAdvarsel: Det ser ikke ud til, at gstreamer0.10-plugins-good pakken er installeret. Nogle videofunktioner er deaktiveret.Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled.Phonon::Gstreamer::BackendDer mangler et codec. Flgende codecs skal installeres for at afspille dette indhold: %0`A required codec is missing. You need to install the following codec(s) to play this content: %0Phonon::Gstreamer::MediaObject<Kunne ikke afkode mediekilden.Could not decode media source.Phonon::Gstreamer::MediaObjectDKunne ikke lokalisere mediekilden.Could not locate media source.Phonon::Gstreamer::MediaObjectnKunne ikke bne lydenheden. Enheden er allerede i brug.:Could not open audio device. The device is already in use.Phonon::Gstreamer::MediaObject8Kunne ikke bne mediekilden.Could not open media source.Phonon::Gstreamer::MediaObjectUgyldig kilde.Invalid source type.Phonon::Gstreamer::MediaObject"Tilladelse ngtetPermission denied Phonon::MMF Volume: %1%Phonon::VolumeSlider,%1, %2 ikke definerede%1, %2 not definedQ3Accel4Tvetydig %1 ikke behandletAmbiguous %1 not handledQ3AccelSletDelete Q3DataTable FalskFalse Q3DataTable IndstInsert Q3DataTable SandtTrue Q3DataTableOpdaterUpdate Q3DataTablej%1 Filen blev ikke fundet. Kontrollr sti og filnavn.+%1 File not found. Check path and filename. Q3FileDialog &Slet&Delete Q3FileDialog&Nej&No Q3FileDialog&OK&OK Q3FileDialog&bn&Open Q3FileDialog &Omdb&Rename Q3FileDialog&Gem&Save Q3FileDialog&Usorteret &Unsorted Q3FileDialog&Ja&Yes Q3FileDialogf<qt>Er du sikker p, at du vil slette %1 "%2"?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialogAlle filer (*) All Files (*) Q3FileDialog Alle filer (*.*)All Files (*.*) Q3FileDialogAttributter Attributes Q3FileDialogTilbageBack Q3FileDialogAnnullerCancel Q3FileDialog0Kopir eller flyt en filCopy or Move a File Q3FileDialogOpret ny folderCreate New Folder Q3FileDialogDatoDate Q3FileDialogSlet %1 Delete %1 Q3FileDialogDetaljevisning Detail View Q3FileDialogKatalogDir Q3FileDialogKataloger Directories Q3FileDialogKatalog: Directory: Q3FileDialogFejlError Q3FileDialogFilFile Q3FileDialogFil&navn: File &name: Q3FileDialogFil&type: File &type: Q3FileDialogFind katalogFind Directory Q3FileDialogUtilgngelig Inaccessible Q3FileDialogListevisning List View Q3FileDialogKig &i: Look &in: Q3FileDialogNavnName Q3FileDialogNy folder New Folder Q3FileDialogNy folder %1 New Folder %1 Q3FileDialogNy folder 1 New Folder 1 Q3FileDialogEn mappe opOne directory up Q3FileDialogbnOpen Q3FileDialogbnOpen  Q3FileDialogVis filindholdPreview File Contents Q3FileDialog$Vis filinformationPreview File Info Q3FileDialogGen&indlsR&eload Q3FileDialogSkrivebeskyttet Read-only Q3FileDialogLs-skriv Read-write Q3FileDialogLs: %1Read: %1 Q3FileDialogGem somSave As Q3FileDialogVlg et katalogSelect a Directory Q3FileDialog$Vis s&kjulte filerShow &hidden files Q3FileDialogStrrelseSize Q3FileDialog SortrSort Q3FileDialog$Sortr efter &dato Sort by &Date Q3FileDialog$Sortr efter n&avn Sort by &Name Q3FileDialog.Sortr efter s&trrelse Sort by &Size Q3FileDialogSpecielSpecial Q3FileDialog&Symlink til katalogSymlink to Directory Q3FileDialogSymlink til FilSymlink to File Q3FileDialog&Symlink til SpecielSymlink to Special Q3FileDialogType Q3FileDialogWrite-only Write-only Q3FileDialogSkriv: %1 Write: %1 Q3FileDialogkataloget the directory Q3FileDialog filenthe file Q3FileDialogsymlinket the symlink Q3FileDialog:Kunne ikke oprette katalog %1Could not create directory %1 Q3LocalFs$Kunne ikke bne %1Could not open %1 Q3LocalFs4Kunne ikke lse katalog %1Could not read directory %1 Q3LocalFsLKunne ikke fjerne fil eller katalog %1%Could not remove file or directory %1 Q3LocalFs4Kunne ikke omdbe %1 to %2Could not rename %1 to %2 Q3LocalFs(Kunne ikke skrive %1Could not write %1 Q3LocalFsTilpas... Customize... Q3MainWindowLinie opLine up Q3MainWindow8Brugeren stoppede handlingenOperation stopped by the userQ3NetworkProtocolAnnullerCancelQ3ProgressDialog UdfrApply Q3TabDialogAnnullerCancel Q3TabDialogStandarderDefaults Q3TabDialog HjlpHelp Q3TabDialogOK Q3TabDialogK&opir&Copy Q3TextEdit&St ind&Paste Q3TextEdit&Gendan&Redo Q3TextEdit&Fortryd&Undo Q3TextEditRydClear Q3TextEdit &KlipCu&t Q3TextEditMarkr alt Select All Q3TextEditLukClose Q3TitleBarLukker vinduetCloses the window Q3TitleBar`Indeholder kommandoer til indstilling af vinduet*Contains commands to manipulate the window Q3TitleBarViser vinduets navn og indeholder kontroller til indstilling af vinduetFDisplays the name of the window and contains controls to manipulate it Q3TitleBar4Gr vinduet til fuld skrmMakes the window full screen Q3TitleBarMaksimrMaximize Q3TitleBarMinimerMinimize Q3TitleBar&Flytter vinduet vkMoves the window out of the way Q3TitleBar`Stter et maksimeret vindue til normal strrelse&Puts a maximized window back to normal Q3TitleBarGendan ned Restore down Q3TitleBarGendan op Restore up Q3TitleBarSystem Q3TitleBarMere...More... Q3ToolBar(ukendt) (unknown) Q3UrlOperatorProtokollen '%1' understtter ikke kopiering eller flytning af filer eller katalogerIThe protocol `%1' does not support copying or moving files or directories Q3UrlOperator|Protokollen '%1' understtter ikke oprettelse af nye kataloger;The protocol `%1' does not support creating new directories Q3UrlOperatorhProtokollen '%1' understtter ikke hentning af filer0The protocol `%1' does not support getting files Q3UrlOperatortProtokollen '%1' understtter ikke opremsning af kataloger6The protocol `%1' does not support listing directories Q3UrlOperatordProtokollen '%1' understtter ikke upload af filer0The protocol `%1' does not support putting files Q3UrlOperatorProtokollen '%1' understtter ikke, at filer eller kataloger fjernes@The protocol `%1' does not support removing files or directories Q3UrlOperatorProtokollen '%1' understtter ikke, at filer eller kataloger omdbes@The protocol `%1' does not support renaming files or directories Q3UrlOperatorDProtokollen '%1' understttes ikke"The protocol `%1' is not supported Q3UrlOperator&Annuller&CancelQ3Wizard &Udfr&FinishQ3Wizard &Hjlp&HelpQ3Wizard&Nste >&Next >Q3Wizard< &Tilbage< &BackQ3Wizard$Forbindelse afvistConnection refusedQAbstractSocket,Forbindelsen timed outConnection timed outQAbstractSocket*Host blev ikke fundetHost not foundQAbstractSocket<Netvrket er ikke tilgngeligtNetwork unreachableQAbstractSocketDSocket-operation ikke understttet$Operation on socket is not supportedQAbstractSocket*Socket ikke forbundetSocket is not connectedQAbstractSocket4Socket-operation timed outSocket operation timed outQAbstractSocket&Vlg alle &Select AllQAbstractSpinBox&Trin op&Step upQAbstractSpinBoxTrin &ned Step &downQAbstractSpinBoxTryk pPressQAccessibleButtonFjern markeringUncheckQAccessibleButtonAktivrActivate QApplicationBAktiverer programmets hovedvindue#Activates the program's main window QApplicationbEksekverbar '%1' krver Qt %2, ikke fundet Qt %3.,Executable '%1' requires Qt %2, found Qt %3. QApplication8Inkompatibel Qt Library fejlIncompatible Qt Library Error QApplicationQT_LAYOUT_DIRECTION QApplication&Annuller&Cancel QAxSelectCOM &Objekt: COM &Object: QAxSelectOK QAxSelect(Vlg ActiveX-kontrolSelect ActiveX Control QAxSelectKryds afCheck QCheckBoxSl til/fraToggle QCheckBoxFjern markeringUncheck QCheckBox(&Fj til egne farver&Add to Custom Colors QColorDialog&Basisfarver &Basic colors QColorDialog&Egne farver&Custom colors QColorDialog &Grn:&Green: QColorDialog &Rd:&Red: QColorDialog &Mt:&Sat: QColorDialog &Vr:&Val: QColorDialogAl&fa-kanal:A&lpha channel: QColorDialog Bl&:Bl&ue: QColorDialog Ton&e:Hu&e: QColorDialogVlg farve Select Color QColorDialogLukClose QComboBox FalskFalse QComboBoxbnOpen QComboBox SandtTrue QComboBox&%1: Findes allerede%1: already existsQCoreApplication%1: Findes ikke%1: does not existQCoreApplication(%1: ftok mislykkedes%1: ftok failedQCoreApplication %1: ngle er tom%1: key is emptyQCoreApplication2%1: Ikke flere ressourcer%1: out of resourcesQCoreApplication*%1: Tilladelse ngtet%1: permission deniedQCoreApplication2%1: kunne ikke lave ngle%1: unable to make keyQCoreApplicationBKunne ikke gennemfre transaktionUnable to commit transaction QDB2Driver8Kunne ikke skabe forbindelseUnable to connect QDB2DriverHKunne ikke tilbagetrkke transaktionUnable to rollback transaction QDB2Driver<Kunne ikke aktivere autocommitUnable to set autocommit QDB2Driver2Kunne ikke binde variabelUnable to bind variable QDB2Result6Kunne ikke udfre statementUnable to execute statement QDB2Result.Kunne ikke hente frsteUnable to fetch first QDB2Result,Kunne ikke hente nsteUnable to fetch next QDB2Result0Kunne ikke hente post %1Unable to fetch record %1 QDB2Result6Kunne ikke forberede udsagnUnable to prepare statement QDB2ResultAM QDateTimeEditPM QDateTimeEditam QDateTimeEditpm QDateTimeEditQDialQDial SliderHandleQDialSpeedometer SpeedoMeterQDial UdfrtDoneQDialogHvad er dette? What's This?QDialog&Annuller&CancelQDialogButtonBox&Luk&CloseQDialogButtonBox&Nej&NoQDialogButtonBox&OKQDialogButtonBox&Gem&SaveQDialogButtonBox&Ja&YesQDialogButtonBox AfbrydAbortQDialogButtonBox UdfrApplyQDialogButtonBoxAnnullerCancelQDialogButtonBoxLukCloseQDialogButtonBox"Luk uden at gemmeClose without SavingQDialogButtonBox KassrDiscardQDialogButtonBoxGem ikke Don't SaveQDialogButtonBox HjlpHelpQDialogButtonBoxIgnorerIgnoreQDialogButtonBoxNe&j til alle N&o to AllQDialogButtonBoxOKQDialogButtonBoxbnOpenQDialogButtonBoxNulstilResetQDialogButtonBox,Gendan standardvrdierRestore DefaultsQDialogButtonBoxPrv igenRetryQDialogButtonBoxGemSaveQDialogButtonBoxGem alleSave AllQDialogButtonBoxJa til &alle Yes to &AllQDialogButtonBoxndringsdato Date Modified QDirModelTypeKind QDirModelNavnName QDirModelStrrelseSize QDirModelType QDirModelLukClose QDockWidgetLstDock QDockWidgetFlydendeFloat QDockWidget MindreLessQDoubleSpinBoxMereMoreQDoubleSpinBox&OK QErrorMessage,&Vis denne besked igen&Show this message again QErrorMessageDebug-besked:Debug Message: QErrorMessageFatal fejl: Fatal Error: QErrorMessageAdvarsel:Warning: QErrorMessage@Kunne ikke oprette %1 til outputCannot create %1 for outputQFile4Kan ikke bne %1 til inputCannot open %1 for inputQFile0Kan ikke bne til outputCannot open for outputQFile0Kan ikke fjerne kildefilCannot remove source fileQFile,Destinationsfil findesDestination file existsQFile,Kunne ikke skrive blokFailure to write blockQFile%1 Katalog kunne ikke findes. Kontrollr, at det rigtige katalognavn er indtastet.K%1 Directory not found. Please verify the correct directory name was given. QFileDialog%1 Filen kunne ikke findes. Kontrollr, at det rigtige filnavn er indtastet.A%1 File not found. Please verify the correct file name was given. QFileDialog\%1 findes allerede. nsker du at erstatte den?-%1 already exists. Do you want to replace it? QFileDialog &Vlg&Choose QFileDialog &Slet&Delete QFileDialog&Ny folder &New Folder QFileDialog&bn&Open QFileDialog &Omdb&Rename QFileDialog&Gem&Save QFileDialogn'%1' er skrivebeskyttet. nsker du alligevel at slette?9'%1' is write protected. Do you want to delete it anyway? QFileDialogAlle filer (*) All Files (*) QFileDialog Alle filer (*.*)All Files (*.*) QFileDialogLEr du sikker p, at '%1' skal slettes?!Are sure you want to delete '%1'? QFileDialogTilbageBack QFileDialog8Kunne ikke slette kataloget.Could not delete directory. QFileDialogOpret ny folderCreate New Folder QFileDialogDetaljevisning Detail View QFileDialogKataloger Directories QFileDialogKatalog: Directory: QFileDialogDrevDrive QFileDialogFilFile QFileDialog&Filnavn: File &name: QFileDialogFiler af typen:Files of type: QFileDialogFind katalogFind Directory QFileDialogFremForward QFileDialogListevisning List View QFileDialog Sg i:Look in: QFileDialogMin computer My Computer QFileDialogNy folder New Folder QFileDialogbnOpen QFileDialog(Ovenliggende katalogParent Directory QFileDialogAktuelle steder Recent Places QFileDialog FjernRemove QFileDialogGem somSave As QFileDialogVisShow  QFileDialog$Vis s&kjulte filerShow &hidden files QFileDialog UkendtUnknown QFileDialog %1 GB%1 GBQFileSystemModel %1 KB'%1 KBQFileSystemModel %1 MB%1 MBQFileSystemModel %1 TB%1 TBQFileSystemModel%1 bytes%1 bytesQFileSystemModel<b>Navnet, %1, kan ikke benyttes.</b><p>Brug et andet navn med frre tegn og ingen kommatering.oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModelComputerQFileSystemModelndringsdato Date ModifiedQFileSystemModel Ugyldigt filnavnInvalid filenameQFileSystemModelTypeKindQFileSystemModelMin computer My ComputerQFileSystemModelNavnNameQFileSystemModelStrrelseSizeQFileSystemModelTypeQFileSystemModelAlleAny QFontDatabaseArabiskArabic QFontDatabaseArmenskArmenian QFontDatabaseBengalskBengali QFontDatabaseSortBlack QFontDatabaseFedBold QFontDatabaseKyrilliskCyrillic QFontDatabaseDemi QFontDatabase Demi Bold QFontDatabase Devanagari QFontDatabasegeorgisk Georgian QFontDatabase GrskGreek QFontDatabaseGujarati QFontDatabaseGurmukhi QFontDatabaseHebriskHebrew QFontDatabase KursivItalic QFontDatabaseJapanskJapanese QFontDatabaseKannada QFontDatabaseKhmer QFontDatabaseKoreanskKorean QFontDatabaseLao QFontDatabaseLatin QFontDatabaseLysLight QFontDatabase Malayalam QFontDatabaseMyanmar QFontDatabaseNormal QFontDatabase SkrtOblique QFontDatabaseOgham QFontDatabaseOriya QFontDatabaseRunic QFontDatabase$Forenklet kinesiskSimplified Chinese QFontDatabaseSinhala QFontDatabaseSymbol QFontDatabase SyriskSyriac QFontDatabaseTamil QFontDatabaseTelugu QFontDatabaseThaana QFontDatabaseThailandskThai QFontDatabaseTibetanskTibetan QFontDatabase*Traditionelt kinesiskTraditional Chinese QFontDatabaseVietnamesisk Vietnamese QFontDatabaseS&krifttype&Font QFontDialog&Strrelse&Size QFontDialog&Understreg &Underline QFontDialogEffekterEffects QFontDialog S&til Font st&yle QFontDialogEksempelSample QFontDialogVlg skrifttype Select Font QFontDialog&Overstreget Stri&keout QFontDialogSkr&ivesystemWr&iting System QFontDialogDndring af katalog mislykkedes: %1Changing directory failed: %1QFtpTilsluttet vrtConnected to hostQFtp$Tilsluttet vrt %1Connected to host %1QFtpHForbindelse til vrt mislykkedes: %1Connecting to host failed: %1QFtp$Forbindelse lukketConnection closedQFtp,Dataforbindelse afvist&Connection refused for data connectionQFtp<Forbindelse til vrt %1 afvistConnection refused to host %1QFtpDForbindelsen timed out til host %1Connection timed out to host %1QFtp2Forbindelse til %1 lukketConnection to %1 closedQFtpJOprettelse af katalog mislykkedes: %1Creating directory failed: %1QFtpDDownloading af fil mislykkedes: %1Downloading file failed: %1QFtpVrt %1 fundet Host %1 foundQFtp&Vrt %1 ikke fundetHost %1 not foundQFtpVrt fundet Host foundQFtpXOpremsning af katalogindhold mislykkedes: %1Listing directory failed: %1QFtp*Login mislykkedes: %1Login failed: %1QFtp"Ingen forbindelse Not connectedQFtpJDet mislykkedes at fjerne katalog: %1Removing directory failed: %1QFtpBDet mislykkedes at fjerne fil: %1Removing file failed: %1QFtpUkendt fejl Unknown errorQFtp@Uploading af fil mislykkedes: %1Uploading file failed: %1QFtpSl til/fraToggle QGroupBox Hostnavn manglerNo host name given QHostInfoUkendt fejl Unknown error QHostInfo Vrt ikke fundetHost not foundQHostInfoAgent Hostnavn manglerNo host name givenQHostInfoAgent$Ukendt adressetypeUnknown address typeQHostInfoAgentUkendt fejl Unknown errorQHostInfoAgent0Autentificering pkrvetAuthentication requiredQHttpTilsluttet vrtConnected to hostQHttp$Tilsluttet vrt %1Connected to host %1QHttp$Forbindelse lukketConnection closedQHttp$Forbindelse afvistConnection refusedQHttpRForbindelse blev afvist (eller tid udlb)!Connection refused (or timed out)QHttp2Forbindelse til %1 lukketConnection to %1 closedQHttpData er delagtData corruptedQHttpXSkrivefejl mens der blev skrevet til enheden Error writing response to deviceQHttp4HTTP anmodning mislykkedesHTTP request failedQHttpDer blevet anmodet om en HTTPS-forbindelse, men SSL understttelse er ikke kompileret ind:HTTPS connection requested but SSL support not compiled inQHttpVrt %1 fundet Host %1 foundQHttp&Vrt %1 ikke fundetHost %1 not foundQHttpVrt fundet Host foundQHttp6Vrt krver autentificeringHost requires authenticationQHttp2Ugyldig HTTP chunked bodyInvalid HTTP chunked bodyQHttp0Ugyldig HTTP-svar-headerInvalid HTTP response headerQHttp8Ingen server at forbinde tilNo server set to connect toQHttp8Krver proxy-autentificeringProxy authentication requiredQHttp8Proxy krver autentificeringProxy requires authenticationQHttp8Foresprgsel blev annulleretRequest abortedQHttp2SSL handshake mislykkedesSSL handshake failedQHttpPServeren afsluttede uventet forbindelsen%Server closed connection unexpectedlyQHttp:Ukendt autentifikationsmetodeUnknown authentication methodQHttpUkendt fejl Unknown errorQHttp>En ukendt protokol blev angivetUnknown protocol specifiedQHttp,Forkert indholdslngdeWrong content lengthQHttp0Autentificering pkrvetAuthentication requiredQHttpSocketEngine>Modtog ikke HTTP-svar fra proxy(Did not receive HTTP response from proxyQHttpSocketEngineNFejl under kommunikation med HTTP-proxy#Error communicating with HTTP proxyQHttpSocketEnginexFejl under fortolking af autentificeringsanmodning fra proxy/Error parsing authentication request from proxyQHttpSocketEngineHProxy-forbindelse afsluttede i utide#Proxy connection closed prematurelyQHttpSocketEngine2Proxy-forbindelse ngtedeProxy connection refusedQHttpSocketEngine2Proxy ngtede forbindelseProxy denied connectionQHttpSocketEngineBProxy-serverforbindelse timed out!Proxy server connection timed outQHttpSocketEngine<Proxy-server kunne ikke findesProxy server not foundQHttpSocketEngineDKunne ikke pbegynde transaktionenCould not start transaction QIBaseDriverLDer opstod fejl ved bning af databaseError opening database QIBaseDriverFKunne ikke gennemfre transaktionenUnable to commit transaction QIBaseDriverLKunne ikke tilbagetrkke transaktionenUnable to rollback transaction QIBaseDriver:Kunne ikke allokere statementCould not allocate statement QIBaseResultFKunne ikke beskrive input-statement"Could not describe input statement QIBaseResult:Kunne ikke beskrive statementCould not describe statement QIBaseResult<Kunne ikke hente nste elementCould not fetch next item QIBaseResult,Kunne ikke finde arrayCould not find array QIBaseResult4Kunne ikke hente arraydataCould not get array data QIBaseResultDKunne ikke hente foresprgselsinfoCould not get query info QIBaseResultFKunne ikke hente udsagnsinformationCould not get statement info QIBaseResult6Kunne ikke forberede udsagnCould not prepare statement QIBaseResultDKunne ikke pbegynde transaktionenCould not start transaction QIBaseResult.Kunne ikke lukke udsagnUnable to close statement QIBaseResultFKunne ikke gennemfre transaktionenUnable to commit transaction QIBaseResult.Kunne ikke oprette BLOBUnable to create BLOB QIBaseResult<Kunne ikke udfre foresprgselUnable to execute query QIBaseResult(Kunne ikke bne BLOBUnable to open BLOB QIBaseResult(Kunne ikke lse BLOBUnable to read BLOB QIBaseResult,Kunne ikke skrive BLOBUnable to write BLOB QIBaseResult<Ingen plads tilbage p enhedenNo space left on device QIODevice:Fil eller katalog findes ikkeNo such file or directory QIODevice"Tilladelse ngtetPermission denied QIODevice6Der er for mange bne filerToo many open files QIODeviceUkendt fejl Unknown error QIODevice*Mac OS X input-metodeMac OS X input method QInputContext(Windows input-metodeWindows input method QInputContextXIM QInputContext XIM input-metodeXIM input method QInputContext"Indtast en vrdi:Enter a value: QInputDialogBKan ikke indlse bibliotek %1: %2Cannot load library %1: %2QLibraryDKan ikke lse symbol "%1" i %2: %3$Cannot resolve symbol "%1" in %2: %3QLibraryLKan ikke afregistrere bibliotek %1: %2Cannot unload library %1: %2QLibraryjPlugin-verifikationsdata er sat forkert sammen i '%1')Plugin verification data mismatch in '%1'QLibraryPFilen '%1' er ikke et gyldigt Qt-plugin.'The file '%1' is not a valid Qt plugin.QLibrary|Plugin '%1' bruger inkompatibelt Qt-bibliotek. (%2.%3.%4) [%5]=The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]QLibraryPlugin '%1' bruger inkompatibelt Qt-bibliotek. (Ikke muligt at mikse debug og release-biblioteker)WThe plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)QLibraryPlugin '%1' bruger inkompatibelt Qt-bibliotek. Forventet build key "%2", hentede "%3"'OThe plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"QLibrary*DSO blev ikke fundet.!The shared library was not found.QLibraryUkendt fejl' Unknown errorQLibrary&Kopir&Copy QLineEdit&St ind&Paste QLineEdit&Gendan&Redo QLineEdit&Fortryd&Undo QLineEdit K&lipCu&t QLineEditSletDelete QLineEditMarkr alt Select All QLineEdit$%1: Adresse i brug%1: Address in use QLocalServer%1: Navnefejl%1: Name error QLocalServer*%1: Tilladelse ngtet%1: Permission denied QLocalServer$%1: Ukendt fejl %2%1: Unknown error %2 QLocalServer(%1: Forbindelsesfejl%1: Connection error QLocalSocket,%1: Forbindelse afvist%1: Connection refused QLocalSocket2%1: Datagram er for stort%1: Datagram too large QLocalSocket"%1: Ugyldigt navn%1: Invalid name QLocalSocket4%1: Den anden ende lukkede%1: Remote closed QLocalSocket0%1: Fejl i socket-adgang%1: Socket access error QLocalSocket:%1: Socket-handling timed out%1: Socket operation timed out QLocalSocket6%1: Fejl i socket-ressource%1: Socket resource error QLocalSocketN%1: Socket-handlingen understttes ikke)%1: The socket operation is not supported QLocalSocket%1: Ukendt fejl%1: Unknown error QLocalSocket$%1: Ukendt fejl %2%1: Unknown error %2 QLocalSocketDKunne ikke pbegynde transaktionenUnable to begin transaction QMYSQLDriverFKunne ikke gennemfre transaktionenUnable to commit transaction QMYSQLDriver&Kunne ikke forbindeUnable to connect QMYSQLDriver6Kunne ikke bne databasen 'Unable to open database ' QMYSQLDriverLKunne ikke tilbagetrkke transaktionenUnable to rollback transaction QMYSQLDriver4Kunne ikke binde udvrdierUnable to bind outvalues QMYSQLResult0Kunne ikke tildele vrdiUnable to bind value QMYSQLResultHKunne ikke udfre nste foresprgselUnable to execute next query QMYSQLResult<Kunne ikke udfre foresprgselUnable to execute query QMYSQLResult0Kunne ikke udfre udsagnUnable to execute statement QMYSQLResult*Kunne ikke hente dataUnable to fetch data QMYSQLResult6Kunne ikke forberede udsagnUnable to prepare statement QMYSQLResult6Kunne ikke nulstille udsagnUnable to reset statement QMYSQLResult>Kunne ikke gemme nste resultatUnable to store next result QMYSQLResult6Kunne ikke gemme resultatetUnable to store result QMYSQLResultDKunne ikke gemme udsagnsresultater!Unable to store statement results QMYSQLResult(Uden titel) (Untitled)QMdiArea %1 - [%2] QMdiSubWindow&Luk&Close QMdiSubWindow &Flyt&Move QMdiSubWindow&Gendan&Restore QMdiSubWindow&Strrelse&Size QMdiSubWindow- [%1] QMdiSubWindowLukClose QMdiSubWindow HjlpHelp QMdiSubWindowMa&ksimr Ma&ximize QMdiSubWindowMaksimrMaximize QMdiSubWindowMenu QMdiSubWindowMi&nimr Mi&nimize QMdiSubWindowMinimrMinimize QMdiSubWindow GendanRestore QMdiSubWindowGendan Ned Restore Down QMdiSubWindow SkyggeShade QMdiSubWindowBliv &oppe Stay on &Top QMdiSubWindowFjern skyggeUnshade QMdiSubWindowLukCloseQMenu UdfrExecuteQMenubnOpenQMenu Om QtAbout Qt QMessageBox HjlpHelp QMessageBox"Skjul detaljer...Hide Details... QMessageBoxOK QMessageBoxVis detaljer...Show Details... QMessageBoxMarkr IM Select IMQMultiInputContext<Multiple input metode-switcherMultiple input method switcherQMultiInputContextPluginMultiple input metode-switcher, der benytter tekstkontrollernes kontekstmenuerMMultiple input method switcher that uses the context menu of the text widgetsQMultiInputContextPluginZEn anden socket lytter allerede p samme port4Another socket is already listening on the same portQNativeSocketEngine~Forsg p at bruge IPv6-socket p en platform uden IPv6-support=Attempt to use IPv6 socket on a platform with no IPv6 supportQNativeSocketEngine$Forbindelse afvistConnection refusedQNativeSocketEngine,Forbindelsen timed outConnection timed outQNativeSocketEngineXDatagrammet var for stort til at blive sendtDatagram was too large to sendQNativeSocketEngine0Vrt er ikke tilgngeligHost unreachableQNativeSocketEngine2Ugyldig socket-deskriptorInvalid socket descriptorQNativeSocketEngineNetvrksfejl Network errorQNativeSocketEngine:Netvrksoperationen timed outNetwork operation timed outQNativeSocketEngine<Netvrket er ikke tilgngeligtNetwork unreachableQNativeSocketEngine,Handling p non-socketOperation on non-socketQNativeSocketEngine*Ikke flere ressourcerOut of resourcesQNativeSocketEngine"Tilladelse ngtetPermission deniedQNativeSocketEngine>Protokoltypen understttes ikkeProtocol type not supportedQNativeSocketEngine8Adressen er ikke tilgngeligThe address is not availableQNativeSocketEngine*Adressen er beskyttetThe address is protectedQNativeSocketEngineJDen bundne adresse er allerede i brug#The bound address is already in useQNativeSocketEnginePProxytypen er ugyldig til denne handling,The proxy type is invalid for this operationQNativeSocketEngineBFjern-hosten lukkede forbindelsen%The remote host closed the connectionQNativeSocketEnginePKunne ikke initialisere broadcast-socket%Unable to initialize broadcast socketQNativeSocketEngineVKunne ikke initialisere non-blocking socket(Unable to initialize non-blocking socketQNativeSocketEngine8Kunne ikke modtage en beskedUnable to receive a messageQNativeSocketEngine4Kunne ikke sende en beskedUnable to send a messageQNativeSocketEngine"Kunne ikke skriveUnable to writeQNativeSocketEngineUkendt fejl Unknown errorQNativeSocketEngineDSocket-operation ikke understttetUnsupported socket operationQNativeSocketEngine8Der opstod fejl i at bne %1Error opening %1QNetworkAccessCacheBackendUgyldig URI: %1Invalid URI: %1QNetworkAccessDataBackendbFjern-host lukkede forbindelsen for tidligt p %13Remote host closed the connection prematurely on %1QNetworkAccessDebugPipeBackend*Socket-fejl p %1: %2Socket error on %1: %2QNetworkAccessDebugPipeBackendVSkrivefejl mens der blev skrevet til %1: %2Write error writing to %1: %2QNetworkAccessDebugPipeBackendJKan ikke bne %1: Stien er et katalog#Cannot open %1: Path is a directoryQNetworkAccessFileBackend@Der opstod fejl i at bne %1: %2Error opening %1: %2QNetworkAccessFileBackendLLsefejl mens der blev lst fra %1: %2Read error reading from %1: %2QNetworkAccessFileBackendLAnmodning om at bne ikke-lokal fil %1%Request for opening non-local file %1QNetworkAccessFileBackendVSkrivefejl mens der blev skrevet til %1: %2Write error writing to %1: %2QNetworkAccessFileBackend>Kan ikke bne %1: Er et katalogCannot open %1: is a directoryQNetworkAccessFtpBackendJDer opstod fejl i at downloade %1: %2Error while downloading %1: %2QNetworkAccessFtpBackendFDer opstod fejl i at uploade %1: %2Error while uploading %1: %2QNetworkAccessFtpBackendpDer opstod fejl i at logge p %1: Autentificering krves0Logging in to %1 failed: authentication requiredQNetworkAccessFtpBackend@Ingen passende proxy blev fundetNo suitable proxy foundQNetworkAccessFtpBackend@Ingen passende proxy blev fundetNo suitable proxy foundQNetworkAccessHttpBackendpDer opstod fejl i at downloade %1 - serveren svarede: %2)Error downloading %1 - server replied: %2 QNetworkReply4Protokollen "%1" er ukendtProtocol "%1" is unknown QNetworkReply0Handling blev annulleretOperation canceledQNetworkReplyImplDKunne ikke pbegynde transaktionenUnable to begin transaction QOCIDriverFKunne ikke gennemfre transaktionenUnable to commit transaction QOCIDriver.Kunne ikke initialisereUnable to initialize QOCIDriver&Kunne ikke logge pUnable to logon QOCIDriverLKunne ikke tilbagetrkke transaktionenUnable to rollback transaction QOCIDriver4Kunne ikke allokere udsagnUnable to alloc statement QOCIResultZKunne ikke tildele kolonne til batch-udfrsel'Unable to bind column for batch execute QOCIResult0Kunne ikke tildele vrdiUnable to bind value QOCIResult<Kunne ikke udfre batch-udsagn!Unable to execute batch statement QOCIResult0Kunne ikke udfre udsagnUnable to execute statement QOCIResult6Kunne ikke g til den nsteUnable to goto next QOCIResult6Kunne ikke forberede udsagnUnable to prepare statement QOCIResultFKunne ikke gennemfre transaktionenUnable to commit transaction QODBCDriver&Kunne ikke forbindeUnable to connect QODBCDriver:Kunne ikke sl auto-udfr fraUnable to disable autocommit QODBCDriver:Kunne ikke sl auto-udfr tilUnable to enable autocommit QODBCDriverLKunne ikke tilbagetrkke transaktionenUnable to rollback transaction QODBCDriverQODBCResult::reset: Kunne ikke indstille 'SQL_CURSOR_STATIC' til udsagnsattribut. Kontrollr ODBC-driver-konfigurationenyQODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResult6Kunne ikke tildele variabelUnable to bind variable QODBCResult0Kunne ikke udfre udsagnUnable to execute statement QODBCResult Kunne ikke henteUnable to fetch QODBCResult6Kunne ikke hente den frsteUnable to fetch first QODBCResult6Kunne ikke hente den sidsteUnable to fetch last QODBCResult4Kunne ikke hente den nsteUnable to fetch next QODBCResult8Kunne ikke hente den forrigeUnable to fetch previous QODBCResult6Kunne ikke forberede udsagnUnable to prepare statement QODBCResultNavnNameQPPDOptionsModel VrdiValueQPPDOptionsModel@Kunne ikke pbegynde transaktionCould not begin transaction QPSQLDriverBKunne ikke gennemfre transaktionCould not commit transaction QPSQLDriverHKunne ikke tilbagetrkke transaktionCould not rollback transaction QPSQLDriver8Kunne ikke skabe forbindelseUnable to connect QPSQLDriver&Kunne ikke tilmeldeUnable to subscribe QPSQLDriver$Kunne ikke afmeldeUnable to unsubscribe QPSQLDriver>Kunne ikke oprette foresprgselUnable to create query QPSQLResult6Kunne ikke forberede udsagnUnable to prepare statement QPSQLResultCentimeter (cm)Centimeters (cm)QPageSetupWidgetFormQPageSetupWidget Hjde:Height:QPageSetupWidget Inches (in)QPageSetupWidgetLandskab LandscapeQPageSetupWidgetMargenerMarginsQPageSetupWidgetMillimeter (mm)Millimeters (mm)QPageSetupWidget OrientationQPageSetupWidgetSidestrrelse: Page size:QPageSetupWidget PapirPaperQPageSetupWidgetPapirkilde: Paper source:QPageSetupWidgetPoint (pt) Points (pt)QPageSetupWidgetPortrtPortraitQPageSetupWidget Omvendt landskabReverse landscapeQPageSetupWidgetOmvendt portrtReverse portraitQPageSetupWidget Vidde:Width:QPageSetupWidgetMargen - bund bottom marginQPageSetupWidget Margen - venstre left marginQPageSetupWidgetMargen - hjre right marginQPageSetupWidgetMargen - verst top marginQPageSetupWidget2Plugin blev ikke indlst.The plugin was not loaded. QPluginLoaderUkendt fejl Unknown error QPluginLoaderX%1 findes allerede. nsker du at overskrive?/%1 already exists. Do you want to overwrite it? QPrintDialogP%1 er et katalog. Vlg et andet filnavn.7%1 is a directory. Please choose a different file name. QPrintDialog &Indstillinger<< &Options << QPrintDialog &Indstillinger>> &Options >> QPrintDialog&Udskriv&Print QPrintDialogB<qt>nsker du at overskrive?</qt>%Do you want to overwrite it? QPrintDialogA0 QPrintDialogA0 (841 x 1189 mm) QPrintDialogA1 QPrintDialogA1 (594 x 841 mm) QPrintDialogA2 QPrintDialogA2 (420 x 594 mm) QPrintDialogA3 QPrintDialogA3 (297 x 420 mm) QPrintDialogA4 QPrintDialog%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialogA5 QPrintDialogA5 (148 x 210 mm) QPrintDialogA6 QPrintDialogA6 (105 x 148 mm) QPrintDialogA7 QPrintDialogA7 (74 x 105 mm) QPrintDialogA8 QPrintDialogA8 (52 x 74 mm) QPrintDialogA9 QPrintDialogA9 (37 x 52 mm) QPrintDialogAliasser: %1 Aliases: %1 QPrintDialogB0 QPrintDialogB0 (1000 x 1414 mm) QPrintDialogB1 QPrintDialogB1 (707 x 1000 mm) QPrintDialogB10 QPrintDialogB10 (31 x 44 mm) QPrintDialogB2 QPrintDialogB2 (500 x 707 mm) QPrintDialogB3 QPrintDialogB3 (353 x 500 mm) QPrintDialogB4 QPrintDialogB4 (250 x 353 mm) QPrintDialogB5 QPrintDialog%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialogB6 QPrintDialogB6 (125 x 176 mm) QPrintDialogB7 QPrintDialogB7 (88 x 125 mm) QPrintDialogB8 QPrintDialogB8 (62 x 88 mm) QPrintDialogB9 QPrintDialogB9 (44 x 62 mm) QPrintDialogC5E QPrintDialogC5E (163 x 229 mm) QPrintDialogBrugerdefineretCustom QPrintDialogDLE QPrintDialogDLE (110 x 220 mm) QPrintDialog Executive QPrintDialog)Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialogbFilen %1 kan ikke skrives. Vlg et andet filnavn.=File %1 is not writable. Please choose a different file name. QPrintDialogFil findes File exists QPrintDialogFolio QPrintDialogFolio (210 x 330 mm) QPrintDialogLedger QPrintDialogLedger (432 x 279 mm) QPrintDialogLegal QPrintDialog%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialogLetter QPrintDialog&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialogLokal fil Local file QPrintDialogOK QPrintDialogUdskrivPrint QPrintDialog$Udskriv til fil...Print To File ... QPrintDialogUdskriv alle Print all QPrintDialogUdskriftsomrde Print range QPrintDialog"Udskriv markeredePrint selection QPrintDialog*Udskriv til fil (PDF)Print to File (PDF) QPrintDialog8Udskriv til fil (Postscript)Print to File (Postscript) QPrintDialogTabloid QPrintDialogTabloid (279 x 432 mm) QPrintDialogj'Fra'-vrdien kan ikke vre strre end 'til'-vrdien.7The 'From' value cannot be greater than the 'To' value. QPrintDialogUS Common #10 Envelope QPrintDialog%US Common #10 Envelope (105 x 241 mm) QPrintDialogSkriv %1 fil Write %1 file QPrintDialog lokalt forbundetlocally connected QPrintDialog Ukendtunknown QPrintDialog%1%QPrintPreviewDialogLukCloseQPrintPreviewDialog"Eksportr til PDF Export to PDFQPrintPreviewDialog0Eksportr til PostScriptExport to PostScriptQPrintPreviewDialogFrste side First pageQPrintPreviewDialogTilpas sidenFit pageQPrintPreviewDialogTilpas bredde Fit widthQPrintPreviewDialogLandskab LandscapeQPrintPreviewDialogSidste side Last pageQPrintPreviewDialogNste side Next pageQPrintPreviewDialogSideopstning Page SetupQPrintPreviewDialogSideopstning Page setupQPrintPreviewDialogPortrtPortraitQPrintPreviewDialogForrige side Previous pageQPrintPreviewDialogUdskrivPrintQPrintPreviewDialogVis udskrift Print PreviewQPrintPreviewDialogVis sideopslagShow facing pagesQPrintPreviewDialog4Vis oversigt af alle siderShow overview of all pagesQPrintPreviewDialogVis enkelt sideShow single pageQPrintPreviewDialogZoom indZoom inQPrintPreviewDialogZoom udZoom outQPrintPreviewDialogAvanceretAdvancedQPrintPropertiesWidgetFormFormQPrintPropertiesWidgetSidePageQPrintPropertiesWidgetSamordneCollateQPrintSettingsOutput FarveColorQPrintSettingsOutputFarvetilstand Color ModeQPrintSettingsOutput KopierCopiesQPrintSettingsOutputKopier:Copies:QPrintSettingsOutputDobbelsidetDuplex PrintingQPrintSettingsOutputFormQPrintSettingsOutputGrskala GrayscaleQPrintSettingsOutputBog Long sideQPrintSettingsOutput IngenNoneQPrintSettingsOutputValgmulighederOptionsQPrintSettingsOutput,UdskriftsindstillingerOutput SettingsQPrintSettingsOutputSider fra Pages fromQPrintSettingsOutputUdskriv alle Print allQPrintSettingsOutputUdskriv sider Print rangeQPrintSettingsOutputOmvendtReverseQPrintSettingsOutputValg SelectionQPrintSettingsOutput Tavle Short sideQPrintSettingsOutputtiltoQPrintSettingsOutput &Navn:&Name: QPrintWidget... QPrintWidgetForm QPrintWidgetPlacering: Location: QPrintWidgetUdskrifts&fil: Output &file: QPrintWidget&Egenskaber P&roperties QPrintWidgetVis udskriftPreview QPrintWidget'Printer QPrintWidgetType: QPrintWidgetZKunne ikke bne input redirection for lsning,Could not open input redirection for readingQProcess`Kunne ikke bne output redirection for skrivning-Could not open output redirection for writingQProcess6Fejl ved lsning fra procesError reading from processQProcess:Fejl ved skrivning til procesError writing to processQProcess.Intet program defineretNo program definedQProcessProces crashedeProcess crashedQProcess2Proces-operation time outProcess operation timed outQProcess<Ressource fejl (fork fejl): %1!Resource error (fork failure): %1QProcessAnnullerCancelQProgressDialogbnOpen QPushButtonKontrollrCheck QRadioButton2drlig char class syntaksbad char class syntaxQRegExp0drlig lookahead syntaksbad lookahead syntaxQRegExp2drlig gentagelsessyntaksbad repetition syntaxQRegExp>deaktiveret funktion blev brugtdisabled feature usedQRegExp$ugyldigt oktal-talinvalid octal valueQRegExp(nede interne grnsemet internal limitQRegExp6Manglende venstre delimitermissing left delimQRegExp*der opstod ingen fejlno error occurredQRegExp$uventet afslutningunexpected endQRegExpLDer opstod fejl ved bning af databaseError opening databaseQSQLite2DriverDKunne ikke pbegynde transaktionenUnable to begin transactionQSQLite2DriverFKunne ikke gennemfre transaktionenUnable to commit transactionQSQLite2Driver6Kunne ikke udfre statementUnable to execute statementQSQLite2Result6Kunne ikke hente resultaterUnable to fetch resultsQSQLite2ResultNDer opstod fejl ved lukning af databaseError closing database QSQLiteDriverLDer opstod fejl ved bning af databaseError opening database QSQLiteDriverDKunne ikke pbegynde transaktionenUnable to begin transaction QSQLiteDriverBKunne ikke gennemfre transaktionUnable to commit transaction QSQLiteDriverHKunne ikke tilbagetrkke transaktionUnable to rollback transaction QSQLiteDriver&Ingen foresprgeselNo query QSQLiteResult:Misforhold i parametertllingParameter count mismatch QSQLiteResult2Unable to bind parametersUnable to bind parameters QSQLiteResult0Kunne ikke udfre udsagnUnable to execute statement QSQLiteResult,Kunne ikke hente rkkeUnable to fetch row QSQLiteResult6Kunne ikke nulstille udsagnUnable to reset statement QSQLiteResultSletDeleteQScriptBreakpointsWidgetFortstContinueQScriptDebuggerLukCloseQScriptDebuggerCodeFinderWidgetNavnNameQScriptDebuggerLocalsModel VrdiValueQScriptDebuggerLocalsModelNavnNameQScriptDebuggerStackModelSgSearchQScriptEngineDebuggerLukCloseQScriptNewBreakpointWidgetBundBottom QScrollBarVenstre kant Left edge QScrollBarLinie ned Line down QScrollBarLinie opLine up QScrollBarSide ned Page down QScrollBarSide venstre Page left QScrollBarSide hjre Page right QScrollBarSide verstPage up QScrollBarPlaceringPosition QScrollBarHjre kant Right edge QScrollBarScroll ned Scroll down QScrollBarScroll her Scroll here QScrollBar$Scroll til venstre Scroll left QScrollBar Scroll til hjre Scroll right QScrollBarScroll op Scroll up QScrollBar verstTop QScrollBar&%1: Findes allerede%1: already exists QSharedMemory<%1: create size is less then 0%1: create size is less then 0 QSharedMemory%1: Findes ikke%1: doesn't exists QSharedMemory(%1: ftok mislykkedes%1: ftok failed QSharedMemory*%1: Ugyldig strrelse%1: invalid size QSharedMemory %1: ngle er tom%1: key is empty QSharedMemory$%1: Ikke vedhftet%1: not attached QSharedMemory2%1: Ikke flere ressourcer%1: out of resources QSharedMemory*%1: Tilladelse ngtet%1: permission denied QSharedMemoryL%1: Strrelsesforesprgsel mislykkedes%1: size query failed QSharedMemoryT%1: System-plagte strrelsesrestriktioner$%1: system-imposed size restrictions QSharedMemory&%1: Kunne ikke lse%1: unable to lock QSharedMemory8%1: Kunne ikke oprette ngle%1: unable to make key QSharedMemory8%1: Kunne ikke oprette ngle%1: unable to set key on lock QSharedMemory8%1: Kunne ikke oprette ngle%1: unable to unlock QSharedMemory$%1: ukendt fejl %2%1: unknown error %2 QSharedMemory+ QShortcutAlt QShortcutTilbageBack QShortcutTilbage Backspace QShortcut"Tilbage-tabulatorBacktab QShortcut Bass Boost QShortcutBass ned Bass Down QShortcutBass opBass Up QShortcutRing tilCall QShortcut Caps Lock QShortcut'CapsLock QShortcutRydClear QShortcutLukClose QShortcutKontekst1Context1 QShortcutKontekst2Context2 QShortcutKontekst3Context3 QShortcutKontekst4Context4 QShortcut KopirCopy QShortcutCtrl QShortcutKlipCut QShortcutDel QShortcutDelete QShortcutNedDown QShortcutEnd QShortcutEnter QShortcutEsc QShortcutEscape QShortcutF%1 QShortcut Favorites QShortcutVendFlip QShortcutFremForward QShortcut Lg pHangup QShortcut HjlpHelp QShortcutHome QShortcutStartside Home Page QShortcutIns QShortcutInsert QShortcutStart (0) Launch (0) QShortcutStart (1) Launch (1) QShortcutStart (2) Launch (2) QShortcutStart (3) Launch (3) QShortcutStart (4) Launch (4) QShortcutStart (5) Launch (5) QShortcutStart (6) Launch (6) QShortcutStart (7) Launch (7) QShortcutStart (8) Launch (8) QShortcutStart (9) Launch (9) QShortcutStart (A) Launch (A) QShortcutStart (B) Launch (B) QShortcutStart (C) Launch (C) QShortcutStart (D) Launch (D) QShortcutStart (E) Launch (E) QShortcutStart (F) Launch (F) QShortcutStart mail Launch Mail QShortcutStart Media Launch Media QShortcutVenstreLeft QShortcutMedia nste Media Next QShortcut Media Play QShortcutMedia forrigeMedia Previous QShortcut Media Record QShortcut Media Stop QShortcutMenu QShortcutMeta QShortcut MusikMusic QShortcutNejNo QShortcutNum Lock QShortcutNumLock QShortcut Number Lock QShortcutbn URLOpen URL QShortcut Page Down QShortcutPage Up QShortcutSt indPaste QShortcutPause QShortcutPgDown QShortcutPgUp QShortcutUdskrivPrint QShortcut Print Screen QShortcutOpdaterRefresh QShortcutGenindlsReload QShortcutReturn QShortcut HjreRight QShortcutGemSave QShortcut Scroll Lock QShortcut ScrollLock QShortcutSgSearch QShortcutVgSelect QShortcutShift QShortcutSpace QShortcutStandby QShortcutStop QShortcutSysReq QShortcutSystem Request QShortcutTab QShortcutDiskant ned Treble Down QShortcutDiskant op Treble Up QShortcutOpUp QShortcutLydstyrke ned Volume Down QShortcutLydstyrke mute Volume Mute QShortcutLydstyrke op Volume Up QShortcutJaYes QShortcutSide ned Page downQSliderSide venstre Page leftQSliderSide hjre Page rightQSliderSide opPage upQSliderPlaceringPositionQSlider:Adressetype understttes ikkeAddress type not supportedQSocks5SocketEngineRForbindelse ikke tilladt a SOCKSv5-server(Connection not allowed by SOCKSv5 serverQSocks5SocketEngineHProxy-forbindelse afsluttede i utide&Connection to proxy closed prematurelyQSocks5SocketEngine2Proxy-forbindelse ngtedeConnection to proxy refusedQSocks5SocketEngineBProxy-serverforbindelse timed outConnection to proxy timed outQSocks5SocketEngine4General SOCKSv5 serverfejlGeneral SOCKSv5 server failureQSocks5SocketEngine:Netvrksoperationen timed outNetwork operation timed outQSocks5SocketEngineBProxy autentificering mislykkedesProxy authentication failedQSocks5SocketEngineJProxy autentificering mislykkedes: %1Proxy authentication failed: %1QSocks5SocketEngine8Proxy-host kunne ikke findesProxy host not foundQSocks5SocketEngine8SOCKS version 5 protokolfejlSOCKS version 5 protocol errorQSocks5SocketEngineDSOCKSv5-kommando ikke understttetSOCKSv5 command not supportedQSocks5SocketEngineTTL udlbet TTL expiredQSocks5SocketEngineDUkendt SOCKSv5 proxy fejlkode 0x%1%Unknown SOCKSv5 proxy error code 0x%1QSocks5SocketEngineAnnullerCancelQSoftKeyManagerValgmulighederOptionsQSoftKeyManagerVgSelectQSoftKeyManager MindreLessQSpinBoxMereMoreQSpinBoxAnnullerCancelQSql>Skal dine ndringer annulleres?Cancel your edits?QSqlBekrftConfirmQSqlSletDeleteQSql Slet denne post?Delete this record?QSql IndstInsertQSqlNejNoQSqlGem ndringer? Save edits?QSqlOpdaterUpdateQSqlJaYesQSqlTKan ikke give et certifikat uden ngle, %1,Cannot provide a certificate with no key, %1 QSslSocketjDer opstod fejl under oprettelse af SSL-kontekst (%1)Error creating SSL context (%1) QSslSocketfDer opstod fejl under oprettelse af SSL-session, %1Error creating SSL session, %1 QSslSocketfDer opstod fejl under oprettelse af SSL-session, %1Error creating SSL session: %1 QSslSocketTDer opstod en fejl under SSL handshake: %1Error during SSL handshake: %1 QSslSocketrDer opstod fejl under indlsning af lokalt certifikat, %1#Error loading local certificate, %1 QSslSockethDer opstod fejl under indlsning af privat ngle, %1Error loading private key, %1 QSslSocketNDer opstod en fejl under lsning af: %1Error while reading: %1 QSslSocketFUgyldig eller tom chifferliste (%1)!Invalid or empty cipher list (%1) QSslSocket4Kunne ikke skrive data: %1Unable to write data: %1 QSslSocketLDer opstod fejl ved bning af databaseError opening database QSymSQLDriverDKunne ikke pbegynde transaktionenUnable to begin transaction QSymSQLDriver:Misforhold i parametertllingParameter count mismatch QSymSQLResult2Unable to bind parametersUnable to bind parameters QSymSQLResult,Kunne ikke hente rkkeUnable to fetch row QSymSQLResult6Kunne ikke nulstille udsagnUnable to reset statement QSymSQLResultZEn anden socket lytter allerede p samme port4Another socket is already listening on the same portQSymbianSocketEngine~Forsg p at bruge IPv6-socket p en platform uden IPv6-support=Attempt to use IPv6 socket on a platform with no IPv6 supportQSymbianSocketEngine$Forbindelse afvistConnection refusedQSymbianSocketEngine,Forbindelsen timed outConnection timed outQSymbianSocketEngineXDatagrammet var for stort til at blive sendtDatagram was too large to sendQSymbianSocketEngine0Vrt er ikke tilgngeligHost unreachableQSymbianSocketEngine2Ugyldig socket-deskriptorInvalid socket descriptorQSymbianSocketEngineNetvrksfejl Network errorQSymbianSocketEngine:Netvrksoperationen timed outNetwork operation timed outQSymbianSocketEngine<Netvrket er ikke tilgngeligtNetwork unreachableQSymbianSocketEngine,Handling p non-socketOperation on non-socketQSymbianSocketEngine*Ikke flere ressourcerOut of resourcesQSymbianSocketEngine"Tilladelse ngtetPermission deniedQSymbianSocketEngine>Protokoltypen understttes ikkeProtocol type not supportedQSymbianSocketEngine8Adressen er ikke tilgngeligThe address is not availableQSymbianSocketEngine*Adressen er beskyttetThe address is protectedQSymbianSocketEngineJDen bundne adresse er allerede i brug#The bound address is already in useQSymbianSocketEnginePProxytypen er ugyldig til denne handling,The proxy type is invalid for this operationQSymbianSocketEngineBFjern-hosten lukkede forbindelsen%The remote host closed the connectionQSymbianSocketEnginePKunne ikke initialisere broadcast-socket%Unable to initialize broadcast socketQSymbianSocketEngineVKunne ikke initialisere non-blocking socket(Unable to initialize non-blocking socketQSymbianSocketEngine8Kunne ikke modtage en beskedUnable to receive a messageQSymbianSocketEngine4Kunne ikke sende en beskedUnable to send a messageQSymbianSocketEngine"Kunne ikke skriveUnable to writeQSymbianSocketEngineDSocket-operation ikke understttetUnsupported socket operationQSymbianSocketEngine&%1: Findes allerede%1: already existsQSystemSemaphore%1: Findes ikke%1: does not existQSystemSemaphore2%1: Ikke flere ressourcer%1: out of resourcesQSystemSemaphore*%1: Tilladelse ngtet%1: permission deniedQSystemSemaphore$%1: Ukendt fejl %2%1: unknown error %2QSystemSemaphore@Kunne ikke etablere forbindelsenUnable to open connection QTDSDriver4Kunne ikke bruge databasenUnable to use database QTDSDriverAktivrActivateQTabBarLukCloseQTabBarTryk pPressQTabBar$Scroll til venstre Scroll LeftQTabBar Scroll til hjre Scroll RightQTabBarDSocket-operation ikke understttet$Operation on socket is not supported QTcpServer&Kopir&Copy QTextControl&St ind&Paste QTextControl&Gendan&Redo QTextControl&Fortryd&Undo QTextControlKopir l&inkCopy &Link Location QTextControl K&lipCu&t QTextControlSletDelete QTextControlMarkr alt Select All QTextControlbnOpen QToolButtonTryk pPress QToolButtonJDenne platform understtter ikke IPv6#This platform does not support IPv6 QUdpSocket GendanDefault text for redo actionRedo QUndoGroupFortrydDefault text for undo actionUndo QUndoGroup <tom> QUndoModel GendanDefault text for redo actionRedo QUndoStackFortrydDefault text for undo actionUndo QUndoStack Insert Unicode control characterQUnicodeControlCharacterMenu$LRE Start of left-to-right embeddingQUnicodeControlCharacterMenuLRM Left-to-right markQUnicodeControlCharacterMenu#LRO Start of left-to-right overrideQUnicodeControlCharacterMenuPDF Pop directional formattingQUnicodeControlCharacterMenu$RLE Start of right-to-left embeddingQUnicodeControlCharacterMenuRLM Right-to-left markQUnicodeControlCharacterMenu#RLO Start of right-to-left overrideQUnicodeControlCharacterMenuZWJ Zero width joinerQUnicodeControlCharacterMenuZWNJ Zero width non-joinerQUnicodeControlCharacterMenuZWSP Zero width spaceQUnicodeControlCharacterMenu"Kan ikke vise URLCannot show URL QWebFrame.Kan ikke vise MIME-typeCannot show mimetype QWebFrame"Filen findes ikkeFile does not exist QWebFrame$Anmodning blokeretRequest blocked QWebFrame(Anmodning annulleretRequest cancelled QWebFrame"%1 (%2x%3 pixels)%1 (%2x%3 pixels)QWebPage %n fil%n filer %n file(s)QWebPage"Tilfj til ordbogAdd To DictionaryQWebPageFedBoldQWebPageBundBottomQWebPageXKr grammatikkontrol sammen med stavekontrolCheck Grammar With SpellingQWebPage Kr stavekontrolCheck SpellingQWebPage@Kr stavekontrol mens der tastesCheck Spelling While TypingQWebPageVlg fil Choose FileQWebPage,Ryd aktuelle sgningerClear recent searchesQWebPage KopirCopyQWebPageKopir billede Copy ImageQWebPageKopir link Copy LinkQWebPageKlipCutQWebPageStandardDefaultQWebPage8Slet til slutningen af ordetDelete to the end of the wordQWebPage2Slet til starten af ordetDelete to the start of the wordQWebPageRetning DirectionQWebPageSkrifttyperFontsQWebPageG tilbageGo BackQWebPageG frem Go ForwardQWebPage@Skjul stave- og grammatikkontrolHide Spelling and GrammarQWebPageIgnorrIgnoreQWebPageIgnorr Ignore Grammar context menu itemIgnoreQWebPageInsert ny linieInsert a new lineQWebPage(Indst et nyt afsnitInsert a new paragraphQWebPageInspicrInspectQWebPage KursivItalicQWebPage*JavaScript alert - %1JavaScript Alert - %1QWebPage.JavaScript Bekrft - %1JavaScript Confirm - %1QWebPage,JavaScript Prompt - %1JavaScript Prompt - %1QWebPageVenstre kant Left edgeQWebPageSl op i ordbogLook Up In DictionaryQWebPageNFlyt markr til slutningen af sektionen'Move the cursor to the end of the blockQWebPagePFlyt markr til slutningen af dokumentet*Move the cursor to the end of the documentQWebPageHFlyt markr til slutningen af linien&Move the cursor to the end of the lineQWebPage4Flyt markr til nste tegn%Move the cursor to the next characterQWebPage6Flyt markr til nste linie Move the cursor to the next lineQWebPage2Flyt markr til nste ord Move the cursor to the next wordQWebPage8Flyt markr til forrige tegn)Move the cursor to the previous characterQWebPage:Flyt markr til forrige linie$Move the cursor to the previous lineQWebPage6Flyt markr til forrige ord$Move the cursor to the previous wordQWebPageHFlyt markr til starten af sektionen)Move the cursor to the start of the blockQWebPageJFlyt markr til starten af dokumentet,Move the cursor to the start of the documentQWebPageBFlyt markr til starten af linien(Move the cursor to the start of the lineQWebPage8Der er ikke fundet nogen gtNo Guesses FoundQWebPage0Der er ikke valgt en filNo file selectedQWebPage0Ingen aktuelle sgningerNo recent searchesQWebPagebn faneblad Open FrameQWebPagebn billede Open ImageQWebPagebn link Open LinkQWebPage bn i nyt vindueOpen in New WindowQWebPage KonturOutlineQWebPageSide ned Page downQWebPageSide venstre Page leftQWebPageSide hjre Page rightQWebPageSide verstPage upQWebPageSt indPasteQWebPage$Aktuelle sgningerRecent searchesQWebPageGenindlsReloadQWebPageNulstilResetQWebPageHjre kant Right edgeQWebPageGem billede Save ImageQWebPageGem link... Save Link...QWebPageScroll ned Scroll downQWebPageScroll her Scroll hereQWebPage$Scroll til venstre Scroll leftQWebPage Scroll til hjre Scroll rightQWebPageScroll op Scroll upQWebPageSg p nettetSearch The WebQWebPageMarkr alt Select AllQWebPage@Vlg til slutningen af sektionenSelect to the end of the blockQWebPageBVlg til slutningen af dokumentet!Select to the end of the documentQWebPage:Vlg til slutningen af linienSelect to the end of the lineQWebPage&Vlg til nste tegnSelect to the next characterQWebPage(Vlg til nste linieSelect to the next lineQWebPage$Vlg til nste ordSelect to the next wordQWebPage*Vlg til forrige tegn Select to the previous characterQWebPage,Vlg til forrige linieSelect to the previous lineQWebPage(Vlg til forrige ordSelect to the previous wordQWebPage:Vlg til starten af sektionen Select to the start of the blockQWebPage<Vlg til starten af dokumentet#Select to the start of the documentQWebPage4Vlg til starten af linienSelect to the start of the lineQWebPage<Vis stave- og grammatikkontrolShow Spelling and GrammarQWebPageStavekontrolSpellingQWebPageStopStopQWebPageSendSubmitQWebPageSendQSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPageTekstretningText DirectionQWebPagePDette er et sgeindeks. Indtast sgeord:3This is a searchable index. Enter search keywords: QWebPageTopQWebPageUnderstreget UnderlineQWebPage UkendtUnknownQWebPage$Web-inspektr - %2Web Inspector - %2QWebPageHvad er dette? What's This?QWhatsThisAction*QWidget&Afslut&FinishQWizard &Hjlp&HelpQWizard &Nste&NextQWizard&Nste >&Next >QWizard< &Tilbage< &BackQWizardAnnullerCancelQWizard UdfrCommitQWizardFortstContinueQWizard FrdigDoneQWizardG tilbageGo BackQWizard HjlpHelpQWizard %1 - [%2] QWorkspace&Luk&Close QWorkspace &Flyt&Move QWorkspace&Gendan&Restore QWorkspace&Strrelse&Size QWorkspace&Fjern skygge&Unshade QWorkspaceLukClose QWorkspaceMa&ksimr Ma&ximize QWorkspaceMi&nimr Mi&nimize QWorkspaceMinimerMinimize QWorkspaceGendan ned Restore Down QWorkspaceSk&yggeSh&ade QWorkspaceBliv p &toppen Stay on &Top QWorkspaceEnkodningsdeklaration eller fri deklaration forventet ved lsning af XML-deklarationYencoding declaration or standalone declaration expected while reading the XML declarationQXmlVfejl i tekstdeklaration p en ekstern enhed3error in the text declaration of an external entityQXmlZder opstod fejl under fortolking af kommentar$error occurred while parsing commentQXmlVder opstod fejl under fortolking af indhold$error occurred while parsing contentQXmltder opstod fejl under fortolking af dokumenttypedefinition5error occurred while parsing document type definitionQXmlVder opstod fejl under fortolking af element$error occurred while parsing elementQXmlZder opstod fejl under fortolking af reference&error occurred while parsing referenceQXmlDFejltilstand rejst af datamodtagererror triggered by consumerQXmlxEksternt parset generel entitetsreference ikke tilladt i DTD;external parsed general entity reference not allowed in DTDQXmlEksternt parset generel entitetsreference ikke tilladt i attributvrdiGexternal parsed general entity reference not allowed in attribute valueQXmlfintern generel entitetsreference ikke tilladt i DTD4internal general entity reference not allowed in DTDQXmlPUgyldigt navn for processing instruction'invalid name for processing instructionQXml"bogstav forventetletter is expectedQXmlLmere end n definition p dokumenttype&more than one document type definitionQXml*der opstod ingen fejlno error occurredQXml&rekursive entiteterrecursive entitiesQXmlpfri deklaration forventet ved lsning af XML-deklarationAstandalone declaration expected while reading the XML declarationQXml tag mismatchQXmluventet tegnunexpected characterQXml2uventet afslutning p filunexpected end of fileQXmlZufortolket enhedsreference i forkert kontekst*unparsed entity reference in wrong contextQXmldversion forventet under lsning af XML-deklaration2version expected while reading the XML declarationQXmlBForkert vrdi for fri deklaration&wrong value for standalone declarationQXmlF%1 er en ugyldig PUBLIC identifier.#%1 is an invalid PUBLIC identifier. QXmlStreamB%1 er et ugyldigt enkodningsnavn.%1 is an invalid encoding name. QXmlStream\%1 er et ugyldigt processing-instruction-navn.-%1 is an invalid processing instruction name. QXmlStream, men fik ' , but got ' QXmlStream*Attribut redefineret.Attribute redefined. QXmlStreamBEnkodning %1 er ikke understttetEncoding %1 is unsupported QXmlStreamFIndhold med forkert enkodning lst.(Encountered incorrectly encoded content. QXmlStream:Enheden '%1' ikke deklareret.Entity '%1' not declared. QXmlStreamForventet Expected  QXmlStream&Forventet tegndata.Expected character data. QXmlStreamDEkstra indhold sidst i dokumentet.!Extra content at end of document. QXmlStream<Ulovligt navnerumsdeklaration.Illegal namespace declaration. QXmlStream$Ugyldigt XML-tegn.Invalid XML character. QXmlStream$Ugyldigt XML-navn.Invalid XML name. QXmlStream8Ugyldigt XML-versionsstreng.Invalid XML version string. QXmlStreamFUgyldig attribut i XML-deklaration.%Invalid attribute in XML declaration. QXmlStream,Ugyldig tegnreference.Invalid character reference. QXmlStream$Ugyldigt dokument.Invalid document. QXmlStream(Ugyldig enhedsvrdi.Invalid entity value. QXmlStreamJUgyldigt processing-instruction-navn.$Invalid processing instruction name. QXmlStreamJNDATA i parameterentitetsdeklaration.&NDATA in parameter entity declaration. QXmlStreamJNavnerumsprfiks '%1' ikke deklareret"Namespace prefix '%1' not declared QXmlStream@bner og afslutter tag-mismatch. Opening and ending tag mismatch. QXmlStream<Dokument sluttede for tidligt.Premature end of document. QXmlStream2Rekursiv entitet opdaget.Recursive entity detected. QXmlStreambReference til ekstern enhed '%1' i attributvrdi.5Reference to external entity '%1' in attribute value. QXmlStreamFReference to ufortolket enhed '%1'."Reference to unparsed entity '%1'. QXmlStreamJSekvens ']]>' ikke tilladt i indhold.&Sequence ']]>' not allowed in content. QXmlStream(Start-tag forventet.Start tag expected. QXmlStreampDen frie pseudo-attribut skal optrde efter enkodningen.?The standalone pseudo attribute must appear after the encoding. QXmlStreamUventet ' Unexpected ' QXmlStreamHUventet tegn '%1' i public id vrdi./Unexpected character '%1' in public id literal. QXmlStream<XML-version understttes ikke.Unsupported XML version. QXmlStreamZXML-deklaration ikke i starten af dokumentet.)XML declaration not at start of document. QXmlStreamVgSelectQmlJSDebugger::QmlToolBarN%1 er ikke en gyldig vrdi af typen %2.#%1 is not a valid value of type %2. QtXmlPatternsNMindst en komponent skal vre tilstede.'At least one component must be present. QtXmlPatternsvMindst en tidskomponent skal optrde efter %1-skillemrket.?At least one time component must appear after the %1-delimiter. QtXmlPatterns>Dag %1 er ugyldig for mnet %2.Day %1 is invalid for month %2. QtXmlPatternsJDag %1 er udenfor intervallet %2..%3.#Day %1 is outside the range %2..%3. QtXmlPatternsDivision af vrdi af typen %1 med %2 (ikke et tal) er ikke tilladt.@Dividing a value of type %1 by %2 (not-a-number) is not allowed. QtXmlPatternsRDivision (%1) med nul (%2) er udefineret.(Division (%1) by zero (%2) is undefined. QtXmlPatternsElement %1 kan ikke serialiseres fordi det optrder udenfor dokument-elementet.OElement %1 can't be serialized because it appears outside the document element. QtXmlPatterns`Heltalsdivision (%1) med nul (%2) er udefineret.0Integer division (%1) by zero (%2) is undefined. QtXmlPatterns`Modulusdivision (%1) med nul (%2) er udefineret.0Modulus division (%1) by zero (%2) is undefined. QtXmlPatternsNMned %1 er udenfor intervallet %2..%3.%Month %1 is outside the range %2..%3. QtXmlPatterns Netvrk timeout.Network timeout. QtXmlPatternsPOverflow: Kan ikke reprsentere dato %1."Overflow: Can't represent date %1. QtXmlPatternsLOverflow: Dato kan ikke reprsenteres.$Overflow: Date can't be represented. QtXmlPatternsDTidspunkt %1:%2:%3.%4 er ugyldigt.Time %1:%2:%3.%4 is invalid. QtXmlPatternsTidspunkt 24:%1:%2.%3 er ugyldigt. Timetal er 24, men minutter, sekunder og millisekunder er ikke alle 0; _Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0;  QtXmlPatternslVed cast til %1 fra %2, kan kildevrdien ikke vre %3.:When casting to %1 from %2, the source value cannot be %3. QtXmlPatternsRr %1 er ugyldigt da det begynder med %2.-Year %1 is invalid because it begins with %2. QtXmlPatternsqupzilla-1.6.0/bin/locale/qt_de.qm000066400000000000000000011726661226107126500170460ustar00rootroot00000000000000%>%(D֍8֍֍N֍,5E60N0u0{00H05J4 9  Dt D2+R,,v+FB+F+Lk+f8+f"~+zhg+O@+{++zh+9[+%+"+=I+++įO+į{Y+į+h4r747G^:9u+;=a@BjHTC:F0ixFn4Fn4GH/$Hw9MHw9HyI'4pIfbI J+OJ+?-J6PvJ6jJ6EJ6J6BJ6BJ6aJ6#sJ6*J6?J6JcbJ`KQƸK(mL CXLZCL6Lj<Lb>SM5Mb(MeMLM~N5NBO|iPFESPFEPFEFQ KQ7R8(R|HR̼%R8cSS8^HTzTW\Tʴ3zTJU?^ sU|:U}9V1V15VlAVCVYVsVZ0V9VEZWbWXWT0WTLWT[X~qX9\XXsX˙%X]"Y:YnY`Y-Z+``Zg`ZkZ;IZ)[;^e[=[f3d\\]4\]4o\Ϟ\$\\f9atPgclGrUNC t>|^|AZĝcga vvmX,ԱIz fE)Ch!MdW^|(4L5+.V6C4dIAJȾ[Hggɼ,\IT,kÉyXtLD DU%WEhRnDɵnnQɵn`ɵni-ɵn5ɵn1ɵn®ɵnɵn u_PI BLT5*'[nMy1-lN)*a!Mjq.ٮpT:۔: 1>He|&Bэ8,-Vɤ}c<!pW5#Qa%UT(Ŏ/)9j*4-ctk$-ct.23L5v lN+ d`y,T't#ʯӬl-e$\y#8^iourkt.eJ0qT߮޶SIZRQ2  ~S Yd $ !g)8"l%%G&Xd)b}-F/=NeZ/Xt1$5~A< p]<3'0=>L?2~?N^@EF@VB!DFRkM@NkyUiW~y]H`q*`>jtlglyzpl}&oi3vtykvty2Q.͉hN$$18l?%"A>%>(9O<4o)m,}a 666YSe^FO zNRTy=~.^- XE-\EЦ-{=8A=τ cgNNPnADDۓl[yLQt&x-nU ()qn)OmMME?ELPn wLw+6eT^ IO lڎKq0R 4ghWUR 1!e&)f*/eg*++N#,1,N6;?4ByEc9_FcIQK~FNjOZf\S~M\cpy\K`b4AbkcփTf5g&4 :jC/mn$q{^q ctuo u(J{>c}kat}-:DR>1+~ qB_0y1m8|>آK'F$ $w5?U5J+K[(gJuU,.Dʁr+^K50L\֊i~*>DžSހ.s nGC,c.YLhZ3qX;yω$daOv-KI,A|_Cn* n7^$$0zLH0=`&Hc&u,n./bl0u4r4!G 5K5>~8w ?]BMCbIxSgJKʈL@MOR.R>*XE%YM@RYML^VdKҫfчh^Ui[n^nunrrsscs w*@x3/^2G2^p"%tNۊiYat;TYNe#]*V]&I;IMIMIIItIvmI()Z QIOYOiPyPZNNO$ObN,NjIQPQQRQPuDE uDQD8o**,6v,{,,B,w',]0>>r|0N;V ._>q.ĖɘeD ˓ʇ5$B 4W8fR@gfR+G>r*)tRݨ<\U#]?_\9:NENH~,d6Q~IcXS8PqHVVDfR"/|T6KPw 6  Q Q^tKXXJ^;l(^b8 lM"o$I$ %CU&~7&>)2s)R+,53(5S 8S~8S;_?"/?>u??%ͩFuKNK-.M<7N>rO>SRvU5V|98]_]]h eg^YOkZ]y^R~{yw?Ji)5t\5t0F-\:Ξo9l8 ]QG%>8nZn n%Uصǥ)__o+_+uD)` nt9{y~[ۜ;;/'xA;rj9\:bs;UsϾ6N %fl:{pe,Li}gzܓ7ޟܳߺft~{롥`%+!I~aNm\^!ֶDD՜F !d & $~b+~b2oBMrt&z `{5!f%%?d'(z)ўғ+uO+3,8/q/[/14~66 _8<? 2JAB>N:9DnEFgG~G?VG*Gb1HULAUUM~UOrlPѧQPGRCJSnfTVbUuUmUOUT]XYĻ9xZZ@RZ@Z@Z@[[j]k*+g]QU^n_Pi_ph`uӚd`qd`e@iEiR/kQm?$oNxy;{N{u}uY}w,F}wk}w'}whsdp~sz~z~82~71ly*o r/'j=p~z~~60~5/BZvt tYd'.,.kP3P OiUJ>huɥkTm5DY~^x&t^PtMdtV7rWo?\\DS]ϐ]/tBarEe ng*.g|ld?n8PnW&p&qjtC;wqy'yz5|(^||i}wZ}$+}$j}$~9L4Dϗ/Zg~AVNjšDXSL>{]91Niq_inx-n£K<f+ E.ANͮ\·j·/Z·ý?E ׳:NF:nET~.& kn_/OfC>(u̲n"-nMe8]7tajUP7wE=ȥNv)UCONu<%52)Ts1/" e~pi~:WL\b'Ni9%׊wb8!c#G#%%%d"'a-.X .5kE =m=7~=N?}?>@J?^@T˘CtI5zEfNPVPQsA;V%I"V%JXU )HZ`1awbDbbGtuffdf̉gAJphI7i$kn,wx1 >z*2<||QR&ddJU%mU<c(.j<zMc.UR4C5<e^QQL&|mY5erًXnm? ^deԴnL\Hb†5i43Cq~ߓUIAʴ5ʴ5ʶ$ϡ$Cы#Du^ [Ӟv'Ԅ۔#QD8'N'dAdF5RF5YpZF+>f4N}&D8I?6I)As;j sY }$E qeK. ڤ# ڥ ds E EJ ys AcD Ac. n5 nH * 35u 6> R WMN `Bu bU bb= b`.I b`э d( gU i3Z kkO la lf lv ok qv( qv qzf tN uQ xq |o ~ |+  n~!  5 Ja  tC t-G  .  . =o   ) F>a K ! (  leU ^ Z q  B9 ҉ 4! M > ? U kS   j  n 5 NL  9>" V܉ & u"ί  Y+67 Y> 0^ KQ  @z 팤6 E;w l~`k %' MN3@ 7} R  /= CM0 q = q:  D^ c }خ 9/ ov ĄQ 2  T $\ )d */; .>4 5 74"l 7u ;v n B Bnk; FR Gݞ3P H j IF. J" K2؇ Rۮx RE Ty c T^ ν Ja $k $1!  %pb2 ,8Y ,! =l c  $H8 | N4.< t< nr] o^ `VD Sd nd Bv p z B= vbJ ȯ' t $q lby p z˦ ˔=z }pq P]z P CF NY ~ton . 68 ( >>(a  v" :h3 f : f $3 O 4dq ( .<(  *T s= s' ~ AAG 9 1%  9 05 rBA  m,G 5) ݡG !% #-tW ' . 0Nc 5 5\3 Ay CU< E9DA I< L L] L Mc\ Oa P..y R Sf Vl W ZW \Ot ]$p ` c f); f)$ f= io> jJU l#] lud m`U* n|n0 wC xR: yr {nS }Qi% ~L&s > . PK H9 H" a  nj СF $&t .@e  K iZ <TH b ӱ P/ |  l zdq F % J> J(+  ` c t.} k) ӇP  M N7 N>u# /= ̺= &~  Nt -D> .y x ۷ r^ k- k< } U)S T>V <S lt 3# i 0X# :   $r^ է ~ z+  D  Qi  I61 + 9N % L1 sZ . xHX  I "  !p $ j %6b! )ΕV .g 2M 7F =ю*3 >HR >I >K >X >n >z[ > > >t >Z ?t| A^ B~I$ DT5 Fn! G) If J> L Mb` P@ QT: RV.w RV] RV RnΌ S.v SG S T~R YU Y [ \ eN hۮ5 j7o m( pg sL!0 uGZ vQu G Bj  To0 T TÒ T= ݰ k r6  c 6k 6 /.7 ,) ,2 S: )d T R^ x .o .au .< . .Ƈ . .  s >V j .c a PJ ySI + z e.f x2 C ' N/ +8  hN-I ɾd& ɾd(p e8 ̈́^| > ҂2 Ӵ(W ء ߢ.G  >z %m u t s X |2 & b# L Xt_q np 9 )9 t   a}c a .T D :bS UqT ^ 7 ʜe fK f7 f5 $M >Or .  " $0n  ' #$# #= %n1 '. (I$k (N< +>i +kd 0E& 644 ;ɾ Cn# Fga K9N Lc PtX Pt R"y S,cG T> `K۬ cs dB fe* fe g  g7 hQ$0, iFCDa i* iE jN j& jӮY kGn` l" m9 m9* n s'~; uY uf] u| v * v&L v{ w+M wj w4 w}+ w}jd w}Ȅ yn |[ E ug A? M < j JZ b  | ^> %  .J  $L }xO R %7y P ' xN "[8 U/ ɰeW F[A N XA] b Y* & 3 x? DB , +5C  t5 t5 hO  ?0 >a   )5 R T$R։;Pw>Y @aT`Y-*Q6<;n?pgTa>J !a"&-z*^*+g/E_/E4Qt%p7SIENI.I_T2KfNVOOS5XRuXHZov[ [ a.(a.;a%"Qgcm|i%nyG sW)Dv6v<vɅHy$ y?.H%~V%JZ>n4eH)=4}NlN934^H'd4y,~DSn,ENV0^5Ǘ]=U:q.Z57DB\75L3Ӯ`wӮ`sӮ`DA֒ " 6gr|FݖmU[yt4^YrF%jj .  J .} < &GA lDn0:q"#@$UG2%4-%41'* l,--vk0i)TG0U1c2wTSDVF74XGHFJdUJ+KrL$.RWR[{+h\@&c5,c5cªg3iCyiT-lp;qiiv)yCWG{`{~aRM6$fY53V4A&&D $t9){#X`n4Y$[G>)n=%ͣ[x=N't5>bN Eգ"~gdLr`Cry-1Hkyd֠U& "'T044Ln] > wBPt?t2ddUiSchlieen Close Tab CloseButtonFake error ! Fake error ! FakeReplyUngltige URL Invalid URL FakeReplyber %1About %1MAC_APPLICATION_MENU%1 ausblendenHide %1MAC_APPLICATION_MENU"Andere ausblenden Hide OthersMAC_APPLICATION_MENU Einstellungen...Preferences...MAC_APPLICATION_MENU%1 beendenQuit %1MAC_APPLICATION_MENUDiensteServicesMAC_APPLICATION_MENUAlle anzeigenShow AllMAC_APPLICATION_MENUEingabehilfen AccessibilityPhonon::Kommunikation CommunicationPhonon:: SpieleGamesPhonon:: MusikMusicPhonon::$Benachrichtigungen NotificationsPhonon:: VideoVideoPhonon:: <html>Es wird zum Audiogert <b>%1</b> geschaltet, <br/>da es hher priorisiert ist oder spezifisch fr diesen Stream konfiguriert wurde.</html>Switching to the audio playback device %1
which has higher preference or is specifically configured for this stream.Phonon::AudioOutput<html>Das Audiogert <b>%1</b> wurde aktiviert,<br/>da es gerade verfgbar und hher priorisiert ist.</html>xSwitching to the audio playback device %1
which just became available and has higher preference.Phonon::AudioOutput<html>Das Audiogert <b>%1</b> funktioniert nicht.<br/>Es wird stattdessen <b>%2</b> verwendet.</html>^The audio playback device %1 does not work.
Falling back to %2.Phonon::AudioOutput:Zurckschalten zum Gert '%1'Revert back to device '%1'Phonon::AudioOutputAchtung: Die grundlegenden GStreamer-Plugins sind nicht installiert. Die Audio- und Video-Untersttzung steht nicht zur Verfgung.~Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabledPhonon::Gstreamer::BackendAchtung: Das Paket gstreamer0.10-plugins-good ist nicht installiert. Einige Video-Funktionen stehen nicht zur Verfgung.Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled.Phonon::Gstreamer::BackendEs sind nicht alle erforderlichen Codecs installiert. Um diesen Inhalt abzuspielen, muss der folgende Codec installiert werden: %0`A required codec is missing. You need to install the following codec(s) to play this content: %0Phonon::Gstreamer::MediaObject`Das Abspielen konnte nicht gestartet werden. Bitte berprfen Sie Ihre GStreamer-Installation und stellen Sie sicher, dass das Paket libgstreamer-plugins-base installiert ist.wCannot start playback. Check your GStreamer installation and make sure you have libgstreamer-plugins-base installed.Phonon::Gstreamer::MediaObject\Die Medienquelle konnte nicht gefunden werden.Could not decode media source.Phonon::Gstreamer::MediaObject\Die Medienquelle konnte nicht gefunden werden.Could not locate media source.Phonon::Gstreamer::MediaObjectDas Audiogert konnte nicht geffnet werden, da es bereits in Benutzung ist.:Could not open audio device. The device is already in use.Phonon::Gstreamer::MediaObject\Die Medienquelle konnte nicht geffnet werden.Could not open media source.Phonon::Gstreamer::MediaObject@Ungltiger Typ der Medienquelle.Invalid source type.Phonon::Gstreamer::MediaObjectVDer Skript-Hilfsassistent des Codecs fehlt.&Missing codec helper script assistant.Phonon::Gstreamer::MediaObjectzDie Installation des Codec-Plugins ist fehlgeschlagen fr: %0.Plugin codec installation failed for codec: %0Phonon::Gstreamer::MediaObject$Zugriff verweigert Access denied Phonon::MMF"Existiert bereitsAlready exists Phonon::MMFAudio-Ausgabe Audio Output Phonon::MMFxAudio- oder Videokomponenten konnten nicht abgespielt werden-Audio or video components could not be played Phonon::MMF0Fehler bei Audio-AusgabeAudio output error Phonon::MMFZEs konnte keine Verbindung hergestellt werdenCould not connect Phonon::MMFDRM-Fehler DRM error Phonon::MMF"Fehler im Decoder Decoder error Phonon::MMFGetrennt Disconnected Phonon::MMF*Bereits in VerwendungIn use Phonon::MMF.Unzureichende BandweiteInsufficient bandwidth Phonon::MMFUngltige URL Invalid URL Phonon::MMF(Ungltiges ProtokollInvalid protocol Phonon::MMF Multicast-FehlerMulticast error Phonon::MMF\Fehler bei der Kommunikation ber das NetzwerkNetwork communication error Phonon::MMF0Netzwerk nicht verfgbarNetwork unavailable Phonon::MMFKein FehlerNo error Phonon::MMFNicht gefunden Not found Phonon::MMFNicht bereit Not ready Phonon::MMF"Nicht untersttzt Not supported Phonon::MMFFEs ist kein Speicher mehr verfgbar Out of memory Phonon::MMFberlaufOverflow Phonon::MMFBPfad konnte nicht gefunden werdenPath not found Phonon::MMF$Zugriff verweigertPermission denied Phonon::MMFJFehler bei Proxy-Server-KommunikationProxy server error Phonon::MMF<Proxy-Server nicht untersttztProxy server not supported Phonon::MMFServer alert Server alert Phonon::MMF6Streaming nicht untersttztStreaming not supported Phonon::MMF$Audio-AusgabegertThe audio output device Phonon::MMFUnterlauf Underflow Phonon::MMF.Unbekannter Fehler (%1)Unknown error (%1) Phonon::MMF0Fehler bei Video-AusgabeVideo output error Phonon::MMF(Fehler beim DownloadDownload error Phonon::MMF::AbstractMediaPlayerHDer URL konnte nicht geffnet werdenError opening URL Phonon::MMF::AbstractMediaPlayerLDie Datei konnte nicht geffnet werdenError opening file Phonon::MMF::AbstractMediaPlayerTDie Ressource konnte nicht geffnet werdenError opening resource Phonon::MMF::AbstractMediaPlayerDie Quelle konnte nicht geffnet werden: Ressource nicht geffnet)Error opening source: resource not opened Phonon::MMF::AbstractMediaPlayerLDas Laden des Clips ist fehlgeschlagenLoading clip failed Phonon::MMF::AbstractMediaPlayer^Das Abspielen ist im Grundzustand nicht mglichNot ready to play Phonon::MMF::AbstractMediaPlayer"Abspielen beendetPlayback complete Phonon::MMF::AbstractMediaPlayer\Die Lautstrke konnte nicht eingestellt werdenSetting volume failed Phonon::MMF::AbstractMediaPlayerRDie Position konnte nicht bestimmt werdenGetting position failed Phonon::MMF::AbstractVideoPlayerJDer Clip konnte nicht geffnet werdenOpening clip failed Phonon::MMF::AbstractVideoPlayer2Fehler bei Pause-Funktion Pause failed Phonon::MMF::AbstractVideoPlayer8Suchoperation fehlgeschlagen Seek failed Phonon::MMF::AbstractVideoPlayer %1 Hz%1 HzPhonon::MMF::AudioEqualizerRDie Position konnte nicht bestimmt werdenGetting position failedPhonon::MMF::AudioPlayer8Fehler bei der Video-AnzeigeVideo display errorPhonon::MMF::DsaVideoPlayerAktiviertEnabledPhonon::MMF::EffectFactoryDHochfrequenz-Abklingverhltnis (%)Decay HF ratio (%) Phonon::MMF::EnvironmentalReverb Abklingzeit (ms)Decay time (ms) Phonon::MMF::EnvironmentalReverbDichte (%) Density (%) Phonon::MMF::EnvironmentalReverbDiffusion (%) Diffusion (%) Phonon::MMF::EnvironmentalReverb4Verzgerung des Echos (ms)Reflections delay (ms) Phonon::MMF::EnvironmentalReverb*Strke des Echos (mB)Reflections level (mB) Phonon::MMF::EnvironmentalReverb<Verzgerung des Nachhalls (ms)Reverb delay (ms) Phonon::MMF::EnvironmentalReverb2Strke des Nachhalls (mB)Reverb level (mB) Phonon::MMF::EnvironmentalReverb8Hochfrequenz-Pegel des Raums Room HF level Phonon::MMF::EnvironmentalReverb(Pegel des Raums (mB)Room level (mB) Phonon::MMF::EnvironmentalReverbDie Quelle konnte nicht geffnet werden: Der Medientyp konnte nicht bestimmt werden8Error opening source: media type could not be determinedPhonon::MMF::MediaObjectDie Quelle konnte nicht geffnet werden: Die Ressource ist komprimiert,Error opening source: resource is compressedPhonon::MMF::MediaObjectxDie Quelle konnte nicht geffnet werden: Ungltige Ressource(Error opening source: resource not validPhonon::MMF::MediaObjectDie Quelle konnte nicht geffnet werden: Dieser Typ wird nicht untersttzt(Error opening source: type not supportedPhonon::MMF::MediaObjectDer angeforderte Internetzugriffspunkt konnte nicht gesetzt werdenFailed to set requested IAPPhonon::MMF::MediaObjectStrke (%) Level (%)Phonon::MMF::StereoWidening8Fehler bei der Video-AnzeigeVideo display errorPhonon::MMF::SurfaceVideoPlayerStummschaltungMutedPhonon::VolumeSliderMit diesem Regler stellen Sie die Lautstrke ein. Die Position links entspricht 0%; die Position rechts entspricht %1%WUse this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1%Phonon::VolumeSliderLautstrke: %1% Volume: %1%Phonon::VolumeSlider6%1, %2 sind nicht definiert%1, %2 not definedQ3Accel\Mehrdeutige %1 knnen nicht verarbeitet werdenAmbiguous %1 not handledQ3AccelLschenDelete Q3DataTable FalschFalse Q3DataTableEinfgenInsert Q3DataTableWahrTrue Q3DataTableAktualisierenUpdate Q3DataTable%1 Datei kann nicht gefunden werden. berprfen Sie Pfad und Dateinamen.+%1 File not found. Check path and filename. Q3FileDialog&Lschen&Delete Q3FileDialog &Nein&No Q3FileDialog&OK&OK Q3FileDialog&ffnen&Open Q3FileDialog&Umbenennen&Rename Q3FileDialogS&peichern&Save Q3FileDialog&Unsortiert &Unsorted Q3FileDialog&Ja&Yes Q3FileDialogv<qt>Sind Sie sicher, dass Sie %1 "%2" lschen mchten?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialog Alle Dateien (*) All Files (*) Q3FileDialog$Alle Dateien (*.*)All Files (*.*) Q3FileDialogAttribute Attributes Q3FileDialog ZurckBack Q3FileDialogAbbrechenCancel Q3FileDialog>Datei kopieren oder verschiebenCopy or Move a File Q3FileDialog,Neuen Ordner erstellenCreate New Folder Q3FileDialog DatumDate Q3FileDialog%1 lschen Delete %1 Q3FileDialogAusfhrlich Detail View Q3FileDialogVerzeichnisDir Q3FileDialogVerzeichnisse Directories Q3FileDialogVerzeichnis: Directory: Q3FileDialog FehlerError Q3FileDialog DateiFile Q3FileDialogDatei&name: File &name: Q3FileDialogDatei&typ: File &type: Q3FileDialog$Verzeichnis suchenFind Directory Q3FileDialogGesperrt Inaccessible Q3FileDialog Liste List View Q3FileDialogSu&chen in: Look &in: Q3FileDialogNameName Q3FileDialog"Neues Verzeichnis New Folder Q3FileDialog(Neues Verzeichnis %1 New Folder %1 Q3FileDialog&Neues Verzeichnis 1 New Folder 1 Q3FileDialog,Ein Verzeichnis zurckOne directory up Q3FileDialog ffnenOpen Q3FileDialog ffnenOpen  Q3FileDialog4Vorschau des Datei-InhaltsPreview File Contents Q3FileDialog@Vorschau der Datei-InformationenPreview File Info Q3FileDialogErne&ut ladenR&eload Q3FileDialogNur Lesen Read-only Q3FileDialogLesen/Schreiben Read-write Q3FileDialogLesen: %1Read: %1 Q3FileDialogSpeichern unterSave As Q3FileDialog4Whlen Sie ein VerzeichnisSelect a Directory Q3FileDialog8&Versteckte Dateien anzeigenShow &hidden files Q3FileDialog GreSize Q3FileDialogSortierenSort Q3FileDialog*Nach &Datum sortieren Sort by &Date Q3FileDialog*Nach &Namen sortieren Sort by &Name Q3FileDialog*Nach &Gre sortieren Sort by &Size Q3FileDialogSpezialattributSpecial Q3FileDialog6Verknpfung mit VerzeichnisSymlink to Directory Q3FileDialog*Verknpfung mit DateiSymlink to File Q3FileDialog8Verknpfung mit SpezialdateiSymlink to Special Q3FileDialogTypType Q3FileDialogNur Schreiben Write-only Q3FileDialogSchreiben: %1 Write: %1 Q3FileDialogdas Verzeichnis the directory Q3FileDialogdie Dateithe file Q3FileDialogdie Verknpfung the symlink Q3FileDialogJKonnte Verzeichnis nicht erstellen %1Could not create directory %1 Q3LocalFs@Konnte nicht geffnet werden: %1Could not open %1 Q3LocalFsBKonnte Verzeichnis nicht lesen %1Could not read directory %1 Q3LocalFs\Konnte Datei oder Verzeichnis nicht lschen %1%Could not remove file or directory %1 Q3LocalFsRKonnte nicht umbenannt werden: %1 nach %2Could not rename %1 to %2 Q3LocalFsFKonnte nicht geschrieben werden: %1Could not write %1 Q3LocalFsAnpassen... Customize... Q3MainWindowAusrichtenLine up Q3MainWindowBOperation von Benutzer angehaltenOperation stopped by the userQ3NetworkProtocolAbbrechenCancelQ3ProgressDialogAnwendenApply Q3TabDialogAbbrechenCancel Q3TabDialog VoreinstellungenDefaults Q3TabDialog HilfeHelp Q3TabDialogOKOK Q3TabDialog&Kopieren&Copy Q3TextEditEinf&gen&Paste Q3TextEdit"Wieder&herstellen&Redo Q3TextEdit&Rckgngig&Undo Q3TextEditLschenClear Q3TextEdit&AusschneidenCu&t Q3TextEditAlles auswhlen Select All Q3TextEditSchlieenClose Q3TitleBar(Schliet das FensterCloses the window Q3TitleBarVEnthlt Befehle zum ndern der Fenstergre*Contains commands to manipulate the window Q3TitleBarvZeigt den Namen des Fensters und enthlt Befehle zum ndernFDisplays the name of the window and contains controls to manipulate it Q3TitleBarVollbildmodusMakes the window full screen Q3TitleBarMaximierenMaximize Q3TitleBarMinimierenMinimize Q3TitleBar*Minimiert das FensterMoves the window out of the way Q3TitleBarRStellt ein maximiertes Fenster wieder her&Puts a maximized window back to normal Q3TitleBarRStellt ein minimiertes Fenster wieder her&Puts a minimized window back to normal Q3TitleBar Wiederherstellen Restore down Q3TitleBar Wiederherstellen Restore up Q3TitleBar SystemSystem Q3TitleBarMehr...More... Q3ToolBar(unbekannt) (unknown) Q3UrlOperatorDas Protokoll `%1' untersttzt nicht das Kopieren oder Verschieben von Dateien oder VerzeichnissenIThe protocol `%1' does not support copying or moving files or directories Q3UrlOperatorDas Protokoll `%1' untersttzt nicht das Anlegen neuer Verzeichnisse;The protocol `%1' does not support creating new directories Q3UrlOperatortDas Protokoll `%1' untersttzt nicht das Laden von Dateien0The protocol `%1' does not support getting files Q3UrlOperatorDas Protokoll `%1' untersttzt nicht das Auflisten von Verzeichnissen6The protocol `%1' does not support listing directories Q3UrlOperator|Das Protokoll `%1' untersttzt nicht das Speichern von Dateien0The protocol `%1' does not support putting files Q3UrlOperatorDas Protokoll `%1' untersttzt nicht das Lschen von Dateien oder Verzeichnissen@The protocol `%1' does not support removing files or directories Q3UrlOperatorDas Protokoll `%1' untersttzt nicht das Umbenennen von Dateien oder Verzeichnissen@The protocol `%1' does not support renaming files or directories Q3UrlOperatorRDas Protokoll `%1' wird nicht untersttzt"The protocol `%1' is not supported Q3UrlOperator&Abbrechen&CancelQ3WizardAb&schlieen&FinishQ3Wizard &Hilfe&HelpQ3Wizard&Weiter >&Next >Q3Wizard< &Zurck< &BackQ3Wizard*Verbindung verweigertConnection refusedQAbstractSockethDas Zeitlimit fr die Verbindung wurde berschrittenConnection timed outQAbstractSocketHRechner konnte nicht gefunden werdenHost not foundQAbstractSocketBDas Netzwerk ist nicht erreichbarNetwork unreachableQAbstractSocketZDiese Socket-Operation wird nicht untersttzt$Operation on socket is not supportedQAbstractSocketNicht verbundenSocket is not connectedQAbstractSocketfDas Zeitlimit fr die Operation wurde berschrittenSocket operation timed outQAbstractSocket &Alles auswhlen &Select AllQAbstractSpinBox&Inkrementieren&Step upQAbstractSpinBox&Dekrementieren Step &downQAbstractSpinBoxDrckenPressQAccessibleButtonAktivierenActivate QApplicationPAktiviert das Hauptfenster der Anwendung#Activates the program's main window QApplicationDie Anwendung '%1' bentigt Qt %2; es wurde aber Qt %3 gefunden.,Executable '%1' requires Qt %2, found Qt %3. QApplicationDDie Qt-Bibliothek ist inkompatibelIncompatible Qt Library Error QApplicationLTRQT_LAYOUT_DIRECTION QApplication&Abbrechen&Cancel QAxSelectCOM-&Objekt: COM &Object: QAxSelectOKOK QAxSelect2ActiveX-Element auswhlenSelect ActiveX Control QAxSelectAnkreuzenCheck QCheckBoxUmschaltenToggle QCheckBoxLschenUncheck QCheckBoxRZu benutzerdefinierten Farben &hinzufgen&Add to Custom Colors QColorDialogGrundfar&ben &Basic colors QColorDialog4&Benutzerdefinierte Farben&Custom colors QColorDialog &Grn:&Green: QColorDialog &Rot:&Red: QColorDialog&Sttigung:&Sat: QColorDialog&Helligkeit:&Val: QColorDialogA&lphakanal:A&lpha channel: QColorDialog Bla&u:Bl&ue: QColorDialogFarb&ton:Hu&e: QColorDialogFarbauswahl Select Color QColorDialogSchlieenClose QComboBox FalschFalse QComboBox ffnenOpen QComboBoxWahrTrue QComboBox*%1: existiert bereits%1: already existsQCoreApplication$%1: Nicht existent%1: does not existQCoreApplicationD%1: ftok-Aufruf ist fehlgeschlagen%1: ftok failedQCoreApplicationH%1: Ungltige Schlsselangabe (leer)%1: key is emptyQCoreApplicationF%1: Keine Ressourcen mehr verfgbar%1: out of resourcesQCoreApplication,%1: Zugriff verweigert%1: permission deniedQCoreApplicationR%1: Es kann kein Schlssel erzeugt werden%1: unable to make keyQCoreApplication2%1: Unbekannter Fehler %2%1: unknown error %2QCoreApplicationDie Transaktion kann nicht durchgefhrt werden (Operation 'commit' fehlgeschlagen)Unable to commit transaction QDB2DriverREs kann keine Verbindung aufgebaut werdenUnable to connect QDB2DriverDie Transaktion kann nicht rckgngig gemacht werden (Operation 'rollback' fehlgeschlagen)Unable to rollback transaction QDB2DriverP'autocommit' kann nicht aktiviert werdenUnable to set autocommit QDB2DriverNDie Variable kann nicht gebunden werdenUnable to bind variable QDB2ResultNDer Befehl kann nicht ausgefhrt werdenUnable to execute statement QDB2Result\Der erste Datensatz kann nicht abgeholt werdenUnable to fetch first QDB2Result`Der nchste Datensatz kann nicht abgeholt werdenUnable to fetch next QDB2ResultVDer Datensatz %1 kann nicht abgeholt werdenUnable to fetch record %1 QDB2ResultTDer Befehl kann nicht initialisiert werdenUnable to prepare statement QDB2ResultAMAM QDateTimeEditPMPM QDateTimeEditamam QDateTimeEditpmpm QDateTimeEditBDie Klasse Animation ist abstraktAnimation is an abstract classQDeclarativeAbstractAnimationDie Eigenschaft "%1" existiert nicht und kann daher nicht animiert werden)Cannot animate non-existent property "%1"QDeclarativeAbstractAnimationDie Eigenschaft "%1" ist schreibgeschtzt und kann daher nicht animiert werden&Cannot animate read-only property "%1"QDeclarativeAbstractAnimationREs kann keine Zeitdauer <0 gesetzt werdenCannot set a duration of < 0QDeclarativeAnchorAnimationEin Baseline-Anker darf nicht zusammen mit weiteren Ankerangaben fr oben, unten und vertikal zentriert verwendet werden.SBaseline anchor cannot be used in conjunction with top, bottom, or vcenter anchors.QDeclarativeAnchorsEs kann kein Anker zu einer horizontalen oder vertikalen Kante angegeben werden.3Cannot anchor a horizontal edge to a vertical edge.QDeclarativeAnchorsVertikale und horizontale Kanten knnen nicht mit Ankern verbunden werden.3Cannot anchor a vertical edge to a horizontal edge.QDeclarativeAnchorsfEin Element kann keinen Anker zu sich selbst haben.Cannot anchor item to self.QDeclarativeAnchorstEs kann kein Anker zu einem Null-Element angegeben werden.Cannot anchor to a null item.QDeclarativeAnchorsDas Ziel eines Anker muss ein Elternelement oder Element der gleichen Ebene sein.8Cannot anchor to an item that isn't a parent or sibling.QDeclarativeAnchorsAnkerangaben fr links, rechts und horizontal zentriert drfen nicht zusammen auftreten.0Cannot specify left, right, and hcenter anchors.QDeclarativeAnchorsAnkerangaben fr oben, unten und vertikal zentriert drfen nicht zusammen auftreten.0Cannot specify top, bottom, and vcenter anchors.QDeclarativeAnchorsBei der Operation 'centerIn' wurde eine potentielle Endlosschleife der Anker festgestellt.*Possible anchor loop detected on centerIn.QDeclarativeAnchorsBei der Flloperation wurde eine potentielle Endlosschleife der Anker festgestellt.&Possible anchor loop detected on fill.QDeclarativeAnchorsBei einem horizontalen Anker wurde eine potentielle Endlosschleife der Anker festgestellt.3Possible anchor loop detected on horizontal anchor.QDeclarativeAnchorsBei einem vertikalen Anker wurde eine potentielle Endlosschleife der Anker festgestellt.1Possible anchor loop detected on vertical anchor.QDeclarativeAnchorsDiese Version der Qt-Bibliothek wurde ohne Untersttzung fr die Klasse QMovie erstellt'Qt was built without support for QMovieQDeclarativeAnimatedImageN'Application' ist eine abstrakte Klasse Application is an abstract classQDeclarativeApplicationDie zu einem Behavior-Element gehrende Animation kann nicht gendert werden.3Cannot change the animation assigned to a Behavior.QDeclarativeBehaviorBei der fr die Eigenschaft "%1" angegebenen Bindung wurde eine Endlosschleife festgestellt'Binding loop detected for property "%1"QDeclarativeBindingBei der fr die Eigenschaft "%1" angegebenen Bindung wurde eine Endlosschleife festgestellt'Binding loop detected for property "%1"QDeclarativeCompiledBindingsT"%1" kann nicht auf "%2" angewandt werden"%1" cannot operate on "%2"QDeclarativeCompilerz"%1.%2" ist in dieser Version der Komponente nicht verfgbar 5"%1.%2" is not available due to component versioning.QDeclarativeCompilerP"%1.%2" ist in %3 %4.%5 nicht verfgbar.%"%1.%2" is not available in %3 %4.%5.QDeclarativeCompilerrDie Alias-Eigenschaft berschreitet die Grenzen des Alias#Alias property exceeds alias boundsQDeclarativeCompilerAn dieser Stelle knnen keine Eigenschaften des Typs 'attached' verwendet werden'Attached properties cannot be used hereQDeclarativeCompilerlListen kann nur eine einzige Bindung zugewiesen werden$Can only assign one binding to listsQDeclarativeCompilerBei einer Eigenschaft, die Teil einer Gruppierung ist, ist keine direkte Wertzuweisung zulssig4Cannot assign a value directly to a grouped propertyQDeclarativeCompilerEinem Signal knnen keine Werte zugewiesen werden (es wird ein Skript erwartet)@Cannot assign a value to a signal (expecting a script to be run)QDeclarativeCompilerEine Zuweisung mehrerer Werte an eine Skript-Eigenschaft ist nicht zulssig2Cannot assign multiple values to a script propertyQDeclarativeCompilerEine Zuweisung mehrerer Werte an eine einfache Eigenschaft ist nicht zulssig4Cannot assign multiple values to a singular propertyQDeclarativeCompilerhZuweisung eines Objekts an eine Liste nicht zulssigCannot assign object to listQDeclarativeCompilertZuweisung eines Objekts an eine Eigenschaft nicht zulssig Cannot assign object to propertyQDeclarativeCompilerZuweisung eines einfachen Werts (primitive) an eine Liste nicht zulssig!Cannot assign primitives to listsQDeclarativeCompilerEs kann keine Zuweisung erfolgen, da keine Vorgabe-Eigenschaft existiert.Cannot assign to non-existent default propertyQDeclarativeCompilerEs kann keine Zuweisung erfolgen, da keine Eigenschaft des Namens '%1" existiert+Cannot assign to non-existent property "%1"QDeclarativeCompilerhEs kann keine leere Komponentenangabe erzeugt werden+Cannot create empty component specificationQDeclarativeCompilerEine als 'FINAL' ausgewiesene Eigenschaft kann nicht berschrieben werdenCannot override FINAL propertyQDeclarativeCompilerKomponenten drfen auer id keine weiteren Eigenschaften enthalten;Component elements may not contain properties other than idQDeclarativeCompilerzKomponentenobjekte knnen keine neuen Funktionen deklarieren./Component objects cannot declare new functions.QDeclarativeCompilerKomponentenobjekte knnen keine neuen Eigenschaften deklarieren.0Component objects cannot declare new properties.QDeclarativeCompilertKomponentenobjekte knnen keine neuen Signale deklarieren.-Component objects cannot declare new signals.QDeclarativeCompilerXMehrfaches Auftreten der Vorgabe-EigenschaftDuplicate default propertyQDeclarativeCompilerRMehrfaches Auftreten eines MethodennamensDuplicate method nameQDeclarativeCompilerZMehrfaches Auftreten eines EigenschaftsnamensDuplicate property nameQDeclarativeCompilerNMehrfaches Auftreten eines SignalnamensDuplicate signal nameQDeclarativeCompilerLDas Element kann nicht erzeugt werden.Element is not creatable.QDeclarativeCompiler6Leere EigenschaftszuweisungEmpty property assignmentQDeclarativeCompiler*Leere SignalzuweisungEmpty signal assignmentQDeclarativeCompilerzDer Id-Wert berdeckt eine globale Eigenschaft aus JavaScript-ID illegally masks global JavaScript propertyQDeclarativeCompilernId-Werte drfen nicht mit einem Grobuchstaben beginnen)IDs cannot start with an uppercase letterQDeclarativeCompilertId-Werte drfen nur Buchstaben oder Unterstriche enthalten7IDs must contain only letters, numbers, and underscoresQDeclarativeCompiler|Id-Werte mssen mit einem Buchstaben oder Unterstrich beginnen*IDs must start with a letter or underscoreQDeclarativeCompiler6Ungltiger Name fr MethodeIllegal method nameQDeclarativeCompiler>Ungltiger Name der EigenschaftIllegal property nameQDeclarativeCompiler4Ungltiger Name fr SignalIllegal signal nameQDeclarativeCompilerXAngegebene Signalzuweisung ist nicht korrekt'Incorrectly specified signal assignmentQDeclarativeCompilerVUngltige Quellangabe bei Alias-EigenschaftInvalid alias locationQDeclarativeCompilerUngltige Alias-Referenz. Eine Alias-Referenz muss in der Form <id>, <id>.<property> or <id>.<value property>.<property> angegeben werdenzInvalid alias reference. An alias reference must be specified as , . or ..QDeclarativeCompilerUngltige Referenzierung einer Alias-Eigenschaft. Der Id-Wert "%1" konnte nicht gefunden werden/Invalid alias reference. Unable to find id "%1"QDeclarativeCompilerLUngltige Zuweisung des Bezugselements"Invalid attached object assignmentQDeclarativeCompiler<Inhalt der Komponente ungltig$Invalid component body specificationQDeclarativeCompilerDUngltige Komponentenspezifikation"Invalid component id specificationQDeclarativeCompiler6Ungltiger (leerer) Id-WertInvalid empty IDQDeclarativeCompiler^Falsche Gruppierung bei Zugriff auf EigenschaftInvalid grouped property accessQDeclarativeCompiler|Ungltige Zuweisung bei Eigenschaft: "%1" ist schreibgeschtzt9Invalid property assignment: "%1" is a read-only propertyQDeclarativeCompilerUngltige Zuweisung bei Eigenschaft: Es wird ein dreidimensionaler Vektor erwartet/Invalid property assignment: 3D vector expectedQDeclarativeCompilerUngltige Zuweisung bei Eigenschaft: Es wird ein boolescher Wert erwartet-Invalid property assignment: boolean expectedQDeclarativeCompilerUngltige Zuweisung bei Eigenschaft: Es wird eine Farbspezifikation erwartet+Invalid property assignment: color expectedQDeclarativeCompilerUngltige Zuweisung bei Eigenschaft: Es wird eine Datumsangabe erwartet*Invalid property assignment: date expectedQDeclarativeCompilerUngltige Zuweisung bei Eigenschaft: Es wird eine Datumsangabe erwartet.Invalid property assignment: datetime expectedQDeclarativeCompilerUngltige Zuweisung bei Eigenschaft: Es wird ein Ganzzahlwert erwartet)Invalid property assignment: int expectedQDeclarativeCompiler~Ungltige Zuweisung bei Eigenschaft: Es wird eine Zahl erwartet,Invalid property assignment: number expectedQDeclarativeCompilerUngltige Zuweisung bei Eigenschaft: Es wird eine Koordinatenangabe fr einen Punkt erwartet+Invalid property assignment: point expectedQDeclarativeCompilerUngltige Zuweisung bei Eigenschaft: Es werden Parameter fr ein Rechteck erwartet*Invalid property assignment: rect expectedQDeclarativeCompilerUngltige Zuweisung bei Eigenschaft: Es wird ein Skript erwartet,Invalid property assignment: script expectedQDeclarativeCompilerUngltige Zuweisung bei Eigenschaft: Es wird eine Grenangabe erwartet*Invalid property assignment: size expectedQDeclarativeCompilerUngltige Zuweisung bei Eigenschaft: Es wird eine Zeichenkette erwartet,Invalid property assignment: string expectedQDeclarativeCompilerUngltige Zuweisung bei Eigenschaft: Es wird eine Zeitangabe erwartet*Invalid property assignment: time expectedQDeclarativeCompilerUngltige Zuweisung bei Eigenschaft: Unbekannter Aufzhlungswert0Invalid property assignment: unknown enumerationQDeclarativeCompilerUngltige Zuweisung bei Eigenschaft: Es wird eine vorzeichenloser Ganzzahlwert erwartet2Invalid property assignment: unsigned int expectedQDeclarativeCompilerUngltige Zuweisung bei Eigenschaft: Der Typ "%1" ist nicht untersttzt2Invalid property assignment: unsupported type "%1"QDeclarativeCompiler|Ungltige Zuweisung bei Eigenschaft: Es wird eine URL erwartet)Invalid property assignment: url expectedQDeclarativeCompilerPUngltige Schachtelung von EigenschaftenInvalid property nestingQDeclarativeCompiler<Ungltiger Typ der EigenschaftInvalid property typeQDeclarativeCompilerLUngltige Verwendung von EigenschaftenInvalid property useQDeclarativeCompilerhUngltige Verwendung einer Eigenschaft des Typs 'Id'Invalid use of id propertyQDeclarativeCompilerLUngltige Verwendung eines NamensraumsInvalid use of namespaceQDeclarativeCompilerxMethodennamen drfen nicht mit einem Grobuchstaben beginnen3Method names cannot begin with an upper case letterQDeclarativeCompilerDAlias-Eigenschaft ohne QuellangabeNo property alias locationQDeclarativeCompilerfEs existiert kein Bezugselement fr die EigenschaftNon-existent attached objectQDeclarativeCompilerpKein gltiger Name einer Eigenschaft des Typs 'attached'Not an attached property nameQDeclarativeCompilerBZuweisung an Eigenschaft erwartetProperty assignment expectedQDeclarativeCompilerbDer Eigenschaft wurde bereits ein Wert zugewiesen*Property has already been assigned a valueQDeclarativeCompilerEigenschaftsnamen drfen nicht mit einem Grobuchstaben beginnen5Property names cannot begin with an upper case letterQDeclarativeCompilerhMehrfache Zuweisung eines Wertes an eine Eigenschaft!Property value set multiple timesQDeclarativeCompilertSignalnamen drfen nicht mit einem Grobuchstaben beginnen3Signal names cannot begin with an upper case letterQDeclarativeCompilerTEinzelne Zuweisung an Eigenschaft erwartet#Single property assignment expectedQDeclarativeCompilerBUnerwartete Zuweisung des ObjektsUnexpected object assignmentQDeclarativeCompiler.ID-Wert nicht eindeutigid is not uniqueQDeclarativeCompiler*Ungltige (leere) URLInvalid empty URLQDeclarativeComponentLcreateObject: Der Wert ist kein Objekt$createObject: value is not an objectQDeclarativeComponentEs kann keine Zuweisung erfolgen, da keine Eigenschaft des Namens "%1" existiert+Cannot assign to non-existent property "%1"QDeclarativeConnectionspVerbindungen: Verschachtelte Objekte sind nicht zulssig'Connections: nested objects not allowedQDeclarativeConnections:Verbindungen: Skript erwartetConnections: script expectedQDeclarativeConnections4Verbindungen: SyntaxfehlerConnections: syntax errorQDeclarativeConnections:Schreibgeschtzte TransaktionRead-only TransactionQDeclarativeEngineLDie SQL-Transaktion ist fehlgeschlagenSQL transaction failedQDeclarativeEngineSQL: Die Version der Datenbank entspricht nicht der erwarteten VersionSQL: database version mismatchQDeclarativeEngine~Die Version %2 kann nicht verwendet werden; es wird %1 bentigt'Version mismatch: expected %1, found %2QDeclarativeEnginev'executeSql' wurde auerhalb von 'transaction()' aufgerufen'executeSql called outside transaction()QDeclarativeEngine<callback fehlt bei Transaktiontransaction: missing callbackQDeclarativeEngineP'back' kann nur einmal zugewiesen werdenback is a write-once propertyQDeclarativeFlipableR'front' kann nur einmal zugewiesen werdenfront is a write-once propertyQDeclarativeFlipableHDas Verzeichnis "%1" existiert nicht"%1": no such directoryQDeclarativeImportDatabaseB- %1 ist kein gltiger Namensraum- %1 is not a namespaceQDeclarativeImportDatabase^- geschachtelte Namensrume sind nicht zulssig- nested namespaces not allowedQDeclarativeImportDatabaseDie Gro/Kleinschreibung des Dateinamens "%2" stimmt nicht berein File name case mismatch for "%2"QDeclarativeImportDatabaseDer Module "%1" kann nicht geladen werden: Der Dateiname "%2" unterscheidet sich in der Gro/Kleinschreibung9cannot load module "%1": File name case mismatch for "%2"QDeclarativeImportDatabased"qmldir" und Namensraum fehlen bei dem Import "%1"*import "%1" has no qmldir and no namespaceQDeclarativeImportDatabaseXist mehrdeutig. Es kommt in %1 und in %2 vor#is ambiguous. Found in %1 and in %2QDeclarativeImportDatabaseist mehrdeutig. Es kommt in %1 in den Version %2.%3 und %4.%5 vor4is ambiguous. Found in %1 in version %2.%3 and %4.%5QDeclarativeImportDatabase4wird rekursiv instanziiertis instantiated recursivelyQDeclarativeImportDatabaseist kein Typ is not a typeQDeclarativeImportDatabase&Lokales Verzeichnislocal directoryQDeclarativeImportDatabasehModul "%1" Definition "%2" kann nicht gelesen werden(module "%1" definition "%2" not readableQDeclarativeImportDatabase@Modul "%1" ist nicht installiertmodule "%1" is not installedQDeclarativeImportDatabasefModul "%1" Plugin "%2" konnte nicht gefunden werden!module "%1" plugin "%2" not foundQDeclarativeImportDatabase\Modul "%1" Version %2.%3 ist nicht installiert*module "%1" version %2.%3 is not installedQDeclarativeImportDatabasepDas Plugin des Moduls "%1" kann nicht geladen werden: %2+plugin cannot be loaded for module "%1": %2QDeclarativeImportDatabaseTastennavigation ist nur ber Eigenschaften des Typs 'attached' verfgbar7KeyNavigation is only available via attached properties!QDeclarativeKeyNavigationAttachedDie Untersttzung fr Tasten ist nur ber Eigenschaften des Typs 'attached' verfgbar.Keys is only available via attached propertiesQDeclarativeKeysAttachedEigenschaften des Typs 'attached' knnen nur mit Elementen der Klasse Item verwendet werden7LayoutDirection attached property only works with Items#QDeclarativeLayoutMirroringAttachedLayoutMirroring ist nur in Verbindung mit Eigenschaften des Typs "attached" mglich9LayoutMirroring is only available via attached properties#QDeclarativeLayoutMirroringAttachedpListElement kann keine geschachtelten Elemente enthalten+ListElement: cannot contain nested elementsQDeclarativeListModelzListElement: Die "id"-Eigenschaft kann nicht verwendet werden.ListElement: cannot use reserved "id" propertyQDeclarativeListModelListElement: Es kann kein Skript fr den Wert der Eigenschaft verwendet werden1ListElement: cannot use script for property valueQDeclarativeListModelfListModel: Die Eigenschaft '%1' ist nicht definiert"ListModel: undefined property '%1'QDeclarativeListModel@append: Der Wert ist kein Objektappend: value is not an objectQDeclarativeListModelpinsert: Der Index %1 ist auerhalb des gltigen Bereichsinsert: index %1 out of rangeQDeclarativeListModel@insert: Der Wert ist kein Objektinsert: value is not an objectQDeclarativeListModelJmove: Auerhalb des gltigen Bereichsmove: out of rangeQDeclarativeListModelpremove: Der Index %1 ist auerhalb des gltigen Bereichsremove: index %1 out of rangeQDeclarativeListModeljset: Der Index %1 ist auerhalb des gltigen Bereichsset: index %1 out of rangeQDeclarativeListModel:set: Der Wert ist kein Objektset: value is not an objectQDeclarativeListModelrDas Laden nicht-visueller Elemente ist nicht untersttzt.4Loader does not support loading non-visual elements.QDeclarativeLoaderDas Erscheinungsbild kann bei einer komplexen Transformation nicht beibehalten werden5Unable to preserve appearance under complex transformQDeclarativeParentAnimationDas Erscheinungsbild kann bei einer nicht-uniformen Skalierung nicht beibehalten werden5Unable to preserve appearance under non-uniform scaleQDeclarativeParentAnimationDas Erscheinungsbild kann bei einer Skalierung mit 0 nicht beibehalten werden.Unable to preserve appearance under scale of 0QDeclarativeParentAnimationDas Erscheinungsbild kann bei einer komplexen Transformation nicht beibehalten werden5Unable to preserve appearance under complex transformQDeclarativeParentChangeDas Erscheinungsbild kann bei einer nicht-uniformen Skalierung nicht beibehalten werden5Unable to preserve appearance under non-uniform scaleQDeclarativeParentChangeDas Erscheinungsbild kann bei einer Skalierung mit 0 nicht beibehalten werden.Unable to preserve appearance under scale of 0QDeclarativeParentChangebEs wird eine Typangabe fr den Parameter erwartetExpected parameter typeQDeclarativeParserDTypangabe fr Eigenschaft erwartetExpected property typeQDeclarativeParserBEs wird das Element '%1' erwartetExpected token `%1'QDeclarativeParser8Es wird ein Typname erwartetExpected type nameQDeclarativeParserEin Bezeichner darf nicht mit einem numerischen Literal beginnen,Identifier cannot start with numeric literalQDeclarativeParser$Ungltiges ZeichenIllegal characterQDeclarativeParser0Ungltige Escape-SequenzIllegal escape sequenceQDeclarativeParser>Ungltige Syntax des Exponenten%Illegal syntax for exponential numberQDeclarativeParser@Ungltige Unicode-Escape-SequenzIllegal unicode escape sequenceQDeclarativeParser<Ungltige Id-Angabe bei ImportInvalid import qualifier IDQDeclarativeParserdUngltiger Modifikator fr den Typ der EigenschaftInvalid property type modifierQDeclarativeParserdUngltiger Modifikator '%0' bei regulrem Ausdruck$Invalid regular expression flag '%0'QDeclarativeParserEine JavaScript-Deklaration ist auerhalb eines Skriptelementes nicht zulssig-JavaScript declaration outside Script elementQDeclarativeParserrDer Import einer Bibliothek erfordert eine Versionsangabe!Library import requires a versionQDeclarativeParserhMehrfache Zuweisung eines Wertes an eine Eigenschaft!Property value set multiple timesQDeclarativeParserp'read-only' wird an dieser Stelle noch nicht untersttztReadonly not yet supportedQDeclarativeParserDer reservierte Name "Qt" kann nicht als Bezeichner verwendet werden1Reserved name "Qt" cannot be used as an qualifierQDeclarativeParserDer fr den Skript-Import angegebene Qualifizierer muss eindeutig sein.(Script import qualifiers must be unique.QDeclarativeParserxDer Skript-Import erfordert die Angabe eines Qualifizierers."Script import requires a qualifierQDeclarativeParserSyntaxfehler Syntax errorQDeclarativeParserTKommentar am Dateiende nicht abgeschlossenUnclosed comment at end of fileQDeclarativeParser\Zeichenkette am Zeilenende nicht abgeschlossenUnclosed string at end of lineQDeclarativeParserModifikator fr den Typ der Eigenschaft an dieser Stelle nicht zulssig!Unexpected property type modifierQDeclarativeParser2Unerwartetes Element '%1'Unexpected token `%1'QDeclarativeParservBackslash-Sequenz in regulrem Ausdruck nicht abgeschlossen2Unterminated regular expression backslash sequenceQDeclarativeParser`Klasse im regulren Ausdruck nicht abgeschlossen%Unterminated regular expression classQDeclarativeParserLRegulrer Ausdruck nicht abgeschlossen'Unterminated regular expression literalQDeclarativeParserREs kann keine Zeitdauer <0 gesetzt werdenCannot set a duration of < 0QDeclarativePauseAnimation4Fehlschlag beim ffnen: %1Cannot open: %1QDeclarativePixmap<Fehler beim Dekodieren: %1: %2Error decoding: %1: %2QDeclarativePixmapVBilddaten konnten nicht erhalten werden: %1%Failed to get image from provider: %1QDeclarativePixmapREs kann keine Zeitdauer <0 gesetzt werdenCannot set a duration of < 0QDeclarativePropertyAnimationEs kann keine Zuweisung erfolgen, da keine Eigenschaft des Namens '%1" existiert+Cannot assign to non-existent property "%1"QDeclarativePropertyChangesDie Eigenschaft "%1" ist schreibgeschtzt und kann daher nicht zugewiesen werden(Cannot assign to read-only property "%1"QDeclarativePropertyChangesDie Erzeugung von Objekten, die einem Zustand zugeordnet sind, wird von PropertyChanges nicht untersttzt.APropertyChanges does not support creating state-specific objects.QDeclarativePropertyChanges`Cursor-Delegate konnte nicht instanziiert werden%Could not instantiate cursor delegateQDeclarativeTextInputVCursor-Delegate konnte nicht geladen werdenCould not load cursor delegateQDeclarativeTextInput %1 %2%1 %2QDeclarativeTypeLoadervDer Namensraum %1 kann nicht als Typangabe verwendet werden%Namespace %1 cannot be used as a typeQDeclarativeTypeLoaderBDas Skript %1 ist nicht verfgbarScript %1 unavailableQDeclarativeTypeLoader<Der Typ %1 ist nicht verfgbarType %1 unavailableQDeclarativeTypeLoaderxDer Signal-Eigenschaft %1 kann kein Objekt zugewiesen werden-Cannot assign an object to signal property %1QDeclarativeVMEDer Eigenschaft der Schnittstelle kann kein Objekt zugewiesen werden*Cannot assign object to interface propertyQDeclarativeVMEhZuweisung eines Objekts an eine Liste nicht zulssigCannot assign object to listQDeclarativeVMEDer Objekttyp %1 kann nicht zugewiesen werden, da keine Vorgabe-Methode existiert3Cannot assign object type %1 with no default methodQDeclarativeVMEzDer Wert '%1' kann der Eigenschaft %2 nicht zugewiesen werden%Cannot assign value %1 to property %2QDeclarativeVMEEs kann keine Verbindung zwischen dem Signal %1 und dem Slot %2 hergestellt werden, da sie nicht zusammenpassen0Cannot connect mismatched signal/slot %1 %vs. %2QDeclarativeVMEEs knnen keine Eigenschaften auf %1 gesetzt werden, da es 'null' ist)Cannot set properties on %1 as it is nullQDeclarativeVME^Es konnte kein 'attached'-Objekt erzeugt werden Unable to create attached objectQDeclarativeVME`Es konnte kein Objekt des Typs %1 erzeugt werden"Unable to create object of type %1QDeclarativeVMEXDelegate-Komponente muss vom Typ 'Item' sein%Delegate component must be Item type.QDeclarativeVisualDataModelDiese Version der Qt-Bibliothek wurde ohne Untersttzung fr xmlpatterns erstellt,Qt was built without support for xmlpatternsQDeclarativeXmlListModel`Eine XmlRole-Abfrage darf nicht mit '/' beginnen(An XmlRole query must not start with '/'QDeclarativeXmlListModelRolerEine XmlListModel-Abfrage muss mit '/' oder "//" beginnen1An XmlListModel query must start with '/' or "//"QDeclarativeXmlRoleList QDialQDialQDialSchieberegler SliderHandleQDialTachometer SpeedoMeterQDial FertigDoneQDialogDirekthilfe What's This?QDialog&Abbrechen&CancelQDialogButtonBoxSchl&ieen&CloseQDialogButtonBox &Nein&NoQDialogButtonBox&OK&OKQDialogButtonBoxS&peichern&SaveQDialogButtonBox&Ja&YesQDialogButtonBoxAbbrechenAbortQDialogButtonBoxAnwendenApplyQDialogButtonBoxAbbrechenCancelQDialogButtonBoxSchlieenCloseQDialogButtonBox0Schlieen ohne SpeichernClose without SavingQDialogButtonBoxVerwerfenDiscardQDialogButtonBoxNicht speichern Don't SaveQDialogButtonBox HilfeHelpQDialogButtonBoxIgnorierenIgnoreQDialogButtonBoxN&ein, keine N&o to AllQDialogButtonBoxOKOKQDialogButtonBox ffnenOpenQDialogButtonBoxZurcksetzenResetQDialogButtonBox VoreinstellungenRestore DefaultsQDialogButtonBoxWiederholenRetryQDialogButtonBoxSpeichernSaveQDialogButtonBoxAlles speichernSave AllQDialogButtonBoxJa, &alle Yes to &AllQDialogButtonBoxnderungsdatum Date Modified QDirModelArtKind QDirModelNameName QDirModel GreSize QDirModelTypType QDirModelSchlieenClose QDockWidgetAndockenDock QDockWidgetHerauslsenFloat QDockWidgetWenigerLessQDoubleSpinBoxMehrMoreQDoubleSpinBox&OK&OK QErrorMessage<Diese Meldung wieder an&zeigen&Show this message again QErrorMessageDebug-Ausgabe:Debug Message: QErrorMessageFehler: Fatal Error: QErrorMessageAchtung:Warning: QErrorMessage:%1 kann nicht erstellt werdenCannot create %1 for outputQFileN%1 kann nicht zum Lesen geffnet werdenCannot open %1 for inputQFileVDas ffnen zum Schreiben ist fehlgeschlagenCannot open for outputQFileRDie Quelldatei kann nicht entfernt werdenCannot remove source fileQFile>Die Zieldatei existiert bereitsDestination file existsQFile\Der Datenblock konnte nicht geschrieben werdenFailure to write blockQFileEs ist kein Datei-Engine verfgbar oder der gegenwrtig aktive Engine untersttzt die UnMap-Erweiterung nichtBNo file engine available or engine does not support UnMapExtensionQFileEine sequentielle Datei kann nicht durch blockweises Kopieren umbenannt werden0Will not rename sequential file using block copyQFile%1 Das Verzeichnis konnte nicht gefunden werden. Stellen Sie sicher, dass der Verzeichnisname richtig ist.K%1 Directory not found. Please verify the correct directory name was given. QFileDialog%1 Die Datei konnte nicht gefunden werden. Stellen Sie sicher, dass der Dateiname richtig ist.A%1 File not found. Please verify the correct file name was given. QFileDialog|Die Datei %1 existiert bereits. Soll sie berschrieben werden?-%1 already exists. Do you want to replace it? QFileDialog&Auswhlen&Choose QFileDialog&Lschen&Delete QFileDialog$&Neues Verzeichnis &New Folder QFileDialog&ffnen&Open QFileDialog&Umbenennen&Rename QFileDialogS&peichern&Save QFileDialog'%1' ist schreibgeschtzt. Mchten Sie die Datei trotzdem lschen?9'%1' is write protected. Do you want to delete it anyway? QFileDialog AliasAlias QFileDialog Alle Dateien (*) All Files (*) QFileDialog$Alle Dateien (*.*)All Files (*.*) QFileDialog^Sind Sie sicher, dass Sie '%1' lschen mchten?!Are sure you want to delete '%1'? QFileDialog ZurckBack QFileDialog0Wechsle zu DetailansichtChange to detail view mode QFileDialog0Wechsle zu ListenansichtChange to list view mode QFileDialogBKonnte Verzeichnis nicht lschen.Could not delete directory. QFileDialog,Neuen Ordner erstellenCreate New Folder QFileDialog,Neuen Ordner erstellenCreate a New Folder QFileDialogDetails Detail View QFileDialogVerzeichnisse Directories QFileDialogVerzeichnis: Directory: QFileDialogLaufwerkDrive QFileDialog DateiFile QFileDialogDatei&name: File &name: QFileDialog Ordner File Folder QFileDialog"Dateien des Typs:Files of type: QFileDialog$Verzeichnis suchenFind Directory QFileDialog OrderFolder QFileDialogVorwrtsForward QFileDialog ZurckGo back QFileDialogVor Go forward QFileDialogFGehe zum bergeordneten VerzeichnisGo to the parent directory QFileDialog Liste List View QFileDialogSuchen in:Look in: QFileDialogMein Computer My Computer QFileDialog"Neues Verzeichnis New Folder QFileDialog ffnenOpen QFileDialog4bergeordnetes VerzeichnisParent Directory QFileDialogZuletzt besucht Recent Places QFileDialogLschenRemove QFileDialogSpeichern unterSave As QFileDialog"Symbolischer LinkShortcut QFileDialogAnzeigen Show  QFileDialog8&Versteckte Dateien anzeigenShow &hidden files QFileDialogUnbekanntUnknown QFileDialog %1 GB%1 GBQFileSystemModel %1 KB%1 KBQFileSystemModel %1 MB%1 MBQFileSystemModel %1 TB%1 TBQFileSystemModel%1 byte %1 byte(s)QFileSystemModel%1 Byte%1 bytesQFileSystemModel<b>Der Name "%1" kann nicht verwendet werden.</b><p>Versuchen Sie, die Sonderzeichen zu entfernen oder einen krzeren Namen zu verwenden.oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModelComputerComputerQFileSystemModelnderungsdatum Date ModifiedQFileSystemModel(Ungltiger DateinameInvalid filenameQFileSystemModelArtKindQFileSystemModelMein Computer My ComputerQFileSystemModelNameNameQFileSystemModel GreSizeQFileSystemModelTypTypeQFileSystemModelAlleAny QFontDatabaseArabischArabic QFontDatabaseArmenischArmenian QFontDatabaseBengalischBengali QFontDatabaseSchwarzBlack QFontDatabaseFettBold QFontDatabaseKyrillischCyrillic QFontDatabaseSemiDemi QFontDatabaseHalbfett Demi Bold QFontDatabaseDevanagari Devanagari QFontDatabaseGeorgischGeorgian QFontDatabaseGriechischGreek QFontDatabaseGujaratiGujarati QFontDatabaseGurmukhiGurmukhi QFontDatabaseHebrischHebrew QFontDatabase KursivItalic QFontDatabaseJapanischJapanese QFontDatabaseKannadaKannada QFontDatabase KhmerKhmer QFontDatabaseKoreanischKorean QFontDatabaseLaotischLao QFontDatabaseLateinischLatin QFontDatabase LeichtLight QFontDatabaseMalayalam Malayalam QFontDatabaseMyanmarMyanmar QFontDatabaseN'KoN'Ko QFontDatabase NormalNormal QFontDatabaseSchrggestelltOblique QFontDatabase OghamOgham QFontDatabase OriyaOriya QFontDatabase RunenRunic QFontDatabase0Chinesisch (Kurzzeichen)Simplified Chinese QFontDatabaseSinhalaSinhala QFontDatabase SymbolSymbol QFontDatabaseSyrischSyriac QFontDatabaseTamilischTamil QFontDatabase TeluguTelugu QFontDatabase ThaanaThaana QFontDatabaseThailndischThai QFontDatabaseTibetischTibetan QFontDatabase0Chinesisch (Langzeichen)Traditional Chinese QFontDatabaseVietnamesisch Vietnamese QFontDatabase&Schriftart&Font QFontDialog &Gre&Size QFontDialog&Unterstrichen &Underline QFontDialogEffekteEffects QFontDialogSchrifts&til Font st&yle QFontDialogBeispielSample QFontDialog(Schriftart auswhlen Select Font QFontDialog Durch&gestrichen Stri&keout QFontDialog&SchriftsystemWr&iting System QFontDialog`ndern des Verzeichnisses ist fehlgeschlagen: %1Changing directory failed: %1QFtp<Verbindung mit Rechner bestehtConnected to hostQFtp0Verbunden mit Rechner %1Connected to host %1QFtpZVerbindung mit Rechner ist fehlgeschlagen: %1Connecting to host failed: %1QFtp$Verbindung beendetConnection closedQFtp\Verbindung fr die Daten Verbindung verweigert&Connection refused for data connectionQFtp8Verbindung mit %1 verweigertConnection refused to host %1QFtpxDas Zeitlimit fr die Verbindung zu '%1' wurde berschrittenConnection timed out to host %1QFtp2Verbindung mit %1 beendetConnection to %1 closedQFtpfErstellen des Verzeichnisses ist fehlgeschlagen: %1Creating directory failed: %1QFtp\Herunterladen der Datei ist fehlgeschlagen: %1Downloading file failed: %1QFtp&Rechner %1 gefunden Host %1 foundQFtpNRechner %1 konnte nicht gefunden werdenHost %1 not foundQFtp Rechner gefunden Host foundQFtpzDer Inhalt des Verzeichnisses kann nicht angezeigt werden: %1Listing directory failed: %1QFtp@Anmeldung ist fehlgeschlagen: %1Login failed: %1QFtp Keine Verbindung Not connectedQFtpbLschen des Verzeichnisses ist fehlgeschlagen: %1Removing directory failed: %1QFtpPLschen der Datei ist fehlgeschlagen: %1Removing file failed: %1QFtp$Unbekannter Fehler Unknown errorQFtpTHochladen der Datei ist fehlgeschlagen: %1Uploading file failed: %1QFtp@Es wurde kein Hostname angegebenNo host name given QHostInfo$Unbekannter Fehler Unknown error QHostInfoHRechner konnte nicht gefunden werdenHost not foundQHostInfoAgent,Ungltiger RechnernameInvalid hostnameQHostInfoAgent@Es wurde kein Hostname angegebenNo host name givenQHostInfoAgent*Unbekannter AdresstypUnknown address typeQHostInfoAgent$Unbekannter Fehler Unknown errorQHostInfoAgent<Authentifizierung erforderlichAuthentication requiredQHttp<Verbindung mit Rechner bestehtConnected to hostQHttp0Verbunden mit Rechner %1Connected to host %1QHttp$Verbindung beendetConnection closedQHttp*Verbindung verweigertConnection refusedQHttpdVerbindung verweigert oder Zeitlimit berschritten!Connection refused (or timed out)QHttp2Verbindung mit %1 beendetConnection to %1 closedQHttp2Die Daten sind verflschtData corruptedQHttpBeim Schreiben der Antwort auf das Ausgabegert ist ein Fehler aufgetreten Error writing response to deviceQHttp6HTTP-Anfrage fehlgeschlagenHTTP request failedQHttpDie angeforderte HTTPS-Verbindung kann nicht aufgebaut werden, da keine SSL-Untersttzung vorhanden ist:HTTPS connection requested but SSL support not compiled inQHttp&Rechner %1 gefunden Host %1 foundQHttpNRechner %1 konnte nicht gefunden werdenHost %1 not foundQHttp Rechner gefunden Host foundQHttp^Der Hostrechner verlangt eine AuthentifizierungHost requires authenticationQHttpnDer Inhalt (chunked body) der HTTP-Antwort ist ungltigInvalid HTTP chunked bodyQHttpTDer Kopfteil der HTTP-Antwort ist ungltigInvalid HTTP response headerQHttplFr die Verbindung wurde kein Server-Rechner angegebenNo server set to connect toQHttpHProxy-Authentifizierung erforderlichProxy authentication requiredQHttp`Der Proxy-Server verlangt eine AuthentifizierungProxy requires authenticationQHttp2Anfrage wurde abgebrochenRequest abortedQHttppIm Ablauf des SSL-Protokolls ist ein Fehler aufgetreten.SSL handshake failedQHttphDer Server hat die Verbindung unerwartet geschlossen%Server closed connection unexpectedlyQHttpHUnbekannte AuthentifizierungsmethodeUnknown authentication methodQHttp$Unbekannter Fehler Unknown errorQHttpXEs wurde ein unbekanntes Protokoll angegebenUnknown protocol specifiedQHttp,Ungltige LngenangabeWrong content lengthQHttp<Authentifizierung erforderlichAuthentication requiredQHttpSocketEngineFKeine HTTP-Antwort vom Proxy-Server(Did not receive HTTP response from proxyQHttpSocketEnginebFehler bei der Kommunikation mit dem Proxy-Server#Error communicating with HTTP proxyQHttpSocketEngineFehler beim Auswerten der Authentifizierungsanforderung des Proxy-Servers/Error parsing authentication request from proxyQHttpSocketEnginejDer Proxy-Server hat die Verbindung vorzeitig beendet#Proxy connection closed prematurelyQHttpSocketEnginevDer Proxy-Server hat den Aufbau einer Verbindung verweigertProxy connection refusedQHttpSocketEnginevDer Proxy-Server hat den Aufbau einer Verbindung verweigertProxy denied connectionQHttpSocketEngineBei der Verbindung mit dem Proxy-Server wurde ein Zeitlimit berschritten!Proxy server connection timed outQHttpSocketEngineVEs konnte kein Proxy-Server gefunden werdenProxy server not foundQHttpSocketEngineXEs konnte keine Transaktion gestartet werdenCould not start transaction QIBaseDriverhDie Datenbankverbindung konnte nicht geffnet werdenError opening database QIBaseDriverDie Transaktion konnte nicht durchgefhrt werden (Operation 'commit' fehlgeschlagen)Unable to commit transaction QIBaseDriverDie Transaktion konnte nicht rckgngig gemacht werden (Operation 'rollback' fehlgeschlagen)Unable to rollback transaction QIBaseDriverZDie Allokation des Befehls ist fehlgeschlagenCould not allocate statement QIBaseResult~Es konnte keine Beschreibung des Eingabebefehls erhalten werden"Could not describe input statement QIBaseResultpEs konnte keine Beschreibung des Befehls erhalten werdenCould not describe statement QIBaseResult`Das nchste Element konnte nicht abgeholt werdenCould not fetch next item QIBaseResultJDas Feld konnte nicht gefunden werdenCould not find array QIBaseResultbDie Daten des Feldes konnten nicht gelesen werdenCould not get array data QIBaseResultDie erforderlichen Informationen zur Abfrage sind nicht verfgbarCould not get query info QIBaseResultZEs ist keine Information zum Befehl verfgbarCould not get statement info QIBaseResultXDer Befehl konnte nicht initialisiert werdenCould not prepare statement QIBaseResultXEs konnte keine Transaktion gestartet werdenCould not start transaction QIBaseResultTDer Befehl konnte nicht geschlossen werdenUnable to close statement QIBaseResultDie Transaktion konnte nicht durchgefhrt werden (Operation 'commit' fehlgeschlagen)Unable to commit transaction QIBaseResultDEs konnte kein BLOB erzeugt werdenUnable to create BLOB QIBaseResultRDer Befehl konnte nicht ausgefhrt werdenUnable to execute query QIBaseResultJDer BLOB konnte nicht geffnet werdenUnable to open BLOB QIBaseResultHDer BLOB konnte nicht gelesen werdenUnable to read BLOB QIBaseResultPDer BLOB konnte nicht geschrieben werdenUnable to write BLOB QIBaseResultbKein freier Speicherplatz auf dem Gert vorhandenNo space left on device QIODevicevDie Datei oder das Verzeichnis konnte nicht gefunden werdenNo such file or directory QIODevice$Zugriff verweigertPermission denied QIODevice2Zu viele Dateien geffnetToo many open files QIODevice$Unbekannter Fehler Unknown error QIODeviceFEPFEP QInputContext.Mac OS X-EingabemethodeMac OS X input method QInputContext,S60-FEP-EingabemethodeS60 FEP input method QInputContext,Windows-EingabemethodeWindows input method QInputContextXIMXIM QInputContext$XIM-EingabemethodeXIM input method QInputContext2Geben Sie einen Wert ein:Enter a value: QInputDialogV'%1' ist keine gltige ELF-Objektdatei (%2)"'%1' is an invalid ELF object (%2)QLibrary<'%1' ist keine ELF-Objektdatei'%1' is not an ELF objectQLibraryF'%1' ist keine ELF-Objektdatei (%2)'%1' is not an ELF object (%2)QLibrary^Die Bibliothek %1 kann nicht geladen werden: %2Cannot load library %1: %2QLibraryjDas Symbol "%1" kann in %2 nicht aufgelst werden: %3$Cannot resolve symbol "%1" in %2: %3QLibrary`Die Bibliothek %1 kann nicht entladen werden: %2Cannot unload library %1: %2QLibraryhDie Prfdaten des Plugins '%1' stimmen nicht berein)Plugin verification data mismatch in '%1'QLibraryVDie Datei '%1' ist kein gltiges Qt-Plugin.'The file '%1' is not a valid Qt plugin.QLibraryDas Plugin '%1' verwendet eine inkompatible Qt-Bibliothek. (%2.%3.%4) [%5]=The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]QLibrary0Das Plugin '%1' verwendet eine inkompatible Qt-Bibliothek. (Im Debug- bzw. Release-Modus erstellte Bibliotheken knnen nicht zusammen verwendet werden.)WThe plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)QLibraryDas Plugin '%1' verwendet eine inkompatible Qt-Bibliothek. Erforderlicher build-spezifischer Schlssel "%2", erhalten "%3"OThe plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"QLibrarynDie dynamische Bibliothek konnte nicht gefunden werden.!The shared library was not found.QLibrary$Unbekannter Fehler Unknown errorQLibrary&Kopieren&Copy QLineEditEinf&gen&Paste QLineEdit"Wieder&herstellen&Redo QLineEdit&Rckgngig&Undo QLineEdit&AusschneidenCu&t QLineEditLschenDelete QLineEditAlles auswhlen Select All QLineEditL%1: Die Adresse wird bereits verwendet%1: Address in use QLocalServer*%1: Fehlerhafter Name%1: Name error QLocalServer,%1: Zugriff verweigert%1: Permission denied QLocalServer2%1: Unbekannter Fehler %2%1: Unknown error %2 QLocalServer,%1: Zugriff verweigert%1: Access denied QLocalSocket*%1: Verbindungsfehler%1: Connection error QLocalSocketT%1: Der Verbindungsaufbau wurde verweigert%1: Connection refused QLocalSocket:%1: Das Datagramm ist zu gro%1: Datagram too large QLocalSocket&%1: Ungltiger Name%1: Invalid name QLocalSocketn%1: Die Verbindung wurde von der Gegenseite geschlossen%1: Remote closed QLocalSocketL%1: Fehler beim Zugriff auf den Socket%1: Socket access error QLocalSocketV%1: Zeitberschreitung bei Socket-Operation%1: Socket operation timed out QLocalSocketJ%1: Socket-Fehler (Ressourcenproblem)%1: Socket resource error QLocalSocketb%1: Diese Socket-Operation wird nicht untersttzt)%1: The socket operation is not supported QLocalSocket,%1: Unbekannter Fehler%1: Unknown error QLocalSocket2%1: Unbekannter Fehler %2%1: Unknown error %2 QLocalSocketTEs kann keine Transaktion gestartet werdenUnable to begin transaction QMYSQLDriverDie Transaktion kann nicht durchgefhrt werden (Operation 'commit' fehlgeschlagen)Unable to commit transaction QMYSQLDriverREs kann keine Verbindung aufgebaut werdenUnable to connect QMYSQLDriverhDie Datenbankverbindung kann nicht geffnet werden 'Unable to open database ' QMYSQLDriverDie Transaktion kann nicht rckgngig gemacht werden (Operation 'rollback' fehlgeschlagen)Unable to rollback transaction QMYSQLDriver\Die Ausgabewerte konnten nicht gebunden werdenUnable to bind outvalues QMYSQLResultJDer Wert konnte nicht gebunden werdenUnable to bind value QMYSQLResultbDie folgende Abfrage kann nicht ausgefhrt werdenUnable to execute next query QMYSQLResultTDie Abfrage konnte nicht ausgefhrt werdenUnable to execute query QMYSQLResultRDer Befehl konnte nicht ausgefhrt werdenUnable to execute statement QMYSQLResultLEs konnten keine Daten abgeholt werdenUnable to fetch data QMYSQLResultXDer Befehl konnte nicht initialisiert werdenUnable to prepare statement QMYSQLResultXDer Befehl konnte nicht zurckgesetzt werdenUnable to reset statement QMYSQLResultfDas folgende Ergebnis kann nicht gespeichert werdenUnable to store next result QMYSQLResultXDas Ergebnis konnte nicht gespeichert werdenUnable to store result QMYSQLResultvDie Ergebnisse des Befehls konnten nicht gespeichert werden!Unable to store statement results QMYSQLResult(Unbenannt) (Untitled)QMdiArea%1 - [%2] %1 - [%2] QMdiSubWindowSchl&ieen&Close QMdiSubWindowVer&schieben&Move QMdiSubWindow"Wieder&herstellen&Restore QMdiSubWindowGre &ndern&Size QMdiSubWindow - [%1]- [%1] QMdiSubWindowSchlieenClose QMdiSubWindow HilfeHelp QMdiSubWindowMa&ximieren Ma&ximize QMdiSubWindowMaximierenMaximize QMdiSubWindowMenMenu QMdiSubWindowM&inimieren Mi&nimize QMdiSubWindowMinimierenMinimize QMdiSubWindow WiederherstellenRestore QMdiSubWindow Wiederherstellen Restore Down QMdiSubWindowAufrollenShade QMdiSubWindow.Im &Vordergrund bleiben Stay on &Top QMdiSubWindowHerabrollenUnshade QMdiSubWindowSchlieenCloseQMenuAusfhrenExecuteQMenu ffnenOpenQMenuOptionenActionsQMenuBar~<h3>ber Qt</h3><p>Dieses Programm verwendet Qt Version %1.</p>8

About Qt

This program uses Qt version %1.

 QMessageBoxber QtAbout Qt QMessageBox HilfeHelp QMessageBox*Details ausblenden...Hide Details... QMessageBoxOKOK QMessageBox*Details einblenden...Show Details... QMessageBox0Eingabemethode auswhlen Select IMQMultiInputContext<Umschalter fr EingabemethodenMultiple input method switcherQMultiInputContextPluginMehrfachumschalter fr Eingabemethoden, der das Kontextmen des Text-Widgets verwendetMMultiple input method switcher that uses the context menu of the text widgetsQMultiInputContextPlugin^Auf diesem Port hrt bereits ein anderer Socket4Another socket is already listening on the same portQNativeSocketEngineEs wurde versucht, einen IPv6-Socket auf einem System ohne IPv6-Untersttzung zu verwenden=Attempt to use IPv6 socket on a platform with no IPv6 supportQNativeSocketEngine*Verbindung verweigertConnection refusedQNativeSocketEnginehDas Zeitlimit fr die Verbindung wurde berschrittenConnection timed outQNativeSocketEngine|Das Datagram konnte nicht gesendet werden, weil es zu gro istDatagram was too large to sendQNativeSocketEngineTDer Zielrechner kann nicht erreicht werdenHost unreachableQNativeSocketEngine8Ungltiger Socket-DeskriptorInvalid socket descriptorQNativeSocketEngineNetzwerkfehler Network errorQNativeSocketEnginefDas Zeitlimit fr die Operation wurde berschrittenNetwork operation timed outQNativeSocketEngineBDas Netzwerk ist nicht erreichbarNetwork unreachableQNativeSocketEnginehOperation kann nur auf einen Socket angewandt werdenOperation on non-socketQNativeSocketEngine4Keine Ressourcen verfgbarOut of resourcesQNativeSocketEngine$Zugriff verweigertPermission deniedQNativeSocketEngineHDas Protokoll wird nicht untersttztProtocol type not supportedQNativeSocketEngine>Die Adresse ist nicht verfgbarThe address is not availableQNativeSocketEngine2Die Adresse ist geschtztThe address is protectedQNativeSocketEngine\Die angegebene Adresse ist bereits in Gebrauch#The bound address is already in useQNativeSocketEngine|Die Operation kann mit dem Proxy-Typ nicht durchgefhrt werden,The proxy type is invalid for this operationQNativeSocketEnginehDer entfernte Rechner hat die Verbindung geschlossen%The remote host closed the connectionQNativeSocketEnginelDer Broadcast-Socket konnte nicht initialisiert werden%Unable to initialize broadcast socketQNativeSocketEngine|Der nichtblockierende Socket konnte nicht initialisiert werden(Unable to initialize non-blocking socketQNativeSocketEngineVDie Nachricht konnte nicht empfangen werdenUnable to receive a messageQNativeSocketEngineTDie Nachricht konnte nicht gesendet werdenUnable to send a messageQNativeSocketEnginebDer Schreibvorgang konnte nicht ausgefhrt werdenUnable to writeQNativeSocketEngine$Unbekannter Fehler Unknown errorQNativeSocketEngineD Socket-Kommando nicht untersttztUnsupported socket operationQNativeSocketEngine>%1 konnte nicht geffnet werdenError opening %1QNetworkAccessCacheBackend$Ungltiger URI: %1Invalid URI: %1QNetworkAccessDataBackendDer entfernte Rechner hat die Verbindung zu %1 vorzeitig beendet3Remote host closed the connection prematurely on %1QNetworkAccessDebugPipeBackend0Socket-Fehler bei %1: %2Socket error on %1: %2QNetworkAccessDebugPipeBackend>Fehler beim Schreiben zu %1: %2Write error writing to %1: %2QNetworkAccessDebugPipeBackend%1 kann nicht geffnet werden: Der Pfad spezifiziert ein Verzeichnis#Cannot open %1: Path is a directoryQNetworkAccessFileBackendF%1 konnte nicht geffnet werden: %2Error opening %1: %2QNetworkAccessFileBackendfBeim Lesen von der Datei %1 trat ein Fehler auf: %2Read error reading from %1: %2QNetworkAccessFileBackendfAnforderung zum ffnen einer Datei ber Netzwerk %1%Request for opening non-local file %1QNetworkAccessFileBackendLFehler beim Schreiben zur Datei %1: %2Write error writing to %1: %2QNetworkAccessFileBackend%1 kann nicht geffnet werden: Es handelt sich um ein VerzeichnisCannot open %1: is a directoryQNetworkAccessFtpBackendbBeim Herunterladen von %1 trat ein Fehler auf: %2Error while downloading %1: %2QNetworkAccessFtpBackendZBeim Hochladen von %1 trat ein Fehler auf: %2Error while uploading %1: %2QNetworkAccessFtpBackendDie Anmeldung bei %1 ist fehlgeschlagen: Es ist eine Authentifizierung erforderlich0Logging in to %1 failed: authentication requiredQNetworkAccessFtpBackendlEs konnte kein geeigneter Proxy-Server gefunden werdenNo suitable proxy foundQNetworkAccessFtpBackendlEs konnte kein geeigneter Proxy-Server gefunden werdenNo suitable proxy foundQNetworkAccessHttpBackendbDer Zugriff auf das Netzwerk ist nicht gestattet.Network access is disabled.QNetworkAccessManagerBeim Herunterladen von %1 trat ein Fehler auf - Die Antwort des Servers ist: %2)Error downloading %1 - server replied: %2 QNetworkReply<Fehler bei Netzwerkverbindung.Network session error. QNetworkReply@Das Protokoll "%1" ist unbekanntProtocol "%1" is unknown QNetworkReplyJDas Netzwerk ist zurzeit ausgefallen.Temporary network failure. QNetworkReply*Operation abgebrochenOperation canceledQNetworkReplyImpl0Ungltige Konfiguration.Invalid configuration.QNetworkSession&Fehler beim Roaming Roaming errorQNetworkSessionPrivateImpltDas Roaming wurde abgebrochen oder ist hier nicht mglich.'Roaming was aborted or is not possible.QNetworkSessionPrivateImplDie Verbindung wurde vom Benutzer oder vom Betriebssystem unterbrochen!Session aborted by user or systemQNetworkSessionPrivateImplzDie angeforderte Operation wird vom System nicht untersttzt.7The requested operation is not supported by the system.QNetworkSessionPrivateImplDie Verbindung wurde vom Benutzer oder vom Betriebssystem unterbrochen..The session was aborted by the user or system.QNetworkSessionPrivateImplrDie angegebene Konfiguration kann nicht verwendet werden.+The specified configuration cannot be used.QNetworkSessionPrivateImpl$Unbekannter FehlerUnidentified ErrorQNetworkSessionPrivateImplTUnbekannter Fehler bei Netzwerkverbindung.Unknown session error.QNetworkSessionPrivateImplXEs konnte keine Transaktion gestartet werdenUnable to begin transaction QOCIDriverDie Transaktion konnte nicht durchgefhrt werden (Operation 'commit' fehlgeschlagen)Unable to commit transaction QOCIDriver<Initialisierung fehlgeschlagenUnable to initialize QOCIDriver8Logon-Vorgang fehlgeschlagenUnable to logon QOCIDriverDie Transaktion konnte nicht rckgngig gemacht werden (Operation 'rollback' fehlgeschlagen)Unable to rollback transaction QOCIDriverZDie Allokation des Befehls ist fehlgeschlagenUnable to alloc statement QOCIResultDie Spalte konnte nicht fr den Stapelverarbeitungs-Befehl gebunden werden'Unable to bind column for batch execute QOCIResultJDer Wert konnte nicht gebunden werdenUnable to bind value QOCIResultzDer Stapelverarbeitungs-Befehl konnte nicht ausgefhrt werden!Unable to execute batch statement QOCIResultRDer Befehl konnte nicht ausgefhrt werdenUnable to execute statement QOCIResultXDer Anweisungstyp kann nicht bestimmt werdenUnable to get statement type QOCIResultJKann nicht zum nchsten Element gehenUnable to goto next QOCIResultXDer Befehl konnte nicht initialisiert werdenUnable to prepare statement QOCIResultDie Transaktion konnte nicht durchgefhrt werden (Operation 'commit' fehlgeschlagen)Unable to commit transaction QODBCDriverREs kann keine Verbindung aufgebaut werdenUnable to connect QODBCDriverEs kann keine Verbindung aufgebaut werden weil der Treiber die bentigte Funktionalitt nicht vollstndig untersttztEUnable to connect - Driver doesn't support all functionality required QODBCDriverX'autocommit' konnte nicht deaktiviert werdenUnable to disable autocommit QODBCDriverT'autocommit' konnte nicht aktiviert werdenUnable to enable autocommit QODBCDriverDie Transaktion konnte nicht rckgngig gemacht werden (Operation 'rollback' fehlgeschlagen)Unable to rollback transaction QODBCDriver(QODBCResult::reset: 'SQL_CURSOR_STATIC' konnte nicht als Attribut des Befehls gesetzt werden. Bitte prfen Sie die Konfiguration Ihres ODBC-TreibersyQODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResultRDie Variable konnte nicht gebunden werdenUnable to bind variable QODBCResultRDer Befehl konnte nicht ausgefhrt werdenUnable to execute statement QODBCResultLEs konnten keine Daten abgeholt werdenUnable to fetch QODBCResult`Der erste Datensatz konnte nicht abgeholt werdenUnable to fetch first QODBCResultbDer letzte Datensatz konnte nicht abgeholt werdenUnable to fetch last QODBCResultdDer nchste Datensatz konnte nicht abgeholt werdenUnable to fetch next QODBCResulthDer vorherige Datensatz konnte nicht abgeholt werdenUnable to fetch previous QODBCResultXDer Befehl konnte nicht initialisiert werdenUnable to prepare statement QODBCResult"%1" ist bereits als Name einer Rolle vergeben und wird daher deaktiviert.:"%1" duplicates a previous role name and will be disabled.QObject.PulseAudio-Sound-ServerPulseAudio Sound ServerQObject.Ungltige Abfrage: "%1"invalid query: "%1"QObjectNameNameQPPDOptionsModelWertValueQPPDOptionsModelXEs konnte keine Transaktion gestartet werdenCould not begin transaction QPSQLDriverDie Transaktion konnte nicht durchgefhrt werden (Operation 'commit' fehlgeschlagen)Could not commit transaction QPSQLDriverDie Transaktion konnte nicht rckgngig gemacht werden (Operation 'rollback' fehlgeschlagen)Could not rollback transaction QPSQLDriverREs kann keine Verbindung aufgebaut werdenUnable to connect QPSQLDriverHDie Registrierung ist fehlgeschlagenUnable to subscribe QPSQLDriver`Die Registrierung konnte nicht aufgehoben werdenUnable to unsubscribe QPSQLDriverLEs konnte keine Abfrage erzeugt werdenUnable to create query QPSQLResultXDer Befehl konnte nicht initialisiert werdenUnable to prepare statement QPSQLResultZentimeter (cm)Centimeters (cm)QPageSetupWidgetFormularFormQPageSetupWidget Hhe:Height:QPageSetupWidgetZoll (in) Inches (in)QPageSetupWidgetQuerformat LandscapeQPageSetupWidget RnderMarginsQPageSetupWidgetMillimeter (mm)Millimeters (mm)QPageSetupWidgetAusrichtung OrientationQPageSetupWidgetSeitengre: Page size:QPageSetupWidget PapierPaperQPageSetupWidgetPapierquelle: Paper source:QPageSetupWidgetPunkte (pt) Points (pt)QPageSetupWidgetHochformatPortraitQPageSetupWidget,Umgekehrtes QuerformatReverse landscapeQPageSetupWidget,Umgekehrtes HochformatReverse portraitQPageSetupWidgetBreite:Width:QPageSetupWidgetUnterer Rand bottom marginQPageSetupWidgetLinker Rand left marginQPageSetupWidgetRechter Rand right marginQPageSetupWidgetOberer Rand top marginQPageSetupWidget>Das Plugin wurde nicht geladen.The plugin was not loaded. QPluginLoader$Unbekannter Fehler Unknown error QPluginLoader|Die Datei %1 existiert bereits. Soll sie berschrieben werden?/%1 already exists. Do you want to overwrite it? QPrintDialog%1 ist ein Verzeichnis. Bitte whlen Sie einen anderen Dateinamen.7%1 is a directory. Please choose a different file name. QPrintDialog$&Einstellungen <<  &Options << QPrintDialog"&Einstellungen >> &Options >> QPrintDialog&Drucken&Print QPrintDialogN<qt>Soll sie berschrieben werden?</qt>%Do you want to overwrite it? QPrintDialogA0A0 QPrintDialog$A0 (841 x 1189 mm)A0 (841 x 1189 mm) QPrintDialogA1A1 QPrintDialog"A1 (594 x 841 mm)A1 (594 x 841 mm) QPrintDialogA2A2 QPrintDialog"A2 (420 x 594 mm)A2 (420 x 594 mm) QPrintDialogA3A3 QPrintDialog"A3 (297 x 420 mm)A3 (297 x 420 mm) QPrintDialogA4A4 QPrintDialog"A4 (210 x 297 mm)%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialogA5A5 QPrintDialog"A5 (148 x 210 mm)A5 (148 x 210 mm) QPrintDialogA6A6 QPrintDialog"A6 (105 x 148 mm)A6 (105 x 148 mm) QPrintDialogA7A7 QPrintDialog A7 (74 x 105 mm)A7 (74 x 105 mm) QPrintDialogA8A8 QPrintDialogA8 (52 x 74 mm)A8 (52 x 74 mm) QPrintDialogA9A9 QPrintDialogA9 (37 x 52 mm)A9 (37 x 52 mm) QPrintDialogAlias: %1 Aliases: %1 QPrintDialogB0B0 QPrintDialog&B0 (1000 x 1414 mm)B0 (1000 x 1414 mm) QPrintDialogB1B1 QPrintDialog$B1 (707 x 1000 mm)B1 (707 x 1000 mm) QPrintDialogB10B10 QPrintDialog B10 (31 x 44 mm)B10 (31 x 44 mm) QPrintDialogB2B2 QPrintDialog"B2 (500 x 707 mm)B2 (500 x 707 mm) QPrintDialogB3B3 QPrintDialog"B3 (353 x 500 mm)B3 (353 x 500 mm) QPrintDialogB4B4 QPrintDialog"B4 (250 x 353 mm)B4 (250 x 353 mm) QPrintDialogB5B5 QPrintDialog"B5 (176 x 250 mm)%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialogB6B6 QPrintDialog"B6 (125 x 176 mm)B6 (125 x 176 mm) QPrintDialogB7B7 QPrintDialog B7 (88 x 125 mm)B7 (88 x 125 mm) QPrintDialogB8B8 QPrintDialogB8 (62 x 88 mm)B8 (62 x 88 mm) QPrintDialogB9B9 QPrintDialogB9 (44 x 62 mm)B9 (44 x 62 mm) QPrintDialogC5EC5E QPrintDialog$C5E (163 x 229 mm)C5E (163 x 229 mm) QPrintDialog"BenutzerdefiniertCustom QPrintDialogDLEDLE QPrintDialog$DLE (110 x 220 mm)DLE (110 x 220 mm) QPrintDialogExecutive Executive QPrintDialogNExecutive (7,5 x 10 Zoll, 191 x 254 mm))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialogDie Datei %1 ist schreibgeschtzt. Bitte whlen Sie einen anderen Dateinamen.=File %1 is not writable. Please choose a different file name. QPrintDialog6Die Datei existiert bereits File exists QPrintDialog FolioFolio QPrintDialog(Folio (210 x 330 mm)Folio (210 x 330 mm) QPrintDialog LedgerLedger QPrintDialog*Ledger (432 x 279 mm)Ledger (432 x 279 mm) QPrintDialog LegalLegal QPrintDialogFLegal (8,5 x 14 Zoll, 216 x 356 mm)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialog LetterLetter QPrintDialogHLetter (8,5 x 11 Zoll, 216 x 279 mm)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialogLokale Datei Local file QPrintDialogOKOK QPrintDialogDruckenPrint QPrintDialog(In Datei drucken ...Print To File ... QPrintDialogAlles drucken Print all QPrintDialog&Diese Seite druckenPrint current page QPrintDialogBereich drucken Print range QPrintDialogAuswahl druckenPrint selection QPrintDialog(In PDF-Datei druckenPrint to File (PDF) QPrintDialog6In Postscript-Datei druckenPrint to File (Postscript) QPrintDialogTabloidTabloid QPrintDialog,Tabloid (279 x 432 mm)Tabloid (279 x 432 mm) QPrintDialogDie Angabe fr die erste Seite darf nicht grer sein als die fr die letzte Seite.7The 'From' value cannot be greater than the 'To' value. QPrintDialog,US Common #10 EnvelopeUS Common #10 Envelope QPrintDialogJUS Common #10 Envelope (105 x 241 mm)%US Common #10 Envelope (105 x 241 mm) QPrintDialog,Schreiben der Datei %1 Write %1 file QPrintDialog direkt verbundenlocally connected QPrintDialogunbekanntunknown QPrintDialog%1%%1%QPrintPreviewDialogSchlieenCloseQPrintPreviewDialogPDF exportieren Export to PDFQPrintPreviewDialog,PostScript exportierenExport to PostScriptQPrintPreviewDialogErste Seite First pageQPrintPreviewDialogSeite anpassenFit pageQPrintPreviewDialogBreite anpassen Fit widthQPrintPreviewDialogQuerformat LandscapeQPrintPreviewDialogLetzte Seite Last pageQPrintPreviewDialogNchste Seite Next pageQPrintPreviewDialog Seite einrichten Page SetupQPrintPreviewDialog Seite einrichten Page setupQPrintPreviewDialogHochformatPortraitQPrintPreviewDialogVorige Seite Previous pageQPrintPreviewDialogDruckenPrintQPrintPreviewDialogDruckvorschau Print PreviewQPrintPreviewDialogBGegenberliegende Seiten anzeigenShow facing pagesQPrintPreviewDialog,bersicht aller SeitenShow overview of all pagesQPrintPreviewDialog.Einzelne Seite anzeigenShow single pageQPrintPreviewDialogVergrernZoom inQPrintPreviewDialogVerkleinernZoom outQPrintPreviewDialogErweitertAdvancedQPrintPropertiesWidgetFormularFormQPrintPropertiesWidget SeitePageQPrintPropertiesWidgetSortierenCollateQPrintSettingsOutput FarbeColorQPrintSettingsOutputFarbmodus Color ModeQPrintSettingsOutput Anzahl ExemplareCopiesQPrintSettingsOutput"Anzahl Exemplare:Copies:QPrintSettingsOutput Current PageQPrintSettingsOutputDuplexdruckDuplex PrintingQPrintSettingsOutputFormularFormQPrintSettingsOutputGraustufen GrayscaleQPrintSettingsOutputLange Seite Long sideQPrintSettingsOutputKeinNoneQPrintSettingsOutputOptionenOptionsQPrintSettingsOutput(AusgabeeinstellungenOutput SettingsQPrintSettingsOutputSeiten von Pages fromQPrintSettingsOutputAlles drucken Print allQPrintSettingsOutputBereich drucken Print rangeQPrintSettingsOutputUmgekehrtReverseQPrintSettingsOutputAuswahl SelectionQPrintSettingsOutputKurze Seite Short sideQPrintSettingsOutputbistoQPrintSettingsOutput &Name:&Name: QPrintWidget...... QPrintWidgetFormularForm QPrintWidgetStandort: Location: QPrintWidgetAusgabe&datei: Output &file: QPrintWidget&Eigenschaften P&roperties QPrintWidgetVorschauPreview QPrintWidgetDruckerPrinter QPrintWidgetTyp:Type: QPrintWidgetvDie Eingabeumleitung konnte nicht zum Lesen geffnet werden,Could not open input redirection for readingQProcessvDie Ausgabeumleitung konnte nicht zum Lesen geffnet werden-Could not open output redirection for writingQProcessPDas Lesen vom Prozess ist fehlgeschlagenError reading from processQProcessXDas Schreiben zum Prozess ist fehlgeschlagenError writing to processQProcess@Es wurde kein Programm angegebenNo program definedQProcess4Der Prozess ist abgestrztProcess crashedQProcess`Das Starten des Prozesses ist fehlgeschlagen: %1Process failed to start: %1QProcess$ZeitberschreitungProcess operation timed outQProcessLRessourcenproblem ("fork failure"): %1!Resource error (fork failure): %1QProcessAbbrechenCancelQProgressDialog ffnenOpen QPushButtonAnkreuzenCheck QRadioButton@falsche Syntax fr Zeichenklassebad char class syntaxQRegExp8falsche Syntax fr Lookaheadbad lookahead syntaxQRegExpBfalsche Syntax fr Wiederholungenbad repetition syntaxQRegExpLdeaktivierte Eigenschaft wurde benutztdisabled feature usedQRegExp&ungltige Kategorieinvalid categoryQRegExp(ungltiges Intervallinvalid intervalQRegExp*ungltiger Oktal-Wertinvalid octal valueQRegExp.internes Limit erreichtmet internal limitQRegExp2fehlende linke Begrenzungmissing left delimQRegExpkein Fehlerno error occurredQRegExp"unerwartetes Endeunexpected endQRegExphDie Datenbankverbindung konnte nicht geffnet werdenError opening databaseQSQLite2DriverXEs konnte keine Transaktion gestartet werdenUnable to begin transactionQSQLite2DriverDie Transaktion konnte nicht durchgefhrt werden (Operation 'commit' fehlgeschlagen)Unable to commit transactionQSQLite2DriverhDie Transaktion kann nicht rckgngig gemacht werdenUnable to rollback transactionQSQLite2DriverRDer Befehl konnte nicht ausgefhrt werdenUnable to execute statementQSQLite2ResultRDas Ergebnis konnte nicht abgeholt werdenUnable to fetch resultsQSQLite2ResultnDie Datenbankverbindung konnte nicht geschlossen werdenError closing database QSQLiteDriverhDie Datenbankverbindung konnte nicht geffnet werdenError opening database QSQLiteDriverXEs konnte keine Transaktion gestartet werdenUnable to begin transaction QSQLiteDriverDie Transaktion konnte nicht durchgefhrt werden (Operation 'commit' fehlgeschlagen)Unable to commit transaction QSQLiteDriverDie Transaktion konnte nicht rckgngig gemacht werden (Operation 'rollback' fehlgeschlagen)Unable to rollback transaction QSQLiteDriverKein AbfrageNo query QSQLiteResultFDie Anzahl der Parameter ist falschParameter count mismatch QSQLiteResultTDie Parameter konnte nicht gebunden werdenUnable to bind parameters QSQLiteResultRDer Befehl konnte nicht ausgefhrt werdenUnable to execute statement QSQLiteResultTDer Datensatz konnte nicht abgeholt werdenUnable to fetch row QSQLiteResultXDer Befehl konnte nicht zurckgesetzt werdenUnable to reset statement QSQLiteResultBedingung ConditionQScriptBreakpointsModelAusgelst Hit-countQScriptBreakpointsModelIDIDQScriptBreakpointsModelAuslsen nach Ignore-countQScriptBreakpointsModel StelleLocationQScriptBreakpointsModelEinmal auslsen Single-shotQScriptBreakpointsModelLschenDeleteQScriptBreakpointsWidgetNeuNewQScriptBreakpointsWidget&&Suche im Skript...&Find in Script...QScriptDebuggerKonsole lschen Clear ConsoleQScriptDebugger*Debug-Ausgabe lschenClear Debug OutputQScriptDebugger*Fehlerausgabe lschenClear Error LogQScriptDebugger WeiterContinueQScriptDebugger Ctrl+FCtrl+FQScriptDebuggerCtrl+F10Ctrl+F10QScriptDebugger Ctrl+GCtrl+GQScriptDebuggerDebuggenDebugQScriptDebuggerF10F10QScriptDebuggerF11F11QScriptDebuggerF3F3QScriptDebuggerF5F5QScriptDebuggerF9F9QScriptDebugger&&Nchste Fundstelle Find &NextQScriptDebugger2&Vorhergehende FundstelleFind &PreviousQScriptDebuggerGehe zu Zeile Go to LineQScriptDebuggerUnterbrechen InterruptQScriptDebugger Zeile:Line:QScriptDebugger(Bis Cursor ausfhren Run to CursorQScriptDebugger:Bis zu neuem Skript ausfhrenRun to New ScriptQScriptDebuggerShift+F11 Shift+F11QScriptDebuggerShift+F3Shift+F3QScriptDebuggerShift+F5Shift+F5QScriptDebugger(Einzelschritt herein Step IntoQScriptDebugger(Einzelschritt herausStep OutQScriptDebugger$Einzelschritt ber Step OverQScriptDebugger*Haltepunkt umschaltenToggle BreakpointQScriptDebugger<img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;Die Suche hat das Ende erreichtJ Search wrappedQScriptDebuggerCodeFinderWidget:Gro/Kleinschreibung beachtenCase SensitiveQScriptDebuggerCodeFinderWidgetSchlieenCloseQScriptDebuggerCodeFinderWidgetNchsteNextQScriptDebuggerCodeFinderWidget VorigePreviousQScriptDebuggerCodeFinderWidgetGanze Worte Whole wordsQScriptDebuggerCodeFinderWidgetNameNameQScriptDebuggerLocalsModelWertValueQScriptDebuggerLocalsModel EbeneLevelQScriptDebuggerStackModel StelleLocationQScriptDebuggerStackModelNameNameQScriptDebuggerStackModelBedingung:Breakpoint Condition: QScriptEdit.Haltepunkt deaktivierenDisable Breakpoint QScriptEdit*Haltepunkt aktivierenEnable Breakpoint QScriptEdit*Haltepunkt umschaltenToggle Breakpoint QScriptEditHaltepunkte BreakpointsQScriptEngineDebuggerKonsoleConsoleQScriptEngineDebuggerDebug-Ausgabe Debug OutputQScriptEngineDebuggerFehlerausgabe Error LogQScriptEngineDebugger Geladene SkripteLoaded ScriptsQScriptEngineDebugger Lokale VariablenLocalsQScriptEngineDebugger$Qt Script DebuggerQt Script DebuggerQScriptEngineDebugger SucheSearchQScriptEngineDebugger StapelStackQScriptEngineDebuggerAnsichtViewQScriptEngineDebuggerSchlieenCloseQScriptNewBreakpointWidgetEndeBottom QScrollBarLinker Rand Left edge QScrollBar*Eine Zeile nach unten Line down QScrollBarAusrichtenLine up QScrollBar*Eine Seite nach unten Page down QScrollBar*Eine Seite nach links Page left QScrollBar,Eine Seite nach rechts Page right QScrollBar(Eine Seite nach obenPage up QScrollBarPositionPosition QScrollBarRechter Rand Right edge QScrollBar&Nach unten scrollen Scroll down QScrollBar Hierher scrollen Scroll here QScrollBar&Nach links scrollen Scroll left QScrollBar(Nach rechts scrollen Scroll right QScrollBar$Nach oben scrollen Scroll up QScrollBar AnfangTop QScrollBarV%1: Die Unix-Schlsseldatei existiert nicht%1: UNIX key file doesn't exist QSharedMemory*%1: existiert bereits%1: already exists QSharedMemoryv%1: Die Grenangabe fr die Erzeugung ist kleiner als Null%1: create size is less then 0 QSharedMemory&%1: existiert nicht%1: doesn't exist QSharedMemory&%1: existiert nicht%1: doesn't exists QSharedMemoryD%1: ftok-Aufruf ist fehlgeschlagen%1: ftok failed QSharedMemory&%1: Ungltige Gre%1: invalid size QSharedMemory4%1: Fehlerhafter Schlssel %1: key error QSharedMemoryH%1: Ungltige Schlsselangabe (leer)%1: key is empty QSharedMemory&%1: nicht verbunden%1: not attached QSharedMemoryF%1: Keine Ressourcen mehr verfgbar%1: out of resources QSharedMemory,%1: Zugriff verweigert%1: permission denied QSharedMemoryX%1: Die Abfrage der Gre ist fehlgeschlagen%1: size query failed QSharedMemoryl%1: Ein systembedingtes Limit der Gre wurde erreicht$%1: system-imposed size restrictions QSharedMemory6%1: Sperrung fehlgeschlagen%1: unable to lock QSharedMemoryR%1: Es kann kein Schlssel erzeugt werden%1: unable to make key QSharedMemoryt%1: Es kann kein Schlssel fr die Sperrung gesetzt werden%1: unable to set key on lock QSharedMemory^%1: Die Sperrung konnte nicht aufgehoben werden%1: unable to unlock QSharedMemory2%1: Unbekannter Fehler %2%1: unknown error %2 QSharedMemory++ QShortcut,Lesezeichen hinzufgen Add Favorite QShortcut*Helligkeit einstellenAdjust Brightness QShortcutAltAlt QShortcutAnwendung linksApplication Left QShortcut Anwendung rechtsApplication Right QShortcut$Audiospur wechselnAudio Cycle Track QShortcutAudio vorspulen Audio Forward QShortcut>Audio zufllige Auswahl spielenAudio Random Play QShortcut"Audio wiederholen Audio Repeat QShortcut Audio rckspulen Audio Rewind QShortcutAbwesendAway QShortcut ZurckBack QShortcut(Hinterstes nach vorn Back Forward QShortcutRcktaste Backspace QShortcutRck-TabBacktab QShortcutBass-Boost Bass Boost QShortcut Bass - Bass Down QShortcut Bass +Bass Up QShortcutBatterieBattery QShortcutBluetooth Bluetooth QShortcutBuchBook QShortcutBrowserBrowser QShortcutCDCD QShortcutRechner Calculator QShortcut AnrufCall QShortcutScharfstellen Camera Focus QShortcutAuslserCamera Shutter QShortcutFeststelltaste Caps Lock QShortcutFeststelltasteCapsLock QShortcutLschenClear QShortcutZugriff lschen Clear Grab QShortcutSchlieenClose QShortcutCode-Eingabe Code input QShortcutCommunity Community QShortcutKontext1Context1 QShortcutKontext2Context2 QShortcutKontext3Context3 QShortcutKontext4Context4 QShortcutKopierenCopy QShortcutStrgCtrl QShortcutAusschneidenCut QShortcutDOSDOS QShortcutEntfDel QShortcutLschenDelete QShortcutAnzeigenDisplay QShortcutDokumente Documents QShortcut RunterDown QShortcutEisu Shift Eisu Shift QShortcutEisu toggle Eisu toggle QShortcutAuswerfenEject QShortcutEndeEnd QShortcut EnterEnter QShortcutEscEsc QShortcut EscapeEscape QShortcutF%1F%1 QShortcutFavoriten Favorites QShortcutFinanzenFinance QShortcutUmdrehenFlip QShortcutVorwrtsForward QShortcut SpielGame QShortcutLosGo QShortcutHangeulHangul QShortcutHangeul-Banja Hangul Banja QShortcutHangeul Ende Hangul End QShortcutHangeul-Hanja Hangul Hanja QShortcutHangeul-Jamo Hangul Jamo QShortcutHangeul-Jeonja Hangul Jeonja QShortcut"Hangeul-PostHanjaHangul PostHanja QShortcut Hangeul-PreHanjaHangul PreHanja QShortcutHangeul-Romaja Hangul Romaja QShortcutHangeul SpecialHangul Special QShortcutHangeul Anfang Hangul Start QShortcutAuflegenHangup QShortcutHankakuHankaku QShortcut HilfeHelp QShortcut HenkanHenkan QShortcutHibernate Hibernate QShortcutHiraganaHiragana QShortcut"Hiragana KatakanaHiragana Katakana QShortcutVerlaufHistory QShortcutPos1Home QShortcutHome Office Home Office QShortcutStartseite Home Page QShortcut&Empfohlene Verweise Hot Links QShortcut EinfgIns QShortcutEinfgenInsert QShortcutKana Lock Kana Lock QShortcutKana Shift Kana Shift QShortcut KanjiKanji QShortcutKatakanaKatakana QShortcut6Tastaturbeleuchtung dunklerKeyboard Brightness Down QShortcut4Tastaturbeleuchtung hellerKeyboard Brightness Up QShortcut6Tastaturbeleuchtung Ein/AusKeyboard Light On/Off QShortcutTastaturmen Keyboard Menu QShortcut WahlwiederholungLast Number Redial QShortcut(0) starten Launch (0) QShortcut(1) starten Launch (1) QShortcut(2) starten Launch (2) QShortcut(3) starten Launch (3) QShortcut(4) starten Launch (4) QShortcut(5) starten Launch (5) QShortcut(6) starten Launch (6) QShortcut(7) starten Launch (7) QShortcut(8) starten Launch (8) QShortcut(9) starten Launch (9) QShortcut(A) starten Launch (A) QShortcut(B) starten Launch (B) QShortcut(C) starten Launch (C) QShortcut(D) starten Launch (D) QShortcut(E) starten Launch (E) QShortcut(F) starten Launch (F) QShortcutMail starten Launch Mail QShortcut*Medienspieler starten Launch Media QShortcut LinksLeft QShortcutBeleuchtung LightBulb QShortcut LogoffLogoff QShortcutWeiterleitung Mail Forward QShortcut MarktMarket QShortcut MassyoMassyo QShortcutNchster Media Next QShortcut Pause Media Pause QShortcutWiedergabe Media Play QShortcutVorherigerMedia Previous QShortcutAufzeichnen Media Record QShortcut Stopp Media Stop QShortcutVersammlungMeeting QShortcutMenMenu QShortcutMen PBMenu PB QShortcutMessenger Messenger QShortcutMetaMeta QShortcutMonitor dunklerMonitor Brightness Down QShortcutMonitor hellerMonitor Brightness Up QShortcutMuhenkanMuhenkan QShortcut$Mehrere VorschlgeMultiple Candidate QShortcut MusikMusic QShortcutMeine OrteMy Sites QShortcutNachrichtenNews QShortcutNeinNo QShortcut*Zahlen-FeststelltasteNum Lock QShortcut*Zahlen-FeststelltasteNumLock QShortcut*Zahlen-Feststelltaste Number Lock QShortcutURL ffnenOpen URL QShortcut OptionOption QShortcutBild abwrts Page Down QShortcutBild aufwrtsPage Up QShortcutEinfgenPaste QShortcut PausePause QShortcutBild abwrtsPgDown QShortcutBild aufwrtsPgUp QShortcutTelefonPhone QShortcut BilderPictures QShortcutAusschalten Power Off QShortcut(Vorheriger VorschlagPrevious Candidate QShortcut DruckPrint QShortcut$Bildschirm drucken Print Screen QShortcutAktualisierenRefresh QShortcutNeu ladenReload QShortcutAntwortenReply QShortcut ReturnReturn QShortcut RechtsRight QShortcut RomajiRomaji QShortcut Fenster rotierenRotate Windows QShortcutRotation KB Rotation KB QShortcutRotation PB Rotation PB QShortcutSpeichernSave QShortcut"Bildschirmschoner Screensaver QShortcut*Rollen-Feststelltaste Scroll Lock QShortcut*Rollen-Feststelltaste ScrollLock QShortcut SuchenSearch QShortcutAuswhlenSelect QShortcut SendenSend QShortcutUmschaltShift QShortcutShopShop QShortcutSchlafmodusSleep QShortcutLeertasteSpace QShortcut&Rechtschreibprfung Spellchecker QShortcut"Bildschirm teilen Split Screen QShortcutSpreadsheet Spreadsheet QShortcutStandbyStandby QShortcutAbbrechenStop QShortcutUntertitelSubtitle QShortcut HilfeSupport QShortcut PauseSuspend QShortcut SysReqSysReq QShortcutSystem RequestSystem Request QShortcutTabTab QShortcutTask-Leiste Task Panel QShortcutTerminalTerminal QShortcutZeitTime QShortcut"Anrufen/AufhngenToggle Call/Hangup QShortcut Wiedergabe/PauseToggle Media Play/Pause QShortcutWerkzeugeTools QShortcutHauptmenTop Menu QShortcutTourokuTouroku QShortcut ReiseTravel QShortcutHhen - Treble Down QShortcutHhen + Treble Up QShortcutUltra Wide BandUltra Wide Band QShortcutHochUp QShortcut VideoVideo QShortcutAnsichtView QShortcutSprachwahl Voice Dial QShortcutLautstrke - Volume Down QShortcutTon aus Volume Mute QShortcutLautstrke + Volume Up QShortcutInternetWWW QShortcutAufweckenWake Up QShortcut WebCamWebCam QShortcutDrahtlosWireless QShortcut TextverarbeitungWord Processor QShortcutXFerXFer QShortcutJaYes QShortcutZenkakuZenkaku QShortcutZenkaku HankakuZenkaku Hankaku QShortcutVergrernZoom In QShortcutVerkleinernZoom Out QShortcut iTouchiTouch QShortcut*Eine Seite nach unten Page downQSlider*Eine Seite nach links Page leftQSlider,Eine Seite nach rechts Page rightQSlider(Eine Seite nach obenPage upQSliderPositionPositionQSliderNDieser Adresstyp wird nicht untersttztAddress type not supportedQSocks5SocketEngine`Der SOCKSv5-Server hat die Verbindung verweigert(Connection not allowed by SOCKSv5 serverQSocks5SocketEnginejDer Proxy-Server hat die Verbindung vorzeitig beendet&Connection to proxy closed prematurelyQSocks5SocketEnginevDer Proxy-Server hat den Aufbau einer Verbindung verweigertConnection to proxy refusedQSocks5SocketEngineBei der Verbindung mit dem Proxy-Server wurde ein Zeitlimit berschrittenConnection to proxy timed outQSocks5SocketEngine~Allgemeiner Fehler bei der Kommunikation mit dem SOCKSv5-ServerGeneral SOCKSv5 server failureQSocks5SocketEnginefDas Zeitlimit fr die Operation wurde berschrittenNetwork operation timed outQSocks5SocketEnginetDie Authentifizierung beim Proxy-Server ist fehlgeschlagenProxy authentication failedQSocks5SocketEngine|Die Authentifizierung beim Proxy-Server ist fehlgeschlagen: %1Proxy authentication failed: %1QSocks5SocketEngineZDer Proxy-Server konnte nicht gefunden werdenProxy host not foundQSocks5SocketEngineDProtokoll-Fehler (SOCKS Version 5)SOCKS version 5 protocol errorQSocks5SocketEngine\Dieses SOCKSv5-Kommando wird nicht untersttztSOCKSv5 command not supportedQSocks5SocketEngineTTL verstrichen TTL expiredQSocks5SocketEngine|Unbekannten Fehlercode vom SOCKSv5-Proxy-Server erhalten: 0x%1%Unknown SOCKSv5 proxy error code 0x%1QSocks5SocketEngineAbbrechenCancelQSoftKeyManager FertigDoneQSoftKeyManagerBeendenExitQSoftKeyManagerOkOkQSoftKeyManagerOptionenOptionsQSoftKeyManagerAuswhlenSelectQSoftKeyManagerWenigerLessQSpinBoxMehrMoreQSpinBoxAbbrechenCancelQSql*nderungen verwerfen?Cancel your edits?QSqlBesttigenConfirmQSqlLschenDeleteQSql2Diesen Datensatz lschen?Delete this record?QSqlEinfgenInsertQSqlNeinNoQSql*nderungen speichern? Save edits?QSqlAktualisierenUpdateQSqlJaYesQSqlOhne Schlssel kann kein Zertifikat zur Verfgung gestellt werden, %1,Cannot provide a certificate with no key, %1 QSslSocketnEs konnte keine SSL-Kontextstruktur erzeugt werden (%1)Error creating SSL context (%1) QSslSocket\Es konnte keine SSL-Sitzung erzeugt werden, %1Error creating SSL session, %1 QSslSocket\Es konnte keine SSL-Sitzung erzeugt werden: %1Error creating SSL session: %1 QSslSocketvIm Ablauf des SSL-Protokolls ist ein Fehler aufgetreten: %1Error during SSL handshake: %1 QSslSocketjDas lokale Zertifikat konnte nicht geladen werden, %1#Error loading local certificate, %1 QSslSocketjDer private Schlssel konnte nicht geladen werden, %1Error loading private key, %1 QSslSocketRBeim Lesen ist ein Fehler aufgetreten: %1Error while reading: %1 QSslSocketPUngltige oder leere Schlsselliste (%1)!Invalid or empty cipher list (%1) QSslSocket`Keines der Zertifikate konnte verifiziert werden!No certificates could be verified QSslSocketKein FehlerNo error QSslSocketxEines der Zertifikate der Zertifizierungsstelle ist ungltig%One of the CA certificates is invalid QSslSocketDer private Schlssel passt nicht zum ffentlichen Schlssel, %1+Private key does not certify public key, %1 QSslSocketrDie Lnge des basicConstraints-Pfades wurde berschritten QUndoModel WiederherstellenRedo QUndoStackRckgngigUndo QUndoStack@Unicode-Kontrollzeichen einfgen Insert Unicode control characterQUnicodeControlCharacterMenuHLRE Start of left-to-right embedding$LRE Start of left-to-right embeddingQUnicodeControlCharacterMenu,LRM Left-to-right markLRM Left-to-right markQUnicodeControlCharacterMenuFLRO Start of left-to-right override#LRO Start of left-to-right overrideQUnicodeControlCharacterMenu<PDF Pop directional formattingPDF Pop directional formattingQUnicodeControlCharacterMenuHRLE Start of right-to-left embedding$RLE Start of right-to-left embeddingQUnicodeControlCharacterMenu,RLM Right-to-left markRLM Right-to-left markQUnicodeControlCharacterMenuFRLO Start of right-to-left override#RLO Start of right-to-left overrideQUnicodeControlCharacterMenu*ZWJ Zero width joinerZWJ Zero width joinerQUnicodeControlCharacterMenu4ZWNJ Zero width non-joinerZWNJ Zero width non-joinerQUnicodeControlCharacterMenu*ZWSP Zero width spaceZWSP Zero width spaceQUnicodeControlCharacterMenuFDer URL kann nicht angezeigt werdenCannot show URL QWebFrameVDieser Mime-Typ kann nicht angezeigt werdenCannot show mimetype QWebFrame2Die Datei existiert nichtFile does not exist QWebFrameDas Laden des Rahmens wurde durch eine nderung der Richtlinien unterbrochen'Frame load interrupted by policy change QWebFrame0Anfrage wurde abgewiesenRequest blocked QWebFrame2Anfrage wurde abgebrochenRequest cancelled QWebFrame %1 (%2x%3 Pixel)%1 (%2x%3 pixels)QWebPageR%1 Tage %2 Stunden %3 Minuten %4 Sekunden&%1 days %2 hours %3 minutes %4 secondsQWebPageB%1 Stunden %2 Minuten %3 Sekunden%1 hours %2 minutes %3 secondsQWebPage,%1 Minuten %2 Sekunden%1 minutes %2 secondsQWebPage%1 Sekunden %1 secondsQWebPageEine Datei%n Dateien %n file(s)QWebPage.In Wrterbuch aufnehmenAdd To DictionaryQWebPage,Linksbndig ausrichten Align LeftQWebPage.Rechtsbndig ausrichten Align RightQWebPageAudio-Element Audio ElementQWebPageBAudio-Steuerung und Statusanzeige2Audio element playback controls and status displayQWebPage4Ungltige HTTP-AnforderungBad HTTP requestQWebPageAbspielenBegin playbackQWebPageFettBoldQWebPageEndeBottomQWebPageZentrierenCenterQWebPagebGrammatik mit Rechtschreibung zusammen berprfenCheck Grammar With SpellingQWebPage,Rechtschreibung prfenCheck SpellingQWebPagebRechtschreibung whrend des Schreibens berprfenCheck Spelling While TypingQWebPageDurchsuchen Choose FileQWebPageBGespeicherte Suchanfragen lschenClear recent searchesQWebPageKopierenCopyQWebPageGrafik kopieren Copy ImageQWebPage*Link-Adresse kopieren Copy LinkQWebPage Status des FilmsCurrent movie statusQWebPage*Abspielzeit des FilmsCurrent movie timeQWebPageAusschneidenCutQWebPageVorgabeDefaultQWebPage>Bis zum Ende des Wortes lschenDelete to the end of the wordQWebPageBBis zum Anfang des Wortes lschenDelete to the start of the wordQWebPageSchreibrichtung DirectionQWebPageSpielzeit Elapsed TimeQWebPage FontsFontsQWebPageVollbild-TasteFullscreen ButtonQWebPage ZurckGo BackQWebPageVor Go ForwardQWebPageXRechtschreibung und Grammatik nicht anzeigenHide Spelling and GrammarQWebPageIgnorierenIgnoreQWebPageIgnorieren Ignore Grammar context menu itemIgnoreQWebPage Unbegrenzte ZeitIndefinite timeQWebPageEinrckenIndentQWebPage4Liste mit Punkten einfgenInsert Bulleted ListQWebPage4Nummerierte Liste einfgenInsert Numbered ListQWebPage&Neue Zeile einfgenInsert a new lineQWebPage0Neuen Abschnitt einfgenInsert a new paragraphQWebPage PrfenInspectQWebPage KursivItalicQWebPage.JavaScript-Hinweis - %1JavaScript Alert - %1QWebPage6JavaScript-Besttigung - %1JavaScript Confirm - %1QWebPage.JavaScript-Problem - %1JavaScript Problem - %1QWebPageFJavaScript-Eingabeaufforderung - %1JavaScript Prompt - %1QWebPageAusrichtenJustifyQWebPageLinker Rand Left edgeQWebPage*Von links nach rechts Left to RightQWebPage Live-bertragungLive BroadcastQWebPageLdt... Loading...QWebPage2Im Wrterbuch nachschauenLook Up In DictionaryQWebPage Fehlendes PluginMissing Plug-inQWebPageRPositionsmarke auf Ende des Blocks setzen'Move the cursor to the end of the blockQWebPageXPositionsmarke auf Ende des Dokuments setzen*Move the cursor to the end of the documentQWebPageHPositionsmarke auf Zeilenende setzen&Move the cursor to the end of the lineQWebPageTPositionsmarke auf nchstes Zeichen setzen%Move the cursor to the next characterQWebPageNPositionsmarke auf nchste Zeile setzen Move the cursor to the next lineQWebPageNPositionsmarke auf nchstes Wort setzen Move the cursor to the next wordQWebPageXPositionsmarke auf vorheriges Zeichen setzen)Move the cursor to the previous characterQWebPageRPositionsmarke auf vorherige Zeile setzen$Move the cursor to the previous lineQWebPagePPositionsmarke auf vorherige Wort setzen$Move the cursor to the previous wordQWebPageVPositionsmarke auf Anfang des Blocks setzen)Move the cursor to the start of the blockQWebPage\Positionsmarke auf Anfang des Dokuments setzen,Move the cursor to the start of the documentQWebPageLPositionsmarke auf Zeilenanfang setzen(Move the cursor to the start of the lineQWebPageAbspielzeitMovie time scrubberQWebPageJGriff zur Einstellung der AbspielzeitMovie time scrubber thumbQWebPage Stummschalttaste Mute ButtonQWebPage.Schalte Tonspuren stummMute audio tracksQWebPage2Keine Vorschlge gefundenNo Guesses FoundQWebPage:Es ist keine Datei ausgewhltNo file selectedQWebPageJEs existieren noch keine SuchanfragenNo recent searchesQWebPageFrame ffnen Open FrameQWebPage<Grafik in neuem Fenster ffnen Open ImageQWebPageAdresse ffnen Open LinkQWebPage.In neuem Fenster ffnenOpen in New WindowQWebPage&Einrckung aufhebenOutdentQWebPage UmrissOutlineQWebPage*Eine Seite nach unten Page downQWebPage*Eine Seite nach links Page leftQWebPage,Eine Seite nach rechts Page rightQWebPage(Eine Seite nach obenPage upQWebPageEinfgenPasteQWebPage<Einfgen und dem Stil anpassenPaste and Match StyleQWebPagePause-Knopf Pause ButtonQWebPage PausePause playbackQWebPageAbspielknopf Play ButtonQWebPage>Film im Vollbildmodus abspielenPlay movie in full-screen modeQWebPage,Bisherige SuchanfragenRecent searchesQWebPagebMaximal Anzahl von Weiterleitungen wurde erreichtRedirection limit reachedQWebPageNeu ladenReloadQWebPage"Verbleibende ZeitRemaining TimeQWebPage6Verbleibende Zeit des FilmsRemaining movie timeQWebPage,Formatierung entfernenRemove formattingQWebPageRcksetzenResetQWebPage<Setze Film auf Echtzeit zurck#Return streaming movie to real-timeQWebPage0Kehre zu Echtzeit zurckReturn to Real-time ButtonQWebPageRckspultaste Rewind ButtonQWebPage"Film zurckspulen Rewind movieQWebPageRechter Rand Right edgeQWebPage*Von rechts nach links Right to LeftQWebPage,Grafik speichern unter Save ImageQWebPage.Ziel speichern unter... Save Link...QWebPage&Nach unten scrollen Scroll downQWebPage Hierher scrollen Scroll hereQWebPage&Nach links scrollen Scroll leftQWebPage(Nach rechts scrollen Scroll rightQWebPage$Nach oben scrollen Scroll upQWebPageIm Web suchenSearch The WebQWebPageRcklauftasteSeek Back ButtonQWebPageVorlauftasteSeek Forward ButtonQWebPage2Schnelles RckwrtssuchenSeek quickly backQWebPage0Schnelles VorwrtssuchenSeek quickly forwardQWebPageAlles auswhlen Select allQWebPageBBis zum Ende des Blocks markierenSelect to the end of the blockQWebPageHBis zum Ende des Dokuments markieren!Select to the end of the documentQWebPage8Bis zum Zeilenende markierenSelect to the end of the lineQWebPageDBis zum nchsten Zeichen markierenSelect to the next characterQWebPage@Bis zur nchsten Zeile markierenSelect to the next lineQWebPage>Bis zum nchsten Wort markierenSelect to the next wordQWebPageHBis zum vorherigen Zeichen markieren Select to the previous characterQWebPageDBis zur vorherigen Zeile markierenSelect to the previous lineQWebPageBBis zum vorherigen Wort markierenSelect to the previous wordQWebPageFBis zum Anfang des Blocks markieren Select to the start of the blockQWebPageLBis zum Anfang des Dokuments markieren#Select to the start of the documentQWebPage<Bis zum Zeilenanfang markierenSelect to the start of the lineQWebPageLRechtschreibung und Grammatik anzeigenShow Spelling and GrammarQWebPageSchiebereglerSliderQWebPage&Schieberegler-Griff Slider ThumbQWebPageRechtschreibungSpellingQWebPageStatusanzeigeStatus DisplayQWebPageAbbrechenStopQWebPageDurchgestrichen StrikethroughQWebPage SendenSubmitQWebPage SendenQSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPageTiefstellung SubscriptQWebPageHochstellung SuperscriptQWebPageSchreibrichtungText DirectionQWebPageDas Skript dieser Webseite ist fehlerhaft. Mchten Sie es anhalten?RThe script on this page appears to have a problem. Do you want to stop the script?QWebPageDieser Index verfgt ber eine Suchfunktion. Geben Sie einen Suchbegriff ein:3This is a searchable index. Enter search keywords: QWebPage AnfangTopQWebPageUnterstrichen UnderlineQWebPageUnbekanntUnknownQWebPage>Abstelltaste fr Stummschaltung Unmute ButtonQWebPageJStummschaltung der Tonspuren aufhebenUnmute audio tracksQWebPageVideo-Element Video ElementQWebPageBVideo-Steuerung und Statusanzeige2Video element playback controls and status displayQWebPage$Web Inspector - %2Web Inspector - %2QWebPageDirekthilfe What's This?QWhatsThisAction**QWidgetAb&schlieen&FinishQWizard &Hilfe&HelpQWizard&Weiter&NextQWizard&Weiter >&Next >QWizard< &Zurck< &BackQWizardAbbrechenCancelQWizardAnwendenCommitQWizard WeiterContinueQWizard FertigDoneQWizard ZurckGo BackQWizard HilfeHelpQWizard%1 - [%2] %1 - [%2] QWorkspaceSchl&ieen&Close QWorkspaceVer&schieben&Move QWorkspace"Wieder&herstellen&Restore QWorkspace&Gre ndern&Size QWorkspace&Herabrollen&Unshade QWorkspaceSchlieenClose QWorkspaceMa&ximieren Ma&ximize QWorkspaceM&inimieren Mi&nimize QWorkspaceMinimierenMinimize QWorkspace Wiederherstellen Restore Down QWorkspace&AufrollenSh&ade QWorkspace.Im &Vordergrund bleiben Stay on &Top QWorkspacefehlende Kodierung-Deklaration oder Standalone-Deklaration beim Parsen der XML-DeklarationYencoding declaration or standalone declaration expected while reading the XML declarationQXmlhFehler in der Text-Deklaration einer externen Entity3error in the text declaration of an external entityQXmlFFehler beim Parsen eines Kommentars$error occurred while parsing commentQXmlZFehler beim Parsen des Inhalts eines Elements$error occurred while parsing contentQXmlXFehler beim Parsen der Dokumenttypdefinition5error occurred while parsing document type definitionQXmlBFehler beim Parsen eines Elements$error occurred while parsing elementQXmlBFehler beim Parsen einer Referenz&error occurred while parsing referenceQXml4Konsument lste Fehler auserror triggered by consumerQXmlrin der DTD sind keine externen Entity-Referenzen erlaubt ;external parsed general entity reference not allowed in DTDQXmlin einem Attribut-Wert sind keine externen Entity-Referenzen erlaubtGexternal parsed general entity reference not allowed in attribute valueQXmlin einer DTD ist keine interne allgemeine Entity-Referenz erlaubt4internal general entity reference not allowed in DTDQXmldkein gltiger Name fr eine Processing-Instruktion'invalid name for processing instructionQXml^ein Buchstabe ist an dieser Stelle erforderlichletter is expectedQXml>mehrere Dokumenttypdefinitionen&more than one document type definitionQXmlkein Fehlerno error occurredQXml rekursive Entityrecursive entitiesQXml~fehlende Standalone-Deklaration beim Parsen der XML DeklarationAstandalone declaration expected while reading the XML declarationQXmlXElement-Tags sind nicht richtig geschachtelt tag mismatchQXml(unerwartetes Zeichenunexpected characterQXml6unerwartetes Ende der Dateiunexpected end of fileQXml~nicht-analysierte Entity-Referenz im falschen Kontext verwendet*unparsed entity reference in wrong contextQXml`fehlende Version beim Parsen der XML-Deklaration2version expected while reading the XML declarationQXmlXfalscher Wert fr die Standalone-Deklaration&wrong value for standalone declarationQXmlXFehler %1 in %2, bei Zeile %3, Spalte %4: %5)Error %1 in %2, at line %3, column %4: %5QXmlPatternistCLI&Fehler %1 in %2: %3Error %1 in %2: %3QXmlPatternistCLIUnbekannter OrtUnknown locationQXmlPatternistCLITWarnung in %1, bei Zeile %2, Spalte %3: %4(Warning in %1, at line %2, column %3: %4QXmlPatternistCLI"Warnung in %1: %2Warning in %1: %2QXmlPatternistCLI^%1 ist keine gltige Angabe fr eine PUBLIC-Id.#%1 is an invalid PUBLIC identifier. QXmlStreamX%1 ist kein gltiger Name fr die Kodierung.%1 is an invalid encoding name. QXmlStreamt%1 ist kein gltiger Name fr eine Prozessing-Instruktion.-%1 is an invalid processing instruction name. QXmlStream@erwartet, stattdessen erhalten ' , but got ' QXmlStream<Redefinition eines Attributes.Attribute redefined. QXmlStreamNDie Kodierung %1 wird nicht untersttztEncoding %1 is unsupported QXmlStreampEs wurde Inhalt mit einer ungltigen Kodierung gefunden.(Encountered incorrectly encoded content. QXmlStreamJDie Entity '%1' ist nicht deklariert.Entity '%1' not declared. QXmlStreamEs wurde  Expected  QXmlStream@Es wurden Zeichendaten erwartet.Expected character data. QXmlStreamXberzhliger Inhalt nach Ende des Dokuments.!Extra content at end of document. QXmlStreamBUngltige Namensraum-Deklaration.Illegal namespace declaration. QXmlStream.Ungltiges XML-Zeichen.Invalid XML character. QXmlStream(Ungltiger XML-Name.Invalid XML name. QXmlStream:Ungltige XML-Versionsangabe.Invalid XML version string. QXmlStreamhDie XML-Deklaration enthlt ein ungltiges Attribut.%Invalid attribute in XML declaration. QXmlStream4Ungltige Zeichenreferenz.Invalid character reference. QXmlStream(Ungltiges Dokument.Invalid document. QXmlStream.Ungltiger Entity-Wert.Invalid entity value. QXmlStreambDer Name der Prozessing-Instruktion ist ungltig.$Invalid processing instruction name. QXmlStreamxEine Parameter-Entity-Deklaration darf kein NDATA enthalten.&NDATA in parameter entity declaration. QXmlStreambDer Namensraum-Prfix '%1' wurde nicht deklariert"Namespace prefix '%1' not declared QXmlStreamDie Anzahl der ffnenden Elemente stimmt nicht mit der Anzahl der schlieenden Elemente berein. Opening and ending tag mismatch. QXmlStream>Vorzeitiges Ende des Dokuments.Premature end of document. QXmlStreamXEs wurde eine rekursive Entity festgestellt.Recursive entity detected. QXmlStreamvIm Attributwert wurde die externe Entity '%1' referenziert.5Reference to external entity '%1' in attribute value. QXmlStreambEs wurde die ungeparste Entity '%1' referenziert."Reference to unparsed entity '%1'. QXmlStreamfIm Inhalt ist die Zeichenfolge ']]>' nicht erlaubt.&Sequence ']]>' not allowed in content. QXmlStreamDer Wert fr das 'Standalone'-Attribut kann nur 'yes' oder 'no' sein."Standalone accepts only yes or no. QXmlStream6ffnendes Element erwartet.Start tag expected. QXmlStreamDas Standalone-Pseudoattribut muss der Kodierung unmittelbar folgen.?The standalone pseudo attribute must appear after the encoding. QXmlStream8Ungltig an dieser Stelle '  Unexpected ' QXmlStreamr'%1' ist kein gltiges Zeichen in einer public-id-Angabe./Unexpected character '%1' in public id literal. QXmlStreamRDiese XML-Version wird nicht untersttzt.Unsupported XML version. QXmlStreamDie XML-Deklaration befindet sich nicht am Anfang des Dokuments.)XML declaration not at start of document. QXmlStreamDie Ausdrcke %1 und %2 passen jeweils auf den Anfang oder das Ende einer beliebigen Zeile.,%1 and %2 match the start and end of a line. QtXmlPatternsDas Attribut %1 aus %2 muss die Verwendung '%3' spezifizieren, wie im Basistyp %4.9%1 attribute in %2 must have %3 use like in base type %4. QtXmlPatternsDas Attribut %1 in einem abgeleiteten komplexen Typ muss wie im Basistyp '%2' sein.B%1 attribute in derived complex type must be %2 like in base type. QtXmlPatternsDas Attribut %1 des Elements %2 enthlt ungltigen Inhalt: {%3} ist kein Wert des Typs %4.T%1 attribute of %2 element contains invalid content: {%3} is not a value of type %4. QtXmlPatternsDas Attribut %1 des Elements %2 enthlt ungltigen Inhalt: {%3}.:%1 attribute of %2 element contains invalid content: {%3}. QtXmlPatternsDer Wert des Attributs %1 des Elements %2 ist grer als der des Attributs %3.>%1 attribute of %2 element has larger value than %3 attribute. QtXmlPatternsrDas Attribut %1 des Elements %2 kann nur %3 oder %4 sein.,%1 attribute of %2 element must be %3 or %4. QtXmlPatternsDas Attribut %1 des Elements %2 muss %3, %4 oder eine Liste der URIs enthalten.A%1 attribute of %2 element must contain %3, %4 or a list of URIs. QtXmlPatternsDer Wert des Attributs %1 des Elements %2 muss entweder %3 oder die anderen Werte enthalten.F%1 attribute of %2 element must either contain %3 or the other values. QtXmlPatternsDas Attribut %1 des Elements %2 kann nur einen der Werte %3 oder %4 haben.9%1 attribute of %2 element must have a value of %3 or %4. QtXmlPatternsnDas Attribut %1 des Elements %2 muss den Wert %3 haben.3%1 attribute of %2 element must have a value of %3. QtXmlPatternsDas Attribut %1 des Elements %2 muss den Wert %3 haben, da das Attribut %4 gesetzt ist.R%1 attribute of %2 element must have the value %3 because the %4 attribute is set. QtXmlPatternsfDas Attribut %1 des Elements %2 kann nicht %3 sein.*%1 attribute of %2 element must not be %3. QtXmlPatterns:%1 kann nicht bestimmt werden%1 cannot be retrieved QtXmlPatterns~%1 kann keinen komplexen Basistyp haben, der '%2' spezifiziert./%1 cannot have complex base type that has a %2. QtXmlPatternsh%1 enthlt eine Facette %2 mit ungltigen Daten: %3.+%1 contains %2 facet with invalid data: %3. QtXmlPatterns6%1 enthlt ungltige Daten.%1 contains invalid data. QtXmlPatterns%1 enthlt Oktette, die in der Kodierung %2 nicht zulssig sind.E%1 contains octets which are disallowed in the requested encoding %2. QtXmlPatternsDas Element %2 (%1) ist keine gltige Einschrnkung des berschriebenen Elements (%3): %4.L%1 element %2 is not a valid restriction of the %3 element it redefines: %4. QtXmlPatternsDer Wert des Attributs %2 des Elements %1 kann nur %3 oder %4 sein.C%1 element cannot have %2 attribute with value other than %3 or %4. QtXmlPatternsvDer Wert des Attributs %2 des Elements %1 kann nur %3 sein.=%1 element cannot have %2 attribute with value other than %3. QtXmlPatternsDas Element %1 hat weder das Attribut %2 noch ein Unterelement %3.9%1 element has neither %2 attribute nor %3 child element. QtXmlPatternshDas Element %1 ist in diesem Kontext nicht zulssig.*%1 element is not allowed in this context. QtXmlPatternsfDas Element %1 ist in diesem Bereich nicht zulssig'%1 element is not allowed in this scope QtXmlPatternsWenn das Attribut %3 vorhanden ist, darf das Element %1 nicht im Element %2 vorkommen.G%1 element is not allowed inside %2 element if %3 attribute is present. QtXmlPatternsDas Element %1 kann nicht den Zielnamensraum %3 als Wert des Attributs '%2' spezifizieren.Y%1 element is not allowed to have the same %2 attribute value as the target namespace %3. QtXmlPatternsDas Element %1 muss entweder das Attribut %2 spezifizieren oder ber eines der Unterelemente %3 oder %4 verfgen.F%1 element must have either %2 attribute or %3 or %4 as child element. QtXmlPatternsDas Element %1 muss eines der Attribute %2 oder %3 spezifizieren./%1 element must have either %2 or %3 attribute. QtXmlPatternsDie Attribute %2 und %3 knnen nicht zusammen im Element %1 erscheinen.6%1 element must not have %2 and %3 attribute together. QtXmlPatternspDas Element %1 erfordert eines der Attribute %2 oder %3..%1 element requires either %2 or %3 attribute. QtXmlPatternsDas Element %1 darf kein Attribut %3 haben, wenn das Unterelement %2 vorhanden ist.>%1 element with %2 child element must not have a %3 attribute. QtXmlPatternsIn einem Schema ohne Namensraum muss das Element %1 ein Attribut %2 haben.V%1 element without %2 attribute is not allowed inside schema without target namespace. QtXmlPatternspDie Facetten %1 und %2 knnen nicht zusammen erscheinen.-%1 facet and %2 facet cannot appear together. QtXmlPatternsDie Facette %1 kann nicht %2 sein, wenn die Facette %3 des Basistyps %4 ist.5%1 facet cannot be %2 if %3 facet of base type is %4. QtXmlPatternsDie Facette %1 kann nicht %2 oder %3 sein, wenn die Facette %4 des Basistyps %5 ist.;%1 facet cannot be %2 or %3 if %4 facet of base type is %5. QtXmlPatternslDie Facette %1 steht im Widerspruch zu der Facette %2. %1 facet collides with %2 facet. QtXmlPatternstDie Facette %1 enthlt einen ungltigen regulren Ausdruck,%1 facet contains invalid regular expression QtXmlPatternshDie Facette %1 enthlt einen ungltigen Wert %2: %3.'%1 facet contains invalid value %2: %3. QtXmlPatternsDie Facette %1 muss grer oder gleich der Facette %2 des Basistyps sein.=%1 facet must be equal or greater than %2 facet of base type. QtXmlPatternsDie Facette %1 muss grer als die Facette %2 des Basistyps sein.4%1 facet must be greater than %2 facet of base type. QtXmlPatternsDie Facette %1 muss grer oder gleich der Facette %2 des Basistyps sein.@%1 facet must be greater than or equal to %2 facet of base type. QtXmlPatterns|Die Facette %1 muss kleiner der Facette %2 des Basistyps sein.1%1 facet must be less than %2 facet of base type. QtXmlPatternshDie Facette %1 muss kleiner als die Facette %2 sein.$%1 facet must be less than %2 facet. QtXmlPatternsDie Facette %1 muss kleiner oder gleich der Facette %2 des Basistyps sein.=%1 facet must be less than or equal to %2 facet of base type. QtXmlPatternsxDie Facette %1 muss kleiner oder gleich der Facette %2 sein.0%1 facet must be less than or equal to %2 facet. QtXmlPatternsDie Facette %1 muss denselben Wert wie die Facette %2 des Basistyps haben.;%1 facet must have the same value as %2 facet of base type. QtXmlPatternsBei %1 unterscheidet sich die Anzahl der Felder von der der Identittseinschrnkung %2, auf die es verweist.W%1 has a different number of fields from the identity constraint %2 that it references. QtXmlPatterns|%1 hat ein Attributssuchmuster, nicht jedoch sein Basistyp %2.7%1 has attribute wildcard but its base type %2 has not. QtXmlPatterns^%1 hat eine zirkulre Vererbung im Basistyp %2.,%1 has inheritance loop in its base type %2. QtXmlPatternsT%1 ist ein komplexer Typ. Eine "cast"-Operation zu komplexen Typen ist nicht mglich. Es knnen allerdings "cast"-Operationen zu atomare Typen wie %2 durchgefhrt werden.s%1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works. QtXmlPatterns.%1 ist kein gltiges %2%1 is an invalid %2 QtXmlPatterns%1 ist kein gltiger Modifikator fr regulre Ausdrcke. Gltige Modifikatoren sind:?%1 is an invalid flag for regular expressions. Valid flags are: QtXmlPatternsH%1 ist kein gltiger Namensraum-URI.%1 is an invalid namespace URI. QtXmlPatternsV%1 ist kein gltiger regulrer Ausdruck: %2/%1 is an invalid regular expression pattern: %2 QtXmlPatternsd%1 ist kein gltiger Name fr einen Vorlagenmodus.$%1 is an invalid template mode name. QtXmlPatternsD%1 ist ein unbekannter Schema-Typ.%1 is an unknown schema type. QtXmlPatternsPDie Kodierung %1 wird nicht untersttzt.%1 is an unsupported encoding. QtXmlPatternsJ%1 ist kein gltiges XML-1.0-Zeichen.$%1 is not a valid XML 1.0 character. QtXmlPatternst%1 ist kein gltiger Name fr eine Processing-Instruktion.4%1 is not a valid name for a processing-instruction. QtXmlPatternsR%1 ist kein gltiger numerischer Literal."%1 is not a valid numeric literal. QtXmlPatterns%1 ist kein gltiger Zielname einer Processing-Anweisung, es muss ein %2 Wert wie zum Beispiel %3 sein.Z%1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3. QtXmlPatternsL%1 ist kein gltiger Wert des Typs %2.#%1 is not a valid value of type %2. QtXmlPatternsN%1 ist keine ganzzahlige Minutenangabe.$%1 is not a whole number of minutes. QtXmlPatterns%1 darf nicht durch Erweiterung von %2 abgeleitet werden, da letzterer sie als final deklariert.S%1 is not allowed to derive from %2 by extension as the latter defines it as final. QtXmlPatterns%1 darf nicht durch Listen von %2 abgeleitet werden, da letzterer sie als final deklariert.N%1 is not allowed to derive from %2 by list as the latter defines it as final. QtXmlPatterns%1 darf nicht durch Einschrnkung von %2 abgeleitet werden, da letzterer sie als final deklariert.U%1 is not allowed to derive from %2 by restriction as the latter defines it as final. QtXmlPatterns%1 darf nicht durch Vereinigung von %2 abgeleitet werden, da sie letzterer sie als final deklariert.O%1 is not allowed to derive from %2 by union as the latter defines it as final. QtXmlPatternst%1 darf keinen Typ eines Mitglieds desselben Namens haben.E%1 is not allowed to have a member type with the same name as itself. QtXmlPatterns:%1 darf keine Facetten haben.%%1 is not allowed to have any facets. QtXmlPatterns%1 ist kein atomarer Typ. "cast"-Operation knnen nur zu atomaren Typen durchgefhrt werden.C%1 is not an atomic type. Casting is only possible to atomic types. QtXmlPatterns%1 befindet sich nicht unter den Attributdeklarationen im Bereich. Schema-Import wird nicht untersttzt.g%1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported. QtXmlPatterns0%1 ist nach %2 ungltig. %1 is not valid according to %2. QtXmlPatternsL%1 ist kein gltiger Wert des Typs %2.&%1 is not valid as a value of type %2. QtXmlPatterns\Der Ausdruck '%1' schliet Zeilenvorschbe ein%1 matches newline characters QtXmlPatternsAuf %1 muss %2 oder %3 folgen; es kann nicht am Ende der Ersetzung erscheinen.J%1 must be followed by %2 or %3, not at the end of the replacement string. QtXmlPatternsDas Attribut %1 des abgeleiteten Suchmusters ist keine gltige Einschrnkung des Attributs '%2' des BasissuchmustersH%1 of derived wildcard is not a valid restriction of %2 of base wildcard QtXmlPatternsDas Attribut %1 oder %2 des Verweises %3 entspricht nicht der Attributsdeklaration %4.T%1 or %2 attribute of reference %3 does not match with the attribute declaration %4. QtXmlPatterns%1 verweist auf eine Identittseinschrnkung %2, die weder ein '%3' noch ein '%4' Element ist.A%1 references identity constraint %2 that is no %3 or %4 element. QtXmlPatternsx%1 verweist auf ein unbekanntes Element %4 ('%2' oder '%3').*%1 references unknown %2 or %3 element %4. QtXmlPatterns%1 erfordert mindestens ein Argument; die Angabe %3 ist daher ungltig.%1 erfordert mindestens %n Argumente; die Angabe %3 ist daher ungltig.=%1 requires at least %n argument(s). %2 is therefore invalid. QtXmlPatternsr%1 hat nur %n Argument; die Angabe %2 ist daher ungltig.t%1 hat nur %n Argumente; die Angabe %2 ist daher ungltig.9%1 takes at most %n argument(s). %2 is therefore invalid. QtXmlPatterns"%1 wurde gerufen.%1 was called. QtXmlPatternsDie Facetten %1, %2, %3, %4, %5 und %6 sind bei Vererbung durch Listen nicht zulssig.F%1, %2, %3, %4, %5 and %6 facets are not allowed when derived by list. QtXmlPatternsDas Attribut '%1' enthlt einen ungltigen qualifizierten Namen: %2.2'%1' attribute contains invalid QName content: %2. QtXmlPatternsJEin Kommentar darf %1 nicht enthaltenA comment cannot contain %1 QtXmlPatternsLEin Kommentar darf nicht auf %1 enden.A comment cannot end with a %1. QtXmlPatternsEs wurde ein Sprachkonstrukt angetroffen, was in der aktuellen Sprache (%1) nicht erlaubt ist.LA construct was encountered which is disallowed in the current language(%1). QtXmlPatternsDie Deklaration des Default-Namensraums muss vor Funktions-, Variablen- oder Optionsdeklaration erfolgen.^A default namespace declaration must occur before function, variable, and option declarations. QtXmlPatternsEs wurde ein fehlerhafter direkter Element-Konstruktor gefunden. %1 endet mit %2.EA direct element constructor is not well-formed. %1 is ended with %2. QtXmlPatternsnEs existiert bereits eine Funktion mit der Signatur %1.0A function already exists with the signature %1. QtXmlPatternsEin Bibliotheksmodul kann nicht direkt ausgewertet werden, er muss von einem Hauptmodul importiert werden.VA library module cannot be evaluated directly. It must be imported from a main module. QtXmlPatternsDer Parameter einer Funktion kann nicht als Tunnel deklariert werden.
Can not process unknown element %1, expected elements are: %2. QtXmlPatternsDas Unterelement fehlt im Bereich; mgliche Unterelemente wren: %1.HChild element is missing in that scope, possible child elements are: %1. QtXmlPatterns4Zirkulrer Verweis bei %1. Circular group reference for %1. QtXmlPatternsFZirkulre Vererbung im Basistyp %1.%Circular inheritance of base type %1. QtXmlPatternsVZirkulre Vererbung bei der Vereinigung %1.!Circular inheritance of union %1. QtXmlPatterns Der komplexe Typ %1 kann nicht durch Erweiterung von %2 abgeleitet werden, da letzterer ein '%3'-Element in seinem Inhaltsmodell hat.nComplex type %1 cannot be derived by extension from %2 as the latter contains %3 element in its content model. QtXmlPatternsDer komplexe Typ %1 kann nicht vom Basistyp %2 abgeleitet werden%3.6Complex type %1 cannot be derived from base type %2%3. QtXmlPatternsDer komplexe Typ %1 enthlt ein Attribut %2 mit einer Einschrnkung des Werts, dessen Typ aber von %3 abgeleitet ist._Complex type %1 contains attribute %2 that has value constraint but type that inherits from %3. QtXmlPatternshDer komplexe Typ %1 enthlt das Attribut %2 doppelt.,Complex type %1 contains attribute %2 twice. QtXmlPatternsDie Attributgruppe %1 enthlt zwei verschiedene Attribute mit Typen, die beide von %2 abgeleitet sind.WComplex type %1 contains two different attributes that both have types derived from %2. QtXmlPatternsDer komplexe Typ %1 hat ein dupliziertes Element %2 in seinem Inhaltsmodell.?Complex type %1 has duplicated element %2 in its content model. QtXmlPatternsnDer komplexe Typ %1 hat nicht-deterministischen Inhalt..Complex type %1 has non-deterministic content. QtXmlPatternsZDer komplexe Typ %1 kann nicht abstrakt sein..Complex type %1 is not allowed to be abstract. QtXmlPatternshDer komplexe Typ %1 kann nur einfachen Inhalt haben.)Complex type %1 must have simple content. QtXmlPatternsDer komplexe Typ %1 kann nur einen einfachen Typ als Basisklasse %2 haben.DComplex type %1 must have the same simple type as its base class %2. QtXmlPatternsDer komplexe Typ %1 einfachen Inhalts darf nicht vom komplexen Basistyp %2 abgeleitet werden.PComplex type %1 with simple content cannot be derived from complex base type %2. QtXmlPatternsDer komplexe Typ des abgeleiteten Elements %1 kann nicht vom Basiselement abgeleitet werden.OComplex type of derived element %1 cannot be validly derived from base element. QtXmlPatternsrEs wurde bereits eine Komponente mit der ID %1 definiert.1Component with ID %1 has been defined previously. QtXmlPatterns6Das Inhaltsmodell des komplexen Typs %1enthlt ein Element '%2'; es kann daher nicht durch Erweiterung von einem Typ abgeleitet werden, der nicht leer ist.pContent model of complex type %1 contains %2 element so it cannot be derived by extension from a non-empty type. QtXmlPatternsDas Inhaltsmodell des komplexen Typs %1 ist keine gltige Erweiterung des Inhaltsmodells von %2.QContent model of complex type %1 is not a valid extension of content model of %2. QtXmlPatternsDer Inhalt des Attributs %1 des Elements %2 kann nicht vom Namensraum %3 stammen.DContent of %1 attribute of %2 element must not be from namespace %3. QtXmlPatternsDer Inhalt des Attributs %1 entspricht nicht der definierten Einschrnkung des Werts.@Content of attribute %1 does not match defined value constraint. QtXmlPatternsDer Inhalt des Attributs %1 entspricht nicht seiner Typdefinition: %2.?Content of attribute %1 does not match its type definition: %2. QtXmlPatternsDer Inhalt des Elements %1 entspricht nicht der definierten Einschrnkung des Werts.>Content of element %1 does not match defined value constraint. QtXmlPatternsDer Inhalt des Elements %1 entspricht nicht seiner Typdefinition: %2.=Content of element %1 does not match its type definition: %2. QtXmlPatternsPDaten vom Typ %1 knnen nicht leer sein.,Data of type %1 are not allowed to be empty. QtXmlPatternspDie Datumsangabe entspricht nicht der Suchmusterfacette./Date time content does not match pattern facet. QtXmlPatternszDie Datumsangabe entspricht nicht der Facette 'maxExclusive'.8Date time content does not match the maxExclusive facet. QtXmlPatternszDie Datumsangabe entspricht nicht der Facette 'maxInclusive'.8Date time content does not match the maxInclusive facet. QtXmlPatternszDie Datumsangabe entspricht nicht der Facette 'minExclusive'.8Date time content does not match the minExclusive facet. QtXmlPatternszDie Datumsangabe entspricht nicht der Facette 'minInclusive'.8Date time content does not match the minInclusive facet. QtXmlPatterns~Die Datumsangabe ist nicht in der Aufzhlungsfacette enthalten.9Date time content is not listed in the enumeration facet. QtXmlPatternsbDie Tagesangabe %1 ist fr den Monat %2 ungltig.Day %1 is invalid for month %2. QtXmlPatternslDie Tagesangabe %1 ist auerhalb des Bereiches %2..%3.#Day %1 is outside the range %2..%3. QtXmlPatternszDie Dezimalzahl entspricht nicht der Facette 'fractionDigit'.;Decimal content does not match in the fractionDigits facet. QtXmlPatternsvDie Dezimalzahl entspricht nicht der Facette 'totalDigits'.8Decimal content does not match in the totalDigits facet. QtXmlPatternshFr das Attribut %1 ist keine Deklaration verfgbar.,Declaration for attribute %1 does not exist. QtXmlPatternsfFr das Element %1 ist keine Deklaration verfgbar.*Declaration for element %1 does not exist. QtXmlPatternsErweiterung muss als Vererbungsmethode fr %1 verwendet werden, da der Basistyp %2 ein einfacher Typ ist.TDerivation method of %1 must be extension because the base type %2 is a simple type. QtXmlPatternsDas abgeleitete Attribut %1 existiert in der Basisdefinition nicht.;Derived attribute %1 does not exist in the base definition. QtXmlPatternsDas abgeleitete Attribut %1 entspricht nicht dem Suchmuster in der Basisdefinition.HDerived attribute %1 does not match the wildcard in the base definition. QtXmlPatternsDie abgeleitete Definition enthlt ein Element %1, was in der Basisdefinition nicht existiertUDerived definition contains an %1 element that does not exists in the base definition QtXmlPatternsDas abgeleitete Element %1 kann kein 'nillable'-Attribut haben, da das Basiselement keines spezifiziert.FDerived element %1 cannot be nillable as base element is not nillable. QtXmlPatternsDas abgeleitete Element %1 hat eine schwchere Einschrnkung des Wertes als der Basispartikel.BDerived element %1 has weaker value constraint than base particle. QtXmlPatternsIm abgeleiteten Element %1 fehlt Einschrnkung des Wertes, wie sie im Basispartikel definiert ist.KDerived element %1 is missing value constraint as defined in base particle. QtXmlPatternsDer abgeleitete Partikel gestattet Inhalt, der fr den Basispartikel nicht zulssig ist.IDerived particle allows content that is not allowed in the base particle. QtXmlPatterns\Das Element %1 fehlt im abgeleiteten Partikel.'Derived particle is missing element %1. QtXmlPatternsDas abgeleitete Suchmuster ist keine Untermenge des Basissuchmusters.6Derived wildcard is not a subset of the base wildcard. QtXmlPatternsDie Division eines Werts des Typs %1 durch %2 (kein numerischer Wert) ist nicht zulssig.@Dividing a value of type %1 by %2 (not-a-number) is not allowed. QtXmlPatternsDie Division eines Werts des Typs %1 durch %2 oder %3 (positiv oder negativ Null) ist nicht zulssig.LDividing a value of type %1 by %2 or %3 (plus or minus zero) is not allowed. QtXmlPatternslDie Division (%1) durch Null (%2) ist nicht definiert.(Division (%1) by zero (%2) is undefined. QtXmlPatternsBDas Dokument ist kein XML-Schema.Document is not a XML schema. QtXmlPatternstDie Gleitkommazahl entspricht nicht der Suchmusterfacette.,Double content does not match pattern facet. QtXmlPatterns~Die Gleitkommazahl entspricht nicht der Facette 'maxExclusive'.5Double content does not match the maxExclusive facet. QtXmlPatterns~Die Gleitkommazahl entspricht nicht der Facette 'maxInclusive'.5Double content does not match the maxInclusive facet. QtXmlPatterns~Die Gleitkommazahl entspricht nicht der Facette 'minExclusive'.5Double content does not match the minExclusive facet. QtXmlPatterns~Die Gleitkommazahl entspricht nicht der Facette 'minInclusive'.5Double content does not match the minInclusive facet. QtXmlPatternsDie Gleitkommazahl ist nicht in der Aufzhlungsfacette enthalten.6Double content is not listed in the enumeration facet. QtXmlPatternshDer Elementname %1 kommt im Element %2 mehrfach vor.*Duplicated element names %1 in %2 element. QtXmlPatternsbIm einfachen Typ %1 kommen Facetten mehrfach vor.$Duplicated facets in simple type %1. QtXmlPatternsDie Angabe der Zeitdauer entspricht nicht der Suchmusterfacette..Duration content does not match pattern facet. QtXmlPatternsDie Angabe der Zeitdauer entspricht nicht der Facette 'maxExclusive'.7Duration content does not match the maxExclusive facet. QtXmlPatternsDie Angabe der Zeitdauer entspricht nicht der Facette 'maxInclusive'.7Duration content does not match the maxInclusive facet. QtXmlPatternsDie Angabe der Zeitdauer entspricht nicht der Facette 'minExclusive'.7Duration content does not match the minExclusive facet. QtXmlPatternsDie Angabe der Zeitdauer entspricht nicht der Facette 'minInclusive'.7Duration content does not match the minInclusive facet. QtXmlPatternsDie Angabe der Zeitdauer ist nicht in der Aufzhlungsfacette enthalten.8Duration content is not listed in the enumeration facet. QtXmlPatternsDie Namen von Vorlagenparametern mssen eindeutig sein, %1 existiert bereits.CEach name of a template parameter must be unique; %1 is duplicated. QtXmlPatternsDer effektive boolesche Wert einer Sequenz aus zwei oder mehreren atomaren Werten kann nicht berechnet werden.aEffective Boolean Value cannot be calculated for a sequence containing two or more atomic values. QtXmlPatternsJDas Element %1 ist bereits definiert.Element %1 already defined. QtXmlPatternsDas Element %1 kann nicht serialisiert werden, da es auerhalb des Dokumentenelements erscheint.OElement %1 can't be serialized because it appears outside the document element. QtXmlPatternsDas Element %1 kann keine anderen Element enthalten, da sein Inhalt festgelegt ist.DElement %1 cannot contain other elements, as it has a fixed content. QtXmlPatternshDas Element %1 kann keinen Sequenzkonstruktor haben..Element %1 cannot have a sequence constructor. QtXmlPatternsZDas Element %1 kann keine Kindelemente haben. Element %1 cannot have children. QtXmlPatternsRDas Element %1 enthlt ungltigen Inhalt.$Element %1 contains invalid content. QtXmlPatternsZDas Element %1 enthlt unzulssige Attribute.+Element %1 contains not allowed attributes. QtXmlPatterns`Das Element %1 enthlt unzulssigen Unterinhalt..Element %1 contains not allowed child content. QtXmlPatternsjDas Element %1 enthlt ein unzulssiges Unterelement..Element %1 contains not allowed child element. QtXmlPatterns^Das Element %1 enthlt unzulssigen Textinhalt.-Element %1 contains not allowed text content. QtXmlPatternsdDas Element %1 enthlt zwei Attribute des Typs %2..Element %1 contains two attributes of type %2. QtXmlPatternsfDas Element %1 enthlt ein unbekanntes Attribut %2.)Element %1 contains unknown attribute %2. QtXmlPatternsDas Element %1 entspricht nicht der Namensraumeinschrnkung des Basispartikels.LElement %1 does not match namespace constraint of wildcard in base particle. QtXmlPatternsEs existieren zwei Vorkommen verschiedenen Typs des Elements %1.-Element %1 exists twice with different types. QtXmlPatternsVDas Element %1 ist als abstrakt deklariert.#Element %1 is declared as abstract. QtXmlPatternsNBeim Element %1 fehlt ein Unterelement.$Element %1 is missing child element. QtXmlPatterns\Das Element %1 fehlt im abgeleiteten Partikel.*Element %1 is missing in derived particle. QtXmlPatternspBei dem Element %1 fehlt ein erforderliches Attribut %2.,Element %1 is missing required attribute %2. QtXmlPatternsdDas Element %1 darf nicht an dieser Stelle stehen.+Element %1 is not allowed at this location. QtXmlPatternsDas Element %1 ist in diesem Bereich nicht zulssig; mglich wren: %2.CElement %1 is not allowed in this scope, possible elements are: %2. QtXmlPatternsDas Element %1 darf keine Einschrnkung des Werts haben, wenn der Basistyp komplex ist.QElement %1 is not allowed to have a value constraint if its base type is complex. QtXmlPatternsDas Element %1 darf keine Einschrnkung des Werts haben, wenn sein Typ von %2 abgeleitet ist.TElement %1 is not allowed to have a value constraint if its type is derived from %2. QtXmlPatternsDas Element %1 kann nicht zu einer Substitutionsgruppe gehren, da es kein globales Element ist.\Element %1 is not allowed to have substitution group affiliation as it is no global element. QtXmlPatternsjDas Element %1 ist in diesem Bereich nicht definiert.(Element %1 is not defined in this scope. QtXmlPatterns|Das Element %1 hat das Attribut 'nillable' nicht spezifiziert.Element %1 is not nillable. QtXmlPatternsFDas Element %1 muss zuletzt stehen.Element %1 must come last. QtXmlPatternsDas Element %1 muss mindestens eines der Attribute %2 oder %3 haben.=Element %1 must have at least one of the attributes %2 or %3. QtXmlPatternsDas Element %1 muss entweder ein %2-Attribut haben oder es muss ein Sequenzkonstruktor verwendet werden.EElement %1 must have either a %2-attribute or a sequence constructor. QtXmlPatternstDas Element hat Inhalt, obwohl es 'nillable' spezifiziert.1Element contains content although it is nillable. QtXmlPatternsVDie Elementgruppe %1 ist bereits definiert.!Element group %1 already defined. QtXmlPatternsEs kann kein leerer Partikel von einem Partikel abgeleitet werden, der nicht leer ist.9Empty particle cannot be derived from non-empty particle. QtXmlPatternsUngltiger Inhalt einer Aufzhlungsfacette: {%1} ist kein Wert des Typs %2.KEnumeration facet contains invalid content: {%1} is not a value of type %2. QtXmlPatternsJDas Feld %1 hat keinen einfachen Typ.Field %1 has no simple type. QtXmlPatternsEine Beschrnkung auf einen festen Wert ist nicht zulssig, wenn das Element 'nillable' spezifiziert.:Fixed value constraint not allowed if element is nillable. QtXmlPatternsDie feste Einschrnkung des Wertes des Elements %1 unterscheidet sich von der Einschrnkung des Wertes des Basispartikels.TFixed value constraint of element %1 differs from value constraint in base particle. QtXmlPatternsJDer ID-Wert '%1' ist nicht eindeutig.ID value '%1' is not unique. QtXmlPatternsjDie Identittseinschrnkung %1 ist bereits definiert.'Identity constraint %1 already defined. QtXmlPatternsWenn beide Werte mit Zeitzonen angegeben werden, mssen diese bereinstimmen. %1 und %2 sind daher unzulssig.bIf both values have zone offsets, they must have the same zone offset. %1 and %2 are not the same. QtXmlPatternsDas Element %1 darf keines der Attribute %3 oder %4 haben, solange es nicht das Attribut %2 hat.EIf element %1 has no attribute %2, it cannot have attribute %3 or %4. QtXmlPatterns0Es kann kein Prfix angegeben werden, wenn das erste Argument leer oder eine leere Zeichenkette (kein Namensraum) ist. Es wurde der Prfix %1 angegeben.If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified. QtXmlPatternsIm Konstruktor eines Namensraums darf der Wert des Namensraumes keine leere Zeichenkette sein.PIn a namespace constructor, the value for a namespace cannot be an empty string. QtXmlPatternsIn einem vereinfachten Stylesheet-Modul muss das Attribut %1 vorhanden sein.@In a simplified stylesheet module, attribute %1 must be present. QtXmlPatternsBei einem XSL-T-Suchmuster drfen nur die Achsen %2 oder %3 verwendet werden, nicht jedoch %1.DIn an XSL-T pattern, axis %1 cannot be used, only axis %2 or %3 can. QtXmlPatternsBei einem XSL-T-Suchmuster darf die Funktion %1 kein drittes Argument haben.>In an XSL-T pattern, function %1 cannot have a third argument. QtXmlPatternsBei einem XSL-T-Suchmuster drfen nur die Funktionen %1 und %2, nicht jedoch %3 zur Suche verwendet werden.OIn an XSL-T pattern, only function %1 and %2, not %3, can be used for matching. QtXmlPatternsBei einem XSL-T-Suchmuster muss das erste Argument zur Funktion %1 bei der Verwendung zur Suche ein Literal oder eine Variablenreferenz sein.yIn an XSL-T pattern, the first argument to function %1 must be a literal or a variable reference, when used for matching. QtXmlPatternsBei einem XSL-T-Suchmuster muss das erste Argument zur Funktion %1 bei der Verwendung zur Suche ein Zeichenketten-Literal sein.hIn an XSL-T pattern, the first argument to function %1 must be a string literal, when used for matching. QtXmlPatternsIn der Ersetzung kann %1 nur verwendet werden, um sich selbst oder %2 schtzen, nicht jedoch fr %3MIn the replacement string, %1 can only be used to escape itself or %2, not %3 QtXmlPatternsIn der Ersetzung muss auf %1 eine Ziffer folgen, wenn es nicht durch ein Escape-Zeichen geschtzt ist.VIn the replacement string, %1 must be followed by at least one digit when not escaped. QtXmlPatterns|Die Ganzzahldivision (%1) durch Null (%2) ist nicht definiert.0Integer division (%1) by zero (%2) is undefined. QtXmlPatternslDer Inhalt des qualifizierten Namens ist ungltig: %1.Invalid QName content: %1. QtXmlPatternsPDer Prfix %1 kann nicht gebunden werden+It is not possible to bind to the prefix %1 QtXmlPatternsZDer Prfix %1 kann nicht redeklariert werden.*It is not possible to redeclare prefix %1. QtXmlPatterns<%1 kann nicht bestimmt werden.'It will not be possible to retrieve %1. QtXmlPatterns`Attribute drfen nicht auf andere Knoten folgen.AIt's not possible to add attributes after any other kind of node. QtXmlPatternstDer Subtyp %1 des Elements %2 kann nicht aufgelst werden..Item type %1 of %2 element cannot be resolved. QtXmlPatternsDer Elementtyp des Basistyps entspricht nicht dem Elementtyp von %1.6Item type of base type does not match item type of %1. QtXmlPatternsDer Elementtyp des einfachen Typs %1 kann kein komplexer Typ sein.5Item type of simple type %1 cannot be a complex type. QtXmlPatternsDie Einschrnkung des Schlssels %1 enthlt nicht vorhandene Felder.)Key constraint %1 contains absent fields. QtXmlPatternsDie Einschrnkung des Schlssels %1 verweist auf das Element %2, was 'nillable' spezifiziert.:Key constraint %1 contains references nillable element %2. QtXmlPatternshDer Listeninhalt entspricht nicht der Lngenfacette.)List content does not match length facet. QtXmlPatternstDer Listeninhalt entspricht nicht der Facette 'maxLength'.,List content does not match maxLength facet. QtXmlPatternstDer Listeninhalt entspricht nicht der Facette 'minLength'.,List content does not match minLength facet. QtXmlPatternspDer Listeninhalt entspricht nicht der Suchmusterfacette.*List content does not match pattern facet. QtXmlPatterns~Der Listeninhalt ist nicht in der Aufzhlungsfacette enthalten.4List content is not listed in the enumeration facet. QtXmlPatternsBDas geladene Schema ist ungltig.Loaded schema file is invalid. QtXmlPatternsPGro/Kleinschreibung wird nicht beachtetMatches are case insensitive QtXmlPatternsDer Typ %1 des Mitglieds darf nicht vom Typ %2 des Mitglieds vom Basistyp %4 von %3 sein.JMember type %1 cannot be derived from member type %2 of %3's base type %4. QtXmlPatternstDer Subtyp %1 des Elements %2 kann nicht aufgelst werden.0Member type %1 of %2 element cannot be resolved. QtXmlPatternsDer Typ eines Mitglieds des einfachen Typs %1 kann kein komplexer Typ sein.7Member type of simple type %1 cannot be a complex type. QtXmlPatternsModul-Importe mssen vor Funktions-, Variablen- oder Optionsdeklarationen stehen.MModule imports must occur before function, variable, and option declarations. QtXmlPatternszDie Modulo-Division (%1) durch Null (%2) ist nicht definiert.0Modulus division (%1) by zero (%2) is undefined. QtXmlPatternsnDie Monatsangabe %1 ist auerhalb des Bereiches %2..%3.%Month %1 is outside the range %2..%3. QtXmlPatterns\Fr das Feld %1 wurden mehrere Werte gefunden.'More than one value found for field %1. QtXmlPatternsDie Multiplikation eines Werts des Typs %1 mit %2 oder %3 (positiv oder negativ unendlich) ist nicht zulssig.YMultiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed. QtXmlPatternsDer Namensraum %1 kann nur an %2 gebunden werden. Dies ist bereits vordeklariert.ONamespace %1 can only be bound to %2 (and it is, in either case, pre-declared). QtXmlPatternsNamensraums-Deklarationen mssen vor Funktions- Variablen- oder Optionsdeklarationen stehen.UNamespace declarations must occur before function, variable, and option declarations. QtXmlPatternsDer Namensraum-Prfix des qualifizierten Namens %1 ist nicht definiert.5Namespace prefix of qualified name %1 is not defined. QtXmlPatternspDas Zeitlimit der Netzwerkoperation wurde berschritten.Network timeout. QtXmlPatternsdFr das Element %1 ist keine Definition verfgbar.'No definition for element %1 available. QtXmlPatternsExterne Funktionen werden nicht untersttzt. Alle untersttzten Funktionen knnen direkt verwendet werden, ohne sie als extern zu deklarieren{No external functions are supported. All supported functions can be used directly, without first declaring them as external QtXmlPatterns\Es ist keine Funktion des Namens %1 verfgbar.&No function with name %1 is available. QtXmlPatterns^Es existiert keine Funktion mit der Signatur %1*No function with signature %1 is available QtXmlPatternsnEs existiert keine Namensraum-Bindung fr den Prfix %1-No namespace binding exists for the prefix %1 QtXmlPatternszEs existiert keine Namensraum-Bindung fr den Prfix %1 in %23No namespace binding exists for the prefix %1 in %2 QtXmlPatternsDer referenzierte Wert der Schlsselreferenz %1 konnte nicht gefunden werden./No referenced value found for key reference %1. QtXmlPatternsbEs ist kein Schema fr die Validierung definiert.!No schema defined for validation. QtXmlPatternsXEs existiert keine Vorlage mit dem Namen %1.No template by name %1 exists. QtXmlPatternsEs ist kein Wert fr die externe Variable des Namens %1 verfgbar.=No value is available for the external variable with name %1. QtXmlPatternsREs existiert keine Variable des Namens %1No variable with name %1 exists QtXmlPatternsFr die Einschrnkung %1 wurde ein nicht eindeutiger Wert gefunden.)Non-unique value found for constraint %1. QtXmlPatternsEs muss ein fallback-Ausdruck vorhanden sein, da keine pragma-Ausdrcke untersttzt werden^None of the pragma expressions are supported. Therefore, a fallback expression must be present QtXmlPatternsLDie Notation %1 ist bereits definiert.Notation %1 already defined. QtXmlPatternsDer Inhalt der Notation ist nicht in der Aufzhlungsfacette enthalten.8Notation content is not listed in the enumeration facet. QtXmlPatternsBei Vererbung durch Vereinigung sind nur die Facetten %1 und %2 zulssig.8Only %1 and %2 facets are allowed when derived by union. QtXmlPatternstDer Anfrage-Prolog darf nur eine %1-Deklaration enthalten.6Only one %1 declaration can occur in the query prolog. QtXmlPatternsVEs darf nur ein einziges %1-Element stehen.Only one %1-element can appear. QtXmlPatternsEs wird nur Unicode Codepoint Collation untersttzt (%1). %2 wird nicht untersttzt.IOnly the Unicode Codepoint Collation is supported(%1). %2 is unsupported. QtXmlPatternszAn %2 kann nur der Prfix %1 gebunden werden (und umgekehrt).5Only the prefix %1 can be bound to %2 and vice versa. QtXmlPatternsDer Operator %1 kann nicht auf atomare Werte der Typen %2 und %3 angewandt werden.>Operator %1 cannot be used on atomic values of type %2 and %3. QtXmlPatternsvDer Operator %1 kann nicht auf den Typ %2 angewandt werden.&Operator %1 cannot be used on type %2. QtXmlPatternslDas Datum %1 kann nicht dargestellt werden (berlauf)."Overflow: Can't represent date %1. QtXmlPatternsfDas Datum kann nicht dargestellt werden (berlauf).$Overflow: Date can't be represented. QtXmlPatterns Parse-Fehler: %1Parse error: %1 QtXmlPatternsnDer Partikel enthlt nicht-deterministische Suchmuster..Particle contains non-deterministic wildcards. QtXmlPatternsDer Prfix %1 kann nur an %2 gebunden werden. Dies ist bereits vordeklariert.LPrefix %1 can only be bound to %2 (and it is, in either case, pre-declared). QtXmlPatternsbDer Prfix %1 wurde bereits im Prolog deklariert.,Prefix %1 is already declared in the prolog. QtXmlPatternsxDer Prfix des qualifizierten Namens %1 ist nicht definiert.+Prefix of qualified name %1 is not defined. QtXmlPatternsDie Wandlung von %1 zu %2 kann zu einem Verlust an Genauigkeit fhren./Promoting %1 to %2 may cause loss of precision. QtXmlPatternsDer Inhalt des qualifizierten Namens entspricht nicht der Suchmusterfacette.+QName content does not match pattern facet. QtXmlPatternsDer Inhalt des qualifizierten Namens ist nicht in der Aufzhlungsfacette enthalten.5QName content is not listed in the enumeration facet. QtXmlPatternsvDer Verweis %1 des Elements %2 kann nicht aufgelst werden..Reference %1 of %2 element cannot be resolved. QtXmlPatternsnDie erforderliche Kardinalitt ist %1 (gegenwrtig %2)./Required cardinality is %1; got cardinality %2. QtXmlPatternsrDer erforderliche Typ ist %1, es wurde aber %2 angegeben.&Required type is %1, but %2 was found. QtXmlPatternsEs wird ein XSL-T-1.0-Stylesheet mit einem Prozessor der Version 2.0 verarbeitet.5Running an XSL-T 1.0 stylesheet with a 2.0 processor. QtXmlPatternsDer vorzeichenbehaftete Ganzzahlwert entspricht nicht der Facette 'totalDigits'.?Signed integer content does not match in the totalDigits facet. QtXmlPatternsDer vorzeichenbehaftete Ganzzahlwert entspricht nicht der Suchmusterfacette.4Signed integer content does not match pattern facet. QtXmlPatternsDer vorzeichenbehaftete Ganzzahlwert entspricht nicht der Facette 'maxExclusive'.=Signed integer content does not match the maxExclusive facet. QtXmlPatternsDer vorzeichenbehaftete Ganzzahlwert entspricht nicht der Facette 'maxInclusive'.=Signed integer content does not match the maxInclusive facet. QtXmlPatternsDer vorzeichenbehaftete Ganzzahlwert entspricht nicht der Facette 'minExclusive'.=Signed integer content does not match the minExclusive facet. QtXmlPatternsDer vorzeichenbehaftete Ganzzahlwert entspricht nicht der Facette 'minInclusive'.=Signed integer content does not match the minInclusive facet. QtXmlPatternsDer vorzeichenbehaftete Ganzzahlwert ist nicht in der Aufzhlungsfacette enthalten.>Signed integer content is not listed in the enumeration facet. QtXmlPatternsDer einfache Typ %1 kann nur einen einfachen. atomaren Basistyp haben.=Simple type %1 can only have simple atomic type as base type. QtXmlPatterns%1 darf nicht von %2 abgeleitet werden, da letzterer die Einschrnkung als final deklariert.PSimple type %1 cannot derive from %2 as the latter defines restriction as final. QtXmlPatternsDer einfache Typ %1 kann nicht den unmittelbaren Basistyp %2 haben./Simple type %1 cannot have direct base type %2. QtXmlPatternsDer einfache Typ %1 enthlt einen nicht erlaubten Facettentyp %2.2Simple type %1 contains not allowed facet type %2. QtXmlPatternsjDer einfache Typ %1 darf nicht den Basistyp %2 haben.3Simple type %1 is not allowed to have base type %2. QtXmlPatternsdDer einfache Typ %1 darf nur die Facette %2 haben.0Simple type %1 is only allowed to have %2 facet. QtXmlPatternsjDer einfache Typ enthlt eine unzulssige Facette %1.*Simple type contains not allowed facet %1. QtXmlPatternsDer einfache Typ des abgeleiteten Elements %1 kann nicht vom Basiselement abgeleitet werden.NSimple type of derived element %1 cannot be validly derived from base element. QtXmlPatternsnDer angegebene Typ %1 ist im Schema nicht spezifiziert.-Specified type %1 is not known to the schema. QtXmlPatternsDer angebenene Typ %1 kann nicht durch den Elementtyp %2 substituiert werden.DSpecified type %1 is not validly substitutable with element type %2. QtXmlPatternsDie Angabe von use='prohibited' in einer Attributgruppe hat keinerlei Auswirkungen.DSpecifying use='prohibited' inside an attribute group has no effect. QtXmlPatterns~Der Zeichenketteninhalt entspricht nicht der Suchmusterfacette.,String content does not match pattern facet. QtXmlPatternsvDer Zeichenketteninhalt entspricht nicht der Lngenfacette./String content does not match the length facet. QtXmlPatternsDer Zeichenketteninhalt entspricht nicht der Lngenfacette (Maximumangabe).2String content does not match the maxLength facet. QtXmlPatternsDer Zeichenketteninhalt entspricht nicht der Lngenfacette (Minimumangabe).2String content does not match the minLength facet. QtXmlPatternsDer Zeichenketteninhalt ist nicht in der Aufzhlungsfacette enthalten.6String content is not listed in the enumeration facet. QtXmlPatternsrDie Substitutionsgruppe %1 hat eine zirkulre Definition..Substitution group %1 has circular definition. QtXmlPatternsDie Substitutionsgruppe %1 des Elements %2 kann nicht aufgelst werden.7Substitution group %1 of %2 element cannot be resolved. QtXmlPatternsDer Zielnamensraum %1 des importierten Schemas unterscheidet sich vom dem von ihm definierten Zielnamensraum %2.tTarget namespace %1 of imported schema is different from the target namespace %2 as defined by the importing schema. QtXmlPatternsDer Zielnamensraum %1 des eingebundenen Schemas unterscheidet sich vom dem von ihm definierten Zielnamensraum %2.tTarget namespace %1 of included schema is different from the target namespace %2 as defined by the including schema. QtXmlPatterns`An dieser Stelle drfen keine Textknoten stehen.,Text nodes are not allowed at this location. QtXmlPatternsText- oder Entittsreferenzen sind innerhalb eines %1-Elements nicht zulssig.7Text or entity references not allowed inside %1 element QtXmlPatternsZDie %1-Achse wird in XQuery nicht untersttzt$The %1-axis is unsupported in XQuery QtXmlPatternsDie Deklaration %1 ist unzulssig, da Schema-Import nicht untersttzt wird.WThe Schema Import feature is not supported, and therefore %1 declarations cannot occur. QtXmlPatterns%1-Ausdrcke knnen nicht verwendet werden, da Schemavalidierung nicht untersttzt wird. VThe Schema Validation Feature is not supported. Hence, %1-expressions may not be used. QtXmlPatternsJDer URI darf kein Fragment enthalten.The URI cannot have a fragment QtXmlPatternshNur das erste %2-Element darf das Attribut %1 haben.9The attribute %1 can only appear on the first %2 element. QtXmlPatterns%2 darf nicht das Attribut %1 haben, wenn es ein Kindelement von %3 ist.?The attribute %1 cannot appear on %2, when it is a child of %3. QtXmlPatternsDer Code-Punkt %1 aus %2 mit der Kodierung %3 ist kein gltiges XML-Zeichen.QThe codepoint %1, occurring in %2 using encoding %3, is an invalid XML character. QtXmlPatternsDie Daten einer Processing-Anweisung drfen nicht die Zeichenkette %1 enthaltenAThe data of a processing instruction cannot contain the string %1 QtXmlPatterns^Fr eine Kollektion ist keine Vorgabe definiert#The default collection is undefined QtXmlPatternsDie Kodierung %1 ist ungltig; sie darf nur aus lateinischen Buchstaben bestehen und muss dem regulren Ausdruck %2 entsprechen.The encoding %1 is invalid. It must contain Latin characters only, must not contain whitespace, and must match the regular expression %2. QtXmlPatternsDas erste Argument von %1 darf nicht vom Typ %2 sein; es muss numerisch, xs:yearMonthDuration oder xs:dayTimeDuration sein.uThe first argument to %1 cannot be of type %2. It must be a numeric type, xs:yearMonthDuration or xs:dayTimeDuration. QtXmlPatternsDas erste Argument von %1 kann nicht vom Typ %2 sein, es muss einer der Typen %3, %4 oder %5 sein.PThe first argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. QtXmlPatterns8Es ist kein Fokus definiert.The focus is undefined. QtXmlPatternsDie Initialisierung der Variable %1 hngt von ihrem eigenem Wert ab3The initialization of variable %1 depends on itself QtXmlPatternstDas Element %1 entspricht nicht dem erforderlichen Typ %2./The item %1 did not match the required type %2. QtXmlPatternsDas Schlsselwort %1 kann nicht mit einem anderen Modusnamen zusammen verwendet werden.5The keyword %1 cannot occur with any other mode name. QtXmlPatternsDer letzte Schritt eines Pfades kann entweder nur Knoten oder nur atomare Werte enthalten. Sie drfen nicht zusammen auftreten.kThe last step in a path must contain either nodes or atomic values. It cannot be a mixture between the two. QtXmlPatternsFModul-Import wird nicht untersttzt*The module import feature is not supported QtXmlPatterns`Der Name %1 hat keinen Bezug zu einem Schematyp..The name %1 does not refer to any schema type. QtXmlPatternsDer Name eines berechneten Attributes darf keinen Namensraum-URI %1 mit dem lokalen Namen %2 haben.ZThe name for a computed attribute cannot have the namespace URI %1 with the local name %2. QtXmlPatternsHDer Name der gebundenen Variablen eines for-Ausdrucks muss sich von dem der Positionsvariable unterscheiden. Die zwei Variablen mit dem Namen %1 stehen im Konflikt.The name of a variable bound in a for-expression must be different from the positional variable. Hence, the two variables named %1 collide. QtXmlPatternsDer Name eines Erweiterungsausdrucks muss sich in einem Namensraum befinden.;The name of an extension expression must be in a namespace. QtXmlPatternsDer Name einer Option muss einen Prfix haben. Es gibt keine Namensraum-Vorgabe fr Optionen.TThe name of an option must have a prefix. There is no default namespace for options. QtXmlPatterns@Der Namensraum %1 ist reserviert und kann daher von nutzerdefinierten Funktionen nicht verwendet werden (fr diesen Zweck gibt es den vordefinierten Prfix %2).The namespace %1 is reserved; therefore user defined functions may not use it. Try the predefined prefix %2, which exists for these cases. QtXmlPatternsDer Namensraum-URI darf nicht leer sein, wenn er an den Prfix %1 gebunden ist.JThe namespace URI cannot be the empty string when binding to a prefix, %1. QtXmlPatternsDer Namensraum-URI im Namen eines berechneten Attributes darf nicht %1 sein.DThe namespace URI in the name for a computed attribute cannot be %1. QtXmlPatternsEin Namensraum-URI muss eine Konstante sein und darf keine eingebetteten Ausdrcke verwenden.IThe namespace URI must be a constant and cannot use enclosed expressions. QtXmlPatternsDer Namensraum einer benutzerdefinierten Funktion darf nicht leer sein (fr diesen Zweck gibt es den vordefinierten Prfix %1)yThe namespace for a user defined function cannot be empty (try the predefined prefix %1 which exists for cases like this) QtXmlPatterns Der Namensraum einer nutzerdefinierten Funktion aus einem Bibliotheksmodul muss dem Namensraum des Moduls entsprechen (%1 anstatt %2) The namespace of a user defined function in a library module must be equivalent to the module namespace. In other words, it should be %1 instead of %2 QtXmlPatternsrDie Normalisierungsform %1 wird nicht untersttzt. Die untersttzten Normalisierungsformen sind %2, %3, %4 and %5, und "kein" (eine leere Zeichenkette steht fr "keine Normalisierung").The normalization form %1 is unsupported. The supported forms are %2, %3, %4, and %5, and none, i.e. the empty string (no normalization). QtXmlPatternsEs existiert kein entsprechendes %2 fr den bergebenen Parameter %1.;The parameter %1 is passed, but no corresponding %2 exists. QtXmlPatternsEs wurde kein entsprechendes %2 fr den erforderlichen Parameter %1 angegeben.BThe parameter %1 is required, but no corresponding %2 is supplied. QtXmlPatternsPDer Prfix %1 kann nicht gebunden werdenThe prefix %1 cannot be bound. QtXmlPatternsDer Prfix %1 kann nicht gebunden werden. Er ist bereits per Vorgabe an den Namensraum %2 gebunden.SThe prefix %1 cannot be bound. By default, it is already bound to the namespace %2. QtXmlPatternsDer Prfix muss ein gltiger %1 sein. Das ist bei %2 nicht der Fall./The prefix must be a valid %1, which %2 is not. QtXmlPatternsDer bergeordnete Knoten des zweiten Arguments der Funktion %1 muss ein Dokumentknoten sein, was bei %2 nicht der Fall ist.gThe root node of the second argument to function %1 must be a document node. %2 is not a document node. QtXmlPatternsDas zweite Argument von %1 kann nicht vom Typ %2 sein, es muss einer der Typen %3, %4 oder %5 sein.QThe second argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. QtXmlPatternsDer Zielname einer Processing-Anweisung kann nicht %1 (unabhngig von Gro/Kleinschreibung) sein. %2 ist daher ungltig.~The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, %2 is invalid. QtXmlPatterns`Der Ziel-Namensraum von %1 darf nicht leer sein.-The target namespace of a %1 cannot be empty. QtXmlPatternsDer Wert des Attributs %1 des Elements %2 kann nur %3 oder %4 sein, nicht jedoch %5.IThe value for attribute %1 on element %2 must either be %3 or %4, not %5. QtXmlPatternsDer Wert des Attributs %1 muss vom Typ %2 sein, was bei %3 nicht der Fall ist.=The value of attribute %1 must be of type %2, which %3 isn't. QtXmlPatternsDer Wert eines XSL-T-Versionsattributes muss vom Typ %1 sein, was bei %2 nicht der Fall ist.TThe value of the XSL-T version attribute must be a value of type %1, which %2 isn't. QtXmlPatternsHDie Variable %1 wird nicht verwendetThe variable %1 is unused QtXmlPatternsEs existiert ein IDREF-Wert, fr den keine zugehrige ID vorhanden ist: %1.6There is one IDREF value with no corresponding ID: %1. QtXmlPatterns%1 kann nicht verwendet werden, da dieser Prozessor keine Schemas untersttzt.CThis processor is not Schema-aware and therefore %1 cannot be used. QtXmlPatternsPDie Zeitangabe %1:%2:%3.%4 ist ungltig.Time %1:%2:%3.%4 is invalid. QtXmlPatternsDie Zeitangabe 24:%1:%2.%3 ist ungltig. Bei der Stundenangabe 24 mssen Minuten, Sekunden und Millisekunden 0 sein._Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0;  QtXmlPatternsDie zuoberst stehenden Elemente eines Stylesheets drfen sich nicht im Null-Namensraum befinden, was bei %1 der Fall ist.NTop level stylesheet elements must be in a non-null namespace, which %1 isn't. QtXmlPatternsEs wurden zwei Namensraum-Deklarationsattribute gleichen Namens (%1) gefunden.Unbekanntes XSL-T-Attribut: %1.Unknown XSL-T attribute %1. QtXmlPatternsdDie Facette %2 enthlt eine ungltige Notation %1.%Unknown notation %1 used in %2 facet. QtXmlPatternsDer vorzeichenlose Ganzzahlwert entspricht nicht der Facette 'totalDigits'.AUnsigned integer content does not match in the totalDigits facet. QtXmlPatternsDer vorzeichenlose Ganzzahlwert entspricht nicht der Suchmusterfacette.6Unsigned integer content does not match pattern facet. QtXmlPatternsDer vorzeichenlose Ganzzahlwert entspricht nicht der Facette 'maxExclusive'.?Unsigned integer content does not match the maxExclusive facet. QtXmlPatternsDer vorzeichenlose Ganzzahlwert entspricht nicht der Facette 'maxInclusive'.?Unsigned integer content does not match the maxInclusive facet. QtXmlPatternsDer vorzeichenlose Ganzzahlwert entspricht nicht der Facette 'minExclusive'.?Unsigned integer content does not match the minExclusive facet. QtXmlPatternsDer vorzeichenlose Ganzzahlwert entspricht nicht der Facette 'minInclusive'.?Unsigned integer content does not match the minInclusive facet. QtXmlPatternsDer vorzeichenlose Ganzzahlwert ist nicht in der Aufzhlungsfacette enthalten.@Unsigned integer content is not listed in the enumeration facet. QtXmlPatternsnDer Wert %1 des Typs %2 berschreitet das Maximum (%3).)Value %1 of type %2 exceeds maximum (%3). QtXmlPatternspDer Wert %1 des Typs %2 unterschreitet das Minimum (%3).*Value %1 of type %2 is below minimum (%3). QtXmlPatternsDie Einschrnkung des Werts des Attributs %1 ist nicht vom Typ des Attributs: %2.?Value constraint of attribute %1 is not of attributes type: %2. QtXmlPatternsDie Einschrnkung des Werts des abgeleiteten Attributs %1 entspricht nicht der Einschrnkung des Werts des Basisattributs.[Value constraint of derived attribute %1 does not match value constraint of base attribute. QtXmlPatternsDie Einschrnkung des Werts des Elements %1 ist nicht vom Typ des Elements: %2.;Value constraint of element %1 is not of elements type: %2. QtXmlPatternsDie Variett der Typen von %1 muss entweder atomar oder eine Vereinigung sein.:Variety of item type of %1 must be either atomic or union. QtXmlPatterns^Die Variett der Typen von %1 muss atomar sein.-Variety of member types of %1 must be atomic. QtXmlPatternsDie Version %1 wird nicht untersttzt. Die untersttzte Version von XQuery ist 1.0.AVersion %1 is not supported. The supported XQuery version is 1.0. QtXmlPatternsPW3C XML Schema identity constraint field(W3C XML Schema identity constraint field QtXmlPatternsVW3C XML Schema identity constraint selector+W3C XML Schema identity constraint selector QtXmlPatternsDer Defaultwert eines erforderlichen Parameters kann weder durch ein %1-Attribut noch durch einen Sequenzkonstruktor angegeben werden. rWhen a parameter is required, a default value cannot be supplied through a %1-attribute or a sequence constructor. QtXmlPatternsEs kann kein Sequenzkonstruktor verwendet werden, wenn %2 ein Attribut %1 hat.JWhen attribute %1 is present on %2, a sequence constructor cannot be used. QtXmlPatternsBei einer "cast"-Operation von %1 zu %2 darf der Wert nicht %3 sein.:When casting to %1 from %2, the source value cannot be %3. QtXmlPatternsHBei einer "cast"-Operation zum Typ %1 oder abgeleitetenTypen muss der Quellwert ein Zeichenketten-Literal oder ein Wert gleichen Typs sein. Der Typ %2 ist ungltig.When casting to %1 or types derived from it, the source value must be of the same type, or it must be a string literal. Type %2 is not allowed. QtXmlPatterns6Bei der Verwendung der Funktion %1 zur Auswertung innerhalb eines Suchmusters muss das Argument eine Variablenreferenz oder ein Zeichenketten-Literal sein.vWhen function %1 is used for matching inside a pattern, the argument must be a variable reference or a string literal. QtXmlPatternsLeerzeichen werden entfernt, sofern sie nicht in Zeichenklassen erscheinenOWhitespace characters are removed, except when they appear in character classes QtXmlPatternsDas Suchmuster im abgeleiteten Partikel ist keine gltige Untermenge des Suchmusters des Basispartikels.PWildcard in derived particle is not a valid subset of wildcard in base particle. QtXmlPatternsp%1 ist keine gltige Jahresangabe, da es mit %2 beginnt.-Year %1 is invalid because it begins with %2. QtXmlPatternsleerempty QtXmlPatternsgenau ein exactly one QtXmlPatterns ein oder mehrere one or more QtXmlPatternsDas 'processContent'-Attribut des Basissuchmusters muss schwcher sein als das des abgeleiteten Suchmusters.EprocessContent of base wildcard must be weaker than derived wildcard. QtXmlPatternsDas processContent-Attribut des Suchmusters des abgeleiteten Partikels ist schwcher als das Suchmuster des Basispartikels.XprocessContent of wildcard in derived particle is weaker than wildcard in base particle. QtXmlPatternsxsi:noNamespaceSchemaLocation kann nicht nach dem ersten Element oder Attribut ohne Namensraum erscheinen.^xsi:noNamespaceSchemaLocation cannot appear after the first no-namespace element or attribute. QtXmlPatternsxsi:schemaLocation namespace %1 wurde im Instanzdokument bereits spezifiziert.Vxsi:schemaLocation namespace %1 has already appeared earlier in the instance document. QtXmlPatterns"kein oder mehrere zero or more QtXmlPatternskein oder ein zero or one QtXmlPatternsqupzilla-1.6.0/bin/locale/qt_el.qm000066400000000000000000002347541226107126500170520ustar00rootroot00000000000000+O81E@FxH4KHIJJ K LDLnPS]QWZr[`[`\tE_;_;1A]91Gr$,y 8{MBo?WE8%%I%֍֍֍A֍10[0;C0-0005 D>n DQv+U,?,H5QH5|VEf 3f0f<-fLff fAgLl<=G >R.>``1+ee>eRe~A^}(4M(4M(5N-(5Na*y*yz`*y*TR*0'a*0+FD+Fa+f+fE/+z.+0+z+G+z/#++E+R+++įx+į{+į+/]G9bHw9Hw99HiI- I>J+J6ZJ60J6:J6?"J6J6SJ6J6 JcbKQKILZAL]L0LbM5?Mb3Me O|0PFE8PFEePFER|S8^TU|7gV14VVVWT@WTfX9  o   K ( r }B )> */ ;v =T Ty T^\ ] `f ` c(ˇ cE- d e Q eJ f1Wv f*̝ g5Ug k, rD" tur ̺SP -DTY .y ۷ k k$ U)b* < 0 F C z+  YV  a"   xHeN .. >\P >] >^' >e >s' >z >\ >| ?t|s DTK I-u RVM RV RVĺ S.D S j7oC p.d . BoB T1 T} T T p 4 )dB .2R .g .~ . a y{  tՖ a :bb  r +>/ Pt Pt feߐ feN iFC iJ i[ m9  us u v& wL wb w w} w} w} V _ % ^N }xl P ɰeï X D t5a t5>   ) :T( gT),*'*7/ECI_c a.:vɅy$ֻ~dn44Sr^uǗ=: B&gMݖI  Hb"#$U&%4>%4P0i)01c2wTD sHJdda1c5|c5g3ƸyC!x{~aH>b _NBBt2,*{הېUi "  Close Tab CloseButton4%1, %2   %1, %2 not definedQ3AccelF %1    Ambiguous %1 not handledQ3AccelDelete Q3DataTable False Q3DataTableInsert Q3DataTable True Q3DataTableUpdate Q3DataTable%1    .        .+%1 File not found. Check path and filename. Q3FileDialog&&Delete Q3FileDialog&&No Q3FileDialog&&OK Q3FileDialog&&Open Q3FileDialog&&Rename Q3FileDialog&&Save Q3FileDialog& &Unsorted Q3FileDialog&&Yes Q3FileDialogr<qt>      %1 "%2"?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialog"   (*) All Files (*) Q3FileDialog Attributes Q3FileDialogBack Q3FileDialogCancel Q3FileDialog<   Copy or Move a File Q3FileDialog.  Create New Folder Q3FileDialogDate Q3FileDialog %1 Delete %1 Q3FileDialog$  Detail View Q3FileDialogDir Q3FileDialog Directories Q3FileDialog: Directory: Q3FileDialog Error Q3FileDialog File Q3FileDialog  &i : File &name: Q3FileDialog& : File &type: Q3FileDialog  Find Directory Q3FileDialog  Inaccessible Q3FileDialog  List View Q3FileDialog &in : Look &in: Q3FileDialog Name Q3FileDialog  New Folder Q3FileDialog  %1 New Folder %1 Q3FileDialog  1 New Folder 1 Q3FileDialog&  One directory up Q3FileDialogOpen Q3FileDialogD  Preview File Contents Q3FileDialogB  Preview File Info Q3FileDialog&R&eload Q3FileDialog  Read-only Q3FileDialog - Read-write Q3FileDialog: %1Read: %1 Q3FileDialog Save As Q3FileDialog0 & Show &hidden files Q3FileDialogSize Q3FileDialogSort Q3FileDialog6  & Sort by &Date Q3FileDialog,  & Sort by &Name Q3FileDialog0  & Sort by &Size Q3FileDialog Special Q3FileDialog*  Symlink to Directory Q3FileDialog&  Symlink to File Q3FileDialog&  Symlink to Special Q3FileDialog Type Q3FileDialog  Write-only Q3FileDialog: %1 Write: %1 Q3FileDialog  the directory Q3FileDialog the file Q3FileDialog  the symlink Q3FileDialogT      %1Could not create directory %1 Q3LocalFs:     %1Could not open %1 Q3LocalFsR       %1Could not read directory %1 Q3LocalFsn          %1%Could not remove file or directory %1 Q3LocalFsL     %1  %2Could not rename %1 to %2 Q3LocalFs8     %1Could not write %1 Q3LocalFs... Customize... Q3MainWindowLine up Q3MainWindowJ     Operation stopped by the userQ3NetworkProtocolCancelQ3ProgressDialogApply Q3TabDialogCancel Q3TabDialogDefaults Q3TabDialogHelp Q3TabDialogOK Q3TabDialog&&Copy Q3TextEdit&&Paste Q3TextEdit$& &Redo Q3TextEdit&&Undo Q3TextEditClear Q3TextEdit&Cu&t Q3TextEdit  Select All Q3TextEditClose Q3TitleBar&  Closes the window Q3TitleBarZ      *Contains commands to manipulate the window Q3TitleBar           FDisplays the name of the window and contains controls to manipulate it Q3TitleBar@     Makes the window full screen Q3TitleBarMaximize Q3TitleBarMinimize Q3TitleBar8    Moves the window out of the way Q3TitleBarn       &Puts a maximized window back to normal Q3TitleBarX     Puts a minimized back to normal Q3TitleBar  Restore down Q3TitleBar  Restore up Q3TitleBarSystem Q3TitleBar...More... Q3ToolBar (unknown) Q3UrlOperator  '%1'         IThe protocol `%1' does not support copying or moving files or directories Q3UrlOperator|  '%1'      ;The protocol `%1' does not support creating new directories Q3UrlOperatorn  '%1'     0The protocol `%1' does not support getting files Q3UrlOperatorn  '%1'     6The protocol `%1' does not support listing directories Q3UrlOperatorl  '%1'     0The protocol `%1' does not support putting files Q3UrlOperator  '%1'       @The protocol `%1' does not support removing files or directories Q3UrlOperator  '%1'       @The protocol `%1' does not support renaming files or directories Q3UrlOperatorH  '%1'  "The protocol `%1' is not supported Q3UrlOperator&&CancelQ3Wizard&&FinishQ3Wizard&&HelpQ3Wizard& >&Next >Q3Wizard< &< &BackQ3Wizard Connection refusedQAbstractSocket2   Host not foundQAbstractSocket< socket   Socket is not connectedQAbstractSocketd  socket    Socket operation timed outQAbstractSocket&  &Select AllQAbstractSpinBox& &Step upQAbstractSpinBox & Step &downQAbstractSpinBoxActivate QApplication\     #Activates the program's main window QApplication`  '%1'  Qt %2,  Qt %3.,Executable '%1' requires Qt %2, found Qt %3. QApplicationB    QtIncompatible Qt Library Error QApplication.QT__QT_LAYOUT_DIRECTION QApplicationCheck QCheckBoxToggle QCheckBoxUncheck QCheckBox6&   &Add to Custom Colors QColorDialog&  &Basic colors QColorDialog& &Custom colors QColorDialog&:&Green: QColorDialog&:&Red: QColorDialog&:&Sat: QColorDialog&:&Val: QColorDialog& :A&lpha channel: QColorDialog &:Bl&ue: QColorDialog&:Hu&e: QColorDialog  Select color QColorDialogClose QComboBox False QComboBoxOpen QComboBox True QComboBox^      Unable to commit transaction QDB2Driver2    Unable to connect QDB2DriverT      Unable to rollback transaction QDB2Driverl       Unable to set autocommit QDB2DriverZ      Unable to bind variable QDB2ResultN      Unable to execute statement QDB2ResultN      Unable to fetch first QDB2ResultT      Unable to fetch next QDB2ResultX       %1Unable to fetch record %1 QDB2ResultV      Unable to prepare statement QDB2ResultAM QDateTimeEditPM QDateTimeEditam QDateTimeEditpm QDateTimeEdit QDialQDialQDial$  SliderHandleQDial SpeedoMeterQDialDoneQDialog  ; What's This?QDialog&&CancelQDialogButtonBox&&NoQDialogButtonBox&&OKQDialogButtonBox&&YesQDialogButtonBoxAbortQDialogButtonBoxApplyQDialogButtonBoxCancelQDialogButtonBoxCloseQDialogButtonBox2  Close without SavingQDialogButtonBoxDiscardQDialogButtonBox$   Don't SaveQDialogButtonBoxHelpQDialogButtonBoxIgnoreQDialogButtonBox&   N&o to AllQDialogButtonBoxOKQDialogButtonBoxOpenQDialogButtonBoxResetQDialogButtonBox* Restore DefaultsQDialogButtonBox RetryQDialogButtonBoxSaveQDialogButtonBox Save AllQDialogButtonBox  & Yes to &AllQDialogButtonBox.  Date Modified QDirModel Kind QDirModel Name QDirModelSize QDirModel Type QDirModelClose QDockWidgetDock QDockWidget& Float QDockWidgetLessQDoubleSpinBoxMoreQDoubleSpinBox&&OK QErrorMessageB&    &Show this message again QErrorMessage.  :Debug Message: QErrorMessage   : Fatal Error: QErrorMessage :Warning: QErrorMessage%1    .      .K%1 Directory not found. Please verify the correct directory name was given. QFileDialog%1    .      .A%1 File not found. Please verify the correct file name was given. QFileDialogZ%1  .    ;-%1 already exists. Do you want to replace it? QFileDialog&&Choose QFileDialog&&Delete QFileDialog&  &New Folder QFileDialog&&Open QFileDialog&&Rename QFileDialog&&Save QFileDialog'%1'   .       ;9'%1' is write protected. Do you want to delete it anyway? QFileDialog"   (*) All Files (*) QFileDialog^       '%1';!Are sure you want to delete '%1'? QFileDialogBack QFileDialogN      .Could not delete directory. QFileDialog.  Create New Folder QFileDialog$  Detail View QFileDialog Directories QFileDialog: Directory: QFileDialog Drive QFileDialog File QFileDialog &: File &name: QFileDialog :Files of type: QFileDialog Find Directory QFileDialogForward QFileDialog  List View QFileDialog  :Look in: QFileDialog"   My Computer QFileDialog  New Folder QFileDialogOpen QFileDialog Parent Directory QFileDialogRemove QFileDialog Save As QFileDialogShow  QFileDialog0 & Show &hidden files QFileDialogUnknown QFileDialog %1 GB%1 GBQFileSystemModel %1 KB%1 KBQFileSystemModel %1 MB%1 MBQFileSystemModel %1 TB%1 TBQFileSystemModel%1 bytes%1 bytesQFileSystemModel<b>  "%1"    </b><p>    ,       .oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModelComputerQFileSystemModel.  Date ModifiedQFileSystemModel  Invalid filenameQFileSystemModel KindQFileSystemModel"   My ComputerQFileSystemModel NameQFileSystemModelSizeQFileSystemModel TypeQFileSystemModel&&Font QFontDialog&&Size QFontDialog& &Underline QFontDialogEffects QFontDialog(&  Font st&yle QFontDialog Sample QFontDialog,  Select Font QFontDialog& Stri&keout QFontDialog"& Wr&iting System QFontDialog:    : %1Changing directory failed: %1QFtp6  Connected to hostQFtp4   %1Connected to host %1QFtpJ    : %1Connecting to host failed: %1QFtp,  Connection closedQFtpJ    &Connection refused for data connectionQFtpD    %1Connection refused to host %1QFtp:   %1 Connection to %1 closedQFtpH    : %1Creating directory failed: %1QFtpJ     : %1Downloading file failed: %1QFtp2  %1  Host %1 foundQFtp8  %1  Host %1 not foundQFtp*   Host foundQFtp8    : %1Listing directory failed: %1QFtp,   : %1Login failed: %1QFtp  Not connectedQFtpD    : %1Removing directory failed: %1QFtpF     : %1Removing file failed: %1QFtp   Unknown errorQFtpH     : %1Uploading file failed: %1QFtp   Unknown error QHostInfo2   Host not foundQHostInfoAgent2  Unknown address typeQHostInfoAgent   Unknown errorQHostInfoAgent4 Authentication requiredQHttp8  Connected to hostQHttp>   %1Connected to host %1QHttp,  Connection closedQHttp0   Connection refusedQHttp:   %1 Connection to %1 closedQHttp,  HTTP HTTP request failedQHttp0  %1  Host %1 foundQHttp8  %1  Host %1 not foundQHttp*   Host foundQHttp,  HTTP Invalid HTTP chunked bodyQHttpJ  HTTP   Invalid HTTP response headerQHttpR     No server set to connect toQHttpV     Proxy authentication requiredQHttp(  Request abortedQHttpZ     %Server closed connection unexpectedlyQHttp   Unknown errorQHttp4  Wrong content lengthQHttp4 Authentication requiredQHttpSocketEngineN     Could not start transaction QIBaseDriverL     Error opening database QIBaseDriver`     Unable to commit transaction QIBaseDriverT      Unable to rollback transaction QIBaseDriverT      Could not allocate statement QIBaseResult`       "Could not describe input statement QIBaseResultP      Could not describe statement QIBaseResulth       Could not fetch next item QIBaseResultF      Could not find array QIBaseResultV      Could not get array data QIBaseResultb      Could not get query info QIBaseResult^      Could not get statement info QIBaseResultV      Could not prepare statement QIBaseResultV      Could not start transaction QIBaseResultP      Unable to close statement QIBaseResultV      Unable to commit transaction QIBaseResultB     BLOBUnable to create BLOB QIBaseResultR      Unable to execute query QIBaseResult>     BLOBUnable to open BLOB QIBaseResult>     BLOBUnable to read BLOB QIBaseResult<     BLOBUnable to write BLOB QIBaseResult:    No space left on device QIODeviceF     No such file or directory QIODevice Permission denied QIODevice(  Too many open files QIODevice   Unknown error QIODevice4MAC OS   Mac OS X input method QInputContext2  WindowsWindows input method QInputContextXIMXIM QInputContext*XIM  XIM input method QInputContext`  plugin   '%1')Plugin verification data mismatch in '%1'QLibrary\  '%1'     Qt plugin.'The file '%1' is not a valid Qt plugin.QLibrary plugin '%1'    Qt .(%2.%3.%4)[%5]=The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]QLibrary '%1' plugin     Qt.(         )WThe plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)QLibrary plugin '%1'    Qt .   "%2"   "%3"OThe plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"QLibraryJ    .!The shared library was not found.QLibrary   Unknown errorQLibrary&&Copy QLineEdit&&Paste QLineEdit$ &&Redo QLineEdit&&Undo QLineEdit&Cu&t QLineEditDelete QLineEdit  Select All QLineEditN     Unable to begin transaction QMYSQLDriverb      Unable to commit transaction QMYSQLDriver2    Unable to connect QMYSQLDriver^       'Unable to open database ' QMYSQLDriverT      Unable to rollback transaction QMYSQLDriverf       Unable to bind outvalues QMYSQLResultP      Unable to bind value QMYSQLResultR      Unable to execute query QMYSQLResultN      Unable to execute statement QMYSQLResultH     Unable to fetch data QMYSQLResultV      Unable to prepare statement QMYSQLResultV      Unable to reset statement QMYSQLResult\      Unable to store result QMYSQLResultv        !Unable to store statement results QMYSQLResult%1 - [%2] %1 - [%2] QMdiSubWindow&&Close QMdiSubWindow&&Move QMdiSubWindow&&Restore QMdiSubWindow&&Size QMdiSubWindowClose QMdiSubWindowHelp QMdiSubWindow& Ma&ximize QMdiSubWindowMaximize QMdiSubWindow Menu QMdiSubWindow& Mi&nimize QMdiSubWindowMinimize QMdiSubWindow  Restore Down QMdiSubWindow0  & Stay on &Top QMdiSubWindowCloseQMenuExecuteQMenuOpenQMenu<h3> Qt</h3>%1<p> Qt   C++ toolkit     .</p><p> Qt         MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux        Unix.  Qt         Qt for Embedded Linux  Qt for Windows CE.</p><p> Qt     Nokia.      <a href="http://www.trolltech.com/qt/">www.trolltech.com/qt/</a>.</p>

About Qt

%1

Qt is a C++ toolkit for cross-platform application development.

Qt provides single-source portability across MS Windows, Mac OS X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.

Qt is a Nokia product. See www.trolltech.com/qt/ for more information.

 QMessageBox<p>     Qt Open Source Edition  %1.</p><p> Qt Open Source Edition     .     (closed source)      Qt</p><p>    Qt    <a href="http://www.trolltech.com/company/model/">www.trolltech.com/company/model/</a>.</p>|

This program uses Qt Open Source Edition version %1.

Qt Open Source Edition is intended for the development of Open Source applications. You need a commercial Qt license for development of proprietary (closed source) applications.

Please see www.trolltech.com/company/model/ for an overview of Qt licensing.

 QMessageBoxn<p>      Qt %1.</p>'

This program uses Qt version %1.

 QMessageBox QtAbout Qt QMessageBoxHelp QMessageBox0 ...Hide Details... QMessageBoxOK QMessageBox0 ...Show Details... QMessageBox  Select IMQMultiInputContextJ   Multiple input method switcherQMultiInputContextPlugin          MMultiple input method switcher that uses the context menu of the text widgetsQMultiInputContextPlugin  socket        4Another socket is already listening on the same portQNativeSocketEngine  IPv6 socket      IPv6=Attempt to use IPv6 socket on a platform with no IPv6 supportQNativeSocketEngine Connection refusedQNativeSocketEngineP    Connection timed outQNativeSocketEngineT Datagram      Datagram was too large to sendQNativeSocketEngine2 Host unreachableQNativeSocketEngine:   socketInvalid socket descriptorQNativeSocketEngine*    Network errorQNativeSocketEngine0   Network operation timed outQNativeSocketEngine& Network unreachableQNativeSocketEngine0  non-socketOperation on non-socketQNativeSocketEngine$  Out of resourcesQNativeSocketEngine Permission deniedQNativeSocketEngineH   Protocol type not supportedQNativeSocketEngine>    The address is not availableQNativeSocketEngine>   The address is protectedQNativeSocketEngineP    #The bound address is already in useQNativeSocketEngineb     %The remote host closed the connectionQNativeSocketEngine^     broadcast socket%Unable to initialize broadcast socketQNativeSocketEngined     non-blocking socket(Unable to initialize non-blocking socketQNativeSocketEngine@     Unable to receive a messageQNativeSocketEngineJ      Unable to send a messageQNativeSocketEngine"  Unable to writeQNativeSocketEngine   Unknown errorQNativeSocketEngine@   socketUnsupported socket operationQNativeSocketEngine,  Unable to initialize QOCIDriver"  Unable to logon QOCIDriverT      Unable to alloc statement QOCIResult           'Unable to bind column for batch execute QOCIResultH      Unable to bind value QOCIResultd        !Unable to execute batch statement QOCIResult`       "Unable to execute select statement QOCIResultN      Unable to execute statement QOCIResultL      Unable to goto next QOCIResultV      Unable to prepare statement QOCIResult:    Unable to commit transaction QODBCDriver2    Unable to connect QODBCDriver     -       CUnable to connect - Driver doesn't support all needed functionality QODBCDriverl       Unable to disable autocommit QODBCDriverh       Unable to enable autocommit QODBCDriverT      Unable to rollback transaction QODBCDriverQODBCResult:       'SQL_CURSOS_STATIC'    .      ODBCyQODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResultH      Unable to bind variable QODBCResultN      Unable to execute statement QODBCResultN      Unable to fetch first QODBCResultN      Unable to fetch next QODBCResultV      Unable to prepare statement QODBCResult NameQPPDOptionsModelValueQPPDOptionsModelV      Could not begin transaction QPSQLDriverZ      Could not commit transaction QPSQLDriverV      Could not rollback transaction QPSQLDriver2    Unable to connect QPSQLDriverV      Unable to create query QPSQLResult (cm)Centimeters (cm)QPageSetupWidget FormQPageSetupWidget :Height:QPageSetupWidget (in) Inches (in)QPageSetupWidget  LandscapeQPageSetupWidgetMarginsQPageSetupWidget (mm)Millimeters (mm)QPageSetupWidget OrientationQPageSetupWidget  : Page size:QPageSetupWidget PaperQPageSetupWidget : Paper source:QPageSetupWidget (pt) Points (pt)QPageSetupWidgetPortraitQPageSetupWidget Reverse landscapeQPageSetupWidget" Reverse portraitQPageSetupWidget:Width:QPageSetupWidget  bottom marginQPageSetupWidget$  left marginQPageSetupWidget  right marginQPageSetupWidget  top marginQPageSetupWidget6 plugin   The plugin was not loaded. QPluginLoader   Unknown error QPluginLoaderZ%1  .    ;/%1 already exists. Do you want to overwrite it? QPrintDialogn%1  .     .7%1 is a directory. Please choose a different file name. QPrintDialog& << &Options << QPrintDialog& >> &Options >> QPrintDialog&&Print QPrintDialogA0A0 QPrintDialogA1A1 QPrintDialogA2A2 QPrintDialogA3A3 QPrintDialogA4A4 QPrintDialogA5A5 QPrintDialogA6A6 QPrintDialogA7A7 QPrintDialogA8A8 QPrintDialogA9A9 QPrintDialog: %1 Aliases: %1 QPrintDialogB0B0 QPrintDialogB1B1 QPrintDialogB10B10 QPrintDialogB2B2 QPrintDialogB3B3 QPrintDialogB4B4 QPrintDialogB5B5 QPrintDialogB6B6 QPrintDialogB7B7 QPrintDialogB8B8 QPrintDialogB9B9 QPrintDialogC5EC5E QPrintDialogCustom QPrintDialogDLEDLE QPrintDialogExecutive Executive QPrintDialog  %1        .=File %1 is not writable. Please choose a different file name. QPrintDialog FolioFolio QPrintDialog LedgerLedger QPrintDialog LegalLegal QPrintDialog LetterLetter QPrintDialog  Local file QPrintDialog,   ...Print To File ... QPrintDialog0   (PDF)Print to File (PDF) QPrintDialog>   (Postscript)Print to File (Postscript) QPrintDialogTabloidTabloid QPrintDialog,US Common #10 EnvelopeUS Common #10 Envelope QPrintDialog" %1  Write %1 file QPrintDialog& locally connected QPrintDialogunknown QPrintDialogCloseQPrintPreviewDialog  First pageQPrintPreviewDialog*  Fit pageQPrintPreviewDialog*   Fit widthQPrintPreviewDialog  LandscapeQPrintPreviewDialog   Last pageQPrintPreviewDialog  Next pageQPrintPreviewDialog  Page SetupQPrintPreviewDialog  Page setupQPrintPreviewDialogPortraitQPrintPreviewDialog$  Previous pageQPrintPreviewDialogPrintQPrintPreviewDialog.  Print PreviewQPrintPreviewDialog8  Show facing pagesQPrintPreviewDialogJ    Show overview of all pagesQPrintPreviewDialog*  Show single pageQPrintPreviewDialogZoom inQPrintPreviewDialogZoom outQPrintPreviewDialog" AdvancedQPrintPropertiesWidget FormQPrintPropertiesWidget PageQPrintPropertiesWidgetCollateQPrintSettingsOutput ColorQPrintSettingsOutput&  Color ModeQPrintSettingsOutputCopiesQPrintSettingsOutput:Copies:QPrintSettingsOutput(  Duplex PrintingQPrintSettingsOutput FormQPrintSettingsOutput&   GrayscaleQPrintSettingsOutput  Long sideQPrintSettingsOutput NoneQPrintSettingsOutputOptionsQPrintSettingsOutput  Output SettingsQPrintSettingsOutput  Pages fromQPrintSettingsOutput  Print allQPrintSettingsOutput  Print rangeQPrintSettingsOutputReverseQPrintSettingsOutput SelectionQPrintSettingsOutput  Short sideQPrintSettingsOutputtoQPrintSettingsOutput&:&Name: QPrintWidget...... QPrintWidget Form QPrintWidget: Location: QPrintWidget& : Output &file: QPrintWidget& P&roperties QPrintWidgetPreview QPrintWidgetPrinter QPrintWidget :Type: QPrintWidget CancelQProgressDialogOpen QPushButtonCheck QRadioButton:  char classbad char class syntaxQRegExp8  lookaheadbad lookahead syntaxQRegExp:  repetitionbad repetition syntaxQRegExp^  disabled feature usedQRegExp(   octalinvalid octal valueQRegExp4  met internal limitQRegExp.  delimmissing left delimQRegExp:  no error occurredQRegExp" unexpected endQRegExpT      Error to open databaseQSQLite2DriverV      Unable to begin transactionQSQLite2Driverb      Unable to commit transactionQSQLite2DriverV      Unable to rollback TransactionQSQLite2DriverN      Unable to execute statementQSQLite2ResultX      Unable to fetch resultsQSQLite2ResultR     Error closing database QSQLiteDriverP     Error opening database QSQLiteDriverV      Unable to begin transaction QSQLiteDriverb      Unable to commit transaction QSQLiteDriver<  Parameter count mismatch QSQLiteResultP      Unable to bind parameters QSQLiteResultR      Unable to execute statement QSQLiteResultJ      Unable to fetch row QSQLiteResultV      Unable to reset statement QSQLiteResultBottom QScrollBar  Left edge QScrollBar  Line down QScrollBar Line up QScrollBar  Page down QScrollBar  Page left QScrollBar  Page right QScrollBar Page up QScrollBarPosition QScrollBar  Right edge QScrollBar  Scroll down QScrollBar  Scroll here QScrollBar  Scroll left QScrollBar  Scroll right QScrollBar  Scroll up QScrollBarTop QScrollBar++ QShortcutAltAlt QShortcutBack QShortcutBackspace Backspace QShortcutBacktabBacktab QShortcut  Bass Boost QShortcut  Bass Down QShortcut Bass Up QShortcut Call QShortcutCaps Lock Caps Lock QShortcutCapsLockCapsLock QShortcut1Context1 QShortcut2Context2 QShortcut3Context3 QShortcut4Context4 QShortcutCtrlCtrl QShortcutDelDel QShortcut DeleteDelete QShortcutDown QShortcutEndEnd QShortcut EnterEnter QShortcutEscEsc QShortcut EscapeEscape QShortcutF%1F%1 QShortcut Favorites QShortcutFlip QShortcutForward QShortcutHangup QShortcutHelp QShortcutHomeHome QShortcut  Home Page QShortcutInsIns QShortcut InsertInsert QShortcut (0) Launch (0) QShortcut (1) Launch (1) QShortcut (2) Launch (2) QShortcut (3) Launch (3) QShortcut (4) Launch (4) QShortcut (5) Launch (5) QShortcut (6) Launch (6) QShortcut (7) Launch (7) QShortcut (8) Launch (8) QShortcut (9) Launch (9) QShortcut (A) Launch (A) QShortcut () Launch (B) QShortcut (C) Launch (C) QShortcut (D) Launch (D) QShortcut (E) Launch (E) QShortcut (F) Launch (F) QShortcut*  Launch Mail QShortcut$  Launch Media QShortcutLeft QShortcut   Media Next QShortcut*  Media Play QShortcut( Media Previous QShortcut"  Media Record QShortcut*  Media Stop QShortcut Menu QShortcutMetaMeta QShortcutNo QShortcutNum LockNum Lock QShortcutNumLockNumLock QShortcutNumber Lock Number Lock QShortcut URLOpen URL QShortcutPage Down Page Down QShortcutPage UpPage Up QShortcut PausePause QShortcut PgDownPgDown QShortcutPgUpPgUp QShortcut PrintPrint QShortcut  Print Screen QShortcutRefresh QShortcut ReturnReturn QShortcut Right QShortcutScroll Lock Scroll Lock QShortcutScrollLock ScrollLock QShortcut Search QShortcutSelect QShortcut ShiftShift QShortcut SpaceSpace QShortcutStandby QShortcutStop QShortcut SysReqSysReq QShortcut" System Request QShortcutTabTab QShortcut  Treble Down QShortcut  Treble Up QShortcutUp QShortcut&   Volume Down QShortcut  Volume Mute QShortcut&   Volume Up QShortcutYes QShortcutPage Down Page downQSliderPage Left Page leftQSliderPage Right Page rightQSliderPage UpPage upQSliderPositionQSlider0   Network operation timed outQSocks5SocketEngineSocks5      socks server  /Socks5 timeout error connecting to socks serverQSocks5SocketEngineLessQSpinBoxMoreQSpinBox CancelQSql  ;Cancel your edits?QSqlConfirmQSqlDeleteQSqlN      ?Delete this record?QSqlInsertQSqlNoQSql(  ? Save edits?QSqlUpdateQSqlYesQSqlr       , %1,Cannot provide a certificate with no key, %1 QSslSocketZ   SSL  (%1)Error creating SSL context (%1) QSslSocketR   SSL , %1Error creating SSL session, %1 QSslSocketR   SSL : %1Error creating SSL session: %1 QSslSocket^     SSL : %1Error during SSL handshake: %1 QSslSocket\     ,%1#Error loading local certificate, %1 QSslSocketd      ,%1Error loading private key, %1 QSslSocket6   : %1Error while reading: %1 QSslSocketV      (%1)!Invalid or empty cipher list (%1) QSslSocketX       : %1Unable to write data: %1 QSslSocketN      Unable to open connection QTDSDriverV       Unable to use database QTDSDriver  Scroll LeftQTabBar  Scroll RightQTabBar&&Copy QTextControl&&Paste QTextControl$& &Redo QTextControl&&Undo QTextControl&Cu&t QTextControl  Select All QTextControlOpen QToolButton,  URLCannot show URL QWebFrame6  mimetypeCannot show mimetype QWebFrame*   File does not exist QWebFramer        &Frame load interruped by policy change QWebFrame$  Request blocked QWebFrame&  Request cancelled QWebFrame2%1 (%2x%3 )%1 (%2x%3 pixels)QWebPage&  Add To DictionaryQWebPage   HTTPBad HTTP requestQWebPageBoldBoldQWebPageT    Check Grammar With SpellingQWebPage( Check SpellingQWebPageT    Check Spelling While TypingQWebPage  Choose FileQWebPage@  Clear recent searchesQWebPageCopyQWebPage"  Copy ImageQWebPage&  Copy LinkQWebPageCutQWebPageDefaultQWebPage DirectionQWebPageFontsQWebPage Go BackQWebPage  Go ForwardQWebPageH   Hide Spelling and GrammarQWebPageIgnoreQWebPage Ignore Grammar context menu itemIgnoreQWebPageInspectQWebPage ItalicItalicQWebPageLTRQWebPage(  Look Up In DictionaryQWebPage,  No Guesses FoundQWebPage*  No file selectedQWebPageD   No recent searchesQWebPage   Open FrameQWebPage  Open ImageQWebPage"  Open LinkQWebPage.   Open in New WindowQWebPageOutlineOutlineQWebPagePasteQWebPageRTLQWebPage* Recent searchesQWebPageReloadQWebPageResetQWebPage$  Save ImageQWebPage. ... Save Link...QWebPage0  Search The WebQWebPageH   Show Spelling and GrammarQWebPageSpellingQWebPageStopQWebPageSubmitQWebPageQSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPage    .     : 3This is a searchable index. Enter search keywords: QWebPageUnderline UnderlineQWebPageUnknownQWebPage*  - %2Web Inspector - %2QWebPage   ? What's This?QWhatsThisAction**QWidget &&FinishQWizard&&HelpQWizard&>&Next >QWizard <&< &BackQWizardCancelQWizardHelpQWizard QuitQWizard%1 - [%2] %1 - [%2] QWorkspace&&Close QWorkspace&&Move QWorkspace&&Restore QWorkspace&&Size QWorkspaceClose QWorkspace& Ma&ximize QWorkspace& Mi&nimize QWorkspaceMinimize QWorkspace  Restore Down QWorkspace0  & Stay on &Top QWorkspace:  no error occurredQXmlBottomWebCore::PlatformScrollbar  Left edgeWebCore::PlatformScrollbar  Page downWebCore::PlatformScrollbar  Page leftWebCore::PlatformScrollbar  Page rightWebCore::PlatformScrollbar Page upWebCore::PlatformScrollbar  Right edgeWebCore::PlatformScrollbar  Scroll downWebCore::PlatformScrollbar  Scroll hereWebCore::PlatformScrollbar  Scroll leftWebCore::PlatformScrollbar  Scroll rightWebCore::PlatformScrollbar  Scroll upWebCore::PlatformScrollbar TopWebCore::PlatformScrollbarqupzilla-1.6.0/bin/locale/qt_es.qm000066400000000000000000002407531226107126500170550ustar00rootroot00000000000000i00u00955 DA DT+',B,~+į+3K;"F0iG<Hw9Hw9<I0IJ+J6:J64,J6=UJ6BDJ6zJ6J6J6KLLZMLL4[Lb M5BO|3PFE PFEPFEXTU?^&GU|:<V1V1VlVWWTWT:X?X)X˙@CX&Y^YPZg\]4\]4\[at|^v;v$f]IA[?[I7y&ɵn4ɵnj7ɵnqbɵnɵn*ɵnƔɵn++` B3oMEx+qH0<p5#Q%UT (ŎRy*42CCCeGD"D1[MvaR?HfP loR-w^0|{yW2M2.CoRM d yEvurr k"l)-N-^/=N1$!5~Zh< w!?NrNky]`6`"  4MC$)te6;66^^;~%=~.N6WEIEЛH{,8A A\O[yL4n>7IǠ˘MSMcEXEbUww!e+&)*/e5!N;nBy>F:eOZfH`cփfjCR<qIu(@~S '$$ e(^ n,la;y1A&Hk./k3IxS1|R>%YMY?YMbh^"i'sscxwͤYۊ3N/]]IdIqII=I,II<IJYچiyZٖIfv۲*:uD]uDdDno,,,,,kXɘe֡5$fR +fROINװOc%Pq`V>VfRGGخ Ys$%C"?"KN=MR]i<]pZky^H{yFPG%WKصǥ+$t {ygr"%1C-|5oƨƨ˾pҝz i2է?Z>#vf 0~bO ~bU*o!n+3(//#6 DGXuGbSLAUPѧ=Sn%UtUZԗZZZ?[]k*N^nue pi]qidkQ$oN^y;{V}uh}w'}wx}w"  v#tt.{.PD t*wtcKte_ Fʢ85ʢd9 dddu59m~gUBw zB m+f2C6^CU]CDKEU| arȪt}wZC}$}$$}$ZK<>4 /cEVu%5TTi~vX%. 5kEýXU MbDIbGxgAXi$x1 ]z*2ҳd.Uә5ŗzDmXnkb,C@ʴ5ʴ5Ԅ DXdF5F5YI IMAs 8 }$" qea1 ڤ E, E Acv AcP 35x K!?Jk bb b`\ b` i3' la5 lf xq | t tPG . V D *  > 1 rC K m %']  ܢ =  )H */Ҁ 7ua ;{* =W B Rۮ T^R ] `i `" c( dd e t eN f1Z gnf k,A rD" tT m`"; w yr: H HHL , $K4 .@  i-   J JL t t. k Ӈj  N>y ̺V -DW .} k k U)e= < 09  \  dO ߤ xHhe .1 7F >_ >` >a >h >u >~^ >I > DT I1E RVQ' RV RV S. S Ym [/ j7oF p2H . Bq < T5c T" T T V s# 7  Sr )dS  .5 .j . .U a y C ҂  t a :be ʜ0r +>3 0E ~ ;ɾ Pt Pt fe^ fe gL iFC iN@ ia n!' u% uV w" w| w w}v w} w}* |['~ Z c ^ }| R ! X &' DK t5 t5   )t !T+gT,M**=*/E+/E~=Bw}I_fXRu[ a.>&nyG%vɅy$Q~gSuM^B(<ݖ[yrI  K3"#ʡ$U%4AA%4T4-v0i)ݡ0y1cP2wT[D#-HJdg.L$. c5ϲc5eiCyC${~a`i[5H LNEkyPzt2/ɘi(2Acerca de %1About %1MAC_APPLICATION_MENUOcultar %1Hide %1MAC_APPLICATION_MENUOcultar otros Hide OthersMAC_APPLICATION_MENUPreferencias &Preferences...MAC_APPLICATION_MENUSalir de %1Quit %1MAC_APPLICATION_MENUServiciosServicesMAC_APPLICATION_MENUMostrar todoShow AllMAC_APPLICATION_MENUHLa secuencia %1, %2 no est definida%1, %2 not definedQ3Accel>Secuencia ambigua %1 no tratadaAmbiguous %1 not handledQ3Accel BorrarDelete Q3DataTable FalsoFalse Q3DataTableInsertarInsert Q3DataTableVerdaderoTrue Q3DataTableActualizarUpdate Q3DataTable%1 Fichero no encontrado. Compruebe la ruta y el nombre del fichero.+%1 File not found. Check path and filename. Q3FileDialog&Borrar&Delete Q3FileDialog&No&No Q3FileDialog&Aceptar&OK Q3FileDialog &Abrir&Open Q3FileDialog$Cambia&r de nombre&Rename Q3FileDialog&Guardar&Save Q3FileDialog&Sin ordenar &Unsorted Q3FileDialog&S&Yes Q3FileDialogT<qt>Seguro que desea borrar %1 %2?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialog,Todos los ficheros (*) All Files (*) Q3FileDialog0Todos los ficheros (*.*)All Files (*.*) Q3FileDialogAtributos Attributes Q3FileDialog,Precedente (histrico)Back Q3FileDialogCancelarCancel Q3FileDialog2Copiar o mover un ficheroCopy or Move a File Q3FileDialog.Crear una nueva carpetaCreate New Folder Q3FileDialog FechaDate Q3FileDialogBorrar %1 Delete %1 Q3FileDialogVista detallada Detail View Q3FileDialogDirectorioDir Q3FileDialogDirectorios Directories Q3FileDialogDirectorio: Directory: Q3FileDialog ErrorError Q3FileDialogFicheroFile Q3FileDialog&&Nombre de fichero: File &name: Q3FileDialog"&Tipo de fichero: File &type: Q3FileDialog.Buscar en el directorioFind Directory Q3FileDialogInaccesible Inaccessible Q3FileDialogVista de lista List View Q3FileDialogBuscar &en: Look &in: Q3FileDialog NombreName Q3FileDialogNueva carpeta New Folder Q3FileDialog Nueva carpeta %1 New Folder %1 Q3FileDialogNueva carpeta 1 New Folder 1 Q3FileDialog2Ir al directorio superiorOne directory up Q3FileDialog AbrirOpen Q3FileDialog Abrir Open  Q3FileDialogHContenido del fichero previsualizadoPreview File Contents Q3FileDialogLInformacin del fichero previsualizadoPreview File Info Q3FileDialogR&ecargarR&eload Q3FileDialogSlo lectura Read-only Q3FileDialog"Lectura-escritura Read-write Q3FileDialogLectura: %1Read: %1 Q3FileDialogGuardar comoSave As Q3FileDialog2Seleccionar un directorioSelect a Directory Q3FileDialog:Mostrar los fic&heros ocultosShow &hidden files Q3FileDialog TamaoSize Q3FileDialogOrdenarSort Q3FileDialog$Ordenar por &fecha Sort by &Date Q3FileDialog&Ordenar por &nombre Sort by &Name Q3FileDialog&Ordenar por &tamao Sort by &Size Q3FileDialog Fichero especialSpecial Q3FileDialog@Enlace simblico a un directorioSymlink to Directory Q3FileDialog:Enlace simblico a un ficheroSymlink to File Q3FileDialogLEnlace simblico a un fichero especialSymlink to Special Q3FileDialogTipoType Q3FileDialogSlo escritura Write-only Q3FileDialogEscritura: %1 Write: %1 Q3FileDialogel directorio the directory Q3FileDialogel ficherothe file Q3FileDialog&el enlace simblico the symlink Q3FileDialogJNo fue posible crear el directorio %1Could not create directory %1 Q3LocalFs.No fue posible abrir %1Could not open %1 Q3LocalFsHNo fue posible leer el directorio %1Could not read directory %1 Q3LocalFsdNo fue posible eliminar el fichero o directorio %1%Could not remove file or directory %1 Q3LocalFsPNo fue posible cambiar el nombre %1 a %2Could not rename %1 to %2 Q3LocalFs4No fue posible escribir %1Could not write %1 Q3LocalFsPersonalizar... Customize... Q3MainWindowAlinearLine up Q3MainWindowBOperacin detenida por el usuarioOperation stopped by the userQ3NetworkProtocolCancelarCancelQ3ProgressDialogAplicarApply Q3TabDialogCancelarCancel Q3TabDialog&Valores por omisinDefaults Q3TabDialog AyudaHelp Q3TabDialogAceptarOK Q3TabDialog&Copiar&Copy Q3TextEdit &Pegar&Paste Q3TextEdit&Rehacer&Redo Q3TextEdit&Deshacer&Undo Q3TextEditLimpiarClear Q3TextEditCor&tarCu&t Q3TextEdit Seleccionar todo Select All Q3TextEdit CerrarClose Q3TitleBar"Cierra la ventanaCloses the window Q3TitleBarTContiene rdenes para manipular la ventana*Contains commands to manipulate the window Q3TitleBarMuestra el nombre de la ventana y contiene controles para manipularlaFDisplays the name of the window and contains controls to manipulate it Q3TitleBarNMuestra la ventana en pantalla completaMakes the window full screen Q3TitleBarMaximizarMaximize Q3TitleBarMinimizarMinimize Q3TitleBar"Aparta la ventanaMoves the window out of the way Q3TitleBarfDevuelve una ventana maximizada a su aspecto normal&Puts a maximized window back to normal Q3TitleBarfDevuelve una ventana minimizada a su aspecto normalPuts a minimized back to normal Q3TitleBarRestaurar abajo Restore down Q3TitleBar Restaurar arriba Restore up Q3TitleBarSistemaSystem Q3TitleBar Ms...More... Q3ToolBar(desconocido) (unknown) Q3UrlOperatorEl protocolo %1 no permite copiar o mover ficheros o directoriosIThe protocol `%1' does not support copying or moving files or directories Q3UrlOperatorjEl protocolo %1 no permite crear nuevos directorios;The protocol `%1' does not support creating new directories Q3UrlOperatorZEl protocolo %1 no permite recibir ficheros0The protocol `%1' does not support getting files Q3UrlOperatorEl protocolo %1 no permite listar los ficheros de un directorio6The protocol `%1' does not support listing directories Q3UrlOperatorXEl protocolo %1 no permite enviar ficheros0The protocol `%1' does not support putting files Q3UrlOperatorxEl protocolo %1 no permite eliminar ficheros o directorios@The protocol `%1' does not support removing files or directories Q3UrlOperatorEl protocolo %1 no permite cambiar de nombre ficheros o directorios@The protocol `%1' does not support renaming files or directories Q3UrlOperatorJEl protocolo %1 no est contemplado"The protocol `%1' is not supported Q3UrlOperator&Cancelar&CancelQ3Wizard&Terminar&FinishQ3Wizard &Ayuda&HelpQ3WizardSiguie&nte >&Next >Q3Wizard< &Anterior< &BackQ3Wizard$Conexin rechazadaConnection refusedQAbstractSocket"Conexin expiradaConnection timed outQAbstractSocket(Equipo no encontradoHost not foundQAbstractSocket Red inalcanzableNetwork unreachableQAbstractSocket6El socket no est conectadoSocket is not connectedQAbstractSocket2Operacin socket expiradaSocket operation timed outQAbstractSocket"&Seleccionar todo &Select AllQAbstractSpinBox&Aumentar&Step upQAbstractSpinBoxRe&ducir Step &downQAbstractSpinBoxActivarActivate QApplicationPActiva la ventana principal del programa#Activates the program's main window QApplicationlEl ejecutable %1 requiere Qt %2 (se encontr Qt %3).,Executable '%1' requires Qt %2, found Qt %3. QApplicationBError: biblioteca Qt incompatibleIncompatible Qt Library Error QApplicationLTRQT_LAYOUT_DIRECTION QApplication&Cancelar&Cancel QAxSelect&Objeto COM: COM &Object: QAxSelectAceptarOK QAxSelect<Seleccionar un control ActiveXSelect ActiveX Control QAxSelect MarcarCheck QCheckBoxConmutarToggle QCheckBoxDesmarcarUncheck QCheckBoxH&Aadir a los colores personalizados&Add to Custom Colors QColorDialog Colores &bsicos &Basic colors QColorDialog.&Colores personalizados&Custom colors QColorDialog&Verde:&Green: QColorDialog &Rojo:&Red: QColorDialog&Saturacin:&Sat: QColorDialog&Valor:&Val: QColorDialogCanal a&lfa:A&lpha channel: QColorDialog Az&ul:Bl&ue: QColorDialog &Tono:Hu&e: QColorDialog CerrarClose QComboBox FalsoFalse QComboBox AbrirOpen QComboBoxVerdaderoTrue QComboBox@Incapaz de enviar la transaccinUnable to commit transaction QDB2DriverBImposible establecer una conexinUnable to connect QDB2Driver@Incapaz de anular la transaccinUnable to rollback transaction QDB2DriverLIncapaz de activar el envo automticoUnable to set autocommit QDB2Driver>No es posible ligar la variableUnable to bind variable QDB2ResultBImposible ejecutar la instruccinUnable to execute statement QDB2Result<Imposible recuperar el primeroUnable to fetch first QDB2Result@Imposible recuperar el siguienteUnable to fetch next QDB2Result@Imposible obtener el registro %1Unable to fetch record %1 QDB2ResultBImposible preparar la instruccinUnable to prepare statement QDB2ResultAMAM QDateTimeEditPMPM QDateTimeEditamam QDateTimeEditpmpm QDateTimeEdit QDialQDialQDial$Asa del deslizador SliderHandleQDialVelocmetro SpeedoMeterQDialTerminarDoneQDialogQu es esto? What's This?QDialog&Cancelar&CancelQDialogButtonBox&Cerrar&CloseQDialogButtonBox&No&NoQDialogButtonBox&Aceptar&OKQDialogButtonBox&Guardar&SaveQDialogButtonBox&S&YesQDialogButtonBoxInterrumpirAbortQDialogButtonBoxAplicarApplyQDialogButtonBoxCancelarCancelQDialogButtonBox CerrarCloseQDialogButtonBox$Cerrar sin guardarClose without SavingQDialogButtonBoxDescartarDiscardQDialogButtonBoxNo guardar Don't SaveQDialogButtonBox AyudaHelpQDialogButtonBoxIgnorarIgnoreQDialogButtonBoxN&o a todo N&o to AllQDialogButtonBoxAceptarOKQDialogButtonBox AbrirOpenQDialogButtonBoxReinicializarResetQDialogButtonBoxJRestaurar los valores predeterminadosRestore DefaultsQDialogButtonBoxReintentarRetryQDialogButtonBoxGuardarSaveQDialogButtonBoxGuardar todoSave AllQDialogButtonBoxS a &todo Yes to &AllQDialogButtonBox&ltima modificacin Date Modified QDirModel ClaseKind QDirModel NombreName QDirModel TamaoSize QDirModelTipoType QDirModel CerrarClose QDockWidgetAncladaDock QDockWidgetFlotanteFloat QDockWidget MenosLessQDoubleSpinBoxMsMoreQDoubleSpinBox&Aceptar&OK QErrorMessage<Mo&strar este mensaje de nuevo&Show this message again QErrorMessage,Mensaje de depuracin:Debug Message: QErrorMessageError fatal: Fatal Error: QErrorMessage Aviso:Warning: QErrorMessage%1 Directorio no encontrado. Verique que el nombre del directorio es correcto.K%1 Directory not found. Please verify the correct directory name was given. QFileDialog%1 Fichero no encontrado. Verifique que el nombre del fichero es correcto.A%1 File not found. Please verify the correct file name was given. QFileDialogZEl fichero %1 ya existe. Desea reemplazarlo?-%1 already exists. Do you want to replace it? QFileDialog&Seleccionar&Choose QFileDialog&Borrar&Delete QFileDialog&Nueva carpeta &New Folder QFileDialog &Abrir&Open QFileDialog$Cambia&r de nombre&Rename QFileDialog&Guardar&Save QFileDialog%1 est protegido contra escritura. Desea borrarlo de todas formas?9'%1' is write protected. Do you want to delete it anyway? QFileDialog,Todos los ficheros (*) All Files (*) QFileDialog0Todos los ficheros (*.*)All Files (*.*) QFileDialog<Seguro que desea borrar %1?!Are sure you want to delete '%1'? QFileDialog(Anterior (histrico)Back QFileDialogHNo fue posible borrar el directorio.Could not delete directory. QFileDialog.Crear una nueva carpetaCreate New Folder QFileDialogVista detallada Detail View QFileDialogDirectorios Directories QFileDialogDirectorio: Directory: QFileDialog UnidadDrive QFileDialogFicheroFile QFileDialog&&Nombre de fichero: File &name: QFileDialog"Ficheros de tipo:Files of type: QFileDialog.Buscar en el directorioFind Directory QFileDialog*Siguiente (histrico)Forward QFileDialogVista de lista List View QFileDialogVer en:Look in: QFileDialogMi equipo My Computer QFileDialogNueva carpeta New Folder QFileDialog AbrirOpen QFileDialog&Directorio superiorParent Directory QFileDialogEliminarRemove QFileDialogGuardar comoSave As QFileDialogMostrar Show  QFileDialog:Mostrar los fic&heros ocultosShow &hidden files QFileDialogDesconocidoUnknown QFileDialog %1 GiB%1 GBQFileSystemModel %1 KiB%1 KBQFileSystemModel %1 MiB%1 MBQFileSystemModel %1 TiB%1 TBQFileSystemModel%1 bytes%1 bytesQFileSystemModel<b>No se puede utilizar el nombre %1.</b><p>Intente usar otro nombre con menos caracteres o sin signos de puntuacin.oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModel EquipoComputerQFileSystemModel&ltima modificacin Date ModifiedQFileSystemModel6Nombre de fichero no vlidoInvalid filenameQFileSystemModel ClaseKindQFileSystemModelMi equipo My ComputerQFileSystemModel NombreNameQFileSystemModel TamaoSizeQFileSystemModelTipoTypeQFileSystemModel&Tipo de letra&Font QFontDialog&Tamao&Size QFontDialogS&ubrayado &Underline QFontDialogEfectosEffects QFontDialog2&Estilo del tipo de letra Font st&yle QFontDialogMuestraSample QFontDialog8Seleccionar un tipo de letra Select Font QFontDialog&Tachado Stri&keout QFontDialog*Sistema de escr&ituraWr&iting System QFontDialogDFallo del cambio de directorio: %1Changing directory failed: %1QFtp&Conectado al equipoConnected to hostQFtp,Conectado al equipo %1Connected to host %1QFtpPLa conexin con el equipo ha fallado: %1Connecting to host failed: %1QFtp Conexin cerradaConnection closedQFtpRConexin para conexin de datos rechazada&Connection refused for data connectionQFtp>Conexin rechazada al equipo %1Connection refused to host %1QFtp*Conexin a %1 cerradaConnection to %1 closedQFtpRFallo de la creacin de un directorio: %1Creating directory failed: %1QFtpHFallo de la descarga del fichero: %1Downloading file failed: %1QFtp(Equipo %1 encontrado Host %1 foundQFtp.Equipo %1 no encontradoHost %1 not foundQFtp"Equipo encontrado Host foundQFtpPEl listado del directorio ha fallado: %1Listing directory failed: %1QFtp4Identificacin fallida: %1Login failed: %1QFtpNo conectado Not connectedQFtpJEliminacin de directorio fallida: %1Removing directory failed: %1QFtpDEliminacin de fichero fallida: %1Removing file failed: %1QFtp"Error desconocido Unknown errorQFtpFEl envo del fichero ha fallado: %1Uploading file failed: %1QFtp"Error desconocido Unknown error QHostInfo(Equipo no encontradoHost not foundQHostInfoAgent:Direccin de tipo desconocidoUnknown address typeQHostInfoAgent"Error desconocido Unknown errorQHostInfoAgent0Se precisa autenticacinAuthentication requiredQHttp&Conectado al equipoConnected to hostQHttp,Conectado al equipo %1Connected to host %1QHttp Conexin cerradaConnection closedQHttp$Conexin rechazadaConnection refusedQHttp*Conexin a %1 cerradaConnection to %1 closedQHttp,Solicitud HTTP fallidaHTTP request failedQHttp(Equipo %1 encontrado Host %1 foundQHttp.Equipo %1 no encontradoHost %1 not foundQHttp"Equipo encontrado Host foundQHttp0Fragmento HTTP no vlidoInvalid HTTP chunked bodyQHttpHCabecera de respuesta HTTP no vlidaInvalid HTTP response headerQHttpfNo se ha indicado ningn servidor al que conectarseNo server set to connect toQHttp>El proxy requiere autenticacinProxy authentication requiredQHttp,Solicitud interrumpidaRequest abortedQHttpZEl servidor cerr la conexin inesperadamente%Server closed connection unexpectedlyQHttp"Error desconocido Unknown errorQHttp<Longitud del contenido errneaWrong content lengthQHttp0Se precisa autenticacinAuthentication requiredQHttpSocketEngineJNo fue posible iniciar la transaccinCould not start transaction QIBaseDriver>Error al abrir la base de datosError opening database QIBaseDriver@Incapaz de enviar la transaccinUnable to commit transaction QIBaseDriver@Incapaz de anular la transaccinUnable to rollback transaction QIBaseDriverJNo fue posible asignar la instruccinCould not allocate statement QIBaseResultdNo fue posible describir la instruccin de entrada"Could not describe input statement QIBaseResultNNo fue posible describir la instruccinCould not describe statement QIBaseResultXNo fue posible obtener el elemento siguienteCould not fetch next item QIBaseResultBNo fue posible encontrar la tablaCould not find array QIBaseResultXNo fue posible obtener los datos de la tablaCould not get array data QIBaseResulthNo fue posible obtener informacin sobre la consultaCould not get query info QIBaseResultnNo fue posible obtener informacin sobre la instruccinCould not get statement info QIBaseResultLNo fue posible preparar la instruccinCould not prepare statement QIBaseResultJNo fue posible iniciar la transaccinCould not start transaction QIBaseResultHNo fue posible cerrar la instruccinUnable to close statement QIBaseResult@Incapaz de enviar la transaccinUnable to commit transaction QIBaseResult.Imposible crear un BLOBUnable to create BLOB QIBaseResultFNo fue posible ejecutar la consultaUnable to execute query QIBaseResult.Imposible abrir el BLOBUnable to open BLOB QIBaseResult,Imposible leer el BLOBUnable to read BLOB QIBaseResult4Imposible escribir el BLOBUnable to write BLOB QIBaseResultDNo queda espacio en el dispositivoNo space left on device QIODevicebNo hay ningn fichero o directorio con ese nombreNo such file or directory QIODevice Permiso denegadoPermission denied QIODeviceXDemasiados ficheros abiertos simultneamenteToo many open files QIODevice"Error desconocido Unknown error QIODevice4Mtodo de entrada Mac OS XMac OS X input method QInputContext2Mtodo de entrada WindowsWindows input method QInputContextXIMXIM QInputContext*Mtodo de entrada XIMXIM input method QInputContextzNo fu posible establecer la proyeccin en memoria de %1: %2Could not mmap '%1': %2QLibraryxNo fue posible suprimir la proyeccin en memoria de %1: %2Could not unmap '%1': %2QLibrary|Los datos de verificacin del complemento no coinciden en %1)Plugin verification data mismatch in '%1'QLibrarydEl fichero %1 no es un complemento de Qt vlido.'The file '%1' is not a valid Qt plugin.QLibraryEl complemento %1 usa una biblioteca Qt incompatible. (%2.%3.%4) [%5]=The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]QLibraryEl complemento %1 usa una biblioteca Qt incompatible. (No se pueden mezclar las bibliotecas debug y release.)WThe plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)QLibraryEl complemento %1 usa una biblioteca Qt incompatible. Se esperaba la clave %2, pero se ha recibido %3OThe plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"QLibraryZNo se ha encontrado la biblioteca compartida.!The shared library was not found.QLibrary"Error desconocido Unknown errorQLibrary&Copiar&Copy QLineEdit &Pegar&Paste QLineEdit&Rehacer&Redo QLineEdit&Deshacer&Undo QLineEditCor&tarCu&t QLineEdit BorrarDelete QLineEdit Seleccionar todo Select All QLineEditHNo es posible iniciar la transaccinUnable to begin transaction QMYSQLDriverFNo es posible enviar la transaccinUnable to commit transaction QMYSQLDriverJNo es posible establecer una conexinUnable to connect QMYSQLDriverDImposible abrir la base de datos 'Unable to open database ' QMYSQLDriverFNo es posible anular la transaccinUnable to rollback transaction QMYSQLDriverRNo es posible ligar los valores de salidaUnable to bind outvalues QMYSQLResult8No es posible ligar el valorUnable to bind value QMYSQLResultDNo es posible ejecutar la consultaUnable to execute query QMYSQLResultJNo es posible ejecutar la instruccinUnable to execute statement QMYSQLResult>No es posible obtener los datosUnable to fetch data QMYSQLResultJNo es posible preparar la instruccinUnable to prepare statement QMYSQLResultTNo es posible reinicializar la instruccinUnable to reset statement QMYSQLResultHNo es posible almacenar el resultadoUnable to store result QMYSQLResultpNo es posible almacenar los resultados de la instruccin!Unable to store statement results QMYSQLResult%1 - [%2] %1 - [%2] QMdiSubWindow&Cerrar&Close QMdiSubWindow &Mover&Move QMdiSubWindow&Restaurar&Restore QMdiSubWindowRedimen&sionar&Size QMdiSubWindow CerrarClose QMdiSubWindow AyudaHelp QMdiSubWindowMa&ximizar Ma&ximize QMdiSubWindowMaximizarMaximize QMdiSubWindowMenMenu QMdiSubWindowMi&nimizar Mi&nimize QMdiSubWindowMinimizarMinimize QMdiSubWindowRestaurar abajo Restore Down QMdiSubWindow6Permanecer en &primer plano Stay on &Top QMdiSubWindow CerrarCloseQMenuEjecutarExecuteQMenu AbrirOpenQMenuAcerca de QtAbout Qt QMessageBox AyudaHelp QMessageBox.Ocultar los detalles...Hide Details... QMessageBoxAceptarOK QMessageBox.Mostrar los detalles...Show Details... QMessageBoxSeleccionar IM Select IMQMultiInputContextTSeleccionador de varios mtodos de entradaMultiple input method switcherQMultiInputContextPluginSeleccionador de varios mtodos de entrada que usa el men contextual de los elementos de textoMMultiple input method switcher that uses the context menu of the text widgetsQMultiInputContextPluginbYa hay otro socket escuchando por el mismo puerto4Another socket is already listening on the same portQNativeSocketEngineIntento de usar un socket IPv6 sobre una plataforma que no contempla IPv6=Attempt to use IPv6 socket on a platform with no IPv6 supportQNativeSocketEngine$Conexin rechazadaConnection refusedQNativeSocketEngine"Conexin expiradaConnection timed outQNativeSocketEnginepEl datagrama era demasiado grande para poder ser enviadoDatagram was too large to sendQNativeSocketEngine$Equipo inaccesibleHost unreachableQNativeSocketEngine<Descriptor de socket no vlidoInvalid socket descriptorQNativeSocketEngineError de red Network errorQNativeSocketEngine>La operacin de red ha expiradoNetwork operation timed outQNativeSocketEngine Red inalcanzableNetwork unreachableQNativeSocketEngine8Operacin sobre un no-socketOperation on non-socketQNativeSocketEngine,Insuficientes recursosOut of resourcesQNativeSocketEngine Permiso denegadoPermission deniedQNativeSocketEngine:Tipo de protocolo no admitidoProtocol type not supportedQNativeSocketEngine>La direccin no est disponibleThe address is not availableQNativeSocketEngine6La direccin est protegidaThe address is protectedQNativeSocketEngineHLa direccin enlazada ya est en uso#The bound address is already in useQNativeSocketEngineNEl equipo remoto ha cerrado la conexin%The remote host closed the connectionQNativeSocketEngineVImposible inicializar el socket de difusin%Unable to initialize broadcast socketQNativeSocketEngineZImposible inicializar el socket no bloqueante(Unable to initialize non-blocking socketQNativeSocketEngine8Imposible recibir un mensajeUnable to receive a messageQNativeSocketEngine6Imposible enviar un mensajeUnable to send a messageQNativeSocketEngine$Imposible escribirUnable to writeQNativeSocketEngine"Error desconocido Unknown errorQNativeSocketEngine8Operacin socket no admitidaUnsupported socket operationQNativeSocketEngineHNo es posible iniciar la transaccinUnable to begin transaction QOCIDriver8La inicializacin ha falladoUnable to initialize QOCIDriver4No es posible abrir sesinUnable to logon QOCIDriverHNo es posible asignar la instruccinUnable to alloc statement QOCIResultvNo es posible ligar la columna para una ejecucin por lotes'Unable to bind column for batch execute QOCIResult8No es posible ligar el valorUnable to bind value QOCIResult^No es posible ejecutar la instruccin por lotes!Unable to execute batch statement QOCIResultJNo es posible ejecutar la instruccinUnable to execute statement QOCIResult@No es posible pasar al siguienteUnable to goto next QOCIResultJNo es posible preparar la instruccinUnable to prepare statement QOCIResultFNo es posible enviar la transaccinUnable to commit transaction QODBCDriverJNo es posible establecer una conexinUnable to connect QODBCDriverNo es posible conectarse - El controlador no ofrece todas las funciones necesariasCUnable to connect - Driver doesn't support all needed functionality QODBCDriverZNo es posible inhabilitar el envo automticoUnable to disable autocommit QODBCDriverVNo es posible habilitar el envo automticoUnable to enable autocommit QODBCDriverFNo es posible anular la transaccinUnable to rollback transaction QODBCDriver QODBCResult::reset: No es posible establecer SQL_CURSOR_STATIC como atributo de instruccin. Compruebe la configuracin de su controlador ODBCyQODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResult>No es posible ligar la variableUnable to bind variable QODBCResultJNo es posible ejecutar la instruccinUnable to execute statement QODBCResult<Imposible recuperar el primeroUnable to fetch first QODBCResultDNo es posible obtener el siguienteUnable to fetch next QODBCResultJNo es posible preparar la instruccinUnable to prepare statement QODBCResult InicioHomeQObject NombreNameQPPDOptionsModel ValorValueQPPDOptionsModelJNo fue posible iniciar la transaccinCould not begin transaction QPSQLDriverHNo fue posible enviar la transaccinCould not commit transaction QPSQLDriverHNo fue posible anular la transaccinCould not rollback transaction QPSQLDriverBNo es posible establecer conexinUnable to connect QPSQLDriver>No es posible crear la consultaUnable to create query QPSQLResultApaisado LandscapeQPageSetupWidget"Tamao de pgina: Page size:QPageSetupWidget"Fuente del papel: Paper source:QPageSetupWidgetVerticalPortraitQPageSetupWidget<El complemento no fue cargado.The plugin was not loaded. QPluginLoader"Error desconocido Unknown error QPluginLoaderJ%1 ya existe. Desea sobrescribirlo?/%1 already exists. Do you want to overwrite it? QPrintDialogv%1 es un directorio. Elija un nombre de fichero diferente.7%1 is a directory. Please choose a different file name. QPrintDialog><qt>Desea sobrescribirlo?</qt>%Do you want to overwrite it? QPrintDialog$A0 (841 x 1189 mm)A0 (841 x 1189 mm) QPrintDialog"A1 (594 x 841 mm)A1 (594 x 841 mm) QPrintDialog"A2 (420 x 594 mm)A2 (420 x 594 mm) QPrintDialog"A3 (297 x 420 mm)A3 (297 x 420 mm) QPrintDialogNA4 (210 x 297 mm, 8,26 x 11,7 pulgadas)%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialog"A5 (148 x 210 mm)A5 (148 x 210 mm) QPrintDialog"A6 (105 x 148 mm)A6 (105 x 148 mm) QPrintDialog A7 (74 x 105 mm)A7 (74 x 105 mm) QPrintDialogA8 (52 x 74 mm)A8 (52 x 74 mm) QPrintDialogA9 (37 x 52 mm)A9 (37 x 52 mm) QPrintDialogAlias: %1 Aliases: %1 QPrintDialog&B0 (1000 x 1414 mm)B0 (1000 x 1414 mm) QPrintDialog$B1 (707 x 1000 mm)B1 (707 x 1000 mm) QPrintDialog B10 (31 x 44 mm)B10 (31 x 44 mm) QPrintDialog"B2 (500 x 707 mm)B2 (500 x 707 mm) QPrintDialog"B3 (353 x 500 mm)B3 (353 x 500 mm) QPrintDialog"B4 (250 x 353 mm)B4 (250 x 353 mm) QPrintDialogNB5 (176 x 250 mm, 6,93 x 9,84 pulgadas)%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialog"B6 (125 x 176 mm)B6 (125 x 176 mm) QPrintDialog B7 (88 x 125 mm)B7 (88 x 125 mm) QPrintDialogB8 (62 x 88 mm)B8 (62 x 88 mm) QPrintDialogB9 (44 x 62 mm)B9 (44 x 62 mm) QPrintDialog$C5E (163 x 229 mm)C5E (163 x 229 mm) QPrintDialog$DLE (110 x 220 mm)DLE (110 x 220 mm) QPrintDialogVEjecutivo (7,5 x 10 pulgadas, 191 x 254 mm))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialogNo se puede escribir en el fichero %1. Elija un nombre de fichero diferente.=File %1 is not writable. Please choose a different file name. QPrintDialog"El fichero existe File exists QPrintDialog(Folio (210 x 330 mm)Folio (210 x 330 mm) QPrintDialog*Ledger (432 x 279 mm)Ledger (432 x 279 mm) QPrintDialogNLegal (8,5 x 14 pulgadas, 216 x 356 mm)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialogNCarta (8,5 x 11 pulgadas, 216 x 279 mm)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialogAceptarOK QPrintDialogImprimirPrint QPrintDialog*Imprimir a fichero...Print To File ... QPrintDialogImprimir todo Print all QPrintDialog*Imprimir el intervalo Print range QPrintDialog*Imprimir la seleccinPrint selection QPrintDialog.Tabloide (279 x 432 mm)Tabloid (279 x 432 mm) QPrintDialogDSobre US Common #10 (105 x 241 mm)%US Common #10 Envelope (105 x 241 mm) QPrintDialog(conectado localmentelocally connected QPrintDialogdesconocidounknown QPrintDialog CerrarCloseQPrintPreviewDialogApaisado LandscapeQPrintPreviewDialogVerticalPortraitQPrintPreviewDialogRecopilarCollateQPrintSettingsOutput CopiasCopiesQPrintSettingsOutputOpcionesOptionsQPrintSettingsOutputPginas Pages fromQPrintSettingsOutputImprimir todo Print allQPrintSettingsOutput*Imprimir el intervalo Print rangeQPrintSettingsOutputSeleccin SelectionQPrintSettingsOutputatoQPrintSettingsOutputImpresoraPrinter QPrintWidgetCancelarCancelQProgressDialog AbrirOpen QPushButton MarcarCheck QRadioButtonVsintaxis no vlida para clase de caracteresbad char class syntaxQRegExpBsintaxis no vlida para lookaheadbad lookahead syntaxQRegExpDsintaxis no vlida para repeticinbad repetition syntaxQRegExpXse ha usado una caracterstica no habilitadadisabled feature usedQRegExp*valor octal no vlidoinvalid octal valueQRegExp8se alcanz el lmite internomet internal limitQRegExp<falta el delimitador izquierdomissing left delimQRegExp>no se ha producido ningn errorno error occurredQRegExpfin inesperadounexpected endQRegExp>Error al abrir la base de datosError to open databaseQSQLite2DriverHNo es posible iniciar la transaccinUnable to begin transactionQSQLite2DriverFNo es posible enviar la transaccinUnable to commit transactionQSQLite2DriverFNo es posible anular la transaccinUnable to rollback TransactionQSQLite2DriverJNo es posible ejecutar la instruccinUnable to execute statementQSQLite2ResultHNo es posible obtener los resultadosUnable to fetch resultsQSQLite2Result@Error al cerrar la base de datosError closing database QSQLiteDriver>Error al abrir la base de datosError opening database QSQLiteDriverHNo es posible iniciar la transaccinUnable to begin transaction QSQLiteDriverFNo es posible enviar la transaccinUnable to commit transaction QSQLiteDriver>Nmero de parmetros incorrectoParameter count mismatch QSQLiteResultDNo es posible ligar los parmetrosUnable to bind parameters QSQLiteResultJNo es posible ejecutar la instruccinUnable to execute statement QSQLiteResult:No es posible obtener la filaUnable to fetch row QSQLiteResultTNo es posible reinicializar la instruccinUnable to reset statement QSQLiteResultParte inferiorBottom QScrollBarBorde izquierdo Left edge QScrollBar"Alinear por abajo Line down QScrollBarAlinearLine up QScrollBar,Una pgina hacia abajo Page down QScrollBar2Una pgina a la izquierda Page left QScrollBar.Una pgina a la derecha Page right QScrollBar.Una pgina hacia arribaPage up QScrollBarPosicinPosition QScrollBarBorde derecho Right edge QScrollBar*Desplazar hacia abajo Scroll down QScrollBar(Desplazar hasta aqu Scroll here QScrollBar8Desplazar hacia la izquierda Scroll left QScrollBar4Desplazar hacia la derecha Scroll right QScrollBar,Desplazar hacia arriba Scroll up QScrollBarParte superiorTop QScrollBar++ QShortcutAltAlt QShortcut(Anterior (histrico)Back QShortcut Borrar Backspace QShortcut*Tabulador hacia atrsBacktab QShortcut(Potenciar los graves Bass Boost QShortcut Bajar los graves Bass Down QShortcut Subir los gravesBass Up QShortcut LlamarCall QShortcut*Bloqueo de maysculas Caps Lock QShortcutBloq MaysCapsLock QShortcutContexto1Context1 QShortcutContexto2Context2 QShortcutContexto3Context3 QShortcutContexto4Context4 QShortcutCtrlCtrl QShortcutSuprDel QShortcut BorrarDelete QShortcut AbajoDown QShortcutFinEnd QShortcut IntroEnter QShortcutEscEsc QShortcut EscapeEscape QShortcutF%1F%1 QShortcutFavoritos Favorites QShortcutVoltearFlip QShortcut*Siguiente (histrico)Forward QShortcutDescolgarHangup QShortcut AyudaHelp QShortcut InicioHome QShortcut Pgina de inicio Home Page QShortcutInsIns QShortcutInsertarInsert QShortcutLanzar (0) Launch (0) QShortcutLanzar (1) Launch (1) QShortcutLanzar (2) Launch (2) QShortcutLanzar (3) Launch (3) QShortcutLanzar (4) Launch (4) QShortcutLanzar (5) Launch (5) QShortcutLanzar (6) Launch (6) QShortcutLanzar (7) Launch (7) QShortcutLanzar (8) Launch (8) QShortcutLanzar (9) Launch (9) QShortcutLanzar (A) Launch (A) QShortcutLanzar (B) Launch (B) QShortcutLanzar (C) Launch (C) QShortcutLanzar (D) Launch (D) QShortcutLanzar (E) Launch (E) QShortcutLanzar (F) Launch (F) QShortcutLanzar correo Launch Mail QShortcutLanzar medio Launch Media QShortcutIzquierdaLeft QShortcutSiguiente medio Media Next QShortcut&Reproducir el medio Media Play QShortcutMedio anteriorMedia Previous QShortcutGrabar medio Media Record QShortcut Detener el medio Media Stop QShortcutMenMenu QShortcutMetaMeta QShortcutNoNo QShortcutBloq numNum Lock QShortcutBloq NumNumLock QShortcut Bloqueo numrico Number Lock QShortcutAbrir URLOpen URL QShortcutAvanzar pgina Page Down QShortcut"Retroceder pginaPage Up QShortcut PausaPause QShortcut Av PgPgDown QShortcut Re PgPgUp QShortcutImpr PantPrint QShortcut"Imprimir pantalla Print Screen QShortcutActualizarRefresh QShortcutRetornoReturn QShortcutDerechaRight QShortcut4Bloqueo del desplazamiento Scroll Lock QShortcutBloq Despl ScrollLock QShortcutBsquedaSearch QShortcutSeleccionarSelect QShortcutMayShift QShortcutEspacioSpace QShortcut ReposoStandby QShortcutDetenerStop QShortcut PetSisSysReq QShortcut(Peticin del sistemaSystem Request QShortcutTabuladorTab QShortcut Bajar los agudos Treble Down QShortcut Subir los agudos Treble Up QShortcut ArribaUp QShortcut Bajar el volumen Volume Down QShortcutSilenciar Volume Mute QShortcut Subir el volumen Volume Up QShortcutSYes QShortcut,Una pgina hacia abajo Page downQSlider2Una pgina a la izquierda Page leftQSlider.Una pgina a la derecha Page rightQSlider.Una pgina hacia arribaPage upQSliderPosicinPositionQSlider>La operacin de red ha expiradoNetwork operation timed outQSocks5SocketEngine MenosLessQSpinBoxMsMoreQSpinBoxCancelarCancelQSql:Cancelar sus modificaciones?Cancel your edits?QSqlConfirmarConfirmQSql BorrarDeleteQSql,Borrar este registro?Delete this record?QSqlInsertarInsertQSqlNoNoQSql8Guardar las modificaciones? Save edits?QSqlActualizarUpdateQSqlSYesQSqljNo se puede proporcionar un certificado sin clave, %1,Cannot provide a certificate with no key, %1 QSslSocketFError al crear el contexto SSL (%1)Error creating SSL context (%1) QSslSocket@Error al crear la sesin SSL, %1Error creating SSL session, %1 QSslSocket@Error al crear la sesin SSL: %1Error creating SSL session: %1 QSslSocket>Error durante el saludo SSL: %1Error during SSL handshake: %1 QSslSocketPError al cargar el certificado local, %1#Error loading local certificate, %1 QSslSocketHError al cargar la clave privada, %1Error loading private key, %1 QSslSocket"Error al leer: %1Error while reading: %1 QSslSocketLLista de cifras vaca o no vlida (%1)!Invalid or empty cipher list (%1) QSslSocketHNo es posible escribir los datos: %1Unable to write data: %1 QSslSocket>No es posible abrir la conexinUnable to open connection QTDSDriverNNo es posible utilizar la base de datosUnable to use database QTDSDriver8Desplazar hacia la izquierda Scroll LeftQTabBar4Desplazar hacia la derecha Scroll RightQTabBar&Copiar&Copy QTextControl &Pegar&Paste QTextControl&Rehacer&Redo QTextControl&Deshacer&Undo QTextControl>Copiar la ubicacin del en&laceCopy &Link Location QTextControlCor&tarCu&t QTextControl BorrarDelete QTextControl Seleccionar todo Select All QTextControl AbrirOpen QToolButton PulsarPress QToolButton>La plataforma no contempla IPv6#This platform does not support IPv6 QUdpSocketRehacerRedo QUndoGroupDeshacerUndo QUndoGroup<vaco> QUndoModelRehacerRedo QUndoStackDeshacerUndo QUndoStackHInsertar carcter de control Unicode Insert Unicode control characterQUnicodeControlCharacterMenuHLRE Start of left-to-right embedding$LRE Start of left-to-right embeddingQUnicodeControlCharacterMenu,LRM Left-to-right markLRM Left-to-right markQUnicodeControlCharacterMenuFLRO Start of left-to-right override#LRO Start of left-to-right overrideQUnicodeControlCharacterMenu<PDF Pop directional formattingPDF Pop directional formattingQUnicodeControlCharacterMenuHRLE Start of right-to-left embedding$RLE Start of right-to-left embeddingQUnicodeControlCharacterMenu,RLM Right-to-left markRLM Right-to-left markQUnicodeControlCharacterMenuFRLO Start of right-to-left override#RLO Start of right-to-left overrideQUnicodeControlCharacterMenu*ZWJ Zero width joinerZWJ Zero width joinerQUnicodeControlCharacterMenu4ZWNJ Zero width non-joinerZWNJ Zero width non-joinerQUnicodeControlCharacterMenu*ZWSP Zero width spaceZWSP Zero width spaceQUnicodeControlCharacterMenuParte inferiorBottomQWebPagePrecedenteGo BackQWebPageIgnorarIgnoreQWebPageIgnorar Ignore Grammar context menu itemIgnoreQWebPageBorde izquierdo Left edgeQWebPage,Una pgina hacia abajo Page downQWebPage2Una pgina a la izquierda Page leftQWebPage.Una pgina a la derecha Page rightQWebPage.Una pgina hacia arribaPage upQWebPageReinicializarResetQWebPageBorde derecho Right edgeQWebPage*Desplazar hacia abajo Scroll downQWebPage(Desplazar hasta aqu Scroll hereQWebPage8Desplazar hacia la izquierda Scroll leftQWebPage4Desplazar hacia la derecha Scroll rightQWebPage,Desplazar hacia arriba Scroll upQWebPageDetenerStopQWebPageParte superiorTopQWebPageDesconocidoUnknownQWebPageQu es esto? What's This?QWhatsThisAction**QWidget&Terminar&FinishQWizard &Ayuda&HelpQWizardSiguie&nte >&Next >QWizard< &Anterior< &BackQWizardCancelarCancelQWizard EnviarCommitQWizardSiguienteContinueQWizardTerminarDoneQWizardPrecedenteGo BackQWizard AyudaHelpQWizard%1 - [%2] %1 - [%2] QWorkspace&Cerrar&Close QWorkspace &Mover&Move QWorkspace&Restaurar&Restore QWorkspace&Tamao&Size QWorkspaceQ&uitar sombra&Unshade QWorkspace CerrarClose QWorkspaceMa&ximizar Ma&ximize QWorkspaceMi&nimizar Mi&nimize QWorkspaceMinimizarMinimize QWorkspaceRestaurar abajo Restore Down QWorkspaceSombre&arSh&ade QWorkspace6Permanecer en &primer plano Stay on &Top QWorkspacese esperaba una declaracin de codificacin o declaracin autnoma al leer la declaracin XMLYencoding declaration or standalone declaration expected while reading the XML declarationQXmlnerror en la declaracin de texto de una entidad externa3error in the text declaration of an external entityQXmlzse ha producido un error durante el anlisis de un comentario$error occurred while parsing commentQXmltse ha producido un error durante el anlisis del contenido$error occurred while parsing contentQXmlse ha producido un error durante el anlisis de la definicin de tipo de documento5error occurred while parsing document type definitionQXmlvse ha producido un error durante el anlisis de un elemento$error occurred while parsing elementQXml|se ha producido un error durante el anlisis de una referencia&error occurred while parsing referenceQXml4error debido al consumidorerror triggered by consumerQXmlno se permiten referencias a entidades externas generales ya analizadas en la DTD;external parsed general entity reference not allowed in DTDQXmlno se permiten referencias a entidades externas generales ya analizadas en el valor de un atributoGexternal parsed general entity reference not allowed in attribute valueQXmlno se permiten referencias a entidades internas generales en la DTD4internal general entity reference not allowed in DTDQXml\nombre de instruccin de tratamiento no vlido'invalid name for processing instructionQXml*se esperaba una letraletter is expectedQXmlTms de una definicin de tipo de documento&more than one document type definitionQXml>no se ha producido ningn errorno error occurredQXml(entidades recursivasrecursive entitiesQXmlse esperaba una declaracin independiente al leer la declaracin XMLAstandalone declaration expected while reading the XML declarationQXml.etiqueta desequilibrada tag mismatchQXml&carcter inesperadounexpected characterQXml2fin de fichero inesperadounexpected end of fileQXmltreferencia a entidad no analizada en un contexto no vlido*unparsed entity reference in wrong contextQXmlbse esperaba la versin al leer la declaracin XML2version expected while reading the XML declarationQXml^valor errneo para la declaracin independiente&wrong value for standalone declarationQXmlP%1 no es un identificador PUBLIC vlido.#%1 is an invalid PUBLIC identifier. QXmlStreamT%1 es un nombre de codificacin no vlido.%1 is an invalid encoding name. QXmlStreamt%1 es un nombre de instruccin de procesamiento no vlido.-%1 is an invalid processing instruction name. QXmlStream., pero se ha recibido ' , but got ' QXmlStream(Atributo redefinido.Attribute redefined. QXmlStream>No se admite la codificacin %1Encoding %1 is unsupported QXmlStream`Encontrado contenido codificado incorrectamente.(Encountered incorrectly encoded content. QXmlStream4Entidad %1 no declarada.Entity '%1' not declared. QXmlStreamSe esperaba  Expected  QXmlStream>Se esperaban datos de carcter.Expected character data. QXmlStreamNContenido extra al final del documento.!Extra content at end of document. QXmlStreamRDeclaracin de espacio de nombres ilegal.Illegal namespace declaration. QXmlStream.Carcter XML no vlido.Invalid XML character. QXmlStream*Nombre XML no vlido.Invalid XML name. QXmlStream@Cadena de versin XML no vlida.Invalid XML version string. QXmlStreamRAtributo no vlido en la declaracin XML.%Invalid attribute in XML declaration. QXmlStreamBReferencia un carcter no vlido.Invalid character reference. QXmlStream(Documento no vlido.Invalid document. QXmlStream<Valor de la entidad no vlido.Invalid entity value. QXmlStreambNombre de instruccin de procesamiento no vlido.$Invalid processing instruction name. QXmlStream\NDATA en una declaracin de entidad parmetro.&NDATA in parameter entity declaration. QXmlStream^Prefijo de espacio de nombres %1 no declarado"Namespace prefix '%1' not declared QXmlStream`Las etiquetas de apertura y cierre no coinciden. Opening and ending tag mismatch. QXmlStream<Final prematuro del documento.Premature end of document. QXmlStream8Detectada entidad recursiva.Recursive entity detected. QXmlStream~Referencia a una entidad externa %1 en el valor del atributo.5Reference to external entity '%1' in attribute value. QXmlStreamVReferencia a una entidad no analizada %1."Reference to unparsed entity '%1'. QXmlStreamZSecuencia ]]> no permitida en el contenido.&Sequence ']]>' not allowed in content. QXmlStreamJStandalone slo acepta s o no."Standalone accepts only yes or no. QXmlStream>Se esperaba etiqueta de inicio.Start tag expected. QXmlStreamEl pseudoatributo standalone debe aparece despus de la codificacin.?The standalone pseudo attribute must appear after the encoding. QXmlStream No se esperaba ' Unexpected ' QXmlStreamCarcter %1 inesperado en un literal de identificacin pblico./Unexpected character '%1' in public id literal. QXmlStream0Versin XML no admitida.Unsupported XML version. QXmlStreamlLa declaracin XML no est al principio del documento.)XML declaration not at start of document. QXmlStreamqupzilla-1.6.0/bin/locale/qt_eu.qm000066400000000000000000004001651226107126500170520ustar00rootroot00000000000000EgEt8g%,%g; ֍H֍q֍ ֍5;v0<0k0y0Ǽ0?05@j s Dn D+I ,o,h&)Gv-/=N\:01$q1$u8:s< MNkyUi]6lgNlyzl}oivtyPvty+1%Ȋ"ɦ-",< 6h686CSO;<R0Tw= y~.$U(uE(E)6{=Ц8A+.τb=[yLيQt"nzSؙ۾rmMM EEw:jw&6eJ I.nd_)]y*/e]+Ք,!V1E; iЉByFgZf\cdx\B ` cփK5cTjCqlu(@}kafMy^K$$VL!G(^ uL~K$"֊Nz};yωradD ndC&UW4!=H5AIxSLOL6=MROcXE%=dK h^CJw&dx"%ۊN;TNJt]%] #I)I;7I;IjJIIgWIhI(ZIEYF4iFtyFDE4EtEDtDIH4G4GtGGFuDWDo ne,$,,,8E,i,]:>qn>&q.ɘe:F˓5$11 4D8>fR.fR*U^90:N;N>_Q~?IS4VkVfRx| 2%+Aj+ 8 \ >V0@Q$b[ lD"o l$%CC&~)2,53$5Ip8I8J8ݒ?>u?%Fu |KNAK-M25RV|]eg^P!kQ3y^?{y 5tS;5t|FS:8 TG%nn",ص>%AV+VA+h^+G`i/t'{yb;xA%rH9\JY@s~C%K\d\G5OiUmC^Mƨ%ƨjhqҝz.JҰq8ل/է?ii}^zsߺWqサ*nf f|+!?^!-dvDD^~b~bo0cMFt#%?['//2/ 14~Ӿ6 U8_? 2 A %GbLAUPѧjRCA(SnU6U)UUxUTeYĻ/Z6xZ6Z6Z72[[@]k*T^n_P`t_P_p`u]He/ iim?$oN8xy;2{ {h%}uP}w'}wa}w}1lE'BxvUtGtlYd/.'.b 3s<iU7>^5DYtE`t,tɣttfdl_ Oa+fUsXdTCdd9d|0y㵾t ucjyk`yԐUU}dBN,%R9  X !!+,D02p9?;CU]CUZJ0K1K"U|4\\D]/t9arld5t1o|(^a||}wZ&}$'r}$ax}$AϗZ_D>K<kf+·O·*·׳  [/MfC4\ue/0tWUӷEVȥ[U9Su*5%5Xi~(.WbYBb}ix9%wh%˩%d$=R=.[=??@J5@TCtINPMV%V%XU `+MbDYvfdgA8:hIlx1 5z*21|QR(*U2c2zq6c.4C5gQBtR-rXxmR^x^nen:!Sb†5PixCmq~U?yʴ5ʴ5ʶ - D-^ hԄ’۔#F5@[F5Y4NWJI-fI_As) qep ڤs ڥ de Ac2 Ac cf 35ς 35}p Z K>b 팤0 E1 % Ht CCn q  D3 } 9M orY )- */1 n N4 tD nrT oT ` SdU 8 B3 vX t $ lY ʀs> ˔ }p h PD P ~t :M^ f ( f z . v s+ s~ ~j 9 k 9 r8w / m,5 5P ݡ= 0NI7 :  Ak CU3 E92 L LA LD Ll Mc\m Oh P..Vq X\# ZN \Ot ]$SP `W f))6 f){ f=% l#T3 lu[ m`B w2 yrg }Q_ \ H'G HyL F + С= $}! .@\} 9H iJ <A X  =   < % J,8 J~  kq Ӈ> t M* ; /3& ̺ 9N -D ۷ k)W k T>M <AS QQ ,Y  0O1 $rU=  z+    I~ % O sh  W $ %6b .L 2 <yu >L > > > > >D >S >0 >o< >o >~C ?t| DT$p G IH3 IL K K MbWP P@] RVD RVQ RV Rn S.i% S < [+ hۮ j7ow m(fn pM sL u= B TR T T T  Z3 0 ,J ,"7 S ܮ fi az y@ x! C ɾd ɾd e. ҂l Ӵ$5 X uX |, b 9 9 am : ʜKS fe 3r>   $* p (Nҫ +>N: 64- ;ɾ- Fgv Ptb Pt S,Y c\ fe&$ fe g  g hQ$ iFC: i i;C jNE l" m9 m9[ uPQ um v& v{ w& w` w w}'* w}a+ w} yn u^o hR ^  P  xN "R U ɰeD rr X/ b Y &@ D0 t5 t5A "  I5 B$~RQwd |T&-a*E**/EF/E)/Ewl4QtTKiOO@S5a.kJa%gcbinyGvɅ6H%e>4}Sv<>NM^!5Ǘ$:{DBCzӮ`UӮ`dAYE rݖZ][yRrF|1jjY T @5 * }lD$U5>%4n?%4 -v0i)J0K1c̊1cx62wTJJH4JdL$.c5(2c5g3oiC+iTgl hp{~aH~5"6$&NDE`o`Yko)ͣQ+l~\>bQNv Er-1nPkyT֠QU|ڔ.d^'T B >P~t2ItdzUiAkats faltsua! Fake error!URL baliogabea Invalid URLItxi Hegatsa Close Tab CloseButton<zehaztu gabea> Debugger::JSAgentWatchData"[Array luzera %1][Array of length %1]Debugger::JSAgentWatchData%1-ri buruzAbout %1MAC_APPLICATION_MENUEzkutatu %1Hide %1MAC_APPLICATION_MENU Ezkutatu Besteak Hide OthersMAC_APPLICATION_MENUHobespenak...Preferences...MAC_APPLICATION_MENUUtzi %1Quit %1MAC_APPLICATION_MENUZerbitzuakServicesMAC_APPLICATION_MENUErakutsi DenakShow AllMAC_APPLICATION_MENUSarbidetasuna AccessibilityPhonon::Hedabideak CommunicationPhonon::JolasakGamesPhonon:: MusikaMusicPhonon::Jakinarazpenak NotificationsPhonon:: BideoaVideoPhonon::Beharrezko kodeka ez dago. Hurrengo kodeka(k) ezarri behar dituzu eduki hau irakurtzeko: %0`A required codec is missing. You need to install the following codec(s) to play this content: %0Phonon::Gstreamer::MediaObjectVEzinezkoa multimedia iturburua dekodeatzea.Could not decode media source.Phonon::Gstreamer::MediaObjectPEzinezkoa multimedia iturburua kokatzea.Could not locate media source.Phonon::Gstreamer::MediaObjectEzinezkoa audio gailua irekitzea. Gailua jadanik erabiltzen dago.:Could not open audio device. The device is already in use.Phonon::Gstreamer::MediaObjectTEzinezkoa multimedia ituruburua irekitzea.Could not open media source.Phonon::Gstreamer::MediaObject2Iturburu mota baliogabea.Invalid source type.Phonon::Gstreamer::MediaObjectfPlugin kodek ezarpen hutsegitea kodek honentzat: %0.Plugin codec installation failed for codec: %0Phonon::Gstreamer::MediaObject Sarbidea ukatuta Access denied Phonon::MMFBadago jadanikAlready exists Phonon::MMFAudio Irteera Audio Output Phonon::MMFVAudio edo bideo osagaiak ezin dira irakurri-Audio or video components could not be played Phonon::MMF(Audio irteera akatsaAudio output error Phonon::MMF.Ezinezkoa elkarketatzeaCould not connect Phonon::MMFDRM akatsa DRM error Phonon::MMF(Dekodeatzaile akatsa Decoder error Phonon::MMF Etenda Disconnected Phonon::MMFErabiltzenIn use Phonon::MMF,Bandazabalera gutxiegiInsufficient bandwidth Phonon::MMFURL baliogabea Invalid URL Phonon::MMF(Protokolo baliogabeaInvalid protocol Phonon::MMF Multicast akatsaMulticast error Phonon::MMF(Sare harreman akatsaNetwork communication error Phonon::MMF"Sarea eskuraezinaNetwork unavailable Phonon::MMFAkatsik ezNo error Phonon::MMFEz da aurkitu Not found Phonon::MMFEz dago gertu Not ready Phonon::MMF*Ez dago sostengaturik Not supported Phonon::MMF"Oroimenetik kanpo Out of memory Phonon::MMF,Helburua ez da aurkituPath not found Phonon::MMFBaimena ukatutaPermission denied Phonon::MMF.Proxy zerbitzari akatsaProxy server error Phonon::MMFNProxy zerbitzaria ez dago sostengaturikProxy server not supported Phonon::MMF"Zerbitzari alerta Server alert Phonon::MMF8Jarioa ez dago sostengaturikStreaming not supported Phonon::MMF(Audio irteera gailuaThe audio output device Phonon::MMF(Akats ezezaguna (%1)Unknown error (%1) Phonon::MMF(Bideo irteera akatsaVideo output error Phonon::MMFJeisketa akatsaDownload error Phonon::MMF::AbstractMediaPlayer6Akatsa URL-a irekitzerakoanError opening URL Phonon::MMF::AbstractMediaPlayer8Akatsa agiria irakitzerakoanError opening file Phonon::MMF::AbstractMediaPlayer@Akatsa baliabidea irekitzerakoanError opening resource Phonon::MMF::AbstractMediaPlayervAkatsa iturburua irekitzerakoan: bailabidea ez dago irekita)Error opening source: resource not opened Phonon::MMF::AbstractMediaPlayer2Klip gertaketa hutsegiteaLoading clip failed Phonon::MMF::AbstractMediaPlayer2Ez dago gertu irakurtzekoNot ready to play Phonon::MMF::AbstractMediaPlayer$Irakurketa osatutaPlayback complete Phonon::MMF::AbstractMediaPlayer4Bolumen ezarpen hutsegiteaSetting volume failed Phonon::MMF::AbstractMediaPlayer2Kokapen lorpen hutsegiteaGetting position failed Phonon::MMF::AbstractVideoPlayer0Klip irekitze hutsegiteaOpening clip failed Phonon::MMF::AbstractVideoPlayer&Pausatze hutsegitea Pause failed Phonon::MMF::AbstractVideoPlayer&Bilaketa hutsegitea Seek failed Phonon::MMF::AbstractVideoPlayer %1 Hz%1 HzPhonon::MMF::AudioEqualizer2Kokapen lorpen hutsegiteaGetting position failedPhonon::MMF::AudioPlayer4Bideo erakuspen hutsegiteaVideo display errorPhonon::MMF::DsaVideoPlayerGaitutaEnabledPhonon::MMF::EffectFactory*Erorketa GM maila (%)Decay HF ratio (%) Phonon::MMF::EnvironmentalReverb*Erorketa denbora (sm)Decay time (ms) Phonon::MMF::EnvironmentalReverbDentsitatea (%) Density (%) Phonon::MMF::EnvironmentalReverbGelako GM maila Room HF level Phonon::MMF::EnvironmentalReverb"Gelako maila (Bm)Room level (mB) Phonon::MMF::EnvironmentalReverbAkatsa iturburua irekitzerakoan: multimedia mota ezin da zehaztu8Error opening source: media type could not be determinedPhonon::MMF::MediaObjectzAkatsa iturburua irekitzerakoan: baliabidea konprimituta dago,Error opening source: resource is compressedPhonon::MMF::MediaObjectvAkatsa iturburua irekitzerakoan: baliabidea ez da baliozkoa(Error opening source: resource not validPhonon::MMF::MediaObjectvAkatsa iturburua irekitzerakoan: mota ez dago sostengaturik(Error opening source: type not supportedPhonon::MMF::MediaObjectNHutsegitea eskaturiko IAP ezartzerakoanFailed to set requested IAPPhonon::MMF::MediaObjectMaila (%) Level (%)Phonon::MMF::StereoWidening4Bideo erakuspen hutsegiteaVideo display errorPhonon::MMF::SurfaceVideoPlayerMutututaMutedPhonon::VolumeSliderErabili irriskari hau bolumena zehazteko. Ezkerreneko kokapena da 0%. Eskuinenekoa da %1%WUse this slider to adjust the volume. The leftmost position is 0%. The rightmost is %1%Phonon::VolumeSliderBolumena: %1% Volume: %1%Phonon::VolumeSlider&%1, %2 zehaztu gabe%1, %2 not definedQ3AccelEzabatuDelete Q3DataTableFaltsuaFalse Q3DataTableTxertatuInsert Q3DataTableEgiaTrue Q3DataTableEguneratuUpdate Q3DataTablet%1 Agiria ez da aurkitu. Egiaztatu helburua eta agirizena.+%1 File not found. Check path and filename. Q3FileDialogE&zabatu&Delete Q3FileDialog&Ez&No Q3FileDialog &Ongi&OK Q3FileDialog &Ireki&Open Q3FileDialog&Berreizendatu&Rename Q3FileDialog &Gorde&Save Q3FileDialog&Antolatugabe &Unsorted Q3FileDialog&Bai&Yes Q3FileDialogf<qt>Zihur zaude %1 %2 ezabatzea nahi duzula?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialog"Agiri Guztiak (*) All Files (*) Q3FileDialog&Agiri Guztiak (*.*)All Files (*.*) Q3FileDialogEzaugarriak Attributes Q3FileDialog AtzeraBack Q3FileDialogEzeztatuCancel Q3FileDialog8Kopiatu edo Mugitu Agiri batCopy or Move a File Q3FileDialog,Sortu Agiritegi BerriaCreate New Folder Q3FileDialog EgunaDate Q3FileDialogEzabatu %1 Delete %1 Q3FileDialog&Xehetasun Ikuspegia Detail View Q3FileDialogZuzenbideaDir Q3FileDialogZuzenbideak Directories Q3FileDialogZuzenbidea: Directory: Q3FileDialog AkatsaError Q3FileDialog AgiriaFile Q3FileDialogAgiri &izena: File &name: Q3FileDialogAgiri &mota: File &type: Q3FileDialog$Bilatu ZuzenbideaFind Directory Q3FileDialogEskuraezina Inaccessible Q3FileDialog$Zerrenda Ikuspegia List View Q3FileDialogBilatu &hemen: Look &in: Q3FileDialog IzenaName Q3FileDialog Agiritegi Berria New Folder Q3FileDialog&Agiritegi Berria %1 New Folder %1 Q3FileDialog$Agiritegi Berria 1 New Folder 1 Q3FileDialog"Igo zuzenbide batOne directory up Q3FileDialog IrekiOpen Q3FileDialog Ireki Open  Q3FileDialog0Aurreikusi Agiri EdukiakPreview File Contents Q3FileDialog6Aurreikusi Agiri ArgibideakPreview File Info Q3FileDialog&BirgertatuR&eload Q3FileDialog*Irakurtzekoa-bakarrik Read-only Q3FileDialog Irakur-idaztekoa Read-write Q3FileDialogIrakurri: %1Read: %1 Q3FileDialogGorde HonelaSave As Q3FileDialog*Hautatu Zuzenbide batSelect a Directory Q3FileDialog6Eraklutsi e&zkutuko agiriakShow &hidden files Q3FileDialogNeurriaSize Q3FileDialogAntolatuSort Q3FileDialog Antolatu &Egunez Sort by &Date Q3FileDialog Antolatu &Izenez Sort by &Name Q3FileDialog"Antolatu &Neurriz Sort by &Size Q3FileDialogBereziaSpecial Q3FileDialog*Symlotura ZuzenbideraSymlink to Directory Q3FileDialog2Lotura-sinbolikoa AgiriraSymlink to File Q3FileDialog$Symlotura BereziraSymlink to Special Q3FileDialogMotaType Q3FileDialog$Idaztekoa-bakarrik Write-only Q3FileDialogIdatzi: %1 Write: %1 Q3FileDialogzuzenbidea the directory Q3FileDialog agiriathe file Q3FileDialogsymlotura the symlink Q3FileDialog>Ezinezkoa zuzenbidea sortzea %1Could not create directory %1 Q3LocalFs,Ezinezkoa irekitzea %1Could not open %1 Q3LocalFs>Ezinezkoa zuzenbidea sortzea %1Could not read directory %1 Q3LocalFsTEzinezkoa agiria edo zuzenbidea kentzea %1%Could not remove file or directory %1 Q3LocalFsJEzinezkoa berrizendatzea %1 honela %2Could not rename %1 to %2 Q3LocalFs(Ezinezkoa idaztea %1Could not write %1 Q3LocalFsNorbereratu... Customize... Q3MainWindowLerroan goraLine up Q3MainWindowJEragiketa erabiltzaileak geldiarazitaOperation stopped by the userQ3NetworkProtocolEzeztatuCancelQ3ProgressDialog EzarriApply Q3TabDialogEzeztatuCancel Q3TabDialogBerezkoakDefaults Q3TabDialogLaguntzaHelp Q3TabDialogOngiOK Q3TabDialog&Kopiatu&Copy Q3TextEdit&Itsatsi&Paste Q3TextEdit&Berregin&Redo Q3TextEdit&Desegin&Undo Q3TextEditGarbituClear Q3TextEdit &EbakiCu&t Q3TextEditHautatu Denak Select All Q3TextEditItxiClose Q3TitleBarLeihoa isten duCloses the window Q3TitleBarFLeihoa manipulatzeko komandoak ditu*Contains commands to manipulate the window Q3TitleBarLeihoaren izena eta erakusten du eta hura manipulatzeko aginteak dituFDisplays the name of the window and contains controls to manipulate it Q3TitleBar@Leihoa ikusleiho-osoko egiten duMakes the window full screen Q3TitleBarHandiengotuMaximize Q3TitleBarTxikiengotuMinimize Q3TitleBar@Leihoa bidetik kanpo mugitzen duMoves the window out of the way Q3TitleBarRLehio handiendua atzera arrunt jartzen du&Puts a maximized window back to normal Q3TitleBarTIkurturiko leihoa atzera arrunt jartzen du&Puts a minimized window back to normal Q3TitleBar"Leheneratu behera Restore down Q3TitleBarLeheneratu gora Restore up Q3TitleBarSistemaSystem Q3TitleBarGehiago...More... Q3ToolBar(ezezaguna) (unknown) Q3UrlOperatorJ`%1' protokoloa ez dago sostengaturik"The protocol `%1' is not supported Q3UrlOperatorE&zeztatu&CancelQ3WizardA&maitu&FinishQ3Wizard&Laguntza&HelpQ3Wizard&Hurrengoa >&Next >Q3Wizard< &Atzera< &BackQ3Wizard(Elkarketa baztertutaConnection refusedQAbstractSocket0Elkarketa denboraz kanpoConnection timed outQAbstractSocket0Hostalaria ez da aurkituHost not foundQAbstractSocket$Sare erdietsiezinaNetwork unreachableQAbstractSocket&Hautatu Denak &Select AllQAbstractSpinBoxUrratsa &gora&Step upQAbstractSpinBoxUrratsa &behera Step &downQAbstractSpinBoxHautatuCheckQAccessibleButton SakatuPressQAccessibleButtonEz-hautatuUncheckQAccessibleButton EraginActivate QApplicationJProgramaren leiho nagusia eragiten du#Activates the program's main window QApplicationj'%1' exekutagarriak Qt %2 behar du, aurkitu da Qt %3.,Executable '%1' requires Qt %2, found Qt %3. QApplicationHBateraezintasun Qt Liburutegi AkatsaIncompatible Qt Library Error QApplicationEZESQT_LAYOUT_DIRECTION QApplicationE&zeztatu&Cancel QAxSelectCOM &Objetua: COM &Object: QAxSelectOngiOK QAxSelect.Hautatu ActiveX AginteaSelect ActiveX Control QAxSelectHautatuCheck QCheckBox AldatuToggle QCheckBoxEz HautatuUncheck QCheckBox4&Gehitu Norbere Margoetara&Add to Custom Colors QColorDialog(O&hinarrizko margoak &Basic colors QColorDialog Nor&bere margoak&Custom colors QColorDialog&Orlegia:&Green: QColorDialog&Gorria:&Red: QColorDialog&Margoaset.&Sat: QColorDialog &Bal:&Val: QColorDialogA&lfa bidea:A&lpha channel: QColorDialog&Urdina:Bl&ue: QColorDialog&NabarduraHu&e: QColorDialogHautatu Margoa Select Color QColorDialogItxiClose QComboBoxFaltsuaFalse QComboBox IrekiOpen QComboBoxEgiaTrue QComboBox$%1: jadanik badago%1: already existsQCoreApplication%1: ez dago%1: does not existQCoreApplication&%1: ftok hutsegitea%1: ftok failedQCoreApplication,%1: giltza hutsik dago%1: key is emptyQCoreApplication2%1: baliabideetatik kanpo%1: out of resourcesQCoreApplication&%1: baimena ukatuta%1: permission deniedQCoreApplication6%1: ezinezkoa giltza egitea%1: unable to make keyQCoreApplication,%1: %2 akats ezezaguna%1: unknown error %2QCoreApplication.Ezinezkoa elkarketatzeaUnable to connect QDB2DriverBEzinezkoa berez-aurkeztu ezartzeaUnable to set autocommit QDB2Driver@Ezinezkoa estamentua exekutatzeaUnable to execute statement QDB2Result:Ezinezkoa stamentua gertatzeaUnable to prepare statement QDB2ResultGOAM QDateTimeEditARPM QDateTimeEditgoam QDateTimeEditarpm QDateTimeEdit:Animazioa klase abstraktoa daAnimation is an abstract classQDeclarativeAbstractAnimationDEzinezkoa iraupen bat ezartzea < 0Cannot set a duration of < 0QDeclarativeAnchorAnimation~Ezinezkoa etzaneko hertz bat zutikako hertz batera ainguratzea.3Cannot anchor a horizontal edge to a vertical edge.QDeclarativeAnchorsjEzinezkoa ezker, eskuin eta erdi aingurak adieraztea.0Cannot specify left, right, and hcenter anchors.QDeclarativeAnchorsTQt eraikita dago QMovie-rako sostengu gabe'Qt was built without support for QMovieQDeclarativeAnimatedImageDAplikazioaa klase abstrakto bat da Application is an abstract classQDeclarativeApplicationT"%1.%2" ez da eskuragarria hemen %3 %4.%5.%"%1.%2" is not available in %3 %4.%5.QDeclarativeCompiler8Legezkanpoko ezaugarri izenaIllegal property nameQDeclarativeCompiler<Izentarte erabilera baliogabeaInvalid use of namespaceQDeclarativeCompilerZEzaugarria jadanik balio bati esleiturik dago*Property has already been assigned a valueQDeclarativeCompiler&id-a ez da bakarrraid is not uniqueQDeclarativeCompiler&URL huts baliogabeaInvalid empty URLQDeclarativeComponent@Elkarketak: itxarondako eskriptaConnections: script expectedQDeclarativeConnections4Elkarketak: joskera akatsaConnections: syntax errorQDeclarativeConnectionsez da mota bat is not a typeQDeclarativeImportDatabase"tokiko zuzenbidealocal directoryQDeclarativeImportDatabase:"%1" moduloa ez dago ezarritamodule "%1" is not installedQDeclarativeImportDatabaseN"%1" moduloa "%2" plugina ez da aurkitu!module "%1" plugin "%2" not foundQDeclarativeImportDatabaseX"%1" moduloa %2.%3 bertsioa ez dago ezarrita*module "%1" version %2.%3 is not installedQDeclarativeImportDatabase +ListElement: cannot contain nested elementsQDeclarativeListModel(mugitu: mailaz kanpomove: out of rangeQDeclarativeListModel>ezarri: balioa ez da objetu batset: value is not an objectQDeclarativeListModelzGertatzaileak ez du ez-ikusizko gaiak gertatzea sostengatzen.4Loader does not support loading non-visual elements.QDeclarativeLoader4Itxarondako parametro motaExpected parameter typeQDeclarativeParser,Itxarondako mota izenaExpected type nameQDeclarativeParser&Legezkanpoko hizkiaIllegal characterQDeclarativeParserXLiburutegi inportazioak bertsio bat behar du!Library import requires a versionQDeclarativeParserZEzaugarri balioak denbora anitz ezartzen ditu!Property value set multiple timesQDeclarativeParserJoskera akatsa Syntax errorQDeclarativeParser0Cannot set a duration of < 0QDeclarativePauseAnimation.Ezinezkoa irekitzea: %1Cannot open: %1QDeclarativePixmap6Akatsa dekodeaketan: %1: %2Error decoding: %1: %2QDeclarativePixmap%1+Cannot assign to non-existent property "%1"QDeclarativePropertyChanges %1 %2%1 %2QDeclarativeTypeLoaderZ%1 izentartea ezin da mota bat bezala erabili%Namespace %1 cannot be used as a typeQDeclarativeTypeLoader&Mota %1 eskuraezinaType %1 unavailableQDeclarativeTypeLoader QDialQDialQDial(Irriskari Heldutokia SliderHandleQDial&Abiadura-Neurgailua SpeedoMeterQDial EgindaDoneQDialogZer da Hau? What's This?QDialogE&zeztatu&CancelQDialogButtonBox It&xi&CloseQDialogButtonBox&Ez&NoQDialogButtonBox &Ongi&OKQDialogButtonBox &Gorde&SaveQDialogButtonBox&Bai&YesQDialogButtonBoxUtziAbortQDialogButtonBox EzarriApplyQDialogButtonBoxEzeztatuCancelQDialogButtonBoxItxiCloseQDialogButtonBoxItxi Gorde gabeClose without SavingQDialogButtonBoxBaztertuDiscardQDialogButtonBoxEz Gorde Don't SaveQDialogButtonBoxLaguntzaHelpQDialogButtonBoxEzikusiIgnoreQDialogButtonBoxEz Guz&tiari N&o to AllQDialogButtonBoxOngiOKQDialogButtonBox IrekiOpenQDialogButtonBoxBerrabiaraziResetQDialogButtonBox(Berrezarri BerezkoakRestore DefaultsQDialogButtonBoxBersaiatuRetryQDialogButtonBox GordeSaveQDialogButtonBoxGorde DenakSave AllQDialogButtonBoxBai G&uztiari Yes to &AllQDialogButtonBoxAldatze Eguna Date Modified QDirModelMotaKind QDirModel IzenaName QDirModelNeurriaSize QDirModelMotaType QDirModelItxiClose QDockWidgetUztartuDock QDockWidgetGutxiagoLessQDoubleSpinBoxGehiagoMoreQDoubleSpinBox &Ongi&OK QErrorMessage4&Erakutsi mezu hau berriro&Show this message again QErrorMessage"Garbiketa Mezua:Debug Message: QErrorMessageAkats Larria: Fatal Error: QErrorMessageKontuz:Warning: QErrorMessage@Ezinezkoa %1 sortzea irteerarakoCannot create %1 for outputQFileDEzinezkoa %1 irekitzea sarrerarakoCannot open %1 for inputQFile>Ezinezkoa irekitzea irteerarakoCannot open for outputQFileBEzinezkoa iturburu agiria kentzeaCannot remove source fileQFile*Helmuga agiria badagoDestination file existsQFile<Hutsegitea blokea idazterakoanFailure to write blockQFileEz dago agiri gailurik eskuragarri edo gailuak ez du UnMapExtension sostengatzenBNo file engine available or engine does not support UnMapExtensionQFilevEz da sekuentzia agiria berrizendatuko bloke kopia erabiliz0Will not rename sequential file using block copyQFile%1 Zuzenbidea ez da aurkitu. Mesedez egiaztatu emaniko zuzenbide izena zuzena dela.K%1 Directory not found. Please verify the correct directory name was given. QFileDialog%1 Agiria ez da aurkitu. Mesedez egiaztatu emaniko agiri izena zuzena dela.A%1 File not found. Please verify the correct file name was given. QFileDialogL%1 jadanik badago. Ordeztea nahi duzu?-%1 already exists. Do you want to replace it? QFileDialog&Hautatu&Choose QFileDialogE&zabatu&Delete QFileDialog"Agiritegi &Berria &New Folder QFileDialog &Ireki&Open QFileDialogBe&rrizendatu&Rename QFileDialog &Gorde&Save QFileDialog'%1' idaz-aurka babestuta dago. Horrela ere ezabatzea nahi duzu?9'%1' is write protected. Do you want to delete it anyway? QFileDialogIzenordeaAlias QFileDialog"Agiri Guztiak (*) All Files (*) QFileDialog&Agiri Guztiak (*.*)All Files (*.*) QFileDialogNZihur zaude '%1' ezabatzea nahi duzula?!Are sure you want to delete '%1'? QFileDialog AtzeraBack QFileDialog@Aldatu xehetasun ikuspegi moduraChange to detail view mode QFileDialog>Aldatu zerrenda ikuspegi moduraChange to list view mode QFileDialog>Ezinezkoa zuzenbidea ezabatzea.Could not delete directory. QFileDialog,Sortu Agiritegi BerriaCreate New Folder QFileDialog2Sortu Agiritegi Berri batCreate a New Folder QFileDialog&Xehetasun Ikuspegia Detail View QFileDialogZuzenbideak Directories QFileDialogZuzenbidea: Directory: QFileDialogGidagailuaDrive QFileDialog AgiriaFile QFileDialogAgiri &izena: File &name: QFileDialogAgiritegia File Folder QFileDialogAgiri mota:Files of type: QFileDialog"Bilatu ZuzenbideaFind Directory QFileDialogAgiritegiaFolder QFileDialogAurreraForward QFileDialogJoan atzeraGo back QFileDialogJoan aurrera Go forward QFileDialog0Joan gaineko zuzenbideraGo to the parent directory QFileDialog$Zerrenda Ikuspegia List View QFileDialogBegiratu hemen:Look in: QFileDialog"Nire Ordenagailua My Computer QFileDialog Agiritegi Berria New Folder QFileDialog IrekiOpen QFileDialog$Gaineko ZuzenbideaParent Directory QFileDialogAzken Guneak Recent Places QFileDialog KenduRemove QFileDialogGorde HonelaSave As QFileDialogLasterteklaShortcut QFileDialogErakutsi Show  QFileDialog6Erakutsi e&zkutuko agiriakShow &hidden files QFileDialogEzezagunaUnknown QFileDialog %1 GB%1 GBQFileSystemModel %1 KB%1 KBQFileSystemModel %1 MB%1 MBQFileSystemModel %1 TB%1 TBQFileSystemModel%1 byte %1 byte(s)QFileSystemModel%1 byte%1 bytesQFileSystemModelOrdenagailuaComputerQFileSystemModelAldaketa Eguna Date ModifiedQFileSystemModel&Agirizen baliogabeaInvalid filenameQFileSystemModelMotaKindQFileSystemModel"Nire Ordenagailua My ComputerQFileSystemModel IzenaNameQFileSystemModelNeurriaSizeQFileSystemModelMotaTypeQFileSystemModelEdozeinAny QFontDatabaseArabieraArabic QFontDatabaseArmenieraArmenian QFontDatabaseBengalieraBengali QFontDatabase BeltzaBlack QFontDatabase LodiaBold QFontDatabaseZiriliarraCyrillic QFontDatabase ErdiaDemi QFontDatabaseErdi Lodia Demi Bold QFontDatabaseDevanagariera Devanagari QFontDatabaseGeorgieraGeorgian QFontDatabaseGrezieraGreek QFontDatabaseGuxaratieraGujarati QFontDatabaseGurmukhieraGurmukhi QFontDatabaseHebraieraHebrew QFontDatabase EtzanaItalic QFontDatabaseJaponieraJapanese QFontDatabaseKannadaeraKannada QFontDatabaseKhmerreraKhmer QFontDatabaseKoreaeraKorean QFontDatabaseLaoseraLao QFontDatabaseLatineraLatin QFontDatabase ArgiaLight QFontDatabaseMalayalamera Malayalam QFontDatabaseMyanmarreraMyanmar QFontDatabaseN'KoeraN'Ko QFontDatabaseArruntaNormal QFontDatabase OkerraOblique QFontDatabaseOghameraOgham QFontDatabaseOriyaeraOriya QFontDatabaseErrunikoaRunic QFontDatabase Txinera ArrunduaSimplified Chinese QFontDatabaseSinhalaeraSinhala QFontDatabase IkurraSymbol QFontDatabaseSirieraSyriac QFontDatabaseTamileraTamil QFontDatabaseTelugueraTelugu QFontDatabaseThaanaeraThaana QFontDatabaseThailandieraThai QFontDatabaseTibeteraTibetan QFontDatabase(Txinera TradizionalaTraditional Chinese QFontDatabaseVietnamera Vietnamese QFontDatabase&Hizkia&Font QFontDialog&Neurria&Size QFontDialog&Azpimarratua &Underline QFontDialogEraginakEffects QFontDialogHizki &estiloa Font st&yle QFontDialog LaginaSample QFontDialogHautatu Hizkia Select Font QFontDialog&Marratua Stri&keout QFontDialog"I&dazketa SistemaWr&iting System QFontDialog4Hostalarira elkarketaturikConnected to hostQFtp0%1 hostalaria aurkitu da Host %1 foundQFtp6Hostalaria %1 ez da aurkituHost %1 not foundQFtp*Hostalaria aurkitu da Host foundQFtp"Elkarketatu gabe Not connectedQFtpAkats ezezaguna Unknown errorQFtp6Ez da hostalari izenik emanNo host name given QHostInfoAkats ezezaguna Unknown error QHostInfo0Hostalaria ez da aurkituHost not foundQHostInfoAgent2Hostalari-izen baliogabeaInvalid hostnameQHostInfoAgent6Ez da hostalari izenik emanNo host name givenQHostInfoAgent,Helbide mota ezezagunaUnknown address typeQHostInfoAgentAkats ezezaguna Unknown errorQHostInfoAgent.Egiaztapena beharrezkoaAuthentication requiredQHttp6Hostalariari elkarketaturikConnected to hostQHttp Elkarketa itxitaConnection closedQHttp Elkarketa ukatuaConnection refusedQHttpRElkarketa baztertuta (edo denboraz kanpo)!Connection refused (or timed out)QHttp Datuak hondatutaData corruptedQHttp.HTTP eskaera hutsegiteaHTTP request failedQHttp0%1 hostalaria aurkitu da Host %1 foundQHttp*Hostalaria aurkitu da Host foundQHttp@Hostalariak egiaztapena behar duHost requires authenticationQHttp:Proxy egiaztapena beharrezkoaProxy authentication requiredQHttp6Proxyak egiaztapen behar duProxy requires authenticationQHttpEskaera utzitaRequest abortedQHttp0SSL eskuemate hutsegiteaSSL handshake failedQHttp6Egiaztapen metodo ezezagunaUnknown authentication methodQHttpAkats ezezaguna Unknown errorQHttp>Protokolo ezezaguna adierazi daUnknown protocol specifiedQHttpBProxy elkarketa azkarregi itxi da#Proxy connection closed prematurelyQHttpSocketEngine4Proxy elkarketa baztertutaProxy connection refusedQHttpSocketEngineRProxy zerbitzari elkarketa denboraz kanpo!Proxy server connection timed outQHttpSocketEngineBEzinezkoa eskualdaketa abiarazteaCould not start transaction QIBaseDriver>Akatsa datubasea irekitzerakoanError opening database QIBaseDriver@Ezinezkoa eskualdaketa aurkezteaUnable to commit transaction QIBaseDriver@Ezinezkoa eskualdaketa aurkezteaUnable to commit transaction QIBaseResultBLOBUnable to create BLOB QIBaseResultBaimena ukatutaPermission denied QIODevice*Agiri gehiegi irekitaToo many open files QIODeviceAkats ezezaguna Unknown error QIODeviceFEPFEP QInputContext0Mac OS X sarrera metodoaMac OS X input method QInputContext.S60 FEP sarrera metodoaS60 FEP input method QInputContext.Windows sarrera metodoaWindows input method QInputContextXIMXIM QInputContext&XIM sarrera metodoaXIM input method QInputContext Sartu balio bat:Enter a value: QInputDialogDEzin da liburutegia gertatu %1: %2Cannot load library %1: %2QLibraryJEzin da liburutegia desgertatu %1: %2Cannot unload library %1: %2QLibraryAkats ezezaguna Unknown errorQLibrary&Kopiatu&Copy QLineEdit&Itsasi&Paste QLineEdit&Berregin&Redo QLineEdit&Desegin&Undo QLineEdit &EbakiCu&t QLineEditEzabatuDelete QLineEditHautatu Denak Select All QLineEdit0%1: Helbidea erabilia da%1: Address in use QLocalServer%1: Izen akatsa%1: Name error QLocalServer&%1: Baimena ukatuta%1: Permission denied QLocalServer,%1: Akats ezezaguna %2%1: Unknown error %2 QLocalServer(%1: Sarbidea ukatuta%1: Access denied QLocalSocket(%1: Elkarketa akatsa%1: Connection error QLocalSocket.%1: Elkarketa baztertua%1: Connection refused QLocalSocket.%1: Datagrama handiegia%1: Datagram too large QLocalSocket&%1: Izen baliogabea%1: Invalid name QLocalSocket*%1: Hurrunekoa itxita%1: Remote closed QLocalSocket&%1: Akats ezezaguna%1: Unknown error QLocalSocket,%1: Akats ezezaguna %2%1: Unknown error %2 QLocalSocket@Ezinezkoa eskualdaketa aurkezteaUnable to commit transaction QMYSQLDriver.Ezinezkoa elkarketatzeaUnable to connect QMYSQLDriver:Ezinezkoa datubasea irekitzeaUnable to open database ' QMYSQLDriver>Ezinezkoa estametua exekutatzeaUnable to execute statement QMYSQLResultREzinezkoa estametu emaitzak biltegiratzea!Unable to store statement results QMYSQLResult (Izenburu gabea) (Untitled)QMdiArea%1 - [%2] %1 - [%2] QMdiSubWindow It&xi&Close QMdiSubWindow&Mugitu&Move QMdiSubWindow&Leheneratu&Restore QMdiSubWindow&Neurria&Size QMdiSubWindow - [%1]- [%1] QMdiSubWindowItxiClose QMdiSubWindowLaguntzaHelp QMdiSubWindow&Handiengotu Ma&ximize QMdiSubWindowHandiengotuMaximize QMdiSubWindow MenuaMenu QMdiSubWindowT&xikiengotu Mi&nimize QMdiSubWindowTxikiengotuMinimize QMdiSubWindowLeheneratuRestore QMdiSubWindow"Leheneratu Behera Restore Down QMdiSubWindowEduki &Gainean Stay on &Top QMdiSubWindowItxiCloseQMenuExekutatuExecuteQMenu IrekiOpenQMenuEkintzakActionsQMenuBar,Bazterreko TresnabarraCorner ToolbarQMenuBar<h3>Qt-ri buruz</h3><p>Programa honek Qt %1 bertsioa erabiltzen du.</p>8

About Qt

This program uses Qt version %1.

 QMessageBox <p>Qt aplikazioen garapenerako plataforma-anitzeko C++ tresna kit bat da.</p><p>Qt-k iturburu-bakarreko eramangarritasuna eskaintzen du MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, eta Unix merkatal aldaera gehinentzat. Qt eskuragarri dago ere barneraturiko gailuentzat, Qt Barneraturik Linux-rako eta Qt Windows CE-rako bezala.</p><p>Qt hiru baimen aukera ezberdinentan dago eskuragarri gure erabiltzaile askotarikoen beharretara egokitzeko.</p><p>Qt gure merkatal baimen itunarekin egokia da jabetza/merkatal software garapenerako, non ez duzun nahi iturburu koderik elkarbanatzerik nahi hirugarrenekin edo bestela ezin duzu GNU LGPL 2.1 bertsioa edo GNU GPL 3.0 bertsioa baldintzak bete.</p><p>Qt baimendurik GNU LGPL 2.1 bertsioarekin egokia da Qt aplikazioen garapenerako (jabetzakoa edo iturburu irekia) eskaintzen dizularik GNU LGPL 2.1 bertsioaren itun eta baldintzak betetzea.</p><p>Qt baimendurik GNU Baimen Publiko Orokorra 3.0 bertsioa egokia da Qt aplikazioak garatzeko non mota honetako aplikazioak GNU GPL 3.0 bertsioa baldintzetan dauden softwarekin elkarturik erabiltzea nahi dituzun edo bestela GNU GPL 3.0 bertsioa ituna betetzea nahi duzun.</p><p>Mesedez ikusi <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> Qt baimenari gainbegiratu bat emateako.</p><p>Copyrighta (C) 2012 Nokia Corporation eta/edo bere ordezkaria (-k).</p><p>Qt Nokia produktu bat da. Ikusi <a href="http://qt.nokia.com/">qt.nokia.com</a> argibide gehiagorako.</p>

Qt is a C++ toolkit for cross-platform application development.

Qt provides single-source portability across MS Windows, Mac OS X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.

Qt is available under three different licensing options designed to accommodate the needs of our various users.

Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.

Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.

Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.

Please see qt.nokia.com/products/licensing for an overview of Qt licensing.

Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).

Qt is a Nokia product. See qt.nokia.com for more information.

 QMessageBoxQt-ri buruzAbout Qt QMessageBoxLaguntzaHelp QMessageBox.Ezkutatu Xehetasunak...Hide Details... QMessageBoxOngiOK QMessageBox.Erakutsi Xehetasunak...Show Details... QMessageBoxHautatu IM Select IMQMultiInputContext@Sarrera metodo anitza aldagailuaMultiple input method switcherQMultiInputContextPlugin(Elkarketa baztertutaConnection refusedQNativeSocketEngine0Elkarketa denboraz kanpoConnection timed outQNativeSocketEngineBDatagrama handiegia da bidaltzekoDatagram was too large to sendQNativeSocketEngine0Hostalaria erdietsiezinaHost unreachableQNativeSocketEngineSare akatsa Network errorQNativeSocketEngine:Sare eragiketa denboraz kanpoNetwork operation timed outQNativeSocketEngine&Sarea erdietsiezinaNetwork unreachableQNativeSocketEngineBaliabide gabeOut of resourcesQNativeSocketEngineBaimena ukatutaPermission deniedQNativeSocketEngineHProtokolo mota ez dago sostengaturikProtocol type not supportedQNativeSocketEngineZProxy mota baliogabea da eragiketa honetarako,The proxy type is invalid for this operationQNativeSocketEngineNHurruneko hostalariak elkarketa itxi du%The remote host closed the connectionQNativeSocketEngine6Ezinezkoa mezu bat jasotzeaUnable to receive a messageQNativeSocketEngine8Ezinezkoa mezu bat bidaltzeaUnable to send a messageQNativeSocketEngine"Ezinezkoa idazteaUnable to writeQNativeSocketEngineAkats ezezaguna Unknown errorQNativeSocketEngine0Akatsa %1 irekitzerakoanError opening %1QNetworkAccessCacheBackend$URI baliogabea: %1Invalid URI: %1QNetworkAccessDataBackendrHurruneko hostalariak goizegi itxi du elkarketa hemen: %13Remote host closed the connection prematurely on %1QNetworkAccessDebugPipeBackendLIdazketa akatsa %1-ra idazterakoan: %2Write error writing to %1: %2QNetworkAccessDebugPipeBackend8Akatsa irekitzerakoan %1: %2Error opening %1: %2QNetworkAccessFileBackend"Sare saio akatsa.Network session error. QNetworkReply8"%1" protokoloa ezezaguna daProtocol "%1" is unknown QNetworkReply(Eragiketa ezeztatutaOperation canceledQNetworkReplyImpl*Itxurapen baliogabea.Invalid configuration.QNetworkSessionPSaioa erabiltzaileak edo sistemak utzita!Session aborted by user or systemQNetworkSessionPrivateImplTSaioa erabiltzaileak edo sistemak utzi du..The session was aborted by the user or system.QNetworkSessionPrivateImplPAdierazitako itxurapena ezin da erabili.+The specified configuration cannot be used.QNetworkSessionPrivateImpl$Akats zehaztugabeaUnidentified ErrorQNetworkSessionPrivateImpl*Saio akats ezezaguna.Unknown session error.QNetworkSessionPrivateImpl@Ezinezkoa eskualdaketa aurkezteaUnable to commit transaction QOCIDriver(Ezinezkoa abiarazteaUnable to initialize QOCIDriver>Ezinezkoa estametua exekutatzeaUnable to execute statement QOCIResult>Ezinezkoa estametu mota lortzeaUnable to get statement type QOCIResult6Ezinezkoa hurrengora joateaUnable to goto next QOCIResult:Ezinezkoa estametua gertatzeaUnable to prepare statement QOCIResult@Ezinezkoa eskualdaketa aurkezteaUnable to commit transaction QODBCDriver.Ezinezkoa elkarketatzeaUnable to connect QODBCDriverBEzinezkoa berez-aurkeztea gaitzeaUnable to enable autocommit QODBCDriver@Ezinezkoa estamentua exekutatzeaUnable to execute statement QODBCResult:Ezinezkoa estametua gertatzeaUnable to prepare statement QODBCResult<Ezinezkoa idazohina irakurtzeaCould not read footerQObjectBEzinezkoa irudi datuak irakurtzeaCould not read image dataQObjectREzinezkoa berrezartzea datuak irakurtzekoCould not reset to read dataQObject0Hostalaria ez da aurkituHost not foundQObjectBIrudi sakontasuna ez da baliozkoaImage depth not validQObjectJIrudi mIdazburu irakurketa hutsegiteaImage mHeader read failedQObject@Irudi mota ez dago sostengaturikImage type not supportedQObjecthBilatu agiria/gailua irudi irakurketarako hutsegitea&Seek file/device for image read failedQObject IzenaNameQPPDOptionsModel BalioaValueQPPDOptionsModel.Ezinezkoa elkarketatzeaUnable to connect QPSQLDriver(Ezinekoa harpidetzeaUnable to subscribe QPSQLDriver6Ezinezkoa harpidetza eteteaUnable to unsubscribe QPSQLDriver2Ezinezkoa eskaera sortzeaUnable to create query QPSQLResult<Ezinezkoa estamentua gertatzeaUnable to prepare statement QPSQLResult Metroehunen (me)Centimeters (cm)QPageSetupWidget FormaFormQPageSetupWidgetGaraiera:Height:QPageSetupWidgetHatzbeteak (hb) Inches (in)QPageSetupWidgetLandargazkia LandscapeQPageSetupWidgetBazterrakMarginsQPageSetupWidget$Metromilaenak (mm)Millimeters (mm)QPageSetupWidgetNorabidea OrientationQPageSetupWidget"Orrialde neurria: Page size:QPageSetupWidget PaperaPaperQPageSetupWidget Paper iturburua: Paper source:QPageSetupWidgetPuntoak (pt) Points (pt)QPageSetupWidgetArgazkiaPortraitQPageSetupWidget8Alderantzizkatu landargazkiaReverse landscapeQPageSetupWidget0Alderantzizkatu argazkiaReverse portraitQPageSetupWidgetZabalera:Width:QPageSetupWidgetbeheko bazterra bottom marginQPageSetupWidgetezker bazterra left marginQPageSetupWidgeteskuin bazterra right marginQPageSetupWidgetgoio bazterra top marginQPageSetupWidget,Plugina ez da gertatu.The plugin was not loaded. QPluginLoaderAkats ezezaguna Unknown error QPluginLoaderT%1 badago jadanik.. Gainidaztea nahi duzu?/%1 already exists. Do you want to overwrite it? QPrintDialogz%1 zuzenbide bat da. Mesedez hautatu agiri izen ezberdin bat.7%1 is a directory. Please choose a different file name. QPrintDialogA&ukerak << &Options << QPrintDialogA&ukerak >> &Options >> QPrintDialog&Irarkitu&Print QPrintDialog><qt>Gainidaztea nahi duzu?</qt>%Do you want to overwrite it? QPrintDialogA0A0 QPrintDialog$A0 (841 x 1189 mm)A0 (841 x 1189 mm) QPrintDialogA1A1 QPrintDialog"A1 (594 x 841 mm)A1 (594 x 841 mm) QPrintDialogA2A2 QPrintDialog"A2 (420 x 594 mm)A2 (420 x 594 mm) QPrintDialogA3A3 QPrintDialog"A3 (297 x 420 mm)A3 (297 x 420 mm) QPrintDialogA4A4 QPrintDialogNA4 (210 x 297 mm, 8,26 x 11,7 hatzbete)%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialogA5A5 QPrintDialog"A5 (148 x 210 mm)A5 (148 x 210 mm) QPrintDialogA6A6 QPrintDialog"A6 (105 x 148 mm)A6 (105 x 148 mm) QPrintDialogA7A7 QPrintDialog A7 (74 x 105 mm)A7 (74 x 105 mm) QPrintDialogA8A8 QPrintDialogA8 (52 x 74 mm)A8 (52 x 74 mm) QPrintDialogA9A9 QPrintDialogA9 (37 x 52 mm)A9 (37 x 52 mm) QPrintDialogB0B0 QPrintDialog&B0 (1000 x 1414 mm)B0 (1000 x 1414 mm) QPrintDialogB1B1 QPrintDialog$B1 (707 x 1000 mm)B1 (707 x 1000 mm) QPrintDialogB10B10 QPrintDialog B10 (31 x 44 mm)B10 (31 x 44 mm) QPrintDialogB2B2 QPrintDialog"B2 (500 x 707 mm)B2 (500 x 707 mm) QPrintDialogB3B3 QPrintDialog"B3 (353 x 500 mm)B3 (353 x 500 mm) QPrintDialogB4B4 QPrintDialog"B4 (250 x 353 mm)B4 (250 x 353 mm) QPrintDialogB5B5 QPrintDialogNB5 (176 x 250 mm, 6,93 x 9,84 hatzbete)%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialogB6B6 QPrintDialog"B6 (125 x 176 mm)B6 (125 x 176 mm) QPrintDialogB7B7 QPrintDialog B7 (88 x 125 mm)B7 (88 x 125 mm) QPrintDialogB8B8 QPrintDialogB8 (62 x 88 mm)B8 (62 x 88 mm) QPrintDialogB9B9 QPrintDialogB9 (44 x 62 mm)B9 (44 x 62 mm) QPrintDialogC5EC5E QPrintDialog$C5E (163 x 229 mm)C5E (163 x 229 mm) QPrintDialogNorbereaCustom QPrintDialogDLEDLE QPrintDialog$DLE (110 x 220 mm)DLE (110 x 220 mm) QPrintDialogExekutiboa Executive QPrintDialogXExekutiboa (7,5 x 10 hatzbete, 191 x 254 mm))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialog%1 agiria ez da idazgarria. Mesedez hautatu agiri izen ezberdin bat.=File %1 is not writable. Please choose a different file name. QPrintDialogDauden agiriak File exists QPrintDialog OrriaFolio QPrintDialog(Orria (210 x 330 mm)Folio (210 x 330 mm) QPrintDialog*Ledger (432 x 279 mm)Ledger (432 x 279 mm) QPrintDialogLegezkoaLegal QPrintDialogTLegezkoa (8,5 x 14 hatzbete, 216 x 356 mm)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialog GutunaLetter QPrintDialogPGutuna (8,5 x 11 hatzbete, 216 x 279 mm)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialogTokiko agiria Local file QPrintDialogOngiOK QPrintDialogIrarkituPrint QPrintDialog&Irarkitu Agirira...Print To File ... QPrintDialogIrarkitu denak Print all QPrintDialog4Irarkitu oraingo orrialdeaPrint current page QPrintDialogIrarketa maila Print range QPrintDialog$Irarkitu hautapenaPrint selection QPrintDialog,Irarkitu Agirira (PDF)Print to File (PDF) QPrintDialog:Irarkitu Agirira (Postscript)Print to File (Postscript) QPrintDialogTabloideaTabloid QPrintDialog0Tabloidea (279 x 432 mm)Tabloid (279 x 432 mm) QPrintDialog,AEB Arrunta #10 GutunaUS Common #10 Envelope QPrintDialogJAEB Arrunta #10 Gutuna (105 x 241 mm)%US Common #10 Envelope (105 x 241 mm) QPrintDialog Idatzi %1 agiria Write %1 file QPrintDialogezezagunaunknown QPrintDialog%1%%1%QPrintPreviewDialogItxiCloseQPrintPreviewDialog Esportatu PDF-ra Export to PDFQPrintPreviewDialog.Esportatu PostScript-raExport to PostScriptQPrintPreviewDialogLehen orrialdea First pageQPrintPreviewDialog"Finkatu orrialdeaFit pageQPrintPreviewDialog Finkatu zabalera Fit widthQPrintPreviewDialogLandargazkia LandscapeQPrintPreviewDialogAzken orrialdea Last pageQPrintPreviewDialog$Hurrengo orrialdea Next pageQPrintPreviewDialog"Orrialde Ezarpena Page SetupQPrintPreviewDialog"Orrialde ezarpena Page setupQPrintPreviewDialogArgazkiaPortraitQPrintPreviewDialog"Aurreko orrialdea Previous pageQPrintPreviewDialogIrarkituPrintQPrintPreviewDialog,Irarketa Aurreikuspena Print PreviewQPrintPreviewDialogLErakutsi orrialde guztien gainikuspenaShow overview of all pagesQPrintPreviewDialog2Erakutsi orrialde bakarraShow single pageQPrintPreviewDialogZooma gehituZoom inQPrintPreviewDialogZooma gutxituZoom outQPrintPreviewDialogAurreratuaAdvancedQPrintPropertiesWidget FormaFormQPrintPropertiesWidgetOrrialdeaPageQPrintPropertiesWidget MargoaColorQPrintSettingsOutputMargo Modua Color ModeQPrintSettingsOutput KopiakCopiesQPrintSettingsOutputKopiak:Copies:QPrintSettingsOutput"Oraingo Orrialdea Current PageQPrintSettingsOutput"Irarketa BikoitzaDuplex PrintingQPrintSettingsOutput FormaFormQPrintSettingsOutput"Urdinabar-neurria GrayscaleQPrintSettingsOutputAlde luzea Long sideQPrintSettingsOutputEzer ezNoneQPrintSettingsOutputAukerakOptionsQPrintSettingsOutput"Irteera EzarpenakOutput SettingsQPrintSettingsOutput Orrialdeen forma Pages fromQPrintSettingsOutputIrarkitu denak Print allQPrintSettingsOutputIrarketa maila Print rangeQPrintSettingsOutputAlderantzizkoaReverseQPrintSettingsOutputHautapena SelectionQPrintSettingsOutputAlde laburra Short sideQPrintSettingsOutputhonatoQPrintSettingsOutput&Izena:&Name: QPrintWidget...... QPrintWidget FormaForm QPrintWidgetKokalekua: Location: QPrintWidget Irteera &Agiria: Output &file: QPrintWidget&Ezaugarriak P&roperties QPrintWidgetAurreikuspenaPreview QPrintWidgetIrarkailuaPrinter QPrintWidget Mota:Type: QPrintWidgetDAkatsa garapenetik irakurtzerakoanError reading from processQProcess<Akatsa garapenera idazterakoanError writing to processQProcess2Ez da programarik zehaztuNo program definedQProcess(Garapena matxuratutaProcess crashedQProcessDProsezu hutsegitea hasterakoan: %1Process failed to start: %1QProcess6Prozesu eragiketa epezkanpoProcess operation timed outQProcessEzeztatuCancelQProgressDialog IrekiOpen QPushButtonHautatuCheck QRadioButton(kategoria baliogabeainvalid categoryQRegExp*ez da akatsik gertatuno error occurredQRegExp>Akatsa datubasea irekitzerakoanError opening databaseQSQLite2Driver6Akatsa datubasea isterakoanError closing database QSQLiteDriver>Akatsa datubasea irakitzerakoanError opening database QSQLiteDriver<Ezineskoa eskukaldaketa hasteaUnable to begin transaction QSQLiteDriver@Ezinezkoa eskualdaketa aurkezteaUnable to commit transaction QSQLiteDriverEskaerarik ezNo query QSQLiteResult@Ezinezkoa estamentua exekutatzeaUnable to execute statement QSQLiteResultBEzinezkoa estamentua berrezartzeaUnable to reset statement QSQLiteResultBaldintza ConditionQScriptBreakpointsModelID-aIDQScriptBreakpointsModel$Ezikusi-zenbatekoa Ignore-countQScriptBreakpointsModelKokalekuaLocationQScriptBreakpointsModelEzabatuDeleteQScriptBreakpointsWidget BerriaNewQScriptBreakpointsWidget*&Bilatu Eskriptean...&Find in Script...QScriptDebugger Garbitu Kontsola Clear ConsoleQScriptDebugger2Garbitu Garbiketa IrteeraClear Debug OutputQScriptDebugger(Garbitu Akats oharraClear Error LogQScriptDebuggerJarraituContinueQScriptDebugger Ktrl+FCtrl+FQScriptDebuggerKrl+F10Ctrl+F10QScriptDebugger Ktrl+GCtrl+GQScriptDebuggerGarbiketaDebugQScriptDebuggerF10F10QScriptDebuggerF11F11QScriptDebuggerF3F3QScriptDebuggerF5F5QScriptDebuggerF9F9QScriptDebugger"Bilatu &Hurrengoa Find &NextQScriptDebugger Bilatu A&urrekoaFind &PreviousQScriptDebuggerJoan Lerrora Go to LineQScriptDebuggerEten InterruptQScriptDebuggerLerroa:Line:QScriptDebuggerEkin Kurtsorera Run to CursorQScriptDebuggerShift+F11 Shift+F11QScriptDebuggerShift+F3Shift+F3QScriptDebuggerShift +F5Shift+F5QScriptDebuggerUrratsa Barruan Step IntoQScriptDebuggerUrratsa KanpoanStep OutQScriptDebuggerUrratsa Gainean Step OverQScriptDebuggerXehe-larriakCase SensitiveQScriptDebuggerCodeFinderWidgetItxiCloseQScriptDebuggerCodeFinderWidgetHurrengoaNextQScriptDebuggerCodeFinderWidgetAurrekoaPreviousQScriptDebuggerCodeFinderWidgetHitz guztiak Whole wordsQScriptDebuggerCodeFinderWidget IzenaNameQScriptDebuggerLocalsModel BalioaValueQScriptDebuggerLocalsModel MailaLevelQScriptDebuggerStackModelHelbideaLocationQScriptDebuggerStackModel IzenaNameQScriptDebuggerStackModel"Ezgaitu gelpuntuaDisable Breakpoint QScriptEditGaitu gelpuntuaEnable Breakpoint QScriptEditKontsolaConsoleQScriptEngineDebugger"Garbiketa Irteera Debug OutputQScriptEngineDebuggerAkats Oharra Error LogQScriptEngineDebugger*Gertaturiko EskriptakLoaded ScriptsQScriptEngineDebuggerTokikoakLocalsQScriptEngineDebugger.Qt Eskript GarbitzaileaQt Script DebuggerQScriptEngineDebuggerBilaketaSearchQScriptEngineDebugger IkusiViewQScriptEngineDebuggerItxiCloseQScriptNewBreakpointWidget BeheaBottom QScrollBarEzker hertza Left edge QScrollBarLerroan behera Line down QScrollBarLerroan goraLine up QScrollBarOrrialde behea Page down QScrollBar Orrialde ezkerra Page left QScrollBar Orrialde eskuina Page right QScrollBarOrrialde goiaPage up QScrollBarKokapenaPosition QScrollBarEskuin hertza Right edge QScrollBar Irriskatu behera Scroll down QScrollBarIrriskatu hemen Scroll here QScrollBar&Irriskatu ezkerrera Scroll left QScrollBar&Irriskatu eskuinera Scroll right QScrollBarIrriskatu gora Scroll up QScrollBarGoiaTop QScrollBar$%1: badago jadanik%1: already exists QSharedMemory%1: izen gaitza %1: bad name QSharedMemory%1: ez dago%1: doesn't exist QSharedMemory%1: ez dago%1: doesn't exists QSharedMemory*%1: neurri baliogabea%1: invalid size QSharedMemory,%1: giltza hutsik dago%1: key is empty QSharedMemory %1: erantsi gabe%1: not attached QSharedMemory$%1: baliabide gabe%1: out of resources QSharedMemory&%1: baimena ukatuta%1: permission denied QSharedMemory:%1: neurri eskaera hutsegitea%1: size query failed QSharedMemory6%1: ezinezkoa giltza egitea%1: unable to make key QSharedMemory6%1: ezinezkoa desblokeatzea%1: unable to unlock QSharedMemory,%1: akats ezezaguna %2%1: unknown error %2 QSharedMemory++ QShortcut(Gehitu Gogokoenetara Add Favorite QShortcutZehaztu DizdiraAdjust Brightness QShortcutAltAlt QShortcut Audio Aldi BideaAudio Cycle Track QShortcutAudioa Aurrera Audio Forward QShortcut0Audio Zorizko IrakurketaAudio Random Play QShortcut Audio Berregitea Audio Repeat QShortcutAudioa Atzera Audio Rewind QShortcutKanpoanAway QShortcut AtzeraBack QShortcutAtzera Azkar Back Forward QShortcutEzabatu Backspace QShortcutTab AtzeraBacktab QShortcutBehe Bultzada Bass Boost QShortcutLodiak Behera Bass Down QShortcutLodiak GoraBass Up QShortcutBateriaBattery QShortcutBluetooth Bluetooth QShortcutLiburuaBook QShortcutBilatzaileaBrowser QShortcutCDCD QShortcutKalkulagailua Calculator QShortcut DeituCall QShortcutKamera Fokua Camera Focus QShortcutKamera GiltzaCamera Shutter QShortcutLarri Blok Caps Lock QShortcutLarriBlokCapsLock QShortcutGarbituClear QShortcut"Garbitu Grabaketa Clear Grab QShortcutItxiClose QShortcutKode sarrera Code input QShortcutHerkidegoa Community QShortcutHitzingurua1Context1 QShortcutHitzingurua2Context2 QShortcutHitzingurua3Context3 QShortcutHitzingurua4Context4 QShortcutKopiatuCopy QShortcutKtrlCtrl QShortcut EbakiCut QShortcutDOSDOS QShortcutEzabDel QShortcutEzabatuDelete QShortcutErakusleihoaDisplay QShortcutAgiriak Documents QShortcut BeheraDown QShortcutShift Eisu Eisu Shift QShortcutAldatu Eisu Eisu toggle QShortcut AteraEject QShortcutAmaieraEnd QShortcut SartuEnter QShortcut IrtenEsc QShortcut IrtenEscape QShortcutF%1F%1 QShortcutGogokoenak Favorites QShortcutFinantzakFinance QShortcutItzulikatuFlip QShortcutAurreraForward QShortcut JolasaGame QShortcutJoanGo QShortcut HangulHangul QShortcutHangul Banja Hangul Banja QShortcutHangul amaiera Hangul End QShortcutHangul Hanja Hangul Hanja QShortcutHangul Jamo Hangul Jamo QShortcutHanjul Jeonja Hangul Jeonja QShortcut Halgul PostHanjaHangul PostHanja QShortcutHangul PreHanjaHangul PreHanja QShortcutHangul Romaja Hangul Romaja QShortcutHangul BereziaHangul Special QShortcutHangul Hasiera Hangul Start QShortcut EskegiHangup QShortcutHankakuHankaku QShortcutLaguntzaHelp QShortcut HenkanHenkan QShortcutNeguratu Hibernate QShortcutHiraganaHiragana QShortcut Hirgana KatakanaHiragana Katakana QShortcutHistoriaHistory QShortcutHasieraHome QShortcutEtxeko Bulegoa Home Office QShortcut"Hasiera Orrialdea Home Page QShortcutLotura Beroak Hot Links QShortcut TxertIns QShortcutTxertatuInsert QShortcutBloketatu Kana Kana Lock QShortcutShift Kana Kana Shift QShortcut KanjiKanji QShortcutKatakanaKatakana QShortcut.Gutxitu Teklatu DizdiraKeyboard Brightness Down QShortcut,Gehitu Teklatu DizdiraKeyboard Brightness Up QShortcut4Teklatu Argia Piztu/ItzaliKeyboard Light On/Off QShortcutTeklatu Menua Keyboard Menu QShortcut*Azken Zenbaki BirdeiaLast Number Redial QShortcutAbiarazi (0) Launch (0) QShortcutAbiarazi (1) Launch (1) QShortcutAbiarazi (2) Launch (2) QShortcutAbiarazi (3) Launch (3) QShortcutAbiarazi (4) Launch (4) QShortcutAbiarazi (5) Launch (5) QShortcutAbiarazi (6) Launch (6) QShortcutAbiarazi (7) Launch (7) QShortcutAbiarazi (8) Launch (8) QShortcutAbiarazi (9) Launch (9) QShortcutAbiarazi (A) Launch (A) QShortcutAbiarazi (B) Launch (B) QShortcutAbiarazi (C) Launch (C) QShortcutAbiarazi (D) Launch (D) QShortcutAbiarazi (E) Launch (E) QShortcutAbiarazi (F) Launch (F) QShortcutAbiarazi Post@ Launch Mail QShortcut&Abiarazi Multimedia Launch Media QShortcut EzkerLeft QShortcutArgiontzia LightBulb QShortcut IrtenLogoff QShortcutPost@ Bidalketa Mail Forward QShortcutMerkatuaMarket QShortcut MassyoMassyo QShortcut(Multimedia Hurrengoa Media Next QShortcut$Multimedia Pausatu Media Pause QShortcut&Multimedia Irakurri Media Play QShortcut&Multimedia AurrekoaMedia Previous QShortcut$Multimedia Grabatu Media Record QShortcut$Multimedia Gelditu Media Stop QShortcut BileraMeeting QShortcut MenuaMenu QShortcutPB MenuaMenu PB QShortcutMezularitza Messenger QShortcutMetaMeta QShortcut8Gutxitu Monitorearen DizdiraMonitor Brightness Down QShortcut6Gehitu Monitorearen DizdiraMonitor Brightness Up QShortcutMuhenkanMuhenkan QShortcutHautagai AnitzMultiple Candidate QShortcut MusikaMusic QShortcutNire GuneakMy Sites QShortcutBerriakNews QShortcutEzNo QShortcutZenb BlokNum Lock QShortcutZenbBlokNumLock QShortcutZenbaki Blokeoa Number Lock QShortcutIreki URL-aOpen URL QShortcut AukeraOption QShortcutOrriald Behera Page Down QShortcutOrriald GoraPage Up QShortcutItsatsiPaste QShortcutPausatuPause QShortcutOrrBeheraPgDown QShortcutOrrGoraPgUp QShortcutUrrutizkinaPhone QShortcutIrudiakPictures QShortcut Itzali Power Off QShortcut"Aurreko HautagaiaPrevious Candidate QShortcutIrarkituPrint QShortcut Irark Ikusleihoa Print Screen QShortcutBerrituRefresh QShortcutBirgertatuReload QShortcutErantzunReply QShortcut SartuReturn QShortcut EskuinRight QShortcut RomajiRomaji QShortcut$Itzulikatu LeihoakRotate Windows QShortcutKB Itzulikapena Rotation KB QShortcutPB Itzulikapena Rotation PB QShortcut GordeSave QShortcut$Ikusleiho babeslea Screensaver QShortcut"Irriskari Blokeoa Scroll Lock QShortcutIrriskBlok ScrollLock QShortcut BilatuSearch QShortcutHautatuSelect QShortcut BidaliSend QShortcut ShiftShift QShortcut DendaShop QShortcutLoSleep QShortcut TarteaSpace QShortcut&Idaz Egiaztatzailea Spellchecker QShortcut$Banandu Ikusleihoa Split Screen QShortcutKalkulo Orria Spreadsheet QShortcutItxarotenStandby QShortcutGeldituStop QShortcutAzpidatziaSubtitle QShortcutSostenguaSupport QShortcutEgoneratuSuspend QShortcutSis-EskabSysReq QShortcut"Sistema EskabideaSystem Request QShortcutTabTab QShortcut Eginkizun Panela Task Panel QShortcutTerminalaTerminal QShortcutDenboraTime QShortcut&Aldatu Deitu/EskegiToggle Call/Hangup QShortcutBAldatu Multimedia Irakurr/PausatuToggle Media Play/Pause QShortcutTresnakTools QShortcutMenua GoianTop Menu QShortcutTourokuTouroku QShortcutBidaiakTravel QShortcutMeheak Behera Treble Down QShortcutMeheak Gora Treble Up QShortcutGoraUp QShortcut BideoaVideo QShortcut IkusiView QShortcutAhots Deia Voice Dial QShortcut Jeitsi Bolumena Volume Down QShortcutMututu Bolumena Volume Mute QShortcutIgo Bolumena Volume Up QShortcutWWWWWW QShortcut EsnatuWake Up QShortcutWeb KameraWebCam QShortcutHarigabeaWireless QShortcut*Idazki ProzesatzaileaWord Processor QShortcutXFerXFer QShortcutBaiYes QShortcutZenkakuZenkaku QShortcutZenkaku HankakuZenkaku Hankaku QShortcutZooma HandituZoom In QShortcutZooma TxikituZoom Out QShortcut iTouchiTouch QShortcut"Orrialdean behera Page downQSlider(Orrialdean ezkerrera Page leftQSlider(Orrialdean eskuinera Page rightQSlider Orraialdean goraPage upQSliderKokapenaPositionQSliderPProxyarekin elkarketatzea goizegi itxita&Connection to proxy closed prematurelyQSocks5SocketEngineHProxyarekin elkarketatzea baztertutaConnection to proxy refusedQSocks5SocketEnginePProxyarekin elkarketatzea denboraz kanpoConnection to proxy timed outQSocks5SocketEngine:Sare eragiketa denboraz kanpoNetwork operation timed outQSocks5SocketEngine6Proxy egiaztapen hutsegiteaProxy authentication failedQSocks5SocketEngine>Proxy egiaztapen hutsegitea: %1Proxy authentication failed: %1QSocks5SocketEngine(Proxya ez da aurkituProxy host not foundQSocks5SocketEngineJSOCKSv5 agindua ez dago sostengaturikSOCKSv5 command not supportedQSocks5SocketEngineTTL iraungituta TTL expiredQSocks5SocketEnginePSOCKSv5 proxy akats ezezaguna kodea 0x%1%Unknown SOCKSv5 proxy error code 0x%1QSocks5SocketEngineEzeztatuCancelQSoftKeyManager EgindaDoneQSoftKeyManager IrtenExitQSoftKeyManagerOngiOKQSoftKeyManagerAukerakOptionsQSoftKeyManagerHautatuSelectQSoftKeyManagerGutxiagoLessQSpinBoxGehiagoMoreQSpinBoxEzeztatuCancelQSql$Ezeztatu edizioak?Cancel your edits?QSqlBaieztatuConfirmQSqlEzabatuDeleteQSql,Grabaketa hau ezabatu?Delete this record?QSqlTxertatuInsertQSqlEzNoQSql Editatuak gorde? Save edits?QSqlEguneratuUpdateQSqlBaiYesQSqlPAkatsa SSL hitzingurua sortzerakoan (%1)Error creating SSL context (%1) QSslSocketBAkatsa SSL saioa sortzerakoan, %1Error creating SSL session, %1 QSslSocketBAkatsa SSL saioa sortzerakoan, %1Error creating SSL session: %1 QSslSocket<Akatsa SSL esmuematerakoan: %1Error during SSL handshake: %1 QSslSocketRAkatsa giltza pribatua gertatzerakoan, %1Error loading private key, %1 QSslSocket2Akats irakurtzerakoan: %1Error while reading: %1 QSslSocketEz dago akatsikNo error QSslSocketDEzinezkoa datuak deskriptatzea: %1Unable to decrypt data: %1 QSslSocket8Ezinezkoa datuak idaztea: %1Unable to write data: %1 QSslSocketAkats ezezaguna Unknown error QSslSocketAkats ezezaguna Unknown error QStateMachine&Aukera baliogabea: Invalid option:  QSymSQLDriver@Ezinezkoa eskualdaketa aurkezteaUnable to commit transaction QSymSQLDriverPAkatsa zutabe zenbatekoa berreskuratzeanError retrieving column count QSymSQLResultFAkatsa zutabe izena berreskuratzeanError retrieving column name QSymSQLResultDAkatsa zutabe mota berreskuratzeanError retrieving column type QSymSQLResult:Estamentua ez dago gertaturikStatement is not prepared QSymSQLResult>Ezinezkoa estametua exekutatzeaUnable to execute statement QSymSQLResultBEzinezkoa estamentua berrezartzeaUnable to reset statement QSymSQLResult^Jadanik beste aho bat dago ataka berean aditzen4Another socket is already listening on the same portQSymbianSocketEngine(Elkarketa baztertutaConnection refusedQSymbianSocketEngine2Elkarketa denboraz kanpoConnection timed outQSymbianSocketEngineBDatagrama handiegia da bidaltzekoDatagram was too large to sendQSymbianSocketEngine0Hostalaria erdietsiezinaHost unreachableQSymbianSocketEngine6Baliogabeko aho azaltzaileaInvalid socket descriptorQSymbianSocketEngineSare akatsa Network errorQSymbianSocketEngine:Sare eragiketa denboraz kanpoNetwork operation timed outQSymbianSocketEngine&Sarea erdietsiezinaNetwork unreachableQSymbianSocketEngine(Eragiketa aho-gabeanOperation on non-socketQSymbianSocketEngine"Baliabiderik gabeOut of resourcesQSymbianSocketEngineBaimena ukatutaPermission deniedQSymbianSocketEngineHProtokolo mota ez dago sostengaturikProtocol type not supportedQSymbianSocketEngineVHelbidea baliogabea da eragiketa honetarako)The address is invalid for this operationQSymbianSocketEngine8Helbidea ez dago eskuragarriThe address is not availableQSymbianSocketEngine.Helbidea babestuta dagoThe address is protectedQSymbianSocketEngineZProxy mota baliogabea da eragiketa honetarako,The proxy type is invalid for this operationQSymbianSocketEngineNHurruneko hostalariak elkarketa itxi du%The remote host closed the connectionQSymbianSocketEngineNAdierazitako sare saioa ez dago irekita+The specified network session is not openedQSymbianSocketEngine6Ezinezkoa mezu bat jasotzeaUnable to receive a messageQSymbianSocketEngine8Ezinezkoa mezu bat bidaltzeaUnable to send a messageQSymbianSocketEngine"Ezinezkoa idazteaUnable to writeQSymbianSocketEngineAkats ezezaguna Unknown errorQSymbianSocketEngine<Sostegatu gabeko aho eragiketaUnsupported socket operationQSymbianSocketEngine$%1: jadanik badago%1: already existsQSystemSemaphore%1: ez dago%1: does not existQSystemSemaphore%1: izen akatsa%1: name errorQSystemSemaphore2%1: baliabideetatik kanpo%1: out of resourcesQSystemSemaphore&%1: baimena ukatuta%1: permission deniedQSystemSemaphore,%1: akats ezezaguna %2%1: unknown error %2QSystemSemaphore:Ezinezkoa elkarketa irekitzeaUnable to open connection QTDSDriver<Ezinezkoa datubasea erabiltzeaUnable to use database QTDSDriver&Irriskatu Ezkerrera Scroll LeftQTabBar&Irriskatu Eskuinera Scroll RightQTabBarPEragiketa socketean ez dago sostengatuta$Operation on socket is not supported QTcpServer&Kopiatu&Copy QTextControl&Itsatsi&Paste QTextControl&Berregin&Redo QTextControl&Desegin&Undo QTextControl0Kopiatu &Lotura HelbideaCopy &Link Location QTextControl &EbakiCu&t QTextControlEzabatuDelete QTextControlHautatu Dena Select All QTextControl IrekiOpen QToolButton SakatuPress QToolButtonPPlataforma honek ez du IPv6 sostengatzen#This platform does not support IPv6 QUdpSocketBerreginRedo QUndoGroupBerregin %1Redo %1 QUndoGroupDeseginUndo QUndoGroupDesegin %1Undo %1 QUndoGroup<hutsik> QUndoModelBerreginRedo QUndoStackBerregin %1Redo %1 QUndoStackDeseginUndo QUndoStackDesegin %1Undo %1 QUndoStack<Txertatu Unicode aginte hizkia Insert Unicode control characterQUnicodeControlCharacterMenuBEZES Eskerretik-eskuinerako markaLRM Left-to-right markQUnicodeControlCharacterMenuBESEZ Eskuinetik-ezkerrerako markaRLM Right-to-left markQUnicodeControlCharacterMenu2Ezinezkoa URL-a erakusteaCannot show URL QWebFrame8Ezinezkoa mimemota erakusteaCannot show mimetype QWebFrameAgiria ez dagoFile does not exist QWebFrameTFrame gertaketa etenda itun aldaketagaitik'Frame load interrupted by policy change QWebFrameRGertaketa multimedia gailuak kudeatzen du&Loading is handled by the media engine QWebFrame,Eskabidea bloketaturikRequest blocked QWebFrame*Eskabidea ezeztaturikRequest canceled QWebFrame*Eskabidea ezeztaturikRequest cancelled QWebFrame %1 (%2x%3 pixel)%1 (%2x%3 pixels)QWebPageH%1 egun %2 ordu %3 minutu %4 segundu&%1 days %2 hours %3 minutes %4 secondsQWebPage8%1 egun %2 minutu %3 segundu%1 hours %2 minutes %3 secondsQWebPage(%1 minutu %2 segundu%1 minutes %2 secondsQWebPage%1 segundu %1 secondsQWebPage%n agiri%n agiri %n file(s)QWebPage Gehitu HiztegiraAdd To DictionaryQWebPage&Lerrokatu Ezkerrean Align LeftQWebPage&Lerrokatu Eskuinean Align RightQWebPageAudio Gaia Audio ElementQWebPagefAudio gai irakurketa aginteak eta egoera erakuspena2Audio element playback controls and status displayQWebPage$Irakurketa hasieraBegin playbackQWebPageLodiBoldQWebPageBeherenBottomQWebPage ErdianCenterQWebPageLEgiaztatu Idazkera EgiaztatzailearekinCheck Grammar With SpellingQWebPage Idaz EgiaztapenaCheck SpellingQWebPage>Egiaztatu idazkera IdazterakoanCheck Spelling While TypingQWebPageHautatu Agiria Choose FileQWebPage0Garbitu bilaketa berriakClear recent searchesQWebPageKopiatuCopyQWebPageKopiatu Audioa Copy AudioQWebPageKopiatu Irudia Copy ImageQWebPage.Kopitatu Irudi HelbideaCopy Image AddressQWebPageKopiatu Lotura Copy LinkQWebPageKopitatu Bideoa Copy VideoQWebPage(Oraingo filma egoeraCurrent movie statusQWebPage*Oraingo filma denboraCurrent movie timeQWebPage EbakiCutQWebPageBerezkoaDefaultQWebPage(Ezabatu hitz amaieraDelete to the end of the wordQWebPage(Ezabatu hitz hasieraDelete to the start of the wordQWebPageXehetasunakDetailsQWebPageNorabidea DirectionQWebPage"Igarotako Denbora Elapsed TimeQWebPage(Sartu Ikusleiho-osoaEnter FullscreenQWebPageHizkiakFontsQWebPage*Ikusleiho-osoa BotoiaFullscreen ButtonQWebPageJoan AtzeraGo BackQWebPageJoan Aurrera Go ForwardQWebPageBEzkutatu Egiaztapena eta IdazkeraHide Spelling and GrammarQWebPageEzikusiIgnoreQWebPageEzikusi Ignore Grammar context menu itemIgnoreQWebPage(Denbora zehaztugabeaIndefinite timeQWebPage0Txertatu Buleta ZerrendaInsert Bulleted ListQWebPage8Txertatu Zenbakidun ZerrendaInsert Numbered ListQWebPage0Txertatu lerro berri batInsert a new lineQWebPage2Txertatu esaldi berri batInsert a new paragraphQWebPage IkertuInspectQWebPage EtzanaItalicQWebPage,JavaScript Alerta - %1JavaScript Alert - %1QWebPage6JavaScript Baieztapena - %1JavaScript Confirm - %1QWebPageBerdindutaJustifyQWebPageEzker hertza Left edgeQWebPage*Ezkerretik Eskuinera Left to RightQWebPage"Zuzeneko IgorpenaLive BroadcastQWebPageGertatzen... Loading...QWebPage$Begiratu HiztegianLook Up In DictionaryQWebPage Ez dago Plug-inaMissing Plug-inQWebPage@Mugitu kurtsorea bloke amaierara'Move the cursor to the end of the blockQWebPage@Mugitu kurtsorea agiri amaierara*Move the cursor to the end of the documentQWebPage@Mugitu kurtsorea lerro amaierara&Move the cursor to the end of the lineQWebPageBMugitu kurtsorea hurrengo lerrora Move the cursor to the next lineQWebPage@Mugitu kurtsorea aurreko lerrora$Move the cursor to the previous lineQWebPage@Mugitu kurtsorea bloke hasierara)Move the cursor to the start of the blockQWebPage@Mugitu kurtsorea agiri hasierara,Move the cursor to the start of the documentQWebPage@Mugitu kurtsorea lerro hasierara(Move the cursor to the start of the lineQWebPage MututuMuteQWebPageMututu Botoia Mute ButtonQWebPage&Mututu audio bideakMute audio tracksQWebPage,Ez da agiririk hautatuNo file selectedQWebPage2Ez dago bilaketa berririkNo recent searchesQWebPageIreki Audioa Open AudioQWebPageIreki Framea Open FrameQWebPageIreki Irudia Open ImageQWebPageIreki Lotura Open LinkQWebPageIreki Bideoa Open VideoQWebPage&Ireki Leiho BerrianOpen in New WindowQWebPageInguruaOutlineQWebPage"Orrialdean behera Page downQWebPage(Orrialdean ezkerrera Page leftQWebPage(Orrialdean eskuinera Page rightQWebPageOrrialdean goraPage upQWebPageItsatsiPasteQWebPagePausatuPauseQWebPagePausatu Botoia Pause ButtonQWebPage$Pausatu irakurketaPause playbackQWebPageIrakurriPlayQWebPageIrakurri Botoia Play ButtonQWebPageJIrakurri filma ikusleiho-osoko moduanPlay movie in full-screen modeQWebPage Bilaketa berriakRecent searchesQWebPage8Berbideratze muga erdietsitaRedirection limit reachedQWebPageBirgertatuReloadQWebPage*Gelditzen den DenboraRemaining TimeQWebPage6Gelditzen den filma denboraRemaining movie timeQWebPage$Kendu formateatzeaRemove formattingQWebPageBerrabiaraziResetQWebPageHItzuli filma jarioa egizko-denborara#Return streaming movie to real-timeQWebPage<Itzuli Egizko-denborara BotoiaReturn to Real-time ButtonQWebPage$Atzerabildu botoia Rewind ButtonQWebPage"Atzerabildu filma Rewind movieQWebPageEskuin hertza Right edgeQWebPage(Eskuinetik Ezkerrera Right to LeftQWebPageGorde Irudia Save ImageQWebPageGorde Lotura... Save Link...QWebPage Irriskatu behera Scroll downQWebPageIrriskatu hemen Scroll hereQWebPage&Irriskatu ezkerrera Scroll leftQWebPage&Irriskatu eskuinera Scroll rightQWebPageIrriskatu gora Scroll upQWebPageBilatu WebeanSearch The WebQWebPage(Bilatu Atzera BotoiaSeek Back ButtonQWebPage*Bilatu Aurrera BotoiaSeek Forward ButtonQWebPage&Bilatu azkar atzeraSeek quickly backQWebPage(Bilatu azkar aurreraSeek quickly forwardQWebPageHautatu Denak Select AllQWebPage*Hautatu bloke amaieraSelect to the end of the blockQWebPage*Hautatu agiri amaiera!Select to the end of the documentQWebPage*Hautatu lerro amaieraSelect to the end of the lineQWebPage.Hautatu hurrengo hizkiaSelect to the next characterQWebPage.Hautatu hurrengo lerroaSelect to the next lineQWebPage,Hautatu hurrengo hitzaSelect to the next wordQWebPage,Hautatu aurreko hizkia Select to the previous characterQWebPage,Hautatu aurreko lerroaSelect to the previous lineQWebPage*Hautatu aurreko hitzaSelect to the previous wordQWebPage*Hautatu bloke hasiera Select to the start of the blockQWebPage*Hautatu agiri hasiera#Select to the start of the documentQWebPage*Hautatu lerro hasieraSelect to the start of the lineQWebPageBErakutsi Egiaztapena eta IdazkeraShow Spelling and GrammarQWebPageIrriskariaSliderQWebPageEgiaztapenaSpellingQWebPage"Egoera ErakuspenaStatus DisplayQWebPageGeldituStopQWebPageAurkeztuSubmitQWebPageAurkeztuQSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPageAzpieskripta SubscriptQWebPageGaineskripta SuperscriptQWebPage Idazki NorabideaText DirectionQWebPagelHau bilaketa aurkibide bat da. Sartu bilaketa hitzak: 3This is a searchable index. Enter search keywords: QWebPageAldatu AginteakToggle ControlsQWebPageAldatu Bigizta Toggle LoopQWebPage GorenTopQWebPageAzpimarratuta UnderlineQWebPageEzezagunaUnknownQWebPage Desmututu Botoia Unmute ButtonQWebPage,Desmututu audio bideakUnmute audio tracksQWebPageBideo Gaia Video ElementQWebPagefBideo gai irakurketa aginteak eta egoera erakuspena2Video element playback controls and status displayQWebPageWeb Ikerlea: %2Web Inspector - %2QWebPageZer da Hau? What's This?QWhatsThisAction**QWidgetA&maitu&FinishQWizard&Laguntza&HelpQWizardHu&rrengoa&NextQWizard&Hurrengoa >&Next >QWizard< &Atzera< &BackQWizardEzeztatuCancelQWizardAurkeztuCommitQWizardJarraituContinueQWizard EgindaDoneQWizardJoan AtzeraGo BackQWizardLaguntzaHelpQWizard%1 - [%2] %1 - [%2] QWorkspace It&xi&Close QWorkspace&Mugitu&Move QWorkspace&Lehenaratu&Restore QWorkspace&Neurria&Size QWorkspaceItxiClose QWorkspace&Handiengotu Ma&ximize QWorkspaceT&xikiengotu Mi&nimize QWorkspaceTxikiengotuMinimize QWorkspace"Leheneratu Behera Restore Down QWorkspaceEduki &Gainean Stay on &Top QWorkspaceNakatsa gertatu da edukia aztertzerakoan$error occurred while parsing contentQXmldakatsa gertatu da agiri mota adiera aztertzerakoan5error occurred while parsing document type definitionQXmlJakatsa gertatu da gaia aztertzerakoan$error occurred while parsing elementQXmlVakatsa gertatu da xehetasuna aztertzerakoan&error occurred while parsing referenceQXmlHizen baliogabea agindua prozesatzeko'invalid name for processing instructionQXmlHagiri mota azalpen bat baino gehiago&more than one document type definitionQXml*ez da akatsik gertatuno error occurredQXml"ustekabeko hizkiaunexpected characterQXmlR%1 akatasa %2-n, %3 lerroa %4 zutabea: %5)Error %1 in %2, at line %3, column %4: %5QXmlPatternistCLI$%1 akatsa %2-n: %3Error %1 in %2: %3QXmlPatternistCLI"Helbide ezezagunaUnknown locationQXmlPatternistCLIJKontuz %1-n, %2 lerroa %3 zutabea: %4(Warning in %1, at line %2, column %3: %4QXmlPatternistCLIKontuz %1-n: %2Warning in %1: %2QXmlPatternistCLI>Eduki oker kodeatua aurkitu da.(Encountered incorrectly encoded content. QXmlStreamItxarondakoa  Expected  QXmlStream0Itxarondako hizki datua.Expected character data. QXmlStream*XML hizki baliogabea.Invalid XML character. QXmlStream(XML izen baliogabea.Invalid XML name. QXmlStream:XML bertsio katea baliogabea.Invalid XML version string. QXmlStream6Hizki xehetasun baliogabea.Invalid character reference. QXmlStream"Agiri baliogabea.Invalid document. QXmlStreamUstekabekoa ' Unexpected ' QXmlStream:XML bertsio sostengatu gabea.Unsupported XML version. QXmlStream GaiakItems QmlJSDebugger::LiveSelectionTool 0,125x0.125xQmlJSDebugger::QmlToolBar0,1x0.1xQmlJSDebugger::QmlToolBar 0,25x0.25xQmlJSDebugger::QmlToolBar0,5x0.5xQmlJSDebugger::QmlToolBar1x1xQmlJSDebugger::QmlToolBar2Ezarri Aldaketak AgiriariApply Changes to DocumentQmlJSDebugger::QmlToolBar@Ezarri Aldaketa QML IkusgailuariApply Changes to QML ViewerQmlJSDebugger::QmlToolBar$Margo Hautatzailea Color PickerQmlJSDebugger::QmlToolBarIkerle ModuaInspector ModeQmlJSDebugger::QmlToolBar6Irakurri/Pausatu AnimazioakPlay/Pause AnimationsQmlJSDebugger::QmlToolBarHautatuSelectQmlJSDebugger::QmlToolBar$Hautatu (Markatua)Select (Marquee)QmlJSDebugger::QmlToolBarTresnakToolsQmlJSDebugger::QmlToolBar ZoomaZoomQmlJSDebugger::QmlToolBarKopiatu Margoa Copy ColorQmlJSDebugger::ToolBarColorBoxZooma HandituZoom InQmlJSDebugger::ZoomToolZooma TxikituZoom OutQmlJSDebugger::ZoomToolZooma %&100 Zoom to &100%QmlJSDebugger::ZoomTool%1 is an unsupported encoding. QtXmlPatterns hutsikempty QtXmlPatternsbat edo gehiago one or more QtXmlPatterns huts edo gehiago zero or more QtXmlPatternshuts edo bat zero or one QtXmlPatternsqupzilla-1.6.0/bin/locale/qt_fa.qm000066400000000000000000010450341226107126500170300ustar00rootroot00000000000000eeįHįI yt v~*T^^*$;YQHt\3!njvS$^8&S.(2(4(4:(4"(5z(5**yD*y9'*yE*T `*0Rp*0}+FH*+F+L+f0+fv+z[e+E4+9+FS+z[+15+++ +H++įEj+į9+įF+[4rz77:9;=@}BjH|C:joF0iZFn4vFn4w+GlH/Hw9CHw9HjI'IYIMJ+EJ+MJ6F>J6\J6J6J6HJ6KJ6J6ۧJ6:J6J6}Jcb J&KQjKAL (LZL.L]Lb5M5 MbMeZMM~0N NBhO|\xPFEHPFEJ?PFE!Q sQvR R|*R̼:R;SNS8^NTNT Tʴ,DT@U?^U|,U}iV1V1cVl9=VV-Vm0V^VVEWVZWGWT4WTWTX~X9XBXpX˙XYYKYY6Z+ZgZk^ZZ[;^0[=[f3\\]4f\]4!\\\\atgcWlGrUNt>oe|^k |A"c2vvMԱIf)CMdW^4L5.C6CdIAAQȾ[|y?3g&I -,5$7É'yXtD{jD% ELRnɵn`ɵn%ɵn+ɵn@ɵn_ɵnɵn%ɵn:u\S BeT5**'ݜb=nM1UlN%asq.OpT%۔ zLx>mRHXk4B'8,'5<p5ew#QC%UTh(Ŏn)9}*4-ct]-ctB.t723d5va?2u?N@E@VB!^FRcMnNkycUi]W~]?o`bJ`jtdlglyz1l}dIoi^vty^vty-.hN|$1hl~%"6n26*9&4).{ t/6n6G6tSR^ D9RFRT=`9~.DsYEEsJs{I=n8A4τgNnAfۓ"<[yLQt@)A`nUwJ~&bDZ]mHMGM:E EnwBw)bg6ej^h I; ڎ"?#P" 4U !eO&)B*/e*2A+|+N,+,N/86m;c@?4/ByqEc"F_IQ.K~ NjړOZfH-\S~\c"=\7`Gb&bcփfg&4jC3mnq*qwtu!>u(5{>}ka$}R>~yEV(_,y:>NK",$ȩ$_ +x(u ,.]Cʁru^K-L֊\mG*>@S%Aހ. nCk,'.`hfrqVc;yω aрO;-J$I'.rA+qCns nx7^0m4H³=T&H'G&e,n./&0/4rhI4!55>8wx6?#BM1CIxSZ6JWxKPL)M}nOSR.PR>XE%nlYM *YM^GdKufHh^KiPnnn0r?sscazs9w x/^2 f"%:Nwۊ\Gat_;TTNXy]v]V4& I3ICIDIII%~I' I1(ZV[QPIYNiy"^I.>zuDuDpDYo~,.,:,c,,',GV]*>аY rNG>VP|._>тq.iɘe˓n05$:- 458HfR7fRG>*w<2U#_9NHN&Q~cNfRSPqVNV\9fR7|1T].(.Y  ^ Qd GK^tcF".%$bT9 lB"os$G$ȷ%CK&~&)23l)+,535T88;_<?"B?>ug?%pFuKNDK-{jMcN>cO>RaU5fV|]%]+eӇg^ }ky^H.{yw?}Jiz5to5toF:_LΞap88 5OG% rnnnsصǥ+-+&D`]znt1g{yiw|Q; / IxA Hr9\sKWϾ(6Nj%Y::N{LC-Mda+u5 UXüN }C^Yƨ/Kƨ(˾+ҝz7لQ)i,է?'؊=؊=5Z>Si}Wz4ܓ7Yܳ&ߺflt-E롥3`+!F~>Nnmw^!DD ٦  _$F~bY~b o9qM2@tޢ `(!)%?-'~'(()ўI+u+3ˇ,8$/=/G/1-4~x6 8<;? 2A?B>NDoEFgG hGEGbHU@TLAUDuM~jOrPѧGQRCnSnfT=U1U/OUh.UT#XYĻZ,`ZZZZZ[H[]k*]$^n_P_p`ud`d`§e8.i`ikQYm?$oNxy;A{{&F}u }w}w#}wl}hsq|p~(z~Q~~ly!0mr'PMp~vz~~A~nBvtMtcYd".R.^3PiU>9hum`k5DY(rLk=yz"Umdo)TeܱBdh^w)5 2e,%w V;^#ض?ʍ ) p!l'+),Dj/x2C3f42}65@<567D9 ::%T?;!CU]\tCUD!E[WGf!INJ0J>K:KrQ~ҠU|V7:1W<\\D]D]]/tare n?g*.Kg8wldn86nWp&_q]t:qw%y'z5S|(^s|jU|}wZJ}$}$}$l~9^E4Dϗ1úZk~ yVNogEDL>f{w]c9vNq`L6in=u-n<K<f+XE.ͮ ·]··B'ýPƕ׳:N;:nT~ n//lfC`upn>-n>2e ntUC7LE 5vHȥNtvުUONju3%5TX2 e~F#i~1Wćb4i9%xy7wVb!#p#%% %d'sY-..75kEǒ=`"=D=C?;??@J@To)CtIEf<NP P;QsA;V%V%;XU $Z4`aw`bD*bG3f[fdQtfDgA@hI i$gknw31x1 z*20|1|QRw{dpJUc։(. zc.4wC5Pc^vQ&_orzXYm ^Zew#nB<b†5|~igCJq~Uʴ5H[ʴ5ʶJ{(ϡ$9Uы#5gD^ "ӞԄ۔#D'N|dAzF5HF5IYp!+>4Nl&DI6IxAs3> d }$F qe ڤbx ڥ d$ EC E ־ Ac; Ace  n * 35m< 6  WMN `B bw bbI b` b`tZ d@ gU= i3O kk7 la_ lf lf okU qv qv qz tN}{ u@ xq} |oY ~ |i P n" 1  Jq  t;1 t 1x .1 N .  zo  )- F> |   P le] ST dy #/ fJ B ҉ 4  > 6 U% kR i . , C n>  N SQ 9> V}4 ! u" W Y+M Y>t 0: KF KF @ 팤y E l~l %'J: MN / j || /* C = qH  D g } 9 o Ą Ŀ 0  $_ )` */ .>? 5p 74 7u. ;5 Z  jK2 $NU 5 IR IX I:  ;?  9 E 9 f j. Kx I$- !j 'I K J $^Q $5 g %pU ,09 , =2 V  $ | N4(X tY nr o `N Sd! n- R pA zB B v ȯ'l t $ l pCX zD ˔ }p PR@ PN  e ~t0 .u 68B >> ? v"< :[3 f 2 f 5 p 4(7  . d $ s5^ s ~af AA 9 1k 9G 05/ r# 7 m,>x 5 ݡY !/ #-tk ' 0NWV 5 5\4 A) CU & E9;u Ie= LXp LR L Mc\ OB P..i- Rn S*$ V.c W Z  \Ot] ]$a `T c f)2 f) f=L io> jn l#e lue m`K n|nd w: xRˎ yr {n }Q ~L >R v  H0 H U Դ n' С{ $x .@ LW A i. <J( ^ vh F :F G v- < % J5 J 9 ; u* t. kE+ ӇFj  M DA N>4 /: ̺ 9NMF & o N[ -D .8q xw ۷ r9k k kt L U) O T> Z <I _  B 0 i t up $rE  ~ z+k(     \ I= &? 9N % 7 N   A>[ Lr sX U{ xH K ? I߶ "   !pr $ %6be )Ε .Z 2 7F( =ю >P >P > > >/ >8 >n > >? >A ?t|Op A^_/ B~ DT- Fn) G# IY J>T L Mb> P@5 QTX RV RV RV Rnq S.'. SGts S T~ Y: YKw [L \ # eNU hۮ j7o& m(4 pZ sL u v d B,h  T` TA, T TQ L - c"   u & /.8 ,# ,+ S" )dl' T>' R^M K .aX .&[ .B . .s .ʜ .Ͱ . $ >r9 ɬ . air P yI  i e.7 x+ CR '' N   hNN ɾd!B ɾd# e ̈́^k >g ҂w Ӵ ءN ߢ. | >5^ %f@ ue tf K  |  b B[ Xt nS 9S )t t ǵ a,i  .Q l :b> Uq [ 2 ʜYF f} f; f $V >ݷ 5  % $  nh #$~ #=t %n '.J (I$ (N" +>[ +kľ 0E; 64 ;ɾF Cnj Fgp! K9q Lc PtJ Pt R"yn S, T>W `KQg c dB1 fe fe` g \ g' hQ$) iFC3 i i jN jK jӮ[ kGn l"} m9[ m9L n s'~, u u u+ v  v& v{  wa wm wl; w} w} w}l{ yn[( |[ V o u  ] <L J" b ! | ^_ %s{ a 3 $ }7E RN{ %7@k P~ ry xN "B U< ɰe F  X8 bL` Y &P x0g D9 J + $q t5IY t5 D | ? >f J Z ).<  J$TRx;ކw>Y @aTT[t'6*&<)hncgTU6 !aR&-N*R*+/ES/Eg4Qt 7SIEaI.8I_KN|OO=_S5XRuMoX9Zoq[ [ a.a.+a%ygc .i nnyGqsW%v6+v<*vɅ?y$y?.ytHqn~%>{eT=4u}NN4^'94P=6 y~S/N ^5Y0Ǘkh͢:.7Z5DBQNi 5mL3Ӯ`g~Ӯ`Ӯ`Aum֒y  r:ݖmUƷP[y4_^orFjfjآ ~  .PT 49 GlDCnO%T"#v$U>"%4%49'n*,-:f-vJ0i)0 o1cg2wT.DKF74. GRH=Jd JK#L$.uW~-[{%\c5c5r^cg3iC]iTlqpqiiv)yCL{`=|{~a6$bY5,xV&q^&sD$t{8\`nXQY[ >`,pv)Zn<ͣ-4t3>b[QNCx* Ew"~gdLrTWrEk-1>ky ֠'U"6'T*e44Lnh>vBDP>At2X@E~ɧdUOi(3*F (1G Close Tab CloseButton.7' *BD(! Fake error ! FakeReplyURL F'E9*(1 Invalid URL FakeReply/1('1G %1About %1MAC_APPLICATION_MENU E.A 1/F %1Hide %1MAC_APPLICATION_MENUE.A 1/F (BG Hide OthersMAC_APPLICATION_MENU*1,G'*...Preferences...MAC_APPLICATION_MENU'*E'E %1Quit %1MAC_APPLICATION_MENU ./E'*ServicesMAC_APPLICATION_MENUFE'4 GEGShow AllMAC_APPLICATION_MENUB'(D* /3*13 AccessibilityPhonon::'1*('7'* CommunicationPhonon::('2 G'GamesPhonon:: EH3BMusicPhonon::'9D'F'* NotificationsPhonon:: H/HVideoPhonon::<html>3H& 1/F (G /3*'G ~.4 5H*<b>%1</b><br/>G 'E'F'* (4*1 /'1/ ' (G 7H1 E.5H5 (1' 'F FH9 ,1'F ~1(F/ 4/G '3*</html>Switching to the audio playback device %1
which has higher preference or is specifically configured for this stream.Phonon::AudioOutput<html>3H& 1/F (G /3*'G ~.4 5H* <b>%1</b><br/>G *'2G /1 /3*13 B1'1 1A*G '3* H 'E'F'* (4*1 /'1/.</html>xSwitching to the audio playback device %1
which just became available and has higher preference.Phonon::AudioOutput<html>/3*'G ~.4 5H* <b>%1</b> '1 FE F/.<br/>('24* (G <b>%2</b>.</html>^The audio playback device %1 does not work.
Falling back to %2.Phonon::AudioOutput8('24* /H('1G (G /3*'G '%1'Revert back to device '%1'Phonon::AudioOutputG4/'1: (G F81 E 13/ 4E' 'A2HFG G' ~'G GStreamer 1' F5( F1/G '/. *E'E ~4*('F G' 5H* H *5H1 :1A9'D 4/G 'F/~Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabledPhonon::Gstreamer::BackendG4/'1: (G F81 E 13/ 4E' (3*GT gstreamer0.10-plugins-good 1' F5( F1/G '/. (96 '2 H G' H/H :1A9'D 4/G 'F/.Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled.Phonon::Gstreamer::Backend1E24' EH1/ F'2 'A* F4/. 4E' E ('3* 1E2 4' 0D 1' (1' ',1' 'F E6EHF F5( F/: %0`A required codec is missing. You need to install the following codec(s) to play this content: %0Phonon::Gstreamer::MediaObjectFE *H'F ~.4 1' 41H9 1/. H69* F5( GStreamer .H/ 1' (113 F/ H '7EF'F -'5D FE'/ G libgstreamer-plugins-base 1' F5( 1/G '/.wCannot start playback. Check your GStreamer installation and make sure you have libgstreamer-plugins-base installed.Phonon::Gstreamer::MediaObjectJFE *H'F EF(9 13'FG 1' 1E24' 1/.Could not decode media source.Phonon::Gstreamer::MediaObjectNFE *H'F E-D EF(9 13'FG ' 1' ~/' 1/.Could not locate media source.Phonon::Gstreamer::MediaObjectFE *H'F /3*'G 5H* 1' ('2 1/. /3*'G GE 'FHF /1 -'D '3*A'/G '3*.:Could not open audio device. The device is already in use.Phonon::Gstreamer::MediaObject@FE *H'F EF(9 13'FG 1' ('2 1/.Could not open media source.Phonon::Gstreamer::MediaObject"FH9 EF(9 F'E9*(1.Invalid source type.Phonon::Gstreamer::MediaObject4'31~* E / 'A* F4/.&Missing codec helper script assistant.Phonon::Gstreamer::MediaObjectTF5( F'EHAB 'A2HFG //1 (1' // 1/F: %0.Plugin codec installation failed for codec: %0Phonon::Gstreamer::MediaObject/3*13 1/ 4/ Access denied Phonon::MMF '2 B(D EH,H/ '3*Already exists Phonon::MMF.1H, 5/' Audio Output Phonon::MMFR',2' 5H* ' *5H1 FE *H'FF/ ',1' 4HF/-Audio or video components could not be played Phonon::MMF.7' .1H, 5/'Audio output error Phonon::MMF9/E 'E'F '*5'DCould not connect Phonon::MMF.7' DRM DRM error Phonon::MMF.7' 1E24' Decoder error Phonon::MMF'*5'D B79 4/ Disconnected Phonon::MMF/1 -'D '3*A'/GIn use Phonon::MMF"~GF' ('F/ F''AInsufficient bandwidth Phonon::MMFURL F'E9*(1 Invalid URL Phonon::MMF~1H*D F'E9*(1Invalid protocol Phonon::MMF,.7' B'D( (F/ F/'FGMulticast error Phonon::MMF$.7' '*5'D (G 4(GNetwork communication error Phonon::MMF&4(G EH,H/ FE ('4/Network unavailable Phonon::MMF .7' H,H/ F/'1/No error Phonon::MMF~/' F4/ Not found Phonon::MMF"E'/G F3* Not ready Phonon::MMF~4*('F F4/G Not supported Phonon::MMF.'1, '2 -'A8G Out of memory Phonon::MMF 3112Overflow Phonon::MMFE31 ~/' F4/Path not found Phonon::MMF$','2G /3*13 1/ 4/Permission denied Phonon::MMF..7' 31H3 /GF/G ~1H3Proxy server error Phonon::MMFH31H3 /GF/G ~1H3 ~4*('F F4/G '3*Proxy server not supported Phonon::MMF'.7'1 31H1 Server alert Phonon::MMF6,1'F /G ~4*('F F4/G '3*Streaming not supported Phonon::MMF /3*'G .1H, 5/'The audio output device Phonon::MMF A1H12 Underflow Phonon::MMF$.7' F'4F'.*G (%1)Unknown error (%1) Phonon::MMF .7' .1H, *5H1Video output error Phonon::MMF.7' /'FDH/Download error Phonon::MMF::AbstractMediaPlayer".7' ('2 1/F URLError opening URL Phonon::MMF::AbstractMediaPlayer(.7' ('2 1/F ~1HF/GError opening file Phonon::MMF::AbstractMediaPlayer$.7' ('2 1/F EF(9Error opening resource Phonon::MMF::AbstractMediaPlayer@.7' ('2 1/F EF(9: EF(9 ('2 F4/)Error opening source: resource not opened Phonon::MMF::AbstractMediaPlayer2('10'1 FE'GF 'F,'E F4/Loading clip failed Phonon::MMF::AbstractMediaPlayer(9/E "E'/ (1' ',1'Not ready to play Phonon::MMF::AbstractMediaPlayer~.4 'ED 4/Playback complete Phonon::MMF::AbstractMediaPlayer.*F8E -,E 5/' 'F,'E F4/Setting volume failed Phonon::MMF::AbstractMediaPlayer*('2'( F'EHAB EHB9*Getting position failed Phonon::MMF::AbstractVideoPlayer,('2 1/F F'EHAB FE'GFOpening clip failed Phonon::MMF::AbstractVideoPlayer*HBA F'EHAB Pause failed Phonon::MMF::AbstractVideoPlayerD:24 F'EHAB Seek failed Phonon::MMF::AbstractVideoPlayer %1 Hz%1 HzPhonon::MMF::AudioEqualizer*('2'( F'EHAB EHB9*Getting position failedPhonon::MMF::AudioPlayer .7' FE'4 H/HVideo display errorPhonon::MMF::DsaVideoPlayerA9'D 4/EnabledPhonon::MMF::EffectFactory(69A 4/F F3(* HF (j)Decay HF ratio (%) Phonon::MMF::EnvironmentalReverb82E'F 'G4 'A*F (ED +'FG)Decay time (ms) Phonon::MMF::EnvironmentalReverb*1'E (j) Density (%) Phonon::MMF::EnvironmentalReverbFAH0 (j) Diffusion (%) Phonon::MMF::EnvironmentalReverb8*#.1 ('2*'( G' (ED +'FG)Reflections delay (ms) Phonon::MMF::EnvironmentalReverb.37- ('2*'( G' (ED (D)Reflections level (mB) Phonon::MMF::EnvironmentalReverb0*#.1 'F9'3(ED +'FG)Reverb delay (ms) Phonon::MMF::EnvironmentalReverb(37- 'F9'3 (ED (D)Reverb level (mB) Phonon::MMF::EnvironmentalReverb37- HF A6' Room HF level Phonon::MMF::EnvironmentalReverb"37- A6' (ED (D)Room level (mB) Phonon::MMF::EnvironmentalReverbf.7' ('2 1/F EF(9: FE *H'F FH9 13'FG 1' *9F 1/8Error opening source: media type could not be determinedPhonon::MMF::MediaObjectL.7' ('2 1/F EF(9: EF(9 A41/G 4/G '3*,Error opening source: resource is compressedPhonon::MMF::MediaObjectH.7' ('2 1/F EF(9: EF(9 F'E9*(1 '3*(Error opening source: resource not validPhonon::MMF::MediaObjectJ.7' ('2 1/F EF(9: FH9 ~4*('F F4/G(Error opening source: type not supportedPhonon::MMF::MediaObjectJFE *H'F IAP /1.H'3* 4/G 1' *F8E 1/Failed to set requested IAPPhonon::MMF::MediaObject37- (%) Level (%)Phonon::MMF::StereoWidening .7' FE'4 H/HVideo display errorPhonon::MMF::SurfaceVideoPlayerE'*MutedPhonon::VolumeSlider'F D:2F/G 1' (1' *F8E 5/' '3*A'/G F/. 3E* ~ *1F -'D* % 3E* 1'3* *1F -'D* %1%WUse this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1%Phonon::VolumeSlider-,E 5/':%1% Volume: %1%Phonon::VolumeSlider"%1 %2 *91A F4/G%1, %2 not definedQ3Accel&'(G'E %1 (171A F4/GAmbiguous %1 not handledQ3Accel-0ADelete Q3DataTable F'/13*False Q3DataTable/1,Insert Q3DataTable/13*True Q3DataTable(G 1H213'FUpdate Q3DataTablef%1 ~1HF/G ~/' F4/ E31 H F'E ~1HF/G 1' (113 F/.+%1 File not found. Check path and filename. Q3FileDialog&-0A&Delete Q3FileDialog&FG&No Q3FileDialog &*#/&OK Q3FileDialog&('21/F&Open Q3FileDialog&*:1 F'E&Rename Q3FileDialog &0.1G&Save Q3FileDialog.&E1*( F4/G &Unsorted Q3FileDialog&(DG&Yes Q3FileDialogn<qt>"' E7E&F G3*/ G E .H'G/ -0A F/ %1 "%2"?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialog$*E'E ~1HF/G G' (*) All Files (*) Q3FileDialog(*E'E ~1HF/G G' (*.*)All Files (*.*) Q3FileDialogH G' Attributes Q3FileDialog9B(Back Q3FileDialogD:HCancel Q3FileDialog4~ (' ,'(G ,'  ~1HF/GCopy or Move a File Q3FileDialog','/ ~H4G ,//Create New Folder Q3FileDialog *'1.Date Q3FileDialog -0A %1 Delete %1 Q3FileDialogFE'4 ,2&'* Detail View Q3FileDialogE31Dir Q3FileDialog~H4G G' Directories Q3FileDialog ~H4G: Directory: Q3FileDialog.7'Error Q3FileDialog ~1HF/GFile Q3FileDialog&F'E ~1HF/G: File &name: Q3FileDialog&FH9 ~1HF/G: File &type: Q3FileDialog~/' 1/F ~H4GFind Directory Q3FileDialog:1 B'(D /3*13 Inaccessible Q3FileDialogFE'4 3'GG List View Q3FileDialog,3*,H &/1: Look &in: Q3FileDialogF'EName Q3FileDialog~H4GT ,// New Folder Q3FileDialog~H4GT ,// %1 New Folder %1 Q3FileDialog~H4GT ,//  New Folder 1 Q3FileDialog ~H4G ('D'*1One directory up Q3FileDialog('2 1/FOpen Q3FileDialog('21/FOpen  Q3FileDialog*E4'G/G E-*H'* ~1HF/GPreview File Contents Q3FileDialog*E4'G/G '7D'9'* ~1HF/GPreview File Info Q3FileDialog('10'1 &E,//R&eload Q3FileDialogAB7-.H'F/F Read-only Q3FileDialog.H'F/F-FH4*F Read-write Q3FileDialog.H'F/F: %1Read: %1 Q3FileDialog0.1G (G 9FH'FSave As Q3FileDialog'F*.'(  ~H4GSelect a Directory Q3FileDialog,FE'4 ~1HF/G G' E&.AShow &hidden files Q3FileDialog-,ESize Q3FileDialogE1*( 3'2Sort Q3FileDialog.E1*( 3'2 (1 -3( &*'1. Sort by &Date Q3FileDialog*E1*( 3'2 (1 -3( &F'E Sort by &Name Q3FileDialog0E1*( 3'2 (1 -3( &'F/'2G Sort by &Size Q3FileDialogHGSpecial Q3FileDialog&DF 3E(D (G ~H4GSymlink to Directory Q3FileDialog&DF 3E(D (G A'DSymlink to File Q3FileDialogDF 3E(D .'5Symlink to Special Q3FileDialogFH9Type Q3FileDialogAB7-FH4*F Write-only Q3FileDialogFH4*F: %1 Write: %1 Q3FileDialog~H4G the directory Q3FileDialog ~1HF/Gthe file Q3FileDialogDF 3E(D the symlink Q3FileDialog:FE *H'F ~H4G %1 1' ','/ 1/Could not create directory %1 Q3LocalFs&FE *H'F ('2 1/ %1Could not open %1 Q3LocalFs2FE *H'F ~H4G %1 1' .H'F/Could not read directory %1 Q3LocalFsJFE *H'F ~H4G ' ~1HF/G %1 1' ~' 1/%Could not remove file or directory %1 Q3LocalFsFFE *H'F %1 1' (G %2 *:1 F'E /'/Could not rename %1 to %2 Q3LocalFs&FE *H'F /1 %1 FH4*Could not write %1 Q3LocalFs3A'14 1/F... Customize... Q3MainWindow(G .7 4/FLine up Q3MainWindow49ED'* *H37 '1(1 E*HBA 4/Operation stopped by the userQ3NetworkProtocolD:HCancelQ3ProgressDialog'9E'D.1/FApply Q3TabDialogD:HCancel Q3TabDialog~4 A16 G'Defaults Q3TabDialogEHelp Q3TabDialog *#/OK Q3TabDialog&~&Copy Q3TextEdit&3('F/F&Paste Q3TextEdit&('2'F,'E&Redo Q3TextEdit&.F+ 3'2&Undo Q3TextEdit~' 1/FClear Q3TextEdit&(14Cu&t Q3TextEdit'F*.'( GEG Select All Q3TextEdit(3*FClose Q3TitleBar ~F,1G 1' E (F//Closes the window Q3TitleBarH-'H /3*H1'* (1' /3*'1 ~F,1G '3**Contains commands to manipulate the window Q3TitleBar~F'E ~F,1G 1' FE'4 E /G/ H -'H F*1D G' (1' /3*'1 "F '3*FDisplays the name of the window and contains controls to manipulate it Q3TitleBar2~F,1G 1' *E'E 5A-G E F/Makes the window full screen Q3TitleBar(21 1/FMaximize Q3TitleBarH 1/FMinimize Q3TitleBar>~F,1G 1' (G .'1, '2 E31 E (1/Moves the window out of the way Q3TitleBarZ~F,1GT (21 4/G 1' (G 'F/'2G 9'/ (1E 1/'F/&Puts a maximized window back to normal Q3TitleBarX~F,1G H 4/G 1' (G 'F/'2G 9'/ (1E 1/'F/&Puts a minimized window back to normal Q3TitleBar ('2'( (G ~'F Restore down Q3TitleBar('2'( (G ('D' Restore up Q3TitleBar 33*ESystem Q3TitleBar(4*1...More... Q3ToolBar(F'4F'.*G) (unknown) Q3UrlOperator~1H*D %1 ~ ' 'F*B'D ~1HF/G G' ' ~H4G G' 1' ~4*('F FE F/IThe protocol `%1' does not support copying or moving files or directories Q3UrlOperatorp~1H*D %1 ','/ 1/F ~H4G G' ,// 1' ~4*('F FE F/;The protocol `%1' does not support creating new directories Q3UrlOperator^~1H*D %1 1A*F ~1HF/G G' 1' ~4*('F FE F/0The protocol `%1' does not support getting files Q3UrlOperatorh~1H*D %1 3'GG (1/'1 ~H4G G' 1' ~4*('F FE F/6The protocol `%1' does not support listing directories Q3UrlOperatord~1H*D %1 +(* 1/F ~1HF/G G' 1' ~4*('F FE F/0The protocol `%1' does not support putting files Q3UrlOperatorz~1H*D %1 ~' 1/F ~1HF/G G' ' ~H4G G' 1' ~4*('F FE F/@The protocol `%1' does not support removing files or directories Q3UrlOperator|~1H*D %1 *:1 F'E ~1HF/G G' ' ~H4G G' 1' ~4*('F FE F/@The protocol `%1' does not support renaming files or directories Q3UrlOperator:~1H*D %1 ~4*('F F4/G '3*"The protocol `%1' is not supported Q3UrlOperator&D:H&CancelQ3Wizard ~''&F&FinishQ3Wizard&E&HelpQ3Wizard(9&/ >&Next >Q3Wizard < &9B(< &BackQ3Wizard"'*5'D ~01A*G F4/Connection refusedQAbstractSocket ~''F 2E'F '*5'DConnection timed outQAbstractSocketE2('F 'A* F4/Host not foundQAbstractSocket$4(G /1 /3*13 F3*Network unreachableQAbstractSocket@9ED'* 1H 3H* ~4*('F FE 4H/$Operation on socket is not supportedQAbstractSocket3H* E*5D F3*Socket is not connectedQAbstractSocket,~''F 2E'F 9ED'* 3H*Socket operation timed outQAbstractSocket'F*.'( &GEG &Select AllQAbstractSpinBox&'A2'4&Step upQAbstractSpinBox &'G4 Step &downQAbstractSpinBoxA4'1 /'/FPressQAccessibleButtonA9'D 3'2Activate QApplication@~F,1G '5D (1F'EG 1' A9'D E F/#Activates the program's main window QApplicationb(1F'EGT %1F'2EF/ H* %2 '3* H* %3 'A* 4/.,Executable '%1' requires Qt %2, found Qt %3. QApplication6.7' *'(.'FG F'3'2'1 H*Incompatible Qt Library Error QApplicationRTLQT_LAYOUT_DIRECTION QApplication&D:H&Cancel QAxSelect4! &COM: COM &Object: QAxSelect *#/OK QAxSelect('F*.'( F*1D ActiveXSelect ActiveX Control QAxSelect 'F*.'(Check QCheckBox6'EFToggle QCheckBox9/E 'F*.'(Uncheck QCheckBox2&'A2H/F (G 1F G' 3A'14&Add to Custom Colors QColorDialog1F& G' ~'G &Basic colors QColorDialog1F G' &3A'14&Custom colors QColorDialog &3(2:&Green: QColorDialog &B1E2:&Red: QColorDialog'4('&9:&Sat: QColorDialogE&B/'1:&Val: QColorDialog&'F'D "DA':A&lpha channel: QColorDialog &"(:Bl&ue: QColorDialog &4/*:Hu&e: QColorDialog'F*.'( 1F Select Color QColorDialog(3*FClose QComboBox F'/13*False QComboBox('2 1/FOpen QComboBox/13*True QComboBox(%1: '2 B(D H,H/ /'1/%1: already existsQCoreApplication%1: H,H/ F/'1/%1: does not existQCoreApplication&%1: 9/E EHAB* ftok%1: ftok failedQCoreApplication %1: D/ *G '3*%1: key is emptyQCoreApplication"%1: .'1, '2 EF'(9%1: out of resourcesQCoreApplication%1:','2G 1/ 4/%1: permission deniedQCoreApplication6%1: FE *H'F D/ ','/ 1/%1: unable to make keyQCoreApplication(%1: .7' F'4F'.*G %2%1: unknown error %2QCoreApplication8FE *H'F *1'F4 1' '13'D 1/Unable to commit transaction QDB2Driver2FE *H'F '*5'D (1B1'1 1/Unable to connect QDB2Driver8FE *H'F *1'F4 1' ('21/'F/Unable to rollback transaction QDB2DriverFFE *H'F '13'D .H/'1 1' (1B1'1 1/Unable to set autocommit QDB2Driver4FE *H'F E*:1 1' EB/ 1/Unable to bind variable QDB2Result4FE *H'F 9('1* 1' ',1' 1/Unable to execute statement QDB2ResultBFE *H'F 'HDF 1H1/ 1' H'4 1/Unable to fetch first QDB2Result@FE *H'F 1H1/ (9/ 1' H'4 1/Unable to fetch next QDB2Result<FE *H'F 1H1/ %1 1' H'4 1/Unable to fetch record %1 QDB2Result6FE *H'F 9('1* 1' "E'/G 1/Unable to prepare statement QDB2ResultB 8AM QDateTimeEdit( 8PM QDateTimeEditB 8am QDateTimeEdit( 8pm QDateTimeEdit:Animation  D'3 'F*2'9 '3*Animation is an abstract classQDeclarativeAbstractAnimationVFE *H'F H F'EH,H/ %1 1' E*-1 3'2 1/)Cannot animate non-existent property "%1"QDeclarativeAbstractAnimationTFE *H'F H AB7 .H'F/F %1 1' E*-1 1/&Cannot animate read-only property "%1"QDeclarativeAbstractAnimationTFE *H'F E/* 2E'F E*1 '2 5A1 1' B1'1 /'/Cannot set a duration of < 0QDeclarativeAnchorAnimation*G 'G .7 E(F' FE *H'F/ /1 '*5'D'* ('D'  A H 9EH/-E12 '3*A'/G 4H/.SBaseline anchor cannot be used in conjunction with top, bottom, or vcenter anchors.QDeclarativeAnchorsbFE *H'F  'D 'AB 1' (G  'D 9EH/ *G /'/.3Cannot anchor a horizontal edge to a vertical edge.QDeclarativeAnchorsbFE *H'F  'D 9EH/ 1' (G  'D 'AB *G /'/.3Cannot anchor a vertical edge to a horizontal edge.QDeclarativeAnchorsJFE *H'F  "*E 1' (G .H/4 *G /'/.Cannot anchor item to self.QDeclarativeAnchorsHFE *H'F (G  "*E *G DF1 'F/'.*.Cannot anchor to a null item.QDeclarativeAnchorsjFE *H'F (G "*E G H'D/ ' GE FH9 F3* DF1 'F/'.*.8Cannot anchor to an item that isn't a parent or sibling.QDeclarativeAnchorsdFE *H'F *G 'G ~  1'3* H 'AB-E12 E9F 1/.0Cannot specify left, right, and hcenter anchors.QDeclarativeAnchorsdFE *H'F *G 'G ('D' A H 9EH/-E12 E9F 1/.0Cannot specify top, bottom, and vcenter anchors.QDeclarativeAnchorsh-DBGT '-*E'D *G 'G /1 E12-/'.D *4.5 /'/G 4/.*Possible anchor loop detected on centerIn.QDeclarativeAnchorsZ-DBGT '-*E'D *G 'G /1 ~1 *4.5 /'/G 4/.&Possible anchor loop detected on fill.QDeclarativeAnchorsp-DBGT '-*E'D *G 'G /1 *G 'G 'AB *4.5 /'/G 4/.3Possible anchor loop detected on horizontal anchor.QDeclarativeAnchorsZ1G EEFGT E-E 1/F 1H -'D* 9EH/ 1A*G 4/.1Possible anchor loop detected on vertical anchor.QDeclarativeAnchorsPQt (/HF ~4*('F '2 QMovie 3'.*G 4/G '3*'Qt was built without support for QMovieQDeclarativeAnimatedImage8Application  D'3 E,1/ '3* Application is an abstract classQDeclarativeApplicationpFE *H'F 'FE4F 1' G (G 1A*'1 '.*5'5 'A*G *:1 /'/.3Cannot change the animation assigned to a Behavior.QDeclarativeBehaviorX-DBGT EB/3'2 (1' H %1 *4.5 /'/G 4/'Binding loop detected for property "%1"QDeclarativeBindingX-DBGT EB/3'2 (1' H "%1" *4.5 /'/G 4/'Binding loop detected for property "%1"QDeclarativeCompiledBindings>%1 FE *H'F/ 1H %2 9ED F/"%1" cannot operate on "%2"QDeclarativeCompiler^%1.%2 (' *H,G (G F3.G 'E~HFF* /1 /3*13 F3*.5"%1.%2" is not available due to component versioning.QDeclarativeCompilerF%1.%2 /1 %3 %4.%5 EH,H/ FE ('4/.%"%1.%2" is not available in %3 %4.%5.QDeclarativeCompilerTH F'E E3*9'1 '2 -/H/ E,'2 *,'H2 E F/#Alias property exceeds alias boundsQDeclarativeCompilerlH G' '*5'D /'/G 4/G FE *H'FF/ 'F,' '3*A'/G 4HF/'Attached properties cannot be used hereQDeclarativeCompilerNAB7  B/ 1' E *H'F (G 4! '.*5'5 /'/$Can only assign one binding to listsQDeclarativeCompiler~FE *H'F  EB/'1 1' (G 7H1 E3*BE (G  H 1HG '.*5'5 /'/4Cannot assign a value directly to a grouped propertyQDeclarativeCompilerFE *H'F  EB/'1 1' (G  3F'D '.*5'5 /'/ ( '31~* (1' ',1' EH1/ F'2 '3*)@Cannot assign a value to a signal (expecting a script to be run)QDeclarativeCompilernFE *H'F EB'/1 E6'9A 1' (G  H '31~* '.*5'5 /'/2Cannot assign multiple values to a script propertyQDeclarativeCompilerfFE *H'F EB'/1 F/'FG 1' (G H 'FG F3(* /'/4Cannot assign multiple values to a singular propertyQDeclarativeCompiler>FE *H'F (G D3* 4! '.*5'5 /'/Cannot assign object to listQDeclarativeCompilerFFE *H'F 4! (G  H '.*5'5 /'/ Cannot assign object to propertyQDeclarativeCompilerTFE *H'F 'FH'9 'HDG 1' (G D3* '.*5'5 /'/!Cannot assign primitives to listsQDeclarativeCompilerVFE *H'F (G H ~4 A16 F'EH,H/ *.55 /'/.Cannot assign to non-existent default propertyQDeclarativeCompilerlFE *H'F H %1 1' (G 2 G H,H/ F/'1/ *.55 /'/+Cannot assign to non-existent property "%1"QDeclarativeCompilerLFE *H'F E4.5G .'D 'E~HFF* ','/ 1/+Cannot create empty component specificationQDeclarativeCompiler>FE *H'F H FINAL 1' D:H 1/Cannot override FINAL propertyQDeclarativeCompiler9F'51 'E~HFF* FE *H'FF/ /1(1/'1F/G H G' (G :1 '2 4F'3G ('4F/;Component elements may not contain properties other than idQDeclarativeCompiler^'4'! 'E~HFF* FE *H'FF/ *H'(9 ,// *91A F/./Component objects cannot declare new functions.QDeclarativeCompilerh'4'! 'E~HFF* FE *H'FF/ H G' ,// '9D'F FF/.0Component objects cannot declare new properties.QDeclarativeCompilerj'4'! 'E~HFF* FE *H'FF/ 3F'D G' ,// '9D'F FF/.-Component objects cannot declare new signals.QDeclarativeCompiler(H ~4 A16 *1'1Duplicate default propertyQDeclarativeCompilerF'E *1'1 E*/Duplicate method nameQDeclarativeCompiler'3E H E6'9ADuplicate property nameQDeclarativeCompilerF'E * F/'FGDuplicate signal nameQDeclarativeCompiler*9F51 B'(D ','/ F3*.Element is not creatable.QDeclarativeCompiler *.55 .'D HEmpty property assignmentQDeclarativeCompiler"*.55 .'D 3F'DEmpty signal assignmentQDeclarativeCompilerh4F'3G (G 7H1 :1E,'2 H JavaScript 1' ~H44 E /G/-ID illegally masks global JavaScript propertyQDeclarativeCompilerb4F'3G G' FE *H'FF/ (' -1HA 'DA(' (21 41H9 4HF/)IDs cannot start with an uppercase letterQDeclarativeCompilerl4F'3G G' AB7 E *H'FF/ 4'ED -1A  9// H .7 21F ('4F/7IDs must contain only letters, numbers, and underscoresQDeclarativeCompilerZ4F'3G G' ('/ ('  -1A ' .7 21F 41H9 4HF/*IDs must start with a letter or underscoreQDeclarativeCompilerF'E :1E,'2 E*/Illegal method nameQDeclarativeCompiler"F'E :1E,'2 HIllegal property nameQDeclarativeCompiler$F'E :1E,'2 3F'DIllegal signal nameQDeclarativeCompiler2*9F F'/13* *.55 3F'D'Incorrectly specified signal assignmentQDeclarativeCompiler.E'F F'E9*(1 F'E E3*9'1Invalid alias locationQDeclarativeCompiler'1,'9 F'E9*(1 '3E E3*9'1. '1,'9 F'E E3*9'1 ('/ (G 4D <4F'3G>, <4F'3G>.<H> ' <id>.<EB/'1 H>.<H> E4.5 4H/zInvalid alias reference. An alias reference must be specified as , . or ..QDeclarativeCompilerfE1,9 F'E9*(1 F'E E3*9'1. F'*H'F /1 'A*F 4F'3G %1/Invalid alias reference. Unable to find id "%1"QDeclarativeCompiler@*.55 F'E9*(1 4! '*5'D /'/G 4/G"Invalid attached object assignmentQDeclarativeCompiler6E4.5G F'E9*(1 (/FG 'E~HFF*$Invalid component body specificationQDeclarativeCompiler8E4.5G F'E9*(1 4F'3G 'E~HFF*"Invalid component id specificationQDeclarativeCompiler$4F'3G .'D F'E9*(1Invalid empty IDQDeclarativeCompiler:/3*13 F'E9*(1 (G H 1HGInvalid grouped property accessQDeclarativeCompiler^*.55 F'E9*(1 H: %1 H AB7 .H'F/F '3*9Invalid property assignment: "%1" is a read-only propertyQDeclarativeCompiler\*.55 F'E9*(1 H: 3D vector EH1/ 'F*8'1 '3*/Invalid property assignment: 3D vector expectedQDeclarativeCompilerX*.55 F'E9*(1 H: boolean EH1/ 'F*8'1 '3*-Invalid property assignment: boolean expectedQDeclarativeCompilerT*.55 F'E9*(1 H: color EH1/ 'F*8'1 '3*+Invalid property assignment: color expectedQDeclarativeCompilerR*.55 F'E9*(1 H: date EH1/ 'F*8'1 '3**Invalid property assignment: date expectedQDeclarativeCompilerb*.55 F'E9*(1 H: FH9 datetime EH1/ 'F*8'1 '3*.Invalid property assignment: datetime expectedQDeclarativeCompilerX*.55 F'E9*(1 H: FH9 int EH1/ 'F*8'1 '3*)Invalid property assignment: int expectedQDeclarativeCompilerV*.55 F'E9*(1 H: number EH1/ 'F*8'1 '3*,Invalid property assignment: number expectedQDeclarativeCompilerT*.55 F'E9*(1 H: point EH1/ 'F*8'1 '3*+Invalid property assignment: point expectedQDeclarativeCompilerR*.55 F'E9*(1 H: rect EH1/ 'F*8'1 '3**Invalid property assignment: rect expectedQDeclarativeCompilerZ'.*5'5 F'E9*(1 H: '31~* EH1/ 'F*8'1 '3*,Invalid property assignment: script expectedQDeclarativeCompilerR*.55 F'E9*(1 H: size EH1/ 'F*8'1 '3**Invalid property assignment: size expectedQDeclarativeCompilerR*.55 F'E9*(1 H: 14*G EH1/ 'F*8'1 '3*,Invalid property assignment: string expectedQDeclarativeCompilerZ*.55 F'E9*(1 H: FH9 time EH1/ 'F*8'1 '3**Invalid property assignment: time expectedQDeclarativeCompilerF*.55 F'E9*(1 H: 4E'14 F'4F'.*G0Invalid property assignment: unknown enumerationQDeclarativeCompilerj*.55 F'E9*(1 H: FH9 unsigned int EH1/ 'F*8'1 '3*2Invalid property assignment: unsigned int expectedQDeclarativeCompilerV*.55 F'E9*(1 H: FH9 ~4*('F F4/G %12Invalid property assignment: unsupported type "%1"QDeclarativeCompilerP*.55 F'E9*(1 H: url EH1/ 'F*8'1 '3*)Invalid property assignment: url expectedQDeclarativeCompiler.*H/1*H :1 E,'2 HInvalid property nestingQDeclarativeCompiler"FH9 F'E9*(1 HInvalid property typeQDeclarativeCompiler0'3*A'/G F'E9*(1 '2 HInvalid property useQDeclarativeCompiler<'3*A'/G F'E9*(1 '2 H 4F'3GInvalid use of id propertyQDeclarativeCompiler:'3*A'/GT F'E9*(1 '2 A6' F'EInvalid use of namespaceQDeclarativeCompilerh'3'E E*/G' FE *H'FF/ (' -1HA 'DA(' (21 41H9 4HF/3Method names cannot begin with an upper case letterQDeclarativeCompiler@E'F F'E E3*9'1 H H,H/ F/'1/No property alias locationQDeclarativeCompiler44! '*5'D /'/G 4/G F'EH,H/Non-existent attached objectQDeclarativeCompiler0F'E  H H'(3*G F3*Not an attached property nameQDeclarativeCompiler8'.*5'5 H EH1/ 'F*8'1 '3*Property assignment expectedQDeclarativeCompilerR'2 B(D (G H  EB/'1 '.*5'5 'A*G '3**Property has already been assigned a valueQDeclarativeCompilerh'3'E H FE *H'FF/ (' -1HA 'DA(' (21 41H9 4HF/5Property names cannot begin with an upper case letterQDeclarativeCompiler8EB/'1 H F/ ('1 *9F 4/!Property value set multiple timesQDeclarativeCompilerp'3'E 3F'D G' FE *H'FF/ (' -1HA 'DA(' (21 41H9 4HF/3Signal names cannot begin with an upper case letterQDeclarativeCompiler@'.*5'5 H * EH1/ 'F*8'1 '3*#Single property assignment expectedQDeclarativeCompiler*'.*5'5 :1 EF*81G 4!Unexpected object assignmentQDeclarativeCompiler4F'3G *' F3*id is not uniqueQDeclarativeCompiler URL .'D F'E9*(1Invalid empty URLQDeclarativeComponent>createObject: EB/'1  4! F3*$createObject: value is not an objectQDeclarativeComponentNFE *H'F (G H F'EH,H/ %1 F3(* /'/+Cannot assign to non-existent property "%1"QDeclarativeConnectionsB'*5'D'*: '4'! *H/1*H E,'2 F3*F/'Connections: nested objects not allowedQDeclarativeConnections@'*5'D'*: '31~* EH1/ 'F*8'1 '3*Connections: script expectedQDeclarativeConnections$'*5'D'*: .7' F-HConnections: syntax errorQDeclarativeConnections$*1'F4 AB7 .H'F/FRead-only TransactionQDeclarativeEngine"*1'F4 F'EHAB SQLSQL transaction failedQDeclarativeEngine>SQL: 9/E *7'(B F3.G ~''G /'/GSQL: database version mismatchQDeclarativeEngineZ9/E *7'(B F3.G: EH1/ 'F*8'1: %1 ~/' 4/G: %2'Version mismatch: expected %1, found %2QDeclarativeEngine`executeSql .'1, '2 transaction() 5/' 2/G 4/G '3*'executeSql called outside transaction()QDeclarativeEngine2*1'F4: callback 'A* F4/transaction: missing callbackQDeclarativeEngine>back  H  ('1 FH4*F '3*back is a write-once propertyQDeclarativeFlipable@front  H  ('1 FH4*F '3*front is a write-once propertyQDeclarativeFlipable:%1: FF ~H4G ' H,H/ F/'1/"%1": no such directoryQDeclarativeImportDatabase*- %1  A6' F'E F3*- %1 is not a namespaceQDeclarativeImportDatabase6- A6' F'E *H/1*H E,'2 F3*- nested namespaces not allowedQDeclarativeImportDatabaseB9/E *7'(B -'D* F'E ~1HF/G (' %2 File name case mismatch for "%2"QDeclarativeImportDatabaseFE *H'F E'HD %1 1' ('10'1 1/: EH1/ F'E ~1HF/G (' %2 *7'(B F/'1/9cannot load module "%1": File name case mismatch for "%2"QDeclarativeImportDatabaseR/1 %1 G qmldir H A6' F'E H,H/ F/'1/*import "%1" has no qmldir and no namespaceQDeclarativeImportDatabase8E(GE '3*. /1 %1 H %2 ~/' 4/#is ambiguous. Found in %1 and in %2QDeclarativeImportDatabaseZE(GE '3*. /1 %1 /1 F3.G %2 %3 H %4 %5 ~/' 4/4is ambiguous. Found in %1 in version %2.%3 and %4.%5QDeclarativeImportDatabase:(G 5H1* ('24* E91A 4/G '3*is instantiated recursivelyQDeclarativeImportDatabase FH9 F3* is not a typeQDeclarativeImportDatabase~H4G E-Dlocal directoryQDeclarativeImportDatabaseN*91A %2 E'HD %1 B'(D .H'F/F F3*(module "%1" definition "%2" not readableQDeclarativeImportDatabase.E'HD %1 F5( F4/G '3*module "%1" is not installedQDeclarativeImportDatabase@'A2HFG %2 E'HD %1 ~/' F4/!module "%1" plugin "%2" not foundQDeclarativeImportDatabaseDE'HD %1 F3.G %2 %3 F5( F4/G '3**module "%1" version %2.%3 is not installedQDeclarativeImportDatabaseb'A2HFG FE *H'F/ (1' E'HD %1 ('10'1 4H/: %2+plugin cannot be loaded for module "%1": %2QDeclarativeImportDatabasenKeyNavigation AB7 '2 71B H G' 6EEG 4/G EH,H/ '3*7KeyNavigation is only available via attached properties!QDeclarativeKeyNavigationAttacheddD/G' AB7 '2 71B H G' H'(3*G /1 /3*13 G3*F/.Keys is only available via attached propertiesQDeclarativeKeysAttachedtH 6EEG 4/G LayoutDirection *FG' (' Item G' '1 E F/7LayoutDirection attached property only works with Items#QDeclarativeLayoutMirroringAttachedvLayoutMirroring *FG' (G GE1'G H G' 6EEG 4/G EH,H/ '3*9LayoutMirroring is only available via attached properties#QDeclarativeLayoutMirroringAttachedfListElement: FE *H'F/ /1(1/'1F/G 9F'51 *H/1*H ('4/+ListElement: cannot contain nested elementsQDeclarativeListModelrListElement: FE *H'F/ '2 H 121H 4/G id '3*A'/G F/.ListElement: cannot use reserved "id" propertyQDeclarativeListModelzListElement: FE *H'F '2 '31~* (1' H EB/'1 '3*A'/G 1/1ListElement: cannot use script for property valueQDeclarativeListModelLListElement: H %1 *91A F4/G '3*"ListModel: undefined property '%1'QDeclarativeListModel4append: EB/'1   4 F3*append: value is not an objectQDeclarativeListModelBinsert: 4'.5 %1 .'1, '2 /'EFG '3*insert: index %1 out of rangeQDeclarativeListModel4insert: EB/'1   4 F3*insert: value is not an objectQDeclarativeListModel&move: .'1, '2 /'EFGmove: out of rangeQDeclarativeListModelBremove: 4'.5 %1 .'1, '2 /'EFG '3*remove: index %1 out of rangeQDeclarativeListModel<set: 4'.5 %1 .'1, '2 /'EFG '3*set: index %1 out of rangeQDeclarativeListModel.set: EB/'1   4 F3*set: value is not an objectQDeclarativeListModelh('1FF/G ('1 1/F 9F'51 :1(51 1' ~4*('F FE F/.4Loader does not support loading non-visual elements.QDeclarativeLoaderRFE *H'F 8'G1 1' *-* *(/D ~/G -A8 1/5Unable to preserve appearance under complex transformQDeclarativeParentAnimation\FE *H'F 8'G1 1' *-* EB'3 :1 FH'.* -A8 1/5Unable to preserve appearance under non-uniform scaleQDeclarativeParentAnimationLFE *H'F 8'G1 1' *-* EB'3 5A1 -A8 1/.Unable to preserve appearance under scale of 0QDeclarativeParentAnimationRFE *H'F 8'G1 1' *-* *(/D ~/G -A8 1/5Unable to preserve appearance under complex transformQDeclarativeParentChange\FE *H'F 8'G1 1' *-* EB'3 :1 FH'.* -A8 1/5Unable to preserve appearance under non-uniform scaleQDeclarativeParentChangeLFE *H'F 8'G1 1' *-* EB'3 5A1 -A8 1/.Unable to preserve appearance under scale of 0QDeclarativeParentChange.FH9 ~'1'E*1 EH1/ 'F*8'1Expected parameter typeQDeclarativeParser*FH9 H EH1/ 'F*8'1Expected property typeQDeclarativeParser,F4'FG EH1/ 'F*8'1 %1Expected token `%1'QDeclarativeParser&F'E FH9 EH1/ 'F*8'1Expected type nameQDeclarativeParser>4F'3G FE *H'F/ (' 9// 41H9 4H/,Identifier cannot start with numeric literalQDeclarativeParserFH3G :1E,'2Illegal characterQDeclarativeParser(/F('DG A1'1 :1 E,'2Illegal escape sequenceQDeclarativeParser<*1( :1E,'2 (1' '9/'/ FE'%Illegal syntax for exponential numberQDeclarativeParser6/F('DG A1'1 HF / :1E,'2Illegal unicode escape sequenceQDeclarativeParser@4F'3G F'E9*(1 *H5A FF/G importInvalid import qualifier IDQDeclarativeParser8*:1/GF/G :1E,'2 FH9 HInvalid property type modifierQDeclarativeParser:~1E :1 E,'2 9('1* EF8E %0$Invalid regular expression flag '%0'QDeclarativeParserH'9D'F JavaScript .'1, '2 9F51 Script-JavaScript declaration outside Script elementQDeclarativeParserHH'1/ 1/F *'(.'FG  F3.G F'2 /'1/!Library import requires a versionQDeclarativeParser8EB/'1 H F/ ('1 *9F 4/!Property value set multiple timesQDeclarativeParserBAB7 .H'F/F GFH2 ~4*('F FE 4H/Readonly not yet supportedQDeclarativeParserF'E 121H 4/G Qt FE *H'F/ (G 9FH'F *H5A FF/G EH1/ '3*A'/G B1'1 1/1Reserved name "Qt" cannot be used as an qualifierQDeclarativeParserZ*H5A FF/G H'1/ 1/F '31~* ('/ *' ('4/.(Script import qualifiers must be unique.QDeclarativeParserTH'1/ 1/F '31~*  *H5A FF/G F'2 /'1/"Script import requires a qualifierQDeclarativeParser.7' F-H Syntax errorQDeclarativeParser8*H6- (3*G F4/G /1 'F*G' .7Unclosed comment at end of fileQDeclarativeParser614*G (3*G F4/G /1 'F*G' .7Unclosed string at end of lineQDeclarativeParser<*:1/GF/G :1EF*81G FH9 H!Unexpected property type modifierQDeclarativeParser*F4'FG :1 EF*81G %1Unexpected token `%1'QDeclarativeParserP/F('DG backslash ~''F F'A*G 9('1* EF8E2Unterminated regular expression backslash sequenceQDeclarativeParser8D'3 9('1* EF8E ~''F F'A*G%Unterminated regular expression classQDeclarativeParser.9('1* EF8E ~''F F'A*G'Unterminated regular expression literalQDeclarativeParserRFE *H'F E/* 2E'F 1' E*1 '2 5A1 B1'1 /'/Cannot set a duration of < 0QDeclarativePauseAnimation(FE *H'F ('2 1/: %1Cannot open: %1QDeclarativePixmap*.7' 1E24': %1: %2Error decoding: %1: %2QDeclarativePixmapN('2'( F'EHAB *5H1 '2 31H3 /GF/G: %1%Failed to get image from provider: %1QDeclarativePixmapRFE *H'F E/* 2E'F 1' E*1 '2 5A1 B1'1 /'/Cannot set a duration of < 0QDeclarativePropertyAnimationRFE *H'F (G H F'EH,H/ %1 '.*5'5 /'/+Cannot assign to non-existent property "%1"QDeclarativePropertyChangesZFE *H'F (G H AB7 .H'F/F %1 '.*5'5 /'/(Cannot assign to read-only property "%1"QDeclarativePropertyChanges~propertyChanges ','/ '4'! state-specific 1' ~4*('F FE F/.APropertyChanges does not support creating state-specific objects.QDeclarativePropertyChangesHFE *H'F FE'F/G F4'F1 1' E91A 1/%Could not instantiate cursor delegateQDeclarativeTextInputNFE *H'F FE'F/G F4'F1 1' ('10'1 1/Could not load cursor delegateQDeclarativeTextInput %1 %2%1 %2QDeclarativeTypeLoader\A6' F'E %1 FE *H'F/ (G 9FH'F FH9 '3*A'/G 4H/%Namespace %1 cannot be used as a typeQDeclarativeTypeLoader0'31~* %1 /1 /3*13 F3*Script %1 unavailableQDeclarativeTypeLoader(FH9 %1 /1 /3*13 F3*Type %1 unavailableQDeclarativeTypeLoader`FE *H'F  4! 1' (G H 3F'D %1 '.*5'5 /'/-Cannot assign an object to signal property %1QDeclarativeVMEZFE *H'F 4! 1' (G H interface '.*5'5 /'/*Cannot assign object to interface propertyQDeclarativeVMEDFE *H'F 4! 1' (G D3* '.*5'5 /'/Cannot assign object to listQDeclarativeVMEd.FE *H'F 4! FH9 %1 1' (/HF E*/ ~4 A16 *9F 1/3Cannot assign object type %1 with no default methodQDeclarativeVMEVFE *H'F EB/'1 %1 1' (G H %2 '.*5'5 /'/%Cannot assign value %1 to property %2QDeclarativeVMEpFE *H'F 3F'D/'3D'* F' EF'3( %1 / %2 1' (G GE E*5D 1/0Cannot connect mismatched signal/slot %1 %vs. %2QDeclarativeVMEhFE *H'F H G' 1' 1H %1 *F8E 1/ HF G *G '3*)Cannot set properties on %1 as it is nullQDeclarativeVME:FE *H'F 4! H'(3*G ','/ 1/ Unable to create attached objectQDeclarativeVME@FE *H'F 4! FH9 %1 1' ','/ 1/"Unable to create object of type %1QDeclarativeVMED,2! FE'F/G ('/  FH9 "*E ('4/.%Delegate component must be Item type.QDeclarativeVisualDataModelZQt (/HF ~4*('F '2 xmlpatterns 3'.*G 4/G '3*,Qt was built without support for xmlpatternsQDeclarativeXmlListModelT .~13 H,H XmlRole F('/ (' / 41H9 4H/(An XmlRole query must not start with '/'QDeclarativeXmlListModelRolel ~13 H ,H XmlListModel ('/ (' / ' // 41H9 4H/1An XmlListModel query must start with '/' or "//"QDeclarativeXmlRoleListD'3 QDialQDialQDial/3*G D:2F/G SliderHandleQDial319* 3F, SpeedoMeterQDial'F,'E 4/DoneQDialog'F 3* What's This?QDialog&D:H&CancelQDialogButtonBox &(3*F&CloseQDialogButtonBox&FG&NoQDialogButtonBox &*#/&OKQDialogButtonBox &0.1G&SaveQDialogButtonBox&(DG&YesQDialogButtonBoxD:H 1/FAbortQDialogButtonBox'9E'D 1/FApplyQDialogButtonBoxD:HCancelQDialogButtonBox(3*FCloseQDialogButtonBox(3*F (/HF 0.1GClose without SavingQDialogButtonBox/H1'F/'.*FDiscardQDialogButtonBox0.1G FF Don't SaveQDialogButtonBoxEHelpQDialogButtonBoxF'//G 1A*FIgnoreQDialogButtonBoxF&G (1' GEG N&o to AllQDialogButtonBox *#/OKQDialogButtonBox('2 1/FOpenQDialogButtonBox('2*F8EResetQDialogButtonBox&('2F4'F ~4 A16 G'Restore DefaultsQDialogButtonBox*D'4 /H('1GRetryQDialogButtonBox 0.1GSaveQDialogButtonBox0.1G GEGSave AllQDialogButtonBox&(DG (1' GEG Yes to &AllQDialogButtonBox*'1. *:1 Date Modified QDirModelFH9Kind QDirModelF'EName QDirModel-,ESize QDirModelFH9Type QDirModel(3*FClose QDockWidget+'(*Dock QDockWidget 4F'H1Float QDockWidgetE*1LessQDoubleSpinBox (4*1MoreQDoubleSpinBox &*#/&OK QErrorMessage<'F ~:'E 1' &/H('1G FE'4 (/G&Show this message again QErrorMessage$~:'E '4'D 2/':Debug Message: QErrorMessage.7' EGD: Fatal Error: QErrorMessage G4/'1:Warning: QErrorMessageBFE *H'F %1 1' (1' .1H, ('2 1/Cannot create %1 for outputQFileJFE *H'F %1 1' (G 9FH'F H1H/ ('2 1/Cannot open %1 for inputQFile6FE *H'F (1' .1H, ('2 1/Cannot open for outputQFile>FE *H'F ~1HF/G EF(9 1' -0A 1/Cannot remove source fileQFile*~1HF/G EB5/ EH,H/ '3*Destination file existsQFile"F'14 F'EHAB (D'Failure to write blockQFile~1HF/G *1*( (' '3*A'/G '2 ~ (D' G' *:1 F'E /'/G F.H'G/ 4/0Will not rename sequential file using block copyQFile%1 ~H4G 'A* F4/ D7A' (113 F/ G F'E E31 (G /13* /'/G 4/G ('4/.K%1 Directory not found. Please verify the correct directory name was given. QFileDialog%1 ~1HF/G 'A* F4/. D7A' /13* F'E ~1HF/G /'/G 4/G 1' (113 F/.A%1 File not found. Please verify the correct file name was given. QFileDialog`%1 '2 B(D EH,H/ '3*. "' E'D G3*/ ,'2F 4H/-%1 already exists. Do you want to replace it? QFileDialog&'F*.'(&Choose QFileDialog&-0A&Delete QFileDialog&~H4G ,// &New Folder QFileDialog&('21/F&Open QFileDialog&*:1 F'E&Rename QFileDialog &0.1G&Save QFileDialog'%1' '2 -A'8* FH4*'1 (1.H1/'1 '3*. (' 'F -'D "' E'D G3*/ -0A 4H/9'%1' is write protected. Do you want to delete it anyway? QFileDialogF'E E3*9'1Alias QFileDialog$*E'E ~1HF/G G' (*) All Files (*) QFileDialog(*E'E ~1HF/G G' (*.*)All Files (*.*) QFileDialogR"' E7E&F G3*/ E .H'G/ %1 1' -0A F/!Are sure you want to delete '%1'? QFileDialog9B(Back QFileDialog:*:1 (G -'D* FE'4 (' ,2&'*Change to detail view mode QFileDialog2*:1 (G -'D* FE'4 3'GGChange to list view mode QFileDialog2FE *H'F ~H4G 1' -0A 1/.Could not delete directory. QFileDialog','/ ~H4G ,//Create New Folder QFileDialog$','/  ~H4G ,//Create a New Folder QFileDialogFE'4 (' ,2&'* Detail View QFileDialog~H4G G' Directories QFileDialog ~H4G: Directory: QFileDialog /1'HDrive QFileDialog ~1HF/GFile QFileDialog&F'E ~1HF/G: File &name: QFileDialog~H4G ~1HF/G File Folder QFileDialog&~1HF/G G' '2 FH9:Files of type: QFileDialog'A*F ~H4GFind Directory QFileDialog~H4GFolder QFileDialog ,DH*1Forward QFileDialog 9B(1/Go back QFileDialog ,DH1/ Go forward QFileDialog$(1H (G ~H4G ('D'*1Go to the parent directory QFileDialogFE'4 3'GG List View QFileDialog,3*,H /1:Look in: QFileDialog1''FG EF My Computer QFileDialog~H4G ,// New Folder QFileDialog('21/FOpen QFileDialog~H4G ('D'*1Parent Directory QFileDialogE'F G' '.1 Recent Places QFileDialog-0ARemove QFileDialog0.1G (G 9FH'FSave As QFileDialogE'F (1Shortcut QFileDialog FE'4Show  QFileDialog,FE'4 ~1HF/G G' E&.AShow &hidden files QFileDialogF'4F'.*GUnknown QFileDialog%1 '('*%1 GBQFileSystemModel%1 DH('*%1 KBQFileSystemModel%1 E'('*%1 MBQFileSystemModel%1 *1'('*%1 TBQFileSystemModel%1 ('* %1 byte(s)QFileSystemModel%1 ('*%1 bytesQFileSystemModel<b>F'E "%1" FE *H'F/ EH1/ '3*A'/G B1'1 1/.</b><p>F'E /1 (' *9/'/ FH3G G' E*1 ' F'E (/HF 9D'E F'14 1' 'E*-'F F/.oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModel 1''FGComputerQFileSystemModel*'1. *:1 Date ModifiedQFileSystemModel$F'E F'E9*(1 ~1HF/GInvalid filenameQFileSystemModelFH9KindQFileSystemModel1''FG EF My ComputerQFileSystemModelF'ENameQFileSystemModel-,ESizeQFileSystemModelFH9TypeQFileSystemModelGEGAny QFontDatabase91(Arabic QFontDatabase '1EFArmenian QFontDatabase (F'DBengali QFontDatabase3'GBlack QFontDatabase*H~1Bold QFontDatabase31DCyrillic QFontDatabaseFEGDemi QFontDatabaseFEG *H~1 Demi Bold QFontDatabase/HF''1 Devanagari QFontDatabase1,Georgian QFontDatabase HF'FGreek QFontDatabaseH,'1*Gujarati QFontDatabaseH1EH.Gurmukhi QFontDatabase 9(1'FHebrew QFontDatabase,Italic QFontDatabase '~FJapanese QFontDatabase 'F'/'Kannada QFontDatabase.E1Khmer QFontDatabase 1G 'Korean QFontDatabase D'&H3Lao QFontDatabase D'*FLatin QFontDatabase3(Light QFontDatabase E'D' Malayalam QFontDatabaseE'FE'1Myanmar QFontDatabase 'F HN'Ko QFontDatabase9'/Normal QFontDatabase'1(Oblique QFontDatabase 'H:'EOgham QFontDatabase 'H1'Oriya QFontDatabase1E2Runic QFontDatabaseF 3'/G 4/GSimplified Chinese QFontDatabase3FG'D'Sinhala QFontDatabase F4'FGSymbol QFontDatabase 31'FSyriac QFontDatabase *'EDTamil QFontDatabase *DHHTelugu QFontDatabase3'F'Thaana QFontDatabase*'DF/Thai QFontDatabase*(*Tibetan QFontDatabaseF *,'1Traditional Chinese QFontDatabaseH*F'E Vietnamese QFontDatabase &AHF*&Font QFontDialog&'F/'2G&Size QFontDialog&21.7 /'1 &Underline QFontDialog,DHG G'Effects QFontDialog&3( AHF* Font st&yle QFontDialog FEHFGSample QFontDialog'F*.'( AHF* Select Font QFontDialog&.7 2/G Stri&keout QFontDialog3'E'FG &FH4*'1Wr&iting System QFontDialog0*:1 ~H4G 'F,'E F4/: %1Changing directory failed: %1QFtp2'*5'D (G E2('F (1B1'1 4/Connected to hostQFtp8'*5'D (G E2('F %1 (1B1'1 4/Connected to host %1QFtp4'*5'D F'EHAB (G E2('F: %1Connecting to host failed: %1QFtp'*5'D (3*G 4/Connection closedQFtpD'*5'D (1B1'1 '*5'D /'/G 1' 1/ 1/&Connection refused for data connectionQFtp2'*5'D (G E2('F %1 1/ 4/Connection refused to host %1QFtpJ2E'F '*5'D (G E2('F %1 (G ~''F 13/Connection timed out to host %1QFtp&'*5'D (G %1 (3*G 4/Connection to %1 closedQFtp0','/ ~H4G 'F,'E F4/: %1Creating directory failed: %1QFtp0/'FDH/ F'EHAB ~1HF/G: %1Downloading file failed: %1QFtp"E2('F ~/' %1 4/ Host %1 foundQFtp$E2('F %1 ~/' F4/Host %1 not foundQFtpE2('F ~/' 4/ Host foundQFtp8D3* 1/F ~H4G 43* .H1/: %1Listing directory failed: %1QFtpH1H/ F'EHAB: %1Login failed: %1QFtpE*5D FE ('4/ Not connectedQFtp,-/A ~H4G 'F,'E F4/: %1Removing directory failed: %1QFtp*-0A F'EHAB ~1HF/G: %1Removing file failed: %1QFtp.7' F'4F'.*G Unknown errorQFtp."~DH/ F'EHAB ~1HF/G: %1Uploading file failed: %1QFtp0F'E E2('F /'/G F4/G '3*No host name given QHostInfo.7' F'4F'.*G Unknown error QHostInfoE2('F ~/' F4/Host not foundQHostInfoAgent$F'E F'E9*(1 E2('FInvalid hostnameQHostInfoAgent0F'E E2('F /'/G F4/G '3*No host name givenQHostInfoAgent"FH9 F'4F'.*G "/13Unknown address typeQHostInfoAgent.7' F'4F'.*G Unknown errorQHostInfoAgent&'9*('13F, F'2 '3*Authentication requiredQHttp2'*5'D (G E2('F (1B1'1 4/Connected to hostQHttp8'*5'D (G E2('F %1 (1B1'1 4/Connected to host %1QHttp'*5'D (3*G 4/Connection closedQHttp'*5'D 1/ 4/Connection refusedQHttpF'*5'D 1/ 4/ (' A15* (G '*E'E 13/)!Connection refused (or timed out)QHttp&'*5'D (G %1 (3*G 4/Connection to %1 closedQHttp/'/G .1'( '3*Data corruptedQHttp4.7' FH4*F ~'3. 1H /3*'G Error writing response to deviceQHttp,/1.H'3* HTTP 'F,'E F4/HTTP request failedQHttph'*5'D HTTPS /1 .H'3* 4/ 'E' ~4*('F SSL 1/"H1 F4/:HTTPS connection requested but SSL support not compiled inQHttp"E2('F %1 ~/' 4/ Host %1 foundQHttp$E2('F %1 ~/' F4/Host %1 not foundQHttpE2('F ~/' 4/ Host foundQHttp>E2('F (G '9*('1 3F, F'2 /'1/Host requires authenticationQHttp>(/FG B79G (F/ 4/G F'E9*(1 HTTPInvalid HTTP chunked bodyQHttp031"F/ F'E9*(1 ~'3. HTTPInvalid HTTP response headerQHttpP31H3 /GF/G ' (1' '*5'D *9F F4/G '3*No server set to connect toQHttp4'9*('13F, ~1H3 F'2 '3*Proxy authentication requiredQHttp>~1H3 (G '9*('1 3F, F'2 /'1/Proxy requires authenticationQHttp/1.H'3* D:H 4/Request abortedQHttp$/3* /G F'EHAB SSLSSL handshake failedQHttpV(3*G 4/F :1EF*81G '*5'D '2 3E* 31H3 /GF/G%Server closed connection unexpectedlyQHttp01H4 '9*('1 3F, F'4F'.*GUnknown authentication methodQHttp.7' F'4F'.*G Unknown errorQHttp:~1H*D F'4F'.*G *9F 4/G '3*Unknown protocol specifiedQHttp*7HD '4*('G (1' E-*H'Wrong content lengthQHttp&'9*('13F, F'2 '3*Authentication requiredQHttpSocketEngine<~'3. HTTP '2 ~1H3 /1'A* F4/(Did not receive HTTP response from proxyQHttpSocketEngine4.7' '1*('7 (' ~1H3 HTTP#Error communicating with HTTP proxyQHttpSocketEngineN/1.H'3* .7' *,2G '9*('13F, '2 ~1H3/Error parsing authentication request from proxyQHttpSocketEngine:'*5'D ~1H3 F'(GF'E (3*G 4/#Proxy connection closed prematurelyQHttpSocketEngine$'*5'D ~1H3 1/ 4/Proxy connection refusedQHttpSocketEngine,~1H3 '*5'D 1' 1/ 1/Proxy denied connectionQHttpSocketEngineP2E'F '*5'D (G 31H3 /GF/G ~1H3 *E'E 4/!Proxy server connection timed outQHttpSocketEngine631H3 /GF/G ~1H3 ~/' F4/Proxy server not foundQHttpSocketEngine6FE *H'F *1'F4 1' 41H9 1/Could not start transaction QIBaseDriver6.7' /1 ('2 1/F ~''G /'/GError opening database QIBaseDriver8FE *H'F *1'F4 1' '13'D 1/Unable to commit transaction QIBaseDriver8FE *H'F *1'F4 1' ('21/'F/Unable to rollback transaction QIBaseDriver8FE *H'F 9('1* 1' '.*5'5 /'/Could not allocate statement QIBaseResult>FE *H'F 9('1* H1H/ 1' 41- /'/"Could not describe input statement QIBaseResult2FE *H'F 9('1* 1' 41- /'/Could not describe statement QIBaseResult>FE *H'F "*E (9/ 1' H'4 1/Could not fetch next item QIBaseResult4FE *H'F "1'G 1' ~/' 1/Could not find array QIBaseResultLFE *H'F /'/G G' "1'G 1' ('2'( 1/Could not get array data QIBaseResultNFE *H'F '7D'9'* ~13 H,H 1' ('2'( 1/Could not get query info QIBaseResultJFE *H'F '7D'9'* 9('1* 1' ('2'( 1/Could not get statement info QIBaseResult6FE *H'F 9('1* 1' "E'/G 1/Could not prepare statement QIBaseResult6FE *H'F *1'F4 1' 41H9 1/Could not start transaction QIBaseResult*FE *H'F 9('1* 1' (3*Unable to close statement QIBaseResult8FE *H'F *1'F4 1' '13'D 1/Unable to commit transaction QIBaseResult4FE *H'F BLOB 1' ','/ 1/Unable to create BLOB QIBaseResult6FE*H'F ~13 H,H 1' ',1' 1/Unable to execute query QIBaseResult0FE *H'F BLOB 1' ('2 1/Unable to open BLOB QIBaseResult,FE *H'F BLOB 1' .H'F/Unable to read BLOB QIBaseResult*FE *H'F /1 BLOB FH4*Unable to write BLOB QIBaseResult>A6' /1 /3*'G ('B FE'F/G '3*No space left on device QIODeviceBFF ~H4G ' ~1HF/G ' H,H/ F/'1/No such file or directory QIODevice-B /3*13 1/ 4/Permission denied QIODevice0~1HF/G G' 2'/ ('2 '3*Too many open files QIODevice.7' F'4F'.*G Unknown error QIODeviceFEPFEP QInputContext"1H4 H1H/ EF*'4Mac OS X input method QInputContext"1H4 H1H/ FEP S60S60 FEP input method QInputContext 1H4 H1H/ HF/H2Windows input method QInputContextXIMXIM QInputContext1H4 H1H/ XIMXIM input method QInputContext& EB/'1 H'1/ F/:Enter a value: QInputDialogPFE *H'F *'(.'FG %1 1' ('10'1 1/: %2Cannot load library %1: %2QLibrarydFE *H'F /1('1G FE'/ %1 /1 %2 *5EE 1 1/: %3$Cannot resolve symbol "%1" in %2: %3QLibraryJFE *H'F *'(.'FG %1 1' *.DG 1/: %2Cannot unload library %1: %2QLibraryT/'/G '9*('13F, 'A2HFG /1 %1 *7'(B F/'1/)Plugin verification data mismatch in '%1'QLibraryH~1HF/G %1  'A2HFG E9*(1 Qt F3*.'The file '%1' is not a valid Qt plugin.QLibrary'A2HFG %1 '2 *'(.'FG F'3'2'1 Qt '3*A'/G E F/. (%2.%3.%4) [%5]=The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]QLibrary'A2HFG %1 '2 *'(.'FG F'3'2'1 Qt '3*A'/G E F/. (FE *H'F *'(.'FG G' '4'D 2/' H 'F*4'1 1' *1( 1/.)WThe plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)QLibrary'A2HFG %1 '2 *'(.'FG F'3'2'1 Qt '3*A'/G E F/. D/ 3'.* %2 EH1/ 'F*8'1 '3* %3 ~/' 4/OThe plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"QLibrary4*'(.'FG '4*1' ~/' F4/.!The shared library was not found.QLibrary.7' F'4F'.*G Unknown errorQLibrary&~&Copy QLineEdit&3('F/F&Paste QLineEdit&('2'F,'E&Redo QLineEdit&.F+ 3'2&Undo QLineEdit(&14Cu&t QLineEdit-0ADelete QLineEdit'F*.'( GEG Select All QLineEdit6%1: "/13 /1 -'D '3*A'/G '3*%1: Address in use QLocalServer%1: .7' F'E%1: Name error QLocalServer0%1: -B /3*13 H,H/ F/'1/%1: Permission denied QLocalServer(%1: .7' F'4F'.*G %2%1: Unknown error %2 QLocalServer%1: .7' '*5'D%1: Connection error QLocalSocket%1: '*5'D 1/ 4/%1: Connection refused QLocalSocket>%1: /*'1'E (4 '2 -/ (21 '3*%1: Datagram too large QLocalSocket%1: F'E F'E9*(1%1: Invalid name QLocalSocket0%1: A1E'F '2 /H1 (3*G 4/%1: Remote closed QLocalSocket.%1: .7' /3*13 (G 3H*%1: Socket access error QLocalSocketD%1: 2E'F 9ED'* 3H* (G '*E'E 13/%1: Socket operation timed out QLocalSocket$%1: .7' EF(9 3H*%1: Socket resource error QLocalSocketB%1: 9ED'* 3H* ~4*('F F4/G '3*)%1: The socket operation is not supported QLocalSocket"%1: .7' F'4F'.*G%1: Unknown error QLocalSocket(%1: .7' F'4F'.*G %2%1: Unknown error %2 QLocalSocket6FE *H'F *1'F4 1' 41H9 1/Unable to begin transaction QMYSQLDriver8FE *H'F *1'F4 1' '13'D 1/Unable to commit transaction QMYSQLDriver4FE *H'F '*5'D (1B1'1 FEH/Unable to connect QMYSQLDriverBFE *H'F ~''G /'/G 1' ('2 1/ 'Unable to open database ' QMYSQLDriver8FE *H'F *1'F4 1' ('21/'F/Unable to rollback transaction QMYSQLDriverDFE *H'F EB'/1 (1HF 1' EB/ 1/Unable to bind outvalues QMYSQLResult4FE *H'F EB/'1 1' EB/ 1/Unable to bind value QMYSQLResultBFE *H'F /1.H'3* (9/ 1' ',1' 1/Unable to execute next query QMYSQLResult8FE *H'F ~13 H,H 1' ',1' 1/Unable to execute query QMYSQLResult4FE *H'F 9('1* 1' ',1' 1/Unable to execute statement QMYSQLResult09/E EHAB* /1 H'4 /'/GUnable to fetch data QMYSQLResult6FE *H'F 9('1* 1' "E'/G 1/Unable to prepare statement QMYSQLResult<FE *H'F 9('1* 1' ('2F4'F 1/Unable to reset statement QMYSQLResult@FE *H'F F*,G (9/ 1' 0.1G 1/Unable to store next result QMYSQLResult6FE *H'F F*,G 1' 0.1G 1/Unable to store result QMYSQLResultBFE *H'F F*', 9('1* 1' 0.1G 1/!Unable to store statement results QMYSQLResult(( F'E) (Untitled)QMdiArea%1 @ [%2] %1 - [%2] QMdiSubWindow &(3*F&Close QMdiSubWindow &-1*&Move QMdiSubWindow('&2'(&Restore QMdiSubWindow&'F/'2G&Size QMdiSubWindow @ [%1]- [%1] QMdiSubWindow(3*FClose QMdiSubWindowEHelp QMdiSubWindow(21& 1/F Ma&ximize QMdiSubWindow(21 1/FMaximize QMdiSubWindowEFHMenu QMdiSubWindowH& 1/F Mi&nimize QMdiSubWindowH 1/FMinimize QMdiSubWindow('2'(Restore QMdiSubWindow ('2'( (G ~'F Restore Down QMdiSubWindow3'GShade QMdiSubWindow('D'*1 (&E'F/ Stay on &Top QMdiSubWindow('2F4'F 3'GUnshade QMdiSubWindow(3*FCloseQMenu',1'ExecuteQMenu('21/FOpenQMenu9EDActionsQMenuBar<h3>/1('1GT H*</h3><p>'F (1F'EG '2 H* F3.GT %1 '3*A'/G E F/.</p>8

About Qt

This program uses Qt version %1.

 QMessageBox <p dir="rtl">H*  '(2'1 C++ '3* G (1' *H39GT F1E 'A2'1 E3*BD '2 ~D*A1E (G '1 E 1H/</p><p dir="rtl">H* B'(D* -ED * EF(9 1' (1' E'1H3'A* HF/H2 E 'H '3 '3 DFH3 H *E'E *H29 G' '5D HF3 ~4*('F E F/. H* GEFF (1' /3*'G G' ,'F( B'(D '3*A'/G '3*. '2 ,EDG H* (1' DFH3 *9(G 4/G H H* (1' HF/H2 CE.</p><p dir="rtl">(G EF8H1 ~'3. /G (G F'2 '1(1'F E.*DA H* *-* 3G ','2G F'EGT E*A'H* B'(D /3*'( '3*.</p><p dir="rtl"> Qt EF*41 4/G *-* ','2G F'EG *,'1 E' (1' *H39GT *,'1 F1E 'A2'1G' EF'3( '3* G E'D F3*/ / EF(9 "F G' 1' (' '4.'5 +'D+ H ' /1'F (G '4*1' (0'1/ ' (G G1 /DD FE *H'F/ (' 41'7 GNU LGPL F3.GT k ' GNU GPL F3.GT  EH'AB* F/.</p><p dir="rtl"> Qt EF*41 4/G *-* ','2G F'EGT GNU LGPL F3.GT k /1 5H1* G (*H'F/ (' EA'GE H 41'7 GNU LGPL F3.GT k EH'AB* F/ (1' *H39GT (1F'EG G' '1(1/ E*F ('2 B'(D '3*A'/G '3*.</p><p dir="rtl"> Qt EF*41 4/G *-* ','2G F'EGT GNU General Public License F3.GT  (1' *H39GT (1F'EG G' EF'3( '3* G (.H'G/ '2 "F G' /1 *1( G' '2 F1E 'A2'1G' *-* 4EHD 41'7 GNU GPL F3.GT k '3*A'/G F/ ' E'D ('4/ (' 41'7 ','2G F'EGT GNU GPL F3.GT  EH'AB* F/.</p><p dir="rtl"> (1' (G /3* "H1/F '7D'9'* /1 EH1/ ','2G F'EG G' Qt D7A'K <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> 1' ((F/.</p><p dir="rtl">B'FHF -E'* '2 -BHB E$DAF (C)   E~'F FH' H/' *E'E 21E,EH9G G'</p><p dir="rtl"> Qt  E-5HD Nokia '3*.(1' '7D'9'* (4*1 <a href="http://qt.nokia.com/">qt.nokia.com</a> 1' ((F/.</p>

Qt is a C++ toolkit for cross-platform application development.

Qt provides single-source portability across MS Windows, Mac OS X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.

Qt is available under three different licensing options designed to accommodate the needs of our various users.

Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.

Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.

Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.

Please see qt.nokia.com/products/licensing for an overview of Qt licensing.

Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).

Qt is a Nokia product. See qt.nokia.com for more information.

 QMessageBox/1('1GT H*About Qt QMessageBoxEHelp QMessageBox&E.A 1/F ,2&'*...Hide Details... QMessageBox *#/OK QMessageBoxFE'4 ,2&'*...Show Details... QMessageBox'F*.'( IM Select IMQMultiInputContext,3H 1H4 H1H/ F/'FGMultiple input method switcherQMultiInputContextPlugin3H 1H4 H1H/ F/'FG G '2 EFH E-*H' 9F'51 E*F '3*A'/G E F/MMultiple input method switcher that uses the context menu of the text widgetsQMultiInputContextPluginl3H* *G 'G GE 'FHF 1H GE'F /1'G /1 -'D 4F/F '3*4Another socket is already listening on the same portQNativeSocketEnginex*D'4 (1' '3*A'/G '2 3H* IPv6 1H ~D*A1E (/HF ~4*('F IPv6=Attempt to use IPv6 socket on a platform with no IPv6 supportQNativeSocketEngine"'*5'D ~01A*G F4/Connection refusedQNativeSocketEngine:'*5'D (' HBAGT 2E'F EH',G 4/Connection timed outQNativeSocketEngineB/*'1'E (1' '13'D .D (21 (H/Datagram was too large to sendQNativeSocketEngine(E2('F /1 /3*13 F3*Host unreachableQNativeSocketEngine2*H5A FF/GT F'E9*(1 3H*Invalid socket descriptorQNativeSocketEngine.7' 4(G Network errorQNativeSocketEngineF9ED'* 4(G (' HBAGT 2E'F EH',G 4/Network operation timed outQNativeSocketEngine$4(G /1 /3*13 F3*Network unreachableQNativeSocketEngine$9ED'* 1H :13H*Operation on non-socketQNativeSocketEngine.'1, '2 EF'(9Out of resourcesQNativeSocketEngine(-B /3*13 H,H/ F/'1/Permission deniedQNativeSocketEngine8FH9 ~1H*D ~4*('F F4/G '3*Protocol type not supportedQNativeSocketEngine$"/13 /1 /3*13 F3*The address is not availableQNativeSocketEngine$"/13 -A'8* 4/G '3*The address is protectedQNativeSocketEngineN"/13 E-/H/G GE 'FHF /1 -'D '3*A'/G '3*#The bound address is already in useQNativeSocketEngineF~1H3 (1' 'F 9ED'* :1E9*(1 '3*,The proxy type is invalid for this operationQNativeSocketEngineHE2('F F*1D '2 1'G /H1 '*5'D 1' (3*%The remote host closed the connectionQNativeSocketEngine<FE *H'F 3H* ~.4 1' "E'/G 1/%Unable to initialize broadcast socketQNativeSocketEngineRFE *H'F 3H* (DH (F/ F4/G 1' "E'/G 1/(Unable to initialize non-blocking socketQNativeSocketEngine0FE *H'F ~'E /1'A* 1/Unable to receive a messageQNativeSocketEngine4FE *H'F ~'E 1' '13'D 1/Unable to send a messageQNativeSocketEngineF'*H'F /1 FH4*FUnable to writeQNativeSocketEngine.7' F'4F'.*G Unknown errorQNativeSocketEngine29ED'* ~4*('F F4/G 3H*Unsupported socket operationQNativeSocketEngine .7' ('2 1/F %1Error opening %1QNetworkAccessCacheBackend4F4'F 'F*1F* F'E9*(1: %1Invalid URI: %1QNetworkAccessDataBackend<9ED'* 1H %1 ~4*('F FE 4H/Operation not supported on %1QNetworkAccessDataBackendhE2('F F*1D '2 1'G /H1 '*5'D 1' F'(GF'E 1H %1 (3*3Remote host closed the connection prematurely on %1QNetworkAccessDebugPipeBackend&.7' 3H* /1 %1: %2Socket error on %1: %2QNetworkAccessDebugPipeBackend*.7' FH4*F 1H %1: %2Write error writing to %1: %2QNetworkAccessDebugPipeBackendPFE *H'F %1 1' ('2 1/: E31  ~H4G '3*#Cannot open %1: Path is a directoryQNetworkAccessFileBackend(.7' ('2 1/F %1: %2Error opening %1: %2QNetworkAccessFileBackend*.7' .H'F/F '2 %1: %2Read error reading from %1: %2QNetworkAccessFileBackendR/1.H'3* (1' ('2 1/F ~1HF/GT :1 E-D %1%Request for opening non-local file %1QNetworkAccessFileBackend*.7' FH4*F 1H %1: %2Write error writing to %1: %2QNetworkAccessFileBackendFFE *H'F %1 1' ('2 1/:  ~H4G '3*Cannot open %1: is a directoryQNetworkAccessFtpBackend4.7' /1 GF'E /'FDH/ %1: %2Error while downloading %1: %2QNetworkAccessFtpBackend2.7' /1 GF'E "~DH/ %1: %2Error while uploading %1: %2QNetworkAccessFtpBackendb.(1B1'1 F'EHAB '1*('7 (' %1: '9*('13F, F'2 '3*0Logging in to %1 failed: authentication requiredQNetworkAccessFtpBackend*~1H3 EF'3( ~/' F4/No suitable proxy foundQNetworkAccessFtpBackend*~1H3 EF'3( ~/' F4/No suitable proxy foundQNetworkAccessHttpBackend:/3*13 4(G :1 A9'D 4/G '3*.Network access is disabled.QNetworkAccessManager<.7' /'FDH/ %1 - ~'3. 31H1: %2)Error downloading %1 - server replied: %2 QNetworkReply .7' ,D3GT 4(G.Network session error. QNetworkReplyB~1H*D %1 ~4*('F F'4F'.*G '3*Protocol "%1" is unknown QNetworkReply .1'( EHB* 4(G.Temporary network failure. QNetworkReply9ED'* D:H 4/Operation canceledQNetworkReplyImpl$~1 (F/ F'E9*(1.Invalid configuration.QNetworkSession.7' 1HEF Roaming errorQNetworkSessionPrivateImplB1HEF D:H 4/ ' 'E'F ~01 F3*.'Roaming was aborted or is not possible.QNetworkSessionPrivateImplH,D3G (G H3DGT '1(1 ' 33*E D:H 4/!Session aborted by user or systemQNetworkSessionPrivateImplb/1.H'3* 9ED'* (G H3DGT 33*E ~4*('F F4/G '3*.7The requested operation is not supported by the system.QNetworkSessionPrivateImplT,D3G (G H3DGT '1(1 ' 33*E D:H 4/G (H/..The session was aborted by the user or system.QNetworkSessionPrivateImplR~1(F/ E4.5 4/G FE *H'F/ '3*A'/G 4H/.+The specified configuration cannot be used.QNetworkSessionPrivateImpl.7' F'4F'.*GUnidentified ErrorQNetworkSessionPrivateImpl(.7' F'4F'.*GT ,D3G.Unknown session error.QNetworkSessionPrivateImpl6FE *H'F *1'F4 1' 41H9 1/Unable to begin transaction QOCIDriver8FE *H'F *1'F4 1' '13'D 1/Unable to commit transaction QOCIDriver$FE *H'F "E'/G 1/Unable to initialize QOCIDriver,FE *H'F H'1/ 33*E 4/Unable to logon QOCIDriver8FE *H'F *1'F4 1' ('21/'F/Unable to rollback transaction QOCIDriver6FE *H'F 9('1* 1' *.55 /'/Unable to alloc statement QOCIResultTFE *H'F 3*HF 1' (1' ',1' 1HG EB/ 1/'Unable to bind column for batch execute QOCIResult4FE *H'F E*:1 1' EB/ 1/Unable to bind value QOCIResultDFE *H'F 9('1* /3*G ' 1' ',1' 1/!Unable to execute batch statement QOCIResult4FE *H'F 9('1* 1' ',1' 1/Unable to execute statement QOCIResultBFE *H'F FH9 9('1* 1' ('2'( 1/Unable to get statement type QOCIResult(FE *H'F (G (9/ 1A*Unable to goto next QOCIResult6FE *H'F 9('1* 1' "E'/G 1/Unable to prepare statement QOCIResult8FE *H'F *1'F4 1' '13'D 1/Unable to commit transaction QODBCDriver2FE *H'F '*5'D (1B1'1 1/Unable to connect QODBCDriverFE *H'F '*5'D (1B1'1 FEH/. /1'H1 *E'E 9ED1/G' D'2E 1' ~4*('F FE F/EUnable to connect - Driver doesn't support all functionality required QODBCDriverJFE *H'F '13'D .H/'1 1' :1 A9'D 1/Unable to disable autocommit QODBCDriverBFE *H'F '13'D .H/'1 1' A9'D 1/Unable to enable autocommit QODBCDriver8FE *H'F *1'F4 1' ('21/'F/Unable to rollback transaction QODBCDriverQODBCResult::reset: FE *H'F 'SQL_CURSOR_STATIC' 1' (G 9FH'F 5A* 9('1* F*8E 1/. D7A'K ~1(F/ 1/'FF/GT ODBC .H/ 1' (113 F/yQODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResult4FE *H'F E*:1 1' EB/ 1/Unable to bind variable QODBCResult4FE *H'F 9('1* 1' ',1' 1/Unable to execute statement QODBCResult6FE *H'F 1H1/ 1' H'4 1/Unable to fetch QODBCResultBFE *H'F 'HDF 1H1/ 1' H'4 1/Unable to fetch first QODBCResultBFE *H'F ".1F 1H1/ 1' H'4 1/Unable to fetch last QODBCResult>FE *H'F 1H1/ (9/ 1' H'4 1/Unable to fetch next QODBCResult@FE *H'F 1H1/ B(D 1' H'4 1/Unable to fetch previous QODBCResult6FE *H'F 9('1* 1' "E'/G 1/Unable to prepare statement QODBCResultr"%1" F'E H8AGT B(D 1' *1'1 E F/ H :1 A9'D .H'G/ 4/.:"%1" duplicates a previous role name and will be disabled.QObject631H3 /GF/GT 5H* PulseAudioPulseAudio Sound ServerQObject(~13 H,H F'E9*(1: %1invalid query: "%1"QObjectF'ENameQPPDOptionsModel EB/'1ValueQPPDOptionsModel6FE *H'F *1'F4 1' 41H9 1/Could not begin transaction QPSQLDriver8FE *H'F *1'F4 1' '13'D 1/Could not commit transaction QPSQLDriver8FE *H'F *1'F4 1' ('21/'F/Could not rollback transaction QPSQLDriver2FE *H'F '*5'D (1B1'1 1/Unable to connect QPSQLDriver2FE *H'F '4*1' ','/ 1/Unable to subscribe QPSQLDriver4FE *H'F '4*1' 1' D:H 1/Unable to unsubscribe QPSQLDriver4FE *H'F ~13 H,H ','/ 1/Unable to create query QPSQLResult6FE *H'F 9('1* 1' "E'/G 1/Unable to prepare statement QPSQLResult3'F* E*1 (cm)Centimeters (cm)QPageSetupWidgetA1EFormQPageSetupWidget'1*A'9:Height:QPageSetupWidget'F (in) Inches (in)QPageSetupWidget'AB LandscapeQPageSetupWidget -'4GMarginsQPageSetupWidgetED E*1 (mm)Millimeters (mm)QPageSetupWidget,G* OrientationQPageSetupWidget'F/'2GT 5A-G: Page size:QPageSetupWidget':0PaperQPageSetupWidgetEF(9 ':0: Paper source:QPageSetupWidgetFB7G (pt) Points (pt)QPageSetupWidget 9EH/PortraitQPageSetupWidget'AB E9H3Reverse landscapeQPageSetupWidget.9EH/ E9H3Reverse portraitQPageSetupWidget916:Width:QPageSetupWidget-'4GT ~'F bottom marginQPageSetupWidget-'4GT ~ left marginQPageSetupWidget-'4GT 1'3* right marginQPageSetupWidget-'4GT ('D' top marginQPageSetupWidget('A2HFG ('1 F4/G (H/.The plugin was not loaded. QPluginLoader.7' F'4F'.*G Unknown error QPluginLoaderr%1 GE 'FHF H,H/ /'1/ "' E .H'G/ "F 1' ('2FH3 F//%1 already exists. Do you want to overwrite it? QPrintDialogb%1  ~H4G '3* D7A'  ~1HF/GT /1 'F*.'( F/.7%1 is a directory. Please choose a different file name. QPrintDialog&*F8E'* << &Options << QPrintDialog&*F8E'* >> &Options >> QPrintDialog&'~ 1/F&Print QPrintDialogV<qt>"' E .H'G/ "F 1' ('2FH3 F/</qt>%Do you want to overwrite it? QPrintDialogA0A0 QPrintDialog0A0 ( x  ED E*1)A0 (841 x 1189 mm) QPrintDialogA1A1 QPrintDialog.A1 ( x  ED E*1)A1 (594 x 841 mm) QPrintDialogA2A2 QPrintDialog.A2 ( x  ED E*1)A2 (420 x 594 mm) QPrintDialogA3A3 QPrintDialog.A3 ( x  ED E*1)A3 (297 x 420 mm) QPrintDialogA4A4 QPrintDialogRA4 ( x  ED E*1 k x k 'F)%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialogA5A5 QPrintDialog.A5 ( x  ED E*1)A5 (148 x 210 mm) QPrintDialogA6A6 QPrintDialog.A6 ( x  ED E*1)A6 (105 x 148 mm) QPrintDialogA7A7 QPrintDialog,A7 ( x  ED E*1)A7 (74 x 105 mm) QPrintDialogA8A8 QPrintDialog*A8 ( x  ED E*1)A8 (52 x 74 mm) QPrintDialogA9A9 QPrintDialogA9 ( x  mm)A9 (37 x 52 mm) QPrintDialog$F'E G' E3*9'1: %1 Aliases: %1 QPrintDialogB0B0 QPrintDialog2B0 ( x  ED E*1)B0 (1000 x 1414 mm) QPrintDialogB1B1 QPrintDialog0B1 ( x  ED E*1)B1 (707 x 1000 mm) QPrintDialogB10B10 QPrintDialog,B10 ( x  ED E*1)B10 (31 x 44 mm) QPrintDialogB2B2 QPrintDialog.B2 ( x  ED E*1)B2 (500 x 707 mm) QPrintDialogB3B3 QPrintDialog.B3 ( x  ED E*1)B3 (353 x 500 mm) QPrintDialogB4B4 QPrintDialog.B4 ( x  ED E*1)B4 (250 x 353 mm) QPrintDialogB5B5 QPrintDialogRB5 ( x  ED E*1 k x k 'F)%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialogB6B6 QPrintDialog.B6 ( x  ED E*1)B6 (125 x 176 mm) QPrintDialogB7B7 QPrintDialog,B7 ( x  ED E*1)B7 (88 x 125 mm) QPrintDialogB8B8 QPrintDialog*B8 ( x  ED E*1)B8 (62 x 88 mm) QPrintDialogB9B9 QPrintDialog*B9 ( x  ED E*1)B9 (44 x 62 mm) QPrintDialogC5EC5E QPrintDialog0C5E ( x  ED E*1)C5E (163 x 229 mm) QPrintDialog 3A'14Custom QPrintDialogDLEDLE QPrintDialog0DLE ( x  ED E*1)DLE (110 x 220 mm) QPrintDialogExecutive Executive QPrintDialog\Executive (k x  'F -  x  ED E*1))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialog|~1HF/GT %1 B'(D FH4*F F3* D7A'K  ~1HF/GT /1 'F*.'( F/.=File %1 is not writable. Please choose a different file name. QPrintDialog ~1HF/G H,H/ /'1/ File exists QPrintDialog FolioFolio QPrintDialog4Folio ( x  ED E*1)Folio (210 x 330 mm) QPrintDialog LedgerLedger QPrintDialog6Ledger ( x  ED E*1)Ledger (432 x 279 mm) QPrintDialog LegalLegal QPrintDialogTLegal (k x  'F -  x  ED E*1)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialog LetterLetter QPrintDialogVLetter (k x  'F -  x  ED E*1)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialog~1HF/GT E-D Local file QPrintDialog *#/OK QPrintDialog'~Print QPrintDialog$'~ 1H ~1HF/G ...Print To File ... QPrintDialog'~ 1/F GEG Print all QPrintDialog'~ 5A-GT ,'1Print current page QPrintDialog'~ 1/F E-/H/G Print range QPrintDialog'**.'( '~Print selection QPrintDialog2'~ 1/F 1H ~1HF/G (PDF)Print to File (PDF) QPrintDialog@'~ 1/F 1H ~1HF/G (Postscript)Print to File (Postscript) QPrintDialogTabloidTabloid QPrintDialog8Tabloid ( x  ED E*1)Tabloid (279 x 432 mm) QPrintDialog^EB/'1 E(/# FE *H'F/ '2 EB/'1 EB5/ (21*1 ('4/.7The 'From' value cannot be greater than the 'To' value. QPrintDialog,US Common #10 EnvelopeUS Common #10 Envelope QPrintDialogVUS Common #10 Envelope ( x  ED E*1)%US Common #10 Envelope (105 x 241 mm) QPrintDialogFH4*F %1 A'D Write %1 file QPrintDialog$(G 7H1E-D E*5D 4/locally connected QPrintDialogF'4F'.*Gunknown QPrintDialog%1%%1%QPrintPreviewDialog(3*FCloseQPrintPreviewDialog$.1H, 1A*F (G PDF Export to PDFQPrintPreviewDialog2.1H, 1A*F (G PostScriptExport to PostScriptQPrintPreviewDialog5A-GT 'HD First pageQPrintPreviewDialog2*F8E (1'3'3 'F/'2GT 5A-GFit pageQPrintPreviewDialog *F8E (1'3'3 916 Fit widthQPrintPreviewDialog'AB LandscapeQPrintPreviewDialog5A-GT ".1 Last pageQPrintPreviewDialog5A-GT (9/ Next pageQPrintPreviewDialog~1(F/ 5A-G Page SetupQPrintPreviewDialog~1(F/ 5A-G Page setupQPrintPreviewDialog 9EH/PortraitQPrintPreviewDialog5A-GT B(D Previous pageQPrintPreviewDialog'~PrintQPrintPreviewDialog~4 FE'4 '~ Print PreviewQPrintPreviewDialog$FE'4 5A-G G' 'HDShow facing pagesQPrintPreviewDialog0FE'4 '.*5'1 *E'E 5A-'*Show overview of all pagesQPrintPreviewDialog$FE'4  5A-GT *Show single pageQPrintPreviewDialog(21 FE'Zoom inQPrintPreviewDialogH FE'Zoom outQPrintPreviewDialog~41A*GAdvancedQPrintPropertiesWidgetA1EFormQPrintPropertiesWidget5A-GPageQPrintPropertiesWidget*DAB 1/FCollateQPrintSettingsOutput1FColorQPrintSettingsOutput-'D* 1F Color ModeQPrintSettingsOutput ~ G'CopiesQPrintSettingsOutput~ G':Copies:QPrintSettingsOutput5A-GT ,'1 Current PageQPrintSettingsOutput'~ /H(DGDuplex PrintingQPrintSettingsOutputA1EFormQPrintSettingsOutputEB'3 .'3*1 GrayscaleQPrintSettingsOutput3E* 7HD'F Long sideQPrintSettingsOutputGNoneQPrintSettingsOutput*F8E'*OptionsQPrintSettingsOutput*F8E'* .1H,Output SettingsQPrintSettingsOutputE-/H/GT 5A-'* Pages fromQPrintSettingsOutput'~ 1/F GEG Print allQPrintSettingsOutput'~ 1/F E-/H/G Print rangeQPrintSettingsOutput E9H3ReverseQPrintSettingsOutput 'F*.'( SelectionQPrintSettingsOutput3E* H*'G Short sideQPrintSettingsOutput*'toQPrintSettingsOutput &F'E:&Name: QPrintWidget...... QPrintWidgetA1EForm QPrintWidgetEHB9*: Location: QPrintWidget&~1HF/GT .1H,: Output &file: QPrintWidgetH& G' P&roperties QPrintWidget~4 FE'4Preview QPrintWidget '~1Printer QPrintWidgetFH9:Type: QPrintWidget`FE *H'F *:1 E31 H1H/ 1' (1' .H'F/F ('2 1/,Could not open input redirection for readingQProcess^FE *H'F *:1 E31 .1H, 1' (1' FH4*F ('2 1/-Could not open output redirection for writingQProcess*.7' .H'F/F '2 ~1/'24Error reading from processQProcess*.7' FH4*F 1H ~1/'24Error writing to processQProcess8G (1F'EG ' *91A F4/G '3*No program definedQProcess~1/'24 .1'( 4/Process crashedQProcess,41H9 F'EHAB ~1/'24: %1Process failed to start: %1QProcessJ9ED'* ~1/'24 (' HBAGT 2E'F EH',G 4/Process operation timed outQProcess8.7' EF(9 (.1'( 'F49'(): %1!Resource error (fork failure): %1QProcessD:HCancelQProgressDialog('2 1/FOpen QPushButton 'F*.'(Check QRadioButton>.'3*A'/G '2 D'3 FH3GT F'E9*(1bad char class syntaxQRegExp$F-H F'E9*(1 ~4 1Hbad lookahead syntaxQRegExp"F-H F'E9*(1 *1'1bad repetition syntaxQRegExp8'3*A'/G '2 H :1A9'D 4/Gdisabled feature usedQRegExp"7(BG (F/ F'E9*(1invalid categoryQRegExpHBAGT F'E9*(1invalid intervalQRegExp,EB/'1 G4* G4* F'E9*(1invalid octal valueQRegExp21H'1H (' E-/H/* /'.Dmet internal limitQRegExp.,/'FF/GT ~ EH,H/ F3*missing left delimQRegExp.7' 1. F/'/no error occurredQRegExp'F*G' F'EF*81Gunexpected endQRegExp6.7' /1 ('2 1/F ~''G /'/GError opening databaseQSQLite2Driver@FE *H'F *1'F4 /'/G 1' 41H9 1/Unable to begin transactionQSQLite2Driver8FE *H'F *1'F4 1' '13'D 1/Unable to commit transactionQSQLite2Driver8FE *H'F *1'F4 1' ('21/'F/Unable to rollback transactionQSQLite2Driver4FE *H'F 9('1* 1' ',1' 1/Unable to execute statementQSQLite2Result29/E EHAB* /1 H'4 F*',Unable to fetch resultsQSQLite2Result..7' /1 (3*F ~''G /'/GError closing database QSQLiteDriver6.7' /1 ('2 1/F ~''G /'/GError opening database QSQLiteDriver6FE *H'F *1'F4 1' 41H9 1/Unable to begin transaction QSQLiteDriver8FE *H'F *1'F4 1' '13'D 1/Unable to commit transaction QSQLiteDriver8FE *H'F *1'F4 1' ('21/'F/Unable to rollback transaction QSQLiteDriver$/1.H'3* H,H/ F/'1/No query QSQLiteResult6*9/'/ ~'1'E*1G' *7'(B F/'1/Parameter count mismatch QSQLiteResult<FE *H'F ~'1'E*1G' 1' EB/ 1/Unable to bind parameters QSQLiteResult4FE *H'F 9('1* 1' ',1' 1/Unable to execute statement QSQLiteResult6FE *H'F 1H1/ 1' H'4 1/Unable to fetch row QSQLiteResult<FE *H'F 9('1* 1' ('2F4'F 1/Unable to reset statement QSQLiteResult 41'7 ConditionQScriptBreakpointsModel61(G-4E'14 Hit-countQScriptBreakpointsModel4E'1GT 4F'3'IDQScriptBreakpointsModel$F'//G 1A*F-4E'14 Ignore-countQScriptBreakpointsModel EHB9*LocationQScriptBreakpointsModel*-4D Single-shotQScriptBreakpointsModel-0ADeleteQScriptBreakpointsWidget,//NewQScriptBreakpointsWidget0&~/' 1/F /1 '31~*...&Find in Script...QScriptDebugger~' 1/F F3HD Clear ConsoleQScriptDebugger4~' 1/F .1H, '4'D 2/'Clear Debug OutputQScriptDebugger$~' 1/F 2'14 .7'Clear Error LogQScriptDebugger '/'EGContinueQScriptDebugger Ctrl+FCtrl+FQScriptDebuggerCtrl+F10Ctrl+F10QScriptDebugger Ctrl+GCtrl+GQScriptDebugger'4'D 2/'DebugQScriptDebuggerF10F10QScriptDebuggerF11F11QScriptDebuggerF3F3QScriptDebuggerF5F5QScriptDebuggerF9F9QScriptDebugger~/' 1/F &(9/ Find &NextQScriptDebugger~/' 1/F &B(DFind &PreviousQScriptDebugger(1H (G .7 Go to LineQScriptDebuggerHBAG InterruptQScriptDebugger.7:Line:QScriptDebugger',1' *' F4'F1 Run to CursorQScriptDebugger(',1' *' '31~* ,//Run to New ScriptQScriptDebuggerShift+F11 Shift+F11QScriptDebuggerShift+F3Shift+F3QScriptDebuggerShift+F5Shift+F5QScriptDebugger~14 (G /'.D Step IntoQScriptDebugger~14 (G (1HFStep OutQScriptDebugger~14 '2 1H Step OverQScriptDebugger6*:1 H69* /'/F FB7GT 43*Toggle BreakpointQScriptDebugger<img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;,3*,H ~/G 4/J Search wrappedQScriptDebuggerCodeFinderWidget@-3'3 (G (2 H H (H/F FH3G G'Case SensitiveQScriptDebuggerCodeFinderWidget(3*FCloseQScriptDebuggerCodeFinderWidget(9/NextQScriptDebuggerCodeFinderWidgetB(DPreviousQScriptDebuggerCodeFinderWidget*E'E H'G G' Whole wordsQScriptDebuggerCodeFinderWidgetF'ENameQScriptDebuggerLocalsModel EB/'1ValueQScriptDebuggerLocalsModel37-LevelQScriptDebuggerStackModel EHB9*LocationQScriptDebuggerStackModelF'ENameQScriptDebuggerStackModel417 FB7GT 43*:Breakpoint Condition: QScriptEdit0:1 A9'D 1/F FB7GT 43*Disable Breakpoint QScriptEdit* A9'D 3'2 FB7GT 43*Enable Breakpoint QScriptEdit6*:1 /'/F H69* FB7GT 43*Toggle Breakpoint QScriptEditFB7GT 43* BreakpointsQScriptEngineDebugger F3HDConsoleQScriptEngineDebugger".1H, '4'D 2/' Debug OutputQScriptEngineDebugger2'14 .7' Error LogQScriptEngineDebugger*'31~* ('1 0'1 4/GLoaded ScriptsQScriptEngineDebuggerE-D G'LocalsQScriptEngineDebugger0'4'D 2/' '31~* H*Qt Script DebuggerQScriptEngineDebugger ,3*,HSearchQScriptEngineDebugger~4*GStackQScriptEngineDebugger FE'4ViewQScriptEngineDebugger(3*FCloseQScriptNewBreakpointWidget ~'FBottom QScrollBarH4GT ~ Left edge QScrollBar$(G .7 4/F (G ~'F Line down QScrollBar(G .7 4/FLine up QScrollBar5A-G (G ~'F Page down QScrollBar5A-GT ~ Page left QScrollBar5A-GT 1'3* Page right QScrollBar5A-GT ('D'Page up QScrollBar EHB9*Position QScrollBarH4GT 1'3* Right edge QScrollBarD:24 (G ~'F Scroll down QScrollBarD:24 (G 'F,' Scroll here QScrollBarD:24 (G ~ Scroll left QScrollBarD:24 (G 1'3* Scroll right QScrollBarD:24 (G ('D' Scroll up QScrollBar('D'Top QScrollBar@%1: ~1HF/GT D/ UNIX H,H/ F/'1/%1: UNIX key file doesn't exist QSharedMemory,%1: GE 'FHF EH,H/ '3*%1: already exists QSharedMemory@%1: 'F/'2GT 3'.* E*1 '2 5A1 '3*%1: create size is less then 0 QSharedMemory%1: H,H/ F/'1/%1: doesn't exist QSharedMemory%1: H,H/ F/'1/%1: doesn't exists QSharedMemory&%1: 9/E EHAB* ftok%1: ftok failed QSharedMemory&%1: 'F/'2GT F'E9*(1%1: invalid size QSharedMemory%1: .7' D/ %1: key error QSharedMemory %1: D/ *G '3*%1: key is empty QSharedMemory%1: 6EEG F4/%1: not attached QSharedMemory"%1: .'1, '2 EF'(9%1: out of resources QSharedMemory0%1: -B /3*13 H,H/ F/'1/%1: permission denied QSharedMemory<%1: 9/E EHAB* 'F/'2GT ~13 H,H%1: size query failed QSharedMemory@%1: E-/H/* 'F/'2GT *-ED 33*E$%1: system-imposed size restrictions QSharedMemory(%1: FE *H'F BAD 1/%1: unable to lock QSharedMemory6%1: FE *H'F D/ ','/ 1/%1: unable to make key QSharedMemoryL%1: FE *H'F D/ 1' 1H BAD *F8E 1/%1: unable to set key on lock QSharedMemory6%1: FE *H'F BAD 1' ('2 1/%1: unable to unlock QSharedMemory(%1: .7' F'4F'.*G %2%1: unknown error %2 QSharedMemory++ QShortcut '6'AG 1/F 9D'B Add Favorite QShortcut*F8E /1.4F/Adjust Brightness QShortcutAltAlt QShortcut~ (1F'EGApplication Left QShortcut1'3* (1F'EGApplication Right QShortcut5/' - 3D B79GAudio Cycle Track QShortcut5/' - ,DH(1/F Audio Forward QShortcut$5/' - ',1' *5'/AAudio Random Play QShortcut*1'1 5/' Audio Repeat QShortcut(11/'F/F 5/' Audio Rewind QShortcut/H1Away QShortcutBackBack QShortcut1H (G 9B( Back Forward QShortcutBackspace Backspace QShortcutBacktabBacktab QShortcutBass Boost Bass Boost QShortcutBass Down Bass Down QShortcutBass UpBass Up QShortcut ('*1Battery QShortcut (DH*H+ Bluetooth QShortcut*'(Book QShortcut E1H11Browser QShortcut 3 /CD QShortcutE'4F -3'( Calculator QShortcutA1'.H'FCall QShortcut2HE /H1(F Camera Focus QShortcut4'*1 /H1(FCamera Shutter QShortcutCapsLock Caps Lock QShortcutCapsLockCapsLock QShortcut~' 1/FClear QShortcut~' 1/F BD'( Clear Grab QShortcut(3*FClose QShortcutCode input Code input QShortcut ,'E9G Community QShortcut2EFGT Context1 QShortcut2EFGT Context2 QShortcut2EFGT Context3 QShortcut2EFGT Context4 QShortcut~Copy QShortcutCtrlCtrl QShortcut(14Cut QShortcutDOSDOS QShortcutDelDel QShortcut-0ADelete QShortcut FE'4Display QShortcut '3F'/ Documents QShortcutDownDown QShortcutEisu Shift Eisu Shift QShortcutEisu toggle Eisu toggle QShortcut(1HF "H1/FEject QShortcutEndEnd QShortcut EnterEnter QShortcutEscEsc QShortcut EscapeEscape QShortcutF%1F%1 QShortcutFavorites Favorites QShortcutE'DFinance QShortcut *DF1Flip QShortcutForwardForward QShortcut('2Game QShortcut(1HGo QShortcut HangulHangul QShortcutHangul Banja Hangul Banja QShortcut~''F Hangul Hangul End QShortcutHangul Hanja Hangul Hanja QShortcutHangul Jamo Hangul Jamo QShortcutHangul Jeonja Hangul Jeonja QShortcut Hangul PostHanjaHangul PostHanja QShortcutHangul PreHanjaHangul PreHanja QShortcutHangul Romaja Hangul Romaja QShortcutHangul SpecialHangul Special QShortcut41H9 Hangul Hangul Start QShortcut GF'~Hangup QShortcutHankakuHankaku QShortcutHelpHelp QShortcut HenkanHenkan QShortcut.H'( Hibernate QShortcutHiraganaHiragana QShortcut"Hiragana KatakanaHiragana Katakana QShortcut *'1.History QShortcutHomeHome QShortcut/A*1 '1 .'F Home Office QShortcutHome Page Home Page QShortcut~HF/G' /': Hot Links QShortcutInsIns QShortcut/1,Insert QShortcutKana Lock Kana Lock QShortcutKana Shift Kana Shift QShortcut KanjiKanji QShortcutKatakanaKatakana QShortcut('G4 /1.44 5A-G D/Keyboard Brightness Down QShortcut,'A2'4 /1.44 5A-G D/Keyboard Brightness Up QShortcut4FH1 5A-G D/ (1H4F/.'EH4)Keyboard Light On/Off QShortcutEFH 5A-G D/ Keyboard Menu QShortcut84E'1G 1 E,// ".1F 4E'1GLast Number Redial QShortcutLaunch (0) Launch (0) QShortcutLaunch (1) Launch (1) QShortcutLaunch (2) Launch (2) QShortcutLaunch (3) Launch (3) QShortcutLaunch (4) Launch (4) QShortcutLaunch (5) Launch (5) QShortcutLaunch (6) Launch (6) QShortcutLaunch (7) Launch (7) QShortcutLaunch (8) Launch (8) QShortcutLaunch (9) Launch (9) QShortcutLaunch (A) Launch (A) QShortcutLaunch (B) Launch (B) QShortcutLaunch (C) Launch (C) QShortcutLaunch (D) Launch (D) QShortcutLaunch (E) Launch (E) QShortcutLaunch (F) Launch (F) QShortcutLaunch Mail Launch Mail QShortcutLaunch Media Launch Media QShortcutLeftLeft QShortcutD'E~ 1H4F' LightBulb QShortcut.1H,Logoff QShortcut&/H('1G A13*'/F F'EG Mail Forward QShortcut ('2'1Market QShortcut MassyoMassyo QShortcutMedia Next Media Next QShortcutMedia Pause Media Pause QShortcutMedia Play Media Play QShortcutMedia PreviousMedia Previous QShortcutMedia Record Media Record QShortcutMedia Stop Media Stop QShortcut ED'B'*Meeting QShortcutMenuMenu QShortcutMenu PBMenu PB QShortcut~'E 13'F Messenger QShortcutMetaMeta QShortcut.Monitor Brightness DownMonitor Brightness Down QShortcut('A2'4 /1.44 FE'41Monitor Brightness Up QShortcutMuhenkanMuhenkan QShortcut$Multiple CandidateMultiple Candidate QShortcut EH3BMusic QShortcut3'* G' EFMy Sites QShortcut '.('1News QShortcutFGNo QShortcutNum LockNum Lock QShortcutNumLockNumLock QShortcutNumber Lock Number Lock QShortcutOpen URLOpen URL QShortcut*F8E'*Option QShortcut5A-G (G ~'F Page Down QShortcut5A-G (G ('D'Page Up QShortcut3('F/FPaste QShortcut PausePause QShortcut PgDownPgDown QShortcutPgUpPgUp QShortcut*DAFPhone QShortcut 93 G'Pictures QShortcutB79 (1B Power Off QShortcut$Previous CandidatePrevious Candidate QShortcut PrintPrint QShortcut'~ 1/F 5A-G Print Screen QShortcutRefreshRefresh QShortcut('10'1 E,//Reload QShortcut~'3.Reply QShortcut ReturnReturn QShortcut RightRight QShortcut RomajiRomaji QShortcut1.'F/F ~F,1GRotate Windows QShortcut1.4 KB Rotation KB QShortcut1.4 PB Rotation PB QShortcut 0.1GSave QShortcutE-'A8 5A-G Screensaver QShortcutScroll Lock Scroll Lock QShortcutScrollLock ScrollLock QShortcut SearchSearch QShortcut 'F*.'(Select QShortcut '13'DSend QShortcut ShiftShift QShortcutA1H4'GShop QShortcut.H'(Sleep QShortcut SpaceSpace QShortcut FF/GT 'ED' Spellchecker QShortcut*B3E 5A-G Split Screen QShortcut5A-G 3*1/G Spreadsheet QShortcutStandbyStandby QShortcutStopStop QShortcut21 FH3Subtitle QShortcut~4*('FSupport QShortcut 'F,E'/Suspend QShortcut SysReqSysReq QShortcut/1 .H'3* 33*ESystem Request QShortcutTabTab QShortcut5A-GT H8AG Task Panel QShortcut*1EF'DTerminal QShortcut2E'FTime QShortcut8*:1 H69* (A1'.H'F/GF'~)Toggle Call/Hangup QShortcut.Toggle Media Play/PauseToggle Media Play/Pause QShortcut '(2'1Tools QShortcutEFH ('D'Top Menu QShortcutTourokuTouroku QShortcut3A1Travel QShortcutTreble Down Treble Down QShortcutTreble Up Treble Up QShortcut('F/ AHB ~GFUltra Wide Band QShortcutUpUp QShortcut H/&HVideo QShortcut FE'4View QShortcut4E'1G 1 5H* Voice Dial QShortcutVolume Down Volume Down QShortcutVolume Mute Volume Mute QShortcutVolume Up Volume Up QShortcutWWWWWW QShortcut(/'1 4/FWake Up QShortcut H( EWebCam QShortcut H'1D3Wireless QShortcut~1/'241 E*FWord Processor QShortcutXFerXFer QShortcut(DGYes QShortcutZenkakuZenkaku QShortcutZenkaku HankakuZenkaku Hankaku QShortcut(21 FE'Zoom In QShortcutH FE'Zoom Out QShortcut iTouchiTouch QShortcut5A-G (G ~'F Page downQSlider5A-G (G ~ Page leftQSlider5A-G (G 1'3* Page rightQSlider5A-G (G ('D'Page upQSlider EHB9*PositionQSlider4FH9 "/13 ~4*('F F4/G '3*Address type not supportedQSocks5SocketEngineL'*5'D (G H3DGT 31H1 SOCKSv5 E,'2 F3*(Connection not allowed by SOCKSv5 serverQSocks5SocketEngine@'*5'D (G ~1H3 F'(GF'E (3*G 4/&Connection to proxy closed prematurelyQSocks5SocketEngine6'*5'D (G ~1H3 ~01A*G F4/Connection to proxy refusedQSocks5SocketEngineR'*5'D (G ~1H3 (' HBAGT 2E'F 1H(G 1H 4/Connection to proxy timed outQSocks5SocketEngine0.1'( 9EHE 31H1 SOCKSv5General SOCKSv5 server failureQSocks5SocketEngineF9ED'* 4(G (' HBAGT 2E'F EH',G 4/Network operation timed outQSocks5SocketEngine0'9*('13F, F'EHAB ~1H3Proxy authentication failedQSocks5SocketEngine8'9*('13F, F'EHAB ~1H3: %1Proxy authentication failed: %1QSocks5SocketEngine,E2('F ~1H3 ~/' F4/Proxy host not foundQSocks5SocketEngine0.7' ~1H*D 3H* F3.GT SOCKS version 5 protocol errorQSocks5SocketEngine>/3*H1 SOCKSv5 ~4*('F F4/G '3*SOCKSv5 command not supportedQSocks5SocketEngine$'TTL EFB6 4/G '3* TTL expiredQSocks5SocketEngineJ/ 0x%1 .7' F'4F'.*GT ~1H3 SOCKSv5%Unknown SOCKSv5 proxy error code 0x%1QSocks5SocketEngineD:HCancelQSoftKeyManager'F,'E 4/DoneQSoftKeyManager.1H,ExitQSoftKeyManager *#/OkQSoftKeyManager*F8E'*OptionsQSoftKeyManager 'F*.'(SelectQSoftKeyManagerE*1LessQSpinBox (4*1MoreQSpinBoxD:HCancelQSql6*:1'* .H/ 1' D:H E F/Cancel your edits?QSql *#/ConfirmQSql-0ADeleteQSql$'F 1H1/ -0A 4H/Delete this record?QSql/1,InsertQSqlFGNoQSql&*:1'* 0.1G 4HF/ Save edits?QSql(G 1H213'FUpdateQSql(DGYesQSqlTFE *H'F (/HF D/  *#/G *GG 1/ %1,Cannot provide a certificate with no key, %1 QSslSocket4.7' ','/ 2EFGT SSL (%1)Error creating SSL context (%1) QSslSocket..7' ','/ ,D3GT SSL %1Error creating SSL session, %1 QSslSocket0.7' ','/ ,D3GT SSL: %1Error creating SSL session: %1 QSslSocket8.7' /1 GF'E /3* /G SSL: %1Error during SSL handshake: %1 QSslSocket>.7' ('10'1 *#/GT E-D %1#Error loading local certificate, %1 QSslSocket<.7' ('10'1 D/ '.*5'5 %1Error loading private key, %1 QSslSocket..7' /1 GF'E .H'F/F: %1Error while reading: %1 QSslSocket8D3* 1E2 *G ' F'E9*(1 (%1)!Invalid or empty cipher list (%1) QSslSocketBG H'G F'EG ' B'(D *#/ F3*!No certificates could be verified QSslSocket.7' H,H/ F/'1/No error QSslSocketH '2 H'G F'EG G' CA F'E9*(1 '3*%One of the CA certificates is invalid QSslSocketXD/ '.*5'5 D/ 9EHE 1' *#/ FE F/ %1+Private key does not certify public key, %1 QSslSocketl~'1'E*1 7HD E31 basicConstraints '2 -/ *,'H2 1/G '3* QUndoModel('2'F,'ERedo QUndoStack.F+ 3'2Undo QUndoStack2/1, FH3GT F*1D HF / Insert Unicode control characterQUnicodeControlCharacterMenuFLRE 41H9 -'D* *9(G 4/GT ~-(G-1'3*$LRE Start of left-to-right embeddingQUnicodeControlCharacterMenu*LRM F4'FGT ~-(G-1'3*LRM Left-to-right markQUnicodeControlCharacterMenu@LRO 41H9 1H GE 0'1 ~-(G-1'3*#LRO Start of left-to-right overrideQUnicodeControlCharacterMenu:PDF B'D( (F/ Pop directionalPDF Pop directional formattingQUnicodeControlCharacterMenuFRLE 41H9 -'D* *9(G 4/GT 1'3*-(G-~$RLE Start of right-to-left embeddingQUnicodeControlCharacterMenu*RLM F4'FGT 1'3*-(G-~RLM Right-to-left markQUnicodeControlCharacterMenu@RLO 41H9 1H GE 0'1 1'3*-(G-~#RLO Start of right-to-left overrideQUnicodeControlCharacterMenu2ZWJ E*5D FF/G (' 916 5A1ZWJ Zero width joinerQUnicodeControlCharacterMenu<ZWNJ A'5DGT :1 3('F (/HF 916ZWNJ Zero width non-joinerQUnicodeControlCharacterMenu(ZWSP A'5DGT (/HF 916ZWSP Zero width spaceQUnicodeControlCharacterMenu2FE *H'F URL 1' FE'4 /'/Cannot show URL QWebFrame<FE *H'F mimetype 1' FE'4 /'/Cannot show mimetype QWebFrame"~1HF/G H,H/ F/'1/File does not exist QWebFrameR('10'1 A1E (' *:1 3'3* /'1 HBAG 4/'Frame load interrupted by policy change QWebFrame /1.H'3* (DHG 4/Request blocked QWebFrame/1.H'3* D:H 4/Request cancelled QWebFrame %1 (%2x%3 ~3D)%1 (%2x%3 pixels)QWebPage@%1 1H2 %2 3'9* %3 /BBG %4 +'FG&%1 days %2 hours %3 minutes %4 secondsQWebPage2%1 3'9* %2 /BBG %3 +'FG%1 hours %2 minutes %3 secondsQWebPage"%1 /BBG %2 +'FG%1 minutes %2 secondsQWebPage%1 +'FG %1 secondsQWebPage%n ~1HF/G %n file(s)QWebPage*'6'AG 1/F (G /4F1Add To DictionaryQWebPage*1'2 1/F '2 ~ Align LeftQWebPage"*1'2 1/F '2 1'3* Align RightQWebPage9F51 5H* Audio ElementQWebPageHF*1D G' H FE'4 H69* ~.4 9F51 5H*2Audio element playback controls and status displayQWebPage(/1.H'3* HTTP F'GF,'1Bad HTTP requestQWebPage41H9 ~.4Begin playbackQWebPage*H~1BoldQWebPageABottomQWebPageE12CenterQWebPage4(113 1'E1 /1 GF'E FH4*FCheck Grammar With SpellingQWebPage(113 'ED'Check SpellingQWebPage,(113 'ED' GF'E FH4*FCheck Spelling While TypingQWebPage*~1HF/G 1' 'F*.'( F/ Choose FileQWebPage0~' 1/F ,3*,H G' ~4FClear recent searchesQWebPage~CopyQWebPage~ *5H1 Copy ImageQWebPage~ ~HF/ Copy LinkQWebPageH69* ,'1 ADECurrent movie statusQWebPage2E'F ,'1 ADECurrent movie timeQWebPage(14CutQWebPage~4 A16 DefaultQWebPage"'F*.'( ~''F DEGDelete to the end of the wordQWebPage 'F*.'( 41H9 DEGDelete to the start of the wordQWebPage,G* DirectionQWebPage2E'F 51A 4/G Elapsed TimeQWebPage BDE G'FontsQWebPage/EGT *E'E 5A-GFullscreen ButtonQWebPage 9B(1/Go BackQWebPage ,DH1/ Go ForwardQWebPage,E.A 1/F 'ED' H 1'E1Hide Spelling and GrammarQWebPageF'//G 1A*FIgnoreQWebPageF'//G 1A*F Ignore Grammar context menu itemIgnoreQWebPage2E'F F'E9DHEIndefinite timeQWebPage*H1A*IndentQWebPage&/1, 3'GGT FB7G /'1Insert Bulleted ListQWebPage(/1, 3'GGT 4E'1G /'1Insert Numbered ListQWebPage/1, .7 ,//Insert a new lineQWebPage"/1, ~'1'1'A ,//Insert a new paragraphQWebPage(113 1/FInspectQWebPage,ItalicQWebPage.'.7'1 ,'H' '31~* - %1JavaScript Alert - %1QWebPage.*#/ ,'H' '31~* - %1JavaScript Confirm - %1QWebPage,E4D ,'H' '31~* - %1JavaScript Problem - %1QWebPage693 'D9ED ,'H' '31~* - %1JavaScript Prompt - %1QWebPage*1'2 '2 /H 71AJustifyQWebPage 'D ~ Left edgeQWebPage~ (G 1'3* Left to RightQWebPage~.4 2F/GLive BroadcastQWebPage('1 0'1... Loading...QWebPage ,3*,H /1 /4F1Look Up In DictionaryQWebPage'A2HFGT E4/GMissing Plug-inQWebPage@F4'F1 1' (G ~''F (D' -1* (/G'Move the cursor to the end of the blockQWebPage>F4'F1 1' (G ~''F 3F/ -1* (/G*Move the cursor to the end of the documentQWebPage<F4'F1 1' (G ~''F .7 -1* (/G&Move the cursor to the end of the lineQWebPageBF4'F1 1' (G FH3GT (9/ -1* (/G%Move the cursor to the next characterQWebPage:F4'F1 1' (G .7 (9/ -1* (/G Move the cursor to the next lineQWebPage@F4'F1 1' (G DEGT (9/ -1* (/G Move the cursor to the next wordQWebPageBF4'F1 1' (G FH3GT B(D -1* (/G)Move the cursor to the previous characterQWebPage:F4'F1 1' (G .7 B(D -1* (/G$Move the cursor to the previous lineQWebPage@F4'F1 1' (G DEGT B(D -1* (/G$Move the cursor to the previous wordQWebPage>F4'F1 1' (G 41H9 (D' -1* (/G)Move the cursor to the start of the blockQWebPage<F4'F1 1' (G 41H9 3F/ -1* (/G,Move the cursor to the start of the documentQWebPage:F4'F1 1' (G 41H9 .7 -1* (/G(Move the cursor to the start of the lineQWebPage(~' FF/GT 2E'F ADEMovie time scrubberQWebPage>(F/ 'F4* ~' FF/GT 2E'F ADEMovie time scrubber thumbQWebPage/EGT B79 5/' Mute ButtonQWebPage0.'EH4 1/F B79G G' 5H*Mute audio tracksQWebPage*.EF ~/' F4/No Guesses FoundQWebPage(~1HF/G ' 'F*.'( F4/No file selectedQWebPage$,3*,H 'F,'E F4/GNo recent searchesQWebPage('21/F A1E Open FrameQWebPage('21/F *5H1 Open ImageQWebPage('2 1/F DF Open LinkQWebPage.('2 1/F /1 ~F,1GT ,//Open in New WindowQWebPage(1HF 2/OutdentQWebPage.7H7 ~1'EHFOutlineQWebPage5A-G (G ~'F Page downQWebPage5A-G (G ~ Page leftQWebPage5A-G (G 1'3* Page rightQWebPage5A-G (G ('D'Page upQWebPage3('F/FPasteQWebPage&3('F/F H *7(B 3(Paste and Match StyleQWebPage/EGT *HBA Pause ButtonQWebPage*HBA ~.4Pause playbackQWebPage/EGT ',1' Play ButtonQWebPage8',1' ADE /1 -'D* *E'E 5A-GPlay movie in full-screen modeQWebPage,3*,H G' ~4FRecent searchesQWebPage613/F (G E-/H/* *9F E31Redirection limit reachedQWebPage('10'1 E,//ReloadQWebPage2E'F ('B E'F/GRemaining TimeQWebPage*2E'F ('B E'F/GT ADERemaining movie timeQWebPage-0A B'D( (F/Remove formattingQWebPage('2*F8EResetQWebPage>('24* ,1'F ADE (G 2E'F-H'B9#Return streaming movie to real-timeQWebPage4('24* (G /EGT 2E'F-H'B9Return to Real-time ButtonQWebPage/EGT ~'F/F Rewind ButtonQWebPage 9B(1/ ADE Rewind movieQWebPage'D 1'3* Right edgeQWebPage1'3* (G ~ Right to LeftQWebPage0.1GT *5H1 Save ImageQWebPage0.1GT ~HF/... Save Link...QWebPageD:24 (G ~'F Scroll downQWebPageD:24 (G 'F,' Scroll hereQWebPageD:24 (G ~ Scroll leftQWebPageD:24 (G 1'3* Scroll rightQWebPageD:24 (G ('D' Scroll upQWebPage,3*,H H(Search The WebQWebPage(/EGT D:24 1H (G 9B(Seek Back ButtonQWebPage(/EGT D:24 1H (G ,DHSeek Forward ButtonQWebPage&D:24 319 1H (G 9B(Seek quickly backQWebPage&D:24 319 1H (G ,DHSeek quickly forwardQWebPage'F*.'( GEG Select allQWebPage"'F*.'( ~''F (D'Select to the end of the blockQWebPage 'F*.'( ~''F 3F/!Select to the end of the documentQWebPage'F*.'( ~''F .7Select to the end of the lineQWebPage&'F*.'( '1'*1 (9/Select to the next characterQWebPage'F*.'( .7 (9/Select to the next lineQWebPage"'F*.'( DEGT (9/Select to the next wordQWebPage&'F*.'( '1'*1 B(D Select to the previous characterQWebPage'F*.'( .7 B(DSelect to the previous lineQWebPage"'F*.'( DEGT B(DSelect to the previous wordQWebPage 'F*.'( 41H9 (D' Select to the start of the blockQWebPage'F*.'( 41H9 3F/#Select to the start of the documentQWebPage'F*.'( 41H9 .7Select to the start of the lineQWebPage$FE'4 'ED' H 1'E1Show Spelling and GrammarQWebPage D:2F/GSliderQWebPage$(F/ 'F4* D:2F/G Slider ThumbQWebPageG, 1/FSpellingQWebPageFE'4 H69*Status DisplayQWebPage*HBAStopQWebPage .7 /'1 StrikethroughQWebPage '13'DSubmitQWebPage '13'DQSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPage21 F'4* SubscriptQWebPage('D'F'4* SuperscriptQWebPage,G* E*FText DirectionQWebPage(G F81 E 13/ '31~* /1 'F 5A-G E4D /'1/. "' E'D G3*/ '31~* 1' E*HBA F/RThe script on this page appears to have a problem. Do you want to stop the script?QWebPagex'F  4'.5 B'(D ,3*,H '3*. D/H'G G' ,3*,H 1' H'1/ F/:3This is a searchable index. Enter search keywords: QWebPage('D'TopQWebPage21.7 /'1 UnderlineQWebPageF'4F'.*GUnknownQWebPage/EGT H5D 5/' Unmute ButtonQWebPage.1H4F 1/F B79G G' 5H*Unmute audio tracksQWebPage9F51 *5H1 Video ElementQWebPageLF*1D G' H FE'4 H69* ~.4 9F51 *5H12Video element playback controls and status displayQWebPage((113 FF/GT H( - %2Web Inspector - %2QWebPage'F 3* What's This?QWhatsThisAction**QWidget ~''&F&FinishQWizard&E&HelpQWizard (9&/&NextQWizard(9&/ >&Next >QWizard < &9B(< &BackQWizardD:HCancelQWizard '13'DCommitQWizard '/'EGContinueQWizard'F,'E 4/DoneQWizard(1H 9B(Go BackQWizardEHelpQWizard%1 @ [%2] %1 - [%2] QWorkspace &(3*F&Close QWorkspace &-1*&Move QWorkspace('&2'(&Restore QWorkspace&'F/'2G&Size QWorkspace('2F4'F &3'G&Unshade QWorkspace(3*FClose QWorkspace(21& 1/F Ma&ximize QWorkspaceH& 1/F Mi&nimize QWorkspaceH 1/FMinimize QWorkspace ('2'( (G ~'F Restore Down QWorkspace &3'GSh&ade QWorkspace('D'*1 (&E'F/ Stay on &Top QWorkspacehGF'E .H'F/F XML ('F /0'1 ' ('F E3*BD F'2 '3*Yencoding declaration or standalone declaration expected while reading the XML declarationQXmlB.7' /1 ('F E*F  EH,H/* .'1,3error in the text declaration of an external entityQXml<.7' /1 GF'E *-DD ~'E 1. /'/$error occurred while parsing commentQXml>.7' /1 GF'E *-DD E-*H' 1. /'/$error occurred while parsing contentQXmlN.7' /1 GF'E *-DD FH9 *91A 3F/ 1. /'/5error occurred while parsing document type definitionQXml<.7' /1 GF'E *-DD 9F51 1. /'/$error occurred while parsing elementQXml<.7' /1 GF'E *-DD E1,9 1. /'/&error occurred while parsing referenceQXmlF.7' *-1 4/G (G H3DGT E51A FF/Gerror triggered by consumerQXmlhEH,H/* 9EHE *,2G 4/GT .'1, E1,9 /1 DTD E,'2 F3*;external parsed general entity reference not allowed in DTDQXmltEH,H/* 9EHE *,2G 4/GT .'1, E1,9 /1 EB/'1 5A* E,'2 F3*Gexternal parsed general entity reference not allowed in attribute valueQXmlREH,H/* 9EHE /'.D E1,9 /1 DTD E,'2 F3*4internal general entity reference not allowed in DTDQXml:F'E F'E9*(1 (1' E91A ~1/'24'invalid name for processing instructionQXml&-1A EH1/ 'F*8'1 '3*letter is expectedQXml2(4*1 '2  *91A FH9 3F/&more than one document type definitionQXml.7' 1. F/'/no error occurredQXml&EH,H/* G' ('24*recursive entitiesQXmlHGF'E .H'F/F XML ('F E3*BD F'2 '3*Astandalone declaration expected while reading the XML declarationQXml9/E *7'(B F4'FG tag mismatchQXml"FH3GT :1EF*81GTunexpected characterQXml.'F*G' F'EF*81GT ~1HF/Gunexpected end of fileQXml^EH,H/* 9EHE *,2G F4/GT E1,9 /1 2EFGT '4*('G*unparsed entity reference in wrong contextQXml<GF'E .H'F/F XML F3.G F'2 '3*2version expected while reading the XML declarationQXml8EB/'1 '4*('G (1' ('F E3*BD&wrong value for standalone declarationQXmlJ.7' %1 /1 %2  /1 .7 %3  3*HF %4: %5)Error %1 in %2, at line %3, column %4: %5QXmlPatternistCLI".7' %1 /1 %2: %3Error %1 in %2: %3QXmlPatternistCLIEHB9* F'4F'.*GUnknown locationQXmlPatternistCLIF'.7'1 /1 %1  /1 .7 %2  3*HF %3: %4(Warning in %1, at line %2, column %3: %4QXmlPatternistCLI'.7'1 /1 %1: %2Warning in %1: %2QXmlPatternistCLI>%1  4F'3GT 9EHE F'E9*(1 '3*.#%1 is an invalid PUBLIC identifier. QXmlStream<%1  F'E /0'1 F'E9*(1 '3*.%1 is an invalid encoding name. QXmlStreamJ%1  /3*H1'D9ED ~1/'24 F'E9*(1 '3*.-%1 is an invalid processing instruction name. QXmlStream& 'E' /1'A* 4/G: ' , but got ' QXmlStream('2*91A 5A*.Attribute redefined. QXmlStream8/0'1 %1 ~4*('F F4/G '3*Encoding %1 is unsupported QXmlStreamZ1H'1H (' E-*H' /0'1 4/G (G 4D F'/13*.(Encountered incorrectly encoded content. QXmlStream6EH,H/* %1 ('F F4/G '3*.Entity '%1' not declared. QXmlStreamEH1/ 'F*8'1 Expected  QXmlStream8/'/GT FH3G EH1/ 'F*8'1 '3*.Expected character data. QXmlStream8E-*H'* '6'AG /1 'F*G' 3F/.!Extra content at end of document. QXmlStream.('F :1E,'2 A6' F'E.Illegal namespace declaration. QXmlStream&FH3GT F'E9*(1 XML.Invalid XML character. QXmlStream F'E XML F'E9*(1.Invalid XML name. QXmlStream014*GT F'E9*(1 F3.GT XML.Invalid XML version string. QXmlStream05A* F'E9*(1 /1 ('F XML.%Invalid attribute in XML declaration. QXmlStream,'1,'9 '1'*1 F'E9*(1.Invalid character reference. QXmlStream3F/ F'E9*(1.Invalid document. QXmlStream,EB/'1 EH,H/* F'E9*(1.Invalid entity value. QXmlStream6/3*H1'D9ED ~1/'24 F'E9*(1.$Invalid processing instruction name. QXmlStream<NDATA /1 ('F EH,H/* ~'1'E*1.&NDATA in parameter entity declaration. QXmlStreamH~4HF/ %1 A6' F'E *91A F4/G '3*"Namespace prefix '%1' not declared QXmlStream8F4'FGT 41H9 H ~''F F'EF'3(. Opening and ending tag mismatch. QXmlStream*~''F F'(G GF'E 3F/.Premature end of document. QXmlStream2EH,H/* ('24* ~/' 4/.Recursive entity detected. QXmlStream5Reference to external entity '%1' in attribute value. QXmlStreamB'1,'9 (G EH,H/* *-DD F4/G %1."Reference to unparsed entity '%1'. QXmlStream>14*GT <[[ /1 E-*H' E,'2 F3*.&Sequence ']]>' not allowed in content. QXmlStreamB~01A*F G' E3*BD AB7 (DG ' .1."Standalone accepts only yes or no. QXmlStream0F4'FGT 41H9 EH1/ 'F*8'1.Start tag expected. QXmlStreamX5A* E3*BD '0( ('/ (9/ '2 /0'1 8'G1 4H/.?The standalone pseudo attribute must appear after the encoding. QXmlStreamF'EF*81G ' Unexpected ' QXmlStreamRFH3GT :1EF*81GT %1 /1 14*GT id 9EHE./Unexpected character '%1' in public id literal. QXmlStream2F3.GT ~4*('F F4/GT XML.Unsupported XML version. QXmlStream8('F XML /1 '(*/' 3F/ F3*.)XML declaration not at start of document. QXmlStreamT%1 H %2 41H9 H ~''F  .7 1' ,H1 E FF/.,%1 and %2 match the start and end of a line. QtXmlPatterns~5A* %1 /1 %2 ('/ '3*A'/GT %3 1' E'FF/ FH9 ~'GT %4 /'4*G ('4/.9%1 attribute in %2 must have %3 use like in base type %4. QtXmlPatterns|%1 5A* /1 FH9 ~/GT E4*B 4/G ('/ E'FF/ %2 /1 FH9 ~'G ('4/.B%1 attribute in derived complex type must be %2 like in base type. QtXmlPatterns5A* %1 '2 9F51 %2 4'ED E-*H'* :1 E,'2 '3*: {%3}  EB/'1 '2 FH9 %4 F3*.T%1 attribute of %2 element contains invalid content: {%3} is not a value of type %4. QtXmlPatternsd5A* %1 '2 9F51 %2 4'ED E-*H'* :1 E,'2 '3*: {%3}.:%1 attribute of %2 element contains invalid content: {%3}. QtXmlPatterns^5A* %1 '2 9F51 %2 EB/'1 (21*1 '2 5A* %3 /'1/.>%1 attribute of %2 element has larger value than %3 attribute. QtXmlPatternsJ5A* %1 '2 9F51 %2 ('/ %3 ' %4 ('4/.,%1 attribute of %2 element must be %3 or %4. QtXmlPatternst5A* %1 '2 9F51 %2 ('/ 4'ED %3 %4 ' D3* '2 URLG' ('4/.A%1 attribute of %2 element must contain %3, %4 or a list of URIs. QtXmlPatternsh5A* %1 '2 9F51 %2 ('/ 4'ED %3 ' EB'/1 /1 ('4/.F%1 attribute of %2 element must either contain %3 or the other values. QtXmlPatternsh5A* %1 '2 9F51 %2 ('/ EB/'1 %3 ' %4 1' /'4*G ('4/.9%1 attribute of %2 element must have a value of %3 or %4. QtXmlPatterns\5A* %1 '2 9F51 %2 ('/ EB/'1 %3 1' /'4*G ('4/.3%1 attribute of %2 element must have a value of %3. QtXmlPatterns5A* %1 '2 9F51 %2 ('/ EB/'1 %3 1' /'4*G ('4/ 21' 5A* %4 *F8E 4/G '3*.R%1 attribute of %2 element must have the value %3 because the %4 attribute is set. QtXmlPatterns@5A* %1 '2 9F51 %2 F('/ %3 ('4/.*%1 attribute of %2 element must not be %3. QtXmlPatterns4FE *H'F %1 1' ('2'( 1/%1 cannot be retrieved QtXmlPatternst%1 FE *H'F/ FH9 ~/GT ~'G ' G  %2 /'1/ /'4*G ('4/./%1 cannot have complex base type that has a %2. QtXmlPatternsT%1 4'ED 1HGT %2 (' /'/GT F'E9*(1 '3*: %3.+%1 contains %2 facet with invalid data: %3. QtXmlPatterns4%1 4'ED /'/GT F'E9*(1 '3*.%1 contains invalid data. QtXmlPatterns%1 4'ED G4*' G' '3* G /1 /0'1 /1.H'3* 4/G *H37 %2 E,'2 F3*F/.E%1 contains octets which are disallowed in the requested encoding %2. QtXmlPatterns|%1 9F51 %2  B/ E9*(1 9F51 %3 G %4 1' ('2*91A E F/ F3*.L%1 element %2 is not a valid restriction of the %3 element it redefines: %4. QtXmlPatterns9F51 %1 FE *H'F/ 5A* %2 1' (' EB/'1 E*A'H* '2 %3 ' %4 /'4*G ('4/.C%1 element cannot have %2 attribute with value other than %3 or %4. QtXmlPatterns|9F51 %1 FE *H'F/ 5A* %2 1' (' EB/'1 E*A'H* '2 %3 /'4*G ('4/.=%1 element cannot have %2 attribute with value other than %3. QtXmlPatternsf9F51 %1 FG 5A* %2 1' /'1/ FG 9F51 A12F/ %3 1' /'1/.9%1 element has neither %2 attribute nor %3 child element. QtXmlPatterns>9F51 %1 /1 'F 2EFG E,'2 F3*.*%1 element is not allowed in this context. QtXmlPatterns<9F51 %1 /1 'F BDE1H E,'2 F3*'%1 element is not allowed in this scope QtXmlPatternsn9F51 %1 /1 9F51 %2 '1 5A* %3 '1'&G 4/G ('4/ E,'2 F3*.G%1 element is not allowed inside %2 element if %3 attribute is present. QtXmlPatterns9F51 %1 E,'2 F3* G 5A* %2  3'F ('A6' F'E G/A %3 /'4*G ('4/.Y%1 element is not allowed to have the same %2 attribute value as the target namespace %3. QtXmlPatternsz9F51 %1 ('/ 5A* %2 ' %3 ' %4 1' (G 9FH'F A12F/ /'4*G ('4/.F%1 element must have either %2 attribute or %3 or %4 as child element. QtXmlPatterns`9F51 %1 ('/  '2 5A'* %2 ' %3 1' /'4*G ('4/./%1 element must have either %2 or %3 attribute. QtXmlPatterns^9F51 %1 F('/ 5A'* %2 H %3 1' (' GE /'4*G ('4/.6%1 element must not have %2 and %3 attribute together. QtXmlPatternsV9F51 %1  '2 5A'* %2 ' %3 1' F'2 /'1/...%1 element requires either %2 or %3 attribute. QtXmlPatterns^9F51 %1 (' A12F/ %2 F('/ 5A* %3 1' /'4*G ('4/.>%1 element with %2 child element must not have a %3 attribute. QtXmlPatternsp9F51 %1 (/HF 5A* %2 /1 71- (/HF A6' F'E G/A E,'2 F3*.V%1 element without %2 attribute is not allowed inside schema without target namespace. QtXmlPatternsX1HG G' %1 H %2 FE *H'FF/ (' GE 8'G1 4HF/.-%1 facet and %2 facet cannot appear together. QtXmlPatternsr1HGT %1 FE *H'F/ %2 ('4/ '1 1HGT %3 FH9 ~'G %4 ('4/.5%1 facet cannot be %2 if %3 facet of base type is %4. QtXmlPatterns~1HGT %1 FE *H'F/ %2 ' %3 ('4/ '1 1HGT %4 FH9 ~'G %5 ('4/.;%1 facet cannot be %2 or %3 if %4 facet of base type is %5. QtXmlPatterns41HGT %1 (' %2 */'.D /'1/. %1 facet collides with %2 facet. QtXmlPatternsH1HGT %1 4'ED 9('1* EF8E F'E9*(1 '3*,%1 facet contains invalid regular expression QtXmlPatternsL1HG %1 4'ED EB/'1 F'E9*(1 %2 '3*: %3.'%1 facet contains invalid value %2: %3. QtXmlPatternsj1HGT %1 ('/ (21*1 ' E3'H 1HGT %2 FH9 ~'G ('4/.=%1 facet must be equal or greater than %2 facet of base type. QtXmlPatterns^1HGT %1 ('/ (21*1 '2 1HGT %2 FH9 ~'G ('4/.4%1 facet must be greater than %2 facet of base type. QtXmlPatternsj1HGT %1 ('/ (21*1 ' E3'H 1HGT %2 FH9 ~'G ('4/.@%1 facet must be greater than or equal to %2 facet of base type. QtXmlPatterns^1HGT %1 ('/ H*1 '2 1HGT %2 FH9 ~'G ('4/.1%1 facet must be less than %2 facet of base type. QtXmlPatternsL1HGT %1 ('/ H*1 '2 1HGT %2 ('4/.$%1 facet must be less than %2 facet. QtXmlPatternsj1HGT %1 ('/ H*1 ' E3'H 1HGT %2 FH9 ~'G ('4/.=%1 facet must be less than or equal to %2 facet of base type. QtXmlPatternsX1HGT %1 ('/ H*1 ' E3'H 1HGT %2 ('4/.0%1 facet must be less than or equal to %2 facet. QtXmlPatterns`1HGT %1 ('/ GE'F EB/'1 1HGT %2 FH9 ~'G ('4/.;%1 facet must have the same value as %2 facet of base type. QtXmlPatterns~%1 AD/ 9// E*A'H* '2 B/ GH* %2 G (G "F '4'1G E F/ /'1/.W%1 has a different number of fields from the identity constraint %2 that it references. QtXmlPatterns^%1 wildcard 5A* /'1/ 'E' FH9 ~'GT %2 '4 F/'1/.7%1 has attribute wildcard but its base type %2 has not. QtXmlPatternsL%1 /1 FH9 %2 ~'G '4 -DBGT H1'+* /'1/.,%1 has inheritance loop in its base type %2. QtXmlPatterns%1  FH9 ~/G '3*. *(/D (G FH9 ~/G :1EEF '3*. 'E' *(/D (G 'FH'9 '*E E+D %2 '1 E F/.s%1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works. QtXmlPatterns(%1  %2 F'E9*(1 '3*%1 is an invalid %2 QtXmlPatterns%1  ~1E F'E9*(1 (1' 9('1'* EF8E '3*. ~1E G' E9*(1 'F G' G3*F/:?%1 is an invalid flag for regular expressions. Valid flags are: QtXmlPatterns@%1  A6' F'E URL F'E9*(1 '3*.%1 is an invalid namespace URI. QtXmlPatternsL%1  'DH 9('1* EF8E F'E9*(1 '3*: %2/%1 is an invalid regular expression pattern: %2 QtXmlPatterns@%1  F'E -'D* B'D( F'E9*(1 '3*.$%1 is an invalid template mode name. QtXmlPatterns2%1 FH9 F'4F'.*GT 71- FH9.%1 is an unknown schema type. QtXmlPatterns@%1  /0'1 ~4*('F F4/G '3*.%1 is an unsupported encoding. QtXmlPatternsB%1  '1'*1 E9*(1 1.0 XML F3*.$%1 is not a valid XML 1.0 character. QtXmlPatternsV%1  F'E E9*(1 (1' /3*H1'9ED ~1/'24 F3*.4%1 is not a valid name for a processing-instruction. QtXmlPatterns6%1  DA8 9// F'E9*(1 '3*."%1 is not a valid numeric literal. QtXmlPatterns%1  F'E G/A E9*(1 /1 /3*H1'D9ED ~1/'24 F3*. "F ('/  EB/'1 %2 ('4/ (1' E+'D %3.Z%1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3. QtXmlPatternsB%1  EB/'1 E9*(1 '2 FH9 %2 F3*.#%1 is not a valid value of type %2. QtXmlPatterns4%1 *E'E 9// /BBG G' F3*.$%1 is not a whole number of minutes. QtXmlPatterns%1 FE *H'F/ (' ~3HF/ '2 %2 E4*B 4H/ E'FF/ FH3G ' G "F 1' (G 9FH'F FG' *91A E F/.S%1 is not allowed to derive from %2 by extension as the latter defines it as final. QtXmlPatterns%1 FE *H'F/ (' D3* '2 %2 E4*B 4H/ E'FF/ FH3G ' G "F 1' (G 9FH'F FG' *91A E F/.N%1 is not allowed to derive from %2 by list as the latter defines it as final. QtXmlPatterns%1 FE *H'F/ (' 417 '2 %2 E4*B 4H/ E'FF/ FH3G ' G "F 1' (G 9FH'F FG' *91A E F/.U%1 is not allowed to derive from %2 by restriction as the latter defines it as final. QtXmlPatterns%1 FE *H'F/ (' '*-'/ '2 %2 E4*B 4H/ E'FF/ FH3G ' G "F 1' (G 9FH'F FG' *91A E F/.O%1 is not allowed to derive from %2 by union as the latter defines it as final. QtXmlPatternsR%1 FE *H'F/ 96H GE F'E .H/4 /'4*G ('4/.E%1 is not allowed to have a member type with the same name as itself. QtXmlPatterns\FH9 3'/GT %1 E,'2 F3* G 1HG ' /'4*G ('4/.%%1 is not allowed to have any facets. QtXmlPatternsp%1  FH9 '*E F3*. *(/D AB7 (1' 'FH'9 '*E EEF '3*.C%1 is not an atomic type. Casting is only possible to atomic types. QtXmlPatterns%1  '9D'F 5A* /1HF BDE1H F3*. *H,G F/ G H H'1/ 1/F 71- ~4*('F F4/G '3*.g%1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported. QtXmlPatterns0%1 (1 7(B %2 E9*(1 F3*. %1 is not valid according to %2. QtXmlPatternsP%1 (G 9FH'F EB/'1 '2 FH9 %2 E9*(1 F3*.&%1 is not valid as a value of type %2. QtXmlPatternsB%1 (' '1'*1 .7 ,// E7'(B* /'1/%1 matches newline characters QtXmlPatternsr%1 ('/ (' %2 ' %3 GE1'G 4H/ FG /1 ~''F 14*GT ,'2F.J%1 must be followed by %2 or %3, not at the end of the replacement string. QtXmlPatterns%1 -1HA ,'2F 4HF/G E4*B 4/G B/ E9*(1 %2 -1HA ,'2F 4HF/GT ~'G F3*F/H%1 of derived wildcard is not a valid restriction of %2 of base wildcard QtXmlPatternsh5A* %1 ' %2 '2 '1,'9 %3 (' '9D'F 5A* %4 E7'(B F3*.T%1 or %2 attribute of reference %3 does not match with the attribute declaration %4. QtXmlPatternsl%1 (G B/ GH* %2 G 9F51 %3 ' %4 F3* E1',9G E F/.A%1 references identity constraint %2 that is no %3 or %4 element. QtXmlPatternsR%1 %2 ' %3 F'E4.5 9F51 %4 E1',9G E F/.*%1 references unknown %2 or %3 element %4. QtXmlPatternsn%1 D''BD %n "1HE'F F'2 /'1/. (F'(1'F %2 F'E9*(1 '3*.=%1 requires at least %n argument(s). %2 is therefore invalid. QtXmlPatternsl%1 -/'+1 %n "1HE'F E 1/. (F'(1'F %2 F'E9*(1 '3*.9%1 takes at most %n argument(s). %2 is therefore invalid. QtXmlPatterns(%1 A1'.H'F 4/G (H/.%1 was called. QtXmlPatterns1HG G' %1 %2 %3 %4 %5 H %6 GF'E G (G H3DGT D3* E4*B E 4HF/ E,'2 F3*F/.F%1, %2, %3, %4, %5 and %6 facets are not allowed when derived by list. QtXmlPatternsV5A* %1 4'ED E-*H' F'E9*(1 QName '3*: %2.2'%1' attribute contains invalid QName content: %2. QtXmlPatterns> *H6- FE *H'F/ 4'ED %1 ('4/A comment cannot contain %1 QtXmlPatternsJ *H6- FE *H'F/ ('  %1 *E'E 4H/.A comment cannot end with a %1. QtXmlPatternsX(1.H1/ (' 3'.*'1 :1E,'2 /1 2('F ,'1 (%1)..LA construct was encountered which is disallowed in the current language(%1). QtXmlPatterns'9D'F  A6' F'E ~4 A16 ('/ B(D '2 '9D'F *'(9 E*:1 H 2FG G' '*A'B (A*/.^A default namespace declaration must occur before function, variable, and option declarations. QtXmlPatternsv3'2F/GT E3*BE  9F51 .H4 A1E F3*. %1 (' %2 *E'E 4/G '3*.EA direct element constructor is not well-formed. %1 is ended with %2. QtXmlPatternsN *'(9 (' 'E6' %1 GE 'FHF H,H/ /'1/.0A function already exists with the signature %1. QtXmlPatterns E'HD *'(.'FG ' FE *H'F/ (G *FG' (113 4H/. "F ('/ '2  E'HD '5D H'1/ 4H/.VA library module cannot be evaluated directly. It must be imported from a main module. QtXmlPatternsp ~'1'E*1 /1  *'(9 FE *H'F/ (G 9FH'F *HFD '9D'F 4H/.Can not process unknown element %1, expected elements are: %2. QtXmlPatterns9F51 A12F/ /1 'F BDE1H EABH/ 4/G '3* 9F'51 A12F/ EEF 'F G' G3*F/: %1.HChild element is missing in that scope, possible child elements are: %1. QtXmlPatterns4'1,'9 1HG -DBH (1' %1. Circular group reference for %1. QtXmlPatterns2H1'+* 1/4 ~'GT FH9 %1.%Circular inheritance of base type %1. QtXmlPatterns*H1'+* 1/4 '*-'/ %1.!Circular inheritance of union %1. QtXmlPatternsFH9 ~/GT %1 FE *H'F/ (' ~3HF/ '2 %2 E4*B 4H/ GEF'F G '.1'K 4'ED 9F51 %3 /1 E/D E-*H'*4 '3*.nComplex type %1 cannot be derived by extension from %2 as the latter contains %3 element in its content model. QtXmlPatterns\FH9 ~/GT %1 FE *H'F/ '2 FH9 %2%3 E4*B 4H/.6Complex type %1 cannot be derived from base type %2%3. QtXmlPatternsFH9 ~/GT %1 4'ED 5A* %2 '3*.G B/ EB/'1 /'1/ 'E' FH9 1' '2 %3 (G '1+ E (1/._Complex type %1 contains attribute %2 that has value constraint but type that inherits from %3. QtXmlPatternsPFH9 ~/GT %1 5A* %2 1' /H('1 4'ED '3*.,Complex type %1 contains attribute %2 twice. QtXmlPatternsFH9 ~/GT %1 4'ED /H 5A* E*A'H* '3* G G1 /H '2 %2 E4*B 4/G 'F/.WComplex type %1 contains two different attributes that both have types derived from %2. QtXmlPatternspFH9 ~/GT %1 /1 E/D E-*H'*4 9F51 F/'FGT %2 1' /'1/.?Complex type %1 has duplicated element %2 in its content model. QtXmlPatternsHFH9 ~/GT %1 E-*H'* :1B79 /'1/..Complex type %1 has non-deterministic content. QtXmlPatternsLFH9 ~/GT %1 FE *H'F/ 'F*2'9 ('4/..Complex type %1 is not allowed to be abstract. QtXmlPatternsXFH9 ~/GT %1 ('/ E-*H'* 3'/G /'4*G ('4/.)Complex type %1 must have simple content. QtXmlPatternsFH9 ~/GT %1 ('/ GE'F 'FH'9 3'/G 1' E'FF/ D'3 %2 ~'G '4 /'4*G ('4/.DComplex type %1 must have the same simple type as its base class %2. QtXmlPatternsFH9 ~/GT %1 (' E-*H'* 3'/G FE *H'F/ '2 FH9 ~/GT %2 E4*B 4H/.PComplex type %1 with simple content cannot be derived from complex base type %2. QtXmlPatternsFH9 ~/GT E4*B 4/G '2 9F51 %1 FE *H'F/ (G 7H1 E9*(1 '2 9F51 ~'G E4*B 4H/.OComplex type of derived element %1 cannot be validly derived from base element. QtXmlPatternsD,2& (' ID %1 B(D'K *91A 4/G '3*.1Component with ID %1 has been defined previously. QtXmlPatternsE-*H'* E/D FH9 ~/GT %1 4'ED %2 '3* (F'(1'F FE *H'F/ (' ~3HF/ '2 FH9 :1 *G E4*B 4H/.pContent model of complex type %1 contains %2 element so it cannot be derived by extension from a non-empty type. QtXmlPatternszE/D E-*H'* FH9 ~/GT %1 ~3HF/ E9*(1 E/D E-*H'* %2 F3*F/.QContent model of complex type %1 is not a valid extension of content model of %2. QtXmlPatternsjE-*H'* 5A* %1 '2 9F51 %2 F('/ '2 A6' F'E %3 ('4/.DContent of %1 attribute of %2 element must not be from namespace %3. QtXmlPatternsbE-*H'* 5A* %1 (' B/ EB/'1 *91A 4/G E7'(B F3*.@Content of attribute %1 does not match defined value constraint. QtXmlPatternsXE-*H'* 5A* %1 (' *91A FH94 E7'(B F3*: %2.?Content of attribute %1 does not match its type definition: %2. QtXmlPatternsdE-*H'* 9F51 %1 (' B/ EB/'1 *91A 4/G E7'(B F3*.>Content of element %1 does not match defined value constraint. QtXmlPatternsRE-*H'* 9F51 %1 (' *91A4 E7'(B F3*: %2.=Content of element %1 does not match its type definition: %2. QtXmlPatterns@/'/G FH9 %1 FE *H'F/ .'D ('4/.,Data of type %1 are not allowed to be empty. QtXmlPatternsVE-*H' *'1. 2E'F (' 1HGT 'DH E7'(B F3*./Date time content does not match pattern facet. QtXmlPatternsdE-*H' *'1. 2E'F (' 1HGT AB7 E'2EE E7'(B F3*.8Date time content does not match the maxExclusive facet. QtXmlPatternsfE-*H' *'1. 2E'F (' 1HGT 4'ED E'2EE E7'(B F3*.8Date time content does not match the maxInclusive facet. QtXmlPatternsbE-*H' *'1. 2E'F (' 1HGT AB7 EFEE E7'(B F3*.8Date time content does not match the minExclusive facet. QtXmlPatternsdE-*H' *'1. 2E'F (' 1HGT 4'ED EFEE E7'(B F3*.8Date time content does not match the minInclusive facet. QtXmlPatternsVE-*H' *'1. 2E'F /1 1HGT 4E'14 D3* F4/G.9Date time content is not listed in the enumeration facet. QtXmlPatterns>1H2 %1 (1' E'G %2 F'E9*(1 '3*.Day %1 is invalid for month %2. QtXmlPatternsB1H2 %1 .'1, '2 /'EFGT %2 '3*..%3.#Day %1 is outside the range %2..%3. QtXmlPatternsbE-*H' 9// /G /G (' 1HGT '1B'E 31 E7'(B F3*.;Decimal content does not match in the fractionDigits facet. QtXmlPatternsdE-*H' 9// /G /G (' 1HGT E,EH9 '1B'E E7'(B F3*.8Decimal content does not match in the totalDigits facet. QtXmlPatterns<(1' 5A* %1 '9D'F H,H/ F/'1/.,Declaration for attribute %1 does not exist. QtXmlPatterns>(1' 9F51 %1 '9D'F H,H/ F/'1/.*Declaration for element %1 does not exist. QtXmlPatternsr1H4 '4*B'B %1 ('/ ~3HF/ ('4/ 21' ~'GT FH9 %2 3'/G '3*.TDerivation method of %1 must be extension because the base type %2 is a simple type. QtXmlPatternsT5A* E4*B 4/GT %1 /1 *91A ~'G H,H/ F/'1/.;Derived attribute %1 does not exist in the base definition. QtXmlPatterns5A* E4*B 4/GT %1 (' DE'* ,'2F 4HF/G /1 *91A ~'G E7'(B* F/'1/.HDerived attribute %1 does not match the wildcard in the base definition. QtXmlPatternst*91A E4*B 4/G 4'ED 5A* %1 '3* G /1 *91A ~'G H,H/ F/'1/UDerived definition contains an %1 element that does not exists in the base definition QtXmlPatterns9F51 E4*B 4/G %1 GE'F 7H1 G 9F51 ~'G '4 nillable F3* FE *H'F/ nillable ('4/.FDerived element %1 cannot be nillable as base element is not nillable. QtXmlPatterns9F51 E4*B 4/G %1 EB/'1 69A *1 /'1/ G '2 9F51 ~'G EB/ E 4H/.BDerived element %1 has weaker value constraint than base particle. QtXmlPatterns9F51 E4*B 4/GT %1 EB/'1 E4/G '3* G /1 01GT ~'GT (G 9FH'F *91A 4/G EB/ 4/G.KDerived element %1 is missing value constraint as defined in base particle. QtXmlPatternsjE-*H'* :1E,'2 /1 9F51 ~'G /1 9F51 E4*B 4/G E,'2F/.IDerived particle allows content that is not allowed in the base particle. QtXmlPatternsB01GT E4*B 4/G 9F51 E4/GT %1 '3*.'Derived particle is missing element %1. QtXmlPatterns-1HA ,'2F 4HF/GT E4*B 4/G 21 E,EH9G ' '2 -1HA ,'2F 4HF/GT ~'G F3*F/.6Derived wildcard is not a subset of the base wildcard. QtXmlPatternsd*B3E EB'/1 '2 FH9 %1 (1 %2 (:1 9//) E,'2 F3*.@Dividing a value of type %1 by %2 (not-a-number) is not allowed. QtXmlPatternsv*B3E EB'/1 '2 FH9 %1 (1 %2 ' %3 (+ ' - 5A1) E,'2 F3*.LDividing a value of type %1 by %2 or %3 (plus or minus zero) is not allowed. QtXmlPatternsL*B3E (%1) (1 5A1 (%2) *91A F4/G '3*.(Division (%1) by zero (%2) is undefined. QtXmlPatterns,3F/  'DH XML F3*.Document is not a XML schema. QtXmlPatternsVE-*H' 9// '94'1 (' 1HGT 'DH E7'(B F3*.,Double content does not match pattern facet. QtXmlPatternsdE-*H' 9// '94'1 (' 1HGT AB7 E'2EE E7'(B F3*.5Double content does not match the maxExclusive facet. QtXmlPatternsfE-*H' 9// '94'1 (' 1HGT 4'ED E'2EE E7'(B F3*.5Double content does not match the maxInclusive facet. QtXmlPatternsbE-*H' 9// '94'1 (' 1HGT AB7 EFEE E7'(B F3*.5Double content does not match the minExclusive facet. QtXmlPatternsdE-*H' 9// '94'1 (' 1HGT 4'ED EFEE E7'(B F3*.5Double content does not match the minInclusive facet. QtXmlPatternsVE-*H' 9// '94'1 /1 1HGT 4E'14 D3* F4/G.6Double content is not listed in the enumeration facet. QtXmlPatterns>F'E G' F/'FGT %1 /1 9F51 %2.*Duplicated element names %1 in %2 element. QtXmlPatterns<1HGT F/'FG /1 FH9 3'/GT %1.$Duplicated facets in simple type %1. QtXmlPatternsHE-*H' E/* (' 1HGT 'DH E7'(B F3*..Duration content does not match pattern facet. QtXmlPatternsVE-*H' E/* (' 1HGT AB7 E'2EE E7'(B F3*.7Duration content does not match the maxExclusive facet. QtXmlPatternsXE-*H' E/* (' 1HGT 4'ED E'2EE E7'(B F3*.7Duration content does not match the maxInclusive facet. QtXmlPatternsTE-*H' E/* (' 1HGT AB7 EFEE E7'(B F3*.7Duration content does not match the minExclusive facet. QtXmlPatternsVE-*H' E/* (' 1HGT 4'ED EFEE E7'(B F3*.7Duration content does not match the minInclusive facet. QtXmlPatternsHE-*H' E/* /1 1HGT 4E'14 D3* F4/G.8Duration content is not listed in the enumeration facet. QtXmlPatternshG1 F'E ~'1'E*1 B'D( ('/ 'FG ('4/ %1 F/'FG '3*.CEach name of a template parameter must be unique; %1 is duplicated. QtXmlPatternsEB/'1 EHT+1 (HDF FE *H'F/ (1' 14*G ' (' /H ' F/ EB/'1 '*E E-'3(G 4H/.aEffective Boolean Value cannot be calculated for a sequence containing two or more atomic values. QtXmlPatterns>9F51 %1 GE 'FHF *91A 4/G '3*.Element %1 already defined. QtXmlPatterns9F51 %1 FE *H'F/ 31'D2G 4H/ 21' .'1, '2 9F51 3F/ (G F81 E 13/.OElement %1 can't be serialized because it appears outside the document element. QtXmlPatternsj'1 9F51 %1 +'(* ('4/ FE *H'F/ 4'ED 9F'51 /1 ('4/.DElement %1 cannot contain other elements, as it has a fixed content. QtXmlPatternsT9F51 %1 FE *H'F/ 3'2F/GT 14*G /'4*G ('4/..Element %1 cannot have a sequence constructor. QtXmlPatternsF9F51 %1 FE *H'F/ A12F/ /'4*G ('4/. Element %1 cannot have children. QtXmlPatterns@9F51 %1 4'ED E-*H' F'E9*(1 '3*.$Element %1 contains invalid content. QtXmlPatterns:9F51 %1 4'ED 5A* :1E,'2 '3*.+Element %1 contains not allowed attributes. QtXmlPatternsN9F51 %1 4'ED E-*H'* A12F/ :1E,'2 '3*..Element %1 contains not allowed child content. QtXmlPatternsH9F51 %1 4'ED 9F51 A12F/ :1E,'2 '3*..Element %1 contains not allowed child element. QtXmlPatternsJ9F51 %1 4'ED E-*H'* E*F :1E,'2 '3*.-Element %1 contains not allowed text content. QtXmlPatterns<9F51 %1 /H 5A* '2 FH9 %2 /'1/..Element %1 contains two attributes of type %2. QtXmlPatternsD9F51 %1 4'ED 5A* F'4F'.*GT %2 '3*.)Element %1 contains unknown attribute %2. QtXmlPatterns9F51 %1 (' A6' F'E G '2 -1A ,'2F 4HF/G /1 9F51 ~'G EB/ E 4H/ *7'(B F/'1/.LElement %1 does not match namespace constraint of wildcard in base particle. QtXmlPatternsP9F51 %1 /H('1 (' 'FH'9 E*A'H* H,H/ /'1/.-Element %1 exists twice with different types. QtXmlPatternsD9F51 %1 (G 5H1* 'F*2'9 '9D'F '3*.#Element %1 is declared as abstract. QtXmlPatternsD9F51 %1 9F51 A12F/ 1' E 1/G '3*.$Element %1 is missing child element. QtXmlPatternsF9F51 %1 /1 ,2! E4*B 4/G E 4/G '3*.*Element %1 is missing in derived particle. QtXmlPatternsH9F51 %1 5A* E 4/GT EH1/F'2 %2 '3*.,Element %1 is missing required attribute %2. QtXmlPatterns<9F51 %1 /1 'F E'F E,'2 F3*.+Element %1 is not allowed at this location. QtXmlPatternsx9F51 %1 /1 'F BDE1H E,'2 F3* 9F'51 EEF 'F G' G3*F/: %2.CElement %1 is not allowed in this scope, possible elements are: %2. QtXmlPatternsFH9 %1 E,'2 (G /'4*F B/ EB/'1 F3* '1 FH9 ~'G '4 ~/G ('4/.QElement %1 is not allowed to have a value constraint if its base type is complex. QtXmlPatternsnFH9 %1 E,'2 (G /'4*F B/ EB/'1 F3* '1 '2 %2 E4*B 4H/.TElement %1 is not allowed to have a value constraint if its type is derived from %2. QtXmlPatternsFH9 %1 E,'2 (G /'4*F H'(3* E,EH9GT 21-'D* F3* E'/'E G 9F51 31'31 F('4/.\Element %1 is not allowed to have substitution group affiliation as it is no global element. QtXmlPatternsH9F51 %1 /1 'F BDE1H *91A F4/G '3*.(Element %1 is not defined in this scope. QtXmlPatterns,9F51 %1 nillable F3*.Element %1 is not nillable. QtXmlPatterns49F51 %1 ('/ /1 ".1 ('/.Element %1 must come last. QtXmlPatternsl9F51 %1 ('/ -/'BD  '2 5A'* %2 ' %3 1' /'4*G ('4/.=Element %1 must have at least one of the attributes %2 or %3. QtXmlPatternsj9F51 %1 ('/  5A* %2 '  3'2F/GT 14*G /'4*G ('4/.EElement %1 must have either a %2-attribute or a sequence constructor. QtXmlPatternsT9F51 4'ED E-*H'* '3* '1G nillable '3*.1Element contains content although it is nillable. QtXmlPatternsH1HG 9F51 %1 GE 'FHF *91A 4/G '3*.!Element group %1 already defined. QtXmlPatternsb 01GT *G FE *H'F/ '2  01GT :1*G E4*B 4H/.9Empty particle cannot be derived from non-empty particle. QtXmlPatterns1HGT 4E'14 4'ED E-*H'* :1 E,'2 '3*: {%1}  EB/'1 '2 FH9 %2 F3*.KEnumeration facet contains invalid content: {%1} is not a value of type %2. QtXmlPatterns4AD/ %1 FH9 3'/G ' F/'1/.Field %1 has no simple type. QtXmlPatterns^B/ 9F51 +'(* E,'2 F3* '1 9F51 nillable ('4/.:Fixed value constraint not allowed if element is nillable. QtXmlPatternsEB/'1 '5D'- 4/G ' G '2 9F51 %1 EB/ E 4H/ '2 EB/'1 G '2 9F51 ~'G EB/ E 4H/ E*A'H* '3*.TFixed value constraint of element %1 differs from value constraint in base particle. QtXmlPatterns0EB/'1 ID %1 *' F3*.ID value '%1' is not unique. QtXmlPatternsFB/ GH* %1 GE 'FHF *91A 4/G '3*.'Identity constraint %1 already defined. QtXmlPatterns'1 G1 /H EB/'1 'F-1'A F'-G ' /'1F/ 'F-1'A F'-G ' "F G' ('/ (1'(1 ('4/. %1 H %2  F3*F/.bIf both values have zone offsets, they must have the same zone offset. %1 and %2 are not the same. QtXmlPatterns'1 9F51 %1 5A* %2 1' F/'4*G ('4/ FE *H'F/ 5A* %3 ' %4 1' /'4*G ('4/.EIf element %1 has no attribute %2, it cannot have attribute %3 or %4. QtXmlPatterns'1 'HDF "1HE'F .'D '  14*G (' 7HD 5A1 ('4/  ~4HF/ FE *H'F/ E4.5 4H/. ~4HF/ %1 E4.5 4/G (H/.If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified. QtXmlPatterns/1  3'2F/GT A6' F'E EB/'1 A6' F'E FE *H'F/  14*GT .'D ('4/.PIn a namespace constructor, the value for a namespace cannot be an empty string. QtXmlPatternst/1  E'HD E,EH9G *9'1A 3'/G 4/G 5A* %1 ('/ '1'&G 4H/.@In a simplified stylesheet module, attribute %1 must be present. QtXmlPatterns/1  'DH XSL-T AB7 'DH G' %2 H %3 FG %1 E *H'FF/ '3*A'/G 4HF/.DIn an XSL-T pattern, axis %1 cannot be used, only axis %2 or %3 can. QtXmlPatternsx/1  'DH XSL-T *'(9 %1 FE *H'F/ "1HE'F 3HE /'4*G ('4/.>In an XSL-T pattern, function %1 cannot have a third argument. QtXmlPatterns/1  'DH XSL-T AB7 *H'(9 %1 H %2 FG %3 E *H'F/ (1' *7'(B '3*A'/G 4HF/.OIn an XSL-T pattern, only function %1 and %2, not %3, can be used for matching. QtXmlPatterns/1  'DH XSL-T "1HE'F 'HD *'(9 %1 GF'E G (1' *7'(B '3*A'/G E 4H/ ('/ DA8 ' '4'1G 1 (G E*:1 ('4/.yIn an XSL-T pattern, the first argument to function %1 must be a literal or a variable reference, when used for matching. QtXmlPatterns/1  'DH XSL-T "1HE'F 'HD *'(9 %1 GF'E G (1' *7'(B '3*A'/G E 4H/ ('/ 14*G ('4/.hIn an XSL-T pattern, the first argument to function %1 must be a string literal, when used for matching. QtXmlPatterns/1 14*GT ,'2F %1 AB7 ('/ (1' A1'1 '2 %2 ' .H/4 '3*A'/G 4H/ FG %3MIn the replacement string, %1 can only be used to escape itself or %2, not %3 QtXmlPatterns/1 14*GT ,'2F %1 GF'E G 4F'3GT A1'1 F3* ('/ -/'BD ('  1BE GE1'G 4H/.VIn the replacement string, %1 must be followed by at least one digit when not escaped. QtXmlPatternsV*B3E 5-- (%1) (1 5A1 (%2) *91A F4/G '3*.0Integer division (%1) by zero (%2) is undefined. QtXmlPatterns2E-*H' F'E9*(1 QName: %1.Invalid QName content: %1. QtXmlPatterns@EB/ 1/F (G ~4HF/ %1 EEF F3*+It is not possible to bind to the prefix %1 QtXmlPatternsNFE *H'F ~4HF/ %1 1' /H('1G '9D'F 1/.*It is not possible to redeclare prefix %1. QtXmlPatterns8'E'F ('2'( %1 H,H/ F/'1/.'It will not be possible to retrieve %1. QtXmlPatternsd(9/ '2 G1 FH9 1G 'E'F '6'AG 1/F 5A* H,H/ F/'1/.AIt's not possible to add attributes after any other kind of node. QtXmlPatternsfFE *H'F /1 EH1/ "*E FH9 %1 '2 9F51 %2 *5EE 1A*..Item type %1 of %2 element cannot be resolved. QtXmlPatternsT"*E FH9 ~'G (' "*E FH9 %1 E7'(B* F/'1/.6Item type of base type does not match item type of %1. QtXmlPatterns`FH9 "*E FH9 3'/GT %1 FE *H'F/ FH9 ~/G ('4/.5Item type of simple type %1 cannot be a complex type. QtXmlPatterns@B/ D/ %1 4'ED AD/ EABH/ '3*.)Key constraint %1 contains absent fields. QtXmlPatterns`B/ D/ %1 4'ED '1,'9 G' 9F51 nillable %2 '3*.:Key constraint %1 contains references nillable element %2. QtXmlPatternsHE-*H' D3* (' 1HGT 7HD E7'(B F3*.)List content does not match length facet. QtXmlPatternsXE-*H' D3* (' 1HGT 7HD E'2EE E7'(B F3*.,List content does not match maxLength facet. QtXmlPatternsVE-*H' D3* (' 1HGT 7HD EFEE E7'(B F3*.,List content does not match minLength facet. QtXmlPatternsJE-*H' D3* (' 1HGT 'DH E7'(B F3*.*List content does not match pattern facet. QtXmlPatternsJE-*H' D3* /1 1HGT 4E'14 D3* F4/G.4List content is not listed in the enumeration facet. QtXmlPatterns8A'D 71- ('14/G F'E9*(1 '3*.Loaded schema file is invalid. QtXmlPatterns6*7'(B G' -3'3 (G -'D* G3*F/Matches are case insensitive QtXmlPatternshFH9 %1 FE *H'F/ '2 FH9 %2 FH9 %4 ~'GT %3 E4*B 4H/.JMember type %1 cannot be derived from member type %2 of %3's base type %4. QtXmlPatternsdFE *H'F /1 EH1/ 96H FH9 %1 '2 9F51 %2 *5EE 1A*.0Member type %1 of %2 element cannot be resolved. QtXmlPatternsV'96' FH9 3'/GT %1 FE *H'FF/ ~/G ('4F/.7Member type of simple type %1 cannot be a complex type. QtXmlPatternsH'1/ 1/F E'HD ('/ B(D '2 '9D'F *'(9 E*:1 H 2FG G' '*A'B (A*/.MModule imports must occur before function, variable, and option declarations. QtXmlPatterns^('BE'F/G 1 (%1) '2 5A1 (%2) *91A F4/G '3*.0Modulus division (%1) by zero (%2) is undefined. QtXmlPatternsBE'G %1 .'1, '2 /'EFGT %2 '3*..%3.%Month %1 is outside the range %2..%3. QtXmlPatternsL(4 '2  EB/'1 (1' E/'F %1 ~/' 4/.'More than one value found for field %1. QtXmlPatterns|61( EB'/1 '2 FH9 %1 /1 %2 ' %3 (+ ' - ( FG'*) E,'2 F3*.YMultiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed. QtXmlPatternsA6' F'E %1 AB7 E *H'F/ (G %2 EB/ 4H/ (/1 G1 -'D* ~4 '9D'F 4/G '3*).ONamespace %1 can only be bound to %2 (and it is, in either case, pre-declared). QtXmlPatterns'9D'F A6' F'E ('/ B(D '2 '9D'F *'(9 E*:1 H 2FG G' '*A'B (A*/.UNamespace declarations must occur before function, variable, and option declarations. QtXmlPatternsb~4HF/ A6' F'E F'E E4.5 4/GT %1 *91A F4/G '3*.5Namespace prefix of qualified name %1 is not defined. QtXmlPatterns"HBAGT 2E'F 4(G.Network timeout. QtXmlPatternsF*91A (1' 9F51 %1 /1 /3*13 F3*.'No definition for element %1 available. QtXmlPatternsG *'(9 .'1, ~4*('F F4/G '3*. *E'E *H'(9 ~4*('F 4/G E *H'FF/ (/HF ('F (G 5H1* .'1, /1 '(*/' (G 7H1 E3*BE '3*A'/G 4HF/{No external functions are supported. All supported functions can be used directly, without first declaring them as external QtXmlPatternsDG *'(9 (' F'E %1 /1 /3*13 F3*.&No function with name %1 is available. QtXmlPatterns>*'(9 (' 'E6' %1 /1 /3*13 F3**No function with signature %1 is available QtXmlPatternsbG EB/ 3'2 A6' F'E (1' ~4HF/ %1 H,H/ F/'1/-No namespace binding exists for the prefix %1 QtXmlPatternsnG EB/ 3'2 A6' F'E (1' ~4HF/ %1 /1 %2 H,H/ F/'1/3No namespace binding exists for the prefix %1 in %2 QtXmlPatternsdG 9F51 E1',9G 4/G ' (1' D/ E1,9 %1 ~/' F4/./No referenced value found for key reference %1. QtXmlPatternsH71- (1' '9*('13F, *91A F4/G '3*.!No schema defined for validation. QtXmlPatterns>G B'D( (' F'E %1 H,H/ F/'1/.No template by name %1 exists. QtXmlPatterns`EB/'1 (1' E*:1 .'1, (' F'E %1 /1 /3*13 F3*.=No value is available for the external variable with name %1. QtXmlPatterns@G E*:1 (' F'E %1 H,H/ F/'1/No variable with name %1 exists QtXmlPatternsFEB/'1 :1 *' (1' B/ %1 ~/' 4/.)Non-unique value found for constraint %1. QtXmlPatternsG 9('1* 9ED ~4*('F F4/G '3F. (F'(1'F  9('1* 9B( F4F ('/ '1'&G 4H/^None of the pragma expressions are supported. Therefore, a fallback expression must be present QtXmlPatternsLF4'FG 0'1 %1 GE 'FHF *91A 4/G '3*.Notation %1 already defined. QtXmlPatternsXE-*H' 9D'E* 0'1 /1 1HGT 4E'14 D3* F4/G.8Notation content is not listed in the enumeration facet. QtXmlPatternsAB7 1HG G' %1 H %2 GF'E G (G H3DGT '*-'/ E4*B E 4HF/ E,'2 G3*F/.8Only %1 and %2 facets are allowed when derived by union. QtXmlPatternspAB7 '9D'F  %1E *H'F/ /1 prolog ~13 H,H '*A'B (A*/.6Only one %1 declaration can occur in the query prolog. QtXmlPatternsBAB7  9F51 %1 E *H'F/ 8'G1 4H/.Only one %1-element can appear. QtXmlPatternsAB7 *7(B / HF / ~4*('F 4/G '3* (%1). %2 ~4*('F F4/G '3*.IOnly the Unicode Codepoint Collation is supported(%1). %2 is unsupported. QtXmlPatterns\AB7 ~4HF/ %1 E *H'F/ (G %2 EB/ 4H/ H (193.5Only the prefix %1 can be bound to %2 and vice versa. QtXmlPatternsn9ED1 %1 1H EB'/1 '*E '2 FH9 %2 H %3 B'(D ',1' F3*.>Operator %1 cannot be used on atomic values of type %2 and %3. QtXmlPatternsF9ED1 %1 1H FH9 %2 B'(D ',1' F3*.&Operator %1 cannot be used on type %2. QtXmlPatternsL3112: FE *H'F *'1. %1 1' FE'4 /'/."Overflow: Can't represent date %1. QtXmlPatternsF3112: FE *H'F *'1. 1' FE'4 /'/.$Overflow: Date can't be represented. QtXmlPatterns.7' *-DD: %1Parse error: %1 QtXmlPatternsN01G 4'ED -1HA ,'2F 4HF/GT B79 F3*..Particle contains non-deterministic wildcards. QtXmlPatterns~4HF/ %1 AB7 E *H'F/ (G %2 EB/ 4H/ (/1 G1 -'D* ~4 '9D'F 4/G '3*).LPrefix %1 can only be bound to %2 (and it is, in either case, pre-declared). QtXmlPatternsV~4HF/ %1 GE 'FHF /1 prolog '9D'F 4/G '3*.,Prefix %1 is already declared in the prolog. QtXmlPatternsR~4HF/ F'E /'1' 41'7 %1 *91A F4/G '3*.+Prefix of qualified name %1 is not defined. QtXmlPatternst('D' (1/F %1 F3(* (G %2 EEF '3* ('9+ '2 /3* 1A*F /B* 4H/./Promoting %1 to %2 may cause loss of precision. QtXmlPatternsLE-*H' QName (' 1HGT 'DH E7'(B F3*.+QName content does not match pattern facet. QtXmlPatternsLE-*H' QName /1 1HGT 4E'14 D3* F4/G.5QName content is not listed in the enumeration facet. QtXmlPatterns`FE *H'F /1 EH1/ '1,'9 %1 '2 9F51 %2 *5EE 1A*..Reference %1 of %2 element cannot be resolved. QtXmlPatterns@'5D* %1 /1.H'3* 4/ %2 -'5D 4/./Required cardinality is %1; got cardinality %2. QtXmlPatternsFFH9 /1.H'3* %1 '3* 'E' %2 ~/' 4/.&Required type is %1, but %2 was found. QtXmlPatternsh',1'  E,EH9G *9'1A 1.0 XSL-T ('  ~1/'2F/G 2.0.5Running an XSL-T 1.0 stylesheet with a 2.0 processor. QtXmlPatternstE-*H' 9// 5-- 9D'E* /'1 (' 1HGT E,EH9 '1B'E E7'(B F3*.?Signed integer content does not match in the totalDigits facet. QtXmlPatternsfE-*H' 9// 5-- 9D'E* /'1 (' 1HGT 'DH E7'(B F3*.4Signed integer content does not match pattern facet. QtXmlPatternstE-*H' 9// 5-- 9D'E* /'1 (' 1HGT AB7 E'2EE E7'(B F3*.=Signed integer content does not match the maxExclusive facet. QtXmlPatternsvE-*H' 9// 5-- 9D'E* /'1 (' 1HGT 4'ED E'2EE E7'(B F3*.=Signed integer content does not match the maxInclusive facet. QtXmlPatternsrE-*H' 9// 5-- 9D'E* /'1 (' 1HGT AB7 EFEE E7'(B F3*.=Signed integer content does not match the minExclusive facet. QtXmlPatternstE-*H' 9// 5-- 9D'E* /'1 (' 1HGT 4'ED EFEE E7'(B F3*.=Signed integer content does not match the minInclusive facet. QtXmlPatternsfE-*H' 9// 5-- 9D'E* /'1 /1 1HGT 4E'14 D3* F4/G.>Signed integer content is not listed in the enumeration facet. QtXmlPatternsFH9 3'/GT %1 AB7 E *H'F/ FH9 3'/GT '*E 1' (G 9FH'F FH9 ~'G /'4*G ('4/.=Simple type %1 can only have simple atomic type as base type. QtXmlPatterns%1 FE *H'F/ '2 %2 E4*B 4H/ E'FF/ FH3G ' G B/ 1' (G 9FH'F FG' *91A E F/.PSimple type %1 cannot derive from %2 as the latter defines restriction as final. QtXmlPatternsfFH9 3'/GT %1 FE *H'F/ FH9 ~'GT E3*BE %2 1' ('4/./Simple type %1 cannot have direct base type %2. QtXmlPatternsXFH9 3'/GT %1 4'ED 1HGT :1 E,'2 FH9 %2 '3*.2Simple type %1 contains not allowed facet type %2. QtXmlPatternsrFH9 3'/GT %1 E,'2 F3* FH9 ~'GT E3*BE %2 1' /'4*G ('4/.3Simple type %1 is not allowed to have base type %2. QtXmlPatternsbFH9 3'/GT %1 AB7 E,'2 '3* 1HGT %2 1' /'4*G ('4/.0Simple type %1 is only allowed to have %2 facet. QtXmlPatternsHFH9 3'/G 4'ED 1HGT :1 E,'2 %1 '3*.*Simple type contains not allowed facet %1. QtXmlPatternsFH9 3'/GT E4*B 4/G '2 9F51 %1 FE *H'F/ (G 7H1 E9*(1 '2 9F51 ~'G E4*B 4H/.NSimple type of derived element %1 cannot be validly derived from base element. QtXmlPatternsNFH9 E4.5 4/GT %1 (1' 71- F'4F'.*G '3*.-Specified type %1 is not known to the schema. QtXmlPatterns9F51 E4.5 4/G FH9 %1 FE *H'F/ (G 7H1 E9*(1 (' 9F51 FH9 %2 ,'2F 4H/.DSpecified type %1 is not validly substitutable with element type %2. QtXmlPatternsj*9F '3*A'/G = 'EEFH9' /1 1HG 5A* G *#+1 F/'1/.DSpecifying use='prohibited' inside an attribute group has no effect. QtXmlPatternsJE-*H' 14*G (' 1HGT 'DH E7'(B F3*.,String content does not match pattern facet. QtXmlPatternsHE-*H' 14*G (' 1HGT 7HD E7'(B F3*./String content does not match the length facet. QtXmlPatternsXE-*H' 14*G (' 1HGT 7HD E'2EE E7'(B F3*.2String content does not match the maxLength facet. QtXmlPatternsVE-*H' 14*G (' 1HGT 7HD EFEE E7'(B F3*.2String content does not match the minLength facet. QtXmlPatternsJE-*H' 14*G /1 1HGT 4E'14 D3* F4/G.6String content is not listed in the enumeration facet. QtXmlPatternsB,'F4F 1HG %1 *91A -DBH /'1/..Substitution group %1 has circular definition. QtXmlPatternsnFE *H'F /1 EH1/ ,'F4F 1HG %1 '2 9F51 %2 *5EE 1A*.7Substitution group %1 of %2 element cannot be resolved. QtXmlPatternsA6' F'E %1 71- H'1/ 4/G E*A'H* '2 A6' F'E G/A %2 "F HFG G (G H3DGT 71- H'1/ 4/G *91A 4/G '3* E ('4/.tTarget namespace %1 of imported schema is different from the target namespace %2 as defined by the importing schema. QtXmlPatternsA6' F'E G/A %1 71- 4'ED 4/G E*A'H* '2 A6' F'E G/A %2 "F HFG G (G H3DGT 71- 4'ED *91A 4/G '3* E ('4/.tTarget namespace %1 of included schema is different from the target namespace %2 as defined by the including schema. QtXmlPatternsH1G G' E*F /1 'F E'F E,'2 F3*F/.,Text nodes are not allowed at this location. QtXmlPatternsR'1,'9 E*F ' EH,H/* /1 9F51 %1 E,'2 F3*7Text or entity references not allowed inside %1 element QtXmlPatternsFE-H1 %1 /1 XQuery ~4*('F F4/G '3*$The %1-axis is unsupported in XQuery QtXmlPatternsH H'1/ 1/F 71- ~4*('F F4/G '3* (F'(1'F '9D'F %1 FE *H'F/ '*A'B (A*/.WThe Schema Import feature is not supported, and therefore %1 declarations cannot occur. QtXmlPatternsH '9*('1 3F, 71- ~4*('F F4/G '3*. (F'(1'F 9('1'*-%1 EEF '3* '3*A'/G F4H/.VThe Schema Validation Feature is not supported. Hence, %1-expressions may not be used. QtXmlPatterns>URL FE *H'F/ 43* /'4*G ('4/The URI cannot have a fragment QtXmlPatterns`5A* %1 AB7 E *H'F/ 1H %2 9F51 'HD (G F81 (13/.9The attribute %1 can only appear on the first %2 element. QtXmlPatternst5A* %1 FE *H'F/ 1H %2 8'G1 4H/ /1 -'D G A12F/ %3 '3*.?The attribute %1 cannot appear on %2, when it is a child of %3. QtXmlPatterns/ FB7GT %1 /1 %2 H'B9 E 4H/ '2 /0'1 %3 '3*A'/G E F/  FH3GT XML F'E9*(1 '3*.QThe codepoint %1, occurring in %2 using encoding %3, is an invalid XML character. QtXmlPatternsh/'/GT /3*H1'D9ED ~1/'24 FE *H'F/ 4'ED 14*GT %1 ('4/AThe data of a processing instruction cannot contain the string %1 QtXmlPatterns<E,EH9GT ~4 A16 *91A F4/G '3*#The default collection is undefined QtXmlPatterns /0'1 %1 F'E9*(1 '3*. "F AB7 ('/ 4'ED -1HA D'*F ('4/ H F('/ 4'ED A6' .'D ('4/ H GEFF ('/ (' 9('1* EF8E %2 *7'(B /'4*G ('4/.The encoding %1 is invalid. It must contain Latin characters only, must not contain whitespace, and must match the regular expression %2. QtXmlPatterns'HDF "1HE'F (G %1 FE *H'F/ '2 FH9 %2 ('4/. "F ('/  FH9 9// xs:yearMonthDuratin ' xs::dayTimeDuration ('4/.uThe first argument to %1 cannot be of type %2. It must be a numeric type, xs:yearMonthDuration or xs:dayTimeDuration. QtXmlPatterns'HDF "1HE'F (G %1 FE *H'F/ '2 FH9 %2 ('4/. "F ('/ '2 FH9 %3 %4 ' %5 ('4/.PThe first argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. QtXmlPatterns*'FHF *91A F4/G '3*.The focus is undefined. QtXmlPatterns@A1E* E*:1 %1 (G .H/4 H'(3*G '3*3The initialization of variable %1 depends on itself QtXmlPatternsP"*E %1 (' FH9 EH1/F'2 %2 E7'(B* F/'1/./The item %1 did not match the required type %2. QtXmlPatternsrD/H'GT %1 FE *H'F/ (' G '3E -'D* /1 '*A'B (A*/.5The keyword %1 cannot occur with any other mode name. QtXmlPatterns".1F 'E /1  E31 ('/ 4'ED 1G ' EB/'1 '*E ('4/. "F FE *H'F/ *1( (F G1/H ('4/.kThe last step in a path must contain either nodes or atomic values. It cannot be a mixture between the two. QtXmlPatternsNH H'1/ 1/F E'HD ~4*('F F4/G '3**The module import feature is not supported QtXmlPatternsJF'E %1 (G G FH9 71- '4'1G FE F/..The name %1 does not refer to any schema type. QtXmlPatternsF'E 5A* E-'3(G 4/G FE *H'F/ A6' F'E URL %1 1' (' F'E E-D %2 /'4*G ('4/.ZThe name for a computed attribute cannot have the namespace URI %1 with the local name %2. QtXmlPatternsF'E  E*:1 EB/ 4/G (1' 9('1* ('/ E*A'H* '2 F'E  E*:1 EHB9* ('4/. (F'(1'F /H E*:1 (' F'E %1 (1.H1/ /'1F/.The name of a variable bound in a for-expression must be different from the positional variable. Hence, the two variables named %1 collide. QtXmlPatternsfF'E  9('1* *H39G /'/G 4/G ('/ /1 A6' F'E ('4/.;The name of an extension expression must be in a namespace. QtXmlPatternsF'E 2FG ('/ ~4HF/ /'4*G ('4/. A6' F'E ~4 A16 (1' 2FG G' H,H/ F/'1/.TThe name of an option must have a prefix. There is no default namespace for options. QtXmlPatternsJA6' F'E %1 121H 4/G '3* (F'(1'F *H'(9 *91A 4/G *H37 '1(1 FE *H'FF/ '2 "F '3*A'/G FF/. ~4HF/ '2 ~4 *91A 4/GT %2 1' G (1' 'F EH'1/ H,H/ /'1/ 'E*-'F F/.The namespace %1 is reserved; therefore user defined functions may not use it. Try the predefined prefix %2, which exists for these cases. QtXmlPatternsA6' F'E URL GF'E G (G  ~4HF/ EB/ E 4H/ FE *H'F/ 14*GT .'D ('4/ %1.JThe namespace URI cannot be the empty string when binding to a prefix, %1. QtXmlPatternsvF'E A6' F'E URL (1'  5A* E-'3(G 4/G FE *H'F/ %1 ('4/.DThe namespace URI in the name for a computed attribute cannot be %1. QtXmlPatternsvA6' F'E URL ('/ +'(* ('4/ H FE *H'F/ (G 9('1'* (~HF//.IThe namespace URI must be a constant and cannot use enclosed expressions. QtXmlPatterns A6' F'E (1' *H'(9 *91A 4/G *H37 '1(1 FE *H'F/ .'D ('4/(~4HF/ '2 ~4 *91A 4/GT %1 1' G (1' 'F EH'1/ H,H/ /'1/ 'E*-'F F/)yThe namespace for a user defined function cannot be empty (try the predefined prefix %1 which exists for cases like this) QtXmlPatterns A6' F'E  *'(9 *91A 4/G *H37 '1(1 /1  E'HD *'(.'FG ' ('/ GE '12 A6' F'E E'HD ('4/. (G ('F /1 ('/ %1 (G ,' %2 ('4/The namespace of a user defined function in a library module must be equivalent to the module namespace. In other words, it should be %1 instead of %2 QtXmlPatternsF1E'D 3'2 '2 %1 ~4*('F F4/G '3*. 4D G' ~4*('F 4/G %2 %3 %4 %5 H 14*G .'D G3*F/.The normalization form %1 is unsupported. The supported forms are %2, %3, %4, and %5, and none, i.e. the empty string (no normalization). QtXmlPatternsb~'1'E*1 %1 ~'3 4/G '3* 'E' E*1'/A %2 H,H/ F/'1/.;The parameter %1 is passed, but no corresponding %2 exists. QtXmlPatternsv~'1'E*1 %1 EH1/ F'2 '3* '3* 'E' E*1'/A %2 *#EF F4/G '3*.BThe parameter %1 is required, but no corresponding %2 is supplied. QtXmlPatterns:~4HF/ %1 FE *H'F/ EB/ 4H/.The prefix %1 cannot be bound. QtXmlPatterns~4HF/ %1 FE *H'F/ EB/ 4H/. (G 7H1 ~4 A16 "F (G A6' F'E %2 EB/ 4/G '3*.SThe prefix %1 cannot be bound. By default, it is already bound to the namespace %2. QtXmlPatternsR~4HF/ ('/  %1 E9*(1 ('4/ G %2 F3*./The prefix must be a valid %1, which %2 is not. QtXmlPatterns1G 14GT /HEF "1HE'F (G *'(9 %1 ('/  1G 3F/ ('4/. %2  1G 3F/ F3*.gThe root node of the second argument to function %1 must be a document node. %2 is not a document node. QtXmlPatterns/HEF "1HE'F (G %1 FE *H'F/ '2 FH9 %2 ('4/. "F ('/ '2 FH9 %3 %4 ' %5 ('4/.QThe second argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. QtXmlPatternsF'E G/A /1 /3*H1'D9ED ~1/'24 FE *H'F/ /1 G1 *1( '2 -1HA (21 H H %1 ('4/. (F'(1'F %2 F'E9*(1 '3*.~The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, %2 is invalid. QtXmlPatternsJA6' F'E G/A %1 FE *H'F/ .'D ('4/.-The target namespace of a %1 cannot be empty. QtXmlPatternsfEB/'1 5A* %1 1H 9F51 %2 ('/ %3 ' %4 ('4/ FG %5.IThe value for attribute %1 on element %2 must either be %3 or %4, not %5. QtXmlPatternsjEB/'1 5A* %1 ('/ '2 FH9 %2 ('4/ /1 -'D G %3 F3*.=The value of attribute %1 must be of type %2, which %3 isn't. QtXmlPatternsxEB/'1 5A* H1F XSL-T ('/ '2 FH9 %1 ('4/ /1 -'D G %2 F3*.TThe value of the XSL-T version attribute must be a value of type %1, which %2 isn't. QtXmlPatterns2E*:1 %1 '3*A'/G F4/G '3*The variable %1 is unused QtXmlPatterns`G IDREF ' (' EB/'1 ID E*1'/A H,H/ F/'1/: %1.6There is one IDREF value with no corresponding ID: %1. QtXmlPatternsz'F ~1/'2F/G 71--"'G F3* (F'(1'F %1 FE *H'F/ '3*A'/G 4H/.CThis processor is not Schema-aware and therefore %1 cannot be used. QtXmlPatterns:2E'F %1:%2:%3.%4 F'E9*(1 '3*.Time %1:%2:%3.%4 is invalid. QtXmlPatterns2E'F  3'9*: %1 %2 %3 F'E9*(1 '3*. 2E'F  3'9* '3* 'E' /BBG +'FG H ED +'FG 5A1 F3*F/_Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0;  QtXmlPatterns9F51 E,EH9GT *91A 37- ('D' ('/  A6' F'E :1 *G ('4/ /1 -'D G %1 F3*.NTop level stylesheet elements must be in a non-null namespace, which %1 isn't. QtXmlPatternsb5A* G' '9D'F /H A6' F'E /'1'  F'E G3*F/: %1.ff*ffflffwg}l9xry+<D>T`>AA`@_y_5BD3fXeDzįxįy;GP D y# ~VW^VX`QHt3g!ntۺ$&S.!(2(4S(4(4%(5(5*yK *yUd*yu*T c*0Y*0{+Ff+F+LŦ+f4+f+zd+Kq+U+u+zd8+5^++ + +fz+R+įK+įU+įv.+dz4r7:9x;=?@>BjH.C:$F0iϷFn4Fn4<G4Hw9JHw9rI''IIbIHJ+KJ+J6LJ6eJ6J6 J6fJ6lmJ6זJ6J6 J6J6ȽJcbJK L "LZ#WL2LeLb:jM5Mb·MdNO|e9PFEO]PFEh(PFEaQ *fQ3RR|ϑR̼RSiS8^TT6+Tʴ/TF~U?^LU|U}4V1 V1Vl>NVV8V8VeVE9NW]WwWTmWT}WT:ZX~uX9;DX6X˙X;YYhY>Y}Z+>Zg? ZZ [;^>[=[f3C#\$\]4*\]4L\U\\\DatCgclGMt>z2|^|AclV_j/vvTOԱ(3f')CFMd̫4L54].g6CdwIAGR[z)Dg)I3,ÉTyɌXtTDD%5EGɵniɵn>ɵnEWɵn]ɵnrɵnɵnɵnZ+ B^*V':M1 (1EOafd/6qwpTt۔0 F5>5Ha)uEB8,*Bp<׎p5#Q%UTH(Ŏ*4-ctq23?2?NqFRNkyǜUiPWW~?]E2`k`jtlglyzLEl}Loivty.$1'l%ۤ"P;: S4)H o6*6e6Ǯ^(e.K>UuRKT`=v~.tY=[ WEE[{x=8A9+τn݄A&J[yªLQtTn N]laPmfMeMtE# E-n.wIw &)6e2_^0U  I `ڎdmM& 4WFUD [!e~&)Ey*/eE+C l+,N\?:ϭ.;?4]ByȊEcFFNjqO{t4OZfw[ t\cMl\*>`dbb-cփ2fg&4 jChmnIqWUq9JtuLiu()8{>hM}kaP@}W~ߪ%O_ yWFK$$$Ϯ3+m(Eu4ʁr^կK1EL}֊esw n`,@qw;yω"a@OzE-#I*KT>`AW  n7^H+%=eJ&H@ &o.,n,}.3/?4!&]5*8h? %CkIxSbKLL5OڳR>)UXmzYM#YYM.G^!eQh^RiWnnn^ sscssw #x/^RP2 "%ۊeatq] U]&>~mX8I7IIIJJIIIPIRtIMZ Q]I-Y.%i.ay.,-5-q-,,I0//Q//.uD'guD2TD}o{w,2y,V_,,!,S4,v]˱>Uhفr?V_>3ɘe#5$?n 468ڈfR<fRG>vx'ݿ0&<LU;_a|9N%UN'QVQ~'cUƭSdPq*AVXfRS|Da*TN2)Sb  Q M `w1έ(G = b/g l,K"o)$a$%CRF&~d&)2M)T+ ,G/`o53 51-8181;_?"_?>uAAqFu5KNs\K- MN>*R:U5;V|Z]=w]DYeVg^7k8y^N{yw?4p5t;F;w:Ξ'8 ;G%!nInnǥ ^=+>+QD`InEzt5{yZ1;/GxA-r9\XA7sQϾ6N%b4iw:J{CkC-<57&U,C^2ƨ3>ƨT}˾Dҝz<]لiYէ?Se؊='؊=Z>ii}Fzܓ7ߺ|.ftZ6롥``+!(Y= Nxm`D$i^ !1DD    ܩUgR$c~bM~b_o>9^mMLt[ `~^!B%?CR')ў#+u0^+3P,8/0/Ҵ/14~]6 =8ō<i? 2y?aA*DG"GbLAUsOrJ=PѧQ1CRC){SnT[9U3UIUUT t"uz5ODYX^qtZ!t.t(-n}al_ 7'ajFbC4ʢm ʢʬƴdndbddd59AehэXi+8NSTHkH^yUdpT(eBhwjQ 2-,%:#L?oaO B {!+4/23w42.*{9ļNmdqliK<··q^ýi׳ B/0fCet?UJe7{dE!8HȥvU"ONB$u82%5TM- e~ i~6W*DMy1b i9%#bo#8#%i%%d!)'-.\.5kE;=I=r?W?\@JO@T[CtI9EfjNP5:PQsAGV%+V%,uXU  ZD`awbDAcbGOfdgAFhIii$lsfx1 z*2|QR ddJZJU]c(.zgPc.54xC52Q*uXm"<enH:b †5biCjU'ʴ5f<ʴ5ʶh`88^ :g}Ԅ(۔#|Da'NL[dA_F5O$F5gYap9r+>jb4Nv&DI;qI As7o m }$d4 qe, ڤ ڥ dOx E`# E | AcA# Ac K *, 35C W `BG b bbyl b` b` d  gUZB i3V kk la lf lp qv' qvY qzE3 tNX uV xq |o% | 6 J  t@z t ^ . F  4: 2 9 ) F> S  4 le Zy  N  B^ ҉d 4r , >W ; U 1 FJ a% n[3 V $q  u"d Y+> 0 KM { 쉥 팤? E4 l~ %'z 3x 0A W /J C+ = q!  D  }' 9# o Ąȧ  )ѣ )R ) */v .>[ 58W 7u` ;Q =! B Bn H l H J" K2 Ref Rۮ REʔ Ty  T^" Uj4W ]q ^&1u `> ` `n bY bT br c(ެ cEؒ dS e< e eep e{ f1$ f*߶ g5U gng k,B n$ rD"II t>M n v" :c f 6 f d 4A . , ' s9 s C AA)z 9N 1 9eQ 05 r"  m,C 5 ݡ&  2 ! #-to #$L ' w 0N^ 5 AU} CU # E9@ G]8 IX LY L Mc\ P..s R7 SC: VG W| Z6\ [Ö \Ot ]$k co f)7 f) f= io>I l#; luC m`Q w@9 xRZ yr3 }QG  U H5$ H ]  n? С&2 $ .@D" G i! <P @  L> V w6 7 & %k J:+ J ~   t. kt ӇL n M J~ N>Pt / ̺! &  -D" .T xP ۷* r0 k kC U)3] ; T>5 <P L r 06 $r= "  '%  2 I )X % f+ NQ 7[   xH8 \C I< ~  !p| $ %6b )Ε9 .c 2{ 7F >) >+ >-K >7V >I >U > >O >nY >q ?t|E DT1 G' Ibf L Mb?; P@A QT RV RV/ S.R SG@ SQ YȄ Yix [| hۮy j7o0 m( pci sLm u& vVL I BE - Tj- T^ T T  G, l ( B  ̕  ,& ,/8 SP )d TZ { .j .? ._ . . .I .   O n\ a- PK yO O s e. x.  hNPJ ɾd# ɾd& e ̈́^u >/ ҂9 ӏV Ӵ d [;  >ck % u t R$W l  | KS b" Hj Xtc nt 9> t, ة aY"  $G :b3 UqY U `4 ʜa f f f]    $ #  6 #$ #= %nQ % } (I$I (N2 +>d +ki* 0E 64- ;ɾvd FgV K9U Ptg Pt) R"y S,A T>$k ^Ug c dBD- fe fe gn hQ$-S iFC$ i i$ jN jӮ kGnd l" m98 n< u8 uf uX v N v& v{ w < wH wP w} ~ w}H w} |[  uF[ $& . < J: bܠ ԕ |$ ^  }St SL R~V %7ob  xN "9 UY( ɰeպ F`  X= bm% Yp & x] D> \ +X t5gD t5  ; >fz h ɖ )2 0 QJ$Rw>Y @aCxT\"+) gT\pSpS!a$+4x&-Ӷ'*Y*+,3/E[%/E4Qt#[7S=BNkI_40KOOYS5XRu}LXh[ [ ˫a.a.a% gcKyi"nyG vɅEty$Wy?.~6R%,>e'M46vf'4kHSI\%N4^0:t=Z5/DBX}5;L3EӮ`qGӮ`Ӯ`drVݖ1mUׇ|[y4^^{rFjjf s ( 8  0GlD$p"#$UC%4%4^'yd*]f,-hc-vz0i)203x1c2wT2DRF74ZHCJd5KNL$.O{PdW=[{(c5 c5cd#g3 iCl'pqiiv)TyCSx{`k{~a06$Y5/&&D$t{H f`Ěn$[|>&0ͣ9U9m tN7 E"~ gdL@Gr[ru4J-1mQky3֠bU Y"'T. 44LnbQBGPop t2_]6d&UiFermer l'onglet Close Tab CloseButtonFausse erreur! Fake error ! FakeReplyURL invalide Invalid URL FakeReply propos de %1About %1MAC_APPLICATION_MENUMasquer %1Hide %1MAC_APPLICATION_MENU$Masquer les autres Hide OthersMAC_APPLICATION_MENUPrfrences...Preferences...MAC_APPLICATION_MENUQuitter %1Quit %1MAC_APPLICATION_MENUServicesServicesMAC_APPLICATION_MENUTout afficherShow AllMAC_APPLICATION_MENUAccessibilit AccessibilityPhonon::Communication CommunicationPhonon::JeuxGamesPhonon::MusiqueMusicPhonon::Notifications NotificationsPhonon:: VidoVideoPhonon::><html>Basculement vers le priphrique audio <b>%1</b><br/>dont le niveau de prfrence est plus lev ou qui est spcifiquement configur pour ce flux.</html>Switching to the audio playback device %1
which has higher preference or is specifically configured for this stream.Phonon::AudioOutput&<html>Basculement vers le priphrique audio <b>%1</b><br/>qui vient juste d'tre disponible et dont le niveau de prfrence est plus lev.</html>xSwitching to the audio playback device %1
which just became available and has higher preference.Phonon::AudioOutput<html>Le priphrique audio <b>%1</b> ne fonctionne pas.<br/>Repli sur <b>%2</b>.</html>^The audio playback device %1 does not work.
Falling back to %2.Phonon::AudioOutput8Revenir au priphrique '%1'Revert back to device '%1'Phonon::AudioOutputAttention: Vous n'avez apparemment pas installes les plugins de base de GStreamer. Le support audio et vido est dsactiv~Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabledPhonon::Gstreamer::Backend Attention: Vous n'avez apparemment pas install le paquet gstreamer0.10-plugins-good. Des fonctionnalits vido ont t desactives.Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled.Phonon::Gstreamer::BackendUn codec requis est manquant. Vous devez installer le codec suivant pour jouer le contenu: %0`A required codec is missing. You need to install the following codec(s) to play this content: %0Phonon::Gstreamer::MediaObjectImpossible de dmarrer la lecture. Vrifiez votre installation de GStreamer et assurez-vous d'avoir install libgstreamer-plugins-base.wCannot start playback. Check your GStreamer installation and make sure you have libgstreamer-plugins-base installed.Phonon::Gstreamer::MediaObjectLImpossible de dcoder le mdia source.Could not decode media source.Phonon::Gstreamer::MediaObjectPImpossible de localiser le mdia source.Could not locate media source.Phonon::Gstreamer::MediaObjectImpossible d'ouvrir le priphrique audio. Celui-ci est dj en cours d'utilisation.:Could not open audio device. The device is already in use.Phonon::Gstreamer::MediaObjectHImpossible d'ouvrir le mdia source.Could not open media source.Phonon::Gstreamer::MediaObject0Type de source invalide.Invalid source type.Phonon::Gstreamer::MediaObjectZAssistant de script d'aide au codec manquant.&Missing codec helper script assistant.Phonon::Gstreamer::MediaObjecthchec de l'installation du plugin pour le codec : %0.Plugin codec installation failed for codec: %0Phonon::Gstreamer::MediaObject(Autorisation refuse Access denied Phonon::MMFExiste djAlready exists Phonon::MMFSortie audio Audio Output Phonon::MMFfLes composants audio ou vido n'ont pas pu tre lus-Audio or video components could not be played Phonon::MMF,Erreur de sortie audioAudio output error Phonon::MMF(Connexion impossibleCould not connect Phonon::MMFErreur GDN DRM error Phonon::MMF$Erreur du dcodeur Decoder error Phonon::MMFDconnect Disconnected Phonon::MMFUtilisIn use Phonon::MMF6Bande passante insuffisanteInsufficient bandwidth Phonon::MMFURL invalide Invalid URL Phonon::MMF$Protocole invalideInvalid protocol Phonon::MMF Erreur multicastMulticast error Phonon::MMF<Erreur de communication rseauNetwork communication error Phonon::MMF*Rseau non disponibleNetwork unavailable Phonon::MMFAucune erreurNo error Phonon::MMFIntrouvable Not found Phonon::MMFPas prt Not ready Phonon::MMFNon support Not supported Phonon::MMF(Mmoire insuffisante Out of memory Phonon::MMFDpassementOverflow Phonon::MMF$Chemin introuvablePath not found Phonon::MMF(Autorisation refusePermission denied Phonon::MMF.Erreur du serveur proxyProxy server error Phonon::MMF4Serveur proxy non supportProxy server not supported Phonon::MMFAlerte serveur Server alert Phonon::MMF,Streaming non supportStreaming not supported Phonon::MMF8Priphrique audio de sortieThe audio output device Phonon::MMFSoupassement Underflow Phonon::MMF(Erreur inconnue (%1)Unknown error (%1) Phonon::MMF,Erreur de sortie vidoVideo output error Phonon::MMFFErreur lors de l'ouverture de l'URLError opening URL Phonon::MMF::AbstractMediaPlayerJErreur lors de l'ouverture du fichierError opening file Phonon::MMF::AbstractMediaPlayerTerreur lors de l'ouverture de la ressourceError opening resource Phonon::MMF::AbstractMediaPlayer~erreur lors de l'ouverture de la source : ressource non ouverte)Error opening source: resource not opened Phonon::MMF::AbstractMediaPlayer8chec de l'ouverture du clipLoading clip failed Phonon::MMF::AbstractMediaPlayer*Pas prt pour lectureNot ready to play Phonon::MMF::AbstractMediaPlayer Lecture terminePlayback complete Phonon::MMF::AbstractMediaPlayer:Le rglage du volume a chouSetting volume failed Phonon::MMF::AbstractMediaPlayerFL'obtention de la position a chouGetting position failed Phonon::MMF::AbstractVideoPlayer8L'ouverture du clip a chouOpening clip failed Phonon::MMF::AbstractVideoPlayer2La mise en pause a chou Pause failed Phonon::MMF::AbstractVideoPlayer*La recherche a chou Seek failed Phonon::MMF::AbstractVideoPlayer %1 Hz%1 HzPhonon::MMF::AudioEqualizerFL'obtention de la position a chouGetting position failedPhonon::MMF::AudioPlayer6Erreur de l'affichage vidoVideo display errorPhonon::MMF::DsaVideoPlayer ActivEnabledPhonon::MMF::EffectFactory,Ratio HF du dclin (%)Decay HF ratio (%) Phonon::MMF::EnvironmentalReverb(Temps de dclin (ms)Decay time (ms) Phonon::MMF::EnvironmentalReverbDensit (%) Density (%) Phonon::MMF::EnvironmentalReverbDiffusion (%) Diffusion (%) Phonon::MMF::EnvironmentalReverb*Dlai rflexions (ms)Reflections delay (ms) Phonon::MMF::EnvironmentalReverb,Niveau rflexions (mB)Reflections level (mB) Phonon::MMF::EnvironmentalReverb6Dlai de rverbration (ms)Reverb delay (ms) Phonon::MMF::EnvironmentalReverb8Niveau de rverbration (mB)Reverb level (mB) Phonon::MMF::EnvironmentalReverbNiveau HF pice Room HF level Phonon::MMF::EnvironmentalReverb"Niveau pice (mB)Room level (mB) Phonon::MMF::EnvironmentalReverbErreur lors de l'ouverture de la source: type de mdia non dtermin8Error opening source: media type could not be determinedPhonon::MMF::MediaObject|Erreur lors de l'ouverture de la source : ressource compresse,Error opening source: resource is compressedPhonon::MMF::MediaObjectxErreur lors de l'ouverture de la source : ressource invalide(Error opening source: resource not validPhonon::MMF::MediaObjectvErreur lors de l'ouverture de la source: type non support(Error opening source: type not supportedPhonon::MMF::MediaObjectNiveau (%) Level (%)Phonon::MMF::StereoWidening6Erreur de l'affichage vidoVideo display errorPhonon::MMF::SurfaceVideoPlayerSon coupMutedPhonon::VolumeSliderUtilisez le slider pour ajuster le volume. La position la plus gauche est 0%, la plus droite est %1%WUse this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1%Phonon::VolumeSliderVolume: %1% Volume: %1%Phonon::VolumeSliderHLa squence %1, %2 n'est pas dfinie%1, %2 not definedQ3Accel>Squence ambigu %1 non traiteAmbiguous %1 not handledQ3AccelSupprimerDelete Q3DataTableFauxFalse Q3DataTableInsrerInsert Q3DataTableVraiTrue Q3DataTableActualiserUpdate Q3DataTable%1 Impossible de trouver le fichier. Vrifiez le chemin et le nom du fichier.+%1 File not found. Check path and filename. Q3FileDialogSuppri&mer&Delete Q3FileDialog&Non&No Q3FileDialog&OK&OK Q3FileDialog&Ouvrir&Open Q3FileDialog&Renommer&Rename Q3FileDialog&Enregistrer&Save Q3FileDialog&Non tri &Unsorted Q3FileDialog&Oui&Yes Q3FileDialogb<qt>Voulez-vous vraiment supprimer %1 "%2"?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialog*Tous les fichiers (*) All Files (*) Q3FileDialog.Tous les fichiers (*.*)All Files (*.*) Q3FileDialogAttributs Attributes Q3FileDialog,Prcdent (historique)Back Q3FileDialogAnnulerCancel Q3FileDialog6Copie ou dplace un fichierCopy or Move a File Q3FileDialog0Crer un nouveau dossierCreate New Folder Q3FileDialogDateDate Q3FileDialogSupprimer %1 Delete %1 Q3FileDialog$Affichage dtaill Detail View Q3FileDialogDossierDir Q3FileDialogDossiers Directories Q3FileDialogDossier:  Directory: Q3FileDialog ErreurError Q3FileDialogFichierFile Q3FileDialog$&Nom de fichier:  File &name: Q3FileDialog&&Type de fichier:  File &type: Q3FileDialog0Chercher dans le dossierFind Directory Q3FileDialogInaccessible Inaccessible Q3FileDialogAffichage liste List View Q3FileDialog"Chercher &dans:  Look &in: Q3FileDialogNomName Q3FileDialogNouveau dossier New Folder Q3FileDialog$Nouveau dossier %1 New Folder %1 Q3FileDialog"Nouveau dossier 1 New Folder 1 Q3FileDialog.Aller au dossier parentOne directory up Q3FileDialog OuvrirOpen Q3FileDialog OuvrirOpen  Q3FileDialog>Contenu du fichier prvisualisPreview File Contents Q3FileDialogHInformations du fichier prvisualisPreview File Info Q3FileDialogR&echargerR&eload Q3FileDialogLecture seule Read-only Q3FileDialog Lecture-criture Read-write Q3FileDialogLecture: %1Read: %1 Q3FileDialog Enregistrer sousSave As Q3FileDialog.Slectionner un dossierSelect a Directory Q3FileDialog:Afficher les fic&hiers cachsShow &hidden files Q3FileDialog TailleSize Q3FileDialogTriSort Q3FileDialogTrier par &date Sort by &Date Q3FileDialogTrier par &nom Sort by &Name Q3FileDialog"Trier par ta&ille Sort by &Size Q3FileDialogFichier spcialSpecial Q3FileDialog>Lien symbolique vers un dossierSymlink to Directory Q3FileDialog>Lien symbolique vers un fichierSymlink to File Q3FileDialogNLien symbolique vers un fichier spcialSymlink to Special Q3FileDialogTypeType Q3FileDialogcriture seule Write-only Q3FileDialogcriture: %1 Write: %1 Q3FileDialogle dossier the directory Q3FileDialogle fichierthe file Q3FileDialog$le lien symbolique the symlink Q3FileDialogBImpossible de crer le dossier %1Could not create directory %1 Q3LocalFs,Impossible d'ouvrir %1Could not open %1 Q3LocalFs@Impossible de lire le dossier %1Could not read directory %1 Q3LocalFs`Impossible de supprimer le fichier ou dossier %1%Could not remove file or directory %1 Q3LocalFs>Impossible de renommer %1 en %2Could not rename %1 to %2 Q3LocalFs,Impossible d'crire %1Could not write %1 Q3LocalFs Personnaliser... Customize... Q3MainWindowAlignerLine up Q3MainWindowNOpration interrompue par l'utilisateurOperation stopped by the userQ3NetworkProtocolAnnulerCancelQ3ProgressDialogAppliquerApply Q3TabDialogAnnulerCancel Q3TabDialogPar dfautDefaults Q3TabDialogAideHelp Q3TabDialogOKOK Q3TabDialogCop&ier&Copy Q3TextEditCo&ller&Paste Q3TextEdit&Rtablir&Redo Q3TextEdit&Annuler&Undo Q3TextEditEffacerClear Q3TextEditCo&uperCu&t Q3TextEdit"Tout slectionner Select All Q3TextEdit FermerClose Q3TitleBar Ferme la fentreCloses the window Q3TitleBar`Contient des commandes pour manipuler la fentre*Contains commands to manipulate the window Q3TitleBarAffiche le nom de la fentre et contient des contrles pour la manipulerFDisplays the name of the window and contains controls to manipulate it Q3TitleBarBAffiche la fentre en plein cranMakes the window full screen Q3TitleBarMaximiserMaximize Q3TitleBarRduireMinimize Q3TitleBar8Dplace la fentre l'cartMoves the window out of the way Q3TitleBar\Rend une fentre minimise son aspect normal&Puts a maximized window back to normal Q3TitleBar\Rend une fentre minimise son aspect normal&Puts a minimized window back to normal Q3TitleBar Restaurer en bas Restore down Q3TitleBar"Restaurer en haut Restore up Q3TitleBarSystmeSystem Q3TitleBarPlus...More... Q3ToolBar(inconnu) (unknown) Q3UrlOperatorLe protocole `%1' ne permet pas de copier ou de dplacer des fichiersIThe protocol `%1' does not support copying or moving files or directories Q3UrlOperatorzLe protocole `%1' ne permet pas de crer de nouveaux dossiers;The protocol `%1' does not support creating new directories Q3UrlOperatorpLe protocole `%1' ne permet pas de recevoir des fichiers0The protocol `%1' does not support getting files Q3UrlOperatorLe protocole `%1' ne permet pas de lister les fichiers d'un dossier6The protocol `%1' does not support listing directories Q3UrlOperatorlLe protocole `%1' ne permet pas d'envoyer des fichiers0The protocol `%1' does not support putting files Q3UrlOperatorLe protocole `%1' ne permet pas de supprimer des fichiers ou des dossiers@The protocol `%1' does not support removing files or directories Q3UrlOperatorLe protocole `%1' ne permet pas de renommer des fichiers ou des dossiers@The protocol `%1' does not support renaming files or directories Q3UrlOperator@Le protocole '%1' n'est pas gr"The protocol `%1' is not supported Q3UrlOperator&Annuler&CancelQ3Wizard&Terminer&FinishQ3Wizard &Aide&HelpQ3Wizard&Suivant >&Next >Q3Wizard< &Prcdent< &BackQ3Wizard"Connexion refuseConnection refusedQAbstractSocket"Connexion expireConnection timed outQAbstractSocket Hte introuvableHost not foundQAbstractSocket:Rseau impossible rejoindreNetwork unreachableQAbstractSocketDOpration sur socket non supporte$Operation on socket is not supportedQAbstractSocket8Le socket n'est pas connectSocket is not connectedQAbstractSocket0Opration socket expireSocket operation timed outQAbstractSocket$Tout &slectionner &Select AllQAbstractSpinBox&Augmenter&Step upQAbstractSpinBox&Diminuer Step &downQAbstractSpinBoxAppuyerPressQAccessibleButtonActiverActivate QApplicationRActive la fentre principale du programme#Activates the program's main window QApplicationbL'excutable '%1' requiert Qt %2 (Qt %3 prsent).,Executable '%1' requires Qt %2, found Qt %3. QApplicationJErreur: bibliothque Qt incompatibleIncompatible Qt Library Error QApplicationLTRTranslate this string to the string 'LTR' in left-to-right languages or to 'RTL' in right-to-left languages (such as Hebrew and Arabic) to get proper widget layout.QT_LAYOUT_DIRECTION QApplication&Annuler&Cancel QAxSelect&Objet COM:  COM &Object: QAxSelectOKOK QAxSelect@Slectionner un contrle ActiveXSelect ActiveX Control QAxSelect CocherCheck QCheckBoxChangerToggle QCheckBoxDcocherUncheck QCheckBoxH&Ajouter aux couleurs personnalises&Add to Custom Colors QColorDialog"Couleurs de &base &Basic colors QColorDialog0&Couleurs personnalises&Custom colors QColorDialog&Vert: &Green: QColorDialog&Rouge: &Red: QColorDialog&Saturation: &Sat: QColorDialog&Valeur: &Val: QColorDialogCanal a&lpha: A&lpha channel: QColorDialogBle&u: Bl&ue: QColorDialog&Teinte: Hu&e: QColorDialog0Slectionner une couleur Select Color QColorDialog FermerClose QComboBoxFauxFalse QComboBox OuvrirOpen QComboBoxVraiTrue QComboBox %1 : existe djQSystemSemaphore%1: already existsQCoreApplication"%1 : n'existe pasQSystemSemaphore%1: does not existQCoreApplication$%1 : ftok a chouQSystemSemaphore%1: ftok failedQCoreApplication%1 : cl videQSystemSemaphore%1: key is emptyQCoreApplicationF%1 : plus de ressources disponiblesQSystemSemaphore%1: out of resourcesQCoreApplication>%1 : impossible de crer la clQSystemSemaphore%1: unable to make keyQCoreApplication.%1 : erreur inconnue %2QSystemSemaphore%1: unknown error %2QCoreApplicationJIncapable de soumettre la transactionUnable to commit transaction QDB2DriverBIncapable d'tablir une connexionUnable to connect QDB2DriverDIncapable d'annuler la transactionUnable to rollback transaction QDB2DriverLImpossible d'activer l'auto-soumissionUnable to set autocommit QDB2DriverBImpossible d'attacher la variableUnable to bind variable QDB2Result@Impossible d'excuter la requteUnable to execute statement QDB2ResultDImpossible de rcuprer le premierUnable to fetch first QDB2ResultDImpossible de rcuprer le suivantUnable to fetch next QDB2ResultVImpossible de rcuprer l'enregistrement %1Unable to fetch record %1 QDB2ResultBImpossible de prparer la requteUnable to prepare statement QDB2ResultAMAM QDateTimeEditPMPM QDateTimeEditamam QDateTimeEditpmpm QDateTimeEditHL'animation est une classe abstraiteAnimation is an abstract classQDeclarativeAbstractAnimationbImpossible d'animer la proprit inexistante "%1")Cannot animate non-existent property "%1"QDeclarativeAbstractAnimationlImpossible d'animer la proprit en lecture seule "%1"&Cannot animate read-only property "%1"QDeclarativeAbstractAnimationZImpossible de slectionner une dure ngativeCannot set a duration of < 0QDeclarativeAnchorAnimationL'ancre baseline ne peut pas etre combine l'usage des ancres haut, bas ou vcenter.SBaseline anchor cannot be used in conjunction with top, bottom, or vcenter anchors.QDeclarativeAnchorstImpossible d'ancrer un bord horizontal un bord vertical.3Cannot anchor a horizontal edge to a vertical edge.QDeclarativeAnchorstImpossible d'ancrer un bord vertical un bord horizontal.3Cannot anchor a vertical edge to a horizontal edge.QDeclarativeAnchorsRImpossible d'ancrer l'lment lui mme.Cannot anchor item to self.QDeclarativeAnchorsJImpossible d'ancrer un lment nul.Cannot anchor to a null item.QDeclarativeAnchorsImpossible d'ancrer un lment qui n'est pas un parent ou partage le mme parent.8Cannot anchor to an item that isn't a parent or sibling.QDeclarativeAnchorsImpossible de spcifier la fois une ancre gauche, droite et hcenter.0Cannot specify left, right, and hcenter anchors.QDeclarativeAnchorsImpossible de spcifier la fois une ancre haut, bas et vcenter.0Cannot specify top, bottom, and vcenter anchors.QDeclarativeAnchorszBoucle potentielle dans les ancres dtecte pour le centrage.*Possible anchor loop detected on centerIn.QDeclarativeAnchorsBoucle potentielle dans les ancres dtecte pour le remplissage.&Possible anchor loop detected on fill.QDeclarativeAnchorsBoucle potentielle dans les ancres dtecte pour l'ancre horizontale.3Possible anchor loop detected on horizontal anchor.QDeclarativeAnchorsBoucle potentielle dans les ancres dtecte pour l'ancre verticale.1Possible anchor loop detected on vertical anchor.QDeclarativeAnchorsNQt a t compil sans support de QMovie'Qt was built without support for QMovieQDeclarativeAnimatedImagezImpossible de changer l'animation affecte un comportement.3Cannot change the animation assigned to a Behavior.QDeclarativeBehaviorrBoucle dtecte dans l'affectation pour la proprit "%1"'Binding loop detected for property "%1"QDeclarativeBindingrBoucle dtecte dans l'affectation pour la proprit "%1"'Binding loop detected for property "%1"QDeclarativeBindingsTL'alias de proprit n'a pas d'emplacementQDeclarativeCompiler@"%1" ne peut pas oprer sur "%2""%1" cannot operate on "%2"QDeclarativeCompilerjLa configuration spcifie ne peut tre utilise ici.'Attached properties cannot be used hereQDeclarativeCompilerVUn seul lien peut tre assign des listes$Can only assign one binding to listsQDeclarativeCompilerImpossible d'assigner directement une valeur une proprit groupe4Cannot assign a value directly to a grouped propertyQDeclarativeCompilerImpossible d'assigner une valeur un signal (un script excuter est attendu)@Cannot assign a value to a signal (expecting a script to be run)QDeclarativeCompilerImpossible d'assigner plusieurs valeurs une proprit de script2Cannot assign multiple values to a script propertyQDeclarativeCompilerTImpossible d'assigner un objet une listeCannot assign object to listQDeclarativeCompiler\Impossible d'assigner un objet une proprit Cannot assign object to propertyQDeclarativeCompilerbImpossible d'assigner des primitives des listes!Cannot assign primitives to listsQDeclarativeCompilerxImpossible d'attacher une proprit par dfaut inexistante.Cannot assign to non-existent default propertyQDeclarativeCompilerlImpossible d'attacher une proprit inexistante "%1"+Cannot assign to non-existent property "%1"QDeclarativeCompilernImpossible de crer une spcification du composant vide+Cannot create empty component specificationQDeclarativeCompilerTImpossible de remplacer la proprit FINALCannot override FINAL propertyQDeclarativeCompilerLes lments du composant ne peuvent pas contenir des proprits autres que id;Component elements may not contain properties other than idQDeclarativeCompilerLes objets composants ne peuvent pas dclarer de nouvelles fonctions./Component objects cannot declare new functions.QDeclarativeCompilerLes objets composants ne peuvent pas dclarer de nouvelles proprits.0Component objects cannot declare new properties.QDeclarativeCompilerLes objets composants ne peuvent pas dclarer de nouveaux signaux.-Component objects cannot declare new signals.QDeclarativeCompiler<Proprit par dfaut en doubleDuplicate default propertyQDeclarativeCompiler0Nom de mthode en doubleDuplicate method nameQDeclarativeCompiler4Nom de proprit en doubleDuplicate property nameQDeclarativeCompiler.Nom de signal en doubleDuplicate signal nameQDeclarativeCompiler<Impossible de crer l'lment.Element is not creatable.QDeclarativeCompiler:Affectation de proprit videEmpty property assignmentQDeclarativeCompiler4Affectation de signal videEmpty signal assignmentQDeclarativeCompilerlid masque illgalement la proprit JavaScript globale-ID illegally masks global JavaScript propertyQDeclarativeCompilerfLes ids ne peuvent pas commencer par une majuscule)IDs cannot start with an uppercase letterQDeclarativeCompilerLes ids ne peuvent contenir que des lettres, des nombres ou des tirets bas7IDs must contain only letters, numbers, and underscoresQDeclarativeCompilerpLes ids doivent commencer par une lettre ou un tiret bas*IDs must start with a letter or underscoreQDeclarativeCompiler.Nom de mthode invalideIllegal method nameQDeclarativeCompiler2Nom de proprit invalideIllegal property nameQDeclarativeCompiler,Nom de signal invalideIllegal signal nameQDeclarativeCompilerhL'affectation du signal est incorrectement spcifie'Incorrectly specified signal assignmentQDeclarativeCompilerRfrence d'alias invalide. Les rfrences d'alias doivent tre spcifies comme <id> ou <id>.<property>XInvalid alias reference. An alias reference must be specified as or .QDeclarativeCompilervRfrence d'alias invalide. Impossible de trouver l'id "%1"/Invalid alias reference. Unable to find id "%1"QDeclarativeCompilerZL'affectation de l'objet attach est invalide"Invalid attached object assignmentQDeclarativeCompilertLe corps de la spcification du composant n'est pas valide$Invalid component body specificationQDeclarativeCompilerXL'id de composant spcifie n'est pas valide"Invalid component id specificationQDeclarativeCompiler id vide invalideInvalid empty IDQDeclarativeCompilerLAccs invalide une proprit groupeInvalid grouped property accessQDeclarativeCompilerAffectation de proprit invalide : "%1"est une proprit en lecture seule9Invalid property assignment: "%1" is a read-only propertyQDeclarativeCompilerlAffectation de proprit invalide : vecteur 3D attendu/Invalid property assignment: 3D vector expectedQDeclarativeCompilerfAffectation de proprit invalide : boolen attendu-Invalid property assignment: boolean expectedQDeclarativeCompilerhAffectation de proprit invalide : couleur attendue+Invalid property assignment: color expectedQDeclarativeCompilerbAffectation de proprit invalide : date attendue*Invalid property assignment: date expectedQDeclarativeCompilervAffectation de proprit invalide : date et heure attendues.Invalid property assignment: datetime expectedQDeclarativeCompiler^Affectation de proprit invalide : int attendu)Invalid property assignment: int expectedQDeclarativeCompilerdAffectation de proprit invalide : nombre attendu,Invalid property assignment: number expectedQDeclarativeCompilerbAffectation de proprit invalide : point attendu+Invalid property assignment: point expectedQDeclarativeCompilerjAffectation de proprit invalide : rectangle attendu*Invalid property assignment: rect expectedQDeclarativeCompilerdAffectation de proprit invalide : script attendu,Invalid property assignment: script expectedQDeclarativeCompilerfAffectation de proprit invalide : taille attendue*Invalid property assignment: size expectedQDeclarativeCompilerfAffectation de proprit invalide : chane attendue,Invalid property assignment: string expectedQDeclarativeCompilerdAffectation de proprit invalide : heure attendue*Invalid property assignment: time expectedQDeclarativeCompilerpAffectation de proprit invalide : numration inconnue0Invalid property assignment: unknown enumerationQDeclarativeCompilerpAffectation de proprit invalide : unsigned int attendu2Invalid property assignment: unsigned int expectedQDeclarativeCompilertAffectation de proprit invalide : type "%1" non support2Invalid property assignment: unsupported type "%1"QDeclarativeCompiler`Affectation de proprit invalide : url attendue)Invalid property assignment: url expectedQDeclarativeCompilerBImbrication de proprit invalideInvalid property nestingQDeclarativeCompiler4Type de proprit invalideInvalid property typeQDeclarativeCompilerDLa proprit utilise est invalideInvalid property useQDeclarativeCompilerNUtilisation invalide de la proprit idInvalid use of id propertyQDeclarativeCompilerJUtilisation invalide d'espace de nomsInvalid use of namespaceQDeclarativeCompilerLes noms des mthodes ne peuvent pas commencer par une majuscule3Method names cannot begin with an upper case letterQDeclarativeCompiler0Objet attach inexistantNon-existent attached objectQDeclarativeCompilerRCe n'est pas un nom de proprit attacheNot an attached property nameQDeclarativeCompilerBAffectation de proprit attendueProperty assignment expectedQDeclarativeCompiler\Une valeur a dj t attribue la proprit*Property has already been assigned a valueQDeclarativeCompilerLes noms des proprits ne peuvent pas commencer par une majuscule5Property names cannot begin with an upper case letterQDeclarativeCompilerXValeur de proprit attribue plusieurs fois!Property value set multiple timesQDeclarativeCompiler|Les noms de signaux ne peuvent pas commencer par une majuscule3Signal names cannot begin with an upper case letterQDeclarativeCompiler^Une seule affectation de proprit est attendue#Single property assignment expectedQDeclarativeCompiler<Affectation d'objet inattendueUnexpected object assignmentQDeclarativeCompiler*l'id n'est pas uniqueid is not uniqueQDeclarativeCompiler"URL vide invalideInvalid empty URLQDeclarativeComponent %1 %2%1 %2 QDeclarativeCompositeTypeManagertL'espace de noms %1 ne peut pas tre utilis comme un type%Namespace %1 cannot be used as a type QDeclarativeCompositeTypeManagerHLa ressource %1 n'est pas disponibleResource %1 unavailable QDeclarativeCompositeTypeManager>Le type %1 n'est pas disponibleType %1 unavailable QDeclarativeCompositeTypeManagerhImposible d'assigner la proprit inexistante "%1"+Cannot assign to non-existent property "%1"QDeclarativeConnectionsrConnexions: les lments imbriqus ne sont pas autoriss'Connections: nested objects not allowedQDeclarativeConnections6Connexions: script attenduConnections: script expectedQDeclarativeConnections<Connexions: erreur de syntaxeConnections: syntax errorQDeclarativeConnections8Transaction en lecture seuleRead-only TransactionQDeclarativeEngine8la transaction SQL a choueSQL transaction failedQDeclarativeEnginenSQL : la version de la base de donnes est incompatibleSQL: database version mismatchQDeclarativeEngine\Version incompatible: %1 attendue, %2 trouve'Version mismatch: expected %1, found %2QDeclarativeEnginedexecuteSql a t appel en dehors de transaction()'executeSql called outside transaction()QDeclarativeEngine^transaction: la fonction de rappel est absentetransaction: missing callbackQDeclarativeEnginePback est une proprit criture uniqueback is a write-once propertyQDeclarativeFlipableRfront est une proprit criture uniquefront is a write-once propertyQDeclarativeFlipableB"%1" : le rpertoire n'existe pas"%1": no such directoryQDeclarativeImportDatabase@- %1 n'est pas un espace de noms- %1 is not a namespaceQDeclarativeImportDatabasej- les espaces de noms imbriqus ne sont pas autoriss- nested namespaces not allowedQDeclarativeImportDatabasepl'importation "%1" n'a pas de qmldir ni d'espace de noms*import "%1" has no qmldir and no namespaceQDeclarativeImportDatabaseJest ambigu. Trouv dans %1 et dans %2#is ambiguous. Found in %1 and in %2QDeclarativeImportDatabasevest ambigu. Trouv dans %1 dans les versions %2.%3 et %4.%54is ambiguous. Found in %1 in version %2.%3 and %4.%5QDeclarativeImportDatabase6est instanci rcursivementis instantiated recursivelyQDeclarativeImportDatabase"n'est pas un type is not a typeQDeclarativeImportDatabase rpertoire locallocal directoryQDeclarativeImportDatabasefla dfinition "%2" du module "%1% n'est pas lisible(module "%1" definition "%2" not readableQDeclarativeImportDatabaseBle module "%1" n'est pas installmodule "%1" is not installedQDeclarativeImportDatabase`le plugin "%2" du module "%1" n'a pas t trouv!module "%1" plugin "%2" not foundQDeclarativeImportDatabasefla version %2.%3 du module "%1" n'est pas installe*module "%1" version %2.%3 is not installedQDeclarativeImportDatabasepimpossible de charger le plugin pour le module "%1" : %2+plugin cannot be loaded for module "%1": %2QDeclarativeImportDatabaseKeyNavigation est disponible uniquement via les proprits attaches7KeyNavigation is only available via attached properties!QDeclarativeKeyNavigationAttachedvKeys est disponible uniquement via les proprits attaches.Keys is only available via attached propertiesQDeclarativeKeysAttachedrListElement: ne peut pas contenir des lments imbriqus+ListElement: cannot contain nested elementsQDeclarativeListModelzListElement: ne peut pas utiliser la proprit rserve "id".ListElement: cannot use reserved "id" propertyQDeclarativeListModelListElement: ne peut pas utiliser script comme valeur pour une proprit1ListElement: cannot use script for property valueQDeclarativeListModelHListModel: proprit indfinie '%1'"ListModel: undefined property '%1'QDeclarativeListModelLappend : une valeur n'est pas un objetappend: value is not an objectQDeclarativeListModel~insert : l'index %1 est hors de la plage de valeurs admissiblesinsert: index %1 out of rangeQDeclarativeListModelLinsert : une valeur n'est pas un objetinsert: value is not an objectQDeclarativeListModel\move : hors de la plage de valeurs admissiblesmove: out of rangeQDeclarativeListModel~remove : l'index %1 est hors de la plage de valeurs admissiblesremove: index %1 out of rangeQDeclarativeListModelvset : l'index %1 est hors de la plage de valeurs admissibleset: index %1 out of rangeQDeclarativeListModelFset : une valeur n'est pas un objetset: value is not an objectQDeclarativeListModelLe chargeur n'est pas compatible avec le chargement d'lments non-visuels.4Loader does not support loading non-visual elements.QDeclarativeLoaderImpossible de conserver l'aspect lors d'une transformation complexe5Unable to preserve appearance under complex transformQDeclarativeParentAnimationImpossible de conserver l'aspect lors d'une mise l'chelle non uniforme5Unable to preserve appearance under non-uniform scaleQDeclarativeParentAnimationImpossible de conserver l'aspect lors d'une mise l'chelle gale 0.Unable to preserve appearance under scale of 0QDeclarativeParentAnimationImpossible de conserver l'aspect lors d'une transformation complexe5Unable to preserve appearance under complex transformQDeclarativeParentChangeImpossible de conserver l'aspect lors d'une mise l'chelle non uniforme5Unable to preserve appearance under non-uniform scaleQDeclarativeParentChangeImpossible de conserver l'aspect lors d'une mise l'chelle gale 0.Unable to preserve appearance under scale of 0QDeclarativeParentChange2Type de paramtre attenduExpected parameter typeQDeclarativeParser2Type de proprit attenduExpected property typeQDeclarativeParser$jeton attendu '%1'Expected token `%1'QDeclarativeParser&Nom de type attenduExpected type nameQDeclarativeParserjImpossible de commencer un identifiant par un chiffre,Identifier cannot start with numeric literalQDeclarativeParser"Caractre illgalIllegal characterQDeclarativeParser>Squence d'chappement illgaleIllegal escape sequenceQDeclarativeParserVSyntaxe illgale pour un nombre exponentiel%Illegal syntax for exponential numberQDeclarativeParserNSquence d'chappement Unicode illgaleIllegal unicode escape sequenceQDeclarativeParserLqualificatif id d'importation invalideInvalid import qualifier IDQDeclarativeParser^Modificateur invalide pour le type de propritInvalid property type modifierQDeclarativeParser`Drapeau '%0' invalid pour l'expression rgulire$Invalid regular expression flag '%0'QDeclarativeParserhDclaration JavaScript en dehors de l'lment Script-JavaScript declaration outside Script elementQDeclarativeParser^L'importation de bibliothque exige une version!Library import requires a versionQDeclarativeParserdvaleur de proprit attribue plusieurs reprises!Property value set multiple timesQDeclarativeParserZLa lecture seule n'est pas encore implmenteReadonly not yet supportedQDeclarativeParser"Qt" est un nom rserv et ne peut pas tre utilis comme qualificatif1Reserved name "Qt" cannot be used as an qualifierQDeclarativeParser~Les qualificatifs d'importation de script doivent tre uniques.(Script import qualifiers must be unique.QDeclarativeParserZL'importation de script exige un qualificatif"Script import requires a qualifierQDeclarativeParser"Erreur de syntaxe Syntax errorQDeclarativeParserJCommentaire non ferm en fin de ligneUnclosed comment at end of fileQDeclarativeParser^Chane de caractres non ferme en fin de ligneUnclosed string at end of lineQDeclarativeParser`Modificateur inattendu pour le type de proprit!Unexpected property type modifierQDeclarativeParser(jeton inattendu '%1'Unexpected token `%1'QDeclarativeParservSquence antislash non termine pour l'expression rgulire2Unterminated regular expression backslash sequenceQDeclarativeParser^Classe non termine pour l'expression rgulire%Unterminated regular expression classQDeclarativeParser^lment non termin pour l'expression rgulire'Unterminated regular expression literalQDeclarativeParserHImpossible d'attribuer une dure < 0Cannot set a duration of < 0QDeclarativePauseAnimation0Impossible d'ouvrir: %1Cannot open: %1QDeclarativePixmap8Erreur de dcodage: %1: %2Error decoding: %1: %2QDeclarativePixmap`Impossible d'obtenir l'image du fournisseur: %1%Failed to get image from provider: %1QDeclarativePixmapHImpossible d'attribuer une dure < 0Cannot set a duration of < 0QDeclarativePropertyAnimationhNe peut pas assigner la proprit inexistante "%1"+Cannot assign to non-existent property "%1"QDeclarativePropertyChangesrNe peut pas assigner la proprit en lecture seule "%1"(Cannot assign to read-only property "%1"QDeclarativePropertyChangesPropertyChanges n'est pas compatible avec la cration d'objets spcifiques un tat.APropertyChanges does not support creating state-specific objects.QDeclarativePropertyChangesZImpossible d'instancier le dlgu de curseur%Could not instantiate cursor delegateQDeclarativeTextInputVImpossible de charger le dlgu de curseurCould not load cursor delegateQDeclarativeTextInputxImpossible d'assigner un objet la proprit %1 d'un signal-Cannot assign an object to signal property %1QDeclarativeVMEzImpossible d'assigner un objet la proprit d'une interface*Cannot assign object to interface propertyQDeclarativeVMETImpossible d'assigner un objet une listeCannot assign object to listQDeclarativeVMEImpossible d'assigner un objet de type %1 sans mthode par dfaut3Cannot assign object type %1 with no default methodQDeclarativeVMEhImpossible d'assigner la valeur %1 la proprit %2%Cannot assign value %1 to property %2QDeclarativeVMEImpossible de connecter le signal/slot %1 %vs. %2 pour cause d'incompatibilit0Cannot connect mismatched signal/slot %1 %vs. %2QDeclarativeVMEImpossible d'attribuer les proprits %1 car ce dernier est nul)Cannot set properties on %1 as it is nullQDeclarativeVMEHImpossible de crer un objet attach Unable to create attached objectQDeclarativeVMENImpossible de crer un objet de type %1"Unable to create object of type %1QDeclarativeVMEXUn composant dlgu doit tre de type Item.%Delegate component must be Item type.QDeclarativeVisualDataModel\Qt a t compil sans support pour xmlpatterns,Qt was built without support for xmlpatternsQDeclarativeXmlListModelbUne requte XmlRole ne doit pas commencer par '/'(An XmlRole query must not start with '/'QDeclarativeXmlListModelRolenUne requte XmlListModel doit commencer par '/' ou "//"1An XmlListModel query must start with '/' or "//"QDeclarativeXmlRoleList QDialQDialQDial"Poigne du slider SliderHandleQDialTachymtre SpeedoMeterQDialTerminerDoneQDialog*Qu'est-ce que c'est? What's This?QDialog&Annuler&CancelQDialogButtonBox&Fermer&CloseQDialogButtonBox&Non&NoQDialogButtonBox&OK&OKQDialogButtonBoxEnregi&strer&SaveQDialogButtonBox&Oui&YesQDialogButtonBoxAbandonnerAbortQDialogButtonBoxAppliquerApplyQDialogButtonBoxAnnulerCancelQDialogButtonBox FermerCloseQDialogButtonBox.Fermer sans enregistrerClose without SavingQDialogButtonBox$Ne pas enregistrerDiscardQDialogButtonBox$Ne pas enregistrer Don't SaveQDialogButtonBoxAideHelpQDialogButtonBoxIgnorerIgnoreQDialogButtonBoxNon to&ut N&o to AllQDialogButtonBoxOKOKQDialogButtonBox OuvrirOpenQDialogButtonBoxRinitialiserResetQDialogButtonBox@Restaurer les valeurs par dfautRestore DefaultsQDialogButtonBoxRessayerRetryQDialogButtonBoxEnregistrerSaveQDialogButtonBox Tout EnregistrerSave AllQDialogButtonBoxOui &tout Yes to &AllQDialogButtonBox*Dernire Modification Date Modified QDirModelTypeMatch OS X FinderKind QDirModelNomName QDirModel TailleSize QDirModelTypeAll other platformsType QDirModel FermerClose QDockWidgetAttacherDock QDockWidgetDtacherFloat QDockWidget MoinsLessQDoubleSpinBoxPlusMoreQDoubleSpinBox&OK&OK QErrorMessage>&Afficher ce message de nouveau&Show this message again QErrorMessage,Message de dbogage: Debug Message: QErrorMessage Erreur fatale:  Fatal Error: QErrorMessage Avertissement: Warning: QErrorMessageHImpossible de crer %1 pour critureCannot create %1 for outputQFileFImpossible d'ouvrir %1 pour lectureCannot open %1 for inputQFileBImpossible d'ouvrir pour critureCannot open for outputQFileRImpossible de supprimer le fichier sourceCannot remove source fileQFile:Le fichier destination existeDestination file existsQFile6Impossible d'crire un blocFailure to write blockQFile|Ne renommera pas le fichier squentiel avec la copie par blocs0Will not rename sequential file using block copyQFile%1 Dossier introuvable. Veuillez vrifier que le nom du dossier est correct.K%1 Directory not found. Please verify the correct directory name was given. QFileDialog%1 Fichier introuvable. Veuillez vrifier que le nom du fichier est correct.A%1 File not found. Please verify the correct file name was given. QFileDialogdLe fichier %1 existe dj. Voulez-vous l'craser?-%1 already exists. Do you want to replace it? QFileDialog&Choisir&Choose QFileDialogSuppri&mer&Delete QFileDialog &Nouveau dossier &New Folder QFileDialog&Ouvrir&Open QFileDialog&Renommer&Rename QFileDialog&Enregistrer&Save QFileDialog'%1' est protg en criture. Voulez-vous quand mme le supprimer?9'%1' is write protected. Do you want to delete it anyway? QFileDialog AliasMac OS X FinderAlias QFileDialog*Tous les fichiers (*) All Files (*) QFileDialog.Tous les fichiers (*.*)All Files (*.*) QFileDialogRtes-vous sr de vouloir supprimer '%1'?!Are sure you want to delete '%1'? QFileDialog,Prcdent (historique)Back QFileDialog$Affichage dtaillChange to detail view mode QFileDialogAffichage listeChange to list view mode QFileDialogFImpossible de supprimer le dossier.Could not delete directory. QFileDialog0Crer un nouveau dossierCreate New Folder QFileDialog0Crer un nouveau dossierCreate a New Folder QFileDialog$Affichage dtaill Detail View QFileDialogDossiers Directories QFileDialogDossier:  Directory: QFileDialog UnitDrive QFileDialogFichierFile QFileDialog$&Nom de fichier:  File &name: QFileDialogFichier DossierMatch Windows Explorer File Folder QFileDialog&Fichiers de type: Files of type: QFileDialog0Chercher dans le dossierFind Directory QFileDialogDossierAll other platformsFolder QFileDialogSuccesseurForward QFileDialogPrcdentGo back QFileDialogSuivant Go forward QFileDialogDossier parentGo to the parent directory QFileDialogAffichage liste List View QFileDialogVoir dans: Look in: QFileDialog Poste de travail My Computer QFileDialogNouveau dossier New Folder QFileDialog OuvrirOpen QFileDialogDossier parentParent Directory QFileDialog(Emplacements rcents Recent Places QFileDialogSupprimerRemove QFileDialog Enregistrer sousSave As QFileDialogRaccourciAll other platformsShortcut QFileDialogAfficherShow  QFileDialog:Afficher les fic&hiers cachsShow &hidden files QFileDialogInconnuUnknown QFileDialog %1 Go%1 GBQFileSystemModel %1 Ko%1 KBQFileSystemModel %1 Mo%1 MBQFileSystemModel %1 To%1 TBQFileSystemModel%1 octet(s) %1 byte(s)QFileSystemModel%1 octets%1 bytesQFileSystemModel<b>Le nom "%1" ne peut pas tre utilis.</b><p>Essayez un autre nom avec moins de caractres ou sans ponctuation.oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModelOrdinateurComputerQFileSystemModel*Dernire modification Date ModifiedQFileSystemModel.Nom de fichier invalideInvalid filenameQFileSystemModelTypeMatch OS X FinderKindQFileSystemModel Poste de travail My ComputerQFileSystemModelNomNameQFileSystemModel TailleSizeQFileSystemModelTypeAll other platformsTypeQFileSystemModelTousAny QFontDatabase ArabeArabic QFontDatabaseArmnienArmenian QFontDatabaseBengaliBengali QFontDatabaseExtra-grasBlack QFontDatabaseGrasBold QFontDatabaseCyrilliqueCyrillic QFontDatabaseDemiDemi QFontDatabaseDemi-gras Demi Bold QFontDatabaseDvanagari Devanagari QFontDatabaseGorgienGeorgian QFontDatabaseGrecGreek QFontDatabaseGujaratiGujarati QFontDatabaseGurmukhiGurmukhi QFontDatabase HbreuHebrew QFontDatabaseItaliqueItalic QFontDatabaseJaponaisJapanese QFontDatabaseKannadaKannada QFontDatabase KhmerKhmer QFontDatabase CorenKorean QFontDatabaseLaoLao QFontDatabase LatinLatin QFontDatabase MaigreLight QFontDatabaseMalayalam Malayalam QFontDatabaseMyanmarMyanmar QFontDatabaseN'KoN'Ko QFontDatabase NormalNormal QFontDatabaseObliqueOblique QFontDatabase OghamOgham QFontDatabase OriyaOriya QFontDatabaseRuniqueRunic QFontDatabase"Chinois SimplifiSimplified Chinese QFontDatabaseSinhalaSinhala QFontDatabaseSymboleSymbol QFontDatabaseSyriaqueSyriac QFontDatabase TamoulTamil QFontDatabase TeluguTelugu QFontDatabase ThnaThaana QFontDatabaseThaThai QFontDatabaseTibtainTibetan QFontDatabase(Chinois TraditionnelTraditional Chinese QFontDatabaseVietnamien Vietnamese QFontDatabase&Police&Font QFontDialog&Taille&Size QFontDialog&Soulign &Underline QFontDialog EffetsEffects QFontDialog St&yle de police Font st&yle QFontDialogExempleSample QFontDialog$Choisir une police Select Font QFontDialog &Barr Stri&keout QFontDialog&&Systme d'critureWr&iting System QFontDialogFchec du changement de dossier: %1Changing directory failed: %1QFtp"Connect l'hteConnected to hostQFtp(Connect l'hte %1Connected to host %1QFtpBchec de la connexion l'hte %1Connecting to host failed: %1QFtp Connexion fermeConnection closedQFtp0Connexion donne refuse&Connection refused for data connectionQFtp:Connexion l'hte %1 refuseConnection refused to host %1QFtp@Connexion expire vers l'hte %1Connection timed out to host %1QFtp*Connexion %1 fermeConnection to %1 closedQFtpLchec de la cration d'un dossier: %1Creating directory failed: %1QFtpNchec du tlchargement du fichier: %1Downloading file failed: %1QFtpHte %1 trouv Host %1 foundQFtp&Hte %1 introuvableHost %1 not foundQFtpHte trouv Host foundQFtp@chec du listage du dossier: %1Listing directory failed: %1QFtp&chec du login: %1Login failed: %1QFtpNon connect Not connectedQFtpRchec de la suppression d'un dossier: %1Removing directory failed: %1QFtpRchec de la suppression d'un fichier: %1Removing file failed: %1QFtpErreur inconnue Unknown errorQFtp<chec du tldchargement: %1Uploading file failed: %1QFtp*Impossible de lire %1Unable to play %1QGstreamerPlayerSession<Aucun nom d'hte n'a t donnNo host name given QHostInfoErreur inconnue Unknown error QHostInfo Hte introuvableHost not foundQHostInfoAgent&Nom d'hte invalideInvalid hostnameQHostInfoAgent<Aucun nom d'hte n'a t donnNo host name givenQHostInfoAgent.Adresse de type inconnuUnknown address typeQHostInfoAgentErreur inconnue Unknown errorQHostInfoAgent0Authentification requiseAuthentication requiredQHttp"Connect l'hteConnected to hostQHttp(Connect l'hte %1Connected to host %1QHttp Connexion fermeConnection closedQHttp"Connexion refuseConnection refusedQHttpFConnexion refuse (ou dlai expir)!Connection refused (or timed out)QHttp*Connexion %1 fermeConnection to %1 closedQHttp$Donnes corrompuesData corruptedQHttpNErreur lors de l'criture de la rponse Error writing response to deviceQHttp0chec de la requte HTTPHTTP request failedQHttpzConnexion HTTPS requise mais le support SSL n'est pas compil:HTTPS connection requested but SSL support not compiled inQHttpHte %1 trouv Host %1 foundQHttp&Hte %1 introuvableHost %1 not foundQHttpHte trouv Host foundQHttpHL'hte requiert une authentificationHost requires authenticationQHttp,Fragment HTTP invalideInvalid HTTP chunked bodyQHttp>Entte de rponse HTTP invalideInvalid HTTP response headerQHttp,Aucun serveur spcifiNo server set to connect toQHttpLLe proxy requiert une authentificationProxy authentication requiredQHttpLLe proxy requiert une authentificationProxy requires authenticationQHttp&Requte interrompueRequest abortedQHttp>La poigne de main SSL a chouSSL handshake failedQHttpHConnexion interrompue par le serveur%Server closed connection unexpectedlyQHttpFMthode d'authentification inconnueUnknown authentication methodQHttpErreur inconnue Unknown errorQHttp4Protocole spcifi inconnuUnknown protocol specifiedQHttp8Longueur du contenu invalideWrong content lengthQHttp0Authentification requiseAuthentication requiredQHttpSocketEngineNPas de rponse HTTP de la part du proxy(Did not receive HTTP response from proxyQHttpSocketEngineTErreur de communication avec le proxy HTTP#Error communicating with HTTP proxyQHttpSocketEnginenErreur dans le reqte d'authentification reue du proxy/Error parsing authentication request from proxyQHttpSocketEnginepLa connexion au serveur proxy a t ferme prmaturment#Proxy connection closed prematurelyQHttpSocketEngine4Connexion au proxy refuseProxy connection refusedQHttpSocketEngine<Le proxy a rejet la connexionProxy denied connectionQHttpSocketEngineLLa connexion au serveur proxy a expir!Proxy server connection timed outQHttpSocketEngine2Serveur proxy introuvableProxy server not foundQHttpSocketEngineNLa transaction n'a pas pu tre dmarreCould not start transaction QIBaseDriverPErreur d'ouverture de la base de donnesError opening database QIBaseDriverJIncapable de soumettre la transactionUnable to commit transaction QIBaseDriverDIncapable d'annuler la transactionUnable to rollback transaction QIBaseDriver>Impossible d'allouer la requteCould not allocate statement QIBaseResult@Impossible de dcrire la requte"Could not describe input statement QIBaseResult@Impossible de dcrire la requteCould not describe statement QIBaseResultRImpossible de rcuperer l'lment suivantCould not fetch next item QIBaseResult@Impossible de trouver le tableauCould not find array QIBaseResultVImpossible de trouver le tableau de donnesCould not get array data QIBaseResultdImpossible d'avoir les informations sur la requteCould not get query info QIBaseResultdImpossible d'avoir les informations sur la requteCould not get statement info QIBaseResultBImpossible de prparer la requteCould not prepare statement QIBaseResultJImpossible de dmarrer la transactionCould not start transaction QIBaseResult>Impossible de fermer la requteUnable to close statement QIBaseResultJIncapable de soumettre la transactionUnable to commit transaction QIBaseResult6Impossible de crer un BLOBUnable to create BLOB QIBaseResult@Impossible d'excuter la requteUnable to execute query QIBaseResult6Impossible d'ouvrir le BLOBUnable to open BLOB QIBaseResult4Impossible de lire le BLOBUnable to read BLOB QIBaseResult6Impossible d'crire le BLOBUnable to write BLOB QIBaseResultVAucun espace disponible sur le priphriqueNo space left on device QIODeviceDAucun fichier ou dossier de ce nomNo such file or directory QIODevice(Autorisation refusePermission denied QIODeviceLTrop de fichiers ouverts simultanmentToo many open files QIODeviceErreur inconnue Unknown error QIODevice$Processeur frontalFEP QInputContext2Mthode d'entre Mac OS XMac OS X input method QInputContextPMthode de saisie processeur frontal S60S60 FEP input method QInputContext0Mthode d'entre WindowsWindows input method QInputContextXIMXIM QInputContext(Mthode d'entre XIMXIM input method QInputContext(Entrer une valeur: Enter a value: QInputDialogZImpossible de charger la bibliothque %1: %2Cannot load library %1: %2QLibraryfImpossible de rsoudre le symbole "%1" dans %2: %3$Cannot resolve symbol "%1" in %2: %3QLibrary^Impossible de dcharger la bibliothque %1: %2Cannot unload library %1: %2QLibrarytImpossible d'tablir la projection en mmoire de '%1': %2Could not mmap '%1': %2QLibraryzImpossible de supprimer la projection en mmoire de '%1': %2Could not unmap '%1': %2QLibrarylDonnes de vrification du plugin diffrente dans '%1')Plugin verification data mismatch in '%1'QLibrary\Le fichier '%1' n'est pas un plugin Qt valide.'The file '%1' is not a valid Qt plugin.QLibraryLe plugin '%1' utilise une bibliothque Qt incompatible. (%2.%3.%4) [%5]=The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]QLibraryLe plugin '%1' utilise une bibliothque Qt incompatible. (Il est impossible de mlanger des bibliothques 'debug' et 'release'.)WThe plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)QLibraryLe plugin '%1' utilise une bibliothque Qt incompatible. Cl attendue "%2", reue "%3"OThe plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"QLibraryRLa bibliothque partage est introuvable.!The shared library was not found.QLibraryErreur inconnue Unknown errorQLibraryCop&ier&Copy QLineEditCo&ller&Paste QLineEdit&Rtablir&Redo QLineEdit&Annuler&Undo QLineEditCo&uperCu&t QLineEditSupprimerDelete QLineEdit"Tout slectionner Select All QLineEdit4%1: Address dj utilise%1: Address in use QLocalServer$%1: Erreur de nom%1: Name error QLocalServer.%1: Permission refuse%1: Permission denied QLocalServer.%1: Erreur inconnue %2%1: Unknown error %2 QLocalServer0%1: Erreur de connexion%1: Connection error QLocalSocket,%1: Connexion refuse%1: Connection refused QLocalSocket4%1: Datagramme trop grand%1: Datagram too large QLocalSocket"%1: Nom invalide%1: Invalid name QLocalSocket*%1: Connexion ferme%1: Remote closed QLocalSocket:%1: Erreur d'accs au socket%1: Socket access error QLocalSocket@%1: L'opration socket a expir%1: Socket operation timed out QLocalSocketD%1: Erreur de ressource du socket%1: Socket resource error QLocalSocketH%1: L'opration n'est pas supporte)%1: The socket operation is not supported QLocalSocket(%1: erreur inconnue%1: Unknown error QLocalSocket.%1: Erreur inconnue %2%1: Unknown error %2 QLocalSocketJImpossible de dmarrer la transactionUnable to begin transaction QMYSQLDriverLImpossible de soumettre la transactionUnable to commit transaction QMYSQLDriverDImpossible d'tablir une connexionUnable to connect QMYSQLDriverPImpossible d'ouvrir la base de donnes 'Unable to open database ' QMYSQLDriverFImpossible d'annuler la transactionUnable to rollback transaction QMYSQLDriverVImpossible d'attacher les valeurs de sortieUnable to bind outvalues QMYSQLResult>Impossible d'attacher la valeurUnable to bind value QMYSQLResultRImpossible d'excuterla prochaine requteUnable to execute next query QMYSQLResult@Impossible d'excuter la requteUnable to execute query QMYSQLResult@Impossible d'excuter la requteUnable to execute statement QMYSQLResultFImpossible de rcuperer des donnesUnable to fetch data QMYSQLResultHImpossible de prparer l'instructionUnable to prepare statement QMYSQLResultRImpossible de rinitialiser l'instructionUnable to reset statement QMYSQLResultTImpossible de stocker le prochain rsultatUnable to store next result QMYSQLResultBImpossible de stocker le rsultatUnable to store result QMYSQLResultbImpossible de stocker les rsultats de la requte!Unable to store statement results QMYSQLResult(Sans titre) (Untitled)QMdiArea%1 - [%2] %1 - [%2] QMdiSubWindow&Fermer&Close QMdiSubWindow&Dplacer&Move QMdiSubWindow&Restaurer&Restore QMdiSubWindow&Taille&Size QMdiSubWindow - [%1]- [%1] QMdiSubWindow FermerClose QMdiSubWindowAideHelp QMdiSubWindowMa&ximiser Ma&ximize QMdiSubWindowMaximiserMaximize QMdiSubWindowMenuMenu QMdiSubWindowRd&uire Mi&nimize QMdiSubWindowRduireMinimize QMdiSubWindowRestaurerRestore QMdiSubWindow Restaurer en bas Restore Down QMdiSubWindow OmbrerShade QMdiSubWindow.&Rester au premier plan Stay on &Top QMdiSubWindowRestaurerUnshade QMdiSubWindow^Pas de service valide pour l'objet QMediaPlayer5The QMediaPlayer object does not have a valid service QMediaPlayerImpossible d'ajouter des lments une liste de lecture en lecture seule.*Could not add items to read only playlist.QMediaPlaylist`Le format de liste de lecture n'est pas support Playlist format is not supportedQMediaPlaylist@Impossible d'accder au fichier.The file could not be accessed.QMediaPlaylist FermerCloseQMenuExcuterExecuteQMenu OuvrirOpenQMenuActionsActionsQMenuBar<h3> propos de Qt</h3><p>Ce programme utilise Qt version %1.</p>8

About Qt

This program uses Qt version %1.

 QMessageBox x<p>Qt est une bibliothque logicielle C++ pour le dveloppement d applications multiplateformes.</p><p>Qt fournit une portabilit source unique pour MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux et les principales variantes commerciales d Unix. Qt est galement disponible pour appareils intgrs comme Qt pour Embedded Linux et Qt pour Windows CE.</p><p>Il existe trois options de licence diffrentes conues pour s adapter aux besoins d utilisateurs varis.</p><p>Qt concde sous notre contrat de licence commerciale est destine au dveloppement de logiciels propritaires/commerciaux dont vous ne souhaitez pas partager le code source avec des tiers ou qui ne peuvent se conformer aux termes de la LGPL GNU version 2.1 ou GPL GNU version 3.0.</p><p>Qt concde sous la LGPL GNU version 2.1 est destine au dveloppement d applications Qt (propritaires ou libres) condition que vous vous conformiez aux conditions gnrales de la LGPL GNU version 2.1.</p><p>Qt concde sous la licence publique gnrale GNU version 3.0 est destine au dveloppement d applications Qt lorsque vous souhaitez utiliser ces applications avec d autres logiciels soumis aux termes de la GPL GNU version 3.0 ou lorsque vous acceptez les termes de la GPL GNU version 3.0.</p><p>Veuillez consulter<a href="http: //qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> pour un aperu des concessions de licences Qt.</p><p>Copyright (C) 2011 Nokia Corporation et/ou ses filiales.</p><p>Qt est un produit Nokia. Voir <a href="http: //qt.nokia.com/">qt.nokia.com</a> pour de plus amples informations.</p>

Qt is a C++ toolkit for cross-platform application development.

Qt provides single-source portability across MS Windows, Mac OS X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.

Qt is available under three different licensing options designed to accommodate the needs of our various users.

Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.

Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.

Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.

Please see qt.nokia.com/products/licensing for an overview of Qt licensing.

Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).

Qt is a Nokia product. See qt.nokia.com for more information.

 QMessageBox propos de QtAbout Qt QMessageBoxAideHelp QMessageBox*Cacher les dtails...Hide Details... QMessageBoxOKOK QMessageBox,Montrer les dtails...Show Details... QMessageBoxSlectionner IM Select IMQMultiInputContextDSlectionneur de mthode de saisieMultiple input method switcherQMultiInputContextPluginSlectionneur de mthode de saisie qui utilise le menu contextuel des widgets de texteMMultiple input method switcher that uses the context menu of the text widgetsQMultiInputContextPluginXUn autre socket coute dj sur le mme port4Another socket is already listening on the same portQNativeSocketEngineTentative d'utiliser un socket IPv6 sur une plateforme qui ne supporte pas IPv6=Attempt to use IPv6 socket on a platform with no IPv6 supportQNativeSocketEngine"Connexion refuseConnection refusedQNativeSocketEngine"Connexion expireConnection timed outQNativeSocketEngine^Le datagramme tait trop grand pour tre envoyDatagram was too large to sendQNativeSocketEngine"Hte inaccessibleHost unreachableQNativeSocketEngine<Descripteur de socket invalideInvalid socket descriptorQNativeSocketEngineErreur rseau Network errorQNativeSocketEngine6L'opration rseau a expirNetwork operation timed outQNativeSocketEngine:Rseau impossible rejoindreNetwork unreachableQNativeSocketEngine0Operation sur non-socketOperation on non-socketQNativeSocketEngine(Manque de ressourcesOut of resourcesQNativeSocketEngine(Autorisation refusePermission deniedQNativeSocketEngine"Protocol non grProtocol type not supportedQNativeSocketEngine<L'adresse n'est pas disponibleThe address is not availableQNativeSocketEngine,L'adresse est protgeThe address is protectedQNativeSocketEngine@L'adresse lie est dj en usage#The bound address is already in useQNativeSocketEnginedLe type de proxy est invalide pour cette opration,The proxy type is invalid for this operationQNativeSocketEngineFL'hte distant a ferm la connexion%The remote host closed the connectionQNativeSocketEngineXImpossible d'initialiser le socket broadcast%Unable to initialize broadcast socketQNativeSocketEngineZImpossible d'initialiser le socket asynchrone(Unable to initialize non-blocking socketQNativeSocketEngineBImpossible de recevoir un messageUnable to receive a messageQNativeSocketEngine>Impossible d'envoyer un messageUnable to send a messageQNativeSocketEngine&Impossible d'crireUnable to writeQNativeSocketEngineErreur inconnue Unknown errorQNativeSocketEngine<Opration socket non supporteUnsupported socket operationQNativeSocketEngine@Erreur lors de l'ouverture de %1Error opening %1QNetworkAccessCacheBackend"URI invalide: %1Invalid URI: %1QNetworkAccessDataBackend<Opration non supporte sur %1Operation not supported on %1QNetworkAccessDataBackend|L'hte distant a ferm sa connexion de faon prmature sur %13Remote host closed the connection prematurely on %1QNetworkAccessDebugPipeBackend8Erreur de socket sur %1: %2Socket error on %1: %2QNetworkAccessDebugPipeBackendLErreur lors de l'criture dans %1: %2Write error writing to %1: %2QNetworkAccessDebugPipeBackendbImpossible d'ouvrir %1: le chemin est un dossier#Cannot open %1: Path is a directoryQNetworkAccessFileBackendJErreur lors de l'ouverture de %1: %2Error opening %1: %2QNetworkAccessFileBackend8Erreur de lecture de %1: %2Read error reading from %1: %2QNetworkAccessFileBackendRRequte d'ouverture de fichier distant %1%Request for opening non-local file %1QNetworkAccessFileBackend8Erreur d'criture de %1: %2Write error writing to %1: %2QNetworkAccessFileBackendbImpossible d'ouvrir %1: le chemin est un dossierCannot open %1: is a directoryQNetworkAccessFtpBackendPErreur lors du tlchargement de %1: %2Error while downloading %1: %2QNetworkAccessFtpBackendBErreur lors de l'envoi de %1: %2Error while uploading %1: %2QNetworkAccessFtpBackenddConnexion %1 a chou: authentification requise0Logging in to %1 failed: authentication requiredQNetworkAccessFtpBackend$Aucun proxy trouvNo suitable proxy foundQNetworkAccessFtpBackend$Aucun proxy trouvNo suitable proxy foundQNetworkAccessHttpBackend@L'accs au rseau est dsactiv.Network access is disabled.QNetworkAccessManager~Erreur lors du tlchargement de %1 - le serveur a rpondu: %2)Error downloading %1 - server replied: %2 QNetworkReply2Erreur de session rseau.Network session error. QNetworkReply:Le protocole "%1" est inconnuProtocol "%1" is unknown QNetworkReply2Erreur rseau temporaire.Temporary network failure. QNetworkReply"Opration annuleOperation canceledQNetworkReplyImpl.Configuration invalide.Invalid configuration.QNetworkSession"Erreur de roaming Roaming errorQNetworkSessionPrivateImplTLe roaming a t annul ou est impossible.'Roaming was aborted or is not possible.QNetworkSessionPrivateImpl^Session annule par l'utilisateur ou le systme!Session aborted by user or systemQNetworkSessionPrivateImpllL'opration requise n'est pas suporte par le systme.7The requested operation is not supported by the system.QNetworkSessionPrivateImplrla session a t annule par l'utilisateur ou le systme..The session was aborted by the user or system.QNetworkSessionPrivateImplbLa configuration spcifie ne peut tre utilise.+The specified configuration cannot be used.QNetworkSessionPrivateImplErreur inconnueUnidentified ErrorQNetworkSessionPrivateImpl6Erreur de session inconnue.Unknown session error.QNetworkSessionPrivateImplJImpossible de dmarrer la transactionUnable to begin transaction QOCIDriverNImpossible d'enregistrer la transactionUnable to commit transaction QOCIDriver2L'initialisation a chou QOCIDriverUnable to initialize QOCIDriver>Impossible d'ouvrir une sessionUnable to logon QOCIDriverFImpossible d'annuler la transactionUnable to rollback transaction QOCIDriver>Impossible d'allouer la requteUnable to alloc statement QOCIResultrImpossible d'attacher la colonne pour une execution batch'Unable to bind column for batch execute QOCIResult>Impossible d'attacher la valeurUnable to bind value QOCIResultRImpossible d'excuter l'instruction batch!Unable to execute batch statement QOCIResult@Impossible d'exctuer la requteUnable to execute statement QOCIResultTImpossible d'obtenir le type de la requteUnable to get statement type QOCIResult>Impossible de passer au suivantUnable to goto next QOCIResultBImpossible de prparer la requteUnable to prepare statement QOCIResultJIncapable de soumettre la transactionUnable to commit transaction QODBCDriverBIncapable d'tablir une connexionUnable to connect QODBCDriverImpossible de se connecter - Le pilote ne supporte pas toutes les fonctionnalits ncessairesEUnable to connect - Driver doesn't support all functionality required QODBCDriverJImpossible de dsactiver l'autocommitUnable to disable autocommit QODBCDriverBImpossible d'activer l'autocommitUnable to enable autocommit QODBCDriverDIncapable d'annuler la transactionUnable to rollback transaction QODBCDriver"QODBCResult::reset: Impossible d'utiliser 'SQL_CURSOR_STATIC' comme attribut de requte. Veuillez vrifier la configuration de votre pilote ODBCyQODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResultBImpossible d'attacher la variableUnable to bind variable QODBCResult@Impossible d'exctuer la requteUnable to execute statement QODBCResult.Impossible de rcuprerUnable to fetch QODBCResultDImpossible de rcuprer le premierUnable to fetch first QODBCResultDImpossible de rcuprer le dernierUnable to fetch last QODBCResultDImpossible de rcuprer le suivantUnable to fetch next QODBCResultHImpossible de rcuprer le prcedentUnable to fetch previous QODBCResultBImpossible de prparer la requteUnable to prepare statement QODBCResult"%1" est un doublon d'un nom de role existant et sera dsactiv.:"%1" duplicates a previous role name and will be disabled.QObject2Serveur de son PulseAudioPulseAudio Sound ServerQObject.Requte invalide : "%1"invalid query: "%1"QObjectNomNameQPPDOptionsModel ValeurValueQPPDOptionsModelJImpossible de dmarrer la transactionCould not begin transaction QPSQLDriverLImpossible de soumettre la transactionCould not commit transaction QPSQLDriverFImpossible d'annuler la transactionCould not rollback transaction QPSQLDriverDImpossible d'tablir une connexionUnable to connect QPSQLDriver0Impossible de s'inscrireUnable to subscribe QPSQLDriver8Impossible de se dsinscrireUnable to unsubscribe QPSQLDriver<Impossible de crer la requteUnable to create query QPSQLResultBImpossible de prparer la requteUnable to prepare statement QPSQLResult Centimtres (cm)Centimeters (cm)QPageSetupWidgetFormulaireFormQPageSetupWidgetHauteur: Height:QPageSetupWidgetPouces (in) Inches (in)QPageSetupWidgetPaysage LandscapeQPageSetupWidget MargesMarginsQPageSetupWidget Millimtres (mm)Millimeters (mm)QPageSetupWidgetOrientation OrientationQPageSetupWidgetDimensions:  Page size:QPageSetupWidget PapierPaperQPageSetupWidget&Source du papier:  Paper source:QPageSetupWidgetPoints (pts) Points (pt)QPageSetupWidgetPortraitPortraitQPageSetupWidgetPaysage inversReverse landscapeQPageSetupWidget Portrait inversReverse portraitQPageSetupWidgetLargeur: Width:QPageSetupWidgetmarge basse bottom marginQPageSetupWidgetmarge gauche left marginQPageSetupWidgetmarge droite right marginQPageSetupWidgetmarge haute top marginQPageSetupWidget:Le plugin n'a pas t charg.The plugin was not loaded. QPluginLoaderErreur inconnue Unknown error QPluginLoaderD%1 existe. Voulez-vous l'craser?/%1 already exists. Do you want to overwrite it? QPrintDialog%1 est un dossier. Veuillez choisir un nom de fichier diffrent.7%1 is a directory. Please choose a different file name. QPrintDialog &Options << QPrintDialog &Options >> QPrintDialogIm&primer&Print QPrintDialog@<qt>voulez-vous l'craser?</qt>%Do you want to overwrite it? QPrintDialogA0 QPrintDialog$A0 (841 x 1189 mm)A0 (841 x 1189 mm) QPrintDialogA1 QPrintDialog"A1 (594 x 841 mm)A1 (594 x 841 mm) QPrintDialogA2 QPrintDialog"A2 (420 x 594 mm)A2 (420 x 594 mm) QPrintDialogA3 QPrintDialog"A3 (297 x 420 mm)A3 (297 x 420 mm) QPrintDialogA4 QPrintDialog"A4 (210 x 297 mm)%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialogA5 QPrintDialog"A5 (148 x 210 mm)A5 (148 x 210 mm) QPrintDialogA6 QPrintDialog"A6 (105 x 148 mm)A6 (105 x 148 mm) QPrintDialogA7 QPrintDialog A7 (74 x 105 mm)A7 (74 x 105 mm) QPrintDialogA8 QPrintDialogA8 (52 x 74 mm)A8 (52 x 74 mm) QPrintDialogA9 QPrintDialogA9 (37 x 52 mm)A9 (37 x 52 mm) QPrintDialogAlias: %1 Aliases: %1 QPrintDialogB0 QPrintDialog&B0 (1000 x 1414 mm)B0 (1000 x 1414 mm) QPrintDialogB1 QPrintDialog$B1 (707 x 1000 mm)B1 (707 x 1000 mm) QPrintDialogB10 QPrintDialog B10 (31 x 44 mm)B10 (31 x 44 mm) QPrintDialogB2 QPrintDialog"B2 (500 x 707 mm)B2 (500 x 707 mm) QPrintDialogB3 QPrintDialog"B3 (353 x 500 mm)B3 (353 x 500 mm) QPrintDialogB4 QPrintDialog"B4 (250 x 353 mm)B4 (250 x 353 mm) QPrintDialogB5 QPrintDialog"B5 (176 x 250 mm)%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialogB6 QPrintDialog"B6 (125 x 176 mm)B6 (125 x 176 mm) QPrintDialogB7 QPrintDialog B7 (88 x 125 mm)B7 (88 x 125 mm) QPrintDialogB8 QPrintDialogB8 (62 x 88 mm)B8 (62 x 88 mm) QPrintDialogB9 QPrintDialogB9 (44 x 62 mm)B9 (44 x 62 mm) QPrintDialogC5E QPrintDialog$C5E (163 x 229 mm)C5E (163 x 229 mm) QPrintDialogPersonnalisCustom QPrintDialogDLE QPrintDialog$DLE (110 x 220 mm)DLE (110 x 220 mm) QPrintDialog Executive QPrintDialogRExecutive (7,5 x 10 pouces, 191 x 254 mm))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialogImpossible d'crire dans le fichier %1. Veuillez choisir un nom de fichier diffrent.=File %1 is not writable. Please choose a different file name. QPrintDialog"Le fichier existe File exists QPrintDialogFolio QPrintDialog(Folio (210 x 330 mm)Folio (210 x 330 mm) QPrintDialogLedger QPrintDialog*Ledger (432 x 279 mm)Ledger (432 x 279 mm) QPrintDialogLegal QPrintDialogJLegal (8.5 x 14 pouces, 216 x 356 mm)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialogLetter QPrintDialogLLetter (8,5 x 11 pouces, 216 x 279 mm)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialogFichier local Local file QPrintDialogOKOK QPrintDialogImprimerPrint QPrintDialog6Imprimer dans un fichier...Print To File ... QPrintDialogImprimer tout Print all QPrintDialog2Imprimer la page courantePrint current page QPrintDialog*Imprimer la slection Print range QPrintDialog*Imprimer la slectionPrint selection QPrintDialog<Imprimer dans un fichier (PDF)Print to File (PDF) QPrintDialogJImprimer dans un fichier (PostScript)Print to File (Postscript) QPrintDialogTabloid QPrintDialog.Tablode (279 x 432 mm)Tabloid (279 x 432 mm) QPrintDialog|La valeur 'de' ne peut pas tre plus grande que la valeur ''.7The 'From' value cannot be greater than the 'To' value. QPrintDialogUS Common #10 Envelope QPrintDialogJUS Common #10 Envelope (105 x 241 mm)%US Common #10 Envelope (105 x 241 mm) QPrintDialog,Ecriture du fichier %1 Write %1 file QPrintDialog"connect en locallocally connected QPrintDialoginconnuunknown QPrintDialog%1%%1%QPrintPreviewDialog FermerCloseQPrintPreviewDialog"Exporter vers PDF Export to PDFQPrintPreviewDialog0Exporter vers PostScriptExport to PostScriptQPrintPreviewDialogPremire page First pageQPrintPreviewDialogAjuster la pageFit pageQPrintPreviewDialog$Ajuster la largeur Fit widthQPrintPreviewDialogPaysage LandscapeQPrintPreviewDialogDernire page Last pageQPrintPreviewDialogPage suivante Next pageQPrintPreviewDialogMise en page Page SetupQPrintPreviewDialogMise en page Page setupQPrintPreviewDialogPortraitPortraitQPrintPreviewDialogPage prcdente Previous pageQPrintPreviewDialogImprimerPrintQPrintPreviewDialog.Aperu avant impression Print PreviewQPrintPreviewDialog&Afficher deux pagesShow facing pagesQPrintPreviewDialogLAfficher un aperu de toutes les pagesShow overview of all pagesQPrintPreviewDialog.Afficher une seule pageShow single pageQPrintPreviewDialogZoom avantZoom inQPrintPreviewDialogZoom arrireZoom outQPrintPreviewDialog AvancAdvancedQPrintPropertiesWidgetFormulaireFormQPrintPropertiesWidgetPageQPrintPropertiesWidgetAssemblerCollateQPrintSettingsOutputCouleurColorQPrintSettingsOutputMode de couleur Color ModeQPrintSettingsOutput CopiesCopiesQPrintSettingsOutputCopies : Copies:QPrintSettingsOutputPage courante Current PageQPrintSettingsOutput(Impression en duplexDuplex PrintingQPrintSettingsOutputFormulaireFormQPrintSettingsOutputDgrad de gris GrayscaleQPrintSettingsOutputCt long Long sideQPrintSettingsOutput AucunNoneQPrintSettingsOutputOptionsOptionsQPrintSettingsOutput(Paramtres de sortieOutput SettingsQPrintSettingsOutput Pages Pages fromQPrintSettingsOutputImprimer tout Print allQPrintSettingsOutput*Imprimer la slection Print rangeQPrintSettingsOutputInverseReverseQPrintSettingsOutputSlection SelectionQPrintSettingsOutputCt court Short sideQPrintSettingsOutputtoQPrintSettingsOutput&Nom: &Name: QPrintWidget... QPrintWidgetFormulaireForm QPrintWidgetEmplacement:  Location: QPrintWidget*&Fichier de sortie:  Output &file: QPrintWidgetP&roprits P&roperties QPrintWidget PrvisualisationPreview QPrintWidgetImprimantePrinter QPrintWidgetType : Type: QPrintWidgetlImpossible d'ouvrir la redirection d'entre en lecture,Could not open input redirection for readingQProcesstImpossible d'ouvrir la redirection de sortie pour criture-Could not open output redirection for writingQProcess<Erreur de lecture du processusError reading from processQProcessFErreur d"criture vers le processusError writing to processQProcess,Aucun programme dfiniNo program definedQProcess*Le processus plantProcess crashedQProcessNLe dmarrage du processus a chou: %1Process failed to start: %1QProcess>Operation de processus a expirProcess operation timed outQProcess<Erreur de ressouce (fork): %1!Resource error (fork failure): %1QProcessAnnulerCancelQProgressDialog OuvrirOpen QPushButton CocherCheck QRadioButtonRsyntaxe invalide pour classe de caractrebad char class syntaxQRegExp>syntaxe invalide pour lookaheadbad lookahead syntaxQRegExp@syntaxe invalide pour rptitionbad repetition syntaxQRegExp"option dsactivedisabled feature usedQRegExp$catgorie invalideinvalid categoryQRegExp&intervalle invalideinvalid intervalQRegExp,valeur octale invalideinvalid octal valueQRegExp0rencontr limite internemet internal limitQRegExp4dlmiteur gauche manquantmissing left delimQRegExp>aucune erreur ne s'est produiteno error occurredQRegExpfin impromptueunexpected endQRegExp`Erreur lors de l'ouverture de la base de donnesError opening databaseQSQLite2DriverJImpossible de dmarrer la transactionUnable to begin transactionQSQLite2DriverLImpossible de soumettre la transactionUnable to commit transactionQSQLite2DriverHImpossible de rpter la transactionUnable to rollback transactionQSQLite2Driver@Impossible d'excuter la requteUnable to execute statementQSQLite2ResultJImpossible de rcuprer les rsultatsUnable to fetch resultsQSQLite2ResultbErreur lors de la fermeture de la base de donnesError closing database QSQLiteDriver`Erreur lors de l'ouverture de la base de donnesError opening database QSQLiteDriverJImpossible de dmarrer la transactionUnable to begin transaction QSQLiteDriverJIncapable de soumettre la transactionUnable to commit transaction QSQLiteDriverFImpossible d'annuler la transactionUnable to rollback transaction QSQLiteDriverPas de requteNo query QSQLiteResult<Nombre de paramtres incorrectParameter count mismatch QSQLiteResultHImpossible d'attacher les paramtresUnable to bind parameters QSQLiteResult@Impossible d'excuter la requteUnable to execute statement QSQLiteResultBImpossible de rcuprer la rangeUnable to fetch row QSQLiteResultLImpossible de rinitialiser la requteUnable to reset statement QSQLiteResultCondition ConditionQScriptBreakpointsModelNombre de coups Hit-countQScriptBreakpointsModelIdentifiantIDQScriptBreakpointsModel Nombre d'ignors Ignore-countQScriptBreakpointsModelLieuLocationQScriptBreakpointsModelUn seul coup Single-shotQScriptBreakpointsModelSupprimerDeleteQScriptBreakpointsWidget CrerNewQScriptBreakpointsWidget6&Chercher dans le script...&Find in Script...QScriptDebugger$Effacer la console Clear ConsoleQScriptDebuggerBEffacer les rsultats du dbogageClear Debug OutputQScriptDebugger8Effacer le journal d'erreursClear Error LogQScriptDebuggerContinuerContinueQScriptDebugger Ctrl+FCtrl+FQScriptDebuggerCtrl+F10Ctrl+F10QScriptDebugger Ctrl+GCtrl+GQScriptDebuggerDboguerDebugQScriptDebuggerF10F10QScriptDebuggerF11F11QScriptDebuggerF3F3QScriptDebuggerF5F5QScriptDebuggerF9F9QScriptDebugger"Rsultat &suivant Find &NextQScriptDebugger&Chercher &prcdentFind &PreviousQScriptDebugger Aller la ligne Go to LineQScriptDebuggerInterrompre InterruptQScriptDebuggerLigne: Line:QScriptDebugger&Excuter au curseur Run to CursorQScriptDebugger4Excuter au nouveau scriptRun to New ScriptQScriptDebuggerShift+F11 Shift+F11QScriptDebuggerShift+F3Shift+F3QScriptDebuggerShift+F5Shift+F5QScriptDebugger$Pas pas dtaill Step IntoQScriptDebugger"Pas pas sortantStep OutQScriptDebugger&Pas pas principal Step OverQScriptDebugger2Basculer le point d'arrtToggle BreakpointQScriptDebugger<img src=": /qt/scripttools/debugging/images/wrap.png">&nbsp;La recherche est revenue au dbutJ Search wrappedQScriptDebuggerCodeFinderWidget&Sensible la casseCase SensitiveQScriptDebuggerCodeFinderWidget FermerCloseQScriptDebuggerCodeFinderWidgetSuivantNextQScriptDebuggerCodeFinderWidgetPrcdentPreviousQScriptDebuggerCodeFinderWidgetMots complets Whole wordsQScriptDebuggerCodeFinderWidgetNomNameQScriptDebuggerLocalsModel ValeurValueQScriptDebuggerLocalsModel NiveauLevelQScriptDebuggerStackModelEmplacementLocationQScriptDebuggerStackModelNomNameQScriptDebuggerStackModel:Condition du point d'arrt: Breakpoint Condition: QScriptEdit6Dsactiver le point d'arrtDisable Breakpoint QScriptEdit0Activer le point d'arrtEnable Breakpoint QScriptEdit2Basculer le point d'arrtToggle Breakpoint QScriptEditPoints d'arrt BreakpointsQScriptEngineDebuggerConsoleConsoleQScriptEngineDebugger*Rsultats du dbogage Debug OutputQScriptEngineDebugger"Journal d'erreurs Error LogQScriptEngineDebuggerScripts chargsLoaded ScriptsQScriptEngineDebugger LocauxLocalsQScriptEngineDebugger,Dbogueur de script QtQt Script DebuggerQScriptEngineDebuggerChercherSearchQScriptEngineDebuggerPileStackQScriptEngineDebuggerAffichageViewQScriptEngineDebugger FermerCloseQScriptNewBreakpointWidget En basBottom QScrollBarBord gauche Left edge QScrollBarAligner en-bas Line down QScrollBarAlignerLine up QScrollBarPage suivante Page down QScrollBarPage prcdente Page left QScrollBarPage suivante Page right QScrollBarPage prcdentePage up QScrollBarPositionPosition QScrollBarBord droit Right edge QScrollBar&Dfiler vers le bas Scroll down QScrollBar"Dfiler jusqu'ici Scroll here QScrollBar,Dfiler vers la gauche Scroll left QScrollBar,Dfiler vers la droite Scroll right QScrollBar(Dfiler vers le haut Scroll up QScrollBarEn hautTop QScrollBarR%1: le fichier de cls UNIX n'existe pas%1: UNIX key file doesn't exist QSharedMemory %1: existe dj%1: already exists QSharedMemoryR%1: taille de cration est infrieur 0%1: create size is less then 0 QSharedMemory"%1: n'existe pas%1: doesn't exist QSharedMemory"%1: n'existe pas%1: doesn't exists QSharedMemory$%1: ftok a chou%1: ftok failed QSharedMemory(%1: taille invalide%1: invalid size QSharedMemory$%1: erreur de cl %1: key error QSharedMemory%1: cl vide%1: key is empty QSharedMemory %1: non attach%1: not attached QSharedMemoryF%1: plus de ressources disponibles%1: out of resources QSharedMemory.%1: permission refuse%1: permission denied QSharedMemoryD%1: la requte de taille a chou%1: size query failed QSharedMemoryj%1: le systme impose des restrictions sur la taille$%1: system-imposed size restrictions QSharedMemory<%1: impossible de vrrouiller%1: unable to lock QSharedMemory>%1: impossible de crer la cl%1: unable to make key QSharedMemoryV%1: impossible d'affecter la cl au verrou%1: unable to set key on lock QSharedMemory@%1: impossible de dverrouiller%1: unable to unlock QSharedMemory.%1: erreur inconnue %2%1: unknown error %2 QSharedMemory++ QShortcutAjouter favori Add Favorite QShortcut(Rgler la luminositAdjust Brightness QShortcutAltAlt QShortcut$Application gaucheApplication Left QShortcut$Application droiteApplication Right QShortcut,Audio rpter la pisteAudio Cycle Track QShortcutAudio avant Audio Forward QShortcut.Audio lecture alatoireAudio Random Play QShortcutAudio rpter Audio Repeat QShortcutAudio arrire Audio Rewind QShortcut AbsentAway QShortcut,Prcdent (historique)Back QShortcutRetour avant Back Forward QShortcutEffacement Backspace QShortcutTab arrBacktab QShortcutGraves fort Bass Boost QShortcutGraves bas Bass Down QShortcutGraves hautBass Up QShortcutBatterieBattery QShortcutBluetooth Bluetooth QShortcut LivreBook QShortcutNavigateurBrowser QShortcutCDCD QShortcutCalculatrice Calculator QShortcutAppelerCall QShortcut(Focus appareil photo Camera Focus QShortcut4Dclencheur appareil photoCamera Shutter QShortcutVerr Maj Caps Lock QShortcutVerr majCapsLock QShortcutEffacerClear QShortcut Effacer la prise Clear Grab QShortcut FermerClose QShortcut Code input QShortcutCommunaut Community QShortcutContexte1Context1 QShortcutContexte2Context2 QShortcutContexte3Context3 QShortcutContexte4Context4 QShortcut CopierCopy QShortcutCtrlCtrl QShortcut CouperCut QShortcutDOSDOS QShortcut SupprDel QShortcutSupprimerDelete QShortcutAffichageDisplay QShortcutDocuments Documents QShortcutBasDown QShortcut Eisu Shift QShortcut Eisu toggle QShortcutjecterEject QShortcutFinEnd QShortcut EntreEnter QShortcut chapEsc QShortcutchapementEscape QShortcutF%1F%1 QShortcutPrfrs Favorites QShortcutFinancesFinance QShortcutRetournerFlip QShortcut.Successeur (historique)Forward QShortcutJeuGame QShortcut AllerGo QShortcutHangul QShortcut Hangul Banja QShortcutHangul Fin Hangul End QShortcut Hangul Hanja QShortcut Hangul Jamo QShortcut Hangul Jeonja QShortcutHangul PostHanja QShortcutHangul PreHanja QShortcut Hangul Romaja QShortcutHangul Special QShortcutHangul dbut Hangul Start QShortcutRaccrocherHangup QShortcutHankaku QShortcutAideHelp QShortcutHenkan QShortcutHiberner Hibernate QShortcutHiragana QShortcutHiragana Katakana QShortcutHistoriqueHistory QShortcut DbutHome QShortcut"Bureau domicile Home Office QShortcutPage d'accueil Home Page QShortcutLiens chauds Hot Links QShortcut InserIns QShortcutInsrerInsert QShortcut Kana Lock QShortcut Kana Shift QShortcutKanji QShortcutKatakana QShortcut@Baisser la luminosit du clavierKeyboard Brightness Down QShortcutDAugmenter la luminosit du clavierKeyboard Brightness Up QShortcut2Avec/sans lumire clavierKeyboard Light On/Off QShortcutMenu du clavier Keyboard Menu QShortcutBisLast Number Redial QShortcutLancer (0) Launch (0) QShortcutLancer (1) Launch (1) QShortcutLancer (2) Launch (2) QShortcutLancer (3) Launch (3) QShortcutLancer (4) Launch (4) QShortcutLancer (5) Launch (5) QShortcutLancer (6) Launch (6) QShortcutLancer (7) Launch (7) QShortcutLancer (8) Launch (8) QShortcutLancer (9) Launch (9) QShortcutLancer (A) Launch (A) QShortcutLancer (B) Launch (B) QShortcutLancer (C) Launch (C) QShortcutLancer (D) Launch (D) QShortcutLancer (E) Launch (E) QShortcutLancer (F) Launch (F) QShortcutLancer courrier Launch Mail QShortcutLancer mdia Launch Media QShortcut GaucheLeft QShortcutAmpoule LightBulb QShortcut$Fermer une sessionLogoff QShortcut*Faire suivre l'e-mail Mail Forward QShortcut MarchMarket QShortcutMassyo QShortcutMdia suivant Media Next QShortcutMdia pause Media Pause QShortcutMdia dmarrer Media Play QShortcutMdia prcdentMedia Previous QShortcut"Mdia enregistrer Media Record QShortcutMdia arrt Media Stop QShortcutRunionMeeting QShortcutMenuMenu QShortcutMenu PBMenu PB QShortcut,Messagerie instantane Messenger QShortcutMtaMeta QShortcutBBaisser la luminosit du moniteurMonitor Brightness Down QShortcutFAugmenter la luminosit du moniteurMonitor Brightness Up QShortcutMuhenkan QShortcut"Candidat multipleMultiple Candidate QShortcutMusiqueMusic QShortcutMes sitesMy Sites QShortcutActualitsNews QShortcutNonNo QShortcutVerr numNum Lock QShortcutVerr numNumLock QShortcut,Verrouillage numrique Number Lock QShortcutOuvrir URLOpen URL QShortcut OptionOption QShortcutPage bas Page Down QShortcutPage hautPage Up QShortcut CollerPaste QShortcut PausePause QShortcutPage suivPgDown QShortcutPage prcPgUp QShortcutTlphonePhone QShortcut ImagesPictures QShortcut*Couper l'alimentation Power Off QShortcut$Candidat prcdentPrevious Candidate QShortcutImprimerPrint QShortcutCapture d'cran Print Screen QShortcutRafrachirRefresh QShortcutRechargerReload QShortcutRpondreReply QShortcut RetourReturn QShortcut DroiteRight QShortcutRomaji QShortcut0Faire tourner la fentreRotate Windows QShortcutRotation KB Rotation KB QShortcutRotation PB Rotation PB QShortcutEnregistrerSave QShortcut&conomiseur d'cran Screensaver QShortcut Arrt dfilement Scroll Lock QShortcutArrt dfil ScrollLock QShortcutRechercheSearch QShortcutSlectionnerSelect QShortcutEnvoyerSend QShortcutMajShift QShortcutMagasinShop QShortcut DormirSleep QShortcut EspaceSpace QShortcut2Correcteur orthographique Spellchecker QShortcut Partager l'cran Split Screen QShortcut"Feuille de calcul Spreadsheet QShortcutAttenteStandby QShortcutArrterStop QShortcutSous-titreSubtitle QShortcutSupporterSupport QShortcutSuspendreSuspend QShortcutSystSysReq QShortcutSystmeSystem Request QShortcutTabTab QShortcut"Panneau de tches Task Panel QShortcutTerminalTerminal QShortcut HeureTime QShortcut(Dcrocher/RaccrocherToggle Call/Hangup QShortcut&Mdia Lecture/PauseToggle Media Play/Pause QShortcut OutilsTools QShortcutHaut du menuTop Menu QShortcutTouroku QShortcutVoyagerTravel QShortcutAigus bas Treble Down QShortcutAigus haut Treble Up QShortcut Bande ultralargeUltra Wide Band QShortcutHautUp QShortcut VidoVideo QShortcutAffichageView QShortcutCommande vocale Voice Dial QShortcutVolume bas Volume Down QShortcutVolume muet Volume Mute QShortcutVolume haut  Volume Up QShortcutWWWWWW QShortcutRveillerWake Up QShortcutWebcamraWebCam QShortcutSans filWireless QShortcut&Traitement de texteWord Processor QShortcutXFerXFer QShortcutOuiYes QShortcutZenkaku QShortcutZenkaku Hankaku QShortcutAgrandirZoom In QShortcutRtrcirZoom Out QShortcut iTouchiTouch QShortcutPage suivante Page downQSliderPage prcdente Page leftQSliderPage suivante Page rightQSliderPage prcdentePage upQSliderPositionPositionQSlider6Type d'adresse non supportAddress type not supportedQSocks5SocketEnginePConnexion refuse par le serveur SOCKSv5(Connection not allowed by SOCKSv5 serverQSocks5SocketEngineNconnexion au proxy ferme prmaturment&Connection to proxy closed prematurelyQSocks5SocketEngine4Connexion au proxy refuseConnection to proxy refusedQSocks5SocketEngine4Connexion au proxy expireConnection to proxy timed outQSocks5SocketEngineDErreur gnrale du serveur SOCKSv5General SOCKSv5 server failureQSocks5SocketEngine6L'opration rseau a expirNetwork operation timed outQSocks5SocketEngineBL'authentification proxy a chouProxy authentication failedQSocks5SocketEngineLL'authentification proxy a chou: %1Proxy authentication failed: %1QSocks5SocketEngine,Hte proxy introuvableProxy host not foundQSocks5SocketEngineFErreur de protocole SOCKS version 5SOCKS version 5 protocol errorQSocks5SocketEngine<Commande SOCKSv5 non supporteSOCKSv5 command not supportedQSocks5SocketEngineTTL expir TTL expiredQSocks5SocketEngineHErreur proxy SOCKSv5 inconnue: 0x%1%Unknown SOCKSv5 proxy error code 0x%1QSocks5SocketEngineAnnulerCancelQSoftKeyManagerTerminerDoneQSoftKeyManagerQuitterExitQSoftKeyManagerOKOkQSoftKeyManagerOptionsOptionsQSoftKeyManagerSlectionnerSelectQSoftKeyManager MoinsLessQSpinBoxPlusMoreQSpinBoxAnnulerCancelQSql6Annuler vos modifications?Cancel your edits?QSqlConfirmerConfirmQSqlSupprimerDeleteQSql<Supprimer cet enregistrement?Delete this record?QSqlInsrerInsertQSqlNonNoQSql>Enregistrer les modifications? Save edits?QSqlActualiserUpdateQSqlOuiYesQSql`Impossible de fournir un certificat sans cl, %1,Cannot provide a certificate with no key, %1 QSslSocket^Erreur lors de la cration du contexte SSL (%1)Error creating SSL context (%1) QSslSocket`Erreur lors de la cration de la session SSL, %1Error creating SSL session, %1 QSslSocketbErreur lors de la cration de la session SSL: %1Error creating SSL session: %1 QSslSocketTErreur lors de la poigne de main SSL: %1Error during SSL handshake: %1 QSslSocketbErreur lors du chargement du certificat local, %1#Error loading local certificate, %1 QSslSocket\Erreur lors du chargement de la cl prive, %1Error loading private key, %1 QSslSocket<Erreur lors de la lecture: %1Error while reading: %1 QSslSocketbLa list de chiffrements est invalide ou vide (%1)!Invalid or empty cipher list (%1) QSslSocketHAucun certificat n'a pu tre vrifi!No certificates could be verified QSslSocketAucune erreurNo error QSslSocketPL'un des certificats CA n'est pas valide%One of the CA certificates is invalid QSslSocketbLa cl prive ne certifie pas la cl publique, %1+Private key does not certify public key, %1 QSslSocketLe paramtre de longueur du chemin basicConstraints a t dpass QUndoModelRtablirRedo QUndoStackAnnulerUndo QUndoStackJInsrer caractre de contrle Unicode Insert Unicode control characterQUnicodeControlCharacterMenuHLRE Start of left-to-right embedding$LRE Start of left-to-right embeddingQUnicodeControlCharacterMenu,LRM Left-to-right markLRM Left-to-right markQUnicodeControlCharacterMenuFLRO Start of left-to-right override#LRO Start of left-to-right overrideQUnicodeControlCharacterMenu<PDF Pop directional formattingPDF Pop directional formattingQUnicodeControlCharacterMenuHRLE Start of right-to-left embedding$RLE Start of right-to-left embeddingQUnicodeControlCharacterMenu,RLM Right-to-left markRLM Right-to-left markQUnicodeControlCharacterMenuFRLO Start of right-to-left override#RLO Start of right-to-left overrideQUnicodeControlCharacterMenu*ZWJ Zero width joinerZWJ Zero width joinerQUnicodeControlCharacterMenu4ZWNJ Zero width non-joinerZWNJ Zero width non-joinerQUnicodeControlCharacterMenu*ZWSP Zero width spaceZWSP Zero width spaceQUnicodeControlCharacterMenu6Impossible d'afficher l'URLCannot show URL QWebFrameBImpossible d'afficher le mimetypeCannot show mimetype QWebFrame.Le fichier n'existe pasFile does not exist QWebFrame|Chargement du cadre interrompue par le changement de stratgie'Frame load interrupted by policy change QWebFrameRequte bloqueRequest blocked QWebFrameRequte annuleRequest cancelled QWebFrame"%1 (%2x%3 pixels)Title string for images%1 (%2x%3 pixels)QWebPageR%1 jours %2 heures %3 minutes %4 secondesMedia time description&%1 days %2 hours %3 minutes %4 secondsQWebPage@%1 heures %2 minutes %3 secondesMedia time description%1 hours %2 minutes %3 secondsQWebPage,%1 minutes %2 secondesMedia time description%1 minutes %2 secondsQWebPage%1 secondesMedia time description %1 secondsQWebPage%n fichier%n fichiers %n file(s)QWebPage.Ajouter au dictionnaire Learn Spelling context menu itemAdd To DictionaryQWebPage Aligner gauche Align LeftQWebPage Aligner droite Align RightQWebPagelment audioMedia controller element Audio ElementQWebPage|Commandes de lecture et affichage de l'tat de l'lment audioMedia controller element2Audio element playback controls and status displayQWebPage(Requte HTTP erroneBad HTTP requestQWebPage(Commencer la lectureMedia controller elementBegin playbackQWebPageGrasBold context menu itemBoldQWebPage En basBottomQWebPage CentrCenterQWebPagejVrifier la grammaire en mme temps que l'orthographe-Check grammar with spelling context menu itemCheck Grammar With SpellingQWebPage,Vrifier l'orthographe Check spelling context menu itemCheck SpellingQWebPagePVrifier l'orthographe pendant la saisie-Check spelling while typing context menu itemCheck Spelling While TypingQWebPage$Choisir le fichier(title for file button used in HTML forms Choose FileQWebPage>Effacer les recherches rcentes>menu item in Recent Searches menu that empties menu's contentsClear recent searchesQWebPage CopierCopy context menu itemCopyQWebPageCopier l'imageCopy Link context menu item Copy ImageQWebPageCopier le lienCopy Link context menu item Copy LinkQWebPage&tat du film actuelMedia controller elementCurrent movie statusQWebPage,Dure du film en coursMedia controller elementCurrent movie timeQWebPage CouperCut context menu itemCutQWebPagePar dfaut+Default writing direction context menu itemDefaultQWebPage>Supprimer jusqu' la fin du motDelete to the end of the wordQWebPage>Supprimer jusqu'au dbut du motDelete to the start of the wordQWebPage'Writing direction context sub-menu item DirectionQWebPageTemps coulMedia controller element Elapsed TimeQWebPagePolicesFont context sub-menu itemFontsQWebPage*Bouton de plein cranMedia controller elementFullscreen ButtonQWebPagePrcdentBack context menu itemGo BackQWebPageSuivantForward context menu item Go ForwardQWebPage>Cacher Orthographe et Grammairemenu item titleHide Spelling and GrammarQWebPageIgnorer Ignore Grammar context menu itemIgnoreQWebPageIgnorer!Ignore Spelling context menu itemIgnoreQWebPageDure indfinieMedia time descriptionIndefinite timeQWebPageRetraitIndentQWebPage2Insrer une liste pucesInsert Bulleted ListQWebPage6Insrer une liste numroteInsert Numbered ListQWebPage4Insrer une nouvelle ligneInsert a new lineQWebPage:Insrer un nouveau paragrapheInsert a new paragraphQWebPageInspecter!Inspect Element context menu itemInspectQWebPageItaliqueItalic context menu itemItalicQWebPage,Alerte JavaScript - %1JavaScript Alert - %1QWebPage8Confirmation JavaScript - %1JavaScript Confirm - %1QWebPage6Problme de JavaScript - %1JavaScript Problem - %1QWebPage,Invite JavaScript - %1JavaScript Prompt - %1QWebPageJustifiJustifyQWebPage gauche Left edgeQWebPageGauche droiteLeft to Right context menu item Left to RightQWebPage&Diffusion en direct>Media controller status message when watching a live broadcastLive BroadcastQWebPageChargement...9Media controller status message when the media is loading Loading...QWebPage:Chercher dans le dictionnaire'Look Up in Dictionary context menu itemLook Up In DictionaryQWebPage Plug-in manquantMissing Plug-inQWebPageTDplacer le curseur la fin du paragraphe'Move the cursor to the end of the blockQWebPageLDplacer le curseur en fin de document*Move the cursor to the end of the documentQWebPageFDplacer le curseur en fin de ligne&Move the cursor to the end of the lineQWebPagePDplacer le curseur au caractre suivant%Move the cursor to the next characterQWebPageNDplacer le curseur la ligne suivante Move the cursor to the next lineQWebPageDDplacer le curseur au mot suivant Move the cursor to the next wordQWebPageTDplacer le curseur au caractre prcdent)Move the cursor to the previous characterQWebPageRDplacer le curseur la ligne prcdente$Move the cursor to the previous lineQWebPageHDplacer le curseur au mot prcdent$Move the cursor to the previous wordQWebPageTDplacer le curseur au dbut du paragraphe)Move the cursor to the start of the blockQWebPagePDplacer le curseur en dbut de document,Move the cursor to the start of the documentQWebPageJDplacer le curseur en dbut de ligne(Move the cursor to the start of the lineQWebPage2Balayeur de dure du filmMedia controller elementMovie time scrubberQWebPagedCase de dfilement du balayeur de la dure du filmMedia controller elementMovie time scrubber thumbQWebPage<Bouton de dsactivation du sonMedia controller element Mute ButtonQWebPage<Couper le son des pistes audioMedia controller elementMute audio tracksQWebPage.Pas de candidat trouvs"No Guesses Found context menu itemNo Guesses FoundQWebPage4Pas de fichier slectionnJtext to display in file button used in HTML forms when no file is selectedNo file selectedQWebPage0Pas de recherche rcentevLabel for only item in menu that appears when clicking on the search field image, when no searches have been performedNo recent searchesQWebPageOuvrir le cadre*Open Frame in New Window context menu item Open FrameQWebPageOuvrir l'image*Open Image in New Window context menu item Open ImageQWebPageOuvrir le lienOpen Link context menu item Open LinkQWebPage@Ouvrir dans une Nouvelle Fentre$Open in New Window context menu itemOpen in New WindowQWebPageRetrait ngatifOutdentQWebPageContourOutline context menu itemOutlineQWebPagePage bas Page downQWebPagePage gauche Page leftQWebPagePage droite Page rightQWebPagePage hautPage upQWebPage CollerPaste context menu itemPasteQWebPage2Coller et suivre le stylePaste and Match StyleQWebPageBouton de pauseMedia controller element Pause ButtonQWebPagePause lectureMedia controller elementPause playbackQWebPage"Bouton de lectureMedia controller element Play ButtonQWebPageHRegarder le film en mode plein cranMedia controller elementPlay movie in full-screen modeQWebPage&Recherches rcentesrlabel for first item in the menu that appears when clicking on the search field image, used as embedded menu titleRecent searchesQWebPage<Limite de redirection atteinteRedirection limit reachedQWebPageRechargerReload context menu itemReloadQWebPageDure restanteMedia controller elementRemaining TimeQWebPage,Dure de film restanteMedia controller elementRemaining movie timeQWebPage0Retirer la mise en formeRemove formattingQWebPageRinitialiser5default label for Reset buttons in forms on web pagesResetQWebPageTRamener le film en streaming en temps relMedia controller element#Return streaming movie to real-timeQWebPage<Bouton de retour au temps relMedia controller elementReturn to Real-time ButtonQWebPage6Bouton de retour en arrireMedia controller element Rewind ButtonQWebPage$Rembobiner le filmMedia controller element Rewind movieQWebPage droite Right edgeQWebPageDroite gaucheRight to Left context menu item Right to LeftQWebPage&Enregistrer l'image Download Image context menu item Save ImageQWebPage,Enregistrer le lien...&Download Linked File context menu item Save Link...QWebPage&Dfiler vers le bas Scroll downQWebPage"Dfiler jusqu'ici Scroll hereQWebPage,Dfiler vers la gauche Scroll leftQWebPage,Dfiler vers la droite Scroll rightQWebPage(Dfiler vers le haut Scroll upQWebPage&Chercher sur le Web Search The Web context menu itemSearch The WebQWebPage6Bouton de recherche arrireMedia controller elementSeek Back ButtonQWebPage2Bouton de recherche avantMedia controller elementSeek Forward ButtonQWebPage0Recherche rapide arrireMedia controller elementSeek quickly backQWebPage,Recherche rapide avantMedia controller elementSeek quickly forwardQWebPage"Tout slectionner Select allQWebPageRSlectionner jusqu' la fin du paragrapheSelect to the end of the blockQWebPageNSlectionner jusqu' la fin du document!Select to the end of the documentQWebPageDSlectionner jusqu'en fin de ligneSelect to the end of the lineQWebPageNSlectionner jusqu'au caractre suivantSelect to the next characterQWebPageLSlectionner jusqu' la ligne suivanteSelect to the next lineQWebPageBSlectionner jusqu'au mot suivantSelect to the next wordQWebPageRSlectionner jusqu'au caractre prcdent Select to the previous characterQWebPagePSlectionner jusqu' la ligne prcdenteSelect to the previous lineQWebPageFSlectionner jusqu'au mot prcdentSelect to the previous wordQWebPageRSlectionner jusqu'au dbut du paragraphe Select to the start of the blockQWebPageNSlectionner jusqu'au dbut du document#Select to the start of the documentQWebPageHSlectionner jusqu'en dbut de ligneSelect to the start of the lineQWebPageBAfficher Orthographe et Grammairemenu item titleShow Spelling and GrammarQWebPage SliderMedia controller elementSliderQWebPageBCurseur de la barre de dfilementMedia controller element Slider ThumbQWebPageOrthographe*Spelling and Grammar context sub-menu itemSpellingQWebPage&Affichage de l'tatMedia controller elementStatus DisplayQWebPageArrterStop context menu itemStopQWebPage Barr StrikethroughQWebPageSoumettreQSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPageSoumettre6default label for Submit buttons in forms on web pagesSubmitQWebPage Indice SubscriptQWebPageExposant SuperscriptQWebPage(Orientation du texte$Text direction context sub-menu itemText DirectionQWebPageLe script de cette page semble avoir un problme. Souhaitez-vous arrter le script?RThe script on this page appears to have a problem. Do you want to stop the script?QWebPagedCeci est un index. Veuillez saisir les mots-cl: _text that appears at the start of nearly-obsolete web pages in the form of a 'searchable index'3This is a searchable index. Enter search keywords: QWebPageHautTopQWebPageSoulignUnderline context menu item UnderlineQWebPageInconnu+Unknown filesize FTP directory listing itemUnknownQWebPage:Bouton de ractivation du sonMedia controller element Unmute ButtonQWebPageBRactiver le son des pistes audioMedia controller elementUnmute audio tracksQWebPagelment vidoMedia controller element Video ElementQWebPage|Commandes de lecture et affichage de l'tat de l'lment vidoMedia controller element2Video element playback controls and status displayQWebPage&Inspecteur Web - %2Web Inspector - %2QWebPage*Qu'est-ce que c'est ? What's This?QWhatsThisAction*QWidget&Terminer&FinishQWizard &Aide&HelpQWizard&Suivant >&NextQWizard&Suivant >&Next >QWizard< &Prcdent< &BackQWizardAnnulerCancelQWizardSoumettreCommitQWizardContinuerContinueQWizardTerminerDoneQWizardPrcdentGo BackQWizardAideHelpQWizard%1 - [%2] %1 - [%2] QWorkspace&Fermer&Close QWorkspace&Dplacer&Move QWorkspace&Restaurer&Restore QWorkspace&Taille&Size QWorkspaceDr&ouler&Unshade QWorkspace FermerClose QWorkspaceMa&ximiser Ma&ximize QWorkspaceRd&uire Mi&nimize QWorkspaceRduireMinimize QWorkspace Restaurer en bas Restore Down QWorkspaceEnrou&lerSh&ade QWorkspace.Rester au &premier plan Stay on &Top QWorkspacedclaration d'encodage ou dclaration "standalone" attendue lors de la lecture de la dclaration XMLYencoding declaration or standalone declaration expected while reading the XML declarationQXmljerreur dans la dclaration texte d'une entit externe3error in the text declaration of an external entityQXmlune erreur s'est produite pendant l'analyse syntaxique du commentaire$error occurred while parsing commentQXmlune erreur s'est produite pendant l'analyse syntaxique du contenu$error occurred while parsing contentQXmlune erreur s'est produite pendant l'analyse syntaxique de la dfinition du type de document5error occurred while parsing document type definitionQXmlune erreur s'est produite pendant l'analyse syntaxique de l'lement$error occurred while parsing elementQXmlune erreur s'est produite pendant l'analyse syntaxique d'une rfrence&error occurred while parsing referenceQXmlJErreur dclenche par le consommateurerror triggered by consumerQXmlrfrence une entit gnrale externe non autorise dans le DTD;external parsed general entity reference not allowed in DTDQXmlrfrence une entit gnrale externe non autorise dans la valeur d'attributGexternal parsed general entity reference not allowed in attribute valueQXmlrfrence une entit gnrale interne non autorise dans la DTD4internal general entity reference not allowed in DTDQXml4nom d'instruction invalide'invalid name for processing instructionQXml.une lettre est attendueletter is expectedQXmlRplus d'une dfinition de type de document&more than one document type definitionQXml>aucune erreur ne s'est produiteno error occurredQXml$entits rcursivesrecursive entitiesQXmldclaration "standalone" attendue lors de la lecture de la dclaration XMLAstandalone declaration expected while reading the XML declarationQXmltag incongru tag mismatchQXml&caractre inattenduunexpected characterQXml2Fin de fichier inattendueunexpected end of fileQXmlxrfrence une entit non analyse dans le mauvais contexte*unparsed entity reference in wrong contextQXml`une version est attendue dans la dclaration XML2version expected while reading the XML declarationQXmlfvaleur incorrecte pour une dclaration "standalone"&wrong value for standalone declarationQXmlLieu inconnuQXmlPatternistCLIbErreur %1 dans %2, la ligne %3, colonne %4: %5)Error %1 in %2, at line %3, column %4: %5QXmlPatternistCLI,Erreur %1 dans %2: %3Error %1 in %2: %3QXmlPatternistCLIjAvertissement dans %1, la ligne %2, colonne %3: %4(Warning in %1, at line %2, column %3: %4QXmlPatternistCLI4Avertissement dans %1: %2Warning in %1: %2QXmlPatternistCLIX%1 n'est pas un identifiant "PUBLIC" valide.#%1 is an invalid PUBLIC identifier. QXmlStreamL%1 n'est pas un nom d'encodage valide.%1 is an invalid encoding name. QXmlStreamR%1 n'est pas un nom d'instruction valide.-%1 is an invalid processing instruction name. QXmlStream, mais trouv ' , but got ' QXmlStream0Redfinition d'attribut.Attribute redefined. QXmlStreamB%1 n'est pas un encodage supportEncoding %1 is unsupported QXmlStreamlDu contenu avec un encodage incorrect a t rencontr.(Encountered incorrectly encoded content. QXmlStream2Entit '%1' non dclare.Entity '%1' not declared. QXmlStreamAttendu(e) Expected  QXmlStream0donnes texte attendues.Expected character data. QXmlStreamLContenu superflu la fin du document.!Extra content at end of document. QXmlStreamVDclaration d'espace de noms non autorise.Illegal namespace declaration. QXmlStream.Caractre XML invalide.Invalid XML character. QXmlStream"Nom XML invalide.Invalid XML name. QXmlStream>Chane de version XML invalide.Invalid XML version string. QXmlStreamVAttribut invalide dans une dclaration XML.%Invalid attribute in XML declaration. QXmlStreamDRfrence un caractre invalide.Invalid character reference. QXmlStream$Document invalide.Invalid document. QXmlStream8Valeur de l'entit invalide.Invalid entity value. QXmlStream6nom d'instruction invalide.$Invalid processing instruction name. QXmlStreambNDATA dans une dclaration de paramtre d'entit.&NDATA in parameter entity declaration. QXmlStreamdLe prfixe d'espace de noms %1 n'a pas t dclar"Namespace prefix '%1' not declared QXmlStream\Tags ouvrant et fermants ne correspondent pas. Opening and ending tag mismatch. QXmlStream6Fin de document inattendue.Premature end of document. QXmlStream4Entit rcursive dtecte.Recursive entity detected. QXmlStreamnRfrence l'entit externe '%1' en valeur d'attribut.5Reference to external entity '%1' in attribute value. QXmlStreamNRfrence l'entit '%1' non analyse."Reference to unparsed entity '%1'. QXmlStreamZsquence ']]>' non autorise dans le contenu.&Sequence ']]>' not allowed in content. QXmlStreamLe seules valeurs possibles pour "standalone" sont "yes" ou "no"."Standalone accepts only yes or no. QXmlStream,Tag de dpart attendu.Start tag expected. QXmlStreamLe pseudo-attribut "standalone" doit apparatre aprs l'encodage.?The standalone pseudo attribute must appear after the encoding. QXmlStreamInattendu(e) Unexpected ' QXmlStream|Caractre '%1' inattendu pour une valeur d'identifiant public./Unexpected character '%1' in public id literal. QXmlStream4Version XML non supporte.Unsupported XML version. QXmlStreamdLa dclaration XML doit tre en dbut de document.)XML declaration not at start of document. QXmlStreamdL'lment %1 n'est pas autoris cet emplacement. QtXmlPatternsp%1 et %2 correspondent au dbut et la fin d'une ligne.,%1 and %2 match the start and end of a line. QtXmlPatterns8%1 ne peut pas tre rcupr%1 cannot be retrieved QtXmlPatterns%1 contient 'octets', qui n'est pas autoris pour l'encodage %2.E%1 contains octets which are disallowed in the requested encoding %2. QtXmlPatterns%1 est une type complexe. Caster vers des types complexes n'est pas possible. Cependant, caster vers des types atomiques comme %2 marche.s%1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works. QtXmlPatterns(%1 est un ivalide %2%1 is an invalid %2 QtXmlPatterns%1 est un flag invalide pour des expressions rgulires. Les flags valides sont: ?%1 is an invalid flag for regular expressions. Valid flags are: QtXmlPatternsH%1 est un URI de namespace invalide.%1 is an invalid namespace URI. QtXmlPatternsj%1 est un modle d'expression rgulire invalide: %2/%1 is an invalid regular expression pattern: %2 QtXmlPatternsV%1 est un nom de mode de template invalide.$%1 is an invalid template mode name. QtXmlPatternsB%1 est un type de schema inconnu.%1 is an unknown schema type. QtXmlPatterns@%1 est un encodage non support.%1 is an unsupported encoding. QtXmlPatternsR%1 n'est pas un caractre XML 1.0 valide.$%1 is not a valid XML 1.0 character. QtXmlPatterns|%1 n'est pas un nom valide pour une instruction de traitement.4%1 is not a valid name for a processing-instruction. QtXmlPatternsR%1 n'est pas une valeur numrique valide."%1 is not a valid numeric literal. QtXmlPatterns%1 n'est pas un nom de destination valide dans une instruction de traitement. Ce doit tre une valeur %2, par ex. %3.Z%1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3. QtXmlPatternsT%1 n'est pas une valeur valide du type %2.#%1 is not a valid value of type %2. QtXmlPatternsR%1 n'est pas un nombre entier de minutes.$%1 is not a whole number of minutes. QtXmlPatterns%1 n'est pas un type atomique. Il est uniquement possible de caster vers des types atomiques.C%1 is not an atomic type. Casting is only possible to atomic types. QtXmlPatterns%1 n'est pas dans les dclaration d'attribut in-scope. La fonctionnalit d'inport de schma n'est pas supporte.g%1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported. QtXmlPatternsT%1 n'est pas une valeur valide de type %2.&%1 is not valid as a value of type %2. QtXmlPatterns^%1 correspond des caractres de saut de ligne%1 matches newline characters QtXmlPatterns%1 doit tre suivi par %2 ou %3, et non la fin de la chane de remplacement.J%1 must be followed by %2 or %3, not at the end of the replacement string. QtXmlPatternsn%1 requiert au moins %n argument. %2 est donc invalide.p%1 requiert au moins %n arguments. %2 est donc invalide.=%1 requires at least %n argument(s). %2 is therefore invalid. QtXmlPatternsl%1 prend au maximum %n argument. %2 est donc invalide.n%1 prend au maximum %n arguments. %2 est donc invalide.9%1 takes at most %n argument(s). %2 is therefore invalid. QtXmlPatterns %1 a t appel.%1 was called. QtXmlPatternsLUn commentaire ne peut pas contenir %1A comment cannot contain %1 QtXmlPatternsPUn commentaire ne peut pas finir par %1.A comment cannot end with a %1. QtXmlPatternsUn dclaration de namespace par dfaut doit tre place avant toute fonction, variable ou declaration d'option.^A default namespace declaration must occur before function, variable, and option declarations. QtXmlPatternsUn constructeur direct d'lment est mal-form. %1 est termin par %2.EA direct element constructor is not well-formed. %1 is ended with %2. QtXmlPatterns\Une fonction avec la signature %1 existe dj.0A function already exists with the signature %1. QtXmlPatternsUn module de bibliothque ne peut pas tre valu directement. Il doit tre import d'un module principal.VA library module cannot be evaluated directly. It must be imported from a main module. QtXmlPatternsUn paramtre de fonction ne peut pas tre dclar comme un tunnel.In an XSL-T pattern, function %1 cannot have a third argument. QtXmlPatternsDans un pattern XSL-T, seules les fonctions %1 et %2 (pas %3) peuvent tre utilises pour le matching.OIn an XSL-T pattern, only function %1 and %2, not %3, can be used for matching. QtXmlPatternsDans un pattern XSL-T, le premier argument la fonction %1 doit tre un litral ou une rfrence de variable.yIn an XSL-T pattern, the first argument to function %1 must be a literal or a variable reference, when used for matching. QtXmlPatternsDans un pattern XSL-T, le premier argument la fonction %1 doit tre une chane de caractres quand utilis pour correspondance.hIn an XSL-T pattern, the first argument to function %1 must be a string literal, when used for matching. QtXmlPatternsDans la chane de remplacement, %1 peut seulement tre utilis pour chapper lui-mme ou %2 mais pas %3MIn the replacement string, %1 can only be used to escape itself or %2, not %3 QtXmlPatternsDans la chane de remplacement, %1 doit tre suivi par au moins un chiffre s'il n'est pas chapp.VIn the replacement string, %1 must be followed by at least one digit when not escaped. QtXmlPatterns\Division entire (%1) par zro (%2) indfinie.0Integer division (%1) by zero (%2) is undefined. QtXmlPatternsTIl est impossible de se lier au prfixe %1+It is not possible to bind to the prefix %1 QtXmlPatterns\Il est impossible de redclarer le prfixe %1.*It is not possible to redeclare prefix %1. QtXmlPatternsFIl sera impossible de rcuprer %1.'It will not be possible to retrieve %1. QtXmlPatternsIl est impossible d'ajouter des attributs aprs un autre type de noeuds.AIt's not possible to add attributes after any other kind of node. QtXmlPatternshLes correspondances ne sont pas sensibles la casseMatches are case insensitive QtXmlPatternsLes imports de module doivent tre placs avant tout fonction, variable ou dclaration d'option.MModule imports must occur before function, variable, and option declarations. QtXmlPatternsZModule division (%1) par zro (%2) indfinie.0Modulus division (%1) by zero (%2) is undefined. QtXmlPatternsVLe mois %1 est hors de l'intervalle %2..%3.%Month %1 is outside the range %2..%3. QtXmlPatternsLa multiplication d'une valeur du type %1 par %2 ou %3 (plus ou moins infini) est interdite.YMultiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed. QtXmlPatternsLe namespace %1 peut seulement tre li %2 (et doit tre pr-dclar).ONamespace %1 can only be bound to %2 (and it is, in either case, pre-declared). QtXmlPatternsLes declarations de namespace doivent tre places avant tout fonction, variable ou dclaration d'option.UNamespace declarations must occur before function, variable, and option declarations. QtXmlPatterns0Le rseau ne rpond pas.Network timeout. QtXmlPatterns@Les fonctions externes ne sont pas supportes. Toutes les fonctions supportes peuvent ter utilises directement sans les dclarer pralablement comme externes{No external functions are supported. All supported functions can be used directly, without first declaring them as external QtXmlPatternsVAucune fonction nomme %1 n'est disponible.&No function with name %1 is available. QtXmlPatternsjAucune fonction avec la signature %1 n'est disponible*No function with signature %1 is available QtXmlPatternsfAucun lien de namespace n'existe pour le prfixe %1-No namespace binding exists for the prefix %1 QtXmlPatternsvAucun lien de namespace n'existe pour le prfixe %1 dans %23No namespace binding exists for the prefix %1 in %2 QtXmlPatternsBAucun template nomm %1 n'existe.No template by name %1 exists. QtXmlPatternsvAucune valeur n'est disponible pour la variable externe %1.=No value is available for the external variable with name %1. QtXmlPatternsDAucune variable nomme %1 n'existeNo variable with name %1 exists QtXmlPatternsAucune des expressions pragma n'est supporte. Une expression par dfault doit tre prsente^None of the pragma expressions are supported. Therefore, a fallback expression must be present QtXmlPatternsSeulement une dclaration %1 peut intervenir lors du prologue de la requte.6Only one %1 declaration can occur in the query prolog. QtXmlPatternsPSeulement un lment %1 peut apparatre.Only one %1-element can appear. QtXmlPatternsSeule le Unicode CodepointCollation est support (%1), %2 n'est pas support.IOnly the Unicode Codepoint Collation is supported(%1). %2 is unsupported. QtXmlPatternsjSeul le prfixe %1 peut tre li %2, et vice versa.5Only the prefix %1 can be bound to %2 and vice versa. QtXmlPatternsL'oprateur %1 ne peut pas tre utilis pour des valeurs atomiques de type %2 ou %3.>Operator %1 cannot be used on atomic values of type %2 and %3. QtXmlPatternspL'oprateur %1 ne peut pas tre utilis pour le type %2.&Operator %1 cannot be used on type %2. QtXmlPatterns`Overflow: impossible de reprsenter la date %1."Overflow: Can't represent date %1. QtXmlPatterns`Overflow: la date ne peut pas tre reprsente.$Overflow: Date can't be represented. QtXmlPatternsErreur: %1Parse error: %1 QtXmlPatternsLe prfixe %1 peut seulement tre li %2 (et doit tre prdclar).LPrefix %1 can only be bound to %2 (and it is, in either case, pre-declared). QtXmlPatterns`Le prfixe %1 est dj dclar dans le prologue.,Prefix %1 is already declared in the prolog. QtXmlPatternszLa Promotion de %1 vers %2 peut causer un perte de prcision./Promoting %1 to %2 may cause loss of precision. QtXmlPatternsNLa cardinalit requise est %1; reu %2./Required cardinality is %1; got cardinality %2. QtXmlPatternsTLe type requis est %1, mais %2 a t reu.&Required type is %1, but %2 was found. QtXmlPatternsLancement d'une feuille de style XSL-T 1.0 avec un processeur 2.0.5Running an XSL-T 1.0 stylesheet with a 2.0 processor. QtXmlPatternsNL'axe %1 n'est pas support dans XQuery$The %1-axis is unsupported in XQuery QtXmlPatternsLa fonctionnalit "Schema Import" n'est pas supporte et les dclarations %1 ne peuvent donc intervenir.WThe Schema Import feature is not supported, and therefore %1 declarations cannot occur. QtXmlPatternsLa fonctionnalit "Schema Validation" n'est pas supporte. Les expressions %1 ne seront pas utilises.VThe Schema Validation Feature is not supported. Hence, %1-expressions may not be used. QtXmlPatternsHL'URI ne peut pas avoir de fragmentsThe URI cannot have a fragment QtXmlPatternsL'attribute %1 peut seulement apparatre sur le premier lment %2.9The attribute %1 can only appear on the first %2 element. QtXmlPatternsL'attribut %1 ne peut pas apparatre sur %2 quand il est fils de %3.?The attribute %1 cannot appear on %2, when it is a child of %3. QtXmlPatternsLe codepoint %1 dans %2 et utilisant l'encodage %3 est un caractre XML invalide.QThe codepoint %1, occurring in %2 using encoding %3, is an invalid XML character. QtXmlPatternsLes donnes d'une instruction de traitement ne peut contenir la chane %1AThe data of a processing instruction cannot contain the string %1 QtXmlPatternsLI'l n'y a pas de collection par dfaut#The default collection is undefined QtXmlPatternsL'encodage %1 est invalide. Il doit contenir uniquement des caractres latins, sans blanc et doit tre conforme l'expression rgulire %2.The encoding %1 is invalid. It must contain Latin characters only, must not contain whitespace, and must match the regular expression %2. QtXmlPatternsLe premier argument de %1 ne peut tre du type %2. Il doit tre de type numrique, xs:yearMonthDuration ou xs:dayTimeDuration.uThe first argument to %1 cannot be of type %2. It must be a numeric type, xs:yearMonthDuration or xs:dayTimeDuration. QtXmlPatternsLe premier argument de %1 ne peut tre du type %2. Il doit tre de type %3, %4 ou %5.PThe first argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. QtXmlPatterns,Le focus est indfini.The focus is undefined. QtXmlPatternsjL'initialisation de la variable %1 dpend d'elle-mme3The initialization of variable %1 depends on itself QtXmlPatterns\L'item %1 ne correspond pas au type requis %2./The item %1 did not match the required type %2. QtXmlPatterns~Le mot-cl %1 ne peut pas apparatre avec un autre nom de mode.5The keyword %1 cannot occur with any other mode name. QtXmlPatterns La dernire tape dans un chemin doit contenir soit des noeuds soit des valeurs atomiques. Cela ne peut pas tre un mlange des deux.kThe last step in a path must contain either nodes or atomic values. It cannot be a mixture between the two. QtXmlPatternsjLa fonctionnalit "module import" n'est pas supporte*The module import feature is not supported QtXmlPatterns\Le nom %1 ne se rfre aucun type de schema..The name %1 does not refer to any schema type. QtXmlPatternsLe nom d'un attribut calcul ne peut pas avoir l'URI de namespace %1 avec le nom local %2.ZThe name for a computed attribute cannot have the namespace URI %1 with the local name %2. QtXmlPatterns&Le nom d'une variable lie dans un expression for doit tre different de la variable positionnelle. Les deux variables appeles %1 sont en conflit.The name of a variable bound in a for-expression must be different from the positional variable. Hence, the two variables named %1 collide. QtXmlPatternsLe nom d'une expression d'extension doit tre dans un namespace.;The name of an extension expression must be in a namespace. QtXmlPatternsLe nom d'une option doit avoir un prfixe. Il n'y a pas de namespace par dfaut pour les options.TThe name of an option must have a prefix. There is no default namespace for options. QtXmlPatternsHLe namespace %1 est rserv; c'est pourquoi les fonctions dfinies par l'utilisateur ne peuvent l'utiliser. Essayez le prfixe prdfini %2 qui existe pour ces cas.The namespace %1 is reserved; therefore user defined functions may not use it. Try the predefined prefix %2, which exists for these cases. QtXmlPatternsL'URI de namespace ne peut tre une chane vide quand on le lie un prfixe, %1.JThe namespace URI cannot be the empty string when binding to a prefix, %1. QtXmlPatternsL'URI de namespace dans le nom d'un attribut calcul ne peut pas tre %1.DThe namespace URI in the name for a computed attribute cannot be %1. QtXmlPatternsL'URI de namespace doit tre une constante et ne peut contenir d'expressions.IThe namespace URI must be a constant and cannot use enclosed expressions. QtXmlPatternsLe namespace d'une fonction utilisateur ne peut pas tre vide (essayez le prfixe prdfini %1 qui existe pour ce genre de cas)yThe namespace for a user defined function cannot be empty (try the predefined prefix %1 which exists for cases like this) QtXmlPatternsLLe namespace d'une fonction utilisateur dans un module de bibliothque doit tre quivalent au namespace du module. En d'autres mots, il devrait tre %1 au lieu de %2The namespace of a user defined function in a library module must be equivalent to the module namespace. In other words, it should be %1 instead of %2 QtXmlPatterns(Le forme de normalisation %1 n'est pas supporte. Les formes supportes sont %2, %3, %4 et %5, et aucun, ie. une chane vide (pas de normalisation).The normalization form %1 is unsupported. The supported forms are %2, %3, %4, and %5, and none, i.e. the empty string (no normalization). QtXmlPatterns~Le paramtre %1 est pass mais aucun %2 correspondant n'existe.;The parameter %1 is passed, but no corresponding %2 exists. QtXmlPatternsLe paramtre %1 est requis, mais aucun %2 correspondant n'est fourni.BThe parameter %1 is required, but no corresponding %2 is supplied. QtXmlPatterns>Le prfixe %1 ne peut tre li.The prefix %1 cannot be bound. QtXmlPatternsLe prfixe %1 ne peut tre li. Par dfault, il est dj li au namespace %2.SThe prefix %1 cannot be bound. By default, it is already bound to the namespace %2. QtXmlPatternshLe prfixe doit tre un valide %1; %2 n'e l'est pas./The prefix must be a valid %1, which %2 is not. QtXmlPatternsLe noeuds racine du deuxime argument la fonction %1 doit tre un noeuds document. %2 n'est pas un document.gThe root node of the second argument to function %1 must be a document node. %2 is not a document node. QtXmlPatternsLe deuxime argument de %1 ne peut tre du type %2. Il doit tre de type %3, %4 ou %5.QThe second argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. QtXmlPatternsLe nom de destination dans une instruction de traitement ne peut tre %1. %2 est invalide.~The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, %2 is invalid. QtXmlPatternsZLe namespace cible d'un %1 ne peut tre vide.-The target namespace of a %1 cannot be empty. QtXmlPatternsLa valeur de l'attribut %1 de l'lement %2 doit tre %3 ou %4, et pas %5.IThe value for attribute %1 on element %2 must either be %3 or %4, not %5. QtXmlPatternsLa valeur de l'attribut %1 doit tre du type %2, %3 n'en est pas.=The value of attribute %1 must be of type %2, which %3 isn't. QtXmlPatternsLa valeur de l'attribut de version XSL-T doit tre du type %1, et non %2.TThe value of the XSL-T version attribute must be a value of type %1, which %2 isn't. QtXmlPatterns:La variable %1 est inutiliseThe variable %1 is unused QtXmlPatternsCe processeur ne comprend pas les Schemas. C'est pourquoi %1 ne peut pas tre utilis.CThis processor is not Schema-aware and therefore %1 cannot be used. QtXmlPatternsJL'heure %1: %2: %3.%4 est invalide.Time %1:%2:%3.%4 is invalid. QtXmlPatternsHeure 24: %1: %2.%3 est invalide. L'heure est 24 mais les minutes, secondes et millisecondes ne sont pas 0;_Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0;  QtXmlPatternsLes lment d'une feuille de style de haut niveau doivent tre dans un namespace non nul; %1 ne l'est pas.NTop level stylesheet elements must be in a non-null namespace, which %1 isn't. QtXmlPatternsDeux attributs de dclarations de namespace ont le mme nom: %1.0L00o0x070G59( ! D) D;+A,o,cz|^ |^x|AucbqvvVUdԱ8l yf-)CWMdFW^4L̡5._6CdCIAHȾ}[qߢFg +LID+,-ÉyXtDhD"%FEXRn@ɵnjaɵnEɵnLɵneɵnSɵnɵn6ɵnɵn}u[1T BL BT5+*T'{KLnMǙ1clN)a5zq.۽pT)۔)E >Hb:v BM8,,Hɤ_S<p55u#QY%UTL%UT(Ŏ)9(x*46-ctg-ct.2Ҕ35vHg CˏjRll]l2%l2loR_orQpEMpNku&v̲~Tv̲ w^1x|{yбitc G NI242I`Ku7WW.2q52#{'.R)Aih.P 0;=-hN6 dyMÌ,TtbɷwʯӬ$%eBy#^qsRturN2t.UN0TB߮SI&Q 2 ~Ol Yd# }$z!g)"lW%%6&Xd;)^-.v/=NT/Xt,01$:1$5~):s3< S <3=> ??2?Nj@E@VB!@,FRMҶNkyUiW~]Fa`l``jtƏlglyzSil}oi7vtyhMvty!.hN0o$1!-l%"^ I} tڎ"cG_r 4foW!e& S)Vj*/eV*+f+N/,0 ,Nn1E*6;];; i?4nByջEcCkFIQK~LNjOZf\S~\c^\:`lb>bscփCcTf g&4 njCmn"qiq 0tu]u(9{>^}kaa}"R><1C~ *_yu0^>ڝ'K&`$x$ED+U(VuE,.;ʁr^K2L֊fJxW*>Sހ.z n#h,H.ThsȚIq;y΅ω#aOq.-pI+>Aih+Cn') n>7^"E0r;H:=[&HGc&o,n0.\/F0|p4r<4!6 5:~5>_8w ?f|BM CIxScJKL/!MEOFR. R>XE%YM(YM4u^^үdKah^S*iXjn nՎnorzDsscsw(x/^/02g_"% cNۊeat$4;TNa]I]u&5I9BIK3IKIIUIbId)IX(ZQpI>Y>i?&y?d==>.>l=6=tI@?@@\@?uD,uD8Don  9,3,], ,1,e,](>NPrvN:%[?V._J>q.Cɘe3˓5$@ 4=8fR=fRG>m_*o<U "C_X9(N4N7vY^Q~8cVS!jPq/VOV2fR |T4W:Lew   Q N^{ 0~9VQOD7by l<"o$$ݎ%CS]&~ h&H)2VP)[+܍,535B8B8B;_?"g?>uɷ?%FuKNK-M*N>O>RU5V|!]D]Ke g^HkIy^O{yٓw?Ji05tK5txFL6:Ξ"8 LG%&ncn nصǥ^N+N+c+D` nt7 {yl ;#/=xA$+r69\#^Qs#RϾ16N%cC%0c{F:{x+T8oC-d¨5H UüNzHC^9ƨ4ƨf@˾LChҝz=~Ұ4ل()>$ikOէ?e,؊=(؊=ԮZ>,i}Wzܓ7ܳxߺサff-tk롥r`|+!8~Ny5mWy^!-dBDDu   B$k~b~blo?ifMU&tU `u!J %?T'()ўԴ+u6+3,8/ ~/c/14~6 NY8B<|t? 2A%B>N6lDEFgC!G'G*ZGb/HULAU&M~)uOr[pPѧ@Q7RC9SnʆTRUUPkUUUTCXYĻ(:ZZ/\Z/Z/Z0[ []k*^]Zy^n_PYM_Pw_p`u6d`d`je>4i-Yi9EkQjm?$_oNxy;f{{cb}uI8}w}wZ}w}~۬hs1 p~Ez~V~4~3l^yQr'qFp~gz~x~2~1BVSv}t/tYd&._.Z3<PiUH>hUufk]i5DhY`^rt[t5$tRtF@e)-ntlG_ Ha+;Us|Ȅ:Fj2CʢmʢDʬαƴdndjdd4dl059Iэki+?TNS㵾O( u,eؕkYy`U)U@dTReB'hwAX[ 2,%J ;^# I |M!'2+;,DT/J2x3m42t5@ļ5C6.7Dw9!~:J:%T?;;CU]cCUSuDE[GpwINbJ0ɤJ^KA KQ~LU|-V7Ww\+\D7]/t1arRe n*g*.Ngld.n8vnW"lp& qt@wyy'dz5ߒ|(^a|̹|}wZ}$}$Z;}$ϱ~9k4DίϗקZ~KVN$D>L>{Ŏ9ǝNdqqr>inu-nŎK<f+E.=oͮ·gW·E·ýI=k׳:NB_:nAT~+ nz/7TfC-unC-n\e'AtPުUj7rCE&PȥNPv|U2#ONu9y%5TU9 e~i~7xWؐ;lbi9%޼,wYbC !'##%%%d"'#-.S. (5kE=i=&@=G?_?d@J.`@TCtI9Ef}zNPFPÑV%0V%2&XU 3ZV`!Yaw(bDQbGVffdQf.gAHhIi$kn7wx1 -z*2*|&|QRdJQl#U+rc (.&+zc.<4kC5ߚ^&Q;6i}$ӷrXm'h^evnJ'Kb†5OiCOq~U85ʴ5nAʴ5ʶpo]ϡ$yWы#hjDo^ BӞ}[Ԅ۔#DP'N%td A6F5PMF5oYp@+>`4Nw{&D'I<IAs8 nE }$l; qe2 ڤ ڤO ڥ d` Eh* E| t AcB& Ac ]= n'n *ϥ 35 35 6: N W WMN `B b bb b`4 b` d gUb; i3W kk la8 lf lq2 ok qv$ qv qzV tN+ uM xqH |o ~+5 | |1 e n  ? J  tA t. pd .n  .} ,M  _  )B F>&{  - a  leD [j  ] _  n Bu ҉ 4 h < > >U < U k [  M i2 o ncJ  NH| Z 9>. V % u"?  Y+%+ Y>ٖ 0 KNh  @ 팤 E*- l~h %'; MN0 4 A  /G C<< S =` q#'  D  } 9O oE Ą͈ =  ] $ )X */*o .>c 5 74 7u ;YO >& 0 v"T :d f 8 f  7 4H & .$  )* s;" s ~ AA/4 9 1 9m\ 05' r1A  m,E0 5& ݡ6 !ڈ #-t #-t ' 0N` 5 5\ :  AgD CU%) E9A I L LZ LZ L Mc\ O O P..s R SJ VOy W X\F ZG? \Ot ]$k `" c f)8v f) 5 f= io> jT l#L luTi m`R n|n; wAX xRD yrn {n }QX ~L1 >  K H6 H d G ^X  nr8 С5 $A .@U  I4 i <Q Q*  M ^  > zdTG 5 % J;b J  ;  t.S k ӇN  M K N>W /+ ̺& &x A N -D'. .\! x ۷) r k kب x U): % T>F <Q+ h "g | 0G   j $rM Ź ~~/ z+  ,  8  I * 9N %$ w N- H@ A> Ll s xH? dj Ic ", u !p} $i %6b )Ε .d$ 2U 7Fa < =ю5y >/ >1 >3 >>N >Q >\ > > > > > ?t|G A^; B~D DT34 Fn G(e I_ Icw J> K Kb L MbO P@% QT RVB RVo RV Rn S.dX SG{ Sb T~ Y{ Yq [ \* eN hۮ} j7o m( pdn sL u6X vMX Q BMF z Tj Tf4 T T­ ^ N mZ [ R $ & /. ,' ,0 S )db )dv Tb R^D A .kF .FG .g . . . .{ . u  a > e .! ai a P0 yP ) t e.m x0 C 'b N,V 6d y hN* ɾd%^ ɾd'f e& ̈́^v > ҂ Ӵb ء ߢ.{ | >u % uǚ t q aK |" $ b#^ I XtZT nk 9 )C t J aj jF .E 3 :b:z UqP zH q ʜb f f f $I 3 >X    $ k   ^ #$ #=* %n. '. (I$Z (NF +>e +k_ 0E 64#, ;ɾJ Cn} FgE K9b Lc` Pto Pt" R"y¬ S,Ro T>U `Kݥ c dB fex fe g  g hQ$. iFC3k i i4 jN  j/ jӮ kGn[$ l" m9 m9u n s'~q uH ung ujG v ( v&j v{ wD wY w% w} w}Y w}i yn |[@ : uWV )X 4 <: h JA/ b5 ( | ^ % æ 9" $V }Z RN %7 P  xN "J Ua ɰeY FV rrp ְs  B X> br Y & B  xo= D@  +$E  t5oK t5 p N ?t >] p  )3 A Ri$IR?;Yw5>Y @a  T]QU,B6~<n;gT]T !a&-+*Z*+/E\F/E/ET4Qt$7SƮIEdI.[I_;K$NOOaS5XRu$XRZo[ [ a.a.Ea%"gc\i$\nyGsW4v6v<LvɅFy$y?.H~=:%1>v e7&=46}N4N5|4^#'l4y*GdZ~SP5NE^5ǗTGQ:.(Z5DBY`=5L3PӮ`qӮ` Ӯ`8AA֒ * @r^bݖmU&0[y@4^U=9rF=jj+C T 8 .v 9 GKlDSn-Vc"#Q"#`$UD%4%4n'y*,t,-z-v0i)C0Dw1c1c:2wTB>kDSF74lGKHDKJd<JK`wL$.RW[{*V\<9b4rUc5c5։cg3iCOiTklpyqiiCv)yCT{`~|{~aA[~516$~V0&&DD3\E`}$t'{!wx@`ѧnY2[>X]) n96ͣJ` :zt۰>bN Ea"~gdLr\r-1ky֠Uڔ.Xu"'T/g44jLnX>B6Plt2aCe'ldUiPechar a lapela Close Tab CloseButton<non definido> Debugger::JSAgentWatchData.[Array de longitude %1][Array of length %1]Debugger::JSAgentWatchDataErro falso! Fake error! FakeReplyURL non vlido Invalid URL FakeReplyAcerca de %1About %1MAC_APPLICATION_MENUAcochar %1Hide %1MAC_APPLICATION_MENU"Acochar os outros Hide OthersMAC_APPLICATION_MENUPreferencias...Preferences...MAC_APPLICATION_MENUSar de %1Quit %1MAC_APPLICATION_MENUServizosServicesMAC_APPLICATION_MENUMostrar todosShow AllMAC_APPLICATION_MENUAccesibilidade AccessibilityPhonon::Comunicacin CommunicationPhonon:: XogosGamesPhonon:: MsicaMusicPhonon::Notificacins NotificationsPhonon:: VdeoVideoPhonon::4<html>Mudando para o dispositivo de reproducin de son <b>%1</b><br/>que ten mis preferencia ou est configurado especificamente para este fluxo.</html>Switching to the audio playback device %1
which has higher preference or is specifically configured for this stream.Phonon::AudioOutput<html>Mudando para o dispositivo de reproducin de son <b>%1</b><br/>que acaba de prse dispobel e ten maior preferencia.</html>xSwitching to the audio playback device %1
which just became available and has higher preference.Phonon::AudioOutput<html>O dispositivo de reproducin de son <b>%1</b> non funciona.<br/>No seu lugar usarase o <b>%2</b>.</html>^The audio playback device %1 does not work.
Falling back to %2.Phonon::AudioOutputNEstase a voltar para o dispositivo %1Revert back to device '%1'Phonon::AudioOutput Aviso: Non semella ter instalados os complementos bsicos de GStreamer. Desactivouse toda a compatibilidade con son e vdeo~Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabledPhonon::Gstreamer::BackendAviso: Non semella ter instalado o paquete gstreamer0.10-plugins-good. Desactivronse algunhas funcionalidades de vdeo.Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled.Phonon::Gstreamer::BackendFalta un cdec requirido, polo que deber instalar os seguintes cdecs para reproducir este contido: %0`A required codec is missing. You need to install the following codec(s) to play this content: %0Phonon::Gstreamer::MediaObjectNon posbel reproducir. Comprobe a instalacin de GStreamer e verifique que ten instalado libgstreamer-plugins-base.wCannot start playback. Check your GStreamer installation and make sure you have libgstreamer-plugins-base installed.Phonon::Gstreamer::MediaObject\Non foi posbel descodificar a fonte do medio.Could not decode media source.Phonon::Gstreamer::MediaObjectPNon foi posbel atopar a orixe do medio.Could not locate media source.Phonon::Gstreamer::MediaObjectvNon foi posbel abrir o dispositivo de son; Xa est en uso.:Could not open audio device. The device is already in use.Phonon::Gstreamer::MediaObjectRNon foi posbel abrir a orixe dos medios.Could not open media source.Phonon::Gstreamer::MediaObject2Tipo de orixe non vlido.Invalid source type.Phonon::Gstreamer::MediaObject\Falta o asistente do script auxiliar do cdec.&Missing codec helper script assistant.Phonon::Gstreamer::MediaObjectbFallou a instalacin do complemento dun cdec: %0.Plugin codec installation failed for codec: %0Phonon::Gstreamer::MediaObjectAcceso denegado Access denied Phonon::MMFXa existeAlready exists Phonon::MMFSada de son Audio Output Phonon::MMFzNon foi posbel reproducir as compoentes de son nin de video-Audio or video components could not be played Phonon::MMF(Erro da sada de sonAudio output error Phonon::MMF0Non foi posbel conectarCould not connect Phonon::MMFErro da DRM DRM error Phonon::MMF,Erro do descodificador Decoder error Phonon::MMFDesconectado Disconnected Phonon::MMF En usoIn use Phonon::MMF6Largo de banda insuficienteInsufficient bandwidth Phonon::MMFURL non vlido Invalid URL Phonon::MMF(Protocolo non vlidoInvalid protocol Phonon::MMF"Erro de multicastMulticast error Phonon::MMF<Erro de comunicacin pola redaNetwork communication error Phonon::MMF&Rede non dispobelNetwork unavailable Phonon::MMFSen errosNo error Phonon::MMFNon atopado Not found Phonon::MMFNon preparado Not ready Phonon::MMFNon admitido Not supported Phonon::MMF&Esgotouse a memoria Out of memory Phonon::MMFDesbordamentoOverflow Phonon::MMF(Non se atopou a rutaPath not found Phonon::MMFPermiso negadoPermission denied Phonon::MMF,Erro do servidor proxyProxy server error Phonon::MMFLNon se permite utilizar servidor proxyProxy server not supported Phonon::MMF$Alerta do servidor Server alert Phonon::MMFFNon permite utilizar retransmisinsStreaming not supported Phonon::MMF:O dispositivo de sada do sonThe audio output device Phonon::MMFEsgotamento Underflow Phonon::MMF*Erro descoecido (%1)Unknown error (%1) Phonon::MMF,Erro da sada de vdeoVideo output error Phonon::MMF<Aconteceu un erro ao descargarDownload error Phonon::MMF::AbstractMediaPlayer@Aconteceu un erro ao abrir o URLError opening URL Phonon::MMF::AbstractMediaPlayerJAconteceu un erro ao abrir o ficheiroError opening file Phonon::MMF::AbstractMediaPlayerHAconteceu un erro ao abrir o recursoError opening resource Phonon::MMF::AbstractMediaPlayer^Erro ao abrir o recurso: non se abriu o recurso)Error opening source: resource not opened Phonon::MMF::AbstractMediaPlayer,Fallou a carga do clipLoading clip failed Phonon::MMF::AbstractMediaPlayerDNon est preparado para reproducirNot ready to play Phonon::MMF::AbstractMediaPlayer2Completouse a reproducinPlayback complete Phonon::MMF::AbstractMediaPlayer@Fallou a configuracin do volumeSetting volume failed Phonon::MMF::AbstractMediaPlayer<Fallou a obtencin da posicinGetting position failed Phonon::MMF::AbstractVideoPlayer2Fallou a abertura do clipOpening clip failed Phonon::MMF::AbstractVideoPlayer*Fallou o pr en pausa Pause failed Phonon::MMF::AbstractVideoPlayerFallou o salto Seek failed Phonon::MMF::AbstractVideoPlayer %1 Hz%1 HzPhonon::MMF::AudioEqualizer<Fallou a obtencin da posicinGetting position failedPhonon::MMF::AudioPlayer<Erro na visualizacin do vdeoVideo display errorPhonon::MMF::DsaVideoPlayerActivadoEnabledPhonon::MMF::EffectFactory8Taxa de decaemento de HF (%)Decay HF ratio (%) Phonon::MMF::EnvironmentalReverb4Perodo de decaemento (ms)Decay time (ms) Phonon::MMF::EnvironmentalReverbDensidade (%) Density (%) Phonon::MMF::EnvironmentalReverbDifusin (%) Diffusion (%) Phonon::MMF::EnvironmentalReverb2Retardo dos reflexos (ms)Reflections delay (ms) Phonon::MMF::EnvironmentalReverb.Nivel dos reflexos (mB)Reflections level (mB) Phonon::MMF::EnvironmentalReverb:Retardo da reverberacin (ms)Reverb delay (ms) Phonon::MMF::EnvironmentalReverb6Nivel da reverberacin (mB)Reverb level (mB) Phonon::MMF::EnvironmentalReverb&Nivel de HF da sala Room HF level Phonon::MMF::EnvironmentalReverb$Nivel da sala (mB)Room level (mB) Phonon::MMF::EnvironmentalReverbErro ao abrir a fonte: non foi posbel determinar o tipo de medio8Error opening source: media type could not be determinedPhonon::MMF::MediaObject`Erro ao abrir a fonte: o recurso est comprimido,Error opening source: resource is compressedPhonon::MMF::MediaObjectZErro ao abrir a fonte: o recurso non vlido(Error opening source: resource not validPhonon::MMF::MediaObjectPErro ao abrir a fonte: tipo non admitido(Error opening source: type not supportedPhonon::MMF::MediaObjectBFallou a definicin da IAP pedidaFailed to set requested IAPPhonon::MMF::MediaObjectNivel (%) Level (%)Phonon::MMF::StereoWidening<Erro na visualizacin do vdeoVideo display errorPhonon::MMF::SurfaceVideoPlayerSilenciadoMutedPhonon::VolumeSliderUse esta barra deslizante para axustar o volume. A posicin da esquerda o 0%, a da dereita o %1%WUse this slider to adjust the volume. The leftmost position is 0%. The rightmost is %1%Phonon::VolumeSliderVolume: %1% Volume: %1%Phonon::VolumeSlider&%1, %2 non definido%1, %2 not definedQ3Accel:Non se xestionou o %1 ambiguoAmbiguous %1 not handledQ3Accel BorrarDelete Q3DataTable FalsoFalse Q3DataTableInserirInsert Q3DataTableVerdadeiroTrue Q3DataTableActualizarUpdate Q3DataTable%1 Non se atopou o ficheiro. Comprobe a ruta e o nome do ficheiro.+%1 File not found. Check path and filename. Q3FileDialog&Borrar&Delete Q3FileDialog&Non&No Q3FileDialog&Aceptar&OK Q3FileDialog &Abrir&Open Q3FileDialog&Mudar o nome&Rename Q3FileDialog&Gardar&Save Q3FileDialog&Sen ordenar &Unsorted Q3FileDialog&Si&Yes Q3FileDialogR<qt>Desexa realmente borrar %1 %2?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialog,Todos os ficheiros (*) All Files (*) Q3FileDialog0Todos os ficheiros (*.*)All Files (*.*) Q3FileDialogAtributos Attributes Q3FileDialog AtrsBack Q3FileDialogCancelarCancel Q3FileDialog6Copiar ou mover un ficheiroCopy or Move a File Q3FileDialog,Crear un cartafol novoCreate New Folder Q3FileDialogDataDate Q3FileDialogBorrar %1 Delete %1 Q3FileDialog"Vista de detalles Detail View Q3FileDialogDirDir Q3FileDialogCartafoles Directories Q3FileDialogCartafol: Directory: Q3FileDialogErroError Q3FileDialogFicheiroFile Q3FileDialog$&Nome do ficheiro: File &name: Q3FileDialog$&Tipo de ficheiro: File &type: Q3FileDialog$Buscar un cartafolFind Directory Q3FileDialogInaccesbel Inaccessible Q3FileDialogVista en lista List View Q3FileDialogP&rocurar en: Look &in: Q3FileDialogNomeName Q3FileDialogNovo cartafol New Folder Q3FileDialog Novo cartafol %1 New Folder %1 Q3FileDialogNovo cartafol 1 New Folder 1 Q3FileDialog&Subir un directorioOne directory up Q3FileDialog AbrirOpen Q3FileDialog AbrirOpen  Q3FileDialogNContido da previsualizacin do ficheiroPreview File Contents Q3FileDialogNInformacin da vista previa do ficheiroPreview File Info Q3FileDialog&Cargar de novoR&eload Q3FileDialogS lectura Read-only Q3FileDialog"Lectura e escrita Read-write Q3FileDialogLer: %1Read: %1 Q3FileDialogGardar comoSave As Q3FileDialog&Escolla un cartafolSelect a Directory Q3FileDialog>Mostrar os ficheiros &acochadosShow &hidden files Q3FileDialog TamaoSize Q3FileDialogOrdenarSort Q3FileDialog.Ordenar segundo a &data Sort by &Date Q3FileDialog.Ordenar segundo o &nome Sort by &Name Q3FileDialog2Ordenar segundo o &tamao Sort by &Size Q3FileDialogEspecialSpecial Q3FileDialogBLigazn simblica a un directorioSymlink to Directory Q3FileDialog>Ligazn simblica a un ficheiroSymlink to File Q3FileDialogPLigazn simblica a un ficheiro especialSymlink to Special Q3FileDialogTipoType Q3FileDialogS escrita Write-only Q3FileDialogEscribir: %1 Write: %1 Q3FileDialogo cartafol the directory Q3FileDialogo ficheirothe file Q3FileDialog&a ligazn simblica the symlink Q3FileDialogFNon foi posbel crear o cartafol %1Could not create directory %1 Q3LocalFs0Non foi posbel abrir %1Could not open %1 Q3LocalFsBNon foi posbel ler o cartafol %1Could not read directory %1 Q3LocalFsdNon foi posbel eliminar o ficheiro ou cartafol %1%Could not remove file or directory %1 Q3LocalFsVNon foi posbel mudar o nome de %1 para %2Could not rename %1 to %2 Q3LocalFs6Non foi posbel escribir %1Could not write %1 Q3LocalFsPersonalizar... Customize... Q3MainWindowAliar en ribaLine up Q3MainWindow:Operacin detida polo usuarioOperation stopped by the userQ3NetworkProtocolCancelarCancelQ3ProgressDialogAplicarApply Q3TabDialogCancelarCancel Q3TabDialogPredeterminadoDefaults Q3TabDialog AxudaHelp Q3TabDialogAceptarOK Q3TabDialog&Copiar&Copy Q3TextEditA&pegar&Paste Q3TextEdit&Refacer&Redo Q3TextEdit&Desfacer&Undo Q3TextEdit LimparClear Q3TextEditCor&tarCu&t Q3TextEditEscoller todo Select All Q3TextEdit PecharClose Q3TitleBarPecha a xanelaCloses the window Q3TitleBarHContn ordes para manipular a xanela*Contains commands to manipulate the window Q3TitleBartMostra o nome da xanela e contn controles para manipulalaFDisplays the name of the window and contains controls to manipulate it Q3TitleBar@Pon a xanela a pantalla completaMakes the window full screen Q3TitleBarMaximizarMaximize Q3TitleBarMinimizarMinimize Q3TitleBar.Vota a un lado a xanelaMoves the window out of the way Q3TitleBarZVolta unha xanela maximizada ao tamao normal&Puts a maximized window back to normal Q3TitleBarZVolta unha xanela minimizada ao tamao normal&Puts a minimized window back to normal Q3TitleBar(Restaurar en pequeno Restore down Q3TitleBarRestaurar Restore up Q3TitleBarSistemaSystem Q3TitleBarMis...More... Q3ToolBar(descoecido) (unknown) Q3UrlOperatorO protocolo %1 non permite copiar nin mover nin ficheiros nin cartafolesIThe protocol `%1' does not support copying or moving files or directories Q3UrlOperatorfO protocolo %1 non permite crear cartafoles novos;The protocol `%1' does not support creating new directories Q3UrlOperatorXO protocolo %1 non permite obter ficheiros0The protocol `%1' does not support getting files Q3UrlOperatorrO protocolo %1 non permite sacar listaxes de cartafoles6The protocol `%1' does not support listing directories Q3UrlOperatorZO protocolo %1 non permite enviar ficheiros0The protocol `%1' does not support putting files Q3UrlOperatorO protocolo %1 non permite eliminar nin ficheiros nin cartafoles@The protocol `%1' does not support removing files or directories Q3UrlOperatorO protocolo %1 non permite mudar o nome dos ficheiros nin dos cartafoles@The protocol `%1' does not support renaming files or directories Q3UrlOperatorPNon se permite utilizar o protocolo %1"The protocol `%1' is not supported Q3UrlOperator&Cancelar&CancelQ3Wizard&Finalizar&FinishQ3Wizard &Axuda&HelpQ3Wizard&Seguinte >&Next >Q3Wizard< &Anterior< &BackQ3Wizard0A conexin foi rexeitadaConnection refusedQAbstractSocketBA conexin esgotou o tempo-lmiteConnection timed outQAbstractSocket0Non se atopou o servidorHost not foundQAbstractSocket:Non foi posbel acadar a redeNetwork unreachableQAbstractSocketRNon se permite usar a operacin no socket$Operation on socket is not supportedQAbstractSocket6O socket non est conectadoSocket is not connectedQAbstractSocketXA operacin do socket esgotou o tempo-lmiteSocket operation timed outQAbstractSocketEscoller &todo &Select AllQAbstractSpinBox &Subir&Step upQAbstractSpinBox&Baixar Step &downQAbstractSpinBox MarcarCheckQAccessibleButton PremerPressQAccessibleButtonDesmarcarUncheckQAccessibleButtonActivarActivate QApplicationJActiva a xanela principal do programa#Activates the program's main window QApplicationjO executbel %1 require de Qt %2, e atopouse Qt %3.,Executable '%1' requires Qt %2, found Qt %3. QApplicationHErro de bibliotecas Qt incompatbeisIncompatible Qt Library Error QApplicationLTRQT_LAYOUT_DIRECTION QApplication&Cancelar&Cancel QAxSelect&Obxecto COM: COM &Object: QAxSelectAceptarOK QAxSelect4Escoller n control ActiveXSelect ActiveX Control QAxSelect MarcarCheck QCheckBoxConmutarToggle QCheckBoxDesmarcarUncheck QCheckBox@&Engadir s cores personalizadas&Add to Custom Colors QColorDialogCores &bsicas &Basic colors QColorDialog*Cores &personalizadas&Custom colors QColorDialogV&erde:&Green: QColorDialog&Vermello:&Red: QColorDialog&Satur:&Sat: QColorDialog&Valor:&Val: QColorDialogCanle &alfa:A&lpha channel: QColorDialog A&zul:Bl&ue: QColorDialog &Ton:Hu&e: QColorDialog"Escoller unha cor Select Color QColorDialog PecharClose QComboBox FalsoFalse QComboBox AbrirOpen QComboBoxVerdadeiroTrue QComboBox%1: xa existe%1: already existsQCoreApplication%1: non existe%1: does not existQCoreApplication%1: fallou ftok%1: ftok failedQCoreApplication0%1: a chave est baleira%1: key is emptyQCoreApplication.%1: esgotou os recursos%1: out of resourcesQCoreApplication*%1: negouse o permiso%1: permission deniedQCoreApplicationB%1: non foi posbel crear a chave%1: unable to make keyQCoreApplication.%1: erro descoecido %2%1: unknown error %2QCoreApplicationJNon foi posbel remitir a transaccinUnable to commit transaction QDB2Driver0Non foi posbel conectarUnable to connect QDB2DriverLNon foi posbel regresar a transaccinUnable to rollback transaction QDB2DriverZNon foi posbel activar a remisin automticaUnable to set autocommit QDB2DriverDNon foi posbel asociar a varibelUnable to bind variable QDB2ResultFNon foi posbel executar a sentenzaUnable to execute statement QDB2ResultBNon foi posbel acadar o primeiroUnable to fetch first QDB2ResultBNon foi posbel acadar o seguinteUnable to fetch next QDB2ResultFNon foi posbel traer o rexistro %1Unable to fetch record %1 QDB2ResultFNon foi posbel preparar a sentenzaUnable to prepare statement QDB2ResultAMAM QDateTimeEditPMPM QDateTimeEditamam QDateTimeEditpmpm QDateTimeEditDA animacin unha clase abstractaAnimation is an abstract classQDeclarativeAbstractAnimation`Non se pode animar a propiedade inexistente %1)Cannot animate non-existent property "%1"QDeclarativeAbstractAnimationhNon se pode animar a propiedade s para lectura %1&Cannot animate read-only property "%1"QDeclarativeAbstractAnimationJNon se pode indicar unha duracin < 0Cannot set a duration of < 0QDeclarativeAnchorAnimationO enganche de lia de base non se pode empregar xunto cos enganches superior, inferior nin vcenter.SBaseline anchor cannot be used in conjunction with top, bottom, or vcenter anchors.QDeclarativeAnchorsvNon se pode enganchar un contorno horizontal a un vertical.3Cannot anchor a horizontal edge to a vertical edge.QDeclarativeAnchorsvNon se pode enganchar un contorno vertical a un horizontal.3Cannot anchor a vertical edge to a horizontal edge.QDeclarativeAnchors^Non se pode enganchar o elemento consigo mesmo.Cannot anchor item to self.QDeclarativeAnchorsRNon se pode enganchar a un elemento nulo.Cannot anchor to a null item.QDeclarativeAnchorsxNon se pode enganchar a un elemento que non pai nin irmao.8Cannot anchor to an item that isn't a parent or sibling.QDeclarativeAnchorsNon se poden especificar os enganches esquerdo, dereito e hcenter.0Cannot specify left, right, and hcenter anchors.QDeclarativeAnchorsNon se poden especificar os enganches superior, inferior e vcenter.0Cannot specify top, bottom, and vcenter anchors.QDeclarativeAnchorshDetectouse un posbel ciclo de enganche en centerIn.*Possible anchor loop detected on centerIn.QDeclarativeAnchorsdDetectouse un posbel ciclo de enganche no recheo.&Possible anchor loop detected on fill.QDeclarativeAnchors~Detectouse un posbel ciclo de enganche no enganche horizontal.3Possible anchor loop detected on horizontal anchor.QDeclarativeAnchorszDetectouse un posbel ciclo de enganche no enganche vertical.1Possible anchor loop detected on vertical anchor.QDeclarativeAnchorsZQt construuse sen a implementacin de QMovie'Qt was built without support for QMovieQDeclarativeAnimatedImageFA aplicacin unha clase abstracta Application is an abstract classQDeclarativeApplicationjNon se pode mudar a animacin asignada a un Behavior.3Cannot change the animation assigned to a Behavior.QDeclarativeBehaviorfDetectouse un ciclo de unin para a propiedade %1'Binding loop detected for property "%1"QDeclarativeBindingfDetectouse un ciclo de unin para a propiedade %1'Binding loop detected for property "%1"QDeclarativeCompiledBindings8%1 non pode operar en %2"%1" cannot operate on "%2"QDeclarativeCompiler~%1.%2 non est dispobel debido s versins das compoentes.5"%1.%2" is not available due to component versioning.QDeclarativeCompilerP%1.%2 non est dispobel en %3 %4 %5.%"%1.%2" is not available in %3 %4.%5.QDeclarativeCompilerbA propiedade do alcume excede os lmite do alcume#Alias property exceeds alias boundsQDeclarativeCompiler`As propiedades anexas non se poden empregar aqu'Attached properties cannot be used hereQDeclarativeCompilerZS se pode asignar unha combinacin s listas$Can only assign one binding to listsQDeclarativeCompilerNon se pode asignar directamente un valor a unha propiedade agrupada4Cannot assign a value directly to a grouped propertyQDeclarativeCompilerNon foi posbel asignar un valor a un sinal (agardbase que se executase un script)@Cannot assign a value to a signal (expecting a script to be run)QDeclarativeCompiler~Non se poden asignar varios valores a unha propiedade de script2Cannot assign multiple values to a script propertyQDeclarativeCompiler|Non se poden asignar varios valores a unha propiedade singular4Cannot assign multiple values to a singular propertyQDeclarativeCompilerVNon se pode asignar un obxecto a unha listaCannot assign object to listQDeclarativeCompiler`Non se pode asignar un obxecto a unha propiedade Cannot assign object to propertyQDeclarativeCompilerRNon se poden asignar primitivas s listas!Cannot assign primitives to listsQDeclarativeCompilerNon se pode asignar a unha propiedade predeterminada inexistente.Cannot assign to non-existent default propertyQDeclarativeCompilerlNon se pode asignar a unha propiedade inexistente %1+Cannot assign to non-existent property "%1"QDeclarativeCompilervNon se pode crear unha especificacin de compoente baleira+Cannot create empty component specificationQDeclarativeCompilerVNon se pode sobrescribir a propiedade FINALCannot override FINAL propertyQDeclarativeCompilerOs elementos compoentes non poden conter mis propiedades que o id;Component elements may not contain properties other than idQDeclarativeCompilertOs obxectos compoentes non poden declarar novas funcins./Component objects cannot declare new functions.QDeclarativeCompilerzOs obxectos compoentes non poden declarar novas propiedades.0Component objects cannot declare new properties.QDeclarativeCompilerpOs obxectos compoentes non poden declarar novas sinais.-Component objects cannot declare new signals.QDeclarativeCompilerFPropiedade predeterminada duplicadaDuplicate default propertyQDeclarativeCompiler0Nome de mtodo duplicadoDuplicate method nameQDeclarativeCompiler8Nome de propiedade duplicadoDuplicate property nameQDeclarativeCompiler.Nome de sinal duplicadoDuplicate signal nameQDeclarativeCompiler2O elemento non crebel.Element is not creatable.QDeclarativeCompiler@Asignacin baleira de propiedadeEmpty property assignmentQDeclarativeCompiler6Asignacin baleira de sinalEmpty signal assignmentQDeclarativeCompilerxO ID enmascara ilegalmente unha propiedade JavaScript global-ID illegally masks global JavaScript propertyQDeclarativeCompilerTOs ID non poden iniciar por unha maiscula)IDs cannot start with an uppercase letterQDeclarativeCompilerjOs ID s deben conter letras, nmeros e guins baixos7IDs must contain only letters, numbers, and underscoresQDeclarativeCompilerpOs ID deben comezar por unha letra ou por un guin baixo*IDs must start with a letter or underscoreQDeclarativeCompiler*Nome ilegal de mtodoIllegal method nameQDeclarativeCompiler2Nome ilegal de propiedadeIllegal property nameQDeclarativeCompiler(Nome ilegal de sinalIllegal signal nameQDeclarativeCompilerfEspecificouse incorrectamente a asignacin de sinal'Incorrectly specified signal assignmentQDeclarativeCompilerDLocalizacin non vlida dun alcumeInvalid alias locationQDeclarativeCompiler"Referencia non vlida a un alcume. Unha referencia a un alcume debe indicarse como <id>, <id> <property> ou como <id>.<value.property>.<property>zInvalid alias reference. An alias reference must be specified as , . or ..QDeclarativeCompilerReferencia non vlida a un alcume. Non foi posbel atopar o id %1/Invalid alias reference. Unable to find id "%1"QDeclarativeCompilerLAsignacin de obxecto anexo non vlido"Invalid attached object assignmentQDeclarativeCompilerbEspecificacin non vlida do corpo dun compoente$Invalid component body specificationQDeclarativeCompiler\Especificacin non vlida do id dun compoente"Invalid component id specificationQDeclarativeCompiler*ID baleiro non vlidoInvalid empty IDQDeclarativeCompilerXAcceso non vlido a unha propiedade agrupadaInvalid grouped property accessQDeclarativeCompilerAsignacin de propiedade non vlida: %1 unha propiedade s para lectura9Invalid property assignment: "%1" is a read-only propertyQDeclarativeCompilerxAsignacin de propiedade non vlida: agardbase un vector 3D/Invalid property assignment: 3D vector expectedQDeclarativeCompilervAsignacin de propiedade non vlida: agardbase un booleano-Invalid property assignment: boolean expectedQDeclarativeCompilerpAsignacin de propiedade non vlida: agardbase unha cor+Invalid property assignment: color expectedQDeclarativeCompilerrAsignacin de propiedade non vlida: agardbase unha date*Invalid property assignment: date expectedQDeclarativeCompilervAsignacin de propiedade non vlida: agardbase un datetime.Invalid property assignment: datetime expectedQDeclarativeCompilerlAsignacin de propiedade non vlida: agardbase un int)Invalid property assignment: int expectedQDeclarativeCompilerrAsignacin de propiedade non vlida: agardbase un nmero,Invalid property assignment: number expectedQDeclarativeCompilerpAsignacin de propiedade non vlida: agardbase un punto+Invalid property assignment: point expectedQDeclarativeCompilernAsignacin de propiedade non vlida: agardbase un rect*Invalid property assignment: rect expectedQDeclarativeCompilerrAsignacin de propiedade non vlida: agardbase un script,Invalid property assignment: script expectedQDeclarativeCompilerrAsignacin de propiedade non vlida: agardbase un tamao*Invalid property assignment: size expectedQDeclarativeCompilertAsignacin de propiedade non vlida: agardbase unha cadea,Invalid property assignment: string expectedQDeclarativeCompilernAsignacin de propiedade non vlida: agardbase un time*Invalid property assignment: time expectedQDeclarativeCompilerxAsignacin de propiedade non vlida: enumeracin descoecida0Invalid property assignment: unknown enumerationQDeclarativeCompiler~Asignacin de propiedade non vlida: agardbase un unsigned int2Invalid property assignment: unsigned int expectedQDeclarativeCompilerxAsignacin de propiedade non vlida: tipo non soportado %12Invalid property assignment: unsupported type "%1"QDeclarativeCompilerlAsignacin de propiedade non vlida: agardbase un URL)Invalid property assignment: url expectedQDeclarativeCompilerFAniamento non vlido de propiedadeInvalid property nestingQDeclarativeCompiler:Tipo de propiedade non vlidoInvalid property typeQDeclarativeCompiler8Uso non vlido da propiedadeInvalid property useQDeclarativeCompiler>Uso non vlido da propiedade idInvalid use of id propertyQDeclarativeCompilerBUso non vlido do espazo de nomesInvalid use of namespaceQDeclarativeCompilerdOs nomes de mtodo non poden comezar por maiscula3Method names cannot begin with an upper case letterQDeclarativeCompiler`Falta a localizacin dun alcume dunha propiedadeNo property alias locationQDeclarativeCompilerFAnexronse propiedades inexistentesNon-existent attached objectQDeclarativeCompilerBNon un nome de propiedade anexaNot an attached property nameQDeclarativeCompilerPAgardbase unha asignacin de propiedadeProperty assignment expectedQDeclarativeCompilerXXa se lle asignou un valor a esta propiedade*Property has already been assigned a valueQDeclarativeCompilerpOs nomes das propiedades non poden comezar por maiscula5Property names cannot begin with an upper case letterQDeclarativeCompiler^O valor dunha propiedade indicouse varias veces!Property value set multiple timesQDeclarativeCompilerbOs nomes de sinal non poden comezar por maiscula3Signal names cannot begin with an upper case letterQDeclarativeCompilerZAgardbase unha nica asignacin a propiedade#Single property assignment expectedQDeclarativeCompiler@Asignacin de obxecto inesperadaUnexpected object assignmentQDeclarativeCompiler O id non nicoid is not uniqueQDeclarativeCompiler,URL baleiro non vlidoInvalid empty URLQDeclarativeComponentLcreateObject: o valor non un obxecto$createObject: value is not an objectQDeclarativeComponenttNon posbel asignar a unha propiedade non existente %1+Cannot assign to non-existent property "%1"QDeclarativeConnectionsXConexins: non se permiten obxectos aniados'Connections: nested objects not allowedQDeclarativeConnections>Conexins: agardbase un scriptConnections: script expectedQDeclarativeConnections4Conexins: erro de sintaxeConnections: syntax errorQDeclarativeConnections6Transaccin s para lecturaRead-only TransactionQDeclarativeEngine0Fallou a transaccin SQLSQL transaction failedQDeclarativeEnginedSQL: a versin da base de datos non se correspondeSQL: database version mismatchQDeclarativeEngineNon se corresponden as versins: agardbase a %1 pero atopouse a %2'Version mismatch: expected %1, found %2QDeclarativeEngine\chamouse a executeSql fora dunha transaction()'executeSql called outside transaction()QDeclarativeEngineNtransaccin: falta a chamada de retornotransaction: missing callbackQDeclarativeEngineLback unha propiedade s para escritaback is a write-once propertyQDeclarativeFlipableNfront unha propiedade s para escritafront is a write-once propertyQDeclarativeFlipable8%1: non hai tal directorio"%1": no such directoryQDeclarativeImportDatabase:: %1 non un espazo de nomes- %1 is not a namespaceQDeclarativeImportDatabase\: non se permiten os espazos de nomes aniados- nested namespaces not allowedQDeclarativeImportDatabase^Non casan as maiculas do nome do ficheiro %1 File name case mismatch for "%1"QDeclarativeImportDatabase\import "%1" non ten qmldir nin espazo de nomes*import "%1" has no qmldir and no namespaceQDeclarativeImportDatabaseB ambiguo. Atopouse en %1 e en %2#is ambiguous. Found in %1 and in %2QDeclarativeImportDatabaseh ambiguo. Atopouse en %1 nas versins %2.%3 e %4.%54is ambiguous. Found in %1 in version %2.%3 and %4.%5QDeclarativeImportDatabase@ instanciada de xeito recursivois instantiated recursivelyQDeclarativeImportDatabasenon un tipo is not a typeQDeclarativeImportDatabase directorio locallocal directoryQDeclarativeImportDatabase@o mdulo %1 non est instaladomodule "%1" is not installedQDeclarativeImportDatabase^non se atopou o complemento %2 do mdulo %1!module "%1" plugin "%2" not foundQDeclarativeImportDatabaseba versin %2.%3 do mdulo %1 non est instalada*module "%1" version %2.%3 is not installedQDeclarativeImportDatabasevnon foi posbel cargar o complemento para o mdulo %1: %2+plugin cannot be loaded for module "%1": %2QDeclarativeImportDatabaseKeyNavigation s est dispobel mediante as propiedades anexadas7KeyNavigation is only available via attached properties!QDeclarativeKeyNavigationAttachedpKeys s est dispobel mediante as propiedades anexadas.Keys is only available via attached propertiesQDeclarativeKeysAttachedvA propriedade anexa LayoutDirection s funciona con Items7LayoutDirection attached property only works with Items#QDeclarativeLayoutMirroringAttachedLayoutMirroring s est dispobel a travs das propiedades anexas9LayoutMirroring is only available via attached properties#QDeclarativeLayoutMirroringAttachedjElemento de lista: non pode conter elementos aniados+ListElement: cannot contain nested elementsQDeclarativeListModelElemento de lista: non pode empregar a propiedade id porque est reservada.ListElement: cannot use reserved "id" propertyQDeclarativeListModelElemento de lista: non pode empregar script como valor de propiedade1ListElement: cannot use script for property valueQDeclarativeListModelhModelo de lista: a propiedade %1 non est definida"ListModel: undefined property '%1'QDeclarativeListModelBengadir: o valor non un obxectoappend: value is not an objectQDeclarativeListModelVinserir: o ndice %1 est fora do intervaloinsert: index %1 out of rangeQDeclarativeListModelBinserir: o valor non un obxectoinsert: value is not an objectQDeclarativeListModel0mover: fora do intervalomove: out of rangeQDeclarativeListModelXeliminar: o ndice %1 est fora do intervaloremove: index %1 out of rangeQDeclarativeListModelVdefinir: o ndice %1 est fora do intervaloset: index %1 out of rangeQDeclarativeListModelBdefinir: o valor non un obxectoset: value is not an objectQDeclarativeListModelhO cargador non permite cargar elementos non visuais.4Loader does not support loading non-visual elements.QDeclarativeLoader~Non posbel conservar a aparencia con transformacin complexa5Unable to preserve appearance under complex transformQDeclarativeParentAnimationzNon posbel conservar a aparencia con escalado non uniforme5Unable to preserve appearance under non-uniform scaleQDeclarativeParentAnimationfNon posbel conservar a aparencia con escala de 0.Unable to preserve appearance under scale of 0QDeclarativeParentAnimation~Non posbel conservar a aparencia con transformacin complexa5Unable to preserve appearance under complex transformQDeclarativeParentChangezNon posbel conservar a aparencia con escalado non uniforme5Unable to preserve appearance under non-uniform scaleQDeclarativeParentChangefNon posbel conservar a aparencia con escala de 0.Unable to preserve appearance under scale of 0QDeclarativeParentChange>Agardbase un tipo de parmetroExpected parameter typeQDeclarativeParserDAgardbase o tipo dunha propiedadeExpected property typeQDeclarativeParser.Agardbase o token %1Expected token `%1'QDeclarativeParser4Agardbase o nome dun tipoExpected type nameQDeclarativeParserpO identificador non pode comezar por un literal numrico,Identifier cannot start with numeric literalQDeclarativeParserCarcter ilegalIllegal characterQDeclarativeParser4Secuencia de escape ilegalIllegal escape sequenceQDeclarativeParserRSintaxe ilegal para un nmero exponencial%Illegal syntax for exponential numberQDeclarativeParserDSecuencia de escape unicode ilegalIllegal unicode escape sequenceQDeclarativeParserXID do cualificador de importacin non vlidoInvalid import qualifier IDQDeclarativeParserXModificador de tipo da propiedade non vlidoInvalid property type modifierQDeclarativeParser\Indicador de expresin regular %0 non vlido$Invalid regular expression flag '%0'QDeclarativeParserdDeclaracin de JavaScript fora dun elemento Script-JavaScript declaration outside Script elementQDeclarativeParserdA importacin de bibliotecas require dunha versin!Library import requires a versionQDeclarativeParser`O valor da propiedade estabeleceuse varias veces!Property value set multiple timesQDeclarativeParserZAnda non se permite utilizar s para lecturaReadonly not yet supportedQDeclarativeParserxO nome reservado Qt non se pode empregar como cualificador1Reserved name "Qt" cannot be used as an qualifierQDeclarativeParserxOs cualificadores de importacin de script deben ser nicos.(Script import qualifiers must be unique.QDeclarativeParser`A importacin de script require dun cualificador"Script import requires a qualifierQDeclarativeParserErro de sintaxe Syntax errorQDeclarativeParserXComentario non pechado ao final dun ficheiroUnclosed comment at end of fileQDeclarativeParserFCadea non pechada no fin dunha liaUnclosed string at end of lineQDeclarativeParser\Modificador do tipo da propiedade non agardado!Unexpected property type modifierQDeclarativeParser.Token %1 non agardadoUnexpected token `%1'QDeclarativeParserxSecuencia de expresin regular non terminada con contrabarra2Unterminated regular expression backslash sequenceQDeclarativeParserPClase de expresin regular non terminada%Unterminated regular expression classQDeclarativeParserTLiteral de expresin regular non terminado'Unterminated regular expression literalQDeclarativeParserJNon se pode indicar unha duracin < 0Cannot set a duration of < 0QDeclarativePauseAnimation0Non foi posbel abrir %1Cannot open: %1QDeclarativePixmapRAconteceu un erro ao descodificar: %1: %2Error decoding: %1: %2QDeclarativePixmapVFallou a obtencin da imaxe do provedor: %1%Failed to get image from provider: %1QDeclarativePixmapJNon se pode indicar unha duracin < 0Cannot set a duration of < 0QDeclarativePropertyAnimationfNon posbel asignar propiedade inexistente %1+Cannot assign to non-existent property "%1"QDeclarativePropertyChangesxNon posbel asignar a unha propiedade s para lectura %1(Cannot assign to read-only property "%1"QDeclarativePropertyChangesPropertyChanges non permite crear obxectos especficos dun estado.APropertyChanges does not support creating state-specific objects.QDeclarativePropertyChanges^Non foi posbel instanciar o delegado do cursor%Could not instantiate cursor delegateQDeclarativeTextInputVNon foi posbel cargar o delegado do cursorCould not load cursor delegateQDeclarativeTextInput %1 %2%1 %2QDeclarativeTypeLoaderlO espazo de nomes %1 non se pode empregar como un tipo%Namespace %1 cannot be used as a typeQDeclarativeTypeLoader>O script %1 non est dispobelScript %1 unavailableQDeclarativeTypeLoader:O tipo %1 non est dispobelType %1 unavailableQDeclarativeTypeLoaderrNon posbel asignar un obxecto propiedade de sinal %1-Cannot assign an object to signal property %1QDeclarativeVMENon posbel asignar un obxecto a unha propiedade dunha interface*Cannot assign object to interface propertyQDeclarativeVME^Non posbel asignar un obxecto a unha listaxeCannot assign object to listQDeclarativeVMENon posbel asignar un obxecto do tipo %1 sen mtodo predeterminado3Cannot assign object type %1 with no default methodQDeclarativeVME`Non posbel asignar o valor %1 propiedade %2%Cannot assign value %1 to property %2QDeclarativeVME|Non posbel conectar o sinal/slot non coincidente %1 %vs. %20Cannot connect mismatched signal/slot %1 %vs. %2QDeclarativeVMEhNon se poden definir propiedades de %1 porque nulo)Cannot set properties on %1 as it is nullQDeclarativeVMEJNon foi posbel crear o obxecto anexo Unable to create attached objectQDeclarativeVMEVNon foi posbel crear un obxecto do tipo %1"Unable to create object of type %1QDeclarativeVME\O compoente delegado debe ser do tipo Item.%Delegate component must be Item type.QDeclarativeVisualDataModel`Qt construuse sen implementacin de xmlpatterns,Qt was built without support for xmlpatternsQDeclarativeXmlListModelZUnha pescuda XmlRole non pode comezar por /(An XmlRole query must not start with '/'QDeclarativeXmlListModelRole~Unha pescuda XmlListModel non pode comezar por / nin por //1An XmlListModel query must start with '/' or "//"QDeclarativeXmlRoleList QDialQDialQDial.Asa da barra deslizante SliderHandleQDialVelocmetro SpeedoMeterQDial FeitoDoneQDialogQue isto? What's This?QDialog&Cancelar&CancelQDialogButtonBox&Pechar&CloseQDialogButtonBox&Non&NoQDialogButtonBox&Aceptar&OKQDialogButtonBox&Gardar&SaveQDialogButtonBox&Si&YesQDialogButtonBoxInterromperAbortQDialogButtonBoxAplicarApplyQDialogButtonBoxCancelarCancelQDialogButtonBox PecharCloseQDialogButtonBox"Pechar sen gardarClose without SavingQDialogButtonBoxDescartarDiscardQDialogButtonBoxNon gardar Don't SaveQDialogButtonBox AxudaHelpQDialogButtonBoxIgnorarIgnoreQDialogButtonBoxNon a to&do N&o to AllQDialogButtonBoxAceptarOKQDialogButtonBox AbrirOpenQDialogButtonBoxReiniciarResetQDialogButtonBox.Repor as predefinicinsRestore DefaultsQDialogButtonBoxTentar de novoRetryQDialogButtonBox GardarSaveQDialogButtonBoxGardar todoSave AllQDialogButtonBoxSi a &todo Yes to &AllQDialogButtonBox(Data de modificacin Date Modified QDirModelTipoKind QDirModelNomeName QDirModel TamaoSize QDirModelTipoType QDirModel PecharClose QDockWidgetAcoplarDock QDockWidgetFlutuanteFloat QDockWidget MenosLessQDoubleSpinBoxMisMoreQDoubleSpinBox&Aceptar&OK QErrorMessage:&Mostrar esta mensaxe de novo&Show this message again QErrorMessage,Mensaxe de depuracin:Debug Message: QErrorMessageErro fatal: Fatal Error: QErrorMessage Aviso:Warning: QErrorMessageJNon foi posbel crear %1 para a sadaCannot create %1 for outputQFileFNon posbel abrir %1 como entradaCannot open %1 for inputQFile@Non foi posbel abrir para sadaCannot open for outputQFileTNon posbel eliminar o ficheiro de orixeCannot remove source fileQFile>O ficheiro de destino xa existeDestination file existsQFile4Fallou a escrita do bloqueFailure to write blockQFileOu non hai dispobel ningn motor de ficheiros ou o motor non admite UnMapExtensionBNo file engine available or engine does not support UnMapExtensionQFileNon se mudar o nome do ficheiro secuencial empregando a copia de bloques0Will not rename sequential file using block copyQFile%1 Non se atopou o cartafol. Verifique que se indicase o nome correcto.K%1 Directory not found. Please verify the correct directory name was given. QFileDialog%1 Non se atopou o ficheiro. Verifique que se indicase o nome de ficheiro correcto.A%1 File not found. Please verify the correct file name was given. QFileDialogBXa existe %1. Desexa substitulo?-%1 already exists. Do you want to replace it? QFileDialog&Escoller&Choose QFileDialog&Borrar&Delete QFileDialog&Novo cartafol &New Folder QFileDialog &Abrir&Open QFileDialog&Mudar o nome&Rename QFileDialog&Gardar&Save QFileDialogz%1 est protexido contra escrita. Desexa anda as borralo?9'%1' is write protected. Do you want to delete it anyway? QFileDialog AtalloAlias QFileDialog,Todos os ficheiros (*) All Files (*) QFileDialog0Todos os ficheiros (*.*)All Files (*.*) QFileDialog:Desexa realmente borrar %1?!Are sure you want to delete '%1'? QFileDialog AtrsBack QFileDialogLTroca para o modo de vista de detallesChange to detail view mode QFileDialogFTroca para o modo de vista en listaChange to list view mode QFileDialogDNon foi posbel borrar o cartafol.Could not delete directory. QFileDialog,Crear un cartafol novoCreate New Folder QFileDialog*Crea un cartafol novoCreate a New Folder QFileDialog"Vista de detalles Detail View QFileDialogCartafoles Directories QFileDialogCartafol: Directory: QFileDialogUnidadeDrive QFileDialogFicheiroFile QFileDialog$&Nome do ficheiro: File &name: QFileDialogCartafol File Folder QFileDialog$Ficheiros do tipo:Files of type: QFileDialog$Buscar un cartafolFind Directory QFileDialogCartafolFolder QFileDialogAdianteForward QFileDialog RecuarGo back QFileDialogAvanzar Go forward QFileDialog2Ir ao directorio superiorGo to the parent directory QFileDialogVista de lista List View QFileDialogProcurar en:Look in: QFileDialogO meu ordenador My Computer QFileDialogNovo cartafol New Folder QFileDialog AbrirOpen QFileDialog"Cartafol superiorParent Directory QFileDialog Lugares recentes Recent Places QFileDialogEliminarRemove QFileDialogGardar comoSave As QFileDialog AtalloShortcut QFileDialogMostrarShow  QFileDialog>Mostrar os ficheiros &acochadosShow &hidden files QFileDialogDescoecidoUnknown QFileDialog %1 GB%1 GBQFileSystemModel %1 KB%1 KBQFileSystemModel %1 MB%1 MBQFileSystemModel %1 TB%1 TBQFileSystemModel%1 byte(s) %1 byte(s)QFileSystemModel%1 bytes%1 bytesQFileSystemModel<b>O nome %1 non pode ser usado.</b><p>Probe con outro nome, mis curto ou sen signos de puntuacin.oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModelOrdenadorComputerQFileSystemModel(Data de modificacin Date ModifiedQFileSystemModel>O nome do ficheiro non vlidoInvalid filenameQFileSystemModelTipoKindQFileSystemModelO meu ordenador My ComputerQFileSystemModelNomeNameQFileSystemModel TamaoSizeQFileSystemModelTipoTypeQFileSystemModelCalqueraAny QFontDatabase rabeArabic QFontDatabaseArmenioArmenian QFontDatabaseBengalBengali QFontDatabase EscuraBlack QFontDatabaseNegriaBold QFontDatabaseCirlicoCyrillic QFontDatabaseDemiDemi QFontDatabaseDemi negria Demi Bold QFontDatabaseDevanagrico Devanagari QFontDatabaseXeorxianoGeorgian QFontDatabase GregoGreek QFontDatabaseGuxaratGujarati QFontDatabaseGurmukhiGurmukhi QFontDatabase HebreoHebrew QFontDatabaseCursivaItalic QFontDatabaseXaponsJapanese QFontDatabaseKannadaKannada QFontDatabase KhmerKhmer QFontDatabaseCoreanoKorean QFontDatabaseLaoLao QFontDatabase LatinoLatin QFontDatabase ClaraLight QFontDatabaseMalayalam Malayalam QFontDatabaseMyanmarMyanmar QFontDatabaseN'KoN'Ko QFontDatabase NormalNormal QFontDatabaseOblicuaOblique QFontDatabase OghamOgham QFontDatabase OrixaOriya QFontDatabase RunasRunic QFontDatabase&Chins simplificadoSimplified Chinese QFontDatabaseSinhalaSinhala QFontDatabaseSmboloSymbol QFontDatabase SirioSyriac QFontDatabase TamilTamil QFontDatabase TeluguTelugu QFontDatabase ThaanaThaana QFontDatabaseTailandsThai QFontDatabaseTibetanoTibetan QFontDatabase$Chins tradicionalTraditional Chinese QFontDatabaseVietnamita Vietnamese QFontDatabaseTipo de &letra&Font QFontDialog&Tamao&Size QFontDialog&Subraiada &Underline QFontDialogEfectosEffects QFontDialog &Estilo de letra Font st&yle QFontDialog MostraSample QFontDialog6Seleccionar o tipo de letra Select Font QFontDialog&Riscada Stri&keout QFontDialog&Sistema de es&critaWr&iting System QFontDialog<Fallou o troco de cartafol: %1Changing directory failed: %1QFtp*Conectado co servidorConnected to hostQFtp0Conectado co servidor %1Connected to host %1QFtpBFallou a conexin co servidor: %1Connecting to host failed: %1QFtp&A conexin pechouseConnection closedQFtpXRexeitouse a conexin para conexin de datos&Connection refused for data connectionQFtpHRexeitouse a conexin co servidor %1Connection refused to host %1QFtp`A conexin co servidor %1 esgotou o tempo lmiteConnection timed out to host %1QFtp4Pechouse a conexin con %1Connection to %1 closedQFtpBFallou a creacin do cartafol: %1Creating directory failed: %1QFtpBFallou a descarga do ficheiro: %1Downloading file failed: %1QFtp,Atopouse o servidor %1 Host %1 foundQFtp6Non se atopou o servidor %1Host %1 not foundQFtp(Atopouse un servidor Host foundQFtp@Fallou a listaxe do cartafol: %1Listing directory failed: %1QFtp4Fallou a autenticacin: %1Login failed: %1QFtpNon conectado Not connectedQFtpHFallou a eliminacin do cartafol: %1Removing directory failed: %1QFtpHFallou a eliminacin do ficheiro: %1Removing file failed: %1QFtp Erro descoecido Unknown errorQFtp>Fallou o envo do ficheiros: %1Uploading file failed: %1QFtpConmutarToggle QGroupBoxBNon se indicou o nome do servidorNo host name given QHostInfo Erro descoecido Unknown error QHostInfo0Non se atopou o servidorHost not foundQHostInfoAgent>O nome do servidor non vlidoInvalid hostnameQHostInfoAgentBNon se indicou o nome do servidorNo host name givenQHostInfoAgent8Tipo de enderezo descoecidoUnknown address typeQHostInfoAgent Erro descoecido Unknown errorQHostInfoAgent*Erro descoecido (%1)Unknown error (%1)QHostInfoAgent4Requrese de autenticacinAuthentication requiredQHttp*Conectado co servidorConnected to hostQHttp0Conectado co servidor %1Connected to host %1QHttp&Pechouse a conexinConnection closedQHttp*Rexeitouse a conexinConnection refusedQHttpbRexeitouse a conexin (ou esgotou o tempo-lmite)!Connection refused (or timed out)QHttp4Pechouse a conexin con %1Connection to %1 closedQHttp"Datos corrompidosData corruptedQHttpTErro ao escribir a resposta no dispositivo Error writing response to deviceQHttp(O pedido HTTP fallouHTTP request failedQHttpPediuse unha conexin HTTPS pero non se compilou con implementacin de SSL:HTTPS connection requested but SSL support not compiled inQHttp,Atopouse o servidor %1 Host %1 foundQHttp6Non se atopou o servidor %1Host %1 not foundQHttp(Atopouse un servidor Host foundQHttp@O servidor require autenticacinHost requires authenticationQHttp@Corpo HTTP en pedazos non vlidoInvalid HTTP chunked bodyQHttpRA cabeceira da resposta HTTP non vlidaInvalid HTTP response headerQHttp\Non se indicou ningn servidor co que conectarNo server set to connect toQHttpFRequrese de autenticacin no proxyProxy authentication requiredQHttp:O proxy require autenticacinProxy requires authenticationQHttp,Interrompeuse o pedidoRequest abortedQHttp6Fallou a negociacin de SSLSSL handshake failedQHttpXO servidor pechou a conexin inesperadamente%Server closed connection unexpectedlyQHttpFMtodo descoecido de autenticacinUnknown authentication methodQHttp Erro descoecido Unknown errorQHttpLEspecificouse un protocolo descoecidoUnknown protocol specifiedQHttp>Lonxitude do contido incorrectaWrong content lengthQHttp4Requrese de autenticacinAuthentication requiredQHttpSocketEngineNNon se recibiu a resposta HTTP do proxy(Did not receive HTTP response from proxyQHttpSocketEngineXAconteceu un erro ao comunicar co proxy HTTP#Error communicating with HTTP proxyQHttpSocketEngineAconteceu un erro ao procesar o pedido de autenticacin do proxy/Error parsing authentication request from proxyQHttpSocketEngineVA conexin co proxy pechouse antes de tempo#Proxy connection closed prematurelyQHttpSocketEngine<Rexeitouse a conexin co proxyProxy connection refusedQHttpSocketEngine0O proxy negou a conexinProxy denied connectionQHttpSocketEnginefA conexin co servidor proxy esgotou o tempo-lmite!Proxy server connection timed outQHttpSocketEngine<Non se atopou o servidor proxyProxy server not foundQHttpSocketEngineJNon foi posbel comezar a transaccinCould not start transaction QIBaseDriverTAconteceu un erro ao abrir a base de datosError opening database QIBaseDriverJNon foi posbel remitir a transaccinUnable to commit transaction QIBaseDriverLNon foi posbel regresar a transaccinUnable to rollback transaction QIBaseDriverTNon foi posbel asignar memoria sentenzaCould not allocate statement QIBaseResult^Non foi posbel describir a sentenza de entrada"Could not describe input statement QIBaseResultHNon foi posbel describir a sentenzaCould not describe statement QIBaseResultTNon foi posbel acadar o seguinte elementoCould not fetch next item QIBaseResult<Non foi posbel atopar o arrayCould not find array QIBaseResultLNon foi posbel obter o array de datosCould not get array data QIBaseResult^Non foi posbel obter a informacin da consultaCould not get query info QIBaseResultZNon foi posbel obter informacin da sentenzaCould not get statement info QIBaseResultFNon foi posbel preparar a sentenzaCould not prepare statement QIBaseResultJNon foi posbel comezar a transaccinCould not start transaction QIBaseResultBNon foi posbel pechar a sentenzaUnable to close statement QIBaseResultJNon foi posbel remitir a transaccinUnable to commit transaction QIBaseResult8Non foi posbel crear o BLOBUnable to create BLOB QIBaseResultFNon foi posbel executar a consultaUnable to execute query QIBaseResult8Non foi posbel abrir o BLOBUnable to open BLOB QIBaseResult4Non foi posbel ler o BLOBUnable to read BLOB QIBaseResult>Non foi posbel escribir o BLOBUnable to write BLOB QIBaseResult>Non queda espazo no dispositivoNo space left on device QIODeviceHNon existe ese ficheiro nin cartafolNo such file or directory QIODevicePermiso negadoPermission denied QIODevice8Demasiados ficheiros abertosToo many open files QIODevice Erro descoecido Unknown error QIODeviceFEPFEP QInputContext:Mtodo de entrada de Mac OS XMac OS X input method QInputContext8Mtodo de entrada FEP de S60S60 FEP input method QInputContext8Mtodo de entrada de WindowsWindows input method QInputContextXIMXIM QInputContext*Mtodo de entrada XIMXIM input method QInputContext&Introduza un valor:Enter a value: QInputDialogJ%1 non un obxecto ELF vlido (%2)"'%1' is an invalid ELF object (%2)QLibrary2%1 non un obxecto ELF'%1' is not an ELF objectQLibrary<%1 non un obxecto ELF (%2)'%1' is not an ELF object (%2)QLibraryTNon foi posbel cargar a biblioteca %1: %2Cannot load library %1: %2QLibrary^Non posbel resolver o smbolo %1 en %2: %3$Cannot resolve symbol "%1" in %2: %3QLibraryZNon foi posbel descargar a biblioteca %1: %2Cannot unload library %1: %2QLibraryErro de concordancia na verificacin dos datos do complemento en %1)Plugin verification data mismatch in '%1'QLibrarydO ficheiro %1 non un complemento vlido de Qt.'The file '%1' is not a valid Qt plugin.QLibraryO complemento %1 utiliza unha biblioteca Qt non compatbel. (%2.%3.%4) [%5]=The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]QLibraryO complemento %1 utiliza unha biblioteca Qt non compatbel (Non posbel mesturar as bibliotecas de depuracin coas publicadas).WThe plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)QLibraryO complemento %1 utiliza unha biblioteca Qt non compatbel. Agardbase a chave de compilacin %2, obtvose a %3OThe plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"QLibraryLNon se atopou a biblioteca compartida.!The shared library was not found.QLibrary Erro descoecido Unknown errorQLibrary&Copiar&Copy QLineEditA&pegar&Paste QLineEdit&Refacer&Redo QLineEdit&Desfacer&Undo QLineEditCor&tarCu&t QLineEdit BorrarDelete QLineEditEscoller todo Select All QLineEditL%1: O enderezo xa est a ser empregado%1: Address in use QLocalServer %1: Erro de nome%1: Name error QLocalServer$%1: Permiso negado%1: Permission denied QLocalServer.%1: Erro descoecido %2%1: Unknown error %2 QLocalServer&%1: acceso denegado%1: Access denied QLocalSocket(%1: Erro na conexin%1: Connection error QLocalSocket2%1: Rexeitouse a conexin%1: Connection refused QLocalSocket8%1: Datagrama grande de mis%1: Datagram too large QLocalSocket&%1: Nome non vlido%1: Invalid name QLocalSocket8%1: Pechouse de xeito remoto%1: Remote closed QLocalSocket8%1: Erro de acceso ao socket%1: Socket access error QLocalSocket`%1: A operacin do socket esgotou o tempo-lmite%1: Socket operation timed out QLocalSocket:%1: Erro do recurso do socket%1: Socket resource error QLocalSocketb%1: Non se permite utilizar a operacin do socket)%1: The socket operation is not supported QLocalSocket(%1: Erro descoecido%1: Unknown error QLocalSocket.%1: Erro descoecido %2%1: Unknown error %2 QLocalSocketJNon foi posbel comezar a transaccinUnable to begin transaction QMYSQLDriverJNon foi posbel remitir a transaccinUnable to commit transaction QMYSQLDriver0Non foi posbel conectarUnable to connect QMYSQLDriverNNon foi posbel abrir a base de datos Unable to open database ' QMYSQLDriverLNon foi posbel regresar a transaccinUnable to rollback transaction QMYSQLDriverHNon foi posbel asociar os outvaluesUnable to bind outvalues QMYSQLResult>Non foi posbel asociar o valorUnable to bind value QMYSQLResultXNon foi posbel executar a seguinte consultaUnable to execute next query QMYSQLResultFNon foi posbel executar a consultaUnable to execute query QMYSQLResultFNon foi posbel executar a sentenzaUnable to execute statement QMYSQLResult>Non foi posbel acadar os datosUnable to fetch data QMYSQLResultFNon foi posbel preparar a sentenzaUnable to prepare statement QMYSQLResultHNon foi posbel reiniciar a sentenzaUnable to reset statement QMYSQLResultVNon foi posbel gardar o seguinte resultadoUnable to store next result QMYSQLResultHNon foi posbel gardar os resultadosUnable to store result QMYSQLResult`Non foi posbel gardar os resultados da sentenza!Unable to store statement results QMYSQLResult(Sen ttulo) (Untitled)QMdiArea%1 - [%2] %1 - [%2] QMdiSubWindow&Pechar&Close QMdiSubWindow &Mover&Move QMdiSubWindow&Restaurar&Restore QMdiSubWindow&Tamao&Size QMdiSubWindow - [%1]- [%1] QMdiSubWindow PecharClose QMdiSubWindow AxudaHelp QMdiSubWindowMa&ximizar Ma&ximize QMdiSubWindowMaximizarMaximize QMdiSubWindowMenMenu QMdiSubWindowMi&nimizar Mi&nimize QMdiSubWindowMinimizarMinimize QMdiSubWindowRestaurarRestore QMdiSubWindow*Restaurar para abaixo Restore Down QMdiSubWindow PregarShade QMdiSubWindowManter &enriba Stay on &Top QMdiSubWindowDespregarUnshade QMdiSubWindow PecharCloseQMenuExecutarExecuteQMenu AbrirOpenQMenuAccinsActionsQMenuBar>Barra de ferramentas da esquinaCorner ToolbarQMenuBar<h3>Acerca de Qt</h3><p>Este programa emprega a versin %1 de Qt.</p>8

About Qt

This program uses Qt version %1.

 QMessageBox \<p>Qt un toolkit de C++ para o desenvolvemento de programas multiplataforma.</p> <p>Qt fornece portabilidade entre MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux e as principais variantes comerciais de Unix cun nico cdigo fonte. Qt tamn est dispobel para dispositivos incrustados como Qt para Embedded Linux e Qt para Windows CE.</p> <p>Qt est dispobel en tres opcins de licenzas diferentes deseadas para adaptarse s necesidades dos diferentes usuarios.</p> </p>Qt distribuda sob o acordo de licenza comercial adecuado para o desenvolvemento de software proprietario ou comercial onde non preciso compartir ningn cdigo fonte con terceiras partes ou que non poden cumprir os termos das licenzas GNU LGPL versin 2.1 nin da versin 3.0.</p> <p>Qt sob a licenza GNU General Public License versin 2.1 apropriada para o desenvolvemento de programas Qt (proprietario ou de fontes abertas) supoendo que poda cumprir cos termos e condicins da licenza GNU GPL versin 2.1.</p> <p>Qt sob a licenza GNU General Public License versin 3.0 apropriada para o desenvolvemento de programas Qt onde desexe empregar tales programas en combinacin con software suxeito aos termos da GNU GPL versin 3.0 ou onde desexe cumprir cos termos da GNU GPL versin 3.0.</p> <p>Consulte <a href="http://qt.digia.com/product/licensing">qt.digia.com/product/licensing</a> para ler un resumo das licenzas de Qt.</p> <p>Copyright (C) 2012 Digia Plc ou as sas subsidiarias.</p> <p>Qt un produto de Digia. Consulte <a href="http://qt.digia.com/">qt.digia.com</a> para mis informacin.</p>

Qt is a C++ toolkit for cross-platform application development.

Qt provides single-source portability across MS Windows, Mac OS X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.

Qt is available under three different licensing options designed to accommodate the needs of our various users.

Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.

Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.

Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.

Please see qt.digia.com/product/licensing for an overview of Qt licensing.

Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).

Qt is a Digia product. See qt.digia.com for more information.

 QMessageBoxAcerca de QtAbout Qt QMessageBox AxudaHelp QMessageBox,Acochar os detalles...Hide Details... QMessageBoxAceptarOK QMessageBox,Mostrar os detalles...Show Details... QMessageBox6Escolla o mtodo de entrada Select IMQMultiInputContextPSelector de mltiplos mtodos de entradaMultiple input method switcherQMultiInputContextPluginSelector entre mtodos de entrada que usa o men contextual dos widgets de textoMMultiple input method switcher that uses the context menu of the text widgetsQMultiInputContextPluginXXa hai outro socket a escoitar o mesmo porto4Another socket is already listening on the same portQNativeSocketEngineTentouse usar un socket IPv6 nunha plataforma sen implementacin de IPv6=Attempt to use IPv6 socket on a platform with no IPv6 supportQNativeSocketEngine0A conexin foi rexeitadaConnection refusedQNativeSocketEngineBA conexin esgotou o tempo-lmiteConnection timed outQNativeSocketEngineRO datagrama grande de mis para envialoDatagram was too large to sendQNativeSocketEngineBNon foi posbel acadar o servidorHost unreachableQNativeSocketEngine<Descritor de socket non vlidoInvalid socket descriptorQNativeSocketEngineErro de rede Network errorQNativeSocketEngineTA operacin de rede esgotou o tempo-lmiteNetwork operation timed outQNativeSocketEngine:Non foi posbel acadar a redeNetwork unreachableQNativeSocketEngine0Operacin nun non socketOperation on non-socketQNativeSocketEngine.Esgotronse os recursosOut of resourcesQNativeSocketEnginePermiso negadoPermission deniedQNativeSocketEngineZNon se permite utilizar ese tipo de protocoloProtocol type not supportedQNativeSocketEngine<O enderezo non est dispobelThe address is not availableQNativeSocketEngine2O enderezo est protexidoThe address is protectedQNativeSocketEngineFO enderezo vinculado xa est en uso#The bound address is already in useQNativeSocketEngine`O tipo de proxy non vlido para esta operacin,The proxy type is invalid for this operationQNativeSocketEngineFO servidor remoto pechou a conexin%The remote host closed the connectionQNativeSocketEnginebNon foi posbel inicializar o socket de broadcast%Unable to initialize broadcast socketQNativeSocketEnginefNon foi posbel inicializar o socket non bloqueante(Unable to initialize non-blocking socketQNativeSocketEngineHNon foi posbel recibir unha mensaxeUnable to receive a messageQNativeSocketEngineFNon foi posbel enviar unha mensaxeUnable to send a messageQNativeSocketEngine0Non foi posbel escribirUnable to writeQNativeSocketEngine Erro descoecido Unknown errorQNativeSocketEngineBOperacin de socket non soportadaUnsupported socket operationQNativeSocketEngine:Aconteceu un erro ao abrir %1Error opening %1QNetworkAccessCacheBackend$URI non vlida: %1Invalid URI: %1QNetworkAccessDataBackendpO servidor remoto pechou prematuramente a conexin en %13Remote host closed the connection prematurely on %1QNetworkAccessDebugPipeBackendJAconteceu un erro de socket en %1: %2Socket error on %1: %2QNetworkAccessDebugPipeBackenddAconteceu un erro de escrita ao escribir en %1: %2Write error writing to %1: %2QNetworkAccessDebugPipeBackend\Non posbel abrir %1: A ruta un directorio#Cannot open %1: Path is a directoryQNetworkAccessFileBackendBAconteceu un erro ao abrir %1: %2Error opening %1: %2QNetworkAccessFileBackendDAconteceu un erro ao ler en %1: %2Read error reading from %1: %2QNetworkAccessFileBackendVPedido de abertura do ficheiro non local %1%Request for opening non-local file %1QNetworkAccessFileBackenddAconteceu un erro de escrita ao escribir en %1: %2Write error writing to %1: %2QNetworkAccessFileBackendNNon posbel abrir %1: un directorioCannot open %1: is a directoryQNetworkAccessFtpBackendJAconteceu un erro ao descargar %1: %2Error while downloading %1: %2QNetworkAccessFtpBackendDAconteceu un erro ao enviar %1: %2Error while uploading %1: %2QNetworkAccessFtpBackendNFallou o acceso a %1: debe autenticarse0Logging in to %1 failed: authentication requiredQNetworkAccessFtpBackendFNon se atopou ningn proxy axeitadoNo suitable proxy foundQNetworkAccessFtpBackendFNon se atopou ningn proxy axeitadoNo suitable proxy foundQNetworkAccessHttpBackendBO acceso rede est desactivado.Network access is disabled.QNetworkAccessManagervAconteceu un erro ao descargar %1, o servidor respondeu: %2)Error downloading %1 - server replied: %2 QNetworkReply.Erro da sesin de rede.Network session error. QNetworkReply<Non se coece o protocolo %1Protocol "%1" is unknown QNetworkReply.Fallo temporal da rede.Temporary network failure. QNetworkReplyBfallou o inicio da infraestruturabackend start error. QNetworkReply,Cancelouse a operacinOperation canceledQNetworkReplyImpl:A configuracin non vlida.Invalid configuration.QNetworkSession&Erro da itinerancia Roaming errorQNetworkSessionPrivateImplZA itinerancia interrompeuse ou non posbel.'Roaming was aborted or is not possible.QNetworkSessionPrivateImplfA sesin interrompeuse polo usuario ou polo sistema!Session aborted by user or systemQNetworkSessionPrivateImpldO sistema non permite utilizar a operacin pedida.7The requested operation is not supported by the system.QNetworkSessionPrivateImplhA sesin interrompeuse polo usuario ou polo sistema..The session was aborted by the user or system.QNetworkSessionPrivateImpldA configuracin especificada non se pode empregar.+The specified configuration cannot be used.QNetworkSessionPrivateImpl*Erro non identificadoUnidentified ErrorQNetworkSessionPrivateImpl6Erro descoecido da sesin.Unknown session error.QNetworkSessionPrivateImplJNon foi posbel comezar a transaccinUnable to begin transaction QOCIDriverJNon foi posbel remitir a transaccinUnable to commit transaction QOCIDriver6Non foi posbel inicializarUnable to initialize QOCIDriver:Non foi posbel identificarseUnable to logon QOCIDriverLNon foi posbel regresar a transaccinUnable to rollback transaction QOCIDriver`Non foi posbel reservar memoria para a sentenzaUnable to alloc statement QOCIResultlNon foi posbel asociar a columna para executar o lote'Unable to bind column for batch execute QOCIResult>Non foi posbel asociar o valorUnable to bind value QOCIResultVNon foi posbel executar a sentenza en lote!Unable to execute batch statement QOCIResultFNon foi posbel executar a sentenzaUnable to execute statement QOCIResultPNon foi posbel obter o tipo da sentenzaUnable to get statement type QOCIResultDNon foi posbel ir para o seguinteUnable to goto next QOCIResultFNon foi posbel preparar a sentenzaUnable to prepare statement QOCIResultJNon foi posbel remitir a transaccinUnable to commit transaction QODBCDriver0Non foi posbel conectarUnable to connect QODBCDriverNon foi posbel conectar xa que o controlador non permite utilizar todas as funcionalidades requiridasEUnable to connect - Driver doesn't support all functionality required QODBCDriver^Non foi posbel desactivar a entrega automticaUnable to disable autocommit QODBCDriverXNon foi posbel activar a entrega automticaUnable to enable autocommit QODBCDriverLNon foi posbel regresar a transaccinUnable to rollback transaction QODBCDriverQODBCResult::reset: Non foi posbel estabelecer SQL_CURSOR_STATIC como atributo da sentenza. Comprobe a configuracin do controlador ODBCyQODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResultDNon foi posbel asociar a varibelUnable to bind variable QODBCResultFNon foi posbel executar a sentenzaUnable to execute statement QODBCResult,Non foi posbel acadarUnable to fetch QODBCResultBNon foi posbel acadar o primeiroUnable to fetch first QODBCResult>Non foi posbel acadar o ltimoUnable to fetch last QODBCResultBNon foi posbel acadar o seguinteUnable to fetch next QODBCResultBNon foi posbel acadar o anteriorUnable to fetch previous QODBCResultFNon foi posbel preparar a sentenzaUnable to prepare statement QODBCResultj%1 duplica un nome de rol anterior e desactivarase.:"%1" duplicates a previous role name and will be disabled.QObject0Non foi posbel ler o pCould not read footerQObjectJNon foi posbel ler os datos da imaxeCould not read image dataQObjectTNon foi posbel buscar no p de imaxe lido#Could not seek to image read footerQObject0Non se atopou o servidorHost not foundQObject@Profundidade da imaxe non vlidaImage depth not validQObjectHFallou a lectura da mHeader da imaxeImage mHeader read failedQObject^Tipo de imaxe non admitido (non TrueVision 2.0)-Image type (non-TrueVision 2.0) not supportedQObject4Tipo de imaxe non admitidoImage type not supportedQObject4Servidor de son PulseAudioPulseAudio Sound ServerQObjectrFallou a busca de ficheiro ou dispositivo para ler imaxes&Seek file/device for image read failedQObjectNon estn implementados os dispositivos secuenciais (p.ex. socket) para ler imaxes:Sequential device (eg socket) for image read not supportedQObject0pescuda non vlida: %1invalid query: "%1"QObjectNomeNameQPPDOptionsModel ValorValueQPPDOptionsModelJNon foi posbel comezar a transaccinCould not begin transaction QPSQLDriverJNon foi posbel remitir a transaccinCould not commit transaction QPSQLDriverLNon foi posbel regresar a transaccinCould not rollback transaction QPSQLDriver0Non foi posbel conectarUnable to connect QPSQLDriver8Non foi posbel subscribirseUnable to subscribe QPSQLDriverHNon foi posbel anular a subscricinUnable to unsubscribe QPSQLDriver@Non foi posbel crear a consultaUnable to create query QPSQLResultFNon foi posbel preparar a sentenzaUnable to prepare statement QPSQLResult Centmetros (cm)Centimeters (cm)QPageSetupWidgetFormularioFormQPageSetupWidgetAltura:Height:QPageSetupWidgetPolgadas (pol) Inches (in)QPageSetupWidgetApaisado LandscapeQPageSetupWidget MarxesMarginsQPageSetupWidgetMilmetros (mm)Millimeters (mm)QPageSetupWidgetOrientacin OrientationQPageSetupWidget"Tamao da pxina: Page size:QPageSetupWidget PapelPaperQPageSetupWidgetFonte do papel: Paper source:QPageSetupWidgetPuntos (pt) Points (pt)QPageSetupWidgetRetratoPortraitQPageSetupWidget$Apaisado invertidoReverse landscapeQPageSetupWidget"Retrato invertidoReverse portraitQPageSetupWidgetLargura:Width:QPageSetupWidgetmarxe inferior bottom marginQPageSetupWidgetmarxe esquerda left marginQPageSetupWidgetmarxe dereita right marginQPageSetupWidgetmarxe superior top marginQPageSetupWidget8O complemento non se cargou.The plugin was not loaded. QPluginLoader Erro descoecido Unknown error QPluginLoaderF%1 xa existe. Desexa sobrescribilo?/%1 already exists. Do you want to overwrite it? QPrintDialogj%1 un cartafol. Escolla outro nome para o ficheiro.7%1 is a directory. Please choose a different file name. QPrintDialog&Opcins << &Options << QPrintDialog&Opcins >> &Options >> QPrintDialog&Imprimir&Print QPrintDialog<<qt>Desexa sobrescribilo?</qt>%Do you want to overwrite it? QPrintDialogA0A0 QPrintDialog$A0 (841 x 1189 mm)A0 (841 x 1189 mm) QPrintDialogA1A1 QPrintDialog"A1 (594 x 841 mm)A1 (594 x 841 mm) QPrintDialogA2A2 QPrintDialog"A2 (420 x 594 mm)A2 (420 x 594 mm) QPrintDialogA3A3 QPrintDialog"A3 (297 x 420 mm)A3 (297 x 420 mm) QPrintDialogA4A4 QPrintDialogNA4 (210 x 297 mm, 8,26 x 11,7 polgadas)%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialogA5A5 QPrintDialog"A5 (148 x 210 mm)A5 (148 x 210 mm) QPrintDialogA6A6 QPrintDialog"A6 (105 x 148 mm)A6 (105 x 148 mm) QPrintDialogA7A7 QPrintDialog A7 (74 x 105 mm)A7 (74 x 105 mm) QPrintDialogA8A8 QPrintDialogA8 (52 x 74 mm)A8 (52 x 74 mm) QPrintDialogA9A9 QPrintDialogA9 (37 x 52 mm)A9 (37 x 52 mm) QPrintDialogAlcumes: %1 Aliases: %1 QPrintDialogB0B0 QPrintDialog&B0 (1000 x 1414 mm)B0 (1000 x 1414 mm) QPrintDialogB1B1 QPrintDialog$B1 (707 x 1000 mm)B1 (707 x 1000 mm) QPrintDialogB10B10 QPrintDialog B10 (31 x 44 mm)B10 (31 x 44 mm) QPrintDialogB2B2 QPrintDialog"B2 (500 x 707 mm)B2 (500 x 707 mm) QPrintDialogB3B3 QPrintDialog"B3 (353 x 500 mm)B3 (353 x 500 mm) QPrintDialogB4B4 QPrintDialog"B4 (250 x 353 mm)B4 (250 x 353 mm) QPrintDialogB5B5 QPrintDialogNB5 (176 x 250 mm, 6,93 x 9,84 polgadas)%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialogB6B6 QPrintDialog"B6 (125 x 176 mm)B6 (125 x 176 mm) QPrintDialogB7B7 QPrintDialog B7 (88 x 125 mm)B7 (88 x 125 mm) QPrintDialogB8B8 QPrintDialogB8 (62 x 88 mm)B8 (62 x 88 mm) QPrintDialogB9B9 QPrintDialogB9 (44 x 62 mm)B9 (44 x 62 mm) QPrintDialogC5EC5E QPrintDialog$C5E (163 x 229 mm)C5E (163 x 229 mm) QPrintDialogPersonalizadoCustom QPrintDialogDLEDLE QPrintDialog$DLE (110 x 220 mm)DLE (110 x 220 mm) QPrintDialogExecutive Executive QPrintDialogVExecutive (7,5 x 10 polgadas, 191 x 254 mm))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialogNon se pode escribir no ficheiro %1. Escolla outro nome de ficheiro.=File %1 is not writable. Please choose a different file name. QPrintDialog(O ficheiro xa existe File exists QPrintDialog FolioFolio QPrintDialog(Folio (210 x 330 mm)Folio (210 x 330 mm) QPrintDialog LedgerLedger QPrintDialog*Ledger (432 x 279 mm)Ledger (432 x 279 mm) QPrintDialog LegalLegal QPrintDialogNLegal (8,5 x 14 polgadas, 216 x 356 mm)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialog CartaLetter QPrintDialogNCarta (8,5 x 11 polgadas, 216 x 279 mm)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialogFicheiro local Local file QPrintDialogAceptarOK QPrintDialogImprimirPrint QPrintDialog0Imprimir nun ficheiro...Print To File ... QPrintDialogImprimir todas Print all QPrintDialog0Imprimir a pxina actualPrint current page QPrintDialog,Intervalo de impresin Print range QPrintDialog(Imprimir a seleccinPrint selection QPrintDialog6Imprimir nun ficheiro (PDF)Print to File (PDF) QPrintDialogDImprimir nun ficheiro (Postscript)Print to File (Postscript) QPrintDialogTabloidTabloid QPrintDialog.Tabloide (279 x 432 mm)Tabloid (279 x 432 mm) QPrintDialogjO valor de non pode ser maior do que o valor at.7The 'From' value cannot be greater than the 'To' value. QPrintDialog.Sobre US Common nm. 10US Common #10 Envelope QPrintDialogDSobre US Common #10 (105 x 241 mm)%US Common #10 Envelope (105 x 241 mm) QPrintDialog.Escribir no ficheiro %1 Write %1 file QPrintDialog(conectado localmentelocally connected QPrintDialogdescoecidounknown QPrintDialog%1%%1%QPrintPreviewDialog PecharCloseQPrintPreviewDialogExportar a PDF Export to PDFQPrintPreviewDialog*Exportar a PostScriptExport to PostScriptQPrintPreviewDialogPrimeira pxina First pageQPrintPreviewDialog Axustar pxinaFit pageQPrintPreviewDialog"Axustar largura Fit widthQPrintPreviewDialogApaisado LandscapeQPrintPreviewDialogltima pxina Last pageQPrintPreviewDialogSeguinte pxina Next pageQPrintPreviewDialog.Configuracin da pxina Page SetupQPrintPreviewDialog.Configuracin da pxina Page setupQPrintPreviewDialogRetratoPortraitQPrintPreviewDialogPxina anterior Previous pageQPrintPreviewDialogImprimirPrintQPrintPreviewDialog.Vista previa do impreso Print PreviewQPrintPreviewDialog4Mostrar as pxinas opostasShow facing pagesQPrintPreviewDialogJMostrar un resumo de todas as pxinasShow overview of all pagesQPrintPreviewDialog,Mostrar unha s pxinaShow single pageQPrintPreviewDialogAmpliarZoom inQPrintPreviewDialogReducirZoom outQPrintPreviewDialogAvanzadoAdvancedQPrintPropertiesWidgetFormularioFormQPrintPropertiesWidget PxinaPageQPrintPropertiesWidget XuntarCollateQPrintSettingsOutputCorColorQPrintSettingsOutputModo de cor Color ModeQPrintSettingsOutput CopiasCopiesQPrintSettingsOutputCopias:Copies:QPrintSettingsOutputPxina actual Current PageQPrintSettingsOutput4Impresin polas das carasDuplex PrintingQPrintSettingsOutputFormularioFormQPrintSettingsOutput Escala de grises GrayscaleQPrintSettingsOutputLado longo Long sideQPrintSettingsOutputnon empregarNoneQPrintSettingsOutputOpcinsOptionsQPrintSettingsOutput,Configuracin da sadaOutput SettingsQPrintSettingsOutputAs pxinas da Pages fromQPrintSettingsOutputImprimir todas Print allQPrintSettingsOutput,Intervalo de impresin Print rangeQPrintSettingsOutputInverterReverseQPrintSettingsOutputSeleccin SelectionQPrintSettingsOutputLado curto Short sideQPrintSettingsOutput at atoQPrintSettingsOutput &Nome:&Name: QPrintWidget...... QPrintWidgetFormularioForm QPrintWidget Lugar: Location: QPrintWidget&Ficheiro de &sada: Output &file: QPrintWidgetP&ropiedades P&roperties QPrintWidgetVista previaPreview QPrintWidgetImpresoraPrinter QPrintWidget Tipo:Type: QPrintWidgetvNon foi posbel abrir a redireccin da entrada para lectura,Could not open input redirection for readingQProcessxNon foi posbel abrir a redireccin da entrada para escribir-Could not open output redirection for writingQProcessFAconteceu un erro ao ler do procesoError reading from processQProcessPAconteceu un erro ao escribir no procesoError writing to processQProcess6Non definiu programa ningnNo program definedQProcessDO proceso pechouse inesperadamenteProcess crashedQProcess:Fallou a carga do proceso: %1Process failed to start: %1QProcessdA operacin de procesamento esgotou o tempo-lmiteProcess operation timed outQProcessFErro do recurso (fallou o fork): %1!Resource error (fork failure): %1QProcessCancelarCancelQProgressDialog AbrirOpen QPushButton MarcarCheck QRadioButtonHsintaxe incorrecta para a clase charbad char class syntaxQRegExpZsintaxe incorrecta para a procura cara diantebad lookahead syntaxQRegExpHsintaxe incorrecta para a repeticinbad repetition syntaxQRegExpJsase unha funcionalidade desactivadadisabled feature usedQRegExp(categora non vlidainvalid categoryQRegExp(intervalo non vlidoinvalid intervalQRegExp,valor octal non vlidoinvalid octal valueQRegExpnon estn implementadas as buscas por detrs, consulte QTBUG-2371)lookbehinds not supported, see QTBUG-2371QRegExp4acadouse un lmite internomet internal limitQRegExp8falta o delimitador esquerdomissing left delimQRegExp2non aconteceu ningn errono error occurredQRegExp final inesperadounexpected endQRegExpTAconteceu un erro ao abrir a base de datosError opening databaseQSQLite2DriverJNon foi posbel comezar a transaccinUnable to begin transactionQSQLite2DriverJNon foi posbel remitir a transaccinUnable to commit transactionQSQLite2DriverLNon foi posbel regresar a transaccinUnable to rollback transactionQSQLite2DriverFNon foi posbel executar a sentenzaUnable to execute statementQSQLite2ResultHNon foi posbel acadar os resultadosUnable to fetch resultsQSQLite2ResultVAconteceu un erro ao pechar a base de datosError closing database QSQLiteDriverTAconteceu un erro ao abrir a base de datosError opening database QSQLiteDriverJNon foi posbel comezar a transaccinUnable to begin transaction QSQLiteDriverJNon foi posbel remitir a transaccinUnable to commit transaction QSQLiteDriverLNon foi posbel regresar a transaccinUnable to rollback transaction QSQLiteDriver Non hai consultaNo query QSQLiteResultFO nmero de parmetros non coincideParameter count mismatch QSQLiteResultJNon foi posbel asociar os parmetrosUnable to bind parameters QSQLiteResultFNon foi posbel executar a sentenzaUnable to execute statement QSQLiteResult:Non foi posbel acadar a filaUnable to fetch row QSQLiteResultHNon foi posbel reiniciar a sentenzaUnable to reset statement QSQLiteResultCondicin ConditionQScriptBreakpointsModel*Cantidade de alcances Hit-countQScriptBreakpointsModelIDIDQScriptBreakpointsModel&Ignorar a cantidade Ignore-countQScriptBreakpointsModel LugarLocationQScriptBreakpointsModelAccin nica Single-shotQScriptBreakpointsModel BorrarDeleteQScriptBreakpointsWidgetNovoNewQScriptBreakpointsWidget(Buscar no &script...&Find in Script...QScriptDebugger Limpar a consola Clear ConsoleQScriptDebugger8Limpar a sada de depuracinClear Debug OutputQScriptDebugger4Limpar o rexistro de errosClear Error LogQScriptDebuggerContinuarContinueQScriptDebugger Ctrl+FCtrl+FQScriptDebuggerCtrl+F10Ctrl+F10QScriptDebugger Ctrl+GCtrl+GQScriptDebuggerDepurarDebugQScriptDebuggerF10F10QScriptDebuggerF11F11QScriptDebuggerF3F3QScriptDebuggerF5F5QScriptDebuggerF9F9QScriptDebugger$Buscar o &seguinte Find &NextQScriptDebugger$Buscar o &anteriorFind &PreviousQScriptDebuggerIr para a lia Go to LineQScriptDebuggerInterromper InterruptQScriptDebugger Lia:Line:QScriptDebugger*Executar at o cursor Run to CursorQScriptDebugger4Executar at o novo scriptRun to New ScriptQScriptDebuggerMais.+F11 Shift+F11QScriptDebuggerMaisc.+F3Shift+F3QScriptDebuggerMais.+F5Shift+F5QScriptDebugger Entrar Step IntoQScriptDebuggerSarStep OutQScriptDebuggerPasar por riba Step OverQScriptDebugger4Conmutar o punto de paradaToggle BreakpointQScriptDebugger<img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;A busca retornouJ Search wrappedQScriptDebuggerCodeFinderWidget0Distinguir as maisculasCase SensitiveQScriptDebuggerCodeFinderWidget PecharCloseQScriptDebuggerCodeFinderWidgetSeguinteNextQScriptDebuggerCodeFinderWidgetAnteriorPreviousQScriptDebuggerCodeFinderWidget$Palabras completas Whole wordsQScriptDebuggerCodeFinderWidgetNomeNameQScriptDebuggerLocalsModel ValorValueQScriptDebuggerLocalsModel NivelLevelQScriptDebuggerStackModel LugarLocationQScriptDebuggerStackModelNomeNameQScriptDebuggerStackModel:Condicin do punto de parada:Breakpoint Condition: QScriptEdit8Desactivar o punto de paradaDisable Breakpoint QScriptEdit2Activar o punto de paradaEnable Breakpoint QScriptEdit4Conmutar o punto de paradaToggle Breakpoint QScriptEdit Puntos de parada BreakpointsQScriptEngineDebuggerConsolaConsoleQScriptEngineDebugger&Sada de depuracin Debug OutputQScriptEngineDebugger"Rexistro de erros Error LogQScriptEngineDebugger Scripts cargadosLoaded ScriptsQScriptEngineDebugger LocaisLocalsQScriptEngineDebugger,Depurador de Qt ScriptQt Script DebuggerQScriptEngineDebugger BuscarSearchQScriptEngineDebuggerPilaStackQScriptEngineDebugger VistaViewQScriptEngineDebugger PecharCloseQScriptNewBreakpointWidget FondoBottom QScrollBarBorde esquerdo Left edge QScrollBarAliar en baixo Line down QScrollBarAliar en ribaLine up QScrollBarPxina en baixo Page down QScrollBar"Pxina esquerda Page left QScrollBar Pxina dereita Page right QScrollBarPxina en ribaPage up QScrollBarPosicinPosition QScrollBarBorde dereito Right edge QScrollBar*Desprazar cara abaixo Scroll down QScrollBar&Desprazar cara aqu Scroll here QScrollBar2Desprazar cara esquerda Scroll left QScrollBar0Desprazar cara dereita Scroll right QScrollBar*Desprazar cara arriba Scroll up QScrollBarCumeTop QScrollBarT%1: non existe o ficheiro de chave de UNIX%1: UNIX key file doesn't exist QSharedMemory%1: xa existe%1: already exists QSharedMemory&%1: nome non vlido %1: bad name QSharedMemoryD%1: o tamao a crear menor que 0%1: create size is less then 0 QSharedMemory%1: non existe%1: doesn't exist QSharedMemory%1: non existe%1: doesn't exists QSharedMemory%1: fallou ftok%1: ftok failed QSharedMemory*%1: tamao non vlido%1: invalid size QSharedMemory0%1: a chave est baleira%1: key is empty QSharedMemory%1: non anexado%1: not attached QSharedMemory.%1: esgotou os recursos%1: out of resources QSharedMemory*%1: negouse o permiso%1: permission denied QSharedMemory>%1: fallou o tamao da consulta%1: size query failed QSharedMemory^%1: restricins de tamao impostas polo sistema$%1: system-imposed size restrictions QSharedMemory8%1: non foi posbel bloquear%1: unable to lock QSharedMemoryB%1: non foi posbel crear a chave%1: unable to make key QSharedMemoryb%1: non foi posbel modificar a tecla por bloqueo%1: unable to set key on lock QSharedMemory>%1: non foi posbel desbloquear%1: unable to unlock QSharedMemory.%1: erro descoecido %2%1: unknown error %2 QSharedMemory++ QShortcut*Engadir aos favoritos Add Favorite QShortcut Axustar o brilloAdjust Brightness QShortcutAltAlt QShortcut(Programa da esquerdaApplication Left QShortcut&Programa da dereitaApplication Right QShortcut0Repetir as pistas de sonAudio Cycle Track QShortcutAvanzar o son Audio Forward QShortcut8Reproducin aleatoria de sonAudio Random Play QShortcutRepetir o son Audio Repeat QShortcutRebobinar o son Audio Rewind QShortcutAusenteAway QShortcut AtrsBack QShortcutVoltar atrs Back Forward QShortcut Borrar Backspace QShortcutTab atrsBacktab QShortcut*Potenciador de graves Bass Boost QShortcut Baixar os graves Bass Down QShortcutSubir os gravesBass Up QShortcutBateraBattery QShortcutBluetooth Bluetooth QShortcut LibroBook QShortcutNavegadorBrowser QShortcutCDCD QShortcutCalculadora Calculator QShortcut ChamarCall QShortcut*Focalizador da cmara Camera Focus QShortcut(Disparador da cmaraCamera Shutter QShortcutBloq Maius Caps Lock QShortcutBloq MaisCapsLock QShortcut LimparClear QShortcut Limpar o collido Clear Grab QShortcut PecharClose QShortcut"Entrada de cdigo Code input QShortcutComunidade Community QShortcutContexto1Context1 QShortcutContexto2Context2 QShortcutContexto3Context3 QShortcutContexto4Context4 QShortcut CopiarCopy QShortcutCtrlCtrl QShortcut CortarCut QShortcutDOSDOS QShortcutSuprDel QShortcut BorrarDelete QShortcutPantallaDisplay QShortcutDocumentos Documents QShortcut BaixarDown QShortcutCambiar a Eisu Eisu Shift QShortcutConmutar Eisu Eisu toggle QShortcutExpulsarEject QShortcutFinEnd QShortcut IntroEnter QShortcutEscEsc QShortcut EscapeEscape QShortcutF%1F%1 QShortcutFavoritos Favorites QShortcutFinanzasFinance QShortcutInverterFlip QShortcutAdianteForward QShortcutXogoGame QShortcutIr paraGo QShortcut HangulHangul QShortcutHangul Banja Hangul Banja QShortcutHangul fin Hangul End QShortcutHangul Hanja Hangul Hanja QShortcutHangul Jamo Hangul Jamo QShortcutHanjul Jeonja Hangul Jeonja QShortcut Halgul PostHanjaHangul PostHanja QShortcutHangul PreHanjaHangul PreHanja QShortcutHangul Romaja Hangul Romaja QShortcutHangul especialHangul Special QShortcutHangul inicio Hangul Start QShortcut ColgarHangup QShortcutHankakuHankaku QShortcut AxudaHelp QShortcut HenkanHenkan QShortcutHibernar Hibernate QShortcutHiraganaHiragana QShortcut Hirgana KatakanaHiragana Katakana QShortcutHistorialHistory QShortcut InicioHome QShortcutCasa oficina Home Office QShortcut Pxina de inicio Home Page QShortcut Ligazns quentes Hot Links QShortcutInsIns QShortcutInserirInsert QShortcut Bloquear os Kana Kana Lock QShortcutCambiar a Kana Kana Shift QShortcut KanjiKanji QShortcutKatakanaKatakana QShortcut4Baixar o brillo do tecladoKeyboard Brightness Down QShortcut2Subir o brillo do tecladoKeyboard Brightness Up QShortcut>Acender/Apagar a luz do tecladoKeyboard Light On/Off QShortcutMen do teclado Keyboard Menu QShortcutRechamarLast Number Redial QShortcutIniciar (0) Launch (0) QShortcutIniciar (1) Launch (1) QShortcutIniciar (2) Launch (2) QShortcutIniciar (3) Launch (3) QShortcutIniciar (4) Launch (4) QShortcutIniciar (5) Launch (5) QShortcutIniciar (6) Launch (6) QShortcutIniciar (7) Launch (7) QShortcutIniciar (8) Launch (8) QShortcutIniciar (9) Launch (9) QShortcutIniciar (A) Launch (A) QShortcutIniciar (B) Launch (B) QShortcutIniciar (C) Launch (C) QShortcutIniciar (D) Launch (D) QShortcutIniciar (E) Launch (E) QShortcutIniciar (F) Launch (F) QShortcutAbrir o correo Launch Mail QShortcut$Iniciar Multimedia Launch Media QShortcutEsquerdaLeft QShortcutPunto de luz LightBulb QShortcutSarLogoff QShortcut"Reenvo de correo Mail Forward QShortcut TendaMarket QShortcut MassyoMassyo QShortcut&Multimedia Seguinte Media Next QShortcut Multimedia Pausa Media Pause QShortcut*Multimedia Reproducir Media Play QShortcut&Multimedia AnteriorMedia Previous QShortcut"Multimedia Gravar Media Record QShortcut Multimedia Parar Media Stop QShortcutReuninMeeting QShortcutMenMenu QShortcutMen PBMenu PB QShortcutMensaxera Messenger QShortcutMetaMeta QShortcut4Baixar o brillo do monitorMonitor Brightness Down QShortcut2Subir o brillo do monitorMonitor Brightness Up QShortcutMuhenkanMuhenkan QShortcut(Candidatos mltiplosMultiple Candidate QShortcut MsicaMusic QShortcutOs meus sitiosMy Sites QShortcut NovasNews QShortcutNonNo QShortcutBloq NumNum Lock QShortcutBloq. NumNumLock QShortcut Bloqueo numrico Number Lock QShortcutAbrir un URLOpen URL QShortcut OpcinOption QShortcutPxina Abaixo Page Down QShortcutPxina ArribaPage Up QShortcut ApegarPaste QShortcut PausaPause QShortcut AvPxPgDown QShortcut RePxPgUp QShortcutTelfonoPhone QShortcut ImaxesPictures QShortcut Apagar Power Off QShortcut$Candidato anteriorPrevious Candidate QShortcutImprimirPrint QShortcutImpr Pant Print Screen QShortcutActualizarRefresh QShortcutCargar de novoReload QShortcutResponderReply QShortcut IntroReturn QShortcutDereitaRight QShortcut RomajiRomaji QShortcut Xirar as xanelasRotate Windows QShortcutXiro KB Rotation KB QShortcutXiro PB Rotation PB QShortcut GardarSave QShortcut*Protector de pantalla Screensaver QShortcut0Bloqueo de desprazamento Scroll Lock QShortcutBloq Despr ScrollLock QShortcut BuscarSearch QShortcutEscollerSelect QShortcut EnviarSend QShortcut MaiscShift QShortcut MercarShop QShortcut DurmirSleep QShortcut EspazoSpace QShortcut*Corrector ortogrfico Spellchecker QShortcut$Dividir a pantalla Split Screen QShortcut Folla de clculo Spreadsheet QShortcut EsperaStandby QShortcut DeterStop QShortcutSubttuloSubtitle QShortcut AxudaSupport QShortcutSuspenderSuspend QShortcutPet.SisSysReq QShortcut"Pedido ao sistemaSystem Request QShortcutTabTab QShortcut Panel de tarefas Task Panel QShortcutTerminalTerminal QShortcut TempoTime QShortcut,Conmutar chamar/colgarToggle Call/Hangup QShortcut8Multimedia Reproducir/PausarToggle Media Play/Pause QShortcutUtensiliosTools QShortcut*Men na parte de ribaTop Menu QShortcutTourokuTouroku QShortcut ViaxesTravel QShortcutTreble Baixar Treble Down QShortcutTreble Subir Treble Up QShortcutBanda moi largaUltra Wide Band QShortcut SubirUp QShortcut VdeoVideo QShortcut VistaView QShortcut&Chamar mediante voz Voice Dial QShortcutBaixar o volume Volume Down QShortcutSilenciar Volume Mute QShortcutSubir o volume Volume Up QShortcutWWWWWW QShortcutEspertarWake Up QShortcutCmara webWebCam QShortcutSen fosWireless QShortcut(Procesador de textosWord Processor QShortcutXFerXFer QShortcutSiYes QShortcutZenkakuZenkaku QShortcutZenkaku HankakuZenkaku Hankaku QShortcutAmpliarZoom In QShortcutReducirZoom Out QShortcut iTouchiTouch QShortcutPxina en baixo Page downQSlider"Pxina esquerda Page leftQSlider Pxina dereita Page rightQSliderPxina en ribaPage upQSliderPosicinPositionQSlider:Tipo de enderezo non admitidoAddress type not supportedQSocks5SocketEngineTO servidor SOCKSv5 non permitiu a conexin(Connection not allowed by SOCKSv5 serverQSocks5SocketEngineVA conexin co proxy pechouse antes de tempo&Connection to proxy closed prematurelyQSocks5SocketEngineBA conexin co proxy foi rexeitadaConnection to proxy refusedQSocks5SocketEngineTA conexin co proxy esgotou o tempo-lmiteConnection to proxy timed outQSocks5SocketEngine>Fallo xeral do servidor SOCKSv5General SOCKSv5 server failureQSocks5SocketEngineTA operacin de rede esgotou o tempo-lmiteNetwork operation timed outQSocks5SocketEngine>Fallou a autenticacin co proxyProxy authentication failedQSocks5SocketEngineFFallou a autenticacin no proxy: %1Proxy authentication failed: %1QSocks5SocketEngine<Non se atopou o servidor proxyProxy host not foundQSocks5SocketEngineBErro do protocolo SOCKS versin 5SOCKS version 5 protocol errorQSocks5SocketEngineLNon se permite utilizar a orde SOCKSv5SOCKSv5 command not supportedQSocks5SocketEngineEsgotouse o TTL TTL expiredQSocks5SocketEnginedCdigo de erro descoecido (0x%1) do proxy SOCKSv5%Unknown SOCKSv5 proxy error code 0x%1QSocks5SocketEngineCancelarCancelQSoftKeyManager FeitoDoneQSoftKeyManagerSarExitQSoftKeyManagerAceptarOKQSoftKeyManagerOpcinsOptionsQSoftKeyManagerEscollerSelectQSoftKeyManager MenosLessQSpinBoxMisMoreQSpinBoxCancelarCancelQSqlLDesexa cancelar as sas modificacins?Cancel your edits?QSqlConfirmarConfirmQSql BorrarDeleteQSql8Desexa borrar este rexistro?Delete this record?QSqlInserirInsertQSqlNonNoQSql>Desexa gardar as modificacins? Save edits?QSqlActualizarUpdateQSqlSiYesQSqlfNon posbel fornecer un certificado sen chave, %1,Cannot provide a certificate with no key, %1 QSslSocket\Aconteceu un erro ao crear o contexto SSL (%1)Error creating SSL context (%1) QSslSocketVAconteceu un erro ao crear a sesin SSL, %1Error creating SSL session, %1 QSslSocketVAconteceu un erro ao crear a sesin SSL: %1Error creating SSL session: %1 QSslSocket^Aconteceu un erro durante a negociacin SSL: %1Error during SSL handshake: %1 QSslSocketfAconteceu un erro ao cargar o certificado local, %1#Error loading local certificate, %1 QSslSocket^Aconteceu un erro ao cargar a chave privada, %1Error loading private key, %1 QSslSocket8Aconteceu un erro ao ler: %1Error while reading: %1 QSslSocketlA lista de cifras ou non vlida ou est baleira (%1)!Invalid or empty cipher list (%1) QSslSocketXNon foi posbel verificar ningn certificado!No certificates could be verified QSslSocketSen errosNo error QSslSocketLUn dos certificados da CA non vlido%One of the CA certificates is invalid QSslSocketbA chave privada non certifica a chave pblica, %1+Private key does not certify public key, %1 QSslSocketvSuperouse a lonxitude da ruta do parmetro basicConstraintsEsta plataforma non admite IPv6#This platform does not support IPv6 QUdpSocketRefacerDefault text for redo actionRedo QUndoGroupRefacer %1Redo %1 QUndoGroupDesfacerDefault text for undo actionUndo QUndoGroupDesfacer %1Undo %1 QUndoGroup<baleiro> QUndoModelRefacerDefault text for redo actionRedo QUndoStackRefacer %1Redo %1 QUndoStackDesfacerDefault text for undo actionUndo QUndoStackDesfacer %1Undo %1 QUndoStackLInserir un carcter de control Unicode Insert Unicode control characterQUnicodeControlCharacterMenujLRE Inicio de incrustacin da esquerda cara dereita$LRE Start of left-to-right embeddingQUnicodeControlCharacterMenuHLRM Marca de esquerda cara dereitaLRM Left-to-right markQUnicodeControlCharacterMenudLRO Inicio de excepcin de esquerda cara dereita#LRO Start of left-to-right overrideQUnicodeControlCharacterMenuFPDF Sacar a formatacin direccionalPDF Pop directional formattingQUnicodeControlCharacterMenujRLE Inicio de incrustacin da dereita cara esquerda$RLE Start of right-to-left embeddingQUnicodeControlCharacterMenuHRLM Marca de dereita cara esquerdaRLM Right-to-left markQUnicodeControlCharacterMenudRLO Inicio de excepcin de dereita cara esquerda#RLO Start of right-to-left overrideQUnicodeControlCharacterMenu,ZWJ Nexo de ancho nuloZWJ Zero width joinerQUnicodeControlCharacterMenu6ZWNJ Non-nexo de ancho nuloZWNJ Zero width non-joinerQUnicodeControlCharacterMenu2ZWSP Espazo de ancho nuloZWSP Zero width spaceQUnicodeControlCharacterMenu2Non se pode mostrar o URLCannot show URL QWebFrame>Non se pode mostrar o tipo mimeCannot show mimetype QWebFrame*O ficheiro non existeFile does not exist QWebFramevInterrompeuse a carga do marco por mor do troco de poltico'Frame load interrupted by policy change QWebFrameFA carga xestinaa o motor de medios&Loading is handled by the media engine QWebFrame Pedido bloqueadoRequest blocked QWebFrame Pedido canceladoRequest canceled QWebFrame Pedido canceladoRequest cancelled QWebFrame$%1 (%2x%3 pxeles)%1 (%2x%3 pixels)QWebPageN%1 das %2 horas %3 minutos %4 segundos&%1 days %2 hours %3 minutes %4 secondsQWebPage>%1 horas %2 minutos %3 segundos%1 hours %2 minutes %3 secondsQWebPage,%1 minutos %2 segundos%1 minutes %2 secondsQWebPage%1 segundos %1 secondsQWebPage%n ficheiro%n ficheiros %n file(s)QWebPage*Engadir ao dicionarioAdd To DictionaryQWebPage"Aliar esquerda Align LeftQWebPage Aliar dereita Align RightQWebPageElemento de son Audio ElementQWebPageVisor dos controles da reproducin do elemento de son e do estado2Audio element playback controls and status displayQWebPage(Comeza a reproducinBegin playbackQWebPageNegriaBoldQWebPage FondoBottomQWebPage CentroCenterQWebPagePComprobar a gramtica mentres se escribeCheck Grammar With SpellingQWebPage,Verificar a ortografaCheck SpellingQWebPageRVerificar a ortografa mentres se escribeCheck Spelling While TypingQWebPage(Escoller un ficheiro Choose FileQWebPage2Limpar as buscas recentesClear recent searchesQWebPage CopiarCopyQWebPageCopiar o son Copy AudioQWebPageCopiar a imaxe Copy ImageQWebPage4Copiar o enderezo da imaxeCopy Image AddressQWebPage Copiar a ligazn Copy LinkQWebPageCopiar o vdeo Copy VideoQWebPage,Estado actual do filmeCurrent movie statusQWebPage.Momento actual do filmeCurrent movie timeQWebPage CortarCutQWebPagePredeterminadaDefaultQWebPage:Borrar at o final da palabraDelete to the end of the wordQWebPage@Escoller at o comezo da palabraDelete to the start of the wordQWebPageDetallesDetailsQWebPageDireccin DirectionQWebPage$Tempo transcorrido Elapsed TimeQWebPage0Pr en pantalla completaEnter FullscreenQWebPageTipos de letraFontsQWebPage4Botn de pantalla completaFullscreen ButtonQWebPage AtrsGo BackQWebPageAdiante Go ForwardQWebPageDAcochar a ortografa e a gramticaHide Spelling and GrammarQWebPageIgnorarIgnoreQWebPageIgnorar Ignore Grammar context menu itemIgnoreQWebPage&Duracin indefinidaIndefinite timeQWebPageSangrarIndentQWebPage<Inserir unha lista con vietasInsert Bulleted ListQWebPage6Inserir unha lista numeradaInsert Numbered ListQWebPage,Inserir unha lia novaInsert a new lineQWebPage2Inserir un pargrafo novoInsert a new paragraphQWebPageInspeccionarInspectQWebPageCursivaItalicQWebPage0Alerta de JavaScript: %1JavaScript Alert - %1QWebPage<Confirmacin de JavaScript: %1JavaScript Confirm - %1QWebPage4Problema de JavaScript: %1JavaScript Problem - %1QWebPage4Pregunta de JavaScript: %1JavaScript Prompt - %1QWebPageXustificadoJustifyQWebPageBorde esquerdo Left edgeQWebPage*Da esquerda dereita Left to RightQWebPage*Retransmisin ao vivoLive BroadcastQWebPage$Estase a cargar... Loading...QWebPage,Procurar no dicionarioLook Up In DictionaryQWebPage&Falta o complementoMissing Plug-inQWebPageBMover o cursor ao final do bloque'Move the cursor to the end of the blockQWebPageHMover o cursor ao final do documento*Move the cursor to the end of the documentQWebPage>Mover o cursor ao final da lia&Move the cursor to the end of the lineQWebPageFMover o cursor ao seguinte carcter%Move the cursor to the next characterQWebPage<Mover o cursor seguinte lia Move the cursor to the next lineQWebPageBMover o cursor seguinte palabra Move the cursor to the next wordQWebPageFMover o cursor ao anterior carcter)Move the cursor to the previous characterQWebPage<Mover o cursor lia anterior$Move the cursor to the previous lineQWebPageBMover o cursor palabra anterior$Move the cursor to the previous wordQWebPageDMover o cursor ao comezo do bloque)Move the cursor to the start of the blockQWebPageJMover o cursor ao comezo do documento,Move the cursor to the start of the documentQWebPage@Mover o cursor ao comezo da lia(Move the cursor to the start of the lineQWebPageCursor do filmeMovie time scrubberQWebPagePMiniatura do cursor de posicin do filmeMovie time scrubber thumbQWebPageSilenciarMuteQWebPage$Botn de silenciar Mute ButtonQWebPage4Silenciar as pistas de sonMute audio tracksQWebPage6Non se atoparon conxecturasNo Guesses FoundQWebPage8Non escolleu ningn ficheiroNo file selectedQWebPage$Non se buscou nadaNo recent searchesQWebPageAbrir un son Open AudioQWebPageAbrir o marco Open FrameQWebPageAbrir a imaxe Open ImageQWebPageAbrir a ligazn Open LinkQWebPageAbrir un vdeo Open VideoQWebPage.Abrir nunha xanela novaOpen in New WindowQWebPageQuitar sangraOutdentQWebPageContornoOutlineQWebPagePxina en baixo Page downQWebPage"Pxina esquerda Page leftQWebPage Pxina dereita Page rightQWebPagePxina en ribaPage upQWebPage ApegarPasteQWebPage0Estilo de apegar e casarPaste and Match StyleQWebPage PausarPauseQWebPageBotn de pausar Pause ButtonQWebPage4Pr a reproducin en pausaPause playbackQWebPageReproducirPlayQWebPage&Botn de reproducir Play ButtonQWebPage\Reproducir o filme no modo a pantalla completaPlay movie in full-screen modeQWebPageBuscas recentesRecent searchesQWebPageBAcadouse o lmite de redireccinsRedirection limit reachedQWebPageCargar de novoReloadQWebPageTempo a faltarRemaining TimeQWebPage.Tempo a faltar do filmeRemaining movie timeQWebPage(Eliminar o formatadoRemove formattingQWebPageReiniciarResetQWebPageXVoltar a tempo-real o filme en retransmisin#Return streaming movie to real-timeQWebPage:Botn de voltar ao tempo-realReturn to Real-time ButtonQWebPage$Botn de rebobinar Rewind ButtonQWebPage"Rebobinar o filme Rewind movieQWebPageBorde dereito Right edgeQWebPage*Da dereita esquerda Right to LeftQWebPageGardar a imaxe Save ImageQWebPage$Gardar o ligado... Save Link...QWebPage*Desprazar cara abaixo Scroll downQWebPage&Desprazar cara aqu Scroll hereQWebPage2Desprazar cara esquerda Scroll leftQWebPage0Desprazar cara dereita Scroll rightQWebPage*Desprazar cara arriba Scroll upQWebPageBuscar na webSearch The WebQWebPage6Botn de procura cara atrsSeek Back ButtonQWebPage8Botn de procura cara dianteSeek Forward ButtonQWebPage>Procurar cara atrs rapidamenteSeek quickly backQWebPage@Procurar cara diante rapidamenteSeek quickly forwardQWebPageEscoller todo Select AllQWebPage<Escoller at o final do bloqueSelect to the end of the blockQWebPageBEscoller at o final do documento!Select to the end of the documentQWebPage8Escoller at o final da liaSelect to the end of the lineQWebPage@Escoller at o seguinte carcterSelect to the next characterQWebPage8Escoller at a seguinte liaSelect to the next lineQWebPage>Escoller at a seguinte palabraSelect to the next wordQWebPage@Escoller at o anterior carcter Select to the previous characterQWebPage8Escoller at a lia anteriorSelect to the previous lineQWebPage>Escoller at a anterior palabraSelect to the previous wordQWebPage>Escoller at o comezo do bloque Select to the start of the blockQWebPageDEscoller at o comezo do documento#Select to the start of the documentQWebPage:Escoller at o comezo da liaSelect to the start of the lineQWebPageDMostrar a ortografa e a gramticaShow Spelling and GrammarQWebPage Barra deslizanteSliderQWebPage>Barra deslizante con miniaturas Slider ThumbQWebPageOrtografaSpellingQWebPageVisor do estadoStatus DisplayQWebPage DeterStopQWebPageRiscada StrikethroughQWebPage EnviarSubmitQWebPage EnviarQSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPageSubndice SubscriptQWebPageSuperndice SuperscriptQWebPage$Direccin do textoText DirectionQWebPage|Parece que o script nesta pxina ten problemas. Desexa detelo?RThe script on this page appears to have a problem. Do you want to stop the script?QWebPageEste un ndice con capacidade de busca. Introduza as palabras chave da busca: 3This is a searchable index. Enter search keywords: QWebPage(Conmutar os controisToggle ControlsQWebPage$Conmutar o repetir Toggle LoopQWebPageCumeTopQWebPageSubliado UnderlineQWebPageDescoecidoUnknownQWebPage4Botn de quitar o silencio Unmute ButtonQWebPage8Desilenciar as pistas de sonUnmute audio tracksQWebPage"Elemento de vdeo Video ElementQWebPageVisor dos controles da reproducin do elemento de imaxe e do estado2Video element playback controls and status displayQWebPage*Inspector de webs: %2Web Inspector - %2QWebPageQue isto? What's This?QWhatsThisAction**QWidget&Finalizar&FinishQWizard &Axuda&HelpQWizard&Seguinte&NextQWizard&Seguinte >&Next >QWizard< &Anterior< &BackQWizardCancelarCancelQWizardRemitirCommitQWizardContinuarContinueQWizard FeitoDoneQWizard AtrsGo BackQWizard AxudaHelpQWizard%1 - [%2] %1 - [%2] QWorkspace&Pechar&Close QWorkspace &Mover&Move QWorkspace&Restaurar&Restore QWorkspace&Tamao&Size QWorkspace&Despregar&Unshade QWorkspace PecharClose QWorkspaceMa&ximizar Ma&ximize QWorkspaceMi&nimizar Mi&nimize QWorkspaceMinimizarMinimize QWorkspace*Restaurar para abaixo Restore Down QWorkspace&RepregarSh&ade QWorkspaceManter &enriba Stay on &Top QWorkspaceagardbase unha declaracin de codificacin ou unha declaracin autnoma ao ler a declaracin XMLYencoding declaration or standalone declaration expected while reading the XML declarationQXmlferro na declaracin de texto dunha entidade externa3error in the text declaration of an external entityQXmlfaconteceu erro mentres se interpretaba o comentario$error occurred while parsing commentQXmlTaconteceu un erro ao interpretar o contido$error occurred while parsing contentQXmlaconteceu un erro mentres se interpretaba a definicin do tipo de documento5error occurred while parsing document type definitionQXmlVaconteceu un erro ao interpretar o elemento$error occurred while parsing elementQXmllaconteceu un erro mentres se interpretaba a referencia&error occurred while parsing referenceQXml8erro lanzado polo consumidorerror triggered by consumerQXmlnon se permiten referencias a unha entidade xeral externa procesada no DTD;external parsed general entity reference not allowed in DTDQXmlnon se permiten referencias a unha entidade xeral externa procesada no valor do atributoGexternal parsed general entity reference not allowed in attribute valueQXmlvnon se permiten referencias entidade xeral interna no DTD4internal general entity reference not allowed in DTDQXmlTnome non vlido para procesar a instrucin'invalid name for processing instructionQXml&agrdase unha letraletter is expectedQXmlTmis dunha definicin do tipo de documento&more than one document type definitionQXml2non aconteceu ningn errono error occurredQXml(entidades recursivasrecursive entitiesQXmlzagardbase unha declaracin autnoma ao ler a declaracin XMLAstandalone declaration expected while reading the XML declarationQXml:desemparellamento de etiqueta tag mismatchQXml&carcter inesperadounexpected characterQXml4fin inesperada do ficheirounexpected end of fileQXmlaparece un referencia a unha entidade non procesada no contexto errado*unparsed entity reference in wrong contextQXml`agardbase unha versin ao ler a declaracin XML2version expected while reading the XML declarationQXmlRvalor incorrecto da declaracin senlleira&wrong value for standalone declarationQXmlTErro %1 en %2, na lia %3 e columna %4: %5)Error %1 in %2, at line %3, column %4: %5QXmlPatternistCLI,Aconteceu %1 en %2: %3Error %1 in %2: %3QXmlPatternistCLI"Lugar descoecidoUnknown locationQXmlPatternistCLIPAviso en %1, na lia %2 e columna %3: %4(Warning in %1, at line %2, column %3: %4QXmlPatternistCLIAviso en %1: %2Warning in %1: %2QXmlPatternistCLIR%1 un identificador PUBLICO non vlido.#%1 is an invalid PUBLIC identifier. QXmlStreamP%1 non un nome de codificacin vlido.%1 is an invalid encoding name. QXmlStreaml%1 un nome non vlido de instrucin de procesamento.-%1 is an invalid processing instruction name. QXmlStream", pero obtvose  , but got ' QXmlStream4Atributo definido de novo.Attribute redefined. QXmlStreamHA codificacin %1 non est soportadaEncoding %1 is unsupported QXmlStreamXAtopouse contido codificado incorrectamente.(Encountered incorrectly encoded content. QXmlStreamFA entidade %1 non est declarada.Entity '%1' not declared. QXmlStreamAgardbase Expected  QXmlStream<Agardbanse datos de carcter.Expected character data. QXmlStreamLContido adicional na fin do documento.!Extra content at end of document. QXmlStreamLDeclaracin ilegal de espazo de nomes.Illegal namespace declaration. QXmlStream8O carcter XML non vlido.Invalid XML character. QXmlStream(Nome XML non vlido.Invalid XML name. QXmlStreamFCadea de versin do XML non vlida.Invalid XML version string. QXmlStreamNAtributo non vlido na declaracin XML.%Invalid attribute in XML declaration. QXmlStreamHReferencia a un carcter non vlido.Invalid character reference. QXmlStream*Documento non vlido.Invalid document. QXmlStreamBO valor da entidade non vlido.Invalid entity value. QXmlStream\Nome non vlido de instrucin de procesamento.$Invalid processing instruction name. QXmlStreamVNDATA na declaracin da entidade parmetro.&NDATA in parameter entity declaration. QXmlStreamZPrefixo de espazo de nomes %1 non declarado"Namespace prefix '%1' not declared QXmlStreamlAs etiquetas de apertura e peche est desemparelladas. Opening and ending tag mismatch. QXmlStream6Fin prematuro do documento.Premature end of document. QXmlStreamFDetectouse unha entidade recursiva.Recursive entity detected. QXmlStreamzReferencia a unha entidade externa %1 no valor do atributo.5Reference to external entity '%1' in attribute value. QXmlStream\Referencia a unha entidade %1 non procesada."Reference to unparsed entity '%1'. QXmlStreamXNon se permite a secuencia ]]> no contido.&Sequence ']]>' not allowed in content. QXmlStream`O atributo de autonoma s acepta yes ou no."Standalone accepts only yes or no. QXmlStreamFAgardbase unha etiqueta de inicio.Start tag expected. QXmlStreamO pseudo atributo de autonoma debe aparecer aps a codificacin.?The standalone pseudo attribute must appear after the encoding. QXmlStream$Non se agardaba  Unexpected ' QXmlStreampCarcter %1 inesperado no texto pblico de identidade./Unexpected character '%1' in public id literal. QXmlStream:Versin de XML non soportada.Unsupported XML version. QXmlStreamVDeclaracin XML non no inicio do documento.)XML declaration not at start of document. QXmlStreamElementosItems QmlJSDebugger::LiveSelectionTool 0,125x0.125xQmlJSDebugger::QmlToolBar0,1x0.1xQmlJSDebugger::QmlToolBar 0,25x0.25xQmlJSDebugger::QmlToolBar0,5x0.5xQmlJSDebugger::QmlToolBar1x1xQmlJSDebugger::QmlToolBarJAplicar as modificacins ao documentoApply Changes to DocumentQmlJSDebugger::QmlToolBarNAplicar as modificacin no Visor de QMLApply Changes to QML ViewerQmlJSDebugger::QmlToolBar"Selector de cores Color PickerQmlJSDebugger::QmlToolBar$Modo de inspeccinInspector ModeQmlJSDebugger::QmlToolBar>Reproducir/Pausar as animacinsPlay/Pause AnimationsQmlJSDebugger::QmlToolBarEscollerSelectQmlJSDebugger::QmlToolBar$Escoller (marcado)Select (Marquee)QmlJSDebugger::QmlToolBarUtensiliosToolsQmlJSDebugger::QmlToolBarAmpliarZoomQmlJSDebugger::QmlToolBarCopiar a cor Copy ColorQmlJSDebugger::ToolBarColorBoxAmpliarZoom InQmlJSDebugger::ZoomToolReducirZoom OutQmlJSDebugger::ZoomTool Ampliar ao &100% Zoom to &100%QmlJSDebugger::ZoomToolN%1 e %2 casan con comezo e fin de lia.,%1 and %2 match the start and end of a line. QtXmlPatterns~O atributo %1 en %2 debe ter un uso de %3 como no tipo base %4.9%1 attribute in %2 must have %3 use like in base type %4. QtXmlPatternsO atributo %1 no tipo complexo derivado debe ser %2 como no tipo de base.B%1 attribute in derived complex type must be %2 like in base type. QtXmlPatternsO atributo %1 do elemento %2 ten contido non vlido: {%3} non un valor do tipo %4.T%1 attribute of %2 element contains invalid content: {%3} is not a value of type %4. QtXmlPatternstO atributo %1 do elemento %2 ten contido non vlido: {%3}.:%1 attribute of %2 element contains invalid content: {%3}. QtXmlPatternsO atributo %1 do elemento %2 ten un valor maior do que o atributo %3.>%1 attribute of %2 element has larger value than %3 attribute. QtXmlPatterns^O atributo %1 do elemento %2 debe ser %3 ou %4.,%1 attribute of %2 element must be %3 or %4. QtXmlPatternsO atributo %1 do elemento %2 debe conter %3, %4 ou unha listaxe de URI.A%1 attribute of %2 element must contain %3, %4 or a list of URIs. QtXmlPatternsO atributo %1 do elemento %2 debe conter %3 ou os outros valores.F%1 attribute of %2 element must either contain %3 or the other values. QtXmlPatternsvO atributo %1 do elemento %2 debe ter un valor de %3 ou %4.9%1 attribute of %2 element must have a value of %3 or %4. QtXmlPatternsjO atributo %1 do elemento %2 debe ter un valor de %3.3%1 attribute of %2 element must have a value of %3. QtXmlPatternsO atributo %1 do elemento %2 debe ter o mesmo valor %3 porque se indicou o atributo %4.R%1 attribute of %2 element must have the value %3 because the %4 attribute is set. QtXmlPatternsZO atributo %1 do elemento %2 non debe ser %3.*%1 attribute of %2 element must not be %3. QtXmlPatterns.Non posbel acadar %1%1 cannot be retrieved QtXmlPatternsp%1 non pode ter un tipo de base complexo que tea un %2./%1 cannot have complex base type that has a %2. QtXmlPatterns`%1 contn a faceta %2 con datos non vlidos: %3.+%1 contains %2 facet with invalid data: %3. QtXmlPatterns8%1 contn datos non vlidos.%1 contains invalid data. QtXmlPatterns%1 contn octetos que non estn permitidos na codificacin pedida, %2.E%1 contains octets which are disallowed in the requested encoding %2. QtXmlPatternsO elemento %1 %2 non unha restricin vlida do elemento %3 que redefine: %4.L%1 element %2 is not a valid restriction of the %3 element it redefines: %4. QtXmlPatternsO elemento %1 non pode ter o atributo %2 cun valor diferente de %3 ou de %4.C%1 element cannot have %2 attribute with value other than %3 or %4. QtXmlPatternsO elemento %1 non pode ter o atributo %2 cun valor diferente de %3.=%1 element cannot have %2 attribute with value other than %3. QtXmlPatternsO elemento %1 non ten nin o atributo %2 nin o elemento fillo %3.9%1 element has neither %2 attribute nor %3 child element. QtXmlPatternsXNon se permite o elemento %1 neste contexto.*%1 element is not allowed in this context. QtXmlPatternsRNon se permite o elemento %1 neste mbito'%1 element is not allowed in this scope QtXmlPatternsNon se permite o elemento %1 dentro do elemento %2 se est presente o atributo %3.G%1 element is not allowed inside %2 element if %3 attribute is present. QtXmlPatternsNon se permite que o elemento %1 tea o mesmo valor do atributo %2 que o espazo de nomes de destino %3.Y%1 element is not allowed to have the same %2 attribute value as the target namespace %3. QtXmlPatternsO elemento %1 debe ter ou o atributo %2 ou un elemento fillo %3 ou %4.F%1 element must have either %2 attribute or %3 or %4 as child element. QtXmlPatterns`O elemento %1 debe ter o do atributo %2 ou o %3./%1 element must have either %2 or %3 attribute. QtXmlPatternslO elemento %1 non debe ter vez os atributos %2 e %3.6%1 element must not have %2 and %3 attribute together. QtXmlPatternsXO elemento %1 require o atributo %2 ou o %3..%1 element requires either %2 or %3 attribute. QtXmlPatternsUn elemento %1 cun elemento fillo %2 non pode ter un atributo %3.>%1 element with %2 child element must not have a %3 attribute. QtXmlPatternsNon se permite un elemento %1 sen o atributo %2 dentro dun esquema sen espazo de nomes de destino.V%1 element without %2 attribute is not allowed inside schema without target namespace. QtXmlPatternsZAs facetas %1 e %2 non poden aparecer xuntas.-%1 facet and %2 facet cannot appear together. QtXmlPatternsA faceta %1 non pode ser %2 se a faceta %3 do tipo de base %4.5%1 facet cannot be %2 if %3 facet of base type is %4. QtXmlPatternsA faceta %1 non pode ser %2 nin %3 se a faceta %4 do tipo de base %5.;%1 facet cannot be %2 or %3 if %4 facet of base type is %5. QtXmlPatternsJA faceta %1 entra en conflito doa %2. %1 facet collides with %2 facet. QtXmlPatternshA faceta %1 contn unha expresin regular non vlida,%1 facet contains invalid regular expression QtXmlPatternsZA faceta %1 contn o valor non vlido %2: %3.'%1 facet contains invalid value %2: %3. QtXmlPatternszA faceta %1 debe ser maior ou igual que a %2 do tipo de base.=%1 facet must be equal or greater than %2 facet of base type. QtXmlPatternsvA faceta %1 debe ser maior que a faceta %2 do tipo de base.4%1 facet must be greater than %2 facet of base type. QtXmlPatternsA faceta %1 deber ser maior ou igual que a faceta %2 do tipo de base.@%1 facet must be greater than or equal to %2 facet of base type. QtXmlPatternsvA faceta %1 debe ser menor que a faceta %2 do tipo de base.1%1 facet must be less than %2 facet of base type. QtXmlPatternsHA faceta %1 debe ser menor que a %2.$%1 facet must be less than %2 facet. QtXmlPatternsA faceta %1 debe ser menor que ou igual que a %2 do tipo de base.=%1 facet must be less than or equal to %2 facet of base type. QtXmlPatternsbA faceta %1 debe ser menor que ou igual que a %2.0%1 facet must be less than or equal to %2 facet. QtXmlPatternsxA faceta %1 debe ter o mesmo valor que a %2 do tipo de base.;%1 facet must have the same value as %2 facet of base type. QtXmlPatterns%1 ten unha cantidade diferentes de campos que a restricin de identidade %2 que fai referencia.W%1 has a different number of fields from the identity constraint %2 that it references. QtXmlPatterns%1 ten un carcter de substitucin de atributo pero o seu tipo de base %2 non o ten.7%1 has attribute wildcard but its base type %2 has not. QtXmlPatterns`%1 ten un bucle de herdanza no seu tipo base %2.,%1 has inheritance loop in its base type %2. QtXmlPatterns%1 un tipo complexo. Non posbel converter a tipos complexos. Porn, si que pode converter a tipos atmicos como %2.s%1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works. QtXmlPatterns*%1 non un %2 vlido%1 is an invalid %2 QtXmlPatterns%1 unha bandeira non vlida de expresin regular. As valedoiras son:?%1 is an invalid flag for regular expressions. Valid flags are: QtXmlPatternsX%1 non unha URI vlida de espazo de nomes.%1 is an invalid namespace URI. QtXmlPatternsd%1 un padrn non vlido de expresin regular: %2/%1 is an invalid regular expression pattern: %2 QtXmlPatternsT%1 non un nome de modo vlido do modelo.$%1 is an invalid template mode name. QtXmlPatternsH%1 un tipo de esquema descoecido.%1 is an unknown schema type. QtXmlPatternsJA codificacin %1 non est soportada.%1 is an unsupported encoding. QtXmlPatternsN%1 non un carcter vlido de XML 1.0.$%1 is not a valid XML 1.0 character. QtXmlPatternsz%1 non un nome vlido para unha instrucin de procesamento.4%1 is not a valid name for a processing-instruction. QtXmlPatternsD%1 non un texto numrico vlido."%1 is not a valid numeric literal. QtXmlPatterns%1 non un nome vlido de destino dunha instrucin de procesamento. Debe ser un valor %2, p. ex. %3.Z%1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3. QtXmlPatternsH%1 non un valor vlido do tipo %2.#%1 is not a valid value of type %2. QtXmlPatternsN%1 non un nmero absoluto de minutos.$%1 is not a whole number of minutes. QtXmlPatternsNon se permite que %1 derive de %2 por extensin debido a unha restricin xa que o este defneo como final.S%1 is not allowed to derive from %2 by extension as the latter defines it as final. QtXmlPatternsNon se permite que %1 derive de %2 por lista xa que esta defnea como final.N%1 is not allowed to derive from %2 by list as the latter defines it as final. QtXmlPatternsNon se permite que %1 derive de %2 debido a unha restricin xa que o este defneo como final.U%1 is not allowed to derive from %2 by restriction as the latter defines it as final. QtXmlPatternsNon se permite que %1 derive de %2 por unin xa que este defnea como final.O%1 is not allowed to derive from %2 by union as the latter defines it as final. QtXmlPatterns|Non se permite que %1 tea un tipo membro co mesmo nome ca el.E%1 is not allowed to have a member type with the same name as itself. QtXmlPatterns@%1 non pode ter ningunha faceta.%%1 is not allowed to have any facets. QtXmlPatterns%1 non un tipo atmico. S posbel converter a tipos atmicos.C%1 is not an atomic type. Casting is only possible to atomic types. QtXmlPatterns%1 non est nas declaracins de atributos ao alcance. Lembre que non est implementada a funcionalidade de importacin de esquemas.g%1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported. QtXmlPatterns6%1 non vlido segundo %2. %1 is not valid according to %2. QtXmlPatternsL%1 non valido como valor do tipo %2.&%1 is not valid as a value of type %2. QtXmlPatternsF%1 casa con caracteres de nova lia%1 matches newline characters QtXmlPatterns%1 debe estar seguido por %2 ou %3, non na fin da cadea substituta.J%1 must be followed by %2 or %3, not at the end of the replacement string. QtXmlPatternsO %1 do comodn derivado non unha restricin vlido do %2 do comodn baseH%1 of derived wildcard is not a valid restriction of %2 of base wildcard QtXmlPatternsNin atributo %1 nin o %2 da referencia %3 casan coa declaracin do atributo %4.T%1 or %2 attribute of reference %3 does not match with the attribute declaration %4. QtXmlPatterns%1 fai referencia restricin de identidade %2 que non nin un elemento %3 nin %4.A%1 references identity constraint %2 that is no %3 or %4 element. QtXmlPatternsx%1 fai referencia a un %4 dun elemento %2 ou %3 descoecido.*%1 references unknown %2 or %3 element %4. QtXmlPatternsz%1 require polo menos %n argumento, polo que %2 non valido.|%1 require polo menos %n argumentos, polo que %2 non vlido.=%1 requires at least %n argument(s). %2 is therefore invalid. QtXmlPatternst%1 leva como moito %n argumento, polo que %2 non vlido.v%1 leva como moito %n argumentos, polo que %2 non vlido.9%1 takes at most %n argument(s). %2 is therefore invalid. QtXmlPatternsChamouse a %1.%1 was called. QtXmlPatternsAs facetas %1, %2, %3, %4, %5 e %6 non estn permitidas cando se deriva por lista.F%1, %2, %3, %4, %5 and %6 facets are not allowed when derived by list. QtXmlPatternsxO atributo %1 contn contido non vlido para un QName: %2.2'%1' attribute contains invalid QName content: %2. QtXmlPatterns@Un comentario non pode conter %1A comment cannot contain %1 QtXmlPatternsLUn comentario non pode rematar cun %1.A comment cannot end with a %1. QtXmlPatternsAtopouse unha construcin que non est permitida na linguaxe actual (%1).LA construct was encountered which is disallowed in the current language(%1). QtXmlPatternsDebe haber unha declaracin dun espazo de nomes predeterminado antes das declaracins de funcins, varibeis e opcins.^A default namespace declaration must occur before function, variable, and option declarations. QtXmlPatternsHai un construtor directo dun elemento que non est ben formado. %1 remata con %2.EA direct element constructor is not well-formed. %1 is ended with %2. QtXmlPatternsNXa existe unha funcin coa sinatura %1.0A function already exists with the signature %1. QtXmlPatternsNon pode avaliarse directamente un mdulo de biblioteca. Debe ser importada desde un mdulo principal.VA library module cannot be evaluated directly. It must be imported from a main module. QtXmlPatternsvNon se pode declarar como tnel un parmetro nunha funcin.Can not process unknown element %1, expected elements are: %2. QtXmlPatternspO elemento fillo falta nese mbito, os posbeis son: %1.HChild element is missing in that scope, possible child elements are: %1. QtXmlPatternsPGrupo de referencias circulares para %1. Circular group reference for %1. QtXmlPatternsJHerdanza circular do tipo de base %1.%Circular inheritance of base type %1. QtXmlPatterns<Herdanza circular da unin %1.!Circular inheritance of union %1. QtXmlPatternsNon se pode derivar o tipo complexo %1 mediante extensin de %2 xa que este contn elementos %3 no seu modelo de contido.nComplex type %1 cannot be derived by extension from %2 as the latter contains %3 element in its content model. QtXmlPatternsvO tipo complexo %1 non pode derivarse do tipo de base %2%3.6Complex type %1 cannot be derived from base type %2%3. QtXmlPatternsO tipo complexo %1 contn o atributo %2, que ten restricin de valores pero un tipo que herda de %3._Complex type %1 contains attribute %2 that has value constraint but type that inherits from %3. QtXmlPatternsfO tipo complexo %1 contn o atributo %2 das veces.,Complex type %1 contains attribute %2 twice. QtXmlPatternsO tipo complexo %1 contn dous atributos diferentes con tipos derivados de %2.WComplex type %1 contains two different attributes that both have types derived from %2. QtXmlPatternsO tipo complexo %1 contn por duplicado o elemento %2 no seu modelo de contido.?Complex type %1 has duplicated element %2 in its content model. QtXmlPatterns`O tipo complexo %1 ten contido non determinista..Complex type %1 has non-deterministic content. QtXmlPatternsjNon se permite que o tipo complexo %1 sexa abstracto..Complex type %1 is not allowed to be abstract. QtXmlPatternsVO tipo complexo %1 debe ter contido simple.)Complex type %1 must have simple content. QtXmlPatternsO tipo complexo %1 debe ter o mesmo tipo simple que a sa clase de base %2.DComplex type %1 must have the same simple type as its base class %2. QtXmlPatternsO tipo complexo %1 con contido simple non se pode derivar do tipo de base complexo %2.PComplex type %1 with simple content cannot be derived from complex base type %2. QtXmlPatternsO tipo complexo do elemento derivado %1 non se pode derivar con validez a partir do elemento de base.OComplex type of derived element %1 cannot be validly derived from base element. QtXmlPatternsjXa se definiu anteriormente unha compoente co ID %1.1Component with ID %1 has been defined previously. QtXmlPatternsO modelo do contido do tipo complexo %1 contn o elemento %2, polo que non se pode derivar por extensin a partir dun tipo non baleiro.qContent model of complex type %1 contains %2 element, so it cannot be derived by extension from a non-empty type. QtXmlPatternsO modelo de contido do tipo complexo %1 non unha extensin vlida do modelo de contido de %2.QContent model of complex type %1 is not a valid extension of content model of %2. QtXmlPatternsO contido do atributo %1 do elemento %2 non debe proceder do espazo de nomes %3.DContent of %1 attribute of %2 element must not be from namespace %3. QtXmlPatternsO contido do atributo %1 non casa coa restricin de valores definida.@Content of attribute %1 does not match defined value constraint. QtXmlPatternszO contido do atributo %1 non casa coa definicin do tipo: %2.?Content of attribute %1 does not match its type definition: %2. QtXmlPatternsO contido do elemento %1 non casa coa restricin de valores definida.>Content of element %1 does not match defined value constraint. QtXmlPatternszO contido do elemento %1 non casa coa definicin do tipo: %2.=Content of element %1 does not match its type definition: %2. QtXmlPatternsnNon se permite que os datos do tipo %1 esteas baleiros.,Data of type %1 are not allowed to be empty. QtXmlPatternshO contido da data e hora non casa coa faceta padrn./Date time content does not match pattern facet. QtXmlPatternstO contido da data e hora non casa coa faceta maxExclusive.8Date time content does not match the maxExclusive facet. QtXmlPatternstO contido da data e hora non casa coa faceta maxInclusive.8Date time content does not match the maxInclusive facet. QtXmlPatternstO contido da data e hora non casa coa faceta minExclusive.8Date time content does not match the minExclusive facet. QtXmlPatternstO contido da data e hora non casa coa faceta minInclusive.8Date time content does not match the minInclusive facet. QtXmlPatternsvO contido da data e hora non est na faceta de enumeracin.9Date time content is not listed in the enumeration facet. QtXmlPatternsHO da %1 non vlido para o mes %2.Day %1 is invalid for month %2. QtXmlPatternsFO da %1 est fora do rango %2..%3.#Day %1 is outside the range %2..%3. QtXmlPatterns~O contido do nmero decimal non casa coa faceta fractionDigits.;Decimal content does not match in the fractionDigits facet. QtXmlPatternsxO contido do nmero decimal non casa coa faceta totalDigits.8Decimal content does not match in the totalDigits facet. QtXmlPatternsPNon existe a declaracin do atributo %1.,Declaration for attribute %1 does not exist. QtXmlPatternsPNon existe a declaracin do elemento %1.*Declaration for element %1 does not exist. QtXmlPatternsO mtodo de derivacin de %1 debe ser por extensin porque o tipo base %2 un tipo simple.TDerivation method of %1 must be extension because the base type %2 is a simple type. QtXmlPatternspO atributo derivado %1 non existe na definicin da base.;Derived attribute %1 does not exist in the base definition. QtXmlPatternsO atributo derivado %1 non casa co carcter de substitucin na definicin da base.HDerived attribute %1 does not match the wildcard in the base definition. QtXmlPatternsA definicin derivada contn un elemento %1 que non existe na definicin da baseUDerived definition contains an %1 element that does not exists in the base definition QtXmlPatternsO elemento derivado %1 non se pode anular porque o elemento de base non se pode anular.FDerived element %1 cannot be nillable as base element is not nillable. QtXmlPatternsO elemento derivado %1 ten unha restricin aos valores mis feble do que a da sa partcula de base.BDerived element %1 has weaker value constraint than base particle. QtXmlPatternsNo elemento derivado %1 falta a restricin aos valores definida na partcula de base.KDerived element %1 is missing value constraint as defined in base particle. QtXmlPatternsA partcula derivada permite contido non permitido na partcula de base.IDerived particle allows content that is not allowed in the base particle. QtXmlPatternsTNa partcula derivada falta o elemento %1.'Derived particle is missing element %1. QtXmlPatternsO carcter de substitucin derivado non un conxunto do de base.6Derived wildcard is not a subset of the base wildcard. QtXmlPatterns~Non se permite dividir un valor do tipo %1 por %2 (non nmero).@Dividing a value of type %1 by %2 (not-a-number) is not allowed. QtXmlPatternsNon se permite dividir un valor do tipo %1 por %2 nin por %3 (mis ou menos cero).LDividing a value of type %1 by %2 or %3 (plus or minus zero) is not allowed. QtXmlPatterns`A divisin (%1) por cero (%2) non est definida.(Division (%1) by zero (%2) is undefined. QtXmlPatternsBO documento non un esquema XML.Document is not a XML schema. QtXmlPatternsO contido do nmero de lonxitude dupla non casa coa faceta padrn.,Double content does not match pattern facet. QtXmlPatternsO contido do nmero de lonxitude dupla non casa coa faceta maxExclusive.5Double content does not match the maxExclusive facet. QtXmlPatternsO contido do nmero de lonxitude dupla non casa coa faceta maxInclusive.5Double content does not match the maxInclusive facet. QtXmlPatternsO contido do nmero de lonxitude dupla non casa coa faceta minExclusive.5Double content does not match the minExclusive facet. QtXmlPatternsO contido do nmero de lonxitude dupla non casa coa faceta minInclusive.5Double content does not match the minInclusive facet. QtXmlPatternsO contido do nmero de lonxitude dupla non est na faceta de enumeracin.6Double content is not listed in the enumeration facet. QtXmlPatternshHai nomes de elementos %1 duplicados no elemento %2.*Duplicated element names %1 in %2 element. QtXmlPatternsRHai facetas duplicadas no tipo simple %1.$Duplicated facets in simple type %1. QtXmlPatternsbO contido da duracin non casa coa faceta padrn..Duration content does not match pattern facet. QtXmlPatternsnO contido da duracin non casa coa faceta maxExclusive.7Duration content does not match the maxExclusive facet. QtXmlPatternsnO contido da duracin non casa coa faceta maxInclusive.7Duration content does not match the maxInclusive facet. QtXmlPatternsnO contido da duracin non casa coa faceta minExclusive.7Duration content does not match the minExclusive facet. QtXmlPatternsnO contido da duracin non casa coa faceta minInclusive.7Duration content does not match the minInclusive facet. QtXmlPatternspO contido da duracin non est na faceta de enumeracin.8Duration content is not listed in the enumeration facet. QtXmlPatternsOs nomes dos parmetros do modelo deben ser nicos, %1 est duplicado.CEach name of a template parameter must be unique; %1 is duplicated. QtXmlPatternsNon pode calcularse o Valor Booleano Efectivo dunha secuencia que contn dous ou mis valores atmicos.aEffective Boolean Value cannot be calculated for a sequence containing two or more atomic values. QtXmlPatterns8Xa se definiu o elemento %1.Element %1 already defined. QtXmlPatternsO elemento %1 non pode ser serializado porque aparece fora do elemento documento.OElement %1 can't be serialized because it appears outside the document element. QtXmlPatternsO elemento %1 non pode conter outros elementos porque ten contido fixo.BElement %1 cannot contain other elements, as it has fixed content. QtXmlPatternslO elemento %1 non pode ter un construtor de secuencia..Element %1 cannot have a sequence constructor. QtXmlPatternsDO elemento %1 non pode ter fillos. Element %1 cannot have children. QtXmlPatternsJO elemento %1 ten contido non vlido.$Element %1 contains invalid content. QtXmlPatterns\O elemento %1 contn atributos non permitidos.+Element %1 contains not allowed attributes. QtXmlPatterns\O elemento %1 ten contido fillo non permitido..Element %1 contains not allowed child content. QtXmlPatternsjO elemento %1 contn un elemento fillo non permitido..Element %1 contains not allowed child element. QtXmlPatternsbO elemento %1 ten contido de texto non permitido.-Element %1 contains not allowed text content. QtXmlPatterns^O elemento %1 contn dous atributos do tipo %2..Element %1 contains two attributes of type %2. QtXmlPatterns^O elemento %1 contn o atributo descoecido %2.)Element %1 contains unknown attribute %2. QtXmlPatternsO elemento %1 non casa coa restricin do espazo de nomes de comodn na partcula de base.LElement %1 does not match namespace constraint of wildcard in base particle. QtXmlPatternsjO elemento %1 existe das veces con tipos diferentes.-Element %1 exists twice with different types. QtXmlPatternsPO elemento %1 declarouse como abstracto.#Element %1 is declared as abstract. QtXmlPatternsTAo elemento %1 fltalle un elemento fillo.$Element %1 is missing child element. QtXmlPatternsTFalta o elemento %1 na partcula derivada.*Element %1 is missing in derived particle. QtXmlPatterns`Ao elemento %1 fltalle o atributo requirido %2.,Element %1 is missing required attribute %2. QtXmlPatternsRNeste lugar non se permite o elemento %1.+Element %1 is not allowed at this location. QtXmlPatternsNon se permite o elemento %1 neste mbito, os elementos posbeis son: %2.CElement %1 is not allowed in this scope, possible elements are: %2. QtXmlPatternsO elemento %1 non se lle permite ter unha restricin de valores se o seu tipo de base complexo.QElement %1 is not allowed to have a value constraint if its base type is complex. QtXmlPatternsO elemento %1 non se lle permite ter unha restricin de valores se o seu tipo deriva de %2.TElement %1 is not allowed to have a value constraint if its type is derived from %2. QtXmlPatternsNon se permite que o elemento %1 tea afiliacin a grupo de substitucin xa que non un elemento global.\Element %1 is not allowed to have substitution group affiliation as it is no global element. QtXmlPatternsZO elemento %1 non est definido neste mbito.(Element %1 is not defined in this scope. QtXmlPatterns:O elemento %1 non anulbel.Element %1 is not nillable. QtXmlPatterns>O elemento %1 debe ir o ltimo.Element %1 must come last. QtXmlPatternsxO elemento %1 debe ter polo menos un dos atributos %2 ou %3.=Element %1 must have at least one of the attributes %2 or %3. QtXmlPatternsO elemento %1 debe ter ou un atributo %2 ou un construtor de secuencia.EElement %1 must have either a %2-attribute or a sequence constructor. QtXmlPatterns^O elemento ten contido a pesar de ser anulbel.1Element contains content although it is nillable. QtXmlPatternsLXa se definiu o grupo de elementos %1.!Element group %1 already defined. QtXmlPatternsxUnha partcula baleira non pode derivarse dunha non baleira.9Empty particle cannot be derived from non-empty particle. QtXmlPatternsA faceta de enumeracin ten contido non vlido: {%1} non un valor do tipo %2.KEnumeration facet contains invalid content: {%1} is not a value of type %2. QtXmlPatternsDO campo %1 non ten un tipo simple.Field %1 has no simple type. QtXmlPatternsNon se permite a restricin de valor fixo se o elemento anulbel.:Fixed value constraint not allowed if element is nillable. QtXmlPatternsA restricin de valor fixo do elemento %1 diferente da de valor da partcula base.TFixed value constraint of element %1 differs from value constraint in base particle. QtXmlPatterns>O valor do ID %1 non nico.ID value '%1' is not unique. QtXmlPatternsXXa se definiu a restricin de identidade %1.'Identity constraint %1 already defined. QtXmlPatternsSe ambos os dous valores teen desprazamentos de zona, deben ter o mesmo. %1 e %2 non son iguais.bIf both values have zone offsets, they must have the same zone offset. %1 and %2 are not the same. QtXmlPatternsSe o elemento %1 non ten o atributo %2 non pode ter os atributos %3 nin %4.EIf element %1 has no attribute %2, it cannot have attribute %3 or %4. QtXmlPatternsHSe o primeiro argumento a secuencia baleira ou unha cadea de lonxitude cero (sen espazo de nomes), non se pode especificar un prefixo. Especificouse o prefixo %1.If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified. QtXmlPatternsO valor do espazo de nomes nun construtor de espazos de nome non pode ser unha cadea en branco.PIn a namespace constructor, the value for a namespace cannot be an empty string. QtXmlPatternsNun mdulo de folla de estilos simplificada debe estar presente o atributo %1.@In a simplified stylesheet module, attribute %1 must be present. QtXmlPatterns|Nun patrn XSL-T non pode empregarse o eixo %1, s os %2 e %3.DIn an XSL-T pattern, axis %1 cannot be used, only axis %2 or %3 can. QtXmlPatternsNun patrn XSL-T, a funcin %1 non pode ter un terceiro argumento.>In an XSL-T pattern, function %1 cannot have a third argument. QtXmlPatternsNun patrn XSL-T, s pode empregar para procuras as funcins %1 e %2, non a %3.OIn an XSL-T pattern, only function %1 and %2, not %3, can be used for matching. QtXmlPatterns.Nun patrn XSL-T, o primeiro argumento da funcin %1 cando sexa empregada para facer procuras debe ser unha cadea de texto ou unha referencia varibel.yIn an XSL-T pattern, the first argument to function %1 must be a literal or a variable reference, when used for matching. QtXmlPatternsNun patrn XSL-T, o primeiro argumento da funcin %1 cando sexa empregada para facer procuras debe ser unha cadea de texto.hIn an XSL-T pattern, the first argument to function %1 must be a string literal, when used for matching. QtXmlPatternsNa cadea substituta %1 s pode usarse para escaparse a si mesmo ou a %2, non a %3MIn the replacement string, %1 can only be used to escape itself or %2, not %3 QtXmlPatternsNa cadea substituta, %1 debe ir seguido de cando menos un dxito cando non estea escapada.VIn the replacement string, %1 must be followed by at least one digit when not escaped. QtXmlPatternsxA divisin de enteiros (%1) por cero (%2) non est definida.0Integer division (%1) by zero (%2) is undefined. QtXmlPatterns@Contido non vlido do QName: %1.Invalid QName content: %1. QtXmlPatternsFNon posbel asociar co prefixo %1+It is not possible to bind to the prefix %1 QtXmlPatternsXNon posbel declarar de novo o prefixo %1.*It is not possible to redeclare prefix %1. QtXmlPatterns6Non ser posbel acadar %1.'It will not be possible to retrieve %1. QtXmlPatternsNon posbel engadir atributos tras calquera outro tipo de nodo.AIt's not possible to add attributes after any other kind of node. QtXmlPatternsbO tipo de elemento %1 de %2 non se pode resolver..Item type %1 of %2 element cannot be resolved. QtXmlPatternsO tipo de elemento do tipo de base non casa co tipo de elemento de %1.6Item type of base type does not match item type of %1. QtXmlPatternsO tipo de elemento do tipo simple %1 non pode ser un tipo complexo.5Item type of simple type %1 cannot be a complex type. QtXmlPatterns`A restricin de chave %1 contn campos ausentes.)Key constraint %1 contains absent fields. QtXmlPatternsA restricin de chave %1 contn referencias ao elemento anulbel %2.:Key constraint %1 contains references nillable element %2. QtXmlPatternshO contido da lista non coincide coa faceta length.)List content does not match length facet. QtXmlPatternsnO contido da lista non coincide coa faceta maxLength.,List content does not match maxLength facet. QtXmlPatternsnO contido da lista non coincide coa faceta minLength.,List content does not match minLength facet. QtXmlPatterns\O contido da lista non casa coa faceta padrn.*List content does not match pattern facet. QtXmlPatternsjO contido da lista non est na faceta de enumeracin.4List content is not listed in the enumeration facet. QtXmlPatternsbO ficheiro de esquema que se cargou non vlido.Loaded schema file is invalid. QtXmlPatternsfAs concordancias non son sensbeis capitalizacinMatches are case insensitive QtXmlPatternsO tipo membro %1 non se pode derivar do tipo membro %2 do tipo base %4 de %3.JMember type %1 cannot be derived from member type %2 of %3's base type %4. QtXmlPatterns^O tipo de membro %1 de %2 non se pode resolver.0Member type %1 of %2 element cannot be resolved. QtXmlPatterns|O tipo membro do tipo simple %1 non pode ser un tipo complexo.7Member type of simple type %1 cannot be a complex type. QtXmlPatternsAs importacins de mdulos deben estar antes das declaracins de funcins, varibeis e opcins.MModule imports must occur before function, variable, and option declarations. QtXmlPatternspA divisin modular (%1) por cero (%2) non est definida.0Modulus division (%1) by zero (%2) is undefined. QtXmlPatternsFO mes %1 est fora do rango %2..%3.%Month %1 is outside the range %2..%3. QtXmlPatternsPAtopouse mis dun valor para o campo %1.'More than one value found for field %1. QtXmlPatternsNon se permite multiplicar un valor do tipo %1 por %2 nin por %3 (mis ou menos infinito).YMultiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed. QtXmlPatternsO espazo de nomes %1 s pode estar vinculado a %2 (e est, en calquera caso, predeclarado).ONamespace %1 can only be bound to %2 (and it is, in either case, pre-declared). QtXmlPatternsDebe haber declaracins dun espazo de nomes antes das declaracins de funcins, varibeis e opcins.UNamespace declarations must occur before function, variable, and option declarations. QtXmlPatternsNon est definido o prefixo do espazo de nomes do nome cualificado %1.5Namespace prefix of qualified name %1 is not defined. QtXmlPatterns<A rede esgotou o tempo-lmite.Network timeout. QtXmlPatternslNon hai dispobel ningunha definicin do elemento %1.'No definition for element %1 available. QtXmlPatterns"Non se permiten utilizar as funcins externas. Todas as funcins soportadas poden ser usadas directamente, non fai falla declaralas como externas{No external functions are supported. All supported functions can be used directly, without first declaring them as external QtXmlPatternsHNon hai ningunha funcin chamada %1.&No function with name %1 is available. QtXmlPatternshNon est dispobel ningunha funcin coa sinatura %1*No function with signature %1 is available QtXmlPatternsNon existe ningunha asociacin cun espazo de nomes para o prefixo %1-No namespace binding exists for the prefix %1 QtXmlPatternsNon existe ningunha asociacin cun espazo de nomes para o prefixo %1 en %23No namespace binding exists for the prefix %1 in %2 QtXmlPatternsNon se atopou ningn valor referenciado para a referencia de chave %1./No referenced value found for key reference %1. QtXmlPatterns`Non se definiu ningn esquema para a validacin.!No schema defined for validation. QtXmlPatternsBNon hai ningn modelo chamado %1.No template by name %1 exists. QtXmlPatternsNon se dispn de ningn valor para a varibel externa chamada %1.=No value is available for the external variable with name %1. QtXmlPatternsHNon hai ningunha varibel chamada %1No variable with name %1 exists QtXmlPatternsbAtopouse un valor non nico para a restricin %1.)Non-unique value found for constraint %1. QtXmlPatternsNon se permite utilizar ningunha das expresins pragma. Polo tanto, debe haber presente unha expresin de reserva^None of the pragma expressions are supported. Therefore, a fallback expression must be present QtXmlPatterns8Xa se definiu a notacin %1.Notation %1 already defined. QtXmlPatternsO contido da notacin non est enumerado na faceta de enumeracin.8Notation content is not listed in the enumeration facet. QtXmlPatternsxS se permiten as facetas %1 e %2 cando se deriva por unin.8Only %1 and %2 facets are allowed when derived by union. QtXmlPatternsvS pode haber unha declaracin de %1 no prlogo da procura.6Only one %1 declaration can occur in the query prolog. QtXmlPatterns@S pode aparecer un elemento %1.Only one %1-element can appear. QtXmlPatternsS est soportado o Unicode Codepoint Collation (%1). %2 non se admite.IOnly the Unicode Codepoint Collation is supported(%1). %2 is unsupported. QtXmlPatternslO prefixo %1 s pode estar vinculado a %2 e viceversa.5Only the prefix %1 can be bound to %2 and vice versa. QtXmlPatternsO operador %1 non pode ser usado en valores atmicos dos tipos %2 nin %3.>Operator %1 cannot be used on atomic values of type %2 and %3. QtXmlPatternsXO operador %1 non pode ser usado co tipo %2.&Operator %1 cannot be used on type %2. QtXmlPatternsfDesbordamento: Non posbel representar a data %1."Overflow: Can't represent date %1. QtXmlPatterns\Desbordamento: Non se pode representar a data.$Overflow: Date can't be represented. QtXmlPatterns0Erro de procesamento: %1Parse error: %1 QtXmlPatternsA partcula contn caracteres de substitucin non deterministas..Particle contains non-deterministic wildcards. QtXmlPatternsO prefixo %1 s pode estar vinculado a %2 (e est, en calquera caso, predeclarado).LPrefix %1 can only be bound to %2 (and it is, in either case, pre-declared). QtXmlPatternsTO prefixo %1 xa est declarado no prlogo.,Prefix %1 is already declared in the prolog. QtXmlPatterns`Non se definiu o prefixo do nome cualificado %1.+Prefix of qualified name %1 is not defined. QtXmlPatternshConverter de %1 a %2 pode causar perda de precisin./Promoting %1 to %2 may cause loss of precision. QtXmlPatterns\O contido do QName non casa coa faceta padrn.+QName content does not match pattern facet. QtXmlPatternsjO contido do QName non est na faceta de enumeracin.5QName content is not listed in the enumeration facet. QtXmlPatternshA referencia %1 do elemento %2 non se pode resolver..Reference %1 of %2 element cannot be resolved. QtXmlPatternsxA cardinalidade requirida %1; obtvose a cardinalidade %2./Required cardinality is %1; got cardinality %2. QtXmlPatternsPO tipo requirido %1, pero atopouse %2.&Required type is %1, but %2 was found. QtXmlPatterns|A executar unha folla de estilos XSL-T 1.0 cun procesador 2.0.5Running an XSL-T 1.0 stylesheet with a 2.0 processor. QtXmlPatternsO contido do nmero enteiro con signo non casa coa faceta totalDigits.?Signed integer content does not match in the totalDigits facet. QtXmlPatternsO contido do nmero enteiro con signo non casa coa faceta padrn.4Signed integer content does not match pattern facet. QtXmlPatternsO contido do nmero enteiro con signo non casa coa faceta maxExclusive.=Signed integer content does not match the maxExclusive facet. QtXmlPatternsO contido do nmero enteiro con signo non casa coa faceta maxInclusive.=Signed integer content does not match the maxInclusive facet. QtXmlPatternsO contido do nmero enteiro con signo non casa coa faceta minExclusive.=Signed integer content does not match the minExclusive facet. QtXmlPatternsO contido do nmero enteiro con signo non casa coa faceta minInclusive.=Signed integer content does not match the minInclusive facet. QtXmlPatternsO contido do nmero enteiro con signo non est na faceta de enumeracin.>Signed integer content is not listed in the enumeration facet. QtXmlPatternsO tipo simple %1 s pode ter un tipo atmico simple como tipo de base.=Simple type %1 can only have simple atomic type as base type. QtXmlPatternsO tipo simple %1 non pode derivar do %2 xa que este define a restricin como final.PSimple type %1 cannot derive from %2 as the latter defines restriction as final. QtXmlPatternsvO tipo simple %1 non pode ter unha base directa do tipo %2./Simple type %1 cannot have direct base type %2. QtXmlPatternszO tipo simple %1 contn unha faceta non permitida do tipo %2.2Simple type %1 contains not allowed facet type %2. QtXmlPatterns|Ao tipo simple %1 non se lle permite ter unha base do tipo %2.3Simple type %1 is not allowed to have base type %2. QtXmlPatternshS se permite que o tipo simple %1 tea a faceta %2.0Simple type %1 is only allowed to have %2 facet. QtXmlPatterns^O tipo simple contn a faceta non permitida %1.*Simple type contains not allowed facet %1. QtXmlPatternsO tipo simple do elemento derivado %1 non se pode derivar con validez a partir do elemento de base.NSimple type of derived element %1 cannot be validly derived from base element. QtXmlPatternsfO tipo especificado %1 non se coece neste esquema.-Specified type %1 is not known to the schema. QtXmlPatternsO tipo especificado %1 non se pode substitur dun xeito vlido por elementos do tipo %2.DSpecified type %1 is not validly substitutable with element type %2. QtXmlPatternsIndicar use='prohibited' dentro dun grupo de atributos non ten efecto.DSpecifying use='prohibited' inside an attribute group has no effect. QtXmlPatternsjO contido da cadea non coincide coa faceta pattern.,String content does not match pattern facet. QtXmlPatternshO contido da cadea non coincide coa faceta length./String content does not match the length facet. QtXmlPatternsnO contido da cadea non coincide coa faceta maxLength.2String content does not match the maxLength facet. QtXmlPatternsnO contido da cadea non coincide coa faceta minLength.2String content does not match the minLength facet. QtXmlPatternsO contido da cadea non est enumerado na enumeracin de facetas.6String content is not listed in the enumeration facet. QtXmlPatternspO grupo de substitucin %1 ten unha definicin circular..Substitution group %1 has circular definition. QtXmlPatterns~Non se pode resolver o grupo de substitucin %1 do elemento %2.7Substitution group %1 of %2 element cannot be resolved. QtXmlPatternsO espazo de nomes de destino %1 do esquema importado diferente do %2, que se especificou no esquema importador.tTarget namespace %1 of imported schema is different from the target namespace %2 as defined by the importing schema. QtXmlPatternsO espazo de nomes de destino %1 do esquema includo diferente do %2, que se especificou no esquema inclunte.tTarget namespace %1 of included schema is different from the target namespace %2 as defined by the including schema. QtXmlPatternsVNeste lugar non se permiten nodos de texto.,Text nodes are not allowed at this location. QtXmlPatternsNon se permite referencias nin texto nin a entidades dentro dun elemento %17Text or entity references not allowed inside %1 element QtXmlPatternsLNon est soportado o eixo %1 en XQuery$The %1-axis is unsupported in XQuery QtXmlPatternsNon se permite utilizar a funcionalidade de Importacin de Esquema, polo tanto non pode haber declaracins %1.WThe Schema Import feature is not supported, and therefore %1 declarations cannot occur. QtXmlPatternsNon se permite utilizar a funcionalidade de Validacin do Esquema. Polo tanto, as expresins %1 non poden ser usadas.VThe Schema Validation Feature is not supported. Hence, %1-expressions may not be used. QtXmlPatterns6A URI non pode ter un anacoThe URI cannot have a fragment QtXmlPatternsnO atributo %1 s pode aparecer no primeiro elemento %2.9The attribute %1 can only appear on the first %2 element. QtXmlPatternstO atributo %1 non pode aparecer en %2 cando filla de %3.?The attribute %1 cannot appear on %2, when it is a child of %3. QtXmlPatternsO cdigo %1, que aparece en %2 coa codificacin %3 non un carcter XML vlido.QThe codepoint %1, occurring in %2 using encoding %3, is an invalid XML character. QtXmlPatternsOs datos dunha instrucin de procesamento non poden conter a cadea %1AThe data of a processing instruction cannot contain the string %1 QtXmlPatternsRNon se definiu a coleccin predeterminada#The default collection is undefined QtXmlPatternsA codificacin %1 non vlida. S debe conter caracteres Latinos, non pode conter espazos, e debe casar coa expresin regular %2.The encoding %1 is invalid. It must contain Latin characters only, must not contain whitespace, and must match the regular expression %2. QtXmlPatternsO primeiro argumento de %1 non pode ser do tipo %2. Debe ser un tipo numrico, xs:yearMonthDuration ou xs:dayTimeDuration.uThe first argument to %1 cannot be of type %2. It must be a numeric type, xs:yearMonthDuration or xs:dayTimeDuration. QtXmlPatternsO primeiro argumento de %1 non pode ser do tipo %2. Debe ser de tipo %3, %4 ou %5.PThe first argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. QtXmlPatterns2O foco non est definido.The focus is undefined. QtXmlPatternsfA inicializacin da varibel %1 depende de si mesma3The initialization of variable %1 depends on itself QtXmlPatternsRO elemento %1 non do tipo requirido %2./The item %1 did not match the required type %2. QtXmlPatternsA palabra clave %1 s pode aparecer con calquera outro nome de modo.5The keyword %1 cannot occur with any other mode name. QtXmlPatternsO ltimo paso nunha ruta debe conter ou nodos ou valores atmicos. Non pode ser unha mistura dos dous.kThe last step in a path must contain either nodes or atomic values. It cannot be a mixture between the two. QtXmlPatternsNon se permite utilizar a funcionalidade de importacin de mdulos*The module import feature is not supported QtXmlPatternsbO nome %1 non se refire a ningn tipo de esquema..The name %1 does not refer to any schema type. QtXmlPatternsO nome dun atributo calculado non pode ter a URI %1 de espazo de nomes co nome local %2.ZThe name for a computed attribute cannot have the namespace URI %1 with the local name %2. QtXmlPatternsO nome dunha varibel asociada a unha expresin for debe ser diferente da varibel posicional. Por isto, as das varibeis chamadas %1 chocan.The name of a variable bound in a for-expression must be different from the positional variable. Hence, the two variables named %1 collide. QtXmlPatternsO nome dunha expresin de extensin debe estar nun espazo de nomes.;The name of an extension expression must be in a namespace. QtXmlPatternsO nome dunha opcin debe ter un prefixo. Non hai un espazo de nomes predeterminado para as opcins.TThe name of an option must have a prefix. There is no default namespace for options. QtXmlPatternsHO espazo de nomes %1 est reservado; polo tanto as funcins definidas polo usuario non poden usalo. Tnteo co prefixo predefinido %2, que est para casos como este.The namespace %1 is reserved; therefore user defined functions may not use it. Try the predefined prefix %2, which exists for these cases. QtXmlPatternsA URI do espazo de nomes non pode ser unha cadea valeira cando se estea a asociar cun prefixo, %1.JThe namespace URI cannot be the empty string when binding to a prefix, %1. QtXmlPatternsA URI dun espazo de nomes no nome dun atributo calculado non pode ser %1.DThe namespace URI in the name for a computed attribute cannot be %1. QtXmlPatternsA URI do espazo de nomes debe ser constante e non pode conter expresins.IThe namespace URI must be a constant and cannot use enclosed expressions. QtXmlPatterns O espazo de nomes das funcins definidas polo usuario non pode estar en branco (tnteo co prefixo predefinido %1, que est para casos coma este)zThe namespace for a user defined function cannot be empty (try the predefined prefix %1, which exists for cases like this) QtXmlPatterns^O espazo de nomes dunha funcin definida polo usuario nun mdulo de biblioteca debe ser equivalente ao espazo de nomes do mdulo. Con outras verbas: debe ser %1 no canto de %2The namespace of a user defined function in a library module must be equivalent to the module namespace. In other words, it should be %1 instead of %2 QtXmlPatternsNon se permite a forma de normalizacin %1. As formas permitidas son %2, %3, %4, %5 e ningunha, i.e. a cadea en branco (sen normalizacin).The normalization form %1 is unsupported. The supported forms are %2, %3, %4, and %5, and none, i.e. the empty string (no normalization). QtXmlPatternsxPasouse o parmetro %1, pero non existe o %2 correspondente.;The parameter %1 is passed, but no corresponding %2 exists. QtXmlPatternsRequrese o parmetro %1, pero non se forneceu o %2 que lle corresponde.BThe parameter %1 is required, but no corresponding %2 is supplied. QtXmlPatternsLNon foi posbel vincular o prefixo %1.The prefix %1 cannot be bound. QtXmlPatternsNon foi posbel vincular o prefixo %1. Por omisin, xa est vinculado co espazo de nomes %2.SThe prefix %1 cannot be bound. By default, it is already bound to the namespace %2. QtXmlPatternspO prefixo debe ser un %1 vlido por valor, e %2 non o ./The prefix must be a valid %1, which %2 is not. QtXmlPatternsO nodo raz do segundo argumento da funcin %1 debe ser un nodo documento. %2 non un nodo documento.gThe root node of the second argument to function %1 must be a document node. %2 is not a document node. QtXmlPatternsO segundo argumento de %1 non pode ser do tipo %2. Debe ser de tipo %3, %4 ou %5.QThe second argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. QtXmlPatterns$O nome de destino nunha instrucin de procesamento non pode ser %1 en ningunha combinacin de maisculas nin minsculas, polo que %2 non vlido.~The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, %2 is invalid. QtXmlPatternszO espazo de nomes de destino dun %1 non pode estar en branco.-The target namespace of a %1 cannot be empty. QtXmlPatternsO valor do atributo %1 no elemento %2 debe ser %3 ou %4, non %5.IThe value for attribute %1 on element %2 must either be %3 or %4, not %5. QtXmlPatternspO valor do atributo %1 debe ser do tipo %2 e %3 non o .=The value of attribute %1 must be of type %2, which %3 isn't. QtXmlPatternsO valor do atributo da versin de XSL-T debe ser un valor do tipo %1, e %2 non o .TThe value of the XSL-T version attribute must be a value of type %1, which %2 isn't. QtXmlPatterns2A varibel %1 non usadaThe variable %1 is unused QtXmlPatterns^Hai un valor IDREF sen o ID correspondente: %1.6There is one IDREF value with no corresponding ID: %1. QtXmlPatternsEste procesador non coecedor do Schema e polo tanto %1 non pode empregarse.CThis processor is not Schema-aware and therefore %1 cannot be used. QtXmlPatterns@A hora %1:%2:%3.%4 non vlida.Time %1:%2:%3.%4 is invalid. QtXmlPatternsA hora 24:%1:%2.%3 non vlida. A hora 24, pero os minutos, segundos e milisegundos non son todos 0; _Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0;  QtXmlPatternsOs elementos da folla de estilo de mximo nivel debe estar nun espazo de nomes non nulo, e %1 non o .NTop level stylesheet elements must be in a non-null namespace, which %1 isn't. QtXmlPatternsDous atributos na declaracin dun espazo de nomes teen o mesmo nome: %1.>1}((BpY4)-6^66GS^~6RST>=~.Y; E;EEO;{=8A&τfAd[yLQt6mnPT(T,`zmrMoM EEQnw4w96eRV IduFga!e`)`i*/e`+:1E՘;ͪ;|; i?4rBy0F]}OZf\cgD`cփRg&43jCumtr9qotufsu(K=}kai~~ly GK$%$ˉ+zS!c(`ʁr~^"K *֊K nh,WU|;yωQaZ-Ap8T ? nL`&H/1IxSHLEMYMYMh^:i?Bw9HMxy>"%.ۊJ;TNF]8]I%I5uI5I_I#Ij]IkIQTINYOiOFyO|NN8NnNMMIPOPPTPOuD~uDD<oF/0N,! ,,-,G,l,] fKq.6ɘeI˓5$,I 4fR)fRr*q U/Y<9AbNJ[s |c=R)S}PqVa:VfRkg|!wKm |2 yz (QbWWtb lMT"o%C:&~|)2+ ,Q5Q8Q?"?>uFuKNK-MBV|}]p] e/ g^V\kWPy^8X{y "N5tX5tFFsY5:~,G%rn-n5صǥ@8eZp+Z+k^+خ`t#{y jYa;/ .xABr9\w] s:%H5%R_6d5UC^ƨ!ƨm˾hy2ҝz)ҰxلA#iqէ?li}azhߺgサ<ff`6@m^!c 3O 74 N$~bra~bx>o+mMt6!%?^'k)ў)+uY+3(/1//Y4~L6 Z4? 2AG\Gbw?LAU^OrdwPѧ`CQRCKpSnUUUUUTYĻ@ZF,ZF\ZFZF[/[d]k*r'^nO_Pb_PE_p`uXe**iiZm?$oNxy;{N{k#}uV}w:i}wc}w} hs1lǨ'Bv ttYdR.:.c3h75;DƶYtAnt#tyt}`_ V(a" +PFʢQʢƴ4dRdd*dhdQ059+NS ukmIkbyUUd<Bh|wc  Y!4+,D/K2e69u?;CU]%CU^~DJ0K,KU|E8\ ar)$p&bt,wߟ|(^||R}wZ}$:,}$cr}$V[Dϗ Z DqiT_K<aof+b·K· la˨ lf okL qz`/ tN |oh |C | J t-; ts s] .C 1 C )  h A } h& h R ҉ h. M >+ >z_ ) UU k  n K V  u"~   팤n %' ! P CL =ϸ q>  D"  }K ogr ) */BY + .>` 7u = Bi FX J"_ K28 Ty , T^B Uj4 ]w ] ` `& `) `vF b c( cE dlb e)B eq f1j f* g5U gn k,/M rD"4 t uj4? y5 ~ = 90 I@| IG I^H ;1 S  -& { fk J\ $L $= %pD ," ,k8 E%  t `- n+ H BDT v\ t l\ ʀs ˔ P@ P% 2 68$ v" :I f $ f l 4x . s't so ~ AA_ 9 1U ` 98 rG  m,00 52 #-t #-t 0NE 5 :  Ank CU* E9-u I9 L L LA L Mc\c= Oٳ SE VB X\ ZT ]$P f)% f)m? f= io>: m`:T w- yr]  H#I Hk C C 0 nO $nE .@_ 3 i! <9 \{  7 A u %  J' Jo  k Ӈ8 M 6 /C ̺ -D ۷ k; k U) <9 MN >  0U r $rY r z+  @  I{ % U xH   .I 2 7F <u > > >e >] > >i >& >1 >u >u >: ?t| DT z Go ID IHa K K Mb[ P@ QTV/ RVt RV RVA S.l SGv S Y Y [d hۮ{ j7ojr pIL sL Bc ^ TO@ Tn T T o QD ] {  , ,W S1 )dn )d~ T < .O . .6 . .6 .' .* .w  i} a ad C ɾd# ɾd e@& ҂ч w %& u G b 4# 9 aq$ I :b? ʜG 3z  3 $< x_ #$d %nf (I$d +>Jm 0E ;ɾ Fgإ K9T Pt Pt¢ S,] T>3 cXL fe9 fe g iFCIr iqR iI jN.n jӮf m9q m9q uV ub up v& v{  w9 wc w w}9 w}c9 w} yn uac <%_ h, J ^ O \ R P6  xNG "X U5 ɰe r ְ X* b & xr D+ sR t5 t5p % 2  ) Q :Rw#  bTC#CqgTCv*A:*/EBR/E/E4QtI_OOS5XRu[ Ħa.`a%gcevɅ1wy$&Ky?.~%d44SCNT#^Ǘq:<DB@q҅Ӯ`SӮ`YӮ`[(rݖ S[yr`j2j3Uw  J &G nlD"nn"#+"#y$U/%4c}%4wt-v/0i)R0SK1cq1c^2wTRD;,H/JdKhL$.c5:c5g3iCpiTtlpyC< {~aQ/~56$&&DDE`v`n[)OͣW'oP>bNih E"~krBrY-1tky֠2ڔ.YBPt2Fy7&)wd$U%i  Close Tab CloseButton< > Debugger::JSAgentWatchData ! Fake error! FakeReply$ URL   Invalid URL FakeReply %1About %1MAC_APPLICATION_MENU  %1Hide %1MAC_APPLICATION_MENU...Preferences...MAC_APPLICATION_MENU  %1Quit %1MAC_APPLICATION_MENUServicesMAC_APPLICATION_MENU Show AllMAC_APPLICATION_MENU  AccessibilityPhonon::  CommunicationPhonon:: GamesPhonon:: MusicPhonon::  NotificationsPhonon:: VideoPhonon::<html>   <b>%1</b><br/>             .</html>Switching to the audio playback device %1
which has higher preference or is specifically configured for this stream.Phonon::AudioOutput<html>   <b>%1</b><br/>         .</html>xSwitching to the audio playback device %1
which just became available and has higher preference.Phonon::AudioOutput<html> <b>%1</b> .<br/>   <b>%2</b>.</html>^The audio playback device %1 does not work.
Falling back to %2.Phonon::AudioOutput"   "%1"Revert back to device '%1'Phonon::AudioOutput:  GStreamer   .      ~Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabledPhonon::Gstreamer::Backend:    gstreamer0.10-plugins-good  .       .Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled.Phonon::Gstreamer::Backend  .    () ()    : %0`A required codec is missing. You need to install the following codec(s) to play this content: %0Phonon::Gstreamer::MediaObject   .     GStreamer     libgstreamer-plugins-base .wCannot start playback. Check your GStreamer installation and make sure you have libgstreamer-plugins-base installed.Phonon::Gstreamer::MediaObjectL      .Could not decode media source.Phonon::Gstreamer::MediaObject>     .Could not locate media source.Phonon::Gstreamer::MediaObjectX     .  .:Could not open audio device. The device is already in use.Phonon::Gstreamer::MediaObject>     .Could not open media source.Phonon::Gstreamer::MediaObject&   .Invalid source type.Phonon::Gstreamer::MediaObject  Access denied Phonon::MMF Already exists Phonon::MMF  Audio Output Phonon::MMF  Audio output error Phonon::MMF"  Could not connect Phonon::MMF DRM DRM error Phonon::MMF  Decoder error Phonon::MMF  Disconnected Phonon::MMF In use Phonon::MMF$   Insufficient bandwidth Phonon::MMF URL  Invalid URL Phonon::MMF Invalid protocol Phonon::MMF   Network communication error Phonon::MMF  Network unavailable Phonon::MMF No error Phonon::MMF  Not found Phonon::MMF  Not ready Phonon::MMF  Not supported Phonon::MMF   Out of memory Phonon::MMF  Path not found Phonon::MMF Permission denied Phonon::MMF  Proxy server error Phonon::MMF"   Proxy server not supported Phonon::MMF  The audio output device Phonon::MMF&   (%1)Unknown error (%1) Phonon::MMF  Video output error Phonon::MMF Download error Phonon::MMF::AbstractMediaPlayer   URLError opening URL Phonon::MMF::AbstractMediaPlayer"  Error opening file Phonon::MMF::AbstractMediaPlayer"  Error opening resource Phonon::MMF::AbstractMediaPlayer>  :   )Error opening source: resource not opened Phonon::MMF::AbstractMediaPlayer"  Loading clip failed Phonon::MMF::AbstractMediaPlayer  Not ready to play Phonon::MMF::AbstractMediaPlayer*   Setting volume failed Phonon::MMF::AbstractMediaPlayer   Getting position failed Phonon::MMF::AbstractVideoPlayer"  Opening clip failed Phonon::MMF::AbstractVideoPlayer  Pause failed Phonon::MMF::AbstractVideoPlayer  Seek failed Phonon::MMF::AbstractVideoPlayer   Getting position failedPhonon::MMF::AudioPlayer"  Video display errorPhonon::MMF::DsaVideoPlayer EnabledPhonon::MMF::EffectFactory (%) Density (%) Phonon::MMF::EnvironmentalReverb (%) Diffusion (%) Phonon::MMF::EnvironmentalReverb"  Video display errorPhonon::MMF::SurfaceVideoPlayer MutedPhonon::VolumeSlider       .    0%.    %1%WUse this slider to adjust the volume. The leftmost position is 0%. The rightmost is %1%Phonon::VolumeSlider : %1% Volume: %1%Phonon::VolumeSlider%1, %2  %1, %2 not definedQ3Accel&%1    Ambiguous %1 not handledQ3AccelDelete Q3DataTableFalse Q3DataTableInsert Q3DataTableTrue Q3DataTableUpdate Q3DataTableH%1   .    .+%1 File not found. Check path and filename. Q3FileDialog&&Delete Q3FileDialog&&No Q3FileDialog &&OK Q3FileDialog&&Open Q3FileDialog& &Rename Q3FileDialog &&Save Q3FileDialog&  &Unsorted Q3FileDialog&&Yes Q3FileDialog\<qt>      %1 "%2"?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialog  (*) All Files (*) Q3FileDialog  (*.*)All Files (*.*) Q3FileDialog  Attributes Q3FileDialog Back Q3FileDialog Cancel Q3FileDialog"   Copy or Move a File Q3FileDialog  Create New Folder Q3FileDialog Date Q3FileDialog  %1 Delete %1 Q3FileDialog  Detail View Q3FileDialog Dir Q3FileDialog  Directories Q3FileDialog: Directory: Q3FileDialog Error Q3FileDialogFile Q3FileDialog& : File &name: Q3FileDialog& : File &type: Q3FileDialog Find Directory Q3FileDialog  Inaccessible Q3FileDialog  List View Q3FileDialog& : Look &in: Q3FileDialogName Q3FileDialog  New Folder Q3FileDialog  %1 New Folder %1 Q3FileDialog  1 New Folder 1 Q3FileDialog   One directory up Q3FileDialog Open Q3FileDialog  Open  Q3FileDialog4    Preview File Contents Q3FileDialog@     Preview File Info Q3FileDialog& R&eload Q3FileDialog  Read-only Q3FileDialog  Read-write Q3FileDialog: %1Read: %1 Q3FileDialog Save As Q3FileDialog Select a Directory Q3FileDialog$  &Show &hidden files Q3FileDialogSize Q3FileDialogSort Q3FileDialog  & Sort by &Date Q3FileDialog  & Sort by &Name Q3FileDialog  & Sort by &Size Q3FileDialog Special Q3FileDialog(   Symlink to Directory Q3FileDialog$   Symlink to File Q3FileDialog0    Symlink to Special Q3FileDialog Type Q3FileDialog  Write-only Q3FileDialog: %1 Write: %1 Q3FileDialog the directory Q3FileDialog the file Q3FileDialog  the symlink Q3FileDialog4    %1Could not create directory %1 Q3LocalFs&   %1Could not open %1 Q3LocalFs4    %1Could not read directory %1 Q3LocalFsD      %1%Could not remove file or directory %1 Q3LocalFsF      %1  %2Could not rename %1 to %2 Q3LocalFs&   %1Could not write %1 Q3LocalFs ... Customize... Q3MainWindow Line up Q3MainWindow6    Operation stopped by the userQ3NetworkProtocol CancelQ3ProgressDialogApply Q3TabDialog Cancel Q3TabDialog Defaults Q3TabDialogHelp Q3TabDialog OK Q3TabDialog &&Copy Q3TextEdit &&Paste Q3TextEdit &&Redo Q3TextEdit&&Undo Q3TextEditClear Q3TextEdit &Cu&t Q3TextEdit  Select All Q3TextEditClose Q3TitleBar Closes the window Q3TitleBar(   Makes the window full screen Q3TitleBarMaximize Q3TitleBarMinimize Q3TitleBar@     &Puts a maximized window back to normal Q3TitleBar6    &Puts a minimized window back to normal Q3TitleBar  Restore down Q3TitleBar  Restore up Q3TitleBar System Q3TitleBar ...More... Q3ToolBar( ) (unknown) Q3UrlOperatorr "%1"         IThe protocol `%1' does not support copying or moving files or directories Q3UrlOperatorT "%1"     ;The protocol `%1' does not support creating new directories Q3UrlOperatorF "%1"    0The protocol `%1' does not support getting files Q3UrlOperatorF "%1"    6The protocol `%1' does not support listing directories Q3UrlOperatorF "%1"    0The protocol `%1' does not support putting files Q3UrlOperatorX "%1"      @The protocol `%1' does not support removing files or directories Q3UrlOperatord "%1"       @The protocol `%1' does not support renaming files or directories Q3UrlOperator0 "%1"  "The protocol `%1' is not supported Q3UrlOperator &&CancelQ3Wizard &&FinishQ3Wizard &&HelpQ3Wizard& >&Next >Q3Wizard< &< &BackQ3Wizard Connection refusedQAbstractSocket  Connection timed outQAbstractSocket  Host not foundQAbstractSocket$   Network unreachableQAbstractSocket.    $Operation on socket is not supportedQAbstractSocket  Socket is not connectedQAbstractSocket    Socket operation timed outQAbstractSocket&  &Select AllQAbstractSpinBox &&Step upQAbstractSpinBox & Step &downQAbstractSpinBoxCheckQAccessibleButtonPressQAccessibleButton UncheckQAccessibleButtonActivate QApplication>     #Activates the program's main window QApplicationT  "%1"   Qt %2,  Qt %3.,Executable '%1' requires Qt %2, found Qt %3. QApplication,   QtIncompatible Qt Library Error QApplicationRTLQT_LAYOUT_DIRECTION QApplication &&Cancel QAxSelect& COM: COM &Object: QAxSelect OK QAxSelect"  ActiveXSelect ActiveX Control QAxSelectCheck QCheckBoxToggle QCheckBox Uncheck QCheckBox4&   &Add to Custom Colors QColorDialog&  &Basic colors QColorDialog( & &Custom colors QColorDialog &:&Green: QColorDialog &:&Red: QColorDialog&:&Sat: QColorDialog &:&Val: QColorDialog& :A&lpha channel: QColorDialog &:Bl&ue: QColorDialog &:Hu&e: QColorDialog  Select Color QColorDialogClose QComboBoxFalse QComboBoxOpen QComboBoxTrue QComboBox %1:  %1: already existsQCoreApplication %1:  %1: does not existQCoreApplication(%1:  ftok %1: ftok failedQCoreApplication"%1:   %1: key is emptyQCoreApplication&%1:   %1: out of resourcesQCoreApplication%1:  %1: permission deniedQCoreApplication2%1:    %1: unable to make keyQCoreApplication*%1:    %2%1: unknown error %2QCoreApplication0   Unable to commit transaction QDB2Driver"  Unable to connect QDB2Driver@    Unable to rollback transaction QDB2Driver8    Unable to set autocommit QDB2Driver,   Unable to bind variable QDB2Result*   Unable to execute statement QDB2Result4    Unable to fetch first QDB2Result.    Unable to fetch next QDB2Result:     %1Unable to fetch record %1 QDB2Result,   Unable to prepare statement QDB2Result AM QDateTimeEdit PM QDateTimeEdit am QDateTimeEdit pm QDateTimeEdit>      < 0Cannot set a duration of < 0QDeclarativeAnchorAnimation  Duplicate signal nameQDeclarativeCompiler(   .Element is not creatable.QDeclarativeCompiler   Illegal method nameQDeclarativeCompiler"   Illegal property nameQDeclarativeCompiler   Illegal signal nameQDeclarativeCompiler    Invalid empty IDQDeclarativeCompiler(   Invalid property nestingQDeclarativeCompiler(   Invalid property typeQDeclarativeCompiler. URL   Invalid empty URLQDeclarativeComponent> createObject:   $createObject: value is not an objectQDeclarativeComponent(:  Connections: syntax errorQDeclarativeConnections  is not a typeQDeclarativeImportDatabase local directoryQDeclarativeImportDatabase  Illegal characterQDeclarativeParser  Syntax errorQDeclarativeParser>      < 0Cannot set a duration of < 0QDeclarativePauseAnimation(  : %1Cannot open: %1QDeclarativePixmap* : %1: %2Error decoding: %1: %2QDeclarativePixmap@    : %1%Failed to get image from provider: %1QDeclarativePixmap>      < 0Cannot set a duration of < 0QDeclarativePropertyAnimation %1 %2%1 %2QDeclarativeTypeLoader  %1  Script %1 unavailableQDeclarativeTypeLoader  %1  Type %1 unavailableQDeclarativeTypeLoader QDialQDialQDial  SliderHandleQDial SpeedoMeterQDialDoneQDialog  ? What's This?QDialog &&CancelQDialogButtonBox &&CloseQDialogButtonBox&&NoQDialogButtonBox &&OKQDialogButtonBox &&SaveQDialogButtonBox&&YesQDialogButtonBoxAbortQDialogButtonBoxApplyQDialogButtonBox CancelQDialogButtonBox CloseQDialogButtonBox  Close without SavingQDialogButtonBoxDiscardQDialogButtonBox  Don't SaveQDialogButtonBoxHelpQDialogButtonBox IgnoreQDialogButtonBox&  N&o to AllQDialogButtonBox OKQDialogButtonBox OpenQDialogButtonBoxResetQDialogButtonBox   Restore DefaultsQDialogButtonBox RetryQDialogButtonBoxSaveQDialogButtonBox Save AllQDialogButtonBox & Yes to &AllQDialogButtonBox  Date Modified QDirModelKind QDirModelName QDirModelSize QDirModel Type QDirModelClose QDockWidgetDock QDockWidgetFloat QDockWidgetLessQDoubleSpinBoxMoreQDoubleSpinBox &&OK QErrorMessage$&   &Show this message again QErrorMessage :Debug Message: QErrorMessage : Fatal Error: QErrorMessage :Warning: QErrorMessage:    %1 Cannot create %1 for outputQFile:    %1 Cannot open %1 for inputQFile.   Cannot open for outputQFile4    Cannot remove source fileQFile  Destination file existsQFile*   Failure to write blockQFileh%1   .       .K%1 Directory not found. Please verify the correct directory name was given. QFileDialogb%1   .       .A%1 File not found. Please verify the correct file name was given. QFileDialogJ %1  .    ?-%1 already exists. Do you want to replace it? QFileDialog&&Choose QFileDialog&&Delete QFileDialog & &New Folder QFileDialog&&Open QFileDialog& &Rename QFileDialog &&Save QFileDialogd%1   .      ?9'%1' is write protected. Do you want to delete it anyway? QFileDialog  (*) All Files (*) QFileDialog  (*.*)All Files (*.*) QFileDialogJ       "%1"?!Are sure you want to delete '%1'? QFileDialog Back QFileDialog0   .Could not delete directory. QFileDialog  Create New Folder QFileDialog  Create a New Folder QFileDialog  Detail View QFileDialog  Directories QFileDialog: Directory: QFileDialogDrive QFileDialogFile QFileDialog& : File &name: QFileDialog :Files of type: QFileDialog Find Directory QFileDialog Folder QFileDialog Forward QFileDialog Go back QFileDialog  Go forward QFileDialog  List View QFileDialog :Look in: QFileDialog  My Computer QFileDialog  New Folder QFileDialog Open QFileDialog Parent Directory QFileDialog  Recent Places QFileDialogRemove QFileDialog Save As QFileDialog Shortcut QFileDialog Show  QFileDialog$  &Show &hidden files QFileDialog Unknown QFileDialog %1 "%1 GBQFileSystemModel %1 "%1 KBQFileSystemModel %1 "%1 MBQFileSystemModel %1 "%1 TBQFileSystemModel%1 %1 bytesQFileSystemModel<b>    "%1".</b><p>  ,       .oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModelComputerQFileSystemModel  Date ModifiedQFileSystemModel   Invalid filenameQFileSystemModelKindQFileSystemModel  My ComputerQFileSystemModelNameQFileSystemModelSizeQFileSystemModel TypeQFileSystemModelAny QFontDatabase Arabic QFontDatabase Armenian QFontDatabase Bengali QFontDatabaseBlack QFontDatabase Bold QFontDatabaseCyrillic QFontDatabase Demi QFontDatabase  Demi Bold QFontDatabase Devanagari QFontDatabaseGeorgian QFontDatabase Greek QFontDatabase'Gujarati QFontDatabaseGurmukhi QFontDatabase Hebrew QFontDatabaseItalic QFontDatabase Japanese QFontDatabase Kannada QFontDatabaseKhmer QFontDatabaseKorean QFontDatabaseLao QFontDatabase Latin QFontDatabase Malayalam QFontDatabase Myanmar QFontDatabaseNormal QFontDatabaseOblique QFontDatabaseOgham QFontDatabase Oriya QFontDatabaseRunic QFontDatabase Simplified Chinese QFontDatabaseSinhala QFontDatabase Symbol QFontDatabase Syriac QFontDatabase Tamil QFontDatabase Telugu QFontDatabaseThaana QFontDatabaseThai QFontDatabase Tibetan QFontDatabase Traditional Chinese QFontDatabase Vietnamese QFontDatabase &&Font QFontDialog &&Size QFontDialog & &Underline QFontDialog Effects QFontDialog&  Font st&yle QFontDialog Sample QFontDialog  Select Font QFontDialog & Stri&keout QFontDialog& Wr&iting System QFontDialog*  : %1Changing directory failed: %1QFtp  Connected to hostQFtp    %1Connected to host %1QFtp,   : %1Connecting to host failed: %1QFtp Connection closedQFtp>     &Connection refused for data connectionQFtp*   %1 Connection refused to host %1QFtp0    %1 Connection timed out to host %1QFtp   %1 Connection to %1 closedQFtp,  : %1Creating directory failed: %1QFtp(  : %1Downloading file failed: %1QFtp %1  Host %1 foundQFtp %1  Host %1 not foundQFtp  Host foundQFtpN     : %1Listing directory failed: %1QFtp" : %1Login failed: %1QFtp  Not connectedQFtp*  : %1Removing directory failed: %1QFtp&  : %1Removing file failed: %1QFtp   Unknown errorQFtp(  : %1Uploading file failed: %1QFtp/Toggle QGroupBox   No host name given QHostInfo   Unknown error QHostInfo  Host not foundQHostInfoAgent   Invalid hostnameQHostInfoAgent   No host name givenQHostInfoAgent&   Unknown address typeQHostInfoAgent   Unknown errorQHostInfoAgent&   (%1)Unknown error (%1)QHostInfoAgent Authentication requiredQHttp  Connected to hostQHttp    %1Connected to host %1QHttp Connection closedQHttp Connection refusedQHttp.  (  )!Connection refused (or timed out)QHttp   %1 Connection to %1 closedQHttp Data corruptedQHttp6     Error writing response to deviceQHttp HTTP HTTP request failedQHttpj  HTTPS   SSL    :HTTPS connection requested but SSL support not compiled inQHttp %1  Host %1 foundQHttp %1  Host %1 not foundQHttp  Host foundQHttp  Host requires authenticationQHttp(  HTTP  Invalid HTTP chunked bodyQHttpB     HTTPInvalid HTTP response headerQHttp.    No server set to connect toQHttp2    Proxy authentication requiredQHttp(   Proxy requires authenticationQHttp"  Request abortedQHttp0   SSL SSL handshake failedQHttp6     %Server closed connection unexpectedlyQHttp&   Unknown authentication methodQHttp   Unknown errorQHttp*   Unknown protocol specifiedQHttp  Wrong content lengthQHttp Authentication requiredQHttpSocketEngine>   HTTP  (Did not receive HTTP response from proxyQHttpSocketEngineH      HTTP#Error communicating with HTTP proxyQHttpSocketEngineJ      /Error parsing authentication request from proxyQHttpSocketEngine8     #Proxy connection closed prematurelyQHttpSocketEngine(   Proxy connection refusedQHttpSocketEngine&   Proxy denied connectionQHttpSocketEngine,    !Proxy server connection timed outQHttpSocketEngine"   Proxy server not foundQHttpSocketEngine4   Could not start transaction QIBaseDriver.   Error opening database QIBaseDriver0   Unable to commit transaction QIBaseDriver@    Unable to rollback transaction QIBaseDriver.   Could not allocate statement QIBaseResult2    "Could not describe input statement QIBaseResult*   Could not describe statement QIBaseResult:     Could not fetch next item QIBaseResult8    Could not find array QIBaseResultB     Could not get array data QIBaseResult8    Could not get query info QIBaseResult6    Could not get statement info QIBaseResult,   Could not prepare statement QIBaseResult4   Could not start transaction QIBaseResult,   Unable to close statement QIBaseResult0   Unable to commit transaction QIBaseResult*   BLOBUnable to create BLOB QIBaseResult,   Unable to execute query QIBaseResult*   BLOBUnable to open BLOB QIBaseResult*   BLOBUnable to read BLOB QIBaseResult*   BLOBUnable to write BLOB QIBaseResult$   No space left on device QIODevice,    No such file or directory QIODevice Permission denied QIODevice*   Too many open files QIODevice   Unknown error QIODeviceFEPFEP QInputContext(   Mac OS XMac OS X input method QInputContext&   WindowsWindows input method QInputContextXIMXIM QInputContext  XIMXIM input method QInputContext :Enter a value: QInputDialog<    %1: %2Cannot load library %1: %2QLibrary<    %1: %2Cannot unload library %1: %2QLibrary   Unknown errorQLibrary &&Copy QLineEdit &&Paste QLineEdit &&Redo QLineEdit&&Undo QLineEdit &Cu&t QLineEditDelete QLineEdit  Select All QLineEdit %1:  %1: Address in use QLocalServer%1:  %1: Name error QLocalServer%1:  %1: Permission denied QLocalServer*%1:    %2%1: Unknown error %2 QLocalServer%1:  %1: Access denied QLocalSocket%1:  %1: Connection error QLocalSocket%1:  %1: Connection refused QLocalSocket0%1:    %1: Datagram too large QLocalSocket%1:   %1: Invalid name QLocalSocket"%1:   %1: Remote closed QLocalSocket&%1:   %1: Socket access error QLocalSocket(%1:    %1: Socket operation timed out QLocalSocket$%1:   %1: Socket resource error QLocalSocket2%1:    )%1: The socket operation is not supported QLocalSocket$%1:   %1: Unknown error QLocalSocket*%1:    %2%1: Unknown error %2 QLocalSocket4   Unable to begin transaction QMYSQLDriver0   Unable to commit transaction QMYSQLDriver"  Unable to connect QMYSQLDriver:     'Unable to open database ' QMYSQLDriver@    Unable to rollback transaction QMYSQLDriver4   outvaluesUnable to bind outvalues QMYSQLResult(   Unable to bind value QMYSQLResult4    Unable to execute next query QMYSQLResult,   Unable to execute query QMYSQLResult*   Unable to execute statement QMYSQLResult.   Unable to fetch data QMYSQLResult,   Unable to prepare statement QMYSQLResult*   Unable to reset statement QMYSQLResult4    Unable to store next result QMYSQLResult,   Unable to store result QMYSQLResult:    !Unable to store statement results QMYSQLResult( ) (Untitled)QMdiArea%1 - [%2] %1 - [%2] QMdiSubWindow &&Close QMdiSubWindow&&Move QMdiSubWindow &&Restore QMdiSubWindow &&Size QMdiSubWindow - [%1]- [%1] QMdiSubWindowClose QMdiSubWindowHelp QMdiSubWindow & Ma&ximize QMdiSubWindowMaximize QMdiSubWindow Menu QMdiSubWindow & Mi&nimize QMdiSubWindowMinimize QMdiSubWindowRestore QMdiSubWindow  Restore Down QMdiSubWindowShade QMdiSubWindow&  Stay on &Top QMdiSubWindow Unshade QMdiSubWindowCloseQMenuExecuteQMenuOpenQMenu ActionsQMenuBar  Corner ToolbarQMenuBarn<h3> Qt</h3><p>   Qt  %1.</p>8

About Qt

This program uses Qt version %1.

 QMessageBox <p>&#8207;Qt    C++&#8206;    -.</p><p>&#8207;Qt   -   MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux,     Unix. Qt        Qt  Embedded Linux  Qt  Windows CE.</p><p>&#8207;Qt             .</p><p>&#8207;Qt             /                    GNU LGPL  2.1  GNU GPL  3.0.</p><p>&#8207;Qt    GNU LGPL  2.1       Qt (   )         GNU LGPL  2.1.</p><p>&#8207;Qt    GNU General Public License  3.0       Qt              GNU GPL  3.0           GNU GPL  3.0.</p><p>  <a href="http://qt.digia.com/product/licensing">qt.digia.com/product/licensing</a>       Qt.</p><p>Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).</p><p>Qt is a Digia product. See <a href="http://qt.digia.com/">qt.digia.com</a> for more information.</p>

Qt is a C++ toolkit for cross-platform application development.

Qt provides single-source portability across MS Windows, Mac OS X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.

Qt is available under three different licensing options designed to accommodate the needs of our various users.

Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.

Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.

Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.

Please see qt.digia.com/product/licensing for an overview of Qt licensing.

Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).

Qt is a Digia product. See qt.digia.com for more information.

 QMessageBox QtAbout Qt QMessageBoxHelp QMessageBox ...Hide Details... QMessageBox OK QMessageBox ...Show Details... QMessageBox   Select IMQMultiInputContext>      4Another socket is already listening on the same portQNativeSocketEnginej   IPv6      IPv6=Attempt to use IPv6 socket on a platform with no IPv6 supportQNativeSocketEngine Connection refusedQNativeSocketEngine  Connection timed outQNativeSocketEngineJ      Datagram was too large to sendQNativeSocketEngine$   Host unreachableQNativeSocketEngine    Invalid socket descriptorQNativeSocketEngine  Network errorQNativeSocketEngine    Network operation timed outQNativeSocketEngine$   Network unreachableQNativeSocketEngine  Out of resourcesQNativeSocketEngine Permission deniedQNativeSocketEngine,   Protocol type not supportedQNativeSocketEngine"  The address is not availableQNativeSocketEngine The address is protectedQNativeSocketEngine<    #The bound address is already in useQNativeSocketEngineF      ,The proxy type is invalid for this operationQNativeSocketEngine4    %The remote host closed the connectionQNativeSocketEngine<    broadcast%Unable to initialize broadcast socketQNativeSocketEngine8    -(Unable to initialize non-blocking socketQNativeSocketEngine*   Unable to receive a messageQNativeSocketEngine,   Unable to send a messageQNativeSocketEngine   Unable to writeQNativeSocketEngine   Unknown errorQNativeSocketEngine$   Unsupported socket operationQNativeSocketEngine  %1Error opening %1QNetworkAccessCacheBackend, URI  : %1Invalid URI: %1QNetworkAccessDataBackendL        %13Remote host closed the connection prematurely on %1QNetworkAccessDebugPipeBackend&   %1: %2Socket error on %1: %2QNetworkAccessDebugPipeBackend>     %1: %2Write error writing to %1: %2QNetworkAccessDebugPipeBackendP    %1:   #Cannot open %1: Path is a directoryQNetworkAccessFileBackend(  %1: %2Error opening %1: %2QNetworkAccessFileBackendB     %1: %2Read error reading from %1: %2QNetworkAccessFileBackend>     %1: %2Write error writing to %1: %2QNetworkAccessFileBackendF    %1:  Cannot open %1: is a directoryQNetworkAccessFtpBackend,   %1: %2Error while downloading %1: %2QNetworkAccessFtpBackend,   %1: %2Error while uploading %1: %2QNetworkAccessFtpBackend:  %1 :  0Logging in to %1 failed: authentication requiredQNetworkAccessFtpBackend.    No suitable proxy foundQNetworkAccessFtpBackend.    No suitable proxy foundQNetworkAccessHttpBackend:  %1 -  : %2)Error downloading %1 - server replied: %2 QNetworkReply   .Network session error. QNetworkReply. "%1"  Protocol "%1" is unknown QNetworkReply  .Temporary network failure. QNetworkReply.   .backend start error. QNetworkReply Operation canceledQNetworkReplyImpl  .Invalid configuration.QNetworkSession  Roaming errorQNetworkSessionPrivateImpl6    .'Roaming was aborted or is not possible.QNetworkSessionPrivateImplB      !Session aborted by user or systemQNetworkSessionPrivateImplP      .7The requested operation is not supported by the system.QNetworkSessionPrivateImplF      ..The session was aborted by the user or system.QNetworkSessionPrivateImpl4    .+The specified configuration cannot be used.QNetworkSessionPrivateImpl  Unidentified ErrorQNetworkSessionPrivateImpl*   .Unknown session error.QNetworkSessionPrivateImpl4   Unable to begin transaction QOCIDriver0   Unable to commit transaction QOCIDriver   Unable to initialize QOCIDriver"  Unable to logon QOCIDriver@    Unable to rollback transaction QOCIDriver.   Unable to alloc statement QOCIResultH      'Unable to bind column for batch execute QOCIResult(   Unable to bind value QOCIResult6    !Unable to execute batch statement QOCIResult*   Unable to execute statement QOCIResult8    Unable to get statement type QOCIResult,   Unable to goto next QOCIResult,   Unable to prepare statement QOCIResult0   Unable to commit transaction QODBCDriver"  Unable to connect QODBCDriver8    Unable to disable autocommit QODBCDriver8    Unable to enable autocommit QODBCDriver@    Unable to rollback transaction QODBCDriver,   Unable to bind variable QODBCResult*   Unable to execute statement QODBCResult   Unable to fetch QODBCResult4    Unable to fetch first QODBCResult4    Unable to fetch last QODBCResult.    Unable to fetch next QODBCResult2    Unable to fetch previous QODBCResult,   Unable to prepare statement QODBCResult8    Could not read image dataQObject  Host not foundQObject&  PulseAudioPulseAudio Sound ServerQObject*  : "%1"invalid query: "%1"QObjectNameQPPDOptionsModelValueQPPDOptionsModel4   Could not begin transaction QPSQLDriver0   Could not commit transaction QPSQLDriver@    Could not rollback transaction QPSQLDriver"  Unable to connect QPSQLDriver"  Unable to subscribe QPSQLDriver*   Unable to unsubscribe QPSQLDriver.   Unable to create query QPSQLResult,   Unable to prepare statement QPSQLResult (")Centimeters (cm)QPageSetupWidgetFormQPageSetupWidget :Height:QPageSetupWidget' () Inches (in)QPageSetupWidget  LandscapeQPageSetupWidget MarginsQPageSetupWidget (")Millimeters (mm)QPageSetupWidget  OrientationQPageSetupWidget : Page size:QPageSetupWidgetPaperQPageSetupWidget : Paper source:QPageSetupWidget () Points (pt)QPageSetupWidget PortraitQPageSetupWidget Reverse landscapeQPageSetupWidget Reverse portraitQPageSetupWidget :Width:QPageSetupWidget  bottom marginQPageSetupWidget  left marginQPageSetupWidget  right marginQPageSetupWidget  top marginQPageSetupWidget   .The plugin was not loaded. QPluginLoader   Unknown error QPluginLoaderJ %1  .    ?/%1 already exists. Do you want to overwrite it? QPrintDialogH%1  .     .7%1 is a directory. Please choose a different file name. QPrintDialog& << &Options << QPrintDialog& >> &Options >> QPrintDialog &&Print QPrintDialog><qt>   ?</qt>%Do you want to overwrite it? QPrintDialogA0A0 QPrintDialog*A0 ( 841 x 1189 ")A0 (841 x 1189 mm) QPrintDialogA1A1 QPrintDialog(A1 ( 594 x 841 ")A1 (594 x 841 mm) QPrintDialogA2A2 QPrintDialog(A2 ( 420 x 594 ")A2 (420 x 594 mm) QPrintDialogA3A3 QPrintDialog(A3 ( 297 x 420 ")A3 (297 x 420 mm) QPrintDialogA4A4 QPrintDialogTA4 ( 210 x 297 ", 8.26 x 11.7 ')%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialogA5A5 QPrintDialog(A5 ( 148 x 210 ")A5 (148 x 210 mm) QPrintDialogA6A6 QPrintDialog(A6 ( 105 x 148 ")A6 (105 x 148 mm) QPrintDialogA7A7 QPrintDialog&A7 ( 74 x 105 ")A7 (74 x 105 mm) QPrintDialogA8A8 QPrintDialog$A8 ( 52 x 74 ")A8 (52 x 74 mm) QPrintDialogA9A9 QPrintDialog$A9 ( 37 x 52 ")A9 (37 x 52 mm) QPrintDialog : %1 Aliases: %1 QPrintDialogB0B0 QPrintDialog,B0 ( 1000 x 1414 ")B0 (1000 x 1414 mm) QPrintDialogB1B1 QPrintDialog*B1 ( 707 x 1000 ")B1 (707 x 1000 mm) QPrintDialogB10B10 QPrintDialog&B10 ( 31 x 44 ")B10 (31 x 44 mm) QPrintDialogB2B2 QPrintDialog(B2 ( 500 x 707 ")B2 (500 x 707 mm) QPrintDialogB3B3 QPrintDialog(B3 ( 353 x 500 ")B3 (353 x 500 mm) QPrintDialogB4B4 QPrintDialog(B4 ( 250 x 353 ")B4 (250 x 353 mm) QPrintDialogB5B5 QPrintDialogTB5 ( 176 x 250 ", 6.93 x 9.84 ')%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialogB6B6 QPrintDialog(B6 ( 125 x 176 ")B6 (125 x 176 mm) QPrintDialogB7B7 QPrintDialog&B7 ( 88 x 125 ")B7 (88 x 125 mm) QPrintDialogB8B8 QPrintDialog$B8 ( 62 x 88 ")B8 (62 x 88 mm) QPrintDialogB9B9 QPrintDialog$B9 ( 44 x 62 ")B9 (44 x 62 mm) QPrintDialogC5EC5E QPrintDialog*C5E ( 163 x 229 ")C5E (163 x 229 mm) QPrintDialog Custom QPrintDialogDLEDLE QPrintDialog*DLE ( 110 x 220 ")DLE (110 x 220 mm) QPrintDialog  Executive QPrintDialogT (7.5 x 10 ', 191 x 254 "))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialogX %1   .     .=File %1 is not writable. Please choose a different file name. QPrintDialog   File exists QPrintDialog Folio QPrintDialog. (210 x 330 ")Folio (210 x 330 mm) QPrintDialog Ledger QPrintDialog6  (432 x 279 ")Ledger (432 x 279 mm) QPrintDialog Legal QPrintDialogN (8.5 x 14 ', 216 x 356 ")%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialogLetter QPrintDialogN (8.5 x 11 ' 216 x 279 ")&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialog  Local file QPrintDialog OK QPrintDialogPrint QPrintDialog   ...Print To File ... QPrintDialog  Print all QPrintDialog  Print current page QPrintDialog  Print range QPrintDialog Print selection QPrintDialog   (PDF)Print to File (PDF) QPrintDialog.  (Postscript)Print to File (Postscript) QPrintDialog Tabloid QPrintDialog. (279 x 432 ")Tabloid (279 x 432 mm) QPrintDialogN       .7The 'From' value cannot be greater than the 'To' value. QPrintDialog&US Common #10 US Common #10 Envelope QPrintDialogFUS Common #10  (105 x 241 ")%US Common #10 Envelope (105 x 241 mm) QPrintDialog locally connected QPrintDialog unknown QPrintDialog%1%%1%QPrintPreviewDialogCloseQPrintPreviewDialog PDF Export to PDFQPrintPreviewDialog  PostScriptExport to PostScriptQPrintPreviewDialog  First pageQPrintPreviewDialog Fit pageQPrintPreviewDialog  Fit widthQPrintPreviewDialog  LandscapeQPrintPreviewDialog  Last pageQPrintPreviewDialog  Next pageQPrintPreviewDialog  Page SetupQPrintPreviewDialog  Page setupQPrintPreviewDialog PortraitQPrintPreviewDialog  Previous pageQPrintPreviewDialogPrintQPrintPreviewDialog  Print PreviewQPrintPreviewDialog:     Show overview of all pagesQPrintPreviewDialog  Show single pageQPrintPreviewDialog Zoom inQPrintPreviewDialog Zoom outQPrintPreviewDialog AdvancedQPrintPropertiesWidgetFormQPrintPropertiesWidgetPageQPrintPropertiesWidget CollateQPrintSettingsOutputColorQPrintSettingsOutput  Color ModeQPrintSettingsOutput CopiesQPrintSettingsOutput:Copies:QPrintSettingsOutput  Current PageQPrintSettingsOutput   Duplex PrintingQPrintSettingsOutputFormQPrintSettingsOutput  GrayscaleQPrintSettingsOutput  Long sideQPrintSettingsOutputNoneQPrintSettingsOutputOptionsQPrintSettingsOutput Output SettingsQPrintSettingsOutput  Pages fromQPrintSettingsOutput  Print allQPrintSettingsOutput  Print rangeQPrintSettingsOutputReverseQPrintSettingsOutput  SelectionQPrintSettingsOutput   Short sideQPrintSettingsOutputtoQPrintSettingsOutput&:&Name: QPrintWidget...... QPrintWidgetForm QPrintWidget : Location: QPrintWidget& : Output &file: QPrintWidget& P&roperties QPrintWidget Preview QPrintWidget Printer QPrintWidget :Type: QPrintWidget&  Error reading from processQProcess*   Error writing to processQProcess   No program definedQProcess Process crashedQProcess(  : %1Process failed to start: %1QProcess$   Process operation timed outQProcess8  ( fork) : %1!Resource error (fork failure): %1QProcess CancelQProgressDialogOpen QPushButtonCheck QRadioButton( lookahead bad lookahead syntaxQRegExp"  bad repetition syntaxQRegExp   invalid categoryQRegExp   invalid intervalQRegExp$   invalid octal valueQRegExp"   no error occurredQRegExp  unexpected endQRegExp.   Error opening databaseQSQLite2Driver4   Unable to begin transactionQSQLite2Driver0   Unable to commit transactionQSQLite2Driver@    Unable to rollback transactionQSQLite2Driver*   Unable to execute statementQSQLite2Result.   Unable to fetch resultsQSQLite2Result.   Error closing database QSQLiteDriver.   Error opening database QSQLiteDriver4   Unable to begin transaction QSQLiteDriver0   Unable to commit transaction QSQLiteDriver@    Unable to rollback transaction QSQLiteDriver No query QSQLiteResult.   Parameter count mismatch QSQLiteResult0   Unable to bind parameters QSQLiteResult*   Unable to execute statement QSQLiteResult*   Unable to fetch row QSQLiteResult*   Unable to reset statement QSQLiteResultIDQScriptBreakpointsModel LocationQScriptBreakpointsModelDeleteQScriptBreakpointsWidgetNewQScriptBreakpointsWidget$&  ...&Find in Script...QScriptDebugger  Clear ConsoleQScriptDebugger  Clear Debug OutputQScriptDebugger  Clear Error LogQScriptDebuggerContinueQScriptDebugger Ctrl+FCtrl+FQScriptDebuggerCtrl+F10Ctrl+F10QScriptDebugger Ctrl+GCtrl+GQScriptDebugger DebugQScriptDebuggerF10F10QScriptDebuggerF11F11QScriptDebuggerF3F3QScriptDebuggerF5F5QScriptDebuggerF9F9QScriptDebugger  & Find &NextQScriptDebugger  &Find &PreviousQScriptDebugger   Go to LineQScriptDebugger :Line:QScriptDebuggerShift+F11 Shift+F11QScriptDebuggerShift+F3Shift+F3QScriptDebuggerShift+F5Shift+F5QScriptDebugger&/ BreakpointToggle BreakpointQScriptDebugger Case SensitiveQScriptDebuggerCodeFinderWidgetCloseQScriptDebuggerCodeFinderWidget NextQScriptDebuggerCodeFinderWidget PreviousQScriptDebuggerCodeFinderWidget  Whole wordsQScriptDebuggerCodeFinderWidgetNameQScriptDebuggerLocalsModelValueQScriptDebuggerLocalsModelLevelQScriptDebuggerStackModel LocationQScriptDebuggerStackModelNameQScriptDebuggerStackModel  Breakpoint:Breakpoint Condition: QScriptEdit BreakpointDisable Breakpoint QScriptEdit BreakpointEnable Breakpoint QScriptEdit&/ BreakpointToggle Breakpoint QScriptEditBreakpoints BreakpointsQScriptEngineDebugger  Debug OutputQScriptEngineDebugger  Error LogQScriptEngineDebuggerSearchQScriptEngineDebuggerCloseQScriptNewBreakpointWidget Bottom QScrollBar  Left edge QScrollBar  Line down QScrollBar Line up QScrollBar  Page down QScrollBar  Page left QScrollBar  Page right QScrollBar Page up QScrollBar Position QScrollBar  Right edge QScrollBar  Scroll down QScrollBar  Scroll here QScrollBar  Scroll left QScrollBar  Scroll right QScrollBar  Scroll up QScrollBar Top QScrollBar %1:  %1: already exists QSharedMemory%1:   %1: bad name QSharedMemory%1:  %1: doesn't exist QSharedMemory %1:  %1: doesn't exists QSharedMemory(%1:  ftok %1: ftok failed QSharedMemory %1:   %1: invalid size QSharedMemory%1:  %1: key is empty QSharedMemory&%1:   %1: out of resources QSharedMemory%1:  %1: permission denied QSharedMemory2%1:    %1: unable to make key QSharedMemory*%1:    %2%1: unknown error %2 QSharedMemory+ *+ QShortcut  Add Favorite QShortcut Adjust Brightness QShortcutAltAlt QShortcut$:   Audio Cycle Track QShortcut:  Audio Forward QShortcut":  Audio Random Play QShortcut:  Audio Repeat QShortcut:  Audio Rewind QShortcut Back QShortcutBackspace Backspace QShortcutBacktabBacktab QShortcut:  Bass Boost QShortcut:  Bass Down QShortcut: Bass Up QShortcut Battery QShortcutBluetooth Bluetooth QShortcutBook QShortcut Browser QShortcutCD QShortcut  Calculator QShortcut Call QShortcut  Camera Focus QShortcut Camera Shutter QShortcutCaps Lock Caps Lock QShortcutCapsLockCapsLock QShortcutClear QShortcutClose QShortcut  Community QShortcut 1Context1 QShortcut 2Context2 QShortcut 3Context3 QShortcut 4Context4 QShortcutCopy QShortcutCtrlCtrl QShortcutCut QShortcutDOSDOS QShortcutDelDel QShortcut DeleteDelete QShortcut Display QShortcut  Documents QShortcutDown QShortcut EjectEject QShortcutEndEnd QShortcut EnterEnter QShortcutEscEsc QShortcut EscapeEscape QShortcutF%1F%1 QShortcut Favorites QShortcutFinance QShortcut Forward QShortcutGame QShortcutGo QShortcutHangup QShortcutHelp QShortcut Hibernate QShortcutHistory QShortcutHomeHome QShortcut   Home Page QShortcut  Hot Links QShortcutInsIns QShortcut InsertInsert QShortcut$ : Keyboard Brightness Down QShortcut$ : Keyboard Brightness Up QShortcut( : /Keyboard Light On/Off QShortcut  Keyboard Menu QShortcut Last Number Redial QShortcut (0) Launch (0) QShortcut (1) Launch (1) QShortcut (2) Launch (2) QShortcut (3) Launch (3) QShortcut (4) Launch (4) QShortcut (5) Launch (5) QShortcut (6) Launch (6) QShortcut (7) Launch (7) QShortcut (8) Launch (8) QShortcut (9) Launch (9) QShortcut (A) Launch (A) QShortcut (B) Launch (B) QShortcut (C) Launch (C) QShortcut (D) Launch (D) QShortcut (E) Launch (E) QShortcut (F) Launch (F) QShortcut  Launch Mail QShortcut  Launch Media QShortcut Left QShortcut LightBulb QShortcut Logoff QShortcutMarket QShortcut:  Media Next QShortcut:  Media Pause QShortcut:  Media Play QShortcut: Media Previous QShortcut:  Media Record QShortcut:  Media Stop QShortcut Meeting QShortcut Menu QShortcut  Messenger QShortcut : Monitor Brightness Down QShortcut : Monitor Brightness Up QShortcut Music QShortcut My Sites QShortcut News QShortcutNo QShortcutNum LockNum Lock QShortcutNumLockNumLock QShortcutNumber Lock Number Lock QShortcut URLOpen URL QShortcut Option QShortcutPage Down Page Down QShortcutPage UpPage Up QShortcutPaste QShortcut PausePause QShortcut PgDownPgDown QShortcutPgUpPgUp QShortcut Phone QShortcut Pictures QShortcut  Power Off QShortcut PrintPrint QShortcutPrint Screen Print Screen QShortcutRefresh QShortcut Reload QShortcutReply QShortcut ReturnReturn QShortcut Right QShortcutSave QShortcut  Screensaver QShortcutScroll Lock Scroll Lock QShortcutScrollLock ScrollLock QShortcutSearch QShortcutSelect QShortcutSend QShortcut ShiftShift QShortcutShop QShortcut Sleep QShortcutSpace QShortcut  Spellchecker QShortcut  Spreadsheet QShortcutStandbyStandby QShortcutStop QShortcutSubtitle QShortcut Support QShortcutSuspend QShortcut SysReqSysReq QShortcutSystem RequestSystem Request QShortcutTabTab QShortcut  Task Panel QShortcutTerminal QShortcutTime QShortcut/Toggle Call/Hangup QShortcut: /Toggle Media Play/Pause QShortcutTools QShortcut Top Menu QShortcutTravel QShortcut:  Treble Down QShortcut:  Treble Up QShortcut Up QShortcut Video QShortcut  Voice Dial QShortcut :  Volume Down QShortcut :  Volume Mute QShortcut :  Volume Up QShortcutWWWWWW QShortcut Wake Up QShortcut WebCam QShortcut Wireless QShortcut Word Processor QShortcutYes QShortcut Zoom In QShortcut Zoom Out QShortcut iTouchiTouch QShortcut  Page downQSlider  Page leftQSlider  Page rightQSlider Page upQSlider PositionQSlider&   Address type not supportedQSocks5SocketEngine4 SOCKSv5   (Connection not allowed by SOCKSv5 serverQSocks5SocketEngine@      &Connection to proxy closed prematurelyQSocks5SocketEngine0    Connection to proxy refusedQSocks5SocketEngine2     Connection to proxy timed outQSocks5SocketEngine(  SOCKSv5 General SOCKSv5 server failureQSocks5SocketEngine    Network operation timed outQSocks5SocketEngine(   Proxy authentication failedQSocks5SocketEngine0   : %1Proxy authentication failed: %1QSocks5SocketEngine,    Proxy host not foundQSocks5SocketEngine8  SOCKS  5SOCKS version 5 protocol errorQSocks5SocketEngine, SOCKSv5  SOCKSv5 command not supportedQSocks5SocketEngine TTL  TTL expiredQSocks5SocketEngineP    SOCKSv5   0x%1%Unknown SOCKSv5 proxy error code 0x%1QSocks5SocketEngine CancelQSoftKeyManagerDoneQSoftKeyManager ExitQSoftKeyManager OKQSoftKeyManagerOptionsQSoftKeyManagerSelectQSoftKeyManagerLessQSpinBoxMoreQSpinBox CancelQSql.    ?Cancel your edits?QSql ConfirmQSqlDeleteQSql&   ?Delete this record?QSqlInsertQSqlNoQSql(   ? Save edits?QSqlUpdateQSqlYesQSqlD     , %1,Cannot provide a certificate with no key, %1 QSslSocket6   SSL  (%1)Error creating SSL context (%1) QSslSocket6   SSL , %1Error creating SSL session, %1 QSslSocket6   SSL : %1Error creating SSL session: %1 QSslSocket6    SSL : %1Error during SSL handshake: %1 QSslSocket:   , %1#Error loading local certificate, %1 QSslSocket4   , %1Error loading private key, %1 QSslSocket&  : %1Error while reading: %1 QSslSocket@      (%1)!Invalid or empty cipher list (%1) QSslSocket No error QSslSocket$ TLS/SSL &The TLS/SSL connection has been closed QSslSocket The certificate has expired QSslSocket,    The certificate is not yet valid QSslSocket8    0The certificate signature could not be decrypted QSslSocket<    #The peer certificate is blacklisted QSslSocket.    (The peer did not present any certificate QSslSocket6   : %1Unable to decrypt data: %1 QSslSocket6   : %1Unable to write data: %1 QSslSocket   Unknown error QSslSocket   Unknown error QStateMachine.   Error opening database QSymSQLDriver"  : Invalid option:  QSymSQLDriver4   Unable to begin transaction QSymSQLDriver0   Unable to commit transaction QSymSQLDriver@    Unable to rollback transaction QSymSQLDriver0   Error retrieving column count QSymSQLResult&   Error retrieving column name QSymSQLResult,   Error retrieving column type QSymSQLResult.   Parameter count mismatch QSymSQLResult   Statement is not prepared QSymSQLResult0   Unable to bind parameters QSymSQLResult*   Unable to execute statement QSymSQLResult*   Unable to fetch row QSymSQLResult*   Unable to reset statement QSymSQLResult>      4Another socket is already listening on the same portQSymbianSocketEnginej   IPv6      IPv6=Attempt to use IPv6 socket on a platform with no IPv6 supportQSymbianSocketEngine Connection refusedQSymbianSocketEngine  Connection timed outQSymbianSocketEngineH      Datagram was too large to sendQSymbianSocketEngine$   Host unreachableQSymbianSocketEngine    Invalid socket descriptorQSymbianSocketEngine  Network errorQSymbianSocketEngine    Network operation timed outQSymbianSocketEngine$   Network unreachableQSymbianSocketEngine  Out of resourcesQSymbianSocketEngine Permission deniedQSymbianSocketEngine,   Protocol type not supportedQSymbianSocketEngine6    )The address is invalid for this operationQSymbianSocketEngine"  The address is not availableQSymbianSocketEngine The address is protectedQSymbianSocketEngine<    #The bound address is already in useQSymbianSocketEngineF      ,The proxy type is invalid for this operationQSymbianSocketEngine4    %The remote host closed the connectionQSymbianSocketEngine>     +The specified network session is not openedQSymbianSocketEngine<    broadcast%Unable to initialize broadcast socketQSymbianSocketEngine8    -(Unable to initialize non-blocking socketQSymbianSocketEngine*   Unable to receive a messageQSymbianSocketEngine,   Unable to send a messageQSymbianSocketEngine   Unable to writeQSymbianSocketEngine   Unknown errorQSymbianSocketEngine$   Unsupported socket operationQSymbianSocketEngine %1:  %1: already existsQSystemSemaphore %1:  %1: does not existQSystemSemaphore%1:  %1: name errorQSystemSemaphore&%1:   %1: out of resourcesQSystemSemaphore%1:  %1: permission deniedQSystemSemaphore*%1:    %2%1: unknown error %2QSystemSemaphore,   Unable to open connection QTDSDriver:    Unable to use database QTDSDriverActivateQTabBar"  Activate the tabQTabBarCloseQTabBar"   Close the tabQTabBarPressQTabBar  Scroll LeftQTabBar  Scroll RightQTabBar.    $Operation on socket is not supported QTcpServer &&Copy QTextControl &&Paste QTextControl &&Redo QTextControl&&Undo QTextControl"  &Copy &Link Location QTextControl &Cu&t QTextControlDelete QTextControl  Select All QTextControlOpen QToolButtonPress QToolButtonF     IPv6#This platform does not support IPv6 QUdpSocket Redo QUndoGroup  %1Redo %1 QUndoGroupUndo QUndoGroup  %1Undo %1 QUndoGroup <> QUndoModel Redo QUndoStack  %1Redo %1 QUndoStackUndo QUndoStack  %1Undo %1 QUndoStack.    Unicode Insert Unicode control characterQUnicodeControlCharacterMenuHLRE Start of left-to-right embedding$LRE Start of left-to-right embeddingQUnicodeControlCharacterMenu,LRM Left-to-right markLRM Left-to-right markQUnicodeControlCharacterMenuFLRO Start of left-to-right override#LRO Start of left-to-right overrideQUnicodeControlCharacterMenu<PDF Pop directional formattingPDF Pop directional formattingQUnicodeControlCharacterMenuHRLE Start of right-to-left embedding$RLE Start of right-to-left embeddingQUnicodeControlCharacterMenu,RLM Right-to-left markRLM Right-to-left markQUnicodeControlCharacterMenuFRLO Start of right-to-left override#RLO Start of right-to-left overrideQUnicodeControlCharacterMenu*ZWJ Zero width joinerZWJ Zero width joinerQUnicodeControlCharacterMenu4ZWNJ Zero width non-joinerZWNJ Zero width non-joinerQUnicodeControlCharacterMenu*ZWSP Zero width spaceZWSP Zero width spaceQUnicodeControlCharacterMenu(   URLCannot show URL QWebFrame:    Cannot show mimetype QWebFrame  File does not exist QWebFrameL      'Frame load interrupted by policy change QWebFrame<     &Loading is handled by the media engine QWebFrame Request blocked QWebFrame Request canceled QWebFrame Request cancelled QWebFrame, (%2  %3 ) %1%1 (%2x%3 pixels)QWebPage@%1  %2  %3  %4 &%1 days %2 hours %3 minutes %4 secondsQWebPage0%1  %2  %3 %1 hours %2 minutes %3 secondsQWebPage %1  %2 %1 minutes %2 secondsQWebPage%1  %1 secondsQWebPage %n%n  %n file(s)QWebPage Add To DictionaryQWebPage  Audio ElementQWebPage  Begin playbackQWebPage BoldQWebPage BottomQWebPage&   Check Grammar With SpellingQWebPage Check SpellingQWebPage(   Check Spelling While TypingQWebPage  Choose FileQWebPage&  Clear recent searchesQWebPageCopyQWebPage  Copy AudioQWebPage  Copy ImageQWebPage   Copy Image AddressQWebPage  Copy LinkQWebPage  Copy VideoQWebPageCutQWebPage DefaultQWebPage    Delete to the end of the wordQWebPage$   Delete to the start of the wordQWebPage DetailsQWebPage  DirectionQWebPage  Elapsed TimeQWebPage  Enter FullscreenQWebPage FontsQWebPage  Fullscreen ButtonQWebPage Go BackQWebPage  Go ForwardQWebPage   Hide Spelling and GrammarQWebPage IgnoreQWebPage  Ignore Grammar context menu itemIgnoreQWebPage  Indefinite timeQWebPage  Insert a new lineQWebPage  Insert a new paragraphQWebPageInspectQWebPageItalicQWebPage, JavaScript  - %1JavaScript Alert - %1QWebPage, JavaScript  - %1JavaScript Confirm - %1QWebPage, JavaScript  - %1JavaScript Problem - %1QWebPage* JavaScript  - %1JavaScript Prompt - %1QWebPage  Left edgeQWebPage   Left to RightQWebPage Live BroadcastQWebPage... Loading...QWebPage Look Up In DictionaryQWebPage Missing Plug-inQWebPage0     'Move the cursor to the end of the blockQWebPage0     *Move the cursor to the end of the documentQWebPage0     &Move the cursor to the end of the lineQWebPage,     %Move the cursor to the next characterQWebPage2      Move the cursor to the next lineQWebPage2      Move the cursor to the next wordQWebPage0     )Move the cursor to the previous characterQWebPage6     $Move the cursor to the previous lineQWebPage6     $Move the cursor to the previous wordQWebPage4     )Move the cursor to the start of the blockQWebPage4     ,Move the cursor to the start of the documentQWebPage4     (Move the cursor to the start of the lineQWebPageMuteQWebPage  Mute ButtonQWebPage   No Guesses FoundQWebPage  No file selectedQWebPage&  No recent searchesQWebPage  Open AudioQWebPage  Open FrameQWebPage  Open ImageQWebPage  Open LinkQWebPage  Open VideoQWebPage  Open in New WindowQWebPageOutlineQWebPage  Page downQWebPage  Page leftQWebPage  Page rightQWebPage Page upQWebPagePasteQWebPagePauseQWebPage  Pause ButtonQWebPage  Pause playbackQWebPagePlayQWebPage  Play ButtonQWebPage Recent searchesQWebPage ReloadQWebPage Remaining TimeQWebPage Remove formattingQWebPageResetQWebPage  Right edgeQWebPage   Right to LeftQWebPage  Save ImageQWebPage ... Save Link...QWebPage  Scroll downQWebPage  Scroll hereQWebPage  Scroll leftQWebPage  Scroll rightQWebPage  Scroll upQWebPage Search The WebQWebPage  Select AllQWebPage    Select to the end of the blockQWebPage    !Select to the end of the documentQWebPage    Select to the end of the lineQWebPage   Select to the next characterQWebPage"   Select to the next lineQWebPage"   Select to the next wordQWebPage     Select to the previous characterQWebPage&   Select to the previous lineQWebPage&   Select to the previous wordQWebPage$    Select to the start of the blockQWebPage$   #Select to the start of the documentQWebPage$   Select to the start of the lineQWebPage  Show Spelling and GrammarQWebPageSpellingQWebPageStopQWebPage  StrikethroughQWebPageSubmitQWebPageQSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPage  SubscriptQWebPage  SuperscriptQWebPage Text DirectionQWebPageL  .   :3This is a searchable index. Enter search keywords: QWebPage/ Toggle ControlsQWebPage/  Toggle LoopQWebPage TopQWebPage  UnderlineQWebPage UnknownQWebPage"   Unmute ButtonQWebPage  Video ElementQWebPage  - %2Web Inspector - %2QWebPage  ? What's This?QWhatsThisAction**QWidget &&FinishQWizard &&HelpQWizard &&NextQWizard& >&Next >QWizard< &< &BackQWizard CancelQWizardCommitQWizardContinueQWizardDoneQWizard Go BackQWizardHelpQWizard%1 - [%2] %1 - [%2] QWorkspace &&Close QWorkspace&&Move QWorkspace &&Restore QWorkspace& &Size QWorkspace& &Unshade QWorkspaceClose QWorkspace & Ma&ximize QWorkspace & Mi&nimize QWorkspaceMinimize QWorkspace  Restore Down QWorkspace &Sh&ade QWorkspace&  Stay on &Top QWorkspace            XMLYencoding declaration or standalone declaration expected while reading the XML declarationQXmlB     3error in the text declaration of an external entityQXml6    $error occurred while parsing commentQXml6    $error occurred while parsing contentQXmlN      5error occurred while parsing document type definitionQXml8    $error occurred while parsing elementQXml>    &error occurred while parsing referenceQXml0    error triggered by consumerQXmll        -DTD;external parsed general entity reference not allowed in DTDQXmlz         Gexternal parsed general entity reference not allowed in attribute valueQXml\       -DTD4internal general entity reference not allowed in DTDQXml8     'invalid name for processing instructionQXml  letter is expectedQXml:     &more than one document type definitionQXml"   no error occurredQXml" recursive entitiesQXml`        XMLAstandalone declaration expected while reading the XML declarationQXml-  tag mismatchQXml  unexpected characterQXml    unexpected end of fileQXmlJ      *unparsed entity reference in wrong contextQXmlR       XML2version expected while reading the XML declarationQXml8    &wrong value for standalone declarationQXml,%1    .%1 is an invalid encoding name. QXmlStream$  .Attribute redefined. QXmlStream$ %1  Encoding %1 is unsupported QXmlStream( '%1'  .Entity '%1' not declared. QXmlStream(   .!Extra content at end of document. QXmlStream XML  .Invalid XML character. QXmlStream XML  .Invalid XML name. QXmlStream4  XML  .Invalid XML version string. QXmlStream<     XML.%Invalid attribute in XML declaration. QXmlStream&   .Invalid character reference. QXmlStream  .Invalid document. QXmlStream"   .Invalid entity value. QXmlStream\    '%1'   .5Reference to external entity '%1' in attribute value. QXmlStream@     '%1'."Reference to unparsed entity '%1'. QXmlStream& XML  .Unsupported XML version. QXmlStream Items QmlJSDebugger::LiveSelectionTool 0.125x0.125xQmlJSDebugger::QmlToolBar0.1x0.1xQmlJSDebugger::QmlToolBar 0.25x0.25xQmlJSDebugger::QmlToolBar0.5x0.5xQmlJSDebugger::QmlToolBar1x1xQmlJSDebugger::QmlToolBar*   Apply Changes to DocumentQmlJSDebugger::QmlToolBar6   QML ViewerApply Changes to QML ViewerQmlJSDebugger::QmlToolBar  Color PickerQmlJSDebugger::QmlToolBar Inspector ModeQmlJSDebugger::QmlToolBar$/ Play/Pause AnimationsQmlJSDebugger::QmlToolBarSelectQmlJSDebugger::QmlToolBar (Marquee)Select (Marquee)QmlJSDebugger::QmlToolBarToolsQmlJSDebugger::QmlToolBarZoomQmlJSDebugger::QmlToolBar  Copy ColorQmlJSDebugger::ToolBarColorBox Zoom InQmlJSDebugger::ZoomTool Zoom OutQmlJSDebugger::ZoomTool &100% Zoom to &100%QmlJSDebugger::ZoomTool6%1     .%1 is an unknown schema type. QtXmlPatterns:%1      %2.#%1 is not a valid value of type %2. QtXmlPatternsB%1       %2.&%1 is not valid as a value of type %2. QtXmlPatterns4   %1  .2A template with name %1 has already been declared. QtXmlPatterns2   %1  .2A variable with name %1 has already been declared. QtXmlPatternst   %1  .      .WAn argument with name %1 has already been declared. Every argument name must be unique. QtXmlPatternsV  %1      %2.3At least one %1 element must appear as child of %2. QtXmlPatternsX %1  %2     .+Attribute %1 and %2 are mutually exclusive. QtXmlPatternsD %1      %2.&Attribute %1 cannot have the value %2. QtXmlPatterns< %1     %2.Day %1 is invalid for month %2. QtXmlPatterns< %1    %2..%3.#Day %1 is outside the range %2..%3. QtXmlPatternsB %1     ..Element %1 cannot have a sequence constructor. QtXmlPatterns6 %1    . Element %1 cannot have children. QtXmlPatterns4 %1   .Element %1 must come last. QtXmlPatternsf %1       %2  %3.=Element %1 must have at least one of the attributes %2 or %3. QtXmlPatternsV %1    %2   .EElement %1 must have either a %2-attribute or a sequence constructor. QtXmlPatterns> %1    %2..%3.%Month %1 is outside the range %2..%3. QtXmlPatterns,     %1No variable with name %1 exists QtXmlPatterns : %1Parse error: %1 QtXmlPatterns>   %1,  %2 .&Required type is %1, but %2 was found. QtXmlPatternsH %1      %2./The item %1 did not match the required type %2. QtXmlPatterns4 %1:%2:%3.%4  .Time %1:%2:%3.%4 is invalid. QtXmlPatterns0 XSL-T   %1.Unknown XSL-T attribute %1. QtXmlPatternsV %1   %2    (%3).*Value %1 of type %2 is below minimum (%3). QtXmlPatternsT %1       %2.-Year %1 is invalid because it begins with %2. QtXmlPatternsempty QtXmlPatternsqupzilla-1.6.0/bin/locale/qt_hu.qm000066400000000000000000010234421226107126500170550ustar00rootroot00000000000000\\=at\EgctlGerUNJt>sq|^+|Ac vvBLOԱ(fގ)CMd}_W^9z4L[5\.e6C΀dIAB{>Ⱦ@[9U@7gN'I,É|yeXtDxDiERnɵncɵnɵn ɵnɵn@ɵnFɵnɵnGuuV. B%T5{t*'} MnMW,1lNU%Ea$Wqf.%GpT۔ :@>EPH[n8,(<Rpa5%*#Qg%UT((Ŏ)9xK*4H-ctax-ctf.L2a35v;K0T߮)SIn0WQ8 B ~ Yd 8$%D!g)w"lT6%%&Xd)Y-v/=N6/Xt1$$5~|< <3= >+?25_?NG@Em@V B!8M-NkycUiTW~Zb]@q`e`Kjt"lgRlyzl}"eoivtyb?vtyhN$D1l|.%V"[P66ld9+!4)66B6ES^ FE *RYYT\T= B&~.]}2GEdE22{I=.8A4τ+gNA ۓ[y^LEQtnnUPVkf@dDL m0MMDEE%nBwDwm9S^@ 7 Io ڎ_0 4x' b!e &_)ז*/e*+=+N!,N6F;"?4eBydEcFIQ K~ѧOQZf]\S~2\c߳\`4b\bEcփȎf`g&4 (jCɦmng~qqP^tuެu({>Y}kau}RӣR>U~ZRxyy >$5K"h$$PK^_+$(uɿ,.3ʁr5^Q5K-HL4֊`q*>nSGހ.9 nQ_,._:h$1eZq+;y]ωO?-I(0ACnl9 n9M7^g0H==~&H8&i3.Xc/04r&4!f55>8wP?BMYCIxS]J-tKLmM=R.&wR>eXE%-YM3YM^odK4ffh^M&iRnnnJrƕssc!shw1٘x̀/^s^2C"%CN)ۊ_ats;T|N[]]2|I3IDIEEIsIIIIC(BZaIÌYi yLŒ L LI LŌČuDuDIDCo{,.l, ,b,U,[,n]g>UuQrNu=#.,>q.'1ɘe ˓,5$: 48UlfR8AfRG>*UP_9NrNBiBQ~cPHbSBPqVVfR|T. t  H^!Zjy3iz"oG$Y%CMc&~@&)2) +j,l535"8Ǫ8;_~?"{?>u&?%/FuSKNK-<_M?N>;'O>nR U5V|ҫ]]&eg^̞kvy^I{yh.w?=5t5t.WFE:8Ξ8V8 ϔG%Yn?nnصA+ǥGUH+z+ D.`;n`t1o{yg<;/ xAre9\6aspLϾ%]{x|C-<d)5 ULüNّlzC^ƨ//ƨl˾ҝz7لI)^iէ?؊=؊=Z>dSi}ػzܓ7ܳ ߺX?f,t`/+!N~|Nr mS^6!Vo  A Wb&$K~bŴ~bpo9Mit `H!%?ա'?Z(U)ўJ+u+3,8//nx/~14~96  <? 2A?aAzB>Nz^DYEFgOG[GyGbQHULAUuM~y0OrXPѧQRCVSnYTU_UPU(3UTXlrYĻZDZZZZR[E[D]k*t]>^nOL_PS_py]e8i9idkQe}m?$oN^xy;~{}W{}u}wh}wu}w+N}tjhsabp~z~~x~wlLyvr|' ,"p~z~~v~uBAv tWtvYd"..۲3P8iUrShnu+k5nDK-Y ^kHtUNt?t#[A&-nWlV,_ Zaa+;Ȅ}FCD(ʢgʢMʬ*ƴMOdhd=dFdNdT0*K59эiZ+MNSN/a "!kڏy:U-d/@TBR6hLwAE 2=+ ;^jB?  !'8+`,D(/X23 42V<5@56ߺ7D39::%T?;YCU]"DQGiINRJ0YJZK;-K1Q~`U|zV7 SWT\v$\D]/tare ng*.g n8.nWrMp&q4t:wcz5(|(^1|(e|vr}wZV}$'}$7}$+~9m24DϗTZ~O*SVNG%sD8L>>!9~ONqinK-nhK<2f+E.ͮ·a#·*·ý j׳}:N:nT~p ]n/u.n-n.et-lU'?7JE 3ȥvUCON\u3%5Tr9 e~i~1pjbi9%88wb!>#0%_ '3-..a5kE=c=*=? 0?@J@T-CtI'EfNPʰP sQsAAV%_V%XU wZ``awbDԅbG)f2tfd.fgAB hIФiYi$Dknwx1 z*2|u|QR6dHcJXhs=UcV(.̭'zc.4GbC5^NQJc .r:OXqm^5e6[nCΧb†5<iCq~@XUʴ5ʴ5Eʶ~lDA^ 5ӞɺԄJ۔#x:DI'Nj dNA;F5J-F5 YSp+>Z4Np9&DmI6IAs32 g }$ qe! ڤ" ڥ| d E EC  Ac WMN `BK bj bb b`5 b`3P dr gU i3Q kkl la lf lj ok tN> u xqZ3 |o/T ~z |) n8  y J z t; t2  .] a .k`  S;  ) F>vL =4 } le U $  & B` ҉o$ 4M  > 7M k A   nd X N ' 9>~ V=n ! u"P ) Y++ Y>3 KH  @N 팤: E l~B %'r MNt' /g  y / CT =YO q  D[ Q }XA 9i o Ą    $6{ )mm */ .> 5H> 74eE 7uP ;; <o =׉ Bq Bn F, Gݞ H . IF.1" J"3 K29 RۮW[ RE Ty V T^ Uj4 ].Y ^&` `P `9 `l b bb c(z\ cEtf d% e7 e5 ee e{ f1 f*{X g5Uu gnP! ht k,>9 rD"DH t>j  v"PI :^ f 2 f  4: 5 .g <- %: s5 s% ~d AA6 9Wv E 9 05 ry x m,?N 5 ݡ #-t+ ' ( 0NZL 5 5\ Af CU E9; I#e L LT LC? Mc\: O P..l} RG S Vr Wޔ ZX \Ot_ ]$eK ` f)2 f) f=s io>S j& l#ϸ lu m`L n|n w;x xR^ yr: {n }Q ~LT >(M 5 > H0 HN Xf  n С; $ .@֋ !o C i^ <K  5x GO   5/  %h J5 Jd [ ! 4: t.J k% ӇG 5 My Ew N> /T ̺ &b Np -D . ۷v r o k k3  U)" T> <K' b c  0 ' MR N $rв Uj ~0 z+)d    3} I ' 9N %՜  Nr 1 A>1 LK sO e xH v "U  !pu $< %6b .] 2 7FO =ю > > >~ > > > E >. >ZU > > ?t|  A^6 B~ DT- Fnd G$y I]5 J>* Mbҏ P@ RV^ RV@ RVr Rn0 S. SG4 S} T~ YE Y [ R \5 eN+ hۮe j7o m( p^< sL u vn  B R Tdj T TG TR~ \ f L   h /.t ,$ ,+A SN )d,@ T R^C $ .d .4 . .B .I . .  * >JS  .q a)q Pu yJ m mV e.o x* C\ ' Np   hNoH ɾd!b ɾd#~ e ̈́^oO >> ҂]% Ӵ ء# ߢ.<  %$p u# s  | i4 bt Cy Xt4 n 9f t a  .'  :b Uqw  Y ʜ\d f{l fa $ >   o $  F #$` #= %nr '.z (I$ (N +>_e +k( 0EMy 64: ;ɾ Cn Fg04 K91 Lc Pt| PtF S, T>- `K& co dB^ fe fe g @ gl@ iFCU iI i jN j jӮp kGn l"^ m9V m9ĭ nb s'~ u u u v l v&W v{ w wڿ w* w} w} w}* yn |[h , / u؄ * <- J| ^^ %K  ] $ } R %7 P> 2 xN* " U [ ɰeqV F b X9 b Y &g x D:? Ƴ +K c t5 t5F]  U ?% > : G )-  Lm$R8;w @a]TW&Du(z6< n~gTW !a*U*Cz/EV/E&4Qt =B&IEI.I_KNUOOS5XRu XZoI[ ٷ[ Ha.a.gcݜi dnyGfsWv6vv<vɅ@y$y?.:%H0~%i>qezkF=46i}N˽Nyz4^sk'M4 yn~_SNQ^[&5Ǘ)n:U,. DBS i) 5֒Qp Lr ݖiG[yd4^=3rFjj ? } .% 4I "GlDnqyݙ_h"#$U>%4%4˒'r*|,-J-v 0i)F01c'2wTDMF74XGH>}Jd:KL$.JWW[{&\c5c51(cg3uiCiTul7pSDv)CyCN{`{~ae6$ Y5+Vu&1w&4ID$t{f/``n.qYAPÿ[Y>7/2)en|ͣ`_5>bN7 E7:"~gdL[KrVrk-1ky^֠UU'T*;44Lnw>OdRB{Pf)t2Z1@DdsU mipFl bezrsa Close Tab CloseButtonTeszt hiba ! Fake error ! FakeReplyrvnytelen URL Invalid URL FakeReply%1 nvjegyeAbout %1MAC_APPLICATION_MENU%1 elrejtseHide %1MAC_APPLICATION_MENU(Minden ms elrejtse Hide OthersMAC_APPLICATION_MENUBelltsok...Preferences...MAC_APPLICATION_MENUKilps: %1Quit %1MAC_APPLICATION_MENUSzolgltatsokServicesMAC_APPLICATION_MENUMindet mutatShow AllMAC_APPLICATION_MENU(KisegtQ lehetQsgek AccessibilityPhonon::Trsalgs CommunicationPhonon::JtkokGamesPhonon::ZeneMusicPhonon:: Figyelmeztetsek NotificationsPhonon:: VideVideoPhonon::<html>Visszalls a(z)<b>%1</b><br/>hangeszkzre, mert az jobban preferlt, vagy kimondottan ehhez a folyamhoz van konfigurlva.</html>Switching to the audio playback device %1
which has higher preference or is specifically configured for this stream.Phonon::AudioOutput<html>Visszalls a(z)<b>%1</b><br/>hangeszkzre, mert az jra elrhetQ, s jobban preferlt.</html>xSwitching to the audio playback device %1
which just became available and has higher preference.Phonon::AudioOutput<html>A hangeszkz <b>%1</b> most nem hasznlhat.<br/>Visszallts erre: <b>%2</b>.</html>^The audio playback device %1 does not work.
Falling back to %2.Phonon::AudioOutput<Visszalls a(z) '%1' eszkzreRevert back to device '%1'Phonon::AudioOutputFigyelmeztets: gy tqnik nincs semmilyen GStreamer plugin teleptve. Minden hang s videtmogats le lesz tiltva~Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabledPhonon::Gstreamer::BackendFigyelmeztets: gy tqnik, a gstreamer0.10-plugins-good nincs teleptve. Nhny videval kapcsolatos lehetQsg le lesz tiltva.Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled.Phonon::Gstreamer::BackendHinyzik egy kodek a lejtszshoz. Krem teleptse a kvetkezQ kodek(eket): %0`A required codec is missing. You need to install the following codec(s) to play this content: %0Phonon::Gstreamer::MediaObject(Nem lehet elindtani a visszajtszst. EllenQrizze le a GStreamer-t s gyQzdjn meg rla, hogy telepBtette-e a libgstreamer-plugins-base csomagot.wCannot start playback. Check your GStreamer installation and make sure you have libgstreamer-plugins-base installed.Phonon::Gstreamer::MediaObjectHA mdiaforrs dekdolsa sikertelen.Could not decode media source.Phonon::Gstreamer::MediaObject8A mdiaforrs nem tallhat.Could not locate media source.Phonon::Gstreamer::MediaObject|A hangeszkz megnyitsa sikertelen, mert valami mr hasznlja.:Could not open audio device. The device is already in use.Phonon::Gstreamer::MediaObjectHA mdiaforrs megnyitsa sikertelen.Could not open media source.Phonon::Gstreamer::MediaObject&rvnytelen forrs.Invalid source type.Phonon::Gstreamer::MediaObject4Hinyz kodek-sg script.&Missing codec helper script assistant.Phonon::Gstreamer::MediaObjectnPlugin kodek teleptse sikertelen ehhez a kodekhez: %0.Plugin codec installation failed for codec: %0Phonon::Gstreamer::MediaObject*Hozzfrs megtagadva Access denied Phonon::MMFMr ltezikAlready exists Phonon::MMFAudio kimenet Audio Output Phonon::MMF\A hang vagy a video komponens nem jtszhat le-Audio or video components could not be played Phonon::MMF$Hang kimeneti hibaAudio output error Phonon::MMF*Nem lehet kapcsoldniCould not connect Phonon::MMFDRM hiba DRM error Phonon::MMFDekdolsi hiba Decoder error Phonon::MMFSztkapcsolva Disconnected Phonon::MMF Hasznlatban vanIn use Phonon::MMF,Elgtelen svszlessgInsufficient bandwidth Phonon::MMFrvnytelen URL Invalid URL Phonon::MMF*rvnytelen protokollInvalid protocol Phonon::MMFMulticast hibaMulticast error Phonon::MMF6Hlzati kommunikcis hibaNetwork communication error Phonon::MMF.A hlzat nem rhetQ elNetwork unavailable Phonon::MMFNincs hibaNo error Phonon::MMFNem tallhat Not found Phonon::MMFNincs ksz Not ready Phonon::MMFNem tmogatott Not supported Phonon::MMF&A memria elfogyott Out of memory Phonon::MMFTlcsordulsOverflow Phonon::MMF0Az tvonal nem tallhatPath not found Phonon::MMF*Hozzfrs megtagadvaPermission denied Phonon::MMF$Proxy szerver hibaProxy server error Phonon::MMF<A proxy szerver nem tmogatottProxy server not supported Phonon::MMF Szerver problma Server alert Phonon::MMF4A streaming nem tmogatottStreaming not supported Phonon::MMFAudio kimenetThe audio output device Phonon::MMFAlulcsorduls Underflow Phonon::MMF(Ismeretlen hiba (%1)Unknown error (%1) Phonon::MMF&Video kimeneti hibaVideo output error Phonon::MMF2Hiba az URL megnyitsakorError opening URL Phonon::MMF::AbstractMediaPlayer2Hiba a fjl megnyitsakorError opening file Phonon::MMF::AbstractMediaPlayer6A klip betltse sikertelenLoading clip failed Phonon::MMF::AbstractMediaPlayer,Nem tud mg lejtszaniNot ready to play Phonon::MMF::AbstractMediaPlayer0A lejtszs befejezQdttPlayback complete Phonon::MMF::AbstractMediaPlayer>A hangerQ belltsa sikertelenSetting volume failed Phonon::MMF::AbstractMediaPlayer:A pozci lekrse sikertelenGetting position failed Phonon::MMF::AbstractVideoPlayer8A klip megnyitsa sikertelenOpening clip failed Phonon::MMF::AbstractVideoPlayer.A megllts sikertelen Pause failed Phonon::MMF::AbstractVideoPlayer(A tekers sikertelen Seek failed Phonon::MMF::AbstractVideoPlayer %1 Hz%1 HzPhonon::MMF::AudioEqualizerDA pozci megllaptsa sikertelenGetting position failedPhonon::MMF::AudioPlayer0Vide megjelentsi hibaVideo display errorPhonon::MMF::DsaVideoPlayerEngedlyezveEnabledPhonon::MMF::EffectFactory,NF lecsengs arny (%)Decay HF ratio (%) Phonon::MMF::EnvironmentalReverb*NF lecsengs idQ (ms)Decay time (ms) Phonon::MMF::EnvironmentalReverb4VisszaverQdsi sqrqsg (%) Density (%) Phonon::MMF::EnvironmentalReverb6VisszaverQdsi diffzi (%) Diffusion (%) Phonon::MMF::EnvironmentalReverb>VisszaverQds ksleltetse (ms)Reflections delay (ms) Phonon::MMF::EnvironmentalReverb4VisszaverQds szintje (mB)Reflections level (mB) Phonon::MMF::EnvironmentalReverb4Visszhang ksleltets (ms)Reverb delay (ms) Phonon::MMF::EnvironmentalReverb(Visszhang szint (mB)Reverb level (mB) Phonon::MMF::EnvironmentalReverb.Szoba NF elnyels szint Room HF level Phonon::MMF::EnvironmentalReverb Szoba szint (mB)Room level (mB) Phonon::MMF::EnvironmentalReverb~Hiba a forrs megnyitsakor: a mdia tpusa nem llapthat meg8Error opening source: media type could not be determinedPhonon::MMF::MediaObjectfHiba a forrs megnyitsakor: a tpus nem tmogatott(Error opening source: type not supportedPhonon::MMF::MediaObjectSzint (%) Level (%)Phonon::MMF::StereoWidening0Vide megjelentsi hibaVideo display errorPhonon::MMF::SurfaceVideoPlayerElnmtvaMutedPhonon::VolumeSliderA csszka segtsgvel llthatja be a hangerQt. A bal szlsQ pozci 0%-ot, a jobb szlsQ %1%-ot jelentWUse this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1%Phonon::VolumeSliderHangerQ: %1% Volume: %1%Phonon::VolumeSlider.%1, %2 nincs definilva%1, %2 not definedQ3AccelHA nem egyrtelmq %1 nem lesz kezelveAmbiguous %1 not handledQ3Accel TrlsDelete Q3DataTable HamisFalse Q3DataTableBeszrsInsert Q3DataTableIgazTrue Q3DataTableFrisstsUpdate Q3DataTable%1 A fjl nem tallhat. EllenQrizze a fjl nevt s elrsi tjt.+%1 File not found. Check path and filename. Q3FileDialog&Trls&Delete Q3FileDialog&Nem&No Q3FileDialog&OK&OK Q3FileDialog&Megnyits&Open Q3FileDialogt&nevezs&Rename Q3FileDialogMent&s&Save Q3FileDialogNin&cs rendezs &Unsorted Q3FileDialog &Igen&Yes Q3FileDialog\<qt>Biztosan trlni akarja ezt: %1 "%2"?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialogMinden fjl (*) All Files (*) Q3FileDialog"Minden fjl (*.*)All Files (*.*) Q3FileDialogAttribtumok Attributes Q3FileDialog VisszaBack Q3FileDialog MgsemCancel Q3FileDialog<Fjl msolsa vagy thelyezseCopy or Move a File Q3FileDialog.j knyvtr ltrehozsaCreate New Folder Q3FileDialog DtumDate Q3FileDialog%1 trlse Delete %1 Q3FileDialogRszletes nzet Detail View Q3FileDialogKnyvtrDir Q3FileDialogKnyvtrak Directories Q3FileDialogKnyvtr: Directory: Q3FileDialogHibaError Q3FileDialogFjlFile Q3FileDialogFjl &neve: File &name: Q3FileDialogFjl &tpusa: File &type: Q3FileDialog*Keress a knyvtrbanFind Directory Q3FileDialogNem elrhetQ Inaccessible Q3FileDialogLista nzet List View Q3FileDialogKeress &itt: Look &in: Q3FileDialogNvName Q3FileDialogj knyvtr New Folder Q3FileDialogj knyvtr %1 New Folder %1 Q3FileDialogj knyvtr 1 New Folder 1 Q3FileDialog(Egy szinttel feljebbOne directory up Q3FileDialogMegnyitsOpen Q3FileDialogMegnyits Open  Q3FileDialog,Fjltartalom elQnzetePreview File Contents Q3FileDialog2Fjlinformcik elQnzetePreview File Info Q3FileDialogB&etlts jraR&eload Q3FileDialogCsak olvashat Read-only Q3FileDialog rhat-olvashat Read-write Q3FileDialogOlvass: %1Read: %1 Q3FileDialogMents mskntSave As Q3FileDialog*Knyvtr kivlasztsaSelect a Directory Q3FileDialog:&Rejtett fjlok megjelentseShow &hidden files Q3FileDialog MretSize Q3FileDialogRendezsSort Q3FileDialog.Rendezs &dtum szerint Sort by &Date Q3FileDialog*Rendezs &nv szerint Sort by &Name Q3FileDialog.Rendezs &mret szerint Sort by &Size Q3FileDialogSpecilis fjlSpecial Q3FileDialog:Szimbolikus link a knyvtrraSymlink to Directory Q3FileDialog2Szimbolikus link a fjlraSymlink to File Q3FileDialogFSzimbolikus link a specilis fjlraSymlink to Special Q3FileDialog TpusType Q3FileDialogCsak rhat Write-only Q3FileDialogrs: %1 Write: %1 Q3FileDialoga knyvtr the directory Q3FileDialog a fjlthe file Q3FileDialog$a szimbolikus link the symlink Q3FileDialog@A knyvtr nem hozhat ltre: %1Could not create directory %1 Q3LocalFs(Nem nyithat meg: %1Could not open %1 Q3LocalFs8A knyvtr nem olvashat: %1Could not read directory %1 Q3LocalFsLA fjl vagy knyvtr nem trlhetQ: %1%Could not remove file or directory %1 Q3LocalFs8Nem nevezhetQ t %1 erre: %2Could not rename %1 to %2 Q3LocalFsNem rhat: %1Could not write %1 Q3LocalFsTestreszabs... Customize... Q3MainWindowIgaztsLine up Q3MainWindowNA mqveletet a felhasznl megszaktottaOperation stopped by the userQ3NetworkProtocol MgsemCancelQ3ProgressDialogAlkalmazApply Q3TabDialog MgsemCancel Q3TabDialog AlaprtelmezsekDefaults Q3TabDialogSgHelp Q3TabDialogOKOK Q3TabDialog&Msols&Copy Q3TextEdit&Beilleszts&Paste Q3TextEdit j&ra&Redo Q3TextEdit&Visszavons&Undo Q3TextEdit TrlsClear Q3TextEdit&KivgsCu&t Q3TextEdit"sszes kijellse Select All Q3TextEditBezrsClose Q3TitleBar$Bezrja az ablakotCloses the window Q3TitleBarTParancsokat tartalmaz az ablak kezelshez*Contains commands to manipulate the window Q3TitleBar|Megjelenti az ablak nevt, s kezelQket a megvltoztatsukhozFDisplays the name of the window and contains controls to manipulate it Q3TitleBarTAz ablakot teljes kpernyQ mretqre nveliMakes the window full screen Q3TitleBarTeljes mretMaximize Q3TitleBarMinimalizlsMinimize Q3TitleBar<Elmozgatja az ablakot az tblMoves the window out of the way Q3TitleBarlA teljes mretq ablakot norml mretqre lltja vissza&Puts a maximized window back to normal Q3TitleBarPHelyrelltja a kis mretre tett ablakot&Puts a minimized window back to normal Q3TitleBarElQzQ mret Restore down Q3TitleBarVisszallts Restore up Q3TitleBarRendszerSystem Q3TitleBarTovbbiak...More... Q3ToolBar(ismeretlen) (unknown) Q3UrlOperatorA(z) '%1' protokoll nem tmogatja a fjlok vagy knyvtrak msolst vagy thelyezstIThe protocol `%1' does not support copying or moving files or directories Q3UrlOperatorrA(z) `%1' protokoll nem tmogatja knyvtrak ltrehozst;The protocol `%1' does not support creating new directories Q3UrlOperatorjA(z) '%1' protokoll nem tmogatja a fjlok letltst0The protocol `%1' does not support getting files Q3UrlOperatorA(z) `%1' protokoll nem tmogatja a knyvtrak tartalmnak listzst6The protocol `%1' does not support listing directories Q3UrlOperatorlA(z) '%1' protokoll nem tmogatja a fjlok feltltst0The protocol `%1' does not support putting files Q3UrlOperatorA(z) '%1' protokoll nem tmogatja a fjlok vagy knyvtrak trlst@The protocol `%1' does not support removing files or directories Q3UrlOperatorA(z) '%1' protokoll nem tmogatja a fjlok vagy knyvtrak tnevezst@The protocol `%1' does not support renaming files or directories Q3UrlOperatorDA(z) `%1' protokoll nem tmogatott"The protocol `%1' is not supported Q3UrlOperator&Mgsem&CancelQ3Wizard&Befejezs&FinishQ3Wizard &Sg&HelpQ3Wizard&KvetkezQ >&Next >Q3Wizard< &Vissza< &BackQ3Wizard,A kapcsolat elutastvaConnection refusedQAbstractSocketFA kapcsolat vrakozsi ideje lejrtConnection timed outQAbstractSocket4A kiszolgl nem tallhatHost not foundQAbstractSocket.A hlzat nem rhetQ elNetwork unreachableQAbstractSocketFA mqvelet nem tmogatott socketeken$Operation on socket is not supportedQAbstractSocket2A socket nem kapcsoldottSocket is not connectedQAbstractSocket4Socket mqvelet idQtllpsSocket operation timed outQAbstractSocket$&sszes kijellse &Select AllQAbstractSpinBoxLps &felfel&Step upQAbstractSpinBoxLps &lefel Step &downQAbstractSpinBoxNyomja megPressQAccessibleButtonAktivlsActivate QApplicationBAktvv teszi a program fQablakt#Activates the program's main window QApplicationf'%1' program Qt %2-t ignyel (Qt %3 van teleptve).,Executable '%1' requires Qt %2, found Qt %3. QApplicationPHiba: inkompatbilis Qt fggvnyknyvtrIncompatible Qt Library Error QApplicationLTRQT_LAYOUT_DIRECTION QApplication&Mgsem&Cancel QAxSelectCOM &objektum: COM &Object: QAxSelectOKOK QAxSelect8ActiveX vezrlQ kivlasztsaSelect ActiveX Control QAxSelectKijellsCheck QCheckBox VltsToggle QCheckBox.Kijells megszntetseUncheck QCheckBox8Hozz&ads a sajt sznekhez&Add to Custom Colors QColorDialogAla&p sznek &Basic colors QColorDialog&Sajt sznek&Custom colors QColorDialog &Zld:&Green: QColorDialog&Vrs:&Red: QColorDialog&Teltettsg:&Sat: QColorDialog&FnyerQ:&Val: QColorDialogA&lfa csatorna:A&lpha channel: QColorDialog &Kk:Bl&ue: QColorDialog&rnyalat:Hu&e: QColorDialogSzn vlaszts Select Color QColorDialogBezrsClose QComboBox HamisFalse QComboBoxMegnyitsOpen QComboBoxIgazTrue QComboBox%1: mr ltezik%1: already existsQCoreApplication&%1: mg nem ltezik%1: does not existQCoreApplication6%1: ftok hibt adott vissza%1: ftok failedQCoreApplication(%1: a kulcs hinyzik%1: key is emptyQCoreApplication8%1: az erQforrsok elfogytak%1: out of resourcesQCoreApplicationD%1: a kulcs elksztse sikertelen%1: unable to make keyQCoreApplication,%1: ismeretlen hiba %2%1: unknown error %2QCoreApplication>A tranzakci nem vglegesthetQUnable to commit transaction QDB2Driver0Nem sikerlt kapcsoldniUnable to connect QDB2DriverDA tranzakci nem grgethetQ visszaUnable to rollback transaction QDB2DriverXAz automatikus vglegests nem llthat beUnable to set autocommit QDB2Driver0A vltoz nem rgzthetQUnable to bind variable QDB2Result8A mqvelet nem hajthat vgreUnable to execute statement QDB2Result8Az elsQ rekord nem rhetQ elUnable to fetch first QDB2ResultFA kvetkezQ rekord nem olvashat kiUnable to fetch next QDB2Result@A(z) %1. rekord nem olvashat kiUnable to fetch record %1 QDB2ResultJA mqvelet elQksztse nem lehetsgesUnable to prepare statement QDB2ResultDEAM QDateTimeEditDUPM QDateTimeEditdeam QDateTimeEditdupm QDateTimeEdit<Az Animation absztrakt osztlyAnimation is an abstract classQDeclarativeAbstractAnimationhNem lehet animlni a hinyz "%1" tulajdonsg nlkl)Cannot animate non-existent property "%1"QDeclarativeAbstractAnimationnNem lehet animlni a csak olvashat "%1" tulajdonsggal&Cannot animate read-only property "%1"QDeclarativeAbstractAnimationAlapvonali horgonyt nem lehet sszekapcsolni felsQ, als, vagy fggQleges kzp horgonyokkal.SBaseline anchor cannot be used in conjunction with top, bottom, or vcenter anchors.QDeclarativeAnchors~Nem lehet a vzszintes vagy a fggQleges szlekhez horgonyozni.3Cannot anchor a horizontal edge to a vertical edge.QDeclarativeAnchorsrNem lehet a vzszintes szlt a fggQlegeshez horgonyozni.3Cannot anchor a vertical edge to a horizontal edge.QDeclarativeAnchorsVNem lehet egy elemet nmaghoz horgonyozni.Cannot anchor item to self.QDeclarativeAnchorsNNem lehet egy null elemhez horgonyozni.Cannot anchor to a null item.QDeclarativeAnchorsNem lehet egy olyan elemhez horgonyozni, mely nem szlQ vagy gyermek.8Cannot anchor to an item that isn't a parent or sibling.QDeclarativeAnchorsNem lehet egyszerre bal, jobb, s vzszintes kzp horgonyokat megadni.0Cannot specify left, right, and hcenter anchors.QDeclarativeAnchorsNem lehet egyszerre felsQ, als, s fggQleges kzp horgonyokat megadni.0Cannot specify top, bottom, and vcenter anchors.QDeclarativeAnchorsfLehetsges horgony hurok szlelhetQ a kzpvonalon.*Possible anchor loop detected on centerIn.QDeclarativeAnchorsbLehetsges horgony hurok szlelhetQ egy festsen.&Possible anchor loop detected on fill.QDeclarativeAnchorszLehetsges horgony hurok szlelhetQ egy vzszintes horgonyon.3Possible anchor loop detected on horizontal anchor.QDeclarativeAnchorszLehetsges horgony hurok szlelhetQ egy fggQleges horgonyon.1Possible anchor loop detected on vertical anchor.QDeclarativeAnchorsxNem lehet egy Behavior elemhez rendelt animcit mdostani.3Cannot change the animation assigned to a Behavior.QDeclarativeBehavior^Ktsi hurok szlelhetQ a(z) "%1" tulajdonsgon'Binding loop detected for property "%1"QDeclarativeBinding^Ktsi hurok szlelhetQ a(z) "%1" tulajdonsgon'Binding loop detected for property "%1"QDeclarativeCompiledBindingsPA csatolt tulajdonsgok nem hasznlhatk'Attached properties cannot be used hereQDeclarativeCompilerjNem lehet tbb rtket rendelni script tulajdonsghoz2Cannot assign multiple values to a script propertyQDeclarativeCompilerLNem lehet objektumot listhoz rendelniCannot assign object to listQDeclarativeCompilerXNem lehet objektumot rendelni tulajdonsghoz Cannot assign object to propertyQDeclarativeCompiler\Nem lehet primitiv tpusokat listhoz rendelni!Cannot assign primitives to listsQDeclarativeCompilerNem lehet hozzrendelni egy nem ltezQ alaprtelmezett tulajdonsgot.Cannot assign to non-existent default propertyQDeclarativeCompilernNem lehet hozzrendelni a nem ltezQ "%1" tulajdonsgot+Cannot assign to non-existent property "%1"QDeclarativeCompilerBNem lehet res komponenst megadni+Cannot create empty component specificationQDeclarativeCompilerTNem lehet FINAL tulajdonsgot fellbrlniCannot override FINAL propertyQDeclarativeCompilerA Component elemek nem tartalmazhatnak az id-n kvql ms tulajdonsgot;Component elements may not contain properties other than idQDeclarativeCompilerBDupla alaprtelmezett tulajdonsgDuplicate default propertyQDeclarativeCompiler"Dupla metdus nvDuplicate method nameQDeclarativeCompiler(Dupla tulajdonsgnvDuplicate property nameQDeclarativeCompiler Dupla jelzs nvDuplicate signal nameQDeclarativeCompiler<res tulajdonsg hozzrendelsEmpty property assignmentQDeclarativeCompilerDres jelzs (signal) hozzrendelsEmpty signal assignmentQDeclarativeCompilerrvnytelen lnv-referencia. Az lnv-referencinak <id> vagy <id>.<property> formtumnak kell lennieXInvalid alias reference. An alias reference must be specified as or .QDeclarativeCompilerzrvnytelen lnv-referencia. A(z) "%1" azonost nem ltezik/Invalid alias reference. Unable to find id "%1"QDeclarativeCompiler8rvnytelen objektumcsatols"Invalid attached object assignmentQDeclarativeCompilerFrvnytelen komponens-trzs megads$Invalid component body specificationQDeclarativeCompilerNrvnytelen komponens azonost megads"Invalid component id specificationQDeclarativeCompilerXrvnytelen csoportos tulajdonsg-hozzfrsInvalid grouped property accessQDeclarativeCompilerrvnytelen tulajdonsg-hozzrendels: "%1" egy csak olvashat tulajdonsg9Invalid property assignment: "%1" is a read-only propertyQDeclarativeCompilertrvnytelen tulajdonsg-hozzrendels: 3D vektor szksges/Invalid property assignment: 3D vector expectedQDeclarativeCompiler|rvnytelen tulajdonsg-hozzrendels: boolean rtk szksges-Invalid property assignment: boolean expectedQDeclarativeCompilerjrvnytelen tulajdonsg-hozzrendels: szn szksges+Invalid property assignment: color expectedQDeclarativeCompilerlrvnytelen tulajdonsg-hozzrendels: dtum szksges*Invalid property assignment: date expectedQDeclarativeCompiler~rvnytelen tulajdonsg-hozzrendels: datetime rtk szksges.Invalid property assignment: datetime expectedQDeclarativeCompilerrvnytelen tulajdonsg-hozzrendels: duplapontos rtk szksges,Invalid property assignment: double expectedQDeclarativeCompilerrvnytelen tulajdonsg-hozzrendels: lebegQpontos rtk szksges+Invalid property assignment: float expectedQDeclarativeCompilerxrvnytelen tulajdonsg-hozzrendels: egsz rtk szksges)Invalid property assignment: int expectedQDeclarativeCompilerjrvnytelen tulajdonsg-hozzrendels: pont szksges+Invalid property assignment: point expectedQDeclarativeCompilerrrvnytelen tulajdonsg-hozzrendels: tglalap szksges*Invalid property assignment: rect expectedQDeclarativeCompilernrvnytelen tulajdonsg-hozzrendels: script szksges,Invalid property assignment: script expectedQDeclarativeCompilerlrvnytelen tulajdonsg-hozzrendels: mret szksges*Invalid property assignment: size expectedQDeclarativeCompiler~rvnytelen tulajdonsg-hozzrendels: szveges rtk szksges,Invalid property assignment: string expectedQDeclarativeCompilerhrvnytelen tulajdonsg-hozzrendels: idQ szksges*Invalid property assignment: time expectedQDeclarativeCompilerxrvnytelen tulajdonsg-hozzrendels: ismeretlen felsorols0Invalid property assignment: unknown enumerationQDeclarativeCompilerrvnytelen tulajdonsg-hozzrendels: elQjel nlkli egsz rtk szksges2Invalid property assignment: unsigned int expectedQDeclarativeCompilerrvnytelen tulajdonsg-hozzrendels: nem tmogatott tpus: "%1"2Invalid property assignment: unsupported type "%1"QDeclarativeCompilerhrvnytelen tulajdonsg-hozzrendels: URL szksges)Invalid property assignment: url expectedQDeclarativeCompilerBrvnytelen tulajdonsg illesztsInvalid property nestingQDeclarativeCompiler:rvnytelen tulajdonsg tpusInvalid property typeQDeclarativeCompilerDTulajdonsg rvnytelen hasznlataInvalid property useQDeclarativeCompilerPAz id tulajdonsg rvnytelen hasznlataInvalid use of id propertyQDeclarativeCompiler6rvnytelen nvtrhasznlatInvalid use of namespaceQDeclarativeCompiler6Nem ltezQ csatolt objektumNon-existent attached objectQDeclarativeCompilerBEz nem egy csatolt tulajdonsgnvNot an attached property nameQDeclarativeCompilerFTulajdonsg hozzrendels szksgesProperty assignment expectedQDeclarativeCompilerZEgyetlen tulajdonsg hozzrendelse szksges#Single property assignment expectedQDeclarativeCompiler>Vratlan objektum-hozzrendelsUnexpected object assignmentQDeclarativeCompiler.Az azonost nem egyediid is not uniqueQDeclarativeCompiler%1% {1 %2?}%1 %2 QDeclarativeCompositeTypeManagerPA(z) %1 nvtr nem hasznlhat tpusknt%Namespace %1 cannot be used as a type QDeclarativeCompositeTypeManager>A(z) %1 erQforrs nem rhetQ elResource %1 unavailable QDeclarativeCompositeTypeManager6A(z) %1 tpus nem rhetQ elType %1 unavailable QDeclarativeCompositeTypeManagerpNem lehet hozzrendelni a nem ltezQ "%1" tulajdonsghoz+Cannot assign to non-existent property "%1"QDeclarativeConnectionsrKapcsolatok: az illesztett objektumok nem engedlyezettek'Connections: nested objects not allowedQDeclarativeConnections:Kapcsolatok: script szksgesConnections: script expectedQDeclarativeConnections8Kapcsolatok: szintakszishibaConnections: syntax errorQDeclarativeConnections2Csak olvashat tranzakciRead-only TransactionQDeclarativeEngine8Az SQL tranzakci sikertelenSQL transaction failedQDeclarativeEngine:SQL: adatbzis verzi eltrsSQL: database version mismatchQDeclarativeEngineHVerzi eltrs: vrt: %1, kapott: %2'Version mismatch: expected %1, found %2QDeclarativeEnginenAz executeSql a transaction()-on kvlrQl lett meghvva'executeSql called outside transaction()QDeclarativeEngine8tranzakci: hinyz callbacktransaction: missing callbackQDeclarativeEngineLa back csak egyszer rhat tulajdonsgback is a write-once propertyQDeclarativeFlipableNa front csak egyszer rhat tulajdonsgfront is a write-once propertyQDeclarativeFlipable~ListElement: nem lehet a lefoglalt "id" tulajdonsgot hasznlni.ListElement: cannot use reserved "id" propertyQDeclarativeListModel|ListElement: nem lehet scriptet hasznlni tulajdonsg rtknek1ListElement: cannot use script for property valueQDeclarativeListModelTListModel: nem definilt tulajdonsg: '%1'"ListModel: undefined property '%1'QDeclarativeListModel:append: az rtk nem objektumappend: value is not an objectQDeclarativeListModel<insert: a(z) %1 index tl nagyinsert: index %1 out of rangeQDeclarativeListModel:insert: az rtk nem objektuminsert: value is not an objectQDeclarativeListModel*move: hatrokon kvlmove: out of rangeQDeclarativeListModel<remove: a(z) %1 index tl nagyremove: index %1 out of rangeQDeclarativeListModel6set: a(z) %1 index tl nagyset: index %1 out of rangeQDeclarativeListModel4set: az rtk nem objektumset: value is not an objectQDeclarativeListModel|Nem lehet a kinzetet megQrizni a komplex transzformci alatt5Unable to preserve appearance under complex transformQDeclarativeParentAnimationxNem lehet a kinzetet megQrizni a nem-uniform sklzs alatt5Unable to preserve appearance under non-uniform scaleQDeclarativeParentAnimation|Nem lehet a kinzetet megQrizni a komplex transzformci alatt5Unable to preserve appearance under complex transformQDeclarativeParentChangexNem lehet a kinzetet megQrizni a nem-uniform sklzs alatt5Unable to preserve appearance under non-uniform scaleQDeclarativeParentChangeLNem lehet objektumot listhoz rendelniCannot assign object to listQDeclarativeVMEQDialQDial SliderHandleQDial SpeedoMeterQDialKszDoneQDialog Mi ez? What's This?QDialog&Mgsem&CancelQDialogButtonBox&Bezrs&CloseQDialogButtonBox&Nem&NoQDialogButtonBox&OK&OKQDialogButtonBoxMent&s&SaveQDialogButtonBox &Igen&YesQDialogButtonBoxMegszaktsAbortQDialogButtonBoxAlkalmazApplyQDialogButtonBox MgsemCancelQDialogButtonBoxBezrsCloseQDialogButtonBox*Bezrs ments nlklClose without SavingQDialogButtonBoxElvetsDiscardQDialogButtonBoxNincs ments Don't SaveQDialogButtonBoxSgHelpQDialogButtonBoxKihagysIgnoreQDialogButtonBoxMindent &kihagy N&o to AllQDialogButtonBoxOKOKQDialogButtonBoxMegnyitsOpenQDialogButtonBox TrlsResetQDialogButtonBox>Alaprtelmezsek visszalltsaRestore DefaultsQDialogButtonBoxjraRetryQDialogButtonBox MentsSaveQDialogButtonBoxMindet mentiSave AllQDialogButtonBox &Mindent elfogad Yes to &AllQDialogButtonBox Mdosts dtuma Date Modified QDirModelKindKind QDirModelNvName QDirModel MretSize QDirModel TpusType QDirModelBezrsClose QDockWidgetDock QDockWidgetFloat QDockWidgetKevesebbLessQDoubleSpinBoxTbbMoreQDoubleSpinBox&OK&OK QErrorMessage6zenet megjelentse i&smt&Show this message again QErrorMessageDebug zenet:Debug Message: QErrorMessageVgzetes hiba: Fatal Error: QErrorMessageFigyelmeztets:Warning: QErrorMessage2A(z) %1 nem hozhat ltreCannot create %1 for outputQFileHA(z) %1 nem nyithat meg bemenetkntCannot open %1 for inputQFile8Nem nyithat meg kimenetkntCannot open for outputQFile,A forrs nem trlhetQCannot remove source fileQFile*A clfjl mr ltezikDestination file existsQFile*Hiba a blokk rsakorFailure to write blockQFilefA szekvencilis fjlok nem nevezhetQk t msolssal0Will not rename sequential file using block copyQFile%1 A knyvtr nem tallhat. EllenQrizze, hogy jl adta-e meg a knyvtr nevt.K%1 Directory not found. Please verify the correct directory name was given. QFileDialog%1 A fjl nem tallhat. EllenQrizze, hogy jl adta-e meg a fjl nevt.A%1 File not found. Please verify the correct file name was given. QFileDialog4%1 mr ltezik. Lecserli?-%1 already exists. Do you want to replace it? QFileDialog&Kivlaszts&Choose QFileDialog&Trls&Delete QFileDialog&j knyvtr &New Folder QFileDialog&Megnyits&Open QFileDialogt&nevezs&Rename QFileDialogMent&s&Save QFileDialogR'%1' rsvdett. Biztosan trlni akarja?9'%1' is write protected. Do you want to delete it anyway? QFileDialogLinkAlias QFileDialogMinden fjl (*) All Files (*) QFileDialog"Minden fjl (*.*)All Files (*.*) QFileDialog>Biztosan trlni akarja '%1'-t?!Are sure you want to delete '%1'? QFileDialog VisszaBack QFileDialog<Vlts rszletes lista nzetreChange to detail view mode QFileDialog(Vlts lista nzetreChange to list view mode QFileDialog2A knyvtr nem trlhetQ.Could not delete directory. QFileDialog.j knyvtr ltrehozsaCreate New Folder QFileDialog(j mappa ltrehozsaCreate a New Folder QFileDialogRszletes nzet Detail View QFileDialogKnyvtrak Directories QFileDialogKnyvtr: Directory: QFileDialogMeghajtDrive QFileDialogFjlFile QFileDialogFjl &neve: File &name: QFileDialog Mappa File Folder QFileDialogFjlok tpusa:Files of type: QFileDialog*Keress a knyvtrbanFind Directory QFileDialog MappaFolder QFileDialog ElQreForward QFileDialog VisszaGo back QFileDialog ElQre Go forward QFileDialogSzlQ mappbaGo to the parent directory QFileDialogLista nzet List View QFileDialogKeress itt:Look in: QFileDialogSzmtgp My Computer QFileDialogj knyvtr New Folder QFileDialogMegnyitsOpen QFileDialogSzlQknyvtrParent Directory QFileDialog Legutbbi helyek Recent Places QFileDialog TrlsRemove QFileDialogMents mskntSave As QFileDialogParancsikonShortcut QFileDialogMegjelents Show  QFileDialog:&Rejtett fjlok megjelentseShow &hidden files QFileDialogIsmeretlenUnknown QFileDialog %1 GB%1 GBQFileSystemModel %1 KB%1 KBQFileSystemModel %1 MB%1 MBQFileSystemModel %1 TB%1 TBQFileSystemModel%1 bjt %1 byte(s)QFileSystemModel%1 byte%1 bytesQFileSystemModel<b>A(z) "%1" nv nem hasznlhat.</b><p>Prblja meg msik nvvel, kevesebb karakterrel vagy rsjelek nlkl.oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModelSzmtgpComputerQFileSystemModel Mdosts dtuma Date ModifiedQFileSystemModel&rvnytelen fjlnvInvalid filenameQFileSystemModelKindKindQFileSystemModelSzmtgp My ComputerQFileSystemModelNvNameQFileSystemModel MretSizeQFileSystemModel TpusTypeQFileSystemModelBrmelyikAny QFontDatabaseArabArabic QFontDatabase rmnyArmenian QFontDatabaseBengliBengali QFontDatabase FeketeBlack QFontDatabase KvrBold QFontDatabase CirillCyrillic QFontDatabaseFlkvrDemi QFontDatabaseFlkvr Demi Bold QFontDatabaseDvangri Devanagari QFontDatabaseGergelyGeorgian QFontDatabase GrgGreek QFontDatabaseGujaratiGujarati QFontDatabaseGurmukhiGurmukhi QFontDatabase HberHebrew QFontDatabaseDQltItalic QFontDatabase JapnJapanese QFontDatabaseKannadaKannada QFontDatabase KhmerKhmer QFontDatabase KoreaiKorean QFontDatabaseLaoLao QFontDatabase LatinLatin QFontDatabaseVilgosLight QFontDatabaseMalayalam Malayalam QFontDatabaseMiannmariMyanmar QFontDatabaseN'KoN'Ko QFontDatabase NormlNormal QFontDatabase FerdeOblique QFontDatabase OghamOgham QFontDatabase OriyaOriya QFontDatabaseRnaRunic QFontDatabase(Egyszerqstett knaiSimplified Chinese QFontDatabaseSinhalaSinhala QFontDatabaseSzimbolumSymbol QFontDatabaseSzrSyriac QFontDatabase TamilTamil QFontDatabase TeluguTelugu QFontDatabase ThaanaThaana QFontDatabaseThaiThai QFontDatabase TibetiTibetan QFontDatabase"Hagyomnyos knaiTraditional Chinese QFontDatabaseVietnm Vietnamese QFontDatabase&Betqtpus&Font QFontDialog &Mret&Size QFontDialog&Alhzott &Underline QFontDialogHatsokEffects QFontDialog$Betqtpu&s stlusa Font st&yle QFontDialog PldaSample QFontDialog,Betqtpus kivlasztsa Select Font QFontDialog&thzott Stri&keout QFontDialog&rsmdWr&iting System QFontDialogBA knyvtrvlts nem sikerlt: %1Changing directory failed: %1QFtp6Kapcsoldva a kiszolglhozConnected to hostQFtp8Kapcsoldva %1 kiszolglhozConnected to host %1QFtp\A kapcsolds a kiszolglhoz nem sikerlt: %1Connecting to host failed: %1QFtp(A kapcsolat bezrultConnection closedQFtp6Az adatkapcsolat elutastva&Connection refused for data connectionQFtpRA kapcsolds %1 kiszolglhoz elutastvaConnection refused to host %1QFtpZA vrakozsi idQ lejrt a(z) %1 kiszolglhozConnection timed out to host %1QFtpJA kapcsolat %1 kiszolglval bezrultConnection to %1 closedQFtpNA knyvtr ltrehozsa nem sikerlt: %1Creating directory failed: %1QFtpBA fjl letltse nem sikerlt: %1Downloading file failed: %1QFtp4%1 kiszolglt megtalltam Host %1 foundQFtp6%1 kiszolgl nem tallhatHost %1 not foundQFtp2A kiszolglt megtalltam Host foundQFtpJA knyvtr listzsa nem sikerlt: %1Listing directory failed: %1QFtp@A bejelentkezs nem sikerlt: %1Login failed: %1QFtpNincs kapcsolat Not connectedQFtpFA knyvtr trlse nem sikerlt: %1Removing directory failed: %1QFtp>A fjl trlse nem sikerlt: %1Removing file failed: %1QFtpIsmeretlen hiba Unknown errorQFtpDA fjl feltltse nem sikerlt: %1Uploading file failed: %1QFtp,Nem adott meg gpnevetNo host name given QHostInfoIsmeretlen hiba Unknown error QHostInfo4A kiszolgl nem tallhatHost not foundQHostInfoAgent$rvnytelen gpnvInvalid hostnameQHostInfoAgent,Nem adott meg gpnevetNo host name givenQHostInfoAgent&Ismeretlen cmtpusUnknown address typeQHostInfoAgentIsmeretlen hiba Unknown errorQHostInfoAgent(Azonosts szksgesAuthentication requiredQHttp6Kapcsoldva a kiszolglhozConnected to hostQHttp8Kapcsoldva %1 kiszolglhozConnected to host %1QHttp(A kapcsolat bezrultConnection closedQHttp,A kapcsolat elutastvaConnection refusedQHttpbA kapcsolat elutastva (vagy idQtllps trtnt)!Connection refused (or timed out)QHttpJA kapcsolat %1 kiszolglval bezrultConnection to %1 closedQHttp*Az adatok megsrltekData corruptedQHttpDHiba a vlasz eszkzre rsa sorn Error writing response to deviceQHttp2A HTTP krs nem sikerltHTTP request failedQHttpvHTTPS kapcsolat kiptse szksges, de nincs SSL tmogats:HTTPS connection requested but SSL support not compiled inQHttp4%1 kiszolglt megtalltam Host %1 foundQHttp6%1 kiszolgl nem tallhatHost %1 not foundQHttp2A kiszolglt megtalltam Host foundQHttp2A gp azonostst kvetelHost requires authenticationQHttp:rvnytelen HTTP trzsrszletInvalid HTTP chunked bodyQHttp<rvnytelen HTTP vlasz-fejlcInvalid HTTP response headerQHttp*Nincs szerver megadvaNo server set to connect toQHttp6A proxy azonostst kvetelProxy authentication requiredQHttp6A proxy azonostst kvetelProxy requires authenticationQHttp&A krs megszaktvaRequest abortedQHttp>Az SSL kzfogs sikertelen voltSSL handshake failedQHttpTA szerver vratlanul bezrta a kapcsolatot%Server closed connection unexpectedlyQHttp4Ismeretlen azonostsi mdUnknown authentication methodQHttpIsmeretlen hiba Unknown errorQHttp(Ismeretlen protokollUnknown protocol specifiedQHttp&Rossz tartalomhosszWrong content lengthQHttp(Azonosts szksgesAuthentication requiredQHttpSocketEngine@A proxy nem kldtt HTTP vlaszt(Did not receive HTTP response from proxyQHttpSocketEngineXHiba a HTTP proxyval val kommunikci sorn#Error communicating with HTTP proxyQHttpSocketEnginedHiba a proxy azonostsi krelmnek rtelmezsekor/Error parsing authentication request from proxyQHttpSocketEnginePA proxy vratlanul lezrta a kapcsolatot#Proxy connection closed prematurelyQHttpSocketEngineDA proxy elutastotta a kapcsolatotProxy connection refusedQHttpSocketEngine@A proxy megtagadta a kapcsolatotProxy denied connectionQHttpSocketEnginefA kapcslat idQtllps miatt megszakadt a proxxyval!Proxy server connection timed outQHttpSocketEngine*A proxy nem tallhatProxy server not foundQHttpSocketEngine4A tranzakci nem indthatCould not start transaction QIBaseDriver2Adatbzis megnyitsi hibaError opening database QIBaseDriver>A tranzakci nem vglegesthetQUnable to commit transaction QIBaseDriverDA tranzakci nem grgethetQ visszaUnable to rollback transaction QIBaseDriverDA mqvelet helyfoglalsa sikertelenCould not allocate statement QIBaseResultJA bemeneti mqvelet lersa sikertelen"Could not describe input statement QIBaseResult8A mqvelet lersa sikertelenCould not describe statement QIBaseResultBA kvetkezQ adat nem olvashat kiCould not fetch next item QIBaseResult(A tmb nem tallhatCould not find array QIBaseResult@A tmbbeli adatok nem rhetQk elCould not get array data QIBaseResultJA lekrdezs-informci nem rhetQ elCould not get query info QIBaseResult\A kvetkezQ mqvelet informcii nem rhetQk elCould not get statement info QIBaseResultBA mqvelet elQksztse sikertelenCould not prepare statement QIBaseResult4A tranzakci nem indthatCould not start transaction QIBaseResult:A mqvelet lezrsa sikertelenUnable to close statement QIBaseResult>A tranzakci nem vglegesthetQUnable to commit transaction QIBaseResult2A BLOB nem hozhat ltre Unable to create BLOB QIBaseResult8A mqvelet nem hajthat vgreUnable to execute query QIBaseResult.A BLOB nem nyithat megUnable to open BLOB QIBaseResult(A BLOB nem olvashatUnable to read BLOB QIBaseResult"A BLOB nem rhatUnable to write BLOB QIBaseResult6Nincs tbb hely az eszkznNo space left on device QIODevice<Nincs ilyen fjl vagy knyvtrNo such file or directory QIODevice*Hozzfrs megtagadvaPermission denied QIODevice.Tl sok fjl van nyitvaToo many open files QIODeviceIsmeretlen hiba Unknown error QIODeviceFEP QInputContext*Mac OS X beviteli mdMac OS X input method QInputContext(S60 FEP beviteli mdS60 FEP input method QInputContext(Windows beviteli mdWindows input method QInputContextXIMXIM QInputContext XIM beviteli mdXIM input method QInputContext*rjon be egy rtket:Enter a value: QInputDialogHA(z) %1 knyvtr nem tlthetQ be: %2Cannot load library %1: %2QLibraryvA(z) "%1" szimblum nem oldhat fel a(z) %2 knyvtrban: %3$Cannot resolve symbol "%1" in %2: %3QLibraryNA(z) %1 knyvtr nem tvolthat el: %2Cannot unload library %1: %2QLibraryLNem sikerlt mmap-olni a(z) '%1'-t: %2Could not mmap '%1': %2QLibraryNNem sikerlt unmap-olni a(z) '%1'-t: %2Could not unmap '%1': %2QLibraryFPlugin ellenQrzQ adat eltrs: '%1')Plugin verification data mismatch in '%1'QLibraryLA(z) '%1' fjl nem rvnyes Qt plugin.'The file '%1' is not a valid Qt plugin.QLibraryA(z) '%1' plugin inkompatbilis Qt fggvnyknyvtrat hasznl. (%2.%3.%4) [%5]=The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]QLibraryA(z) '%1' plugin inkompatbilis Qt knyvtrat hasznl. (A debug s a release knyvtrak nem keverhetQk.)WThe plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)QLibraryA(z) '%1' plugin inkompatbilis Qt fggvnyknyvtrat hasznl. A vrt build kucs "%2", a kapott "%3"OThe plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"QLibraryTAz osztott fggvnyknyvtr nem tallhat.!The shared library was not found.QLibraryIsmeretlen hiba Unknown errorQLibrary&Msols&Copy QLineEdit&Beilleszts&Paste QLineEdit j&ra&Redo QLineEdit&Visszavons&Undo QLineEdit&KivgsCu&t QLineEdit TrlsDelete QLineEdit"sszes kijellse Select All QLineEdit<%1: A cm mr hasznlatban van%1: Address in use QLocalServer%1: Hibs nv%1: Name error QLocalServer2%1: hozzfrs megtagadva%1: Permission denied QLocalServer,%1: ismeretlen hiba %2%1: Unknown error %2 QLocalServer*%1: Kapcsoldsi hiba%1: Connection error QLocalSocket4%1: A kapcsolat elutastva%1: Connection refused QLocalSocket*%1: A csomag tl nagy%1: Datagram too large QLocalSocket&%1: rvnytelen nv%1: Invalid name QLocalSocketF%1: A szerver lezrta a kapcsolatot%1: Remote closed QLocalSocket.%1: Socket elrsi hiba%1: Socket access error QLocalSocket4%1: IdQtllps a socketen%1: Socket operation timed out QLocalSocket:%1: Socket erQforrs problma%1: Socket resource error QLocalSocketT%1: A kvnt socket mqvelet nem tmogatott)%1: The socket operation is not supported QLocalSocket(%1: Ismeretlen hiba %1: Unknown error QLocalSocket,%1: Ismeretlen hiba %2%1: Unknown error %2 QLocalSocket4A tranzakci nem indthatUnable to begin transaction QMYSQLDriver>A tranzakci nem vglegesthetQUnable to commit transaction QMYSQLDriver0Nem sikerlt kapcsoldniUnable to connect QMYSQLDriver@Az adatbzis nem nyithat meg: 'Unable to open database ' QMYSQLDriverDA tranzakci nem grgethetQ visszaUnable to rollback transaction QMYSQLDriver@A kimenQ rtk ktse sikertelenUnable to bind outvalues QMYSQLResult6A vltoz ktse sikertelenUnable to bind value QMYSQLResultRA kvetkezQ lekrdezs nem hajthat vgreUnable to execute next query QMYSQLResult>A lekrdezs nem hajthat vgreUnable to execute query QMYSQLResult8A mqvelet nem hajthat vgreUnable to execute statement QMYSQLResult0Az adat nem olvashat kiUnable to fetch data QMYSQLResultJA mqvelet elQksztse nem lehetsgesUnable to prepare statement QMYSQLResultNA mqvelet visszalltsa nem lehetsgesUnable to reset statement QMYSQLResultDA kvetkezQ eredmny nem trolhatUnable to store next result QMYSQLResult2Az eredmny nem trolhatUnable to store result QMYSQLResultTA mqvelet eredmnynek trolsa sikertelen!Unable to store statement results QMYSQLResult(Nvtelen) (Untitled)QMdiArea%1 - [%2] %1 - [%2] QMdiSubWindow&Bezrs&Close QMdiSubWindow&thelyezs&Move QMdiSubWindow&Visszallts&Restore QMdiSubWindow &Mret&Size QMdiSubWindow - [%1]- [%1] QMdiSubWindowBezrsClose QMdiSubWindowSgHelp QMdiSubWindowTe&ljes mret Ma&ximize QMdiSubWindowTeljes mretMaximize QMdiSubWindowMenMenu QMdiSubWindow&Kis mret Mi&nimize QMdiSubWindowKis mretMinimize QMdiSubWindowVisszalltsRestore QMdiSubWindowElQzQ mret Restore Down QMdiSubWindowFelgrdtsShade QMdiSubWindow Mindig leg&fell Stay on &Top QMdiSubWindowLegrdtsUnshade QMdiSubWindowBezrsCloseQMenuVgrehajtsExecuteQMenuMegnyitsOpenQMenuMqveletekActionsQMenuBar<h3>Qt nvjegye</h3><p>Ez a program a Qt %1 verzijt hasznlja.</p>8

About Qt

This program uses Qt version %1.

 QMessageBoxA Qt nvjegyeAbout Qt QMessageBoxSgHelp QMessageBox,Rszletek elrejtse...Hide Details... QMessageBoxOKOK QMessageBox4Rszletek megjelentse...Show Details... QMessageBox2Beviteli md kivlasztsa Select IMQMultiInputContext*Beviteli md vlasztMultiple input method switcherQMultiInputContextPluginA szveg elemeken megjelentendQ felbukkan beviteli md vlasztMMultiple input method switcher that uses the context menu of the text widgetsQMultiInputContextPluginREgy msik socket mr figyel ezen a porton4Another socket is already listening on the same portQNativeSocketEngineIPv6 socket hasznlatnak ksrlete IPv6 tmogats nlkli platformon=Attempt to use IPv6 socket on a platform with no IPv6 supportQNativeSocketEngine,A kapcsolat elutastvaConnection refusedQNativeSocketEngineFA kapcsolat vrakozsi ideje lejrtConnection timed outQNativeSocketEngineJA csomag mrete miatt nem kldhetQ elDatagram was too large to sendQNativeSocketEngine4A kiszolgl nem rhetQ elHost unreachableQNativeSocketEngine0rvnytelen socket lerInvalid socket descriptorQNativeSocketEngineHlzati hiba Network errorQNativeSocketEngineDIdQtllps hlzati mqvelet sornNetwork operation timed outQNativeSocketEngine.A hlzat nem rhetQ elNetwork unreachableQNativeSocketEngineFSocket mqvelet rvnytelen eszkznOperation on non-socketQNativeSocketEngine0Az erQforrsok elfogytakOut of resourcesQNativeSocketEngine*Hozzfrs megtagadvaPermission deniedQNativeSocketEngine0Nem tmogatott protokollProtocol type not supportedQNativeSocketEngine$A cm nem elrhetQThe address is not availableQNativeSocketEngineA cm vdettThe address is protectedQNativeSocketEngineFA lefoglaland cm hasznlatban van#The bound address is already in useQNativeSocketEngineRA proxy tpusa nem megfelelQ a mqvelethez,The proxy type is invalid for this operationQNativeSocketEngineRA tvoli kiszolgl bezrta a kapcsolatot%The remote host closed the connectionQNativeSocketEngineTA broadcast socket elQksztse sikertelen%Unable to initialize broadcast socketQNativeSocketEngineZA nem-blokkolo socket elQksztse sikertelen(Unable to initialize non-blocking socketQNativeSocketEngine(Nem fogadhat zenetUnable to receive a messageQNativeSocketEngine&Nem kldhetQ zenetUnable to send a messageQNativeSocketEngineNem rhatUnable to writeQNativeSocketEngineIsmeretlen hiba Unknown errorQNativeSocketEngine:Nem tmogatott socket mqveletUnsupported socket operationQNativeSocketEngine*Hiba %1 megnyitsakorError opening %1QNetworkAccessCacheBackend&rvnytelen cm: %1Invalid URI: %1QNetworkAccessDataBackendFA mqvelett nem tmogatott a(z) %1-nOperation not supported on %1QNetworkAccessDataBackendbA(z) %1 gp idQ elQtt megszaktotta a kapcsolatot3Remote host closed the connection prematurely on %1QNetworkAccessDebugPipeBackend2Socket hiba a(z) %1-n: %2Socket error on %1: %2QNetworkAccessDebugPipeBackend6Hiba a(z) %1 kirsakor: %2Write error writing to %1: %2QNetworkAccessDebugPipeBackendJSikertelen megnyits: %1 egy knyvtr#Cannot open %1: Path is a directoryQNetworkAccessFileBackend<Hiba a(z) %1 megnyitsakor: %2Error opening %1: %2QNetworkAccessFileBackend@Hiba a(z) %1 olvassa kzben: %2Read error reading from %1: %2QNetworkAccessFileBackendTNem helyi fjl megnyitsnak ksrlete: %1%Request for opening non-local file %1QNetworkAccessFileBackend6Hiba a(z) %1 kirsakor: %2Write error writing to %1: %2QNetworkAccessFileBackendJSikertelen megnyits: %1 egy knyvtrCannot open %1: is a directoryQNetworkAccessFtpBackend:Hiba a(z) %1 letltsekor: %2Error while downloading %1: %2QNetworkAccessFtpBackend<Hiba a(z) %1 feltltsekor: %2Error while uploading %1: %2QNetworkAccessFtpBackendrA bejelentkezs sikertelen ide: %1, hitelests szksges0Logging in to %1 failed: authentication requiredQNetworkAccessFtpBackend*Nincs megfelelQ proxyNo suitable proxy foundQNetworkAccessFtpBackend*Nincs megfelelQ proxyNo suitable proxy foundQNetworkAccessHttpBackendPA hozzfrs a hlzathoz le van tiltva.Network access is disabled.QNetworkAccessManagerXHiba %1 letltsekor - a szerver vlasza: %2)Error downloading %1 - server replied: %2 QNetworkReply2Hlozati munkamenet hiba.Network session error. QNetworkReply4Ismeretlen protokoll: "%1"Protocol "%1" is unknown QNetworkReply2Ideiglenes hlzati hiba.Temporary network failure. QNetworkReply*A mqvelet megszaktvaOperation canceledQNetworkReplyImpl2rvnytelen konfigurci.Invalid configuration.QNetworkSessionRoaming hiba Roaming errorQNetworkSessionPrivateImplTA roaming megszakadt, vagy nem lehetsges.'Roaming was aborted or is not possible.QNetworkSessionPrivateImpltA munkamenetet a felhasznl vagy a rendszer megszaktotta!Session aborted by user or systemQNetworkSessionPrivateImplTA krt mqveletet a rendszer nem tmogatja.7The requested operation is not supported by the system.QNetworkSessionPrivateImplvA munkamenetet a felhasznl vagy a rendszer megszaktotta..The session was aborted by the user or system.QNetworkSessionPrivateImplPA megadott konfigurci nem hasznlhat.+The specified configuration cannot be used.QNetworkSessionPrivateImpl$Azonostatlan hibaUnidentified ErrorQNetworkSessionPrivateImpl@Ismeretlen hiba a munkamenetben.Unknown session error.QNetworkSessionPrivateImpl4A tranzakci nem indthatUnable to begin transaction QOCIDriver>A tranzakci nem vglegesthetQUnable to commit transaction QOCIDriver>Az inicializls nem lehetsgesUnable to initialize QOCIDriver<A bejelentkezs nem lehetsgesUnable to logon QOCIDriverDA tranzakci nem grgethetQ visszaUnable to rollback transaction QOCIDriverDAz utasts lefoglalsa sikertelenUnable to alloc statement QOCIResultfAz oszlop ktegelt vgrehajtshoz ktse sikertelen'Unable to bind column for batch execute QOCIResult6A vltoz ktse sikertelenUnable to bind value QOCIResultZA ktegelt utastsok vgrehajtsa sikertelen!Unable to execute batch statement QOCIResult:Az utasts nem vgrehajthatUnable to execute statement QOCIResult:Az utasts tpusa nem ismertUnable to get statement type QOCIResult:Nem lehet a kvetkezQre lpniUnable to goto next QOCIResultFAz utasts elQksztse sikertelenUnable to prepare statement QOCIResult>A tranzakci nem vglegesthetQUnable to commit transaction QODBCDriver0Nem sikerlt kapcsoldniUnable to connect QODBCDriverNem sikerlt kapcsoldni - A driver nem tmogat minden szksges szolgltatstEUnable to connect - Driver doesn't support all functionality required QODBCDriverVAz automatikus vglegests nem tilthat leUnable to disable autocommit QODBCDriver\Az automatikus vglegests nem engedlyezhetQUnable to enable autocommit QODBCDriverDA tranzakci nem grgethetQ visszaUnable to rollback transaction QODBCDriverQODBCResult::reset: Nem lehet a 'SQL_CURSOR_STATIC' attribtumot belltani a parancson. EllenQrizze az ODBC driver belltstyQODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResult0A vltoz nem rgzthetQUnable to bind variable QODBCResult8A parancs nem hajthat vgreUnable to execute statement QODBCResult0Az eredmny nem elrhetQUnable to fetch QODBCResult<Az elsQ eredmny nem rhetQ elUnable to fetch first QODBCResult@Az utols eredmny nem rhetQ elUnable to fetch last QODBCResult8A kvetkezQ nem olvashat kiUnable to fetch next QODBCResult>Az elQzQ eredmny nem rhetQ elUnable to fetch previous QODBCResultJA parancs elQksztse nem lehetsgesUnable to prepare statement QODBCResultA(z) "%1" neve tkzik egy, mr ltezQ szably nevvel, gy le lesz tiltva.:"%1" duplicates a previous role name and will be disabled.QObjectPulseAudio Sound ServerQObject8rvnytelen lekrdezs: "%1"invalid query: "%1"QObjectNvNameQPPDOptionsModel rtkValueQPPDOptionsModel4A tranzakci nem indthatCould not begin transaction QPSQLDriver>A tranzakci nem vglegesthetQCould not commit transaction QPSQLDriverDA tranzakci nem grgethetQ visszaCould not rollback transaction QPSQLDriver0Nem sikerlt kapcsoldniUnable to connect QPSQLDriver2A feliratkozs sikertelenUnable to subscribe QPSQLDriver0A leiratkozs sikertelenUnable to unsubscribe QPSQLDriver<A lekrdezs nem kszthetQ elUnable to create query QPSQLResultJA parancs elQksztse nem lehetsgesUnable to prepare statement QPSQLResultCentimter (cm)Centimeters (cm)QPageSetupWidgetFormtumFormQPageSetupWidgetMagassg:Height:QPageSetupWidgetInch (in) Inches (in)QPageSetupWidget FekvQ LandscapeQPageSetupWidget MargkMarginsQPageSetupWidgetMillimter (mm)Millimeters (mm)QPageSetupWidgetOrientci OrientationQPageSetupWidgetPaprmret: Page size:QPageSetupWidget PaprPaperQPageSetupWidgetPaprforrs: Paper source:QPageSetupWidgetPont (pt) Points (pt)QPageSetupWidgetllPortraitQPageSetupWidgetFordtott fekvQReverse landscapeQPageSetupWidgetFordtott llReverse portraitQPageSetupWidgetSzlessg:Width:QPageSetupWidgetals marg bottom marginQPageSetupWidgetbal marg left marginQPageSetupWidgetjobb marg right marginQPageSetupWidgetfelsQ marg top marginQPageSetupWidget6A plugin nem lett betltve.The plugin was not loaded. QPluginLoaderIsmeretlen hiba Unknown error QPluginLoader4%1 mr ltezik. Fellrja?/%1 already exists. Do you want to overwrite it? QPrintDialogV%1 egy knyvtr. Vlasszon msik fjlnevet.7%1 is a directory. Please choose a different file name. QPrintDialog&Opcik << &Options << QPrintDialog&Opcik >> &Options >> QPrintDialog&Nyomtats&Print QPrintDialog&<qt>Fellrja?</qt>%Do you want to overwrite it? QPrintDialogA0 QPrintDialog$A0 (841 x 1189 mm)A0 (841 x 1189 mm) QPrintDialogA1 QPrintDialog"A1 (594 x 841 mm)A1 (594 x 841 mm) QPrintDialogA2 QPrintDialog"A2 (420 x 594 mm)A2 (420 x 594 mm) QPrintDialogA3 QPrintDialog"A3 (297 x 420 mm)A3 (297 x 420 mm) QPrintDialogA4 QPrintDialogFA4 (210 x 297 mm, 8.26 x 11.7 inch)%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialogA5 QPrintDialog"A5 (148 x 210 mm)A5 (148 x 210 mm) QPrintDialogA6 QPrintDialog"A6 (105 x 148 mm)A6 (105 x 148 mm) QPrintDialogA7 QPrintDialog A7 (74 x 105 mm)A7 (74 x 105 mm) QPrintDialogA8 QPrintDialogA8 (52 x 74 mm)A8 (52 x 74 mm) QPrintDialogA9 QPrintDialogA9 (37 x 52 mm)A9 (37 x 52 mm) QPrintDialoglnevek: %1 Aliases: %1 QPrintDialogB0 QPrintDialog&B0 (1000 x 1414 mm)B0 (1000 x 1414 mm) QPrintDialogB1 QPrintDialog$B1 (707 x 1000 mm)B1 (707 x 1000 mm) QPrintDialogB10 QPrintDialog B10 (31 x 44 mm)B10 (31 x 44 mm) QPrintDialogB2 QPrintDialog"B2 (500 x 707 mm)B2 (500 x 707 mm) QPrintDialogB3 QPrintDialog"B3 (353 x 500 mm)B3 (353 x 500 mm) QPrintDialogB4 QPrintDialog"B4 (250 x 353 mm)B4 (250 x 353 mm) QPrintDialogB5 QPrintDialogFB5 (176 x 250 mm, 6.93 x 9.84 inch)%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialogB6 QPrintDialog"B6 (125 x 176 mm)B6 (125 x 176 mm) QPrintDialogB7 QPrintDialog B7 (88 x 125 mm)B7 (88 x 125 mm) QPrintDialogB8 QPrintDialogB8 (62 x 88 mm)B8 (62 x 88 mm) QPrintDialogB9 QPrintDialogB9 (44 x 62 mm)B9 (44 x 62 mm) QPrintDialogC5E QPrintDialog$C5E (163 x 229 mm)C5E (163 x 229 mm) QPrintDialog EgyniCustom QPrintDialogDLE QPrintDialog$DLE (110 x 220 mm)DLE (110 x 220 mm) QPrintDialog Executive QPrintDialogNExecutive (7.5 x 10 inch, 191 x 254 mm))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialog\%1 fjl nem rhat. Vlasszon msik fjlnevet.=File %1 is not writable. Please choose a different file name. QPrintDialogA fjl ltezik File exists QPrintDialog FliFolio QPrintDialog(Folio (210 x 330 mm)Folio (210 x 330 mm) QPrintDialogLedger QPrintDialog*Ledger (432 x 279 mm)Ledger (432 x 279 mm) QPrintDialogLegal QPrintDialogFLegal (8.5 x 14 inch, 216 x 356 mm)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialog LevlLetter QPrintDialogHLetter (8.5 x 11 inch, 216 x 279 mm)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialogHelyi fjl Local file QPrintDialogOKOK QPrintDialogNyomtatsPrint QPrintDialog&Nyomtats fjlba...Print To File ... QPrintDialog"sszes nyomtatsa Print all QPrintDialog4Jelenlegi oldal nyomtatsaPrint current page QPrintDialog(Nyomtatsi tartomny Print range QPrintDialog(Kijells nyomtatsaPrint selection QPrintDialog,Nyomtats fjlba (PDF)Print to File (PDF) QPrintDialog:Nyomtats fjlba (PostScript)Print to File (Postscript) QPrintDialogTabloid QPrintDialog,Tablod (279 x 432 mm)Tabloid (279 x 432 mm) QPrintDialogzAz elsQ oldal szma nem lehet nagyobb, mint az utols oldal.7The 'From' value cannot be greater than the 'To' value. QPrintDialog6US ltalnos #10-es bortkUS Common #10 Envelope QPrintDialogJUS Common #10 Envelope (105 x 241 mm)%US Common #10 Envelope (105 x 241 mm) QPrintDialogrs %1 fjlba Write %1 file QPrintDialog,helyben csatlakoztatvalocally connected QPrintDialogismeretlenunknown QPrintDialog%1%%1%QPrintPreviewDialogBezrsCloseQPrintPreviewDialog"Exportls PDF-be Export to PDFQPrintPreviewDialog0Exportls PostScript-beExport to PostScriptQPrintPreviewDialogElsQ oldal First pageQPrintPreviewDialogOldal igaztsaFit pageQPrintPreviewDialog&Szlessg igaztsa Fit widthQPrintPreviewDialog FekvQ LandscapeQPrintPreviewDialogUtols oldal Last pageQPrintPreviewDialogKvetkezQ oldal Next pageQPrintPreviewDialogOldalbellts Page SetupQPrintPreviewDialogOldalbellts Page setupQPrintPreviewDialogllPortraitQPrintPreviewDialogElQzQ oldal Previous pageQPrintPreviewDialogNyomtatsPrintQPrintPreviewDialogNyomtatsi kp Print PreviewQPrintPreviewDialog.Ktoldalas megjelentsShow facing pagesQPrintPreviewDialog:Az sszes oldal megjelentseShow overview of all pagesQPrintPreviewDialog0Egy oldalas megjelentsShow single pageQPrintPreviewDialogNagytsZoom inQPrintPreviewDialogKicsinytsZoom outQPrintPreviewDialogEgyebekAdvancedQPrintPropertiesWidgetFormtumFormQPrintPropertiesWidget PaprPageQPrintPropertiesWidgetEgyeztetsCollateQPrintSettingsOutputSznColorQPrintSettingsOutputSznmd Color ModeQPrintSettingsOutputMsolatokCopiesQPrintSettingsOutputMsolat:Copies:QPrintSettingsOutputJelenlegi oldal Current PageQPrintSettingsOutput Duplex nyomtatsDuplex PrintingQPrintSettingsOutputFormtumFormQPrintSettingsOutput Szrkernyalatos GrayscaleQPrintSettingsOutputHosszabb oldal Long sideQPrintSettingsOutput NincsNoneQPrintSettingsOutput OpcikOptionsQPrintSettingsOutput$Kimenet belltsaOutput SettingsQPrintSettingsOutputKezQoldal Pages fromQPrintSettingsOutput"sszes nyomtatsa Print allQPrintSettingsOutput(Nyomtatsi tartomny Print rangeQPrintSettingsOutputFordtottReverseQPrintSettingsOutputKijells SelectionQPrintSettingsOutputRvidebb oldal Short sideQPrintSettingsOutpututols oldaltoQPrintSettingsOutput &Nv:&Name: QPrintWidget...... QPrintWidgetFormtumForm QPrintWidget Hely: Location: QPrintWidgetKimeneti &fjl: Output &file: QPrintWidgetTula&jdonsgok P&roperties QPrintWidgetElQnzetPreview QPrintWidgetNyomtatPrinter QPrintWidget Tpus:Type: QPrintWidgetnAz tirnytott bemenet megnyitsa olvassra sikertelen,Could not open input redirection for readingQProcesshAz tirnytott kimenet megnyitsa rsra sikertelen-Could not open output redirection for writingQProcessLHiba a folyamat kimenetrQl olvasskorError reading from processQProcessDHiba a folyamat bemenetre rskorError writing to processQProcess4A programnv nincs megadvaNo program definedQProcess,A folyamat sszeomlottProcess crashedQProcessRA mqvelet elQksztse nem lehetsges: %1Process failed to start: %1QProcessLA mqvelet idQtllps miatt megszakadtProcess operation timed outQProcess2A forkols sikertelen: %1!Resource error (fork failure): %1QProcess MgsemCancelQProgressDialogMegnyitsOpen QPushButtonKijellsCheck QRadioButton>rossz karakterosztly-szintaxisbad char class syntaxQRegExp2rossz lookahead-szintaxisbad lookahead syntaxQRegExp0rossz ismtls-szintaxisbad repetition syntaxQRegExp<letiltott lehetQsg hasznlatadisabled feature usedQRegExp*rvnytelen kategriainvalid categoryQRegExp.rvnytelen intervalluminvalid intervalQRegExp2rvnytelen oktlis rtkinvalid octal valueQRegExp&belsQ korlt elrvemet internal limitQRegExp4hinyz baloldali hatrolmissing left delimQRegExp nem trtnt hibano error occurredQRegExp$vratlan befejezsunexpected endQRegExp2Adatbzis megnyitsi hibaError opening databaseQSQLite2Driver4A tranzakci nem indthatUnable to begin transactionQSQLite2Driver>A tranzakci nem vglegesthetQUnable to commit transactionQSQLite2DriverDA tranzakci nem grgethetQ visszaUnable to rollback transactionQSQLite2Driver8A parancs nem hajthat vgreUnable to execute statementQSQLite2Result>Az eredmnyek nem olvashatk kiUnable to fetch resultsQSQLite2Result.Adatbzis bezrsi hibaError closing database QSQLiteDriver2Adatbzis megnyitsi hibaError opening database QSQLiteDriver4A tranzakci nem indthatUnable to begin transaction QSQLiteDriver>A tranzakci nem vglegesthetQUnable to commit transaction QSQLiteDriverDA tranzakci nem grgethetQ visszaUnable to rollback transaction QSQLiteDriverres lekrdezsNo query QSQLiteResultBA paramterek szma nem megfelelQParameter count mismatch QSQLiteResult>A paramterek ktse sikertelenUnable to bind parameters QSQLiteResult8A parancs nem hajthat vgreUnable to execute statement QSQLiteResult,A sor nem olvashat kiUnable to fetch row QSQLiteResult8A parancs nem vonhat visszaUnable to reset statement QSQLiteResultFelttel ConditionQScriptBreakpointsModelTallatok szma Hit-countQScriptBreakpointsModelIDIDQScriptBreakpointsModel Kihagysok szma Ignore-countQScriptBreakpointsModelHelyLocationQScriptBreakpointsModel Single-shotQScriptBreakpointsModel TrlsDeleteQScriptBreakpointsWidgetjNewQScriptBreakpointsWidget8&Keress a parancsfjlban...&Find in Script...QScriptDebuggerKonzol trlse Clear ConsoleQScriptDebugger*Debug kimenet trlseClear Debug OutputQScriptDebugger"Hibanapl trlseClear Error LogQScriptDebuggerFolytatsContinueQScriptDebuggerCtrl+FQScriptDebuggerCtrl+F10QScriptDebuggerCtrl+GQScriptDebuggerHibakeressDebugQScriptDebuggerF10QScriptDebuggerF11QScriptDebuggerF3QScriptDebuggerF5QScriptDebuggerF9QScriptDebugger&K&vetkezQ keresse Find &NextQScriptDebugger&ElQzQ keresseFind &PreviousQScriptDebuggerSorra ugrs Go to LineQScriptDebuggerMegszakts InterruptQScriptDebuggerSor:Line:QScriptDebugger(Futtats a kurzortl Run to CursorQScriptDebugger Shift+F11QScriptDebuggerShift+F3QScriptDebuggerShift+F5QScriptDebuggerBeleugrs Step IntoQScriptDebuggerKiugrsStep OutQScriptDebuggertugrs Step OverQScriptDebugger(Trspont belltsaToggle BreakpointQScriptDebugger<img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;A keress befejezQdttJ Search wrappedQScriptDebuggerCodeFinderWidget*Kis/nagybetq rzkenyCase SensitiveQScriptDebuggerCodeFinderWidgetBezrsCloseQScriptDebuggerCodeFinderWidgetKvetkezQNextQScriptDebuggerCodeFinderWidget ElQzQPreviousQScriptDebuggerCodeFinderWidgetTeljes sz Whole wordsQScriptDebuggerCodeFinderWidgetNvNameQScriptDebuggerLocalsModel rtkValueQScriptDebuggerLocalsModel SzintLevelQScriptDebuggerStackModelHelyLocationQScriptDebuggerStackModelNvNameQScriptDebuggerStackModel&Trspont llapota:Breakpoint Condition: QScriptEdit&Trspont letiltsaDisable Breakpoint QScriptEdit.Trspont engedlyezseEnable Breakpoint QScriptEdit(Trspont belltsaToggle Breakpoint QScriptEditTrspontok BreakpointsQScriptEngineDebugger KonzolConsoleQScriptEngineDebuggerDebug kimenet Debug OutputQScriptEngineDebuggerHibanapl Error LogQScriptEngineDebugger.Betlttt parancsfjlokLoaded ScriptsQScriptEngineDebuggerHelyi vltozkLocalsQScriptEngineDebugger2Qt parancsfjl-hibakeresQQt Script DebuggerQScriptEngineDebuggerKeressSearchQScriptEngineDebugger VeremStackQScriptEngineDebugger NzetViewQScriptEngineDebuggerBezrsCloseQScriptNewBreakpointWidgetLentBottom QScrollBarBal szlen Left edge QScrollBarSor lefel Line down QScrollBarSor felfelLine up QScrollBarOldal lefel Page down QScrollBarOldal balra Page left QScrollBarOldal jobbra Page right QScrollBarOldal felfelPage up QScrollBarHelyzetPosition QScrollBarJobb szlen Right edge QScrollBarGrgets lefel Scroll down QScrollBarGrgets itt Scroll here QScrollBarGrgets balra Scroll left QScrollBarGrgets jobbra Scroll right QScrollBar Grgets felfel Scroll up QScrollBarFentTop QScrollBarB%1: az UNIX kulcsfjl nem ltezik%1: UNIX key file doesn't exist QSharedMemory%1: mr ltezik%1: already exists QSharedMemoryF%1: a megadott mret kissebb mint 0%1: create size is less then 0 QSharedMemory%1: nem ltezik%1: doesn't exist QSharedMemory$%1: nem tatllhat%1: doesn't exists QSharedMemory6%1: ftok hibt adott vissza%1: ftok failed QSharedMemory%1: hibs mret%1: invalid size QSharedMemory%1: kulcs hiba %1: key error QSharedMemory(%1: a kulcs hinyzik%1: key is empty QSharedMemory*%1: nem lesz csatolva%1: not attached QSharedMemory8%1: az erQforrsok elfogytak%1: out of resources QSharedMemory2%1: hozzfrs megtagadva%1: permission denied QSharedMemory>%1: hiba a mret lekrdezsekor%1: size query failed QSharedMemoryV%1: a rendszer mretkorltokat lltott fel$%1: system-imposed size restrictions QSharedMemory0%1: a zrols sikertelen%1: unable to lock QSharedMemoryD%1: a kulcs elksztse sikertelen%1: unable to make key QSharedMemoryX%1:a kulcs belltsa sikertelen a zrolson%1: unable to set key on lock QSharedMemory2%1: a felolds sikertelen%1: unable to unlock QSharedMemory,%1: ismeretlen hiba %2%1: unknown error %2 QSharedMemory+ QShortcut$Kedvenc hozzadsa Add Favorite QShortcut$FnyerQ belltsaAdjust Brightness QShortcutAlt QShortcutAlkalmazs balApplication Left QShortcutAlkalmazs jobbApplication Right QShortcutSvismtlsAudio Cycle Track QShortcutElQretekers Audio Forward QShortcut Random lejtszsAudio Random Play QShortcutIsmtls Audio Repeat QShortcutVisszatekers Audio Rewind QShortcut TvolAway QShortcut VisszaBack QShortcutElQre-htra Back Forward QShortcut Backspace QShortcutBacktab QShortcut&Mly hang kiemelse Bass Boost QShortcut*Mly hang cskkentse Bass Down QShortcut$Mly hang nvelseBass Up QShortcutElemBattery QShortcutBluetooth Bluetooth QShortcut KnyvBook QShortcutBngszQBrowser QShortcutCDCD QShortcutSzmolgp Calculator QShortcut HvsCall QShortcut Caps Lock QShortcutCapsLock QShortcut TrlsClear QShortcutElfogs trlse Clear Grab QShortcutBezrsClose QShortcutKzssg Community QShortcutKontextus1Context1 QShortcutKontextus2Context2 QShortcutKontextus3Context3 QShortcutKontextus4Context4 QShortcutMsolsCopy QShortcutCtrl QShortcutKivgsCut QShortcutDOSDOS QShortcutDel QShortcutDelete QShortcutMegjelentsDisplay QShortcutDokumentumok Documents QShortcutLeDown QShortcut Eisu Shift QShortcut Eisu toggle QShortcutTlcanyitsEject QShortcutEnd QShortcutEnter QShortcutEsc QShortcutEscape QShortcutF%1F%1 QShortcutKedvencek Favorites QShortcutPnzgyFinance QShortcut CsereFlip QShortcut ElQreForward QShortcut JtkGame QShortcut UgrsGo QShortcutHangul QShortcut Hangul Banja QShortcut Hangul End QShortcut Hangul Hanja QShortcut Hangul Jamo QShortcut Hangul Jeonja QShortcutHangul PostHanja QShortcutHangul PreHanja QShortcut Hangul Romaja QShortcutHangul Special QShortcut Hangul Start QShortcutHvs vgeHangup QShortcutHankaku QShortcutSgHelp QShortcutHenkan QShortcutHibernls Hibernate QShortcutHiragana QShortcutHiragana Katakana QShortcutElQzmnyekHistory QShortcutHome QShortcutOtthoni iroda Home Office QShortcutKezdQoldal Home Page QShortcutGyorslinkek Hot Links QShortcutIns QShortcutInsert QShortcut Kana Lock QShortcut Kana Shift QShortcutKanji QShortcutKatakana QShortcut@Billentyqzet fnyerQ cskkentseKeyboard Brightness Down QShortcut:Billentyqzet fnyerQ nvelseKeyboard Brightness Up QShortcut8Billentyqzet vilgts be/kiKeyboard Light On/Off QShortcut"Billentyqzet men Keyboard Menu QShortcut(0) indtsa Launch (0) QShortcut(1) indtsa Launch (1) QShortcut(2) indtsa Launch (2) QShortcut(3) indtsa Launch (3) QShortcut(4) indtsa Launch (4) QShortcut(5) indtsa Launch (5) QShortcut(6) indtsa Launch (6) QShortcut(7) indtsa Launch (7) QShortcut(8) indtsa Launch (8) QShortcut(9) indtsa Launch (9) QShortcut(A) indtsa Launch (A) QShortcut(B) indtsa Launch (B) QShortcut(C) indtsa Launch (C) QShortcut(D) indtsa Launch (D) QShortcut(E) indtsa Launch (E) QShortcut(F) indtsa Launch (F) QShortcut0LevelezQprogram indtsa Launch Mail QShortcut,Mdialejtsz indtsa Launch Media QShortcutBalLeft QShortcutVillanykrte LightBulb QShortcutKijelentkezsLogoff QShortcut Levl tovbbts Mail Forward QShortcutPiactrMarket QShortcutMassyo QShortcutKvetkezQ mdia Media Next QShortcut Mdia lejtszsa Media Play QShortcutElQzQ mdiaMedia Previous QShortcutMdia felvtel Media Record QShortcut Mdia lelltsa Media Stop QShortcutTallkozMeeting QShortcutMenMenu QShortcutPB menMenu PB QShortcutzenetkldQ Messenger QShortcutMeta QShortcut*Fnyessg cskkentseMonitor Brightness Down QShortcut$Fnyessg nvelseMonitor Brightness Up QShortcutMuhenkan QShortcutZeneMusic QShortcutWeboldalaimMy Sites QShortcut HrekNews QShortcutNemNo QShortcutNum Lock QShortcutNumLock QShortcut Number Lock QShortcutURL megynyitsaOpen URL QShortcut OpcikOption QShortcut Page Down QShortcutPage Up QShortcutBeillesztsPaste QShortcutPause QShortcutPgDown QShortcutPgUp QShortcutTelefonPhone QShortcut KpekPictures QShortcutKikapcsols Power Off QShortcutPrint QShortcut Print Screen QShortcutFrisstsRefresh QShortcutjratltsReload QShortcut VlaszReply QShortcutReturn QShortcutJobbRight QShortcutRomaji QShortcut"Ablakok forgatsaRotate Windows QShortcutKB forgats Rotation KB QShortcutPB forgats Rotation PB QShortcut MentsSave QShortcutKpernyQkmlQ Screensaver QShortcut Scroll Lock QShortcut ScrollLock QShortcutKeressSearch QShortcutKivlasztsSelect QShortcut KldsSend QShortcutShift QShortcutBoltShop QShortcutAltatsSleep QShortcut SzkzSpace QShortcut Nyelvi ellenrzQ Spellchecker QShortcut*KpernyQ kettosztsa Split Screen QShortcutTblzat Spreadsheet QShortcutStandbyStandby QShortcutStopStop QShortcutFeliratSubtitle QShortcutTmogatsSupport QShortcutAltatsSuspend QShortcutSysReq QShortcutSystem Request QShortcutTab QShortcutTaszk panel Task Panel QShortcutTerminlTerminal QShortcutIdQTime QShortcutEszkzkTools QShortcutLegfelsQ menTop Menu QShortcutTouroku QShortcut UtazsTravel QShortcut,Magas hang cskkentse Treble Down QShortcut&Magas hang nvelse Treble Up QShortcutSzlessvUltra Wide Band QShortcutFelUp QShortcut VideVideo QShortcut NzetView QShortcut&HangerQ cskkentse Volume Down QShortcutNmts Volume Mute QShortcut HangerQ nvelse Volume Up QShortcutWWW QShortcutbresztsWake Up QShortcutWebkameraWebCam QShortcutWirelessWireless QShortcut SzvegszerkesztQWord Processor QShortcuttvitelXFer QShortcutIgenYes QShortcutZenkaku QShortcutZenkaku Hankaku QShortcutNagytsZoom In QShortcutKicsinytsZoom Out QShortcut iTouchiTouch QShortcutOldal lefel Page downQSliderOldal balra Page leftQSliderOldal jobbra Page rightQSliderOldal felfelPage upQSliderHelyzetPositionQSlider2A cmtpus nem tmogatottAddress type not supportedQSocks5SocketEngineVA kapcsoldst nem engedi a SOCKSv5 szerver(Connection not allowed by SOCKSv5 serverQSocks5SocketEnginePA proxy vratlanul lezrta a kapcsolatot&Connection to proxy closed prematurelyQSocks5SocketEngineDA proxy elutastotta a kapcsolatotConnection to proxy refusedQSocks5SocketEngineDA vrakozsi idQ lejrt a proxyhozConnection to proxy timed outQSocks5SocketEngine:ltalnos SOCKSv5 szerverhibaGeneral SOCKSv5 server failureQSocks5SocketEngineDIdQtllps hlzati mqvelet sornNetwork operation timed outQSocks5SocketEngine:A proxy azonosts sikertelenProxy authentication failedQSocks5SocketEngineBA proxy azonosts sikertelen: %1Proxy authentication failed: %1QSocks5SocketEngine*A proxy nem tallhatProxy host not foundQSocks5SocketEngine@SOCKS verzi 5-s protokoll hibaSOCKS version 5 protocol errorQSocks5SocketEngine@A SOCKSv5 parancs nem tmogatottSOCKSv5 command not supportedQSocks5SocketEngineA TTL lejrt TTL expiredQSocks5SocketEngineLIsmeretlen SOCKSv5 proxy hibakd: 0x%1%Unknown SOCKSv5 proxy error code 0x%1QSocks5SocketEngine MgsemCancelQSoftKeyManagerKszDoneQSoftKeyManagerKilpsExitQSoftKeyManagerOkOkQSoftKeyManager OpcikOptionsQSoftKeyManagerKivlasztsSelectQSoftKeyManagerKevesebbLessQSpinBoxTbbMoreQSpinBox MgsemCancelQSql*Mdostsok elvetse?Cancel your edits?QSqlMegerQstsConfirmQSql TrlsDeleteQSqlRekord trlse?Delete this record?QSqlBeszrsInsertQSqlNemNoQSql(Mdostsok mentse? Save edits?QSqlFrisstsUpdateQSqlIgenYesQSqlZKulcs nlkl nem llthat ki tanustvny, %1,Cannot provide a certificate with no key, %1 QSslSocketXAz SSL kontextus ltrehozsa sikertelen (%1)Error creating SSL context (%1) QSslSocketRHiba az SSL munkamenet ltrehozsakor, %1Error creating SSL session, %1 QSslSocketRHiba az SSL munkamenet ltrehozsakor: %1Error creating SSL session: %1 QSslSocket*SSL kzfogs hiba: %1Error during SSL handshake: %1 QSslSocketZHiba a helyi tanstvny betltse kzben, %1#Error loading local certificate, %1 QSslSocketPHiba a titkos kulcs betltse kzben, %1Error loading private key, %1 QSslSocket"Olvassi hiba: %1Error while reading: %1 QSslSocket^rvnytelen vagy res a titkostk listja (%1)!Invalid or empty cipher list (%1) QSslSocket>Nincs ellenQrizhetQ tanustvny!No certificates could be verified QSslSocketNincs hibaNo error QSslSocketlAz egyik tanustvnykibocst tanustvnya rvnytelen%One of the CA certificates is invalid QSslSocket`A privt s a publikus kulcs nem illik ssze: %1+Private key does not certify public key, %1 QSslSocketXA basicConstraints hossznak rtke tl nagy QUndoModeljraRedo QUndoStackVisszavonsUndo QUndoStackBUnicode vezrlQkarakter beszrsa Insert Unicode control characterQUnicodeControlCharacterMenuFLRE balrl-jobbra begyazs kezdete$LRE Start of left-to-right embeddingQUnicodeControlCharacterMenu0LRM Balrl jobbra jellQLRM Left-to-right markQUnicodeControlCharacterMenuLLRO balrl-jobbra fellbrls kezdete#LRO Start of left-to-right overrideQUnicodeControlCharacterMenuDPDF norml irny formzsi jellQPDF Pop directional formattingQUnicodeControlCharacterMenuFRLE jobbrl-balra begyazs kezdete$RLE Start of right-to-left embeddingQUnicodeControlCharacterMenu0LRM Jobbrl balra jellQRLM Right-to-left markQUnicodeControlCharacterMenuLRLO Jobbrl-balra fellbrls kezdete#RLO Start of right-to-left overrideQUnicodeControlCharacterMenuHZWJ Nulla szlessgq egyestQ jellQZWJ Zero width joinerQUnicodeControlCharacterMenuPZWN Nulla szlessgq nem-egyestQ jellQZWNJ Zero width non-joinerQUnicodeControlCharacterMenu8ZWSP Nulla szlessgq szkzZWSP Zero width spaceQUnicodeControlCharacterMenu0A cm nem megjelenthetQCannot show URL QWebFrame8Nem megjelenthetQ fjltpusCannot show mimetype QWebFrame$A fjl nem ltezikFile does not exist QWebFramejA keret betltse szablyvltoztats miatt megszakadt'Frame load interrupted by policy change QWebFrame&A krst blokkoltkRequest blocked QWebFrame&A krs megszaktvaRequest cancelled QWebFrame$%1 (%2x%3 kppont)%1 (%2x%3 pixels)QWebPageD%1 nap %2 ra %3 perc %4 msodperc&%1 days %2 hours %3 minutes %4 secondsQWebPage6%1 ra %2 perc %3 msodperc%1 hours %2 minutes %3 secondsQWebPage(%1 perc %2 msodperc%1 minutes %2 secondsQWebPage%1 msodperc %1 secondsQWebPage%n fjl %n file(s)QWebPage*Hozzads a sztrhozAdd To DictionaryQWebPageBalra igazts Align LeftQWebPageJobbra igazts Align RightQWebPageHang elem Audio ElementQWebPage^Hang elem lejtszsvezrlQi s llapotkijelzQje2Audio element playback controls and status displayQWebPage Hibs HTTP krsBad HTTP requestQWebPage$Lejtszs indtsaBegin playbackQWebPageFlkvrBoldQWebPage AlulraBottomQWebPage Kzpre igaztsCenterQWebPage(Nyelvtan ellenQrzseCheck Grammar With SpellingQWebPage4Nyelvhelyessg ellenQrzseCheck SpellingQWebPageJNyelvhelyessg ellenQrzse gpelskorCheck Spelling While TypingQWebPageFjl tallzsa Choose FileQWebPage6Keressi elQzmnyek rtseClear recent searchesQWebPageMsolsCopyQWebPageKp msolsa Copy ImageQWebPage*Link cmnek msolsa Copy LinkQWebPage(A lejtszs llapotaCurrent movie statusQWebPage*Eltelt lejtszsi idQCurrent movie timeQWebPageKivgsCutQWebPageAlaprtelmezettDefaultQWebPage&Trls a sz vgigDelete to the end of the wordQWebPage(Trls a sz elejigDelete to the start of the wordQWebPage Irny DirectionQWebPageEltelt idQ Elapsed TimeQWebPageBetqtpusFontsQWebPage"Teljes mret gombFullscreen ButtonQWebPage VisszaGo BackQWebPage ElQre Go ForwardQWebPage2Nyelvi eszkzk elrejtseHide Spelling and GrammarQWebPageKihagysIgnoreQWebPageKihagys Ignore Grammar context menu itemIgnoreQWebPageVgtelen idQIndefinite timeQWebPage Behzs nvelseIndentQWebPage2Pontozott lista beszrsaInsert Bulleted ListQWebPage2Szmozott lista beszrsaInsert Numbered ListQWebPage j sor beszrsaInsert a new lineQWebPage*j bekezds beszrsaInsert a new paragraphQWebPageElemzsInspectQWebPageDQltItalicQWebPage<JavaScript figyelmeztets - %1JavaScript Alert - %1QWebPage6JavaScript megerQsts - %1JavaScript Confirm - %1QWebPage0JavaScript problma - %1JavaScript Problem - %1QWebPage:JavaScript Prompt krds - %1JavaScript Prompt - %1QWebPageSorkizrsJustifyQWebPageBal szlre Left edgeQWebPageBalrl jobbra Left to RightQWebPagelQ adsLive BroadcastQWebPageBetlts... Loading...QWebPage&Keress a sztrbanLook Up In DictionaryQWebPage(Egy plug-in hinyzikMissing Plug-inQWebPage<Tegye a kurzort a blokk vgre'Move the cursor to the end of the blockQWebPageFTegye a kurzort a dokumentum vgre*Move the cursor to the end of the documentQWebPage8Tegye a kurzort a sor vgre&Move the cursor to the end of the lineQWebPageNTegye a kurzort a kvetkezQ karakterhez%Move the cursor to the next characterQWebPageBTegye a kurzort a kvetkezQ sorba Move the cursor to the next lineQWebPageDTegye a kurzort a kvetkezQ szhoz Move the cursor to the next wordQWebPageHTegye a kurzort az elQzQ karakterhez)Move the cursor to the previous characterQWebPage<Tegye a kurzort az elQzQ sorba$Move the cursor to the previous lineQWebPage>Tegye a kurzort az elQzQ szhoz$Move the cursor to the previous wordQWebPage>Tegye a kurzort a blokk elejre)Move the cursor to the start of the blockQWebPageHTegye a kurzort a dokumentum elejre,Move the cursor to the start of the documentQWebPage:Tegye a kurzort a sor elejre(Move the cursor to the start of the lineQWebPage(Mozi idQ csszka svMovie time scrubberQWebPage Mozi idQ csszkaMovie time scrubber thumbQWebPageNmts gomb Mute ButtonQWebPage(Hangsvok elnmtsaMute audio tracksQWebPageNincs tallatNo Guesses FoundQWebPage*Nincs fjl kivlaszvaNo file selectedQWebPage.Nincs keressi elQzmnyNo recent searchesQWebPage8Keret megnyitsa j ablakban Open FrameQWebPageKp megnyitsa Open ImageQWebPageLink megnyitsa Open LinkQWebPage*Megnyits j ablakbanOpen in New WindowQWebPage&Behzs cskkentseOutdentQWebPagethzottOutlineQWebPageEgy oldalt le Page downQWebPage Egy oldalt balra Page leftQWebPage"Egy oldalt jobbra Page rightQWebPage$Egy oldalt felfelPage upQWebPageBeillesztsPasteQWebPage>Beilleszts stlusegyeztetsselPaste and Match StyleQWebPageMegllts gomb Pause ButtonQWebPage*Lejtszs meglltsaPause playbackQWebPageLejtszs gomb Play ButtonQWebPageBVide teljes kpernyQs lejtszsaPlay movie in full-screen modeQWebPage&Keressi elQzmnyekRecent searchesQWebPage4tirnytsi korlt elrveRedirection limit reachedQWebPageFrisstsReloadQWebPageHtralvQ idQRemaining TimeQWebPage0HtralevQ lejtszsi idQRemaining movie timeQWebPage$A formzs trlseRemove formattingQWebPage TrlsResetQWebPage$Vals idQbe vlts#Return streaming movie to real-timeQWebPage<Vals idQre visszatrs gombjaReturn to Real-time ButtonQWebPage$Visszatekers gomb Rewind ButtonQWebPage(Vide visszatekerse Rewind movieQWebPageJobb szlre Right edgeQWebPageJobbrl balra Right to LeftQWebPageKp mentse Save ImageQWebPage8Link clpontjnak mentse... Save Link...QWebPageGrgets le Scroll downQWebPageGrdts ide Scroll hereQWebPageGrgets balra Scroll leftQWebPageGrgets jobbra Scroll rightQWebPage Grgets felfel Scroll upQWebPageKeress a webenSearch The WebQWebPage.Visszafele keress gombSeek Back ButtonQWebPage$ElQre keress gombSeek Forward ButtonQWebPage"Gyors visszaugrsSeek quickly backQWebPage Gyors elQreugrsSeek quickly forwardQWebPage"sszes kijellse Select allQWebPage0Kijells a blokk vgigSelect to the end of the blockQWebPage:Kijells a dokumentum vgig!Select to the end of the documentQWebPage,Kijells a sor vgigSelect to the end of the lineQWebPage@Kijells a kvetkezQ karakterigSelect to the next characterQWebPage6Kijells a kvetkezQ sorigSelect to the next lineQWebPage6Kijells a kvetkezQ szigSelect to the next wordQWebPage:Kijells az elQzQ karakterig Select to the previous characterQWebPage0Kijells az elQzQ sorigSelect to the previous lineQWebPage0Kijells az elQzQ szigSelect to the previous wordQWebPage2Kijells a blokk elejig Select to the start of the blockQWebPage<Kijells a dokumentum elejig#Select to the start of the documentQWebPage.Kijells a sor elejigSelect to the start of the lineQWebPage:Nyelvi eszkzk megjelentseShow Spelling and GrammarQWebPageCsszkaSliderQWebPage&Csszka pozcionl Slider ThumbQWebPageNyelvi eszkzkSpellingQWebPagellapotkijelzQStatus DisplayQWebPageStopStopQWebPagethzva StrikethroughQWebPage KldsSubmitQWebPage KldsQSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPageAls index SubscriptQWebPageFelsQ index SuperscriptQWebPageSzvegirnyText DirectionQWebPageAz ezen a lapon levQ parancsfjl hibsnak tqnik. Lelltja a parancsfjl futst?RThe script on this page appears to have a problem. Do you want to stop the script?QWebPagelEz egy kereshetQ index. rja be a keresendQ szavakat: 3This is a searchable index. Enter search keywords: QWebPageFellreTopQWebPageAlhzott UnderlineQWebPageIsmeretlenUnknownQWebPage,Nmts feloldsa gomb Unmute ButtonQWebPage4Hangsvok visszakapcsolsaUnmute audio tracksQWebPageVideo elem Video ElementQWebPage`Vide elem lejtszsvezrlQi s llapotkijelzQje2Video element playback controls and status displayQWebPageWeb elemzQ - %2Web Inspector - %2QWebPage Mi ez? What's This?QWhatsThisAction**QWidget&Befejezs&FinishQWizard &Sg&HelpQWizard&KvetkezQ&NextQWizard&KvetkezQ >&Next >QWizard< &Vissza< &BackQWizard MgsemCancelQWizardVglegestsCommitQWizardFolytatsContinueQWizardKszDoneQWizardVisszalpsGo BackQWizardSgHelpQWizard%1 - [%2] %1 - [%2] QWorkspace&Bezrs&Close QWorkspace&thelyezs&Move QWorkspace&Visszallts&Restore QWorkspace &Mret&Size QWorkspace&Lenyits&Unshade QWorkspaceBezrsClose QWorkspaceTe&ljes mret Ma&ximize QWorkspace&Kis mret Mi&nimize QWorkspaceKis mretMinimize QWorkspaceElQzQ mret Restore Down QWorkspace&FelcsuksSh&ade QWorkspace Mindig leg&fell Stay on &Top QWorkspaceaz XML deklarcibl hinyzik a kdolsi informci vagy egy nll deklarciYencoding declaration or standalone declaration expected while reading the XML declarationQXmlXhiba egy klsQ entits szvegdeklarcijban3error in the text declaration of an external entityQXml@hiba a megjegyzs rtelmezsnl$error occurred while parsing commentQXml<hiba a tartalom rtelmezsnl$error occurred while parsing contentQXml^hiba a dokumentumtpus definci rtelmezsnl5error occurred while parsing document type definitionQXml6hiba az elem rtelmezsnl$error occurred while parsing elementQXml@hiba a hivatkozs rtelmezsnl&error occurred while parsing referenceQXml>feldolgoz ltal kivltott hibaerror triggered by consumerQXmlklsQ feldolgozs ltalnos entitshivatkozs nem engedlyezett a DTD-ben;external parsed general entity reference not allowed in DTDQXmlklsQ feldolgozs ltalnos entitshivatkozs nem engedlyezett attribtum rtkbenGexternal parsed general entity reference not allowed in attribute valueQXml|A DTD-ben nem engedlyezett belsQ ltalnos entits hasznlata4internal general entity reference not allowed in DTDQXmlJrvnytelen feldolgozsi utasts nv'invalid name for processing instructionQXml a vrt elem betqletter is expectedQXml<tbb dokumentumtpus definci&more than one document type definitionQXml nem trtnt hibano error occurredQXml$rekurzv entitsokrecursive entitiesQXmldaz XML deklarcibl hinyzik az nll deklarciAstandalone declaration expected while reading the XML declarationQXmleltrQ tag hiba tag mismatchQXml"vratlan karakterunexpected characterQXml vratlan fjlvgunexpected end of fileQXmlrnem rtelmezett entits referencia egy rossz kontextusban*unparsed entity reference in wrong contextQXmlbaz XML deklarci nem tartalmaz verziinformcit2version expected while reading the XML declarationQXmlLrvnytelen rtk nll deklarciban&wrong value for standalone declarationQXml\%1 hiba a(z) %2 %3. sornak %4. oszlopban: %5)Error %1 in %2, at line %3, column %4: %5QXmlPatternistCLI4%1 hiba a(z) %2 helyen: %3Error %1 in %2: %3QXmlPatternistCLIIsmeretlen helyUnknown locationQXmlPatternistCLIhFigyelmeztets a(z) %1 helyen, sor %2, oszlop %3: %4(Warning in %1, at line %2, column %3: %4QXmlPatternistCLIBFigyelmeztets a(z) %1 helyen: %2Warning in %1: %2QXmlPatternistCLIH%1 egy rvnytelen PUBLIC azonost.#%1 is an invalid PUBLIC identifier. QXmlStream@%1 nem egy rvnyes kdols nv.%1 is an invalid encoding name. QXmlStreamR%1 rvnytelen feldolgozsi utasts nv.-%1 is an invalid processing instruction name. QXmlStream$, de ezt kaptam: ' , but got ' QXmlStreamFAz attributum jra lett definilva.Attribute redefined. QXmlStream2%1 kdols nem tmogatottEncoding %1 is unsupported QXmlStream0Hibs kdols tartalom.(Encountered incorrectly encoded content. QXmlStream<'%1' entits nincs deklarlva.Entity '%1' not declared. QXmlStream Vrt  Expected  QXmlStream4Karakteres adat szksges.Expected character data. QXmlStreamJNem vrt tartalom a dokumentum vgn.!Extra content at end of document. QXmlStream<rvnytelen nvtr deklarci.Illegal namespace declaration. QXmlStream2rvnytelen XML karakter.Invalid XML character. QXmlStream(rvnytelen XML nv.Invalid XML name. QXmlStream>rvnytelen XML verzi sztring.Invalid XML version string. QXmlStreamXrvnytelen attribtum az XML deklarciban.%Invalid attribute in XML declaration. QXmlStream>rvnytelen karakterhivatkozs.Invalid character reference. QXmlStream.rvnytelen dokumentum.Invalid document. QXmlStream4rvnytelen entits rtk.Invalid entity value. QXmlStreamLrvnytelen feldolgozsi utasts nv.$Invalid processing instruction name. QXmlStreamTNDATA a paramter-entits deklarcijban.&NDATA in parameter entity declaration. QXmlStreamTA(z) '%1' nvtr prefixum nincs deklarlva"Namespace prefix '%1' not declared QXmlStreamDA nyit s a zr tag nem egyezik. Opening and ending tag mismatch. QXmlStream@A dokumentum hirtelen vget rt.Premature end of document. QXmlStream6Rekurzv entitst talltam.Recursive entity detected. QXmlStreamhHivatkozs '%1' klsQ entitsra attribtum rtkben.5Reference to external entity '%1' in attribute value. QXmlStream^Hivatkozs egy nem rtelmezett entitsra: '%1'."Reference to unparsed entity '%1'. QXmlStream^']]>' szekvencia nem megengedett a tartalomban.&Sequence ']]>' not allowed in content. QXmlStreamFCsak igen vagy nem lehet az rtke."Standalone accepts only yes or no. QXmlStream(KezdQ tag szksges.Start tag expected. QXmlStreamAz egyedlll pszeudo-attribtumnak a kdols utn kell szerepelnie.?The standalone pseudo attribute must appear after the encoding. QXmlStreamVratlan ' Unexpected ' QXmlStream`Vratlan '%1' karakter a publikus id literlban./Unexpected character '%1' in public id literal. QXmlStream4Nem tmogatott XML verzi.Unsupported XML version. QXmlStreamfAz XML deklarci nem a dokumentum elejn kezdQdik.)XML declaration not at start of document. QXmlStream`%1 s %2 a sor elejre s vgre is illeszkedik.,%1 and %2 match the start and end of a line. QtXmlPatternst%2 %1 attribtuma %3 kell legyen, gy, mint %4 Qstpusban.9%1 attribute in %2 must have %3 use like in base type %4. QtXmlPatterns%1 attribtumnak %2-nek kell lennie a szrmaztatott komplex tpusban, gy mint az Qstpusban.B%1 attribute in derived complex type must be %2 like in base type. QtXmlPatterns%2 elem %1 attribtuma rvnytelen tartalm: {%3} rvnytelen %4 tpus rtk.T%1 attribute of %2 element contains invalid content: {%3} is not a value of type %4. QtXmlPatternsd%2 elem %1 attribtuma rvnytelen tartalm: {%3}.:%1 attribute of %2 element contains invalid content: {%3}. QtXmlPatterns%2 elem %1 attribtumnak rtka nagyobb, mint a(z) %3 attribtum.>%1 attribute of %2 element has larger value than %3 attribute. QtXmlPatternsp%2 elem %1 attribtumnak rtke %3 vagy %4 kell legyen.,%1 attribute of %2 element must be %3 or %4. QtXmlPatterns%2 elem %1 attribtumnak %3-t, %4-t vagy URI-k listjt kell tartalmaznia.A%1 attribute of %2 element must contain %3, %4 or a list of URIs. QtXmlPatterns%2 elem %1 attribtumnak vagy %3-t vagy a tbbi rtket kell tartalmaznia.F%1 attribute of %2 element must either contain %3 or the other values. QtXmlPatternsp%2 elem %1 attribtumnak rtke %3 vagy %4 kell legyen.9%1 attribute of %2 element must have a value of %3 or %4. QtXmlPatterns`%2 elem %1 attribtumnak rtke %3 kell legyen.3%1 attribute of %2 element must have a value of %3. QtXmlPatterns%2 elem %1 attribtumnak rtke %3 kell legyen, mert a(z) %4 attribtum van megadva.R%1 attribute of %2 element must have the value %3 because the %4 attribute is set. QtXmlPatternsH%2 elem %1 attribtuma nem lehet %3.*%1 attribute of %2 element must not be %3. QtXmlPatterns,%1-t nem lehet lekrni%1 cannot be retrieved QtXmlPatternsd%1-nek nem lehet %2-t tartalmaz komplex Qstpusa./%1 cannot have complex base type that has a %2. QtXmlPatternsl%1 rvnytelen adattartalm %2 facet-et tartalmaz: %3.+%1 contains %2 facet with invalid data: %3. QtXmlPatterns@%1 rvnytelen adatot tartalmaz.%1 contains invalid data. QtXmlPatterns%1 olyan okteteket tartalmaz, amelyek nem megengedettek a krt %2 kdolsban.E%1 contains octets which are disallowed in the requested encoding %2. QtXmlPatterns%1 elem rvnytelen %2 megktse az ltala felldefinilt %3 elemre: %4.L%1 element %2 is not a valid restriction of the %3 element it redefines: %4. QtXmlPatterns%1 elem %2 attribtumnak nem lehet ms rtke, mint %3 vagy %4.C%1 element cannot have %2 attribute with value other than %3 or %4. QtXmlPatternsp%1 elem %2 attribtumnak nem lehet ms rtke, mint %3.=%1 element cannot have %2 attribute with value other than %3. QtXmlPatternst%1 elemnek sem %2 attribtuma, sem %3 gyermek eleme nincs.9%1 element has neither %2 attribute nor %3 child element. QtXmlPatternsZ%1 elem nem megengedett ebben a kontextusban.*%1 element is not allowed in this context. QtXmlPatternsT%1 elem nem megengedett ebben a hatkrben'%1 element is not allowed in this scope QtXmlPatterns%1 elem nem megengedett %2 elemen bell, ha %3 attribtum meg van adva.G%1 element is not allowed inside %2 element if %3 attribute is present. QtXmlPatterns%1 elemnek nem lehet ugyanaz a %2 attribtum rtke, mint %3 cl-nvtrnek.Y%1 element is not allowed to have the same %2 attribute value as the target namespace %3. QtXmlPatterns%1 elemnek vagy %2 attribtumnak, vagy %3 vagy %4 gyermek elemnek lennie kell.F%1 element must have either %2 attribute or %3 or %4 as child element. QtXmlPatternsl%1 elemnek vagy %2 vagy %3 attribtumnak lennie kell./%1 element must have either %2 or %3 attribute. QtXmlPatternsl%1 elemnek nem lehet egyidejqleg %2 s %3 attribtuma.6%1 element must not have %2 and %3 attribute together. QtXmlPatternsb%1 elemnek %2 vagy %3 attribtumt meg kell adni..%1 element requires either %2 or %3 attribute. QtXmlPatterns%2 gyermek elemmel rendelkezQ %1 elemnek nem lehet %3 attribtuma.>%1 element with %2 child element must not have a %3 attribute. QtXmlPatterns%2 attribtum nlkli %1 elem nem engedlyezett cl-nvtr nlkli sma belsejben.V%1 element without %2 attribute is not allowed inside schema without target namespace. QtXmlPatternsb%1 s %2 facet-ek nem jelenhetnek meg egyttesen.-%1 facet and %2 facet cannot appear together. QtXmlPatternsh%1 facet nem lehet %2, ha %3 facet, mint Qstpus %4.5%1 facet cannot be %2 if %3 facet of base type is %4. QtXmlPatternsx%1 facet nem lehet %2 vagy %3, ha %4 facet, mint Qstpus %5.;%1 facet cannot be %2 or %3 if %4 facet of base type is %5. QtXmlPatterns<%1 facet tkzik %2 facet-tel. %1 facet collides with %2 facet. QtXmlPatternsf%1 facet rvnytelen regulris kifejezst tartalmaz,%1 facet contains invalid regular expression QtXmlPatternsF%1 facet rtke rvnytelen %2: %3.'%1 facet contains invalid value %2: %3. QtXmlPatterns%1 facet-nek egyenlQnek vagy nagyobbnak kell lennie %2 facet-nl Qstpus alapjn.=%1 facet must be equal or greater than %2 facet of base type. QtXmlPatterns%1 facet-nek nagyobbnak kell lennei, %2 facet-nl, mint Qstpusnl.4%1 facet must be greater than %2 facet of base type. QtXmlPatterns%1 facet-nek egyenlQnek vagy nagyobbnak kell lennie %2 facet-nl mint Qstpusnl.@%1 facet must be greater than or equal to %2 facet of base type. QtXmlPatterns%1 facet-nek kisebbnek kell lennie %2 facet-nl, mint Qstpusnl.1%1 facet must be less than %2 facet of base type. QtXmlPatternsV%1 facet kisebb kell legyen, mint %2 facet.$%1 facet must be less than %2 facet. QtXmlPatterns%1 facet-nek egyenlQnek vagy kisebbnek kell lennie %2 facet-nl Qstpus alapjn.=%1 facet must be less than or equal to %2 facet of base type. QtXmlPatterns%1 facet-nek kisebbnek vagy egyenlQnek kell lennie, mint %2 facet.0%1 facet must be less than or equal to %2 facet. QtXmlPatterns|%1 facet-nek %2 facet-vel azonos Qstpus rtke kell legyen.;%1 facet must have the same value as %2 facet of base type. QtXmlPatterns%1 eltrQ szm mezQt tartalmaz, mint az ltala hivatkozott %2 identits megkts.W%1 has a different number of fields from the identity constraint %2 that it references. QtXmlPatternsz%1-nak van attribtum helyettestQje, de %2 Qstpusnak nincs.7%1 has attribute wildcard but its base type %2 has not. QtXmlPatternsd%1 rklQdsi hurkot tartalmaz %2 szlQ tpusban.,%1 has inheritance loop in its base type %2. QtXmlPatterns%1 komplex tpus. Komplex tpusra val knyszerts nem lehetsges. Azonban atomi tpusokra, mint pl. %2 trtnQ knyszerts igen.s%1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works. QtXmlPatterns*%1 egy rvnytelen %2%1 is an invalid %2 QtXmlPatterns%1 rvnytelen kapcsol regulris kifejezsekhez. Az rvnyes kapcsolk:?%1 is an invalid flag for regular expressions. Valid flags are: QtXmlPatterns4%1 rvnytelen nvtr URI.%1 is an invalid namespace URI. QtXmlPatternsX%1 rvnytelen regulris kifejezs minta: %2/%1 is an invalid regular expression pattern: %2 QtXmlPatterns<%1 rvnytelen sablon md nv.$%1 is an invalid template mode name. QtXmlPatterns2%1 ismeretlen sma tpus.%1 is an unknown schema type. QtXmlPatterns4%1 nem tmogatott kdols.%1 is an unsupported encoding. QtXmlPatterns@%1 rvnytelen XML 1.0 karakter.$%1 is not a valid XML 1.0 character. QtXmlPatternsP%1 rvnytelen feldogozsi utasts nv.4%1 is not a valid name for a processing-instruction. QtXmlPatternsB%1 rvnytelen numerikus literl."%1 is not a valid numeric literal. QtXmlPatterns%1 rvnytelen clnv egy feldolgozsi utastsban. rtke %2 tpus kell legyen, mint pl. %3.Z%1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3. QtXmlPatterns@%1 nem rvnyes %2 tpus rtk.#%1 is not a valid value of type %2. QtXmlPatterns0%1 nem egsz szm perc.$%1 is not a whole number of minutes. QtXmlPatterns%1 nem szrmazhat %2-bQl kiterjesztssel, mert utbbi final-knt definilja.S%1 is not allowed to derive from %2 by extension as the latter defines it as final. QtXmlPatterns%1 nem szrmazhat %2-bQl listval, mert utbbi final-knt definilja.N%1 is not allowed to derive from %2 by list as the latter defines it as final. QtXmlPatterns%1 nem szrmazhat %2-bQl megktssel, mert utbbi final-knt definilja.U%1 is not allowed to derive from %2 by restriction as the latter defines it as final. QtXmlPatterns%1 nemm szrmazhat %2-bQl union-nal, mert utbbi final-knt definilta.O%1 is not allowed to derive from %2 by union as the latter defines it as final. QtXmlPatterns%1 nem tartalmazhat olyan tag tpust, melynek neve egyezik nmaga nevvel.E%1 is not allowed to have a member type with the same name as itself. QtXmlPatterns<%1 nem birtokolhat facet-eket.%%1 is not allowed to have any facets. QtXmlPatterns%1 nem atomi tpus. Tpusknyszerts csak atomi tpusra trtnhet.C%1 is not an atomic type. Casting is only possible to atomic types. QtXmlPatterns%1 nem a lthatsgon belli attribtum deklarcik kztt van. A sma import szolgltats nem tmogatott.g%1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported. QtXmlPatterns4%2 alapjn %1 rvnytelen. %1 is not valid according to %2. QtXmlPatterns@%1 nem rvnyes %2 tpus rtk.&%1 is not valid as a value of type %2. QtXmlPatternsH%1 illeszkedik az jsor karakterekre%1 matches newline characters QtXmlPatterns%1-t %2 vagy %3 kell kvesse, nem a helyettestQ karakterlnc vgn.J%1 must be followed by %2 or %3, not at the end of the replacement string. QtXmlPatternsLeszrmazott helyettestQ %1 rsze nem rvnyes korltozsa az Qs %2 rsznekH%1 of derived wildcard is not a valid restriction of %2 of base wildcard QtXmlPatterns%3 referencia %1 vagy %2 attribtuma nem egyezik %4 attribtum deklarcival.T%1 or %2 attribute of reference %3 does not match with the attribute declaration %4. QtXmlPatterns~%1 %2 identits megktsre hivatkozik, ami nem %3 vagy %4 elem.A%1 references identity constraint %2 that is no %3 or %4 element. QtXmlPatterns^%1 rvnytelen %2 vagy %3 %4 elemre hivatkozik.*%1 references unknown %2 or %3 element %4. QtXmlPatternsl%1 legalbb %n argumentumot fogad, gy %2 rvnytelen.=%1 requires at least %n argument(s). %2 is therefore invalid. QtXmlPatternsj%1 maximum %n argumentumot fogad, gy %2 rvnytelen.9%1 takes at most %n argument(s). %2 is therefore invalid. QtXmlPatterns%1 meghvva.%1 was called. QtXmlPatterns%1, %2, %3, %4, %5 s %6 facet-ek nem megengedettek, ha lista alapjn szrmaztatunk.F%1, %2, %3, %4, %5 and %6 facets are not allowed when derived by list. QtXmlPatternsn'%1% attribtum rvnytelen QName adatot tartalmaz: %2.2'%1' attribute contains invalid QName content: %2. QtXmlPatterns@Megjegyzsben nem szerepelhet %1A comment cannot contain %1 QtXmlPatterns^Egy megjegyzs nem vgzQdhet a kvetkezQre: %1.A comment cannot end with a %1. QtXmlPatternsOlyan szerkezetet talltam, ami az aktulis nyelvben nem megengedett(%1).LA construct was encountered which is disallowed in the current language(%1). QtXmlPatternsEgy alaprtelmezett nvtr deklarcinak meg kell elQznie a fggvny-, vltoz- s opci deklarcikat.^A default namespace declaration must occur before function, variable, and option declarations. QtXmlPatternsEgy kzvetlen elem konstruktor nem jl formzott. %1-t %2 zrja le.EA direct element constructor is not well-formed. %1 is ended with %2. QtXmlPatternsJ%1 szignaturj fggvny mr ltezik.0A function already exists with the signature %1. QtXmlPatternsEgy knyvtr modult nem lehet kzvetlenl kirtkelni. Mindenkpp egy fQ modulbl kell importlni.VA library module cannot be evaluated directly. It must be imported from a main module. QtXmlPatternsfEgy fggvnyparamter nem definilhat mint tunnel.Can not process unknown element %1, expected elements are: %2. QtXmlPatternsGyermek elem hinyzik abbl a hatkrbQl, lehetsges gyermek elemek: %1.HChild element is missing in that scope, possible child elements are: %1. QtXmlPatternsFKrkrs csoport referencia %1-nl. Circular group reference for %1. QtXmlPatterns>Krkrs %1 Qstpus rklQds.%Circular inheritance of base type %1. QtXmlPatterns:%1 union krkrs rklQdse.!Circular inheritance of union %1. QtXmlPatterns%1 komplex tpus nem szrmazhat kiterjesztssel %2-bl, mivel utbbi %3 elemet tartalmaz a tartalom modelljben.nComplex type %1 cannot be derived by extension from %2 as the latter contains %3 element in its content model. QtXmlPatterns`%1 komplex tpus nem szrmazhat %2%3 Qstpusbl.6Complex type %1 cannot be derived from base type %2%3. QtXmlPatterns%1 komplex tpus %2 attribtumot tartalmaz, aminek rtk megktse van, de tpusa %3-bl szrmazik._Complex type %1 contains attribute %2 that has value constraint but type that inherits from %3. QtXmlPatternsj%1 komplex tpus %2 attribtumot ktszer tartalmazza.,Complex type %1 contains attribute %2 twice. QtXmlPatterns%1 komplex tpus kt klnbzQ attribtumot tartalmaz, melyek tpusa %2-bQl szrmaztatott.WComplex type %1 contains two different attributes that both have types derived from %2. QtXmlPatterns|%1 komplex tpus tartalom modelljben %2 elem dupln szerepel.?Complex type %1 has duplicated element %2 in its content model. QtXmlPatterns^%1 komplex tpus tartalma nem determinisztikus..Complex type %1 has non-deterministic content. QtXmlPatternsJ%1 komplex tpus nem lehet absztrakt..Complex type %1 is not allowed to be abstract. QtXmlPatternsd%1 komplex tpusnak egyszerq tartalma kell legyen.)Complex type %1 must have simple content. QtXmlPatterns%1 komplex tpusnak ugyanazzal az egyszerq tpussal kell rendelkeznie, mint %2 Qsosztlynak.DComplex type %1 must have the same simple type as its base class %2. QtXmlPatterns%1 egyszerq tartalm komplex tpus nem szrmazhat %2 komplex tpusbl.PComplex type %1 with simple content cannot be derived from complex base type %2. QtXmlPatterns%1 szrmaztatott elem komplex tpusa nem szrmaztathat rvnyesen az Qs elembQl.OComplex type of derived element %1 cannot be validly derived from base element. QtXmlPatterns`%1 ID-jq komponens mr lett definilva korbban.1Component with ID %1 has been defined previously. QtXmlPatterns%1 komplex tpus tartalom modellje %2 elemet tartalmaz, ezltal kiterjesztssel nem szrmaztathat nem res tpusbl.pContent model of complex type %1 contains %2 element so it cannot be derived by extension from a non-empty type. QtXmlPatterns%1 komplex tpus tartalom modellje nem rvnyes kiterjesztse %2 tartalom modelljnek.QContent model of complex type %1 is not a valid extension of content model of %2. QtXmlPatterns~%2 elem %1 attribtumnak tartalma nem lehet %3 nvtrbQl val.DContent of %1 attribute of %2 element must not be from namespace %3. QtXmlPatterns%1 attribtum tartalma nem egyezik a definilt rtk megktssel.@Content of attribute %1 does not match defined value constraint. QtXmlPatterns%1 attribtum tartalma nem egyezik a tpus definciban megadottakkal: %2.?Content of attribute %1 does not match its type definition: %2. QtXmlPatternsv%1 elem tartalma nem egyezik a definilt rtk megktssel.>Content of element %1 does not match defined value constraint. QtXmlPatternst%1 elem tartalma nem egyezik tpusnak defincijval: %2.=Content of element %1 does not match its type definition: %2. QtXmlPatterns>%1 tpus adat nem lehet res.,Data of type %1 are not allowed to be empty. QtXmlPatternsfDtum-idQ tartalom nem felel meg a minta facet-nek./Date time content does not match pattern facet. QtXmlPatternstDtum-idQ tartalom nem felel meg a maxExclusive facet-nek.8Date time content does not match the maxExclusive facet. QtXmlPatternstDtum-idQ tartalom nem felel meg a maxInclusive facet-nek.8Date time content does not match the maxInclusive facet. QtXmlPatternstDtum-idQ tartalom nem felel meg a minExclusive facet-nek.8Date time content does not match the minExclusive facet. QtXmlPatternstDtum-idQ tartalom nem felel meg a minInclusive facet-nek.8Date time content does not match the minInclusive facet. QtXmlPatternsnDtum-idQ tartalom nem szerepel a felsorols facet-ben.9Date time content is not listed in the enumeration facet. QtXmlPatterns2Nincs %1 nap %2 hnapban.Day %1 is invalid for month %2. QtXmlPatternsHA(z) %1. nap nem esik %2 s %3 kz.#Day %1 is outside the range %2..%3. QtXmlPatternsxDecimlis tartalom nem felel meg a fractionDigits facet-nek.;Decimal content does not match in the fractionDigits facet. QtXmlPatternsrDecimlis tartalom nem felel meg a totalDigits facet-nek.8Decimal content does not match in the totalDigits facet. QtXmlPatternsN%1 attribtum deklarcija nem ltezik.,Declaration for attribute %1 does not exist. QtXmlPatternsB%1 elem deklarcija nem ltezik.*Declaration for element %1 does not exist. QtXmlPatterns%1 szrmaztatsi mdja kiterjeszts kell legyen, mert %2 Qstpus egyszerq tpus.TDerivation method of %1 must be extension because the base type %2 is a simple type. QtXmlPatternsz%1 szrmaztatott attribtum nem ltezik az Qs defincijban.;Derived attribute %1 does not exist in the base definition. QtXmlPatterns%1 szrmaztatott attribtum nem illeszkedik az Qsben megadott helyettestQre.HDerived attribute %1 does not match the wildcard in the base definition. QtXmlPatternsA leszrmazott defincija olyan %1 elemet tartalmaz, ami nem ltezik az Qs defincijbanUDerived definition contains an %1 element that does not exists in the base definition QtXmlPatterns%1 elem nem lehet nil-felttelq, mert az Qs eleme sem nil-felttelq.FDerived element %1 cannot be nillable as base element is not nillable. QtXmlPatterns%1 szrmaztatott elem rtk megktse gyengbb, mint az Qs rszecsk.BDerived element %1 has weaker value constraint than base particle. QtXmlPatterns%1 szrmaztatott elembQl hinyzik az Qs rszecskben definilt rtk megszorts.KDerived element %1 is missing value constraint as defined in base particle. QtXmlPatternsSzrmaztatott rszecske olyan tartalmat is engedlyez, ami nem megengedett az Qs rszecskben.IDerived particle allows content that is not allowed in the base particle. QtXmlPatternsXSzrmaztatott rszecskbQl hinyzik %1 elem.'Derived particle is missing element %1. QtXmlPatternslA szrmaztatott helyettestQ nem rszhalmaza az Qsnek.6Derived wildcard is not a subset of the base wildcard. QtXmlPatterns%1 tpus rtk %2-vel osztsa nem megengedett, mert az nem szm.@Dividing a value of type %1 by %2 (not-a-number) is not allowed. QtXmlPatterns%1 tpus rtk osztsa %2 vagy %3 (pozitv vagy negatv nulla) rtkkel nem megengedett.LDividing a value of type %1 by %2 or %3 (plus or minus zero) is not allowed. QtXmlPatternsdA nullval (%2) val oszts (%1) nincs rtelmezve.(Division (%1) by zero (%2) is undefined. QtXmlPatterns<A dokumentum nem egy XML sma.Document is not a XML schema. QtXmlPatterns~Dupla pontossg szm tartalom nem felel meg a minta facet-nek.,Double content does not match pattern facet. QtXmlPatternsDupla pontossg szm tartalom nem felel meg a maxExclusive facet-nek.5Double content does not match the maxExclusive facet. QtXmlPatternsDupla pontossg szm tartalom nem felel meg a maxInclusive facet-nek.5Double content does not match the maxInclusive facet. QtXmlPatternsDupla pontossg szm tartalom nem felel meg a minExclusive facet-nek.5Double content does not match the minExclusive facet. QtXmlPatternsDupla pontossg szm tartalom nem felel meg a minInclusive facet-nek.5Double content does not match the minInclusive facet. QtXmlPatternsDupla pontossg szm tartalom nem felel meg a felsorols facet-nek.6Double content is not listed in the enumeration facet. QtXmlPatternsNDupliklt %1 elemnevek a(z) %2 elemben.*Duplicated element names %1 in %2 element. QtXmlPatternsPDupliklt facet-ek %1 egyszerq tpusban.$Duplicated facets in simple type %1. QtXmlPatternsfIdQtartam tartalom nem felel meg a minta facet-nek..Duration content does not match pattern facet. QtXmlPatternstIdQtartam tartalom nem felel meg a maxExclusive facet-nek.7Duration content does not match the maxExclusive facet. QtXmlPatternstIdQtartam tartalom nem felel meg a maxInclusive facet-nek.7Duration content does not match the maxInclusive facet. QtXmlPatternstIdQtartam tartalom nem felel meg a minExclusive facet-nek.7Duration content does not match the minExclusive facet. QtXmlPatternstIdQtartam tartalom nem felel meg a minInclusive facet-nek.7Duration content does not match the minInclusive facet. QtXmlPatternsnIdQtartam tartalom nem szerepel a felsorols facet-ben.8Duration content is not listed in the enumeration facet. QtXmlPatternsMinden sablonparamter neve egyedi kell legyen, %1 azonban dupln szerepel.CEach name of a template parameter must be unique; %1 is duplicated. QtXmlPatternsEffektv logikai rtk nem szmthat olyan sorozatra, melyben kettQ vagy tbb atomi rtk szerepel.aEffective Boolean Value cannot be calculated for a sequence containing two or more atomic values. QtXmlPatterns6%1 elem mr definilva van.Element %1 already defined. QtXmlPatterns%1 elem nem szerializlhat, mert a document elemen kvl szerepel.OElement %1 can't be serialized because it appears outside the document element. QtXmlPatterns~%1 elem nem tartalmazhat ms elemeket, mert tartalma rgztett.DElement %1 cannot contain other elements, as it has a fixed content. QtXmlPatternsZ%1 elemnek nem lehet szekvencia konstruktora..Element %1 cannot have a sequence constructor. QtXmlPatternsD%1 elemnek nem lehetnek gyermekei. Element %1 cannot have children. QtXmlPatternsH%1 elemben rvnytelen tartalom van.$Element %1 contains invalid content. QtXmlPatternsb%1 elem nem megengedett attribtumokat tartalmaz.+Element %1 contains not allowed attributes. QtXmlPatternsh%1 elem nem megengedett gyermek tartalmat tartalmaz..Element %1 contains not allowed child content. QtXmlPatternsb%1 elem nem megengedett gyermek elemet tartalmaz..Element %1 contains not allowed child element. QtXmlPatternsh%1 elemben nem megengedett szvegtartalom tallhat.-Element %1 contains not allowed text content. QtXmlPatternsZ%1 elem kt %2 tpus attribtumot tartalmaz..Element %1 contains two attributes of type %2. QtXmlPatternsh%1 elem a(z) %2 ismeretlen attribtumot tartalmazza.)Element %1 contains unknown attribute %2. QtXmlPatterns%1 elem nem illeszkedik az Qs rszecskben megadott nvtr helyettestQ mintjra.LElement %1 does not match namespace constraint of wildcard in base particle. QtXmlPatternsP%1 elem ktszer ltezik eltrQ tpussal.-Element %1 exists twice with different types. QtXmlPatternsL%1 elem absztraktknt lett definilva.#Element %1 is declared as abstract. QtXmlPatterns@Hinyz gyermek elem %1 elemben.$Element %1 is missing child element. QtXmlPatterns\%1 elem hinyzik a szrmaztatott rszecskbQl.*Element %1 is missing in derived particle. QtXmlPatternsZ%1 elembQl hinyzik a ktelezQ %2 attribtum.,Element %1 is missing required attribute %2. QtXmlPatternsL%1 elem nem megengedett ezen a helyen.+Element %1 is not allowed at this location. QtXmlPatterns%1 elem nem megengedett ebben a hatkrben, a lehetsges elemek: %2.CElement %1 is not allowed in this scope, possible elements are: %2. QtXmlPatternsp%1 elemre nem lehet rtk megkts, ha Qstpusa komplex.QElement %1 is not allowed to have a value constraint if its base type is complex. QtXmlPatterns%1 elemre nem lehet rtk megkts, ha tpusa %2-bQl szrmaztatott.TElement %1 is not allowed to have a value constraint if its type is derived from %2. QtXmlPatterns%1 elemnek nem lehet helyettestQ csoport kapcsolata, mivel nem globlis elem.\Element %1 is not allowed to have substitution group affiliation as it is no global element. QtXmlPatterns^%1 elem nem ebben a hatkrben lett definilva.(Element %1 is not defined in this scope. QtXmlPatterns4%1 elem nem nil-felttelq.Element %1 is not nillable. QtXmlPatternsP%1 elemnek az utoljra kell szerepelnie.Element %1 must come last. QtXmlPatterns%1 elemnek valamelyik attribtumt meg kell adni %2 vagy %3 kzl.=Element %1 must have at least one of the attributes %2 or %3. QtXmlPatterns%1 elemnek vagy %2-attribtumnak vagy szekvencia konstruktornak lennie kell.EElement %1 must have either a %2-attribute or a sequence constructor. QtXmlPatternsxAz elem annak ellenre tartalmaz adatot, hogy nil-felttelq.1Element contains content although it is nillable. QtXmlPatternsD%1 elemcsoport mr definilva van.!Element group %1 already defined. QtXmlPatternspres rszecske nem szrmaztathat nem res rszecskbQl.9Empty particle cannot be derived from non-empty particle. QtXmlPatternsrvnytelen tartalom felsorols facet-ben: {%1} rvnytelen rtk %2 tpusban.KEnumeration facet contains invalid content: {%1} is not a value of type %2. QtXmlPatternsB%1 mezQnek nincs egyszerq tpusa.Field %1 has no simple type. QtXmlPatternsAz elemre rgztett rtk megkts nem adhat, ha az nil-felttelq.:Fixed value constraint not allowed if element is nillable. QtXmlPatterns%1 elem rgztett rtk megktse klnbzik az Qs rszecskben megadott rtk megktstQl.TFixed value constraint of element %1 differs from value constraint in base particle. QtXmlPatterns2'%1' ID rtk nem egyedi.ID value '%1' is not unique. QtXmlPatternsR%1 identits megkts mr definilva van.'Identity constraint %1 already defined. QtXmlPatternsHa mindkt rtkben zna eltols van, akkor annak azonosnak kell lennie. %1 s %2 nem egyezik.bIf both values have zone offsets, they must have the same zone offset. %1 and %2 are not the same. QtXmlPatternsHa %1 elemnek nincs %2 attribtuma, akkor %3 vagy %4 attribtuma sem lehet.EIf element %1 has no attribute %2, it cannot have attribute %3 or %4. QtXmlPatterns(Ha az elsQ argumentum az res szekvencia vagy egy nulla hosszsg sztring (nvtr nlkl), akkor nem adhat meg prefixum. %1 prefixum lett megadva.If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified. QtXmlPatternsEgy nvtr konstruktorban a nvtr rtke nem lehet res karaktersorozat.PIn a namespace constructor, the value for a namespace cannot be an empty string. QtXmlPatternsEgy egyszerqstett stluslap modulban a(z) %1 attribtumnak jelen kell lennie.@In a simplified stylesheet module, attribute %1 must be present. QtXmlPatternsEgy XSL-T mintban %1 tengely nem, csak %2 vagy %3 tengely hasznlhat.DIn an XSL-T pattern, axis %1 cannot be used, only axis %2 or %3 can. QtXmlPatternsEgy XSL-T mintban %1 fggnynek nem lehet harmadik argumentuma.>In an XSL-T pattern, function %1 cannot have a third argument. QtXmlPatternsEgy XSL-T mintban csak %1 s %2 fggvnyek hasznlhatk illesztshez, %3 nem.OIn an XSL-T pattern, only function %1 and %2, not %3, can be used for matching. QtXmlPatternsEgy XSL-T mintban %1 fggvny elsQ argumentumnak szveges literlnak vagy vltoz hivatkozsnak kell lennie, ha illesztshez hasznljuk.yIn an XSL-T pattern, the first argument to function %1 must be a literal or a variable reference, when used for matching. QtXmlPatternsEgy XSL-T mintban %1 fggvny elsQ argumentumnak szveges literlnak kell lennie, ha illesztshez hasznljuk.hIn an XSL-T pattern, the first argument to function %1 must be a string literal, when used for matching. QtXmlPatternsA csereszvegben %1 csak nmaga vagy %2 escapelsre hasznlhat, %3-ra nemMIn the replacement string, %1 can only be used to escape itself or %2, not %3 QtXmlPatternsA csereszvegben %1-t legalbb egy szmjegy kell kvesse, amennyiben az nincs escapelve.VIn the replacement string, %1 must be followed by at least one digit when not escaped. QtXmlPatternsnA nullval (%2) val egszoszts (%1) nincs rtelmezve.0Integer division (%1) by zero (%2) is undefined. QtXmlPatterns>rvnytelen QName tartalom: %1.Invalid QName content: %1. QtXmlPatterns<Nem lehet ktni %1 prefixumhoz+It is not possible to bind to the prefix %1 QtXmlPatternsV%1 prefixum jradeklarlsa nem lehetsges.*It is not possible to redeclare prefix %1. QtXmlPatterns@Nem lesz lehetsges %1 lekrse.'It will not be possible to retrieve %1. QtXmlPatternsnSemmilyen ms csompont utn nem adhat meg attribtum.AIt's not possible to add attributes after any other kind of node. QtXmlPatternsJ%2 elem %1 elemtpusa nem feloldhat..Item type %1 of %2 element cannot be resolved. QtXmlPatternsRAz Qs tpusa nem egyezik %1 elemtpussal.6Item type of base type does not match item type of %1. QtXmlPatternsn%1 egyszerq tpus elem tpusa nem lehet komplex tpus.5Item type of simple type %1 cannot be a complex type. QtXmlPatternsX%1 kulcs megkts hinyz mezQket tartalmaz.)Key constraint %1 contains absent fields. QtXmlPatterns%1 kulcsfelttel %2 nil-felttelq elemre vonatkoz hivatkozst tartalmaz.:Key constraint %1 contains references nillable element %2. QtXmlPatterns^Lista tartalom nem felel meg a hossz facet-nek.)List content does not match length facet. QtXmlPatternsfLista tartalom nem felel meg a maxLength facet-nek.,List content does not match maxLength facet. QtXmlPatternsfLista tartalom nem felel meg a minLength facet-nek.,List content does not match minLength facet. QtXmlPatterns^Lista tartalom nem felel meg a minta facet-nek.*List content does not match pattern facet. QtXmlPatternsdLista tartalom nem szerepl a felsorols facet-ben.4List content is not listed in the enumeration facet. QtXmlPatternsLoaded schema file is invalid. QtXmlPatternsPAz illeszkedsek nem nagybetq-rzkenyekMatches are case insensitive QtXmlPatterns%1 tag tpus nem szrmazhat %2 tag tpusbl, %3-nak %4 Qstpusbl.JMember type %1 cannot be derived from member type %2 of %3's base type %4. QtXmlPatternsH%2 elem %1 tagtpusa nem feloldhat.0Member type %1 of %2 element cannot be resolved. QtXmlPatternsj%1 egyszerq tpus tag tpus nem lehet komplex tpus.7Member type of simple type %1 cannot be a complex type. QtXmlPatternsModul importoknak meg kell elQznik a fggvny-, vltoz- s opci deklarcikat.MModule imports must occur before function, variable, and option declarations. QtXmlPatternsxA nullval (%2) val maradkos oszts (%1) nincs rtelmezve.0Modulus division (%1) by zero (%2) is undefined. QtXmlPatternsLA(z) %1. hnap nem esik %2 s %3 kz.%Month %1 is outside the range %2..%3. QtXmlPatternsJ%1 mezQhz egynl tbb rtk ltezik.'More than one value found for field %1. QtXmlPatterns%1 tpus rtk szorzsa %2 vagy %3 (pozitv vagy negatv vgtelen) tpus rtkkel nem megengedett.YMultiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed. QtXmlPatterns%1 nvtr csak %2-hoz kthetQ (s minden esetben elQre deklarlt).ONamespace %1 can only be bound to %2 (and it is, in either case, pre-declared). QtXmlPatternsA nvtr deklarciknak meg kell elQznik a fggvny-, vltoz- s opci deklarcikat.UNamespace declarations must occur before function, variable, and option declarations. QtXmlPatternsr%1 nvtr prefixum vagy kvalifiklt nv nincs definilva.5Namespace prefix of qualified name %1 is not defined. QtXmlPatterns*Hlzati idQtllps.Network timeout. QtXmlPatternsD%1 elem defincija nem rhetQ el.'No definition for element %1 available. QtXmlPatternsKlsQ fggvnyek nem tmogatottak. Minden tmogatott fggvny hasznlhat, klsQ fggvnyknt val deklarls nlkl{No external functions are supported. All supported functions can be used directly, without first declaring them as external QtXmlPatterns:Nem ltezik %1 nevq fggvny.&No function with name %1 is available. QtXmlPatternsL%1 szignaturj fggvny nem tallhat*No function with signature %1 is available QtXmlPatternsLNincs nvtr kts a(z) %1 prefixumhoz-No namespace binding exists for the prefix %1 QtXmlPatterns`Nincs nvtr kts a(z) %1 prefixumhoz %2 helyen3No namespace binding exists for the prefix %1 in %2 QtXmlPatternsnNem tallhat hivatkozott rtk %1 kulcs referencihoz./No referenced value found for key reference %1. QtXmlPatternsDNincs megadva sma a validlshoz.!No schema defined for validation. QtXmlPatterns6Nem ltezik %1 nevq sablon.No template by name %1 exists. QtXmlPatternsZ%1 nevq klsQ vltozhoz nem rhetQ el rtk.=No value is available for the external variable with name %1. QtXmlPatterns6Nem ltezik %1 nevq vltozNo variable with name %1 exists QtXmlPatternsR%1 megkts nem egyedi rtket tartalmaz.)Non-unique value found for constraint %1. QtXmlPatternsPragma kifejezsek egyike sem tmogatott. Ennlfogva lteznie kell egy alaprtelmezett kifejezsnek^None of the pragma expressions are supported. Therefore, a fallback expression must be present QtXmlPatterns<%1 jells mr definilva van.Notation %1 already defined. QtXmlPatternshJellQ tartalom nem szerepel a felsorols facet-ben.8Notation content is not listed in the enumeration facet. QtXmlPatternsCsak %1 s %2 facet-ek engedlyezettek union tpus szrmaztats esetn.8Only %1 and %2 facets are allowed when derived by union. QtXmlPatternszCsak egy %1 deklarci szerepelhet a lekrdezs bevezetsben.6Only one %1 declaration can occur in the query prolog. QtXmlPatterns<Csak egy %1-elem jelenhet meg.Only one %1-element can appear. QtXmlPatternsCsak a Unicode Codepoint Collation tmogatott(%1). %2 nem tmogatott.IOnly the Unicode Codepoint Collation is supported(%1). %2 is unsupported. QtXmlPatternsjCsak %1 prefixum kthetQ %2 kifejezshez s fordtva.5Only the prefix %1 can be bound to %2 and vice versa. QtXmlPatternsx%1 opertor nem hasznlhat %2 s %3 tpusok atomi rtkein.>Operator %1 cannot be used on atomic values of type %2 and %3. QtXmlPatternsN%1 opertor nem hasznlhat %2 tpuson.&Operator %1 cannot be used on type %2. QtXmlPatterns`Tlcsorduls: A(z) %1 dtum nem reprezentlhat."Overflow: Can't represent date %1. QtXmlPatternsTTlcsorduls: A dtum nem reprezentlhat.$Overflow: Date can't be represented. QtXmlPatterns(rtelmezsi hiba: %1Parse error: %1 QtXmlPatternsvA rszecske nem determinisztikus helyettestQket tartalmaz..Particle contains non-deterministic wildcards. QtXmlPatterns%1 prefixum csak %2-hoz kthetQ (s minden esetben elQre deklarlt).LPrefix %1 can only be bound to %2 (and it is, in either case, pre-declared). QtXmlPatterns\%1 prefixum mr deklarlva van a bevezetsben.,Prefix %1 is already declared in the prolog. QtXmlPatterns\%1 kvalifiklt nv prefixuma nincs definilva.+Prefix of qualified name %1 is not defined. QtXmlPatternsx%1 talaktsa %2 tpusra a pontossg elvesztst okozhatja./Promoting %1 to %2 may cause loss of precision. QtXmlPatterns^QName tartalom nem felel meg a minta facet-nek.+QName content does not match pattern facet. QtXmlPatternsfQName tartalom nem szerepel a felsorols facet-ben.5QName content is not listed in the enumeration facet. QtXmlPatternsP%2 elem %1 referencija nem oldhat fel..Reference %1 of %2 element cannot be resolved. QtXmlPatternsfAz elvrt kardinalits %1; azonban %2 lett megadva./Required cardinality is %1; got cardinality %2. QtXmlPatternsFAz elvrt tpus %1, de a kapott %2.&Required type is %1, but %2 was found. QtXmlPatternsrXSL-T 1.0 stluslap futtatsa 2.0 verzij feldolgozval.5Running an XSL-T 1.0 stylesheet with a 2.0 processor. QtXmlPatternsElQjeles egsz szm tartalom nem felel meg a totalDigits facet-nek.?Signed integer content does not match in the totalDigits facet. QtXmlPatternszElQjeles egsz szm tartalom nem felel meg a minta facet-nek.4Signed integer content does not match pattern facet. QtXmlPatternsElQjeles egsz szm tartalom nem felel meg a maxExclusive facet-nek.=Signed integer content does not match the maxExclusive facet. QtXmlPatternsElQjeles egsz szm tartalom nem felel meg a maxInclusive facet-nek.=Signed integer content does not match the maxInclusive facet. QtXmlPatternsElQjeles egsz szm tartalom nem felel meg a minExclusive facet-nek.=Signed integer content does not match the minExclusive facet. QtXmlPatternsElQjeles egsz szm tartalom nem felel meg a minInclusive facet-nek.=Signed integer content does not match the minInclusive facet. QtXmlPatternsElQjeles egsz szm tartalom nem felel meg a felsorols facet-nek.>Signed integer content is not listed in the enumeration facet. QtXmlPatternsl%1 egyszerq tpus Qse csak egyszerq atomi tpus lehet.=Simple type %1 can only have simple atomic type as base type. QtXmlPatterns~%1 nem szrmazhat %2-bQl, mert utbbi final megktst definil.PSimple type %1 cannot derive from %2 as the latter defines restriction as final. QtXmlPatternsd%1 egyszerq tpus kzvetlen Qstpusa nem lehet %2./Simple type %1 cannot have direct base type %2. QtXmlPatternsx%1 egyszerq tpus nem megengedett %2 facet tpust tartalmaz.2Simple type %1 contains not allowed facet type %2. QtXmlPatternsP%1 egyszerq tpus Qstpusa nem lehet %2.3Simple type %1 is not allowed to have base type %2. QtXmlPatternsX%1 egyszerq tpusnak csak %2 facet-je lehet.0Simple type %1 is only allowed to have %2 facet. QtXmlPatternsjEgyszerq tpus nem megengedett %1 facet-et tartalmaz.*Simple type contains not allowed facet %1. QtXmlPatterns%1 szrmaztatott elem egyszerq tpusa nem szrmaztathat rvnyesen az Qs elembQl.NSimple type of derived element %1 cannot be validly derived from base element. QtXmlPatterns\A megadott %1 tpus ismeretlen a sma szmra.-Specified type %1 is not known to the schema. QtXmlPatternsA megadott %1 tpus nem helyettesthetQ rvnyesen %2 elemtpussal.DSpecified type %1 is not validly substitutable with element type %2. QtXmlPatternsuse='prohibited' megadsa egy attribtum csoporton bell hatstalan.DSpecifying use='prohibited' inside an attribute group has no effect. QtXmlPatternspA karakterlnc tartalom nem felel meg a minta facet-nek.,String content does not match pattern facet. QtXmlPatternspA karakterlnc tartalom nem felel meg a hossz facet-nek./String content does not match the length facet. QtXmlPatternsxA karakterlnc tartalom nem felel meg a maxLength facet-nek.2String content does not match the maxLength facet. QtXmlPatternsxA karakterlnc tartalom nem felel meg a minLength facet-nek.2String content does not match the minLength facet. QtXmlPatternsxA karakterlnc tartalom nem szerepel a felsorols facet-ben.6String content is not listed in the enumeration facet. QtXmlPatternsZ%1 rszcsoport krkrs defincit tartalmaz..Substitution group %1 has circular definition. QtXmlPatternsR%2 elem %1 rszcsoportja nem oldhat fel.7Substitution group %1 of %2 element cannot be resolved. QtXmlPatterns%1 importlt sma cl-nvtere klnbzik az importl smban definilt %2 cl-nvtrtQl.tTarget namespace %1 of imported schema is different from the target namespace %2 as defined by the importing schema. QtXmlPatterns%1 beemelt sma cl-nvtere klnbzik a beemelQ smban definilt %2 cl-nvtrtQl.tTarget namespace %1 of included schema is different from the target namespace %2 as defined by the including schema. QtXmlPatternsfSzveg csompontok nem megengedettek ezen a helyen.,Text nodes are not allowed at this location. QtXmlPatternsSzveg s entits referencik nem engedlyezettek %1 elemen bell7Text or entity references not allowed inside %1 element QtXmlPatternsRA(z) %1-tengely nem tmogatott XQuery-ben$The %1-axis is unsupported in XQuery QtXmlPatternsA Schema Import szolgltats nem tmogatott, gy %1 deklarcik nem fogadhatk el.WThe Schema Import feature is not supported, and therefore %1 declarations cannot occur. QtXmlPatternsA Schema Validation szolgltats nem tmogatott. Ennlfogva %1-kifejezsek nem hasznlhatk.VThe Schema Validation Feature is not supported. Hence, %1-expressions may not be used. QtXmlPatterns@A URI nem tartalmazhat tredketThe URI cannot have a fragment QtXmlPatternsn%1 attribtum csak az elsQ %2 elem esetn jelenhet meg.9The attribute %1 can only appear on the first %2 element. QtXmlPatternsl%1 attribtum nem szerepelhet %2-n, ha az %3 gyermeke.?The attribute %1 cannot appear on %2, when it is a child of %3. QtXmlPatterns%1 kdrszlet %2 helyen, %3 kdolssal rvnytelen XML karakter.QThe codepoint %1, occurring in %2 using encoding %3, is an invalid XML character. QtXmlPatterns~Egy feldolgozsi utasts adata nem tartalmazhatja %1 sztringetAThe data of a processing instruction cannot contain the string %1 QtXmlPatterns^Nincs meghatrozva az alaprtelmezett kollekci#The default collection is undefined QtXmlPatterns%1 kdols rvnytelen. Csak Latin karaktereket tartalmazhat, nem nyomtathat karakterek nlkl, s illeszkednie kell %2 regulris kifejezsre.The encoding %1 is invalid. It must contain Latin characters only, must not contain whitespace, and must match the regular expression %2. QtXmlPatterns%1 elsQ paramtere nem lehet %2 tpus. Csak numerikus tpus, xs:yearMonthDuration vagy xs:dayTimeDuration lehet.uThe first argument to %1 cannot be of type %2. It must be a numeric type, xs:yearMonthDuration or xs:dayTimeDuration. QtXmlPatterns%1 elsQ argumentuma nem lehet %2 tpus. Csak %3, %4 vagy %5 megengedett.PThe first argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. QtXmlPatterns4A fkusz nincs definilva.The focus is undefined. QtXmlPatternsP%1 vltoz inicializlsa nmagtl fgg3The initialization of variable %1 depends on itself QtXmlPatternsN%1 elem nem egyezik a vrt %2 tpussal./The item %1 did not match the required type %2. QtXmlPatternsx%1 kulcssz nem szerepelhet egytt semmilyen ms md nvvel.5The keyword %1 cannot occur with any other mode name. QtXmlPatternsEgy tvonal utols lpsnek vagy csompontokat vagy atomi rtkeket kell tartalmaznia. Nem lehet a kettQ keverke.kThe last step in a path must contain either nodes or atomic values. It cannot be a mixture between the two. QtXmlPatternsTA modul import szolgltats nem tmogatott*The module import feature is not supported QtXmlPatternsZA(z) %1 nv nem mutat semmilyen sma tpusra..The name %1 does not refer to any schema type. QtXmlPatternsSzmtott attribtum neve nem szerepelhet %1 nvtr URI-ben %2 loklis nvvel.ZThe name for a computed attribute cannot have the namespace URI %1 with the local name %2. QtXmlPatternsEgy for-kifejezsben kttt vltoz nevnek klnbzQnek kell lennie, mint a pozicionlis vltoz neve. gy a kt %1 nevq vltoz tkzik.The name of a variable bound in a for-expression must be different from the positional variable. Hence, the two variables named %1 collide. QtXmlPatternsrEgy kiterjeszts kifejezs nevnek nvtrben kell lennie.;The name of an extension expression must be in a namespace. QtXmlPatternsEgy opci nevnek ktelezQ prefixumot megadni. Nics alaprtelmezett nvetr az opcik szmra.TThe name of an option must have a prefix. There is no default namespace for options. QtXmlPatternsA(z) %1 nvtr fenntartott, gy felhasznli fggvnyek nem hasznlhatjk. Prblja meg a(z) %2 prefixumot, ami ilyen esetekre van.The namespace %1 is reserved; therefore user defined functions may not use it. Try the predefined prefix %2, which exists for these cases. QtXmlPatternsPrefixumhoz kts esetn a nvtr URI nem lehet az res sztring, %1.JThe namespace URI cannot be the empty string when binding to a prefix, %1. QtXmlPatternsEgy szmtott attribtum nevben szereplQ nvtr URI-je nem lehet %1.DThe namespace URI in the name for a computed attribute cannot be %1. QtXmlPatternsEgy nvtr URI-nek konstansnak kell lennie s nem hasznlhat bennfoglalt kifejezseket.IThe namespace URI must be a constant and cannot use enclosed expressions. QtXmlPatternsEgy felhasznli fggvny nvtere nem lehet res (prblja meg a(z) %1 prefixumot, ami ilyen esetekre van fenntartva)yThe namespace for a user defined function cannot be empty (try the predefined prefix %1 which exists for cases like this) QtXmlPatternsEgy fggvnytr modulban definilt felhasznli fggvny nvtere meg kell egyezzen a modul nvtervel. Ms szval %1 kellene legyen %2 helyettThe namespace of a user defined function in a library module must be equivalent to the module namespace. In other words, it should be %1 instead of %2 QtXmlPatterns%1 normalizl formja nem tmogatott. A tmogatott formk %2, %3, %4 s %5 vagy semmi, pl. az res sztring (normalizci nlkl).The normalization form %1 is unsupported. The supported forms are %2, %3, %4, and %5, and none, i.e. the empty string (no normalization). QtXmlPatterns^Az tadott paramter %1, de nincs megfelelQ %2.;The parameter %1 is passed, but no corresponding %2 exists. QtXmlPatternsj%1 paramter ktelezQ, de nincs megadva megfelelQ %2.BThe parameter %1 is required, but no corresponding %2 is supplied. QtXmlPatterns0%1 prefixum nem kthetQ.The prefix %1 cannot be bound. QtXmlPatterns%1 prefixum nem kthetQ. Alaprtelmezs szerint mr kttt %2 nvtrhez.SThe prefix %1 cannot be bound. By default, it is already bound to the namespace %2. QtXmlPatterns|A prefixum rvnyes %1 kell legyen, aminek %2 nem tesz eleget./The prefix must be a valid %1, which %2 is not. QtXmlPatterns%1 fggvny msodik argumentumnak gykr csompontja document tpus kell legyen. %2 nem document csompont.gThe root node of the second argument to function %1 must be a document node. %2 is not a document node. QtXmlPatterns%1 msodik argumentuma nem lehet %2 tpus. Csak %3, %4 vagy %5 megengedett.QThe second argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. QtXmlPatternsFeldolgozsi utastsban a clnv nem lehet %1 semmilyen kis- vagy nagybetqs formban. Emiatt %2 rvnytelen.~The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, %2 is invalid. QtXmlPatternsDEgy %1 cl-nvtere nem lehet res.-The target namespace of a %1 cannot be empty. QtXmlPatterns%2 elem %1 attribtumnak rtke %3 vagy %4 kell legyen, de nem %5.IThe value for attribute %1 on element %2 must either be %3 or %4, not %5. QtXmlPatternsx%1 attribtum rtknek %2 tpusnak kell lennie, %3 nem az.=The value of attribute %1 must be of type %2, which %3 isn't. QtXmlPatternsAz XSL-T verzi attribtum rtknek %1 tpusnak kell lennie, %2 pedig nem az.TThe value of the XSL-T version attribute must be a value of type %1, which %2 isn't. QtXmlPatterns>A(z) %1 vltoz nincs hasznlvaThe variable %1 is unused QtXmlPatterns^Egy IDREF rtk van hozztartoz ID nlkl: %1.6There is one IDREF value with no corresponding ID: %1. QtXmlPatternspEz a feldolgoz nem smafggQ, ezrt %1 nem hasznlhat.CThis processor is not Schema-aware and therefore %1 cannot be used. QtXmlPatternsFAz %1:%2:%3.%4 idQpont rvnytelen.Time %1:%2:%3.%4 is invalid. QtXmlPatternsAz 24:%1:%2.%3 idQpont rvnytelen, mert az ra rtke 24, de a tbbi rtk nem 0; _Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0;  QtXmlPatternsFelsQ szintq stluslap elemeknek egy nem res nvtrben kell lennik, ezrt %1 nem j.NTop level stylesheet elements must be in a non-null namespace, which %1 isn't. QtXmlPatternsbKt nvtr-deklarci attribtum neve azonos: %1. m>.+; +;?+;F?+O h+O?R1$E@!F]H4iHYWHIJcJKLDL6PSR[Zr{[`[`;[\__1G2?M6$X$$,y! ,A9Y/E~E>Eu%%O3֍֍P֍f֍N0 0A0l00J05v DD DV+0,E,!RU}\V1UV,VV V\W WT֕WTXBXX˙CTXY]YYRdZgZ^>\\]4\]4\\gcӲlG5|^av?v(fg@4Lˆ5.326CXIA[B&ɵn8ɵnw[ɵnɵnɵnɵn-jN BM`m5v%UT[(ŎT9*45v?tnC1CeD"D1eyMCaR?Ke؀fPGloR/orw^xc6+G[/2Q2 y{'.FdR+gAikWiur| -h$1$5~d < ?2MJUiôW~3]j`:`vty61\ +OW)~66h^g!0_RT =9~.,&9EE:#:R{ 8AYAe;g]:2mMM.EbEk I)*/eF>qOJZf f.g&4jCSq:u(]Ol~*) $T$%#YU(JrvK cK7C nI,xD4A߽IxS2CYMbYMlh^%i+c<xXۊ4zat1N1g]]7I7II >I@SIIqIuDfuDoDoړ, k,%,,', 8]ρaɘeW5$fRfRQ/NQZc(S\8PqiVAVfRJ  Z S #}$U%C%&~[,иKN(V|\a]vf]{kM5tFQQ\G%`ص$ǥ%+StX>;^exA^9\]s^%y%1C-5C^pdƨ 2ƨX˾{ҝzEieէ?TZ>/ߺf^ !ő '$~bP~bVo+3/ݟ16G4~6 ? 27ABD(`GbGbULAUPѧ@QnSnqU~UZaZZZ [A]k*P^n$g_peigip(kQ0.y;{p}u}w}wn}w9}tv tt..iUOD#Ywt-tlt *_ +Fʢ  |t ' z K" 팤D h =( q]  }Ǚ ). .>| 7u& ; =a+ J" J" Rۮ'F Ty > Uj4M ] `v ` bO c( cEh d e eP] f1d f* g5UԨ gn% k, rD"S t ) H HK3 / $Mj 5 ", W  m JU JN * t.7 kn Ӈ" M  r N>8 ̺`o -Da| .P ۷> ky k: U)p  7; 0  x z+o  fm  o IZ5 %_ 3  xHu  .2 >iM >i >k >t > > >d > ?t| DT I2 RVR RV RV S. SGF S YD c`4 hۮY j7oI p3 . B| & T9o T T* T }H ; Z_ S@ .9 .w . . . .A D a^ ҂+   a :bqW  rh +>4. ;ɾ K9G PtI Pt fe fe7 iFC iP* i m9 n. u u] v&= w w w8 w}X w} w}8j |[16  c lt % ^4 } P  U /" X &0 t5 t5  ^ )  $T.6ngT.*-J*/E;I_qK6OO[  =a.A[nyG0vɅy$~t4 pS@^Ǘ:<B+rݖr  M-"#-$UB%4DJ%4V1cD&&HJdsZK#4L$."9ac5Rc59[g3iCyC')Y5 &&p[)N@NH)Bt20<U i;<html>Il dispositivo di riproduzione audio <b>%1</b> non funziona.<br/>Ripiego su <b>%2</b>.</html>^The audio playback device %1 does not work.
Falling back to %2. AudioOutput>Ripristino del dispositivo '%1'Revert back to device '%1' AudioOutput"Informzioni su %1About %1MAC_APPLICATION_MENUNascondi %1Hide %1MAC_APPLICATION_MENU$Nascondi gli altri Hide OthersMAC_APPLICATION_MENUPreferenze...Preferences...MAC_APPLICATION_MENUChiudi %1Quit %1MAC_APPLICATION_MENUServiziServicesMAC_APPLICATION_MENUMostra tuttoShow AllMAC_APPLICATION_MENUAccessibilit AccessibilityPhonon::Comunicazione CommunicationPhonon:: GiochiGamesPhonon:: MusicaMusicPhonon::Notifiche NotificationsPhonon:: VideoVideoPhonon::Avviso: sembra che il componente GStreamer di base non sia installato. Tutti i supporti audio e video sono stati disabilitati~Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabledPhonon::Gstreamer::BackendAvviso: sembra che il pacchetto gstreamer0.10-plugins-good non sia installato. Alcune funzionalit video sono state disabilitate.Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled.Phonon::Gstreamer::Backend8Tipo di sorgente non valido.Invalid source type.Phonon::Gstreamer::MediaObjectUtilizza questo cursore per regolare il volume. La posizione all'estrema sinistra 0%, a destra %1%WUse this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1%Phonon::VolumeSliderVolume: %1% Volume: %1%Phonon::VolumeSlider&%1, %2 non definito%1, %2 not definedQ3Accel6Ambiguit di %1 non gestitaAmbiguous %1 not handledQ3AccelEliminaDelete Q3DataTable FalsoFalse Q3DataTableInserisciInsert Q3DataTableVeroTrue Q3DataTableAggiornaUpdate Q3DataTable|%1 File non trovato. Controlla il percorso e il nome del file.+%1 File not found. Check path and filename. Q3FileDialog&Elimina&Delete Q3FileDialog&No&No Q3FileDialog&OK&OK Q3FileDialog &Apri&Open Q3FileDialog&Rinomina&Rename Q3FileDialog &Salva&Save Q3FileDialog&Non ordinati &Unsorted Q3FileDialog&S&Yes Q3FileDialog^<qt>Sei sicuro di voler eliminare %1 "%2"?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialog Tutti i file (*) All Files (*) Q3FileDialogAttributi Attributes Q3FileDialogIndietroBack Q3FileDialogAnnullaCancel Q3FileDialog,Copia o sposta un fileCopy or Move a File Q3FileDialog.Crea una nuova cartellaCreate New Folder Q3FileDialogDataDate Q3FileDialogElimina %1 Delete %1 Q3FileDialog"Vista dettagliata Detail View Q3FileDialogCartellaDir Q3FileDialogCartelle Directories Q3FileDialogCartella: Directory: Q3FileDialog ErroreError Q3FileDialogFile Q3FileDialog&Nome file: File &name: Q3FileDialog&Tipo file: File &type: Q3FileDialogTrova cartellaFind Directory Q3FileDialogInaccessibile Inaccessible Q3FileDialogVista a elenco List View Q3FileDialogCerca &in: Look &in: Q3FileDialogNomeName Q3FileDialogNuova cartella New Folder Q3FileDialog"Nuova cartella %1 New Folder %1 Q3FileDialog Nuova cartella 1 New Folder 1 Q3FileDialog"Livello superioreOne directory up Q3FileDialogApriOpen Q3FileDialog@Anteprima del contenuto dei filePreview File Contents Q3FileDialogRi&caricaR&eload Q3FileDialogSola lettura Read-only Q3FileDialog"Lettura-scrittura Read-write Q3FileDialogLettura: %1Read: %1 Q3FileDialogSalva comeSave As Q3FileDialog*Mos&tra file nascostiShow &hidden files Q3FileDialogDimensioneSize Q3FileDialog OrdinaSort Q3FileDialog Ordina per &data Sort by &Date Q3FileDialog Ordina per &nome Sort by &Name Q3FileDialog,Ordina per dimen&sione Sort by &Size Q3FileDialogSpecialeSpecial Q3FileDialogJCollegamento simbolico a una cartellaSymlink to Directory Q3FileDialog@Collegamento simbolico a un fileSymlink to File Q3FileDialogTipoType Q3FileDialogSola scrittura Write-only Q3FileDialogScrittura: %1 Write: %1 Q3FileDialogla cartella the directory Q3FileDialogil filethe file Q3FileDialog2il collegamento simbolico the symlink Q3FileDialogBImpossibile creare la cartella %1Could not create directory %1 Q3LocalFs*Impossibile aprire %1Could not open %1 Q3LocalFsDImpossibile leggere la cartella %1Could not read directory %1 Q3LocalFs\Impossibile rimuovere il file o la cartella %1%Could not remove file or directory %1 Q3LocalFs>Impossibile rinominare %1 in %2Could not rename %1 to %2 Q3LocalFs.Impossibile scrivere %1Could not write %1 Q3LocalFsPersonalizza... Customize... Q3MainWindow<Operazione fermata dall'utenteOperation stopped by the userQ3NetworkProtocolAnnullaCancelQ3ProgressDialogApplicaApply Q3TabDialogAnnullaCancel Q3TabDialogPredefinitiDefaults Q3TabDialog AiutoHelp Q3TabDialogOK Q3TabDialog &Copia&Copy Q3TextEdit&Incolla&Paste Q3TextEdit &Rifai&Redo Q3TextEditA&nnulla&Undo Q3TextEditPulisciClear Q3TextEdit&TagliaCu&t Q3TextEditSeleziona tutto Select All Q3TextEdit ChiudiClose Q3TitleBar$Chiude la finestraCloses the window Q3TitleBarVContiene comandi per manipolare la finestra*Contains commands to manipulate the window Q3TitleBarVisualizza il nome della finestra e contiene i controlli per manipolarlaFDisplays the name of the window and contains controls to manipulate it Q3TitleBarMassimizzaMaximize Q3TitleBarMinimizzaMinimize Q3TitleBarMinimizza Restore down Q3TitleBarRipristina Restore up Q3TitleBarSistemaSystem Q3TitleBarAltro...More... Q3ToolBar(sconosciuto) (unknown) Q3UrlOperatorIl protocollo %1 non supporta la copia o lo spostamento di file o cartelleIThe protocol `%1' does not support copying or moving files or directories Q3UrlOperator|Il protocollo %1 non supporta la creazione di nuove cartelle;The protocol `%1' does not support creating new directories Q3UrlOperatorhIl protocollo %1 non supporta la ricezione di file0The protocol `%1' does not support getting files Q3UrlOperatorxIl protocollo %1 non supporta l'elencazione delle cartelle6The protocol `%1' does not support listing directories Q3UrlOperator^Il protocollo %1 non supporta l'invio di file0The protocol `%1' does not support putting files Q3UrlOperator~Il protocollo %1 non supporta la rimozione di file o cartelle@The protocol `%1' does not support removing files or directories Q3UrlOperator|Il protocollo %1 non supporta la rinomina di file o cartelle@The protocol `%1' does not support renaming files or directories Q3UrlOperatorFIl protocollo %1 non supportato"The protocol `%1' is not supported Q3UrlOperatorA&nnulla&CancelQ3Wizard &Fine&FinishQ3Wizard Ai&uto&HelpQ3Wizard&Avanti >&Next >Q3Wizard< &Indietro< &BackQ3Wizard*Connessione rifiutataConnection refusedQAbstractSocket Host non trovatoHost not foundQAbstractSocket0Il socket non connessoSocket is not connectedQAbstractSocket8Operazione di socket scadutaSocket operation timed outQAbstractSocket &Seleziona tutto &Select AllQAbstractSpinBox AttivaActivate QApplicationVAttiva la finestra principale del programma#Activates the program's main window QApplication`L'eseguibile %1 richiede Qt %2, trovate Qt %3.,Executable '%1' requires Qt %2, found Qt %3. QApplicationFErrore di libreria Qt incompatibileIncompatible Qt Library Error QApplicationLTRQT_LAYOUT_DIRECTION QApplicationSelezionaCheck QCheckBoxCommutaToggle QCheckBoxDeselezionaUncheck QCheckBoxD&Aggiungi ai colori personalizzati&Add to Custom Colors QColorDialogColori di &base &Basic colors QColorDialog,&Colori personalizzati&Custom colors QColorDialog&Verde:&Green: QColorDialog&Rosso:&Red: QColorDialog &Sat:&Sat: QColorDialog &Val:&Val: QColorDialogCanale a&lpha:A&lpha channel: QColorDialog Bl&u:Bl&ue: QColorDialog T&on:Hu&e: QColorDialog Seleziona colore Select color QColorDialog ChiudiClose QComboBox FalsoFalse QComboBoxApriOpen QComboBoxVeroTrue QComboBox%1: esiste gi%1: already existsQCoreApplication%1: non esiste%1: doesn't existsQCoreApplication*%1: ftok non riuscito%1: ftok failedQCoreApplication*%1: la chiave vuota%1: key is emptyQCoreApplication2%1: risorse insufficienti%1: out of resourcesQCoreApplication&%1: permesso negato%1: permission deniedQCoreApplication@%1: impossibile creare la chiave%1: unable to make keyQCoreApplication2%1: errore sconosciuto %2%1: unknown error %2QCoreApplicationHImpossibile applicare la transazioneUnable to commit transaction QDB2Driver.Impossibile connettersiUnable to connect QDB2DriverhImpossibile effettuare il rollback della transazioneUnable to rollback transaction QDB2DriverDImpossibile impostare l'autocommitUnable to set autocommit QDB2DriverDImpossibile associare la variabileUnable to bind variable QDB2ResultBImpossibile eseguire l'istruzioneUnable to execute statement QDB2Result>Impossibile recuperare il primoUnable to fetch first QDB2ResultDImpossibile recuperare il prossimoUnable to fetch next QDB2ResultBImpossibile ottenere il record %1Unable to fetch record %1 QDB2ResultBImpossible preparare l'istruzioneUnable to prepare statement QDB2ResultAM QDateTimeEditPM QDateTimeEditam QDateTimeEditpm QDateTimeEditQDialQDialSliderHandle SliderHandleQDialSpeedoMeter SpeedoMeterQDialCompletatoDoneQDialog Cos'? What's This?QDialog&No&NoQDialogButtonBox&OK&OKQDialogButtonBox&S&YesQDialogButtonBoxInterrompiAbortQDialogButtonBoxApplicaApplyQDialogButtonBoxAnnullaCancelQDialogButtonBox ChiudiCloseQDialogButtonBox(Chiudi senza salvareClose without SavingQDialogButtonBox ScartaDiscardQDialogButtonBoxNon salvare Don't SaveQDialogButtonBox AiutoHelpQDialogButtonBox IgnoraIgnoreQDialogButtonBoxN&o a tutti N&o to AllQDialogButtonBoxOKQDialogButtonBoxApriOpenQDialogButtonBoxRipristinaResetQDialogButtonBox:Ripristina valori predefinitiRestore DefaultsQDialogButtonBoxRiprovaRetryQDialogButtonBox SalvaSaveQDialogButtonBoxSalva tuttoSave AllQDialogButtonBoxS &a tutti  Yes to &AllQDialogButtonBox Data di modifica Date Modified QDirModel SpecieKind QDirModelNomeName QDirModelDimensioneSize QDirModelTipoType QDirModel ChiudiClose QDockWidgetAgganciaDock QDockWidget MobileFloat QDockWidgetMenoLessQDoubleSpinBoxPiMoreQDoubleSpinBox&OK QErrorMessage>Mo&stra ancora questo messaggio&Show this message again QErrorMessage&Messaggio di debug:Debug Message: QErrorMessageErrore grave: Fatal Error: QErrorMessageAvviso:Warning: QErrorMessage%1 Cartella non trovata. Verifica che sia stato fornito il nome corretto della cartella.K%1 Directory not found. Please verify the correct directory name was given. QFileDialog%1 File non trovato. Verifica che sia stato fornito il nome file corretto.A%1 File not found. Please verify the correct file name was given. QFileDialog@%1 gi esiste. Vuoi sostituirlo?-%1 already exists. Do you want to replace it? QFileDialogS&cegli&Choose QFileDialog&Elimina&Delete QFileDialog&Nuova cartella &New Folder QFileDialog &Apri&Open QFileDialog&Rinomina&Rename QFileDialog &Salva&Save QFileDialogl%1 protetto da scrittua. Vuoi eliminarlo comunque?9'%1' is write protected. Do you want to delete it anyway? QFileDialog Tutti i file (*) All Files (*) QFileDialogFSei sicuro di voler eliminare '%1'?!Are sure you want to delete '%1'? QFileDialogIndietroBack QFileDialogDImpossibile eliminare la cartella.Could not delete directory. QFileDialog&Crea nuova cartellaCreate New Folder QFileDialog"Vista dettagliata Detail View QFileDialogCartelle Directories QFileDialogCartella: Directory: QFileDialog DiscoDrive QFileDialogFile QFileDialog&Nome file: File &name: QFileDialogFile di tipo:Files of type: QFileDialogTrova cartellaFind Directory QFileDialog AvantiForward QFileDialogVista a elenco List View QFileDialogCerca in:Look in: QFileDialog(Risorse del computer My Computer QFileDialogNuova cartella New Folder QFileDialogApriOpen QFileDialog$Cartella genitriceParent Directory QFileDialogRimuoviRemove QFileDialogSalva comeSave As QFileDialog MostraShow  QFileDialog*Mos&tra file nascostiShow &hidden files QFileDialogSconosciutoUnknown QFileDialog %1 GB%1 GBQFileSystemModel %1 KB%1 KBQFileSystemModel %1 MB%1 MBQFileSystemModel %1 TB%1 TBQFileSystemModel%1 byte%1 bytesQFileSystemModel <b>Il nome "%1" non pu essere utilizzato.</b><p>Prova a utilizzare un altro nome, con meno caratteri e nessun segno di punteggiatura.oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModelComputerQFileSystemModel Data di modifica Date ModifiedQFileSystemModel(Nome file non validoInvalid filenameQFileSystemModel SpecieKindQFileSystemModel(Risorse del computer My ComputerQFileSystemModelNomeNameQFileSystemModelDimensioneSizeQFileSystemModelTipoTypeQFileSystemModelQualunqueAny QFontDatabase AraboArabic QFontDatabase ArmenoArmenian QFontDatabaseBengaleseBengali QFontDatabaseGrassettoBold QFontDatabaseCirillicoCyrillic QFontDatabaseDemi QFontDatabaseDemi grassetto Demi Bold QFontDatabase Devanagari QFontDatabaseGeorgianoGeorgian QFontDatabase GrecoGreek QFontDatabaseGujarati QFontDatabaseGurmukhi QFontDatabase EbreoHebrew QFontDatabaseCorsivoItalic QFontDatabaseGiapponeseJapanese QFontDatabaseKannada QFontDatabaseKhmer QFontDatabaseCoreanoKorean QFontDatabaseLao QFontDatabase LatinoLatin QFontDatabase Malayalam QFontDatabaseMyanmar QFontDatabaseNormaleNormal QFontDatabaseObliquoOblique QFontDatabaseOgham QFontDatabaseOriya QFontDatabase RunicoRunic QFontDatabase&Cinese semplificatoSimplified Chinese QFontDatabaseSinhala QFontDatabaseSimboloSymbol QFontDatabaseSirianoSyriac QFontDatabaseTamil QFontDatabaseTelugu QFontDatabaseThaana QFontDatabaseThaiThai QFontDatabaseTibetanoTibetan QFontDatabase&Cinese tradizionaleTraditional Chinese QFontDatabaseVietnamita Vietnamese QFontDatabase&Carattere&Font QFontDialogDimen&sione&Size QFontDialogS&ottolineato &Underline QFontDialogEffettiEffects QFontDialog(S&tile del carattere Font st&yle QFontDialogEsempioSample QFontDialog&Seleziona carattere Select Font QFontDialogS&barrato Stri&keout QFontDialog(S&istema di scrittuaWr&iting System QFontDialogJCambiamento cartella non riuscito: %1Changing directory failed: %1QFtp(Connessione all'hostConnected to hostQFtp.Connessione all'host %1Connected to host %1QFtpJConnessione all'host non riuscita: %1Connecting to host failed: %1QFtp$Connessione chiusaConnection closedQFtpZConnessione rifiutata per la connessione dati&Connection refused for data connectionQFtpBConnessione all'host %1 rifiutataConnection refused to host %1QFtp.Connessione a %1 chiusaConnection to %1 closedQFtpFCreazione cartella non riuscita: %1Creating directory failed: %1QFtpDScaricamento file non riuscito: %1Downloading file failed: %1QFtp"Trovato l'host %1 Host %1 foundQFtp&Host %1 non trovatoHost %1 not foundQFtpHost trovato Host foundQFtpVElencazione della cartella non riuscita: %1Listing directory failed: %1QFtp0Accesso non riuscito: %1Login failed: %1QFtpNon connesso Not connectedQFtpFRimozione cartella non riuscita: %1Removing directory failed: %1QFtp>Rimozione file non riuscita: %1Removing file failed: %1QFtp$Errore sconosciuto Unknown errorQFtp6Invio file non riuscito: %1Uploading file failed: %1QFtp$Errore sconosciuto Unknown error QHostInfo Host non trovatoHost not foundQHostInfoAgent:Tipo di indirizzo sconosciutoUnknown address typeQHostInfoAgent$Errore sconosciuto Unknown errorQHostInfoAgent0Autenticazione richiestaAuthentication requiredQHttp(Connessione all'hostConnected to hostQHttp.Connessione all'host %1Connected to host %1QHttp$Connessione chiusaConnection closedQHttp*Connessione rifiutataConnection refusedQHttpNConnessione rifiutata (o tempo scaduto)!Connection refused (or timed out)QHttp.Connessione a %1 chiusaConnection to %1 closedQHttp Dati danneggiatiData corruptedQHttp6Richiesta HTTP non riuscitaHTTP request failedQHttpRichiesta una connessione HTTPS, ma il supporto SSL non stato compilato:HTTPS connection requested but SSL support not compiled inQHttpHost %1 trovato Host %1 foundQHttp&Host %1 non trovatoHost %1 not foundQHttpHost trovato Host foundQHttp@L'host richiede l'autenticazioneHost requires authenticationQHttpJContenutoHTTP spezzettato non validoInvalid HTTP chunked bodyQHttpVIntestazione della risposta HTTP non validaInvalid HTTP response headerQHttpTNessun server impostato per la connessioneNo server set to connect toQHttp<Richiesta autenticazione proxyProxy authentication requiredQHttpDIl proxy richiede l'autenticazioneProxy requires authenticationQHttp(Richiesta interrottaRequest abortedQHttp:Negoziazione SSL non riuscitaSSL handshake failedQHttpnIl server ha terminato inaspettatamente la connessione %Server closed connection unexpectedlyQHttp$Errore sconosciuto Unknown errorQHttpDProtocollo specificato sconosciutoUnknown protocol specifiedQHttpHLunghezza del contenuto non correttaWrong content lengthQHttp0Autenticazione richiestaAuthentication requiredQHttpSocketEngineDImpossibile avviare la transazioneCould not start transaction QIBaseDriver>Errore di apertura del databaseError opening database QIBaseDriverHImpossibile applicare la transazioneUnable to commit transaction QIBaseDriverhImpossibile effettuare il rollback della transazioneUnable to rollback transaction QIBaseDriverFImpossibile descrivere l'istruzioneCould not describe statement QIBaseResultVImpossibile recuperare il prossimo elementoCould not fetch next item QIBaseResult<Impossibile trovare il vettoreCould not find array QIBaseResultNImpossibile ottenere il vettore di datiCould not get array data QIBaseResultDImpossibile preparare l'istruzioneCould not prepare statement QIBaseResultFImpossibile iniziare la transazioneCould not start transaction QIBaseResultBImpossibile chiudere l'istruzioneUnable to close statement QIBaseResult.Impossibile creare BLOBUnable to create BLOB QIBaseResult:Impossibile eseguire la queryUnable to execute query QIBaseResult.Impossibile aprire BLOBUnable to open BLOB QIBaseResult0Impossibile leggere BLOBUnable to read BLOB QIBaseResult2Impossibile scrivere BLOBUnable to write BLOB QIBaseResultHNon rimasto spazio sul dispositivoNo space left on device QIODevice,Nessun file o cartellaNo such file or directory QIODevicePermesso negatoPermission denied QIODevice$Troppi file apertiToo many open files QIODevice$Errore sconosciuto Unknown error QIODevice<Metodo di inserimento Mac OS XMac OS X input method QInputContext:Metodo di inserimento WindowsWindows input method QInputContextXIM QInputContext2Metodo di inserimento XIMXIM input method QInputContextMancata corrispondenza dei dati di verifica dell'estensione in '%1')Plugin verification data mismatch in '%1'QLibrary`QLibrary::load_sys: Impossibile caricare %1 (%2)'QLibrary::load_sys: Cannot load %1 (%2)QLibraryvQLibrary::resolve_sys: Simbolo "%1" non definito in %2 (%3)7QLibrary::resolve_sys: Symbol "%1" undefined in %2 (%3)QLibraryfQLibrary::unload_sys: Impossibile rimuovere %1 (%2)+QLibrary::unload_sys: Cannot unload %1 (%2)QLibraryVIl file %1 non un'estensione Qt valida.'The file '%1' is not a valid Qt plugin.QLibraryIl plugin '%1' utilizza librerie QT non compatibili. (%2.%3.%4) [%5]=The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]QLibraryL'estensione %1 utilizza una libreria Qt incompatibile. (Non possibile mischiare librerie di debug e di rilascio.)WThe plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)QLibraryIl plugin '%1' utilizza librerie QT non compatibili. Versione di compilazione attesa "%2", ottenuta "%3"OThe plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"QLibraryTLa libreria condivisa non stata trovata.!The shared library was not found.QLibrary$Errore sconosciuto Unknown errorQLibrary &Copia&Copy QLineEdit&Incolla&Paste QLineEdit &Rifai&Redo QLineEditA&nnulla&Undo QLineEdit&TagliaCu&t QLineEditEliminaDelete QLineEditSeleziona tutto Select All QLineEdit(%1: Indirizzo in uso%1: Address in use QLocalServer&%1: Errore nel nome%1: Name error QLocalServer&%1: Permesso negato%1: Permission denied QLocalServer2%1: Errore sconosciuto %2%1: Unknown error %2 QLocalServer2%1: Errore di connessione%1: Connection error QLocalSocket2%1: Connessione rifiutata%1: Connection refused QLocalSocket8%1: Datagramma troppo grande%1: Datagram too large QLocalSocket&%1: Nome non valido%1: Invalid name QLocalSocket.%1: terminazione remota%1: Remote closed QLocalSocket>%1: Errore di accesso al socket%1: Socket access error QLocalSocketV%1: l'operazione di socket non supportata)%1: The socket operation is not supported QLocalSocket2%1: Errore sconosciuto %2%1: Unknown error %2 QLocalSocketFImpossibile iniziare la transazioneUnable to begin transaction QMYSQLDriverdImpossibile effettuare il commit della transazioneUnable to commit transaction QMYSQLDriver.Impossibile connettersiUnable to connect QMYSQLDriver@Impossibile aprire il database 'Unable to open database ' QMYSQLDriverhImpossibile effettuare il rollback della transazioneUnable to rollback transaction QMYSQLDriver>Impossibile associare il valoreUnable to bind value QMYSQLResultPImpossibile eseguire la query successivaUnable to execute next query QMYSQLResult:Impossibile eseguire la queryUnable to execute query QMYSQLResultBImpossibile eseguire l'istruzioneUnable to execute statement QMYSQLResult6Impossibile ottenere i datiUnable to fetch data QMYSQLResultDImpossibile preparare l'istruzioneUnable to prepare statement QMYSQLResultJImpossibile ripristinare l'istruzioneUnable to reset statement QMYSQLResult^Impossibile memorizzare il risultato successivoUnable to store next result QMYSQLResultFImpossibile memorizzare i risultatiUnable to store result QMYSQLResult(Senza titolo) (Untitled)QMdiArea%1 - [%2] %1 - [%2] QMdiSubWindow&Chiudi&Close QMdiSubWindowS&posta&Move QMdiSubWindow&Ripristina&Restore QMdiSubWindowDimen&sione&Size QMdiSubWindow - [%1]- [%1] QMdiSubWindow ChiudiClose QMdiSubWindow AiutoHelp QMdiSubWindowMassimi&zza Ma&ximize QMdiSubWindowMassimizzaMaximize QMdiSubWindowMenuMenu QMdiSubWindowMi&nimizza Mi&nimize QMdiSubWindowMinizzaMinimize QMdiSubWindowRipristinaRestore QMdiSubWindow&Ripristina in basso Restore Down QMdiSubWindow,Sempre in &primo piano Stay on &Top QMdiSubWindow ChiudiCloseQMenu EseguiExecuteQMenuApriOpenQMenuB<p>Questo programma utilizza la versione Qt Open Source Edition %1.</p><p>Qt Open Source Edition destinata allo sviluppo di applicazioni Open Source. Per lo sviluppo di applicazioni proprietarie (sorgente chiuso) necessario disporre di una licenza Qt commerciale.</p><p>Vedere <a href="http://www.trolltech.com/company/model/">www.trolltech.com/company/model/</a> per una panoramica del sistema di licenze Qt.</p>|

This program uses Qt Open Source Edition version %1.

Qt Open Source Edition is intended for the development of Open Source applications. You need a commercial Qt license for development of proprietary (closed source) applications.

Please see www.trolltech.com/company/model/ for an overview of Qt licensing.

 QMessageBoxl<p>Questo programma utilizza la versione %1 di Qt.</p>'

This program uses Qt version %1.

 QMessageBox$Informazioni su QtAbout Qt QMessageBox AiutoHelp QMessageBox(Nascondi dettagli...Hide Details... QMessageBoxOK QMessageBox$Mostra dettagli...Show Details... QMessageBoxSeleziona IM Select IMQMultiInputContextfUn altro socket gi in ascolto sulla stessa porta4Another socket is already listening on the same portQNativeSocketEngine*Connessione rifiutataConnection refusedQNativeSocketEngine>Connessione fuori tempo massimoConnection timed outQNativeSocketEngineHDatagramma troppo grande per l'invioDatagram was too large to sendQNativeSocketEngine,Host non raggiungibileHost unreachableQNativeSocketEngine@Descrittore di socket non validoInvalid socket descriptorQNativeSocketEngineErrore di rete Network errorQNativeSocketEngineLOperazione di rete fuori tempo massimoNetwork operation timed outQNativeSocketEngine,Rete non raggiungibileNetwork unreachableQNativeSocketEngine*Risorse insufficientiOut of resourcesQNativeSocketEnginePermesso negatoPermission deniedQNativeSocketEngineBTipo di protocollo non supportatoProtocol type not supportedQNativeSocketEngine:L'indirizzo non disponibileThe address is not availableQNativeSocketEngine,L'indirizzo protettoThe address is protectedQNativeSocketEngineLL'indirizzo associato gi utilizzato#The bound address is already in useQNativeSocketEngineRL'host remoto ha terminato la connessione%The remote host closed the connectionQNativeSocketEngineBImpossibile ricevere un messaggioUnable to receive a messageQNativeSocketEngine@Impossibile inviare un messaggioUnable to send a messageQNativeSocketEngine(Impossibile scrivereUnable to writeQNativeSocketEngine$Errore sconosciuto Unknown errorQNativeSocketEngineFOperazione su socket non supportataUnsupported socket operationQNativeSocketEnginebImpossibile aprire %1: il percorso una cartella#Cannot open %1: Path is a directoryQNetworkAccessFileBackendHErrore in fase di apertura di %1: %2Error opening %1: %2QNetworkAccessFileBackend6Errore di lettura da %1: %2Read error reading from %1: %2QNetworkAccessFileBackendXRichiesta di apertura del file non locale %1%Request for opening non-local file %1QNetworkAccessFileBackendJErrore in fase di scrittura di %1: %2Write error writing to %1: %2QNetworkAccessFileBackendJImpossibile aprire %1: una cartellaCannot open %1: is a directoryQNetworkAccessFtpBackendPErrore durante lo scaricamento di %1: %2Error while downloading %1: %2QNetworkAccessFtpBackend@Errore durante l'invio di %1: %2Error while uploading %1: %2QNetworkAccessFtpBackendErrore durante lo scaricamento di %1 - il server ha risposto: %2)Error downloading %1 - server replied: %2 QNetworkReply@Il protocollo "%1" sconosciutoProtocol "%1" is unknown QNetworkReply(Operazione annullataOperation canceledQNetworkReplyImplFImpossibile iniziare la transazioneUnable to begin transaction QOCIDriver2Impossibile inizializzareUnable to initialize QOCIDriver(Impossibile accedereUnable to logon QOCIDriverhImpossibile effettuare il rollback della transazioneUnable to rollback transaction QOCIDriver>Impossibile associare il valoreUnable to bind value QOCIResult\Impossibile eseguire l'istruzione di selezione"Unable to execute select statement QOCIResultBImpossibile eseguire l'istruzioneUnable to execute statement QOCIResultBImpossible preparare l'istruzioneUnable to prepare statement QOCIResultdImpossibile effettuare il commit della transazioneUnable to commit transaction QODBCDriver.Impossibile connettersiUnable to connect QODBCDriverImpossibile connettersi - Il driver non supporta tutte le funzionalit richiesteCUnable to connect - Driver doesn't support all needed functionality QODBCDriverJImpossibile disabilitare l'autocommitUnable to disable autocommit QODBCDriverDImpossibile abilitare l'autocommitUnable to enable autocommit QODBCDriverhImpossibile effettuare il rollback della transazioneUnable to rollback transaction QODBCDriverQODBCResult::reset: Impossibile impostare 'SQL_CURSOR_STATIC' come attributo dell'istruzione. Controlla la configurazione del driver ODBCyQODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResultDImpossibile associare la variabileUnable to bind variable QODBCResultBImpossibile eseguire l'istruzioneUnable to execute statement QODBCResult>Impossibile recuperare il primoUnable to fetch first QODBCResult>Impossibile recuperare l'ultimoUnable to fetch last QODBCResultHImpossibile recuperare il successivoUnable to fetch next QODBCResultHImpossibile recuperare il precedenteUnable to fetch previous QODBCResultDImpossibile preparare l'istruzioneUnable to prepare statement QODBCResult$URI non valido: %1Invalid URI: %1QObject>Operazione non supportata su %1Operation not supported on %1QObject6Errore di lettura da %1: %2Read error reading from %1: %2QObject:Errore di scrittura su %1: %2Write error writing to %1: %2QObjectNomeNameQPPDOptionsModel ValoreValueQPPDOptionsModelFImpossibile iniziare la transazioneCould not begin transaction QPSQLDriverBImpossibile appliare l'istruzioneCould not commit transaction QPSQLDriverhImpossibile effettuare il rollback della transazioneCould not rollback transaction QPSQLDriver.Impossibile connettersiUnable to connect QPSQLDriver0Impossibile creare queryUnable to create query QPSQLResultCentimetri (cm)Centimeters (cm)QPageSetupWidget ModuloFormQPageSetupWidgetAltezza:Height:QPageSetupWidgetPollici (in) Inches (in)QPageSetupWidgetOrizzontale LandscapeQPageSetupWidgetMarginiMarginsQPageSetupWidgetMillimetri (mm)Millimeters (mm)QPageSetupWidgetOrientamento OrientationQPageSetupWidget$Dimensioni pagina: Page size:QPageSetupWidget CartaPaperQPageSetupWidget(Alimentazione carta: Paper source:QPageSetupWidgetPunti (pt) Points (pt)QPageSetupWidgetVerticalePortraitQPageSetupWidget&Orizzontale inversoReverse landscapeQPageSetupWidget"Verticale inversoReverse portraitQPageSetupWidgetLarghezza:Width:QPageSetupWidget"margine inferiore bottom marginQPageSetupWidget margine sinistro left marginQPageSetupWidgetmargine destro right marginQPageSetupWidget"margine superiore top marginQPageSetupWidgetDL'estensione non stata caricata.The plugin was not loaded. QPluginLoader$Errore sconosciuto Unknown error QPluginLoaderF%1 esiste gi. Vuoi sovrascriverlo?/%1 already exists. Do you want to overwrite it? QPrintDialogT%1 una cartella. Scegli un nome diverso.7%1 is a directory. Please choose a different file name. QPrintDialog&Opzioni << &Options << QPrintDialog&Opzioni >> &Options >> QPrintDialogStam&pa&Print QPrintDialogA0 QPrintDialogA1 QPrintDialogA2 QPrintDialogA3 QPrintDialogA4 QPrintDialogA5 QPrintDialogA6 QPrintDialogA7 QPrintDialogA8 QPrintDialogA9 QPrintDialogAlias: %1 Aliases: %1 QPrintDialogB0 QPrintDialogB1 QPrintDialogB10 QPrintDialogB2 QPrintDialogB3 QPrintDialogB4 QPrintDialogB5 QPrintDialogB6 QPrintDialogB7 QPrintDialogB8 QPrintDialogB9 QPrintDialogC5E QPrintDialogPersonalizzatoCustom QPrintDialogDLE QPrintDialogrIl file %1 non scrivibile. Scegli un nome file diverso.=File %1 is not writable. Please choose a different file name. QPrintDialogLetteraLetter QPrintDialogFile locale Local file QPrintDialog"Stampa su file...Print To File ... QPrintDialog(Stampa su file (PDF)Print to File (PDF) QPrintDialog6Stampa su file (Postscript)Print to File (Postscript) QPrintDialogScrivi %1 file Write %1 file QPrintDialog&connessa localmentelocally connected QPrintDialogsconosciutounknown QPrintDialog ChiudiCloseQPrintPreviewDialogPrima pagina First pageQPrintPreviewDialog$Adatta alla paginaFit pageQPrintPreviewDialog*Adatta alla larghezza Fit widthQPrintPreviewDialogOrizzontale LandscapeQPrintPreviewDialogUltima pagina Last pageQPrintPreviewDialog"Pagina successiva Next pageQPrintPreviewDialog,Impostazioni di pagina Page SetupQPrintPreviewDialog&Impostazioni pagina Page setupQPrintPreviewDialogVerticalePortraitQPrintPreviewDialog"Pagina precedente Previous pageQPrintPreviewDialog StampaPrintQPrintPreviewDialog&Anteprima di stampa Print PreviewQPrintPreviewDialog0Mostra pagine affiancateShow facing pagesQPrintPreviewDialogJMostra l'anteprima di tutte le pagineShow overview of all pagesQPrintPreviewDialog*Mostra pagina singolaShow single pageQPrintPreviewDialogAumenta zoomZoom inQPrintPreviewDialogRiduci zoomZoom outQPrintPreviewDialogAvanzateAdvancedQPrintPropertiesWidget ModuloFormQPrintPropertiesWidget PaginaPageQPrintPropertiesWidgetFascicolaCollateQPrintSettingsOutput ColoreColorQPrintSettingsOutputModalit colore Color ModeQPrintSettingsOutput CopieCopiesQPrintSettingsOutput Copie:Copies:QPrintSettingsOutput&Stampa fronte/retroDuplex PrintingQPrintSettingsOutput ModuloFormQPrintSettingsOutputScala di grigio GrayscaleQPrintSettingsOutputLato lungo Long sideQPrintSettingsOutputNessunaNoneQPrintSettingsOutputOpzioniOptionsQPrintSettingsOutput*Impostazioni d'uscitaOutput SettingsQPrintSettingsOutputPagine da Pages fromQPrintSettingsOutputStampa tutto Print allQPrintSettingsOutput(Intervallo di stampa Print rangeQPrintSettingsOutputInversaReverseQPrintSettingsOutputSelezione SelectionQPrintSettingsOutputLato corto Short sideQPrintSettingsOutputatoQPrintSettingsOutput &Nome:&Name: QPrintWidget...... QPrintWidget ModuloForm QPrintWidgetPosizione: Location: QPrintWidget &File di uscita: Output &file: QPrintWidgetP&ropriet P&roperties QPrintWidgetAnteprimaPreview QPrintWidgetStampantePrinter QPrintWidget Tipo:Type: QPrintWidgetAnnullaCancelQProgressDialogApriOpen QPushButtonSelezionaCheck QRadioButton0valore ottale non validoinvalid octal valueQRegExp<delimitatore sinistro mancantemissing left delimQRegExp@non si verificato alcun erroreno error occurredQRegExpfine inattesaunexpected endQRegExpNErrore in fase di apertura del databaseError to open databaseQSQLite2DriverDImpossibile inizare la transazioneUnable to begin transactionQSQLite2DriverDImpossibile applicare l'istruzioneUnable to commit transactionQSQLite2DriverhImpossibile effettuare il rollback della transazioneUnable to rollback TransactionQSQLite2DriverBImpossibile eseguire l'istruzioneUnable to execute statementQSQLite2Result<Impossibile ottenere risultatiUnable to fetch resultsQSQLite2ResultNErrore in fase di chiusura del databaseError closing database QSQLiteDriverNErrore in fase di apertura del databaseError opening database QSQLiteDriverFImpossibile iniziare la transazioneUnable to begin transaction QSQLiteDriverDImpossibile applicare l'istruzioneUnable to commit transaction QSQLiteDriverhImpossibile effettuare il rollback della transazioneUnable to rollback transaction QSQLiteDriverNessuna queryNo query QSQLiteResultNIl numero dei parametri non corrispondeParameter count mismatch QSQLiteResultBImpossibile associare i parametriUnable to bind parameters QSQLiteResultBImpossibile eseguire l'istruzioneUnable to execute statement QSQLiteResult8Impossibile ottenere la rigaUnable to fetch row QSQLiteResultJImpossibile ripristinare l'istruzioneUnable to reset statement QSQLiteResultIn bassoBottom QScrollBarBordo sinistro Left edge QScrollBarPagina gi Page down QScrollBarPagina sinistra Page left QScrollBarPagina destra Page right QScrollBarPagina suPage up QScrollBarPosizionePosition QScrollBarBordo destro Right edge QScrollBar(Scorrimento in basso Scroll down QScrollBarScorri qui Scroll here QScrollBar,Scorrimento a sinistra Scroll left QScrollBar(Scorrimento a destra Scroll right QScrollBar&Scorrimento in alto Scroll up QScrollBarIn altoTop QScrollBar+ QShortcutAlt QShortcutIndietroBack QShortcut ChiamaCall QShortcutBloc Maiusc Caps Lock QShortcutBlocMaiuscCapsLock QShortcutContesto1Context1 QShortcutContesto2Context2 QShortcutContesto3Context3 QShortcutContesto4Context4 QShortcutCtrl QShortcutCancDel QShortcutCancDelete QShortcutGiDown QShortcutFineEnd QShortcut InvioEnter QShortcutEsc QShortcutEscEscape QShortcutF%1F%1 QShortcutPreferiti Favorites QShortcut AvantiForward QShortcutRiagganciaHangup QShortcut AiutoHelp QShortcutHomeHome QShortcutPagina iniziale Home Page QShortcutIns QShortcutInsInsert QShortcutSinistraLeft QShortcutMenu QShortcutMeta QShortcutNo QShortcutBllocc NumNum Lock QShortcutBlocNumNumLock QShortcut(Blocco tast numerico Number Lock QShortcutApri URLOpen URL QShortcutPag Gi Page Down QShortcut Pag SuPage Up QShortcut PausaPause QShortcut PagGiPgDown QShortcut PagSuPgUp QShortcut StampPrint QShortcutStampa schermo Print Screen QShortcutAggiornaRefresh QShortcut InvioReturn QShortcut DestraRight QShortcutBloc Scorr Scroll Lock QShortcutBlocScorr ScrollLock QShortcut CercaSearch QShortcutSelezionaSelect QShortcut MaiuscShift QShortcut SpazioSpace QShortcut FermaStop QShortcut R sistSysReq QShortcut R sistSystem Request QShortcutTab QShortcutSuUp QShortcutRiduci volume Volume Down QShortcutSilenzia volume Volume Mute QShortcutAumenta volume Volume Up QShortcutSYes QShortcutPagina gi Page downQSliderPagina sinistra Page leftQSliderPagina destra Page rightQSliderPagina suPage upQSliderPosizionePositionQSliderLOperazione di rete fuori tempo massimoNetwork operation timed outQSocks5SocketEnginebConnessione al server Socks5 fuori tempo massimo /Socks5 timeout error connecting to socks serverQSocks5SocketEngineMenoLessQSpinBoxPiMoreQSpinBoxAnnullaCancelQSql.Annullare le modifiche?Cancel your edits?QSqlConfermaConfirmQSqlEliminaDeleteQSql>Eliminare questa registrazione?Delete this record?QSqlInserisciInsertQSqlNoQSql*Salvare le modifiche? Save edits?QSqlAggiornaUpdateQSqlSYesQSqlfImpossibile fornire un certificato senza chiave, %1,Cannot provide a certificate with no key, %1 QSslSocketbErrore in fase di creazione del contesto SSL (%1)Error creating SSL context (%1) QSslSocketdErrore durante la creazione della sessione SSL, %1Error creating SSL session, %1 QSslSocketdErrore durante la creazione della sessione SSL: %1Error creating SSL session: %1 QSslSocketDErrore durante l'handshake SSL: %1Error during SSL handshake: %1 QSslSocket`Errore di caricamento del certificato locale, %1#Error loading local certificate, %1 QSslSocket\Errore di caricamento della chiave privata, %1Error loading private key, %1 QSslSocket:Errore in fase di lettura: %1Error while reading: %1 QSslSocketTLista di cifratura non valida o vuota (%1)!Invalid or empty cipher list (%1) QSslSocketlLa chiave privata non certifica la chiave pubblica, %1/Private key does not certificate public key, %1 QSslSocket>Impossibile scrivere i dati: %1Unable to write data: %1 QSslSocketBImpossibile aprire la connessioneUnable to open connection QTDSDriverDImpossibile utilizzare il databaseUnable to use database QTDSDriver,Scorrimento a sinistra Scroll LeftQTabBar(Scorrimento a destra Scroll RightQTabBar &Copia&Copy QTextControl&Incolla&Paste QTextControl &Rifai&Redo QTextControlA&nnulla&Undo QTextControlBCopia posizione del co&llegamentoCopy &Link Location QTextControl&TagliaCu&t QTextControlEliminaDelete QTextControlSeleziona tutto Select All QTextControlApriOpen QToolButton PremiPress QToolButtonHQuesta piattaforma non supporta IPv6#This platform does not support IPv6 QUdpSocket RifaiRedo QUndoGroupAnnullaUndo QUndoGroup<vuoto> QUndoModel RifaiRedo QUndoStackAnnullaUndo QUndoStack<Impossibile visualizzare l'URLCannot show URL QWebFrameJImpossibile visualizzare il tipo mimeCannot show mimetype QWebFrame$Il file non esisteFile does not exist QWebFramepCaricamento frame interrotto da un cambiamento di regole&Frame load interruped by policy change QWebFrame"Richiest bloccataRequest blocked QWebFrame&Richiesta annullataRequest cancelled QWebFrame %1 (%2x%3 pixel)%1 (%2x%3 pixels)QWebPage,Aggiungi al dizionarioAdd To DictionaryQWebPage2Richiesta HTTP non validaBad HTTP requestQWebPageGrassettoBoldQWebPage(Controlla ortografiaCheck SpellingQWebPageZControlla l'ortografia durante la digitazioneCheck Spelling While TypingQWebPageScegli file Choose FileQWebPage8Cancella le ricerche recentiClear recent searchesQWebPage CopiaCopyQWebPageCopia immagine Copy ImageQWebPage$Copia collegamento Copy LinkQWebPage TagliaCutQWebPagePredefinitaDefaultQWebPageDirezione DirectionQWebPageCaratteriFontsQWebPageIndietroGo BackQWebPage Avanti Go ForwardQWebPage IgnoraIgnoreQWebPage Ignora Ignore Grammar context menu itemIgnoreQWebPageCorsivoItalicQWebPage(Cerca nel dizionarioLook Up In DictionaryQWebPage*Nessuna stima trovataNo Guesses FoundQWebPage.Nessun file selezionatoNo file selectedQWebPage.Nessuna ricerca recenteNo recent searchesQWebPageApri riquadro Open FrameQWebPageApri immagine Open ImageQWebPage"Apri collegamento Open LinkQWebPage4Apri in una nuova finestraOpen in New WindowQWebPageIncollaPasteQWebPage Ricerche recentiRecent searchesQWebPageRicaricaReloadQWebPageRipristinaResetQWebPageSalva immagine Save ImageQWebPage*Salva collegamento... Save Link...QWebPageCerca nel WebSearch The WebQWebPageOrtografiaSpellingQWebPage FermaStopQWebPage InviaSubmitQWebPage InviaQSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPageQuesto l'indice ricercabile. Digita la parola chiave di ricerca: 3This is a searchable index. Enter search keywords: QWebPageSottolineato UnderlineQWebPageSconosciutaUnknownQWebPage*Analizzatore web - %2Web Inspector - %2QWebPage Cos'? What's This?QWhatsThisAction*QWidget &Fine&FinishQWizard Ai&uto&HelpQWizardAva&nti&NextQWizardAva&nti >&Next >QWizard< &Indietro< &BackQWizardAnnullaCancelQWizardApplicaCommitQWizardContinuaContinueQWizardCompletatoDoneQWizardIndietroGo BackQWizard AiutoHelpQWizardEsciQuitQWizard%1 - [%2] %1 - [%2] QWorkspace&Chiudi&Close QWorkspace&Sposta&Move QWorkspace&Ripristina&Restore QWorkspace&Dimensioni&Size QWorkspace&Srotola&Unshade QWorkspace ChiudiClose QWorkspaceMa&ssimizza Ma&ximize QWorkspaceMi&nimizza Mi&nimize QWorkspaceMinimizzaMinimize QWorkspace&Ripristina in basso Restore Down QWorkspace&ArrotolaSh&ade QWorkspace,Sempre in &primo piano Stay on &Top QWorkspaceperrore nella dichiarazione di testo di un'entit esterna3error in the text declaration of an external entityQXmlbriscontrato errore durante l'analisi del commento$error occurred while parsing commentQXmldriscontrato errore durante l'analisi del contenuto$error occurred while parsing contentQXmlriscontrato errore durante l'analisi della definizione del tipo di documento5error occurred while parsing document type definitionQXmldriscontrato errore durante l'analisi dell'elemento$error occurred while parsing elementQXmlhriscontrato errore durante l'analisi dei riferimenti&error occurred while parsing referenceQXml^nome dell'istruzione di elaborazione non valido'invalid name for processing instructionQXmlXpi di una definizione del tipo di documento&more than one document type definitionQXml@non si verificato alcun erroreno error occurredQXml entit ricorsiverecursive entitiesQXml,tag non corrispondente tag mismatchQXml$carattere inattesounexpected characterQXml$fine file inattesaunexpected end of fileQXmlR%1 un identificatore PUBLIC non valido.#%1 is an invalid PUBLIC identifier. QXmlStreamH%1 un nome di codifica non valido.%1 is an invalid encoding name. QXmlStream, ma ricevuto ' , but got ' QXmlStream*Attributo ridefinito.Attribute redefined. QXmlStream>La codifica %1 non supportataEncoding %1 is unsupported QXmlStreamfRiscontrato contenuto non codificato correttamente.(Encountered incorrectly encoded content. QXmlStream6Entit '%1' non dichiarata.Entity '%1' not declared. QXmlStreamAtteso  Expected  QXmlStreamZContenuto aggiuntivo alla fine del documento.!Extra content at end of document. QXmlStream2Carattere XML non valido.Invalid XML character. QXmlStream(Nome XML non valido.Invalid XML name. QXmlStreamFStringa di versione XML non valida.Invalid XML version string. QXmlStreamZAttributo non valido nella dichiarazione XML.%Invalid attribute in XML declaration. QXmlStream*Documento non valido.Invalid document. QXmlStream<Valore dell'entit non valido.Invalid entity value. QXmlStream^Prefisso di spazio dei nomi '%1' non dichiarato"Namespace prefix '%1' not declared QXmlStream<Fine imprevista del documento.Premature end of document. QXmlStream4Rilevata entit ricorsiva.Recursive entity detected. QXmlStreamZSequenza ']]>' non consentita nel contenuto.&Sequence ']]>' not allowed in content. QXmlStream(Atteso tag iniziale.Start tag expected. QXmlStreamInatteso ' Unexpected ' QXmlStream8Versione XML non supportata.Unsupported XML version. QXmlStreamhLa dichiarazione XML non all'inizio del documento.)XML declaration not at start of document. QXmlStream8%1 non pu essere recuperato%1 cannot be retrieved QtXmlPatterns*%1 un %2 non valido%1 is an invalid %2 QtXmlPatterns@Un commento non pu contenere %1A comment cannot contain %1 QtXmlPatternsRUn commentio non pu terminare con un %1.A comment cannot end with a %1. QtXmlPatterns Timeout di rete.Network timeout. QtXmlPatternsdNon disponibile alcuna variabile con il nome %1.$No function by name %1 is available. QtXmlPatternsTNon esiste alcuna variabile con il nome %1No variable by name %1 exists QtXmlPatterns<La variabile %1 inutilizzataThe variable %1 is unused QtXmlPatterns vuotoempty QtXmlPatternsesattamente uno exactly one QtXmlPatternsuno o pi one or more QtXmlPatternszero o pi zero or more QtXmlPatternszero o uno zero or one QtXmlPatternsSilenziatoMuted VolumeSliderVolume: %1% Volume: %1% VolumeSliderIn bassoBottomWebCore::PlatformScrollbarBordo sinistro Left edgeWebCore::PlatformScrollbarPagina gi Page downWebCore::PlatformScrollbarPagina sinistra Page leftWebCore::PlatformScrollbarPagina destra Page rightWebCore::PlatformScrollbarPagina suPage upWebCore::PlatformScrollbarBordo destro Right edgeWebCore::PlatformScrollbarScorri in basso Scroll downWebCore::PlatformScrollbarScorri qui Scroll hereWebCore::PlatformScrollbar"Scorri a sinistra Scroll leftWebCore::PlatformScrollbarScorri a destra Scroll rightWebCore::PlatformScrollbarScorri in alto Scroll upWebCore::PlatformScrollbarIn altoTopWebCore::PlatformScrollbarqupzilla-1.6.0/bin/locale/qt_ja.qm000066400000000000000000007441131226107126500170370ustar00rootroot00000000000000^Jcb|JKQ'NK_L QLZL(6LQLb.sL^ M5'MbnMeyMVM~M?&N݀NB%O|PPFE?PFEPFE>PCY"Q QR^R|pR̼@RߋSS8^]T~TēTʴ&(T8U?^WU|U}V1rJV1Vl1V[VƮV)hVV)VVE^WJWPWTqWTyWTX~TQX9XøX,X˙/X-Y'YYbY˔YָZ+ZgZkPZZG[;^H[=w[f3[f3\\\]45H\]4\]4A\V\ \\atOBgcwlGz rUN3t>_|^9|^|AcMvv:BԱf)CҖMdlW^4L`E5`.6Cudy)IA8yȾb[36g4!0IN,ԦÉlEyjMXtpDi\D'%]EGRn5ɵnT ɵnɵnɵn ɵnJɵnOɵnɵn6ɵnuHEU B4 BT5ly*8'_a; ~nM\1lNJ adqk<.YpT۔ 4Ig>HM&\B8,!ɤ<Gpe54Z5P#Qk%UT6%UT(Ŏ؜)9j*4P-ctQ-cte. 2f325v.?2A?N?@Ec@VhB!4FRmM+6Nkyh7UiYW~]6`Ud`Rjt"ElgXtlyzl}!oivtyRuvty.MhNo$1߶lk%J"N/ pg.ҸU9ǁ<}44)$ c6>66=OS^; "R^*T`=0pG~.P0ʣ.EE.J/{ =<8A-hτagNn>A[ycLN\QtBfnrU rW"^UMR[mnMYM=EEnw:wo6e^V( Is ڎf9إ 4q>*Ud!e&Q)с*/eѶ*{+H+No6,%,N1EYd6;2;s; i\?4RByi)Ec~CFEIQK~pNjOWZfy\S~\cD\`bzbdcփfRg&4jCcmnq'q Htugu({>K }kaڲ}(R>xZ~Mp_Jy o| >KN$G$F By¼+(u,.ʁyrB ^FK',Lo֊P^7*>jSހ. nW[ ,V.XhnO#._7qP:;yb!ω^aOW-I!-ACn" nD7^a06Hw=I&H&X ,nmV.K/v04r$4!55>8w ?BM C`IxSNhJKLnM6OCR.ER>VXE%*YMYM'^a^dK0mh^A iEDnpnnrXssc1%s^Vw?xۇ/^(2WL"%.Nr:ۊP[atf;T4NL]]C&t~wI,zI:I:IIYI7IܞI<*(ZjQpIY#iWySI'[uD$uD;DZxfr[NPg]VmH0._>q.%ɘe˓*5$2U 48IfR0efRRG>T*ӰVN<DU_Fh9YNONղQ~cCfgBSPq`VVfR|T (]kݛ{U I x Q =^[!AoarbP lq"o$$%CA=&~&!)2J)N+ou,p53588E;_ov?"k?>u$o?%,FuqKNK-GMN>SO>bR0U5V|F]]eqg^ky^>{ylw?78Jihp5tȪ5t+F!:Ξr8 RglG%TnnnyصKDǥ?T+F+"+\TDz`4nt*{yl%5;/ xAJri9\s@Ͼu%6N%N[:2{ /=C-d;5pUüN2djC^ƨ(ƨ˾Mhgҝz/Ұل)3"iէ?S؊=؊=Z>Uni}fzɎܓ7ܳ"ߺ]Fサf:nfht4롥!`+!~MN^mE^![vDDh   K$~b~bڑo1iP9^Mht `[!%?Ϩ'I()ў+u+3,8t]//r/1z4~E06 8<? 2:A|B>N-DLfEFg6G2Gk^GbٮHULAU?M~jOr՛PѧQRCSn^TAUUU6UUTXa YĻZ>ZZZ ZC[[<|]k*]^nE_P_P]_p{`ud`d`e0ilikQVrm?$oNPxy;{~{}u{}wN}w}w)8}x)Jnhs}1T[p~kz~k~,q~+lTCywr'p~j9z~ir~*~*.BEvt\tyYd..39PiUu>hbOu)k75r~DBPY,^Z tGjtt3Dt7LNM $-nZ6lJK_ a1E+5AUsaȄ0\F C:ʢV`ʢT6ʬ(-ƴSdWd[dNdTdYj0(]59эiX+hNST㵾r< ukyFU;%U!d{f!9o&NNqlip22n]-nڴK<f+E.2ͮ·Q··ý׳:N6O:n5T~%m anL/FfCu,nܯ-ne|ṯqxU~|7XEezȥNuv`SU$ONu,%5Tv<w  e~i~+W9Kobvi9%33Vwb}!#=g#%?%QM%dN'?-.B.S85kE=S=!=?:?b@J@T+lCtIEfNPP'V%V%XU 2Z`nawbDbGffdf,gA8FhIui$MCknuPw!x1 xz*2|h>|QR1dPJJABUic(.mDzǻc.4OC5-^ QSc+r4xXm^  e1n9}b2†56%iCČq~9wUʴ5ʴ5=ʶ>ϡ$ы#D9^ ӞԄAg۔#zDA'N dDAG*F5>F54YYp+>L4N]&D,I/PIpAs," V }$i qe" ڤ1 ڤ ڥ~7 d E EL Y Ac3 Ac  niV * 35: 35 60 ? W| WMNg `Bv b bb b` b`/ d gU{ i3D kky la/l lf6 lY ok qv, qv qzK tNIi u> xqMv |oB ~k |8% | H nm  { J x t39 tK  .P f^ .`- "  ) )F F>h 6 m   le_ G 3   5  Bs3 ҉s; 4Y hZ 4 > > / Ut{ k1 _ ό j b 8} n@ d? N: 9 9>nt V6  u"V  Y+d Y>/ 0 K=|  @ 팤FB Eh l~q %'  MN( (  j> / C  =L qd  D Wc }]2 9( oȜ Ą y .  $ )r */ .> 5 74+ 7uFQ ; _ >!|  v"V` :OC f + f ! z 4 8 . !  s. s ~ AA 9\U 1s P 9" 05 rj { m,5 5a ݡF ! #-t9 #-ty ' 0NK 5g 5\ :  A CU E93q I" L# L\ LG L; Mc\ Ok O]W P..[ R S V WzI X\ Zĺ \Ot ]$U `l c}a f)+ f)d f=w io>HN j l#~ lu m`@ n|nxa w3 xRY yr{ {no }Qp ~Lp > 1` =J H*7 H 5 I f n4 Сh $ .@f  9 ic <@ ? 1 <    0 zd 1 %m( J.: J' N ٹ 01 t.Qg k Ӈ=8 ʆ M{ ;- N>! / ̺ &]y NdH -D . ] xg ۷y r k k/R \ U)c  T>1 <? R L  0: &   . $rj Zw ~aO z+'   O w Iݯ  9Nk %  N' ţ A> L s? xH  I "0  !pb$ $N %6b )ΕsJ .N 2 7FEo <^ =юs >. > >m >P > > >;p >^ > > >m ?t|8 A^9 B~8 DT'n Fn G IJ IN; J> K  K m L MbC P@ s QTx RV- RV9O RVv Rn-t S. SGA S\ T~}~ Y>! Y [ 6 \~ eNr hۮN j7o̠ m( pN sL u v> m B G TTl Tn TOb TX5 a  V S Θ md /.b] , ,% Sn )d9 )d T R^  V .T . . .K .Q . . .6 f a >W OZ .d a7 a/ P y?G # [ e. x% C ' N% t\  hN$ ɾd~ ɾd8 e ̈́^\ >q ҂O Ӵ3 ء" ߢ.  >g %#O u" t % ! |  N b 9 XtH nS 9h )dU t  al X .%  :b Uq@ ^  ʜM fk; f+ f $;\ 3% >t   e $   " #$m #=L %n' '., (I$) (N +>P +kK 0EC 64 ;ɾA Cn` Fg< K9>f Lcn Pt Pt> R"yZ S,d T>) `K c dB fe fe. g 9 gp hQ$# iFCN i i jN j jӮty kGnH l" m9 m94 nS s'~e{ uB uY u v #' v&\ v{  w w* w( w} w}[ w}( yn |[X B u= q q <J hH Jk b  | ^/ % e  < v F $ } i Rm %7~ P7 > xN  "ǯ U ɰeu FEZ r S X1 b Yb &XA x D2 + 1 t5 t5>   ?4 >I , ?! )'  @{$R2;!w>Yq @ah TI<"> 6(<vn1wgTIp} |v!aw&-6*G6*;+n}/EHN/E5/E4Qt7S/IEp:I.I_ K~^NeOOS5&XRu X(Zo[ w[ @a.†a.a%gc֕inyGWlsWrv6̌v<vɅ7/y$y?.EH-)~%>>eA!=4B}NlN-24^fN'64Ly$e~SNá^_5Ǘ'/:ZE.ֺZ5DBE 7_5L3rӮ`YӮ`Ӯ`=JAd֒l0 |Ir JݖmmUZ[yh4|^D!xiruF6jjt# J* T . , 1GlDn&Q"#>"#$U5%4%4'_u*l,--v 0i)0†1c6a1c]2wTqDApF74GH5YJdJuIKnL$.ARW[{ t\1c5c5-c(g3xiCiTւlpXqiiv)JyCB5{`-{~a,~5&^6$ V)&=&@DE`\$tz{s`e)nY:'f[M >,_) n/ͣDžR<-ѽts>b8N2 E2E"~>gdpLqrHr-1kyb֠UЄڔ.:X"'T$s44LnG;zp> J~B}Pjt2LWJ1wdwWU}i~ 0000X0 Close Tab CloseButton  Debugger::JSAgentWatchData[MRw %1][Array of length %1]Debugger::JSAgentWatchData uO<000! Fake error! FakeReply q!R0jURL Invalid URL FakeReply%1 0k0d0D0fAbout %1MAC_APPLICATION_MENU %100YHide %1MAC_APPLICATION_MENU 0{0K00Y Hide OthersMAC_APPLICATION_MENUtX-[...Preferences...MAC_APPLICATION_MENU %1 0}BNQuit %1MAC_APPLICATION_MENU0000ServicesMAC_APPLICATION_MENU 0Y0y0f0hy:Show AllMAC_APPLICATION_MENU 0000R AccessibilityPhonon::000000000 CommunicationPhonon::000GamesPhonon::i}MusicPhonon::w NotificationsPhonon::Ru;VideoPhonon::<html>000D00000000_0000K0S0n00000u(0kc[0U00f0D0000000000 <b>%1</b> 0Ou(0W0~0Y0</html>Switching to the audio playback device %1
which has higher preference or is specifically configured for this stream.Phonon::AudioOutput<html>000D00000000_000000000000 <b>%1</b> 0LOu(S0h0j0c0_0n0g0Ou(0W0~0Y0</html>xSwitching to the audio playback device %1
which just became available and has higher preference.Phonon::AudioOutput|<html>00000Qu0000<b>%1</b>0LRO\0W0~0[00<br/><b>%2</b>0Ou(0W0~0Y0</html>^The audio playback device %1 does not work.
Falling back to %2.Phonon::AudioOutput0000 '%1' 0kb;0YRevert back to device '%1'Phonon::AudioOutputnfTJ: GStreamer plugin 0L0000000U00f0D0~0[000Y0y0f0nX0Ru;j_0oOu(0g0M0~0[0~Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabledPhonon::Gstreamer::Backend~fTJ: gstreamer0.10-plugins-good 0L0000000U00f0D0~0[00^~0d0K0nRu;j_0oOu(0g0M0~0[00Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled.Phonon::Gstreamer::Backend|_ʼn0j000000L00d0K00~0[000S0n000000Qu0Y00_00k0o0NN 0n0000000000000Y0_ʼn0L0B00~0Y: %0`A required codec is missing. You need to install the following codec(s) to play this content: %0Phonon::Gstreamer::MediaObjectQu0g0M0~0[00 Gstreamer 0L0000000U00f0D00Kx0W0f0O0`0U0D0 libgstreamer-plugins-base 0o0000000U00f0D0~0Y0K0wCannot start playback. Check your GStreamer installation and make sure you have libgstreamer-plugins-base installed.Phonon::Gstreamer::MediaObjectB000000000Q0~0[00g0W0_00d0K00j0D0K0g*w0n_b_0g0Y0Could not decode media source.Phonon::Gstreamer::MediaObject 00000000L00d0K00~0[00Could not locate media source.Phonon::Gstreamer::MediaObjectX00000000000Q0~0[00g0W0_000000oe0kN0n00000k00Ou(0U00f0D0~0Y0:Could not open audio device. The device is already in use.Phonon::Gstreamer::MediaObject"000000000Q0~0[00g0W0_0Could not open media source.Phonon::Gstreamer::MediaObjectq!R0j0000n_b_0g0Y0Invalid source type.Phonon::Gstreamer::MediaObject8000000000000000k00e/c0LS0Q000~0[00&Missing codec helper script assistant.Phonon::Gstreamer::MediaObject800000000000n0000000kY1eW0W0~0W0_: %0.Plugin codec installation failed for codec: %0Phonon::Gstreamer::MediaObject00000g0M0~0[0 Access denied Phonon::MMFe0k[XW(0W0~0YAlready exists Phonon::MMF00000QR Audio Output Phonon::MMF<0000000W0O0o00000000000LQu0g0M0~0[00g0W0_-Audio or video components could not be played Phonon::MMF00000QR000Audio output error Phonon::MMFc}0g0M0~0[00g0W0_Could not connect Phonon::MMF DRM000 DRM error Phonon::MMF0000000 Decoder error Phonon::MMFRe0U00~0W0_ Disconnected Phonon::MMFOu(N-In use Phonon::MMF^/W^E0L00~0[0Insufficient bandwidth Phonon::MMF q!R0jURL Invalid URL Phonon::MMFq!R0j00000Invalid protocol Phonon::MMF0000000000Multicast error Phonon::MMF0000000nO000Network communication error Phonon::MMF0000000L0d0K00~0[0Network unavailable Phonon::MMF0000o0B00~0[0No error Phonon::MMF0d0K00~0[0 Not found Phonon::MMFnPN  Not ready Phonon::MMF00000U00f0D0~0[0 Not supported Phonon::MMF0000L00~0[0 Out of memory Phonon::MMF0000000Overflow Phonon::MMF000L0d0K00~0[0Path not found Phonon::MMF1S0U00f0D0~0[0Permission denied Phonon::MMF000000000n000Proxy server error Phonon::MMF(000000000o00000U00f0D0~0[0Proxy server not supported Phonon::MMF 0000nfTJ Server alert Phonon::MMF&00000000o00000U00f0D0~0[0Streaming not supported Phonon::MMF00000QR0000The audio output device Phonon::MMF0000000 Underflow Phonon::MMFg*w0n000 (%1)Unknown error (%1) Phonon::MMF000QR000Video output error Phonon::MMF000000000Download error Phonon::MMF::AbstractMediaPlayer*URL 0n0000fB0k0000Lvzu0W0~0W0_Error opening URL Phonon::MMF::AbstractMediaPlayer*00000n0000fB0k0000Lvzu0W0~0W0_Error opening file Phonon::MMF::AbstractMediaPlayer*00000n0000fB0k0000Lvzu0W0~0W0_Error opening resource Phonon::MMF::AbstractMediaPlayerL0000n0000fB0k0000Lvzu0W0~0W0_: 00000L00000U00f0D0~0[0)Error opening source: resource not opened Phonon::MMF::AbstractMediaPlayer00000n0000kY1eW0W0~0W0_Loading clip failed Phonon::MMF::AbstractMediaPlayerQu0nnP0L0g0M0f0D0~0[0Not ready to play Phonon::MMF::AbstractMediaPlayerQu0L}BN0W0~0W0_Playback complete Phonon::MMF::AbstractMediaPlayer000000n-[0kY1eW0W0~0W0_Setting volume failed Phonon::MMF::AbstractMediaPlayerQuOMn0nS_0kY1eW0W0~0W0_Getting position failed Phonon::MMF::AbstractVideoPlayer 00000n00000kY1eW0W0~0W0_Opening clip failed Phonon::MMF::AbstractVideoPlayerNfBP\kb0kY1eW0W0~0W0_ Pause failed Phonon::MMF::AbstractVideoPlayer0000kY1eW0W0~0W0_ Seek failed Phonon::MMF::AbstractVideoPlayer %1 Hz%1 HzPhonon::MMF::AudioEqualizerQuOMn0nS_0kY1eW0W0~0W0_Getting position failedPhonon::MMF::AudioPlayer000hy:0n000Video display errorPhonon::MMF::DsaVideoPlayer1SEnabledPhonon::MMF::EffectFactoryThlnps (%)Decay HF ratio (%) Phonon::MMF::EnvironmentalReverbnpfB (ms)Decay time (ms) Phonon::MMF::EnvironmentalReverb [^ (%) Density (%) Phonon::MMF::EnvironmentalReverbbec^ (%) Diffusion (%) Phonon::MMF::EnvironmentalReverbS\E^ (ms)Reflections delay (ms) Phonon::MMF::EnvironmentalReverbS\000 (mB)Reflections level (mB) Phonon::MMF::EnvironmentalReverb0000֐E^ (ms)Reverb delay (ms) Phonon::MMF::EnvironmentalReverb0000 000 (mB)Reverb level (mB) Phonon::MMF::EnvironmentalReverbThl[Q000 Room HF level Phonon::MMF::EnvironmentalReverb[Q000 (mB)Room level (mB) Phonon::MMF::EnvironmentalReverbF0000n0000fB0k0000Lvzu0W0~0W0_: 00000n0000LN f0g0Y8Error opening source: media type could not be determinedPhonon::MMF::MediaObjectF0000n0000fB0k0000Lvzu0W0~0W0_: 00000LW'~.0U00f0D0~0Y,Error opening source: resource is compressedPhonon::MMF::MediaObject>0000n0000fB0k0000Lvzu0W0~0W0_: N kc0j00000g0Y(Error opening source: resource not validPhonon::MMF::MediaObjectR0000n0000fB0k0000Lvzu0W0~0W0_: 0000o00000U00f0D0j0D0000g0Y(Error opening source: type not supportedPhonon::MMF::MediaObject&lB0U00_IAP0n0000kY1eW0W0~0W0_Failed to set requested IAPPhonon::MMF::MediaObject000 (%) Level (%)Phonon::MMF::StereoWidening000hy:0n000Video display errorPhonon::MMF::SurfaceVideoPlayer0000MutedPhonon::VolumeSliderN00000u(0D0f0et0W0f0O0`0U0D0]z0L0%0g0Y0Sz0L%1%0k0j00~0YWUse this slider to adjust the volume. The leftmost position is 0%. The rightmost is %1%Phonon::VolumeSlider: %1% Volume: %1%Phonon::VolumeSlider"%1, %2 0o[0U00f0D0~0[0%1, %2 not definedQ3Accelff'0j %1 0obq0H0~0[0Ambiguous %1 not handledQ3AccelRJdDelete Q3DataTableP}False Q3DataTablec?QeInsert Q3DataTablewTrue Q3DataTable 000000Update Q3DataTableJ%1 00000L0d0K00~0[00 000J00s0000T 0x0W0f0O0`0U0D0+%1 File not found. Check path and filename. Q3FileDialog RJd(&D)&Delete Q3FileDialog0D0D0H(&N)&No Q3FileDialog&OK&OK Q3FileDialog 0O(&O)&Open Q3FileDialogT RM0nY f(&R)&Rename Q3FileDialog O[X(&S)&Save Q3FileDialog000ȉd(&U) &Unsorted Q3FileDialog 0o0D(&Y)&Yes Q3FileDialog2<qt>%1 "%2" 0RJd0W0~0Y0K?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialog0Y0y0f0n0000(*) All Files (*) Q3FileDialog0Y0y0f0n0000(*.*)All Files (*.*) Q3FileDialog\^`' Attributes Q3FileDialogb;0Back Q3FileDialog 00000Cancel Q3FileDialog000000000~0_0oyRCopy or Move a File Q3FileDialoge0W0D00000nO\bCreate New Folder Q3FileDialogeNDate Q3FileDialog %1 0nRJd Delete %1 Q3FileDialogs}0hy: Detail View Q3FileDialog 000000Dir Q3FileDialog 000000 Directories Q3FileDialog000000: Directory: Q3FileDialog000Error Q3FileDialog0000File Q3FileDialog0000T (&N): File &name: Q3FileDialog0000000(&T): File &type: Q3FileDialog0000000ni}"Find Directory Q3FileDialog 0000N S Inaccessible Q3FileDialogNhy: List View Q3FileDialogi}"0Y0X4b@(&I): Look &in: Q3FileDialogT RMName Q3FileDialoge0W0D0000 New Folder Q3FileDialoge0W0D0000 %1 New Folder %1 Q3FileDialoge0W0D00001 New Folder 1 Q3FileDialog10dN 0n0000000xyROne directory up Q3FileDialog0OOpen Q3FileDialog0OOpen  Q3FileDialog00000nQ[0n00000Preview File Contents Q3FileDialog0000`X10n00000Preview File Info Q3FileDialog0000(&E)R&eload Q3FileDialog 0S0\u( Read-only Q3FileDialog00/f0M0 Read-write Q3FileDialog00: %1Read: %1 Q3FileDialogT RM0N0Q0fO[XSave As Q3FileDialog0000000xbSelect a Directory Q3FileDialog0W00000nhy:(&H)Show &hidden files Q3FileDialog000Size Q3FileDialog000Sort Q3FileDialogeNؘ0k000(&D) Sort by &Date Q3FileDialogT RM0k000(&N) Sort by &Name Q3FileDialog0000k000(&S) Sort by &Size Q3FileDialog 00000Special Q3FileDialog"0000000x0n000000000Symlink to Directory Q3FileDialog00000x0n000000000Symlink to File Q3FileDialog(0000000000x0n000000000Symlink to Special Q3FileDialog000Type Q3FileDialog f0M0\u( Write-only Q3FileDialogf0M0: %1 Write: %1 Q3FileDialog 000000 the directory Q3FileDialog0000the file Q3FileDialog000000000 the symlink Q3FileDialog(0000000O\b0g0M0~0[00g0W0_ %1Could not create directory %1 Q3LocalFs0Q0~0[00g0W0_ %1Could not open %1 Q3LocalFs(0000000000~0[00g0W0_ %1Could not read directory %1 Q3LocalFs600000~0_0o0000000RJd0g0M0~0[00g0W0_ %1%Could not remove file or directory %1 Q3LocalFs.T RM0Y f0g0M0~0[00g0W0_ %1 0 %2 0xCould not rename %1 to %2 Q3LocalFsf0M00~0[00g0W0_ %1Could not write %1 Q3LocalFs000000... Customize... Q3MainWindowetRLine up Q3MainWindow"dO\0L0000k00c0fP\kb0U00~0W0_Operation stopped by the userQ3NetworkProtocol 00000CancelQ3ProgressDialogiu(Apply Q3TabDialog 00000Cancel Q3TabDialog 00000Defaults Q3TabDialog000Help Q3TabDialogOKOK Q3TabDialog000(&C)&Copy Q3TextEdit0N0Q(&P)&Paste Q3TextEdit00v0Y(&R)&Redo Q3TextEditQC0kb;0Y(&U)&Undo Q3TextEditmSClear Q3TextEditR0S0(&T)Cu&t Q3TextEdit 0Y0y0f0xb Select All Q3TextEdit0X0Close Q3TitleBar0000000X0~0YCloses the window Q3TitleBar&000000dO\0Y000000T+00~0Y*Contains commands to manipulate the window Q3TitleBar@000000nT RM0h0000000dO\0Y00000000hy:0W0~0YFDisplays the name of the window and contains controls to manipulate it Q3TitleBar"00000000000000k0W0~0YMakes the window full screen Q3TitleBargY'SMaximize Q3TitleBarg\SMinimize Q3TitleBar0000000W0~0YMoves the window out of the way Q3TitleBar,gY'S0U00_000000QC0n0000kb;0W0~0Y&Puts a maximized window back to normal Q3TitleBar,g\S0U00_000000QC0n0000kb;0W0~0Y&Puts a minimized window back to normal Q3TitleBarQC0kb;0Y Restore down Q3TitleBarQC0kb;0Y Restore up Q3TitleBar0000System Q3TitleBar 0]0nN...More... Q3ToolBar(N f) (unknown) Q3UrlOperatorZ00000 '%1' 0o00000~0_0o0000000n0000~0_0oyR000000W0f0D0~0[0IThe protocol `%1' does not support copying or moving files or directories Q3UrlOperatorF00000 '%1' 0oe0W0D0000000nO\b000000W0f0D0~0[0;The protocol `%1' does not support creating new directories Q3UrlOperator<00000 '%1' 0o00000nS_000000W0f0D0~0[00The protocol `%1' does not support getting files Q3UrlOperatorH00000 '%1' 0o0000000n000000000000W0f0D0~0[06The protocol `%1' does not support listing directories Q3UrlOperator<00000 '%1' 0o00000nO000000W0f0D0~0[00The protocol `%1' does not support putting files Q3UrlOperatorN00000 '%1' 0o00000~0_0o0000000nRJd000000W0f0D0~0[0@The protocol `%1' does not support removing files or directories Q3UrlOperatorT00000 '%1' 0o00000~0_0o0000000nT RM0nY f000000W0f0D0~0[0@The protocol `%1' does not support renaming files or directories Q3UrlOperator.00000 '%1' 0o00000U00f0D0~0[0"The protocol `%1' is not supported Q3UrlOperator00000(&C)&CancelQ3Wizard [N(&F)&FinishQ3Wizard000(&H)&HelpQ3Wizardk!0x(&N) >&Next >Q3Wizard< b;0(&B)< &BackQ3Wizardc}0LbT&0U00~0W0_Connection refusedQAbstractSocketc}0L0000000W0~0W0_Connection timed outQAbstractSocket0000L0d0K00~0[0Host not foundQAbstractSocket0000000xR0T0g0M0~0[0Network unreachableQAbstractSocket00S0n00000x0n0S0ndO\0o00000U00f0D0~0[0$Operation on socket is not supportedQAbstractSocket00000Lc}0U00f0D0~0[0Socket is not connectedQAbstractSocket"0000dO\0L0000000W0~0W0_Socket operation timed outQAbstractSocket0Y0y0f0xb(&S) &Select AllQAbstractSpinBox N (&S)&Step upQAbstractSpinBox N (&D) Step &downQAbstractSpinBoxxbCheckQAccessibleButtonb0YPressQAccessibleButtonxbdUncheckQAccessibleButton 000000kActivate QApplication"000000000000000k0Y0#Activates the program's main window QApplicationX[LS0000 '%1' 0k0o Qt %2 0L_ʼn0g0Y0Qt %3 0L0d0K00~0W0_0,Executable '%1' requires Qt %2, found Qt %3. QApplication Nc`'0n0j0DQt00000000Incompatible Qt Library Error QApplicationLTRQT_LAYOUT_DIRECTION QApplication00000(&C)&Cancel QAxSelectCOM 000000(&O): COM &Object: QAxSelectOKOK QAxSelect&ActiveX Control 0xbSelect ActiveX Control QAxSelectxbCheck QCheckBoxS͎Toggle QCheckBoxxbdUncheck QCheckBox00000000kR(&A)&Add to Custom Colors QColorDialogWg,v0j000(&B) &Basic colors QColorDialog0000000(&C)&Custom colors QColorDialog }(&G):&Green: QColorDialog d(&R):&Red: QColorDialog_i^(&S):&Sat: QColorDialogf^(&V):&Val: QColorDialog00000000(&L):A&lpha channel: QColorDialog R(&U):Bl&ue: QColorDialogrv(&E):Hu&e: QColorDialogr Select Color QColorDialog0X0Close QComboBoxP}False QComboBox0OOpen QComboBoxwTrue QComboBox%1: e0k[XW(0W0~0Y%1: already existsQCoreApplication%1: [XW(0W0~0[0%1: does not existQCoreApplication %1: fork 0kY1eW0W0~0W0_%1: ftok failedQCoreApplication%1: 000Lzz0g0Y%1: key is emptyQCoreApplication%1: 0000N 0g0Y%1: out of resourcesQCoreApplication%1: 1S0U00f0D0~0[0%1: permission deniedQCoreApplication%1: 000O\b0g0M0~0[0%1: unable to make keyQCoreApplication%1: g*w0n000 %2%1: unknown error %2QCoreApplication$00000000000000g0M0~0[0Unable to commit transaction QDB2Driverc}0g0M0~0[0Unable to connect QDB2Driver(0000000000000000g0M0~0[0Unable to rollback transaction QDB2Driver00000000-[0g0M0~0[0Unable to set autocommit QDB2DriverY ep000000g0M0~0[0Unable to bind variable QDB2Result00000000[L0g0M0~0[0Unable to execute statement QDB2Result"gR0n0000000000g0M0~0[0Unable to fetch first QDB2Result k!0n0000000000g0M0~0[0Unable to fetch next QDB2Result$0000 %1 000000g0M0~0[0Unable to fetch record %1 QDB2Result"000000000000O0H0~0[0Unable to prepare statement QDB2ResultAMAM QDateTimeEditPMPM QDateTimeEditamam QDateTimeEditpmpm QDateTimeEdit$Animation 0oba0000g0YAnimation is an abstract classQDeclarativeAbstractAnimation:[XW(0W0j0D00000 "%1" 0o00000000g0M0~0[0)Cannot animate non-existent property "%1"QDeclarativeAbstractAnimation:\u(0n00000 "%1" 0o00000000g0M0~0[0&Cannot animate read-only property "%1"QDeclarativeAbstractAnimation.0nP$0o0000000fB0h0W0f-[0g0M0~0[0Cannot set a duration of < 0QDeclarativeAnchorAnimationpbaseline 00000 top, bottom, vcenter 00000h}D0T00[00S0h0o0g0M0~0[00SBaseline anchor cannot be used in conjunction with top, bottom, or vcenter anchors.QDeclarativeAnchors8j*eT0n0000K0~&eT0n0000x0o00000g0M0~0[003Cannot anchor a horizontal edge to a vertical edge.QDeclarativeAnchors8~&eT0n0000K0j*eT0n0000x0o00000g0M0~0[003Cannot anchor a vertical edge to a horizontal edge.QDeclarativeAnchors Rꎫ0x0o00000g0M0~0[00Cannot anchor item to self.QDeclarativeAnchors zz0n} 0k0o00000g0M0~0[00Cannot anchor to a null item.QDeclarativeAnchors.0g0QD_0g00j0D} 0k0o00000g0M0~0[008Cannot anchor to an item that isn't a parent or sibling.QDeclarativeAnchorsXleft, right, hcenter 0n0i0n00000Ou(0W0f0D00KP[0g0M0~0[000Cannot specify left, right, and hcenter anchors.QDeclarativeAnchorsXtop, bottom, vcenter 0n0i0n00000Ou(0W0f0D00KP[0g0M0~0[000Cannot specify top, bottom, and vcenter anchors.QDeclarativeAnchors<centerIn 0k00c0f00000n0000Lvzu0W0f0D0~0Y0*Possible anchor loop detected on centerIn.QDeclarativeAnchors4fill 0k00c0f00000n0000Lvzu0W0f0D0~0Y0&Possible anchor loop detected on fill.QDeclarativeAnchors:j*eT0n00000k00c0f00000n0000Lvzu0W0f0D0~0Y03Possible anchor loop detected on horizontal anchor.QDeclarativeAnchors:~&eT0n00000k00c0f00000n0000Lvzu0W0f0D0~0Y01Possible anchor loop detected on vertical anchor.QDeclarativeAnchors<Qt 0o QMovie 0n00000Y0W0f0000U00f0D0~0Y'Qt was built without support for QMovieQDeclarativeAnimatedImage(Application 0oba0000g0Y Application is an abstract classQDeclarativeApplicationBBehavior 0xRr0_S0f000_00000000oY f0g0M0~0[003Cannot change the animation assigned to a Behavior.QDeclarativeBehavior@00000 "%1" 0x0n00000000k0000Lvzu0W0f0D0~0Y'Binding loop detected for property "%1"QDeclarativeBinding@00000 "%1" 0x0n00000000k0000Lvzu0W0f0D0~0Y'Binding loop detected for property "%1"QDeclarativeCompiledBindings("%1" 0o "%2" 0dO\0g0M0~0[0"%1" cannot operate on "%2"QDeclarativeCompilerJ00000000n000000nUOL0k00 "%1.%2" 0oR)u(0g0M0~0[005"%1.%2" is not available due to component versioning.QDeclarativeCompiler8%3 %4.%5 0g "%1.%2" 0oR)u(0g0M0~0[00%"%1.%2" is not available in %3 %4.%5.QDeclarativeCompiler400000000000L000000nXuL00H0f0D0~0Y#Alias property exceeds alias boundsQDeclarativeCompiler000000U00_000000o0S0S0g0oR)u(0g0M0~0[0'Attached properties cannot be used hereQDeclarativeCompiler:0000x0oN0d0n00000000n0Rr0_S0f00S0h0L0g0M0~0Y$Can only assign one binding to listsQDeclarativeCompiler60000S0U00_000000kvcP$0Rr0_S0f0g0M0~0[04Cannot assign a value directly to a grouped propertyQDeclarativeCompiler@P$0o00000kRr0_S0f0g0M0~0[0(0_0`0W0000000od0M0~0Y)@Cannot assign a value to a signal (expecting a script to be run)QDeclarativeCompiler2ep0nP$000000000000kRr0_S0f0g0M0~0[02Cannot assign multiple values to a script propertyQDeclarativeCompiler,ep0nP$0SXep000000kRr0_S0f0g0M0~0[04Cannot assign multiple values to a singular propertyQDeclarativeCompiler(00000000000kRr0_S0f0g0M0~0[0Cannot assign object to listQDeclarativeCompiler,0000000000000kRr0_S0f0g0M0~0[0 Cannot assign object to propertyQDeclarativeCompiler(00000000000kRr0_S0f0g0M0~0[0!Cannot assign primitives to listsQDeclarativeCompiler4[XW(0W0j0D00000000000x0oRr0_S0f0g0M0~0[0.Cannot assign to non-existent default propertyQDeclarativeCompiler6[XW(0W0j0D00000 "%1" 0x0oRr0_S0f0g0M0~0[0+Cannot assign to non-existent property "%1"QDeclarativeCompiler,Ni0Lzz0g0B000000000oO\b0g0M0~0[0+Cannot create empty component specificationQDeclarativeCompiler(FINAL 000000oN f0M0g0M0~0[0Cannot override FINAL propertyQDeclarativeCompiler>0000000ȉ} 0k ID NY0n000000LT+0~00f0D0~0[0;Component elements may not contain properties other than idQDeclarativeCompiler800000000000000ke0W0Dep0[0g0M0~0[00/Component objects cannot declare new functions.QDeclarativeCompiler>00000000000000ke0W0D000000[0g0M0~0[000Component objects cannot declare new properties.QDeclarativeCompiler<00000000000000ke0W0D00000[0g0M0~0[00-Component objects cannot declare new signals.QDeclarativeCompiler$00000000000L͉0W0f0D0~0YDuplicate default propertyQDeclarativeCompiler00000nT RM0L͉0W0f0D0~0YDuplicate method nameQDeclarativeCompiler 000000nT RM0L͉0W0f0D0~0YDuplicate property nameQDeclarativeCompiler00000nT RM0L͉0W0f0D0~0YDuplicate signal nameQDeclarativeCompiler} 0LO\b0g0M0~0[00Element is not creatable.QDeclarativeCompiler000000nP$0Lzz0g0YEmpty property assignmentQDeclarativeCompiler00000x0nRr0_S0f0Lzz0g0YEmpty signal assignmentQDeclarativeCompilerLID 0o000000j JavaScript 0n000000N kc0k0W0f0D0~0Y-ID illegally masks global JavaScript propertyQDeclarativeCompiler(ID 0Y'e[W0K0Y000S0h0o0g0M0~0[0)IDs cannot start with an uppercase letterQDeclarativeCompiler4ID 0k0oep[W0J00s00000000n0Ou(0g0M0~0Y7IDs must contain only letters, numbers, and underscoresQDeclarativeCompiler2ID 0o[W00W0O0o00000000gY00f0O0`0U0D*IDs must start with a letter or underscoreQDeclarativeCompiler00000nT RM0Lq!R0g0YIllegal method nameQDeclarativeCompiler000000nT RM0Lq!R0g0YIllegal property nameQDeclarativeCompiler00000nT RM0Lq!R0g0YIllegal signal nameQDeclarativeCompiler*Ni0hup0j000000LRr0_S0f000f0D0~0Y'Incorrectly specified signal assignmentQDeclarativeCompilerq!R0j000000n00Invalid alias locationQDeclarativeCompilerq!R0j000000nSqg0g0Y0000000nSqgQH0o <ID>, <ID>.<00000> 00W0O0o <ID>..<00000> 0n0D0Z00K0g0j0O0f0o0D0Q0~0[0zInvalid alias reference. An alias reference must be specified as , . or ..QDeclarativeCompiler000000 import 0Y00k0oT RMzz0nc[0L_ʼn0g0Y"Script import requires a qualifierQDeclarativeParser ie000 Syntax errorQDeclarativeParser00000LLg+0g0X0f0D0~0[0Unclosed comment at end of fileQDeclarativeParsere[WR0LLg+0g0X0f0D0~0[0Unclosed string at end of lineQDeclarativeParser Ng0W0j0D000000nW0nO[P!Unexpected property type modifierQDeclarativeParser"'%1' 0oNg0W0j0D00000g0YUnexpected token `%1'QDeclarativeParser4kchs0n00000000000000L0X0f0D0~0[02Unterminated regular expression backslash sequenceQDeclarativeParser$kchs0ne[W0000L0X0f0D0~0[0%Unterminated regular expression classQDeclarativeParser kchs00000L0X0f0D0~0[0'Unterminated regular expression literalQDeclarativeParser.0nP$0o0000000fB0h0W0f-[0g0M0~0[0Cannot set a duration of < 0QDeclarativePauseAnimation0Q0~0[00g0W0_: %1Cannot open: %1QDeclarativePixmap00000N-0k0000Lvzu0W0~0W0_: %1: %2Error decoding: %1: %2QDeclarativePixmap20000000K00nu;P0nS_0kY1eW0W0~0W0_: %1%Failed to get image from provider: %1QDeclarativePixmap.0nP$0o0000000fB0h0W0f-[0g0M0~0[0Cannot set a duration of < 0QDeclarativePropertyAnimation6[XW(0W0j0D00000 "%1" 0x0oRr0_S0f0g0M0~0[0+Cannot assign to non-existent property "%1"QDeclarativePropertyChanges6\u(0n00000 "%1" 0x0oRr0_S0f0g0M0~0[0(Cannot assign to read-only property "%1"QDeclarativePropertyChangesVPropertyChanges 0oraKryg 0n0000000nO\b000000W0f0D0~0[00APropertyChanges does not support creating state-specific objects.QDeclarativePropertyChanges00000000000n0000000O\b0g0M0~0[0%Could not instantiate cursor delegateQDeclarativeTextInput$0000000000L0000g0M0~0[0Could not load cursor delegateQDeclarativeTextInput %1 %2%1 %2QDeclarativeTypeLoader2T RMzz %1 0W0h0W0fOu(0Y00S0h0o0g0M0~0[0%Namespace %1 cannot be used as a typeQDeclarativeTypeLoader"00000 %1 0LR)u(0g0M0~0[0Script %1 unavailableQDeclarativeTypeLoaderW %1 0LR)u(0g0M0~0[0Type %1 unavailableQDeclarativeTypeLoaderD0000000000000000 %1 0kRr0_S0f00S0h0o0g0M0~0[0-Cannot assign an object to signal property %1QDeclarativeVMED000000000000000000000kRr0_S0f00S0h0o0g0M0~0[0*Cannot assign object to interface propertyQDeclarativeVME000000000000kRr0_S0f00S0h0o0g0M0~0[0Cannot assign object to listQDeclarativeVMED0000000000nq!0DW %1 0n0000000oRr0_S0f0g0M0~0[03Cannot assign object type %1 with no default methodQDeclarativeVME200000 %2 0xP$ %1 0Rr0_S0f0g0M0~0[0%Cannot assign value %1 to property %2QDeclarativeVMENW0nT00j0D00000h0000(%1 %vs %2)0c}0Y00S0h0o0g0M0~0[00Cannot connect mismatched signal/slot %1 %vs. %2QDeclarativeVME.%1 0n000000Lzz0n0_0P$0NQe0g0M0~0[0)Cannot set properties on %1 as it is nullQDeclarativeVME*00000U00_0000000O\b0g0M0~0[0 Unable to create attached objectQDeclarativeVME(W %1 0n0000000O\b0g0M0~0[0"Unable to create object of type %1QDeclarativeVME@0000000000000nW0o Item 0g0B0_ʼn0L0B00~0Y0%Delegate component must be Item type.QDeclarativeVisualDataModelFQt 0o xmlpatterns 0n00000Y0W0f0000U00f0D0~0Y,Qt was built without support for xmlpatternsQDeclarativeXmlListModel:XmlRorl 0n00000 '/' 0gY00f0o0D0Q0~0[0(An XmlRole query must not start with '/'QDeclarativeXmlListModelRoleTXmlListModel 0n00000o '/' 0K "//" 0gY0~0_ʼn0L0B00~0Y1An XmlListModel query must start with '/' or "//"QDeclarativeXmlRoleList0000QDialQDial00000000 SliderHandleQDial0000000 SpeedoMeterQDial}BNDoneQDialog000 What's This?QDialog00000(&C)&CancelQDialogButtonBox0X0(&C)&CloseQDialogButtonBox0D0D0H(&N)&NoQDialogButtonBox&OK&OKQDialogButtonBox O[X(&S)&SaveQDialogButtonBox 0o0D(&Y)&YesQDialogButtonBoxN-kbAbortQDialogButtonBoxiu(ApplyQDialogButtonBox 00000CancelQDialogButtonBox0X0CloseQDialogButtonBoxO[X0[0Z0k0X0Close without SavingQDialogButtonBox Y f0x4hDiscardQDialogButtonBox O[X0W0j0D Don't SaveQDialogButtonBox000HelpQDialogButtonBoxq!IgnoreQDialogButtonBoxQh0f0k0D0D0H(&O) N&o to AllQDialogButtonBoxOKOKQDialogButtonBox0OOpenQDialogButtonBox0000ResetQDialogButtonBox000000kb;0YRestore DefaultsQDialogButtonBoxQfLRetryQDialogButtonBoxO[XSaveQDialogButtonBox 0Y0y0fO[XSave AllQDialogButtonBoxQh0f0k0o0D(&A) Yes to &AllQDialogButtonBoxfee Date Modified QDirModelz.^Kind QDirModelT RMName QDirModel000Size QDirModel000Type QDirModel0X0Close QDockWidget000Dock QDockWidget0000Float QDockWidgetn00YLessQDoubleSpinBoxX00YMoreQDoubleSpinBox&OK&OK QErrorMessage&k!V00S0n000000hy:0Y0(&S)&Show this message again QErrorMessage000000000:Debug Message: QErrorMessageT}v0j000: Fatal Error: QErrorMessagefTJ:Warning: QErrorMessage&000QH0h0W0f %1 0O\b0g0M0~0[0Cannot create %1 for outputQFile$000QC0000 %1 000~0[0Cannot open %1 for inputQFile000QH0n000000Q0~0[0Cannot open for outputQFileQC0n00000RJd0g0M0~0[0Cannot remove source fileQFile$e0W0DT RM0n00000oe0k[XW(0W0~0YDestination file existsQFilef0M00kY1eW0W0~0W0_Failure to write blockQFileV000000000L0d0K00j0D0K0UnMapExtension 000000W0f0D0~0[0BNo file engine available or engine does not support UnMapExtensionQFileL00000000u(0D0f000000000000nT RM0Y f0Y00S0h0o0g0M0~0[00Will not rename sequential file using block copyQFile`%1 0000000L0d0K00~0[00 kc0W0D000000T 0LQeR0U00_0K0i0F0Kx0W0f0O0`0U0D0K%1 Directory not found. Please verify the correct directory name was given. QFileDialogX%1 00000L0d0K00~0[00 kc0W0D0000T 0LQeR0U00_0K0i0F0Kx0W0f0O0`0U0D0A%1 File not found. Please verify the correct file name was given. QFileDialog,%1 0o0Y0g0k[XW(0W0~0Y0 n0Mc0H0~0Y0K?-%1 already exists. Do you want to replace it? QFileDialog xb(&C)&Choose QFileDialog RJd(&D)&Delete QFileDialoge0W0D0000(&N) &New Folder QFileDialog 0O(&O)&Open QFileDialogT RM0nY f(&R)&Rename QFileDialog O[X(&S)&Save QFileDialog>'%1' 0of0M00Lykb0U00f0D0~0Y0 g,_S0kRJd0W0~0Y0K?9'%1' is write protected. Do you want to delete it anyway? QFileDialog 00000Alias QFileDialog0Y0y0f0n0000(*) All Files (*) QFileDialog0Y0y0f0n0000(*.*)All Files (*.*) QFileDialog '%1' 0g,_S0kRJd0W0~0Y0K?!Are sure you want to delete '%1'? QFileDialogb;0Back QFileDialogs}0hy:0000xY fChange to detail view mode QFileDialog000Ȉhy:0000xY fChange to list view mode QFileDialog$0000000RJd0g0M0~0[00g0W0_0Could not delete directory. QFileDialoge0W0D00000nO\bCreate New Folder QFileDialoge0W0D00000nO\bCreate a New Folder QFileDialogs}0hy: Detail View QFileDialog 000000 Directories QFileDialog000000: Directory: QFileDialog0000Drive QFileDialog0000File QFileDialog0000T (&N): File &name: QFileDialog00000000 File Folder QFileDialog00000nz.^:Files of type: QFileDialog0000000ni}"Find Directory QFileDialog0000Folder QFileDialog20Forward QFileDialogb;0Go back QFileDialog20 Go forward QFileDialog0000000xyRGo to the parent directory QFileDialogNhy: List View QFileDialogi}"0Y0X4b@:Look in: QFileDialog00000000 My Computer QFileDialoge0W0D0000 New Folder QFileDialog0OOpen QFileDialog000000Parent Directory QFileDialog\ekt Recent Places QFileDialogRJdRemove QFileDialogT RM0N0Q0fO[XSave As QFileDialog0000000Shortcut QFileDialoghy:Show  QFileDialog0W00000nhy:(&H)Show &hidden files QFileDialogN fUnknown QFileDialog %1 GB%1 GBQFileSystemModel %1 KB%1 KBQFileSystemModel %1 MB%1 MBQFileSystemModel %1 TB%1 TBQFileSystemModel %1 000 %1 byte(s)QFileSystemModel %1 000%1 bytesQFileSystemModel~<b>0000T "%1" 0oOu(0g0M0~0[00</b><p>T RM0w0O0W0_0000000ȊS0j0i0RJd0W0fQ^f0W0f0O0`0U0D0oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModel 000000ComputerQFileSystemModelfee Date ModifiedQFileSystemModelq!R0j0000T Invalid filenameQFileSystemModelz.^KindQFileSystemModel00000000 My ComputerQFileSystemModelT RMNameQFileSystemModel000SizeQFileSystemModel000TypeQFileSystemModel0Y0y0fAny QFontDatabase0000Arabic QFontDatabase 00000Armenian QFontDatabase0000Bengali QFontDatabaseY*[WBlack QFontDatabase0000Bold QFontDatabase000Cyrillic QFontDatabaseDemiDemi QFontDatabaseDemi Bold Demi Bold QFontDatabase000000000 Devanagari QFontDatabase0000Georgian QFontDatabase0000Greek QFontDatabase 000000Gujarati QFontDatabase 00000Gurmukhi QFontDatabase0000Hebrew QFontDatabaseeOSItalic QFontDatabaseeg,Japanese QFontDatabase0000Kannada QFontDatabase0000Khmer QFontDatabase0000Korean QFontDatabase000Lao QFontDatabase000Latin QFontDatabase}0[WLight QFontDatabase 000000 Malayalam QFontDatabase000Myanmar QFontDatabase00N'Ko QFontDatabasefgNormal QFontDatabaseeOSOblique QFontDatabase000Ogham QFontDatabase0000Oriya QFontDatabase000Runic QFontDatabase|!OSN-VSimplified Chinese QFontDatabase0000Sinhala QFontDatabaseSSymbol QFontDatabase000Syriac QFontDatabase000Tamil QFontDatabase000Telugu QFontDatabase000Thaana QFontDatabase00Thai QFontDatabase0000Tibetan QFontDatabase~AOSN-VTraditional Chinese QFontDatabase0000 Vietnamese QFontDatabase0000(&F)&Font QFontDialog000(&S)&Size QFontDialog N }(&U) &Underline QFontDialoge[W0Effects QFontDialog00000000(&Y) Font st&yle QFontDialog0000Sample QFontDialog00000nxb Select Font QFontDialogS0m0W}(&K) Stri&keout QFontDialog (&I)Wr&iting System QFontDialog(0000000nY f0kY1eW0W0~0W0_: %1Changing directory failed: %1QFtp0000kc}0W0~0W0_Connected to hostQFtp000 %1 0kc}0W0~0W0_Connected to host %1QFtp$0000x0nc}0kY1eW0W0~0W0_: %1Connecting to host failed: %1QFtpc}0L0X000~0W0_Connection closedQFtp&000c}0n0_00nc}0LbT&0U00~0W0_&Connection refused for data connectionQFtp&000 %1 0x0nc}0LbT&0U00~0W0_Connection refused to host %1QFtp,000 %1 0x0nc}0L0000000W0~0W0_Connection timed out to host %1QFtp%1 0x0nc}0L0X000~0W0_Connection to %1 closedQFtp(0000000nO\b0kY1eW0W0~0W0_: %1Creating directory failed: %1QFtp,00000n0000000kY1eW0W0~0W0_: %1Downloading file failed: %1QFtp000 %1 0L0d0K00~0W0_ Host %1 foundQFtp000 %1 0L0d0K00~0[0Host %1 not foundQFtp0000L0d0K00~0W0_ Host foundQFtp*0000000n0000kY1eW0W0~0W0_: %1Listing directory failed: %1QFtp00000kY1eW0W0~0W0_: %1Login failed: %1QFtp g*c}0g0Y Not connectedQFtp(0000000nRJd0kY1eW0W0~0W0_: %1Removing directory failed: %1QFtp$00000nRJd0kY1eW0W0~0W0_: %1Removing file failed: %1QFtp g*w0n000 Unknown errorQFtp,00000n0000000kY1eW0W0~0W0_: %1Uploading file failed: %1QFtp 0000000LN0H000f0D0~0[0No host name given QHostInfo g*w0n000 Unknown error QHostInfo0000L0d0K00~0[0Host not foundQHostInfoAgentq!R0j000T Invalid hostnameQHostInfoAgent 0000000LN0H000f0D0~0[0No host name givenQHostInfoAgentg*w0n0000W0g0YUnknown address typeQHostInfoAgent g*w0n000 Unknown errorQHostInfoAgent<0L_ʼn0g0YAuthentication requiredQHttp0000kc}0W0~0W0_Connected to hostQHttp000 %1 0kc}0W0~0W0_Connected to host %1QHttpc}0L0X000~0W0_Connection closedQHttpc}0LbT&0U00~0W0_Connection refusedQHttp(c}0LbT&0U00_0K00000000W0~0W0_!Connection refused (or timed out)QHttp%1 0x0nc}0L0X000~0W0_Connection to %1 closedQHttp0000Lx4d 0W0f0D0~0YData corruptedQHttp,00000x0nf0M0fB0k0000Lvzu0W0~0W0_ Error writing response to deviceQHttpHTTPlB0kY1eW0W0~0W0_HTTP request failedQHttpnHTTPS0k00c}0LlB0U00~0W0_0L0SSL0n00000L00000fB0k}D00~00f0D0j0D0_00c}0g0M0~0[0:HTTPS connection requested but SSL support not compiled inQHttp000 %1 0L0d0K00~0W0_ Host %1 foundQHttp000 %1 0L0d0K00~0[0Host %1 not foundQHttp0000L0d0K00~0W0_ Host foundQHttp0000n<0L_ʼn0g0YHost requires authenticationQHttp"q!R0jHTTP000000000g0YInvalid HTTP chunked bodyQHttpq!R0jHTTP_{T0000g0YInvalid HTTP response headerQHttp&c}0L-[0U00f0D00000L0B00~0[0No server set to connect toQHttp000000n<0L_ʼn0g0YProxy authentication requiredQHttp000000n<0L_ʼn0g0YProxy requires authenticationQHttplB0LN-kb0U00~0W0_Request abortedQHttp$SSL0n00000000kY1eW0W0~0W0_SSL handshake failedQHttp$0000nc}0LNg0[0Z0X000~0W0_%Server closed connection unexpectedlyQHttp ^[_0n0g0M0~0[0: %2Cannot unload library %1: %2QLibrary.'%1' 0g00000i<0000LN0W0~0[0)Plugin verification data mismatch in '%1'QLibrary80000 '%1' 0o Qt 000000g0o0B00~0[00'The file '%1' is not a valid Qt plugin.QLibraryh00000 '%1' 0o0Nc`'0n0j0D Qt 000000Ou(0W0f0D0~0Y0(%2.%3.%4) [%5]=The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]QLibrary00000 '%1' 0o0S0n Qt 0hNc`'0n0j0D000000Ou(0W0f0D0~0Y0 (0000rH0h0000rH0n000000T fB0kOu(0Y00S0h0o0g0M0~0[0)WThe plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)QLibrary00000 '%1' 0o0Nc`'0n0j0D Qt 000000Ou(0W0f0D0~0Y0000000"%2"00L_ʼn0g0Y0L0"%3" 0W0K0B00~0[0 OThe plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"QLibrary Qqg 000000L00d0K00~0[00!The shared library was not found.QLibrary g*w0n000 Unknown errorQLibrary000(&C)&Copy QLineEdit0N0Q(&P)&Paste QLineEdit00v0Y(&R)&Redo QLineEditQC0kb;0Y(&U)&Undo QLineEditR0S0(&T)Cu&t QLineEditRJdDelete QLineEdit 0Y0y0f0xb Select All QLineEdit&%1: 00000oe0kOu(0U00f0D0~0Y%1: Address in use QLocalServer%1: T RM0nlz0kY1eW%1: Name error QLocalServer%1: 1S0U00f0D0~0[0%1: Permission denied QLocalServer%1: g*w0n000 %2%1: Unknown error %2 QLocalServer%1: 00000g0M0~0[0%1: Access denied QLocalSocket"%1: c}0n0000Lvzu0W0~0W0_%1: Connection error QLocalSocket%1: c}0LbT&0U00~0W0_%1: Connection refused QLocalSocket"%1: 0000000LY'0M0Y0N0~0Y%1: Datagram too large QLocalSocket%1: q!R0jT RM0g0Y%1: Invalid name QLocalSocket*%1: 00000k00c}0L0X000~0W0_%1: Remote closed QLocalSocket$%1: 000000000n0000g0Y%1: Socket access error QLocalSocket*%1: 0000dO\0L0000000W0~0W0_%1: Socket operation timed out QLocalSocket$%1: 000000000n0000g0Y%1: Socket resource error QLocalSocket0%1: 0]0n0000dO\0o00000U00f0D0~0[0)%1: The socket operation is not supported QLocalSocket%1: g*w0n0000g0Y%1: Unknown error QLocalSocket%1: g*w0n000 %2%1: Unknown error %2 QLocalSocket 000000000Y0g0M0~0[0Unable to begin transaction QMYSQLDriver$00000000000000g0M0~0[0Unable to commit transaction QMYSQLDriverc}0g0M0~0[0Unable to connect QMYSQLDriver00000000Q0~0[0 'Unable to open database ' QMYSQLDriver(0000000000000000g0M0~0[0Unable to rollback transaction QMYSQLDriverQRP$000000g0M0~0[0Unable to bind outvalues QMYSQLResultP$000000g0M0~0[0Unable to bind value QMYSQLResultk!0n00000[L0g0M0~0[0Unable to execute next query QMYSQLResult00000[L0g0M0~0[0Unable to execute query QMYSQLResult00000000[L0g0M0~0[0Unable to execute statement QMYSQLResult000000000g0M0~0[0Unable to fetch data QMYSQLResult"000000000000O0H0~0[0Unable to prepare statement QMYSQLResult"0000000000000g0M0~0[0Unable to reset statement QMYSQLResultk!0n}Pg020g0M0~0[0Unable to store next result QMYSQLResult[L}Pg020g0M0~0[0Unable to store result QMYSQLResult(00000000n[L}Pg020g0M0~0[0!Unable to store statement results QMYSQLResult(00000j0W) (Untitled)QMdiArea%1 - [%2] %1 - [%2] QMdiSubWindow0X0(&C)&Close QMdiSubWindow yR(&M)&Move QMdiSubWindowQC0kb;0Y(&R)&Restore QMdiSubWindow000(&S)&Size QMdiSubWindow - [%1]- [%1] QMdiSubWindow0X0Close QMdiSubWindow000Help QMdiSubWindowgY'S(&X) Ma&ximize QMdiSubWindowgY'SMaximize QMdiSubWindow0000Menu QMdiSubWindowg\S(&N) Mi&nimize QMdiSubWindowg\SMinimize QMdiSubWindowQC0kb;0YRestore QMdiSubWindowQC0kb;0Y Restore Down QMdiSubWindowxbShade QMdiSubWindow^80kbKRM0khy:(&T) Stay on &Top QMdiSubWindow^xbUnshade QMdiSubWindow0X0CloseQMenu[LExecuteQMenu0OOpenQMenu 00000ActionsQMenuBar000000000Corner ToolbarQMenuBarj<h3>Qt 0k0d0D0f</h3><p>0S0n000000o Qt 00000 %1 0Ou(0W0f0D0~0Y0</p>8

About Qt

This program uses Qt version %1.

 QMessageBox <p>Qt 0o0000000000000000000vzu(0n C++ 0000000g0Y0</p><p>Qt provides single-source portability across MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.</p><p>Qt is available under three different licensing options designed to accommodate the needs of our various users.</p><p>Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.</p><p>Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.</p><p>Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.</p><p>Qt 000000k0d0D0f0ni0o <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> 00T0O0`0U0D0</p><p>Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).</p><p>Qt 0o Nokia y>0nT0g0Y0s0W0D`X10o <a href="http://qt.nokia.com/">qt.nokia.com</a> 00T0O0`0U0D0</p>

Qt is a C++ toolkit for cross-platform application development.

Qt provides single-source portability across MS Windows, Mac OS X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.

Qt is available under three different licensing options designed to accommodate the needs of our various users.

Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.

Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.

Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.

Please see qt.nokia.com/products/licensing for an overview of Qt licensing.

Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).

Qt is a Nokia product. See qt.nokia.com for more information.

 QMessageBoxQt 0k0d0D0fAbout Qt QMessageBox000Help QMessageBoxs}000Y...Hide Details... QMessageBoxOKOK QMessageBoxs}00hy:...Show Details... QMessageBox0000000000xb Select IMQMultiInputContext"ep0n0000000000R0f0HMultiple input method switcherQMultiInputContextPluginX00000000000n00000000000O0c0_ep0n0000000000nR0f0H0g0YMMultiple input method switcher that uses the context menu of the text widgetsQMultiInputContextPlugin.R%0n00000LT 0X0000ge0k_0aS0Q0f0D0~0Y4Another socket is already listening on the same portQNativeSocketEngine^IPv6 0L00000U00f0D0j0D000000000g IPv6 00000Ou(0W00F0h0W0f0D0~0Y=Attempt to use IPv6 socket on a platform with no IPv6 supportQNativeSocketEnginec}0bT&0U00~0W0_Connection refusedQNativeSocketEnginec}0L0000000W0~0W0_Connection timed outQNativeSocketEngine,0000000LY'0MN0N0fO0g0M0~0[00g0W0_Datagram was too large to sendQNativeSocketEngine0000xR0T0g0M0~0[0Host unreachableQNativeSocketEngineq!R0j0000Ȋ[P0g0YInvalid socket descriptorQNativeSocketEngine000000000 Network errorQNativeSocketEngine&000000dO\0L0000000W0~0W0_Network operation timed outQNativeSocketEngine0000000xR0T0g0M0~0[0Network unreachableQNativeSocketEngine^00000k[0Y0dO\0g0YOperation on non-socketQNativeSocketEngine00000L00~0[0Out of resourcesQNativeSocketEngine1S0U00f0D0~0[0Permission deniedQNativeSocketEngine$00000W0L00000U00f0D0~0[0Protocol type not supportedQNativeSocketEngine0]0n00000oOu(0g0M0~0[0The address is not availableQNativeSocketEngine&0]0n00000x0n0000j)0L0B00~0[0The address is protectedQNativeSocketEngine$000000000oe0kO000f0D0~0Y#The bound address is already in useQNativeSocketEngine,0S0n000000o00S0ndO\0k[_0W0f0D0~0[0,The proxy type is invalid for this operationQNativeSocketEngine 00000000oc}00X0~0W0_%The remote host closed the connectionQNativeSocketEngine*0000000000000RgS0g0M0~0[0%Unable to initialize broadcast socketQNativeSocketEngine&^0000W00000RgS0g0M0~0[0(Unable to initialize non-blocking socketQNativeSocketEngine000000SO0g0M0~0[0Unable to receive a messageQNativeSocketEngine000000O0g0M0~0[0Unable to send a messageQNativeSocketEnginef0M00L0g0M0~0[0Unable to writeQNativeSocketEngine g*w0n000 Unknown errorQNativeSocketEngine$00000U00f0D0j0D0000dO\0g0YUnsupported socket operationQNativeSocketEngine0000fB0n000 %1Error opening %1QNetworkAccessCacheBackendq!R0jURI0g0Y: %1Invalid URI: %1QNetworkAccessDataBackend<0000000 %1 0h0nc}0LO0n}BNRM0kRe0U00~0W0_3Remote host closed the connection prematurely on %1QNetworkAccessDebugPipeBackend4%1 0n00000k0J0D0f0000Lvzu0W0~0W0_: %2Socket error on %1: %2QNetworkAccessDebugPipeBackend2%1 0x0nf0M0fB0k0000Lvzu0W0~0W0_: %2Write error writing to %1: %2QNetworkAccessDebugPipeBackend4%1 00Q0~0[00c[0U00_000o0000000g0Y#Cannot open %1: Path is a directoryQNetworkAccessFileBackend0%1 0n0000fB0k0000Lvzu0W0~0W0_: %2Error opening %1: %2QNetworkAccessFileBackend0%1 000fB0k0000Lvzu0W0~0W0_: %2Read error reading from %1: %2QNetworkAccessFileBackendb^00000000 %1 000000Y000FlB0U00~0W0_0L0000000000n000000g0M0~0Y%Request for opening non-local file %1QNetworkAccessFileBackend2%1 0x0nf0M0fB0k0000Lvzu0W0~0W0_: %2Write error writing to %1: %2QNetworkAccessFileBackend4%1 00Q0~0[00c[0U00_000o0000000g0YCannot open %1: is a directoryQNetworkAccessFtpBackend4%1 0000000N-0k0000Lvzu0W0~0W0_: %2Error while downloading %1: %2QNetworkAccessFtpBackend4%1 0000000N-0k0000Lvzu0W0~0W0_: %2Error while uploading %1: %2QNetworkAccessFtpBackend0%1 0x0n00000kY1eW0W0~0W0_0<0L_ʼn0g0Y0Logging in to %1 failed: authentication requiredQNetworkAccessFtpBackend iR0j000000L00d0K00~0[0No suitable proxy foundQNetworkAccessFtpBackend iR0j000000L00d0K00~0[0No suitable proxy foundQNetworkAccessHttpBackend,0000000x0n00000Lykb0U00f0D0~0Y0Network access is disabled.QNetworkAccessManagerB%1 0000000N-0k0000Lvzu0W0~0W0_00000n{T: %2)Error downloading %1 - server replied: %2 QNetworkReply000000000000000Network session error. QNetworkReply.00000 "%1" 0o00000U00f0D0~0[0Protocol "%1" is unknown QNetworkReplyNfBv0j0000000nY1eW0Temporary network failure. QNetworkReply000000ɕYfB0n0000backend start error. QNetworkReplydO\0o000000U00~0W0_Operation canceledQNetworkReplyImplq!R0j-[0g0Y0Invalid configuration.QNetworkSession00000000 Roaming errorQNetworkSessionPrivateImpl(000000oP\kb0U00_0KR)u(0g0M0~0[00'Roaming was aborted or is not possible.QNetworkSessionPrivateImpl8000000o00000W0O0o00000k00c0fP\kb0U00~0W0_!Session aborted by user or systemQNetworkSessionPrivateImpl8lB0U00_dO\0o0S0n00000g0o00000U00f0D0~0[007The requested operation is not supported by the system.QNetworkSessionPrivateImpl>0S0n000000o00000W0O0o00000k00c0fP\kb0U00~0W0_0.The session was aborted by the user or system.QNetworkSessionPrivateImpl0S0n-[0oR)u(0g0M0~0[00+The specified configuration cannot be used.QNetworkSessionPrivateImpl g*w0n000Unidentified ErrorQNetworkSessionPrivateImplg*w0n000000000g0Y0Unknown session error.QNetworkSessionPrivateImpl 000000000Y0g0M0~0[0Unable to begin transaction QOCIDriver$00000000000000g0M0~0[0Unable to commit transaction QOCIDriverRgS0g0M0~0[0Unable to initialize QOCIDriver00000g0M0~0[0Unable to logon QOCIDriver(0000000000000000g0M0~0[0Unable to rollback transaction QOCIDriver$00000000nW0xO0g0M0~0[0Unable to alloc statement QOCIResult,000Qtu(0k00000000000g0M0~0[0'Unable to bind column for batch execute QOCIResultP$000000g0M0~0[0Unable to bind value QOCIResult$00000000000[L0g0M0~0[0!Unable to execute batch statement QOCIResult00000000[L0g0M0~0[0Unable to execute statement QOCIResult"00000000nW0S_0g0M0~0[0Unable to get statement type QOCIResultk!0n00000x200~0[0Unable to goto next QOCIResult"000000000000O0H0~0[0Unable to prepare statement QOCIResult$00000000000000g0M0~0[0Unable to commit transaction QODBCDriverc}0g0M0~0[0Unable to connect QODBCDriverDc}0g0M0~0[0 - 00000o_ʼn0jQh0f0nj_000000W0f0D0~0[0EUnable to connect - Driver doesn't support all functionality required QODBCDriver 00000000q!R0k0g0M0~0[0Unable to disable autocommit QODBCDriver 00000000g R0k0g0M0~0[0Unable to enable autocommit QODBCDriver(0000000000000000g0M0~0[0Unable to rollback transaction QODBCDriverQODBCResult::reset: 00000000n\^`'0h0W0f 'SQL_CURSOR_STATUS' 0-[0g0M0~0[00ODBC 00000nib000000W0f0O0`0U0DyQODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResultY ep000000g0M0~0[0Unable to bind variable QODBCResult00000000[L0g0M0~0[0Unable to execute statement QODBCResult00000g0M0~0[0Unable to fetch QODBCResult"gR0n0000000000g0M0~0[0Unable to fetch first QODBCResult0000S_0g0M0~0[0Unable to fetch last QODBCResult k!0n0000000000g0M0~0[0Unable to fetch next QODBCResult RM0n0000000000g0M0~0[0Unable to fetch previous QODBCResult"000000000000O0H0~0[0Unable to prepare statement QODBCResult4"%1" 0gvRM0n000T 00W0q!RS0U00~0Y0:"%1" duplicates a previous role name and will be disabled.QObject0000L0d0K00~0[0Host not foundQObject$PulseAudio 0000000PulseAudio Sound ServerQObjectq!R0j0000: "%1"invalid query: "%1"QObjectT RMNameQPPDOptionsModelP$ValueQPPDOptionsModel&000000000Y0g0M0~0[00g0W0_Could not begin transaction QPSQLDriver*00000000000000g0M0~0[00g0W0_Could not commit transaction QPSQLDriver.0000000000000000g0M0~0[00g0W0_Could not rollback transaction QPSQLDriverc}0g0M0~0[0Unable to connect QPSQLDriversubscribe 0g0M0~0[0Unable to subscribe QPSQLDriver"unsubscribe 0g0M0~0[0Unable to unsubscribe QPSQLDriver00000O\b0g0M0~0[0Unable to create query QPSQLResult"000000000000O0H0~0[0Unable to prepare statement QPSQLResult0000000 (cm)Centimeters (cm)QPageSetupWidgetf_-[FormQPageSetupWidget0U:Height:QPageSetupWidget000 (in) Inches (in)QPageSetupWidgetj* (0000000) LandscapeQPageSetupWidgetOYv}MarginsQPageSetupWidget000000 (mm)Millimeters (mm)QPageSetupWidgetSpR7eT OrientationQPageSetupWidget000000: Page size:QPageSetupWidgetu(}PaperQPageSetupWidget }f}n: Paper source:QPageSetupWidget0000 (pt) Points (pt)QPageSetupWidget~& (000000)PortraitQPageSetupWidget$j* S͎ (00000000000)Reverse landscapeQPageSetupWidget"~& S͎ (0000000000)Reverse portraitQPageSetupWidget^E:Width:QPageSetupWidgetN zOYv} bottom marginQPageSetupWidget]zOYv} left marginQPageSetupWidgetSzOYv} right marginQPageSetupWidgetN zOYv} top marginQPageSetupWidget&0]0n000000o0000U00f0D0~0[00The plugin was not loaded. QPluginLoader g*w0n000 Unknown error QPluginLoader,%1 0o0Y0g0k[XW(0W0~0Y0 N f0M0W0~0Y0K?/%1 already exists. Do you want to overwrite it? QPrintDialog:%1 0o0000000g0Y0 0000T 0c[0W0f0O0`0U0D07%1 is a directory. Please choose a different file name. QPrintDialog00000(&O) << &Options << QPrintDialog00000(&O) >> &Options >> QPrintDialog SpR7(&P)&Print QPrintDialog8<qt>00000N f0M0W0f0000W0D0g0Y0K?</qt>%Do you want to overwrite it? QPrintDialogA0A0 QPrintDialog"A0 (841 x 1189mm)A0 (841 x 1189 mm) QPrintDialogA1A1 QPrintDialog A1 (594 x 841mm)A1 (594 x 841 mm) QPrintDialogA2A2 QPrintDialog A2 (420 x 594mm)A2 (420 x 594 mm) QPrintDialogA3A3 QPrintDialog A3 (297 x 420mm)A3 (297 x 420 mm) QPrintDialogA4A4 QPrintDialog>A4 (210 x 297mm08.26 x 11.7000)%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialogA5A5 QPrintDialog A5 (148 x 210mm)A5 (148 x 210 mm) QPrintDialogA6A6 QPrintDialog A6 (105 x 148mm)A6 (105 x 148 mm) QPrintDialogA7A7 QPrintDialogA7 (74 x 105mm)A7 (74 x 105 mm) QPrintDialogA8A8 QPrintDialogA8 (52 x 74mm)A8 (52 x 74 mm) QPrintDialogA9A9 QPrintDialogA9 (37 x 52mm)A9 (37 x 52 mm) QPrintDialog00000: %1 Aliases: %1 QPrintDialogB0B0 QPrintDialog$B0 (1000 x 1414mm)B0 (1000 x 1414 mm) QPrintDialogB1B1 QPrintDialog"B1 (707 x 1000mm)B1 (707 x 1000 mm) QPrintDialogB10B10 QPrintDialogB10 (31 x 44mm)B10 (31 x 44 mm) QPrintDialogB2B2 QPrintDialog B2 (500 x 707mm)B2 (500 x 707 mm) QPrintDialogB3B3 QPrintDialog B3 (353 x 500mm)B3 (353 x 500 mm) QPrintDialogB4B4 QPrintDialog B4 (250 x 353mm)B4 (250 x 353 mm) QPrintDialogB5B5 QPrintDialog>B5 (176 x 250mm06.93 x 9.84000)%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialogB6B6 QPrintDialog B6 (125 x 176mm)B6 (125 x 176 mm) QPrintDialogB7B7 QPrintDialogB7 (88 x 125mm)B7 (88 x 125 mm) QPrintDialogB8B8 QPrintDialogB8 (62 x 88mm)B8 (62 x 88 mm) QPrintDialogB9B9 QPrintDialogB9 (44 x 62mm)B9 (44 x 62 mm) QPrintDialogC5EC5E QPrintDialog"C5E (163 x 229mm)C5E (163 x 229 mm) QPrintDialog0000Custom QPrintDialogDLEDLE QPrintDialog"DLE (110 x 220mm)DLE (110 x 220 mm) QPrintDialogExclusive Executive QPrintDialogFExecutive (7.5 x 100000191 x 254mm))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialogP0000 %1 0of0M0S0g0o0B00~0[00 R%0n0000T 0x00g0O0`0U0D0=File %1 is not writable. Please choose a different file name. QPrintDialog00000oe0k[XW(0W0f0D0~0Y File exists QPrintDialog FolioFolio QPrintDialog&Folio (210 x 330mm)Folio (210 x 330 mm) QPrintDialog LedgerLedger QPrintDialog(Ledger (432 x 279mm)Ledger (432 x 279 mm) QPrintDialog0000000Legal QPrintDialog>Legal (8.5 x 140000216 x 356mm)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialog 000000Letter QPrintDialog@Letter (8.5 x 110000216 x 279mm)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialog00000000 Local file QPrintDialogOKOK QPrintDialogSpR7Print QPrintDialog00000xQR...Print To File ... QPrintDialog 0Y0y0fSpR7 Print all QPrintDialogsW(0n0000nSpR7Print current page QPrintDialogSpR7{V Print range QPrintDialogxb0U00_{V0SpR7Print selection QPrintDialogPDF00000kQRPrint to File (PDF) QPrintDialog"Postscript00000kQRPrint to File (Postscript) QPrintDialog00000000Tabloid QPrintDialog*Tabloid (279 x 432mm)Tabloid (279 x 432 mm) QPrintDialogFSpR7Y000ujS0o0SpR7}BN000ujS00\0U0O0j0Q00p0j00~0[007The 'From' value cannot be greater than the 'To' value. QPrintDialogUSjn#10\{RUS Common #10 Envelope QPrintDialogHUS Common #10 Envelope (105 x 241mm)%US Common #10 Envelope (105 x 241 mm) QPrintDialog 0000 %1 0kf0M00~0W0_ Write %1 file QPrintDialog00000kc}0W0f0D0~0Ylocally connected QPrintDialogN funknown QPrintDialog%1%%1%QPrintPreviewDialog0X0CloseQPrintPreviewDialog PDF0kQR Export to PDFQPrintPreviewDialogPostscript0kQRExport to PostScriptQPrintPreviewDialog gR0n000 First pageQPrintPreviewDialog0U00B00[0Fit pageQPrintPreviewDialog ^E00B00[0 Fit widthQPrintPreviewDialogj* LandscapeQPrintPreviewDialog g_0n000 Last pageQPrintPreviewDialog k!0n000 Next pageQPrintPreviewDialog 000-[ Page SetupQPrintPreviewDialog 000-[ Page setupQPrintPreviewDialog~&PortraitQPrintPreviewDialog RM0n000 Previous pageQPrintPreviewDialogSpR7PrintQPrintPreviewDialogSpR70n00000 Print PreviewQPrintPreviewDialog0M0n0000hy:0Y0Show facing pagesQPrintPreviewDialog0Y0y0f0n0000hy:0Y0Show overview of all pagesQPrintPreviewDialogNg0n0000hy:0Y0Show single pageQPrintPreviewDialogbY'Zoom inQPrintPreviewDialog~.\Zoom outQPrintPreviewDialog ^0j-[AdvancedQPrintPropertiesWidgetf_FormQPrintPropertiesWidget000PageQPrintPropertiesWidgetNT0DCollateQPrintSettingsOutput000ColorQPrintSettingsOutputr Color ModeQPrintSettingsOutputSpR7epCopiesQPrintSettingsOutput SpR7ep:Copies:QPrintSettingsOutput sW(0n000 Current PageQPrintSettingsOutputN!bSpR7Duplex PrintingQPrintSettingsOutputf_FormQPrintSettingsOutput0000000 GrayscaleQPrintSettingsOutputw}0X Long sideQPrintSettingsOutput0j0WNoneQPrintSettingsOutput 00000OptionsQPrintSettingsOutputQR-[Output SettingsQPrintSettingsOutput QH-0n000 Pages fromQPrintSettingsOutput 0Y0y0fSpR7 Print allQPrintSettingsOutputSpR7{V Print rangeQPrintSettingsOutputReverseQPrintSettingsOutputxb0W0_R0SpR7 SelectionQPrintSettingsOutputw폺}0X Short sideQPrintSettingsOutput g+\>0n000toQPrintSettingsOutputT RM(&N):&Name: QPrintWidget...... QPrintWidgetf_Form QPrintWidget -nX4b@: Location: QPrintWidgetQR0000T (&f): Output &file: QPrintWidget00000(&r) P&roperties QPrintWidget 00000Preview QPrintWidget0000Printer QPrintWidget000:Type: QPrintWidget6jnQeR0000000000n0_00k0Q0~0[00g0W0_,Could not open input redirection for readingQProcess6jnQR0000000f0M00n0_00k0Q0~0[00g0W0_-Could not open output redirection for writingQProcess200000K00n000k0J0D0f0000Lvzu0W0~0W0_Error reading from processQProcess000000x0nf0M00k0J0D0f0000Lvzu0W0~0W0_Error writing to processQProcess 00000T 0Lc[0U00f0D0~0[0No program definedQProcess00000L000000W0~0W0_Process crashedQProcess$00000nwR0kY1eW0W0~0W0_: %1Process failed to start: %1QProcess"0000Qt0L0000000W0~0W0_Process operation timed outQProcess40000000 (fork 0kY1eW0W0~0W0_): %1!Resource error (fork failure): %1QProcess 00000CancelQProgressDialog0OOpen QPushButtonxbCheck QRadioButtonN kc0jchar000iebad char class syntaxQRegExpN kc0jlookaheadiebad lookahead syntaxQRegExpN kc0jrepetitioniebad repetition syntaxQRegExpq!R0jj_0LOu(0U00~0W0_disabled feature usedQRegExpq!R0j00000invalid categoryQRegExp q!R0jinvalid intervalQRegExp q!R0j82P$invalid octal valueQRegExpQR6P0n0_0W0~0W0_met internal limitQRegExp]0nS:R0e[W0L0B00~0[0missing left delimQRegExp0000ovzu0W0~0[00g0W0_no error occurredQRegExpNg0W0j0Dg+\>0g0Yunexpected endQRegExp.0000000n0000fB0k0000Lvzu0W0~0W0_Error opening databaseQSQLite2Driver 000000000Y0g0M0~0[0Unable to begin transactionQSQLite2Driver$00000000000000g0M0~0[0Unable to commit transactionQSQLite2Driver(0000000000000000g0M0~0[0Unable to rollback transactionQSQLite2Driver00000000[L0g0M0~0[0Unable to execute statementQSQLite2Result[L}Pg000000g0M0~0[0Unable to fetch resultsQSQLite2Result.0000000n0000fB0k0000Lvzu0W0~0W0_Error closing database QSQLiteDriver.0000000n0000fB0k0000Lvzu0W0~0W0_Error opening database QSQLiteDriver 000000000Y0g0M0~0[0Unable to begin transaction QSQLiteDriver$00000000000000g0M0~0[0Unable to commit transaction QSQLiteDriver(0000000000000000g0M0~0[0Unable to rollback transaction QSQLiteDriver00000L0B00~0[0No query QSQLiteResult000000nep0LT0c0f0D0~0[0Parameter count mismatch QSQLiteResult00000000000g0M0~0[0Unable to bind parameters QSQLiteResult00000000[L0g0M0~0[0Unable to execute statement QSQLiteResult0000000000g0M0~0[0Unable to fetch row QSQLiteResult"0000000000000g0M0~0[0Unable to reset statement QSQLiteResultgaN ConditionQScriptBreakpointsModel0000W0_Vep Hit-countQScriptBreakpointsModelIDIDQScriptBreakpointsModel q!0Y0Vep Ignore-countQScriptBreakpointsModel0000:LujSLocationQScriptBreakpointsModelRV0n0 Single-shotQScriptBreakpointsModelRJdDeleteQScriptBreakpointsWidgeteNewQScriptBreakpointsWidget 00000Q0i}"(&F)...&Find in Script...QScriptDebugger000000n000 Clear ConsoleQScriptDebugger0000QR0n000Clear Debug OutputQScriptDebugger000000n000Clear Error LogQScriptDebugger}LContinueQScriptDebugger Ctrl+FCtrl+FQScriptDebuggerCtrl+F10Ctrl+F10QScriptDebugger Ctrl+GCtrl+GQScriptDebugger0000DebugQScriptDebuggerF10F10QScriptDebuggerF11F11QScriptDebuggerF3F3QScriptDebuggerF5F5QScriptDebuggerF9F9QScriptDebuggerk!0i}"(&N) Find &NextQScriptDebuggerRM0i}"(&P)Find &PreviousQScriptDebuggerc[0W0_L0xyR Go to LineQScriptDebuggerRr00 InterruptQScriptDebuggerLujS:Line:QScriptDebugger0000OMn0~0g[L Run to CursorQScriptDebuggere0_0j000000~0g[LRun to New ScriptQScriptDebuggerShift+F11 Shift+F11QScriptDebuggerShift+F3Shift+F3QScriptDebuggerShift+F5Shift+F5QScriptDebugger 000000 Step IntoQScriptDebugger0000000Step OutQScriptDebugger00000000 Step OverQScriptDebugger&000000000ng R/q!R0nR0f0HToggle BreakpointQScriptDebugger<img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;QH-0K0Q0si}"0W0~0YJ Search wrappedQScriptDebuggerCodeFinderWidgetY'e[W/\e[W0S:R%0Y0Case SensitiveQScriptDebuggerCodeFinderWidget0X0CloseQScriptDebuggerCodeFinderWidgetk!0i}"NextQScriptDebuggerCodeFinderWidgetRM0i}"PreviousQScriptDebuggerCodeFinderWidgetSXSXOM0gi}"0Y0 Whole wordsQScriptDebuggerCodeFinderWidgetT RMNameQScriptDebuggerLocalsModelP$ValueQScriptDebuggerLocalsModel000LevelQScriptDebuggerStackModel0000:LujSLocationQScriptDebuggerStackModelT RMNameQScriptDebuggerStackModel000000000ngaN:Breakpoint Condition: QScriptEdit000000000q!R0k0Y0Disable Breakpoint QScriptEdit000000000g R0k0Y0Enable Breakpoint QScriptEdit&000000000ng R/q!R0nR0f0HToggle Breakpoint QScriptEdit00000000 BreakpointsQScriptEngineDebugger 00000ConsoleQScriptEngineDebugger 0000QR Debug OutputQScriptEngineDebugger 00000 Error LogQScriptEngineDebugger0000W0_00000Loaded ScriptsQScriptEngineDebugger 0000Y epLocalsQScriptEngineDebuggerQt Script 0000Qt Script DebuggerQScriptEngineDebuggeri}"SearchQScriptEngineDebugger0000StackQScriptEngineDebuggerhy:ViewQScriptEngineDebugger0X0CloseQScriptNewBreakpointWidgetN zBottom QScrollBar]z Left edge QScrollBarLN 0x Line down QScrollBarLN 0xLine up QScrollBar 00020 Page down QScrollBar000]0x00000 Page left QScrollBar000S0x00000 Page right QScrollBar 000b;0Page up QScrollBarOMnPosition QScrollBarSz Right edge QScrollBarN 0x00000 Scroll down QScrollBar0S0S0k00000 Scroll here QScrollBar]0x00000 Scroll left QScrollBarS0x00000 Scroll right QScrollBarN 0x00000 Scroll up QScrollBarN zTop QScrollBar2%1: UNIX key file 0L[XW(0W0~0[0%1: UNIX key file doesn't exist QSharedMemory%1: e0k[XW(0W0~0Y%1: already exists QSharedMemory%1: q!R0jT RM0g0Y %1: bad name QSharedMemory6%1: 000\0U0D0000nQqg 0000oO\b0g0M0~0[0%1: create size is less then 0 QSharedMemory%1: [XW(0W0~0[0%1: doesn't exist QSharedMemory%1: [XW(0W0~0[0%1: doesn't exists QSharedMemory %1: fork 0kY1eW0W0~0W0_%1: ftok failed QSharedMemory%1: q!R0j0000g0Y%1: invalid size QSharedMemory%1: 000Lzz0g0Y%1: key is empty QSharedMemory%1: 00000W0f0D0~0[0%1: not attached QSharedMemory%1: 0000N 0g0Y%1: out of resources QSharedMemory%1: 1S0U00f0D0~0[0%1: permission denied QSharedMemory&%1: 0000n00000kY1eW0W0~0W0_%1: size query failed QSharedMemory6%1: c[0U00_0000o00000k00bT&0U00~0W0_$%1: system-imposed size restrictions QSharedMemory%1: 0000g0M0~0[0%1: unable to lock QSharedMemory%1: 000O\b0g0M0~0[0%1: unable to make key QSharedMemory,%1: 0000Y00_00n000-[0g0M0~0[0%1: unable to set key on lock QSharedMemory%1: 000000g0M0~0[0%1: unable to unlock QSharedMemory%1: g*w0n000 %2%1: unknown error %2 QSharedMemory++ QShortcut0Jl0kQe00kR Add Favorite QShortcut ^0netAdjust Brightness QShortcutAltAlt QShortcut Application LeftApplication Left QShortcut"Application RightApplication Right QShortcut"Audio Cycle TrackAudio Cycle Track QShortcut000000ne0 Audio Forward QShortcut000000n0000QuAudio Random Play QShortcut000000n~p00W Audio Repeat QShortcut000000n]0Mb;0W Audio Rewind QShortcut^-Away QShortcutb;0Back QShortcutb;0 Back Forward QShortcutBackspace Backspace QShortcutBacktabBacktab QShortcut ON0000 Bass Boost QShortcut ON0N 0R0 Bass Down QShortcut ON0N 0R0Bass Up QShortcut0000Battery QShortcut0000000 Bluetooth QShortcutf|MBook QShortcut0000Browser QShortcutCDCD QShortcutSS Calculator QShortcutCallCall QShortcut00000000 Camera Focus QShortcut00000000Camera Shutter QShortcutCaps Lock Caps Lock QShortcutCapsLockCapsLock QShortcut000Clear QShortcutClear Grab Clear Grab QShortcut0X0Close QShortcut 000QeR Code input QShortcut 000000 Community QShortcutContext1Context1 QShortcutContext2Context2 QShortcutContext3Context3 QShortcutContext4Context4 QShortcut000Copy QShortcutCtrlCtrl QShortcutR0S0Cut QShortcutDOSDOS QShortcutDelDel QShortcutRJdDelete QShortcut 000000Display QShortcut 000000 Documents QShortcut!Down QShortcut ep000 Eisu Shift QShortcutep Eisu toggle QShortcutS0Q0WEject QShortcutEndEnd QShortcut EnterEnter QShortcutEscEsc QShortcut EscapeEscape QShortcutF%1F%1 QShortcut 0Jl0kQe0 Favorites QShortcut 000000Finance QShortcutFlipFlip QShortcut20Forward QShortcut000Game QShortcutGoGo QShortcut0000Hangul QShortcutHangul Banja Hangul Banja QShortcutHangul End Hangul End QShortcut0000 o"[W Hangul Hanja QShortcut0000 [Wk Hangul Jamo QShortcutHangul Jeonja Hangul Jeonja QShortcut Hangul PostHanjaHangul PostHanja QShortcutHangul PreHanjaHangul PreHanja QShortcut0000 000[WQeR Hangul Romaja QShortcutHangul SpecialHangul Special QShortcutHangul Start Hangul Start QShortcut HangupHangup QShortcutSJHankaku QShortcut000Help QShortcutY cHenkan QShortcutOkb Hibernate QShortcut0r00L0jHiragana QShortcut0r00L0j/0000Hiragana Katakana QShortcut\ektHistory QShortcutHomeHome QShortcut0000000 Home Office QShortcut 000000 Home Page QShortcut Nl0n000 Hot Links QShortcutInsIns QShortcutc?QeInsert QShortcut 00000 Kana Lock QShortcut 00000 Kana Shift QShortcuto"[WKanji QShortcut0000Katakana QShortcut000000n^0N 0R0Keyboard Brightness Down QShortcut000000n^0N 0R0Keyboard Brightness Up QShortcut000000000n00000Keyboard Light On/Off QShortcut000000000 Keyboard Menu QShortcutvRM0nujS0k00000Last Number Redial QShortcut (0)0nwR Launch (0) QShortcut (1)0nwR Launch (1) QShortcut (2)0nwR Launch (2) QShortcut (3)0nwR Launch (3) QShortcut (4)0nwR Launch (4) QShortcut (5)0nwR Launch (5) QShortcut (6)0nwR Launch (6) QShortcut (7)0nwR Launch (7) QShortcut (8)0nwR Launch (8) QShortcut (9)0nwR Launch (9) QShortcut (A)0nwR Launch (A) QShortcut (B)0nwR Launch (B) QShortcut (C)0nwR Launch (C) QShortcut (D)0nwR Launch (D) QShortcut (E)0nwR Launch (E) QShortcut (F)0nwR Launch (F) QShortcut 0000nwR Launch Mail QShortcut00000nwR Launch Media QShortcut!Left QShortcut000 LightBulb QShortcut0000Logoff QShortcut 0000n Mail Forward QShortcut 00000Market QShortcutSXbmMassyo QShortcut k!0n0000 Media Next QShortcut00000nNfBP\kb Media Pause QShortcut00000nQu Media Play QShortcut RM0n0000Media Previous QShortcut00000n2 Media Record QShortcut00000nP\kb Media Stop QShortcutOpMeeting QShortcut0000Menu QShortcutMenu PBMenu PB QShortcut0000000 Messenger QShortcutMetaMeta QShortcut0000n^0N 0R0Monitor Brightness Down QShortcut0000n^0N 0R0Monitor Brightness Up QShortcutq!Y cMuhenkan QShortcutQhPMultiple Candidate QShortcuti}Music QShortcut 00000My Sites QShortcut0000News QShortcut0D0D0HNo QShortcutNum LockNum Lock QShortcutNumLockNumLock QShortcutNumber Lock Number Lock QShortcut URL00OOpen URL QShortcut 00000Option QShortcutPage Down Page Down QShortcutPage UpPage Up QShortcut0N0QPaste QShortcutNfBP\kbPause QShortcut PgDownPgDown QShortcutPgUpPgUp QShortcutqPhone QShortcutu;PPictures QShortcutn00 Power Off QShortcutRMPPrevious Candidate QShortcutSpR7Print QShortcutPrint Screen Print Screen QShortcutfeRefresh QShortcut0000Reload QShortcutOReply QShortcut ReturnReturn QShortcut!Right QShortcut000[WRomaji QShortcutRotate WindowsRotate Windows QShortcutRotation KB Rotation KB QShortcutRotation PB Rotation PB QShortcutO[XSave QShortcut00000000 Screensaver QShortcutScroll Lock Scroll Lock QShortcutScrollLock ScrollLock QShortcuti}"Search QShortcutxbSelect QShortcutOSend QShortcut ShiftShift QShortcut0000Shop QShortcut0000Sleep QShortcut SpaceSpace QShortcut00000000 Spellchecker QShortcut u;b0nRRr Split Screen QShortcut00000000 Spreadsheet QShortcut 00000Standby QShortcutP\kbStop QShortcut[W^USubtitle QShortcut0000Support QShortcut 00000Suspend QShortcut SysReqSysReq QShortcutSystem RequestSystem Request QShortcutTabTab QShortcut 000000 Task Panel QShortcutzg+Terminal QShortcutfBTime QShortcutq/}Bq0nRfToggle Call/Hangup QShortcut"00000nQu0hNfBP\kb0nR0f0HToggle Media Play/Pause QShortcut000Tools QShortcut0000000Top Menu QShortcutSXv{2Touroku QShortcuteňLTravel QShortcut ؗ0N 0R0 Treble Down QShortcut ؗ0N 0R0 Treble Up QShortcut^^/Wq!}(UWB)Ultra Wide Band QShortcut!Up QShortcutRu;Video QShortcuthy:View QShortcut0000000 Voice Dial QShortcut 0N 0R0 Volume Down QShortcutm Volume Mute QShortcut 0N 0R0 Volume Up QShortcutWWWWWW QShortcutwRWake Up QShortcut Web000WebCam QShortcutq!}Wireless QShortcut00000000Word Processor QShortcutY cXFer QShortcut0o0DYes QShortcutQhZenkaku QShortcut Qh/SJZenkaku Hankaku QShortcutbY'Zoom In QShortcut~.\Zoom Out QShortcut iTouchiTouch QShortcut 00020 Page downQSlider000]0x00000 Page leftQSlider1000S0x00000 Page rightQSlider 000b;0Page upQSliderOMnPositionQSlider0c[0U00_00000000o00000U00f0D0~0[0Address type not supportedQSocks5SocketEngine.SOCKSv5 00000c}0bT&0U00~0W0_(Connection not allowed by SOCKSv5 serverQSocks5SocketEngine.000000nc}0LO0n}BNRM0kRe0U00~0W0_&Connection to proxy closed prematurelyQSocks5SocketEngine"000000x0nc}0LbT&0U00~0W0_Connection to proxy refusedQSocks5SocketEngine(000000h0nc}0L0000000W0~0W0_Connection to proxy timed outQSocks5SocketEngine.SOCKS 00000 5 0000n0000g0YGeneral SOCKSv5 server failureQSocks5SocketEngine&000000dO\0L0000000W0~0W0_Network operation timed outQSocks5SocketEngine000000n<0kY1eW0W0~0W0_Proxy authentication failedQSocks5SocketEngine&000000n<0kY1eW0W0~0W0_: %1Proxy authentication failed: %1QSocks5SocketEngine 000000000L0d0K00~0[0Proxy host not foundQSocks5SocketEngine2SOCKS 00000 5 000000n0000g0YSOCKS version 5 protocol errorQSocks5SocketEngine60S0n SOCKSv5 00000o00000U00f0D0~0[0SOCKSv5 command not supportedQSocks5SocketEngineg RgP(TTL)0L0M00~0W0_ TTL expiredQSocks5SocketEngine8g*w0n SOCKSv5 000000000g0Y: 0x%1%Unknown SOCKSv5 proxy error code 0x%1QSocks5SocketEngine 00000CancelQSoftKeyManager}BNDoneQSoftKeyManager}BNExitQSoftKeyManagerOKOKQSoftKeyManager 00000OptionsQSoftKeyManagerxbSelectQSoftKeyManagern00YLessQSpinBoxX00YMoreQSpinBox 00000CancelQSql}0000000W0~0Y0K?Cancel your edits?QSqlxConfirmQSqlRJdDeleteQSql0S0n00000RJd0W0~0Y0K?Delete this record?QSqlc?QeInsertQSql0D0D0HNoQSql}Q[0O[X0W0~0Y0K? Save edits?QSql 000000UpdateQSql0o0DYesQSql4u0Lc[0U00f0D0j0D0_00 QUndoModel00v0YRedo QUndoStack%1 000v0YRedo %1 QUndoStackQC0kb;0YUndo QUndoStack%1 0QC0kb;0YUndo %1 QUndoStackUnicodeR6_e[W0c?Qe Insert Unicode control characterQUnicodeControlCharacterMenuLRE (]j*f0MYc[)$LRE Start of left-to-right embeddingQUnicodeControlCharacterMenuLRM (]j*f0Mc[)LRM Left-to-right markQUnicodeControlCharacterMenu"LRO (]j*f0MN f0MYc[)#LRO Start of left-to-right overrideQUnicodeControlCharacterMenu PDF (eTN f0M0n}BNc[)PDF Pop directional formattingQUnicodeControlCharacterMenuRLE (Sj*f0MYc[)$RLE Start of right-to-left embeddingQUnicodeControlCharacterMenuRLM (Sj*f0Mc[)RLM Right-to-left markQUnicodeControlCharacterMenu"RLO (Sj*f0MN f0MYc[)#RLO Start of right-to-left overrideQUnicodeControlCharacterMenuZWJ (^E0n0j0Dc}e[W)ZWJ Zero width joinerQUnicodeControlCharacterMenu ZWNJ (^E0n0j0D^c}e[W)ZWNJ Zero width non-joinerQUnicodeControlCharacterMenuZWSP (^E0nq!0Dzzv})ZWSP Zero width spaceQUnicodeControlCharacterMenuURL 0hy:0g0M0~0[0Cannot show URL QWebFrame$MIME Type 0hy:0g0M0~0[0Cannot show mimetype QWebFrame00000L[XW(0W0~0[0File does not exist QWebFrame600000LY f0U00_0_000000n0000N-e0W0~0W0_'Frame load interrupted by policy change QWebFrame$000000000g000L0D0~0Y&Loading is handled by the media engine QWebFrame000000o00000U00~0W0_Request blocked QWebFrame 000000o000000U00~0W0_Request canceled QWebFrame 000000o000000U00~0W0_Request cancelled QWebFrame%1 (%2x%3 0000)%1 (%2x%3 pixels)QWebPage(%1 e %2 fB %3 R %4 y&%1 days %2 hours %3 minutes %4 secondsQWebPage%1 fB %2 R %3 y%1 hours %2 minutes %3 secondsQWebPage%1 R %2 y%1 minutes %2 secondsQWebPage%1 y %1 secondsQWebPage%n P 0n0000 %n file(s)QWebPage f0kRAdd To DictionaryQWebPage][0[ Align LeftQWebPageS[0[ Align RightQWebPage00000}  Audio ElementQWebPage*00000} 0nQuR6_0h000000nhy:2Audio element playback controls and status displayQWebPageQu0Y0Y0Begin playbackQWebPageY*[WBoldQWebPageN zBottomQWebPage 000000CenterQWebPage0000J00sel000000Y0Check Grammar With SpellingQWebPage000000000Y0Check SpellingQWebPageQeRN-0k000000000Y0Check Spelling While TypingQWebPage00000xb Choose FileQWebPagei}"0n\ekt0000Clear recent searchesQWebPage000CopyQWebPage000000000 Copy AudioQWebPage u;P0000 Copy ImageQWebPageu;P0n00000000Copy Image AddressQWebPage000QH0000 Copy LinkQWebPage0000000 Copy VideoQWebPagesW(0nRu;0n00000Current movie statusQWebPagesW(0nRu;QufBCurrent movie timeQWebPageR0S0CutQWebPage 00000DefaultQWebPageSX0ng+\>0~0gRJdDelete to the end of the wordQWebPageSX0nQH-0~0gRJdDelete to the start of the wordQWebPages}0DetailsQWebPageeT DirectionQWebPage}LNfB Elapsed TimeQWebPage0000000hy:Enter FullscreenQWebPage0000FontsQWebPage0000000000Fullscreen ButtonQWebPageb;0Go BackQWebPage20 Go ForwardQWebPage0000hel00YHide Spelling and GrammarQWebPageq!IgnoreQWebPageq! Ignore Grammar context menu itemIgnoreQWebPageq!gPIndefinite timeQWebPage 00000IndentQWebPage{gaf0M0nc?QeInsert Bulleted ListQWebPage^N0M0000nc?QeInsert Numbered ListQWebPagee0W0DL0c?QeInsert a new lineQWebPagee0W0Dk=0c?QeInsert a new paragraphQWebPageigInspectQWebPageeOSItalicQWebPage$JavaScript fTJ - %1JavaScript Alert - %1QWebPage$JavaScript x - %1JavaScript Confirm - %1QWebPage$JavaScript UOL - %1JavaScript Problem - %1QWebPage*JavaScript 00000 - %1JavaScript Prompt - %1QWebPageN!zc0HJustifyQWebPage]z Left edgeQWebPage]j*f0M Left to RightQWebPage00000000000Live BroadcastQWebPage N-... Loading...QWebPage f0K0c0YLook Up In DictionaryQWebPage000000L0B00~0[0Missing Plug-inQWebPage00000ng+\>0k00000yR'Move the cursor to the end of the blockQWebPageez0ng+\>0k00000yR*Move the cursor to the end of the documentQWebPageeg+0k00000yR&Move the cursor to the end of the lineQWebPagek!0ne[W0x00000yR%Move the cursor to the next characterQWebPagek!0nL0k00000yR Move the cursor to the next lineQWebPagek!0nSX0k00000yR Move the cursor to the next wordQWebPageRM0ne[W0k00000yR)Move the cursor to the previous characterQWebPageRM0nL0k00000yR$Move the cursor to the previous lineQWebPageRM0nSX0k00000yR$Move the cursor to the previous wordQWebPage00000nQH-0k00000yR)Move the cursor to the start of the blockQWebPageez0nQH-0k00000yR,Move the cursor to the start of the documentQWebPagee-0k00000yR(Move the cursor to the start of the lineQWebPageRu;QufB0000000Movie time scrubberQWebPage"Ru;QufB00000000n0d0~0Movie time scrubber thumbQWebPage0000MuteQWebPage m000 Mute ButtonQWebPageX0m0Y0Mute audio tracksQWebPagecn,P0o0B00~0[0No Guesses FoundQWebPage00000Lxb0U00f0D0~0[0No file selectedQWebPagei}"0n\ekt0o0B00~0[0No recent searchesQWebPage0000000O Open AudioQWebPage 00000e0W0D000000g0O Open FrameQWebPage000000O Open ImageQWebPage 00000O Open LinkQWebPage 00000O Open VideoQWebPagee0W0D000000g0OOpen in New WindowQWebPage 000000OutdentQWebPage 000000OutlineQWebPage 100020 Page downQWebPage1000]0x00000 Page leftQWebPage1000S0x00000 Page rightQWebPage 1000b;0Page upQWebPage0N0QPasteQWebPage0000h0W0f00000T00[0Paste and Match StyleQWebPageNfBP\kbPauseQWebPageNfBP\kb000 Pause ButtonQWebPageQu0NfBP\kb0Y0Pause playbackQWebPageQuPlayQWebPage Qu000 Play ButtonQWebPage$00000000000gRu;0Qu0Y0Play movie in full-screen modeQWebPage i}"0n\ektRecent searchesQWebPage0000000nN P0kT0W0~0W0_Redirection limit reachedQWebPage0000ReloadQWebPagek0fBRemaining TimeQWebPagek0Ru;QufBRemaining movie timeQWebPage Ř0nRJdRemove formattingQWebPage0000ResetQWebPage(0000000Ru;0nQu0sW(fB0kb;0#Return streaming movie to real-timeQWebPagesW(fB0kb;0000Return to Real-time ButtonQWebPage]0Mb;0W000 Rewind ButtonQWebPageRu;0n]0Mb;0W Rewind movieQWebPageSz Right edgeQWebPageSj*f0M Right to LeftQWebPage u;P0O[X Save ImageQWebPage000QH0O[X... Save Link...QWebPageN 0x00000 Scroll downQWebPage0S0S0k00000 Scroll hereQWebPage]0x00000 Scroll leftQWebPageS0x00000 Scroll rightQWebPageN 0x00000 Scroll upQWebPageWeb 0i}"Search The WebQWebPage]0Mb;0W000Seek Back ButtonQWebPage e0000Seek Forward ButtonQWebPage\0Wb;0Seek quickly backQWebPage\0W20Seek quickly forwardQWebPage 0Y0y0f0xb Select AllQWebPage00000ng+\>0~0gxbSelect to the end of the blockQWebPage0000000ng+\>0~0gxb!Select to the end of the documentQWebPage eg+0~0gxbSelect to the end of the lineQWebPagek!0ne[W0xbSelect to the next characterQWebPage k!0nL0xbSelect to the next lineQWebPagek!0nSX0xbSelect to the next wordQWebPageRM0ne[W0xb Select to the previous characterQWebPage RM0nL0xbSelect to the previous lineQWebPageRM0nSX0xbSelect to the previous wordQWebPage00000nQH-0K0xb Select to the start of the blockQWebPage0000000nQH-0K0xb#Select to the start of the documentQWebPage e-0K0xbSelect to the start of the lineQWebPage0000hel0hy:Show Spelling and GrammarQWebPage 00000SliderQWebPage000000n0d0~0 Slider ThumbQWebPage000SpellingQWebPage00000hy:Status DisplayQWebPageP\kbStopQWebPage S0m0W} StrikethroughQWebPageOSubmitQWebPageOQSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPage N N0Me[W SubscriptQWebPage N N0Me[W SuperscriptQWebPage00000neTText DirectionQWebPageJ0S0n0000n000000k0oUOL0L0B000F0g0Y0 000000P\kb0W0~0Y0K?RThe script on this page appears to have a problem. Do you want to stop the script?QWebPage&Next >QWizard< b;0(&B)< &BackQWizard 00000CancelQWizardiu(CommitQWizard}0MContinueQWizard}BNDoneQWizardb;0Go BackQWizard000HelpQWizard%1 - [%2] %1 - [%2] QWorkspace0X0(&C)&Close QWorkspace yR(&M)&Move QWorkspaceQC0kb;0Y(&R)&Restore QWorkspace0000Y f(&S)&Size QWorkspace00000d(&U)&Unshade QWorkspace0X0Close QWorkspacegY'S(&X) Ma&ximize QWorkspaceg\S(&N) Mi&nimize QWorkspaceg\SMinimize QWorkspaceQC0kb;0Y Restore Down QWorkspace0000(&A)Sh&ade QWorkspace^80kbKRM0khy:(&T) Stay on &Top QWorkspaceLXML[0000k0o00000000[0K00000000[0L_ʼn0g0YYencoding declaration or standalone declaration expected while reading the XML declarationQXml0Y0000000n0000[0k0000L0B00~0Y3error in the text declaration of an external entityQXml&00000ngN-0k0000Lvzu0W0~0W0_$error occurred while parsing commentQXml(000000ngN-0k0000Lvzu0W0~0W0_$error occurred while parsing contentQXml60000000000n[0gN-0k0000Lvzu0W0~0W0_5error occurred while parsing document type definitionQXml"} 0ngN-0k0000Lvzu0W0~0W0_$error occurred while parsing elementQXml"Sqg0ngN-0k0000Lvzu0W0~0W0_&error occurred while parsing referenceQXml$m0k00c0f0000Lvz0U00~0W0_error triggered by consumerQXml0kOY0j00n0L0d0D0f0D0~0Y0!Extra content at end of document. QXmlStreamq!R0jT RMzz0nc[0g0Y0Illegal namespace declaration. QXmlStreamq!R0j XML e[W0g0Y0Invalid XML character. QXmlStreamq!R0j XML T 0g0Y0Invalid XML name. QXmlStream$q!R0j XML 00000c[0g0Y0Invalid XML version string. QXmlStream(XML [0kq!R0j\^`'0L0d0D0f0D0~0Y0%Invalid attribute in XML declaration. QXmlStreamq!R0je[W0x0nSqg0g0Y0Invalid character reference. QXmlStreamq!R0j0000000g0Y0Invalid document. QXmlStream0000000nP$0Lq!R0g0Y0Invalid entity value. QXmlStreamq!R0jQtT}N0g0Y0$Invalid processing instruction name. QXmlStream>000000000000n[0k0J0D0f NDATA 0L0B00~0Y0&NDATA in parameter entity declaration. QXmlStream8T RMzz0n0000000 '%1' 0o[0U00f0D0~0[0"Namespace prefix '%1' not declared QXmlStream&Y000h0}BN000L0000W0~0[00 Opening and ending tag mismatch. QXmlStream$0000000LN-0g}B00c0f0D0~0Y0Premature end of document. QXmlStream(Q^00W0f0D00000000vz0W0~0W0_0Recursive entity detected. QXmlStream@\^`'P$0h0W0f0Y000000 '%1' 0Q^c[0W0f0D0~0Y05Reference to external entity '%1' in attribute value. QXmlStream>0~0`0000W0f0D0j0D000000 '%1' 0Sqg0W0f0D0~0Y0"Reference to unparsed entity '%1'. QXmlStream60S0n000000g0o0']]>' 0o1S0U00f0D0~0[00&Sequence ']]>' not allowed in content. QXmlStreamHstandalone 0nc[0o yes 0~0_0o no 0n0c[0g0M0~0Y0"Standalone accepts only yes or no. QXmlStream.Y000Ng0W0f0D0~0W0_0L000d0K00~0[00Start tag expected. QXmlStream0k0000W0~0W0_0,%1 and %2 match the start and end of a line. QtXmlPatternsP%2 0n\^`' %1 0oW^W %4 0n00F0k %3 0b@g 0W0j0O0f0o0D0Q0~0[009%1 attribute in %2 must have %3 use like in base type %4. QtXmlPatternsFm>uTW0n %1 \^`'0oW^W0n00F0k %2 0g0j0Q00p0j00~0[00B%1 attribute in derived complex type must be %2 like in base type. QtXmlPatternsf%2 } 0n %1 \^`'0oN kc0j000000T+00g0D0~0Y: {%3} 0oW %4 0nP$0g0o0B00~0[00T%1 attribute of %2 element contains invalid content: {%3} is not a value of type %4. QtXmlPatternsF%2 } 0n %1 \^`'0oN kc0j000000T+00g0D0~0Y: {%3}0:%1 attribute of %2 element contains invalid content: {%3}. QtXmlPatternsD%2 } 0n %1 \^`'0o %3 \^`'000Y'0M0jP$0k0j0c0f0D0~0Y0>%1 attribute of %2 element has larger value than %3 attribute. QtXmlPatternsB%2 } 0n %1 \^`'0o %3 0K %4 0g0j0Q00p0j00~0[00,%1 attribute of %2 element must be %3 or %4. QtXmlPatterns^%2 } 0n %1 \^`'0o %30%4 0~0_0o URI 0n0000T+00g0D0j0Q00p0j00~0[00A%1 attribute of %2 element must contain %3, %4 or a list of URIs. QtXmlPatterns@%2 } 0n %1 \^`'0o %3 0N0nP$0T+00g0o0D0Q0~0[00F%1 attribute of %2 element must either contain %3 or the other values. QtXmlPatternsF%2 } 0n %1 \^`'0nP$0o %3 0K %4 0g0j0Q00p0j00~0[009%1 attribute of %2 element must have a value of %3 or %4. QtXmlPatterns<%2 } 0n %1 \^`'0nP$0o %3 0g0j0Q00p0j00~0[003%1 attribute of %2 element must have a value of %3. QtXmlPatterns`%2 } 0n %1 \^`'0o %4 \^`'0L0000U00f0D00n0gP$ %3 0c0_0j0Q00p0j00~0[00R%1 attribute of %2 element must have the value %3 because the %4 attribute is set. QtXmlPatterns8%2 } 0n %1 \^`'0o %3 0g0B0c0f0o0D0Q0~0[00*%1 attribute of %2 element must not be %3. QtXmlPatterns%1 0S_0g0M0~0[0%1 cannot be retrieved QtXmlPatterns8%1 0o %2 0c0c0_TW^W0c0dN0o0g0M0~0[00/%1 cannot have complex base type that has a %2. QtXmlPatternsH%1 0oq!R0j0000T+00` %2 000000LT+0~00f0D0~0Y: %30+%1 contains %2 facet with invalid data: %3. QtXmlPatterns$%1 0oq!R0j0000T+00g0D0~0Y0%1 contains invalid data. QtXmlPatternsR00000000 %2 0g0o1S0U00f0D0j0D000000L %1 0kT+0~00f0D0~0Y0E%1 contains octets which are disallowed in the requested encoding %2. QtXmlPatternsL%1 } %2 0o %3 } 0LQ[0W0f0D0R6}0h0W0fq!R0g0Y: %40L%1 element %2 is not a valid restriction of the %3 element it redefines: %4. QtXmlPatternsJ%1 } 0o %3 0 %4 NY0nP$0n %2 \^`'0c0dN0o0g0M0~0[00C%1 element cannot have %2 attribute with value other than %3 or %4. QtXmlPatterns@%1 } 0o %3 NY0nP$0n %2 \^`'0c0dN0o0g0M0~0[00=%1 element cannot have %2 attribute with value other than %3. QtXmlPatternsB%1 } 0o %2 \^`'0 %3 [P} 0n0i0a00c0c0f0D0~0[009%1 element has neither %2 attribute nor %3 child element. QtXmlPatterns2%1 } 0o0S0n0000000g1S0U00f0D0~0[00*%1 element is not allowed in this context. QtXmlPatterns.%1 } 0o0S0n0000Q0g1S0U00f0D0~0[0'%1 element is not allowed in this scope QtXmlPatternsN%3 \^`'0L[XW(0W0f0D0X4T0%2 } Q0g %1 } 0o1S0U00f0D0~0[00G%1 element is not allowed inside %2 element if %3 attribute is present. QtXmlPatternsR%1 } 0o[aT RMzz %3 0h0W0f %2 \^`'P$0c0dN01S0U00f0D0~0[00Y%1 element is not allowed to have the same %2 attribute value as the target namespace %3. QtXmlPatternsZ%1 } 0o %2 \^`'0[P} 0h0W0f %3 0 %4 0n0i0a00c0c0f0D0f0o0D0Q0~0[00F%1 element must have either %2 attribute or %3 or %4 as child element. QtXmlPatternsF%1 } 0o %2 0K %3 \^`'0n0i0a00K0c0_0j0Q00p0j00~0[00/%1 element must have either %2 or %3 attribute. QtXmlPatternsB%1 } 0o %2 0h %3 \^`'0T fB0kc0c0f0D0f0o0D0Q0~0[006%1 element must not have %2 and %3 attribute together. QtXmlPatterns2%1 } 0o %2 0K %3 \^`'0_ʼn0h0W0~0Y0.%1 element requires either %2 or %3 attribute. QtXmlPatterns@%2 [P} N0M %1 } 0o %3 \^`'0c0c0f0o0D0Q0~0[00>%1 element with %2 child element must not have a %3 attribute. QtXmlPatternsV%2 \^`'0j0W %1 } 0o[aT RMzz0j0W0n0000Q0k0B0N01S0U00f0D0~0[00V%1 element without %2 attribute is not allowed inside schema without target namespace. QtXmlPatterns@%1 000000h %2 000000T fB0ks0YN0o0g0M0~0[00-%1 facet and %2 facet cannot appear together. QtXmlPatterns\%1 000000o0%3 000000nW^W0L %4 0nX4T0k %2 0k0Y0N0o0g0M0~0[005%1 facet cannot be %2 if %3 facet of base type is %4. QtXmlPatternsf%1 000000o0%4 000000nW^W0L %5 0nX4T0k %2 0 %3 0k0Y0N0o0g0M0~0[00;%1 facet cannot be %2 or %3 if %4 facet of base type is %5. QtXmlPatterns6%1 000000h %2 000000L]z0W0f0D0~0Y0 %1 facet collides with %2 facet. QtXmlPatterns.%1 000000oq!R0jkchs0T+00g0D0~0Y,%1 facet contains invalid regular expression QtXmlPatterns:%1 000000oq!R0jP$ %2 0T+00g0D0~0Y: %30'%1 facet contains invalid value %2: %3. QtXmlPatternsR%1 000000oW^W0n %2 000000hT 0X0K0]0NN 0g0j0Q00p0j00~0[00=%1 facet must be equal or greater than %2 facet of base type. QtXmlPatternsF%1 000000oW^W0n %2 00000NN 0g0j0Q00p0j00~0[004%1 facet must be greater than %2 facet of base type. QtXmlPatternsF%1 000000oW^W0n %2 00000NN 0g0j0Q00p0j00~0[00@%1 facet must be greater than or equal to %2 facet of base type. QtXmlPatternsF%1 000000oW^W0n %2 00000NN 0g0j0Q00p0j00~0[001%1 facet must be less than %2 facet of base type. QtXmlPatterns>%1 000000o %2 00000NN 0g0j0Q00p0j00~0[00$%1 facet must be less than %2 facet. QtXmlPatternsF%1 000000oW^W0n %2 00000NN 0g0j0Q00p0j00~0[00=%1 facet must be less than or equal to %2 facet of base type. QtXmlPatterns>%1 000000o %2 00000NN 0g0j0Q00p0j00~0[000%1 facet must be less than or equal to %2 facet. QtXmlPatternsN%1 000000oW^W0n %2 000000hT P$0b@g 0W0j0Q00p0j00~0[00;%1 facet must have the same value as %2 facet of base type. QtXmlPatternsZ%1 0n00000ep0L0ꎫ0LSqg0W0f0D0IDR6} %2 0n00000ep0hup0j0c0f0D0~0Y0W%1 has a different number of fields from the identity constraint %2 that it references. QtXmlPatternsX%1 0o00000000Ou(0W0_\^`'0b@g 0W0f0D0~0Y0LW^W %2 0ob@g 0W0f0D0~0[007%1 has attribute wildcard but its base type %2 has not. QtXmlPatterns0%1 0o0W^W %2 0g}b0000W0f0D0~0Y0,%1 has inheritance loop in its base type %2. QtXmlPatterns'%1' 0o complex W0g0Y0complex W0x0nWY c0o0g0M0~0[000W0K0W0000000jW0g0B0 '%2' 0x0nY c0o0g0M0~0Y0s%1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works. QtXmlPatterns&W %2 0k[0W0P$ %1 0oq!R0g0Y%1 is an invalid %2 QtXmlPatternsJ%1 0okchs0k0J0D0fq!R0j0000g0Y0Ou(S0j0000ok!0n00g0Y:?%1 is an invalid flag for regular expressions. Valid flags are: QtXmlPatterns*%1 0oT RMzz URI 0h0W0fq!R0g0Y0%1 is an invalid namespace URI. QtXmlPatterns,%1 0og R0jkchs0g0o0B00~0[0: %2/%1 is an invalid regular expression pattern: %2 QtXmlPatterns0%1 0o00000000000T 0h0W0fq!R0g0Y0$%1 is an invalid template mode name. QtXmlPatterns2%1 0o00000U00f0D0j0D00000n0000g0Y0%1 is an unknown schema type. QtXmlPatterns2%1 0o00000U00f0D0j0D000000000g0Y0%1 is an unsupported encoding. QtXmlPatterns.%1 0o0XML 1.0 e[W0h0W0fq!R0g0Y0$%1 is not a valid XML 1.0 character. QtXmlPatterns(Qtc[0k0J0D0f0'%1' 0oq!R0g0Y04%1 is not a valid name for a processing-instruction. QtXmlPatterns$%1 0oepP$00000h0W0fq!R0g0Y0"%1 is not a valid numeric literal. QtXmlPatterns^%1 0o000000h0W0fq!R0g0Y0%2 0g0B0_ʼn0L0B00~0Y0O0H0p "%3" 0n00F0k0g0Y0Z%1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3. QtXmlPatterns(%1 0o0W %2 0nP$0h0W0fq!R0g0Y0#%1 is not a valid value of type %2. QtXmlPatterns$%1 0o0R0s0YP$0g0o0B00~0[00$%1 is not a whole number of minutes. QtXmlPatternsN%1 0og}Bv0k[0U00b_50k00 %2 0m>u0Y0N0o1S0U00f0D0~0[00S%1 is not allowed to derive from %2 by extension as the latter defines it as final. QtXmlPatternsP%1 0og}Bv0k[0U000000k00 %2 0m>u0Y0N0o1S0U00f0D0~0[00N%1 is not allowed to derive from %2 by list as the latter defines it as final. QtXmlPatternsN%1 0og}Bv0k[0U00R6}0k00 %2 0m>u0Y0N0o1S0U00f0D0~0[00U%1 is not allowed to derive from %2 by restriction as the latter defines it as final. QtXmlPatternsX%1 0og}Bv0k[0U00 union 0k00 %2 0m>u0Y0N0o1S0U00f0D0~0[00O%1 is not allowed to derive from %2 by union as the latter defines it as final. QtXmlPatterns>%1 0oꎫ0hT T 0n0000W0b@g 0Y0N01S0W0f0D0~0[00E%1 is not allowed to have a member type with the same name as itself. QtXmlPatterns6%1 0o0i00j000000c0dN01S0U00f0D0~0[00%%1 is not allowed to have any facets. QtXmlPatternsV'%1' 0o000000jW0g0o0B00~0[00WY c0o000000jW0k[0W0f0n0S0g0Y0C%1 is not an atomic type. Casting is only possible to atomic types. QtXmlPatterns^'%1' 0o00000\^`'[0g0o0B00~0[00000000000j_0o00000U00f0D0~0[00g%1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported. QtXmlPatterns,%2 0k000h %1 0oY_S0g0o0B00~0[00 %1 is not valid according to %2. QtXmlPatterns,P$ %1 0o0W %2 0nP$0h0W0fq!R0g0Y0&%1 is not valid as a value of type %2. QtXmlPatterns&%1 0oe9Le[W(R)0k0000W0~0W0_%1 matches newline characters QtXmlPatterns:%1 0n_0k0o0%2 0K %3 0L}0K0j0Q00p0j00~0[00J%1 must be followed by %2 or %3, not at the end of the replacement string. QtXmlPatternsPm>u00000000n %1 0o0W^00000000n %2 0nR6}0h0W0fq!R0g0YH%1 of derived wildcard is not a valid restriction of %2 of base wildcard QtXmlPatternsHSqg %3 0n %1 0 %2 \^`'0o\^`'[ %4 0k0000W0~0[00T%1 or %2 attribute of reference %3 does not match with the attribute declaration %4. QtXmlPatternsJ%1 0o %3 0g0 %4 } 0g00j0DIDR6} %2 0Sqg0W0f0D0~0Y0A%1 references identity constraint %2 that is no %3 or %4 element. QtXmlPatterns>%1 0og*w0n %2 0K %3 } %4 0Sqg0W0f0D0~0Y0*%1 references unknown %2 or %3 element %4. QtXmlPatternsD%1 0o0\0O0h0 %n P 0n_ep0_ʼn0h0W0~0Y0%2 0oq!R0g0Y0=%1 requires at least %n argument(s). %2 is therefore invalid. QtXmlPatternsH%1 0o0gY'0g %n P 0n_ep00h00S0h0L0g0M0~0Y0%2 0oq!R0g0Y09%1 takes at most %n argument(s). %2 is therefore invalid. QtXmlPatterns%1 0LT|0p00~0W0_0%1 was called. QtXmlPatternsjlist 0km>u0U00X4T0%1, %2, %3, %4, %5, %6 000000o1S0U00f0D0~0[00F%1, %2, %3, %4, %5 and %6 facets are not allowed when derived by list. QtXmlPatternsB'%1' \^`'0oN kc0j QName 0nQ[0T+00g0D0~0Y: %202'%1' attribute contains invalid QName content: %2. QtXmlPatterns(00000L %1 0T+00S0h0o0g0M0~0[0A comment cannot contain %1 QtXmlPatterns.00000o %1 0g}BN0Y00S0h0o0g0M0~0[00A comment cannot end with a %1. QtXmlPatterns@sW(0n (%1) 0g0o1S0U00f0D0j0Diː 0LiQ0U00~0W0_0LA construct was encountered which is disallowed in the current language(%1). QtXmlPatternsPjn0nT RMzz0n[0o0ep0Y ep0000000n[0nRM0k0W0j0Q00p0j00~0[00^A default namespace declaration must occur before function, variable, and option declarations. QtXmlPatternsdvzMv0jc[0n} 0Lwell formed0g0o0B00~0[00'%1' 0L0'%2' 0g}B00c0f0D0~0Y0EA direct element constructor is not well-formed. %1 is ended with %2. QtXmlPatterns6000000 '%1' 0nep0o0Y0g0k[XW(0W0f0D0~0Y00A function already exists with the signature %1. QtXmlPatternsf00000000000vcUO0Y00S0h0o0g0M0~0[00000000000K0000000Y0_ʼn0L0B00~0Y0VA library module cannot be evaluated directly. It must be imported from a main module. QtXmlPatterns4ep0x0n000000o000000g0B0c0f0o0j00~0[00uW0gW^W0n\^`' %1 0L0d0K00~0[007Attribute %1 from base type is missing in derived type. QtXmlPatterns@\^`' %1 0o %2 0K0m>u0W0_W0c0dP$R6}0c0c0f0D0~0Y0?Attribute %1 has value constraint but has type derived from %2. QtXmlPatternsPm>uTW0n\^`' %1 0oW^W0n00F0k %2 P$R6}0c0_0j0Q00p0j00~0[00UAttribute %1 in derived complex type must have %2 value constraint like in base type. QtXmlPatternsBm>uTW0n\^`' %1 0o %2 P$R6}0c0_0j0Q00p0j00~0[00CAttribute %1 in derived complex type must have %2 value constraint. QtXmlPatternsRm>uTW0n\^`' %1 0o0W^W0hT i0k %2 P$R6}0c0_0j0Q00p0j00~0[00^Attribute %1 in derived complex type must have the same %2 value constraint like in base type. QtXmlPatterns.\^`'0000 %1 0o0Y0g0k[0U00f0D0~0Y0#Attribute group %1 already defined. QtXmlPatternsT\^`'0000 %1 0o %3 0}b0W0_W0nP$R6}0c0d\^`' %2 0T+00g0D0~0Y0bAttribute group %1 contains attribute %2 that has value constraint but type that inherits from %3. QtXmlPatterns8\^`'0000 %1 0o\^`' %2 020kT+00g0D0~0Y0/Attribute group %1 contains attribute %2 twice. QtXmlPatternsZ\^`'0000 %1 0o0i0a00 %2 0K0m>u0W0_W0c0d20d0nup0j0\^`'0T+00g0D0~0Y0ZAttribute group %1 contains two different attributes that both have types derived from %2. QtXmlPatterns*\^`'0000 %1 0L_tSqg0W0f0D0~0Y0*Attribute group %1 has circular reference. QtXmlPatternsV%1 0n\^`'00000000o0W^W %2 0n\^`'00000000nR6}0h0W0fq!R0g0Y0ZAttribute wildcard of %1 is not a valid restriction of attribute wildcard of base type %2. QtXmlPatternsJTW %1 0n\^`'0o0W^W %2 0n\^`'0nb_50h0W0fq!R0g0Y: %30^Attributes of complex type %1 are not a valid extension of the attributes of base type %2: %3. QtXmlPatternsJTW %1 0n\^`'0o0W^W %2 0n\^`'0nR6}0h0W0fq!R0g0Y: %30bAttributes of complex type %1 are not a valid restriction from the attributes of base type %2: %3. QtXmlPatterns:W^\^`' %1 0o_Ř0g0Y0Lm>u\^`'0o0]0F0j0c0f0D0~0[00;Base attribute %1 is required but derived attribute is not. QtXmlPatterns8W^\^`' %1 0o_Ř0g0Y0Lm>u[Q0k0d0K00~0[00@Base attribute %1 is required but missing in derived definition. QtXmlPatterns@W^[0o %1 } 0T+00g0D0~0Y0Lm>u[Q0g0d0K00~0[0PBase definition contains an %1 element that is missing in the derived definition QtXmlPatterns2%2 } 0nW^W %1 0lz0g0M0~0[00g0W0_0.Base type %1 of %2 element cannot be resolved. QtXmlPatterns.TW0nW^W %1 0lz0g0M0~0[00g0W0_00Base type %1 of complex type cannot be resolved. QtXmlPatternsRSX}W %2 0nW^W %1 0o %3 \^`'Q0kR6}0c0dN01S0U00f0D0~0[00RBase type %1 of simple type %2 is not allowed to have restriction in %3 attribute. QtXmlPatternsRSX}W %2 0nW^W %1 0oTW0n uinon 0c0c0f0D0j0Q00p0j00~0[00:Base type %1 of simple type %2 must have variety of union. QtXmlPatterns6SX}W %1 0nW^W0oTW %2 0k0o0g0M0~0[006Base type of simple type %1 cannot be complex type %2. QtXmlPatternsFSX}W %1 0nW^W0og}Bv0kR6}0k00m>u0h0W0f[0U00f0D0~0Y0KBase type of simple type %1 has defined derivation by restriction as final. QtXmlPatternsBSX}W %1 0nW^W0oTW0n0000c0c0f0D0j0Q00p0j00~0[00;Base type of simple type %1 must have variety of type list. QtXmlPatternsFbinary 000000L length 000000k0000W0~0[00/Binary content does not match the length facet. QtXmlPatternsLbinary 000000L maxLength 000000k0000W0~0[002Binary content does not match the maxLength facet. QtXmlPatternsLbinary 000000L minLength 000000k0000W0~0[002Binary content does not match the minLength facet. QtXmlPatterns@binary 000000LRcW00000Q0nN0k0B00~0[006Binary content is not listed in the enumeration facet. QtXmlPatternsFm>u} %1 0n Block R6}0o0W^} 000_10O0g0M0~0[00YBlock constraints of derived element %1 must not be more weaker than in the base element. QtXmlPatterns@boolean 000000L0000000000k0000W0~0[00-Boolean content does not match pattern facet. QtXmlPatternsJg*w0n} %1 0Qt0g0M0~0[00g_0Y0} 0oNN 0n00n0g0Y: %20>Can not process unknown element %1, expected elements are: %2. QtXmlPatternsP[P} 0L0]0n0000Q0g0d0K00~0[00Ou(S0j[P} 0ok!0n00n0g0Y: %10HChild element is missing in that scope, possible child elements are: %1. QtXmlPatterns&0000Sqg %1 0L_t0W0f0D0~0Y0 Circular group reference for %1. QtXmlPatterns$W^W %1 0_t}b0W0f0D0~0Y0%Circular inheritance of base type %1. QtXmlPatterns(union %1 0_t}b0W0f0D0~0Y0!Circular inheritance of union %1. QtXmlPatterns^TW %1 0o0%3 } 0000000000kT+00g0D0 %2 0nb_50k0Y0N0o0g0M0~0[00nComplex type %1 cannot be derived by extension from %2 as the latter contains %3 element in its content model. QtXmlPatterns>TW %1 0oW^W %2%3 0K0m>u0Y0N0o0g0M0~0[006Complex type %1 cannot be derived from base type %2%3. QtXmlPatternsNTW %1 0o %3 0}b0W0_W0nP$R6}0c0d\^`' %2 0T+00g0D0~0Y0_Complex type %1 contains attribute %2 that has value constraint but type that inherits from %3. QtXmlPatterns0TW %1 0o\^`' %2 02VT+00g0D0~0Y0,Complex type %1 contains attribute %2 twice. QtXmlPatternsTTW %1 0o0i0a00 %2 0K0m>u0W0_W0c0d20d0nup0j0\^`'0T+00g0D0~0Y0WComplex type %1 contains two different attributes that both have types derived from %2. QtXmlPatternsLT_b %1 0oꎫ0n00000 000Q0g} %2 0͉0U0[0f0D0~0Y0?Complex type %1 has duplicated element %2 in its content model. QtXmlPatterns4TW %1 0o^lz[`'000000b@g 0W0f0D0~0Y0.Complex type %1 has non-deterministic content. QtXmlPatterns2TW %1 0baS0Y0N0o1S0U00f0D0~0[00.Complex type %1 is not allowed to be abstract. QtXmlPatterns8TW %1 0oSX}000000c0_0j0Q00p0j00~0[00)Complex type %1 must have simple content. QtXmlPatternsJTW %1 0oW^000 %2 0n00F0jSX}W0c0_0j0Q00p0j00~0[00DComplex type %1 must have the same simple type as its base class %2. QtXmlPatternsLSX}000000nTW %1 0oTW^W %2 0m>u0Y0N0o0g0M0~0[00PComplex type %1 with simple content cannot be derived from complex base type %2. QtXmlPatterns>m>u} %1 0nTW0o0W^} 0K0iR0km>u0g0M0~0[00OComplex type of derived element %1 cannot be validly derived from base element. QtXmlPatterns6ID %1 0n00000000oNRM0k[0U00f0D0~0Y01Component with ID %1 has been defined previously. QtXmlPatternstTW %1 0n000000000o %2 } 0T+00g0D0~0Y0L^ empty W0m>u0W0_b_50k0Y0N0o0g0M0~0[00qContent model of complex type %1 contains %2 element, so it cannot be derived by extension from a non-empty type. QtXmlPatternsVTW %1 0n00000 0000o0%2 0n00000 0000nb_50h0W0fq!R0g0Y0QContent model of complex type %1 is not a valid extension of content model of %2. QtXmlPatternsR%2 } 0n %1 \^`'0n000000oT RMzz %3 0n00n0g0B0c0f0o0D0Q0~0[00DContent of %1 attribute of %2 element must not be from namespace %3. QtXmlPatterns6\^`' %1 0nQ[0LP$R6}0n[0k0000W0f0D0~0[00@Content of attribute %1 does not match defined value constraint. QtXmlPatterns@\^`' %1 0nQ[0Lꎫ0nW0n[0k0000W0f0D0~0[0: %20?Content of attribute %1 does not match its type definition: %2. QtXmlPatterns>} %1 0nQ[0L[0U00f0D0P$R6}0k0000W0f0D0~0[00>Content of element %1 does not match defined value constraint. QtXmlPatterns@} %1 0nQ[0Lꎫ0nW0n[0h0000W0f0D0~0[0: %20=Content of element %1 does not match its type definition: %2. QtXmlPatterns4W %1 0n0000ozz0k0Y0N01[0U00f0D0~0[00,Data of type %1 are not allowed to be empty. QtXmlPatternsDdate time 000000L0000000000k0000W0~0[00/Date time content does not match pattern facet. QtXmlPatternsXdate time 000000L maxExclusive 000000k0000W0~0[008Date time content does not match the maxExclusive facet. QtXmlPatternsXdate time 000000L maxInclusive 000000k0000W0~0[008Date time content does not match the maxInclusive facet. QtXmlPatternsXdate time 000000L minExclusive 000000k0000W0~0[008Date time content does not match the minExclusive facet. QtXmlPatternsXdate time 000000L minInclusive 000000k0000W0~0[008Date time content does not match the minInclusive facet. QtXmlPatternsFdate time 000000LRcW00000Q0nN0k0B00~0[009Date time content is not listed in the enumeration facet. QtXmlPatterns&%2 g0k0o0%1 e0o[XW(0W0~0[00Day %1 is invalid for month %2. QtXmlPatterns8%1 e0o0g R0j{V %2..%3 0810W0f0D0~0Y0#Day %1 is outside the range %2..%3. QtXmlPatternsldecimal 000000L fractionDigits 000000gc[0U00P$0n{V0k0000W0~0[00;Decimal content does not match in the fractionDigits facet. QtXmlPatternsfdecimal 000000L totalDigits 000000gc[0U00P$0n{V0k0000W0~0[008Decimal content does not match in the totalDigits facet. QtXmlPatterns&\^`' %1 0n[0L[XW(0W0f0D0~0[00,Declaration for attribute %1 does not exist. QtXmlPatterns"} %1 0n[0L[XW(0W0~0[00*Declaration for element %1 does not exist. QtXmlPatternsL%1 0nm>u00000oW^W %2 0LSX}W0np0b_50g0j0Q00p0j00~0[00TDerivation method of %1 must be extension because the base type %2 is a simple type. QtXmlPatterns.m>u\^`' %1 0oW^[0nN-0k[XW(0W0~0[00;Derived attribute %1 does not exist in the base definition. QtXmlPatternsu\^`' %1 0oW^[0n00000000k0000W0~0[00HDerived attribute %1 does not match the wildcard in the base definition. QtXmlPatternsBm>u[0o %1 } 0T+00g0D0~0Y0LW^[Q0g[XW(0W0f0D0~0[0UDerived definition contains an %1 element that does not exists in the base definition QtXmlPatternsdW^} 0L null 01S0W0f0D0j0Dp0m>u} %1 0k null 01S0U0[0N0o0g0M0~0[00FDerived element %1 cannot be nillable as base element is not nillable. QtXmlPatternsBm>u} %1 0oW^000000000_10DP$R6}0c0c0f0D0~0Y0BDerived element %1 has weaker value constraint than base particle. QtXmlPatterns@m>u} %1 0oW^0000000gP$R6}0L[0U00f0D0~0[00KDerived element %1 is missing value constraint as defined in base particle. QtXmlPatternsVm>u0000000o0000001S0W0f0D0~0Y0L0W^0000000g0o1S0W0f0D0~0[00IDerived particle allows content that is not allowed in the base particle. QtXmlPatterns.m>u000000 0k} %1 0L0B00~0[00'Derived particle is missing element %1. QtXmlPatternsBm>u00000000oW^00000000n000000g0o0B00~0[006Derived wildcard is not a subset of the base wildcard. QtXmlPatternsdouble 000000L0000000000k0000W0~0[00,Double content does not match pattern facet. QtXmlPatternsRdouble 000000L maxExclusive 000000k0000W0~0[005Double content does not match the maxExclusive facet. QtXmlPatternsRdouble 000000L maxInclusive 000000k0000W0~0[005Double content does not match the maxInclusive facet. QtXmlPatternsRdouble 000000L minExclusive 000000k0000W0~0[005Double content does not match the minExclusive facet. QtXmlPatternsRdouble 000000L minInclusive 000000k0000W0~0[005Double content does not match the minInclusive facet. QtXmlPatterns@double 000000LRcW00000Q0nN0k0B00~0[006Double content is not listed in the enumeration facet. QtXmlPatterns.%2 } Q0g} T %1 0L͉0W0f0D0~0Y0*Duplicated element names %1 in %2 element. QtXmlPatterns.SX}W %1 Q0g000000L͉0W0f0D0~0Y0$Duplicated facets in simple type %1. QtXmlPatternsBduration 000000L0000000000k0000W0~0[00.Duration content does not match pattern facet. QtXmlPatternsVduration 000000L maxExclusive 000000k0000W0~0[007Duration content does not match the maxExclusive facet. QtXmlPatternsVduration 000000L maxInclusive 000000k0000W0~0[007Duration content does not match the maxInclusive facet. QtXmlPatternsVduration 000000L minExclusive 000000k0000W0~0[007Duration content does not match the minExclusive facet. QtXmlPatternsVduration 000000L minInclusive 000000k0000W0~0[007Duration content does not match the minInclusive facet. QtXmlPatternsDduration 000000LRcW00000Q0nN0k0B00~0[008Duration content is not listed in the enumeration facet. QtXmlPatternsT00000000000T 0o00000g0B0_ʼn0L0B00~0Y0'%1' 0o͉0W0f0D0~0Y0CEach name of a template parameter must be unique; %1 is duplicated. QtXmlPatternsJtW0o0tWNY0nep0nP$0K00j0{0k00c0flB000S0h0o0g0M0~0[00aEffective Boolean Value cannot be calculated for a sequence containing two or more atomic values. QtXmlPatterns&} %1 0o0Y0g0k[0U00f0D0~0Y0Element %1 already defined. QtXmlPatternsX} %1 0o0000000g0M0~0[000S0n0000000n{V00H0} 0T+00g0D0~0Y0OElement %1 can't be serialized because it appears outside the document element. QtXmlPatterns:} %1 0oV[P$0c0c0_N0n} 0T+0N0o0g0M0~0[00BElement %1 cannot contain other elements, as it has fixed content. QtXmlPatternsR} %1 0o0sequence constructor 0T+00S0h0L0g0M0~0[00.Element %1 cannot have a sequence constructor. QtXmlPatterns.} %1 0o0[P} 0c0d0S0h0L0g0M0~0[00 Element %1 cannot have children. QtXmlPatterns(} %1 0oN kc0jQ[0T+00g0D0~0Y0$Element %1 contains invalid content. QtXmlPatterns0} %1 0o\^`'0T+0N01S0U00f0D0~0[00+Element %1 contains not allowed attributes. QtXmlPatterns4} %1 0o[P0nQ[0T+0N01S0U00f0D0~0[00.Element %1 contains not allowed child content. QtXmlPatterns2} %1 0o[P} 0T+0N01S0U00f0D0~0[00.Element %1 contains not allowed child element. QtXmlPatterns4} %1 0o00000T+0N01S0U00f0D0~0[00-Element %1 contains not allowed text content. QtXmlPatterns2} %1 0LW %2 0n\^`'02P T+00g0D0~0Y0.Element %1 contains two attributes of type %2. QtXmlPatterns0} %1 0og*w0n\^`' %2 0T+00g0D0~0Y0)Element %1 contains unknown attribute %2. QtXmlPatternsN} %1 0oW^0000000n00000000nT RMzzR6}0k0000W0~0[00LElement %1 does not match namespace constraint of wildcard in base particle. QtXmlPatterns,} %1 0Lup0j0W0g20d[XW(0W0f0D0~0Y0-Element %1 exists twice with different types. QtXmlPatterns,} %1 0obaW0h0W0f[0U00f0D0~0Y0#Element %1 is declared as abstract. QtXmlPatterns"} %1 0k[P} 0L0B00~0[00$Element %1 is missing child element. QtXmlPatterns,m>u0000000k} %1 0L0B00~0[00*Element %1 is missing in derived particle. QtXmlPatterns2} %1 0klB0U00_\^`' %2 0L0B00~0[00,Element %1 is missing required attribute %2. QtXmlPatterns60S0nX4b@0k} %1 00J0O0S0h0o1S0U00f0D0~0[00+Element %1 is not allowed at this location. QtXmlPatternsX} %1 0o0S0n0000Q0g1S0U00f0D0~0[00Ou(S0j} 0ok!0n00n0g0Y: %20CElement %1 is not allowed in this scope, possible elements are: %2. QtXmlPatternsN} %1 0oꎫ0nW^W0LTW0nX4T0kP$R6}0c0dN01S0U00f0D0~0[00QElement %1 is not allowed to have a value constraint if its base type is complex. QtXmlPatternsV} %1 0o0ꎫ0L %2 0m>u0W0f0D0X4T0kP$R6}0c0dN01S0U00f0D0~0[00TElement %1 is not allowed to have a value constraint if its type is derived from %2. QtXmlPatternsR} %1 0o00000뉁} 0g0o0j0DNf0000וO0c0dN01S0U00f0D0~0[00\Element %1 is not allowed to have substitution group affiliation as it is no global element. QtXmlPatterns2} %1 0L0S0n0000Q0g[0U00f0D0~0[00(Element %1 is not defined in this scope. QtXmlPatterns.} %1 0o null 01S0W0f0D0~0[00Element %1 is not nillable. QtXmlPatterns(} %1 0og_0k0j0Q00p0j00~0[00Element %1 must come last. QtXmlPatternsV} '%1' 0o0\^`' '%2' 0K '%3' 0n0D0Z00K0c0_0j0Q00p0j00~0[00=Element %1 must have at least one of the attributes %2 or %3. QtXmlPatterns`} %1 0k0o0%2 \^`'0~0_0osequence constructor0L0j0Q00p0j00~0[00EElement %1 must have either a %2-attribute or a sequence constructor. QtXmlPatterns:} 0o null 0L1[0U00f0D0~0Y0LQ[0T+00g0D0~0Y01Element contains content although it is nillable. QtXmlPatterns.} 0000 %1 0o0Y0g0k[0U00f0D0~0Y0!Element group %1 already defined. QtXmlPatternsHzz0g0o0j0D0000000K0zz0n0000000m>u0U0[00S0h0o0g0M0~0[009Empty particle cannot be derived from non-empty particle. QtXmlPatterns`RcW000000LN kc0j000000T+00g0D0~0Y: {%1} 0o0W %2 0nP$0g0o0B00~0[00KEnumeration facet contains invalid content: {%1} is not a value of type %2. QtXmlPatterns,00000 %1 0LSX}W0c0c0f0D0~0[00Field %1 has no simple type. QtXmlPatternsBnull 0L1[0U00f0D0} 0x0nV[P$R6}0o1[0U00f0D0~0[00:Fixed value constraint not allowed if element is nillable. QtXmlPatternsD} %1 0nV[P$R6}0oW^0000000nP$R6}0hup0j0c0f0D0~0Y0TFixed value constraint of element %1 differs from value constraint in base particle. QtXmlPatterns*ID P$ '%1' 0LNa0g0o0B00~0[00ID value '%1' is not unique. QtXmlPatterns*IDR6} %1 0o0Y0g0k[0U00f0D0~0Y0'Identity constraint %1 already defined. QtXmlPatterns00WN0d0nP$0L00000000000dX4T0N!0oT 0X000000000g0j0Q00p0j00~0[00%1 0h %2 0oT N0g0o0B00~0[00bIf both values have zone offsets, they must have the same zone offset. %1 and %2 are not the same. QtXmlPatternsn} '%1' 0L\^`' '%2' 0c0_0j0DX4T0o0\^`' '%3' 0 '%4' 0Ou(0Y00S0h0o0g0M0~0[00EIf element %1 has no attribute %2, it cannot have attribute %3 or %4. QtXmlPatterns00W0gR0n_ep0Lzzv}0K00j0e[WR0K0w0U0L0 (T RMzz00h00j00j0D)0g0B0X4T000000000c[0Y00S0h0o0g0M0~0[000W0K0W000000000h0W0f %1 0Lc[0U00f0D0~0Y0If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified. QtXmlPatterns\T RMzz0n00000000k0J0D0f0zzv}0ne[WR0T RMzz0nP$0h0W0fOu(0Y00S0h0o0g0M0~0[00PIn a namespace constructor, the value for a namespace cannot be an empty string. QtXmlPatternspsimplified stylesheet 000000k0J0D0f0o0\^`' '%1' 0c[0U00j0Q00p0j00~0[00@In a simplified stylesheet module, attribute %1 must be present. QtXmlPatternsfXSL-T 00000k0J0D0f0axis %1 0oOu(0g0M0~0[00%2 0~0_0o %3 0n0Ou(0g0M0~0Y0DIn an XSL-T pattern, axis %1 cannot be used, only axis %2 or %3 can. QtXmlPatternsRXSL-T 00000k0J0D0f0ep '%1' 0oN 0d0n_ep000d0S0h0o0g0M0~0[00>In an XSL-T pattern, function %1 cannot have a third argument. QtXmlPatternstXSL-T 0000000000k0J0D0f0ep '%1' 0h '%2' 0n0Ou(0g0M0~0Y0'%3' 0oOu(0g0M0~0[00OIn an XSL-T pattern, only function %1 and %2, not %3, can be used for matching. QtXmlPatternsnXSL-T 0000000000k0J0D0f0ep '%1' 0x0ngR0n_ep0o000000KY ep0g0j0Q00p0j00~0[00yIn an XSL-T pattern, the first argument to function %1 must be a literal or a variable reference, when used for matching. QtXmlPatternsnXSL-T 0000000000k0J0D0f0ep '%1' 0ngR0n_ep0o000000je[WR0g0j0Q00p0j00~0[00hIn an XSL-T pattern, the first argument to function %1 must be a string literal, when used for matching. QtXmlPatternstncdO\0k0J0D0f0%1 0o0]0ꎫ0~0_0o %2 0000000Y0p0k0n0Ou(0g0M0~0Y0%3 0k[0W0f0oOu(0g0M0~0[0MIn the replacement string, %1 can only be used to escape itself or %2, not %3 QtXmlPatternslncdO\0k0J0D0f0%1 0k0o\0O0h0Ne[WNN 0nepP$0L}0O_ʼn0L0B00~0Y(000000U00f0D0X4T0d0O)0VIn the replacement string, %1 must be followed by at least one digit when not escaped. QtXmlPatternsNetep0nd{0k0J0D0f %1 000 (%2) 0gRr0c0_}Pg0o[0U00f0D0~0[000Integer division (%1) by zero (%2) is undefined. QtXmlPatterns(q!R0j QName 00000: %10Invalid QName content: %1. QtXmlPatterns40000000 %1 0k00000Y00S0h0o0g0M0~0[0+It is not possible to bind to the prefix %1 QtXmlPatterns80000000 '%1' 0Q[0Y00S0h0o0g0M0~0[00*It is not possible to redeclare prefix %1. QtXmlPatterns.%1 0S_0Y00S0h0o0g0M0j0D0K00W00~0[00'It will not be possible to retrieve %1. QtXmlPatterns:N0nz.^0n0000nN-0g0o0\^`'0R0Y00S0h0o0g0M0~0[00AIt's not possible to add attributes after any other kind of node. QtXmlPatterns6%2 } 0n0000W %1 0lz0g0M0~0[00g0W0_0.Item type %1 of %2 element cannot be resolved. QtXmlPatterns>W^W0n0000W0L %1 0n0000W0k0000W0f0D0~0[006Item type of base type does not match item type of %1. QtXmlPatterns8SX}W %1 0n0000W0TW0k0Y0N0o0g0M0~0[005Item type of simple type %1 cannot be a complex type. QtXmlPatterns400R6} %1 0ok =0W0_000000T+00g0D0~0Y0)Key constraint %1 contains absent fields. QtXmlPatternsJ00R6} %1 0o null 01[0Y0} %2 0nSqg0T+00g0D0~0Y0:Key constraint %1 contains references nillable element %2. QtXmlPatternsBlist 000000L length 000000k0000W0~0[00)List content does not match length facet. QtXmlPatternsHlist 000000L maxLength 000000k0000W0~0[00,List content does not match maxLength facet. QtXmlPatternsHlist 000000L minLength 000000k0000W0~0[00,List content does not match minLength facet. QtXmlPatterns:list 000000L0000000000k0000W0~0[00*List content does not match pattern facet. QtXmlPatterns<list 000000LRcW00000Q0nN0k0B00~0[004List content is not listed in the enumeration facet. QtXmlPatterns,00~00f0D0000000000oq!R0g0Y0Loaded schema file is invalid. QtXmlPatterns"0000oY'e[W\e[W0S:R%0W0~0[0Matches are case insensitive QtXmlPatternsX000W %1 0o %3 0nW^W %4 0n000W %2 0K0m>u0Y0N0o0g0M0~0[00JMember type %1 cannot be derived from member type %2 of %3's base type %4. QtXmlPatterns6%2 } 0n0000W %1 0lz0g0M0~0[00g0W0_00Member type %1 of %2 element cannot be resolved. QtXmlPatterns8SX}W %1 0n0000W0TW0k0Y0N0o0g0M0~0[007Member type of simple type %1 cannot be a complex type. QtXmlPatternsR000000n000000o0ep0Y ep0000000n[0nRM0k0W0j0Q00p0j00~0[00MModule imports must occur before function, variable, and option declarations. QtXmlPatternsNRpOY0lB000k0W0%1 000 (%2) 0gd0W0_}Pg0o[0U00f0D0~0[000Modulus division (%1) by zero (%2) is undefined. QtXmlPatterns8%1 g0o0g R0j{V %2..%3 0810W0f0D0~0Y0%Month %1 is outside the range %2..%3. QtXmlPatterns,00000 %1 0k2P NN 0nP$0L0B00~0Y0'More than one value found for field %1. QtXmlPatternsPW %1 0 %2 0~0_0o %3 (kc0~0_0o0n00)0gNW0Z00S0h0o0g0M0~0[00YMultiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed. QtXmlPatterns2T RMzz %1 0o %2 0k0n000000g0M0~0Y0ONamespace %1 can only be bound to %2 (and it is, in either case, pre-declared). QtXmlPatternsJT RMzz0n[0o0ep0Y ep0000000n[0nRM0k0W0j0Q00p0j00~0[00UNamespace declarations must occur before function, variable, and option declarations. QtXmlPatternsu0U00X4T0%1 0h %2 000000`0Q0L1S0U00~0Y08Only %1 and %2 facets are allowed when derived by union. QtXmlPatterns800000n000000g0o0%1 0oNV0n0[0g0M0~0Y06Only one %1 declaration can occur in the query prolog. QtXmlPatterns.%1 } 0oN0d0n0[XW(0W0j0Q00p0j00~0[00Only one %1-element can appear. QtXmlPatternsvUNICODE Codepoint Collection 0n0Ou(0g0M0~0Y(%1)0 %2 0o00000U00f0D0~0[00IOnly the Unicode Codepoint Collation is supported(%1). %2 is unsupported. QtXmlPatternsF0000000 %1 0o0%2 0k0n000000g0M0~0Y00T 0X0g0Y05Only the prefix %1 can be bound to %2 and vice versa. QtXmlPatternsN000000jW %2 0h %3 0k[0W0f000000 %1 0oOu(0g0M0~0[00>Operator %1 cannot be used on atomic values of type %2 and %3. QtXmlPatterns8W %2 0k[0W0f000000 %1 0oOu(0g0M0~0[00&Operator %1 cannot be used on type %2. QtXmlPatterns00000000: eN %1 0Qs0g0M0~0[00"Overflow: Can't represent date %1. QtXmlPatterns(0000000: eN0Qs0g0M0~0[00$Overflow: Date can't be represented. QtXmlPatterns000000: %1Parse error: %1 QtXmlPatterns40000000o^lz[`'00000000T+00g0D0~0Y0.Particle contains non-deterministic wildcards. QtXmlPatterns80000000 %1 0o %2 0k0n000000g0M0~0Y0LPrefix %1 can only be bound to %2 (and it is, in either case, pre-declared). QtXmlPatternsJ000000k0J0D0f00000000 '%1' 0o0Y0g0k[0U00f0D0~0Y0,Prefix %1 is already declared in the prolog. QtXmlPatterns4OT %1 0n00000000L[0U00f0D0~0[00+Prefix of qualified name %1 is not defined. QtXmlPatterns6%1 0 %2 0kY c0Y00k0|^0n000Lu0X0~0Y0/Promoting %1 to %2 may cause loss of precision. QtXmlPatterns<QName 000000L0000000000k0000W0~0[00+QName content does not match pattern facet. QtXmlPatterns>QName 000000LRcW00000Q0nN0k0B00~0[005QName content is not listed in the enumeration facet. QtXmlPatterns0%2 } 0nSqg %1 0lz0g0M0~0[00g0W0_0.Reference %1 of %2 element cannot be resolved. QtXmlPatterns:00000000 %1 0L_ʼn0g0Y0%2 0g0o0B00~0[00/Required cardinality is %1; got cardinality %2. QtXmlPatterns6lB0U00f0D0W0o %1 0g0Y0L0 %2 0L0B00~0Y0&Required type is %1, but %2 was found. QtXmlPatternsJXSL-T 1.0 0n00000000 2.0 0n000000gOu(0W0~0Y05Running an XSL-T 1.0 stylesheet with a 2.0 processor. QtXmlPatternstsigned integer 000000L totalDigits 000000gc[0U00P$0n{V0k0000W0~0[00?Signed integer content does not match in the totalDigits facet. QtXmlPatternsNsigned integer 000000L0000000000k0000W0~0[004Signed integer content does not match pattern facet. QtXmlPatternsbsigned integer 000000L maxExclusive 000000k0000W0~0[00=Signed integer content does not match the maxExclusive facet. QtXmlPatternsbsigned integer 000000L maxInclusive 000000k0000W0~0[00=Signed integer content does not match the maxInclusive facet. QtXmlPatternsbsigned integer 000000L minExclusive 000000k0000W0~0[00=Signed integer content does not match the minExclusive facet. QtXmlPatternsbsigned integer 000000L minInclusive 000000k0000W0~0[00=Signed integer content does not match the minInclusive facet. QtXmlPatternsPsigned integer 000000LRcW00000Q0nN0k0B00~0[00>Signed integer content is not listed in the enumeration facet. QtXmlPatternsDSX}W %1 0oW^W0h0W0fSX}0j00000W0n0c0dN0L0g0M0~0Y0=Simple type %1 can only have simple atomic type as base type. QtXmlPatternsFSX}W %1 0og}Bv0k[0U00R6}0k00 %2 0m>u0g0M0~0[00PSimple type %1 cannot derive from %2 as the latter defines restriction as final. QtXmlPatterns8SX}W %1 0oW^W %2 0vcc0dN0o0g0M0~0[00/Simple type %1 cannot have direct base type %2. QtXmlPatternsBSX}W %1 0L00000W %2 0T+0N0o1S0U00f0D0~0[002Simple type %1 contains not allowed facet type %2. QtXmlPatternsm>u} %1 0nSX}W0o0W^} 0K0iR0km>u0g0M0~0[00NSimple type of derived element %1 cannot be validly derived from base element. QtXmlPatterns*c[0U00_W %1 0o00000gg*w0g0Y0-Specified type %1 is not known to the schema. QtXmlPatternsDc[0U00_W %1 0og R0knc0g0M0} W %2 0g0o0B00~0[00DSpecified type %1 is not validly substitutable with element type %2. QtXmlPatternsZ\^`'0000Q0g[0U00f0D0 use = 'prohibited' 0oRg0L0B00~0[00DSpecifying use='prohibited' inside an attribute group has no effect. QtXmlPatterns>string 000000L0000000000k0000W0~0[00,String content does not match pattern facet. QtXmlPatternsFstring 000000L length 000000k0000W0~0[00/String content does not match the length facet. QtXmlPatternsLstring 000000L maxLength 000000k0000W0~0[002String content does not match the maxLength facet. QtXmlPatternsLstring 000000L minLength 000000k0000W0~0[002String content does not match the minLength facet. QtXmlPatterns@string 000000LRcW00000Q0nN0k0B00~0[006String content is not listed in the enumeration facet. QtXmlPatterns*Nf0000 %1 0L_tSqg0W0f0D0~0Y0.Substitution group %1 has circular definition. QtXmlPatterns8%2 } 0nNf0000 %1 0lz0g0M0~0[00g0W0_07Substitution group %1 of %2 element cannot be resolved. QtXmlPatterns000000W0f0D000000n[aT RMzz %1 0o000000W00F0h0W0f0D000000g[0U00f0D0[aT RMzz %2 0hup0j0c0f0D0~0Y0tTarget namespace %1 of imported schema is different from the target namespace %2 as defined by the importing schema. QtXmlPatterns0000000W0f0D000000n[aT RMzz %1 0o0000000W00F0h0W0f0D000000g[0U00f0D0[aT RMzz %2 0hup0j0c0f0D0~0Y0tTarget namespace %1 of included schema is different from the target namespace %2 as defined by the including schema. QtXmlPatterns80S0nX4b@0k000000000J0O0S0h0o1S0U00f0D0~0[00,Text nodes are not allowed at this location. QtXmlPatternsB00000~0_0o000000Sqg0o %1 } Q0g1S0U00f0D0~0[07Text or entity references not allowed inside %1 element QtXmlPatterns@XQuery 0k0J0D0f0%1 axis 0o00000U00f0D0~0[0$The %1-axis is unsupported in XQuery QtXmlPatternsT0S0n00000n00000j_0oOu(0g0M0~0[000~0_0'%1' [0Ou(0g0M0~0[00WThe Schema Import feature is not supported, and therefore %1 declarations cannot occur. QtXmlPatternsT00000niQtN-0n0000o0NN 0ne[WR0T+00g0D0f0o0j00~0[0: %1AThe data of a processing instruction cannot contain the string %1 QtXmlPatterns,000000n0000000L[0U00f0D0~0[0#The default collection is undefined QtXmlPatterns00000000 '%1' 0oq!R0g0Y0000e[W (zzv}0d0O) 0K00j000n0g0kchs '%2' 0k0000Y000n0n0Ou(0g0M0~0Y0The encoding %1 is invalid. It must contain Latin characters only, must not contain whitespace, and must match the regular expression %2. QtXmlPatterns%1 0x0ngR0n_ep0o0W %2 0g0B0c0f0o0j00~0[00epP$W0xs:yerMonthDuration0xs:dayTimeDuration0g0B0_ʼn0L0B00~0Y0uThe first argument to %1 cannot be of type %2. It must be a numeric type, xs:yearMonthDuration or xs:dayTimeDuration. QtXmlPatternsn%1 0x0ngR0n_ep0o0W %2 0g0B0c0f0o0j00~0[00%3, %4, %5 0n0D0Z00K0g0B0_ʼn0L0B00~0Y0PThe first argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. QtXmlPatterns 000000L[0U00f0D0~0[00The focus is undefined. QtXmlPatterns.P$ %1 0nRgS0o00]0ꎫ0kO[X0W0f0D0~0Y3The initialization of variable %1 depends on itself QtXmlPatterns:0000 %1 0o0lB0U00_W %2 0k0000W0~0[00/The item %1 did not match the required type %2. QtXmlPatternsB00000 %1 0o0N0nT 00h00j0c0fOu(0Y00S0h0o0g0M0~0[005The keyword %1 cannot occur with any other mode name. QtXmlPatternsv000ng+z0g0B00000o0SXN0n0000K000000jP$0g0B0_ʼn0L0B00~0Y0ep0nW0n}D0T00[0g0B0c0f0o0D0Q0~0[00kThe last step in a path must contain either nodes or atomic values. It cannot be a mixture between the two. QtXmlPatterns200000000000nj_0o00000U00f0D0~0[0*The module import feature is not supported QtXmlPatterns%1 } 0nW0o %2 0g0o0j0OSX}W0k0W0j0O0f0o0D0Q0~0[004Type of %1 element must be a simple type, %2 is not. QtXmlPatternsBm>u\^`' %1 0nW0oW^\^`'0nW0g R0km>u0Y0N0o0g0M0~0[00SType of derived attribute %1 cannot be validly derived from type of base attribute. QtXmlPatterns4m>u\^`' %1 0nW0LW^\^`'0nW0hup0j0c0f0D0~0Y0AType of derived attribute %1 differs from type of base attribute. QtXmlPatterns@} %1 0nW0oNf0000וO0nW0m>u0Y0N0o0g0M0~0[00QType of element %1 cannot be derived from type of substitution group affiliation. QtXmlPatterns<union 000000L0000000000k0000W0~0[00+Union content does not match pattern facet. QtXmlPatterns>union 000000LRcW00000Q0nN0k0B00~0[005Union content is not listed in the enumeration facet. QtXmlPatternslW %1 0n\^`'00000000n union 0hW^W %2 0n\^`'00000000ohsS0g0o0B00~0[00eUnion of attribute wildcard of type %1 and attribute wildcard of its base type %2 is not expressible. QtXmlPatterns,g*w0n XSL-T \^`' %1 0L0B00~0Y0Unknown XSL-T attribute %1. QtXmlPatterns:g*w0nhl %1 0L %2 000000gO000f0D0~0Y0%Unknown notation %1 used in %2 facet. QtXmlPatternsxunsigned integer 000000L totalDigits 000000gc[0U00P$0n{V0k0000W0~0[00AUnsigned integer content does not match in the totalDigits facet. QtXmlPatternsRunsigned integer 000000L0000000000k0000W0~0[006Unsigned integer content does not match pattern facet. QtXmlPatternsfunsigned integer 000000L maxExclusive 000000k0000W0~0[00?Unsigned integer content does not match the maxExclusive facet. QtXmlPatternsfunsigned integer 000000L maxInclusive 000000k0000W0~0[00?Unsigned integer content does not match the maxInclusive facet. QtXmlPatternsfunsigned integer 000000L minExclusive 000000k0000W0~0[00?Unsigned integer content does not match the minExclusive facet. QtXmlPatternsfunsigned integer 000000L minInclusive 000000k0000W0~0[00?Unsigned integer content does not match the minInclusive facet. QtXmlPatternsTunsigned integer 000000LRcW00000Q0nN0k0B00~0[00@Unsigned integer content is not listed in the enumeration facet. QtXmlPatterns:W %2 0nP$ %1 0o0N P (%3) 00H0f0D0~0Y0)Value %1 of type %2 exceeds maximum (%3). QtXmlPatterns:W %2 0nP$ %1 0o0N P (%3) 00H0f0D0~0Y0*Value %1 of type %2 is below minimum (%3). QtXmlPatterns:\^`' %1 0nP$R6}0o\^`'W0n00n0g0o0B00~0[0: %20?Value constraint of attribute %1 is not of attributes type: %2. QtXmlPatternsu\^`' %1 0nP$R6}0oW^\^`'0nP$R6}0k0000W0~0[00[Value constraint of derived attribute %1 does not match value constraint of base attribute. QtXmlPatterns:} %1 0nP$R6}0o} W0n00n0g0o0B00~0[0: %20;Value constraint of element %1 is not of elements type: %2. QtXmlPatternsL%1 0nT0000W0o atomic 0K union 0g0B0_ʼn0L0B00~0Y0:Variety of item type of %1 must be either atomic or union. QtXmlPatterns>%1 0nT00000nW0o atomic 0g0B0_ʼn0L0B00~0Y0-Variety of member types of %1 must be atomic. QtXmlPatternsh00000 %1 0o00000U00f0D0~0[00XQuery 00000 1.0 0n000000U00f0D0~0Y0AVersion %1 is not supported. The supported XQuery version is 1.0. QtXmlPatterns.W3C XML 0000 IDR6} field(W3C XML Schema identity constraint field QtXmlPatterns4W3C XML 0000 IDR6} selector+W3C XML Schema identity constraint selector QtXmlPatterns000000LlB0U00f0D00h0M0k0o0000000nP$0o0%1 \^`'0~0_0o sequence constructor 0k00c0fc[0U00f0D0f0o0j00~0[00rWhen a parameter is required, a default value cannot be supplied through a %1-attribute or a sequence constructor. QtXmlPatterns\%2 0k\^`' %1 0L0B0X4T0sequence constructor 0oOu(0g0M0~0[00JWhen attribute %1 is present on %2, a sequence constructor cannot be used. QtXmlPatternsL%2 0K0 %1 0x0nWY c0k0W0f0o0P$ %3 0og R0jP$0g0o0B00~0[00:When casting to %1 from %2, the source value cannot be %3. QtXmlPatterns%1 0~0_0o0]00}b0W0f0D0W0x0nWY c0k0J0D0f0o0QC0nP$0nW0oT 0XW0K000000je[WR0g0B0_ʼn0L0B00~0Y0W %2 0o1S0U00f0D0~0[00When casting to %1 or types derived from it, the source value must be of the same type, or it must be a string literal. Type %2 is not allowed. QtXmlPatternsl0000N0nQPt0gep '%1' 0Ou(0Y0X4T0_ep0o00000je[WR0Sqg0Y0P$0g0j0Q00p0j00~0[00vWhen function %1 is used for matching inside a pattern, the argument must be a variable reference or a string literal. QtXmlPatternsJzzv}e[W0oRJd0U00~0W0_00_0`0W00000000000k\^0Y000n0od0M0~0YOWhitespace characters are removed, except when they appear in character classes QtXmlPatternsdm>u0000000k0B000000000o0W^0000000n00000000n000000h0W0fq!R0g0Y0PWildcard in derived particle is not a valid subset of wildcard in base particle. QtXmlPatterns,%1 ^t0oq!R0g0Y0%2 0gY0~0c0f0D0~0Y0-Year %1 is invalid because it begins with %2. QtXmlPatternszzempty QtXmlPatterns S[0kN0d exactly one QtXmlPatternsN0d0~0_0oep one or more QtXmlPatternsfW^00000000n processContent 0om>u0000000000_10O0j0Q00p0j00~0[00EprocessContent of base wildcard must be weaker than derived wildcard. QtXmlPatternstm>u0000000n00000000n processContent 0oW^0000000n0000000000_10D0g0Y0XprocessContent of wildcard in derived particle is weaker than wildcard in base particle. QtXmlPatternsQH-0n namespace 0g0o0j0D} 0~0_0o\^`'0n_0k xsi:noNamespaceSchemaLocation 0Ou(0g0M0~0[00^xsi:noNamespaceSchemaLocation cannot appear after the first no-namespace element or attribute. QtXmlPatternshxsi:schemaLocation T RMzz %1 0o0000000000000nRM0ke0ks00f0D0~0Y0Vxsi:schemaLocation namespace %1 has already appeared earlier in the instance document. QtXmlPatterns000~0_0o0]0NN  zero or more QtXmlPatterns000~0_0oN0d zero or one QtXmlPatternsqupzilla-1.6.0/bin/locale/qt_nl.qm000066400000000000000000004315631226107126500170600ustar00rootroot00000000000000.+z@s+Z+X7+m++\+į*+į+į>d+@7F:9;z`C:wGLHw9)8Hw9LHRI'eI>PIdJ++J6+J6AJ6M=J6RJ6J6J6ZJ6]eJcbKQS6K[LZ!vLLB(LbM5R{MbmMeO*MNgO|ArPFE.PFEePFE^QhRi$R|RiYS8^bT$TʴT%U?^}U|JU}jiV1\V}VTLV+VjW?WTWT+XO~XUSX˙P#X,yYjY:Y-Y_YZg-ZkPZk[;^\\]47\]41\P\atrgclGf|^)cvKvYj3{fu;4L5.6CeIA&[O$QI(ɵnEɵn ɵnɵn=ɵnɵnףɵn ɵn]9xM Bs*+ME|{><kv5 %UTy(ŎaB*455vQxjli~q ؄y $ v$hcfW+(0ʁr΋^ikKuK n{,"7AOA8=&H.n/?yIxS>R>|YMpYMz ^Fh^11i6sscsw`zU*qxdۊA=atN>]] IyI(I)oIMII3IZI%;Y%ui%y%$S$$%#$I'E&]&&' &#uDtuD}DZo,,, ,4v,?A]-ɘe!5$JfRfR^$N"^gc4ESiPqwVNVPAfRW#5 g P ,$%C1d&~h&d)+,?"KN<;MyRV|i]']g;k+=y^-5tUF^,Ij4G%nn}صcǥ^-#+-St/ LW4;l&xAlZ9\k.Lsk0Ͼ%>{C- 5)C^~ƨ^ƨ5˾Lҝzi:~է?4Z>zߺ'gfIm^! n$~b]~bcoZ!+3 /14~И6 ,? 2YAIDo3GoGbbLAU<PѧMuQ|SnzTrUU ZZZ (Z ^[[/]k*]]4^ngR_peSiti~OkQ|?oNty; {u}u*}w}w1i}w }1ydMr" tըvtAt.#.1PiU~aD<Dc9YHt9otzt&q~_ *n+VFbCʢHʢƴ޵dIdd#dd0T59!NSߋ5UUDdxBjhwe K? 'V+w,DR;/,2S426vU7D`:֫?;7CU]PrDjUINJ0KKUU|MV7 \_ar bt|(^U|R|}wZ2}$}$1}$ kϗXZVN DNK<Nf+NR·B·Jý׳/|x3UaEnHǐvu%5cAT e~i~ibwLab#6%u|'-..x 5kE c=EV=5??\CtIfP+XU \bD.|bGf fdJhgA& hIh#i$x1 z*2BdٛJU(.5 zTAc.҉DHrVbmo^Nn'$,b†5WkieUCPʴ5Wʴ5\ʶԄa۔#Da/'NdfF5.EF5Y0+>II\As Ia }$O qex ڤ ڥ E EԽ  Ac Ac_ 35 )  ` t n Mt Y+ K,F C 팤 l~j %'B[  ' =oy qkR  }  )z */ .> 5 7ui ;] =o J"ˉ J" Rۮm Ty T^ Uj4$ ] ` `l b b c( cE d4B ec e]` e{G f1r f* g5U gnh7 k,"W rD"(z t>s :@ f  f YK 4 .l sm s[t AAv 9 M 9`  m,#b #-t 0N< A6 CUmV LN L9 LZ] Mc\P RF Sr V W ]$G io>l) m`0 w  xRo yrK\ 4 ؜ H HW ;6 $ZY .@/0 '& +y , ?~ %C J J[ r- t.N k=o Ӈ+ M ) N> ̺nH -DoW . ۷C r k} k U) g </G D  0) Q  z+Sy  tL  } IgA %l NZ */ Kc xHR M .?l 7Fg >wL >x >y > > > >ɥ > ?t|H DT I> P@, RV_ RVX RV" S.3 SGw S Y]. Y [E_ c`IJ hۮf j7oV} p? Y . B k TF6 T T! T 2 H L g{ S )dǑ T D/ ;>- .F . . . . .   ax y. ӽ hNo ҂s R E < |) θ ' Xt$ t a:  :bx Uq Y -  r2{   #$@ %n +>@ +k 0Ee ;ɾ> Fg] K9| Pt Pt] dBƹ e1.9 fe" fe U iFC"! i]+ i" kGn m9O nx u* u9 v ҡ v&z v{ & w w0u w w}4 w}0 w} |[~  q zs %IQ ^ } RG PW  xN U ɰe F7 y X &~v D + t5e t5]   >  ^` ) 0b @aT:+Ob[o/gT:*9;*Z/E=BI_KOOsXRuEXb[ `{a.N nyG}}vɅ$y$ ~> 4&l'4HS&^ǗS:B7Frtݖ^vr $ ZGu"#$U"%4Q%4b-vC0i)(n0)1c¾2wT(6<a<(D1H"JdUK#LL$.bkWac5Xc5 (g3iCmh9pyC2{~a'Y5&&{%[o>v[+>bOJNU"~LLnBt2=f UHi <html>Stappen over op het geluidsafspeel apparaat <b>%1</b><br/>deze is net beschikbaar gekomen en verdient de voorkeur.</html>xSwitching to the audio playback device %1
which just became available and has higher preference. AudioOutput<html>Het apparaat <b>%1</b> , dat geluid afspeelt, werkt niet.<br/>In plaats daarvan wordt <b>%2</b> gebruikt.</html>^The audio playback device %1 does not work.
Falling back to %2. AudioOutput:Terugkeren naar apparaat '%1'Revert back to device '%1' AudioOutputOver %1About %1MAC_APPLICATION_MENUVerberg %1Hide %1MAC_APPLICATION_MENU"Overige verbergen Hide OthersMAC_APPLICATION_MENUVoorkeuren...Preferences...MAC_APPLICATION_MENUStoppen %1Quit %1MAC_APPLICATION_MENUServicesMAC_APPLICATION_MENUAlles weergevenShow AllMAC_APPLICATION_MENU Toegankelijkheid AccessibilityPhonon::communicatie CommunicationPhonon::SpelletjesGamesPhonon:: MuziekMusicPhonon::mededeling NotificationsPhonon:: VideoVideoPhonon::Waarschuwing: De "GStreamer plugins" blijken niet genstalleerd. Alle audio en video ondersteuning is gedeactiveerd~Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabledPhonon::Gstreamer::Backend Waarschuwing: Het pakker "gstreamer0.10 plugins" is niet goed genstalleerd. Sommige video mogelijkheden zijn gedeactiveerd.Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled.Phonon::Gstreamer::BackendEen noodzakelijke codec mist. U moet de volgende codec installeren om deze inhoud af te spelen: %0De noodzakelijke codecs missen. U moet de volgende codecs installeren om deze inhoud af te spelen: %0`A required codec is missing. You need to install the following codec(s) to play this content: %0Phonon::Gstreamer::MediaObjectKan het afspelen niet starten. Controleer de installatie van "Gstreamer" en zorg ervoor dat de "libgstreamer plugins basis is genstalleer.wCannot start playback. Check your Gstreamer installation and make sure you have libgstreamer-plugins-base installed.Phonon::Gstreamer::MediaObjectBKan de media bron niet decoderen.Could not decode media source.Phonon::Gstreamer::MediaObject<Kan de media bron niet vinden.Could not locate media source.Phonon::Gstreamer::MediaObjectKan het audio apparaat niet openen. Het apparaat wordt al gebruikt.:Could not open audio device. The device is already in use.Phonon::Gstreamer::MediaObject<Kan de media bron niet openen.Could not open media source.Phonon::Gstreamer::MediaObject&Bron type ongeldig.Invalid source type.Phonon::Gstreamer::MediaObjectGebruik deze schuif om het geluid aan te passen. De meest linkse positie is 0%, de meest rechtse positie is %1%WUse this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1%Phonon::VolumeSliderVolume: %1% Volume: %1%Phonon::VolumeSlider0%1, %2 niet gedefinieerd%1, %2 not definedQ3Accel>Dubbelzinnig %1 niet uitgevoerdAmbiguous %1 not handledQ3AccelVerwijderenDelete Q3DataTable OnwaarFalse Q3DataTableInvoegenInsert Q3DataTableWaarTrue Q3DataTableBijwerkenUpdate Q3DataTabler%1 Bestand niet gevonden. Controleer pad en bestandsnaam.+%1 File not found. Check path and filename. Q3FileDialog&Verwijderen&Delete Q3FileDialog&Nee&No Q3FileDialog&OK&OK Q3FileDialog&Openen&Open Q3FileDialog&Hernoemen&Rename Q3FileDialogOp&slaan&Save Q3FileDialog&Ongesorteerd &Unsorted Q3FileDialog&Ja&Yes Q3FileDialogj<qt>Weet u zeker dat u %1 "%2" wilt verwijderen?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialog$Alle bestanden (*) All Files (*) Q3FileDialogAttribuut Attributes Q3FileDialog TerugBack Q3FileDialogAnnulerenCancel Q3FileDialog>Bestand kopiren of verplaatsenCopy or Move a File Q3FileDialog.Maak een nieuwe map aanCreate New Folder Q3FileDialog DatumDate Q3FileDialog%1 verwijderen Delete %1 Q3FileDialogDetail weergave Detail View Q3FileDialogMapDir Q3FileDialog Mappen Directories Q3FileDialogMap: Directory: Q3FileDialogFoutError Q3FileDialogBestandFile Q3FileDialogBestands&naam: File &name: Q3FileDialog &Soort bestands: File &type: Q3FileDialogZoek een mapFind Directory Q3FileDialog"niet toegankelijk Inaccessible Q3FileDialogLijst weergave List View Q3FileDialog&Kijk bij: Look &in: Q3FileDialogNaamName Q3FileDialogNieuwe map New Folder Q3FileDialogNieuwe map %1 New Folder %1 Q3FileDialogNieuwe map 1 New Folder 1 Q3FileDialogEen map omhoogOne directory up Q3FileDialogOpenOpen Q3FileDialog@Voorbeeldweergave bestandsinhoudPreview File Contents Q3FileDialogHVoorbeeldweergave bestandsinformatiePreview File Info Q3FileDialog&Opnieuw ladenR&eload Q3FileDialogAlleen lezen Read-only Q3FileDialogLezen/schrijven Read-write Q3FileDialogLees: %1Read: %1 Q3FileDialogOpslaan alsSave As Q3FileDialog4Verbo&rgen bestanden tonenShow &hidden files Q3FileDialogFormaatSize Q3FileDialogSorterenSort Q3FileDialog$Op &datum sorteren Sort by &Date Q3FileDialog"Op &Naam sorteren Sort by &Name Q3FileDialog(Op grootte &sorteren Sort by &Size Q3FileDialogSpeciaalSpecial Q3FileDialog2Snelkoppeling naar de mapSymlink to Directory Q3FileDialog<Snelkoppeling naar het bestandSymlink to File Q3FileDialogBSnelkoppeling naar iets speciaalsSymlink to Special Q3FileDialog SoortType Q3FileDialog Alleen schrijven Write-only Q3FileDialogSchrijven: %1 Write: %1 Q3FileDialog De map the directory Q3FileDialogHet bestandthe file Q3FileDialog De snelkoppeling the symlink Q3FileDialog6Kan de map niet aanmaken %1Could not create directory %1 Q3LocalFs&Kan: %1 niet openenCould not open %1 Q3LocalFs0Kan de map niet lezen %1Could not read directory %1 Q3LocalFsZKan het bestand of de map niet verwijderen %1%Could not remove file or directory %1 Q3LocalFs<Kan: %1 niet hernoemen naar %2Could not rename %1 to %2 Q3LocalFs,Kan niet schrijven: %1Could not write %1 Q3LocalFsAanpassen... Customize... Q3MainWindowRangschikkenLine up Q3MainWindow>Actie gestopd door de gebruikerOperation stopped by the userQ3NetworkProtocolAnnulerenCancelQ3ProgressDialogToepassenApply Q3TabDialogAnnulerenCancel Q3TabDialogStandaardsDefaults Q3TabDialogHelpHelp Q3TabDialogOkOK Q3TabDialog&Kopiren&Copy Q3TextEdit&Plakken&Paste Q3TextEditOp&nieuw&Redo Q3TextEdit&Ongedaan maken&Undo Q3TextEdit WissenClear Q3TextEditK&nippenCu&t Q3TextEdit Alles selecteren Select All Q3TextEditSluitenClose Q3TitleBar"Sluit het vensterCloses the window Q3TitleBarVBevat opdrachten om het venster te bewerken*Contains commands to manipulate the window Q3TitleBarGeeft de naam van venster weer en bevat knoppen om deze te bewerkenFDisplays the name of the window and contains controls to manipulate it Q3TitleBar:Maak het venster beeldvullendMakes the window full screen Q3TitleBarMaximaliserenMaximize Q3TitleBarMinimaliserenMinimize Q3TitleBarBVerplaatst het venster uit de wegMoves the window out of the way Q3TitleBarLZet gemaximaliseerd terug naar normaal&Puts a maximized window back to normal Q3TitleBarLZet geminimaliseerd terug naar normaalPuts a minimized back to normal Q3TitleBar$Omlaag terugzetten Restore down Q3TitleBar$Omhoog terugzetten Restore up Q3TitleBarSysteemSystem Q3TitleBarMeer...More... Q3ToolBar(onbekend) (unknown) Q3UrlOperatorHet protocol `%1' ondersteund niet het kopiren van bestanden of mappenIThe protocol `%1' does not support copying or moving files or directories Q3UrlOperatorHet protocol `%1' ondersteund niet het aanmaken van nieuwe mappen;The protocol `%1' does not support creating new directories Q3UrlOperatorxHet protocol `%1' ondersteund niet het ophalen van bestanden0The protocol `%1' does not support getting files Q3UrlOperatorHet protocol `%1' ondersteund geen opname in een lijst van mappen6The protocol `%1' does not support listing directories Q3UrlOperator|Het protocol `%1' ondersteund niet het wegzetten van bestanden0The protocol `%1' does not support putting files Q3UrlOperatorHet protocol `%1' ondersteund niet het verwijderen van bestanden of mappen@The protocol `%1' does not support removing files or directories Q3UrlOperatorHet protocol `%1' ondersteund niet het herbenoemen van bestanden of mappen@The protocol `%1' does not support renaming files or directories Q3UrlOperatorPHet protocol `%1' wordt niet ondersteund"The protocol `%1' is not supported Q3UrlOperator&Annuleren&CancelQ3Wizard &Klaar&FinishQ3Wizard &Help&HelpQ3Wizard&Volgende >&Next >Q3Wizard< &Terug< &BackQ3Wizard(Verbinding geweigerdConnection refusedQAbstractSocket,Gastheer niet gevondenHost not foundQAbstractSocket0Socket is niet verbondenSocket is not connectedQAbstractSocketbTijdslimiet verstreken voor de actie op de socketSocket operation timed outQAbstractSocket"Alles &selecteren &Select AllQAbstractSpinBox&ophogen??&Step upQAbstractSpinBox&Afnemen?? Step &downQAbstractSpinBoxActiverenActivate QApplicationZActiveert het hoofd venster van het programma#Activates the program's main window QApplicationdProgramma '%1' vereist Qt %2; maar Qt %3 gevonden.,Executable '%1' requires Qt %2, found Qt %3. QApplicationBQt bibliotheek is niet compatibelIncompatible Qt Library Error QApplicationLTRQT_LAYOUT_DIRECTION QApplicationAfvinkenCheck QCheckBoxOmschakelenToggle QCheckBoxUitgummenUncheck QCheckBoxB&Toevoegen aan aangepaste kleuren&Add to Custom Colors QColorDialog&Basis kleuren &Basic colors QColorDialog&&Aangepaste kleuren&Custom colors QColorDialog&Groen:&Green: QColorDialog &Rood:&Red: QColorDialog&Verzadiging:&Sat: QColorDialog&Helderheid:&Val: QColorDialogA&lpha kanaal:A&lpha channel: QColorDialogBla&uw:Bl&ue: QColorDialog &Tint:Hu&e: QColorDialog&Selecteer een kleur Select color QColorDialogSluitenClose QComboBox OnwaarFalse QComboBox OpenenOpen QComboBoxWaarTrue QComboBox%1: bestaat al%1: already existsQCoreApplication %1: bestaat niet%1: doesn't existsQCoreApplication%1: ftok vaalt%1: ftok failedQCoreApplication6%1:Ongeldige sleutel (leeg)%1: key is emptyQCoreApplication2%1: geen hulpbronnen meer%1: out of resourcesQCoreApplication(%1: geen toestemming%1: permission deniedQCoreApplication:%1: Kan geen sleutel aanmaken%1: unable to make keyQCoreApplication*%1: onbekende fout %2%1: unknown error %2QCoreApplicationBKan de transactie niet bevestigenUnable to commit transaction QDB2Driver2Kan geen verbinding makenUnable to connect QDB2DriverFKan de transactie niet terugdraaienUnable to rollback transaction QDB2DriverZKan het automatisch bevestigen niet instellenUnable to set autocommit QDB2Driver2Kan geen variabele bindenUnable to bind variable QDB2Result@Kan de instructie niet uitvoerenUnable to execute statement QDB2Result4Kan de eerste niet ophalenUnable to fetch first QDB2Result8Kan de volgende niet ophalenUnable to fetch next QDB2Result<Kan het record %1 niet ophalenUnable to fetch record %1 QDB2ResultFKan de instructie niet voorbereidenUnable to prepare statement QDB2ResultVMAM QDateTimeEditNMPM QDateTimeEditNMam QDateTimeEditnmpm QDateTimeEdit QDialQDialQDialSchuifhandel SliderHandleQDialTachometer SpeedoMeterQDial KlaarDoneQDialogWat is dit? What's This?QDialog&Nee&NoQDialogButtonBox&OK&OKQDialogButtonBox&Ja&YesQDialogButtonBoxAfbrekenAbortQDialogButtonBoxToepassenApplyQDialogButtonBoxAnnulerenCancelQDialogButtonBoxSluitenCloseQDialogButtonBox4Sluiten zonder op te slaanClose without SavingQDialogButtonBoxVerwerpenDiscardQDialogButtonBoxNiet opslaan Don't SaveQDialogButtonBoxHelpHelpQDialogButtonBoxNegerenIgnoreQDialogButtonBoxNee voor &alles N&o to AllQDialogButtonBoxOkOKQDialogButtonBox OpenenOpenQDialogButtonBoxTerugzettenResetQDialogButtonBox0Standaards terugplaatsenRestore DefaultsQDialogButtonBoxNogmaalsRetryQDialogButtonBoxOpslaanSaveQDialogButtonBoxAlles opslaanSave AllQDialogButtonBoxJa, &alles Yes to &AllQDialogButtonBoxDatum gewijzigd Date Modified QDirModelAardKind QDirModelNaamName QDirModel OmvangSize QDirModelTypeType QDirModelSluitenClose QDockWidgetKoppelenDock QDockWidgetDrijvenFloat QDockWidget MinderLessQDoubleSpinBoxMeerMoreQDoubleSpinBox&OK&OK QErrorMessage<&Geef dit bericht opnieuw weer&Show this message again QErrorMessageTest bericht:Debug Message: QErrorMessageFatale fout: Fatal Error: QErrorMessageWaarschuwing:Warning: QErrorMessage%1 Map niet gevonden. Controleer of de juiste naam van de map is opgegeven.K%1 Directory not found. Please verify the correct directory name was given. QFileDialog%1 Bestand niet gevonden. Controleer of de juiste bestandnaam is opgegeven.A%1 File not found. Please verify the correct file name was given. QFileDialogJ%1 Bestaat al. Wilt u deze vervangen?-%1 already exists. Do you want to replace it? QFileDialog&Kiezen&Choose QFileDialog&Verwijderen&Delete QFileDialog&Nieuwe map &New Folder QFileDialog&Openen&Open QFileDialog&Hernoemen&Rename QFileDialog&Opslaan&Save QFileDialog'%1' is beschermd tegen overschrijven. Wilt u het toch verwijderen?9'%1' is write protected. Do you want to delete it anyway? QFileDialog$Alle bestanden (*) All Files (*) QFileDialogNWeet u zeker dat u %1 wilt verwijderen?!Are sure you want to delete '%1'? QFileDialog TerugBack QFileDialog8Kan de map niet verwijderen.Could not delete directory. QFileDialog.Maak een nieuwe map aanCreate New Folder QFileDialogDetail weergave Detail View QFileDialog Mappen Directories QFileDialogMap: Directory: QFileDialogStationDrive QFileDialogBestandFile QFileDialogBestands&naam: File &name: QFileDialog.Bestanden van het type:Files of type: QFileDialogZoek een mapFind Directory QFileDialogVooruitForward QFileDialogLijst weergave List View QFileDialogKijk bij:Look in: QFileDialogMijn computer My Computer QFileDialogNieuwe map New Folder QFileDialog OpenenOpen QFileDialog"Bovenliggende mapParent Directory QFileDialogVerwijderRemove QFileDialogOpslaan alsSave As QFileDialogWeergevenShow  QFileDialog<&Geef verborgen bestanden weerShow &hidden files QFileDialogOnbekendUnknown QFileDialog %1 GB%1 GBQFileSystemModel %1 KB%1 KBQFileSystemModel %1 MB%1 MBQFileSystemModel %1 TB%1 TBQFileSystemModel%1 bytes%1 bytesQFileSystemModel<b>De naam "%1" kan niet worden gebruikt.</b><p>Geef een andere naam op met minder tekens of zonder leestekens.oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModelComputerComputerQFileSystemModelDatum gewijzigd Date ModifiedQFileSystemModel,Ongeldige bestandsnaamInvalid filenameQFileSystemModelAardKindQFileSystemModelMijn computer My ComputerQFileSystemModelNaamNameQFileSystemModel OmvangSizeQFileSystemModelTypeTypeQFileSystemModelAlleAny QFontDatabaseArabischArabic QFontDatabaseArmekaansArmenian QFontDatabaseBengaalsBengali QFontDatabase ZwartBlack QFontDatabaseVetBold QFontDatabaseCyrillischCyrillic QFontDatabaseHalfDemi QFontDatabasehalf vet Demi Bold QFontDatabaseDevanagari Devanagari QFontDatabaseGeorgischGeorgian QFontDatabase GrieksGreek QFontDatabaseGujaratiGujarati QFontDatabaseGurmukhiGurmukhi QFontDatabaseHebreewsHebrew QFontDatabaseCursiefItalic QFontDatabase JapansJapanese QFontDatabaseKannadaKannada QFontDatabase KhmerKhmer QFontDatabaseKoreaansKorean QFontDatabaseLaoLao QFontDatabaseLatijnsLatin QFontDatabase lichtLight QFontDatabaseMalayalam Malayalam QFontDatabaseMyanmarMyanmar QFontDatabaseNormaalNormal QFontDatabase SchuinOblique QFontDatabase OghamOgham QFontDatabase OriyaOriya QFontDatabase RunenRunic QFontDatabase"Eenvoudig ChineesSimplified Chinese QFontDatabaseSinhalaSinhala QFontDatabaseSymboolSymbol QFontDatabaseSyrischSyriac QFontDatabase TamilTamil QFontDatabase TeluguTelugu QFontDatabase ThaanaThaana QFontDatabase ThaisThai QFontDatabaseTibetaansTibetan QFontDatabase(Traditioneel ChineesTraditional Chinese QFontDatabaseVietnamees Vietnamese QFontDatabase&Lettertype&Font QFontDialog&Omvang&Size QFontDialog&Onderstrepen &Underline QFontDialogEffectenEffects QFontDialog"&Soort lettertype Font st&yle QFontDialogVoorbeeldSample QFontDialog(Selecteer lettertype Select Font QFontDialogDoor&halen Stri&keout QFontDialog&SchrijfsysteemWr&iting System QFontDialogDveranderen van map is misluktl: %1Changing directory failed: %1QFtp2Verbonden met de gastheerConnected to hostQFtp8Verbonden met de gastheer %1Connected to host %1QFtpFVerbinding met gastheer mislukt: %1Connecting to host failed: %1QFtp*Verbinding afgeslotenConnection closedQFtpZVerbinding voor gegevens verbinding geweigerd&Connection refused for data connectionQFtp6Verbinding met %1 geweigerdConnection refused to host %1QFtp8Verbinding met %1 afgeslotenConnection to %1 closedQFtp>Aanmaken van map is mislukt: %1Creating directory failed: %1QFtpJDownloaden van bestand is mislukt: %1Downloading file failed: %1QFtp(Gastheer %1 gevonden Host %1 foundQFtp2Gastheer %1 niet gevondenHost %1 not foundQFtp"Gastheer gevonden Host foundQFtpLWeergeven van de mappen is mislukt: %1Listing directory failed: %1QFtp,Aanmelding mislukt: %1Login failed: %1QFtpGeen verbinding Not connectedQFtpDVerwijderen van map is mislukt: %1Removing directory failed: %1QFtpLVerwijderen van bestand is mislukt: %1Removing file failed: %1QFtpOnbekende fout Unknown errorQFtpFUploaden van bestand is mislukt: %1Uploading file failed: %1QFtpOnbekende fout Unknown error QHostInfo,gastheer niet gevondenHost not foundQHostInfoAgent(Onbekend soort adresUnknown address typeQHostInfoAgentOnbekende fout Unknown errorQHostInfoAgent*Authenticatie vereistAuthentication requiredQHttp2Verbonden met de gastheerConnected to hostQHttp8Verbonden met de gastheer %1Connected to host %1QHttp*Verbinding afgeslotenConnection closedQHttp(Verbinding geweigerdConnection refusedQHttpZVerbinding geweigerd (tijdslimiet verstreken)!Connection refused (or timed out)QHttp8Verbinding met %1 afgeslotenConnection to %1 closedQHttp6gegevens zijn onbetrouwbaarData corruptedQHttp.HTTP verzoek is misluktHTTP request failedQHttp|HTTPS verginding vereist maar SSL ondersteuning niet opgenomen:HTTPS connection requested but SSL support not compiled inQHttp(Gastheer %1 gevonden Host %1 foundQHttp2Gastheer %1 niet gevondenHost %1 not foundQHttp"Gastheer gevonden Host foundQHttpBDe gastheer vereist authenticatieHost requires authenticationQHttp8Ongeldige HTTP gebroken bodyInvalid HTTP chunked bodyQHttp@Ongeldige HTTP antwoord (header)Invalid HTTP response headerQHttpTGeen server aangewezen om mee te verbindenNo server set to connect toQHttp4Proxy authentcatie vereistProxy authentication requiredQHttp<De proxy vereist authenticatieProxy requires authenticationQHttp$verzoek afgebrokenRequest abortedQHttp.SSL handdruk is misluktSSL handshake failedQHttp^Server heeft de verbinding onverwacht verbroken%Server closed connection unexpectedlyQHttpOnbekende fout Unknown errorQHttp@Onbekend protocol gespecificeerdUnknown protocol specifiedQHttp@Lengte van de inhoud is verkeerdWrong content lengthQHttp*Authenticatie vereistAuthentication requiredQHttpSocketEngine<Kan de transactie niet startenCould not start transaction QIBaseDriver6Kan de database niet openenError opening database QIBaseDriverBKan de transactie niet bevestigenUnable to commit transaction QIBaseDriverFKan de transactie niet terugdraaienUnable to rollback transaction QIBaseDriver@Kan de instructie niet toewijzenCould not allocate statement QIBaseResultRKan de invoer instructie niet beschrijven"Could not describe input statement QIBaseResultDKan de instructie niet beschrijvenCould not describe statement QIBaseResultDKan het volgende item niet ophalenCould not fetch next item QIBaseResult*Kan geen array vindenCould not find array QIBaseResult>Kan geen array gegevens ophalenCould not get array data QIBaseResultBKan geen array informatie ophalenCould not get query info QIBaseResult\Kan geen informatie over de instructie krijgenCould not get statement info QIBaseResultFKan de instructie niet voorbereidenCould not prepare statement QIBaseResult<Kan de transactie niet startenCould not start transaction QIBaseResult@Kan de instructie niet afsluitenUnable to close statement QIBaseResultBKan de transactie niet bevestigenUnable to commit transaction QIBaseResult,Kan geen BLOB aanmakenUnable to create BLOB QIBaseResult>Kan de zoekvraag niet uitvoerenUnable to execute query QIBaseResult(Kan geen BLOB openenUnable to open BLOB QIBaseResult&Kan geen BLOB lezenUnable to read BLOB QIBaseResult4Kan geen BLOB wegschrijvenUnable to write BLOB QIBaseResult@Geen ruimte meer op het apparaatNo space left on device QIODevice6Bestand of map bestaat nietNo such file or directory QIODevice Geen toestemmingPermission denied QIODevice,Te veel bestanden openToo many open files QIODeviceOnbekende fout Unknown error QIODevice.Mac OS X invoer methodeMac OS X input method QInputContext,Windows invoer methodeWindows input method QInputContextXIMXIM QInputContext$XIM invoer methodeXIM input method QInputContext6Kan '%1': %2 niet mmappen??Could not mmap '%1': %2QLibrary8kan '%1': %2 niet unmappen??Could not unmap '%1': %2QLibrarydPlugin controle gegevens komen niet overeen in '%1)Plugin verification data mismatch in '%1'QLibraryfQLibrary::load_sys: %1 kan niet worden geladen (%2)'QLibrary::load_sys: Cannot load %1 (%2)QLibraryQLibrary::resolve_sys: Het symbool "%1" is niet in %2 gedefinieerd (%3)7QLibrary::resolve_sys: Symbol "%1" undefined in %2 (%3)QLibrarylQLibrary::unload_sys: %1 kan niet worden ontladen (%2)+QLibrary::unload_sys: Cannot unload %1 (%2)QLibraryNBestand '%1' is geen geldige Qt plugin.'The file '%1' is not a valid Qt plugin.QLibraryPlugin '%1' gebruikt een QT biblitheek, (%2.%3.%4) [%5], die niet compatibel is=The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]QLibraryPlugin '%1' gebruikt een QT bibliotheek die niet compatibel is. (kan geen test en productie biblitheek doorelkaar gebruiken.)WThe plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)QLibraryPlugin '%1' gebruikt een QT biblitheek die niet compatibel is. Verwacht bouw sleutel "%2" maar kreeg "%3"OThe plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"QLibraryVDe dynamische bibliotheek is niet gevonden.!The shared library was not found.QLibraryOnbekende fout Unknown errorQLibrary&Kopiren&Copy QLineEdit&Plakken&Paste QLineEditOp&nieuw&Redo QLineEdit&Ongedaan maken&Undo QLineEditK&nippenCu&t QLineEditVerwijderenDelete QLineEdit Alles selecteren Select All QLineEdit(%1: Adres in gebruik%1: Address in use QLocalServer&%1: Fout in de naam%1: Name error QLocalServer(%1: geen toestemming%1: Permission denied QLocalServer*%1: Onbekende fout %2%1: Unknown error %2 QLocalServer2%1: Fout in de verbinding%1: Connection error QLocalSocket0%1: Verbinding geweigerd%1: Connection refused QLocalSocket8%1: Het datagram is te groot%1: Datagram too large QLocalSocket$%1: Ongeldige naam%1: Invalid name QLocalSocket^%1: De verbinding vanuit andere kant afgesloten%1: Remote closed QLocalSocketH%1:fout in de toegang naar de socket%1: Socket access error QLocalSocket^%1: Tijdslimiet verstreken voor de socket actie%1: Socket operation timed out QLocalSocket`%1:fout in de toegang naar de bron van de socket%1: Socket resource error QLocalSocketX%1: Deze socket actie wordt niet ondersteund)%1: The socket operation is not supported QLocalSocket*%1: Onbekende fout %2%1: Unknown error %2 QLocalSocketFKan niet beginnen met de transactieUnable to begin transaction QMYSQLDriverBKan de transactie niet bevestigenUnable to commit transaction QMYSQLDriver2Kan geen verbinding makenUnable to connect QMYSQLDriver:Kan de database niet openen 'Unable to open database ' QMYSQLDriverFKan de transactie niet terugdraaienUnable to rollback transaction QMYSQLDriver4Kan geen overwaarde bindenUnable to bind outvalues QMYSQLResult,Kan geen waarde bindenUnable to bind value QMYSQLResultPKan de volgende zoekvraag niet uitvoerenUnable to execute next query QMYSQLResult>Kan de zoekvraag niet uitvoerenUnable to execute query QMYSQLResult<Kan de opdracht niet uitvoerenUnable to execute statement QMYSQLResult8Kan de gegevens niet ophalenUnable to fetch data QMYSQLResultBKan de opdracht niet voorbereidenUnable to prepare statement QMYSQLResult@Kan de opdracht niet terugzettenUnable to reset statement QMYSQLResultLKan het volgene resultaat niet opslaanUnable to store next result QMYSQLResult<Kan het resultaat niet opslaanUnable to store result QMYSQLResult\Kan het resultaat van de opdracht niet opslaan!Unable to store statement results QMYSQLResult(Zonder titel) (Untitled)QMdiArea%1 - [%2] %1 - [%2] QMdiSubWindowSl&uiten&Close QMdiSubWindow&Verplaatsen&Move QMdiSubWindow&Terugzetten&Restore QMdiSubWindow&Omvang&Size QMdiSubWindow - [%1]- [%1] QMdiSubWindowSluitenClose QMdiSubWindowHelpHelp QMdiSubWindowMa&ximaliseren Ma&ximize QMdiSubWindowMaximaliserenMaximize QMdiSubWindowMenuMenu QMdiSubWindowMi&nimaliseren Mi&nimize QMdiSubWindowMinimaliserenMinimize QMdiSubWindowTerugzettenRestore QMdiSubWindow$Omlaag terugzetten Restore Down QMdiSubWindowArcerenShade QMdiSubWindow0Op de &Voorgrond blijven Stay on &Top QMdiSubWindow"Arcering opheffenUnshade QMdiSubWindowSluitenCloseQMenuUitvoerenExecuteQMenu OpenenOpenQMenu<h3>Info over Qt</h3>%1<p>Qt is een C++ gereedschapskist voor applicatie ontwikkeling over platformen heen.</p><p>Qt levert n enkele bron overdraagbaarheid met MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux en alle belangrijke commercile Unix variantenn. Qt is ook beschikbaar voor ingebouw apparaten zoals Qt voor inbouw Linux en Qt voor Windows CE.</p><p>Qt is een Nokia product. Kijk bij <a href="http://www.trolltech.com/qt/">www.trolltech.com/qt/</a> voor meer informatie.</p>

About Qt

%1

Qt is a C++ toolkit for cross-platform application development.

Qt provides single-source portability across MS Windows, Mac OS X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.

Qt is a Nokia product. See www.trolltech.com/qt/ for more information.

 QMessageBox<p>Dit programma gebruikt Qt Open Source editie versie %1.</p><p>Qt Open Source editie is bedoeld voor het ontwikkelen van Open Source applicaties. U heeft een commercile Qt license nodig voor het ontwikkelen van proprietary (closed source) applicaties.</p><p>Kijk bij <a href="http://www.trolltech.com/company/model/">www.trolltech.com/company/model/</a> voor een overzicht van Qt licenties.</p>|

This program uses Qt Open Source Edition version %1.

Qt Open Source Edition is intended for the development of Open Source applications. You need a commercial Qt license for development of proprietary (closed source) applications.

Please see www.trolltech.com/company/model/ for an overview of Qt licensing.

 QMessageBoxV<p>Dit programma gebruikt Qt versie %1.</p>'

This program uses Qt version %1.

 QMessageBoxInfo over QtAbout Qt QMessageBoxHelpHelp QMessageBox(Details verbergen...Hide Details... QMessageBoxOKOK QMessageBox(Details weergeven...Show Details... QMessageBoxSelecteer IM Select IMQMultiInputContextBSchakelaar tussen invoer methodesMultiple input method switcherQMultiInputContextPluginSchakelaar tussen invoer methodes die gebruik maakt van het context menu of de tekst widgetsMMultiple input method switcher that uses the context menu of the text widgetsQMultiInputContextPlugin`Eenn andere socket luisterd al op dezelfde poort4Another socket is already listening on the same portQNativeSocketEngineProbeert IPv socket te gebruiken op een platform die IPv6 niet ondersteund=Attempt to use IPv6 socket on a platform with no IPv6 supportQNativeSocketEngine(Verbinding geweigerdConnection refusedQNativeSocketEngineXVerbinding heeft de tijdslimiet overschredenConnection timed outQNativeSocketEngineJ Datagram is te groot om te verzendenDatagram was too large to sendQNativeSocketEngine2Gastheer niet te bereikenHost unreachableQNativeSocketEngine6Ongeldige socket deskriptorInvalid socket descriptorQNativeSocketEngineNetwerk fout Network errorQNativeSocketEngine^Tijdslimiet van de netwerk operatie is verlopenNetwork operation timed outQNativeSocketEngine6Netwerk is niet te bereikenNetwork unreachableQNativeSocketEngine6Operatie op een niet-socketOperation on non-socketQNativeSocketEngine*Geen hulpbronnen meerOut of resourcesQNativeSocketEngine Geen toestemmingPermission deniedQNativeSocketEngine>Soort protocol niet ondersteundProtocol type not supportedQNativeSocketEngine:Het adres is niet beschikbaarThe address is not availableQNativeSocketEngine,Het adres is beschermdThe address is protectedQNativeSocketEngineHHet opgegeven adres is al in gebruik#The bound address is already in useQNativeSocketEngine^De operatie is niet geldig voor dit soort proxy,The proxy type is invalid for this operationQNativeSocketEnginehDe gastheer op afstand heeft de verbinding verbroken%The remote host closed the connectionQNativeSocketEnginefKan het, rondstrooiende , socket niet initialiseren%Unable to initialize broadcast socketQNativeSocketEnginehKan het, niet blokkerende, socket niet initialiseren(Unable to initialize non-blocking socketQNativeSocketEngine<Kan het bericht niet ontvangenUnable to receive a messageQNativeSocketEngine<Kan het bericht niet verzendenUnable to send a messageQNativeSocketEngine*Kan niet wegschrijvenUnable to writeQNativeSocketEngineOnbekende fout Unknown errorQNativeSocketEngineBNiet ondersteunde socket operatieUnsupported socket operationQNativeSocketEngineDKan %1 niet openen: Het pad is map#Cannot open %1: Path is a directoryQNetworkAccessFileBackend6Openen van %1: %2 gaat foutError opening %1: %2QNetworkAccessFileBackendDLees fout bij het lezen van %1: %2Read error reading from %1: %2QNetworkAccessFileBackendlVerzoek om bestand %1 te openen, dat niet locaal staat%Request for opening non-local file %1QNetworkAccessFileBackendTSchrijf fout bij het schrijven naar %1: %2Write error writing to %1: %2QNetworkAccessFileBackend<Kan %1 niet openen: is een mapCannot open %1: is a directoryQNetworkAccessFtpBackendBFout tijdens het downloaden%1: %2Error while downloading %1: %2QNetworkAccessFtpBackend>Fout tijdens het uploaden%1: %2Error while uploading %1: %2QNetworkAccessFtpBackendvLogboek bij houden in %1 is mislukt: authenticatie is nodig0Logging in to %1 failed: authentication requiredQNetworkAccessFtpBackendhFout tijdens het downloaden%1 - server antwoorde: %2)Error downloading %1 - server replied: %2 QNetworkReply4Protocol "%1" is onbekend Protocol "%1" is unknown QNetworkReply(Operatie geanulleerdOperation canceledQNetworkReplyImplFKan niet beginnen met de transactieUnable to begin transaction QOCIDriverBKan de transactie niet bevestigenUnable to commit transaction QOCIDriver,Kan niet initialiserenUnable to initialize QOCIDriver(Kan u niet aanmeldenUnable to logon QOCIDriverFKan de transactie niet terugdraaienUnable to rollback transaction QOCIDriver@Kan de instructie niet toewijzenUnable to alloc statement QOCIResultdKan de kolom niet binden voor een batch uitvoering'Unable to bind column for batch execute QOCIResult,Kan geen waarde bindenUnable to bind value QOCIResultLKan de batch instructie niet uitvoeren!Unable to execute batch statement QOCIResultRKan de "select" instructie niet uitvoeren"Unable to execute select statement QOCIResult@Kan de instructie niet uitvoerenUnable to execute statement QOCIResult<Kan niet naar de volgende gaanUnable to goto next QOCIResultFKan de instructie niet voorbereidenUnable to prepare statement QOCIResultBKan de transactie niet bevestigenUnable to commit transaction QODBCDriver2Kan geen verbinding makenUnable to connect QODBCDriverKan geen verbinding maken - Stuurprogramma ondersteund niet alle benodigde functionaliteitCUnable to connect - Driver doesn't support all needed functionality QODBCDriver^Kan het automatisch bevestigen niet deactiverenUnable to disable autocommit QODBCDriverZKan het automatisch bevestigen niet activerenUnable to enable autocommit QODBCDriverFKan de transactie niet terugdraaienUnable to rollback transaction QODBCDriver0QODBCResult::terugzetten: 'SQL_CURSOR_STATIC' kan niet als een attribuut van instructie meegeven. controleer de configuratie van het ODBC stuurprogrammayQODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResult2Kan geen variabele bindenUnable to bind variable QODBCResult@Kan de instructie niet uitvoerenUnable to execute statement QODBCResult"Kan niets ophalenUnable to fetch QODBCResult4Kan de eerste niet ophalenUnable to fetch first QODBCResult6Kan de laatste niet ophalenUnable to fetch last QODBCResult8Kan de volgende niet ophalenUnable to fetch next QODBCResult4Kan de vorige niet ophalenUnable to fetch previous QODBCResultFKan de instructie niet voorbereidenUnable to prepare statement QODBCResult"Ongeldige URI: %1Invalid URI: %1QObject>Operatie op %1 niet ondersteundOperation not supported on %1QObject^Protocol fout:Een leeg gegevenspakket ontvangen)Protocol error: packet of size 0 receivedQObjectDLees fout bij het lezen van %1: %2Read error reading from %1: %2QObjectDe gastheer op afstand heeft de verbinding voortijdig verbroken op %13Remote host closed the connection prematurely on %1QObject*Socket fout op %1: %2Socket error on %1: %2QObjectTSchrijf fout bij het schrijven naar %1: %2Write error writing to %1: %2QObjectNaamNameQPPDOptionsModel WaardeValueQPPDOptionsModel<Kan de transactie niet startenCould not begin transaction QPSQLDriverBKan de transactie niet bevestigenCould not commit transaction QPSQLDriverFKan de transactie niet terugdraaienCould not rollback transaction QPSQLDriver2Kan geen verbinding makenUnable to connect QPSQLDriver2Inschrijven niet mogelijkUnable to subscribe QPSQLDriver4Uitschrijven niet mogelijkUnable to unsubscribe QPSQLDriver6Kan geen zoekvraag aanmakenUnable to create query QPSQLResultFKan de instructie niet voorbereidenUnable to prepare statement QPSQLResult Centimeters (cm)Centimeters (cm)QPageSetupWidgetFormulierFormQPageSetupWidgetHoogte:Height:QPageSetupWidgetInches (in) Inches (in)QPageSetupWidgetLiggend LandscapeQPageSetupWidget MargesMarginsQPageSetupWidgetMillimeter (mm)Millimeters (mm)QPageSetupWidgetLigging OrientationQPageSetupWidgetPapierformaat: Page size:QPageSetupWidget PapierPaperQPageSetupWidgetPapierlade: Paper source:QPageSetupWidgetPunten (pt) Points (pt)QPageSetupWidget StaandPortraitQPageSetupWidget"Liggend omgekeerdReverse landscapeQPageSetupWidget Staand omgekeerdReverse portraitQPageSetupWidgetBreedte:Width:QPageSetupWidgetondermarge bottom marginQPageSetupWidgetLinkermarge left marginQPageSetupWidgetRechtermarge right marginQPageSetupWidgetBovenmarge top marginQPageSetupWidget6De plugin was niet geladen.The plugin was not loaded. QPluginLoaderOnbekende fout Unknown error QPluginLoaderR%1 bestaat al. Wilt u deze overschrijven?/%1 already exists. Do you want to overwrite it? QPrintDialogX%1 is een map. Kies een andere bestandsnaam.7%1 is a directory. Please choose a different file name. QPrintDialog&Opties <<  &Options << QPrintDialog&Opties >> &Options >> QPrintDialog&Printen&Print QPrintDialogA0A0 QPrintDialogA1A1 QPrintDialogA2A2 QPrintDialogA3A3 QPrintDialogA4A4 QPrintDialogA5A5 QPrintDialogA6A6 QPrintDialogA7A7 QPrintDialogA8A8 QPrintDialogA9A9 QPrintDialogAlias: %1 Aliases: %1 QPrintDialogB0B0 QPrintDialogB1B1 QPrintDialogB10B10 QPrintDialogB2B2 QPrintDialogB3B3 QPrintDialogB4B4 QPrintDialogB5B5 QPrintDialogB6B6 QPrintDialogB7B7 QPrintDialogB8B8 QPrintDialogB9B9 QPrintDialogC5EC5E QPrintDialogAangepastCustom QPrintDialogDLEDLE QPrintDialogExecutive Executive QPrintDialogHet bestand %1 kan niet worden beschreven. Kies een andere bestandsnaam.=File %1 is not writable. Please choose a different file name. QPrintDialog FolioFolio QPrintDialog LedgerLedger QPrintDialog LegalLegal QPrintDialog LetterLetter QPrintDialogLocaal bestand Local file QPrintDialog<Afdrukken naar een bestand ...Print To File ... QPrintDialog@Afdrukken naar een bestand (PDF)Print to File (PDF) QPrintDialogNAfdrukken naar een bestand (Postscript)Print to File (Postscript) QPrintDialogTabloidTabloid QPrintDialog,US Common #10 EnvelopeUS Common #10 Envelope QPrintDialog$Schrijf %1 bestand Write %1 file QPrintDialog Locaal verbondenlocally connected QPrintDialogonbekendunknown QPrintDialogSluitenCloseQPrintPreviewDialogEerste pagina First pageQPrintPreviewDialog Pagina aanpassenFit pageQPrintPreviewDialog"Breedte aanpassen Fit widthQPrintPreviewDialogLiggend LandscapeQPrintPreviewDialogLaatste pagina Last pageQPrintPreviewDialogVolgende pagina Next pageQPrintPreviewDialog"Pagina instelling Page SetupQPrintPreviewDialog"Pagina instelling Page setupQPrintPreviewDialog StaandPortraitQPrintPreviewDialogVorige pagina Previous pageQPrintPreviewDialog PrintPrintQPrintPreviewDialogPrint voorbeeld Print PreviewQPrintPreviewDialog<Geef gespiegelde pagina's weerShow facing pagesQPrintPreviewDialogHGeef een overzicht met alle pagina'sShow overview of all pagesQPrintPreviewDialog8Geeft een enkele pagina weerShow single pageQPrintPreviewDialogInzoomenZoom inQPrintPreviewDialogUitzoomenZoom outQPrintPreviewDialogGeavanceerdAdvancedQPrintPropertiesWidgetFormulierFormQPrintPropertiesWidget PaginaPageQPrintPropertiesWidgetSorterenCollateQPrintSettingsOutput KleurColorQPrintSettingsOutputKleur modus Color ModeQPrintSettingsOutputKopienCopiesQPrintSettingsOutputKopien:Copies:QPrintSettingsOutput(Dubbelzijdig printenDuplex PrintingQPrintSettingsOutputFormulierFormQPrintSettingsOutputGrijswaarden GrayscaleQPrintSettingsOutputLange zijde Long sideQPrintSettingsOutputGeenNoneQPrintSettingsOutput OptiesOptionsQPrintSettingsOutput(Uitvoer instellingenOutput SettingsQPrintSettingsOutputVanaf pagina Pages fromQPrintSettingsOutputAlles printen Print allQPrintSettingsOutputPrint bereik Print rangeQPrintSettingsOutputOmgedraaidReverseQPrintSettingsOutputSelectie SelectionQPrintSettingsOutputKorte zijde Short sideQPrintSettingsOutputtottoQPrintSettingsOutput &Naam:&Name: QPrintWidget...... QPrintWidgetFormulierForm QPrintWidgetLocatie: Location: QPrintWidget Uitvoer&bestand: Output &file: QPrintWidget&Eigenschappen P&roperties QPrintWidgetVoorbeeldPreview QPrintWidgetPrinterPrinter QPrintWidget Type:Type: QPrintWidgetAnnulerenCancelQProgressDialog OpenenOpen QPushButtonControleerCheck QRadioButtonBVerkeerd teken in zinsbouw klassebad char class syntaxQRegExpJVerkeerde zinsbouw voor vooruitkijkenbad lookahead syntaxQRegExp<Verkeerde zinsbouw herhalingenbad repetition syntaxQRegExp:Gedeactiveerde optie gebruiktdisabled feature usedQRegExp0Ongeldige octale waarde invalid octal valueQRegExp,Interne limiet bereiktmet internal limitQRegExp,Mist linker begrenzingmissing left delimQRegExp(Geen fout opgetredenno error occurredQRegExp Onverwacht eindeunexpected endQRegExp6Kan de database niet openenError to open databaseQSQLite2Driver>Kan de transactie niet beginnenUnable to begin transactionQSQLite2DriverBKan de transactie niet bevestigenUnable to commit transactionQSQLite2DriverFKan de transactie niet terugdraaienUnable to rollback TransactionQSQLite2Driver@Kan de instructie niet uitvoerenUnable to execute statementQSQLite2Result<Kan het resultaat niet ophalenUnable to fetch resultsQSQLite2Result8Kan de database niet sluitenError closing database QSQLiteDriver6Kan de database niet openenError opening database QSQLiteDriverFKan niet beginnen met de transactieUnable to begin transaction QSQLiteDriverBKan de transactie niet bevestigenUnable to commit transaction QSQLiteDriverFKan de transactie niet terugdraaienUnable to rollback transaction QSQLiteDriver"Geen zoekopdrachtNo query QSQLiteResult@Het aantal parameters klopt nietParameter count mismatch QSQLiteResult4Kan geen parameters bindenUnable to bind parameters QSQLiteResult@Kan de instructie niet uitvoerenUnable to execute statement QSQLiteResult.Kan de rij niet ophalenUnable to fetch row QSQLiteResult@Kan de opdracht niet terugzettenUnable to reset statement QSQLiteResult OnderBottom QScrollBarLinker rand Left edge QScrollBarLijn onder?? Line down QScrollBarRangschikkenLine up QScrollBar.Een pagina naar beneden Page down QScrollBar*Een pagina naar links Page left QScrollBar,Een pagina naar rechts Page right QScrollBar"Een pagina omhoogPage up QScrollBarPositiePosition QScrollBarRechter rand Right edge QScrollBar&Naar onder scrollen Scroll down QScrollBarHier scrollen Scroll here QScrollBar&Naar links scrollen Scroll left QScrollBar(Naar rechts scrollen Scroll right QScrollBar&Naar boven scrollen Scroll up QScrollBar bovenTop QScrollBar%1: bestaat al%1: already exists QSharedMemoryB%1: aanmaakgrote is kleiner dan 0%1: create size is less then 0 QSharedMemory %1: bestaat niet%1: doesn't exists QSharedMemory0%1: ftok aanroep mislukt%1: ftok failed QSharedMemory&%1: sleutel is leeg%1: key is empty QSharedMemory$%1: niet gekoppeld%1: not attached QSharedMemory2%1: geen hulpbronnen meer%1: out of resources QSharedMemory(%1: geen toestemming%1: permission denied QSharedMemory`%1: door systeem afgedwongen limiet op de omvang$%1: system-imposed size restrictions QSharedMemory(%1: kan niet sluiten%1: unable to lock QSharedMemory:%1: kan geen sleutel aanmaken%1: unable to make key QSharedMemoryN%1: kan geen sleutel op het slot zetten%1: unable to set key on lock QSharedMemory&%1: kan niet openen%1: unable to unlock QSharedMemoryP%1: het unix sleutelbestand bestaat niet %1: unix key file doesn't exists QSharedMemory*%1: onbekende fout %2%1: unknown error %2 QSharedMemory++ QShortcutAltAlt QShortcut TerugBack QShortcutBackspace Backspace QShortcutTab terugBacktab QShortcutBass boost Bass Boost QShortcutBass <- Bass Down QShortcutBass ->Bass Up QShortcutAanroepCall QShortcutCaps Lock Caps Lock QShortcutCapsLockCapsLock QShortcutContext1Context1 QShortcutContext2Context2 QShortcutContext3Context3 QShortcutKontext4Context4 QShortcutCtrlCtrl QShortcutDelDel QShortcut DeleteDelete QShortcutNaar benedenDown QShortcutEndEnd QShortcut EnterEnter QShortcutEscEsc QShortcut EscapeEscape QShortcutF%1F%1 QShortcutFavorieten Favorites QShortcutOmdraaienFlip QShortcutVooruitForward QShortcutOphangenHangup QShortcutHelpHelp QShortcutHomeHome QShortcutStartpagina Home Page QShortcutInsIns QShortcut InsertInsert QShortcutStart (0) Launch (0) QShortcutStart (1) Launch (1) QShortcutStart (2) Launch (2) QShortcutStart (3) Launch (3) QShortcutStart (4) Launch (4) QShortcutStart (5) Launch (5) QShortcutStart (6) Launch (6) QShortcutStart (7) Launch (7) QShortcutStart (8) Launch (8) QShortcutStart (9) Launch (9) QShortcutStart (A) Launch (A) QShortcutStart (B) Launch (B) QShortcutStart (C) Launch (C) QShortcutStart (D) Launch (D) QShortcutStart (E) Launch (E) QShortcutStart (F) Launch (F) QShortcutStart mail Launch Mail QShortcut$Start media speler Launch Media QShortcut LinksLeft QShortcutVolgende Media Next QShortcutAfspelen Media Play QShortcut VorigeMedia Previous QShortcutOpnemen Media Record QShortcutStoppen Media Stop QShortcutMenuMenu QShortcutMetaMeta QShortcutNeeNo QShortcutNum LockNum Lock QShortcutNumLockNumLock QShortcutNumber Lock Number Lock QShortcutOpen URLOpen URL QShortcutPage Down Page Down QShortcutPage UpPage Up QShortcut PausePause QShortcut PgDownPgDown QShortcutPgUpPgUp QShortcut PrintPrint QShortcut$Druk het scherm af Print Screen QShortcutVerversenRefresh QShortcut ReturnReturn QShortcut RechtsRight QShortcutScroll Lock Scroll Lock QShortcutScrollLock ScrollLock QShortcut ZoekenSearch QShortcutselecterenSelect QShortcut ShiftShift QShortcut SpatieSpace QShortcutStand-byStandby QShortcutStoppenStop QShortcut SysReqSysReq QShortcutSystem RequestSystem Request QShortcutTabTab QShortcuttoon hoogte <- Treble Down QShortcuttoon hoogte -> Treble Up QShortcut OmhoogUp QShortcutVolume <- Volume Down QShortcutVolume uit Volume Mute QShortcutVolume -> Volume Up QShortcutJaYes QShortcut.Een pagina naar beneden Page downQSlider*Een pagina naar links Page leftQSlider,Een pagina naar rechts Page rightQSlider"Een pagina omhoogPage upQSliderPositiePositionQSliderXTijdslimiet verlopen bij de netwerk operatieNetwork operation timed outQSocks5SocketEngineSocks5 tijdslimiet verlopen tijdens verdinging zoeken met de socks server/Socks5 timeout error connecting to socks serverQSocks5SocketEngine MinderLessQSpinBoxMeerMoreQSpinBoxAnnulerenCancelQSql,Wijzigingen annuleren?Cancel your edits?QSqlBevestigenConfirmQSqlVerwijderenDeleteQSql.Dit record verwijderen?Delete this record?QSqlInvoegenInsertQSqlNeeNoQSql(Wijzigingen opslaan? Save edits?QSqlBijwerkenUpdateQSqlJaYesQSql^Kan geen certificaat leveren zonder sleutel, %1,Cannot provide a certificate with no key, %1 QSslSocketZFout bij het aanmaken van de SSL context (%1)Error creating SSL context (%1) QSslSocketVFout bij het aanmaken van de SSL sessie, %1Error creating SSL session, %1 QSslSocketVFout bij het aanmaken van de SSL sessie: %1Error creating SSL session: %1 QSslSocketHFout tijdens de SSL uitwisseling: %1Error during SSL handshake: %1 QSslSocketbFout bij het laden van het locale certificaat, %1#Error loading local certificate, %1 QSslSocketVFout bij het laden van de prive sleutel, %1Error loading private key, %1 QSslSocket4Fout bij het lezen van: %1Error while reading: %1 QSslSocketFOngeldige of lege sleutellijst (%1)!Invalid or empty cipher list (%1) QSslSockethPrive sleutel certificeerd geen publieke sleutel, %1/Private key does not certificate public key, %1 QSslSocketJKan de gegevens niet wegschrijven: %1Unable to write data: %1 QSslSocket>Kan de verbinding niet openen 'Unable to open connection QTDSDriver<Kan de database niet gebruikenUnable to use database QTDSDriver&Naar links scrollen Scroll LeftQTabBar(Naar rechts scrollen Scroll RightQTabBar&Kopiren&Copy QTextControl&Plakken&Paste QTextControlOp&nieuw&Redo QTextControl&Ongedaan maken&Undo QTextControl0Kopier &link en locatieCopy &Link Location QTextControl&KnippenCu&t QTextControlVerwijderenDelete QTextControl Alles selecteren Select All QTextControl OpenenOpen QToolButtonDruk opPress QToolButtonDDit platform ondersteund geen IPv6#This platform does not support IPv6 QUdpSocketOpnieuwRedo QUndoGroupOngedaan makenUndo QUndoGroup <leeg> QUndoModelOpnieuwRedo QUndoStackOngedaan makenUndo QUndoStackFVoeg een unicode controle teken toe Insert Unicode control characterQUnicodeControlCharacterMenuRLRE Start van links-naar-rechts imbedding$LRE Start of left-to-right embeddingQUnicodeControlCharacterMenu>LRM Links-naar-rechts markeringLRM Left-to-right markQUnicodeControlCharacterMenuTLRO Start van links-naar-rechts tenietdoen#LRO Start of left-to-right overrideQUnicodeControlCharacterMenu:PDF Pop richtingsformatteringPDF Pop directional formattingQUnicodeControlCharacterMenuRRLE Start van rechts-naar-links imbedding$RLE Start of right-to-left embeddingQUnicodeControlCharacterMenu>RLM Rechts-naar-links markeringRLM Right-to-left markQUnicodeControlCharacterMenuTRLO Start van rechts-naar-links tenietdoen#RLO Start of right-to-left overrideQUnicodeControlCharacterMenu8ZWJ Koppelaar zonder breedteZWJ Zero width joinerQUnicodeControlCharacterMenuDZWNJ Niet-koppelaar zonder breedteZWNJ Zero width non-joinerQUnicodeControlCharacterMenu4ZWSP Spatie zonder breedteZWSP Zero width spaceQUnicodeControlCharacterMenuFDer URL kann nicht angezeigt werdenCannot show URL QWebFrame@Kan het mime type niet weergevenCannot show mimetype QWebFrame(Bestand bestaat nietFile does not exist QWebFrameLaden van het frame onderbroken door een wijziging in het beleid&Frame load interruped by policy change QWebFrame&verzoek geblokkeerdRequest blocked QWebFrame&Verzoek geannuleerdRequest cancelled QWebFrame"%1 (%2x%3 pixels)%1 (%2x%3 pixels)QWebPage(Aan de map toevoegenAdd To DictionaryQWebPage*Ongeldig HTTP verzoekBad HTTP requestQWebPageVetBoldQWebPageHControleer gramatica met de spellingCheck Grammar With SpellingQWebPage&Controleer spellingCheck SpellingQWebPageJControleer spelling tijdens het typenCheck Spelling While TypingQWebPageKies bestand Choose FileQWebPage6Recente zoekvragen opruimenClear recent searchesQWebPageKopirenCopyQWebPageKopier plaatje Copy ImageQWebPageKopier link Copy LinkQWebPageKnippenCutQWebPageStandaardDefaultQWebPageRichting DirectionQWebPageLettertypenFontsQWebPageGa terugGo BackQWebPageGa vooruit Go ForwardQWebPage:Verberg spelling en gramaticaHide Spelling and GrammarQWebPageNegerenIgnoreQWebPageNegeren Ignore Grammar context menu itemIgnoreQWebPageInspecterenInspectQWebPageCursiefItalicQWebPage*Van links naar rechtsLTRQWebPage6In het woordenboek opzoekenLook Up In DictionaryQWebPage.Geen schatting gevondenNo Guesses FoundQWebPage2Geen bestand geselecteerdNo file selectedQWebPage.Geen recente zoekvragenNo recent searchesQWebPageFrame openen Open FrameQWebPagePlaatje openen Open ImageQWebPageLink openen Open LinkQWebPage6Openen in een nieuw vensterOpen in New WindowQWebPageOutlineOutlineQWebPagePlakkenPasteQWebPage*Van rechts naar linksRTLQWebPage$Recente zoekvragenRecent searchesQWebPageOpnieuw ladenReloadQWebPageTerugzettenResetQWebPagePlaatje opslaan Save ImageQWebPageLink opslaan... Save Link...QWebPage Doorzoek het WebSearch The WebQWebPage>Geef spelling en gramatica weerShow Spelling and GrammarQWebPageSpellingSpellingQWebPageStopStopQWebPageVoorleggenSubmitQWebPageVoorleggenQSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPage`Deze index is te doorzoeken.Geef trefwoorden op:3This is a searchable index. Enter search keywords: QWebPageOnderstrepen UnderlineQWebPageOnbekendUnknownQWebPage&Web Inspecteur - %2Web Inspector - %2QWebPageWat is dit? What's This?QWhatsThisAction**QWidget &Klaar&FinishQWizard &Help&HelpQWizard&Volgende&NextQWizard&Volgende >&Next >QWizard< &Terug< &BackQWizardAnnulerenCancelQWizardAnwendenCommitQWizardDoorgaanContinueQWizard KlaarDoneQWizard VorigeGo BackQWizardHelpHelpQWizardStoppenQuitQWizard%1 - [%2] %1 - [%2] QWorkspace&Sluiten&Close QWorkspace&Verplaatsen&Move QWorkspace&Terugzetten&Restore QWorkspace&Omvang&Size QWorkspace&Unshade&Unshade QWorkspaceSluitenClose QWorkspaceMa&ximaliseren Ma&ximize QWorkspaceMi&nimaliseren Mi&nimize QWorkspaceMinimaliserenMinimize QWorkspaceRestore Down Restore Down QWorkspace Sh&adeSh&ade QWorkspace0Op de &Voorgrond blijven Stay on &Top QWorkspaceBij het lezen van de XML declaratie wordt een coderende declaratie of op zichzelf staande declaratie verwachtYencoding declaration or standalone declaration expected while reading the XML declarationQXmlhFout in de tekst declaratie van een externe entiteit3error in the text declaration of an external entityQXmlfFout opgetreden bij het ontleden van het commentaar$error occurred while parsing commentQXml\Fout opgetreden bij het ontleden van de inhoud$error occurred while parsing contentQXmlfout opgetreden bij het ontleden van het document type definitie5error occurred while parsing document type definitionQXmlJFout bij het ontleden van het element$error occurred while parsing elementQXmlNFout bij het ontleden van de referentie&error occurred while parsing referenceQXmlDFout door de consument veroorzaakterror triggered by consumerQXmlin een DTD is geen externe algemene entity referentie toegestaan;external parsed general entity reference not allowed in DTDQXmlin een attribuut waarde is geen externe entiteit referentie toegestaanGexternal parsed general entity reference not allowed in attribute valueQXmlin een DTD is geen interne algemene entity referentie toegestaan4internal general entity reference not allowed in DTDQXmlHOngeldige naam voor procesinstructie'invalid name for processing instructionQXml2Een letter wordt verwachtletter is expectedQXmlTMeerdere definities van het soort document&more than one document type definitionQXml(Geen fout opgetredenno error occurredQXml$recursive entiteitrecursive entitiesQXmlop zichzelf staande declaratie verwacht bij het lezen een XML declaratieAstandalone declaration expected while reading the XML declarationQXml>Verkeerde combinatie met labels tag mismatchQXml Onverwacht tekenunexpected characterQXmlBOnverwachts einde van het bestandunexpected end of fileQXmlpNiet ontlede entiteit referentie in de verkeerde context*unparsed entity reference in wrong contextQXml`Versie verwacht bij het lezen een XML declaratie2version expected while reading the XML declarationQXmlpVerkeerde waarde voor een op zichzelf staande declaratie&wrong value for standalone declarationQXml@%1 is een ongeldige PUBLIEKE id.#%1 is an invalid PUBLIC identifier. QXmlStreamD%1 is een ongeldige coderingsnaam.%1 is an invalid encoding name. QXmlStream`%1 is ongeldige naam voor een proces instructie.-%1 is an invalid processing instruction name. QXmlStream, maar kreeg ' , but got ' QXmlStream>Attribuut opnieuw gedefinieerd.Attribute redefined. QXmlStreamJCoderen van %1 wordt niet ondersteundEncoding %1 is unsupported QXmlStreamNNiet correct gecodeerde inhoud ontdekt.(Encountered incorrectly encoded content. QXmlStreamDEntieit '%1' is niet gedeclareerd.Entity '%1' not declared. QXmlStreamVerwacht  Expected  QXmlStream>Verwacht een teken als gegeven.Expected character data. QXmlStreamXExtra inhoud aan het einde van het document.!Extra content at end of document. QXmlStream@Ongeldige naamruimte declaratie.Illegal namespace declaration. QXmlStream&Ongeldig XML teken.Invalid XML character. QXmlStream&Ongeldige XML naam.Invalid XML name. QXmlStream8Ongeldige XML versie opgave.Invalid XML version string. QXmlStreamPOngeldig attribuut in de XML declaratie.%Invalid attribute in XML declaration. QXmlStreamHOngeldige verwijzing naar een teken.Invalid character reference. QXmlStream$Ongeldig document.Invalid document. QXmlStream4Ongeldige waarde entiteit.Invalid entity value. QXmlStreamTOngeldige naam voor een proces instructie.$Invalid processing instruction name. QXmlStreamTNDATA in de parameter entiteit declaratie.&NDATA in parameter entity declaration. QXmlStreambDe naamruimte voorvoegsel '%1' is niet declareerd"Namespace prefix '%1' not declared QXmlStreamTOpening en afsluit tag komen niet overeen. Opening and ending tag mismatch. QXmlStreamDVoortijdig einde van het document.Premature end of document. QXmlStream>Een recursive entiteit ontdekt.Recursive entity detected. QXmlStreamzVerwijzing naar externe entiteit '%1' in de attribuut waarde.5Reference to external entity '%1' in attribute value. QXmlStreamVReferentie naar niet ontlede entiteit '%1'."Reference to unparsed entity '%1'. QXmlStreamdDe volgorde ']]>' is niet toegestaan in de inhoud.&Sequence ']]>' not allowed in content. QXmlStream^Op zichzelf staand accepteerd alleen ja of nee."Standalone accepts only yes or no. QXmlStream&Start tag verwacht.Start tag expected. QXmlStreamHet op zichzelf staande pseudo attribuut moet na de codering volgen.?The standalone pseudo attribute must appear after the encoding. QXmlStreamOnverwacht ' Unexpected ' QXmlStreamh'%1' wordt niet verwacht in een publieke id literal./Unexpected character '%1' in public id literal. QXmlStreamNDeze XML versie wordt niet ondersteund.Unsupported XML version. QXmlStreamxDe XML declaratie staat niet aan heb begin van het document.)XML declaration not at start of document. QXmlStream~%1 en %2 komen aan het begin en het einde van de regel overeen.,%1 and %2 match the start and end of a line. QtXmlPatterns@%1 kan niet terug gehaald worden%1 cannot be retrieved QtXmlPatterns%1 is een complex soort. Overgaan naar een complex soort is niet mogelijk. Hoewel overgaan van zeer kleine soorten zoals %2 werkt.s%1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works. QtXmlPatterns"%1 is ongeldig %2%1 is an invalid %2 QtXmlPatterns%1 is een ongeldige vlag voor een reguliere expressie. Geldige vlaggen zijn:?%1 is an invalid flag for regular expressions. Valid flags are: QtXmlPatternsF%1 is een ongeldige naamruimte URI.%1 is an invalid namespace URI. QtXmlPatternsf%1 is een ongeldige reguliere expressie patroon: %2/%1 is an invalid regular expression pattern: %2 QtXmlPatterns@%1 is een onbekend soort schema.%1 is an unknown schema type. QtXmlPatternsB%1 is een ongeldig XML 1.0 teken.$%1 is not a valid XML 1.0 character. QtXmlPatterns%1 is geen geldige naam voor een proces instructie. Daarom zal deze naam test nooit werken._%1 is not a valid name for a processing-instruction. Therefore this name test will never match. QtXmlPatternsH%1 is geen geldige numerike literal."%1 is not a valid numeric literal. QtXmlPatterns%1 is geen geldige doelnaam in een proces instructie. Deze moet %2 waarde zijn, bijvoorbeeld %3.Z%1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3. QtXmlPatternsX%1 is een ongeldige waarde van het soort %2.#%1 is not a valid value of type %2. QtXmlPatternsJ%1 is geen geheel getal voor minuten.$%1 is not a whole number of minutes. QtXmlPatterns%1 is geen zeer kleine soort. Overgaan is alleen mogeijk naar zeer kleine soorten.C%1 is not an atomic type. Casting is only possible to atomic types. QtXmlPatterns%1 valt niet in het bereik van de attribuut declaraties. Let op: het kenmerk "schema import" wordt niet ondersteund.g%1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported. QtXmlPatternsd%1 is niet geldig als een waarde van het soort %2.&%1 is not valid as a value of type %2. QtXmlPatternsZ%1 komt overeen met tekens voor nieuwe regels%1 matches newline characters QtXmlPatterns%1 moet gevolgd worden door %2 of %3; maar niet aan het einde van een vervangende reeks.J%1 must be followed by %2 or %3, not at the end of the replacement string. QtXmlPatternsv%1 vereist tenminste %n argument(en) %2 is daarom ongeldig.v%1 vereist tenminste %n argument(en) %2 is daarom ongeldig.=%1 requires at least %n argument(s). %2 is therefore invalid. QtXmlPatternsx%1 heeft ten hoogste %n argument(en). %2 is daarom ongeldig.x%1 heeft ten hoogste %n argument(en). %2 is daarom ongeldig.9%1 takes at most %n argument(s). %2 is therefore invalid. QtXmlPatterns&%1 was aangeroepen.%1 was called. QtXmlPatternsFEen commentaar kan geen %1 bevattenA comment cannot contain %1 QtXmlPatternsNEen commentaar kan niet op %1 eindigen.A comment cannot end with a %1. QtXmlPatternsEen standaard naamruimte declaratie moet bestaan voor een functie, variabele en optie declaraties.^A default namespace declaration must occur before function, variable, and option declarations. QtXmlPatternsEen directe element constructor is niet goed gevormeerd. %1 eindigt met %2.EA direct element constructor is not well-formed. %1 is ended with %2. QtXmlPatternsVEen functie met handtekening %1 bestaat al.0A function already exists with the signature %1. QtXmlPatternsEen bibliotheek module kan niet direct gevalueerd worden. Deze moet via een hoofd module gemporteerd worden.VA library module cannot be evaluated directly. It must be imported from a main module. QtXmlPatternsEen positioneel gezegde moet evalueren naar een enkele numerieke waarde.?A positional predicate must evaluate to a single numeric value. QtXmlPatternsEen waarde van het soort %1 kan geen gezegde zijn. Een gezegde moet of een numerieke soort of een effectieve booleanse waarde soort hebben.yA value of type %1 cannot be a predicate. A predicate must have either a numeric type or an Effective Boolean Value type. QtXmlPatternsEn waarde van het soort %1 kan geen effectieve booleanse waarde hebben.:A value of type %1 cannot have an Effective Boolean Value. QtXmlPatternsEen waarde van het soort %1 moet een even aantal getallen bevatten. De waarde %2 heeft dat niet.PA value of type %1 must contain an even number of digits. The value %2 does not. QtXmlPatternsEen variabele met de naam %1 is al gedeclareerd in de inleiding.>A variable by name %1 has already been declared in the prolog. QtXmlPatternsEen zone uitloper moet binnen de reeks %1..%2 (inklusief) vallen. %3 valt buiten het bereik.HA zone offset must be in the range %1..%2 inclusive. %3 is out of range. QtXmlPatternsEen %1 attribuut moest een geldige %2 als waarde hebben en dat is niet %3.>An %1-attribute must have a valid %2 as value, which %3 isn't. QtXmlPatternsjEen %1 attribuut met de waarde %2 is al gedeclareerd.8An %1-attribute with value %2 has already been declared. QtXmlPatternsEen argument met de naam %1 is al gedeclareerd. Elke naam van een argument moet uniek zijn.UAn argument by name %1 has already been declared. Every argument name must be unique. QtXmlPatterns|Een attribuut met de naam %1 is al voorgekomen op dit element.=An attribute by name %1 has already appeared on this element. QtXmlPatterns\Een attribuut met de naam %1 is al aangemaakt.1An attribute by name %1 has already been created. QtXmlPatternsEen attribuut node kan geen kind zijn van een document node. Daarom is het attribuut %1 niet op zijn plaats.dAn attribute node cannot be a child of a document node. Therefore, the attribute %1 is out of place. QtXmlPatternsVTenminste n component moet aanwezig zijn.'At least one component must be present. QtXmlPatterns~Tenminste n tijd component moet voorkomen na de %1 begrenzer.?At least one time component must appear after the %1-delimiter. QtXmlPatternsAttribuut %1 kan niet geserialiseerd worden omdat deze op het hoogste niveau voortkomt.EAttribute %1 can't be serialized because it appears at the top level. QtXmlPatternsOvergaan naar %1 is niet mogelijk omdat dit een abstracte soort is en kan daarom nooit geconcretiseerd worden.fCasting to %1 is not possible because it is an abstract type, and can therefore never be instantiated. QtXmlPatternsBDag %1 is ongeldig voor maand %2.Day %1 is invalid for month %2. QtXmlPatternsFDag %1 valt buiten de reeks %2..%3.#Day %1 is outside the range %2..%3. QtXmlPatternsDelen van een waarde van het soort %1 door %2 (geen getal) is niet toegestaan.@Dividing a value of type %1 by %2 (not-a-number) is not allowed. QtXmlPatternsDelen van een waarde van het soort %1 door %2 of %3 (plus of min nul) is niet toegestaan.LDividing a value of type %1 by %2 or %3 (plus or minus zero) is not allowed. QtXmlPatternsfDe deling (%1) door nul (%2) is niet gedefinieerd.(Division (%1) by zero (%2) is undefined. QtXmlPatternsEen effectieve boolsche waarde kan niet worden berekend voor een serrie die meer dan twee zeer kleine waarden bevat.aEffective Boolean Value cannot be calculated for a sequence containing two or more atomic values. QtXmlPatternsElement %1 kan niet geserialiseerd worden omdat buiten het document element voorkomt.OElement %1 can't be serialized because it appears outside the document element. QtXmlPatternsRDe overgang van %1 naar %2 is mislukt: %3&Failure when casting from %1 to %2: %3 QtXmlPatternsHebben beide waarden zone uitlopers, dan moeten ze dezelfde zone uitloper hebben. %1 en %2 zijn niet hetzelfde.bIf both values have zone offsets, they must have the same zone offset. %1 and %2 are not the same. QtXmlPatternsJIs het eerste argument lege volgorde of een reeks met lengte nul (geen naamruimte), dan kan geen voorvoegsel worden gespecificeerd. Voorvoegsel %1 is gespecificeerd.If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified. QtXmlPatternsIn de vervangende reeks kan %1 alleen worden gebruikt om zichzelf in te dekken of %2 maar niet %3MIn the replacement string, %1 can only be used to escape itself or %2, not %3 QtXmlPatternsIn de vervangende reeks moet %1 gevolgd worden door tenminste n cijfer als deze niet door een escape teken wordt gedekt.VIn the replacement string, %1 must be followed by at least one digit when not escaped. QtXmlPatternsDe deling met gehele getallen (%1) door nul (%2) is niet gedefinieerd.0Integer division (%1) by zero (%2) is undefined. QtXmlPatternspHet is niet mogelijk om voorvoegsel %1 opnieuw te binden+It is not possible to bind to the prefix %1 QtXmlPatternspHet is niet mogelijk om %1 over te laten gaan vanuit %2.)It is not possible to cast from %1 to %2. QtXmlPatternszHet is niet mogelijk om voorvoegsel %1 opnieuw te declareren.*It is not possible to redeclare prefix %1. QtXmlPatternsThet is niet mogelijk om %1 terug te halen.'It will not be possible to retrieve %1. QtXmlPatternsHet is niet mogelijk om attributen toe te voegen na enig ander soort node.AIt's not possible to add attributes after any other kind of node. QtXmlPatternsHet is niet mogelijk om de waarde %1 van soort %2 over te laten gaan naar %37It's not possible to cast the value %1 of type %2 to %3 QtXmlPatternsZOvereenkomsten zijn niet hoofdletter gevoeligMatches are case insensitive QtXmlPatternsModule import moet voorkomen voor functie, variabele en optie declaraties.MModule imports must occur before function, variable, and option declarations. QtXmlPatternsrDe modulo deling (%1) door nul (%2) is niet gedefinieerd.0Modulus division (%1) by zero (%2) is undefined. QtXmlPatternsPDe maand %1 valt buiten de reeks %2..%3.%Month %1 is outside the range %2..%3. QtXmlPatternsVermenigvuldigen van een waarde van het soort %1 met %2 of %3 (plus of min oneindig) is niet toegestaan.YMultiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed. QtXmlPatternsNaamruimte %1 kan alleen gebonden worden aan %2 (en is in elk geval voorgedeclareerd).ONamespace %1 can only be bound to %2 (and it is, in either case, pre-declared). QtXmlPatternsNaamruimte declaaraties moet voorkomen voor functie, variabele en optie declaraties.UNamespace declarations must occur before function, variable, and option declarations. QtXmlPatternsPTijdslimiet van het netwerk is verlopen.Network timeout. QtXmlPatternshEen overgang is niet mogelijk met %1 als doel soort.2No casting is possible with %1 as the target type. QtXmlPatternshMet soort %1 zijn geen vergelijkingen uit te voeren.1No comparisons can be done involving the type %1. QtXmlPatternsExterne funkties worden niet ondersteund. Alle ondersteunde functies kunnen direct worden gebruikt zonder deze als extern te declareren{No external functions are supported. All supported functions can be used directly, without first declaring them as external QtXmlPatternsXEen functie met naam %1 is niet beschikbaar.$No function by name %1 is available. QtXmlPatternsXGeen functie beschikbaar met handtekening %1*No function with signature %1 is available QtXmlPatternsvEen naamruimte binding bestaat niet voor het voorvoegsel %1-No namespace binding exists for the prefix %1 QtXmlPatternsEen naamruimte binding bestaat niet voor het voorvoegsel %1 in %23No namespace binding exists for the prefix %1 in %2 QtXmlPatternsGeen operand bij deling %1, van gehele getallen, kan een %2 zijin.1No operand in an integer division, %1, can be %2. QtXmlPatternsVoor de externe variabele met de naam %1 is geen waarde beschikbaar.;No value is available for the external variable by name %1. QtXmlPatternsJEen variabele met naam %1 betaat nietNo variable by name %1 exists QtXmlPatternsGeen van de pragmatische expressies worden ondersteund. Daarom moet een terugval expressie aanwezig zijn^None of the pragma expressions are supported. Therefore, a fallback expression must be present QtXmlPatternsMaar n %1 declaratie kan voorkomen in de inleiding van een zoekvraag.6Only one %1 declaration can occur in the query prolog. QtXmlPatternsAlleen de Unicode codepunt samenwerking wordt ondersteund (%1). %2 wordt niet ondersteund.IOnly the Unicode Codepoint Collation is supported(%1). %2 is unsupported. QtXmlPatternsAlleen voorvoegsel %1 kan gedeclareerd worden om te binden met naamruimte %2. Standaard is deze al gebonden met voorvoegsel %1.nOnly the prefix %1 can be declared to bind the namespace %2. By default, it is already bound to the prefix %1. QtXmlPatternsOperator %1 kan niet gebruikt worden op zeer kleine waarden van de soorent %2 en %3.>Operator %1 cannot be used on atomic values of type %2 and %3. QtXmlPatternsdOperator %1 kan niet worden gebruikt bij soort %2.&Operator %1 cannot be used on type %2. QtXmlPatternsOperator %1 is niet beschikbaar voor zeer kleine waarden van het soort %2 en %3.EOperator %1 is not available between atomic values of type %2 and %3. QtXmlPatternsRKan datum %1 niet weergeven (loopt over)."Overflow: Can't represent date %1. QtXmlPatternsRKan de datum niet weergeven (loopt over).$Overflow: Date can't be represented. QtXmlPatternsVoorvoegsel %1 kan alleen gebonden worden aan %2 (en is in elk geval voorgedeclareerd).LPrefix %1 can only be bound to %2 (and it is, in either case, pre-declared). QtXmlPatternsdVoorvoegsel %1 is al gedeclareerd in de inleiding.,Prefix %1 is already declared in the prolog. QtXmlPatternsHet opwaarderen van %1 maar %2 kan verlies van de nauwkeurigheid veroorzaken./Promoting %1 to %2 may cause loss of precision. QtXmlPatterns^Het vereiste hoofdtelwoord is %1 maar kreeg %2./Required cardinality is %1; got cardinality %2. QtXmlPatternsZHet vereiste soort is %1 maar %2 is gevonden.&Required type is %1, but %2 was found. QtXmlPatternsZDe %1 as wordt niet ondersteund in een XQuery$The %1-axis is unsupported in XQuery QtXmlPatternsDe import kenmerken, voor het schema, wordt niet ondersteund en daarom kunnen declaraties %1 niet voorkomen.WThe Schema Import feature is not supported, and therefore %1 declarations cannot occur. QtXmlPatternsHet kenmerk "schema validatie" wordt niet ondersteund. Daarom mogen %1 expressies niet worden gebruikt. VThe Schema Validation Feature is not supported. Hence, %1-expressions may not be used. QtXmlPatternsDe gegevens van een proces instructie kunnen niet de reeks %1 bevattenAThe data of a processing instruction cannot contain the string %1 QtXmlPatternsZDe standaard verzameling is niet gedefinieerd#The default collection is undefined QtXmlPatternsDe codering %1 is ongeldig. Deze mag alleen latijnse tekens bevatten, geen witruimte en moet overeenkomen met de reguliere expressie %2.The encoding %1 is invalid. It must contain Latin characters only, must not contain whitespace, and must match the regular expression %2. QtXmlPatternstHet eerste argument van %1 kan niet van het soort %2 zijn..The first argument to %1 cannot be of type %2. QtXmlPatternsHet eerste argument van %1 kan niet van het soort %2 zijn. Het moet numeriek, xs:jaarMaandDuur of xs:dagTijdDuur, zijn.uThe first argument to %1 cannot be of type %2. It must be a numeric type, xs:yearMonthDuration or xs:dayTimeDuration. QtXmlPatternsHet eerste argument van %1 kan niet van het soort %2 zijn. Het moet van het soort %3, %4 of %5 zijn.PThe first argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. QtXmlPatternsDe eerste operand in een deling met gehele getallen, %1, kan niet oneindig zijn (%2).FThe first operand in an integer division, %1, cannot be infinity (%2). QtXmlPatterns<De focus in niet gedefinieerd.The focus is undefined. QtXmlPatternspDe initialisering van variabele %1 hangt van zichzelf af3The initialization of variable %1 depends on itself QtXmlPatternspHet item %1 komt niet overeen met het vereiste soort %2./The item %1 did not match the required type %2. QtXmlPatternsDe laatste stap in een pad moet of nodes of zeer kleine waarden bevatten. En combinatie van de twee kan niet.kThe last step in a path must contain either nodes or atomic values. It cannot be a mixture between the two. QtXmlPatternsdHet kenmerk "import module" wordt niet ondersteund*The module import feature is not supported QtXmlPatternslDe naam %1 heeft verwijst niet naar enig soort schema..The name %1 does not refer to any schema type. QtXmlPatternsDe naam voor een berekend attribuut kan niet de naamruimte URI %1 hebben met de locale naam %2.ZThe name for a computed attribute cannot have the namespace URI %1 with the local name %2. QtXmlPatterns*De naam van de variabele, gebonden in een "for" expressie moet verschillen van de positionele variabele. Daarom botsen de twee variabelen genaamd %1.The name of a variable bound in a for-expression must be different from the positional variable. Hence, the two variables named %1 collide. QtXmlPatternsDe naam van een aanvullende expressie moet in de naamruimte aanwezig zijn.;The name of an extension expression must be in a namespace. QtXmlPatternsDe naam van een optie moet een voorvoegsel hebben. Er bestaat geen standaard naamruimte voor opties.TThe name of an option must have a prefix. There is no default namespace for options. QtXmlPatternsjDe naamruimte %1 is gereserveerd. Daarom kunnen eigen gedefineerde functies niet worden gebruikt. Probeer het voorgedefinieerde voorvoegsel %2) deze bestaat voor dit soort gevallen.The namespace %1 is reserved; therefore user defined functions may not use it. Try the predefined prefix %2, which exists for these cases. QtXmlPatternsDe naamruimte URI kan niet een lege reeks zijn als deze gebonden wordt aan voorvoegsel %1.JThe namespace URI cannot be the empty string when binding to a prefix, %1. QtXmlPatternsDe naamruimte URI inde naam voor berekende attribuut kan geen %1 zijn.DThe namespace URI in the name for a computed attribute cannot be %1. QtXmlPatternsEen naamruimte URI moet een constante zijn en kan geen ingesloten expressie zijn.IThe namespace URI must be a constant and cannot use enclosed expressions. QtXmlPatterns$De naamruimte for een eige gedefinieerde functie kan niet leeg zijn (probeer een voorgedefinieerd voorvoegsel %1 die voor dit soort zaken bestaat)yThe namespace for a user defined function cannot be empty (try the predefined prefix %1 which exists for cases like this) QtXmlPatternsZDe naamruimte van een zelf gedefinieerde functie, in een biblitheek module, moet overeenkomen met de module naamruimte. Met andere woorden: het moet %1 zijn in plaats van %2The namespace of a user defined function in a library module must be equivalent to the module namespace. In other words, it should be %1 instead of %2 QtXmlPatternsDe normalisatie vorm %1 wordt niet ondersteund. De ondersteunde vormen zijn %2, %3, %4, %5 ,en "geen", dus de lege reeks (geen normalisatie).The normalization form %1 is unsupported. The supported forms are %2, %3, %4, and %5, and none, i.e. the empty string (no normalization). QtXmlPatternsDe wortel node van het tweede argument voor functie %1 moet een document node zijn. %2 is geen document node.gThe root node of the second argument to function %1 must be a document node. %2 is not a document node. QtXmlPatternsHet tweede argument van %1 kan niet van het soort %2 zijn. Het moet van het soort %3, %4 of %5 zijn.QThe second argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. QtXmlPatternsxDe tweede operand in een deling, %1 kan niet null zijn (%2).:The second operand in a division, %1, cannot be zero (%2). QtXmlPatternsDe doelnaam, in een proces instructie, kan geen %1 zijn, in enige combinatie van hoofd- of kleine letters. Daarom is %2 ongeldig.~The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, is %2 invalid. QtXmlPatternsbDe doel naamruimte van een %1 kan niet leeg zijn.-The target namespace of a %1 cannot be empty. QtXmlPatternsFDe variabele %1 wordt niet gebruiktThe variable %1 is unused QtXmlPatterns:Tijd %1:%2:%3.%4 is ongeldig.Time %1:%2:%3.%4 is invalid. QtXmlPatterns24 uurs tijd:%1:%2.%3 zijn ongeldig. Het uur is 24 maar de minuten, seconden en milliseconden zijn niet allemaal 0. _Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0;  QtXmlPatternsTwee attributen voor een naamruimte declaratie hebben dezelfde naam: %1.v|^2|AOqcSvvR7ԱGVf%&)C:MdW^>24L5Z.6Cd.IAE 6Ⱦ9[Bg)I(,xbzÉ\yPXtQD5Df%*oE;Rnɵnf(ɵn;ɵnAɵnWɵnɵnɵnVɵnwuoXK( B~T5h*'54/ Un^fM1lN'ga,= qC. pTX۔ >vH^ qBJ8,)6<p5~f#Q%UT(Ŏ)9+*4-ctce-ctf..23e5ve?2?N@E;@VAB!lFR MNky,UixW~]C`h+`QjtlglyzHvl}_oivtyd4vty.hN$ 1l%"T99S 9gI43M)E {F6Y6^6SwG^%IOiRiT=y~.ljh1EEC{l=-8A7τgNnA#ۓb?H[yLQt1InU(Ph[EFm_M^MvEE*nwFwS6e'7^ # Iʈ 0fbB3 4'+c;5U 7!es$&ɺ)9*/e9*u7+A+N9,-,NPt6n;|K?4Q}By"Ec F*IQpoK~KNjOZfk\S~T\cB1\`]bBb/cփ'fg&4 jCmnqKqtuAu(n{>}kaEQ}:WR>h~ĜTL"Q_y1 Qn>K$$$8(tI+(: u(,.ʁWrB^K0}L֊b t4*>SfUހ.6 nZN,=.ՂhHqtY;yω!eaO*- I)u1AL3#Cn۪ n7^c0=oH=&H<&k,n. /<}08;4r4!5O5>A&8wd?";BMCIxS_mJKLMNOR.QR>/XE%YM YM+^#dKf@h^OiUnMnϞnRlr63sscz{sw rx/^N2#$C"%NMUۊaat;TyN]]O]{&JI6IGIH$IIzIFIGI]( \Z{/QI"Y"i# y#G!!""O!!WI$#$$?$}#uD$uD/}Do_,1,P,,,H?,k]‡>zAr0+NOVs.W_|>q.;ɘe˓5$=f 438.fR;fR %G>'** )(ƽ<֭UR8_(9 NqNM Q~cR3SPq'V[VfR|dT1HX   Q Kn^7r\8U-3D):$b \U l "o$G$R%CP,&~&>)2I)E+,+535&8&8&;_?"YZ?>u?%FuKNgK-M>N>;O>RyU5V|G]:]@eg^,tk-|y^LG{yw?Ji^5t/5t[F .0:4Ξ88 0`@5G%5nnnPصuǥb28+2h+GD`nJt4{y0]%ӆ!;/ xAr9\5s,OϾQ@6N%%_]:{37'C-\d!5+UüNI ^C^0ƨ2XƨIL˾A`ҝz:ل p)~iMէ?Hj؊=|؊=Z>{i}:zܓ7ǖܳh"ߺftNA롥U2`+!}~DPNu mi^!ODD_} [  ؐ$]~b ~bo<9^dMHt `/Z!?\%?7k'(jy)ўJ+u-i+3,8P>//ɒ/و1X4~96 18(<^? 2AB>N DE[FgGIGGbmHUVLAUhM~Or>PѧBQ.^RCSnT UUEUEUT9oX֠ZnlZQZZZ[[]k* ]R^n_P<_pa`u_d`d`fe;Ui$i/kQm?$oNxWy;Xi{Y{F}u,}w}w=}w^}:s hsp~Dz~D!~Y~lQyaFr+'tp~CFz~Bk~~BIvttYd$.C.=3nPiUE>hNuk51D/YR^nQtW}t+t}'-n.cl_ ,6Ja+(UsxȄF[Cʢiʢmʬ)ƴdjd\dadad0m59>xэi+5NS sIk<yoUdTeFBh/wK 25,%. {d;^Ԁ#? > w!?'+1,DV/23'4245@V56&V7D1'91:=:%T,?;CU]DE[XGl0INJ0JDK=KQ~`U|V7~W2\\D]\]/tar$e nlg*.R g|Kldn8Y,nW1p&qut=w4y'z5|(^D||p}wZ}$}$=g}$~9jr4DEϗ<щZr~AVNMD4L>{}96{Nqci\yn-nK<f+}E.ͮH?·c··eýl׳ؓ:Ni:nT~ xnr$/-fCgun-ne t4U^=U7+EUȥNUv6pUONҤu6%5T͏IB e~7i~4W\'bi9%w{b!C#F#%%%d '-. .˛5kE=e= 1=gF?R?V@TCtIEf_NP)P%QsACV%(V%)hXU  Z`awbD5bGJ^ffduflgADhIi$bknwv+x1 2z*2 |߿|QR]dJ :Uc(.Fz8c.274C5B^°Q?beR rNUXm^enF~/eb†5PiCKq~U ʴ5_lʴ5ʶaϡ$[ы#JD^ 7Ӟ9,Ԅ۔#NDI'NdA1F5LF5`Yp6w+>4NsJI9I As6K j }$] qe) ڤ{ ڥ׌ dDi EY E - Ac? Ac @} n *1 35 6] k WMN@ `B bb bbm[ b` b` d gUTL i3TG kk laxL lf ll okzv qv qvئ qz9f tN u xq |o ~ | ˳ n@| tb o Jl V| t>v t \ S . K .~  # ` )o F>2     leʶ W }r Cc 7 BN ҉* 4  x > :, U kvK  qN B Z nUE ; N w 9>A V #y u" | Y+ Y>3 0s KJ o @< 팤 l~$ %'m MN/ 2 $ a /t C = q  D! L }; 9_ o} Ą6 w s6 < $7 )ȑ */ .>U 5 74۵ 7ut ;L IV I] I Z1 ;C ) \ v ff jO K I&| ! ' K J4f $c $b %pZ ,3J , =! [ ө $ |ҿ N4* t~ nr0 o1 `2 Sd noO q p@ z B v5 ȯ'M t $ l5V p z ˔w }p PV Ph " , ~tG .p 68 >>R c v" :`t f 5 f  Y* 4= ] .5 Y & s8 s= ~p AA& 9d 1 9^ 05 r6 Ӽ m,A 5H ݡ~ !T #-t ' 0N\[ 5? 5\wH AJJ CU E9> I_ L} LW L Mc\ OX P..o R S? VD WX Z* \Ot_ ]$gz `yh c^ f)5 f)) f=΋ io>Q j l#0 lu7 m`Ou n|n w>9 xR yrj {nJ* }Q< ~LN >1   H4 HJ Z # n.! С $ .@8O u E ig <Nm 4  J P k5  a %K J8 Jx Ż   t. kh ӇJ 3 Mԣ HV N>K /1 ̺ &2j  Nڳ -D .N x~ ۷ r} k k] 1 U)0z T>*9 <M d 0 f 0+  T  $r1t D ~7 z+  $E  /2  I6 ( 9N_x %r Z* N + A> L$ s~ z xH5 VW Ie "G  !py- ${ %6b )Ε ._ 2 7F. =ю >'S >(k >*& >4k >F4 >Oh >\ >{ >b >e ?t|s A^ B~ DT0 Fn G&6 I_: J> L Mb3 P@ QT RVX RV RV Rn S.G SG$ S T~\ Y Yb [p \Fs eN hۮ j7o m(_ p`) sL u3 v  BBE 9 Tf TW TU T>  C i ~ 6| t Ç /.9 ,% ,. S, )d^ TT R^E o .g .< .X .B .B . .  D >G  .| a P yM6  pA e.) x.I Cv 'i N~  * hN ɾd" ɾd%; e ̈́^rL > ҂- ӴX ءT ߢ.L  >W %t u t c* : |  b F& XtN n%7 9w ){ t  aMI & .  :b0 Uq g 3 To ʜ^o f f f$ $r > H   $   #$Gj #=ݑ %n '. (I$> (Nj +>aZ +k~ 0E 64 ;ɾjk Cn7F Fgx K9S LcH Pta1 Pt3 R"y S,6> T>o `K c dBԭ fe~ fe g V g^ hQ$,[ iFCL i ] i jN; j jӮ˔ kGn l" m9: m9 n s'~= u, u*: uL v s v& v{ w: w< w w}z w}=( w} yn |[a L  u:  +t <1 J7 b  | ^x %   $ }M Rr %7c P  xN ".; US, ɰeR F ̙ X; bc Y & xQ D=  +  eY t5`x t5 ,  ?K > a  )1! % O($xR;w|>Y @aTY!*Q 6l<k4n gTZf [o!a{&-*WG*(+n/EX/E 4Qt"Q7SIEJI.VLI_1WK]NʋOOSS5XRuqqX ZoW[ S[ a.a.Oa%gc?i!nyGsWv6mv<lvɅCVy$y?.HZ~3k%)>1e}=Z4}NEN24^K'(4tcyny[~/SEN)o^^5~hǗ:.{Z5DlBUr5L3/Ӯ`mӮ`hӮ`]A|֒ƞ TrQݖmUm[y4^=rF7jj?d   . 7P PGlD߂nOMJ"#$UAo%4%4'u* ,-] -vn0i)'v0(:1c2wT&DPkF74OGU(H@Jd2JKCL$.oWg[{(\c5xc5rclg3iCiiT lpqii)v)yCQn{``{~a%R6$Y5/KV&&D{܍Z`nY>[Ä>8)%nͣ.W8tՐ>b{uN4 E"~gdLrXri -1b&kyq֠U "'T-44Ln>XBPdst2] WdUsi^Zamknij kart Close Tab CloseButtonFaBszywy bBd! Fake error ! FakeReplyNiepoprawny URL Invalid URL FakeReply%1 &About %1MAC_APPLICATION_MENUUkryj %1Hide %1MAC_APPLICATION_MENUUkryj pozostaBe Hide OthersMAC_APPLICATION_MENUPreferencje &Preferences...MAC_APPLICATION_MENUZakoDcz %1Quit %1MAC_APPLICATION_MENU UsBugiServicesMAC_APPLICATION_MENUPoka| wszystkoShow AllMAC_APPLICATION_MENUDostpno[ AccessibilityPhonon::Komunikacja CommunicationPhonon::GryGamesPhonon:: MuzykaMusicPhonon::Powiadomienia NotificationsPhonon:: WideoVideoPhonon::"<html>PrzeBczanie na urzdzenie dzwikowe <b>%1</b><br/>ktre ma wy|szy priorytet lub jest specjalnie skonfigurowane dla tego strumienia.</html>Switching to the audio playback device %1
which has higher preference or is specifically configured for this stream.Phonon::AudioOutput<html>PrzeBczanie na urzdzenie dzwikowe <b>%1</b><br/>ktre wBa[nie staBo si dostpne i ma wy|szy priorytet.</html>xSwitching to the audio playback device %1
which just became available and has higher preference.Phonon::AudioOutput<html>Urzdzenie dzwikowe <b>%1</b> nie dziaBa.<br/>Przywracanie do <b>%2</b>.</html>^The audio playback device %1 does not work.
Falling back to %2.Phonon::AudioOutput6Przywr do urzdzenia '%1'Revert back to device '%1'Phonon::AudioOutputOstrze|enie: Wyglda na to, |e podstawowe wtyczki GStreamer nie s zainstalowane w tym systemie. ObsBuga dzwiku i wideo zostaBa wyBczona~Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabledPhonon::Gstreamer::Backend(Ostrze|enie: Wyglda na to, |e pakiet gstreamer0.10-plugins-good nie jest zainstalowany w tym systemie. Niektre mo|liwo[ci wideo zostaBy wyBczone.Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled.Phonon::Gstreamer::BackendBrak wymaganego kodeka. Aby odtworzy zawarto[ musisz zainstalowa poni|szy kodek: %0`A required codec is missing. You need to install the following codec(s) to play this content: %0Phonon::Gstreamer::MediaObjectNie mo|na rozpocz odtwarzania. Sprawdz instalacj Gstreamer i upewnij si |e zainstalowaBe[ libgstreamer-plugins-base.wCannot start playback. Check your GStreamer installation and make sure you have libgstreamer-plugins-base installed.Phonon::Gstreamer::MediaObjectFNie mo|na zdekodowa zrdBa mediw.Could not decode media source.Phonon::Gstreamer::MediaObject@Nie mo|na znalez zrdBa mediw.Could not locate media source.Phonon::Gstreamer::MediaObjectNie mo|na otworzy urzdzenia dzwikowego. Urzdzenie jest ju| u|ywane.:Could not open audio device. The device is already in use.Phonon::Gstreamer::MediaObjectBNie mo|na otworzy zrdBa mediw.Could not open media source.Phonon::Gstreamer::MediaObject.Niepoprawny typ zrdBa.Invalid source type.Phonon::Gstreamer::MediaObject\BBd podczas instalacji wtyczki dla kodeka: %0.Plugin codec installation failed for codec: %0Phonon::Gstreamer::MediaObjectOdmowa dostpu Access denied Phonon::MMFJu| istniejeAlready exists Phonon::MMFWyj[cie dzwiku Audio Output Phonon::MMFJNie mo|na odtworzy dzwiku lub wideo-Audio or video components could not be played Phonon::MMFHBBd wyj[ciowego sygnaBu dzwikowegoAudio output error Phonon::MMF$Nie mo|na poBczyCould not connect Phonon::MMFBBd DRM DRM error Phonon::MMFBBd dekodera Decoder error Phonon::MMFRozBczono Disconnected Phonon::MMFW u|yciuIn use Phonon::MMF@Niewystarczajca szeroko[ pasmaInsufficient bandwidth Phonon::MMF.NieprawidBowy adres URL Invalid URL Phonon::MMF,NieprawidBowy protokBInvalid protocol Phonon::MMF BBd multiemisjiMulticast error Phonon::MMF4BBd komunikacji sieciowejNetwork communication error Phonon::MMF Sie niedostpnaNetwork unavailable Phonon::MMFBrak bBduNo error Phonon::MMFNie znaleziono Not found Phonon::MMFBrak gotowo[ci Not ready Phonon::MMFNieobsBugiwane Not supported Phonon::MMFBrak pamici Out of memory Phonon::MMFPrzepeBnienieOverflow Phonon::MMF,Nie znaleziono [cie|kiPath not found Phonon::MMFBrak uprawnieDPermission denied Phonon::MMF8BBd serwera po[redniczcegoProxy server error Phonon::MMFFNieobsBugiwany serwer po[redniczcyProxy server not supported Phonon::MMF&Ostrze|enie serwera Server alert Phonon::MMFTTransmisje strumieniowe nie s obsBugiwaneStreaming not supported Phonon::MMF<Wyj[ciowe urzdzenie dzwikoweThe audio output device Phonon::MMFNiedopeBnienie Underflow Phonon::MMF$Nieznany bBd (%1)Unknown error (%1) Phonon::MMF<BBd wyj[ciowego sygnaBu wideoVideo output error Phonon::MMFBBd pobieraniaDownload error Phonon::MMF::AbstractMediaPlayer4BBd otwierania adresu URLError opening URL Phonon::MMF::AbstractMediaPlayer*BBd otwierania plikuError opening file Phonon::MMF::AbstractMediaPlayer,BBd otwierania zasobuError opening resource Phonon::MMF::AbstractMediaPlayer`BBd otwierania zrdBa: zasb nie zostaB otwarty)Error opening source: resource not opened Phonon::MMF::AbstractMediaPlayerFZaBadowanie klipu zakoDczone bBdemLoading clip failed Phonon::MMF::AbstractMediaPlayer4Brak gotowo[ci odtwarzaniaNot ready to play Phonon::MMF::AbstractMediaPlayer,ZakoDczono odtwarzaniePlayback complete Phonon::MMF::AbstractMediaPlayerLUstawienie gBo[no[ci zakoDczone bBdemSetting volume failed Phonon::MMF::AbstractMediaPlayerFUstalanie pozycji zakoDczone bBdemGetting position failed Phonon::MMF::AbstractVideoPlayerDOtwieranie klipu zakoDczone bBdemOpening clip failed Phonon::MMF::AbstractVideoPlayer:Zatrzymanie zakoDczone bBdem Pause failed Phonon::MMF::AbstractVideoPlayer<Wyszukiwanie zakoDczone bBdem Seek failed Phonon::MMF::AbstractVideoPlayer %1 Hz%1 HzPhonon::MMF::AudioEqualizerFUstalanie pozycji zakoDczone bBdemGetting position failedPhonon::MMF::AudioPlayer.BBd wy[wietlacza wideoVideo display errorPhonon::MMF::DsaVideoPlayerWBczonoEnabledPhonon::MMF::EffectFactory:WspBczynnik zanikania HF (%)Decay HF ratio (%) Phonon::MMF::EnvironmentalReverb&Czas zanikania (ms)Decay time (ms) Phonon::MMF::EnvironmentalReverbGsto[ (%) Density (%) Phonon::MMF::EnvironmentalReverb Rozpraszanie (%) Diffusion (%) Phonon::MMF::EnvironmentalReverb*Opznienie odbi (ms)Reflections delay (ms) Phonon::MMF::EnvironmentalReverb"Poziom odbi (mB)Reflections level (mB) Phonon::MMF::EnvironmentalReverb.Opznienie pogBosu (ms)Reverb delay (ms) Phonon::MMF::EnvironmentalReverb&Poziom pogBosu (mB)Reverb level (mB) Phonon::MMF::EnvironmentalReverb.Poziom HF pomieszczenia Room HF level Phonon::MMF::EnvironmentalReverb2Poziom pomieszczenia (mB)Room level (mB) Phonon::MMF::EnvironmentalReverbvBBd otwierania zrdBa: nie mo|na okre[li typu multimediw8Error opening source: media type could not be determinedPhonon::MMF::MediaObject`BBd otwierania zrdBa: zasb jest skompresowany,Error opening source: resource is compressedPhonon::MMF::MediaObjectRBBd otwierania zrdBa: niepoprawny zasb(Error opening source: resource not validPhonon::MMF::MediaObjectnBBd otwierania zrdBa: typ zrdBa nie jest obsBugiwany(Error opening source: type not supportedPhonon::MMF::MediaObject<Nie mo|na ustawi |danego IAPFailed to set requested IAPPhonon::MMF::MediaObjectPoziom (%) Level (%)Phonon::MMF::StereoWidening.BBd wy[wietlacza wideoVideo display errorPhonon::MMF::SurfaceVideoPlayerWyciszonyMutedPhonon::VolumeSliderU|yj tego suwaka aby zmieni gBo[no[. Skrajnie lewa pozycja to 0%, skrajnie prawa to %1%WUse this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1%Phonon::VolumeSliderGBo[no[: %1% Volume: %1%Phonon::VolumeSlider(%1, %2 nie okre[lone%1, %2 not definedQ3AccelBNiejednoznaczne %1, nie obsBu|oneAmbiguous %1 not handledQ3Accel SkasujDelete Q3DataTable FaBszFalse Q3DataTable WstawInsert Q3DataTable PrawdaTrue Q3DataTableUaktualnijUpdate Q3DataTablel%1 Plik nie znaleziony. Sprawdz [cie|k i nazw pliku.+%1 File not found. Check path and filename. Q3FileDialog&Skasuj&Delete Q3FileDialog&Nie&No Q3FileDialog&OK&OK Q3FileDialog&Otwrz&Open Q3FileDialog&ZmieD nazw&Rename Q3FileDialog&Zachowaj&Save Q3FileDialog&Bez sortowania &Unsorted Q3FileDialog&Tak&Yes Q3FileDialogT<qt>Na pewno chcesz skasowa %1 "%2"?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialog&Wszystkie pliki (*) All Files (*) Q3FileDialog*Wszystkie pliki (*.*)All Files (*.*) Q3FileDialogAtrybuty Attributes Q3FileDialog PowrtBack Q3FileDialog AnulujCancel Q3FileDialog2Skopiuj lub przenie[ plikCopy or Move a File Q3FileDialog&Utwrz nowy katalogCreate New Folder Q3FileDialogDataDate Q3FileDialogSkasuj %1 Delete %1 Q3FileDialogSzczegBy Detail View Q3FileDialogKatalogDir Q3FileDialogKatalogi Directories Q3FileDialogKatalog: Directory: Q3FileDialogBBdError Q3FileDialogPlikFile Q3FileDialogNazwa &pliku: File &name: Q3FileDialog&Rodzaj pliku: File &type: Q3FileDialogZnajdz katalogFind Directory Q3FileDialogNiedostpny Inaccessible Q3FileDialog Lista List View Q3FileDialogSprawdz &w: Look &in: Q3FileDialog NazwaName Q3FileDialogNowy katalog New Folder Q3FileDialogNowy katalog %1 New Folder %1 Q3FileDialogNowy katalog 1 New Folder 1 Q3FileDialogKatalog wy|ejOne directory up Q3FileDialog OtwrzOpen Q3FileDialogOtwrz Open  Q3FileDialog0Podgld zawarto[ci plikuPreview File Contents Q3FileDialog4Podgld informacji o plikuPreview File Info Q3FileDialog&Od[wie|R&eload Q3FileDialog Tylko do odczytu Read-only Q3FileDialog&Do zapisu i odczytu Read-write Q3FileDialogCzytaj: %1Read: %1 Q3FileDialogZachowaj jakoSave As Q3FileDialogWybierz katalogSelect a Directory Q3FileDialog&Poka| &ukryte plikiShow &hidden files Q3FileDialogRozmiarSize Q3FileDialog SortujSort Q3FileDialog Sortuj po &dacie Sort by &Date Q3FileDialog"Sortuj &po nazwie Sort by &Name Q3FileDialog(Sortuj po &rozmiarze Sort by &Size Q3FileDialogSpecjalny Special Q3FileDialogDDowizanie symboliczne do kataloguSymlink to Directory Q3FileDialog>Dowizanie symboliczne do plikuSymlink to File Q3FileDialogVDowizanie symboliczne do pliku specjalnegoSymlink to Special Q3FileDialog RodzajType Q3FileDialogTylko do zapisu Write-only Q3FileDialogPisz: %1 Write: %1 Q3FileDialogkatalog the directory Q3FileDialogplikthe file Q3FileDialog,dowizanie symboliczne the symlink Q3FileDialog<Nie mo|na utworzy katalogu %1Could not create directory %1 Q3LocalFs*Nie mo|na otworzy %1Could not open %1 Q3LocalFs8Nie mo|na czyta katalogu %1Could not read directory %1 Q3LocalFsLNie mo|na usun pliku lub katalogu %1%Could not remove file or directory %1 Q3LocalFs@Nie mo|na zmieni nazwy %1 na %2Could not rename %1 to %2 Q3LocalFs(Nie mo|na zapisa %1Could not write %1 Q3LocalFs2Ustawienia u|ytkownika... Customize... Q3MainWindow$Wyrwnaj poBo|enieLine up Q3MainWindowJOperacja zatrzymana przez u|ytkownikaOperation stopped by the userQ3NetworkProtocol AnulujCancelQ3ProgressDialogZatwierdzApply Q3TabDialog AnulujCancel Q3TabDialogDomy[lneDefaults Q3TabDialog PomocHelp Q3TabDialogOKOK Q3TabDialogS&kopiuj&Copy Q3TextEdit &Wklej&Paste Q3TextEdit&Przywr&Redo Q3TextEdit&Cofnij&Undo Q3TextEditWyczy[Clear Q3TextEditW&ytnijCu&t Q3TextEdit Zaznacz wszystko Select All Q3TextEditZamknij oknoClose Q3TitleBarZamyka oknoCloses the window Q3TitleBarHZawiera polecenia zarzdzajce oknem*Contains commands to manipulate the window Q3TitleBartWy[wietla nazw okna i zawiera elementy do zarzdzania nimFDisplays the name of the window and contains controls to manipulate it Q3TitleBar4Powiksza maksymalnie oknoMakes the window full screen Q3TitleBarZmaksymalizujMaximize Q3TitleBarZminimalizujMinimize Q3TitleBar<Przenosi okno w inne poBo|enieMoves the window out of the way Q3TitleBarxPrzywraca normalny rozmiar uprzednio zmaksymalizowanego okna&Puts a maximized window back to normal Q3TitleBarvPrzywraca normalny rozmiar uprzednio zminimalizowanego okna&Puts a minimized window back to normal Q3TitleBar"Przywr pod spd Restore down Q3TitleBar&Przywr na wierzch Restore up Q3TitleBar SystemSystem Q3TitleBarWicej...More... Q3ToolBar(nieznany) (unknown) Q3UrlOperatorProtokB '%1' nie obsBuguje kopiowania lub przenoszenia plikw lub katalogwIThe protocol `%1' does not support copying or moving files or directories Q3UrlOperatorlProtokB '%1' nie obsBuguje tworzenia nowych katalogw;The protocol `%1' does not support creating new directories Q3UrlOperatorZProtokB '%1' nie obsBuguje pobierania plikw0The protocol `%1' does not support getting files Q3UrlOperatorbProtokB '%1' nie obsBuguje pokazywania katalogw6The protocol `%1' does not support listing directories Q3UrlOperatorXProtokB '%1' nie obsBuguje wysyBania plikw0The protocol `%1' does not support putting files Q3UrlOperatorrProtokB '%1' nie obsBuguje usuwania plikw lub katalogw@The protocol `%1' does not support removing files or directories Q3UrlOperatorzProtokB '%1' nie obsBuguje zmiany nazwy plikw lub katalogw@The protocol `%1' does not support renaming files or directories Q3UrlOperatorDProtokB '%1' nie jest obsBugiwany"The protocol `%1' is not supported Q3UrlOperator&Anuluj&CancelQ3Wizard&ZakoDcz&FinishQ3Wizard &Pomoc&HelpQ3Wizard&Dalej >&Next >Q3Wizard< &Wstecz< &BackQ3Wizard(PoBczenie odrzuconeConnection refusedQAbstractSocket8Przekroczony czas poBczeniaConnection timed outQAbstractSocket&Host nie znalezionyHost not foundQAbstractSocket Sie niedostpnaNetwork unreachableQAbstractSocketTOperacja na gniezdzie nie jest obsBugiwana$Operation on socket is not supportedQAbstractSocket6Gniazdo nie jest podBczoneSocket is not connectedQAbstractSocketDPrzekroczony czas operacji gniazdaSocket operation timed outQAbstractSocket"&Zaznacz wszystko &Select AllQAbstractSpinBoxKrok do &gry&Step upQAbstractSpinBoxKrok w &dB Step &downQAbstractSpinBoxWci[nijPressQAccessibleButtonUaktywnijActivate QApplication<Uaktywnia gBwne okno programu#Activates the program's main window QApplicationxProgram '%1' wymaga do uruchomienia Qt %2, znaleziono Qt %3.,Executable '%1' requires Qt %2, found Qt %3. QApplication>Niekompatybilno[ biblioteki QtIncompatible Qt Library Error QApplicationLTRQT_LAYOUT_DIRECTION QApplication&Anuluj&Cancel QAxSelect&Obiekt COM: COM &Object: QAxSelectOKOK QAxSelect2Wybierz kontrolk ActiveXSelect ActiveX Control QAxSelectZaznaczCheck QCheckBoxPrzeBczToggle QCheckBoxOdznaczUncheck QCheckBox4&Dodaj do wBasnych kolorw&Add to Custom Colors QColorDialog$&Kolory podstawowe &Basic colors QColorDialogWBa&sne kolory&Custom colors QColorDialog&ZieleD:&Green: QColorDialog&CzerwieD:&Red: QColorDialog&Nasycenie:&Sat: QColorDialog&Warto[:&Val: QColorDialogKanaB &alfa:A&lpha channel: QColorDialogBBki&t:Bl&ue: QColorDialog&Barwa:Hu&e: QColorDialogWybierz kolor Select Color QColorDialogZamknijClose QComboBox FaBszFalse QComboBox OtwrzOpen QComboBox PrawdaTrue QComboBox %1: ju| istnieje%1: already existsQCoreApplication %1: nie istnieje%1: does not existQCoreApplicationD%1: wystpiB bBd w funkcji ftok()%1: ftok failedQCoreApplication(%1: klucz jest pusty%1: key is emptyQCoreApplication*%1: zasoby wyczerpane%1: out of resourcesQCoreApplication$%1: brak uprawnieD%1: permission deniedQCoreApplication:%1: nie mo|na utworzy klucza%1: unable to make keyQCoreApplication(%1: nieznany bBd %2%1: unknown error %2QCoreApplication8Nie mo|na dokona transakcjiUnable to commit transaction QDB2Driver:Nie mo|na nawiza poBczeniaUnable to connect QDB2Driver8Nie mo|na wycofa transakcjiUnable to rollback transaction QDB2DriverzNie mo|na ustawi trybu automatycznego dokonywania transakcjiUnable to set autocommit QDB2Driver6Nie mo|na powiza zmiennejUnable to bind variable QDB2Result6Nie mo|na wykona poleceniaUnable to execute statement QDB2ResultTNie mo|na pobra pierwszego wiersza danychUnable to fetch first QDB2ResultRNie mo|na pobra kolejnego wiersza danychUnable to fetch next QDB2Result6Nie mo|na pobra rekordu %1Unable to fetch record %1 QDB2Result>Nie mo|na przygotowa poleceniaUnable to prepare statement QDB2ResultAMAM QDateTimeEditPMPM QDateTimeEditamam QDateTimeEditpmpm QDateTimeEditF"Animation" jest klas abstrakcyjnAnimation is an abstract classQDeclarativeAbstractAnimationdNie mo|na animowa nieistniejcej wBa[ciwo[ci "%1")Cannot animate non-existent property "%1"QDeclarativeAbstractAnimationnNie mo|na animowa wBa[ciwo[ci (tylko do odczytu): "%1"&Cannot animate read-only property "%1"QDeclarativeAbstractAnimationPNie mo|na ustawi ujemnego czasu trwaniaCannot set a duration of < 0QDeclarativeAnchorAnimationBazowa kotwica nie mo|e by u|yta w poBczeniu z grn, doln lub centraln pionow kotwic.SBaseline anchor cannot be used in conjunction with top, bottom, or vcenter anchors.QDeclarativeAnchorsbNie mo|na doczepi poziomej krawdzi do pionowej.3Cannot anchor a horizontal edge to a vertical edge.QDeclarativeAnchorsbNie mo|na doczepi pionowej krawdzi do poziomej.3Cannot anchor a vertical edge to a horizontal edge.QDeclarativeAnchorsfNie mo|na doczepi kotwicy do tego samego elementu.Cannot anchor item to self.QDeclarativeAnchors`Nie mo|na doczepi kotwicy do zerowego elementu.Cannot anchor to a null item.QDeclarativeAnchorsNie mo|na doczepi kotwicy do elementu ktry nie jest rodzicem ani rodzeDstwem.8Cannot anchor to an item that isn't a parent or sibling.QDeclarativeAnchorsNie mo|na jednocze[nie poda lewej, prawej i centralnej poziomej kotwicy.0Cannot specify left, right, and hcenter anchors.QDeclarativeAnchorsNie mo|na jednocze[nie poda grnej, dolnej i centralnej pionowej kotwicy.0Cannot specify top, bottom, and vcenter anchors.QDeclarativeAnchorsdWykryto mo|liwe zaptlenie dla kotwicy "centerIn".*Possible anchor loop detected on centerIn.QDeclarativeAnchors\Wykryto mo|liwe zaptlenie dla kotwicy "fill".&Possible anchor loop detected on fill.QDeclarativeAnchors`Wykryto mo|liwe zaptlenie dla poziomej kotwicy.3Possible anchor loop detected on horizontal anchor.QDeclarativeAnchors`Wykryto mo|liwe zaptlenie dla pionowej kotwicy.1Possible anchor loop detected on vertical anchor.QDeclarativeAnchorsNQt zostaBo zbudowane bez obsBugi QMovie'Qt was built without support for QMovieQDeclarativeAnimatedImageJ"Application" jest klas abstrakcyjn Application is an abstract classQDeclarativeApplicationnNie mo|na zmieni animacji przypisanej do "Zachowania".3Cannot change the animation assigned to a Behavior.QDeclarativeBehaviorTZaptlenie powizania dla wBa[ciwo[ci "%1"'Binding loop detected for property "%1"QDeclarativeBindingTZaptlenie powizania dla wBa[ciwo[ci "%1"'Binding loop detected for property "%1"QDeclarativeCompiledBindings<"%1" nie mo|e operowa na "%2""%1" cannot operate on "%2"QDeclarativeCompiler"%1.%2" nie jest dostpny z powodu niekompatybilno[ci wersji komponentu.5"%1.%2" is not available due to component versioning.QDeclarativeCompilerJ"%1.%2" nie jest dostpne w %3 %4.%5.%"%1.%2" is not available in %3 %4.%5.QDeclarativeCompiler\DoBczone wBa[ciwo[ci nie mog by tutaj u|yte'Attached properties cannot be used hereQDeclarativeCompilerfTylko jedno powizanie mo|e by przypisane do listy$Can only assign one binding to listsQDeclarativeCompilerNie mo|na bezpo[rednio przypisa warto[ci do zgrupowanej wBa[ciwo[ci4Cannot assign a value directly to a grouped propertyQDeclarativeCompilerNie mo|na przypisa warto[ci do sygnaBu (oczekiwano uruchomienia skryptu)@Cannot assign a value to a signal (expecting a script to be run)QDeclarativeCompilerxNie mo|na przypisa wielu warto[ci do skryptowej wBa[ciwo[ci2Cannot assign multiple values to a script propertyQDeclarativeCompilerzNie mo|na przypisa wielu warto[ci do pojedynczej wBa[ciwo[ci4Cannot assign multiple values to a singular propertyQDeclarativeCompilerHNie mo|na przypisa obiektu do listyCannot assign object to listQDeclarativeCompilerVNie mo|na przypisa obiektu dla wBa[ciwo[ci Cannot assign object to propertyQDeclarativeCompilerJNie mo|na przypisa elementu do listy!Cannot assign primitives to listsQDeclarativeCompilerNie mo|na przypisa warto[ci do nieistniejcej domy[lnej wBa[ciwo[ci.Cannot assign to non-existent default propertyQDeclarativeCompiler~Nie mo|na przypisa warto[ci do nieistniejcej wBa[ciwo[ci "%1"+Cannot assign to non-existent property "%1"QDeclarativeCompilerbNie mo|na utworzy pustej specyfikacji komponentu+Cannot create empty component specificationQDeclarativeCompilerLNie mo|na nadpisa wBa[ciwo[ci "FINAL"Cannot override FINAL propertyQDeclarativeCompilerElementy komponentu nie mog posiada wBa[ciwo[ci innych ni| "id";Component elements may not contain properties other than idQDeclarativeCompilerpInstancje komponentu nie mog deklarowa nowych funkcji./Component objects cannot declare new functions.QDeclarativeCompilerxInstancje komponentu nie mog deklarowa nowych wBa[ciwo[ci.0Component objects cannot declare new properties.QDeclarativeCompilerrInstancje komponentu nie mog deklarowa nowych sygnaBw.-Component objects cannot declare new signals.QDeclarativeCompiler:Powielona domy[lna wBa[ciwo[Duplicate default propertyQDeclarativeCompiler,Powielona nazwa metodyDuplicate method nameQDeclarativeCompiler6Powielona nazwa wBa[ciwo[ciDuplicate property nameQDeclarativeCompiler.Powielona nazwa sygnaBuDuplicate signal nameQDeclarativeCompilerhNie mo|na utworzy elementu ("creatable" wyBczone).Element is not creatable.QDeclarativeCompiler<Przypisanie pustej wBa[ciwo[ciEmpty property assignmentQDeclarativeCompiler6Przypisanie pustego sygnaBuEmpty signal assignmentQDeclarativeCompilerIdentyfikator nielegalnie maskuje globaln wBa[ciwo[ JavaScript-ID illegally masks global JavaScript propertyQDeclarativeCompilerjIdentyfikatory nie mog rozpoczyna si wielk liter)IDs cannot start with an uppercase letterQDeclarativeCompilerIdentyfikatory mog zawiera jedynie litery, cyfry i znaki podkre[lenia7IDs must contain only letters, numbers, and underscoresQDeclarativeCompilerIdentyfikatory musz rozpoczyna si liter lub znakiem podkre[lenia*IDs must start with a letter or underscoreQDeclarativeCompiler0Niepoprawna nazwa metodyIllegal method nameQDeclarativeCompiler:Niepoprawna nazwa wBa[ciwo[ciIllegal property nameQDeclarativeCompiler2Niepoprawna nazwa sygnaBuIllegal signal nameQDeclarativeCompilerDPrzypisanie sygnaBu bBdnie podane'Incorrectly specified signal assignmentQDeclarativeCompiler8Niepoprawne poBo|enie aliasuInvalid alias locationQDeclarativeCompilerNiepoprawna referencja aliasu. Referencja aliasu musi by podana jako <id>, <id>.<property> lub <id>.<value property>.<property>zInvalid alias reference. An alias reference must be specified as , . or ..QDeclarativeCompilerNiepoprawna referencja aliasu. Nie mo|na odnalez identyfikatora "%1"/Invalid alias reference. Unable to find id "%1"QDeclarativeCompilerVNiepoprawne przypisanie doBczonego obiektu"Invalid attached object assignmentQDeclarativeCompilerTNiepoprawna specyfikacja "body" komponentu$Invalid component body specificationQDeclarativeCompilerPNiepoprawna specyfikacja "id" komponentu"Invalid component id specificationQDeclarativeCompiler>Niepoprawny pusty identyfikatorInvalid empty IDQDeclarativeCompilerPBBdny dostp do zgrupowanej wBa[ciwo[ciInvalid grouped property accessQDeclarativeCompilerNiepoprawne przypisanie warto[ci: "%1" jest wBa[ciwo[ci tylko do odczytu9Invalid property assignment: "%1" is a read-only propertyQDeclarativeCompilernNiepoprawne przypisanie warto[ci: oczekiwano wektora 3D/Invalid property assignment: 3D vector expectedQDeclarativeCompilerNiepoprawne przypisanie warto[ci: oczekiwano warto[ci boolowskiej-Invalid property assignment: boolean expectedQDeclarativeCompilerfNiepoprawne przypisanie warto[ci: oczekiwano koloru+Invalid property assignment: color expectedQDeclarativeCompilerbNiepoprawne przypisanie warto[ci: oczekiwano daty*Invalid property assignment: date expectedQDeclarativeCompilerrNiepoprawne przypisanie warto[ci: oczekiwano daty i czasu.Invalid property assignment: datetime expectedQDeclarativeCompiler|Niepoprawne przypisanie warto[ci: oczekiwano liczby caBkowitej)Invalid property assignment: int expectedQDeclarativeCompilerfNiepoprawne przypisanie warto[ci: oczekiwano liczby,Invalid property assignment: number expectedQDeclarativeCompilerfNiepoprawne przypisanie warto[ci: oczekiwano punktu+Invalid property assignment: point expectedQDeclarativeCompilernNiepoprawne przypisanie warto[ci: oczekiwano prostokta*Invalid property assignment: rect expectedQDeclarativeCompilerhNiepoprawne przypisanie warto[ci: oczekiwano skryptu,Invalid property assignment: script expectedQDeclarativeCompilerjNiepoprawne przypisanie warto[ci: oczekiwano rozmiaru*Invalid property assignment: size expectedQDeclarativeCompilerdNiepoprawne przypisanie warto[ci: oczekiwano cigu,Invalid property assignment: string expectedQDeclarativeCompilerdNiepoprawne przypisanie warto[ci: oczekiwano czasu*Invalid property assignment: time expectedQDeclarativeCompiler~Niepoprawne przypisanie warto[ci: nieznana warto[ wyliczeniowa0Invalid property assignment: unknown enumerationQDeclarativeCompiler|Niepoprawne przypisanie warto[ci: oczekiwano liczby naturalnej2Invalid property assignment: unsigned int expectedQDeclarativeCompilerrNiepoprawne przypisanie warto[ci: nieobsBugiwany typ "%1"2Invalid property assignment: unsupported type "%1"QDeclarativeCompiler`Niepoprawne przypisanie warto[ci: oczekiwano url)Invalid property assignment: url expectedQDeclarativeCompilerJNiepoprawne zagnie|d|enie wBa[ciwo[ciInvalid property nestingQDeclarativeCompiler6Niepoprawny typ wBa[ciwo[ciInvalid property typeQDeclarativeCompiler<Niepoprawne u|ycie wBa[ciwo[ciInvalid property useQDeclarativeCompilerFNiepoprawne u|ycie wBa[ciwo[ci "id"Invalid use of id propertyQDeclarativeCompilerFNiepoprawne u|ycie przestrzeni nazwInvalid use of namespaceQDeclarativeCompilerdNazwy metod nie mog rozpoczyna si wielk liter3Method names cannot begin with an upper case letterQDeclarativeCompiler<Nieistniejcy doBczony obiektNon-existent attached objectQDeclarativeCompilerPNie jest to nazwa doBczonej wBa[ciwo[ciNot an attached property nameQDeclarativeCompiler>Oczekiwano przypisania warto[ciProperty assignment expectedQDeclarativeCompilerZWarto[ zostaBa ju| przypisana do wBa[ciwo[ci*Property has already been assigned a valueQDeclarativeCompilerpNazwy wBa[ciwo[ci nie mog rozpoczyna si wielk liter5Property names cannot begin with an upper case letterQDeclarativeCompilerTWarto[ wBa[ciwo[ci ustawiona wielokrotnie!Property value set multiple timesQDeclarativeCompilerjNazwy sygnaBw nie mog rozpoczyna si wielk liter3Signal names cannot begin with an upper case letterQDeclarativeCompilerVOczekiwano przypisania pojedynczej warto[ci#Single property assignment expectedQDeclarativeCompilerBNieoczekiwane przypisanie obiektuUnexpected object assignmentQDeclarativeCompiler>Warto[ "id" nie jest unikatowaid is not uniqueQDeclarativeCompiler*Niepoprawny pusty URLInvalid empty URLQDeclarativeComponentR"createObject": warto[ nie jest obiektem$createObject: value is not an objectQDeclarativeComponent~Nie mo|na przypisa warto[ci do nieistniejcej wBa[ciwo[ci "%1"+Cannot assign to non-existent property "%1"QDeclarativeConnectionsbPoBczenia: zagnie|d|one obiekty nie s dozwolone'Connections: nested objects not allowedQDeclarativeConnections<PoBczenia: oczekiwano skryptuConnections: script expectedQDeclarativeConnections0PoBczenia: bBd skBadniConnections: syntax errorQDeclarativeConnections6Transakcja tylko do odczytuRead-only TransactionQDeclarativeEngine@Transakcja SQL zakoDczona bBdemSQL transaction failedQDeclarativeEngineFSQL: niezgodno[ wersji bazy danychSQL: database version mismatchQDeclarativeEngine`Niezgodno[ wersji: oczekiwano %1, znaleziono %2'Version mismatch: expected %1, found %2QDeclarativeEngine`"executeSql" zawoBane na zewntrz "transation()"'executeSql called outside transaction()QDeclarativeEngineHtransakcja: brak wywoBania zwrotnegotransaction: missing callbackQDeclarativeEngineR"back" jest wBa[ciwo[ci tylko do odczytuback is a write-once propertyQDeclarativeFlipableT"front" jest wBa[ciwo[ci tylko do odczytufront is a write-once propertyQDeclarativeFlipable&"%1": brak katalogu"%1": no such directoryQDeclarativeImportDatabase>- %1 nie jest przestrzeni nazw- %1 is not a namespaceQDeclarativeImportDatabaseb- zagnie|d|one przestrzenie nazw nie s dozwolone- nested namespaces not allowedQDeclarativeImportDatabaseDNiezgodno[ wielko[ci liter w "%2" File name case mismatch for "%2"QDeclarativeImportDatabasenie mo|na zaBadowa moduBu "%1": Niezgodno[ wielko[ci liter w "%2"9cannot load module "%1": File name case mismatch for "%2"QDeclarativeImportDatabaseXjest niejednoznaczny. Znaleziono w %1 i w %2#is ambiguous. Found in %1 and in %2QDeclarativeImportDatabasexjest niejednoznaczny. Znaleziono w %1 w wersji %2.%3 i %4.%54is ambiguous. Found in %1 in version %2.%3 and %4.%5QDeclarativeImportDatabaseFjest zinstancjonowany rekurencyjnieis instantiated recursivelyQDeclarativeImportDatabasenie jest typem is not a typeQDeclarativeImportDatabaselokalny kataloglocal directoryQDeclarativeImportDatabasehdefinicja "%2" moduBu "%1" nie mo|e zosta odczytana(module "%1" definition "%2" not readableQDeclarativeImportDatabaseBmoduB "%1" nie jest zainstalowanymodule "%1" is not installedQDeclarativeImportDatabase`wtyczka "%2" moduBu "%1" nie zostaBa odnaleziona!module "%1" plugin "%2" not foundQDeclarativeImportDatabaseZwersja %2.%3 moduBu %1 nie jest zainstalowana*module "%1" version %2.%3 is not installedQDeclarativeImportDatabaselwtyczka nie mo|e zosta zaBadowana dla moduBu "%1": %2+plugin cannot be loaded for module "%1": %2QDeclarativeImportDatabase"KeyNavigation" jest dostpny jedynie poprzez doBczone wBa[ciwo[ci7KeyNavigation is only available via attached properties!QDeclarativeKeyNavigationAttachedt"Keys" jest dostpny jedynie poprzez doBczone wBa[ciwo[ci.Keys is only available via attached propertiesQDeclarativeKeysAttachedxDoBczona wBa[ciwo[ "LayoutDirection" dziaBa tylko z "Item"7LayoutDirection attached property only works with Items#QDeclarativeLayoutMirroringAttached"LayoutMirroring" dostpny jest tylko poprzez doBczone wBa[ciwo[ci9LayoutMirroring is only available via attached properties#QDeclarativeLayoutMirroringAttachednListElement: nie mo|e zawiera zagnie|d|onych elementw+ListElement: cannot contain nested elementsQDeclarativeListModelzListElement: nie mo|na u|ywa zarezerwowanej wBa[ciwo[ci "id".ListElement: cannot use reserved "id" propertyQDeclarativeListModel~ListElement: nie mo|na u|ywa skryptu jako warto[ci wBa[ciwo[ci1ListElement: cannot use script for property valueQDeclarativeListModelTListModel: niezdefiniowana wBa[ciwo[ "%1""ListModel: undefined property '%1'QDeclarativeListModelBappend: warto[ nie jest obiektemappend: value is not an objectQDeclarativeListModel>insert: indeks %1 poza zakreseminsert: index %1 out of rangeQDeclarativeListModelBinsert: warto[ nie jest obiekteminsert: value is not an objectQDeclarativeListModel&move: poza zakresemmove: out of rangeQDeclarativeListModel>remove: indeks %1 poza zakresemremove: index %1 out of rangeQDeclarativeListModel8set: indeks %1 poza zakresemset: index %1 out of rangeQDeclarativeListModel<set: warto[ nie jest obiektemset: value is not an objectQDeclarativeListModelnAadowanie elementw niewizualnych nie jest obsBugiwane.4Loader does not support loading non-visual elements.QDeclarativeLoaderlNie mo|na utrzyma wygldu przy zBo|onej transformacji5Unable to preserve appearance under complex transformQDeclarativeParentAnimationfNie mo|na utrzyma wygldu przy niejednolitej skali5Unable to preserve appearance under non-uniform scaleQDeclarativeParentAnimationZNie mo|na utrzyma wygldu przy zerowej skali.Unable to preserve appearance under scale of 0QDeclarativeParentAnimationlNie mo|na utrzyma wygldu przy zBo|onej transformacji5Unable to preserve appearance under complex transformQDeclarativeParentChangefNie mo|na utrzyma wygldu przy niejednolitej skali5Unable to preserve appearance under non-uniform scaleQDeclarativeParentChangeZNie mo|na utrzyma wygldu przy zerowej skali.Unable to preserve appearance under scale of 0QDeclarativeParentChange0Oczekiwany typ parametruExpected parameter typeQDeclarativeParser4Oczekiwany typ wBa[ciwo[ciExpected property typeQDeclarativeParser(Oczekiwany znak "%1"Expected token `%1'QDeclarativeParser*Oczekiwana nazwa typuExpected type nameQDeclarativeParsertIdentyfikator nie mo|e rozpoczyna si literaBem liczbowym,Identifier cannot start with numeric literalQDeclarativeParser Niepoprawny znakIllegal characterQDeclarativeParser8Niepoprawna sekwencja escapeIllegal escape sequenceQDeclarativeParserdNiepoprawna skBadnia liczby o postaci wykBadniczej%Illegal syntax for exponential numberQDeclarativeParserFNiepoprawny znak w sekwencji escapeIllegal unicode escape sequenceQDeclarativeParserFNiepoprawny kwalifikator ID importuInvalid import qualifier IDQDeclarativeParserPNiepoprawny modyfikator typu wBa[ciwo[ciInvalid property type modifierQDeclarativeParserZNiepoprawna flaga "%0" w wyra|eniu regularnym$Invalid regular expression flag '%0'QDeclarativeParserjDeklaracja "JavaScript" na zewntrz elementu "Script"-JavaScript declaration outside Script elementQDeclarativeParserNImport biblioteki wymaga podania wersji!Library import requires a versionQDeclarativeParserTWarto[ wBa[ciwo[ci ustawiona wielokrotnie!Property value set multiple timesQDeclarativeParser^"Tylko do odczytu" nie jest jeszcze obsBugiwaneReadonly not yet supportedQDeclarativeParser"Qt" jest nazw zarezerwowan i nie mo|e by u|yta jako kwalifikator1Reserved name "Qt" cannot be used as an qualifierQDeclarativeParser`Kwalifikator importu skryptu musi by unikatowy.(Script import qualifiers must be unique.QDeclarativeParserTImport skryptu wymaga u|ycia kwalifikatora"Script import requires a qualifierQDeclarativeParserBBd skBadni Syntax errorQDeclarativeParserJNiedomknity komentarz na koDcu liniiUnclosed comment at end of fileQDeclarativeParser@Niedomknity cig na koDcu liniiUnclosed string at end of lineQDeclarativeParserTNieoczekiwany modyfikator typu wBa[ciwo[ci!Unexpected property type modifierQDeclarativeParser.Nieoczekiwany znak "%1"Unexpected token `%1'QDeclarativeParsernNiedokoDczone sekwencja backslash wyra|enia regularnego2Unterminated regular expression backslash sequenceQDeclarativeParserRNiedokoDczona klasa wyra|enia regularnego%Unterminated regular expression classQDeclarativeParserBNiedokoDczone wyra|enie regularne'Unterminated regular expression literalQDeclarativeParserPNie mo|na ustawi ujemnego czasu trwaniaCannot set a duration of < 0QDeclarativePauseAnimation,Nie mo|na otworzy: %1Cannot open: %1QDeclarativePixmap0BBd dekodowania: %1: %2Error decoding: %1: %2QDeclarativePixmaphPobieranie obrazka od dostawcy zakoDczone bBdem: %1%Failed to get image from provider: %1QDeclarativePixmapPNie mo|na ustawi ujemnego czasu trwaniaCannot set a duration of < 0QDeclarativePropertyAnimation~Nie mo|na przypisa warto[ci do nieistniejcej wBa[ciwo[ci "%1"+Cannot assign to non-existent property "%1"QDeclarativePropertyChangesNie mo|na przypisa warto[ci do wBa[ciwo[ci (tylko do odczytu): "%1"(Cannot assign to read-only property "%1"QDeclarativePropertyChanges"PropertyChanges" nie obsBuguje tworzenia obiektw charakterystycznych dla stanw.APropertyChanges does not support creating state-specific objects.QDeclarativePropertyChangesTNie mo|na zinstancjonowa delegata kursora%Could not instantiate cursor delegateQDeclarativeTextInputHNie mo|na zaBadowa delegata kursoraCould not load cursor delegateQDeclarativeTextInput %1 %2%1 %2QDeclarativeTypeLoader\PrzestrzeD nazw %1 nie mo|e by u|yta jako typ%Namespace %1 cannot be used as a typeQDeclarativeTypeLoader:Skrypt "%1" nie jest dostpnyScript %1 unavailableQDeclarativeTypeLoader0Typ %1 nie jest dostpnyType %1 unavailableQDeclarativeTypeLoaderjNie mo|na przypisa obiektu do wBa[ciwo[ci sygnaBu %1-Cannot assign an object to signal property %1QDeclarativeVMEjNie mo|na przypisa obiektu do wBa[ciwo[ci interfejsu*Cannot assign object to interface propertyQDeclarativeVMEHNie mo|na przypisa obiektu do listyCannot assign object to listQDeclarativeVMENie mo|na przypisa obiektu typu %1 ktry nie posiada domy[lnej metody3Cannot assign object type %1 with no default methodQDeclarativeVMEbNie mo|na przypisa warto[ci %1 do wBa[ciwo[ci %2%Cannot assign value %1 to property %2QDeclarativeVMEvNie mo|na podBczy niezgodnych sygnaBw / slotw (%1 i %2)0Cannot connect mismatched signal/slot %1 %vs. %2QDeclarativeVMExNie mo|na ustawi wBa[ciwo[ci dla %1 poniewa| jest on zerowy)Cannot set properties on %1 as it is nullQDeclarativeVMELNie mo|na utworzy doBczonego obiektu Unable to create attached objectQDeclarativeVMEDNie mo|na utworzy obiektu typu %1"Unable to create object of type %1QDeclarativeVME:Delegat musi by typu "Item".%Delegate component must be Item type.QDeclarativeVisualDataModelXQt zostaBo zbudowane bez obsBugi xmlpatterns,Qt was built without support for xmlpatternsQDeclarativeXmlListModelbZapytanie XmlRole nie mo|e rozpoczyna si od "/"(An XmlRole query must not start with '/'QDeclarativeXmlListModelRoleZapytanie XmlListModel nie mo|e rozpoczyna si od "/" ani od "//"1An XmlListModel query must start with '/' or "//"QDeclarativeXmlRoleList QDialQDialQDialUchwyt suwaka SliderHandleQDial"Miernik prdko[ci SpeedoMeterQDialZrobioneDoneQDialogCo to jest? What's This?QDialog&Anuluj&CancelQDialogButtonBox&Zamknij&CloseQDialogButtonBox&Nie&NoQDialogButtonBox&OK&OKQDialogButtonBox&Zachowaj&SaveQDialogButtonBox&Tak&YesQDialogButtonBoxPrzerwijAbortQDialogButtonBoxZastosujApplyQDialogButtonBox AnulujCancelQDialogButtonBoxZamknijCloseQDialogButtonBox.Zamknij bez zapisywaniaClose without SavingQDialogButtonBox OdrzuDiscardQDialogButtonBoxNie zachowuj Don't SaveQDialogButtonBox PomocHelpQDialogButtonBoxZignorujIgnoreQDialogButtonBox&Ni&e dla wszystkich N&o to AllQDialogButtonBoxOKOKQDialogButtonBox OtwrzOpenQDialogButtonBoxResetujResetQDialogButtonBox&Przywr ustawieniaRestore DefaultsQDialogButtonBox PonwRetryQDialogButtonBoxZachowajSaveQDialogButtonBox"Zachowaj wszystkoSave AllQDialogButtonBox&Ta&k dla wszystkich Yes to &AllQDialogButtonBox Data modyfikacji Date Modified QDirModelTypKind QDirModel NazwaName QDirModelRozmiarSize QDirModel RodzajType QDirModelZamknijClose QDockWidgetZadokujDock QDockWidgetUwolnijFloat QDockWidget MniejLessQDoubleSpinBox WicejMoreQDoubleSpinBox&OK&OK QErrorMessage:&Poka| ten komunikat ponownie&Show this message again QErrorMessage4Komunikat dla programisty:Debug Message: QErrorMessageBBd krytyczny: Fatal Error: QErrorMessageOstrze|enie:Warning: QErrorMessageNNie mo|na utworzy pliku wyj[ciowego %1Cannot create %1 for outputQFileNNie mo|na otworzy pliku wej[ciowego %1Cannot open %1 for inputQFileHNie mo|na otworzy pliku wyj[ciowegoCannot open for outputQFileFNie mo|na usun oryginalnego plikuCannot remove source fileQFile6Plik wyj[ciowy ju| istniejeDestination file existsQFile.Nie mo|na zapisa blokuFailure to write blockQFileNie mo|na zmieni nazwy pliku sekwencyjnego u|ywajc kopiowania blokowego0Will not rename sequential file using block copyQFiler%1 Katalog nie znaleziony. Sprawdz podan nazw katalogu.K%1 Directory not found. Please verify the correct directory name was given. QFileDialog%1 Plik nie znaleziony. Prosz o sprawdzenie podanej nazwy pliku.A%1 File not found. Please verify the correct file name was given. QFileDialogJ%1 ju| istnieje. Czy chcesz zamieni?-%1 already exists. Do you want to replace it? QFileDialog&Wybierz&Choose QFileDialog&Skasuj&Delete QFileDialog&Nowy katalog &New Folder QFileDialog&Otwrz&Open QFileDialog&ZmieD nazw&Rename QFileDialog&Zachowaj&Save QFileDialog'%1' jest zabezpieczony przed zapisem. Czy na pewno chcesz go skasowa?9'%1' is write protected. Do you want to delete it anyway? QFileDialog AliasAlias QFileDialog&Wszystkie pliki (*) All Files (*) QFileDialog*Wszystkie pliki (*.*)All Files (*.*) QFileDialogDCzy na pewno chcesz skasowa '%1'?!Are sure you want to delete '%1'? QFileDialog PowrtBack QFileDialogPoka| szczegByChange to detail view mode QFileDialogPoka| listChange to list view mode QFileDialog8Nie mo|na skasowa katalogu.Could not delete directory. QFileDialog&Utwrz nowy katalogCreate New Folder QFileDialog&Utwrz nowy katalogCreate a New Folder QFileDialogSzczegBy Detail View QFileDialogKatalogi Directories QFileDialogKatalog: Directory: QFileDialogUrzdzenieDrive QFileDialogPlikFile QFileDialogNazwa &pliku: File &name: QFileDialogKatalog File Folder QFileDialogPliki rodzaju:Files of type: QFileDialogZnajdz katalogFind Directory QFileDialogKatalogFolder QFileDialogDo przoduForward QFileDialogWrGo back QFileDialogPrzejdz dalej Go forward QFileDialog2Przejdz do katalogu wy|ejGo to the parent directory QFileDialog Lista List View QFileDialogSzukaj w:Look in: QFileDialogMj komputer My Computer QFileDialogNowy katalog New Folder QFileDialog OtwrzOpen QFileDialogKatalog wy|ejParent Directory QFileDialog Ostatnie miejsca Recent Places QFileDialogUsuDRemove QFileDialogZachowaj jakoSave As QFileDialog SkrtShortcut QFileDialog Poka| Show  QFileDialog&Poka| &ukryte plikiShow &hidden files QFileDialogNieznanyUnknown QFileDialog %1 GB%1 GBQFileSystemModel %1 KB%1 KBQFileSystemModel %1 MB%1 MBQFileSystemModel %1 TB%1 TBQFileSystemModel%1 bajt(w) %1 byte(s)QFileSystemModel%1 bajtw%1 bytesQFileSystemModel<b>Nazwa "%1" nie mo|e zosta u|yta.</b><p>Sprbuj u|y nowej nazwy z mniejsz liczb znakw lub bez znakw przystankowych.oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModelKomputerComputerQFileSystemModel Data modyfikacji Date ModifiedQFileSystemModel.Niepoprawna nazwa plikuInvalid filenameQFileSystemModelTypKindQFileSystemModelMj komputer My ComputerQFileSystemModel NazwaNameQFileSystemModelRozmiarSizeQFileSystemModel RodzajTypeQFileSystemModel Ka|dyAny QFontDatabaseArabskiArabic QFontDatabaseOrmiaDskiArmenian QFontDatabaseBengalskiBengali QFontDatabaseBardzo grubyBlack QFontDatabasePogrubionyBold QFontDatabaseCyrylicaCyrillic QFontDatabaseNa wpBDemi QFontDatabase$Na wpB pogrubiony Demi Bold QFontDatabaseDevanagari Devanagari QFontDatabaseGruziDskiGeorgian QFontDatabase GreckiGreek QFontDatabaseGud|arackiGujarati QFontDatabaseGurmukhiGurmukhi QFontDatabaseHebrajskiHebrew QFontDatabaseKursywaItalic QFontDatabaseJapoDskiJapanese QFontDatabaseKannadaKannada QFontDatabaseKhmerskiKhmer QFontDatabaseKoreaDskiKorean QFontDatabaseLaotaDskiLao QFontDatabaseAaciDskiLatin QFontDatabase CienkiLight QFontDatabaseMalajalam Malayalam QFontDatabaseBirmaDskiMyanmar QFontDatabaseN'KoN'Ko QFontDatabaseNormalnyNormal QFontDatabasePochyByOblique QFontDatabaseOgamicznyOgham QFontDatabase OrijaOriya QFontDatabaseRunicznyRunic QFontDatabase&Uproszczony chiDskiSimplified Chinese QFontDatabaseSyngaleskiSinhala QFontDatabaseSymbolicznySymbol QFontDatabaseSyryjskiSyriac QFontDatabaseTamilskiTamil QFontDatabase TeluguTelugu QFontDatabase ThaanaThaana QFontDatabase TajskiThai QFontDatabaseTybetaDskiTibetan QFontDatabase$Tradycyjny chiDskiTraditional Chinese QFontDatabaseWietnamski Vietnamese QFontDatabase&Czcionka&Font QFontDialog&Rozmiar&Size QFontDialog&Podkre[lenie &Underline QFontDialog EfektyEffects QFontDialogSt&yl czcionki Font st&yle QFontDialogPrzykBadSample QFontDialog Wybierz czcionk Select Font QFontDialogPr&zekre[lenie Stri&keout QFontDialogSys&tem pisaniaWr&iting System QFontDialogJZmiana katalogu zakoDczona bBdem: %1Changing directory failed: %1QFtp&PodBczony do hostaConnected to hostQFtp,PodBczony do hosta %1Connected to host %1QFtpTPodBczanie do hosta zakoDczone bBdem: %1Connecting to host failed: %1QFtp(PoBczenie zamkniteConnection closedQFtpNPoBczenie do przesyBu danych odrzucone&Connection refused for data connectionQFtp@PoBczenie do hosta %1 odrzuconeConnection refused to host %1QFtpPPrzekroczony czas poBczenia do hosta %1Connection timed out to host %1QFtp6PoBczenie do %1 zakoDczoneConnection to %1 closedQFtpPTworzenie katalogu zakoDczone bBdem: %1Creating directory failed: %1QFtpLPobieranie pliku zakoDczone bBdem: %1Downloading file failed: %1QFtp$Host %1 znaleziony Host %1 foundQFtp,Host %1 nie znalezionyHost %1 not foundQFtpHost znaleziony Host foundQFtpRListowanie katalogu zakoDczone bBdem: %1Listing directory failed: %1QFtp>Logowanie zakoDczone bBdem: %1Login failed: %1QFtpNie podBczony Not connectedQFtpNUsuwanie katalogu zakoDczone bBdem: %1Removing directory failed: %1QFtpHUsuwanie pliku zakoDczone bBdem: %1Removing file failed: %1QFtpNieznany bBd Unknown errorQFtpJWysyBanie pliku zakoDczone bBdem: %1Uploading file failed: %1QFtp,Nie podano nazwy hostaNo host name given QHostInfoNieznany bBd Unknown error QHostInfo&Host nie znalezionyHost not foundQHostInfoAgent.Niepoprawna nazwa hostaInvalid hostnameQHostInfoAgent,Nie podano nazwy hostaNo host name givenQHostInfoAgent&Nieznany typ adresuUnknown address typeQHostInfoAgentNieznany bBd Unknown errorQHostInfoAgent(Wymagana autoryzacjaAuthentication requiredQHttp&PodBczony do hostaConnected to hostQHttp,PodBczony do hosta %1Connected to host %1QHttp*PoBczenie zakoDczoneConnection closedQHttp(PoBczenie odrzuconeConnection refusedQHttpfPoBczenie odrzucone (przekroczony czas poBczenia)!Connection refused (or timed out)QHttp4PoBczenie do %1 zamkniteConnection to %1 closedQHttpDane uszkodzoneData corruptedQHttpRBBd zapisywania odpowiedzi do urzdzenia Error writing response to deviceQHttp<Komenda HTTP zakoDczona bBdemHTTP request failedQHttpZa|dano poBczenia HTTPS lecz obsBuga SSL nie jest wkompilowana:HTTPS connection requested but SSL support not compiled inQHttp$Host %1 znaleziony Host %1 foundQHttp,Host %1 nie znalezionyHost %1 not foundQHttpHost znaleziony Host foundQHttp.Host wymaga autoryzacjiHost requires authenticationQHttp,Niepoprawne ciaBo HTTPInvalid HTTP chunked bodyQHttpHNiepoprawny nagBwek odpowiedzi HTTPInvalid HTTP response headerQHttp6Brak serwera do podBczeniaNo server set to connect toQHttp>Wymagana autoryzacja po[rednikaProxy authentication requiredQHttp8Po[rednik wymaga autoryzacjiProxy requires authenticationQHttp"Komenda przerwanaRequest abortedQHttpLNawizanie sesji SSL zakoDczone bBdemSSL handshake failedQHttpTSerwer nieoczekiwanie zakoDczyB poBczenie%Server closed connection unexpectedlyQHttp6Nieznana metoda autoryzacjiUnknown authentication methodQHttpNieznany bBd Unknown errorQHttp0Podano nieznany protokBUnknown protocol specifiedQHttp2BBdna dBugo[ zawarto[ciWrong content lengthQHttp(Wymagana autoryzacjaAuthentication requiredQHttpSocketEngineTNie odebrano odpowiedzi HTTP od po[rednika(Did not receive HTTP response from proxyQHttpSocketEngineXBBd podczas komunikacji z po[rednikiem HTTP#Error communicating with HTTP proxyQHttpSocketEnginebBBd parsowania |dania autoryzacji od po[rednika/Error parsing authentication request from proxyQHttpSocketEnginedPrzedwczesne zakoDczenie poBczenia z po[rednikiem#Proxy connection closed prematurelyQHttpSocketEngine@Odmowa poBczenia z po[rednikiemProxy connection refusedQHttpSocketEngine8Po[rednik odmwiB poBczeniaProxy denied connectionQHttpSocketEnginenPrzekroczony czas poBczenia do serwera po[redniczcego!Proxy server connection timed outQHttpSocketEngineLNie znaleziono serwera po[redniczcegoProxy server not foundQHttpSocketEngine<Nie mo|na rozpocz transakcjiCould not start transaction QIBaseDriver6BBd otwierania bazy danychError opening database QIBaseDriver8Nie mo|na dokona transakcjiUnable to commit transaction QIBaseDriver8Nie mo|na wycofa transakcjiUnable to rollback transaction QIBaseDriver>Nie mo|na zaallokowa poleceniaCould not allocate statement QIBaseResultLNie mo|na opisa polecenia wej[ciowego"Could not describe input statement QIBaseResult4Nie mo|na opisa poleceniaCould not describe statement QIBaseResultFNie mo|na pobra kolejnego elementuCould not fetch next item QIBaseResult4Nie mo|na odnalez tablicyCould not find array QIBaseResultBNie mo|na pobra danych z tablicyCould not get array data QIBaseResultNNie mo|na pobra informacji o zapytaniuCould not get query info QIBaseResultNNie mo|na pobra informacji o poleceniuCould not get statement info QIBaseResult>Nie mo|na przygotowa poleceniaCould not prepare statement QIBaseResult<Nie mo|na rozpocz transakcjiCould not start transaction QIBaseResult6Nie mo|na zamkn poleceniaUnable to close statement QIBaseResult8Nie mo|na dokona transakcjiUnable to commit transaction QIBaseResultHNie mo|na utworzy obiektu typu BLOBUnable to create BLOB QIBaseResult6Nie mo|na wykona zapytaniaUnable to execute query QIBaseResultHNie mo|na otworzy obiektu typu BLOBUnable to open BLOB QIBaseResultHNie mo|na odczyta obiektu typu BLOBUnable to read BLOB QIBaseResultFNie mo|na zapisa obiektu typu BLOBUnable to write BLOB QIBaseResultDBrak wolnego miejsca na urzdzeniuNo space left on device QIODevice.Brak pliku lub kataloguNo such file or directory QIODeviceBrak uprawnieDPermission denied QIODevice6Zbyt wiele otwartych plikwToo many open files QIODeviceNieznany bBd Unknown error QIODeviceFEPFEP QInputContext8Metoda wprowadzania Mac OS XMac OS X input method QInputContext6Metoda wprowadzania S60 FEPS60 FEP input method QInputContext6Metoda wprowadzania WindowsWindows input method QInputContextXIMXIM QInputContext.Metoda wprowadzania XIMXIM input method QInputContextPodaj warto[:Enter a value: QInputDialogJNie mo|na zaBadowa biblioteki %1: %2Cannot load library %1: %2QLibrary\Nie mo|na zidentyfikowa symbolu "%1" w %2: %3$Cannot resolve symbol "%1" in %2: %3QLibraryFNie mo|na zwolni biblioteki %1: %2Cannot unload library %1: %2QLibrarylNiezgodno[ podczas weryfikacji danych we wtyczce "%1")Plugin verification data mismatch in '%1'QLibraryNPlik "%1" nie jest poprawn wtyczk Qt.'The file '%1' is not a valid Qt plugin.QLibraryWtyczka '%1' u|ywa niepoprawnej wersji biblioteki QT. (%2.%3.%4) [%5]=The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]QLibraryWtyczka "%1" u|ywa innej wersji biblioteki Qt. (Nie mo|na Bczy bibliotek zwykBych i debugowych.)WThe plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)QLibraryWtyczka '%1' u|ywa niepoprawnej wersji biblioteki QT. Oczekiwano klucza "%2", uzyskano "%3"OThe plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"QLibraryJBiblioteka wspBdzielona niedostpna.!The shared library was not found.QLibraryNieznany bBd Unknown errorQLibraryS&kopiuj&Copy QLineEdit &Wklej&Paste QLineEdit&Przywr&Redo QLineEdit&Cofnij&Undo QLineEditW&ytnijCu&t QLineEdit SkasujDelete QLineEdit Zaznacz wszystko Select All QLineEdit%1: Adres u|yty%1: Address in use QLocalServer%1: BBd nazwy%1: Name error QLocalServer$%1: Brak uprawnieD%1: Permission denied QLocalServer(%1: Nieznany bBd %2%1: Unknown error %2 QLocalServer&%1: BBd poBczenia%1: Connection error QLocalSocket*%1: Odmowa poBczenia%1: Connection refused QLocalSocket(%1: Za du|y datagram%1: Datagram too large QLocalSocket*%1: Niepoprawna nazwa%1: Invalid name QLocalSocket4%1: Drugi koniec odBczony%1: Remote closed QLocalSocket6%1: BBd dostpu do gniazda%1: Socket access error QLocalSocketL%1: Przekroczony czas operacji gniazda%1: Socket operation timed out QLocalSocket0%1: BBd zasobw gniazda%1: Socket resource error QLocalSocket^%1: Operacja nie jest obsBugiwana przez gniazdo)%1: The socket operation is not supported QLocalSocket"%1: Nieznany bBd%1: Unknown error QLocalSocket(%1: Nieznany bBd %2%1: Unknown error %2 QLocalSocket<Nie mo|na rozpocz transakcjiUnable to begin transaction QMYSQLDriver@Nie mo|na potwierdzi transakcjiUnable to commit transaction QMYSQLDriver:Nie mo|na nawiza poBczeniaUnable to connect QMYSQLDriver@Nie mo|na otworzy bazy danych 'Unable to open database ' QMYSQLDriver8Nie mo|na wycofa transakcjiUnable to rollback transaction QMYSQLDriverPNie mo|na powiza warto[ci zewntrznychUnable to bind outvalues QMYSQLResult6Nie mo|na powiza warto[ciUnable to bind value QMYSQLResultLNie mo|na wykona nastpnego zapytaniaUnable to execute next query QMYSQLResult6Nie mo|na wykona zapytaniaUnable to execute query QMYSQLResult6Nie mo|na wykona poleceniaUnable to execute statement QMYSQLResult.Nie mo|na pobra danychUnable to fetch data QMYSQLResult>Nie mo|na przygotowa poleceniaUnable to prepare statement QMYSQLResult8Nie mo|na skasowa poleceniaUnable to reset statement QMYSQLResultHNie mo|na zachowa nastpnego wynikuUnable to store next result QMYSQLResult4Nie mo|na zachowa wynikwUnable to store result QMYSQLResultHNie mo|na zachowa wynikw polecenia!Unable to store statement results QMYSQLResult(Nienazwany) (Untitled)QMdiArea%1 - [%2] %1 - [%2] QMdiSubWindow&Zamknij&Close QMdiSubWindowPrze&nie[&Move QMdiSubWindow&Przywr&Restore QMdiSubWindow&Rozmiar&Size QMdiSubWindow - [%1]- [%1] QMdiSubWindowZamknijClose QMdiSubWindow PomocHelp QMdiSubWindowZma&ksymalizuj Ma&ximize QMdiSubWindowZmaksymalizujMaximize QMdiSubWindowMenuMenu QMdiSubWindowZmi&nimalizuj Mi&nimize QMdiSubWindowZminimalizujMinimize QMdiSubWindowPrzywrRestore QMdiSubWindow"Przywr pod spd Restore Down QMdiSubWindowZwiDShade QMdiSubWindow*Pozostaw na &wierzchu Stay on &Top QMdiSubWindow RozwiDUnshade QMdiSubWindowZamknijCloseQMenuWykonajExecuteQMenu OtwrzOpenQMenu AkcjeActionsQMenuBar<h3>Informacje o Qt</h3><p> Ten program u|ywa Qt w wersji %1.</p>8

About Qt

This program uses Qt version %1.

 QMessageBox <p>Qt jest zestawem narzdzi programistycznych dedykowanym dla jzyka C++. SBu|y on do opracowywania aplikacji midzyplatformowych.</p><p>Qt umo|liwia jednozrdBowe przenoszenie midzy systemami MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux i wszystkimi gBwnymi wersjami komercyjnymi systemu Unix. Zrodowisko Qt jest dostpne dla urzdzeD wbudowanych opartych na systemie Linux ( Qt dla wbudowanego systemu Linux) oraz Windows CE.</p><p>Zestaw Qt jest dostpny w trzech r|nych opcjach licencjonowania stworzonych w celu zadowolenia naszych r|nych u|ytkownikw.</p><p>Qt podlegajcy licencji zgodnie z nasz komercyjn umow licencyjn jest odpowiedni do opracowywania oprogramowaD wBasno[ciowych/komercyjnych, dziki czemu kod zrdBowy nie jest udostpniany osobom trzecim. W przeciwnym razie zestaw Qt jest niezgodny z warunkami licencji GNU LGPL w wersji 2.1 lub GNU GPL w wersji 3.0.</p><p>Zrodowisko Qt objte licencj GNU LGPL w wersji 2.1 nadaje si do tworzenia aplikacji Qt (wBasno[ciowych lub oprogramowaD otwartych) tylko wtedy, gdy przestrzegane s warunki licencji GNU LGPL w wersji 2.1.</p><p>Qt objty Powszechn Licencj Publiczn GNU w wersji 3.0 jest odpowiedni do opracowywania aplikacji QT, aby mc korzysta z aplikacji w poBczeniu z oprogramowaniem podlegajcym warunkom licencji GNU GPL w wersji 3.0 lub aby przestrzega warunkw licencji GNU GPL w wersji 3.0.</p><p>Wicej informacji na temat licencji Qt mo|na znalez na stronie <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a>.</p><p>Copyright (C) 2011 Nokia Corporation i/lub oddziaBy firmy.</p><p>Qt jest produktem firmy Nokia. Dodatkowe informacje znajduj si na stronie <a href="http://qt.nokia.com/">qt.nokia.com</a> </p>

Qt is a C++ toolkit for cross-platform application development.

Qt provides single-source portability across MS Windows, Mac OS X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.

Qt is available under three different licensing options designed to accommodate the needs of our various users.

Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.

Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.

Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.

Please see qt.nokia.com/products/licensing for an overview of Qt licensing.

Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).

Qt is a Nokia product. See qt.nokia.com for more information.

 QMessageBoxInformacje o QtAbout Qt QMessageBox PomocHelp QMessageBox$Ukryj szczegBy...Hide Details... QMessageBoxOKOK QMessageBox$Poka| szczegBy...Show Details... QMessageBox6Wybierz metod wprowadzania Select IMQMultiInputContext>PrzeBcznik metody wprowadzaniaMultiple input method switcherQMultiInputContextPluginPrzeBcznik metody wprowadzania, ktry w wid|etach tekstowych u|ywa podrcznego menuMMultiple input method switcher that uses the context menu of the text widgetsQMultiInputContextPluginRInne gniazdo nasBuchuje ju| na tym porcie4Another socket is already listening on the same portQNativeSocketEngine`Prba u|ycia IPv6 na platformie bez obsBugi IPv6=Attempt to use IPv6 socket on a platform with no IPv6 supportQNativeSocketEngine(PoBczenie odrzuconeConnection refusedQNativeSocketEngine8Przekroczony czas poBczeniaConnection timed outQNativeSocketEngine:Datagram za dBugi do wysBaniaDatagram was too large to sendQNativeSocketEngine(Komputer niedostpnyHost unreachableQNativeSocketEngine0Niepoprawny opis gniazdaInvalid socket descriptorQNativeSocketEngineBBd sieci Network errorQNativeSocketEngineHPrzekroczony czas operacji sieciowejNetwork operation timed outQNativeSocketEngine Sie niedostpnaNetwork unreachableQNativeSocketEngineFNieprawidBowa operacja na gniezdzieOperation on non-socketQNativeSocketEngine"Zasoby wyczerpaneOut of resourcesQNativeSocketEngineBrak uprawnieDPermission deniedQNativeSocketEngine8NieobsBugiwany typ protokoBuProtocol type not supportedQNativeSocketEngine.Adres nie jest dostpnyThe address is not availableQNativeSocketEngine0Adres jest zabezpieczonyThe address is protectedQNativeSocketEngine:Adres jest aktualnie w u|yciu#The bound address is already in useQNativeSocketEnginebTyp po[rednika nie jest poprawny dla tej operacji,The proxy type is invalid for this operationQNativeSocketEngine@Zdalny host zakoDczyB poBczenie%The remote host closed the connectionQNativeSocketEngineRNie mo|na uruchomi gniazda rozsyBajcego%Unable to initialize broadcast socketQNativeSocketEnginedNie mo|na uruchomi gniazda w nieblokujcym trybie(Unable to initialize non-blocking socketQNativeSocketEngine8Nie mo|na odebra wiadomo[ciUnable to receive a messageQNativeSocketEngine6Nie mo|na wysBa wiadomo[ciUnable to send a messageQNativeSocketEngine"Nie mo|na zapisaUnable to writeQNativeSocketEngineNieznany bBd Unknown errorQNativeSocketEngine>NieobsBugiwana operacja gniazdaUnsupported socket operationQNativeSocketEngine$BBd otwierania %1Error opening %1QNetworkAccessCacheBackend&Niepoprawny URI: %1Invalid URI: %1QNetworkAccessDataBackend:Operacja nieobsBugiwana na %1Operation not supported on %1QNetworkAccessDataBackendhZdalny host przedwcze[nie zakoDczyB poBczenie na %13Remote host closed the connection prematurely on %1QNetworkAccessDebugPipeBackend,BBd gniazda na %1: %2Socket error on %1: %2QNetworkAccessDebugPipeBackendHBBd w trakcie zapisywania do %1: %2Write error writing to %1: %2QNetworkAccessDebugPipeBackend\Nie mo|na otworzy %1: Zcie|ka jest katalogiem#Cannot open %1: Path is a directoryQNetworkAccessFileBackend,BBd otwierania %1: %2Error opening %1: %2QNetworkAccessFileBackend@BBd w trakcie czytania z %1: %2Read error reading from %1: %2QNetworkAccessFileBackendD{danie otwarcia zdalnego pliku %1%Request for opening non-local file %1QNetworkAccessFileBackendHBBd w trakcie zapisywania do %1: %2Write error writing to %1: %2QNetworkAccessFileBackendLNie mo|na otworzy %1: jest to katalogCannot open %1: is a directoryQNetworkAccessFtpBackend<BBd podczas pobierania %1: %2Error while downloading %1: %2QNetworkAccessFtpBackend:BBd podczas wysyBania %1: %2Error while uploading %1: %2QNetworkAccessFtpBackenddBBd podczas logowania do %1: wymagana autoryzacja0Logging in to %1 failed: authentication requiredQNetworkAccessFtpBackendPNie odnaleziono odpowiedniego po[rednikaNo suitable proxy foundQNetworkAccessFtpBackendPNie odnaleziono odpowiedniego po[rednikaNo suitable proxy foundQNetworkAccessHttpBackend4Dostp do sieci wyBczony.Network access is disabled.QNetworkAccessManagerdBBd podczas pobierania %1 - odpowiedz serwera: %2)Error downloading %1 - server replied: %2 QNetworkReply*BBd sesji sieciowej.Network session error. QNetworkReply8ProtokB "%1" nie jest znanyProtocol "%1" is unknown QNetworkReply,Chwilowy bBd w sieci.Temporary network failure. QNetworkReply$Operacja anulowanaOperation canceledQNetworkReplyImpl2Niepoprawna konfiguracja.Invalid configuration.QNetworkSessionBBd roamingu Roaming errorQNetworkSessionPrivateImplDRoaming przerwany albo niemo|liwy.'Roaming was aborted or is not possible.QNetworkSessionPrivateImplXSesja przerwana przez u|ytkownika lub system!Session aborted by user or systemQNetworkSessionPrivateImplhZa|dana operacja nie jest obsBugiwana przez system.7The requested operation is not supported by the system.QNetworkSessionPrivateImpljSesja zostaBa przerwana przez u|ytkownika lub system..The session was aborted by the user or system.QNetworkSessionPrivateImplNPodana konfiguracja nie mo|e by u|yta.+The specified configuration cannot be used.QNetworkSessionPrivateImpl.Niezidentyfikowany bBdUnidentified ErrorQNetworkSessionPrivateImpl(Nieznany bBd sesji.Unknown session error.QNetworkSessionPrivateImpl<Nie mo|na rozpocz transakcjiUnable to begin transaction QOCIDriver8Nie mo|na dokona transakcjiUnable to commit transaction QOCIDriver>Nie mo|na dokona inicjalizacjiUnable to initialize QOCIDriver.Nie mo|na si zalogowaUnable to logon QOCIDriver8Nie mo|na wycofa transakcjiUnable to rollback transaction QOCIDriverTNie mo|na przydzieli miejsca na polecenieUnable to alloc statement QOCIResultpNie mo|na powiza kolumny dla wykonania zestawu poleceD'Unable to bind column for batch execute QOCIResult6Nie mo|na powiza warto[ciUnable to bind value QOCIResultJNie mo|na wykona polecenia wsadowego!Unable to execute batch statement QOCIResult6Nie mo|na wykona poleceniaUnable to execute statement QOCIResult>Nie mo|na pobra typu poleceniaUnable to get statement type QOCIResultZNie mo|na przej[ do kolejnego wiersza danychUnable to goto next QOCIResult>Nie mo|na przygotowa poleceniaUnable to prepare statement QOCIResult@Nie mo|na potwierdzi transakcjiUnable to commit transaction QODBCDriver:Nie mo|na nawiza poBczeniaUnable to connect QODBCDriverNie mo|na nawiza poBczenia - sterownik nie obsBuguje caBej potrzebnej funkcjonalno[ciEUnable to connect - Driver doesn't support all functionality required QODBCDriver|Nie mo|na wyBczy trybu automatycznego dokonywania transakcjiUnable to disable autocommit QODBCDriverzNie mo|na wBczy trybu automatycznego dokonywania transakcjiUnable to enable autocommit QODBCDriver8Nie mo|na wycofa transakcjiUnable to rollback transaction QODBCDriverQODBCResult::reset: Nie mo|na ustawi 'SQL_CURSOR_STATIC' jako atrybutu polecenia. Prosz sprawdzi konfiguracje sterownika ODBCyQODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResult6Nie mo|na powiza zmiennejUnable to bind variable QODBCResult6Nie mo|na wykona poleceniaUnable to execute statement QODBCResult Nie mo|na pobraUnable to fetch QODBCResultDNie mo|na pobra pierwszych danychUnable to fetch first QODBCResultBNie mo|na pobra ostatnich danychUnable to fetch last QODBCResultBNie mo|na pobra kolejnych danychUnable to fetch next QODBCResultFNie mo|na pobra poprzednich danychUnable to fetch previous QODBCResult>Nie mo|na przygotowa poleceniaUnable to prepare statement QODBCResultp"%1" powiela poprzedni nazw roli i zostanie wyBczone.:"%1" duplicates a previous role name and will be disabled.QObject2Serwer dzwiku PulseAudioPulseAudio Sound ServerQObject6Niepoprawne zapytanie: "%1"invalid query: "%1"QObject NazwaNameQPPDOptionsModelWarto[ValueQPPDOptionsModel<Nie mo|na rozpocz transakcjiCould not begin transaction QPSQLDriver@Nie mo|na potwierdzi transakcjiCould not commit transaction QPSQLDriver8Nie mo|na wycofa transakcjiCould not rollback transaction QPSQLDriver:Nie mo|na nawiza poBczeniaUnable to connect QPSQLDriver:Nie mo|na wykona subskrypcjiUnable to subscribe QPSQLDriverFNie mo|na zrezygnowa z subskrypcjiUnable to unsubscribe QPSQLDriver8Nie mo|na utworzy zapytaniaUnable to create query QPSQLResult>Nie mo|na przygotowa poleceniaUnable to prepare statement QPSQLResultCentymetry (cm)Centimeters (cm)QPageSetupWidgetFormularzFormQPageSetupWidgetWysoko[:Height:QPageSetupWidgetCale (in) Inches (in)QPageSetupWidget Pejza| LandscapeQPageSetupWidgetMarginesyMarginsQPageSetupWidgetMilimetry (mm)Millimeters (mm)QPageSetupWidgetPoBo|enie OrientationQPageSetupWidgetRozmiar strony: Page size:QPageSetupWidget PapierPaperQPageSetupWidgetyrdBo papieru: Paper source:QPageSetupWidgetPunkty (pt) Points (pt)QPageSetupWidgetPortretPortraitQPageSetupWidget Odwrcony pejza|Reverse landscapeQPageSetupWidget"Odwrcony portretReverse portraitQPageSetupWidgetSzeroko[:Width:QPageSetupWidgetDolny margines bottom marginQPageSetupWidgetLewy margines left marginQPageSetupWidgetPrawy margines right marginQPageSetupWidgetGrny margines top marginQPageSetupWidget>Wtyczka nie zostaBa zaBadowana.The plugin was not loaded. QPluginLoaderNieznany bBd Unknown error QPluginLoaderJ%1 ju| istnieje. Czy chcesz nadpisa?/%1 already exists. Do you want to overwrite it? QPrintDialogf%1 jest katalogiem. Prosz wybra inn nazw pliku.7%1 is a directory. Please choose a different file name. QPrintDialog&Opcje << &Options << QPrintDialog&Opcje >> &Options >> QPrintDialogWy&drukuj&Print QPrintDialog:<qt>Czy chcesz nadpisa?</qt>%Do you want to overwrite it? QPrintDialogA0A0 QPrintDialog$A0 (841 x 1189 mm)A0 (841 x 1189 mm) QPrintDialogA1A1 QPrintDialog"A1 (594 x 841 mm)A1 (594 x 841 mm) QPrintDialogA2A2 QPrintDialog"A2 (420 x 594 mm)A2 (420 x 594 mm) QPrintDialogA3A3 QPrintDialog"A3 (297 x 420 mm)A3 (297 x 420 mm) QPrintDialogA4A4 QPrintDialogFA4 (210 x 297 mm, 8.26 x 11.7 cali)%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialogA5A5 QPrintDialog"A5 (148 x 210 mm)A5 (148 x 210 mm) QPrintDialogA6A6 QPrintDialog"A6 (105 x 148 mm)A6 (105 x 148 mm) QPrintDialogA7A7 QPrintDialog A7 (74 x 105 mm)A7 (74 x 105 mm) QPrintDialogA8A8 QPrintDialogA8 (52 x 74 mm)A8 (52 x 74 mm) QPrintDialogA9A9 QPrintDialogA9 (37 x 52 mm)A9 (37 x 52 mm) QPrintDialogAliasy: %1 Aliases: %1 QPrintDialogB0B0 QPrintDialog&B0 (1000 x 1414 mm)B0 (1000 x 1414 mm) QPrintDialogB1B1 QPrintDialog$B1 (707 x 1000 mm)B1 (707 x 1000 mm) QPrintDialogB10B10 QPrintDialog B10 (31 x 44 mm)B10 (31 x 44 mm) QPrintDialogB2B2 QPrintDialog"B2 (500 x 707 mm)B2 (500 x 707 mm) QPrintDialogB3B3 QPrintDialog"B3 (353 x 500 mm)B3 (353 x 500 mm) QPrintDialogB4B4 QPrintDialog"B4 (250 x 353 mm)B4 (250 x 353 mm) QPrintDialogB5B5 QPrintDialogFB5 (176 x 250 mm, 6.93 x 9.84 cali)%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialogB6B6 QPrintDialog"B6 (125 x 176 mm)B6 (125 x 176 mm) QPrintDialogB7B7 QPrintDialog B7 (88 x 125 mm)B7 (88 x 125 mm) QPrintDialogB8B8 QPrintDialogB8 (62 x 88 mm)B8 (62 x 88 mm) QPrintDialogB9B9 QPrintDialogB9 (44 x 62 mm)B9 (44 x 62 mm) QPrintDialogC5EC5E QPrintDialog$C5E (163 x 229 mm)C5E (163 x 229 mm) QPrintDialogNiestandardowyCustom QPrintDialogDLEDLE QPrintDialog$DLE (110 x 220 mm)DLE (110 x 220 mm) QPrintDialogExecutive Executive QPrintDialogNExecutive (7.5 x 10 cali, 191 x 254 mm))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialogPlik %1 jest plikiem tylko do odczytu. Prosz wybra inn nazw pliku.=File %1 is not writable. Please choose a different file name. QPrintDialogPlik istnieje File exists QPrintDialog FolioFolio QPrintDialog(Folio (210 x 330 mm)Folio (210 x 330 mm) QPrintDialog LedgerLedger QPrintDialog*Ledger (432 x 279 mm)Ledger (432 x 279 mm) QPrintDialog LegalLegal QPrintDialogFLegal (8.5 x 14 cali, 216 x 356 mm)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialog LetterLetter QPrintDialogHLetter (8.5 x 11 cali, 216 x 279 mm)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialogPlik lokalny Local file QPrintDialogOKOK QPrintDialogDrukowaniePrint QPrintDialog&Drukuj do pliku ...Print To File ... QPrintDialogDrukuj wszystko Print all QPrintDialog.Wydrukuj bie|c stronPrint current page QPrintDialogDrukuj zakres Print range QPrintDialog"Drukuj zaznaczonePrint selection QPrintDialog*Drukuj do pliku (PDF)Print to File (PDF) QPrintDialog8Drukuj do pliku (Postscript)Print to File (Postscript) QPrintDialogTabloidTabloid QPrintDialog,Tabloid (279 x 432 mm)Tabloid (279 x 432 mm) QPrintDialogfWarto[ "od" nie mo|e by wiksza od warto[ci "do".7The 'From' value cannot be greater than the 'To' value. QPrintDialog,US Common #10 EnvelopeUS Common #10 Envelope QPrintDialogJUS Common #10 Envelope (105 x 241 mm)%US Common #10 Envelope (105 x 241 mm) QPrintDialogZapisz %1 plik Write %1 file QPrintDialog&podBczony lokalnielocally connected QPrintDialognieznanyunknown QPrintDialog%1%%1%QPrintPreviewDialogZamknijCloseQPrintPreviewDialog$Wyeksportuj do PDF Export to PDFQPrintPreviewDialog2Wyeksportuj do PostScriptExport to PostScriptQPrintPreviewDialogPierwsza strona First pageQPrintPreviewDialogDopasuj stronFit pageQPrintPreviewDialog"Dopasuj szeroko[ Fit widthQPrintPreviewDialog Pejza| LandscapeQPrintPreviewDialogOstatnia strona Last pageQPrintPreviewDialogNastpna strona Next pageQPrintPreviewDialog"Ustawienia strony Page SetupQPrintPreviewDialog"Ustawienia strony Page setupQPrintPreviewDialogPortretPortraitQPrintPreviewDialog"Poprzednia strona Previous pageQPrintPreviewDialogWydrukujPrintQPrintPreviewDialogPodgld wydruku Print PreviewQPrintPreviewDialog,Poka| ssiednie stronyShow facing pagesQPrintPreviewDialog,Poka| wszystkie stronyShow overview of all pagesQPrintPreviewDialog.Poka| pojedyncz stronShow single pageQPrintPreviewDialogPowikszZoom inQPrintPreviewDialogPomniejszZoom outQPrintPreviewDialogZaawansowaneAdvancedQPrintPropertiesWidget FormaFormQPrintPropertiesWidget StronaPageQPrintPropertiesWidget ParamiCollateQPrintSettingsOutput KolorColorQPrintSettingsOutputTryb koloru Color ModeQPrintSettingsOutputLiczba kopiiCopiesQPrintSettingsOutput Kopie:Copies:QPrintSettingsOutputBie|ca strona Current PageQPrintSettingsOutput*Drukowanie dupleksoweDuplex PrintingQPrintSettingsOutput FormaFormQPrintSettingsOutputSkala szaro[ci GrayscaleQPrintSettingsOutputDBuga strona Long sideQPrintSettingsOutputBrakNoneQPrintSettingsOutput OpcjeOptionsQPrintSettingsOutput(Ustawienia wyj[cioweOutput SettingsQPrintSettingsOutputStrony od Pages fromQPrintSettingsOutputDrukuj wszystko Print allQPrintSettingsOutputZakres wydruku Print rangeQPrintSettingsOutput OdwrReverseQPrintSettingsOutputWybrane strony SelectionQPrintSettingsOutputKrtka strona Short sideQPrintSettingsOutputdotoQPrintSettingsOutput&Nazwa:&Name: QPrintWidget...... QPrintWidget FormaForm QPrintWidgetPoBo|enie: Location: QPrintWidget &Plik wyj[ciowy: Output &file: QPrintWidget&WBa[ciwo[ci P&roperties QPrintWidgetPodgldPreview QPrintWidgetDrukarkaPrinter QPrintWidgetTyp:Type: QPrintWidgetpNie mo|na otworzy wej[ciowego przekierowania do odczytu,Could not open input redirection for readingQProcessnNie mo|na otworzy wyj[ciowego przekierowania do zapisu-Could not open output redirection for writingQProcess6BBd odczytywania z procesuError reading from processQProcess6BBd zapisywania do procesuError writing to processQProcess2Nie zdefiniowano programuNo program definedQProcessXWystpiB bBd w procesie - proces zakoDczonyProcess crashedQProcess>Nie mo|na rozpocz procesu: %1Process failed to start: %1QProcessDPrzekroczony czas operacji procesuProcess operation timed outQProcessDBBd zasobw (bBd forkowania): %1!Resource error (fork failure): %1QProcess AnulujCancelQProgressDialog OtwrzOpen QPushButtonZaznaczCheck QRadioButtonFniepoprawna skBadnia klasy znakowejbad char class syntaxQRegExp@niepoprawna skBadnia "lookahead"bad lookahead syntaxQRegExp@niepoprawna skBadnia powtrzeniabad repetition syntaxQRegExp>u|yta funkcja zostaBa wyBczonadisabled feature usedQRegExp*Niepoprawna kategoriainvalid categoryQRegExp(Niepoprawny interwaBinvalid intervalQRegExp8niepoprawna warto[ semkowainvalid octal valueQRegExpBnapotkano wewntrzne ograniczeniemet internal limitQRegExp0brakujcy lewy separatormissing left delimQRegExp4nie pojawiB si |aden bBdno error occurredQRegExp(nieoczekiwany koniecunexpected endQRegExp6BBd otwierania bazy danychError opening databaseQSQLite2Driver<Nie mo|na rozpocz transakcjiUnable to begin transactionQSQLite2Driver8Nie mo|na dokona transakcjiUnable to commit transactionQSQLite2Driver8Nie mo|na wycofa transakcjiUnable to rollback transactionQSQLite2Driver6Nie mo|na wykona poleceniaUnable to execute statementQSQLite2Result0Nie mo|na pobra wynikwUnable to fetch resultsQSQLite2Result4BBd zamykania bazy danychError closing database QSQLiteDriver6BBd otwierania bazy danychError opening database QSQLiteDriver<Nie mo|na rozpocz transakcjiUnable to begin transaction QSQLiteDriver8Nie mo|na dokona transakcjiUnable to commit transaction QSQLiteDriver8Nie mo|na wycofa transakcjiUnable to rollback transaction QSQLiteDriverBrak zapytaniaNo query QSQLiteResult6Niezgodna liczba parametrwParameter count mismatch QSQLiteResult:Nie mo|na powiza parametrwUnable to bind parameters QSQLiteResult6Nie mo|na wykona poleceniaUnable to execute statement QSQLiteResult>Nie mo|na pobra wiersza danychUnable to fetch row QSQLiteResult8Nie mo|na skasowa poleceniaUnable to reset statement QSQLiteResultWarunek ConditionQScriptBreakpointsModelLicznik trafieD Hit-countQScriptBreakpointsModelIdentyfikatorIDQScriptBreakpointsModel Licznik pomini Ignore-countQScriptBreakpointsModelPoBo|enieLocationQScriptBreakpointsModel(Pojedyncze trafienie Single-shotQScriptBreakpointsModel SkasujDeleteQScriptBreakpointsWidgetNowyNewQScriptBreakpointsWidget*&Znajdz w skrypcie...&Find in Script...QScriptDebuggerWyczy[ konsol Clear ConsoleQScriptDebugger2Wyczy[ wyj[cie debuggeraClear Debug OutputQScriptDebugger*Wyczy[ log z bBdamiClear Error LogQScriptDebuggerKontynuujContinueQScriptDebugger Ctrl+FCtrl+FQScriptDebuggerCtrl+F10Ctrl+F10QScriptDebugger Ctrl+GCtrl+GQScriptDebuggerDebugujDebugQScriptDebuggerF10F10QScriptDebuggerF11F11QScriptDebuggerF3F3QScriptDebuggerF5F5QScriptDebuggerF9F9QScriptDebugger Znajdz &nastpne Find &NextQScriptDebugger$Znajdz &poprzednieFind &PreviousQScriptDebugger Przejdz do linii Go to LineQScriptDebuggerPrzerwij InterruptQScriptDebugger Linia:Line:QScriptDebugger$Uruchom do kursora Run to CursorQScriptDebugger2Uruchom do nowego skryptuRun to New ScriptQScriptDebuggerShift+F11 Shift+F11QScriptDebuggerShift+F3Shift+F3QScriptDebuggerShift+F5Shift+F5QScriptDebugger"Wskocz do wntrza Step IntoQScriptDebugger&Wyskocz na zewntrzStep OutQScriptDebuggerPrzeskocz Step OverQScriptDebugger6PrzeBcz ustawienie puBapkiToggle BreakpointQScriptDebugger<img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;Przeszukano od pocztkuJ Search wrappedQScriptDebuggerCodeFinderWidget4Uwzgldniaj wielko[ literCase SensitiveQScriptDebuggerCodeFinderWidgetZamknijCloseQScriptDebuggerCodeFinderWidgetNastpneNextQScriptDebuggerCodeFinderWidgetPoprzedniePreviousQScriptDebuggerCodeFinderWidgetCaBe sBowa Whole wordsQScriptDebuggerCodeFinderWidget NazwaNameQScriptDebuggerLocalsModelWarto[ValueQScriptDebuggerLocalsModel PoziomLevelQScriptDebuggerStackModelPoBo|enieLocationQScriptDebuggerStackModel NazwaNameQScriptDebuggerStackModel(Warunek dla puBapki:Breakpoint Condition: QScriptEditWyBcz puBapkDisable Breakpoint QScriptEditWBcz puBapkEnable Breakpoint QScriptEdit6PrzeBcz ustawienie puBapkiToggle Breakpoint QScriptEditPuBapki BreakpointsQScriptEngineDebuggerKonsolaConsoleQScriptEngineDebugger"Wyj[cie debuggera Debug OutputQScriptEngineDebuggerLog z bBdami Error LogQScriptEngineDebugger$ZaBadowane skryptyLoaded ScriptsQScriptEngineDebuggerZmienne lokalneLocalsQScriptEngineDebugger$Debugger Qt ScriptQt Script DebuggerQScriptEngineDebugger SzukajSearchQScriptEngineDebuggerStosStackQScriptEngineDebugger WidokViewQScriptEngineDebuggerZamknijCloseQScriptNewBreakpointWidget W dBBottom QScrollBarLewa krawdz Left edge QScrollBarLinia w dB Line down QScrollBarLinia w grLine up QScrollBarStrona w dB Page down QScrollBarStrona w lewo Page left QScrollBarStrona w prawo Page right QScrollBarStrona do gryPage up QScrollBarPozycjaPosition QScrollBarPrawa krawdz Right edge QScrollBarPrzewiD w dB Scroll down QScrollBarPrzewiD tutaj Scroll here QScrollBarPrzewiD w lewo Scroll left QScrollBarPrzewiD w prawo Scroll right QScrollBarPrzewiD do gry Scroll up QScrollBarDo gryTop QScrollBarN%1: unixowy plik z kluczem nie istnieje%1: UNIX key file doesn't exist QSharedMemory %1: ju| istnieje%1: already exists QSharedMemoryP%1: rozmiar przy tworzeniu mniejszy od 0%1: create size is less then 0 QSharedMemory %1: nie istnieje%1: doesn't exist QSharedMemory %1: nie istnieje%1: doesn't exists QSharedMemoryD%1: wystpiB bBd w funkcji ftok()%1: ftok failed QSharedMemory.%1: niepoprawny rozmiar%1: invalid size QSharedMemory%1: bBd klucza %1: key error QSharedMemory(%1: klucz jest pusty%1: key is empty QSharedMemory %1: niedoBczony%1: not attached QSharedMemory*%1: zasoby wyczerpane%1: out of resources QSharedMemory$%1: brak uprawnieD%1: permission denied QSharedMemoryR%1: zapytanie o rozmiar zakoDczone bBdem%1: size query failed QSharedMemoryb%1: ograniczenia rozmiarw narzucone przez system$%1: system-imposed size restrictions QSharedMemory0%1: nie mo|na zablokowa%1: unable to lock QSharedMemory:%1: nie mo|na utworzy klucza%1: unable to make key QSharedMemory%1: nie mo|na ustawi klucza na zablokowanym segmencie pamici wspBdzielonej%1: unable to set key on lock QSharedMemory0%1: nie mo|na odblokowa%1: unable to unlock QSharedMemory(%1: nieznany bBd %2%1: unknown error %2 QSharedMemory++ QShortcut&Dodaj do ulubionych Add Favorite QShortcutUstaw jasno[Adjust Brightness QShortcutAltAlt QShortcut*Przewijanie do przodu Audio Forward QShortcut$Odtwarzanie losoweAudio Random Play QShortcutPowtarzanie Audio Repeat QShortcut&Przewijanie do tyBu Audio Rewind QShortcutBackBack QShortcutBackspace Backspace QShortcutBacktabBacktab QShortcut"Wzmocnienie basw Bass Boost QShortcutBasy w dB Bass Down QShortcutBasy w grBass Up QShortcutBateriaBattery QShortcutBluetooth Bluetooth QShortcutKsi|kaBook QShortcutPrzegldarkaBrowser QShortcutCDCD QShortcutKalkulator Calculator QShortcutWywoBajCall QShortcutOstro[ aparatu Camera Focus QShortcutMigawka aparatuCamera Shutter QShortcutCaps Lock Caps Lock QShortcutCapsLockCapsLock QShortcutWyczy[Clear QShortcutZamknijClose QShortcut"Wprowadzanie kodu Code input QShortcutSpoBeczno[ Community QShortcutKontekst1Context1 QShortcutKontekst2Context2 QShortcutKontekst3Context3 QShortcutKontekst4Context4 QShortcutSkopiujCopy QShortcutCtrlCtrl QShortcut WytnijCut QShortcutDOSDOS QShortcutDelDel QShortcut DeleteDelete QShortcutWy[wietlaczDisplay QShortcutDokumenty Documents QShortcutDBDown QShortcutEisu Shift Eisu Shift QShortcutEisu toggle Eisu toggle QShortcut WysuDEject QShortcutEndEnd QShortcut EnterEnter QShortcutEscEsc QShortcut EscapeEscape QShortcutF%1F%1 QShortcutUlubione Favorites QShortcutFinanseFinance QShortcut OdwrFlip QShortcutDo przoduForward QShortcutGraGame QShortcutPrzejdzGo QShortcut HangulHangul QShortcutHangul Banja Hangul Banja QShortcutHangul End Hangul End QShortcutHangul Hanja Hangul Hanja QShortcutHangul Jamo Hangul Jamo QShortcutHangul Jeonja Hangul Jeonja QShortcut Hangul PostHanjaHangul PostHanja QShortcutHangul PreHanjaHangul PreHanja QShortcutHangul Romaja Hangul Romaja QShortcutHangul SpecialHangul Special QShortcutHangul Start Hangul Start QShortcut Zawie[Hangup QShortcutHankakuHankaku QShortcut PomocHelp QShortcut HenkanHenkan QShortcutHibernacja Hibernate QShortcutHiraganaHiragana QShortcut"Hiragana KatakanaHiragana Katakana QShortcutHistoriaHistory QShortcutHomeHome QShortcutBiuro domowe Home Office QShortcutStrona startowa Home Page QShortcutPopularne Bcza Hot Links QShortcutInsIns QShortcut InsertInsert QShortcutKana Lock Kana Lock QShortcutKana Shift Kana Shift QShortcut KanjiKanji QShortcutKatakanaKatakana QShortcut6Zmniejsz jasno[ klawiaturyKeyboard Brightness Down QShortcut4Zwiksz jasno[ klawiaturyKeyboard Brightness Up QShortcutJWBcz/wyBcz pod[wietlenie klawiaturyKeyboard Light On/Off QShortcutMenu klawiatury Keyboard Menu QShortcut(Wykr ostatni numerLast Number Redial QShortcutUruchom (0) Launch (0) QShortcutUruchom (1) Launch (1) QShortcutUruchom (2) Launch (2) QShortcutUruchom (3) Launch (3) QShortcutUruchom (4) Launch (4) QShortcutUruchom (5) Launch (5) QShortcutUruchom (6) Launch (6) QShortcutUruchom (7) Launch (7) QShortcutUruchom (8) Launch (8) QShortcutUruchom (9) Launch (9) QShortcutUruchom (A) Launch (A) QShortcutUruchom (B) Launch (B) QShortcutUruchom (C) Launch (C) QShortcutUruchom (D) Launch (D) QShortcutUruchom (E) Launch (E) QShortcutUruchom (F) Launch (F) QShortcut0Uruchom program pocztowy Launch Mail QShortcut6Uruchom przegldark mediw Launch Media QShortcutLewoLeft QShortcut{arwka LightBulb QShortcutWylogujLogoff QShortcut$Przekazanie poczty Mail Forward QShortcut RynekMarket QShortcut MassyoMassyo QShortcut Nastpna [cie|ka Media Next QShortcutMedia pauza Media Pause QShortcutOdtwarzaj Media Play QShortcut$Poprzednia [cie|kaMedia Previous QShortcutNagrywaj Media Record QShortcutZatrzymaj Media Stop QShortcutSpotkanieMeeting QShortcutMenuMenu QShortcutMenu PBMenu PB QShortcutKomunikator Messenger QShortcutMetaMeta QShortcut2Zmniejsz jasno[ monitoraMonitor Brightness Down QShortcut0Zwiksz jasno[ monitoraMonitor Brightness Up QShortcutMuhenkanMuhenkan QShortcut(Kandydat wielokrotnyMultiple Candidate QShortcut MuzykaMusic QShortcutMoje stronyMy Sites QShortcutWiadomo[ciNews QShortcutNieNo QShortcutNum LockNum Lock QShortcutNumLockNumLock QShortcutNumber Lock Number Lock QShortcutOtwrz adresOpen URL QShortcut OpcjeOption QShortcutStrona do gry Page Down QShortcutStrona w dBPage Up QShortcut WklejPaste QShortcut PauzaPause QShortcut PgDownPgDown QShortcutPgUpPgUp QShortcutTelefonPhone QShortcutZdjciaPictures QShortcut WyBcz zasilanie Power Off QShortcut$Poprzedni kandydatPrevious Candidate QShortcutWydrukujPrint QShortcut2Wydrukuj zawarto[ ekranu Print Screen QShortcutOd[wie|Refresh QShortcutPrzeBadujReload QShortcutOdpowiedzReply QShortcut PowrtReturn QShortcut PrawoRight QShortcut RomajiRomaji QShortcutObr oknaRotate Windows QShortcutObrt KB Rotation KB QShortcutObrt PB Rotation PB QShortcutZachowajSave QShortcut Wygaszacz ekranu Screensaver QShortcutScroll Lock Scroll Lock QShortcutScrollLock ScrollLock QShortcut SzukajSearch QShortcutWybierzSelect QShortcut Wy[lijSend QShortcut ShiftShift QShortcut SklepShop QShortcutU[pienieSleep QShortcut SpacjaSpace QShortcut&Sprawdzanie pisowni Spellchecker QShortcutPodziel ekran Split Screen QShortcut&Arkusz kalkulacyjny Spreadsheet QShortcut Tryb oczekiwaniaStandby QShortcutZatrzymajStop QShortcut NapisySubtitle QShortcut Pomoc technicznaSupport QShortcutWstrzymanieSuspend QShortcut SysReqSysReq QShortcut{danie systemuSystem Request QShortcutTabulatorTab QShortcutPanel zadaD Task Panel QShortcutTerminalTerminal QShortcutCzasTime QShortcut*PrzeBcz dzwoD/zawie[Toggle Call/Hangup QShortcutNarzdziaTools QShortcutMenu gBwneTop Menu QShortcutTourokuTouroku QShortcutPodr|eTravel QShortcutSoprany w dB Treble Down QShortcutSoprany w gr Treble Up QShortcut&Ultraszerokie pasmoUltra Wide Band QShortcutGraUp QShortcut WideoVideo QShortcut WidokView QShortcut$Wybieranie gBosowe Voice Dial QShortcutPrzycisz Volume Down QShortcut Wycisz Volume Mute QShortcutZrb gBo[niej Volume Up QShortcutWWWWWW QShortcutPrzebudzenieWake Up QShortcut WebCamWebCam QShortcutBezprzewodowyWireless QShortcutProcesor tekstuWord Processor QShortcutXFerXFer QShortcutTakYes QShortcutZenkakuZenkaku QShortcutZenkaku HankakuZenkaku Hankaku QShortcutPowikszZoom In QShortcutPomniejszZoom Out QShortcut iTouchiTouch QShortcutStrona w dB Page downQSliderStrona w lewo Page leftQSliderStrona w prawo Page rightQSliderStrona do gryPage upQSliderPoBo|eniePositionQSlider2NieobsBugiwany typ adresuAddress type not supportedQSocks5SocketEnginefPoBczenie niedozwolone przez serwer SOCKS wersji 5(Connection not allowed by SOCKSv5 serverQSocks5SocketEnginedPrzedwczesne zakoDczenie poBczenia z po[rednikiem&Connection to proxy closed prematurelyQSocks5SocketEngine@Odmowa poBczenia z po[rednikiemConnection to proxy refusedQSocks5SocketEngineTPrzekroczony czas poBczenia do po[rednikaConnection to proxy timed outQSocks5SocketEngineJGeneralny bBd serwera SOCKS wersji 5General SOCKSv5 server failureQSocks5SocketEngineHPrzekroczony czas operacji sieciowejNetwork operation timed outQSocks5SocketEnginePAutoryzacja po[rednika zakoDczona bBdemProxy authentication failedQSocks5SocketEngineXAutoryzacja po[rednika zakoDczona bBdem: %1Proxy authentication failed: %1QSocks5SocketEngineJNie odnaleziono hosta po[redniczcegoProxy host not foundQSocks5SocketEngine:BBd protokoBu SOCKS wersji 5SOCKS version 5 protocol errorQSocks5SocketEngineJNieobsBugiwana komenda SOCKS wersji 5SOCKSv5 command not supportedQSocks5SocketEngine&TTL straciB wa|no[ TTL expiredQSocks5SocketEnginefNieznany kod bBdu (0x%1) po[rednika SOCKS wersji 5%Unknown SOCKSv5 proxy error code 0x%1QSocks5SocketEngine AnulujCancelQSoftKeyManagerZrobioneDoneQSoftKeyManagerWyj[cieExitQSoftKeyManagerOKOkQSoftKeyManager OpcjeOptionsQSoftKeyManagerWybierzSelectQSoftKeyManager MniejLessQSpinBox WicejMoreQSpinBox AnulujCancelQSql Anulowa zmiany?Cancel your edits?QSqlPotwierdzConfirmQSql SkasujDeleteQSql(Skasowa ten rekord?Delete this record?QSql WstawInsertQSqlNieNoQSql Zachowa zmiany? Save edits?QSqlUaktualnijUpdateQSqlTakYesQSql^Nie mo|na dostarczy certyfikatu bez klucza, %1,Cannot provide a certificate with no key, %1 QSslSocket:BBd tworzenia kontekstu (%1)Error creating SSL context (%1) QSslSocket8BBd tworzenia sesji SSL, %1Error creating SSL session, %1 QSslSocket8BBd tworzenia sesji SSL: %1Error creating SSL session: %1 QSslSocketJBBd podczas nawizania sesji SSL: %1Error during SSL handshake: %1 QSslSocketPBBd Badowania lokalnego certyfikatu, %1#Error loading local certificate, %1 QSslSocketHBBd Badowania prywatnego klucza, %1Error loading private key, %1 QSslSocket2BBd podczas czytania: %1Error while reading: %1 QSslSocketPNiepoprawna lub pusta lista szyfrw (%1)!Invalid or empty cipher list (%1) QSslSocketVNie mo|na zweryfikowa |adnych certyfikatw!No certificates could be verified QSslSocketBrak bBduNo error QSslSocketvJeden z certyfikatw urzdu certyfikacji jest nieprawidBowy%One of the CA certificates is invalid QSslSocket^Prywatny klucz nie uwiarygodnia publicznego, %1+Private key does not certify public key, %1 QSslSocketDBugo[ [cie|ki okre[lona w podstawowych warunkach ograniczajcych zostaBa przekroczonaTa platforma nie obsBuguje IPv6#This platform does not support IPv6 QUdpSocketPrzywrRedo QUndoGroup CofnijUndo QUndoGroup<pusty> QUndoModelPrzywrRedo QUndoStack CofnijUndo QUndoStack6Wstaw znak kontroli Unicode Insert Unicode control characterQUnicodeControlCharacterMenuRLRE Pocztek osadzania od lewej do prawej$LRE Start of left-to-right embeddingQUnicodeControlCharacterMenu@LRM znacznik od prawej do lewej LRM Left-to-right markQUnicodeControlCharacterMenuTLRO Pocztek nadpisania od lewej do prawej#LRO Start of left-to-right overrideQUnicodeControlCharacterMenu>PDF Formatowanie kierunkowe popPDF Pop directional formattingQUnicodeControlCharacterMenuRRLE Pocztek osadzania od prawej do lewej$RLE Start of right-to-left embeddingQUnicodeControlCharacterMenu>RLM Znacznik od prawej do lewejRLM Right-to-left markQUnicodeControlCharacterMenuTRLO Pocztek nadpisania od prawej do lewej#RLO Start of right-to-left overrideQUnicodeControlCharacterMenu8ZWJ Acznik zerowej dBugo[ciZWJ Zero width joinerQUnicodeControlCharacterMenuBZWNJ Rozdzielnik zerowej dBugo[ciZWNJ Zero width non-joinerQUnicodeControlCharacterMenu:ZWSP Przerwa zerowej dBugo[ciZWSP Zero width spaceQUnicodeControlCharacterMenu*Nie mo|na pokaza URLCannot show URL QWebFrame6Nie mo|na pokaza typu MIMECannot show mimetype QWebFrame"Plik nie istniejeFile does not exist QWebFrame`Aadowanie ramki przerwane przez zmian strategii'Frame load interrupted by policy change QWebFrame$Pro[ba zablokowanaRequest blocked QWebFrame Pro[ba anulowanaRequest cancelled QWebFrame"%1 (%2x%3 piksli)%1 (%2x%3 pixels)QWebPageF%1 dni %2 godzin %3 minut %4 sekund&%1 days %2 hours %3 minutes %4 secondsQWebPage8%1 godzin %2 minut %3 sekund%1 hours %2 minutes %3 secondsQWebPage$%1 minut %2 sekund%1 minutes %2 secondsQWebPage%1 sekund %1 secondsQWebPage%n plik%n pliki%n plikw %n file(s)QWebPage"Dodaj do sBownikaAdd To DictionaryQWebPage"Wyrwnaj do lewej Align LeftQWebPage$Wyrwnaj do prawej Align RightQWebPage"Element dzwikowy Audio ElementQWebPagebKontrolki odtwarzania dzwiku i wy[wietlacz stanu2Audio element playback controls and status displayQWebPage0Niepoprawna komenda HTTPBad HTTP requestQWebPage,Rozpocznij odtwarzanieBegin playbackQWebPagePogrubionyBoldQWebPage W dBBottomQWebPageWy[rodkujCenterQWebPageFSprawdzaj gramatyk wraz z pisowniCheck Grammar With SpellingQWebPage Sprawdz pisowniCheck SpellingQWebPageDSprawdzaj pisowni podczas pisaniaCheck Spelling While TypingQWebPageWybierz plik Choose FileQWebPage:Wyczy[ ostatnie wyszukiwaniaClear recent searchesQWebPageSkopiujCopyQWebPageSkopiuj obrazek Copy ImageQWebPage Skopiuj odsyBacz Copy LinkQWebPage(Stan bie|cego filmuCurrent movie statusQWebPage(Czas bie|cego filmuCurrent movie timeQWebPage WytnijCutQWebPageDomy[lnyDefaultQWebPage*Skasuj do koDca sBowaDelete to the end of the wordQWebPage0Skasuj do pocztku sBowaDelete to the start of the wordQWebPageKierunek DirectionQWebPage$Czas ktry upBynB Elapsed TimeQWebPageCzcionkiFontsQWebPage<Przycisk trybu peBnoekranowegoFullscreen ButtonQWebPageWrGo BackQWebPagePrzejdz dalej Go ForwardQWebPage8Schowaj pisowni i gramatykHide Spelling and GrammarQWebPageZignorujIgnoreQWebPageZignoruj Ignore Grammar context menu itemIgnoreQWebPage"Nieokre[lony czasIndefinite timeQWebPageZwiksz wcicieIndentQWebPage0Wstaw list wypunktowanInsert Bulleted ListQWebPage0Wstaw list ponumerowanInsert Numbered ListQWebPage Wstaw now liniInsert a new lineQWebPage&Wstaw nowy paragrafInsert a new paragraphQWebPageZwiedzajInspectQWebPageKursywaItalicQWebPage6Ostrze|enie JavaScript - %1JavaScript Alert - %1QWebPage:Potwierdzenie JavaScript - %1JavaScript Confirm - %1QWebPage.Problem JavaScript - %1JavaScript Problem - %1QWebPage.Zachta JavaScript - %1JavaScript Prompt - %1QWebPageWyjustujJustifyQWebPageLewa krawdz Left edgeQWebPage Z lewej na praw Left to RightQWebPage$Transmisja na |ywoLive BroadcastQWebPageAadowanie... Loading...QWebPage&Poszukaj w sBownikuLook Up In DictionaryQWebPage"Brakujca wtyczkaMissing Plug-inQWebPage:PrzesuD kursor do koDca bloku'Move the cursor to the end of the blockQWebPageBPrzesuD kursor do koDca dokumentu*Move the cursor to the end of the documentQWebPage:PrzesuD kursor do koDca linii&Move the cursor to the end of the lineQWebPageDPrzesuD kursor do nastpnego znaku%Move the cursor to the next characterQWebPageBPrzesuD kursor do nastpnej linii Move the cursor to the next lineQWebPageDPrzesuD kursor do nastpnego sBowa Move the cursor to the next wordQWebPageHPrzesuD kursor do poprzedniego znaku)Move the cursor to the previous characterQWebPageFPrzesuD kursor do poprzedniej linii$Move the cursor to the previous lineQWebPageHPrzesuD kursor do poprzedniego sBowa$Move the cursor to the previous wordQWebPage@PrzesuD kursor do pocztku bloku)Move the cursor to the start of the blockQWebPageHPrzesuD kursor do pocztku dokumentu,Move the cursor to the start of the documentQWebPage@PrzesuD kursor do pocztku linii(Move the cursor to the start of the lineQWebPageSuwak czasuMovie time scrubberQWebPage&Uchwyt suwaka czasuMovie time scrubber thumbQWebPage2Przycisk wyBczania gBosu Mute ButtonQWebPage0WyBcz [cie|k dzwikowMute audio tracksQWebPage6Nie odnaleziono podpowiedziNo Guesses FoundQWebPage(Nie zaznaczono plikuNo file selectedQWebPage2Brak ostatnich wyszukiwaDNo recent searchesQWebPageOtwrz ramk Open FrameQWebPageOtwrz obrazek Open ImageQWebPageOtwrz odsyBacz Open LinkQWebPage(Otwrz w nowym oknieOpen in New WindowQWebPage Zmniejsz wcicieOutdentQWebPage KonturOutlineQWebPageStrona w dB Page downQWebPageStrona w lewo Page leftQWebPageStrona w prawo Page rightQWebPageStrona do gryPage upQWebPage WklejPasteQWebPage(Wklej i dopasuj stylPaste and Match StyleQWebPagePrzycisk pauzy Pause ButtonQWebPage*Zatrzymaj odtwarzaniePause playbackQWebPage(Przycisk odtwarzania Play ButtonQWebPageLOdtwarzaj film w trybie peBnoekranowymPlay movie in full-screen modeQWebPage*Ostatnie wyszukiwaniaRecent searchesQWebPage:Osignito limit przekierowaDRedirection limit reachedQWebPagePrzeBadujReloadQWebPage&Czas ktry pozostaBRemaining TimeQWebPage&Czas do koDca filmuRemaining movie timeQWebPage"UsuD formatowanieRemove formattingQWebPageWyczy[ResetQWebPagebPrzywr przesyBanie filmu do czasu rzeczywistego#Return streaming movie to real-timeQWebPageNPrzycisk powrotu do czasu rzeczywistegoReturn to Real-time ButtonQWebPage(Przycisk przewijania Rewind ButtonQWebPagePrzewiD film Rewind movieQWebPagePrawa krawdz Right edgeQWebPage Z prawej na lew Right to LeftQWebPage Zachowaj obrazek Save ImageQWebPage(Zachowaj odsyBacz... Save Link...QWebPagePrzewiD w dB Scroll downQWebPagePrzewiD tutaj Scroll hereQWebPagePrzewiD w lewo Scroll leftQWebPagePrzewiD w prawo Scroll rightQWebPagePrzewiD do gry Scroll upQWebPage Wyszukaj w sieciSearch The WebQWebPage>Przycisk przeszukiwania do tyBuSeek Back ButtonQWebPageBPrzycisk przeszukiwania do przoduSeek Forward ButtonQWebPage2Przeszukaj szybko do tyBuSeek quickly backQWebPage6Przeszukaj szybko do przoduSeek quickly forwardQWebPage Zaznacz wszystko Select allQWebPage,Zaznacz do koDca blokuSelect to the end of the blockQWebPage4Zaznacz do koDca dokumentu!Select to the end of the documentQWebPage,Zaznacz do koDca liniiSelect to the end of the lineQWebPage6Zaznacz do nastpnego znakuSelect to the next characterQWebPage4Zaznacz do nastpnej liniiSelect to the next lineQWebPage6Zaznacz do nastpnego sBowaSelect to the next wordQWebPage:Zaznacz do poprzedniego znaku Select to the previous characterQWebPage8Zaznacz do poprzedniej liniiSelect to the previous lineQWebPage:Zaznacz do poprzedniego sBowaSelect to the previous wordQWebPage2Zaznacz do pocztku bloku Select to the start of the blockQWebPage:Zaznacz do pocztku dokumentu#Select to the start of the documentQWebPage2Zaznacz do pocztku liniiSelect to the start of the lineQWebPage4Poka| pisowni i gramatykShow Spelling and GrammarQWebPage SuwakSliderQWebPageUchwyt suwaka Slider ThumbQWebPagePisowniaSpellingQWebPage"Wy[wietlacz stanuStatus DisplayQWebPageZatrzymajStopQWebPagePrzekre[lenie StrikethroughQWebPage Wy[lijSubmitQWebPage Wy[lijQSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPageIndeks dolny SubscriptQWebPageIndeks grny SuperscriptQWebPageKierunek tekstuText DirectionQWebPageSkrypt na tej stronie nie dziaBa poprawnie. Czy chcesz przerwa ten skrypt?RThe script on this page appears to have a problem. Do you want to stop the script?QWebPagepTo jest indeks wyszukiwawczy. Podaj sBowa do wyszukania:3This is a searchable index. Enter search keywords: QWebPageDo gryTopQWebPagePodkre[lenie UnderlineQWebPageNieznanyUnknownQWebPage0Przycisk wBczania gBosu Unmute ButtonQWebPage.WBcz [cie|k dzwikowUnmute audio tracksQWebPageElement wideo Video ElementQWebPage^Kontrolki odtwarzania wideo i wy[wietlacz stanu2Video element playback controls and status displayQWebPage.Wizytator sieciowy - %2Web Inspector - %2QWebPageCo to jest? What's This?QWhatsThisAction**QWidget&ZakoDcz&FinishQWizard &Pomoc&HelpQWizard &Dalej&NextQWizard&Dalej >&Next >QWizard< &Wstecz< &BackQWizard AnulujCancelQWizardDokonajCommitQWizardKontynuujContinueQWizardZrobioneDoneQWizardWrGo BackQWizard PomocHelpQWizard%1 - [%2] %1 - [%2] QWorkspace&Zamknij&Close QWorkspace&Przenie[&Move QWorkspace&Przywr&Restore QWorkspace&Rozmiar&Size QWorkspaceR&ozwiD&Unshade QWorkspaceZamknijClose QWorkspaceZma&ksymalizuj Ma&ximize QWorkspaceZmi&nimalizuj Mi&nimize QWorkspaceZminimalizujMinimize QWorkspace"Przywr pod spd Restore Down QWorkspace &ZwiDSh&ade QWorkspace*Pozostaw na &wierzchu Stay on &Top QWorkspaceoczekiwano deklaracji "encoding" lub "standalone" podczas odczytywania deklaracji XMLYencoding declaration or standalone declaration expected while reading the XML declarationQXml\bBd w deklaracji "text" zewntrznej jednostki3error in the text declaration of an external entityQXmlVwystpiB bBd podczas parsowania komentarza$error occurred while parsing commentQXmlVwystpiB bBd podczas parsowania zawarto[ci$error occurred while parsing contentQXmlrwystpiB bBd podczas parsowania typu definicji dokumentu5error occurred while parsing document type definitionQXmlRwystpiB bBd podczas parsowania elementu$error occurred while parsing elementQXmlTwystpiB bBd podczas parsowania odwoBania&error occurred while parsing referenceQXml<bBd wywoBany przez konsumentaerror triggered by consumerQXmlodwoBanie do jednostki oglnej zewntrznie przetworzonej nie dozwolone w DTD;external parsed general entity reference not allowed in DTDQXmlodwoBanie do jednostki oglnej zewntrznie przetworzonej nie dozwolone dla warto[ci atrybutuGexternal parsed general entity reference not allowed in attribute valueQXml|odwoBanie do jednostki oglnej wewntrznej nie dozwolone w DTD4internal general entity reference not allowed in DTDQXml`niepoprawna nazwa dla instrukcji przetwarzajcej'invalid name for processing instructionQXml,oczekiwana jest literaletter is expectedQXmlRwicej ni| jedna definicja typu dokumentu&more than one document type definitionQXml4nie pojawiB si |aden bBdno error occurredQXml,jednostki rekurencyjnerecursive entitiesQXmldeklaracja "standalone" oczekiwana podczas czytania deklaracji XMLAstandalone declaration expected while reading the XML declarationQXmlniezgodny tag tag mismatchQXml$nieoczekiwany znakunexpected characterQXml4nieoczekiwany koniec plikuunexpected end of fileQXmlrodwoBanie do jednostki nieprzetworzonej w zBym kontek[cie*unparsed entity reference in wrong contextQXmlboczekiwano wersji podczas czytania deklaracji XML2version expected while reading the XML declarationQXmlTbBdna warto[ dla deklaracji "standalone"&wrong value for standalone declarationQXmlNBBd %1 w %2, wiersz %3, kolumna %4: %5)Error %1 in %2, at line %3, column %4: %5QXmlPatternistCLI BBd %1 w %2: %3Error %1 in %2: %3QXmlPatternistCLI$Nieznane poBo|enieUnknown locationQXmlPatternistCLIVOstrze|enie w %1, wiersz %2, kolumna %3: %4(Warning in %1, at line %2, column %3: %4QXmlPatternistCLI(Ostrze|enie w %1: %2Warning in %1: %2QXmlPatternistCLI`%1 jest niepoprawnym publicznym identyfikatorem.#%1 is an invalid PUBLIC identifier. QXmlStreamH%1 jest niepoprawn nazw kodowania.%1 is an invalid encoding name. QXmlStreamj%1 jest niepoprawn nazw instrukcji przetwarzajcej.-%1 is an invalid processing instruction name. QXmlStream", ale otrzymano ' , but got ' QXmlStreamDAtrybut zdefiniowany wielokrotnie.Attribute redefined. QXmlStream@Kodowanie %1 jest nieobsBugiwaneEncoding %1 is unsupported QXmlStreamXNatrafiono na niepoprawnie zakodowan tre[.(Encountered incorrectly encoded content. QXmlStreamBJednostka '%1' nie zadeklarowana.Entity '%1' not declared. QXmlStreamOczekiwano  Expected  QXmlStream0Oczekiwana dana znakowa.Expected character data. QXmlStreamFDodatkowa tre[ na koDcu dokumentu.!Extra content at end of document. QXmlStreamPNiepoprawna deklaracja przestrzeni nazw.Illegal namespace declaration. QXmlStream*Niepoprawny znak XML.Invalid XML character. QXmlStream,Niepoprawna nazwa XML.Invalid XML name. QXmlStream.Niepoprawna wersja XML.Invalid XML version string. QXmlStreamJNiepoprawny atrybut w deklaracji XML.%Invalid attribute in XML declaration. QXmlStream6Niepoprawny znak odwoBania.Invalid character reference. QXmlStream*Niepoprawny dokument.Invalid document. QXmlStream<Niepoprawna warto[ jednostki.Invalid entity value. QXmlStreamZNiepoprawna nazwa instrukcji przetwarzajcej.$Invalid processing instruction name. QXmlStreamJNDATA w deklaracji parametru obiektu.&NDATA in parameter entity declaration. QXmlStreamtPrzedrostek przestrzeni nazw '%1' nie zostaB zadeklarowany"Namespace prefix '%1' not declared QXmlStream@Niezgodne tagi pocztku i koDca. Opening and ending tag mismatch. QXmlStreamFPrzedwczesne zakoDczenie dokumentu.Premature end of document. QXmlStream>Wykryto jednostk rekurencyjn.Recursive entity detected. QXmlStream|OdwoBanie do zewntrznej jednostki '%1' jako warto[ atrybutu.5Reference to external entity '%1' in attribute value. QXmlStreamZOdwoBanie do nieprzetworzonej jednostki '%1'."Reference to unparsed entity '%1'. QXmlStreamBCig ']]>' niedozwolony w tre[ci.&Sequence ']]>' not allowed in content. QXmlStreamTylko warto[ci "tak" lub "nie" s akceptowane przez "standalone"."Standalone accepts only yes or no. QXmlStream8Oczekiwano rozpoczcia tagu.Start tag expected. QXmlStreamvPseudo atrybut "standalone" musi pojawi si po "encoding".?The standalone pseudo attribute must appear after the encoding. QXmlStreamNieoczekiwany ' Unexpected ' QXmlStream\Nieoczekiwany znak '%1' w publicznym literale./Unexpected character '%1' in public id literal. QXmlStream4NieobsBugiwana wersja XML.Unsupported XML version. QXmlStream\Deklaracja XML nie jest na pocztku dokumentu.)XML declaration not at start of document. QXmlStreamV%1 i %2 dopasowaBy pocztek i koniec linii.,%1 and %2 match the start and end of a line. QtXmlPatterns|Atrybut %1 w %2 powinien u|ywa %3 jak w typie podstawowym %4.9%1 attribute in %2 must have %3 use like in base type %4. QtXmlPatternsAtrybut %1 w wywiedzionym typie zBo|onym musi by %2 jak w typie podstawowym.B%1 attribute in derived complex type must be %2 like in base type. QtXmlPatternsAtrybut %1 elementu %2 posiada niepoprawn zawarto[: {%3} nie jest warto[ci typu %4.T%1 attribute of %2 element contains invalid content: {%3} is not a value of type %4. QtXmlPatternsvAtrybut %1 elementu %2 posiada niepoprawn zawarto[: {%3}.:%1 attribute of %2 element contains invalid content: {%3}. QtXmlPatterns|Atrybut %1 elementu %2 posiada wiksz warto[ ni| atrybut %3.>%1 attribute of %2 element has larger value than %3 attribute. QtXmlPatternsXAtrybutem %1 elementu %2 musi by %3 lub %4.,%1 attribute of %2 element must be %3 or %4. QtXmlPatternstAtrybut %1 elementu %2 musi zawiera %3, %4 lub list URI.A%1 attribute of %2 element must contain %3, %4 or a list of URIs. QtXmlPatternsAtrybut %1 elementu %2 musi zawiera albo %3 albo inne warto[ci.F%1 attribute of %2 element must either contain %3 or the other values. QtXmlPatternsnAtrybut %1 elementu %2 musi posiada warto[ %3 lub %4.9%1 attribute of %2 element must have a value of %3 or %4. QtXmlPatterns`Atrybut %1 elementu %2 musi posiada warto[ %3.3%1 attribute of %2 element must have a value of %3. QtXmlPatternsAtrybut %1 elementu %2 musi zawiera warto[ %3 poniewa| atrybut %4 jest ustawiony.R%1 attribute of %2 element must have the value %3 because the %4 attribute is set. QtXmlPatternsNAtrybut %1 elementu %2 nie mo|e by %3.*%1 attribute of %2 element must not be %3. QtXmlPatterns2%1 nie mo|e by odzyskane%1 cannot be retrieved QtXmlPatternsr%1 nie mo|e mie zBo|onego typu podstawowego ktry ma %2./%1 cannot have complex base type that has a %2. QtXmlPatterns`%1 zawiera aspekt %2 z niepoprawnymi danymi: %3.+%1 contains %2 facet with invalid data: %3. QtXmlPatterns8%1 zawiera niepoprawne dane.%1 contains invalid data. QtXmlPatterns~%1 zawiera bity ktre s niedozwolone w za|danym kodowaniu %2.E%1 contains octets which are disallowed in the requested encoding %2. QtXmlPatternsElement %1 (%2) nie jest poprawnym ograniczeniem elementu %3 ktry redefiniuje: %4.L%1 element %2 is not a valid restriction of the %3 element it redefines: %4. QtXmlPatternsElement %1 nie mo|e mie atrybutu %2 z warto[ci inn ni| %3 lub %4.C%1 element cannot have %2 attribute with value other than %3 or %4. QtXmlPatternszElement %1 nie mo|e mie atrybutu %2 z warto[ci inn ni| %3.=%1 element cannot have %2 attribute with value other than %3. QtXmlPatternstElement %1 nie posiada ani atrybutu %2 ani podelementu %3.9%1 element has neither %2 attribute nor %3 child element. QtXmlPatterns\Element %1 jest niedozwolony w tym kontek[cie.*%1 element is not allowed in this context. QtXmlPatternsXElement %1 nie jest dozwolony w tym zakresie'%1 element is not allowed in this scope QtXmlPatternsElement %1 jest niedozwolony wewntrz elementu %2 je[li jest obecny atrybut %3.G%1 element is not allowed inside %2 element if %3 attribute is present. QtXmlPatternsElement %1 nie mo|e zawiera tej samej warto[ci atrybutu %2 co docelowa przestrzeD nazw %3.Y%1 element is not allowed to have the same %2 attribute value as the target namespace %3. QtXmlPatternsElement %1 musi zawiera albo atrybut %2 albo %3 lub %4 jako podelement.F%1 element must have either %2 attribute or %3 or %4 as child element. QtXmlPatternsXElement %1 musi zawiera atrybut %2 albo %3./%1 element must have either %2 or %3 attribute. QtXmlPatternsxElement %1 nie mo|e posiada jednocze[nie atrybutw %2 i %3.6%1 element must not have %2 and %3 attribute together. QtXmlPatternsLElement %1 wymaga atrybutu %2 albo %3..%1 element requires either %2 or %3 attribute. QtXmlPatternsnElement %1 z podelementem %2 nie mo|e mie atrybutu %3.>%1 element with %2 child element must not have a %3 attribute. QtXmlPatternsElement %1 bez atrybutu %2 jest niedozwolony wewntrz schematu bez docelowej przestrzeni nazw.V%1 element without %2 attribute is not allowed inside schema without target namespace. QtXmlPatterns^Aspekty %1 i %2 nie mog wystpi jednocze[nie.-%1 facet and %2 facet cannot appear together. QtXmlPatternsAspektem %1 nie mo|e by %2 je[li aspektem %3 typu podstawowego jest %4.5%1 facet cannot be %2 if %3 facet of base type is %4. QtXmlPatternsAspektem %1 nie mo|e by %2 ani %3 je[li aspektem %4 typu podstawowego jest %5.;%1 facet cannot be %2 or %3 if %4 facet of base type is %5. QtXmlPatternsBAspekt %1 koliduje z aspektem %2. %1 facet collides with %2 facet. QtXmlPatternsbAspekt %1 zawiera niepoprawne wyra|enie regularne,%1 facet contains invalid regular expression QtXmlPatternsZAspekt %1 zawiera niepoprawn warto[ %2: %3.'%1 facet contains invalid value %2: %3. QtXmlPatternsWarto[ aspektu %1 musi wiksza od lub rwna warto[ci aspektu %2 typu podstawowego.=%1 facet must be equal or greater than %2 facet of base type. QtXmlPatternsWarto[ aspektu %1 musi by wiksza od warto[ci aspektu %2 typu podstawowego.4%1 facet must be greater than %2 facet of base type. QtXmlPatternsWarto[ aspektu %1 musi by wiksza od lub rwna warto[ci aspektu %2 typu podstawowego.@%1 facet must be greater than or equal to %2 facet of base type. QtXmlPatternsWarto[ aspektu %1 musi by mniejsza od warto[ci aspektu %2 typu podstawowego.1%1 facet must be less than %2 facet of base type. QtXmlPatternsxWarto[ aspektu %1 musi by mniejsza od warto[ci aspektu %2.$%1 facet must be less than %2 facet. QtXmlPatternsWarto[ aspektu %1 musi by mniejsza od lub rwna warto[ci aspektu %2 typu podstawowego.=%1 facet must be less than or equal to %2 facet of base type. QtXmlPatternsWarto[ aspektu %1 musi by mniejsza od lub rwna warto[ci aspektu %2.0%1 facet must be less than or equal to %2 facet. QtXmlPatternsAspekt %1 musi mie t sam warto[ jak ma aspekt %2 typu podstawowego.;%1 facet must have the same value as %2 facet of base type. QtXmlPatterns%1 posiada inna liczb pl od narzucenia niepowtarzalno[ci %2 ktre si do niego odwoBuje.W%1 has a different number of fields from the identity constraint %2 that it references. QtXmlPatterns%1 posiada atrybut d|okera lecz jego typ podstawowy %2 go nie posiada.7%1 has attribute wildcard but its base type %2 has not. QtXmlPatternsp%1 ma ptl w dziedziczeniu w jego podstawowym typie %2.,%1 has inheritance loop in its base type %2. QtXmlPatterns%1 jest typem zBo|onym. Rzutowanie na typy zBo|one nie jest mo|liwe. Jednak|e rzutowanie na typy atomowe np.: %2 jest dozwolone.s%1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works. QtXmlPatterns.%1 jest niepoprawnym %2%1 is an invalid %2 QtXmlPatterns%1 jest niepoprawn flag dla wyra|eD regularnych. Poprawnymi flagami s:?%1 is an invalid flag for regular expressions. Valid flags are: QtXmlPatternsT%1 jest niepoprawn przestrzeni nazw URI.%1 is an invalid namespace URI. QtXmlPatternsl%1 jest niepoprawnym wzorcem wyra|enia regularnego: %2/%1 is an invalid regular expression pattern: %2 QtXmlPatternsT%1 nie jest poprawn nazwa trybu szablonu.$%1 is an invalid template mode name. QtXmlPatternsB%1 jest nieznanym typem schematu.%1 is an unknown schema type. QtXmlPatterns8NieobsBugiwane kodowanie %1.%1 is an unsupported encoding. QtXmlPatternsL%1 nie jest poprawnym znakiem XML 1.0.$%1 is not a valid XML 1.0 character. QtXmlPatternst%1 nie jest poprawn nazw dla instrukcji przetwarzajcej.4%1 is not a valid name for a processing-instruction. QtXmlPatternsT%1 nie jest poprawnym literaBem liczbowym."%1 is not a valid numeric literal. QtXmlPatterns%1 nie jest poprawn nazw docelow w instrukcji przetwarzania. Nazwa musi by warto[ci %2, np. %3.Z%1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3. QtXmlPatternsV%1 nie jest poprawn warto[ci dla typu %2.#%1 is not a valid value of type %2. QtXmlPatternsF%1 nie jest caBkowit liczb minut.$%1 is not a whole number of minutes. QtXmlPatternsNie mo|na wywie[ %1 z %2 rozszerzajc go poniewa| jest on zdefiniowany jako koDcowy.S%1 is not allowed to derive from %2 by extension as the latter defines it as final. QtXmlPatternsNie mo|na wywie[ %1 z %2 poprzez list poniewa| jest to zdefiniowane ostatecznie w typie podstawowym.N%1 is not allowed to derive from %2 by list as the latter defines it as final. QtXmlPatternsNie mo|na wywie[ %1 z %2 ograniczajc go poniewa| jest on zdefiniowany jako koDcowy.U%1 is not allowed to derive from %2 by restriction as the latter defines it as final. QtXmlPatternsNie mo|na wywie[ %1 z %2 poprzez uni poniewa| jest to zdefiniowane ostatecznie w typie podstawowym.O%1 is not allowed to derive from %2 by union as the latter defines it as final. QtXmlPatterns%1 nie mo|e posiada typu skBadnika o tej samej nazwie jak on sam posiada.E%1 is not allowed to have a member type with the same name as itself. QtXmlPatternsL%1 nie mo|e posiada |adnych aspektw.%%1 is not allowed to have any facets. QtXmlPatterns%1 nie jest typem atomowym. Mo|liwe jest rzutowanie tylko na typy atomowe.C%1 is not an atomic type. Casting is only possible to atomic types. QtXmlPatterns%1 nie jest wewntrz zakresu deklaracji atrybutw. Zwr uwag |e importowanie schematw nie jest obsBugiwane.g%1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported. QtXmlPatterns>%1 nie jest poprawne wedBug %2. %1 is not valid according to %2. QtXmlPatternsdWarto[ %1 nie jest poprawna jako warto[ typu %2.&%1 is not valid as a value of type %2. QtXmlPatterns<%1 dopasowaBo znak nowej linii%1 matches newline characters QtXmlPatternsPo %1 musi nastpowa %2 lub %3, lecz nie na koDcu zastpczego cigu.J%1 must be followed by %2 or %3, not at the end of the replacement string. QtXmlPatterns%1 wywiedzionego d|okera nie jest poprawnym ograniczeniem %2 podstawowego d|okeraH%1 of derived wildcard is not a valid restriction of %2 of base wildcard QtXmlPatternsAtrybut %1 lub %2 odwoBania %3 nie pasuje do deklaracji atrybutu %4.T%1 or %2 attribute of reference %3 does not match with the attribute declaration %4. QtXmlPatterns%1 odwoBuje si do narzucenia niepowtarzalno[ci %2 ktre nie jest elementem %3 ani %4.A%1 references identity constraint %2 that is no %3 or %4 element. QtXmlPatternsj%1 odwoBuje si do nieznanego elementu %2 lub %3: %4.*%1 references unknown %2 or %3 element %4. QtXmlPatterns%1 wymaga przynajmniej %n argumentu. %2 jest dlatego niepoprawne.%1 wymaga przynajmniej %n argumentw. %2 jest dlatego niepoprawne.%1 wymaga przynajmniej %n argumentw. %2 jest dlatego niepoprawne.=%1 requires at least %n argument(s). %2 is therefore invalid. QtXmlPatterns%1 przyjmuje co najwy|ej %n argument. %2 jest dlatego niepoprawne.%1 przyjmuje co najwy|ej %n argumenty. %2 jest dlatego niepoprawne.%1 przyjmuje co najwy|ej %n argumentw. %2 jest dlatego niepoprawne.9%1 takes at most %n argument(s). %2 is therefore invalid. QtXmlPatternsWywoBano %1.%1 was called. QtXmlPatternsAspekty %1, %2, %3, %4, %5 i %6 nie s dozwolone podczas wywodzenia z listy.F%1, %2, %3, %4, %5 and %6 facets are not allowed when derived by list. QtXmlPatternsjAtrybut "%1" zawiera niepoprawn zawarto[ QName: %2.2'%1' attribute contains invalid QName content: %2. QtXmlPatterns<Komentarz nie mo|e zawiera %1A comment cannot contain %1 QtXmlPatternsFKomentarz nie mo|e koDczy si: %1.A comment cannot end with a %1. QtXmlPatternsWystpiBa konstrukcja ktra jest niedozwolona w bie|cym jzyku (%1).LA construct was encountered which is disallowed in the current language(%1). QtXmlPatternsDomy[lna deklaracja przestrzeni nazw musi pojawi si przed deklaracjami funkcji, zmiennych i opcji.^A default namespace declaration must occur before function, variable, and option declarations. QtXmlPatternsKonstruktor elementu bezpo[redniego nie jest dobrze sformatowany. %1 jest zakoDczony %2.EA direct element constructor is not well-formed. %1 is ended with %2. QtXmlPatternsDFunkcja w postaci %1 ju| istnieje.0A function already exists with the signature %1. QtXmlPatternsModuB biblioteki nie mo|e by bezpo[rednio oceniony. On musi by zaimportowany z gBwnego moduBu.VA library module cannot be evaluated directly. It must be imported from a main module. QtXmlPatternstParametr funkcji nie mo|e by zadeklarowany jako tunelowy.Can not process unknown element %1, expected elements are: %2. QtXmlPatternsBrak podelementu w tym zakresie, mo|liwymi podelementami s: %1.HChild element is missing in that scope, possible child elements are: %1. QtXmlPatternsHCykliczne odwoBanie do grupy dla %1. Circular group reference for %1. QtXmlPatternsZCykliczne dziedziczenie podstawowego typu %1.%Circular inheritance of base type %1. QtXmlPatterns@Cykliczne dziedziczenie unii %1.!Circular inheritance of union %1. QtXmlPatternsTyp zBo|ony %1 nie mo|e by wywiedziony z %2 poprzez rozszerzenie poniewa| ten ostatni zawiera element %3 w jego modelu zawarto[ci.nComplex type %1 cannot be derived by extension from %2 as the latter contains %3 element in its content model. QtXmlPatternshTyp zBo|ony %1 nie mo|e by wywiedziony z typu %2%3.6Complex type %1 cannot be derived from base type %2%3. QtXmlPatternsTyp zBo|ony %1 zawiera atrybut %2 ktry ma ograniczenie warto[ci ale typ wywodzi si z %3._Complex type %1 contains attribute %2 that has value constraint but type that inherits from %3. QtXmlPatternsZTyp zBo|ony %1 zawiera atrybut %2 dwukrotnie.,Complex type %1 contains attribute %2 twice. QtXmlPatternsTyp zBo|ony %1 zawiera dwa r|ne atrybuty ktrych typy s wywiedzione z %2.WComplex type %1 contains two different attributes that both have types derived from %2. QtXmlPatternsTyp zBo|ony %1 posiada powielony element %2 w jego modelu zawarto[ci.?Complex type %1 has duplicated element %2 in its content model. QtXmlPatterns\Typ zBo|ony %1 posiada nieokre[lon zawarto[..Complex type %1 has non-deterministic content. QtXmlPatternsRTyp zBo|ony %1 nie mo|e by abstrakcyjny..Complex type %1 is not allowed to be abstract. QtXmlPatternsTTyp zBo|ony %1 musi mie prost zawarto[.)Complex type %1 must have simple content. QtXmlPatternsTyp zBo|ony %1 musi posiada ten sam prosty typ jaki posiada jego klasa podstawowa %2.DComplex type %1 must have the same simple type as its base class %2. QtXmlPatternsTyp zBo|ony %1 z prost zawarto[ci nie mo|e by wywiedziony z podstawowego typu zBo|onego %2.PComplex type %1 with simple content cannot be derived from complex base type %2. QtXmlPatternsTyp zBo|ony w elemencie wywiedzionym %1 nie mo|e by poprawnie wywiedziony z elementu podstawowego.OComplex type of derived element %1 cannot be validly derived from base element. QtXmlPatternszKomponent o identyfikatorze %1 zostaB uprzednio zdefiniowany.1Component with ID %1 has been defined previously. QtXmlPatternsModel zawarto[ci typu zBo|onego %1 posiada element %2 wic nie mo|e by on wywiedziony poprzez rozszerzenie niepustego typu.pContent model of complex type %1 contains %2 element so it cannot be derived by extension from a non-empty type. QtXmlPatternsModel zawarto[ci typu zBo|onego %1 nie jest poprawnym rozszerzeniem modelu zawarto[ci %2.QContent model of complex type %1 is not a valid extension of content model of %2. QtXmlPatternsZawarto[ atrybutu %1 elementu %2 nie mo|e pochodzi z przestrzeni nazw %3.DContent of %1 attribute of %2 element must not be from namespace %3. QtXmlPatternsZawarto[ elementu %1 nie pasuje do zdefiniowanego ograniczenia warto[ci.@Content of attribute %1 does not match defined value constraint. QtXmlPatternsxZawarto[ atrybutu %1 nie pasuje do jego definicji typu: %2.?Content of attribute %1 does not match its type definition: %2. QtXmlPatternsZawarto[ elementu %1 nie pasuje do zdefiniowanego ograniczenia warto[ci.>Content of element %1 does not match defined value constraint. QtXmlPatternsxZawarto[ elementu %1 nie pasuje do jego definicji typu: %2.=Content of element %1 does not match its type definition: %2. QtXmlPatterns@Dane typu %1 nie mog by puste.,Data of type %1 are not allowed to be empty. QtXmlPatternsjZawarto[ daty i czasu koliduje z aspektem "pattern"./Date time content does not match pattern facet. QtXmlPatternstZawarto[ daty i czasu koliduje z aspektem "maxExclusive".8Date time content does not match the maxExclusive facet. QtXmlPatternstZawarto[ daty i czasu koliduje z aspektem "maxInclusive".8Date time content does not match the maxInclusive facet. QtXmlPatternstZawarto[ daty i czasu koliduje z aspektem "minExclusive".8Date time content does not match the minExclusive facet. QtXmlPatternstZawarto[ daty i czasu koliduje z aspektem "minInclusive".8Date time content does not match the minInclusive facet. QtXmlPatternsZawarto[ daty i czasu nie widnieje na li[cie aspektu "enumeration".9Date time content is not listed in the enumeration facet. QtXmlPatternsTDzieD %1 jest niepoprawny dla miesica %2.Day %1 is invalid for month %2. QtXmlPatternsFDzieD %1 jest poza zakresem %2..%3.#Day %1 is outside the range %2..%3. QtXmlPatternsWarto[ liczby rzeczywistej koliduje z aspektem "fractionDigits".;Decimal content does not match in the fractionDigits facet. QtXmlPatterns|Warto[ liczby rzeczywistej koliduje z aspektem "totalDigits".8Decimal content does not match in the totalDigits facet. QtXmlPatterns8Brak deklaracji atrybutu %1.,Declaration for attribute %1 does not exist. QtXmlPatterns@Brak deklaracji dla elementu %1.*Declaration for element %1 does not exist. QtXmlPatternsMetod wywodzenia z %1 musi by rozszerzenie poniewa| typ podstawowy %2 jest typem prostym.TDerivation method of %1 must be extension because the base type %2 is a simple type. QtXmlPatternsxWywiedziony atrybut %1 nie istnieje w podstawowej definicji.;Derived attribute %1 does not exist in the base definition. QtXmlPatternsWywiedziony atrybut %1 nie pasuje do d|okera w podstawowej definicji.HDerived attribute %1 does not match the wildcard in the base definition. QtXmlPatternsWywiedziona definicja zawiera element %1 ktry nie istnieje w definicji podstawowejUDerived definition contains an %1 element that does not exists in the base definition QtXmlPatternsWywiedziony element %1 mo|e by zerowalny poniewa| element podstawowy nie jest zerowalny.FDerived element %1 cannot be nillable as base element is not nillable. QtXmlPatternsWywiedziony element %1 posiada sBabsze ograniczenie warto[ci ni| element podstawowy.BDerived element %1 has weaker value constraint than base particle. QtXmlPatternsBrak ograniczenia warto[ci w wywiedzionym elemencie %1 takiego jak w podstawowym elemencie.KDerived element %1 is missing value constraint as defined in base particle. QtXmlPatternsWywiedziony element pozwala na zawarto[ ktra jest niedozwolona w podstawowym elemencie.IDerived particle allows content that is not allowed in the base particle. QtXmlPatternsTBrak elementu %1 w wywiedzionym elemencie.'Derived particle is missing element %1. QtXmlPatternsxWywiedziony d|oker nie jest podzbiorem podstawowego d|okera.6Derived wildcard is not a subset of the base wildcard. QtXmlPatternsDzielenie warto[ci typu %1 przez %2 (typ nienumeryczny) jest niedozwolone.@Dividing a value of type %1 by %2 (not-a-number) is not allowed. QtXmlPatternsDzielenie warto[ci typu %1 przez %2 lub %3 (plus lub minus zero) jest niedozwolone.LDividing a value of type %1 by %2 or %3 (plus or minus zero) is not allowed. QtXmlPatternshDzielenie (%1) przez zero (%2) jest niezdefiniowane.(Division (%1) by zero (%2) is undefined. QtXmlPatterns@Dokument nie jest schematem XML.Document is not a XML schema. QtXmlPatternstWarto[ liczby rzeczywistej koliduje z aspektem "pattern".,Double content does not match pattern facet. QtXmlPatterns~Warto[ liczby rzeczywistej koliduje z aspektem "maxExclusive".5Double content does not match the maxExclusive facet. QtXmlPatterns~Warto[ liczby rzeczywistej koliduje z aspektem "maxInclusive".5Double content does not match the maxInclusive facet. QtXmlPatterns~Warto[ liczby rzeczywistej koliduje z aspektem "minExclusive".5Double content does not match the minExclusive facet. QtXmlPatterns~Warto[ liczby rzeczywistej koliduje z aspektem "minInclusive".5Double content does not match the minInclusive facet. QtXmlPatternsWarto[ liczby rzeczywistej nie widnieje na li[cie aspektu "enumeration".6Double content is not listed in the enumeration facet. QtXmlPatternsVPowielona nazwa elementu %1 w elemencie %2.*Duplicated element names %1 in %2 element. QtXmlPatternsJPowielone aspekty w prostym typie %1.$Duplicated facets in simple type %1. QtXmlPatternshWarto[ czasu trwania koliduje z aspektem "pattern"..Duration content does not match pattern facet. QtXmlPatternsrWarto[ czasu trwania koliduje z aspektem "maxExclusive".7Duration content does not match the maxExclusive facet. QtXmlPatternsrWarto[ czasu trwania koliduje z aspektem "maxInclusive".7Duration content does not match the maxInclusive facet. QtXmlPatternsrWarto[ czasu trwania koliduje z aspektem "minExclusive".7Duration content does not match the minExclusive facet. QtXmlPatternsrWarto[ czasu trwania koliduje z aspektem "minInclusive".7Duration content does not match the minInclusive facet. QtXmlPatternsWarto[ czasu trwania nie widnieje na li[cie aspektu "enumeration".8Duration content is not listed in the enumeration facet. QtXmlPatternsKa|da nazwa parametru szablonu musi by unikatowa; %1 si powtarza.CEach name of a template parameter must be unique; %1 is duplicated. QtXmlPatternsEfektywna warto[ boolowska (EBV) nie mo|e by obliczona dla sekwencji zawierajcej dwie lub wicej warto[ci atomowe.aEffective Boolean Value cannot be calculated for a sequence containing two or more atomic values. QtXmlPatternsBElement %1 jest ju| zdefiniowany.Element %1 already defined. QtXmlPatternsElement %1 nie mo|e by zserializowany poniewa| pojawiB si poza elementem "document".OElement %1 can't be serialized because it appears outside the document element. QtXmlPatternsElement %1 nie mo|e zawiera innych elementw poniewa| posiada on staB zawarto[.DElement %1 cannot contain other elements, as it has a fixed content. QtXmlPatternspElement %1 nie mo|e posiada sekwencyjnego konstruktora..Element %1 cannot have a sequence constructor. QtXmlPatternsLElement %1 nie mo|e posiada potomkw. Element %1 cannot have children. QtXmlPatternsRElement %1 posiada niepoprawn zawarto[.$Element %1 contains invalid content. QtXmlPatternsRElement %1 zawiera niedozwolone atrybuty.+Element %1 contains not allowed attributes. QtXmlPatternsVElement %1 zawiera niedozwolony podelement..Element %1 contains not allowed child content. QtXmlPatternsVElement %1 zawiera niedozwolony podelement..Element %1 contains not allowed child element. QtXmlPatternsJElement %1 zawiera niedozwolony text.-Element %1 contains not allowed text content. QtXmlPatternsPElement %1 posiada dwa atrybuty typu %2..Element %1 contains two attributes of type %2. QtXmlPatternsNElement %1 posiada nieznany atrybut %2.)Element %1 contains unknown attribute %2. QtXmlPatternsElement %1 nie pasuje do ograniczenia przestrzeni nazw d|okera w elemencie podstawowym.LElement %1 does not match namespace constraint of wildcard in base particle. QtXmlPatternsTIstniej dwa elementy %1 o r|nych typach.-Element %1 exists twice with different types. QtXmlPatterns`Element %1 jest zadeklarowany jako abstrakcyjny.#Element %1 is declared as abstract. QtXmlPatternsVBrak wymaganego podelementu w elemencie %1.$Element %1 is missing child element. QtXmlPatternsTBrak elementu %1 w wywiedzionym elemencie.*Element %1 is missing in derived particle. QtXmlPatternsVBrak wymaganego atrybutu %2 w elemencie %1.,Element %1 is missing required attribute %2. QtXmlPatternsVElement %1 jest niedozwolony w tym miejscu.+Element %1 is not allowed at this location. QtXmlPatternsElement %1 jest niedozwolony w tym zakresie, mo|liwymi elementami s: %2.CElement %1 is not allowed in this scope, possible elements are: %2. QtXmlPatternsElement %1 nie mo|e zawiera ograniczenia warto[ci gdy jego typ podstawowy jest zBo|ony.QElement %1 is not allowed to have a value constraint if its base type is complex. QtXmlPatternsElement %1 nie mo|e zawiera ograniczenia warto[ci gdy jego typ jest wywiedziony z %2.TElement %1 is not allowed to have a value constraint if its type is derived from %2. QtXmlPatternsElement %1 nie mo|e przynale|e do grupy zastpujcej poniewa| nie jest on elementem globalnym.\Element %1 is not allowed to have substitution group affiliation as it is no global element. QtXmlPatterns`Element %1 nie jest zdefiniowany w tym zakresie.(Element %1 is not defined in this scope. QtXmlPatterns<Element %1 nie jest zerowalny.Element %1 is not nillable. QtXmlPatternsLElement %1 musi wystpi jako ostatni.Element %1 must come last. QtXmlPatternsElement %1 musi posiada przynajmniej jeden z atrybutw: %2 lub %3.=Element %1 must have at least one of the attributes %2 or %3. QtXmlPatternsElement %1 musi posiada albo atrybut %2 albo sekwencyjny konstruktor.EElement %1 must have either a %2-attribute or a sequence constructor. QtXmlPatternsbElement posiada zawarto[ chocia| jest zerowalny.1Element contains content although it is nillable. QtXmlPatternsRGrupa elementw %1 jest ju| zdefiniowana.!Element group %1 already defined. QtXmlPatternszPusty element nie mo|e by wywiedziony z niepustego elementu.9Empty particle cannot be derived from non-empty particle. QtXmlPatternsAspekt "enumeration" posiada niepoprawn zawarto[: {%1} nie jest warto[ci typu %2.KEnumeration facet contains invalid content: {%1} is not a value of type %2. QtXmlPatternsDPole %1 nie posiada prostego typu.Field %1 has no simple type. QtXmlPatternsOgraniczenie staBej warto[ci jest niedozwolone gdy element jest zerowalny.:Fixed value constraint not allowed if element is nillable. QtXmlPatternsOgraniczenie staBej warto[ci elementu %1 r|ni si od ograniczenia warto[ci w podstawowym elemencie.TFixed value constraint of element %1 differs from value constraint in base particle. QtXmlPatternsFWarto[ ID "%1" nie jest unikatowa.ID value '%1' is not unique. QtXmlPatternslNarzucenie niepowtarzalno[ci %1 jest ju| zdefiniowane.'Identity constraint %1 already defined. QtXmlPatternsJe[li oba argumenty maj przesunicia strefowe, musz one by takie same. %1 i %2 nie s takie same.bIf both values have zone offsets, they must have the same zone offset. %1 and %2 are not the same. QtXmlPatternsJe[li element %1 nie posiada atrybutu %2, nie mo|e on rwnie| posiada atrybutu %3 ani %4.EIf element %1 has no attribute %2, it cannot have attribute %3 or %4. QtXmlPatterns<Je[li pierwszy argument jest pust sekwencj lub zerowej dBugo[ci cigiem (przy braku przestrzeni nazw), przedrostek nie mo|e wystpi. Podano przedrostek %1.If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified. QtXmlPatternsW konstruktorze przestrzeni nazw warto[ przestrzeni nazw nie mo|e by pustym cigiem.PIn a namespace constructor, the value for a namespace cannot be an empty string. QtXmlPatternszW uproszczonym module arkuszu stylu musi wystpi atrybut %1.@In a simplified stylesheet module, attribute %1 must be present. QtXmlPatternsWe wzorze XSL-T tylko osie %2 i %3 mog by u|yte, za[ o[ %1 nie.DIn an XSL-T pattern, axis %1 cannot be used, only axis %2 or %3 can. QtXmlPatternsWe wzorze XSL-T funkcja %1 nie mo|e zawiera trzeciego argumentu.>In an XSL-T pattern, function %1 cannot have a third argument. QtXmlPatternsWe wzorze XSL-T tylko funkcje %1 i %2 mog by u|yte do dopasowania, za[ funkcja %3 nie.OIn an XSL-T pattern, only function %1 and %2, not %3, can be used for matching. QtXmlPatternsWe wzorze XSL-T pierwszy argument w funkcji %1 musi by literaBem znakowym lub nazw zmiennej podczas dopasowywania.yIn an XSL-T pattern, the first argument to function %1 must be a literal or a variable reference, when used for matching. QtXmlPatternsWe wzorze XSL-T pierwszy argument w funkcji %1 musi by literaBem znakowym podczas dopasowywania.hIn an XSL-T pattern, the first argument to function %1 must be a string literal, when used for matching. QtXmlPatternsW cigu zastpczym, %1 mo|e by u|yte tylko do zabezpieczenia samej siebie lub %2, nigdy %3MIn the replacement string, %1 can only be used to escape itself or %2, not %3 QtXmlPatternsW cigu zastpczym, po %1 musi nastpowa przynajmniej jedna cyfra pod warunkiem, |e nie jest ona w sekwencji escape.VIn the replacement string, %1 must be followed by at least one digit when not escaped. QtXmlPatternsDzielenie w dziedzinie liczb caBkowitych (%1) przez zero (%2) jest niezdefiniowane.0Integer division (%1) by zero (%2) is undefined. QtXmlPatterns@Niepoprawna zawarto[ QName: %1.Invalid QName content: %1. QtXmlPatterns\Nie jest mo|liwe powizanie z przedrostkiem %1+It is not possible to bind to the prefix %1 QtXmlPatternsnNie jest mo|liwe ponowne zadeklarowanie przedrostka %1.*It is not possible to redeclare prefix %1. QtXmlPatterns:Nie bdzie mo|na odzyska %1.'It will not be possible to retrieve %1. QtXmlPatterns^Dodanie atrybutu poza wzBami nie jest mo|liwe.AIt's not possible to add attributes after any other kind of node. QtXmlPatternsvNie mo|na rozwiza typu elementw listy %1 w elemencie %2..Item type %1 of %2 element cannot be resolved. QtXmlPatternsTyp elementw listy typu podstawowego nie pasuje do typu elementw listy %1.6Item type of base type does not match item type of %1. QtXmlPatternsTyp elementw listy w prostym typie %1 nie mo|e by typem zBo|onym.5Item type of simple type %1 cannot be a complex type. QtXmlPatterns\Ograniczenie klucza %1 zawiera nieobecne pola.)Key constraint %1 contains absent fields. QtXmlPatternsOgraniczenie klucza %1 zawiera odwoBania do elementu zerowalnego %2.:Key constraint %1 contains references nillable element %2. QtXmlPatternsZZawarto[ listy koliduje z aspektem "length".)List content does not match length facet. QtXmlPatterns`Zawarto[ listy koliduje z aspektem "maxLength".,List content does not match maxLength facet. QtXmlPatterns`Zawarto[ listy koliduje z aspektem "minLength".,List content does not match minLength facet. QtXmlPatterns\Zawarto[ listy koliduje z aspektem "pattern".*List content does not match pattern facet. QtXmlPatternszZawarto[ listy nie widnieje na li[cie aspektu "enumeration".4List content is not listed in the enumeration facet. QtXmlPatternspZaBadowany plik nie jest poprawnym plikiem ze schematem.Loaded schema file is invalid. QtXmlPatternsNDopasowania uwzgldniaj wielko[ literMatches are case insensitive QtXmlPatternsTyp %1 skBadnika nie mo|e by wywiedziony z typu %2 ktry jest typem skBadnika %3 typu podstawowego %4.JMember type %1 cannot be derived from member type %2 of %3's base type %4. QtXmlPatternsdNie mo|na rozwiza typu %1 skBadnika elementu %2.0Member type %1 of %2 element cannot be resolved. QtXmlPatternsvTyp skBadnika typu prostego %1 nie mo|e by typem zBo|onym.7Member type of simple type %1 cannot be a complex type. QtXmlPatternsImporty moduBw musz pojawi si przed deklaracjami funkcji, zmiennych i opcji.MModule imports must occur before function, variable, and option declarations. QtXmlPatternsvDzielenie modulo (%1) przez zero (%2) jest niezdefiniowane.0Modulus division (%1) by zero (%2) is undefined. QtXmlPatternsJMiesic %1 jest poza zakresem %2..%3.%Month %1 is outside the range %2..%3. QtXmlPatterns`Znaleziono wicej ni| jedn warto[ dla pola %1.'More than one value found for field %1. QtXmlPatternsMno|enie warto[ci typu %1 przez %2 lub %3 (plus lub minus nieskoDczono[) jest niedozwolone.YMultiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed. QtXmlPatternsPrzestrzeD nazw %1 mo|e by jedynie powizana z %2 (w przeciwnym wypadku jest ona domy[lnie zadeklarowana).ONamespace %1 can only be bound to %2 (and it is, in either case, pre-declared). QtXmlPatternsDeklaracje przestrzeni nazw musz pojawi si przed deklaracjami funkcji, zmiennych i opcji.UNamespace declarations must occur before function, variable, and option declarations. QtXmlPatternsPrzedrostek przestrzeni nazw wystpujcy w peBnej nazwie %1 nie jest zdefiniowany.5Namespace prefix of qualified name %1 is not defined. QtXmlPatterns:Przekroczony czas poBczenia.Network timeout. QtXmlPatternsRBrak dostpnej definicji dla elementu %1.'No definition for element %1 available. QtXmlPatterns(Zewntrzne funkcje nie s obsBugiwane. Wszystkie obsBugiwane funkcje mog by u|ywane bezpo[rednio, bez ich uprzedniego deklarowania jako zewntrzne{No external functions are supported. All supported functions can be used directly, without first declaring them as external QtXmlPatternsX{adna funkcja o nazwie %1 nie jest dostpna.&No function with name %1 is available. QtXmlPatternsX{adna funkcja w postaci %1 nie jest dostpna*No function with signature %1 is available QtXmlPatternsv{adna przestrzeD nazw nie jest powizana z przedrostkiem %1-No namespace binding exists for the prefix %1 QtXmlPatterns{adna przestrzeD nazw nie jest powizana z przedrostkiem %1 w %23No namespace binding exists for the prefix %1 in %2 QtXmlPatterns\Brak warto[ci do ktrej odwoBuje si klucz %1./No referenced value found for key reference %1. QtXmlPatternsVBrak zdefiniowanego schematu dla walidacji.!No schema defined for validation. QtXmlPatternsBSzablon o nazwie %1 nie istnieje.No template by name %1 exists. QtXmlPatternsfBrak warto[ci dla zewntrznej zmiennej o nazwie %1.=No value is available for the external variable with name %1. QtXmlPatterns@Zmienna o nazwie %1 nie istniejeNo variable with name %1 exists QtXmlPatternshZnaleziono nieunikatow warto[ dla ograniczenia %1.)Non-unique value found for constraint %1. QtXmlPatternsWyra|enia "pragma" nie s obsBugiwane. Dlatego musi wystpi wyra|enie zastpcze^None of the pragma expressions are supported. Therefore, a fallback expression must be present QtXmlPatterns>Zapis %1 jest ju| zdefiniowany.Notation %1 already defined. QtXmlPatterns|Zapis zawarto[ci nie widnieje na li[cie aspektu "enumeration".8Notation content is not listed in the enumeration facet. QtXmlPatterns~Dozwolone s jedynie aspekty %1 i %2 podczas wywodzenia z unii.8Only %1 and %2 facets are allowed when derived by union. QtXmlPatterns~Tylko jedna deklaracja %1 mo|e si pojawi w prologu zapytania.6Only one %1 declaration can occur in the query prolog. QtXmlPatternsJMo|e wystpi tylko jeden element %1.Only one %1-element can appear. QtXmlPatternsObsBugiwane jest jedynie "Unicode Codepoint Collation" (%1), %2 nie jest obsBugiwane.IOnly the Unicode Codepoint Collation is supported(%1). %2 is unsupported. QtXmlPatternstTylko przedrostek %1 mo|e by powizany z %2 i vice versa.5Only the prefix %1 can be bound to %2 and vice versa. QtXmlPatternsOperator %1 nie mo|e by u|yty dla atomowych warto[ci typu %2 i %3.>Operator %1 cannot be used on atomic values of type %2 and %3. QtXmlPatternsVOperator %1 nie mo|e by u|yty dla typu %2.&Operator %1 cannot be used on type %2. QtXmlPatternsRPrzepeBnienie: Nie mo|na wyrazi daty %1."Overflow: Can't represent date %1. QtXmlPatternsTPrzepeBnienie: Data nie mo|e by wyra|ona.$Overflow: Date can't be represented. QtXmlPatterns&BBd parsowania: %1Parse error: %1 QtXmlPatternsJElement zawiera nieokre[lone d|okery..Particle contains non-deterministic wildcards. QtXmlPatternsPrzedrostek %1 mo|e by jedynie powizany z %2 (w przeciwnym wypadku jest on domy[lnie zadeklarowany).LPrefix %1 can only be bound to %2 (and it is, in either case, pre-declared). QtXmlPatterns`Przedrostek %1 jest ju| zadeklarowany w prologu.,Prefix %1 is already declared in the prolog. QtXmlPatternsjPrzedrostek w peBnej nazwie %1 nie jest zdefiniowany.+Prefix of qualified name %1 is not defined. QtXmlPatternsrPrzeksztaBcenie %1 do %2 mo|e spowodowa utrat precyzji./Promoting %1 to %2 may cause loss of precision. QtXmlPatterns\Zawarto[ QName koliduje z aspektem "pattern".+QName content does not match pattern facet. QtXmlPatternszZawarto[ QName nie widnieje na li[cie aspektu "enumeration".5QName content is not listed in the enumeration facet. QtXmlPatterns`Nie mo|na rozwiza odwoBania %1 do elementu %2..Reference %1 of %2 element cannot be resolved. QtXmlPatternsTWymagana liczno[ wynosi %1; otrzymano %2./Required cardinality is %1; got cardinality %2. QtXmlPatternsbOdnaleziono typ %2, lecz wymaganym typem jest %1.&Required type is %1, but %2 was found. QtXmlPatternsPrzetwarzanie arkusza XSL-T w wersji 1.0 przez procesor w wersji 2.0.5Running an XSL-T 1.0 stylesheet with a 2.0 processor. QtXmlPatternsxWarto[ liczby caBkowitej koliduje z aspektem "totalDigits".?Signed integer content does not match in the totalDigits facet. QtXmlPatternspWarto[ liczby caBkowitej koliduje z aspektem "pattern".4Signed integer content does not match pattern facet. QtXmlPatternszWarto[ liczby caBkowitej koliduje z aspektem "maxExclusive".=Signed integer content does not match the maxExclusive facet. QtXmlPatternszWarto[ liczby caBkowitej koliduje z aspektem "maxInclusive".=Signed integer content does not match the maxInclusive facet. QtXmlPatternszWarto[ liczby caBkowitej koliduje z aspektem "minExclusive".=Signed integer content does not match the minExclusive facet. QtXmlPatternszWarto[ liczby caBkowitej koliduje z aspektem "minInclusive".=Signed integer content does not match the minInclusive facet. QtXmlPatternsWarto[ liczby caBkowitej nie widnieje na li[cie aspektu "enumeration".>Signed integer content is not listed in the enumeration facet. QtXmlPatterns|Typem podstawowym typu prostego %1 mo|e by tylko typ atomowy.=Simple type %1 can only have simple atomic type as base type. QtXmlPatternsTyp prosty %1 nie mo|e wywodzi si z %2 poniewa| ten ostatni jest zdefiniowany jako koDcowy.PSimple type %1 cannot derive from %2 as the latter defines restriction as final. QtXmlPatternsTyp prosty %1 nie mo|e mie bezpo[redniego typu podstawowego %2./Simple type %1 cannot have direct base type %2. QtXmlPatternsZTyp prosty %1 posiada niedozwolony aspekt %2.2Simple type %1 contains not allowed facet type %2. QtXmlPatternsbTyp prosty %1 nie mo|e mie typu podstawowego %2.3Simple type %1 is not allowed to have base type %2. QtXmlPatterns\Typ prosty %1 mo|e jedynie posiada aspekt %2.0Simple type %1 is only allowed to have %2 facet. QtXmlPatternsTTyp prosty zawiera niedozwolony aspekt %1.*Simple type contains not allowed facet %1. QtXmlPatternsTyp prosty w elemencie wywiedzionym %1 nie mo|e by poprawnie wywiedziony z elementu podstawowego.NSimple type of derived element %1 cannot be validly derived from base element. QtXmlPatternsPPodany typ %1 nie jest schematowi znany.-Specified type %1 is not known to the schema. QtXmlPatternsPodany typ %1 nie jest poprawnie zastpowalny typem elementu %2.DSpecified type %1 is not validly substitutable with element type %2. QtXmlPatternsPodawanie: use='prohibited' wewntrz grupy atrybutw nie przynosi |adnego efektu.DSpecifying use='prohibited' inside an attribute group has no effect. QtXmlPatternsXWarto[ cigu koliduje z aspektem "pattern".,String content does not match pattern facet. QtXmlPatternsVWarto[ cigu koliduje z aspektem "length"./String content does not match the length facet. QtXmlPatterns\Warto[ cigu koliduje z aspektem "maxLength".2String content does not match the maxLength facet. QtXmlPatterns\Warto[ cigu koliduje z aspektem "minLength".2String content does not match the minLength facet. QtXmlPatternsvWarto[ cigu nie widnieje na li[cie aspektu "enumeration".6String content is not listed in the enumeration facet. QtXmlPatternsbGrupa zastpujca %1 posiada cykliczn definicj..Substitution group %1 has circular definition. QtXmlPatternslNie mo|na rozwiza grupy zastpujcej %1 elementu %2.7Substitution group %1 of %2 element cannot be resolved. QtXmlPatterns$Docelowa przestrzeD nazw %1 zaimportowanego schematu jest r|na od docelowej przestrzeni nazw %2 ktra jest zdefiniowana w schemacie importujcym.tTarget namespace %1 of imported schema is different from the target namespace %2 as defined by the importing schema. QtXmlPatternsDocelowa przestrzeD nazw %1 zaBczonego schematu jest r|na od docelowej przestrzeni nazw %2 ktra jest zdefiniowana w schemacie zaBczajcym.tTarget namespace %1 of included schema is different from the target namespace %2 as defined by the including schema. QtXmlPatternsZWzBy tekstowe s niedozwolone w tym miejscu.,Text nodes are not allowed at this location. QtXmlPatternsrTekst ani odwoBanie nie s dozwolone wewntrz elementu %17Text or entity references not allowed inside %1 element QtXmlPatternsFO[ %1 nie jest obsBugiwana w XQuery$The %1-axis is unsupported in XQuery QtXmlPatternsCecha "Import schematu" nie jest obsBugiwana, dlatego deklaracje %1 nie mog pojawi.WThe Schema Import feature is not supported, and therefore %1 declarations cannot occur. QtXmlPatternsCecha "Walidacja schematu" nie jest obsBugiwana. Dlatego te| wyra|enia %1 nie mog by u|yte.VThe Schema Validation Feature is not supported. Hence, %1-expressions may not be used. QtXmlPatterns>URI nie mo|e posiada fragmentuThe URI cannot have a fragment QtXmlPatternstAtrybut %1 mo|e wystpi jedynie w pierwszym elemencie %2.9The attribute %1 can only appear on the first %2 element. QtXmlPatternszAtrybut %1 nie mo|e wystpi w %2 kiedy jest on potomkiem %3.?The attribute %1 cannot appear on %2, when it is a child of %3. QtXmlPatternsKod %1 ktry pojawiB si w %2 i ktry u|ywa kodowania %3 jest niepoprawnym znakiem XML.QThe codepoint %1, occurring in %2 using encoding %3, is an invalid XML character. QtXmlPatternspDane instrukcji przetwarzania nie mog zawiera cigu %1AThe data of a processing instruction cannot contain the string %1 QtXmlPatternsLDomy[lna kolekcja jest niezdefiniowana#The default collection is undefined QtXmlPatternsDEnkodowanie %1 jest niepoprawne. Mo|e ono zawiera jedynie znaki alfabetu BaciDskiego, nie mo|e zawiera spacji i musi by dopasowane do wyra|enia regularnego %2.The encoding %1 is invalid. It must contain Latin characters only, must not contain whitespace, and must match the regular expression %2. QtXmlPatternsPierwszy argument w %1 nie mo|e by typu %2. Musi on by typu liczbowego: xs:yearMonthDuration lub xs:dayTimeDuration.uThe first argument to %1 cannot be of type %2. It must be a numeric type, xs:yearMonthDuration or xs:dayTimeDuration. QtXmlPatternsPierwszy argument w %1 nie mo|e by typu %2. Musi on by typu: %3, %4 lub %5.PThe first argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. QtXmlPatterns6Fokus jest niezdefiniowany.The focus is undefined. QtXmlPatterns\Inicjalizacja zmiennej %1 zale|y od niej samej3The initialization of variable %1 depends on itself QtXmlPatternsnElement %1 nie zostaB dopasowany do wymaganego typu %2./The item %1 did not match the required type %2. QtXmlPatternsnSBowo kluczowe %1 nie mo|e wystpi z inn nazw trybu.5The keyword %1 cannot occur with any other mode name. QtXmlPatternsOstatni krok w [cie|ce musi zawiera albo wzBy albo warto[ci atomowe. Nie mo|e zawiera obu jednocze[nie.kThe last step in a path must contain either nodes or atomic values. It cannot be a mixture between the two. QtXmlPatternsTCecha "Import moduBu" nie jest obsBugiwana*The module import feature is not supported QtXmlPatterns^Nazwa %1 nie odpowiada |adnemu typowi schematu..The name %1 does not refer to any schema type. QtXmlPatternsNazwa dla wyliczonego atrybutu nie mo|e zawiera przestrzeni nazw URI %1 z lokaln nazw %2.ZThe name for a computed attribute cannot have the namespace URI %1 with the local name %2. QtXmlPatterns Nazwa zmiennej powizanej w wyra|eniu "for" musi by inna od zmiennej pozycjonujcej. W zwizku z tym dwie zmienne o nazwie %1 koliduj ze sob.The name of a variable bound in a for-expression must be different from the positional variable. Hence, the two variables named %1 collide. QtXmlPatternsNazwa dodatkowego wyra|enia musi znajdowa sie w przestrzeni nazw.;The name of an extension expression must be in a namespace. QtXmlPatternsNazwa opcji musi posiada przedrostek. Nie istnieje domy[lna przestrzeD nazw dla opcji.TThe name of an option must have a prefix. There is no default namespace for options. QtXmlPatternshPrzestrzeD nazw %1 jest zarezerwowana, dlatego funkcje zdefiniowane przez u|ytkownika nie mog jej u|y. Sprbuj predefiniowany przedrostek %2, ktry istnieje w takich przypadkach.The namespace %1 is reserved; therefore user defined functions may not use it. Try the predefined prefix %2, which exists for these cases. QtXmlPatternsPrzestrzeD nazw URI nie mo|e by pustym cigiem w powizaniu z przedrostkiem, %1.JThe namespace URI cannot be the empty string when binding to a prefix, %1. QtXmlPatternsPrzestrzeD nazw URI nie mo|e by %1 w nazwie dla obliczonego atrybutu.DThe namespace URI in the name for a computed attribute cannot be %1. QtXmlPatternsPrzestrzeD nazw URI nie mo|e by staB i nie mo|e u|ywa zawartych w niej wyra|eD.IThe namespace URI must be a constant and cannot use enclosed expressions. QtXmlPatternsJPrzestrzeD nazw dla funkcji zdefiniowanej przez u|ytkownika nie mo|e by pusta (sprbuj predefiniowany przedrostek %1, ktry stworzono specjalnie do takich sytuacji)yThe namespace for a user defined function cannot be empty (try the predefined prefix %1 which exists for cases like this) QtXmlPatterns0PrzestrzeD nazw dla funkcji zdefiniowanej przez u|ytkownika w module bibliotecznym musi odpowiada przestrzeni nazw moduBu. Powinna to by %1 zamiast %2The namespace of a user defined function in a library module must be equivalent to the module namespace. In other words, it should be %1 instead of %2 QtXmlPatternsZnormalizowana forma %1 nie jest obsBugiwana. ObsBugiwanymi formami s: %2, %3, %4 i %5 oraz pusta forma (brak normalizacji).The normalization form %1 is unsupported. The supported forms are %2, %3, %4, and %5, and none, i.e. the empty string (no normalization). QtXmlPatternsPrzekazany jest parametr %1 lecz |aden odpowiadajcy mu %2 nie istnieje.;The parameter %1 is passed, but no corresponding %2 exists. QtXmlPatternsWymagany jest parametr %1 lecz |aden odpowiadajcy mu %2 nie zostaB dostarczony.BThe parameter %1 is required, but no corresponding %2 is supplied. QtXmlPatternsLPrzedrostek %1 nie mo|e by powizany.The prefix %1 cannot be bound. QtXmlPatternsPrzedrostek %1 nie mo|e by powizany. Jest on domy[lnie powizany z przestrzeni nazw %2.SThe prefix %1 cannot be bound. By default, it is already bound to the namespace %2. QtXmlPatternslPrzedrostek musi by poprawnym %1, ktrym %2 nie jest./The prefix must be a valid %1, which %2 is not. QtXmlPatternsGBwnym wzBem drugiego argumentu w funkcji %1 musi by wzeB "document". %2 nie jest wzBem "document".gThe root node of the second argument to function %1 must be a document node. %2 is not a document node. QtXmlPatternsDrugi argument w %1 nie mo|e by typu %2. Musi on by typu: %3, %4 lub %5.QThe second argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. QtXmlPatternsDocelowa nazwa w instrukcji przetwarzania nie mo|e by %1 w |adnej kombinacji wielkich i maBych liter. Dlatego nazwa %2 jest niepoprawna.~The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, %2 is invalid. QtXmlPatternsfDocelowa przestrzeD nazw dla %1 nie mo|e by pusta.-The target namespace of a %1 cannot be empty. QtXmlPatternsWarto[ci atrybutu %1 w elemencie %2 musi by %3 albo %4, lecz nie %5.IThe value for attribute %1 on element %2 must either be %3 or %4, not %5. QtXmlPatternsrWarto[ atrybutu %1 musi by typu %2, ktrym nie jest %3.=The value of attribute %1 must be of type %2, which %3 isn't. QtXmlPatternsWarto[ atrybutu wersji XSL-T musi by typu %1, ktrym %2 nie jest.TThe value of the XSL-T version attribute must be a value of type %1, which %2 isn't. QtXmlPatterns4Zmienna %1 jest nieu|ywanaThe variable %1 is unused QtXmlPatterns|Istnieje warto[ IDREF bez odpowiadajcej jej warto[ci ID: %1.6There is one IDREF value with no corresponding ID: %1. QtXmlPatternsProcesor nie obsBuguje schematw, wic %1 nie mo|e zosta u|yte.CThis processor is not Schema-aware and therefore %1 cannot be used. QtXmlPatternsDCzas %1:%2:%3.%4 jest niepoprawny.Time %1:%2:%3.%4 is invalid. QtXmlPatternsCzas 24:%1:%2:%3 jest niepoprawny. Godzina jest 24, ale minuty, sekundy i milisekundy nie s rwnocze[nie zerami;_Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0;  QtXmlPatternsElementy arkusza stylu najwy|szego poziomu musz by w niezerowej przestrzeni nazw, ktr %1 nie jest.NTop level stylesheet elements must be in a non-null namespace, which %1 isn't. QtXmlPatternsxAtrybuty deklaracji przestrzeni nazw maj t sam nazw: %1.OPD}K"mKJ%(5"+;X+;M)+;T:+O,+OL1E@F H42^HYhH6IJ5JjKLD6'L6{PS8dQp^RmW{UZrC[`*[`v\_E_P1UEEVtMJ]2$i$g,3yj>,[h5z9j:SwELEl5%%_72֍֍֍֍0*0O0~0070557 DR Dg+<,S,N\<>FT FNH5H5RH5h2H5VEfGfDvfPmfb:fyff\hgl@]U]Q!Rhc!`CV`ypDe$XeSehį]į^ y{~R^R $ni(4dR(4d(5d(5d*y+"*y*yZt*Tq*09@*0+Fo+Fd+L5+f+f[R+zB+++++Z+zB++Ma+[+r+++į++į^+į[+B7.; @C:F0iFn46Fn4δGMHw9*Hw9NHxI'iI@IJ++J6,J6DJ6NuJ6SFJ6KJ6J6SJ6@JcbeKQxK_LZ6NLYLDILbM5SMbmMelMNk/O|CPFE/5PFEPFEQlRmMR|Rm~S8^TITʴT&PU?^U|KrU}nV1-V1VlvVV{)V@TVnW\WTWT \WT@XPX|X˙Q?XAYnY[YBYcxZgBZknZp*\B\]4\]4Jz\\atgc |^ďvL@vi42fy4L5.6CjIA'0[P[$I=yTɵnEɵniɵnnɵnɵn*ɵn־ɵnfɵn":| B'*Aq&MEaeqG dH?<Ipn5#Q%UT(Ŏe_*4ل-ctV25vp?t1C"CCe"D""bD1wM%Q~1caR?[e fPl%oR=or~xw^x#|{yc+Glz>Wa22e{'i.ToRuAig6 dyur  Ydk 3"l)='-z/=ND!1$=5~v< )?2̇?NM{{Nky&Ui<]% `G`bjtslgUlyzl}sToio3vtyE(vty-.1m"7`+)6L6961^z3V+TZRKTn=~.*YTA)y}E)E}Q* }{]=8AAx?H>[yLPnHa> x%`mMMEtE~)w)w' IV Kn ,!ec&Q)D*/eE50y;ByFKOGZf\\cJ`cփ=fqg&4jCe"qRtuIu(8!}kaMo'~{ vy d$$jn(E_r^KK֊C nT,u;yASj.&H. /wIxSA1MgR>YMtYM~xh^1i7Xsscw'TuVxhyۊCpN?P]&]hRI{I)I*LIN:ItINII:Y:Qi:y:9/9i9988IuwKNXUM3R-V|n']t]jk@y^.{y5t{FcA:on[G%sصѱǥlB]+B`n6<t0{y4/ ;p[xApr9\oCso1%@C-5?>C^ƨƨP˾ҝziTէ?OZ>zWߺrV&f{^!# $~ba~bgoM!+u{+3!/q/4~6 B!? 2ADGt5GbfLAUXOrGPѧNQZSnUUzUTqZ4Z4Z5 Z5B[6]k*aq^n_p*eeiyoikQoNy;{}u@!}w(}wF}wz} Wxr+pBVvt~t .(.F3WPiU8aD]D\Y t9tt_ ?+TFʢI[ʢުƴ8dJNdd:dߚd0y59эr+NS P9UǐdKBhfw hC '+,Dx 2T6z?;CU]mD@J0K &K|wU|4+\ !ar!t|(^||xp| u}wZg}$(j}$FY}$zϗZvDrqoK<Of+j·+"·Vj׳  T/Eru%5gbTSi~-i9%kwh#%'ʾ.5kE=1=W?I?CtIjV%XU `O`,bDCbG`fdf=gA&hIlBi$Ԥx1 4dz*22|QRdU35mzUc.KE{/rXkVms^lNen(AJb†5iidCQʴ5ʴ5ʶZ^ Ԅ5۔# ;DdF5.F5Y?pII`As I }$ qe} ڤ ڥ dL Es E/ Ac!I Acc Ie 35 $ , g  n{ i Y+0l K- _ 팤L %'^ , <[ = qo  D  } oV ) */2 .> 7u1 ;z =sK B J"@ J" K2 Rۮ Ty T^3s Uj4 ]P ` `! b c() cE O dO2 eo ea, e{0 f1v f* g5U gnb k,# rD")Q t% AQ CUq E9 ItZ Ljk L9n Lf Mc\R SK V4 ]$GL f) f)\ f= io> m`1\ w s yrK  H H[ < $] .@Dh ' iC  ,L \ ~ %K J J_[ v t.ڣ kY Ӈ, Mh * N> ̺r -Ds . ۷ k*] k} U) v </ - W1 0? w  z+y7  x  Ik` %q4 ?q g xH6  x .A 7F >{ >|c >} >m > >~ > >U ?t|d DTY I@ P@ RVd RV RV S.N SG Sg Y Y [a hۮj j7oZ" pA . B  TFq TQ TF T  U H k S )d T ` .F . .[ .x . .#w  Mf a y/n ҂ w %uo ut H |-~ (h 9f t" aTx :b ʜ@1 #= (I$G +>C* 0E 64. ;ɾ[E Fgr K93 PtW Pt fe' fep g iFC6 i` i7d jӮ m9l nw u? uS v& v{ ' w' wE wz w}( w}F w}zJ |[  u ~ %e^ J0 ^ } Rc1 P  xN Uh ɰe_  X & D$ b +/ t5 t5p  ! ) 1RwT;lgT<**9*/E:/Eb=ByI_sOO&XRub'[ a.ODgcHnyGvɅ%Py$'~[4w4eSi^(Ǘyw:B8TbXr5ݖ)[yr  ^lD"#$G$U#%4RG%4g -v_0i)=\0>F1c*2wT=D2PH#@JdKLoL$.c5)4c5|4g3 iCLpyC3]{~a<6$qY5&m&w`[a^>bm#fNY;r E"~r;CrYkyM B[Pt2>DШ"hdUdi<html>A trocar para o dispositivo de reproduo udio <b>%1</b><br/>pois est disponvel e tem a prioridade mais alta.</html>xSwitching to the audio playback device %1
which just became available and has higher preference. AudioOutput<html>O dispositivo de reproduo udio <b>%1</b> no est a funcionar.<br/> <b>%2</b> ser utilizado.</html>^The audio playback device %1 does not work.
Falling back to %2. AudioOutput2Utilizar o dispositivo %1Revert back to device '%1' AudioOutput Fechar separador Close Tab CloseButtonSobre o %1About %1MAC_APPLICATION_MENUOcultar %1Hide %1MAC_APPLICATION_MENUOcultar outros Hide OthersMAC_APPLICATION_MENUPreferncias &Preferences...MAC_APPLICATION_MENUFechar %1Quit %1MAC_APPLICATION_MENUServiosServicesMAC_APPLICATION_MENUMostrar tudoShow AllMAC_APPLICATION_MENUAcessibilidade AccessibilityPhonon::Comunicaes CommunicationPhonon:: JogosGamesPhonon:: MsicaMusicPhonon::Notificaes NotificationsPhonon:: VdeoVideoPhonon::Aviso: parece que o pacote GStremaer Base no est instalado. Algumas funcionalidades no estaro ativas~Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabledPhonon::Gstreamer::BackendAviso: parece que o pacote gstreamer0.10-plugins-good no est instalado. Algumas funcionalidades no estaro ativas.Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled.Phonon::Gstreamer::BackendExistem codificadores em falta. tem que instalar os codificadores seguintes para reproduzir este contedo: %0`A required codec is missing. You need to install the following codec(s) to play this content: %0Phonon::Gstreamer::MediaObject&No foi possvel iniciar a reproduo. Verifique a sua instalao GStreamer e certifique-se que tem o pacote libgstreamer-plugins-base instalado.wCannot start playback. Check your Gstreamer installation and make sure you have libgstreamer-plugins-base installed.Phonon::Gstreamer::MediaObjectdNo foi possvel descodificar a origem multimdia.Could not decode media source.Phonon::Gstreamer::MediaObject^No foi possvel localizar a origem multimdia.Could not locate media source.Phonon::Gstreamer::MediaObjectNo foi possvel abrir o dispositivo udio pois j est a ser utilizado.:Could not open audio device. The device is already in use.Phonon::Gstreamer::MediaObjectVNo foi possvel abrir a origem multimdia.Could not open media source.Phonon::Gstreamer::MediaObject.Tipo de fonte invlido.Invalid source type.Phonon::Gstreamer::MediaObjectUtilize este controlo para ajustar o volume. A posio esquerda 0% e direita %1%WUse this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1%Phonon::VolumeSliderVolume: %1% Volume: %1%Phonon::VolumeSlider&%1, %2 no definido%1, %2 not definedQ3AccelB%1 ambguo e no foi processadoAmbiguous %1 not handledQ3AccelEliminarDelete Q3DataTable FalsoFalse Q3DataTableInserirInsert Q3DataTableVerdadeiroTrue Q3DataTableAtualizarUpdate Q3DataTablez%1 Ficheiro no encontrado. Verifique a localizao e o nome.+%1 File not found. Check path and filename. Q3FileDialogE&liminar&Delete Q3FileDialog&No&No Q3FileDialog&Aceitar&OK Q3FileDialog &Abrir&Open Q3FileDialog&Mudar nome&Rename Q3FileDialog&Gravar&Save Q3FileDialogNo &ordenado &Unsorted Q3FileDialog&Sim&Yes Q3FileDialog`<qt>Tema certeza que quer eliminar %1 "%2"?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialog,Todos os ficheiros (*) All Files (*) Q3FileDialog0Todos os ficheiros (*.*)All Files (*.*) Q3FileDialogAtributos Attributes Q3FileDialog RecuarBack Q3FileDialogCancelarCancel Q3FileDialog0Copiar ou mover ficheiroCopy or Move a File Q3FileDialog Criar nova pastaCreate New Folder Q3FileDialogDataDate Q3FileDialogEliminar %1 Delete %1 Q3FileDialogVista detalhada Detail View Q3FileDialogDiretrioDir Q3FileDialogDiretrios Directories Q3FileDialogDiretrio: Directory: Q3FileDialogErroError Q3FileDialogFicheiroFile Q3FileDialog$&Nome do ficheiro: File &name: Q3FileDialog$&Tipo de ficheiro: File &type: Q3FileDialog&Localizar diretrioFind Directory Q3FileDialogInacessvel Inaccessible Q3FileDialogVista em lista List View Q3FileDialogProcurar &em: Look &in: Q3FileDialogNomeName Q3FileDialogNova pasta New Folder Q3FileDialogNova pasta %1 New Folder %1 Q3FileDialogNova pasta 1 New Folder 1 Q3FileDialog$Subir um diretrioOne directory up Q3FileDialog AbrirOpen Q3FileDialog Abrir Open  Q3FileDialogFPr-visualizar contedo do ficheiroPreview File Contents Q3FileDialogLPr-visualizar informaes do ficheiroPreview File Info Q3FileDialogR&ecarregarR&eload Q3FileDialogApenas leitura Read-only Q3FileDialog"Leitura e escrita Read-write Q3FileDialogLeitura: %1Read: %1 Q3FileDialogGravar comoSave As Q3FileDialog&Escolha o diretrioSelect a Directory Q3FileDialog4Mostrar ficheiros &ocultosShow &hidden files Q3FileDialogTamanhoSize Q3FileDialog OrdemSort Q3FileDialog"Ordenar por &data Sort by &Date Q3FileDialog"Ordenar por &nome Sort by &Name Q3FileDialog(Ordenar por &tamanho Sort by &Size Q3FileDialogEspecialSpecial Q3FileDialog,Ligao para diretrioSymlink to Directory Q3FileDialog*Ligao para ficheiroSymlink to File Q3FileDialog*Ligao para especialSymlink to Special Q3FileDialogTipoType Q3FileDialogApenas escrita Write-only Q3FileDialogEscrita: %1 Write: %1 Q3FileDialogo diretrio the directory Q3FileDialogo ficheirothe file Q3FileDialoga ligao the symlink Q3FileDialogJNo foi possvel criar o diretrio %1Could not create directory %1 Q3LocalFs2No foi possvel abrir %1Could not open %1 Q3LocalFsFNo foi possvel ler o diretrio %1Could not read directory %1 Q3LocalFsfNo foi possvel remover o ficheiro ou diretrio %1%Could not remove file or directory %1 Q3LocalFsXNo foi possvel mudar o nome de %1 para %2Could not rename %1 to %2 Q3LocalFs8Nao foi possvel escrever %1Could not write %1 Q3LocalFsPersonalizar... Customize... Q3MainWindowAlinharLine up Q3MainWindowJOperao interrompida pelo utilizadorOperation stopped by the userQ3NetworkProtocolCancelarCancelQ3ProgressDialogAplicarApply Q3TabDialogCancelarCancel Q3TabDialogPredefiniesDefaults Q3TabDialog AjudaHelp Q3TabDialogAceitarOK Q3TabDialog&Copiar&Copy Q3TextEdit Co&lar&Paste Q3TextEdit&Refazer&Redo Q3TextEditAn&ular&Undo Q3TextEdit LimparClear Q3TextEditCor&tarCu&t Q3TextEditSelecionar tudo Select All Q3TextEdit FecharClose Q3TitleBarFecha a janelaCloses the window Q3TitleBarNContm comandos para manipular a janela*Contains commands to manipulate the window Q3TitleBarvMostra o nome da janela e contm controlos para a manipularFDisplays the name of the window and contains controls to manipulate it Q3TitleBar@Coloca a janela em ecr completoMakes the window full screen Q3TitleBarMaximizarMaximize Q3TitleBarMinimizarMinimize Q3TitleBar.Tira a janela da frenteMoves the window out of the way Q3TitleBarZColoca uma janela maximizada no estado normal&Puts a maximized window back to normal Q3TitleBarZColoca uma janela minimizada no estado normalPuts a minimized back to normal Q3TitleBar Restaurar abaixo Restore down Q3TitleBarRestaurar acima Restore up Q3TitleBarSistemaSystem Q3TitleBarMais...More... Q3ToolBar(desconhecido) (unknown) Q3UrlOperatorO protocolo %1 no tem suporte cpia ou movimentao de ficheiros ou diretriosIThe protocol `%1' does not support copying or moving files or directories Q3UrlOperatorxO protocolo %1 no tem suporte criao de novos diretrios;The protocol `%1' does not support creating new directories Q3UrlOperatorlO protocolo %1 no tem suporte obteno de ficheiros0The protocol `%1' does not support getting files Q3UrlOperatorfO protocolo %1 tem suporte a listagem de diretrios6The protocol `%1' does not support listing directories Q3UrlOperatornO protocolo %1 no tem suporte colocao de ficheiros0The protocol `%1' does not support putting files Q3UrlOperatorO protocolo %1 no tem suportes a remoo de ficheiros ou diretrios@The protocol `%1' does not support removing files or directories Q3UrlOperatorO protocolo %1 no tem suporte alterao de nome de ficheiros ou diretrios@The protocol `%1' does not support renaming files or directories Q3UrlOperator<O protocolo %1 no suportado"The protocol `%1' is not supported Q3UrlOperator&Cancelar&CancelQ3Wizard&Terminar&FinishQ3Wizard Aj&uda&HelpQ3WizardAva&nar >&Next >Q3Wizard< &Recuar< &BackQ3Wizard Ligao recusadaConnection refusedQAbstractSocket Ligao expiradaConnection timed outQAbstractSocket.Servidor no encontradoHost not foundQAbstractSocket"Rede inalcanvelNetwork unreachableQAbstractSocketDOperao no suportada pelo socket$Operation on socket is not supportedQAbstractSocket Socket desligadoSocket is not connectedQAbstractSocket6Operao de socket expiradaSocket operation timed outQAbstractSocket &Selecionar tudo &Select AllQAbstractSpinBox &Acima&Step upQAbstractSpinBoxA&baixo Step &downQAbstractSpinBox AtivarActivate QApplicationHAtiva a janela principal do programa#Activates the program's main window QApplicationhO executvel %1 requer Qt %2 e foi encontrado Qt %3.,Executable '%1' requires Qt %2, found Qt %3. QApplication8Erro de incompatibilidade QtIncompatible Qt Library Error QApplicationLTRQT_LAYOUT_DIRECTION QApplication&Cancelar&Cancel QAxSelect&Objeto COM: COM &Object: QAxSelectAceitarOK QAxSelect4Escolha o controlo ActiveXSelect ActiveX Control QAxSelect AtivarCheck QCheckBoxComutarToggle QCheckBoxDesativarUncheck QCheckBoxD&Adicionar s cores personalizadas&Add to Custom Colors QColorDialogCores &bsicas &Basic colors QColorDialog*&Cores personalizadas&Custom colors QColorDialogV&erde:&Green: QColorDialogVe&rmelho:&Red: QColorDialog&Saturao:&Sat: QColorDialog &Val:&Val: QColorDialogCanal a&fa:A&lpha channel: QColorDialog &Azul:Bl&ue: QColorDialog C&or:Hu&e: QColorDialogEscolha a cor Select Color QColorDialog FecharClose QComboBox FalsoFalse QComboBox AbrirOpen QComboBoxVerdadeiroTrue QComboBox%1: falha ftok%1: ftok failedQCoreApplication%1: chave vazia%1: key is emptyQCoreApplication4%1: incapaz de criar chave%1: unable to make keyQCoreApplicationLNo foi possvel finalizar a transaoUnable to commit transaction QDB2Driver(Ligao no possvelUnable to connect QDB2DriverFNo foi possvel anular a transaoUnable to rollback transaction QDB2Driver`No foi possvel ativar a finalizao automticaUnable to set autocommit QDB2DriverHNo foi possvel associar a varivelUnable to bind variable QDB2ResultJNo foi possvel executar a instruoUnable to execute statement QDB2ResultBNo foi possvel obter o primeiroUnable to fetch first QDB2ResultBNo foi possvel obter o seguinteUnable to fetch next QDB2ResultFNo foi possvel obter o registo %1Unable to fetch record %1 QDB2ResultJNo foi possvel preparar a instruoUnable to prepare statement QDB2ResultAMAM QDateTimeEditPMPM QDateTimeEditamam QDateTimeEditpmpm QDateTimeEdit QDialQDialQDialSliderHandle SliderHandleQDialSpeedoMeter SpeedoMeterQDial ProntoDoneQDialogO que isto? What's This?QDialog&Cancelar&CancelQDialogButtonBoxFe&char&CloseQDialogButtonBox&No&NoQDialogButtonBox&Aceitar&OKQDialogButtonBox&Gravar&SaveQDialogButtonBox&Sim&YesQDialogButtonBoxAbortarAbortQDialogButtonBoxAplicarApplyQDialogButtonBoxCancelarCancelQDialogButtonBox FecharCloseQDialogButtonBox"Fechar sem gravarClose without SavingQDialogButtonBoxDescartarDiscardQDialogButtonBoxNo gravar Don't SaveQDialogButtonBox AjudaHelpQDialogButtonBoxIgnorarIgnoreQDialogButtonBoxN&o a tudo N&o to AllQDialogButtonBoxAceitarOKQDialogButtonBox AbrirOpenQDialogButtonBoxReiniciarResetQDialogButtonBox.Restaurar predefiniesRestore DefaultsQDialogButtonBox Tentar novamenteRetryQDialogButtonBox GravarSaveQDialogButtonBoxGravar tudoSave AllQDialogButtonBoxSim &a tudo Yes to &AllQDialogButtonBox&Data de modificao Date Modified QDirModelTipoKind QDirModelNomeName QDirModelTamanhoSize QDirModelTipoType QDirModel FecharClose QDockWidgetDocaDock QDockWidgetFlutuanteFloat QDockWidget MenosLessQDoubleSpinBoxMaisMoreQDoubleSpinBox&Aceitar&OK QErrorMessage@Mo&strar esta mensagem novamente&Show this message again QErrorMessage,Mensagem de depurao:Debug Message: QErrorMessageErro fatal: Fatal Error: QErrorMessage Aviso:Warning: QErrorMessage2No foi possvel criar %1Cannot create %1 for outputQFile2No foi possvel abrir %1Cannot open %1 for inputQFileBNo foi possvel abrir para sadaCannot open for outputQFileZNo foi possvel remover o ficheiro de origemCannot remove source fileQFile>O ficheiro de destino j existeDestination file existsQFile&Erro ao ler o blocoFailure to write blockQFile%1 Diretrio no encontrado. Por favor verifique o nome da pasta.K%1 Directory not found. Please verify the correct directory name was given. QFileDialog%1 Ficheiro no encontrado. Por favor verifique o nome do ficheiro.A%1 File not found. Please verify the correct file name was given. QFileDialog2%1 j existe. Substituir?-%1 already exists. Do you want to replace it? QFileDialogEs&colha&Choose QFileDialogE&liminar&Delete QFileDialog&Nova pasta &New Folder QFileDialog &Abrir&Open QFileDialogMuda&r nome&Rename QFileDialog&Gravar&Save QFileDialogX%1'est protegido contra escrita. Continuar?9'%1' is write protected. Do you want to delete it anyway? QFileDialog,Todos os ficheiros (*) All Files (*) QFileDialog0Todos os ficheiros (*.*)All Files (*.*) QFileDialog.Quer mesmo eliminar %1?!Are sure you want to delete '%1'? QFileDialog RecuarBack QFileDialogLNo foi possvel eliminar o diretrio.Could not delete directory. QFileDialog Criar nova pastaCreate New Folder QFileDialogVista detalhada Detail View QFileDialogDiretrios Directories QFileDialogDiretrio: Directory: QFileDialogUnidadeDrive QFileDialogFicheiroFile QFileDialog$&Nome do ficheiro: File &name: QFileDialog$FIcheiros do tipo:Files of type: QFileDialog&Localizar diretrioFind Directory QFileDialogSeguinteForward QFileDialogVista em lista List View QFileDialogProcurar em:Look in: QFileDialog O meu computador My Computer QFileDialogNova pasta New Folder QFileDialog AbrirOpen QFileDialog$Diretrio superiorParent Directory QFileDialogLocais recentes Recent Places QFileDialogRemoverRemove QFileDialogGravar comoSave As QFileDialogMostrar Show  QFileDialog4Mostrar ficheiros &ocultosShow &hidden files QFileDialogDesconhecidoUnknown QFileDialog %1 GB%1 GBQFileSystemModel %1 KB%1 KBQFileSystemModel %1 MB%1 MBQFileSystemModel %1 TB%1 TBQFileSystemModel%1 bytes%1 bytesQFileSystemModel<b>No pode utilizar o nome "%1".</b><p>Utilize outro nome, com menos caracteres e sem sinais de pontuao.oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModelComputadorComputerQFileSystemModel&Data de modificao Date ModifiedQFileSystemModelNome invlidoInvalid filenameQFileSystemModelTipoKindQFileSystemModel O meu computador My ComputerQFileSystemModelNomeNameQFileSystemModelTamanhoSizeQFileSystemModelTipoTypeQFileSystemModel TodosAny QFontDatabase rabeArabic QFontDatabaseArmnioArmenian QFontDatabaseBengaliBengali QFontDatabase PretoBlack QFontDatabaseNegritoBold QFontDatabaseCirlicoCyrillic QFontDatabaseParcialDemi QFontDatabaseNegrito parcial Demi Bold QFontDatabaseDevanagari Devanagari QFontDatabaseGergioGeorgian QFontDatabase GregoGreek QFontDatabaseGujaratiGujarati QFontDatabaseGurmukhiGurmukhi QFontDatabaseHebraicoHebrew QFontDatabasetlicoItalic QFontDatabaseJaponsJapanese QFontDatabaseKannadaKannada QFontDatabase KhmerKhmer QFontDatabaseCoreanoKorean QFontDatabaseLaosianoLao QFontDatabase LatimLatin QFontDatabase ClaroLight QFontDatabaseMalaialaio Malayalam QFontDatabaseBirmansMyanmar QFontDatabase NomralNormal QFontDatabaseOblquoOblique QFontDatabase OghamOgham QFontDatabase OriyaOriya QFontDatabase RnicoRunic QFontDatabase*Mandarim simplificadoSimplified Chinese QFontDatabaseSinhalaSinhala QFontDatabaseSmbolosSymbol QFontDatabaseSiracoSyriac QFontDatabase TamilTamil QFontDatabase TeluguTelugu QFontDatabase ThaanaThaana QFontDatabaseTailandsThai QFontDatabaseTibetanoTibetan QFontDatabase(Mandarim tradicionalTraditional Chinese QFontDatabaseVietnamita Vietnamese QFontDatabaseTip&o de letra&Font QFontDialog&Tamanho&Size QFontDialogS&ublinhado &Underline QFontDialogEfeitosEffects QFontDialog0&Estilo do tipo de letra Font st&yle QFontDialogAmostraSample QFontDialog.Escolha o tipo de letra Select Font QFontDialog&Rasurado Stri&keout QFontDialog&S&istema de escritaWr&iting System QFontDialogFA alterao de diretrio falhou: %1Changing directory failed: %1QFtp$Ligado ao servidorConnected to hostQFtp*Ligado ao servidor %1Connected to host %1QFtp@A ligao ao servidor falhou: %1Connecting to host failed: %1QFtpLigao fechadaConnection closedQFtp2Ligao de dados recusada&Connection refused for data connectionQFtp>Ligao ao servidor %1 recusadaConnection refused to host %1QFtp>Ligao ao servidor %1 expiradaConnection timed out to host %1QFtp(Ligao a %1 fechadaConnection to %1 closedQFtpBA criao do diretrio falhou: %1Creating directory failed: %1QFtpLA transferncia do ficheiro falhou: %1Downloading file failed: %1QFtp,Servidor %1 encontrado Host %1 foundQFtp4Servidor %1 no encontradoHost %1 not foundQFtp&Servidor encontrado Host foundQFtpFA listagem de diretrios falhou: %1Listing directory failed: %1QFtp2A autenticao falhou: %1Login failed: %1QFtpDesligado Not connectedQFtp@A remoo o diretrio falhou: %1Removing directory failed: %1QFtp@A remoo do ficheiro falhou: %1Removing file failed: %1QFtp"Erro desconhecido Unknown errorQFtp<O envio do ficheiro falhou: %1Uploading file failed: %1QFtp"Erro desconhecido Unknown error QHostInfo.Servidor no encontradoHost not foundQHostInfoAgent:Tipo de endereo desconhecidoUnknown address typeQHostInfoAgent"Erro desconhecido Unknown errorQHostInfoAgent&Requer autenticaoAuthentication requiredQHttp$Ligado ao servidorConnected to hostQHttp*Ligado ao servidor %1Connected to host %1QHttpLigao fechadaConnection closedQHttp Ligao recusadaConnection refusedQHttp8Ligao recusada ou expirada!Connection refused (or timed out)QHttp(Ligao a %1 fechadaConnection to %1 closedQHttp"Dados danificadosData corruptedQHttpPErro ao escrever resposta no dispositivo Error writing response to deviceQHttp(O pedido HTTP falhouHTTP request failedQHttprSolicitada uma ligao HTTPS mas no existe suporte a SSL:HTTPS connection requested but SSL support not compiled inQHttp,Servidor %1 encontrado Host %1 foundQHttp4Servidor %1 no encontradoHost %1 not foundQHttp&Servidor encontrado Host foundQHttp<O servidor requer autenticaoHost requires authenticationQHttp6Corpo parcial HTTP invlidoInvalid HTTP chunked bodyQHttpFCabealho de resposta HTTP invlidoInvalid HTTP response headerQHttp4Nenhum servidor para ligarNo server set to connect toQHttp8Requer autenticao de proxyProxy authentication requiredQHttp6O proxy requer autenticaoProxy requires authenticationQHttpPedido abortadoRequest abortedQHttp.Falha na negociao SSLSSL handshake failedQHttpVO servidor fechou a ligao inesperadamente%Server closed connection unexpectedlyQHttpFMtodo de autenticao desconhecidoUnknown authentication methodQHttp"Erro desconhecido Unknown errorQHttpLEspecificado um protocolo desconhecidoUnknown protocol specifiedQHttp8Tamanho invlido de contedoWrong content lengthQHttp&Requer autenticaoAuthentication requiredQHttpSocketEngineVNo foi recebida uma resposta HTTP do proxy(Did not receive HTTP response from proxyQHttpSocketEngineDErro ao comunicar com o proxy HTTP#Error communicating with HTTP proxyQHttpSocketEngineRErro ao processar a autenticao do proxy/Error parsing authentication request from proxyQHttpSocketEnginexA ligao ao servidor proxy fechou a ligao inesperadamente#Proxy connection closed prematurelyQHttpSocketEngine,Ligao proxy recusadaProxy connection refusedQHttpSocketEngine2O proxy recusou a ligaoProxy denied connectionQHttpSocketEngineFA ligao ao servidor proxy expirou!Proxy server connection timed outQHttpSocketEngine:Servidor proxy no encontradoProxy server not foundQHttpSocketEngineHNo foi possvel iniciar a transaoCould not start transaction QIBaseDriver:Erro ao abrir a base de dadosError opening database QIBaseDriverLNo foi possvel finalizar a transaoUnable to commit transaction QIBaseDriverFNo foi possvel anular a transaoUnable to rollback transaction QIBaseDriverFNo foi possvel alocar a instruoCould not allocate statement QIBaseResultbNo foi possvel descrever a instruo de entrada"Could not describe input statement QIBaseResultLNo foi possvel descrever a expressoCould not describe statement QIBaseResultLNo foi possvel obter o item seguinteCould not fetch next item QIBaseResultDNo foi possvel encontrar o arrayCould not find array QIBaseResultPNo foi possvel obter os dados do arrayCould not get array data QIBaseResultbNo foi possvel obter as informaes da consultaCould not get query info QIBaseResult\No foi possvel obter informao da instruoCould not get statement info QIBaseResultJNo foi possvel preparar a instruoCould not prepare statement QIBaseResultHNo foi possvel iniciar a transaoCould not start transaction QIBaseResultFNo foi possvel fechar a instruoUnable to close statement QIBaseResultLNo foi possvel finalizar a transaoUnable to commit transaction QIBaseResult:No foi possvel criar o BLOBUnable to create BLOB QIBaseResultHNo foi possvel executar a consultaUnable to execute query QIBaseResult:No foi possvel abrir o BLOBUnable to open BLOB QIBaseResult6No foi possvel ler o BLOBUnable to read BLOB QIBaseResult@No foi possvel escrever o BLOBUnable to write BLOB QIBaseResult8Dispositivo sem espao livreNo space left on device QIODeviceBFicheiro ou diretrio inexistenteNo such file or directory QIODevice Permisso negadaPermission denied QIODevice8Demasiados ficheiros abertosToo many open files QIODevice"Erro desconhecido Unknown error QIODevice:Mtodo de introduo Mac OS XMac OS X input method QInputContext8Mtodo de introduo WindowsWindows input method QInputContextXIMXIM QInputContext0Mtodo de introduo XIMXIM input method QInputContext"Indique um valor:Enter a value: QInputDialog@No foi possvel carregar %1: %2Cannot load library %1: %2QLibraryfNo foi possvel processar o smbolo "%1" em %2: %3$Cannot resolve symbol "%1" in %2: %3QLibraryFNo foi possvel descarregar %1: %2Cannot unload library %1: %2QLibrary<No foi possivel mapear %1: %2Could not mmap '%1': %2QLibraryBNo foi possvel desmapear %1: %2Could not unmap '%1': %2QLibrarydDados de verificao do plugin incorrectos em '%1')Plugin verification data mismatch in '%1'QLibraryNO ficheiro %1 no um extra Qt vlido.'The file '%1' is not a valid Qt plugin.QLibraryO extra %1 utiliza uma biblioteca Qt incompatvel. (%2.%3.%4) [%5]=The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]QLibraryO extra %1 utiliza uma biblioteca Qt incompatvel. (no pode misturar bibliotecas de depurao e de verses)WThe plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)QLibraryO extra %1 utiliza uma biblioteca Qt incompatvel. A chave de compilao esperada "%2" obteve "%3"OThe plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"QLibraryJBiblioteca partilhada no encontrada.!The shared library was not found.QLibrary"Erro desconhecido Unknown errorQLibrary&Copiar&Copy QLineEdit Co&lar&Paste QLineEdit&Refazer&Redo QLineEditAn&ular&Undo QLineEditCor&tarCu&t QLineEdit ApagarDelete QLineEditSelecionar tudo Select All QLineEdit4%1: endereo em utilizao%1: Address in use QLocalServer %1: erro no nome%1: Name error QLocalServer(%1: permisso negada%1: Permission denied QLocalServer0%1: erro desconhecido %2%1: Unknown error %2 QLocalServer&%1: erro de ligai%1: Connection error QLocalSocket(%1: ligao recusada%1: Connection refused QLocalSocket4%1: datagrama muito grande%1: Datagram too large QLocalSocket"%1: nome invlido%1: Invalid name QLocalSocket6%1: servidor remoto fechado%1: Remote closed QLocalSocket8%1: erro de acesso ao socket%1: Socket access error QLocalSocket>%1: operao de socket expirada%1: Socket operation timed out QLocalSocket4%1: erro de recurso socket%1: Socket resource error QLocalSocketP%1: a operao do socket no suportada)%1: The socket operation is not supported QLocalSocket*%1: erro desconhecido%1: Unknown error QLocalSocket0%1: erro desconhecido %2%1: Unknown error %2 QLocalSocketHNo foi possvel iniciar a transaoUnable to begin transaction QMYSQLDriverLNo foi possvel finalizar a transaoUnable to commit transaction QMYSQLDriverLNo foi possvel estabelecer a ligaoUnable to connect QMYSQLDriverRNo foi possvel utilizar a base de dadosUnable to open database ' QMYSQLDriverFNo foi possvel anular a transaoUnable to rollback transaction QMYSQLDriverZNo foi possvel associar os valores externosUnable to bind outvalues QMYSQLResultBNo foi possvel associar o valorUnable to bind value QMYSQLResultXNo foi possvel executar a consuta seguinteUnable to execute next query QMYSQLResultHNo foi possvel executar a consultaUnable to execute query QMYSQLResultJNo foi possvel executar a instruoUnable to execute statement QMYSQLResult>No foi possvel obter os dadosUnable to fetch data QMYSQLResultJNo foi possvel preparar a instruoUnable to prepare statement QMYSQLResultLNo foi possvel reiniciar a instruoUnable to reset statement QMYSQLResultZNo foi possvel guardar o resultado seguinteUnable to store next result QMYSQLResultHNo foi possvel guardar o resultadoUnable to store result QMYSQLResultfNo foi possvel guardar os resultados da instruo!Unable to store statement results QMYSQLResult(Sem nome) (Untitled)QMdiArea%1 - [%2] %1 - [%2] QMdiSubWindowFe&char&Close QMdiSubWindow &Mover&Move QMdiSubWindow&Restaurar&Restore QMdiSubWindow&Tamanho&Size QMdiSubWindow - [%1]- [%1] QMdiSubWindow FecharClose QMdiSubWindow AjudaHelp QMdiSubWindowMa&ximizar Ma&ximize QMdiSubWindowMaximizarMaximize QMdiSubWindowMenuMenu QMdiSubWindowMi&nimizar Mi&nimize QMdiSubWindowMinimizarMinimize QMdiSubWindowRestaurarRestore QMdiSubWindow Restaurar abaixo Restore Down QMdiSubWindowEnrolarShade QMdiSubWindow"Man&ter na frente Stay on &Top QMdiSubWindowDesenrolarUnshade QMdiSubWindow FecharCloseQMenuExecutarExecuteQMenu AbrirOpenQMenuSobre o QtAbout Qt QMessageBox AjudaHelp QMessageBox&Ocultar detalhes...Hide Details... QMessageBoxAceitarOK QMessageBox&Mostrar detalhes...Show Details... QMessageBoxEscolha o MI Select IMQMultiInputContextBComutador do mtodo de introduoMultiple input method switcherQMultiInputContextPluginComutador de mtodo deintroduo que utiliza o menu de contexto dos elementos de textoMMultiple input method switcher that uses the context menu of the text widgetsQMultiInputContextPluginXJ existe um socket a receber da mesma porta4Another socket is already listening on the same portQNativeSocketEngineTentativa de utilizao de socket IPv6 numa plataforma sem suporte IPv6=Attempt to use IPv6 socket on a platform with no IPv6 supportQNativeSocketEngine Ligao recusadaConnection refusedQNativeSocketEngine Ligao expiradaConnection timed outQNativeSocketEngineBDatagrama muito grande para envioDatagram was too large to sendQNativeSocketEngine*Servidor inalcanvelHost unreachableQNativeSocketEngine8Descritor de socket invlidoInvalid socket descriptorQNativeSocketEngineErro de rede Network errorQNativeSocketEngine2Operao de rede expiradaNetwork operation timed outQNativeSocketEngine"Rede inalcanvelNetwork unreachableQNativeSocketEngine,Operao em no socketOperation on non-socketQNativeSocketEngineSem recursosOut of resourcesQNativeSocketEngine$Permisso recusadaPermission deniedQNativeSocketEngine>Tipo de protocolo no suportadoProtocol type not supportedQNativeSocketEngine<O endereo no est disponvelThe address is not availableQNativeSocketEngine2O endereo est protegidoThe address is protectedQNativeSocketEngineHO endereo de ligao j est em uso#The bound address is already in useQNativeSocketEngine^O tipo de proxy no vlido para esta operao,The proxy type is invalid for this operationQNativeSocketEngineDO servidor remoto fechou a ligao%The remote host closed the connectionQNativeSocketEngineZNo foi possvel inicia socket de transmisso%Unable to initialize broadcast socketQNativeSocketEnginedNo foi possvel inicializar socket no bloqueante(Unable to initialize non-blocking socketQNativeSocketEngineJNo foi possvel receber uma mensagemUnable to receive a messageQNativeSocketEngineHNo foi possvel enviar uma mensagemUnable to send a messageQNativeSocketEngine2No foi possvel escreverUnable to writeQNativeSocketEngine"Erro desconhecido Unknown errorQNativeSocketEngine@Operao de socket no suportadaUnsupported socket operationQNativeSocketEngine Erro ao abrir %1Error opening %1QNetworkAccessCacheBackendRNo foi possvel abrir %1. um diretrio#Cannot open %1: Path is a directoryQNetworkAccessFileBackend(Erro ao abrir %1: %2Error opening %1: %2QNetworkAccessFileBackend2Erro de leitura em %1: %2Read error reading from %1: %2QNetworkAccessFileBackend\Pedido de abertura de um ficheiro no local %1%Request for opening non-local file %1QNetworkAccessFileBackend2Erro de escrita em %1: %2Write error writing to %1: %2QNetworkAccessFileBackendRNo foi possvel abrir %1. um diretrioCannot open %1: is a directoryQNetworkAccessFtpBackend2Erro ao transferir %1: %2Error while downloading %1: %2QNetworkAccessFtpBackend*Erro ao enviar %1: %2Error while uploading %1: %2QNetworkAccessFtpBackendbErro ao iniciar sesso em %1. Requer autenticao0Logging in to %1 failed: authentication requiredQNetworkAccessFtpBackend:Proxy adequado no encontradoNo suitable proxy foundQNetworkAccessFtpBackend:Proxy adequado no encontradoNo suitable proxy foundQNetworkAccessHttpBackendZErro ao transferir %1. O servidor devolveu %2)Error downloading %1 - server replied: %2 QNetworkReply:O protocolo %1 desconhecidoProtocol "%1" is unknown QNetworkReply$Operao canceladaOperation canceledQNetworkReplyImplHNo foi possvel iniciar a transaoUnable to begin transaction QOCIDriverLNo foi possvel finalizar a transaoUnable to commit transaction QOCIDriver0No foi possvel iniciarUnable to initialize QOCIDriver6No foi possvel autenticarUnable to logon QOCIDriverFNo foi possvel anular a transaoUnable to rollback transaction QOCIDriverFNo foi possvel alocar a instruoUnable to alloc statement QOCIResultpNo foi possvel associar a coluna para execuo em lote'Unable to bind column for batch execute QOCIResultBNo foi possvel associar o valorUnable to bind value QOCIResultZNo foi possvel executar a instruo em lote!Unable to execute batch statement QOCIResultJNo foi possvel executar a instruoUnable to execute statement QOCIResultFNo foi possvel passar ao seguinteUnable to goto next QOCIResultJNo foi possvel preparar a instruoUnable to prepare statement QOCIResultLNo foi possvel finalizar a transaoUnable to commit transaction QODBCDriverLNo foi possvel estabelecer a ligaoUnable to connect QODBCDriverNo foi possvel estabelecer a ligao. O controlador no suporta algumas funes necessriasCUnable to connect - Driver doesn't support all needed functionality QODBCDriverhNo foi possvel desativar a finalizao automticaUnable to disable autocommit QODBCDriver`No foi possvel ativar a finalizao automticaUnable to enable autocommit QODBCDriverFNo foi possvel anular a transaoUnable to rollback transaction QODBCDriver&QODBCResult::reset: no foi possvel definir 'SQL_CURSOR_STATIC' como atributo da instruo. Por favor verifique a configurao do controlador ODBCyQODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResultHNo foi possvel associar a varivelUnable to bind variable QODBCResultJNo foi possvel executar a instruoUnable to execute statement QODBCResult,No foi possvel obterUnable to fetch QODBCResultBNo foi possvel obter o primeiroUnable to fetch first QODBCResult>No foi possvel obter o ltimoUnable to fetch last QODBCResultBNo foi possvel obter o seguinteUnable to fetch next QODBCResultBNo foi possvel obter o anteriorUnable to fetch previous QODBCResultJNo foi possvel preparar a instruoUnable to prepare statement QODBCResult IncioHomeQObject URI invlido: %1Invalid URI: %1QObject(Sem nome de servidorNo host name givenQObject8Operao no suportada em %1Operation not supported on %1QObjectdErro de protocolo. Recebido um pacote de tamanho 0)Protocol error: packet of size 0 receivedQObject2Erro de leitura em %1: %2Read error reading from %1: %2QObjectTO servidor remoto desligou a ligao em %13Remote host closed the connection prematurely on %1QObject0Erro de socket em %1: %2Socket error on %1: %2QObject2Erro de escrita em %1: %2Write error writing to %1: %2QObjectNomeNameQPPDOptionsModel ValorValueQPPDOptionsModelHNo foi possvel iniciar a transaoCould not begin transaction QPSQLDriverNNo foi possvel finalizar a transacoCould not commit transaction QPSQLDriverFNo foi possvel anular a transaoCould not rollback transaction QPSQLDriverLNo foi possvel estabelecer a ligaoUnable to connect QPSQLDriver6No foi possvel subscreverUnable to subscribe QPSQLDriverLNo foi possvel cancelar a subscrioUnable to unsubscribe QPSQLDriverBNo foi possvel criar a consultaUnable to create query QPSQLResultJNo foi possvel preparar a instruoUnable to prepare statement QPSQLResult Centmetros (cm)Centimeters (cm)QPageSetupWidgetFormulrioFormQPageSetupWidgetAltura:Height:QPageSetupWidgetPolegadas (in) Inches (in)QPageSetupWidgetHorizontal LandscapeQPageSetupWidgetMargensMarginsQPageSetupWidgetMilmetros (mm)Millimeters (mm)QPageSetupWidgetOrientao OrientationQPageSetupWidget$Tamanho da pgina: Page size:QPageSetupWidget PapelPaperQPageSetupWidgetAlimentao: Paper source:QPageSetupWidgetPontos (pt) Points (pt)QPageSetupWidgetVerticalPortraitQPageSetupWidget(Horizontal invertidoReverse landscapeQPageSetupWidget$Vertical invertidoReverse portraitQPageSetupWidgetLargura:Width:QPageSetupWidgetmargem inferior bottom marginQPageSetupWidgetmargem esquerda left marginQPageSetupWidgetmargem direita right marginQPageSetupWidgetmargem superior top marginQPageSetupWidget4O extra no foi carregado.The plugin was not loaded. QPluginLoader"Erro desconhecido Unknown error QPluginLoader2%1 j existe. Substituir?/%1 already exists. Do you want to overwrite it? QPrintDialogn%1 um diretrio. Por favor escolha um nome diferente.7%1 is a directory. Please choose a different file name. QPrintDialog&Opes << &Options << QPrintDialog&Opes >> &Options >> QPrintDialogIm&primir&Print QPrintDialog@<qt>Deseja gravar por cima?</qt>%Do you want to overwrite it? QPrintDialogA0A0 QPrintDialog$A0 (841 x 1189 mm)A0 (841 x 1189 mm) QPrintDialogA1A1 QPrintDialog"A1 (594 x 841 mm)A1 (594 x 841 mm) QPrintDialogA2A2 QPrintDialog"A2 (420 x 594 mm)A2 (420 x 594 mm) QPrintDialogA3A3 QPrintDialog"A3 (297 x 420 mm)A3 (297 x 420 mm) QPrintDialogA4A4 QPrintDialogPA4 (210 x 297 mm, 8.26 x 11.7 polegadas)%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialogA5A5 QPrintDialog"A5 (148 x 210 mm)A5 (148 x 210 mm) QPrintDialogA6A6 QPrintDialog"A6 (105 x 148 mm)A6 (105 x 148 mm) QPrintDialogA7A7 QPrintDialog A7 (74 x 105 mm)A7 (74 x 105 mm) QPrintDialogA8A8 QPrintDialogA8 (52 x 74 mm)A8 (52 x 74 mm) QPrintDialogA9A9 QPrintDialogA9 (37 x 52 mm)A9 (37 x 52 mm) QPrintDialog(Nome alternativo: %1 Aliases: %1 QPrintDialogB0B0 QPrintDialog&B0 (1000 x 1414 mm)B0 (1000 x 1414 mm) QPrintDialogB1B1 QPrintDialog$B1 (707 x 1000 mm)B1 (707 x 1000 mm) QPrintDialogB10B10 QPrintDialog B10 (31 x 44 mm)B10 (31 x 44 mm) QPrintDialogB2B2 QPrintDialog"B2 (500 x 707 mm)B2 (500 x 707 mm) QPrintDialogB3B3 QPrintDialog"B3 (353 x 500 mm)B3 (353 x 500 mm) QPrintDialogB4B4 QPrintDialog"B4 (250 x 353 mm)B4 (250 x 353 mm) QPrintDialogB5B5 QPrintDialogPB5 (176 x 250 mm, 6.93 x 9.84 polegadas)%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialogB6B6 QPrintDialog"B6 (125 x 176 mm)B6 (125 x 176 mm) QPrintDialogB7B7 QPrintDialog B7 (88 x 125 mm)B7 (88 x 125 mm) QPrintDialogB8B8 QPrintDialogB8 (62 x 88 mm)B8 (62 x 88 mm) QPrintDialogB9B9 QPrintDialogB9 (44 x 62 mm)B9 (44 x 62 mm) QPrintDialogC5EC5E QPrintDialog$C5E (163 x 229 mm)C5E (163 x 229 mm) QPrintDialogPersonalizarCustom QPrintDialogDLEDLE QPrintDialog$DLE (110 x 220 mm)DLE (110 x 220 mm) QPrintDialogExecutivo Executive QPrintDialogXExecutivo (7.5 x 10 polegadas, 191 x 254 mm))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialogNo possvel escrever no ficheiro %1. Por favor escolha um nome diferente.=File %1 is not writable. Please choose a different file name. QPrintDialog"O ficheiro existe File exists QPrintDialog FolioFolio QPrintDialog(Folio (210 x 330 mm)Folio (210 x 330 mm) QPrintDialog LedgerLedger QPrintDialog*Ledger (432 x 279 mm)Ledger (432 x 279 mm) QPrintDialog LegalLegal QPrintDialogPLegal (8.5 x 14 polegadas, 216 x 356 mm)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialog CartaLetter QPrintDialogPCarta (8.5 x 11 polegadas, 216 x 279 mm)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialogFicheiro local Local file QPrintDialogAceitarOK QPrintDialogImprimirPrint QPrintDialog2Imprimir para ficheiro...Print To File ... QPrintDialogImprimir tudo Print all QPrintDialog,Intervalo de impresso Print range QPrintDialog Imprimir seleoPrint selection QPrintDialog8Imprimir para ficheiro (PDF)Print to File (PDF) QPrintDialogFImprimir para ficheiro (Postscript)Print to File (Postscript) QPrintDialogTabloideTabloid QPrintDialog.Tabloide (279 x 432 mm)Tabloid (279 x 432 mm) QPrintDialogdO valor "De" no pode ser superior ao valor "At".7The 'From' value cannot be greater than the 'To' value. QPrintDialogEnelope #10 EUAUS Common #10 Envelope QPrintDialog>Envelope #10 EUA (105 x 241 mm)%US Common #10 Envelope (105 x 241 mm) QPrintDialog(Escrever ficheiro %1 Write %1 file QPrintDialog"ligado localmentelocally connected QPrintDialogdesconhecidounknown QPrintDialog%1%%1%QPrintPreviewDialog FecharCloseQPrintPreviewDialog"Exportar para PDF Export to PDFQPrintPreviewDialog0Exportar para PostScriptExport to PostScriptQPrintPreviewDialogPrimeira pgina First pageQPrintPreviewDialog Ajustar pginaFit pageQPrintPreviewDialog"Ajustar largura Fit widthQPrintPreviewDialogHorizontal LandscapeQPrintPreviewDialogltima pgina Last pageQPrintPreviewDialogPgina seguinte Next pageQPrintPreviewDialog"Configurar pgina Page SetupQPrintPreviewDialog"Configurar pgina Page setupQPrintPreviewDialogVerticalPortraitQPrintPreviewDialogPgina anterior Previous pageQPrintPreviewDialogImprimirPrintQPrintPreviewDialogPr-visualizar Print PreviewQPrintPreviewDialogDuas pginasShow facing pagesQPrintPreviewDialog$Resumo das pginasShow overview of all pagesQPrintPreviewDialogUma pginaShow single pageQPrintPreviewDialogAmpliarZoom inQPrintPreviewDialogReduzirZoom outQPrintPreviewDialogAvanadoAdvancedQPrintPropertiesWidgetFormulrioFormQPrintPropertiesWidget PginaPageQPrintPropertiesWidget JuntarCollateQPrintSettingsOutputCorColorQPrintSettingsOutputModo de cor Color ModeQPrintSettingsOutput CpiasCopiesQPrintSettingsOutputCpias:Copies:QPrintSettingsOutput&Impresso em duplexDuplex PrintingQPrintSettingsOutputFormulrioFormQPrintSettingsOutput&Escala de cinzentos GrayscaleQPrintSettingsOutputLado grande Long sideQPrintSettingsOutputNoNoneQPrintSettingsOutput OpesOptionsQPrintSettingsOutput&Definies de sadaOutput SettingsQPrintSettingsOutputDa pgina Pages fromQPrintSettingsOutputImprimir todas Print allQPrintSettingsOutput,Intervalo de impresso Print rangeQPrintSettingsOutputInverterReverseQPrintSettingsOutputSeleo SelectionQPrintSettingsOutputLado pequeno Short sideQPrintSettingsOutputattoQPrintSettingsOutput &Nome:&Name: QPrintWidget...... QPrintWidgetFormulrioForm QPrintWidgetLocalizao: Location: QPrintWidget*&Ficheiro de destino: Output &file: QPrintWidgetP&ropriedades P&roperties QPrintWidgetAntevisoPreview QPrintWidgetImpressoraPrinter QPrintWidget Tipo:Type: QPrintWidgetZNo foi possvel abrir o recurso para leitura,Could not open input redirection for readingQProcessZNo foi possvel abrir o recurso para escrita-Could not open output redirection for writingQProcess,Erro ao ler o processoError reading from processQProcess6Erro ao escrever o processoError writing to processQProcess0Nenhum programa definidoNo program definedQProcess*Processo interrompidoProcess crashedQProcess4Erro ao iniciar o processoProcess failed to startQProcess$A operao expirouProcess operation timed outQProcess6Erro de recurso (falha): %1!Resource error (fork failure): %1QProcessCancelarCancelQProgressDialog AbrirOpen QPushButtonSeleoCheck QRadioButtonPsintaxe de classe de caracteres invlidabad char class syntaxQRegExp>sintaxe de antecipao invlidabad lookahead syntaxQRegExp:sintaxe de repetio invlidabad repetition syntaxQRegExp0funo inativa utilizadadisabled feature usedQRegExp(valor octal invlidoinvalid octal valueQRegExp0limite interno alcanadomet internal limitQRegExp:delimitador esquerdo em faltamissing left delimQRegExpsem errosno error occurredQRegExpfim inesperadounexpected endQRegExp:Erro ao abrir a base de dadosError to open databaseQSQLite2DriverHNo foi possvel iniciar a transaoUnable to begin transactionQSQLite2DriverLNo foi possvel finalizar a transaoUnable to commit transactionQSQLite2DriverFNo foi possvel anular a transaoUnable to rollback TransactionQSQLite2DriverJNo foi possvel executar a instruoUnable to execute statementQSQLite2ResultHNo foi possvel obter os resultadosUnable to fetch resultsQSQLite2Result<Erro ao fechar a base de dadosError closing database QSQLiteDriver:Erro ao abrir a base de dadosError opening database QSQLiteDriverHNo foi possvel iniciar a transaoUnable to begin transaction QSQLiteDriverLNo foi possvel finalizar a transaoUnable to commit transaction QSQLiteDriverFNo foi possvel anular a transaoUnable to rollback transaction QSQLiteDriver Nenhuma consultaNo query QSQLiteResultVIncorrespondncia de contagem de parmetrosParameter count mismatch QSQLiteResultNNo foi possvel associar os parmetrosUnable to bind parameters QSQLiteResultJNo foi possvel executar a instruoUnable to execute statement QSQLiteResult<No foi possvel obter a linhaUnable to fetch row QSQLiteResultLNo foi possvel reiniciar a instruoUnable to reset statement QSQLiteResult FundoBottom QScrollBarMargem esquerda Left edge QScrollBarLinha abaixo Line down QScrollBarLinha acimaLine up QScrollBar"Pgina para baixo Page down QScrollBar(Pgina para esquerda Page left QScrollBar&Pgina para direita Page right QScrollBar Pgina para cimaPage up QScrollBarPosioPosition QScrollBarMargem direita Right edge QScrollBar&Deslocar para baixo Scroll down QScrollBarDeslocar aqui Scroll here QScrollBar&Deslocar esquerda Scroll left QScrollBar$Deslocar direita Scroll right QScrollBar$Deslocar para cima Scroll up QScrollBarTopoTop QScrollBar%1: j existe%1: already exists QSharedMemory6%1: o tamanho menor que 0%1: create size is less then 0 QSharedMemory%1: no existe%1: doesn't exists QSharedMemory%1: falha ftok%1: ftok failed QSharedMemory(%1: tamanho invlido%1: invalid size QSharedMemory"%1: erro de chave %1: key error QSharedMemory%1: chave vazia%1: key is empty QSharedMemory%1: sem anexos%1: not attached QSharedMemory %1: sem recursos%1: out of resources QSharedMemory(%1: permisso negada%1: permission denied QSharedMemory(%1: erro na consulta%1: size query failed QSharedMemory^%1: restries de tamanho impostas pelo sistema$%1: system-imposed size restrictions QSharedMemory:%1: no foi possvel bloquear%1: unable to lock QSharedMemoryB%1 no foi possvel criar a chave%1: unable to make key QSharedMemoryH%1: no foi possvel definir a chave%1: unable to set key on lock QSharedMemory:%1: no foi possvel bloquear%1: unable to unlock QSharedMemory2%1: chave unix no existe %1: unix key file doesn't exists QSharedMemory0%1: erro desconhecido %2%1: unknown error %2 QSharedMemory++ QShortcutAltAlt QShortcut RecuarBack QShortcutBackspace Backspace QShortcutBacktabBacktab QShortcut,Amplificao de graves Bass Boost QShortcutDiminuir graves Bass Down QShortcutAumentar gravesBass Up QShortcutInvocarCall QShortcutCaps Lock Caps Lock QShortcutCapsLockCapsLock QShortcutContexto1Context1 QShortcutContexto2Context2 QShortcutContexto3Context3 QShortcutContexto4Context4 QShortcutCtrlCtrl QShortcutDelDel QShortcut DeleteDelete QShortcut BaixoDown QShortcutEndEnd QShortcut EnterEnter QShortcutEscEsc QShortcut EscapeEscape QShortcutF%1F%1 QShortcutFavoritos Favorites QShortcutInverterFlip QShortcutAvanarForward QShortcutDesligarHangup QShortcut AjudaHelp QShortcutHomeHome QShortcutPgina inicial Home Page QShortcutInsIns QShortcut InsertInsert QShortcutAbrir (0) Launch (0) QShortcutAbrir (1) Launch (1) QShortcutAbrir (2) Launch (2) QShortcutAbrir (3) Launch (3) QShortcutAbrir (4) Launch (4) QShortcutAbrir (5) Launch (5) QShortcutAbrir (6) Launch (6) QShortcutAbrir (7) Launch (7) QShortcutAbrir (8) Launch (8) QShortcutAbrir (9) Launch (9) QShortcutAbrir (A) Launch (A) QShortcutAbrir (B) Launch (B) QShortcutAbrir (C) Launch (C) QShortcutAbrir (D) Launch (D) QShortcutAbrir (E) Launch (E) QShortcutAbrir (F) Launch (F) QShortcut$Correio eletrnico Launch Mail QShortcutMultimdia Launch Media QShortcutEsquerdaLeft QShortcutFaixa seguinte Media Next QShortcut*Reproduzir multimdia Media Play QShortcutFaixa anteriorMedia Previous QShortcut&Gravao multimdia Media Record QShortcut Parar multimdia Media Stop QShortcutMenuMenu QShortcutMetaMeta QShortcutNoNo QShortcutNum LockNum Lock QShortcutNumLockNumLock QShortcutNumber Lock Number Lock QShortcutAbrir URLOpen URL QShortcutPage Down Page Down QShortcutPage UpPage Up QShortcut PausaPause QShortcut PgDownPgDown QShortcutPgUpPgUp QShortcut PrintPrint QShortcutPrint Screen Print Screen QShortcutAtualizarRefresh QShortcut ReturnReturn QShortcutDireitaRight QShortcutScroll Lock Scroll Lock QShortcutScrollLock ScrollLock QShortcutProcurarSearch QShortcut SelectSelect QShortcut ShiftShift QShortcut EspaoSpace QShortcutHibernaoStandby QShortcut PararStop QShortcut SysReqSysReq QShortcutSystem RequestSystem Request QShortcutTabTab QShortcutDiminuir agudos Treble Down QShortcutAumentar agudos Treble Up QShortcutCimaUp QShortcutBaixar volume Volume Down QShortcutSilenciar udio Volume Mute QShortcutSubir volume Volume Up QShortcutSimYes QShortcut"Pgina para baixo Page downQSlider(Pgina para esquerda Page leftQSlider&Pgina para direita Page rightQSlider Pgina para cimaPage upQSliderPosioPositionQSlider<Tipo de endereo no suportadoAddress type not supportedQSocks5SocketEngineVLigao no permitida pelo servidor SOCKS 5(Connection not allowed by SOCKSv5 serverQSocks5SocketEnginedA ligao ao servidor proxy fechou inesperadamente&Connection to proxy closed prematurelyQSocks5SocketEngine2Ligao ao proxy recusadaConnection to proxy refusedQSocks5SocketEngineFA ligao ao servidor proxy expirouConnection to proxy timed outQSocks5SocketEngineDFalha genrica do servidor SOCKS 5General SOCKSv5 server failureQSocks5SocketEngine2Operao de rede expiradaNetwork operation timed outQSocks5SocketEngine<Falha de autenticao do proxyProxy authentication failedQSocks5SocketEngineDFalha de autenticao do proxy: %1Proxy authentication failed: %1QSocks5SocketEngine:Servidor proxy no encontradoProxy host not foundQSocks5SocketEngine2Erro de protocolo SOCKS 5SOCKS version 5 protocol errorQSocks5SocketEngine:Comando SOCKS 5 no suportadoSOCKSv5 command not supportedQSocks5SocketEngineTTL expirado TTL expiredQSocks5SocketEngine^Erro desconhecido de proxy SOCKS 5. Cdigo 0x%1%Unknown SOCKSv5 proxy error code 0x%1QSocks5SocketEngine MenosLessQSpinBoxMaisMoreQSpinBoxCancelarCancelQSql(Cancelar alteraes?Cancel your edits?QSqlConfirmarConfirmQSqlEliminarDeleteQSql,Eliminar este registo?Delete this record?QSqlInserirInsertQSqlNoNoQSql$Gravar alteraes? Save edits?QSqlAtualizarUpdateQSqlSimYesQSqlrNo possvel disponibilizar um cerificado sem chave. %1,Cannot provide a certificate with no key, %1 QSslSocket@Erro ao criar contexto SSL: (%1)Error creating SSL context (%1) QSslSocket8Erro ao criar sesso SSL. %1Error creating SSL session, %1 QSslSocket8Erro ao criar sesso SSL. %1Error creating SSL session: %1 QSslSocket4Erro de negociao SSL: %1Error during SSL handshake: %1 QSslSocketLErro ao carregar certificado local. %1#Error loading local certificate, %1 QSslSocketDErro ao carregar chave privada. %1Error loading private key, %1 QSslSocketErro ao ler: %1Error while reading: %1 QSslSocketJLista de cifra vazia ou invlida (%1)!Invalid or empty cipher list (%1) QSslSocketfA chave privada no certifica uma chave privada. %1/Private key does not certificate public key, %1 QSslSocketLNo foi possvel escrever os dados: %1Unable to write data: %1 QSslSocket%1: j existe%1: already existsQSystemSemaphore%1: no existe%1: does not existQSystemSemaphore %1: sem recursos%1: out of resourcesQSystemSemaphore(%1: permisso negada%1: permission deniedQSystemSemaphore0%1: erro desconhecido %2%1: unknown error %2QSystemSemaphore@No foi possvel abrir a ligaoUnable to open connection QTDSDriverRNo foi possvel utilizar a base de dadosUnable to use database QTDSDriver&Deslocar esquerda Scroll LeftQTabBar$Deslocar direita Scroll RightQTabBarDOperao no suportada pelo socket$Operation on socket is not supported QTcpServer&Copiar&Copy QTextControl C&olar&Paste QTextControl&Refazer&Redo QTextControlAn&ular&Undo QTextControl<Copiar &localizao da ligaoCopy &Link Location QTextControlCor&tarCu&t QTextControlEliminarDelete QTextControlSelecionar tudo Select All QTextControl AbrirOpen QToolButton PremirPress QToolButtonLEsta plataforma no tem suporte a IPv6#This platform does not support IPv6 QUdpSocketRefazerRedo QUndoGroup AnularUndo QUndoGroup<vazio> QUndoModelRefazerRedo QUndoStack AnularUndo QUndoStackHInserir carcter de controlo Unicode Insert Unicode control characterQUnicodeControlCharacterMenuHLRE Start of left-to-right embedding$LRE Start of left-to-right embeddingQUnicodeControlCharacterMenu,LRM Left-to-right markLRM Left-to-right markQUnicodeControlCharacterMenuFLRO Start of left-to-right override#LRO Start of left-to-right overrideQUnicodeControlCharacterMenu<PDF Pop directional formattingPDF Pop directional formattingQUnicodeControlCharacterMenuHRLE Start of right-to-left embedding$RLE Start of right-to-left embeddingQUnicodeControlCharacterMenu,RLM Right-to-left markRLM Right-to-left markQUnicodeControlCharacterMenuFLRO Start of left-to-right override#RLO Start of right-to-left overrideQUnicodeControlCharacterMenu*ZWJ Zero width joinerZWJ Zero width joinerQUnicodeControlCharacterMenu4ZWNJ Zero width non-joinerZWNJ Zero width non-joinerQUnicodeControlCharacterMenu*ZWSP Zero width spaceZWSP Zero width spaceQUnicodeControlCharacterMenu<No foi possvel mostrar o URLCannot show URL QWebFrameHNo foi possvel mostrar o tipo mimeCannot show mimetype QWebFrame*O ficheiro no existeFile does not exist QWebFrameNCarregamento interrompido pela poltica&Frame load interruped by policy change QWebFrame Pedido bloqueadoRequest blocked QWebFrame Pedido canceladoRequest cancelled QWebFrame"%1 (%2x%3 pixeis)%1 (%2x%3 pixels)QWebPage%n ficheiro%n ficheiros %n file(s)QWebPage.Adicionar ao dicionrioAdd To DictionaryQWebPage(Pedido HTTP invlidoBad HTTP requestQWebPageNegritoBoldQWebPage FundoBottomQWebPageDVerificar gramtica com ortografiaCheck Grammar With SpellingQWebPage.Verificao ortogrficaCheck SpellingQWebPage@Verificar ortografia ao escreverCheck Spelling While TypingQWebPage$Escolha o ficheiro Choose FileQWebPage0Limpar procuras recentesClear recent searchesQWebPage CopiarCopyQWebPageCopiar imagem Copy ImageQWebPageCopiar ligao Copy LinkQWebPage CortarCutQWebPagePr-definidoDefaultQWebPage@Eliminar at ao final da palavraDelete to the end of the wordQWebPageBEliminar at ao incio da palavraDelete to the start of the wordQWebPageDireo DirectionQWebPageTipo de letraFontsQWebPage RecuarGo BackQWebPageAvanar Go ForwardQWebPage<Ocultar ortografia e gramticaHide Spelling and GrammarQWebPageIgnorarIgnoreQWebPageIgnorar Ignore Grammar context menu itemIgnoreQWebPage$Inserir nova linhaInsert a new lineQWebPage,Inserir novo pargrafoInsert a new paragraphQWebPageInspecionarInspectQWebPagetlicoItalicQWebPage,Alerta Javascript - %1JavaScript Alert - %1QWebPage6Confirmao JavaScript - %1JavaScript Confirm - %1QWebPage0Pergunta JavaScript - %1JavaScript Prompt - %1QWebPageLTRLTRQWebPageMargem esquerda Left edgeQWebPage,Procurar no dicionrioLook Up In DictionaryQWebPageDMover cursor para o final do bloco'Move the cursor to the end of the blockQWebPageLMover cursor para o final do documento*Move the cursor to the end of the documentQWebPageDMover cursor para o final da linha&Move the cursor to the end of the lineQWebPageJMover cursor para o carcter seguinte%Move the cursor to the next characterQWebPageDMover cursor para a linha seguinte Move the cursor to the next lineQWebPageHMover cursor para a palavra seguinte Move the cursor to the next wordQWebPageJMover cursor para o carcter anterior)Move the cursor to the previous characterQWebPageDMover cursor para a linha anterior$Move the cursor to the previous lineQWebPageHMover cursor para a palavra anterior$Move the cursor to the previous wordQWebPageFMover cursor para o incio do bloco)Move the cursor to the start of the blockQWebPageNMover cursor para o incio do documento,Move the cursor to the start of the documentQWebPageFMover cursor para o incio da linha(Move the cursor to the start of the lineQWebPage:Nenhuma semelhana encontradaNo Guesses FoundQWebPage6Nenhum ficheiro selecionadoNo file selectedQWebPageSem procurasNo recent searchesQWebPageAbrir moldura Open FrameQWebPageAbrir imagem Open ImageQWebPageAbrir ligao Open LinkQWebPage(Abrir en nova janelaOpen in New WindowQWebPageContornoOutlineQWebPage"Pgina para baixo Page downQWebPage(Pgina para esquerda Page leftQWebPage&Pgina para direita Page rightQWebPage Pgina para cimaPage upQWebPage ColarPasteQWebPageRTLRTLQWebPage"Procuras recentesRecent searchesQWebPageRecarregarReloadQWebPageReiniciarResetQWebPageMargem direita Right edgeQWebPageGravar imagem Save ImageQWebPage"Gravar ligao... Save Link...QWebPage&Deslocar para baixo Scroll downQWebPageDeslocar aqui Scroll hereQWebPage&Deslocar esquerda Scroll leftQWebPage$Deslocar direita Scroll rightQWebPage$Deslocar para cima Scroll upQWebPageProcurar na webSearch The WebQWebPageSelecionar tudo Select allQWebPage@Selecionar at ao final do blocoSelect to the end of the blockQWebPageHSelecionar at ao final do documento!Select to the end of the documentQWebPage@Selecionar at ao final da linhaSelect to the end of the lineQWebPageFSelecionar at ao carcter seguinteSelect to the next characterQWebPage>Selecionar at linha seguinteSelect to the next lineQWebPageBSelecionar at palavra seguinteSelect to the next wordQWebPageFSelecionar at ao carcter anterior Select to the previous characterQWebPage>Selecionar at linha anteriorSelect to the previous lineQWebPageBSelecionar at palavra anteriorSelect to the previous wordQWebPageBSelecionar at ao incio do bloco Select to the start of the blockQWebPageJSelecionar at ao incio do documento#Select to the start of the documentQWebPageBSelecionar at ao incio da linhaSelect to the start of the lineQWebPage<Mostrar ortografia e gramticaShow Spelling and GrammarQWebPageOrtografiaSpellingQWebPage PararStopQWebPage EnviarSubmitQWebPage EnviarQSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPage Direo do textoText DirectionQWebPagetEte ndice pesquisvel. Introduza as chaves de procura: 3This is a searchable index. Enter search keywords: QWebPageTopoTopQWebPageSublinhado UnderlineQWebPageDesconhecidoUnknownQWebPage&Inspetor web - - %2Web Inspector - %2QWebPageO que isto? What's This?QWhatsThisAction**QWidget&Terminar&FinishQWizard Aj&uda&HelpQWizardAva&nar&NextQWizardAva&nar >&Next >QWizard< &Recuar< &BackQWizardCancelarCancelQWizardSubmeterCommitQWizardContinuarContinueQWizardTerminadoDoneQWizard RecuarGo BackQWizard AjudaHelpQWizard%1 - [%2] %1 - [%2] QWorkspaceFe&char&Close QWorkspace &Mover&Move QWorkspace&Restaurar&Restore QWorkspace&Tamanho&Size QWorkspaceDese&nrolar&Unshade QWorkspace FecharClose QWorkspaceMa&ximizar Ma&ximize QWorkspaceMi&nimizar Mi&nimize QWorkspaceMinimizarMinimize QWorkspace Restaurar abaixo Restore Down QWorkspaceEnrol&arSh&ade QWorkspace"Deixar na fren&te Stay on &Top QWorkspacedeclarao de codificao ou declarao nica esperada ao ler a declarao XMLYencoding declaration or standalone declaration expected while reading the XML declarationQXml^erro na declarao de texto da entidade externa3error in the text declaration of an external entityQXmlRocorreu um erro ao processar o comentrio$error occurred while parsing commentQXmlNocorreu um erro ao processar o contedo$error occurred while parsing contentQXmlNocorreu um erro ao processar o elemento5error occurred while parsing document type definitionQXmlNocorreu um erro ao processar o elemento$error occurred while parsing elementQXmlRocorreu um erro ao processar a referncia&error occurred while parsing referenceQXml:erro invocado pelo utilizadorerror triggered by consumerQXmlreferncia de entidade geral analisada externa no permitida na DTD;external parsed general entity reference not allowed in DTDQXmlreferncia de entidade geral analisada externa no permitida no valor do atributoGexternal parsed general entity reference not allowed in attribute valueQXmlrreferncia de entidade geral interna no permitida na DTD4internal general entity reference not allowed in DTDQXmlVnome invlido de instruo de processamento'invalid name for processing instructionQXml espera uma letraletter is expectedQXmlTmais de uma definio de tipo de documento&more than one document type definitionQXmlsem errosno error occurredQXml(entidades recursivasrecursive entitiesQXmlbdeclarao nica esperada ao ler a declarao XMLAstandalone declaration expected while reading the XML declarationQXml.incoerncia de etiqueta tag mismatchQXml&carcter inesperadounexpected characterQXml4fim de ficheiro inesperadounexpected end of fileQXmlnreferncia de entidade no analisada em contexto errado*unparsed entity reference in wrong contextQXmlNverso esperada ao ler a declarao XML2version expected while reading the XML declarationQXmlDvalor errado para declarao nica&wrong value for standalone declarationQXmlN%1 um identificador pblico invlido.#%1 is an invalid PUBLIC identifier. QXmlStream<%1 uma codificao invlida.%1 is an invalid encoding name. QXmlStream^%1 no un nome de instruo de processamento.-%1 is an invalid processing instruction name. QXmlStreame obtido  , but got ' QXmlStream(Atributo redefinido.Attribute redefined. QXmlStream@A codificao %1 no suportadaEncoding %1 is unsupported QXmlStreamZEncontrado contedo com codificao invlida.(Encountered incorrectly encoded content. QXmlStream4Entidade %1 no declarada.Entity '%1' not declared. QXmlStreamEsperado Expected  QXmlStream Dados esperados.Expected character data. QXmlStreamJContedo extra no final do documento.!Extra content at end of document. QXmlStream8Declarao invlida de nome.Illegal namespace declaration. QXmlStream,Carcter XML invlido.Invalid XML character. QXmlStream$Nome XML invlido.Invalid XML name. QXmlStream(Cadeia XML invlida.Invalid XML version string. QXmlStreamHAtributo invlido na declarao XML.%Invalid attribute in XML declaration. QXmlStream>Referncia de cacter invlida.Invalid character reference. QXmlStream&Documento invlido.Invalid document. QXmlStream6Valor invlido de entidade.Invalid entity value. QXmlStreamXNome invlido de instruo de processamento.$Invalid processing instruction name. QXmlStream@NDATA na declarao da entidade.&NDATA in parameter entity declaration. QXmlStream0Prefixo %1 no declarado"Namespace prefix '%1' not declared QXmlStreamVIncoerncia entre etiqueta inicial e final. Opening and ending tag mismatch. QXmlStream6Fim de documento prematuro.Premature end of document. QXmlStream8Entidade recursiva detetada.Recursive entity detected. QXmlStreambReferncia a uma entidade externa %1 no atributo.5Reference to external entity '%1' in attribute value. QXmlStreamXreferncia a uma entidade no processada %1."Reference to unparsed entity '%1'. QXmlStream@A sequncia ]]> no permitida.&Sequence ']]>' not allowed in content. QXmlStream(S aceita yes ou no."Standalone accepts only yes or no. QXmlStream4Etiqueta inicial esperada.Start tag expected. QXmlStreamlO pseudo atributo deve aparecer depois da codificao.?The standalone pseudo attribute must appear after the encoding. QXmlStreamInesperado  Unexpected ' QXmlStreamNCarcter %1 inesperado numa id literal./Unexpected character '%1' in public id literal. QXmlStream2Verso XML no suportada.Unsupported XML version. QXmlStreamNIncio de documento sem declarao XML.)XML declaration not at start of document. QXmlStreamSilenciadoMuted VolumeSliderVolume: %1% Volume: %1% VolumeSliderqupzilla-1.6.0/bin/locale/qt_ru.qm000066400000000000000000010264531226107126500170740ustar00rootroot00000000000000fcwfcfffbf'ff]gdl*QgLh o-ED.`.AE^Av`0`y8523ceCeeįgįhS5 y ~~Ft^FATqQHt3!nqvSzӽ$#&S.(2(4(44(4&w(5h(5*yI*yQ*yd=*TJ*0W*06+Fb+F+Lg+f5+fZ+za+JN+R +d+za+6+=++{+b+ +įJ+įRS+įd+a4r7 ]7 :9;ɝ=/@9BjHLC:F0iFn4Fn4UGH/Hw9HHw9HI'I_IYJ+JJ+J6KJ6cJ6WJ6&J6bJ6fJ6σJ6J6J6/J6JcbJ2KQK L ALZL3LcNLb:M5MbƠMe|oMvM~0N6NBO|bPFEN PFEdEPFEBQRdR|R̼RSnS8^LTT'JTʴ0TEmU?^;U|dU}V1DV1ڥVl>5VMV)VaV)VVE*{W\WfWTɾWTӄWT+X~^X9,kXXX˙3X,YKYeY.Y,Z+/&Zg/aZkZZ[;^s[=?[f33\-\]4\]4=?\P\X\\5datgclGut>v|^]|Ac O xv2vSf')C7BMdW^+͝4Lq5.6C dIAF=[0Dg<*I$ÉyXtD$D %&Rn/ɵnfɵn=bɵnCɵnZɵnɵnɵnɵn.u~bY&*g B/*'.+zn" M1glNW(aa-eq¬pT۔` m>bvH^r*B78,+V2<qp5#Q!%UT(ŎH*4F-ctd(-ct`.h2Z3z5v?2?NZ@VӸB!}FRMNkyUiW~t]DS`h`jtIlgNlyzJCl}oivtydvty }.$1lS%k");n;, \9&,)4 )F {66a6YSr^'z_JQdyRT={~.hc!-E Eh\{g=8A9τn@A%:[yELQtE9n%Uk9$i ]GgmbMaME!E,|n:wGwV6e#^\ I ڎ&\>]  4:7U  $!en&ŵ)5*/e60+<,/*,NK6c4;~?4LByEcFIQ.K~3NjOZff\c=``bcփ$8fg&4 FjC mnqG3qlXtu<u({>}ka@}R>3~n=$|_y|SK%l$q$)y%4߼+(6u,.Rfʁr^K22L֊btS%4ހ.2 nw\,? hٵ#q n;yOω"aO-CI*JAG7 n7^0Hز=,&H>&l,nn./>X4rP8wl?XCIxS`4JMKLMOکR.I=R> XE%YM"DYM,^@dKAfAh^PiUnn=nMr ssc|sw"x/^S272"%2Nۊbuatϼ;TtN^G]4]v&;I8IHIII IIAWIBI( ZvQIYCiy;}uI!S K  ! uD&uD1ND(ox,3\,R,Y,,C,e]>RrN@K.V,z.e_ >|q.ɘe˓5$?M 458fR<fRjG>8* t<\U:_v9N9cSS Pq)XVV}fR|T~33D'   Q@ LϤ=E<bJV l'"o%$y$%CP&~&)2K)+-,Ȁ535"o8";_0?"[?>u?%FuKNb4K-MN>WR|U5V|n]<]Beg^)k*!y^Mj{yaw?Ji3&5t,-5tPF,:YΞU:G% hnnnصǥM.?+.m+BZD`n{^t6W{yÙ ;/ xAr9\!1s]PϾ6N%_X:`{ e45dC- dN5(MUXC^1ƨ4ƨD˾CWҝz(i}7 zܓ7ܳ'ߺTfEtI롥P`iNuEm^>!DD    `|$_~b%~bo>k9^gMJt( `$!AY%?3'()~)ўB+u/L+3g,8/A//14~L6 .8a<X? 2JA/B>NDEFgZG!lGbLAUbOr:QPѧQ0!RCSnfT?UuUG/UUT;vYĻZ- [J[`]k* ]^n_P86_p՜`ud`Щd`e=i&i1kQ˦m?$oNpx y;Z{{B}u)z}w}w9b}w}Vhs|-p~z~~~1l(Hr^'p{Gup~Cz~t~j~Bv݁ttYd%.V.93PiUt>{uk5ʆDTYU^ntXXt-to).-n-l_ ( ag+UsyȄF^JCaDʢj ʢʬƴdjd^dnddt059@э[i .+7NSDwFk8nyzU>dTeBhwM{ 2Y,%+3 w#?- @ xe!+3,D/2342q5@46(57D'9 ::%T?;CU]~ CU39D~E[GlINJ0JueK?K"U|V73cW a\?\D~]are n8g*.ld`n8Sp&t?w hy'߉|(^s|B|ҕ}wZ}$}$9}$~9|4D˚ϗݿ8Z~VNd(D6L>Z{~$9N.q/fi"n6x-n5K<f+yE.·c··`Jý׳:N:nT~ n05//fCun8-n7Cet0(FU7E '}ȥNv^ONwu8%5UTK e~>i~6Wg`b i9%Lwwbބ!##%o%%d!''-..l5kE&=fb= =a?TR?Y4@TCtIEfYNP&P4[QsAGV%)V%+XU  Zz`awbD1bGL/fdqgf=;gAEhIKi$mknվx1 z*2||QRdJmUMc(.xzc.444C5H^j`e erX{m!^{enG+b†5ieCq~yUʴ5bEʴ5ʶd/lϡ$VRы#ŇD1^ 9ԄI۔#D'NDd$ABF5MF5cY p8j+>4NsI;I ,As8 j }$`/ qe+j ڤ} ڥ d? E\n E z Ac@ Acc <. *̜ 35 6  WMN `Bs b bbh b` b` d gUV i3U kk? lazs lf lmf okv; qvz qv1 qz5 tN u xq |oO |, & J t@Q t Ng .   n ).= F>P G  2 le! X  ?  B ҉{ 4e  > ; U+ kq ^ /} D ]d nW N sJ V $ u"Y x Y+ Y> 0 KL jm 팤 l~} %'i/ MN( 4O ! < /; Ci = q  D  } 9 o Ąʃ  1[  ) */d .>X< 5ed 74Y 7uw ;NY > ] v" :aY f 7 f  4? !b .l Y (h s:V s ~ AA( 9 1= 9aL 05u  m,CN 5 ! #-t '  0N] 5 AE CU E9@ I LyE LW L Mc\ O P..o RdC SA VFC W Z'y \Otb ]$h `u cc f)7 f)N f=Ͼ io>" j l#, m`PF n|nk w@ xRQ yr {nڂ >J  R H5 H [<  n $ 4 .@4 F F i <O^ 0 = KI S f  %ĸ J: J   t.U kch ӇK B M IE N>L / ̺ &n ? -D .P x ۷) r2 k k ɜ U)2; <N e&  # ` 0(  i i $r-y  z+'  &>  1 Q Io * 9N# % T N, ( Lg sy u xH7 X I  !py $" %6b )Εv .` 2 7F[ =юӳ >) >* >+ >6P >G >QM > > >]3 >_ ?t|oY A^ST DT2 Fn~ G' I_ J>L; L1 Mb/ P@ QT RV RVA RV Rn S.C SGQ S^ T~| Y= Ye [l} hۮ j7o m( p` sL P vv  BDD  TgF TZ Tb T 2 Ex i ! 2}   ,'0 ,0 S` )d TW- k .g .= .[b .I . .p .  @i >g * a Pt yNW  p e. x/ Cr '( Nq Ԟ  hN ɾd$t ɾd& e[ ̈́^r >[ ҂ Ӵ/ ءH ߢ.  >Rq % ur t f/ } | R b"p GC Xt n 9s )|E t  aH  .I } :b2 Uq  O ʜ_$ f fI f $ s  w $  c #$ #= %n '.D (I$9 (N5 +>b+ +k 0EH 64 ;ɾeH Cn@ Fg K9 Ptd Pt R"y S,2= T>Nj c1 dBy fea fe g  gȳ hQ$- iFCD i i jN jEL jӮ kGnx l" m9}% m9  n s'~ u)3 u! uH< v y v&T v{ x w/ w8 wB w}w w}8 w} yn| |[p M] H u6 #- -S < J9 bL ԡ | ^z * ( }O RnB %7^P P% ? xNZ "* UU ɰe͕ F r X= bf Y > & xM$ D> 4 + t5c[ t5  p >f d y )2 "8 P$t<Rw>Y @axTZY|+ 6*<*%nVgTZ 0!a&-*X$*+/EYt/E|4Qt#7SIEKI_3:KNq OOVMS5@XRum XZofA[ =[ Da.2a.a%!;gc;i#dnyGsWv6,Sv<+vɅDy$y?.Hw~5V%*> l= 4}NװN'h4p&~z[SG|N&$^5zMǗi:uZ5D+BVmn5L3Ӯ`n*Ӯ`MӮ`A|> QrS@ݖŐmUף [y 4^r7FTjj   .H 9'  GlDE"#t$UC%49%4'u,-WU-vi0i)#0$1c>2wT#+DQBF74JeG-HBJd4J5K?lL$.Wr[{)c5c5cg3iCiTlpqii3v)yCRI{`Z{~a!6$Y50V&&D%{-Uq`mnNYu[g>S-)|*n;ͣ*X9 It?>b}XqN+e E"~ gdLurYrc-1\Cky֠kUޜ"'T.u44Ln[I>kBXP4_t2]Y}d Uoi'0:@KBL 2:;04:C Close Tab CloseButton$$8:B82=0O >H81:0 ! Fake error ! FakeReply,5:>@@5:B=K9 04@5A URL Invalid URL FakeReply ?@>3@0<<5 %1About %1MAC_APPLICATION_MENU!:@KBL %1Hide %1MAC_APPLICATION_MENU !:@KBL >AB0;L=K5 Hide OthersMAC_APPLICATION_MENU0AB@>9:8 &Preferences...MAC_APPLICATION_MENU025@H8BL %1Quit %1MAC_APPLICATION_MENU !;C61KServicesMAC_APPLICATION_MENU>:070BL 2A5Show AllMAC_APPLICATION_MENU.!?5F80;L=K5 2>7<>6=>AB8 AccessibilityPhonon::1I5=85 CommunicationPhonon::3@KGamesPhonon:: C7K:0MusicPhonon::#254><;5=8O NotificationsPhonon:: 845>VideoPhonon::<html>5@5:;NG5=85 =0 CAB@>9AB2> 2K2>40 72C:0 <b>%1</b><br/>, :>B>@>5 8<55B 2KAH89 ?@8>@8B5B 8;8 =0AB@>5=> 4;O >1@01>B:8 40==>3> ?>B>:0.</html>Switching to the audio playback device %1
which has higher preference or is specifically configured for this stream.Phonon::AudioOutput<html>5@5:;NG5=85 =0 72C:>2>5 CAB@>9AB2> <b>%1</b><br/>, :>B>@>5 AB0;> 4>ABC?=> 8 8<55B 2KAH89 ?@8>@8B5B.</html>xSwitching to the audio playback device %1
which just became available and has higher preference.Phonon::AudioOutput<html>2C:>2>5 CAB@>9AB2> <b>%1</b> =5 @01>B05B.<br/>C45B 8A?>;L7>20BLAO <b>%2</b>.</html>^The audio playback device %1 does not work.
Falling back to %2.Phonon::AudioOutput:>72@0I5=85 : CAB@>9AB2C %1Revert back to device '%1'Phonon::AudioOutput=8<0=85: >E>65, >A=>2=>9 <>4C;L GStreamer =5 CAB0=>2;5=. >445@6:0 2845> 8 0C48> >B:;NG5=0~Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabledPhonon::Gstreamer::Backend=8<0=85: >E>65, ?0:5B gstreamer0.10-plugins-good =5 CAB0=>2;5=. 5:>B>@K5 2>7<>6=>AB8 2>A?@>872545=8O 2845> =54>ABC?=K.Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled.Phonon::Gstreamer::BackendBACBAB2C5B =5>1E>48<K9 :>45:. 0< =C6=> CAB0=>28BL A;54CNI85 :>45:8 4;O 2>A?@>872545=8O 40==>3> A>45@68<>3>: %0`A required codec is missing. You need to install the following codec(s) to play this content: %0Phonon::Gstreamer::MediaObject52>7<>6=> =0G0BL 2>A?@>872545=85. @>25@LB5 ?@028;L=>ABL CAB0=>2:8 GStreamer 8 C1548B5AL, GB> ?0:5B libgstreamer-plugins-base CAB0=>2;5=.wCannot start playback. Check your GStreamer installation and make sure you have libgstreamer-plugins-base installed.Phonon::Gstreamer::MediaObject\5 C40;>AL 45:>48@>20BL 8AB>G=8: <5480-40==KE.Could not decode media source.Phonon::Gstreamer::MediaObjectN5 C40;>AL =09B8 8AB>G=8: <5480-40==KE.Could not locate media source.Phonon::Gstreamer::MediaObject5 C40;>AL >B:@KBL 72C:>2>5 CAB@>9AB2>. #AB@>9AB2> C65 8A?>;L7C5BAO.:Could not open audio device. The device is already in use.Phonon::Gstreamer::MediaObjectR5 C40;>AL >B:@KBL 8AB>G=8: <5480-40==KE.Could not open media source.Phonon::Gstreamer::MediaObjectP5:>@@5:B=K9 B8? 8AB>G=8:0 <5480-40==KE.Invalid source type.Phonon::Gstreamer::MediaObjectLBACBAB2C5B AF5=0@89 CAB0=>2:8 :>45:0.&Missing codec helper script assistant.Phonon::Gstreamer::MediaObjectN5 C40;>AL CAB0=>28BL <>4C;L :>45:0: %0.Plugin codec installation failed for codec: %0Phonon::Gstreamer::MediaObject>ABC? 70?@5IQ= Access denied Phonon::MMF#65 ACI5AB2C5BAlready exists Phonon::MMF*>A?@>872545=85 72C:0 Audio Output Phonon::MMFtC48>- 8;8 2845>-A>AB>2;ONI0O =5 <>65B 1KBL 2>A?@>872545=0-Audio or video components could not be played Phonon::MMF8H81:0 2>A?@>872545=8O 72C:0Audio output error Phonon::MMF@5 C40;>AL CAB0=>28BL A>548=5=85Could not connect Phonon::MMFH81:0 DRM DRM error Phonon::MMF(H81:0 45:>48@>20=8O Decoder error Phonon::MMF(!>548=5=85 @07>@20=> Disconnected Phonon::MMFA?>;L7C5BAOIn use Phonon::MMFL54>AB0B>G=0O A:>@>ABL ?5@540G8 40==KEInsufficient bandwidth Phonon::MMF,5:>@@5:B=K9 04@5A URL Invalid URL Phonon::MMF*5:>@@5:B=K9 ?@>B>:>;Invalid protocol Phonon::MMFBH81:0 H8@>:>25I0B5;L=>9 ?5@540G8Multicast error Phonon::MMF<H81:0 A5B52>3> >1<5=0 40==K<8Network communication error Phonon::MMF!5BL =54>ABC?=0Network unavailable Phonon::MMF5B >H81:8No error Phonon::MMF5 =0945=> Not found Phonon::MMF5 3>B>2> Not ready Phonon::MMF"5 ?>445@68205BAO Not supported Phonon::MMF*54>AB0B>G=> @5AC@A>2 Out of memory Phonon::MMF5@5?>;=5=85Overflow Phonon::MMFCBL =5 =0945=Path not found Phonon::MMF>ABC? 70?@5IQ=Permission denied Phonon::MMF*H81:0 ?@>:A8-A5@25@0Proxy server error Phonon::MMF>@>:A8-A5@25@ =5 ?>445@68205BAOProxy server not supported Phonon::MMF!83=0; A5@25@0 Server alert Phonon::MMFV>B>:>2>5 2>A?@>872545=85 =5 ?>445@68205BAOStreaming not supported Phonon::MMF@#AB@>9AB2> 2>A?@>872545=8O 72C:0The audio output device Phonon::MMF865 3@0=8FK Underflow Phonon::MMF.58725AB=0O >H81:0 (%1)Unknown error (%1) Phonon::MMF8H81:0 2>A?@>872545=8O 2845>Video output error Phonon::MMFH81:0 703@C7:8Download error Phonon::MMF::AbstractMediaPlayer4H81:0 >B:@KB8O 04@5A0 URLError opening URL Phonon::MMF::AbstractMediaPlayer*H81:0 >B:@KB8O D09;0Error opening file Phonon::MMF::AbstractMediaPlayer.H81:0 >B:@KB8O @5AC@A0Error opening resource Phonon::MMF::AbstractMediaPlayer^H81:0 >B:@KB8O 8AB>G=8:0: @5AC@A =5 1K; >B:@KB)Error opening source: resource not opened Phonon::MMF::AbstractMediaPlayer25 C40;>AL 703@C78BL :;8?Loading clip failed Phonon::MMF::AbstractMediaPlayer45 3>B>2 : 2>A?@>872545=8NNot ready to play Phonon::MMF::AbstractMediaPlayer2>A?@>872545=85 7025@H5=>Playback complete Phonon::MMF::AbstractMediaPlayerN5 C40;>AL CAB0=>28BL C@>25=L 3@><:>AB8Setting volume failed Phonon::MMF::AbstractMediaPlayer65 C40;>AL ?>;CG8BL ?>78F8NGetting position failed Phonon::MMF::AbstractVideoPlayer.5 C40;>AL >B:@KBL :;8?Opening clip failed Phonon::MMF::AbstractVideoPlayerP5 C40;>AL ?@8>AB0=>28BL 2>A?@>872545=85 Pause failed Phonon::MMF::AbstractVideoPlayer:5 C40;>AL CAB0=>28BL ?>78F8N Seek failed Phonon::MMF::AbstractVideoPlayer %1 F%1 HzPhonon::MMF::AudioEqualizer65 C40;>AL ?>;CG8BL ?>78F8NGetting position failedPhonon::MMF::AudioPlayer0H81:0 >B>1@065=8O 2845>Video display errorPhonon::MMF::DsaVideoPlayer:;NG5=>EnabledPhonon::MMF::EffectFactory8>MDD8F85=B 70BCE0=8O ' (%)Decay HF ratio (%) Phonon::MMF::EnvironmentalReverb(@5<O 70BCE0=8O (<A)Decay time (ms) Phonon::MMF::EnvironmentalReverb;>B=>ABL (%) Density (%) Phonon::MMF::EnvironmentalReverb 0AA5820=85 (%) Diffusion (%) Phonon::MMF::EnvironmentalReverb00BCE0=85 >B@065=89 (<A)Reflections delay (ms) Phonon::MMF::EnvironmentalReverb0#@>25=L >B@065=89 (<0@)Reflections level (mB) Phonon::MMF::EnvironmentalReverb"045@6:0 ME0 (<A)Reverb delay (ms) Phonon::MMF::EnvironmentalReverb$#@>25=L ME0 (<0@)Reverb level (mB) Phonon::MMF::EnvironmentalReverb(#@>25=L ' >B@065=89 Room HF level Phonon::MMF::EnvironmentalReverb0#@>25=L >B@065=89 (<0@)Room level (mB) Phonon::MMF::EnvironmentalReverbH81:0 >B:@KB8O 8AB>G=8:0: =5 C40;>AL >?@545;8BL B8? <5480-40==KE8Error opening source: media type could not be determinedPhonon::MMF::MediaObjectPH81:0 >B:@KB8O 8AB>G=8:0: A60BK9 @5AC@A,Error opening source: resource is compressedPhonon::MMF::MediaObject\H81:0 >B:@KB8O 8AB>G=8:0: =5:>@@5:B=K9 @5AC@A(Error opening source: resource not validPhonon::MMF::MediaObject`H81:0 >B:@KB8O 8AB>G=8:0: B8? =5 ?>445@68205BAO(Error opening source: type not supportedPhonon::MMF::MediaObjectR5 C40;>AL 7040BL C:070==CN B>G:C 4>ABC?0Failed to set requested IAPPhonon::MMF::MediaObject#@>25=L (%) Level (%)Phonon::MMF::StereoWidening0H81:0 >B>1@065=8O 2845>Video display errorPhonon::MMF::SurfaceVideoPlayer57 72C:0MutedPhonon::VolumeSliderA?>;L7C9B5 40==K9 @53C;OB>@ 4;O =0AB@>9:8 3@><:>AB8. @09=55 ;52>5 ?>;>65=85 A>>B25BAB2C5B 0%, :@09=55 ?@02>5 - %1%WUse this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1%Phonon::VolumeSlider@><:>ABL: %1% Volume: %1%Phonon::VolumeSlider&%1, %2 =5 >?@545;Q=%1, %2 not definedQ3AccelR5>4=>7=0G=0O :><18=0F8O %1 =5 >1@01>B0=0Ambiguous %1 not handledQ3Accel#40;8BLDelete Q3DataTable5BFalse Q3DataTableAB028BLInsert Q3DataTable0True Q3DataTable1=>28BLUpdate Q3DataTablez%1 $09; =5 =0945=. @>25@LB5 ?@028;L=>ABL ?CB8 8 8<5=8 D09;0.+%1 File not found. Check path and filename. Q3FileDialog&#40;8BL&Delete Q3FileDialog&5B&No Q3FileDialog&&OK Q3FileDialog&B:@KBL&Open Q3FileDialog&5@58<5=>20BL&Rename Q3FileDialog&!>E@0=8BL&Save Q3FileDialog"&5 C?>@O4>G820BL &Unsorted Q3FileDialog&0&Yes Q3FileDialogb<qt>K 459AB28B5;L=> E>B8B5 C40;8BL %1 %2?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialogA5 D09;K (*) All Files (*) Q3FileDialogA5 D09;K (*.*)All Files (*.*) Q3FileDialogB@81CBK Attributes Q3FileDialog 0704Back Q3FileDialog B<5=0Cancel Q3FileDialog>>?8@>20BL 8;8 ?5@5<5AB8BL D09;Copy or Move a File Q3FileDialog!>740BL ?0?:CCreate New Folder Q3FileDialog0B0Date Q3FileDialog#40;8BL %1 Delete %1 Q3FileDialog>4@>1=K9 284 Detail View Q3FileDialog0B0;>3Dir Q3FileDialog0B0;>38 Directories Q3FileDialog0B0;>3: Directory: Q3FileDialog H81:0Error Q3FileDialog$09;File Q3FileDialog&<O D09;0: File &name: Q3FileDialog&"8? D09;0: File &type: Q3FileDialog09B8 :0B0;>3Find Directory Q3FileDialog5B 4>ABC?0 Inaccessible Q3FileDialog !?8A>: List View Q3FileDialog&0?:0: Look &in: Q3FileDialog<OName Q3FileDialog>20O ?0?:0 New Folder Q3FileDialog>20O ?0?:0 %1 New Folder %1 Q3FileDialog>20O ?0?:0 1 New Folder 1 Q3FileDialog*25@E =0 >48= C@>25=LOne directory up Q3FileDialogB:@KBLOpen Q3FileDialogB:@KBL Open  Q3FileDialog<@54?@>A<>B@ A>45@68<>3> D09;0Preview File Contents Q3FileDialog>@54?@>A<>B@ 8=D>@<0F88 > D09;5Preview File Info Q3FileDialog&1=>28BLR&eload Q3FileDialog">;L:> GB5=85 Read-only Q3FileDialog'B5=85 8 70?8AL Read-write Q3FileDialog'B5=85: %1Read: %1 Q3FileDialog!>E@0=8BL :0:Save As Q3FileDialogK1@0BL :0B0;>3Select a Directory Q3FileDialog.>:070BL A:&@KBK5 D09;KShow &hidden files Q3FileDialog  07<5@Size Q3FileDialog#?>@O4>G8BLSort Q3FileDialog> &40B5 Sort by &Date Q3FileDialog> &8<5=8 Sort by &Name Q3FileDialog> &@07<5@C Sort by &Size Q3FileDialog!?5FD09;Special Q3FileDialog"!AK;:0 =0 :0B0;>3Symlink to Directory Q3FileDialog!AK;:0 =0 D09;Symlink to File Q3FileDialog$!AK;:0 =0 A?5FD09;Symlink to Special Q3FileDialog"8?Type Q3FileDialog">;L:> 70?8AL Write-only Q3FileDialog0?8AL: %1 Write: %1 Q3FileDialog:0B0;>3 the directory Q3FileDialogD09;the file Q3FileDialog AAK;:C the symlink Q3FileDialog:5 C40;>AL A>740BL :0B0;>3 %1Could not create directory %1 Q3LocalFs*5 C40;>AL >B:@KBL %1Could not open %1 Q3LocalFs>5 C40;>AL ?@>G8B0BL :0B0;>3 %1Could not read directory %1 Q3LocalFsL5 C40;>AL C40;8BL D09; 8;8 :0B0;>3 %1%Could not remove file or directory %1 Q3LocalFs@5 C40;>AL ?5@58<5=>20BL %1 2 %2Could not rename %1 to %2 Q3LocalFs,5 C40;>AL 70?8A0BL %1Could not write %1 Q3LocalFs0AB@>8BL... Customize... Q3MainWindowK@>2=OBLLine up Q3MainWindowD?5@0F8O >AB0=>2;5=0 ?>;L7>20B5;5<Operation stopped by the userQ3NetworkProtocol B<5=0CancelQ3ProgressDialog@8<5=8BLApply Q3TabDialog B<5=0Cancel Q3TabDialog> C<>;G0=8NDefaults Q3TabDialog!?@02:0Help Q3TabDialogOK Q3TabDialog&>?8@>20BL&Copy Q3TextEdit&AB028BL&Paste Q3TextEdit&&>2B>@8BL 459AB285&Redo Q3TextEdit$&B<5=8BL 459AB285&Undo Q3TextEditG8AB8BLClear Q3TextEdit&K@570BLCu&t Q3TextEditK45;8BL 2AQ Select All Q3TextEdit0:@KBLClose Q3TitleBarK:@K205B >:=>Closes the window Q3TitleBarB!>45@68B :><0=4K C?@02;5=8O >:=><*Contains commands to manipulate the window Q3TitleBarrB>1@0605B =0720=85 >:=0 8 A>45@68B :><0=4K C?@02;5=8O 8<FDisplays the name of the window and contains controls to manipulate it Q3TitleBar@ 072>@0G8205B >:=> =0 25AL M:@0=Makes the window full screen Q3TitleBar 0A?0E=CBLMaximize Q3TitleBar!25@=CBLMinimize Q3TitleBar !2>@0G8205B >:=>Moves the window out of the way Q3TitleBard>72@0I05B @0A?0E=CB>5 >:=> 2 =>@<0;L=>5 A>AB>O=85&Puts a maximized window back to normal Q3TitleBar`>72@0I05B A2Q@=CB>5 >:=> 2 =>@<0;L=>5 A>AB>O=85&Puts a minimized window back to normal Q3TitleBar>AAB0=>28BL Restore down Q3TitleBar>AAB0=>28BL Restore up Q3TitleBar!8AB5<=>5 <5=NSystem Q3TitleBar>;LH5...More... Q3ToolBar(=58725AB=>) (unknown) Q3UrlOperator@>B>:>; %1 =5 ?>445@68205B :>?8@>20=85 8;8 ?5@5<5I5=85 D09;>2 8;8 :0B0;>3>2IThe protocol `%1' does not support copying or moving files or directories Q3UrlOperator`@>B>:>; %1 =5 ?>445@68205B A>740=85 :0B0;>3>2;The protocol `%1' does not support creating new directories Q3UrlOperatorZ@>B>:>; %1 =5 ?>445@68205B ?5@540GC D09;>20The protocol `%1' does not support getting files Q3UrlOperator`@>B>:>; %1 =5 ?>445@68205B ?@>A<>B@ :0B0;>3>26The protocol `%1' does not support listing directories Q3UrlOperatorZ@>B>:>; %1 =5 ?>445@68205B >B?@02:C D09;>20The protocol `%1' does not support putting files Q3UrlOperatorv@>B>:>; %1 =5 ?>445@68205B C40;5=85 D09;>2 8;8 :0B0;>3>2@The protocol `%1' does not support removing files or directories Q3UrlOperator@>B>:>; %1 =5 ?>445@68205B ?5@58<5=>20=85 D09;>2 8;8 :0B0;>3>2@The protocol `%1' does not support renaming files or directories Q3UrlOperator>@>B>:>; %1 =5 ?>445@68205BAO"The protocol `%1' is not supported Q3UrlOperatorB&<5=0&CancelQ3Wizard&025@H8BL&FinishQ3Wizard&!?@02:0&HelpQ3Wizard&0;55 >&Next >Q3Wizard< &0704< &BackQ3Wizard*B:070=> 2 A>548=5=88Connection refusedQAbstractSocket6@5<O =0 A>548=5=85 8AB5:;>Connection timed outQAbstractSocket#75; =5 =0945=Host not foundQAbstractSocket!5BL =54>ABC?=0Network unreachableQAbstractSocketH?5@0F8O A A>:5B>< =5 ?>445@68205BAO$Operation on socket is not supportedQAbstractSocket$!>:5B =5 ?>4:;NGQ=Socket is not connectedQAbstractSocketF@5<O =0 >?5@0F8N A A>:5B>< 8AB5:;>Socket operation timed outQAbstractSocket&K45;8BL 2AQ &Select AllQAbstractSpinBox(03 22&5@E&Step upQAbstractSpinBox(03 2=&87 Step &downQAbstractSpinBox 060BLPressQAccessibleButton:B828@>20BLActivate QApplicationB:B828@C5B 3;02=>5 >:=> ?@>3@0<<K#Activates the program's main window QApplicationr@>3@0<<=K9 <>4C;L %1 B@51C5B Qt %2, =0945=0 25@A8O %3.,Executable '%1' requires Qt %2, found Qt %3. QApplicationDH81:0 A>2<5AB8<>AB8 181;8>B5:8 QtIncompatible Qt Library Error QApplicationLTRQT_LAYOUT_DIRECTION QApplicationB&<5=0&Cancel QAxSelect&1J5:B COM: COM &Object: QAxSelectK1@0BLOK QAxSelect0K1>@ :><?>=5=BK ActiveXSelect ActiveX Control QAxSelectB<5B8BLCheck QCheckBox5@5:;NG8BLToggle QCheckBox!=OBL >B<5B:CUncheck QCheckBoxF&>1028BL : ?>;L7>20B5;LA:8< F25B0<&Add to Custom Colors QColorDialog&A=>2=K5 F25B0 &Basic colors QColorDialog.&>;L7>20B5;LA:85 F25B0&Custom colors QColorDialog&5;Q=K9:&Green: QColorDialog&@0A=K9:&Red: QColorDialog &0A:&Sat: QColorDialog &/@::&Val: QColorDialog&;LD0-:0=0;:A&lpha channel: QColorDialog!&8=89:Bl&ue: QColorDialog &">=:Hu&e: QColorDialogK1>@ F25B0 Select Color QColorDialog0:@KBLClose QComboBox5BFalse QComboBoxB:@KBLOpen QComboBox0True QComboBox$%1: C65 ACI5AB2C5B%1: already existsQCoreApplication"%1: =5 ACI5AB2C5B%1: does not existQCoreApplication%1: >H81:0 ftok%1: ftok failedQCoreApplication%1: ?CAB>9 :;NG%1: key is emptyQCoreApplication2%1: =54>AB0B>G=> @5AC@A>2%1: out of resourcesQCoreApplication&%1: 4>ABC? 70?@5IQ=%1: permission deniedQCoreApplication6%1: =52>7<>6=> A>740BL :;NG%1: unable to make keyQCoreApplication2%1: =58725AB=0O >H81:0 %2%1: unknown error %2QCoreApplication>52>7<>6=> 7025@H8BL B@0=70:F8NUnable to commit transaction QDB2Driver,52>7<>6=> A>548=8BLAOUnable to connect QDB2Driver<52>7<>6=> >B>720BL B@0=70:F8NUnable to rollback transaction QDB2Driver^52>7<>6=> CAB0=>28BL 02B>7025@H5=85 B@0=70:F89Unable to set autocommit QDB2Driver:52>7<>6=> ?@82O70BL 7=0G5=85Unable to bind variable QDB2Result<52>7<>6=> 2K?>;=8BL 2K@065=85Unable to execute statement QDB2ResultB52>7<>6=> ?>;CG8BL ?5@2CN AB@>:CUnable to fetch first QDB2ResultH52>7<>6=> ?>;CG8BL A;54CNICN AB@>:CUnable to fetch next QDB2Result:52>7<>6=> ?>;CG8BL 70?8AL %1Unable to fetch record %1 QDB2Result@52>7<>6=> ?>43>B>28BL 2K@065=85Unable to prepare statement QDB2ResultAMAM QDateTimeEditPMPM QDateTimeEditamam QDateTimeEditpmpm QDateTimeEditBAnimation - MB> 01AB@0:B=K9 :;0AAAnimation is an abstract classQDeclarativeAbstractAnimationf52>7<>6=> 0=8<8@>20BL =5ACI5AB2C5I55 A2>9AB2> %1)Cannot animate non-existent property "%1"QDeclarativeAbstractAnimationl52>7<>6=> 0=8<8@>20BL A2>9AB2> B>;L:> 4;O GB5=8O %1&Cannot animate read-only property "%1"QDeclarativeAbstractAnimationL52>7<>6=> CAB0=>28BL 4;8B5;L=>ABL < 0Cannot set a duration of < 0QDeclarativeAnchorAnimation52>7<>6=> 8A?>;L7>20BL 107>2CN ?@82O7:C 2<5AB5 A 25@E=59, =86=59 8 F5=B@0;L=>9 ?> 25@B8:0;8.SBaseline anchor cannot be used in conjunction with top, bottom, or vcenter anchors.QDeclarativeAnchorsr52>7<>6=> ?@82O70BL 3>@87>=B0;L=K9 :@09 : 25@B8:0;L=><C.3Cannot anchor a horizontal edge to a vertical edge.QDeclarativeAnchorsr52>7<>6=> ?@82O70BL 25@B8:0;L=K9 :@09 : 3>@87>=B0;L=><C.3Cannot anchor a vertical edge to a horizontal edge.QDeclarativeAnchorsV52>7<>6=> ?@82O70BL M;5<5=B : A0<><C A515.Cannot anchor item to self.QDeclarativeAnchorsV52>7<>6=> ?@82O70BLAO : =C;52><C M;5<5=BC.Cannot anchor to a null item.QDeclarativeAnchors52>7<>6=> CAB0=>28BL ?@82O7:C : M;5<5=BC, =5 O2;ONI5<CAO @>48B5;5< 8;8 A>A54><.8Cannot anchor to an item that isn't a parent or sibling.QDeclarativeAnchorsf52>7<>6=> 7040BL ;52CN, ?@02CN 8 A@54=NN ?@82O7:8.0Cannot specify left, right, and hcenter anchors.QDeclarativeAnchorsj52>7<>6=> 7040BL 25@E=NN, =86=NN 8 A@54=NN ?@82O7:8.0Cannot specify top, bottom, and vcenter anchors.QDeclarativeAnchorsh1=0@C65=0 2>7<>6=0O F8:;8G=0O ?@82O7:0 =0 centerIn.*Possible anchor loop detected on centerIn.QDeclarativeAnchors`1=0@C65=0 2>7<>6=0O F8:;8G=0O ?@82O7:0 =0 fill.&Possible anchor loop detected on fill.QDeclarativeAnchors1=0@C65=0 2>7<>6=0O F8:;8G=0O ?@82O7:0 : 3>@87>=B0;L=>9 ?@82O7:5.3Possible anchor loop detected on horizontal anchor.QDeclarativeAnchors1=0@C65=0 2>7<>6=0O F8:;8G=0O ?@82O7:0 : 25@B8:0;L=>9 ?@82O7:5.1Possible anchor loop detected on vertical anchor.QDeclarativeAnchorsHQt 1K;> A>1@0=> 157 ?>445@6:8 QMovie'Qt was built without support for QMovieQDeclarativeAnimatedImage>;0AA Application - 01AB@0:B=K9 Application is an abstract classQDeclarativeApplicationh52>7<>6=> 87<5=8BL 0=8<0F8N, =07=0G5==CN ?>2545=8N.3Cannot change the animation assigned to a Behavior.QDeclarativeBehaviord1=0@C65=> 70F8:;820=85 ?@82O7:8 4;O A2>9AB20 %1'Binding loop detected for property "%1"QDeclarativeBinding^1=0@C65=0 F8:;8G=0O ?@82O7:0 4;O A2>9AB20 %1'Binding loop detected for property "%1"QDeclarativeCompiledBindingsH%1 =5 <>65B 2>7459AB2>20BL =0 %2"%1" cannot operate on "%2"QDeclarativeCompilerX%1.%2 =5 4>ABC?=> 87-70 25@A88 :><?>=5=BK.5"%1.%2" is not available due to component versioning.QDeclarativeCompiler>%1.%2 =5 4>ABC?=> 2 %3 %4.%5.%"%1.%2" is not available in %3 %4.%5.QDeclarativeCompilerL!2>9AB2> ?A524>=8<0 2KE>48B 70 3@0=8FK#Alias property exceeds alias boundsQDeclarativeCompilern@8:@5?;Q==K5 A2>9AB20 =5 <>3CB 1KBL 8A?>;L7>20=K 745AL'Attached properties cannot be used hereQDeclarativeCompilerX>6=> =07=0G8BL B>;L:> >4=C A2O7L 4;O A?8A:0$Can only assign one binding to listsQDeclarativeCompiler52>7<>6=> ?@8A2>8BL 7=0G5=85 =5?>A@54AB25==> A3@C??8@>20==><C A2>9AB2C4Cannot assign a value directly to a grouped propertyQDeclarativeCompiler52>7<>6=> =07=0G8BL 7=0G5=85 A83=0;C (AF5=0@89 4>;65= 1KBL 70?CI5=)@Cannot assign a value to a signal (expecting a script to be run)QDeclarativeCompilerz52>7<>6=> =07=0G8BL <=>65AB25==>5 7=0G5=85 A2>9AB2C AF5=0@8O2Cannot assign multiple values to a script propertyQDeclarativeCompiler52>7<>6=> ?@8A2>8BL <=>65AB2> 7=0G5=89 A2>9AB2C, ?@8=8<0NI5<C B>;L:> >4=>4Cannot assign multiple values to a singular propertyQDeclarativeCompilerD52>7<>6=> =07=0G8BL >1J5:B A?8A:CCannot assign object to listQDeclarativeCompilerF52>7<>6=> =07=0G8BL >1J5:BA2>9AB2C Cannot assign object to propertyQDeclarativeCompilerJ52>7<>6=> =07=0G8BL ?@8<8B82K A?8A:C!Cannot assign primitives to listsQDeclarativeCompilert52>7<>6=> =07=0G8BL =5ACI5AB2CNI5<C A2>9AB2C ?> C<>;G0=8N.Cannot assign to non-existent default propertyQDeclarativeCompilerd52>7<>6=> =07=0G8BL =5ACI5AB2CNI5<C A2>9AB2C %1+Cannot assign to non-existent property "%1"QDeclarativeCompiler`52>7<>6=> A>740BL ?CABCN A?5F8D8:0FN :><?>=5=B0+Cannot create empty component specificationQDeclarativeCompilerP52>7<>6=> ?5@5>?@545;8BL A2>9AB2> FINALCannot override FINAL propertyQDeclarativeCompilerl-;5<5=BK Component =5 <>3CB A>45@60BL A2>9AB2 :@><5 id;Component elements may not contain properties other than idQDeclarativeCompilerf1J5:BK Component =5 <>3CB >1JO2;OBL =>2K5 DC=:F88./Component objects cannot declare new functions.QDeclarativeCompilerh1J5:BK Component =5 <>3CB >1JO2;OBL =>2K5 A2>9AB20.0Component objects cannot declare new properties.QDeclarativeCompilerf1J5:BK Component =5 <>3CB >1JO2;OBL =>2K5 A83=0;K.-Component objects cannot declare new signals.QDeclarativeCompilerDC1;8@>20=85 A2>9AB20 ?> C<>;G0=8NDuplicate default propertyQDeclarativeCompiler8C1;8@>20=85 =0720=85 <5B>40Duplicate method nameQDeclarativeCompiler<C1;8@>20=85 =0720=8O A2>9AB20Duplicate property nameQDeclarativeCompiler:C1;8@>20=85 =0720=8O A83=0;0Duplicate signal nameQDeclarativeCompiler@-;5<5=B =5 O2;O5BAO A>740205<K<.Element is not creatable.QDeclarativeCompiler4CAB>5 =07=0G5=85 A2>9AB20Empty property assignmentQDeclarativeCompiler2CAB>5 =07=0G5=85 A83=0;0Empty signal assignmentQDeclarativeCompiler|45=B8D8:0B>@ =525@=> <0A:8@C5B 3;>10;L=>5 A2>9AB2> JavaScript-ID illegally masks global JavaScript propertyQDeclarativeCompilerh45=B8D8:0B>@K =5 <>3CB =0G8=0BLAO A 703;02=>9 1C:2K)IDs cannot start with an uppercase letterQDeclarativeCompiler45=B8D8:0B>@K 4>;6=K A>45@60BL B>;L:> 1C:2K, F8D@K 8 ?>4GQ@:820=8O7IDs must contain only letters, numbers, and underscoresQDeclarativeCompilert45=B8D8:0B>@K 4>;6=K =0G8=0BLAO A 1C:2K 8;8 ?>4GQ@:820=8O*IDs must start with a letter or underscoreQDeclarativeCompiler854>?CAB8<>5 =0720=85 <5B>40Illegal method nameQDeclarativeCompiler<54>?CAB8<>5 =0720=85 A2>9AB20Illegal property nameQDeclarativeCompiler:54>?CAB8<>5 =0720=85 A83=0;0Illegal signal nameQDeclarativeCompilerD525@=> C:070=> =07=0G5=85 A83=0;0'Incorrectly specified signal assignmentQDeclarativeCompilerD5:>@@5:B=>5 @07<5I5=85 ?A524>=8<0Invalid alias locationQDeclarativeCompiler5:>@@5:B=0O AAK;:0 =0 ?A524>=8<. !AK;:0 =0 ?A524>=8< 4>;6=0 1KBL C:070=0, :0: <id>, <id>.<A2>9AB2>> 8;8 <id>.<A2>9AB2> 7=0G5=8O>.<A2>9AB2>>zInvalid alias reference. An alias reference must be specified as , . or ..QDeclarativeCompilert5:>@@5:B=0O AAK;:0 =0 ?A524>=8<. 5 C40;>AL =09B8 id %1/Invalid alias reference. Unable to find id "%1"QDeclarativeCompiler\5:>@@5:B=>5 =07=0G5=85 ?@8:@5?;Q==>3> >1J5:B0"Invalid attached object assignmentQDeclarativeCompilerR5:>@@5:B=0O A?5F8D8:0F8O B5;0 :><?>=5=B0$Invalid component body specificationQDeclarativeCompilerN5:>@@5:B=0O A?5F8D8:0F8O id :><?>=5=B0"Invalid component id specificationQDeclarativeCompilerB5:>@@5:B=K9 ?CAB>9 845=B8D8:0B>@Invalid empty IDQDeclarativeCompiler^5:>@@5:B=K9 4>ABC? : A3@C??8@>20==><C A2>9AB2CInvalid grouped property accessQDeclarativeCompiler5:>@@5:B=>5 ?@8A20820=85 A2>9AB20: %1 A2>9AB2> B>;L:> 4;O GB5=8O9Invalid property assignment: "%1" is a read-only propertyQDeclarativeCompiler5:>@@5:B=>5 ?@8A20820=85 A2>9AB20: >68405BAO 7=0G5=85 B8?0 B@QE<5@=K9 25:B>@/Invalid property assignment: 3D vector expectedQDeclarativeCompiler5:>@@5:B=>5 ?@8A20820=85 A2>9AB20: >68405BAO 7=0G5=85 1C;52>3> B8?0-Invalid property assignment: boolean expectedQDeclarativeCompiler5:>@@5:B=>5 ?@8A20820=85 A2>9AB20: >68405BAO 7=0G5=85 B8?0 color+Invalid property assignment: color expectedQDeclarativeCompiler5:>@@5:B=>5 ?@8A20820=85 A2>9AB20: >68405BAO 7=0G5=85 B8?0 date*Invalid property assignment: date expectedQDeclarativeCompiler5:>@@5:B=>5 ?@8A20820=85 A2>9AB20: >68405BAO 7=0G5=85 B8?0 datetime.Invalid property assignment: datetime expectedQDeclarativeCompiler5:>@@5:B=>5 ?@8A20820=85 A2>9AB20: >68405BAO 7=0G5=85 B8?0 int)Invalid property assignment: int expectedQDeclarativeCompilerf5:>@@5:B=>5 ?@8A20820=85 A2>9AB20: >68405BAO G8A;>,Invalid property assignment: number expectedQDeclarativeCompiler5:>@@5:B=>5 ?@8A20820=85 A2>9AB20: >68405BAO 7=0G5=85 B8?0 point+Invalid property assignment: point expectedQDeclarativeCompiler5:>@@5:B=>5 ?@8A20820=85 A2>9AB20: >68405BAO 7=0G5=85 B8?0 rect*Invalid property assignment: rect expectedQDeclarativeCompilerl5:>@@5:B=>5 ?@8A20820=85 A2>9AB20: >68405BAO AF5=0@89,Invalid property assignment: script expectedQDeclarativeCompiler5:>@@5:B=>5 ?@8A20820=85 A2>9AB20: >68405BAO 7=0G5=85 B8?0 size*Invalid property assignment: size expectedQDeclarativeCompiler5:>@@5:B=>5 ?@8A20820=85 A2>9AB20: >68405BAO 7=0G5=85 B8?0 string,Invalid property assignment: string expectedQDeclarativeCompiler5:>@@5:B=>5 ?@8A20820=85 A2>9AB20: >68405BAO 7=0G5=85 B8?0 time*Invalid property assignment: time expectedQDeclarativeCompilerx5:>@@5:B=>5 ?@8A20820=85 A2>9AB20: =58725AB=>5 ?5@5G8A;5=850Invalid property assignment: unknown enumerationQDeclarativeCompiler5:>@@5:B=>5 ?@8A20820=85 A2>9AB20: >68405BAO 7=0G5=85 B8?0 unsigned int2Invalid property assignment: unsigned int expectedQDeclarativeCompilerz5:>@@5:B=>5 ?@8A20820=85 A2>9AB20: =5?>445@68205<K9 B8? %12Invalid property assignment: unsupported type "%1"QDeclarativeCompiler5:>@@5:B=>5 ?@8A20820=85 A2>9AB20: >68405BAO 7=0G5=85 B8?0 url)Invalid property assignment: url expectedQDeclarativeCompiler@5:>@@5:B=>5 2;>65==>ABL A2>9AB2Invalid property nestingQDeclarativeCompiler25:>@@5:B=K9 B8? A2>9AB20Invalid property typeQDeclarativeCompilerF5:>@@5:B=>5 8A?>;L7>20=85 A2>9AB20Invalid property useQDeclarativeCompilerL5:>@@5:B=>5 8A?>;L7>20=85 A2>9AB20 idInvalid use of id propertyQDeclarativeCompilerX5:>@@5:B=>5 8A?>;L7>20=85 ?@>AB@0=AB20 8<Q=Invalid use of namespaceQDeclarativeCompilerl0720=8O <5B>4>2 =5 <>3CB =0G8=0BLAO A 703;02=>9 1C:2K3Method names cannot begin with an upper case letterQDeclarativeCompilerTBACBAB2C5B @07<5I5=85 ?A524>=8<0 A2>9AB20No property alias locationQDeclarativeCompilerF5ACI5AB2CNI89 ?@8:@5?;Q==K9 >1J5:BNon-existent attached objectQDeclarativeCompilerP5 O2;O5BAO 8<5=5< ?@82O70==>3> A2>9AB20Not an attached property nameQDeclarativeCompiler:68405BAO =07=0G5=85 A2>9AB20Property assignment expectedQDeclarativeCompiler>!2>9AB2C C65 =07=0G5=> 7=0G5=85*Property has already been assigned a valueQDeclarativeCompilerl0720=8O A2>9AB2 =5 <>3CB =0G8=0BLAO A 703;02=>9 1C:2K5Property names cannot begin with an upper case letterQDeclarativeCompilerL=0G5=85 A2>9AB20 7040=> =5A:>;L:> @07!Property value set multiple timesQDeclarativeCompilern0720=8O A83=0;>2 =5 <>3CB =0G8=0BLAO A 703;02=>9 1C:2K3Signal names cannot begin with an upper case letterQDeclarativeCompilerN68405BAO >48=>G=>5 =07=0G5=85 A2>9AB20#Single property assignment expectedQDeclarativeCompiler<5>6840==>5 =07=0G5=85 >1J5:B0Unexpected object assignmentQDeclarativeCompilerid =5 C=8:0;5=id is not uniqueQDeclarativeCompiler CAB>9 04@5A URLInvalid empty URLQDeclarativeComponentVcreateObject: 7=0G5=85 =5 O2;O5BAO >1J5:B><$createObject: value is not an objectQDeclarativeComponentd52>7<>6=> =07=0G8BL =5ACI5AB2CNI5<C A2>9AB2C %1+Cannot assign to non-existent property "%1"QDeclarativeConnectionsT>4:;NG5=8O: 2;>65==K5 >1J5:BK =54>?CAB8<K'Connections: nested objects not allowedQDeclarativeConnections>>4:;NG5=8O: >68405BAO AF5=0@89Connections: script expectedQDeclarativeConnectionsD>4:;NG5=8O: A8=B0:A8G5A:0O >H81:0Connections: syntax errorQDeclarativeConnections8"@0=70:F8O B>;L:> 4;O GB5=8ORead-only TransactionQDeclarativeEngineF5 C40;>AL 2K?>;=8BL B@0=70:F8N SQLSQL transaction failedQDeclarativeEngineF5 A>2?0405B 25@A8O 107K 40==KE SQLSQL: database version mismatchQDeclarativeEngineZ5A>2?045=85 25@A89: >6840;0AL %1, =0945=0 %2'Version mismatch: expected %1, found %2QDeclarativeEngineJexecuteSql() 2K720= 2=5 transaction()'executeSql called outside transaction()QDeclarativeEngineLB@0=70:F8O: >BACBAB2C5B >1@0B=K9 2K7>2transaction: missing callbackQDeclarativeEngineLback - A2>9AB2> 4;O >4=>:@0B=>9 70?8A8back is a write-once propertyQDeclarativeFlipableNfront - A2>9AB2> 4;O >4=>:@0B=>9 70?8A8front is a write-once propertyQDeclarativeFlipable6%1: :0B0;>3 =5 ACI5AB2C5B"%1": no such directoryQDeclarativeImportDatabaseJ- %1 - =5:>@@5:B=>5 ?@>AB@0=AB2> 8<Q=- %1 is not a namespaceQDeclarativeImportDatabaseR- 2;>65==K5 ?@>AB@0=AB20 8<Q= =54>?CAB8<K- nested namespaces not allowedQDeclarativeImportDatabaseR 538AB@ 8<5=8 D09;0 =5 A>>B25BAB2C5B %2 File name case mismatch for "%2"QDeclarativeImportDatabase=52>7<>6=> 703@C78BL <>4C;L %1:  538AB@ 8<5=8 D09;0 =5 A>>B25BAB2C5B %29cannot load module "%1": File name case mismatch for "%2"QDeclarativeImportDatabase`:0B0;>3 %1 =5 A>45@68B =8 qmldir, =8 namespace*import "%1" has no qmldir and no namespaceQDeclarativeImportDatabase>=5>4=>7=0G=>. 0945=> 2 %1 8 %2#is ambiguous. Found in %1 and in %2QDeclarativeImportDatabase^=5>4=>7=0G=>. 0945=> 2 %1 25@A89 %2.%3 8 %4.%54is ambiguous. Found in %1 in version %2.%3 and %4.%5QDeclarativeImportDatabase2>1@010BK205BAO @5:C@A82=>is instantiated recursivelyQDeclarativeImportDatabase"=5 O2;O5BAO B8?>< is not a typeQDeclarativeImportDatabase";>:0;L=K9 :0B0;>3local directoryQDeclarativeImportDatabaseb=52>7<>6=> ?@>G8B0BL >?@545;5=85 %2 <>4C;O %1(module "%1" definition "%2" not readableQDeclarativeImportDatabase2<>4C;L %1 =5 CAB0=>2;5=module "%1" is not installedQDeclarativeImportDatabaseD<>4C;L %1 ?;038=0 %2 =5 =0945=!module "%1" plugin "%2" not foundQDeclarativeImportDatabaseL<>4C;L %1 25@A88 %2.%3 =5 CAB0=>2;5=*module "%1" version %2.%3 is not installedQDeclarativeImportDatabase^=5 C40;>AL 703@C78BL ?;038= 4;O <>4C;O %1: %2+plugin cannot be loaded for module "%1": %2QDeclarativeImportDatabasetKeyNavigation 4>ABC?=0 B>;L:> G5@57 ?@8:@5?;Q==K5 A2>9AB207KeyNavigation is only available via attached properties!QDeclarativeKeyNavigationAttachedbKeys 4>ABC?=K B>;L:> G5@57 ?@8:@5?;Q==K5 A2>9AB20.Keys is only available via attached propertiesQDeclarativeKeysAttached>4:;NGQ==>5 A2>9AB2> LayoutDirection @01>B05B B>;L:> A M;5<5=B0<87LayoutDirection attached property only works with Items#QDeclarativeLayoutMirroringAttachedvLayoutMirroring 4>ABC?=> B>;L:> G5@57 ?>4:;NG05<K5 A2>9AB209LayoutMirroring is only available via attached properties#QDeclarativeLayoutMirroringAttacheddListElement: =5 <>65B A>45@60BL 2;>65==K5 M;5<5=BK+ListElement: cannot contain nested elementsQDeclarativeListModelListElement: =52>7<>6=> 8A?>;L7>20BL 70@575@28@>20==>5 A2>9AB2> id.ListElement: cannot use reserved "id" propertyQDeclarativeListModelListElement: =52>7<>6=> 8A?>;L7>20BL AF5=0@89 2 :0G5AB25 7=0G5=8O A2>9AB201ListElement: cannot use script for property valueQDeclarativeListModelNListModel: =5>?@545;Q==>5 A2>9AB2> %1"ListModel: undefined property '%1'QDeclarativeListModelJappend: 7=0G5=85 =5 O2;O5BAO >1J5:B><append: value is not an objectQDeclarativeListModel>insert: 8=45:A %1 2=5 480?07>=0insert: index %1 out of rangeQDeclarativeListModelJinsert: 7=0G5=85 =5 O2;O5BAO >1J5:B><insert: value is not an objectQDeclarativeListModel4move: 8=45:A 2=5 480?07>=0move: out of rangeQDeclarativeListModel>remove: 8=45:A %1 2=5 480?07>=0remove: index %1 out of rangeQDeclarativeListModel8set: 8=45:A %1 2=5 480?07>=0set: index %1 out of rangeQDeclarativeListModelDset: 7=0G5=85 =5 O2;O5BAO >1J5:B><set: value is not an objectQDeclarativeListModelt03@C7G8: =5 ?>445@68205B 703@C7:C =5287C0;L=KE M;5<5=B>2.4Loader does not support loading non-visual elements.QDeclarativeLoaderv52>7<>6=> A>E@0=8BL 2=5H=89 284 ?@8 A;>6=>< ?@5>1@07>20=885Unable to preserve appearance under complex transformQDeclarativeParentAnimationt52>7<>6=> A>E@0=8BL 2=5H=89 284 ?@8 =5>4=>@>4=>< <0AHB0155Unable to preserve appearance under non-uniform scaleQDeclarativeParentAnimation^52>7<>6=> A>E@0=8BL 2=5H=89 284 ?@8 <0AHB015 0.Unable to preserve appearance under scale of 0QDeclarativeParentAnimationv52>7<>6=> A>E@0=8BL 2=5H=89 284 ?@8 A;>6=>< ?@5>1@07>20=885Unable to preserve appearance under complex transformQDeclarativeParentChanget52>7<>6=> A>E@0=8BL 2=5H=89 284 ?@8 =5>4=>@>4=>< <0AHB0155Unable to preserve appearance under non-uniform scaleQDeclarativeParentChange^52>7<>6=> A>E@0=8BL 2=5H=89 284 ?@8 <0AHB015 0.Unable to preserve appearance under scale of 0QDeclarativeParentChange.68405BAO B8? ?0@0<5B@0Expected parameter typeQDeclarativeParser,68405BAO B8? A2>9AB20Expected property typeQDeclarativeParser*68405BAO A8<2>; %1Expected token `%1'QDeclarativeParser.68405BAO =0720=85 B8?0Expected type nameQDeclarativeParserR45=B8D8:0B>@ =5 <>65B =0G8=0BLAO A F8D@K,Identifier cannot start with numeric literalQDeclarativeParser&54>?CAB8<K9 A8<2>;Illegal characterQDeclarativeParserF54>?CAB8<0O esc-?>A;54>20B5;L=>ABLIllegal escape sequenceQDeclarativeParserd54>?CAB8<K9 A8=B0:A8A 4;O M:A?>=5=F80;L=>3> G8A;0%Illegal syntax for exponential numberQDeclarativeParserV54>?CAB8<0O unicode esc-?>A;54>20B5;L=>ABLIllegal unicode escape sequenceQDeclarativeParserJ5:>@@5:B=K9 ID A?5F8D8:0B>@0 8<?>@B0Invalid import qualifier IDQDeclarativeParserL5:>@@5:B=K9 <>48D8:0B>@ B8?0 A2>9AB20Invalid property type modifierQDeclarativeParserZ5:>@@5:B=K9 D;03 %0 2 @53C;O@=>< 2K@065=88$Invalid regular expression flag '%0'QDeclarativeParserT?@545;5=85 JavaScript 2=5 M;5<5=B0 Script-JavaScript declaration outside Script elementQDeclarativeParser@<?>@B 181;8>B5:8 B@51C5B 25@A8N!Library import requires a versionQDeclarativeParserV=0G5=85 A2>9AB20 CAB0=>2;5=> =5A:>;L:> @07!Property value set multiple timesQDeclarativeParser<Readonly 5IQ =5 ?>445@68205BAOReadonly not yet supportedQDeclarativeParser0@575@28@>20==>5 8<O Qt =5 <>65B 1KBL 8A?>;L7>20=> 2 :0G5AB25 A?5F8D8:0B>@01Reserved name "Qt" cannot be used as an qualifierQDeclarativeParsern!?5F8D8:0B>@K 8<?>@B0 AF5=0@8O 4>;6=K 1KBL C=8:0;L=K<8.(Script import qualifiers must be unique.QDeclarativeParserV;O 8<?>@B0 AF5=0@8O B@51C5BAO A?5F8D8:0B>@"Script import requires a qualifierQDeclarativeParser*!8=B0:A8G5A:0O >H81:0 Syntax errorQDeclarativeParserJ570:@KBK9 :><<5=B0@89 2 :>=F5 AB@>:8Unclosed comment at end of fileQDeclarativeParser>570:@KBK9 B5:AB 2 :>=F5 AB@>:8Unclosed string at end of lineQDeclarativeParserJ5>6840==K9 <>48D8:0B>@ B8?0 A2>9AB20!Unexpected property type modifierQDeclarativeParser.5>6840==K9 A8<2>; %1Unexpected token `%1'QDeclarativeParser 53C;O@=>5 2K@065=85 A>45@68B =57025@HQ==CN M:@0=8@>20==CN ?>A;54>20B5;L=>ABL2Unterminated regular expression backslash sequenceQDeclarativeParserb 53C;O@=>5 2K@065=85 A>45@68B =57025@HQ==K9 :;0AA%Unterminated regular expression classQDeclarativeParserV570:>=G5==K9 ;8B5@0; @53C;O@=>3> 2K@065=8O'Unterminated regular expression literalQDeclarativeParserL52>7<>6=> CAB0=>28BL 4;8B5;L=>ABL < 0Cannot set a duration of < 0QDeclarativePauseAnimation,5 C40;>AL >B:@KBL: %1Cannot open: %1QDeclarativePixmap8H81:0 45:>48@>20=8O: %1: %2Error decoding: %1: %2QDeclarativePixmapx5 C40;>AL ?>;CG8BL 87>1@065=85 >B ?>AB0I8:0 87>1@065=89: %1%Failed to get image from provider: %1QDeclarativePixmapL52>7<>6=> CAB0=>28BL 4;8B5;L=>ABL < 0Cannot set a duration of < 0QDeclarativePropertyAnimationd52>7<>6=> =07=0G8BL =5ACI5AB2CNI5<C A2>9AB2C %1+Cannot assign to non-existent property "%1"QDeclarativePropertyChangesh52>7<>6=> =07=0G8BL A2>9AB2C B>;L:> 4;O GB5=8O %1(Cannot assign to read-only property "%1"QDeclarativePropertyChangesPropertyChanges =5 ?>445@6820NB A>740=85 >1J5:B>2, 7028A8<KE >B A>AB>O=8O.APropertyChanges does not support creating state-specific objects.QDeclarativePropertyChangesT5 C40;>AL 8=AB0=F88@>20BL 45;530B :C@A>@0%Could not instantiate cursor delegateQDeclarativeTextInputH5 C40;>AL 703@C78BL 45;530B :C@A>@0Could not load cursor delegateQDeclarativeTextInput %1 %2%1 %2QDeclarativeTypeLoader@>AB@0=AB2> 8<Q= %1 =5 <>65B 1KBL 8A?>;L7>20=> 2 :0G5AB25 B8?0%Namespace %1 cannot be used as a typeQDeclarativeTypeLoader,!F5=0@89 %1 =54>ABC?5=Script %1 unavailableQDeclarativeTypeLoader&"8? %1 =54>ABC?5=Type %1 unavailableQDeclarativeTypeLoaderb52>7<>6=> =07=0G8BL >1J5:B : A2>9AB2C A83=0;0 %1-Cannot assign an object to signal property %1QDeclarativeVME^52>7<>6=> =07=0G8BL >1J5:B A2>9AB2C 8=B5@D59A0*Cannot assign object to interface propertyQDeclarativeVMED52>7<>6=> =07=0G8BL >1J5:B A?8A:CCannot assign object to listQDeclarativeVMEz52>7<>6=> ?@8A2>8BL >1J5:B B8?0 %1 157 <5B>40 ?> C<>;G0=8N3Cannot assign object type %1 with no default methodQDeclarativeVME`52>7<>6=> ?@8A2>8BL 7=0G5=85 %1 A2>9AB2C %2%Cannot assign value %1 to property %2QDeclarativeVMEn52>7<>6=> ?>4:;NG8BL >BACBAB2CNI89 A83=0;/A;>B %1 : %20Cannot connect mismatched signal/slot %1 %vs. %2QDeclarativeVMEr52>7<>6=> CAB0=>28BL A2>9AB20 4;O %1, B0: :0: >= =C;52>9)Cannot set properties on %1 as it is nullQDeclarativeVMEF5 C40;>AL A>740BL 2;>65==K9 >1J5:B Unable to create attached objectQDeclarativeVMEF52>7<>6=> A>740BL >1J5:B B8?0 %1"Unable to create object of type %1QDeclarativeVMET><?>=5=B0 45;530B0 4>;65= 1KBL B8?0 Item.%Delegate component must be Item type.QDeclarativeVisualDataModelRQt 1K;> A>1@0=> 157 ?>445@6:8 xmlpatterns,Qt was built without support for xmlpatternsQDeclarativeXmlListModelR0?@>A XmlRole =5 4>;65= =0G8=0BLAO A /(An XmlRole query must not start with '/'QDeclarativeXmlListModelRoleh0?@>A XmlListModel 4>;65= =0G8=0BLAO A / 8;8 //1An XmlListModel query must start with '/' or "//"QDeclarativeXmlRoleList QDialQDialQDialSliderHandle SliderHandleQDialSpeedoMeter SpeedoMeterQDial >B>2>DoneQDialog'B> MB>? What's This?QDialogB&<5=0&CancelQDialogButtonBox&0:@KBL&CloseQDialogButtonBox&5B&NoQDialogButtonBox&&OKQDialogButtonBox&!>E@0=8BL&SaveQDialogButtonBox&0&YesQDialogButtonBox@5@20BLAbortQDialogButtonBox@8<5=8BLApplyQDialogButtonBox B<5=0CancelQDialogButtonBox0:@KBLCloseQDialogButtonBox,0:@KBL 157 A>E@0=5=8OClose without SavingQDialogButtonBoxB:;>=8BLDiscardQDialogButtonBox5 A>E@0=OBL Don't SaveQDialogButtonBox!?@02:0HelpQDialogButtonBox@>?CAB8BLIgnoreQDialogButtonBox&5B 4;O 2A5E N&o to AllQDialogButtonBoxOKQDialogButtonBoxB:@KBLOpenQDialogButtonBox!1@>A8BLResetQDialogButtonBox*>AAB0=>28BL 7=0G5=8ORestore DefaultsQDialogButtonBox>2B>@8BLRetryQDialogButtonBox!>E@0=8BLSaveQDialogButtonBox!>E@0=8BL 2A5Save AllQDialogButtonBox0 4;O &2A5E Yes to &AllQDialogButtonBox0B0 87<5=5=8O Date Modified QDirModel84Kind QDirModel<OName QDirModel  07<5@Size QDirModel"8?Type QDirModel0:@KBLClose QDockWidget@8:@5?8BLDock QDockWidgetB:@5?8BLFloat QDockWidget 5=LH5LessQDoubleSpinBox >;LH5MoreQDoubleSpinBox&0:@KBL&OK QErrorMessageL&>:07K20BL MB> A>>1I5=85 2 40;L=59H5<&Show this message again QErrorMessage*B;04>G=>5 A>>1I5=85:Debug Message: QErrorMessage&@8B8G5A:0O >H81:0: Fatal Error: QErrorMessage@54C?@5645=85:Warning: QErrorMessage@52>7<>6=> A>740BL %1 4;O 2K2>40Cannot create %1 for outputQFile>52>7<>6=> >B:@KBL %1 4;O 22>40Cannot open %1 for inputQFile:52>7<>6=> >B:@KBL 4;O 2K2>40Cannot open for outputQFile@52>7<>6=> C40;8BL 8AE>4=K9 D09;Cannot remove source fileQFile$09; ACI5AB2C5BDestination file existsQFile"!1>9 70?8A8 1;>:0Failure to write blockQFile>A;54>20B5;L=K9 D09; =5 1C45B ?5@58<5=>20= A 8A?>;L7>20=85< ?>1;>G=>3> :>?8@>20=8O0Will not rename sequential file using block copyQFile%1 0B0;>3 =5 =0945=. @>25@LB5 ?@028;L=>ABL C:070==>3> 8<5=8 :0B0;>30.K%1 Directory not found. Please verify the correct directory name was given. QFileDialog%1 $09; =5 =0945=. @>25@LB5 ?@028;L=>ABL C:070==>3> 8<5=8 D09;0.A%1 File not found. Please verify the correct file name was given. QFileDialogN%1 C65 ACI5AB2C5B. %>B8B5 70<5=8BL 53>?-%1 already exists. Do you want to replace it? QFileDialog&K1@0BL&Choose QFileDialog&#40;8BL&Delete QFileDialog&>20O ?0?:0 &New Folder QFileDialog&B:@KBL&Open QFileDialog&5@58<5=>20BL&Rename QFileDialog&!>E@0=8BL&Save QFileDialogl%1 70I8IQ= >B 70?8A8. 59AB28B5;L=> 65;05B5 C40;8BL?9'%1' is write protected. Do you want to delete it anyway? QFileDialogA524>=8<Alias QFileDialogA5 D09;K (*) All Files (*) QFileDialogA5 D09;K (*.*)All Files (*.*) QFileDialogJK 459AB28B5;L=> E>B8B5 C40;8BL %1?!Are sure you want to delete '%1'? QFileDialog 0704Back QFileDialog:5@5:;NG8BL 2 ?>4@>1=K9 @568<Change to detail view mode QFileDialog45@5:;NG8BL 2 @568< A?8A:0Change to list view mode QFileDialog65 C40;>AL C40;8BL :0B0;>3.Could not delete directory. QFileDialog!>740BL ?0?:CCreate New Folder QFileDialog&!>740BL =>2CN ?0?:CCreate a New Folder QFileDialog>4@>1=K9 284 Detail View QFileDialog0B0;>38 Directories QFileDialog0B0;>3: Directory: QFileDialog8A:Drive QFileDialog$09;File QFileDialog&<O D09;0: File &name: QFileDialog0?:0 A D09;0<8 File Folder QFileDialog"8?K D09;>2:Files of type: QFileDialog09B8 :0B0;>3Find Directory QFileDialog 0?:0Folder QFileDialog ?5@Q4Forward QFileDialog 0704Go back QFileDialog ?5@Q4 Go forward QFileDialog<5@59B8 2 @>48B5;LA:89 :0B0;>3Go to the parent directory QFileDialog !?8A>: List View QFileDialog5@59B8 ::Look in: QFileDialog>9 :><?LNB5@ My Computer QFileDialog>20O ?0?:0 New Folder QFileDialogB:@KBLOpen QFileDialog( >48B5;LA:89 :0B0;>3Parent Directory QFileDialog$5402=85 4>:C<5=BK Recent Places QFileDialog#40;8BLRemove QFileDialog!>E@0=8BL :0:Save As QFileDialog /@;K:Shortcut QFileDialog>:070BL Show  QFileDialog.>:070BL A:&@KBK5 D09;KShow &hidden files QFileDialog58725AB=K9Unknown QFileDialog %1 1%1 GBQFileSystemModel %1 1%1 KBQFileSystemModel %1 1%1 MBQFileSystemModel %1 "1%1 TBQFileSystemModel%1 109B %1 byte(s)QFileSystemModel%1 109B%1 bytesQFileSystemModel<b><O %1 =5 <>65B 1KBL 8A?>;L7>20=>.</b><p>>?@>1C9B5 8A?>;L7>20BL 8<O <5=LH59 4;8=K 8/8;8 157 A8<2>;>2 ?C=:BC0F88.oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModel><?LNB5@ComputerQFileSystemModel0B0 87<5=5=8O Date ModifiedQFileSystemModel,5:>@@5:B=>5 8<O D09;0Invalid filenameQFileSystemModel84KindQFileSystemModel>9 :><?LNB5@ My ComputerQFileSystemModel<ONameQFileSystemModel  07<5@SizeQFileSystemModel"8?TypeQFileSystemModel N10OAny QFontDatabase@01A:0OArabic QFontDatabase@<O=A:0OArmenian QFontDatabase5=30;LA:0OBengali QFontDatabase 'Q@=K9Black QFontDatabase 8@=K9Bold QFontDatabase8@8;;8F0Cyrillic QFontDatabase!@54=89Demi QFontDatabase>;C68@=K9 Demi Bold QFontDatabase520=038@8 Devanagari QFontDatabase@C78=A:0OGeorgian QFontDatabase@5G5A:0OGreek QFontDatabaseC460@0B8Gujarati QFontDatabaseC@<C:E8Gurmukhi QFontDatabase 2@8BHebrew QFontDatabase C@A82Italic QFontDatabase/?>=A:0OJapanese QFontDatabase0==040Kannada QFontDatabaseE<5@A:0OKhmer QFontDatabase>@59A:0OKorean QFontDatabase0>AA:0OLao QFontDatabase0B8=8F0Latin QFontDatabase!25B;K9Light QFontDatabase0;09O;0< Malayalam QFontDatabase LO=<0Myanmar QFontDatabase:>N'Ko QFontDatabase1KG=K9Normal QFontDatabase0:;>==K9Oblique QFontDatabase30<8G5A:0OOgham QFontDatabase@8OOriya QFontDatabase C=8G5A:0ORunic QFontDatabase(8B09A:0O C?@>IQ==0OSimplified Chinese QFontDatabase!8=30;LA:0OSinhala QFontDatabase!8<2>;L=0OSymbol QFontDatabase!8@89A:0OSyriac QFontDatabase"0<8;LA:0OTamil QFontDatabase "5;C3CTelugu QFontDatabase "00=0Thaana QFontDatabase"09A:0OThai QFontDatabase"815BA:0OTibetan QFontDatabase,8B09A:0O B@048F8>==0OTraditional Chinese QFontDatabaseL5B=0<A:0O Vietnamese QFontDatabase &(@8DB&Font QFontDialog& 07<5@&Size QFontDialog&>4GQ@:=CBK9 &Underline QFontDialog-DD5:BKEffects QFontDialog&0G5@B0=85 Font st&yle QFontDialog @8<5@Sample QFontDialogK1>@ H@8DB0 Select Font QFontDialog0GQ@&:=CBK9 Stri&keout QFontDialog&!8AB5<0 ?8AL<0Wr&iting System QFontDialog<5 C40;>AL A<5=8BL :0B0;>3: %1Changing directory failed: %1QFtp<!>548=5=85 A C7;>< CAB0=>2;5=>Connected to hostQFtpB#AB0=>2;5=> A>548=5=85 A C7;>< %1Connected to host %1QFtpD5 C40;>AL A>548=8BLAO A C7;><: %1Connecting to host failed: %1QFtp$!>548=5=85 70:@KB>Connection closedQFtpLB:07 2 A>548=5=88 4;O ?5@540G8 40==KE&Connection refused for data connectionQFtp@ A>548=5=88 A C7;>< %1 >B:070=>Connection refused to host %1QFtpL@5<O =0 A>548=5=85 A C7;>< %1 8AB5:;>Connection timed out to host %1QFtp.!>548=5=85 A %1 70:@KB>Connection to %1 closedQFtp<5 C40;>AL A>740BL :0B0;>3: %1Creating directory failed: %1QFtp:5 C40;>AL 703@C78BL D09;: %1Downloading file failed: %1QFtp#75; %1 =0945= Host %1 foundQFtp"#75; %1 =5 =0945=Host %1 not foundQFtp#75; =0945= Host foundQFtp@5 C40;>AL ?@>G8B0BL :0B0;>3: %1Listing directory failed: %1QFtp:5 C40;>AL 02B>@87>20BLAO: %1Login failed: %1QFtp2!>548=5=85 =5 CAB0=>2;5=> Not connectedQFtp<5 C40;>AL C40;8BL :0B0;>3: %1Removing directory failed: %1QFtp65 C40;>AL C40;8BL D09;: %1Removing file failed: %1QFtp$58725AB=0O >H81:0 Unknown errorQFtp:5 C40;>AL >B3@C78BL D09;: %1Uploading file failed: %1QFtp$<O C7;0 =5 7040=>No host name given QHostInfo$58725AB=0O >H81:0 Unknown error QHostInfo#75; =5 =0945=Host not foundQHostInfoAgent*5:>@@5:B=>5 8<O C7;0Invalid hostnameQHostInfoAgent$<O C7;0 =5 7040=>No host name givenQHostInfoAgent,58725AB=K9 B8? 04@5A0Unknown address typeQHostInfoAgent$58725AB=0O >H81:0 Unknown errorQHostInfoAgent*"@51C5BAO 02B>@870F8OAuthentication requiredQHttp<!>548=5=85 A C7;>< CAB0=>2;5=>Connected to hostQHttpB#AB0=>2;5=> A>548=5=85 A C7;>< %1Connected to host %1QHttp$!>548=5=85 70:@KB>Connection closedQHttp*B:070=> 2 A>548=5=88Connection refusedQHttpd A>548=5=88 >B:070=> (8;8 2@5<O >6840=8O 8AB5:;>)!Connection refused (or timed out)QHttp:!>548=5=85 A C7;>< %1 70:@KB>Connection to %1 closedQHttp"0==K5 ?>2@5645=KData corruptedQHttpDH81:0 70?8A8 >B25B0 =0 CAB@>9AB2> Error writing response to deviceQHttp*HTTP-70?@>A =5 C40;AOHTTP request failedQHttp0?@>H5=> A>548=5=85 ?> ?@>B>:>;C HTTPS, => ?>445@6:0 SSL =5 A:><?8;8@>20=0:HTTPS connection requested but SSL support not compiled inQHttp#75; %1 =0945= Host %1 foundQHttp"#75; %1 =5 =0945=Host %1 not foundQHttp#75; =0945= Host foundQHttp0#75; B@51C5B 02B>@870F8NHost requires authenticationQHttpR5:>@@5:B=>5 HTTP-D@03<5=B8@>20=85 40==KEInvalid HTTP chunked bodyQHttpD5:>@@5:B=K9 HTTP-703>;>2>: >B25B0Invalid HTTP response headerQHttp@5 C:070= A5@25@ 4;O ?>4:;NG5=8ONo server set to connect toQHttpN"@51C5BAO 02B>@870F8O =0 ?@>:A8-A5@25@5Proxy authentication requiredQHttpB@>:A8-A5@25@ B@51C5B 02B>@870F8NProxy requires authenticationQHttp0?@>A ?@5@20=Request abortedQHttp628B8@>20=85 SSL =5 C40;>ALSSL handshake failedQHttpJ!5@25@ =5>6840==> @07>@20; A>548=5=85%Server closed connection unexpectedlyQHttp:58725AB=K9 <5B>4 02B>@870F88Unknown authentication methodQHttp$58725AB=0O >H81:0 Unknown errorQHttp6#:070= =58725AB=K9 ?@>B>:>;Unknown protocol specifiedQHttp4525@=0O 4;8=0 A>45@68<>3>Wrong content lengthQHttp*"@51C5BAO 02B>@870F8OAuthentication requiredQHttpSocketEngineN5 ?>;CG5= HTTP->B25B >B ?@>:A8-A5@25@0(Did not receive HTTP response from proxyQHttpSocketEngineXH81:0 >1<5=0 40==K<8 A ?@>:A8-A5@25@>< HTTP#Error communicating with HTTP proxyQHttpSocketEnginehH81:0 @071>@0 70?@>A0 02B>@870F88 >B ?@>:A8-A5@25@0/Error parsing authentication request from proxyQHttpSocketEngine^!>548=5=85 A ?@>:A8-A5@25@>< =5>6840==> 70:@KB>#Proxy connection closed prematurelyQHttpSocketEngineJ A>548=5=88 ?@>:A8-A5@25@>< >B:070=>Proxy connection refusedQHttpSocketEngineB@>:A8-A5@25@ 70?@5B8; A>548=5=85Proxy denied connectionQHttpSocketEngineZ@5<O =0 A>548=5=85 A ?@>:A8-A5@25@>< 8AB5:;>!Proxy server connection timed outQHttpSocketEngine.@>:A8-A5@25@ =5 =0945=Proxy server not foundQHttpSocketEngine85 C40;>AL =0G0BL B@0=70:F8NCould not start transaction QIBaseDriver6H81:0 >B:@KB8O 107K 40==KEError opening database QIBaseDriver>52>7<>6=> 7025@H8BL B@0=70:F8NUnable to commit transaction QIBaseDriver<52>7<>6=> >B>720BL B@0=70:F8NUnable to rollback transaction QIBaseDriverd5 C40;>AL ?>;CG8BL @5AC@AK 4;O A>740=8O 2K@065=8OCould not allocate statement QIBaseResultJ5 C40;>AL >?8A0BL 2E>4OI55 2K@065=85"Could not describe input statement QIBaseResult85 C40;>AL >?8A0BL 2K@065=85Could not describe statement QIBaseResultJ5 C40;>AL ?>;CG8BL A;54CNI89 M;5<5=BCould not fetch next item QIBaseResult.5 C40;>AL =09B8 <0AA82Could not find array QIBaseResult>5 C40;>AL =09B8 40==K5 <0AA820Could not get array data QIBaseResultJ5 C40;>AL =09B8 8=D>@<0F8N > 70?@>A5Could not get query info QIBaseResultN5 C40;>AL =09B8 8=D>@<0F8N > 2K@065=88Could not get statement info QIBaseResult@5 C40;>AL ?>43>B>28BL 2K@065=85Could not prepare statement QIBaseResult85 C40;>AL =0G0BL B@0=70:F8NCould not start transaction QIBaseResult852>7<>6=> 70:@KBL 2K@065=85Unable to close statement QIBaseResult>52>7<>6=> 7025@H8BL B@0=70:F8NUnable to commit transaction QIBaseResult.52>7<>6=> A>740BL BLOBUnable to create BLOB QIBaseResult652>7<>6=> 2K?>;=8BL 70?@>AUnable to execute query QIBaseResult.52>7<>6=> >B:@KBL BLOBUnable to open BLOB QIBaseResult252>7<>6=> ?@>G8B0BL BLOBUnable to read BLOB QIBaseResult052>7<>6=> 70?8A0BL BLOBUnable to write BLOB QIBaseResultD5B A2>1>4=>3> <5AB0 =0 CAB@>9AB25No space left on device QIODevice<$09; 8;8 :0B0;>3 =5 ACI5AB2C5BNo such file or directory QIODevice>ABC? 70?@5IQ=Permission denied QIODevice:!;8H:>< <=>3> >B:@KBKE D09;>2Too many open files QIODevice$58725AB=0O >H81:0 Unknown error QIODevice&5B>4 22>40 S60 FEPFEP QInputContext(5B>4 22>40 Mac OS XMac OS X input method QInputContext&5B>4 22>40 S60 FEPS60 FEP input method QInputContext&5B>4 22>40 WindowsWindows input method QInputContext*5B>4 22>40 X-A5@25@0XIM QInputContext*5B>4 22>40 X-A5@25@0XIM input method QInputContext"#:068B5 7=0G5=85:Enter a value: QInputDialogL52>7<>6=> 703@C78BL 181;8>B5:C %1: %2Cannot load library %1: %2QLibraryR52>7<>6=> @07@5H8BL A8<2>; %1 2 %2: %3$Cannot resolve symbol "%1" in %2: %3QLibraryL52>7<>6=> 2K3@C78BL 181;8>B5:C %1: %2Cannot unload library %1: %2QLibraryf@>25@>G=0O 8=D>@<0F8O 4;O <>4C;O %1 =5 A>2?0405B)Plugin verification data mismatch in '%1'QLibrary\$09; %1 - =5 O2;O5BAO :>@@5:B=K< <>4C;5< Qt.'The file '%1' is not a valid Qt plugin.QLibrary>4C;L %1 8A?>;L7C5B =5A><5AB8<CN 181;8>B5:C Qt. (%2.%3.%4) [%5]=The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]QLibrary>4C;L %1 8A?>;L7C5B =5A><5AB8<CN 181;8>B5:C Qt. (52>7<>6=> A>2<5AB8BL @5;87=K5 8 >B;04>G=K5 181;8>B5:8.)WThe plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)QLibrary>4C;L %1 8A?>;L7C5B =5A><5AB8<CN 181;8>B5:C Qt. 68405BAO :;NG %2, => ?>;CG5= :;NG %3OThe plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"QLibraryF8=0<8G5A:0O 181;8>B5:0 =5 =0945=0.!The shared library was not found.QLibrary$58725AB=0O >H81:0 Unknown errorQLibrary&>?8@>20BL&Copy QLineEdit&AB028BL&Paste QLineEdit&&>2B>@8BL 459AB285&Redo QLineEdit$&B<5=8BL 459AB285&Undo QLineEdit&K@570BLCu&t QLineEdit#40;8BLDelete QLineEditK45;8BL 2AQ Select All QLineEdit,%1: 4@5A 8A?>;L7C5BAO%1: Address in use QLocalServer(%1: 5:>@@5:B=>5 8<O%1: Name error QLocalServer&%1: >ABC? 70?@5IQ=%1: Permission denied QLocalServer2%1: 58725AB=0O >H81:0 %2%1: Unknown error %2 QLocalServer*%1: H81:0 A>548=5=8O%1: Connection error QLocalSocket2%1: B:070=> 2 A>548=5=88%1: Connection refused QLocalSocket<%1: 0B03@0<<0 A;8H:>< 1>;LH0O%1: Datagram too large QLocalSocket(%1: 5:>@@5:B=>5 8<O%1: Invalid name QLocalSocket<%1: 0:@KB> C40;5==>9 AB>@>=>9%1: Remote closed QLocalSocket:%1: H81:0 >1@0I5=8O : A>:5BC%1: Socket access error QLocalSocketN%1: @5<O =0 >?5@0F8N A A>:5B>< 8AB5:;>%1: Socket operation timed out QLocalSocketH%1: H81:0 2K45;5=8O @5AC@A>2 A>:5B0%1: Socket resource error QLocalSocketP%1: ?5@0F8O A A>:5B>< =5 ?>445@68205BAO)%1: The socket operation is not supported QLocalSocket,%1: 58725AB=0O >H81:0%1: Unknown error QLocalSocket2%1: 58725AB=0O >H81:0 %2%1: Unknown error %2 QLocalSocket852>7<>6=> =0G0BL B@0=70:F8NUnable to begin transaction QMYSQLDriver>52>7<>6=> 7025@H8BL B@0=70:F8NUnable to commit transaction QMYSQLDriver,52>7<>6=> A>548=8BLAOUnable to connect QMYSQLDriver@52>7<>6=> >B:@KBL 107C 40==KE 'Unable to open database ' QMYSQLDriver<52>7<>6=> >B>720BL B@0=70:F8NUnable to rollback transaction QMYSQLDriverX52>7<>6=> ?@82O70BL @57C;LB8@CNI85 7=0G5=8OUnable to bind outvalues QMYSQLResult:52>7<>6=> ?@82O70BL 7=0G5=85Unable to bind value QMYSQLResultJ52>7<>6=> 2K?>;=8BL A;54CNI89 70?@>AUnable to execute next query QMYSQLResult652>7<>6=> 2K?>;=8BL 70?@>AUnable to execute query QMYSQLResult<52>7<>6=> 2K?>;=8BL 2K@065=85Unable to execute statement QMYSQLResult452>7<>6=> ?>;CG8BL 40==K5Unable to fetch data QMYSQLResult@52>7<>6=> ?>43>B>28BL 2K@065=85Unable to prepare statement QMYSQLResult:52>7<>6=> A1@>A8BL 2K@065=85Unable to reset statement QMYSQLResultP52>7<>6=> A>E@0=8BL A;54CNI89 @57C;LB0BUnable to store next result QMYSQLResult<52>7<>6=> A>E@0=8BL @57C;LB0BUnable to store result QMYSQLResulth52>7<>6=> A>E@0=8BL @57C;LB0BK 2K?>;=5=8O 2K@065=8O!Unable to store statement results QMYSQLResult(5>703;02;5=>) (Untitled)QMdiArea%1 - [%2] %1 - [%2] QMdiSubWindow&0:@KBL&Close QMdiSubWindow&5@5<5AB8BL&Move QMdiSubWindow&>AAB0=>28BL&Restore QMdiSubWindow& 07<5@&Size QMdiSubWindow - [%1]- [%1] QMdiSubWindow0:@KBLClose QMdiSubWindow!?@02:0Help QMdiSubWindow &0A?0E=CBL Ma&ximize QMdiSubWindow 0A?0E=CBLMaximize QMdiSubWindow5=NMenu QMdiSubWindow&!25@=CBL Mi&nimize QMdiSubWindow!25@=CBLMinimize QMdiSubWindow>AAB0=>28BLRestore QMdiSubWindow>AAB0=>28BL Restore Down QMdiSubWindow(!25@=CBL 2 703>;>2>:Shade QMdiSubWindow$AB020BLAO &A25@EC Stay on &Top QMdiSubWindow2>AAB0=>28BL 87 703>;>2:0Unshade QMdiSubWindow0:@KBLCloseQMenuK?>;=8BLExecuteQMenuB:@KBLOpenQMenu59AB28OActionsQMenuBarz<h3> Qt</h3><p>0==0O ?@>3@0<<0 8A?>;L7C5B Qt 25@A88 %1.</p>8

About Qt

This program uses Qt version %1.

 QMessageBox <p>Qt - MB> 8=AB@C<5=B0@89 4;O @07@01>B:8 :@>AA?;0BD>@<5==KE ?@8;>65=89 =0 C++.</p><p>Qt ?@54>AB02;O5B A>2<5AB8<>ABL =0 C@>2=5 8AE>4=KE B5:AB>2 <564C MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux 8 2A5<8 ?>?C;O@=K<8 :><<5@G5A:8<8 20@80=B0<8 Unix. "0:65 Qt 4>ABC?=0 4;O 2AB@08205<KE CAB@>9AB2 2 2845 Qt 4;O Embedded Linux 8 Qt 4;O Windows CE.</p><p>Qt 4>ABC?=0 ?>4 B@5<O @07;8G=K<8 ;8F5=78O<8, @07@01>B0==K<8 4;O C4>2;5B2>@5=8O @07;8G=KE B@51>20=89.</p><p>Qt ?>4 =0H59 :><<5@G5A:>9 ;8F5=7859 ?@54=07=0G5=0 4;O @0728B8O ?@>?@85B0@=>3>/:><<5@G5A:>3> ?@>3@0<<=>3> >15A?5G5=8O, :>340 K =5 65;05B5 ?@54>AB02;OBL 8AE>4=K5 B5:ABK B@5BL8< AB>@>=0<, 8;8 2 A;CG05 =52>7<>6=>AB8 ?@8=OB8O CA;>289 ;8F5=789 GNU LGPL 25@A88 2.1 8;8 GNU GPL 25@A88 3.0.</p><p>Qt ?>4 ;8F5=7859 GNU LGPL 25@A88 2.1 ?@54=07=0G5=0 4;O @07@01>B:8 ?@>3@0<<=>3> >15A?5G5=8O A >B:@KBK<8 8AE>4=K<8 B5:AB0<8 8;8 :><<5@G5A:>3> ?@>3@0<<=>3> >15A?5G5=8O ?@8 A>1;N45=88 CA;>289 ;8F5=788 GNU LGPL 25@A88 2.1.</p><p>Qt ?>4 ;8F5=7859 GNU General Public License 25@A88 3.0 ?@54=07=0G5=0 4;O @07@01>B:8 ?@>3@0<<=KE ?@8;>65=89 2 B5E A;CG0OE, :>340 K E>B5;8 1K 8A?>;L7>20BL B0:85 ?@8;>65=8O 2 A>G5B0=88 A ?@>3@0<<=K< >15A?5G5=85< =0 CA;>28OE ;8F5=788 GNU GPL A 25@A88 3.0 8;8 5A;8 K 3>B>2K A>1;N40BL CA;>28O ;8F5=788 GNU GPL 25@A88 3.0.</p><p>1@0B8B5AL : <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> 4;O >17>@0 ;8F5=789 Qt.</p><p>Copyright (C) 2011 >@?>@0F8O Nokia 8/8;8 5Q 4>G5@=85 ?>4@0745;5=8O.</p><p>Qt - ?@>4C:B :><?0=88 Nokia. 1@0B8B5AL : <a href="http://qt.nokia.com/">qt.nokia.com</a> 4;O ?>;CG5=8O 4>?>;=8B5;L=>9 8=D>@<0F88.</p>

Qt is a C++ toolkit for cross-platform application development.

Qt provides single-source portability across MS Windows, Mac OS X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.

Qt is available under three different licensing options designed to accommodate the needs of our various users.

Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.

Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.

Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.

Please see qt.nokia.com/products/licensing for an overview of Qt licensing.

Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).

Qt is a Nokia product. See qt.nokia.com for more information.

 QMessageBox QtAbout Qt QMessageBox!?@02:0Help QMessageBox*!:@KBL ?>4@>1=>AB8...Hide Details... QMessageBox0:@KBLOK QMessageBox.>:070BL ?>4@>1=>AB8...Show Details... QMessageBox$K1>@ @568<0 22>40 Select IMQMultiInputContextR5@5:;NG0B5;L @568<0 <=>65AB25==>3> 22>40Multiple input method switcherQMultiInputContextPlugin5@5:;NG0B5;L @568<0 <=>65AB25==>3> 22>40, 8A?>;L7C5<K9 2 :>=B5:AB=>< <5=N B5:AB>2KE @540:B>@>2MMultiple input method switcher that uses the context menu of the text widgetsQMultiInputContextPluginN@C3>9 A>:5B C65 ?@>A;CH8205B MB>B ?>@B4Another socket is already listening on the same portQNativeSocketEngine|>?KB:0 8A?>;L7>20BL IPv6 =0 ?;0BD>@<5, =5 ?>445@6820NI59 IPv6=Attempt to use IPv6 socket on a platform with no IPv6 supportQNativeSocketEngine*B:070=> 2 A>548=5=88Connection refusedQNativeSocketEngine6@5<O =0 A>548=5=85 8AB5:;>Connection timed outQNativeSocketEngineN0B03@0<<0 A;8H:>< 1>;LH0O 4;O >B?@02:8Datagram was too large to sendQNativeSocketEngine#75; =54>ABC?5=Host unreachableQNativeSocketEngine<5:>@@5:B=K9 45A:@8?B>@ A>:5B0Invalid socket descriptorQNativeSocketEngineH81:0 A5B8 Network errorQNativeSocketEngineB@5<O =0 A5B52CN >?5@0F8N 8AB5:;>Network operation timed outQNativeSocketEngine!5BL =54>ABC?=0Network unreachableQNativeSocketEngine*?5@0F8O A =5-A>:5B><Operation on non-socketQNativeSocketEngine*54>AB0B>G=> @5AC@A>2Out of resourcesQNativeSocketEngine>ABC? 70?@5IQ=Permission deniedQNativeSocketEngine4@>B>:>; =5 ?>445@68205BAOProtocol type not supportedQNativeSocketEngine 4@5A =54>ABC?5=The address is not availableQNativeSocketEngine4@5A 70I8IQ=The address is protectedQNativeSocketEngine,4@5A C65 8A?>;L7C5BAO#The bound address is already in useQNativeSocketEnginef5:>@@5:B=K9 B8? ?@>:A8-A5@25@0 4;O 40==>9 >?5@0F88,The proxy type is invalid for this operationQNativeSocketEngine@#40;Q==K9 C75; 70:@K; A>548=5=85%The remote host closed the connectionQNativeSocketEnginef52>7<>6=> 8=8F80;878@>20BL H8@>:>25I0B5;L=K9 A>:5B%Unable to initialize broadcast socketQNativeSocketEngineX52>7<>6=> 8=8F80;878@>20BL =5-1;>G=K9 A>:5B(Unable to initialize non-blocking socketQNativeSocketEngine:52>7<>6=> ?>;CG8BL A>>1I5=85Unable to receive a messageQNativeSocketEngine<52>7<>6=> >B?@028BL A>>1I5=85Unable to send a messageQNativeSocketEngine&52>7<>6=> 70?8A0BLUnable to writeQNativeSocketEngine$58725AB=0O >H81:0 Unknown errorQNativeSocketEngineH?5@0F8O A A>:5B>< =5 ?>445@68205BAOUnsupported socket operationQNativeSocketEngine$H81:0 >B:@KB8O %1Error opening %1QNetworkAccessCacheBackend(5:>@@5:B=K9 URI: %1Invalid URI: %1QNetworkAccessDataBackendB?5@0F8O =5 ?>445@68205BAO 4;O %1Operation not supported on %1QNetworkAccessDataBackendf#40;Q==K9 C75; =5>6840==> ?@5@20; A>548=5=85 4;O %13Remote host closed the connection prematurely on %1QNetworkAccessDebugPipeBackend.H8:0 A>:5B0 4;O %1: %2Socket error on %1: %2QNetworkAccessDebugPipeBackend,H81:0 70?8A8 2 %1: %2Write error writing to %1: %2QNetworkAccessDebugPipeBackendZ52>7<>6=> >B:@KBL %1: #:070= ?CBL : :0B0;>3C#Cannot open %1: Path is a directoryQNetworkAccessFileBackend,H81:0 >B:@KB8O %1: %2Error opening %1: %2QNetworkAccessFileBackend.H81:0 GB5=8O 87 %1: %2Read error reading from %1: %2QNetworkAccessFileBackend`0?@>A =0 >B:@KB85 D09;0 2=5 D09;>2>9 A8AB5<K %1%Request for opening non-local file %1QNetworkAccessFileBackend,H81:0 70?8A8 2 %1: %2Write error writing to %1: %2QNetworkAccessFileBackendZ52>7<>6=> >B:@KBL %1: #:070= ?CBL : :0B0;>3CCannot open %1: is a directoryQNetworkAccessFtpBackendBH81:0 2 ?@>F5AA5 703@C7:8 %1: %2Error while downloading %1: %2QNetworkAccessFtpBackendBH81:0 2 ?@>F5AA5 >B3@C7:8 %1: %2Error while uploading %1: %2QNetworkAccessFtpBackendb!>548=5=85 A %1 =5 C40;>AL: B@51C5BAO 02B>@870F8O0Logging in to %1 failed: authentication requiredQNetworkAccessFtpBackendD>4E>4OI89 ?@>:A8-A5@25@ =5 =0945=No suitable proxy foundQNetworkAccessFtpBackendD>4E>4OI89 ?@>:A8-A5@25@ =5 =0945=No suitable proxy foundQNetworkAccessHttpBackend.>ABC? 2 A5BL >B:;NGQ=.Network access is disabled.QNetworkAccessManagerLH81:0 703@C7:8 %1 - >B25B A5@25@0: %2)Error downloading %1 - server replied: %2 QNetworkReply,H81:0 A5B52>9 A5AA88.Network session error. QNetworkReply258725AB=K9 ?@>B>:>; %1Protocol "%1" is unknown QNetworkReply,@5<5==0O >H81:0 A5B8.Temporary network failure. QNetworkReply"?5@0F8O >B<5=5=0Operation canceledQNetworkReplyImpl45:>@@5:B=0O :>=D83C@0F8O.Invalid configuration.QNetworkSessionH81:0 @>C<8=30 Roaming errorQNetworkSessionPrivateImpl> >C<8=3 ?@5@20= 8;8 =52>7<>65=.'Roaming was aborted or is not possible.QNetworkSessionPrivateImplT!5AA8O ?@5@20=0 ?>;L7>20B5;5< 8;8 A8AB5<>9!Session aborted by user or systemQNetworkSessionPrivateImpl\"@51C5<0O >?5@0F8O =5 ?>445@68205BAO A8AB5<>9.7The requested operation is not supported by the system.QNetworkSessionPrivateImpl`!5AA8O 1K;0 ?@5@20=0 ?>;L7>20B5;5< 8;8 A8AB5<>9..The session was aborted by the user or system.QNetworkSessionPrivateImpl^52>7<>6=> 8A?>;L7>20BL C:070==CN :>=D83C@0F8N.+The specified configuration cannot be used.QNetworkSessionPrivateImpl*5>?@545;Q==0O >H81:0Unidentified ErrorQNetworkSessionPrivateImpl458725AB=0O >H81:0 A5AA88.Unknown session error.QNetworkSessionPrivateImpl852>7<>6=> =0G0BL B@0=70:F8NUnable to begin transaction QOCIDriver>52>7<>6=> 7025@H8BL B@0=70:F8NUnable to commit transaction QOCIDriver652>7<>6=> 8=8F80;878@>20BLUnable to initialize QOCIDriver252>7<>6=> 02B>@87>20BLAOUnable to logon QOCIDriver<52>7<>6=> >B>720BL B@0=70:F8NUnable to rollback transaction QOCIDriver852>7<>6=> A>740BL 2K@065=85Unable to alloc statement QOCIResultj52>7<>6=> ?@82O70BL AB>;15F 4;O ?0:5B=>3> 2K?>;=5=8O'Unable to bind column for batch execute QOCIResultX52>7<>6=> ?@82O70BL @57C;LB8@CNI85 7=0G5=8OUnable to bind value QOCIResultN52>7<>6=> 2K?>;=8BL ?0:5B=>5 2K@065=85!Unable to execute batch statement QOCIResult<52>7<>6=> 2K?>;=8BL 2K@065=85Unable to execute statement QOCIResultF52>7<>6=> >?@545;8BL B8? 2K@065=8OUnable to get statement type QOCIResultJ52>7<>6=> ?5@59B8 : A;54CNI59 AB@>:5Unable to goto next QOCIResult@52>7<>6=> ?>43>B>28BL 2K@065=85Unable to prepare statement QOCIResult>52>7<>6=> 7025@H8BL B@0=70:F8NUnable to commit transaction QODBCDriver,52>7<>6=> A>548=8BLAOUnable to connect QODBCDriver52>7<>6=> A>548=8BLAO - @0925@ =5 ?>445@68205B B@51C5<K9 DC=:F8>=0;EUnable to connect - Driver doesn't support all functionality required QODBCDriver\52>7<>6=> >B:;NG8BL 02B>7025@H5=85 B@0=70:F89Unable to disable autocommit QODBCDriverZ52>7<>6=> 2:;NG8BL 02B>7025@H5=85 B@0=70:F89Unable to enable autocommit QODBCDriver<52>7<>6=> >B>720BL B@0=70:F8NUnable to rollback transaction QODBCDriverQODBCResult::reset: 52>7<>6=> CAB0=>28BL SQL_CURSOR_STATIC 0B@81CB>< 2K@065=85. @>25@LB5 =0AB@>9:8 4@0925@0 ODBCyQODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResult:52>7<>6=> ?@82O70BL 7=0G5=85Unable to bind variable QODBCResult<52>7<>6=> 2K?>;=8BL 2K@065=85Unable to execute statement QODBCResult452>7<>6=> ?>;CG8BL 40==K5Unable to fetch QODBCResultB52>7<>6=> ?>;CG8BL ?5@2CN AB@>:CUnable to fetch first QODBCResultH52>7<>6=> ?>;CG8BL ?>A;54=NN AB@>:CUnable to fetch last QODBCResultH52>7<>6=> ?>;CG8BL A;54CNICN AB@>:CUnable to fetch next QODBCResultJ52>7<>6=> ?>;CG8BL ?@54K4CICN AB@>:CUnable to fetch previous QODBCResult@52>7<>6=> ?>43>B>28BL 2K@065=85Unable to prepare statement QODBCResultv%1 ?>2B>@O5B 8<O ?@54K4CI59 @>;8 8 =5 1C45B 8A?>;L7>20=>.:"%1" duplicates a previous role name and will be disabled.QObject42C:>2>9 A5@25@ PulseAudioPulseAudio Sound ServerQObject25:>@@5:B=K9 70?@>A: %1invalid query: "%1"QObject<ONameQPPDOptionsModel=0G5=85ValueQPPDOptionsModel85 C40;>AL =0G0BL B@0=70:F8NCould not begin transaction QPSQLDriver>5 C40;>AL 7025@H8BL B@0=70:F8NCould not commit transaction QPSQLDriver<5 C40;>AL >B>720BL B@0=70:F8NCould not rollback transaction QPSQLDriver,52>7<>6=> A>548=8BLAOUnable to connect QPSQLDriver,52>7<>6=> ?>4?8A0BLAOUnable to subscribe QPSQLDriver*52>7<>6=> >B?8A0BLAOUnable to unsubscribe QPSQLDriver252>7<>6=> A>740BL 70?@>AUnable to create query QPSQLResult@52>7<>6=> ?>43>B>28BL 2K@065=85Unable to prepare statement QPSQLResult!0=B8<5B@K (cm)Centimeters (cm)QPageSetupWidget $>@<0FormQPageSetupWidgetKA>B0:Height:QPageSetupWidgetN9<K (in) Inches (in)QPageSetupWidget;L1><=0O LandscapeQPageSetupWidget>;OMarginsQPageSetupWidget8;;8<5B@K (mm)Millimeters (mm)QPageSetupWidget@85=B0F8O OrientationQPageSetupWidget  07<5@ AB@0=8FK: Page size:QPageSetupWidget C<030PaperQPageSetupWidget AB>G=8: 1C<038: Paper source:QPageSetupWidget">G:8 (pt) Points (pt)QPageSetupWidget=86=0OPortraitQPageSetupWidget,5@52Q@=CB0O 0;L1><=0OReverse landscapeQPageSetupWidget(5@52Q@=CB0O :=86=0OReverse portraitQPageSetupWidget(8@8=0:Width:QPageSetupWidget=86=55 ?>;5 bottom marginQPageSetupWidget;52>5 ?>;5 left marginQPageSetupWidget?@02>5 ?>;5 right marginQPageSetupWidget25@E=55 ?>;5 top marginQPageSetupWidget.>4C;L =5 1K; 703@C65=.The plugin was not loaded. QPluginLoader$58725AB=0O >H81:0 Unknown error QPluginLoaderN%1 C65 ACI5AB2C5B. %>B8B5 70<5=8BL 53>?/%1 already exists. Do you want to overwrite it? QPrintDialogX%1 - MB> :0B0;>3. K15@8B5 4@C3>5 8<O D09;0.7%1 is a directory. Please choose a different file name. QPrintDialog&0@0<5B@K << &Options << QPrintDialog&0@0<5B@K >> &Options >> QPrintDialog&5G0BL&Print QPrintDialog2<qt>%>B8B5 70<5=8BL?</qt>%Do you want to overwrite it? QPrintDialogA0A0 QPrintDialog$A0 (841 x 1189 <<)A0 (841 x 1189 mm) QPrintDialogA1A1 QPrintDialog"A1 (594 x 841 <<)A1 (594 x 841 mm) QPrintDialogA2A2 QPrintDialog"A2 (420 x 594 <<)A2 (420 x 594 mm) QPrintDialogA3A3 QPrintDialog"A3 (297 x 420 <<)A3 (297 x 420 mm) QPrintDialogA4A4 QPrintDialogJA4 (210 x 297 <<, 8.26 x 11.7 4N9<>2)%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialogA5A5 QPrintDialog"A5 (148 x 210 <<)A5 (148 x 210 mm) QPrintDialogA6A6 QPrintDialog"A6 (105 x 148 <<)A6 (105 x 148 mm) QPrintDialogA7A7 QPrintDialog A7 (74 x 105 <<)A7 (74 x 105 mm) QPrintDialogA8A8 QPrintDialogA8 (52 x 74 <<)A8 (52 x 74 mm) QPrintDialogA9A9 QPrintDialogA9 (37 x 52 <<)A9 (37 x 52 mm) QPrintDialogA524>=8<K: %1 Aliases: %1 QPrintDialogB0B0 QPrintDialog&B0 (1000 x 1414 <<)B0 (1000 x 1414 mm) QPrintDialogB1B1 QPrintDialog$B1 (707 x 1000 <<)B1 (707 x 1000 mm) QPrintDialogB10B10 QPrintDialog B10 (31 x 44 <<)B10 (31 x 44 mm) QPrintDialogB2B2 QPrintDialog"B2 (500 x 707 <<)B2 (500 x 707 mm) QPrintDialogB3B3 QPrintDialog"B3 (353 x 500 <<)B3 (353 x 500 mm) QPrintDialogB4B4 QPrintDialog"B4 (250 x 353 <<)B4 (250 x 353 mm) QPrintDialogB5B5 QPrintDialogJB5 (176 x 250 <<, 6.93 x 9.84 4N9<>2)%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialogB6B6 QPrintDialog"B6 (125 x 176 <<)B6 (125 x 176 mm) QPrintDialogB7B7 QPrintDialog B7 (88 x 125 <<)B7 (88 x 125 mm) QPrintDialogB8B8 QPrintDialogB8 (62 x 88 <<)B8 (62 x 88 mm) QPrintDialogB9B9 QPrintDialogB9 (44 x 62 <<)B9 (44 x 62 mm) QPrintDialogC5EC5E QPrintDialog$C5E (163 x 229 <<)C5E (163 x 229 mm) QPrintDialog >;L7>20B5;LA:89Custom QPrintDialogDLEDLE QPrintDialog$DLE (110 x 220 <<)DLE (110 x 220 mm) QPrintDialogExecutive Executive QPrintDialogRExecutive (191 x 254 <<, 7.5 x 10 4N9<>2))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialogh%1 =54>ABC?5= 4;O 70?8A8. K15@8B5 4@C3>5 8<O D09;0.=File %1 is not writable. Please choose a different file name. QPrintDialog$09; ACI5AB2C5B File exists QPrintDialog FolioFolio QPrintDialog(Folio (210 x 330 <<)Folio (210 x 330 mm) QPrintDialog LedgerLedger QPrintDialog*Ledger (432 x 279 <<)Ledger (432 x 279 mm) QPrintDialog LegalLegal QPrintDialogJLegal (216 x 356 <<, 8.5 x 14 4N9<>2)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialog LetterLetter QPrintDialogLLetter (216 x 279 <<, 8.5 x 11 4N9<>2)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialog>:0;L=K9 D09; Local file QPrintDialog0:@KBLOK QPrintDialog 5G0BLPrint QPrintDialog"5G0BL 2 D09; ...Print To File ... QPrintDialogA5 AB@0=8FK Print all QPrintDialog "5:CI0O AB@0=8F0Print current page QPrintDialog 80?07>= AB@0=8F Print range QPrintDialog&K45;5==K9 D@03<5=BPrint selection QPrintDialog&5G0BL 2 D09; (PDF)Print to File (PDF) QPrintDialog45G0BL 2 D09; (Postscript)Print to File (Postscript) QPrintDialogTabloidTabloid QPrintDialog,Tabloid (279 x 432 <<)Tabloid (279 x 432 mm) QPrintDialog`=0G5=85 A =5 <>65B 1KBL 1>;LH5 7=0G5=8O ?>.7The 'From' value cannot be greater than the 'To' value. QPrintDialog,US Common #10 EnvelopeUS Common #10 Envelope QPrintDialog6>=25@B US #10 (105x241 <<)%US Common #10 Envelope (105 x 241 mm) QPrintDialog0?8AL %1 D09;0 Write %1 file QPrintDialog$A>548=5=> ;>:0;L=>locally connected QPrintDialog=58725AB=>unknown QPrintDialog%1%%1%QPrintPreviewDialog0:@KBLCloseQPrintPreviewDialog-:A?>@B 2 PDF Export to PDFQPrintPreviewDialog(-:A?>@B 2 PostscriptExport to PostScriptQPrintPreviewDialog5@20O AB@0=8F0 First pageQPrintPreviewDialog0 2AN AB@0=8FCFit pageQPrintPreviewDialog> H8@8=5 Fit widthQPrintPreviewDialog;L1><=0O LandscapeQPrintPreviewDialog$>A;54=OO AB@0=8F0 Last pageQPrintPreviewDialog$!;54CNI0O AB@0=8F0 Next pageQPrintPreviewDialog$0@0<5B@K AB@0=8FK Page SetupQPrintPreviewDialog$0@0<5B@K AB@0=8FK Page setupQPrintPreviewDialog=86=0OPortraitQPrintPreviewDialog&@54K4CI0O AB@0=8F0 Previous pageQPrintPreviewDialog 5G0BLPrintQPrintPreviewDialog@>A<>B@ ?5G0B8 Print PreviewQPrintPreviewDialog6>:070BL B8BC;L=K5 AB@0=8FKShow facing pagesQPrintPreviewDialog6>:070BL >17>@ 2A5E AB@0=8FShow overview of all pagesQPrintPreviewDialog,>:070BL >4=C AB@0=8FCShow single pageQPrintPreviewDialog#25;8G8BLZoom inQPrintPreviewDialog#<5=LH8BLZoom outQPrintPreviewDialog>?>;=8B5;L=>AdvancedQPrintPropertiesWidget $>@<0FormQPrintPropertiesWidget!B@0=8F0PageQPrintPropertiesWidget& 07>1@0BL ?> :>?8O<CollateQPrintSettingsOutput&25BColorQPrintSettingsOutput 568< F25B0 Color ModeQPrintSettingsOutput >?88CopiesQPrintSettingsOutput">;8G5AB2> :>?89:Copies:QPrintSettingsOutput "5:CI0O AB@0=8F0 Current PageQPrintSettingsOutput&2CAB>@>==OO ?5G0BLDuplex PrintingQPrintSettingsOutput $>@<0FormQPrintSettingsOutputBB5=:8 A5@>3> GrayscaleQPrintSettingsOutput$> 4;8==>9 AB>@>=5 Long sideQPrintSettingsOutput5BNoneQPrintSettingsOutput0@0<5B@KOptionsQPrintSettingsOutput 0AB@>9:8 2K2>40Output SettingsQPrintSettingsOutput!B@0=8FK A Pages fromQPrintSettingsOutputA5 Print allQPrintSettingsOutput80?07>= ?5G0B8 Print rangeQPrintSettingsOutput 1@0B=K9 ?>@O4>:ReverseQPrintSettingsOutput&K45;5==K9 D@03<5=B SelectionQPrintSettingsOutput&> :>@>B:>9 AB>@>=5 Short sideQPrintSettingsOutput?>toQPrintSettingsOutput&0720=85:&Name: QPrintWidget...... QPrintWidget $>@<0Form QPrintWidget 0A?>;>65=85: Location: QPrintWidgetK2>4 2 &D09;: Output &file: QPrintWidget!&2>9AB20 P&roperties QPrintWidget@>A<>B@Preview QPrintWidget@8=B5@Printer QPrintWidget"8?:Type: QPrintWidgetf5 C40;>AL >B:@KBL ?5@5=0?@02;5=85 22>40 4;O GB5=8O,Could not open input redirection for readingQProcessh5 C40;>AL >B:@KBL ?5@5=0?@02;5=85 2K2>40 4;O 70?8A8-Could not open output redirection for writingQProcessFH81:0 ?>;CG5=8O 40==KE >B ?@>F5AA0Error reading from processQProcess>H81:0 >B?@02:8 40==KE ?@>F5AACError writing to processQProcess(@>3@0<<0 =5 C:070=0No program definedQProcess8@>F5AA 7025@H8;AO A >H81:>9Process crashedQProcess@5 C40;>AL 70?CAB8BL ?@>F5AA: %1Process failed to start: %1QProcessJ@5<O =0 >?5@0F8N A ?@>F5AA>< 8AB5:;>Process operation timed outQProcessRH81:0 2K45;5=8O @5AC@A>2 (A1>9 fork): %1!Resource error (fork failure): %1QProcess B<5=0CancelQProgressDialogB:@KBLOpen QPushButtonB<5B8BLCheck QRadioButtonL=5?@028;L=K9 A8=B0:A8A :;0AA0 A8<2>;>2bad char class syntaxQRegExpL=5?@028;L=K9 ?@5420@8B5;L=K9 A8=B0:A8Abad lookahead syntaxQRegExpB=5?@028;L=K9 A8=B0:A8A ?>2B>@5=8Obad repetition syntaxQRegExpL8A?>;L7>20=85 >B:;NGQ==KE 2>7<>6=>AB59disabled feature usedQRegExp,=5:>@@5:B=0O :0B53>@8Oinvalid categoryQRegExp*=5:>@@5:B=K9 8=B5@20;invalid intervalQRegExpD=5:>@@5:B=>5 2>AL<5@8G=>5 7=0G5=85invalid octal valueQRegExpB4>AB83=CB> 2=CB@5==55 >3@0=8G5=85met internal limitQRegExp:>BACBAB2C5B ;52K9 @0745;8B5;Lmissing left delimQRegExp$>H81:8 >BACBAB2CNBno error occurredQRegExp"=5>6840==K9 :>=5Funexpected endQRegExp6H81:0 >B:@KB8O 107K 40==KEError opening databaseQSQLite2Driver852>7<>6=> =0G0BL B@0=70:F8NUnable to begin transactionQSQLite2Driver>52>7<>6=> 7025@H8BL B@0=70:F8NUnable to commit transactionQSQLite2Driver<52>7<>6=> >B>720BL B@0=70:F8NUnable to rollback transactionQSQLite2Driver<52>7<>6=> 2K?>;=8BL 2K@065=85Unable to execute statementQSQLite2Result<52>7<>6=> ?>;CG8BL @57C;LB0BKUnable to fetch resultsQSQLite2Result6H81:0 70:@KB8O 107K 40==KEError closing database QSQLiteDriver6H81:0 >B:@KB8O 107K 40==KEError opening database QSQLiteDriver852>7<>6=> =0G0BL B@0=70:F8NUnable to begin transaction QSQLiteDriver>52>7<>6=> 7025@H8BL B@0=70:F8NUnable to commit transaction QSQLiteDriver<52>7<>6=> >B>720BL B@0=70:F8NUnable to rollback transaction QSQLiteDriver$BACBAB2C5B 70?@>ANo query QSQLiteResultD>;8G5AB2> ?0@0<5B@>2 =5 A>2?0405BParameter count mismatch QSQLiteResult:52>7<>6=> ?@82O70BL ?0@0<5B@Unable to bind parameters QSQLiteResult<52>7<>6=> 2K?>;=8BL 2K@065=85Unable to execute statement QSQLiteResult452>7<>6=> ?>;CG8BL AB@>:CUnable to fetch row QSQLiteResult:52>7<>6=> A1@>A8BL 2K@065=85Unable to reset statement QSQLiteResult#A;>285 ConditionQScriptBreakpointsModel!>2?045=89 Hit-countQScriptBreakpointsModelIDIDQScriptBreakpointsModel@>?CI5=> Ignore-countQScriptBreakpointsModel 07<5I5=85LocationQScriptBreakpointsModel4=>:@0B=> Single-shotQScriptBreakpointsModel#40;8BLDeleteQScriptBreakpointsWidget >20ONewQScriptBreakpointsWidget(&09B8 2 AF5=0@88...&Find in Script...QScriptDebugger G8AB8BL :>=A>;L Clear ConsoleQScriptDebugger2G8AB8BL >B;04>G=K9 2K2>4Clear Debug OutputQScriptDebugger,G8AB8BL 6C@=0; >H81>:Clear Error LogQScriptDebugger@>4>;68BLContinueQScriptDebugger Ctrl+FCtrl+FQScriptDebuggerCtrl+F10Ctrl+F10QScriptDebugger Ctrl+GCtrl+GQScriptDebuggerB;04:0DebugQScriptDebuggerF10F10QScriptDebuggerF11F11QScriptDebuggerF3F3QScriptDebuggerF5F5QScriptDebuggerF9F9QScriptDebugger 09B8 &A;54CNI55 Find &NextQScriptDebugger"09B8 &?@54K4CI55Find &PreviousQScriptDebugger 5@59B8 : AB@>:5 Go to LineQScriptDebugger@5@20BL InterruptQScriptDebugger!B@>:0:Line:QScriptDebugger(K?>;=8BL 4> :C@A>@0 Run to CursorQScriptDebugger8K?>;=8BL 4> =>2>3> AF5=0@8ORun to New ScriptQScriptDebuggerShift+F11 Shift+F11QScriptDebuggerShift+F3Shift+F3QScriptDebuggerShift+F5Shift+F5QScriptDebugger>9B8 2 Step IntoQScriptDebugger K9B8 87 DC=:F88Step OutQScriptDebugger5@59B8 G5@57 Step OverQScriptDebugger@#AB0=>28BL/C1@0BL B>G:C >AB0=>20Toggle BreakpointQScriptDebugger<img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;>8A: A =0G0;0J Search wrappedQScriptDebuggerCodeFinderWidget"#G8BK20BL @538AB@Case SensitiveQScriptDebuggerCodeFinderWidget0:@KBLCloseQScriptDebuggerCodeFinderWidget!;54CNI89NextQScriptDebuggerCodeFinderWidget@54K4CI89PreviousQScriptDebuggerCodeFinderWidget!;>20 F5;8:>< Whole wordsQScriptDebuggerCodeFinderWidget0720=85NameQScriptDebuggerLocalsModel=0G5=85ValueQScriptDebuggerLocalsModel#@>25=LLevelQScriptDebuggerStackModel 07<5I5=85LocationQScriptDebuggerStackModel0720=85NameQScriptDebuggerStackModel.#A;>285 B>G:8 >AB0=>20:Breakpoint Condition: QScriptEdit*#1@0BL B>G:C >AB0=>20Disable Breakpoint QScriptEdit2#AB0=>28BL B>G:C >AB0=>20Enable Breakpoint QScriptEdit@#AB0=>28BL/C1@0BL B>G:C >AB0=>20Toggle Breakpoint QScriptEdit">G:8 >AB0=>20 BreakpointsQScriptEngineDebugger>=A>;LConsoleQScriptEngineDebugger B;04>G=K9 2K2>4 Debug OutputQScriptEngineDebuggerC@=0; >H81>: Error LogQScriptEngineDebugger(03@C65==K5 AF5=0@88Loaded ScriptsQScriptEngineDebugger(>:0;L=K5 ?5@5<5==K5LocalsQScriptEngineDebugger*B;04G8: AF5=0@852 QtQt Script DebuggerQScriptEngineDebugger >8A:SearchQScriptEngineDebugger!B5:StackQScriptEngineDebugger84ViewQScriptEngineDebugger0:@KBLCloseQScriptNewBreakpointWidget=87Bottom QScrollBar ;52>9 3@0=8F5 Left edge QScrollBar0 AB@>:C 2=87 Line down QScrollBar0 AB@>:C 225@ELine up QScrollBar 0 AB@0=8FC 2=87 Page down QScrollBar"0 AB@0=8FC 2;52> Page left QScrollBar$0 AB@0=8FC 2?@02> Page right QScrollBar"0 AB@0=8FC 225@EPage up QScrollBar>;>65=85Position QScrollBar  ?@02>9 3@0=8F5 Right edge QScrollBar@>:@CB8BL 2=87 Scroll down QScrollBar@>:@CB8BL AN40 Scroll here QScrollBar @>:@CB8BL 2;52> Scroll left QScrollBar"@>:@CB8BL 2?@02> Scroll right QScrollBar @>:@CB8BL 225@E Scroll up QScrollBar 25@ETop QScrollBarR%1: A?5F8D8G5A:89 :;NG UNIX =5 ACI5AB2C5B%1: UNIX key file doesn't exist QSharedMemory$%1: C65 ACI5AB2C5B%1: already exists QSharedMemory,%1: @07<5@ <5=LH5 =C;O%1: create size is less then 0 QSharedMemory"%1: =5 ACI5AB2C5B%1: doesn't exist QSharedMemory"%1: =5 ACI5AB2C5B%1: doesn't exists QSharedMemory%1: >H81:0 ftok%1: ftok failed QSharedMemory.%1: =5:>@@5:B=K9 @07<5@%1: invalid size QSharedMemory*%1: =5:>@@5:B=K9 :;NG %1: key error QSharedMemory%1: ?CAB>9 :;NG%1: key is empty QSharedMemory$%1: =5 ?@8;>65==K9%1: not attached QSharedMemory2%1: =54>AB0B>G=> @5AC@A>2%1: out of resources QSharedMemory&%1: 4>ABC? 70?@5IQ=%1: permission denied QSharedMemory>%1: =5 C40;>AL 70?@>A8BL @07<5@%1: size query failed QSharedMemoryV%1: A8AB5<>9 =0;>65=K >3@0=8G5=8O =0 @07<5@$%1: system-imposed size restrictions QSharedMemory8%1: =52>7<>6=> 701;>:8@>20BL%1: unable to lock QSharedMemory6%1: =52>7<>6=> A>740BL :;NG%1: unable to make key QSharedMemoryR%1: =52>7<>6=> CAB0=>28BL :;NG 1;>:8@>2:8%1: unable to set key on lock QSharedMemory:%1: =52>7<>6=> @071;>:8@>20BL%1: unable to unlock QSharedMemory2%1: =58725AB=0O >H81:0 %2%1: unknown error %2 QSharedMemory+ QShortcut(>1028BL 2 871@0==>5 Add Favorite QShortcut"0AB@>9:0 O@:>AB8Adjust Brightness QShortcutAlt QShortcutF0F8:;5==>5 2>A?@>872545=85 4>@>6:8Audio Cycle Track QShortcut@>A;54>20B5;L=>5 2>A?@>872545=85 Audio Forward QShortcut2!;CG09=>5 2>A?@>872545=85Audio Random Play QShortcut0>A?@>872545=85 ?> :@C3C Audio Repeat QShortcut*5@5<>B:0 0C48> =0704 Audio Rewind QShortcut#HQ;Away QShortcut 0704Back QShortcutBackspace Backspace QShortcutBacktabBacktab QShortcut#A8;5=85 10A>2 Bass Boost QShortcut0AK =865 Bass Down QShortcut0AK 2KH5Bass Up QShortcut0B0@5OBattery QShortcutBluetooth Bluetooth QShortcut =830Book QShortcut1>7@520B5;LBrowser QShortcutCDCD QShortcut0;L:C;OB>@ Calculator QShortcut>72>=8BLCall QShortcut$$>:CA8@>2:0 :0<5@K Camera Focus QShortcut0B2>@ :0<5@KCamera Shutter QShortcut5@=89 @538AB@ Caps Lock QShortcutCapsLockCapsLock QShortcutG8AB8BLClear QShortcut0:@KBLClose QShortcut2>4 :>40 Code input QShortcut!>>1I5AB2> Community QShortcut>?8@>20BLCopy QShortcutCtrl QShortcutK@570BLCut QShortcutDOSDOS QShortcutDelDel QShortcut#40;8BLDelete QShortcut>:C<5=BK Documents QShortcut=87Down QShortcut72;5GLEject QShortcutEndEnd QShortcut EnterEnter QShortcutEscEsc QShortcut EscapeEscape QShortcutF%1F%1 QShortcut71@0==>5 Favorites QShortcut$8=0=AKFinance QShortcut ?5@Q4Forward QShortcut3@0Game QShortcut5@59B8Go QShortcut>;>68BL B@C1:CHangup QShortcut!?@02:0Help QShortcut#AK?8BL Hibernate QShortcutAB>@8OHistory QShortcutHomeHome QShortcut><0H=89 >D8A Home Office QShortcut"><0H=OO AB@0=8F0 Home Page QShortcut>@OG85 AAK;:8 Hot Links QShortcutInsIns QShortcutAB028BLInsert QShortcutL#<5=LH8BL O@:>ABL ?>4A25B:8 :;0280BC@KKeyboard Brightness Down QShortcutL#25;8G8BL O@:>ABL ?>4A25B:8 :;0280BC@KKeyboard Brightness Up QShortcut>:;./B:;. ?>4A25B:C :;0280BC@KKeyboard Light On/Off QShortcut";0280BC@=>5 <5=N Keyboard Menu QShortcut>2B>@=K9 =01>@Last Number Redial QShortcut0?CAB8BL (0) Launch (0) QShortcut0?CAB8BL (1) Launch (1) QShortcut0?CAB8BL (2) Launch (2) QShortcut0?CAB8BL (3) Launch (3) QShortcut0?CAB8BL (4) Launch (4) QShortcut0?CAB8BL (5) Launch (5) QShortcut0?CAB8BL (6) Launch (6) QShortcut0?CAB8BL (7) Launch (7) QShortcut0?CAB8BL (8) Launch (8) QShortcut0?CAB8BL (9) Launch (9) QShortcut0?CAB8BL (A) Launch (A) QShortcut0?CAB8BL (B) Launch (B) QShortcut0?CAB8BL (C) Launch (C) QShortcut0?CAB8BL (D) Launch (D) QShortcut0?CAB8BL (E) Launch (E) QShortcut0?CAB8BL (F) Launch (F) QShortcut >GB0 Launch Mail QShortcut@>83@K20B5;L Launch Media QShortcut ;52>Left QShortcut0<?>G:0 LightBulb QShortcut K9B8 87 A8AB5<KLogoff QShortcut 5@5A;0BL ?8AL<> Mail Forward QShortcut  K=>:Market QShortcut.>A?@>8725AB8 A;54CNI55 Media Next QShortcut:@8>AB0=>28BL 2>A?@>872545=85 Media Pause QShortcut,0G0BL 2>A?@>872545=85 Media Play QShortcut0>A?@>8725AB8 ?@54K4CI55Media Previous QShortcut0G0BL 70?8AL Media Record QShortcut4AB0=>28BL 2>A?@>872545=85 Media Stop QShortcutAB@5G0Meeting QShortcut5=NMenu QShortcutJ;85=B >1<5=0 <3=>25==K<8 A>>1I5=8O<8 Messenger QShortcutMeta QShortcut4#<5=LH8BL O@:>ABL <>=8B>@0Monitor Brightness Down QShortcut4#25;8G8BL O@:>ABL <>=8B>@0Monitor Brightness Up QShortcut&5A:>;L:> 20@80=B>2Multiple Candidate QShortcut C7K:0Music QShortcut>8 A09BKMy Sites QShortcut>2>AB8News QShortcut5BNo QShortcut &8D@>2K5 :;028H8Num Lock QShortcutNumLockNumLock QShortcut &8D@>2K5 :;028H8 Number Lock QShortcutB:@KBL URLOpen URL QShortcut ?F8OOption QShortcut 0 AB@0=8FC 2=87 Page Down QShortcut"0 AB@0=8FC 225@EPage Up QShortcutAB028BLPaste QShortcut PausePause QShortcut PgDownPgDown QShortcutPgUpPgUp QShortcut"5;5D>=Phone QShortcut7>1@065=8OPictures QShortcut$B:;NG5=85 ?8B0=8O Power Off QShortcut$@54K4CI89 20@80=BPrevious Candidate QShortcut PrintPrint QShortcut5G0BL M:@0=0 Print Screen QShortcut1=>28BLRefresh QShortcut5@5703@C78BLReload QShortcutB25B8BLReply QShortcut ReturnReturn QShortcut ?@02>Right QShortcut>25@=CBL >:=0Rotate Windows QShortcut!>E@0=8BLSave QShortcut"-:@0==0O 70AB02:0 Screensaver QShortcutScroll Lock Scroll Lock QShortcutScrollLock ScrollLock QShortcut >8A:Search QShortcutK1@0BLSelect QShortcutB?@028BLSend QShortcutShift QShortcut03078=Shop QShortcut!?OI89 @568<Sleep QShortcut @>15;Space QShortcut&@>25@:0 >@D>3@0D88 Spellchecker QShortcut 0745;8BL M:@0= Split Screen QShortcut&-;5:B@>==0O B01;8FK Spreadsheet QShortcut 568< >6840=8OStandby QShortcutAB0=>28BLStop QShortcut!C1B8B@KSubtitle QShortcut>445@6:0Support QShortcut@8>AB0=>28BLSuspend QShortcut SysReqSysReq QShortcut !8AB5<=K9 70?@>ASystem Request QShortcutTabTab QShortcut0=5;L 7040G Task Panel QShortcut"5@<8=0;Terminal QShortcut @5<OTime QShortcut*!=OBL/?>;>68BL B@C1:CToggle Call/Hangup QShortcutP@8>AB0=>28BL/?@>4>;68BL 2>A?@>872545=85Toggle Media Play/Pause QShortcut=AB@C<5=BKTools QShortcut;02=>5 <5=NTop Menu QShortcutCB5H5AB285Travel QShortcut' =865 Treble Down QShortcut' 2KH5 Treble Up QShortcut2!25@EH8@>:>?>;>A=0O A2O7LUltra Wide Band QShortcut 25@EUp QShortcut 845>Video QShortcut84View QShortcut>;>A>2>9 2K7>2 Voice Dial QShortcut"8H5 Volume Down QShortcutK:;NG8BL 72C: Volume Mute QShortcut @><G5 Volume Up QShortcutWWWWWW QShortcut@>1C645=85Wake Up QShortcutM1-:0<5@0WebCam QShortcut"5A?@>2>4=0O A5BLWireless QShortcut$"5:AB>2K9 @540:B>@Word Processor QShortcut0Yes QShortcut#25;8G8BLZoom In QShortcut#<5=LH8BLZoom Out QShortcut iTouchiTouch QShortcut!B@0=8F0 2=87 Page downQSlider!B@0=8F0 2;52> Page leftQSlider!B@0=8F0 2?@02> Page rightQSlider!B@0=8F0 225@EPage upQSlider>;>65=85PositionQSlider8"8? 04@5A0 =5 ?>445@68205BAOAddress type not supportedQSocks5SocketEngineP!>548=5=85 =5 @07@5H5=> A5@25@>< SOCKSv5(Connection not allowed by SOCKSv5 serverQSocks5SocketEngine^!>548=5=85 A ?@>:A8-A5@25@>< =5>6840==> 70:@KB>&Connection to proxy closed prematurelyQSocks5SocketEngineN A>548=5=88 A ?@>:A8-A5@25@>< >B:070=>Connection to proxy refusedQSocks5SocketEngineZ@5<O =0 A>548=5=85 A ?@>:A8-A5@25@>< 8AB5:;>Connection to proxy timed outQSocks5SocketEngine,H81:0 A5@25@5 SOCKSv5General SOCKSv5 server failureQSocks5SocketEngineB@5<O =0 A5B52CN >?5@0F8N 8AB5:;>Network operation timed outQSocks5SocketEngineV5 C40;>AL 02B>@87>20BLAO =0 ?@>:A8-A5@25@5Proxy authentication failedQSocks5SocketEngine^5 C40;>AL 02B>@87>20BLAO =0 ?@>:A8-A5@25@5: %1Proxy authentication failed: %1QSocks5SocketEngine.@>:A8-A5@25@ =5 =0945=Proxy host not foundQSocks5SocketEngine0H81:0 ?@>B>:>;0 SOCKSv5SOCKS version 5 protocol errorQSocks5SocketEngineB><0=40 SOCKSv5 =5 ?>445@68205BAOSOCKSv5 command not supportedQSocks5SocketEngineTTL 8AB5:;> TTL expiredQSocks5SocketEngineX58725AB=0O >H81:0 SOCKSv5 ?@>:A8 (:>4 0x%1)%Unknown SOCKSv5 proxy error code 0x%1QSocks5SocketEngine B<5=0CancelQSoftKeyManager >B>2>DoneQSoftKeyManager KE>4ExitQSoftKeyManagerOkQSoftKeyManager0@0<5B@KOptionsQSoftKeyManagerK1@0BLSelectQSoftKeyManager 5=LH5LessQSpinBox >;LH5MoreQSpinBox B<5=0CancelQSql&B<5=8BL 87<5=5=8O?Cancel your edits?QSql>4B25@645=85ConfirmQSql#40;8BLDeleteQSql,#40;8BL 40==CN 70?8AL?Delete this record?QSqlAB028BLInsertQSql5BNoQSql(!>E@0=8BL 87<5=5=8O? Save edits?QSql1=>28BLUpdateQSql0YesQSql`52>7<>6=> ?@54>AB028BL A5@B8D8:0B 157 :;NG0, %1,Cannot provide a certificate with no key, %1 QSslSocketFH81:0 A>740=8O :>=B5:AB0 SSL: (%1)Error creating SSL context (%1) QSslSocket<H81:0 A>740=8O A5AA88 SSL, %1Error creating SSL session, %1 QSslSocket<H81:0 A>740=8O A5AA88 SSL: %1Error creating SSL session: %1 QSslSocket6H81:0 :28B8@>20=8O SSL: %1Error during SSL handshake: %1 QSslSocketTH81:0 703@C7:8 ;>:0;L=>3> A5@B8D8:0B0, %1#Error loading local certificate, %1 QSslSocketFH81:0 703@C7:8 70:@KB>3> :;NG0, %1Error loading private key, %1 QSslSocket"H81:0 GB5=8O: %1Error while reading: %1 QSslSocketT5:>@@5:B=K9 8;8 ?CAB>9 A?8A>: H8D@>2 (%1)!Invalid or empty cipher list (%1) QSslSocket@5 C40;>AL ?@>25@8BL A5@B8D8:0BK!No certificates could be verified QSslSocket5B >H81:8No error QSslSocketh48= 87 A5@B8D8:0B>2 F5=B@0 A5@B8D8:0F88 =5:>@@5:B5=%One of the CA certificates is invalid QSslSocketd0:@KBK9 :;NG =5 A>>B25BAB2C5B >B:@KB><C :;NGC, %1+Private key does not certify public key, %1 QSslSocket@52KH5=> 7=0G5=85 ?0@0<5B@0 4;8=K ?CB8 ?>;O basicConstraints A5@B8D8:0B0!@>: 459AB28O A5@B8D8:0B0 8ABQ:The certificate has expired QSslSocketR!@>: 459AB28O A5@B8D8:0B0 5IQ =5 =0ABC?8; The certificate is not yet valid QSslSocketf!5@B8D8:0B A0<>?>4?8A0==K9 8 =5 O2;O5BAO 7025@5==K<-The certificate is self-signed, and untrusted QSslSocketV5 C40;>AL @0AH8D@>20BL ?>4?8AL A5@B8D8:0B00The certificate signature could not be decrypted QSslSocketj>;5 notAfter A5@B8D8:0B0 A>45@68B =5:>@@5:B=>5 2@5<O9The certificate's notAfter field contains an invalid time QSslSocketl>;5 notBefore A5@B8D8:0B0 A>45@68B =5:>@@5:B=>5 2@5<O:The certificate's notBefore field contains an invalid time QSslSocket "5:CI89 A5@B8D8:0B 8740B5;O 1K; >B:;>=Q=, B0: :0: =0720=85 8740B5;O 8 A5@89=K9 =><5@ =5 A>2?040NB A 845=B8D8:0B>@>< :;NG0 A5@B8D8:0B0The current candidate issuer certificate was rejected because its issuer name and serial number was present and did not match the authority key identifier of the current certificate QSslSocket"5:CI89 A5@B8D8:0B 8740B5;O 1K; >B:;>=Q=, B0: :0: =0720=85 B5<K =5 A>2?0405B A =0720=85< 8740B5;O A5@B8D8:0B0The current candidate issuer certificate was rejected because its subject name did not match the issuer name of the current certificate QSslSocket0720=85 C7;0 =5 A>2?0405B A 4>?CAB8<K<8 =0720=8O<8 C7;>2 A5@B8D8:0B0GThe host name did not match any of the valid hosts for this certificate QSslSocketH5 C40;>AL =09B8 A5@B8D8:0B 8740B5;O)The issuer certificate could not be found QSslSocketv5 C40;>AL =09B8 A5@B8D8:0B 8740B5;O ;>:0;L=>3> A5@B8D8:0B0LThe issuer certificate of a locally looked up certificate could not be found QSslSocket>!5@B8D8:0B C7;0 2 GQ@=>< A?8A:5#The peer certificate is blacklisted QSslSocket<!5@B8D8:0B =5 1K; ?@54>AB02;5=(The peer did not present any certificate QSslSocket\5 C40;>AL ?@>G8B0BL >B:@KBK9 :;NG A5@B8D8:0B03The public key in the certificate could not be read QSslSocket>@=52>9 A5@B8D8:0B F5=B@0 A5@B8D8:0F88 >B<5G5= =0 >B:;>=5=85 4;O 40==>9 F5;8AThe root CA certificate is marked to reject the specified purpose QSslSocket>@=52>9 A5@B8D8:0B F5=B@0 A5@B8D8:0F88 =5 O2;O5BAO 7025@5==K< 4;O 40==>9 F5;87The root CA certificate is not trusted for this purpose QSslSocket>@=52>9 A5@B8D8:0B F5?>G:8 A5@B8D8:0B>2 A0<>?>4?8A0==K9 8 =5 O2;O5BAO 7025@5==K<KThe root certificate of the certificate chain is self-signed, and untrusted QSslSocket@5:>@@5:B=0O ?>4?8AL A5@B8D8:0B0+The signature of the certificate is invalid QSslSocketh@54AB02;5==K9 A5@B8D8:0B =5?@83>45= 4;O 40==>9 F5;87The supplied certificate is unsuitable for this purpose QSslSocketD52>7<>6=> @0AH8D@>20BL 40==K5: %1Unable to decrypt data: %1 QSslSocket<52>7<>6=> 70?8A0BL 40==K5: %1Unable to write data: %1 QSslSocket$58725AB=0O >H81:0 Unknown error QSslSocketBACBAB2C5B A>AB>O=85 ?> C<>;G0=8N 2 8AB>@8G5A:>< A>AB>O=88 %1+Missing default state in history state '%1' QStateMachinerBACBAB2C5B 8AE>4=>5 A>AB>O=85 2 A>AB02=>< A>AB>O=88 %1,Missing initial state in compound state '%1' QStateMachine~5B >1I53> ?@54:0 C 8AB>G=8:0 8 F5;8 ?5@5E>40 87 A>AB>O=8O %1GNo common ancestor for targets and source of transition from state '%1' QStateMachine$58725AB=0O >H81:0 Unknown error QStateMachine$%1: C65 ACI5AB2C5B%1: already existsQSystemSemaphore"%1: =5 ACI5AB2C5B%1: does not existQSystemSemaphore2%1: =54>AB0B>G=> @5AC@A>2%1: out of resourcesQSystemSemaphore&%1: 4>ABC? 70?@5IQ=%1: permission deniedQSystemSemaphore2%1: =58725AB=0O >H81:0 %2%1: unknown error %2QSystemSemaphore:52>7<>6=> >B:@KBL A>548=5=85Unable to open connection QTDSDriverF52>7<>6=> 8A?>;L7>20BL 107C 40==KEUnable to use database QTDSDriver @>:@CB8BL 2;52> Scroll LeftQTabBar"@>:@CB8BL 2?@02> Scroll RightQTabBarH?5@0F8O A A>:5B>< =5 ?>445@68205BAO$Operation on socket is not supported QTcpServer&>?8@>20BL&Copy QTextControl&AB028BL&Paste QTextControl&&>2B>@8BL 459AB285&Redo QTextControl$&B<5=8BL 459AB285&Undo QTextControl2!:>?8@>20BL &04@5A AAK;:8Copy &Link Location QTextControl&K@570BLCu&t QTextControl#40;8BLDelete QTextControlK45;8BL 2AQ Select All QTextControlB:@KBLOpen QToolButton 060BLPress QToolButtonJ0==0O ?;0BD>@<0 =5 ?>445@68205B IPv6#This platform does not support IPv6 QUdpSocket$>2B>@8BL 459AB285Redo QUndoGroup"B<5=8BL 459AB285Undo QUndoGroup<?CAB>> QUndoModel$>2B>@8BL 459AB285Redo QUndoStack"B<5=8BL 459AB285Undo QUndoStackFAB028BL C?@02;ONI89 A8<2>; Unicode Insert Unicode control characterQUnicodeControlCharacterMenu\LRE 0G0;> 2AB@0820=8O =0?8A0=8O A;520 =0?@02>$LRE Start of left-to-right embeddingQUnicodeControlCharacterMenuFLRM @87=0: =0?8A0=8O A;520 =0?@02>LRM Left-to-right markQUnicodeControlCharacterMenuRLRO 0G0;> 70<5=K =0?8A0=8O A;520 =0?@02>#LRO Start of left-to-right overrideQUnicodeControlCharacterMenujPDF @87=0: >:>=G0=8O =0?8A0=8O A 4@C38< =0?@02;5=85<PDF Pop directional formattingQUnicodeControlCharacterMenu\LRE 0G0;> 2AB@0820=8O =0?8A0=8O A?@020 =0;52>$RLE Start of right-to-left embeddingQUnicodeControlCharacterMenuFRLM @87=0: =0?8A0=8O A?@020 =0;52>RLM Right-to-left markQUnicodeControlCharacterMenuRRLO 0G0;> 70<5=K =0?8A0=8O A?@020 =0;52>#RLO Start of right-to-left overrideQUnicodeControlCharacterMenuLZWJ 1J548=ONI89 A8<2>; =C;52>9 H8@8=KZWJ Zero width joinerQUnicodeControlCharacterMenuRZWNJ 5>1J548=ONI89 A8<2>; =C;52>9 H8@8=KZWNJ Zero width non-joinerQUnicodeControlCharacterMenu4ZWSP @>15; =C;52>9 H8@8=KZWSP Zero width spaceQUnicodeControlCharacterMenu252>7<>6=> >B>1@078BL URLCannot show URL QWebFrame<52>7<>6=> >B>1@078BL B8? MIMECannot show mimetype QWebFrame$$09; =5 ACI5AB2C5BFile does not exist QWebFrameX03@C7:0 D@59<0 ?@5@20=0 87<5=5=85< ?>;8B8:8'Frame load interrupted by policy change QWebFrame"0?@>A 1;>:8@>20=Request blocked QWebFrame0?@>A >B<5=Q=Request cancelled QWebFrame%1 (%2x%3 px)%1 (%2x%3 pixels)QWebPageF%1 4=59 %2 G0A>2 %3 <8=CB %4 A5:C=4&%1 days %2 hours %3 minutes %4 secondsQWebPage6%1 G0A>2 %2 <8=CB %3 A5:C=4%1 hours %2 minutes %3 secondsQWebPage$%1 <8=CB %2 A5:C=4%1 minutes %2 secondsQWebPage%1 A5:C=4 %1 secondsQWebPage%n D09;(0)%n D09;0%n D09;>2 %n file(s)QWebPage$>1028BL 2 A;>20@LAdd To DictionaryQWebPage> ;52><C :@0N Align LeftQWebPage> ?@02><C :@0N Align RightQWebPageC48>-M;5<5=B Audio ElementQWebPage-;5<5=BK C?@02;5=8O 2>A?@>872545=85< 72C:0 8 >B>1@065=85< A>AB>O=8O2Audio element playback controls and status displayQWebPage05:>@@5:B=K9 HTTP-70?@>ABad HTTP requestQWebPage,0G0BL 2>A?@>872545=85Begin playbackQWebPage 8@=K9BoldQWebPage=87BottomQWebPage> F5=B@CCenterQWebPageD@>25@OBL 3@0<<0B8:C A >@D>3@0D859Check Grammar With SpellingQWebPage&@>25@:0 >@D>3@0D88Check SpellingQWebPageL@>25@OBL >@D>3@0D8N ?@8 =01>@5 B5:AB0Check Spelling While TypingQWebPageK1@0BL D09; Choose FileQWebPage.G8AB8BL 8AB>@8N ?>8A:0Clear recent searchesQWebPage>?8@>20BLCopyQWebPage,>?8@>20BL 87>1@065=85 Copy ImageQWebPage.>?8@>20BL 04@5A AAK;:8 Copy LinkQWebPage0"5:CI55 A>AB>O=85 D8;L<0Current movie statusQWebPage("5:CI55 2@5<O D8;L<0Current movie timeQWebPageK@570BLCutQWebPage> C<>;G0=8NDefaultQWebPage,#40;8BL 4> :>=F0 A;>20Delete to the end of the wordQWebPage.#40;8BL 4> =0G0;0 A;>20Delete to the start of the wordQWebPage$0?@02;5=85 ?8AL<0 DirectionQWebPage@>H;> 2@5<5=8 Elapsed TimeQWebPage (@8DBKFontsQWebPage,=>?:0 0 25AL M:@0=Fullscreen ButtonQWebPage 0704Go BackQWebPage ?5@Q4 Go ForwardQWebPageF!:@KBL ?0=5;L ?@>25@:8 ?@02>?8A0=8OHide Spelling and GrammarQWebPage@>?CAB8BLIgnoreQWebPage@>?CAB8BL Ignore Grammar context menu itemIgnoreQWebPage&@5<O =5 >?@545;5=>Indefinite timeQWebPage #25;8G8BL >BABC?IndentQWebPage:AB028BL <0@:8@>20==K9 A?8A>:Insert Bulleted ListQWebPage8AB028BL =C<5@>20==K9 A?8A>:Insert Numbered ListQWebPage*AB028BL =>2CN AB@>:CInsert a new lineQWebPage.AB028BL =>2K9 ?0@03@0DInsert a new paragraphQWebPage@>25@8BLInspectQWebPage C@A82ItalicQWebPage>JavaScript: @54C?@5645=85 - %1JavaScript Alert - %1QWebPage<JavaScript: >4B25@645=85 - %1JavaScript Confirm - %1QWebPage2JavaScript: @>1;5<0 - %1JavaScript Problem - %1QWebPage.JavaScript: 0?@>A - %1JavaScript Prompt - %1QWebPage> H8@8=5JustifyQWebPage ;52>9 3@0=8F5 Left edgeQWebPage!;520 =0?@02> Left to RightQWebPage">B>:>2>5 25I0=85Live BroadcastQWebPage03@C7:0... Loading...QWebPage A:0BL 2 A;>20@5Look Up In DictionaryQWebPage$>4C;L >BACBAB2C5BMissing Plug-inQWebPageF5@5<5AB8BL C:070B5;L 2 :>=5F 1;>:0'Move the cursor to the end of the blockQWebPageN5@5<5AB8BL C:070B5;L 2 :>=5F 4>:C<5=B0*Move the cursor to the end of the documentQWebPageH5@5<5AB8BL C:070B5;L 2 :>=5F AB@>:8&Move the cursor to the end of the lineQWebPageT5@5<5AB8BL C:070B5;L : A;54CNI5<C A8<2>;C%Move the cursor to the next characterQWebPageR5@5<5AB8BL C:070B5;L =0 A;54CNICN AB@>:C Move the cursor to the next lineQWebPageP5@5<5AB8BL C:070B5;L : A;54CNI5<C A;>2C Move the cursor to the next wordQWebPageV5@5<5AB8BL C:070B5;L : ?@54K4CI5<C A8<2>;C)Move the cursor to the previous characterQWebPageT5@5<5AB8BL C:070B5;L =0 ?@54K4CICN AB@>:C$Move the cursor to the previous lineQWebPageR5@5<5AB8BL C:070B5;L : ?@54K4CI5<C A;>2C$Move the cursor to the previous wordQWebPageH5@5<5AB8BL C:070B5;L 2 =0G0;> 1;>:0)Move the cursor to the start of the blockQWebPageP5@5<5AB8BL C:070B5;L 2 =0G0;> 4>:C<5=B0,Move the cursor to the start of the documentQWebPageJ5@5<5AB8BL C:070B5;L 2 =0G0;> AB@>:8(Move the cursor to the start of the lineQWebPage5@5<>B:0Movie time scrubberQWebPage">78F8O ?5@5<>B:8Movie time scrubber thumbQWebPage.=>?:0 B:;NG8BL 72C: Mute ButtonQWebPage4B:;NG8BL 72C:>2K5 4>@>6:8Mute audio tracksQWebPage*!>2?045=89 =5 =0945=>No Guesses FoundQWebPage$09; =5 C:070=No file selectedQWebPage(AB>@8O ?>8A:0 ?CAB0No recent searchesQWebPageB:@KBL D@59< Open FrameQWebPage&B:@KBL 87>1@065=85 Open ImageQWebPageB:@KBL AAK;:C Open LinkQWebPage(B:@KBL 2 =>2>< >:=5Open in New WindowQWebPage #<5=LH8BL >BABC?OutdentQWebPage5@5GQ@:=CBK9OutlineQWebPage 0 AB@0=8FC 2=87 Page downQWebPage"0 AB@0=8FC 2;52> Page leftQWebPage$0 AB@0=8FC 2?@02> Page rightQWebPage"0 AB@0=8FC 225@EPage upQWebPageAB028BLPasteQWebPage0AB028BL, A>E@0=82 AB8;LPaste and Match StyleQWebPage=>?:0 0C70 Pause ButtonQWebPage:@8>AB0=>28BL 2>A?@>872545=85Pause playbackQWebPage0=>?:0 >A?@>872545=85 Play ButtonQWebPaged>A?@>872545=85 2 @568<5 >B>1@065=8O =0 25AL M:@0=Play movie in full-screen modeQWebPageAB>@8O ?>8A:0Recent searchesQWebPage<>AB83=CB ?@545; ?5@504@5A0F88Redirection limit reachedQWebPage1=>28BLReloadQWebPage AB0;>AL 2@5<5=8Remaining TimeQWebPage.AB02H55AO 2@5<O D8;L<0Remaining movie timeQWebPage,#40;8BL D>@<0B8@>20=85Remove formattingQWebPage!1@>A8BLResetQWebPage~>72@0I05B ?>B>:>2>5 2845> : 2>A?@>872545=8N 2 @50;L=>< 2@5<5=8#Return streaming movie to real-timeQWebPageB=>?:0 5@=CBL 2 @50;L=>5 2@5<OReturn to Real-time ButtonQWebPage0=>?:0 5@5<>B:0 =0704 Rewind ButtonQWebPage$5@5<>B:0 2 =0G0;> Rewind movieQWebPage  ?@02>9 3@0=8F5 Right edgeQWebPage!?@020 =0;52> Right to LeftQWebPage*!>E@0=8BL 87>1@065=85 Save ImageQWebPage4!>E@0=8BL ?> AAK;:5 :0:... Save Link...QWebPage@>:@CB8BL 2=87 Scroll downQWebPage@>:@CB8BL AN40 Scroll hereQWebPage @>:@CB8BL 2;52> Scroll leftQWebPage"@>:@CB8BL 2?@02> Scroll rightQWebPage @>:@CB8BL 225@E Scroll upQWebPage"A:0BL 2 =B5@=5BSearch The WebQWebPage0=>?:0 5@5<>B:0 =0704Seek Back ButtonQWebPage2=>?:0 5@5<>B:0 2?5@Q4Seek Forward ButtonQWebPage.KAB@0O ?5@5<>B:0 =0704Seek quickly backQWebPage0KAB@0O ?5@5<>B:0 2?5@Q4Seek quickly forwardQWebPageK45;8BL 2AQ Select allQWebPage.K45;8BL 4> :>=F0 1;>:0Select to the end of the blockQWebPage6K45;8BL 4> :>=F0 4>:C<5=B0!Select to the end of the documentQWebPage0K45;8BL 4> :>=F0 AB@>:8Select to the end of the lineQWebPage<K45;8BL 4> A;54CNI53> A8<2>;0Select to the next characterQWebPage8K45;8BL 4> A;54CNI59 AB@>:8Select to the next lineQWebPage8K45;8BL 4> A;54CNI53> A;>20Select to the next wordQWebPage>K45;8BL 4> ?@54K4CI53> A8<2>;0 Select to the previous characterQWebPage:K45;8BL 4> ?@54K4CI59 AB@>:8Select to the previous lineQWebPage:K45;8BL 4> ?@54K4CI53> A;>20Select to the previous wordQWebPage0K45;8BL 4> =0G0;0 1;>:0 Select to the start of the blockQWebPage8K45;8BL 4> =0G0;0 4>:C<5=B0#Select to the start of the documentQWebPage2K45;8BL 4> =0G0;0 AB@>:8Select to the start of the lineQWebPageJ>:070BL ?0=5;L ?@>25@:8 ?@02>?8A0=8OShow Spelling and GrammarQWebPage 53C;OB>@SliderQWebPage(#:070B5;L @53C;OB>@0 Slider ThumbQWebPage@D>3@0D8OSpellingQWebPage*B>1@065=85 A>AB>O=8OStatus DisplayQWebPageAB0=>28BLStopQWebPage0GQ@:=CBK9 StrikethroughQWebPageB?@028BLSubmitQWebPageB?@028BLQSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPage>4AB@>G=K9 SubscriptQWebPage04AB@>G=K9 SuperscriptQWebPage$0?@02;5=85 B5:AB0Text DirectionQWebPage!1>9 2K?>;=5=8O AF5=0@8O =0 40==>9 AB@0=8F5. 5;05B5 >AB0=>28BL 2K?>;5=85 AF5=0@8O?RThe script on this page appears to have a problem. Do you want to stop the script?QWebPaged=45:A ?>8A:0. 2548B5 :;NG52K5 A;>20 4;O ?>8A:0: 3This is a searchable index. Enter search keywords: QWebPage 25@ETopQWebPage>4GQ@:=CBK9 UnderlineQWebPage58725AB=>UnknownQWebPage,=>?:0 :;NG8BL 72C: Unmute ButtonQWebPage2:;NG8BL 72C:>2K5 4>@>6:8Unmute audio tracksQWebPage845>-M;5<5=B Video ElementQWebPage-;5<5=BK C?@02;5=8O 2>A?@>872545=85< 2845> 8 >B>1@065=85< A>AB>O=8O2Video element playback controls and status displayQWebPage&Web-8=A?5:B>@ - %2Web Inspector - %2QWebPage'B> MB>? What's This?QWhatsThisAction**QWidget&025@H8BL&FinishQWizard&!?@02:0&HelpQWizard &0;55&NextQWizard&0;55 >&Next >QWizard< &0704< &BackQWizard B<5=0CancelQWizard>4B25@48BLCommitQWizard@>4>;68BLContinueQWizard >B>2>DoneQWizard 0704Go BackQWizard!?@02:0HelpQWizard%1 - [%2] %1 - [%2] QWorkspace&0:@KBL&Close QWorkspace&5@5<5AB8BL&Move QWorkspace&>AAB0=>28BL&Restore QWorkspace& 07<5@&Size QWorkspace4&>AAB0=>28BL 87 703>;>2:0&Unshade QWorkspace0:@KBLClose QWorkspace &0A?0E=CBL Ma&ximize QWorkspace&!25@=CBL Mi&nimize QWorkspace!25@=CBLMinimize QWorkspace>AAB0=>28BL Restore Down QWorkspace*!2&5@=CBL 2 703>;>2>:Sh&ade QWorkspace$AB020BLAO &A25@EC Stay on &Top QWorkspacex2 >1JO2;5=88 XML >6840NBAO ?0@0<5B@K encoding 8;8 standaloneYencoding declaration or standalone declaration expected while reading the XML declarationQXmlH>H81:0 2 >1JO2;5=88 2=5H=53> >1J5:B03error in the text declaration of an external entityQXml4>H81:0 @071>@0 :><<5=B0@8O$error occurred while parsing commentQXml0>H81:0 @071>@0 4>:C<5=B0$error occurred while parsing contentQXmlP>H81:0 @071>@0 >1JO2;5=8O B8?0 4>:C<5=B05error occurred while parsing document type definitionQXml.>H81:0 @071>@0 M;5<5=B0$error occurred while parsing elementQXml*>H81:0 @071>@0 AAK;:8&error occurred while parsing referenceQXml8>H81:0 2K720=0 ?>;L7>20B5;5<error triggered by consumerQXml`2=5H=OO AAK;:0 =0 >1I89 >1J5:B =54>?CAB8<0 2 DTD;external parsed general entity reference not allowed in DTDQXml|2=5H=OO AAK;:0 =0 >1I89 >1J5:B =54>?CAB8<0 2 7=0G5=88 0B@81CB0Gexternal parsed general entity reference not allowed in attribute valueQXmlf2=CB@5==OO AAK;:0 =0 >1I89 >1J5:B =54>?CAB8<0 2 DTD4internal general entity reference not allowed in DTDQXmlD=5:>@@5:B=>5 8<O 48@5:B82K @071>@0'invalid name for processing instructionQXml>6840;0AL 1C:20letter is expectedQXmlFC:070=> 1>;55 >4=>3> B8?0 4>:C<5=B0&more than one document type definitionQXml$>H81:8 >BACBAB2CNBno error occurredQXml&@5:C@A82=K5 >1J5:BKrecursive entitiesQXml\2 >1JO2;5=88 XML >68405BAO ?0@0<5B@ standaloneAstandalone declaration expected while reading the XML declarationQXml BM3 =5 A>2?0405B tag mismatchQXml$=5>6840==K9 A8<2>;unexpected characterQXml.=5>6840==K9 :>=5F D09;0unexpected end of fileQXmln=5@07>1@0==0O AAK;:0 =0 >1J5:B 2 =5?@028;L=>< :>=B5:AB5*unparsed entity reference in wrong contextQXmlV2 >1JO2;5=88 XML >68405BAO ?0@0<5B@ version2version expected while reading the XML declarationQXmlT=5:>@@5:B=>5 7=0G5=85 ?0@0<5B@0 standalone&wrong value for standalone declarationQXmlVH81:0 %1 2 %2, 2 AB@>:5 %3, AB>;1F5 %4: %5)Error %1 in %2, at line %3, column %4: %5QXmlPatternistCLI$H81:0 %1 2 %2: %3Error %1 in %2: %3QXmlPatternistCLI058725AB=>5 @0A?>;>65=85Unknown locationQXmlPatternistCLI`@54C?@5645=85 2 %1, 2 AB@>:5 %2, AB>;1F5 %3: %4(Warning in %1, at line %2, column %3: %4QXmlPatternistCLI.@54C?@5645=85 2 %1: %2Warning in %1: %2QXmlPatternistCLIN%1 - =5:>@@5:B=K9 845=B8D8:0B>@ PUBLIC.#%1 is an invalid PUBLIC identifier. QXmlStream`%1 - =5 O2;O5BAO :>@@5:B=K< =0720=85< :>48@>2:8.%1 is an invalid encoding name. QXmlStream|%1 =5 O2;O5BAO :>@@5:B=K< =0720=85< >1@010BK205<>9 8=AB@C:F88.-%1 is an invalid processing instruction name. QXmlStream, ?>;CG8;8 ' , but got ' QXmlStream,B@81CB ?5@5>?@545;Q=.Attribute redefined. QXmlStream<>48@>2:0 %1 =5 ?>445@68205BAOEncoding %1 is unsupported QXmlStreamb1=0@C65=> =5:>@@5:B=> 70:>48@>20==>5 A>45@68<>5.(Encountered incorrectly encoded content. QXmlStream01J5:B %1 =5 >1JO2;5=.Entity '%1' not declared. QXmlStream6840;>AL  Expected  QXmlStream86840NBAO A8<2>;L=K5 40==K5.Expected character data. QXmlStream@8H=85 40==K5 2 :>=F5 4>:C<5=B0.!Extra content at end of document. QXmlStreamT5:>@@5:B=>5 >1JO2;5=85 ?@>AB@0=AB20 8<Q=.Illegal namespace declaration. QXmlStream05:>@@5:B=K9 A8<2>; XML.Invalid XML character. QXmlStream*5:>@@5:B=>5 8<O XML.Invalid XML name. QXmlStream>5:>@@5:B=0O AB@>:0 25@A88 XML.Invalid XML version string. QXmlStreamL5:>@@5:B=K9 0B@81CB 2 >1JO2;5=88 XML.%Invalid attribute in XML declaration. QXmlStream>5:>@@5:B=0O A8<2>;L=0O AAK;:0.Invalid character reference. QXmlStream,5:>@@5:B=K9 4>:C<5=B.Invalid document. QXmlStream<5:>@@5:B=>5 7=0G5=85 >1J5:B0.Invalid entity value. QXmlStream`5:>@@5:B=>5 =0720=85 >1@010BK205<>9 8=AB@C:F88.$Invalid processing instruction name. QXmlStream:NDATA 2 >1JO2;5=88 ?0@0<5B@0.&NDATA in parameter entity declaration. QXmlStreamT@5D8:A ?@>AB@0=AB20 8<Q= %1 =5 >1JO2;5="Namespace prefix '%1' not declared QXmlStreamVB:@K20NI89 BM3 =5 A>2?0405B A 70:@K20NI8<. Opening and ending tag mismatch. QXmlStream85>6840==K9 :>=5F 4>:C<5=B0.Premature end of document. QXmlStream:1=0@C65= @5:C@A82=K9 >1J5:B.Recursive entity detected. QXmlStreamd!AK;:0 =0 2=5H=89 >1J5:B %1 2 7=0G5=88 0B@81CB0.5Reference to external entity '%1' in attribute value. QXmlStreamJ!AK;:0 =0 =5>1@01>B0==K9 >1J5:B %1."Reference to unparsed entity '%1'. QXmlStreamd>A;54>20B5;L=>ABL ]]> =54>?CAB8<0 2 A>45@68<><.&Sequence ']]>' not allowed in content. QXmlStreamA524>0B@81CB standalone <>65B ?@8=8<0BL B>;L:> 7=0G5=8O yes 8;8 no."Standalone accepts only yes or no. QXmlStream468405BAO >B:@K20NI89 BM3.Start tag expected. QXmlStreamA524>0B@81CB standalone 4>;65= =0E>48BLAO ?>A;5 C:070=8O :>48@>2:8.?The standalone pseudo attribute must appear after the encoding. QXmlStream5>6840==>5 ' Unexpected ' QXmlStreamx5>6840==K9 A8<2>; %1 2 ;8B5@0;5 >B:@KB>3> 845=B8D8:0B>@0./Unexpected character '%1' in public id literal. QXmlStream85?>445@68205<0O 25@A8O XML.Unsupported XML version. QXmlStream^1JO2;5=85 XML =0E>48BAO =5 2 =0G0;5 4>:C<5=B0.)XML declaration not at start of document. QXmlStreamX%1 8 %2 A>>B25BAB2CNB =0G0;C 8 :>=FC AB@>:8.,%1 and %2 match the start and end of a line. QtXmlPatterns:%1 =5 <>65B 1KBL 2>AAB0=>2;5=%1 cannot be retrieved QtXmlPatternsZ%1 A>45@68B D0A5B %2 A =525@=K<8 40==K<8: %3.+%1 contains %2 facet with invalid data: %3. QtXmlPatterns@%1 A>45@68B =5:>@@5:B=K5 40==K5.%1 contains invalid data. QtXmlPatterns%1 A>45@68B >:B5BK, :>B>@K5 =54>?CAB8<K 2 B@51C5<>9 :>48@>2:5 %2.E%1 contains octets which are disallowed in the requested encoding %2. QtXmlPatternsT$0A5BK %1 8 %2 =5 <>3CB 1KBL >4=>2@5<5==>.-%1 facet and %2 facet cannot appear together. QtXmlPatterns$0A5B %1 =5 <>65B 1KBL %2, 5A;8 D0A5B %3 107>2>3> B8?0 @025= %4.5%1 facet cannot be %2 if %3 facet of base type is %4. QtXmlPatterns$0A5B %1 =5 <>65B 1KBL %2 8;8 %3, 5A;8 D0A5B %4 107>2>3> B8?0 @025= %5.;%1 facet cannot be %2 or %3 if %4 facet of base type is %5. QtXmlPatterns2$0A5B %1 ?@>B82>@5G8B %2. %1 facet collides with %2 facet. QtXmlPatterns^$0A5B %1 A>45@68B =525@=>5 @53C;O@=>5 2K@065=85,%1 facet contains invalid regular expression QtXmlPatternsV$0A5B %1 A>45@68B =525@=>5 7=0G5=85 %2: %3.'%1 facet contains invalid value %2: %3. QtXmlPatternsl$0A5B %1 4>;65= 1KBL =5 <5=55 D0A5B0 %2 107>2>3> B8?0.=%1 facet must be equal or greater than %2 facet of base type. QtXmlPatternsf$0A5B %1 4>;65= 1KBL 1>;55 D0A5B0 %2 107>2>3> B8?0.4%1 facet must be greater than %2 facet of base type. QtXmlPatternsl$0A5B %1 4>;65= 1KBL =5 <5=55 D0A5B0 %2 107>2>3> B8?0.@%1 facet must be greater than or equal to %2 facet of base type. QtXmlPatternsf$0A5B %1 4>;65= 1KBL <5=55 D0A5B0 %2 107>2>3> B8?0.1%1 facet must be less than %2 facet of base type. QtXmlPatternsJ$0A5B %1 4>;65= 1KBL <5=55 D0A5B0 %2.$%1 facet must be less than %2 facet. QtXmlPatternsl$0A5B %1 4>;65= 1KBL =5 1>;55 D0A5B0 %2 107>2>3> B8?0.=%1 facet must be less than or equal to %2 facet of base type. QtXmlPatternsP$0A5B %1 4>;65= 1KBL =5 1>;55 D0A5B0 %2.0%1 facet must be less than or equal to %2 facet. QtXmlPatterns$0A5B %1 4>;65= 8<5BL B0:>5 65 7=0G5=85, :0: 8 D0A5B %2 107>2>3> B8?0.;%1 facet must have the same value as %2 facet of base type. QtXmlPatternsd# %1 70F8:;5=> =0A;54>20=85 2 53> 107>2>< B8?5 %2.,%1 has inheritance loop in its base type %2. QtXmlPatterns%1 - A;>6=K9 B8?. @5>1@07>20=85 : A;>6=K< B8?0< =52>7<>6=>. 4=0:>, ?@5>1@07>20=85 : 0B><0@=K< B8?0< :0: %2 @01>B05B.s%1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works. QtXmlPatterns(%1 =5:>@@5:=> 4;O %2%1 is an invalid %2 QtXmlPatterns~%1 - =5:>@@5:B=K9 D;03 @53C;O@=>3> 2K@065=8O. >?CAB8<K5 D;038:?%1 is an invalid flag for regular expressions. Valid flags are: QtXmlPatternsP%1 - =5:>@@5:B=K9 URI ?@>AB@0=AB20 8<Q=.%1 is an invalid namespace URI. QtXmlPatternsd%1 - =5:>@@5:B=K9 H01;>= @53C;O@=>3> 2K@065=8O: %2/%1 is an invalid regular expression pattern: %2 QtXmlPatterns`%1 =5 O2;O5BAO :>@@5:B=K< H01;>=>< 8<5=8 @568<0.$%1 is an invalid template mode name. QtXmlPatternsJ%1 O2;O5BAO AE5<>9 =58725AB=>3> B8?0.%1 is an unknown schema type. QtXmlPatterns>>48@>2:0 %1 =5 ?>445@68205BAO.%1 is an unsupported encoding. QtXmlPatternsB!8<2>; %1 =54>?CAB8< 4;O XML 1.0.$%1 is not a valid XML 1.0 character. QtXmlPatternsr%1 =5 O2;O5BAO :>@@5:B=K< =0720=85< 8=AB@C:F88 >1@01>B:8.4%1 is not a valid name for a processing-instruction. QtXmlPatternsZ%1 =5 O2;O5BAO :>@@5:B=K< G8A;>2K< ;8B5@0;><."%1 is not a valid numeric literal. QtXmlPatterns%1 =5:>@@5:B=>5 F5;52>5 8<O 2 >1@010BK205<>9 8=AB@C:F88. <O 4>;6=> 1KBL 7=0G5=85< B8?0 %2, =0?@8<5@: %3.Z%1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3. QtXmlPatternsX%1 =5 O2;O5BAO ?@028;L=K< 7=0G5=85< B8?0 %2.#%1 is not a valid value of type %2. QtXmlPatternsP%1 =5 O2;O5BAO ?>;=K< :>;8G5AB2>< <8=CB.$%1 is not a whole number of minutes. QtXmlPatterns5 4>?CAB8<>, GB>1K %1 >?@545;O; 2=CB@5==89 B8? A B0:8< 65 8<5=5<.E%1 is not allowed to have a member type with the same name as itself. QtXmlPatternsB%1 =5 <>65B 8<5B =8:0:8E D0A5B>2.%%1 is not allowed to have any facets. QtXmlPatterns%1 - =5 0B><0@=K9 B8?. @5>1@07>20=85 2>7<>6=> B>;L:> : 0B><0@=K< B8?0<.C%1 is not an atomic type. Casting is only possible to atomic types. QtXmlPatterns%1 O2;O5BAO >1JO2;5=85< 0B@81CB0 2=5 >1;0AB8 >1JO2;5=89. <59B5 2 284C, 2>7<>6=>ABL 8<?>@B0 AE5< =5 ?>445@68205BAO.g%1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported. QtXmlPatternsF%1 =5:>@@5:B=> 2 A>>B25BAB288 A %2. %1 is not valid according to %2. QtXmlPatternsH=0G5=85 %1 =5:>@@5:B=> 4;O B8?0 %2.&%1 is not valid as a value of type %2. QtXmlPatternsL%1 A>>B25BAB2C5B A8<2>;0< :>=F0 AB@>:8%1 matches newline characters QtXmlPatterns%1 4>;6=> A>?@>2>640BLAO %2 8;8 %3, => =5 2 :>=F5 70<5I05<>9 AB@>:8.J%1 must be followed by %2 or %3, not at the end of the replacement string. QtXmlPatterns%1 ?@8=8<05B =5 <5=55 %n 0@3C<5=B0. !;54>20B5;L=>, %2 =5:>@@5:B=>.%1 ?@8=8<05B =5 <5=55 %n 0@3C<5=B>2. !;54>20B5;L=>, %2 =5:>@@5:B=>.%1 ?@8=8<05B =5 <5=55 %n 0@3C<5=B>2. !;54>20B5;L=>, %2 =5:>@@5:B=>.=%1 requires at least %n argument(s). %2 is therefore invalid. QtXmlPatterns%1 ?@8=8<05B =5 1>;55 %n 0@3C<5=B0. !;54>20B5;L=>, %2 =5:>@@5:B=>.%1 ?@8=8<05B =5 1>;55 %n 0@3C<5=B>2. !;54>20B5;L=>, %2 =5:>@@5:B=>.%1 ?@8=8<05B =5 1>;55 %n 0@3C<5=B>2. !;54>20B5;L=>, %2 =5:>@@5:B=>.9%1 takes at most %n argument(s). %2 is therefore invalid. QtXmlPatterns %1 1K;> 2K720=>.%1 was called. QtXmlPatterns54>?CAB8<K D0A5BK %1, %2, %3, %4, %5 8 %6 ?@8 =0A;54>20=88 A?8A:><.F%1, %2, %3, %4, %5 and %6 facets are not allowed when derived by list. QtXmlPatternsjB@81CB `%1` 8<55B =5:>@@5:B=>5 A>45@68<>5 QName: %2.2'%1' attribute contains invalid QName content: %2. QtXmlPatternsB><<5=B0@89 =5 <>65B A>45@60BL %1A comment cannot contain %1 QtXmlPatternsP><<5=B0@89 =5 <>65B >:0=G820BLAO =0 %1.A comment cannot end with a %1. QtXmlPatternsvAB@5G5=0 :>=AB@C:F8O, 70?@5IQ==0O 4;O B5:CI53> O7K:0 (%1).LA construct was encountered which is disallowed in the current language(%1). QtXmlPatterns1JO2;5=85 ?@>AB@0=AB2> 8<Q= ?> C<>;G0=8N 4>;6=> 1KBL 4> >1JO2;5=8O DC=:F89, ?5@5<5==KE 8 >?F89.^A default namespace declaration must occur before function, variable, and option declarations. QtXmlPatterns@O<>9 :>=AB@C:B>@ M;5<5=B0 A>AB02;5= =5:>@@5:B=>. %1 70:0=G8205BAO =0 %2.EA direct element constructor is not well-formed. %1 is ended with %2. QtXmlPatternsN$C=:F8O A A83=0BC@>9 %1 C65 ACI5AB2C5B.0A function already exists with the signature %1. QtXmlPatterns>4C;L 181;8>B5:8 =5 <>65B 8A?>;L7>20BLAO =0?@O<CN. = 4>;65= 1KBL 8<?>@B8@>20= 87 >A=>2=>3> <>4C;O.VA library module cannot be evaluated directly. It must be imported from a main module. QtXmlPatternsb0@0<5B@ DC=:F88 =5 <>65B 1KBL >1JO2;5= BC==5;5<.78F8>==K9 ?@548:0B 4>;65= 2KG8A;OBLAO :0: G8A;>2>5 2K@065=85.?A positional predicate must evaluate to a single numeric value. QtXmlPatternsX$C=:F8O AB8;59 4>;6=0 8<5BL 8<O A ?@5D8:A><.0A stylesheet function must have a prefixed name. QtXmlPatternsH(01;>= A 8<5=5< %1 C65 1K; >1JO2;5=.2A template with name %1 has already been declared. QtXmlPatterns=0G5=85 B8?0 %1 =5 <>65B 1KBL CA;>285<. #A;>285< <>3CB O2;OBLAO G8A;>2>9 8 1C;52K9 B8?K.yA value of type %1 cannot be a predicate. A predicate must have either a numeric type or an Effective Boolean Value type. QtXmlPatternsb=0G5=85 B8?0 %1 =5 <>65B 1KBL 1C;52K< 7=0G5=85<.:A value of type %1 cannot have an Effective Boolean Value. QtXmlPatterns=0G5=85 B8?0 %1 4>;6=> A>45@60BL G5B=>5 :>;8G5AB2> F8D@. =0G5=85 %2 MB><C B@51>20=8N =5 C4>2;5B2>@O5B.PA value of type %1 must contain an even number of digits. The value %2 does not. QtXmlPatternsJ5@5<5==0O A 8<5=5< %1 C65 >1JO2;5=0.2A variable with name %1 has already been declared. QtXmlPatterns 538>=0;L=>5 A<5I5=85 4>;6=> 1KBL 2 ?5@545;0E >B %1 4> %2 2:;NG8B5;L=>. %3 2KE>48B 70 4>?CAB8<K5 ?@545;K.HA zone offset must be in the range %1..%2 inclusive. %3 is out of range. QtXmlPatternsF5>4=>7=0G=>5 A>>B25BAB285 ?@028;C.Ambiguous rule match. QtXmlPatterns@3C<5=B A 8<5=5< %1 C65 >1JO2;5=. <O :064>3> 0@3C<5=B0 4>;6=> 1KBL C=8:0;L=K<.WAn argument with name %1 has already been declared. Every argument name must be unique. QtXmlPatternsFB@81CB A 8<5=5< %1 C65 ACI5AB2C5B.1An attribute by name %1 has already been created. QtXmlPatterns#75;-0B@81CB =5 <>65B 1KBL ?>B><:>< C7;0-4>:C<5=B0. B@81CB %1 =5C<5AB5=.dAn attribute node cannot be a child of a document node. Therefore, the attribute %1 is out of place. QtXmlPatternspB@81CB A 8<5=5< %1 C65 ACI5AB2C5B 4;O 40==>3> M;5<5=B0.?An attribute with name %1 has already appeared on this element. QtXmlPatternsZ0: <8=8<C< >48= M;5<5=B %1 4>;65= 1KBL 2 %2.3At least one %1 element must appear as child of %2. QtXmlPatternsb0: <8=8<C< >48= M;5<5=B %1 4>;65= 1KBL ?5@54 %2.-At least one %1-element must occur before %2. QtXmlPatternsd0: <8=8<C< >48= M;5<5=B %1 4>;65= 1KBL 2=CB@8 %2.-At least one %1-element must occur inside %2. QtXmlPatternsd>;6=0 ?@8ACBAB2>20BL :0: <8=8<C< >4=0 :><?>=5=B0.'At least one component must be present. QtXmlPatterns0: <8=8<C< >48= @568< 4>;65= 1KBL C:070= 2 0B@81CB5 %1 M;5<5=B0 %2.FAt least one mode must be specified in the %1-attribute on element %2. QtXmlPatterns0: <8=8<C< >4=0 :><?>=5=B0 2@5<5=8 4>;6=0 A;54>20BL 70 @0745;8B5;5< %1.?At least one time component must appear after the %1-delimiter. QtXmlPatterns2B@81CB %1 C65 >?@545;Q=.Attribute %1 already defined. QtXmlPatternsFB@81CBK %1 8 %2 2708<>8A:;NG0NI85.+Attribute %1 and %2 are mutually exclusive. QtXmlPatternsB@81CB %1 =5 <>65B 1KBL A5@80;87>20=, B0: :0: ?@8ACBAB2C5B =0 25@E=5< C@>2=5.EAttribute %1 can't be serialized because it appears at the top level. QtXmlPatternsTB@81CB %1 =5 <>65B ?@8=8<0BL 7=0G5=85 %2.&Attribute %1 cannot have the value %2. QtXmlPatternsP-;5<5=B %1 A>45@68B =525@=>5 A>45@68<>5.&Attribute %1 contains invalid content. QtXmlPatternsNB@81CB %1 A>45@68B =525@=K5 40==K5: %2&Attribute %1 contains invalid data: %2 QtXmlPatternsHB@81CB %1 =5 A>>B25BAB2C5B H01;>=C.3Attribute %1 does not match the attribute wildcard. QtXmlPatterns@C??0 0B@81CB>2 %1 A>45@68B 0B@81CB %2, =0 7=0G5=85 :>B>@>3> =0;>65=> >3@0=8G5=85, => B8? =0A;54>20= >B %3.bAttribute group %1 contains attribute %2 that has value constraint but type that inherits from %3. QtXmlPatternsZ@C??0 0B@81CB>2 %1 A>45@68B 420 0B@81CB0 %2./Attribute group %1 contains attribute %2 twice. QtXmlPatterns@C??0 0B@81CB>2 %1 A>45@68B 420 @07=KE 0B@81CB0, ?@>872>4=KE >B %2.ZAttribute group %1 contains two different attributes that both have types derived from %2. QtXmlPatternsB@81CBK A;>6=>3> B8?0 %1 =525@=> 4>?>;=ONB 0B@81CBK 107>2>3> B8?0 %2: %3.^Attributes of complex type %1 are not a valid extension of the attributes of base type %2: %3. QtXmlPatternsB@81CBK A;>6=>3> B8?0 %1 =5 O2;ONBAO 25@=K< >3@0=8G5=85< 0B@81CB>2 107>2>3> B8?0 %2: %3.bAttributes of complex type %1 are not a valid restriction from the attributes of base type %2: %3. QtXmlPatterns07>2K9 B8? %1 ?@>AB>3> B8?0 %2 4>;65= A>45@60BL :0:>5-B> >1J548=5=85.:Base type %1 of simple type %2 must have variety of union. QtXmlPatternsd07>2K< ?@>AB>3> B8?0 %1 =5 <>65B 1KBL A;>6=K9 %2.6Base type of simple type %1 cannot be complex type %2. QtXmlPatterns07>2K9 B8? ?@>AB>3> B8?0 %1 4>;65= A>45@60BL :0:>9-=81C4L A?8A>:.;Base type of simple type %1 must have variety of type list. QtXmlPatterns^2>8G=K5 40==K5 =5 A>>B25BAB2CNB D0A5BC length./Binary content does not match the length facet. QtXmlPatternsd2>8G=K5 40==K5 =5 A>>B25BAB2CNB D0A5BC maxLength.2Binary content does not match the maxLength facet. QtXmlPatternsd2>8G=K5 40==K5 =5 A>>B25BAB2CNB D0A5BC minLength.2Binary content does not match the minLength facet. QtXmlPatternsb2>8G=K5 40==K5 >BACBAB2CNB 2 D0A5B5 enumeration.6Binary content is not listed in the enumeration facet. QtXmlPatterns\C;52>5 G8A;> =5 A>>B25BAB2C5B D0A5BC pattern.-Boolean content does not match pattern facet. QtXmlPatternsP&8:;8G=>5 =0A;54>20=85 107>2>3> B8?0 %1.%Circular inheritance of base type %1. QtXmlPatterns^&8:;8G=>5 =0A;54>20=85 107>2>3> >1J548=5=8O %1.!Circular inheritance of union %1. QtXmlPatternsb!;>6=K9 B8? %1 =5 <>65B 1KBL ?@>872>4=K< >B %2%3.6Complex type %1 cannot be derived from base type %2%3. QtXmlPatterns!;>6=K9 B8? %1 A>45@68B 0B@81CB %2, =0 7=0G5=85 :>B>@>3> =0;>65=> >3@0=8G5=85, => B8? =0A;54>20= >B %3._Complex type %1 contains attribute %2 that has value constraint but type that inherits from %3. QtXmlPatternsP!;>6=K9 B8? %1 A>45@68B 420 0B@81CB0 %2.,Complex type %1 contains attribute %2 twice. QtXmlPatterns~!;>6=K9 B8? %1 A>45@68B 420 @07=KE 0B@81CB0, ?@>872>4=KE >B %2.WComplex type %1 contains two different attributes that both have types derived from %2. QtXmlPatterns!;>6=K9 B8? %1 8<55B ?>2B>@ONI89AO M;5<5=B %2 2 A2>59 <>45;8 A>45@68<>3>.?Complex type %1 has duplicated element %2 in its content model. QtXmlPatternsh!;>6=K9 B8? %1 8<55B =545B5@<8=8@>20==>5 A>45@68<>5..Complex type %1 has non-deterministic content. QtXmlPatternsd54>?CAB8<>, GB>1K A;>6=K9 B8? %1 1K; 01AB@0:B=K<..Complex type %1 is not allowed to be abstract. QtXmlPatterns^!;>6=K9 B8? %1 4>;65= 8<5BL ?@>AB>5 A>45@68<>5.)Complex type %1 must have simple content. QtXmlPatterns!;>6=K9 B8? %1 4>;65= A>45@60BL B0:>9 65 ?@>AB>9 B8?, :0: 8 53> 107>2K9 :;0AA %2.DComplex type %1 must have the same simple type as its base class %2. QtXmlPatterns!;>6=K9 B8? %1 A ?@>ABK< A>45@68<K< =5 <>65B 1KBL ?@>872>4=K< >B A;>6=>3> B8?0 %2.PComplex type %1 with simple content cannot be derived from complex base type %2. QtXmlPatterns>45;L A>45@68<>3> A;>6=>3> B8?0 %1 =525@=> 4>?>;=O5B <>45;L A>45@68<>3> %2.QContent model of complex type %1 is not a valid extension of content model of %2. QtXmlPatterns!>45@68<>5 0B@81CB0 %1 =5 A>>B25BAB2C5B >?@545;Q==><C >3@0=8G5=8N 7=0G5=8O.@Content of attribute %1 does not match defined value constraint. QtXmlPatterns!>45@68<>5 0B@81CB0 %1 =5 A>>B25BAB2C5B 53> >?@545;5=8N B8?0: %2.?Content of attribute %1 does not match its type definition: %2. QtXmlPatterns!>45@68<>5 M;5<5=B0 %1 =5 A>>B25BAB2C5B >?@545;Q==><C >3@0=8G5=8N 7=0G5=8O.>Content of element %1 does not match defined value constraint. QtXmlPatterns!>45@68<>5 M;5<5=B0 %1 =5 A>>B25BAB2C5B 53> >?@545;5=8N B8?0: %2.=Content of element %1 does not match its type definition: %2. QtXmlPatternsJ0==K5 B8?0 %1 =5 <>3CB 1KBL ?CABK<8.,Data of type %1 are not allowed to be empty. QtXmlPatternsV0B0-2@5<O =5 A>>B25BAB2C5B D0A5BC pattern./Date time content does not match pattern facet. QtXmlPatterns`0B0-2@5<O =5 A>>B25BAB2C5B D0A5BC maxExclusive.8Date time content does not match the maxExclusive facet. QtXmlPatterns`0B0-2@5<O =5 A>>B25BAB2C5B D0A5BC maxInclusive.8Date time content does not match the maxInclusive facet. QtXmlPatterns`0B0-2@5<O =5 A>>B25BAB2C5B D0A5BC minExclusive.8Date time content does not match the minExclusive facet. QtXmlPatterns`0B0-2@5<O =5 A>>B25BAB2C5B D0A5BC minInclusive.8Date time content does not match the minInclusive facet. QtXmlPatternsX0B0-2@5<O >BACBAB2C5B 2 D0A5B5 enumeration.9Date time content is not listed in the enumeration facet. QtXmlPatterns<5=L %1 =525@5= 4;O <5AOF0 %2.Day %1 is invalid for month %2. QtXmlPatterns:5=L %1 2=5 480?07>=0 %2..%3.#Day %1 is outside the range %2..%3. QtXmlPatternsd5AOB8G=>5 =5 A>>B25BAB2C5B D0A5BC fractionDigits.;Decimal content does not match in the fractionDigits facet. QtXmlPatterns^5AOB8G=>5 =5 A>>B25BAB2C5B D0A5BC totalDigits.8Decimal content does not match in the totalDigits facet. QtXmlPatternsFBACBAB2C5B >1JO2;5=85 0B@81CB0 %1.,Declaration for attribute %1 does not exist. QtXmlPatternsFBACBAB2C5B >1JO2;5=85 M;5<5=B0 %1.*Declaration for element %1 does not exist. QtXmlPatterns5B>4 =0A;54>20=8O %1 4>;65= 1KBL @0AH8@5=85, B0: :0: 107>2K9 B8? %2 O2;O5BAO ?@>ABK<.TDerivation method of %1 must be extension because the base type %2 is a simple type. QtXmlPatterns5;5=85 G8A;0 B8?0 %1 =0 %2 (=5 G8A;>2>5 2K@065=85) =54>?CAB8<>.@Dividing a value of type %1 by %2 (not-a-number) is not allowed. QtXmlPatterns5;5=85 G8A;0 B8?0 %1 =0 %2 8;8 %3 (?;NA 8;8 <8=CA =C;L) =54>?CAB8<>.LDividing a value of type %1 by %2 or %3 (plus or minus zero) is not allowed. QtXmlPatternsP5;5=85 (%1) =0 =C;L (%2) =5 >?@545;5=>.(Division (%1) by zero (%2) is undefined. QtXmlPatternsj59AB28B5;L=>5 G8A;> =5 A>>B25BAB2C5B D0A5BC pattern.,Double content does not match pattern facet. QtXmlPatternst59AB28B5;L=>5 G8A;> =5 A>>B25BAB2C5B D0A5BC maxExclusive.5Double content does not match the maxExclusive facet. QtXmlPatternst59AB28B5;L=>5 G8A;> =5 A>>B25BAB2C5B D0A5BC maxInclusive.5Double content does not match the maxInclusive facet. QtXmlPatternst59AB28B5;L=>5 G8A;> =5 A>>B25BAB2C5B D0A5BC minExclusive.5Double content does not match the minExclusive facet. QtXmlPatternst59AB28B5;L=>5 G8A;> =5 A>>B25BAB2C5B D0A5BC minInclusive.5Double content does not match the minInclusive facet. QtXmlPatternsl59AB28B5;L=>5 G8A;> >BACBAB2C5B 2 D0A5B5 enumeration.6Double content is not listed in the enumeration facet. QtXmlPatternsZ;8B5;L=>ABL =5 A>>B25BAB2C5B D0A5BC pattern..Duration content does not match pattern facet. QtXmlPatternsd;8B5;L=>ABL =5 A>>B25BAB2C5B D0A5BC maxExclusive.7Duration content does not match the maxExclusive facet. QtXmlPatternsd;8B5;L=>ABL =5 A>>B25BAB2C5B D0A5BC maxInclusive.7Duration content does not match the maxInclusive facet. QtXmlPatternsd;8B5;L=>ABL =5 A>>B25BAB2C5B D0A5BC minExclusive.7Duration content does not match the minExclusive facet. QtXmlPatternsd;8B5;L=>ABL =5 A>>B25BAB2C5B D0A5BC minInclusive.7Duration content does not match the minInclusive facet. QtXmlPatterns\;8B5;L=>ABL >BACBAB2C5B 2 D0A5B5 enumeration.8Duration content is not listed in the enumeration facet. QtXmlPatterns<O :064>3> ?0@0<5B@0 H01;>=0 4>;6=> 1KBL C=8:0;L=K<, => %1 ?>2B>@O5BAO.CEach name of a template parameter must be unique; %1 is duplicated. QtXmlPatternsC;52> 7=0G5=85 =5 <>65B 1KBL 2KG8A;5=> 4;O ?>A;54>20B5;L=>AB59, :>B>@K5 A>45@60B 420 8 1>;55 0B><0@=KE 7=0G5=8O.aEffective Boolean Value cannot be calculated for a sequence containing two or more atomic values. QtXmlPatterns2-;5<5=B %1 C65 >?@545;Q=.Element %1 already defined. QtXmlPatterns-;5<5=B %1 =5 <>65B 1KBL A5@80;87>20=, B0: :0: @0A?>;>65= 2=5 4>:C<5=B0.OElement %1 can't be serialized because it appears outside the document element. QtXmlPatterns-;5<5=B %1 =5 <>65B A>45@60BL 4@C385 M;5<5=BK, B.:. 8<55B AB0B8G5A:>5 A>45@68<>5.DElement %1 cannot contain other elements, as it has a fixed content. QtXmlPatternsr-;5<5=B %1 =5 <>65B 8<5BL :>=AB@C:B>@ ?>A;54>20B5;L=>AB8..Element %1 cannot have a sequence constructor. QtXmlPatternsF-;5<5=B %1 =5 <>65B 8<5BL ?>B><:>2. Element %1 cannot have children. QtXmlPatternsX M;5<5=B5 %1 =0E>48BAO =525@=>5 A>45@68<>5.$Element %1 contains invalid content. QtXmlPatternsT-;5<5=B %1 A>45@68B =54>?CAB8<K5 0B@81CBK.+Element %1 contains not allowed attributes. QtXmlPatternsj-;5<5=B %1 A>45@68B =54>?CAB8<>5 4>G5@=55 A>45@68<>5..Element %1 contains not allowed child content. QtXmlPatternsd-;5<5=B %1 A>45@68B =54>?CAB8<K9 4>G5@=89 M;5<5=B..Element %1 contains not allowed child element. QtXmlPatternsl-;5<5=B %1 A>45@68B =54>?CAB8<>5 B5:AB>2>5 A>45@68<>5.-Element %1 contains not allowed text content. QtXmlPatternsR-;5<5=B %1 A>45@68B 420 0B@81CB0 B8?0 %2..Element %1 contains two attributes of type %2. QtXmlPatternsV-;5<5=B %1 A>45@68B =58725AB=K9 0B@81CB %2.)Element %1 contains unknown attribute %2. QtXmlPatterns@-;5<5=B %1 >1JO2;5= 01AB@0:B=K<.#Element %1 is declared as abstract. QtXmlPatternsV# M;5<5=B0 %1 >BACBAB2C5B 4>G5@=89 M;5<5=B.$Element %1 is missing child element. QtXmlPatternsb# M;5<5=B0 %1 >BACBAB2C5B =5>1E>48<K9 0B@81CB %2.,Element %1 is missing required attribute %2. QtXmlPatternsF-;5<5=B %1 =54>?CAB8< 2 MB>< <5AB5.+Element %1 is not allowed at this location. QtXmlPatterns-;5<5=BC %1 =54>?CAB8<> 8<5BL >3@0=8G5=85 =0 7=0G5=8O, 5A;8 C 53> 107>2K9 B8? A;>6=K9.QElement %1 is not allowed to have a value constraint if its base type is complex. QtXmlPatterns-;5<5=BC %1 =54>?CAB8<> 8<5BL >3@0=8G5=85 =0 7=0G5=8O, 5A;8 53> B8? ?@>872>4=K9 >B %2.TElement %1 is not allowed to have a value constraint if its type is derived from %2. QtXmlPatternsV-;5<5=B %1 =5 >?@545;Q= 2 40==>< :>=B5:AB5.(Element %1 is not defined in this scope. QtXmlPatterns0-;5<5=B %1 =5>1=C;O5<K9.Element %1 is not nillable. QtXmlPatternsB-;5<5=B %1 4>;65= 84B8 ?>A;54=8<.Element %1 must come last. QtXmlPatterns-;5<5=B %1 4>;65= 8<5BL :0: <8=8<C< >48= 87 0B@81CB>2 %2 8;8 %3.=Element %1 must have at least one of the attributes %2 or %3. QtXmlPatterns-;5<5=B %1 4>;65= 8<5BL 0B@81CB %2 8;8 :>=AB@C:B>@ ?>A;54>20B5;L=>AB8.EElement %1 must have either a %2-attribute or a sequence constructor. QtXmlPatternsX-;5<5=B =5>1=C;O5<K9, B.:. 8<55B A>45@68<>5.1Element contains content although it is nillable. QtXmlPatternsF@C??0 M;5<5=B>2 %1 C65 >?@545;Q=0.!Element group %1 already defined. QtXmlPatterns:>;5 %1 8<55B =5 ?@>AB>9 B8?.Field %1 has no simple type. QtXmlPatterns;O >1=C;O5<KE M;5<5=B>2 =54>?CAB8<> >3@0=8G5=85 D8:A8@>20==K< 7=0G5=85<.:Fixed value constraint not allowed if element is nillable. QtXmlPatterns<=0G5=85 ID %1 =5 C=8:0;L=>.ID value '%1' is not unique. QtXmlPatternsA;8 >10 7=0G5=8O 8<5NB @538>=0;L=K5 A<5I5=8O, A<5I5=8O 4>;6=K 1KBL >48=0:>2K. %1 8 %2 =5 >48=0:>2K.bIf both values have zone offsets, they must have the same zone offset. %1 and %2 are not the same. QtXmlPatternsA;8 M;5<5=B %1 =5 8<55B 0B@81CB %2, C =53> =5 <>65B 1KBL 0B@81CB>2 %3 8 %4.EIf element %1 has no attribute %2, it cannot have attribute %3 or %4. QtXmlPatterns"@5D8:A =5 4>;65= 1KBL C:070=, 5A;8 ?5@2K9 ?0@0<5B@ - ?CAB0O ?>A;54>20B5;L=>ABL 8;8 ?CAB0O AB@>:0 (2=5 ?@>AB@0=AB20 8<Q=). K; C:070= ?@5D8:A %1.If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified. QtXmlPatterns :>=AB@C:B>@5 ?@>AB@0=AB20 8<Q= 7=0G5=85 ?@>AB@0=AB20 8<Q= =5 <>65B 1KBL ?CAB>9 AB@>:>9.PIn a namespace constructor, the value for a namespace cannot be an empty string. QtXmlPatterns <>4C;5 C?@>IQ==>9 B01;8FK AB8;59 >1O70= ?@8ACBAB2>20BL 0B@81CB %1.@In a simplified stylesheet module, attribute %1 must be present. QtXmlPatterns H01;>=5 XSL-T =5 <>65B 1KBL 8A?>;L7>20=0 >AL %1 - B>;L:> >A8 %2 8;8 %3.DIn an XSL-T pattern, axis %1 cannot be used, only axis %2 or %3 can. QtXmlPatterns~ H01;>=5 XSL-T C DC=:F88 %1 =5 4>;6=> 1KBL B@5BL53> 0@3C<5=B0.>In an XSL-T pattern, function %1 cannot have a third argument. QtXmlPatterns H01;>=5 XSL-T B>;L:> DC=:F88 %1 8 %2 <>3CB 8A?>;L7>20BLAO 4;O A@02=5=8O, => =5 %3.OIn an XSL-T pattern, only function %1 and %2, not %3, can be used for matching. QtXmlPatterns H01;>=5 XSL-T ?5@2K9 0@3C<5=B DC=:F88 %1 4>;65= 1KBL ;8B5@0;>< 8;8 AAK;:>9 =0 ?5@5<5==CN, 5A;8 DC=:F8O 8A?>;L7C5BAO 4;O A@02=5=8O.yIn an XSL-T pattern, the first argument to function %1 must be a literal or a variable reference, when used for matching. QtXmlPatterns H01;>=5 XSL-T ?5@2K9 0@3C<5=B DC=:F88 %1 4>;65= 1KBL AB@>:>2K< ;8B5@0;><, 5A;8 DC=:F8O 8A?>;L7C5BAO 4;O A@02=5=8O.hIn an XSL-T pattern, the first argument to function %1 must be a string literal, when used for matching. QtXmlPatterns 70<5I05<>9 AB@>:5 A8<2>; %1 <>65B 8A?>;L7>20BLAO B>;L:> 4;O M:@0=8@>20=8O A0<>3> A51O 8;8 %2, => =5 %3MIn the replacement string, %1 can only be used to escape itself or %2, not %3 QtXmlPatterns 70<5I05<>9 AB@>:5 %1 4>;6=> A>?@>2>640BLAO :0: <8=8<C< >4=>9 F8D@>9, 5A;8 =5M:@0=8@>20=>.VIn the replacement string, %1 must be followed by at least one digit when not escaped. QtXmlPatternsl&5;>G8A;5==>5 45;5=85 (%1) =0 =C;L (%2) =5 >?@545;5=>.0Integer division (%1) by zero (%2) is undefined. QtXmlPatternsD5:>@@5:B=>5 A>45@68<>5 QName: %1.Invalid QName content: %1. QtXmlPatternsB52>7<>6=> A2O70BL A ?@5D8:A>< %1+It is not possible to bind to the prefix %1 QtXmlPatternsJ52>7<>6=> ?5@5>?@545;8BL ?@5D8:A %1.*It is not possible to redeclare prefix %1. QtXmlPatternsBC45B =52>7<>6=> 2>AAB0=>28BL %1.'It will not be possible to retrieve %1. QtXmlPatternsz52>7<>6=> 4>102;OBL 0B@81CBK ?>A;5 ;N1>3> 4@C3>3> 2840 C7;0.AIt's not possible to add attributes after any other kind of node. QtXmlPatternsx"8? M;5<5=B0 107>2>3> B8?0 =5 A>2?0405B A B8?>< M;5<5=B0 %1.6Item type of base type does not match item type of %1. QtXmlPatternst@>AB>9 B8? %1 =5 <>65B A>45@60BL M;5<5=B>2 A;>6=KE B8?>2.5Item type of simple type %1 cannot be a complex type. QtXmlPatternsb3@0=8G5=85 =0 :;NG %1 A>45@68B =54>AB0NI85 ?>;O.)Key constraint %1 contains absent fields. QtXmlPatternsL!?8A>: =5 A>>B25BAB2C5B D0A5BC length.)List content does not match length facet. QtXmlPatternsR!?8A>: =5 A>>B25BAB2C5B D0A5BC maxLength.,List content does not match maxLength facet. QtXmlPatternsR!?8A>: =5 A>>B25BAB2C5B D0A5BC minLength.,List content does not match minLength facet. QtXmlPatternsd!>45@68<>5 A?8A:0 =5 A>>B25BAB2C5B D0A5BC pattern.*List content does not match pattern facet. QtXmlPatternsl!>45@68<>5 A?8A:0 =5 ?5@5G8A;5=> 2 D0A5B5 enumeration.4List content is not listed in the enumeration facet. QtXmlPatternsF03@C65==K9 D09; AE5<K =5:>@@5:B5=.Loaded schema file is invalid. QtXmlPatterns>!>>B25BAB28O @538AB@>=57028A8<KMatches are case insensitive QtXmlPatterns=CB@5==89 B8? %1 =5 <>65B 1KBL ?@>872>4=K< >B B8?0 %2, >?@545;Q==>3> 2 107>2>< B8?5 B8?0 %3 - %4.JMember type %1 cannot be derived from member type %2 of %3's base type %4. QtXmlPatterns`@>AB>9 B8? %1 =5 <>65B >?@545;OBL A;>6=K5 B8?K.7Member type of simple type %1 cannot be a complex type. QtXmlPatterns<?>@B8@C5<K5 <>4C;8 4>;6=K 1KBL C:070=K 4> >1JO2;5=8O DC=:F89, ?5@5<5==KE 8 >?F89.MModule imports must occur before function, variable, and option declarations. QtXmlPatternsd5;5=85 ?> <>4C;N (%1) =0 =C;L (%2) =5 >?@545;5=>.0Modulus division (%1) by zero (%2) is undefined. QtXmlPatterns<5AOF %1 2=5 480?07>=0 %2..%3.%Month %1 is outside the range %2..%3. QtXmlPatternsT;O ?>;O %1 =0945=> 1>;55 >4=>3> 7=0G5=8O.'More than one value found for field %1. QtXmlPatterns#<=>65=85 G8A;0 B8?0 %1 =0 %2 8;8 %3 (?;NA-<8=CA 15A:>=5G=>ABL) =54>?CAB8<>.YMultiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed. QtXmlPatterns@>AB@0=AB2> 8<Q= %1 <>65B 1KBL A2O70=> B>;L:> A %2 (2 40==>< A;CG05 C65 ?@54>?@545;5=>).ONamespace %1 can only be bound to %2 (and it is, in either case, pre-declared). QtXmlPatterns1JO2;5=85 ?@>AB@0=AB20 8<Q= 4>;6=> 1KBL 4> >1JO2;5=8O DC=:F89, ?5@5<5==KE 8 >?F89.UNamespace declarations must occur before function, variable, and option declarations. QtXmlPatterns8@5<O >6840=8O A5B8 8AB5:;>.Network timeout. QtXmlPatternsHBACBAB2C5B >?@545;5=85 M;5<5=B0 %1.'No definition for element %1 available. QtXmlPatterns =5H=85 DC=:F88 =5 ?>445@6820NBAO. A5 ?>445@68205<K5 DC=:F88 <>3CB 8A?>;L7>20BLAO =0?@O<CN 157 ?5@2>=0G0;L=>3> >1JO2;5=8O 8E 2 :0G5AB25 2=5H=8E{No external functions are supported. All supported functions can be used directly, without first declaring them as external QtXmlPatterns@$C=:F8O A 8<5=5< %1 >BACBAB2C5B.&No function with name %1 is available. QtXmlPatternsF$C=:F8O A A83=0BC@>9 %1 >BACBAB2C5B*No function with signature %1 is available QtXmlPatternspBACBAB2C5B ?@82O7:0 : ?@>AB@0=AB2C 8<Q= 4;O ?@5D8:A0 %1-No namespace binding exists for the prefix %1 QtXmlPatternszBACBAB2C5B ?@82O7:0 : ?@>AB@0=AB2C 8<Q= 4;O ?@5D8:A0 %1 2 %23No namespace binding exists for the prefix %1 in %2 QtXmlPatternsB!E5<0 4;O ?@>25@:8 =5 >?@545;5=0.!No schema defined for validation. QtXmlPatterns>(01;>= A 8<5=5< %1 >BACBAB2C5B.No template by name %1 exists. QtXmlPatternspBACBAB2C5B 7=0G5=85 4;O 2=5H=59 ?5@5<5==>9 A 8<5=5< %1.=No value is available for the external variable with name %1. QtXmlPatternsD5@5<5==0O A 8<5=5< %1 >BACBAB2C5BNo variable with name %1 exists QtXmlPatternsh1=0@C65=> =5C=8:0;L=>5 7=0G5=85 4;O >3@0=8G5=8O %1.)Non-unique value found for constraint %1. QtXmlPatterns8 >4=> 87 2K@065=89 pragma =5 ?>445@68205BAO. >;6=> ACI5AB2>20BL 70?0A=>5 2K@065=85^None of the pragma expressions are supported. Therefore, a fallback expression must be present QtXmlPatternsp!>45@68<>5 Notation =5 ?5@5G8A;5=> 2 D0A5B5 enumeration.8Notation content is not listed in the enumeration facet. QtXmlPatternsz@8 =0A;54>20=88 >1J548=5=85< 4>ABC?=K B>;L:> D0A5BK %1 8 %2.8Only %1 and %2 facets are allowed when derived by union. QtXmlPatterns">;L:> >4=> >1JO2;5=85 %1 <>65B ?@8ACBAB2>20BL 2 ?@>;>35 70?@>A0.6Only one %1 declaration can occur in the query prolog. QtXmlPatternsF>;65= 1KBL B>;L:> >48= M;5<5=B %1.Only one %1-element can appear. QtXmlPatterns>445@68205BAO B>;L:> Unicode Codepoint Collation (%1). %2 =5 ?>445@68205BAO.IOnly the Unicode Codepoint Collation is supported(%1). %2 is unsupported. QtXmlPatternsh">;L:> ?@5D8:A %1 <>65B 1KBL A2O70= A %2 8 =0>1>@>B.5Only the prefix %1 can be bound to %2 and vice versa. QtXmlPatterns?5@0B>@ %1 =5 <>65B 8A?>;L7>20BLAO 4;O 0B><0@=KE 7=0G5=89 B8?>2 %2 8 %3.>Operator %1 cannot be used on atomic values of type %2 and %3. QtXmlPatterns`?5@0B>@ %1 =5 <>65B 8A?>;L7>20BLAO 4;O B8?0 %2.&Operator %1 cannot be used on type %2. QtXmlPatternsZ5@5?>;=5=85: 5 C40QBAO ?@54AB028BL 40BC %1."Overflow: Can't represent date %1. QtXmlPatternsT5@5?>;=5=85: =52>7<>6=> ?@54AB028BL 40BC.$Overflow: Date can't be represented. QtXmlPatterns$H81:0 @071>@0: %1Parse error: %1 QtXmlPatterns@5D8:A %1 <>65B 1KBL A2O70= B>;L:> A %2 (2 40==>< A;CG05 C65 ?@54>?@545;5=>).LPrefix %1 can only be bound to %2 (and it is, in either case, pre-declared). QtXmlPatternsD@5D8:A %1 C65 >1JO2;5= 2 ?@>;>35.,Prefix %1 is already declared in the prolog. QtXmlPatterns\@5>1@07>20=85 %1 : %2 <>65B A=878BL B>G=>ABL./Promoting %1 to %2 may cause loss of precision. QtXmlPatternsb!>45@68<>5 QName =5 A>>B25BAB2C5B D0A5BC pattern.+QName content does not match pattern facet. QtXmlPatternsd!>45@68<>5 QName >BACBAB2C5B 2 D0A5B5 enumeration.5QName content is not listed in the enumeration facet. QtXmlPatternsJ5>1E>48<> %1 M;5<5=B>2, ?>;CG5=> %2./Required cardinality is %1; got cardinality %2. QtXmlPatternsD"@51C5BAO B8? %1, => >1=0@C65= %2.&Required type is %1, but %2 was found. QtXmlPatterns~K?>;=O5BAO B01;8F0 AB8;59 XSL-T 1.0 A >1@01>BG8:>< 25@A88 2.0.5Running an XSL-T 1.0 stylesheet with a 2.0 processor. QtXmlPatternsf=0:>2>5 F5;>5 =5 A>>B25BAB2C5B D0A5BC totalDigits.?Signed integer content does not match in the totalDigits facet. QtXmlPatterns^=0:>2>5 F5;>5 =5 A>>B25BAB2C5B D0A5BC pattern.4Signed integer content does not match pattern facet. QtXmlPatternsh=0:>2>5 F5;>5 =5 A>>B25BAB2C5B D0A5BC maxExclusive.=Signed integer content does not match the maxExclusive facet. QtXmlPatternsh=0:>2>5 F5;>5 =5 A>>B25BAB2C5B D0A5BC maxInclusive.=Signed integer content does not match the maxInclusive facet. QtXmlPatternsh=0:>2>5 F5;>5 =5 A>>B25BAB2C5B D0A5BC minExclusive.=Signed integer content does not match the minExclusive facet. QtXmlPatternsh=0:>2>5 F5;>5 =5 A>>B25BAB2C5B D0A5BC minInclusive.=Signed integer content does not match the minInclusive facet. QtXmlPatterns`=0:>2>5 F5;>5 >BACBAB2C5B 2 D0A5B5 enumeration.>Signed integer content is not listed in the enumeration facet. QtXmlPatterns# ?@>AB>3> B8?0 %1 <>65B 1KBL B>;L:> ?@>AB>9 0B><0@=K9 107>2K9 B8?.=Simple type %1 can only have simple atomic type as base type. QtXmlPatterns# ?@>AB>3> B8?0 %1 %2 =5 <>65B 1KBL =5?>A@54AB25==K< 107>2K< B8?><./Simple type %1 cannot have direct base type %2. QtXmlPatternsf@>AB>9 B8? %1 A>45@68B =54>?CAB8<K9 D0A5B B8?0 %2.2Simple type %1 contains not allowed facet type %2. QtXmlPatternsd54>?CAB8<>, GB>1K ?@>AB>9 B8? %1 8<5; 107>2K< %2.3Simple type %1 is not allowed to have base type %2. QtXmlPatternsV@>AB>9 B8? %1 <>65B 8<5BL B>;L:> D0A5B %2.0Simple type %1 is only allowed to have %2 facet. QtXmlPatternsV@>AB>9 B8? A>45@68B =54>?CAB8<K9 D0A5B %1.*Simple type contains not allowed facet %1. QtXmlPatternsJ#:070==K9 B8? %1 H01;>=C =5 8725AB5=.-Specified type %1 is not known to the schema. QtXmlPatterns#:070==K9 B8? %1 =5 <>65B 1KBL :>@@5:B=> 70<5IQ= M;5<5=B>< B8?0 %2.DSpecified type %1 is not validly substitutable with element type %2. QtXmlPatternsd!>45@68<>5 AB@>:8 =5 A>>B25BAB2C5B D0A5BC pattern.,String content does not match pattern facet. QtXmlPatternsb!>45@68<>5 AB@>:8 =5 A>>B25BAB2C5B D0A5BC length./String content does not match the length facet. QtXmlPatternsh!>45@68<>5 AB@>:8 =5 A>>B25BAB2C5B D0A5BC maxLength.2String content does not match the maxLength facet. QtXmlPatternsh!>45@68<>5 AB@>:8 =5 A>>B25BAB2C5B D0A5BC minLength.2String content does not match the minLength facet. QtXmlPatternsf!>45@68<>5 AB@>:8 >BACBAB2C5B 2 D0A5B5 enumeration.6String content is not listed in the enumeration facet. QtXmlPatternsP"5:AB>2K5 C7;K =54>?CAB8<K 2 MB>< <5AB5.,Text nodes are not allowed at this location. QtXmlPatterns"5:AB 8;8 AAK;:0 =0 >1J5:B =54>?CAB8<K 2 :0G5AB25 A>45@68<>3> M;5<5=B0 %17Text or entity references not allowed inside %1 element QtXmlPatternsBAL %1 =5 ?>445@68205BAO 2 XQuery$The %1-axis is unsupported in XQuery QtXmlPatterns>7<>6=>ABL 8<?>@B0 AE5< =5 ?>445@68205BAO, A;54>20B5;L=>, >1JO2;5=89 %1 1KBL =5 4>;6=>.WThe Schema Import feature is not supported, and therefore %1 declarations cannot occur. QtXmlPatterns>7<>6=>ABL ?@>25@:8 ?> AE5<5 =5 ?>445@68205BAO. K@065=8O %1 =5 <>3CB 8A?>;L7>20BLAO.VThe Schema Validation Feature is not supported. Hence, %1-expressions may not be used. QtXmlPatterns>URI =5 <>65B A>45@60BL D@03<5=BThe URI cannot have a fragment QtXmlPatternsfB@81CB %1 <>65B 1KBL B>;L:> C ?5@2>3> M;5<5=B0 %2.9The attribute %1 can only appear on the first %2 element. QtXmlPatterns|# %2 =5 <>65B 1KBL 0B@81CB0 %1, :>340 >= O2;O5BAO ?>B><:>< %3.?The attribute %1 cannot appear on %2, when it is a child of %3. QtXmlPatterns!8<2>; A :>4>< %1, ?@8ACBAB2CNI89 2 %2 ?@8 8A?>;L7>20=88 :>48@>2:8 %3, =5 O2;O5BAO 4>?CAB8<K< A8<2>;>< XML.QThe codepoint %1, occurring in %2 using encoding %3, is an invalid XML character. QtXmlPatterns~0==K5 >1@010BK205<>9 8=AB@C:F88 =5 <>3CB A>45@60BL AB@>:C %1AThe data of a processing instruction cannot contain the string %1 QtXmlPatterns>01>@ ?> C<>;G0=8N =5 >?@545;Q=#The default collection is undefined QtXmlPatterns$<O :>48@>2:8 %1 =5:>@@5:B=>. <O :>48@>2:8 4>;6=> A>45@60BL B>;L:> A8<2>;K ;0B8=8FK 157 ?@>15;>2 8 4>;6=> C4>2;5B2>@OBL @53C;O@=><C 2K@065=8N %2.The encoding %1 is invalid. It must contain Latin characters only, must not contain whitespace, and must match the regular expression %2. QtXmlPatterns5@2K9 0@3C<5=B %1 =5 <>65B 1KBL B8?0 %2. = 4>;65= 1KBL G8A;>2>3> B8?0, B8?0 xs:yearMonthDuration 8;8 B8?0 xs:dayTimeDuration.uThe first argument to %1 cannot be of type %2. It must be a numeric type, xs:yearMonthDuration or xs:dayTimeDuration. QtXmlPatterns5@2K9 0@3C<5=B %1 =5 <>65B 1KBL B8?0 %2. = 4>;65= 1KBL B8?0 %3, %4 8;8 %5.PThe first argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. QtXmlPatterns&$>:CA =5 >?@545;Q=.The focus is undefined. QtXmlPatternsb=8F80;870F8O ?5@5<5==>9 %1 7028A8B >B A51O A0<>93The initialization of variable %1 depends on itself QtXmlPatternsb-;5<5=B %1 =5 A>>B25BAB2C5B =5>1E>48<><C B8?C %2./The item %1 did not match the required type %2. QtXmlPatterns;NG52>5 A;>2> %1 =5 <>65B 2AB@5G0BLAO A ;N1K< 4@C38< =0720=85< @568<0.5The keyword %1 cannot occur with any other mode name. QtXmlPatterns>A;54=OO G0ABL ?CB8 4>;6=0 A>45@60BL C7;K 8;8 0B><0@=K5 7=0G5=8O, => =5 <>65B A>45@60BL 8 B>, 8 4@C3>5 >4=>2@5<5==>.kThe last step in a path must contain either nodes or atomic values. It cannot be a mixture between the two. QtXmlPatternsZ>7<>6=>ABL 8<?>@B0 <>4C;59 =5 ?>445@68205BAO*The module import feature is not supported QtXmlPatternsd0720=85 %1 =5 A>>B25BAB2C5B =8 >4=><C B8?C AE5<K..The name %1 does not refer to any schema type. QtXmlPatterns0720=85 @0AG8BK205<>3> 0B@81CB0 =5 <>65B 8<5BL URI ?@>AB@0=AB20 8<Q= %1 A ;>:0;L=K< 8<5=5< %2.ZThe name for a computed attribute cannot have the namespace URI %1 with the local name %2. QtXmlPatterns<O ?5@5<5==>9, A2O70==>9 A 2K@065=85< for, 4>;6=> >B;8G0BLAO >B ?>78F8>==>9 ?5@5<5==>9. 25 ?5@5<5==K5 A 8<5=5< %1 :>=D;8:BCNB.The name of a variable bound in a for-expression must be different from the positional variable. Hence, the two variables named %1 collide. QtXmlPatterns|0720=85 2K@065=8O @0AH8@5=8O 4>;6=> 1KBL 2 ?@>AB@0=AB25 8<Q=.;The name of an extension expression must be in a namespace. QtXmlPatterns0720=85 >?F88 4>;6=> A>45@60BL ?@5D8:A. 5B ?@>AB@0=AB20 8<Q= ?> C<>;G0=8N 4;O >?F89.TThe name of an option must have a prefix. There is no default namespace for options. QtXmlPatternsf@>AB@0=BA2> 8<Q= %1 70@575@28@>20=>, ?>MB><C ?>;L7>20B5;LA:85 DC=:F88 =5 <>3CB 53> 8A?>;L7>20BL. >?@>1C9B5 ?@54>?@545;Q==K9 ?@5D8:A %2, :>B>@K9 ACI5AB2C5B 4;O ?>4>1=KE A8BC0F89.The namespace %1 is reserved; therefore user defined functions may not use it. Try the predefined prefix %2, which exists for these cases. QtXmlPatternsURI ?@>AB@0=AB20 8<Q= =5 <>65B 1KBL ?CAB>9 AB@>:>9 ?@8 A2O7K20=88 A ?@5D8:A>< %1.JThe namespace URI cannot be the empty string when binding to a prefix, %1. QtXmlPatternsURI ?@>AB@0=AB20 8<Q= 2 =0720=88 @0AAG8BK205<>3> 0B@81CB0 =5 <>65B 1KBL %1.DThe namespace URI in the name for a computed attribute cannot be %1. QtXmlPatternsURI ?@>AB@0=AB20 8<Q= 4>;65= 1KBL :>=AB0=B>9 8 =5 <>65B A>45@60BL 2K@065=89.IThe namespace URI must be a constant and cannot use enclosed expressions. QtXmlPatterns,@>AB@0=AB2> 8<Q= 4;O ?>;L7>20B5;LA:8E DC=:F89 =5 <>65B 1KBL ?CABK< (?>?@>1C9B5 ?@54>?@545;Q==K9 ?@5D8:A %1, :>B>@K9 ACI5AB2C5B 4;O ?>4>1=KE A8BC0F89)yThe namespace for a user defined function cannot be empty (try the predefined prefix %1 which exists for cases like this) QtXmlPatterns8@>AB@0=AB2> 8<Q= ?>;L7>20B5;LA:>9 DC=:F88 2 <>4C;5 181;8>B5:8 4>;65= A>>B25BAB2>20BL ?@>AB@0=AB2C 8<Q= <>4C;O. @C38<8 A;>20<8, >= 4>;65= 1KBL %1 2<5AB> %2The namespace of a user defined function in a library module must be equivalent to the module namespace. In other words, it should be %1 instead of %2 QtXmlPatterns$>@<0 =>@<0;870F88 %1 =5 ?>445@68205BAO. >445@6820NBAO B>;L:> %2, %3, %4, %5 8 ?CAB0O, B.5. ?CAB0O AB@>:0 (157 =>@<0;870F88).The normalization form %1 is unsupported. The supported forms are %2, %3, %4, and %5, and none, i.e. the empty string (no normalization). QtXmlPatternsv5@540= ?0@0<5B@ %1 , => A>>B25BAB2CNI53> %2 =5 ACI5AB2C5B.;The parameter %1 is passed, but no corresponding %2 exists. QtXmlPatternsv5>1E>48< ?0@0<5B@ %1 , => A>>B25BAB2CNI53> %2 =5 ?5@540=>.BThe parameter %1 is required, but no corresponding %2 is supplied. QtXmlPatterns>@5D8:A%1 =5 <>65B 1KBL A2O70=.The prefix %1 cannot be bound. QtXmlPatterns5 C40QBAO A2O70BL ?@5D8:A %1. > C<>;G0=8N ?@5D8:A A2O70= A ?@>AB@0=AB2>< 8<Q= %2.SThe prefix %1 cannot be bound. By default, it is already bound to the namespace %2. QtXmlPatternsp@5D8:A 4>;65= 1KBL :>@@5:B=K< %1, => %2 8< =5 O2;O5BAO./The prefix must be a valid %1, which %2 is not. QtXmlPatterns>@=52>9 C75; 2B>@>3> 0@3C<5=B0 DC=:F88 %1 4>;65= 1KBL 4>:C<5=B><. %2 =5 O2;O5BAO 4>:C<5=B><.gThe root node of the second argument to function %1 must be a document node. %2 is not a document node. QtXmlPatternsB>@>9 0@3C<5=B %1 =5 <>65B 1KBL B8?0 %2. = 4>;65= 1KBL B8?0 %3, %4 8;8 %5.QThe second argument to %1 cannot be of type %2. It must be of type %3, %4, or %5. QtXmlPatterns&5;52>5 8<O 2 >1@010BK205<>9 8=AB@C:F88 =5 <>65B 1KBL %1 2 ;N1>9 :><18=0F88 =86=53> 8 25@E=53> @538AB@>2. <O %2 =5:>@@5:B=>.~The target name in a processing instruction cannot be %1 in any combination of upper and lower case. Therefore, %2 is invalid. QtXmlPatternsd&5;52>5 ?@>AB@0=AB2> 8<Q= %1 =5 <>65B 1KBL ?CABK<.-The target namespace of a %1 cannot be empty. QtXmlPatterns=0G5=85 0B@81CB0 %1 M;5<5=B0 %2 4>;6=> 1KBL 8;8 %3, 8;8 %4, => =5 %5.IThe value for attribute %1 on element %2 must either be %3 or %4, not %5. QtXmlPatterns=0G5=85 0B@81CB0 %1 4>;6=> 1KBL B8?0 %2, => %3 =5 A>>B25BAB2C5B 40==><C B8?C.=The value of attribute %1 must be of type %2, which %3 isn't. QtXmlPatterns=0G5=85 0B@81CB0 25@A88 XSL-T 4>;6=> 1KBL B8?0 %1, => %2 8< =5 O2;O5BAO.TThe value of the XSL-T version attribute must be a value of type %1, which %2 isn't. QtXmlPatterns:5@5<5==0O %1 =5 8A?>;L7C5BAOThe variable %1 is unused QtXmlPatternsz@8ACBAB2C5B >4=> 7=0G5=85 IDREF 157 A>>B25BAB2CNI53> ID: %1.6There is one IDREF value with no corresponding ID: %1. QtXmlPatterns0==K9 >1@01>BG8: =5 @01>B05B A> AE5<0<8, A;54>20B5;L=>, %1 =5 <>65B 8A?>;L7>20BLAO.CThis processor is not Schema-aware and therefore %1 cannot be used. QtXmlPatterns<@5<O %1:%2:%3.%4 =5:>@@5:B=>.Time %1:%2:%3.%4 is invalid. QtXmlPatterns@5<O 24:%1:%2.%3 =5:>@@5:B=>. 24 G0A0, => <8=CBK, A5:C=4K 8/8;8 <8;;8A5:C=4K >B;8G=K >B 0; _Time 24:%1:%2.%3 is invalid. Hour is 24, but minutes, seconds, and milliseconds are not all 0;  QtXmlPatterns-;5<5=BK 25@E=53> C@>2=O B01;8FK AB8;59 4>;6=K 1KBL 2 ?@>AB@0=AB25 8<5=, :>B>@K< %1 =5 O2;O5BAO.NTop level stylesheet elements must be in a non-null namespace, which %1 isn't. QtXmlPatterns20 0B@81CB0 >1JO2;5=8O ?@>AB@0=AB2 8<Q= 8<5NB >48=0:>2>5 8<O: %1.?@545;Q=.Type %1 already defined. QtXmlPatternsrH81:0 B8?>2 2 ?@5>1@07>20=88, >6840;>AL %1, ?>;CG5=> %2.-Type error in cast, expected %1, received %2. QtXmlPatternsX1J548=5=85 =5 A>>B25BAB2C5B D0A5BC pattern.+Union content does not match pattern facet. QtXmlPatterns`1J548=5=85 =5 ?5@5G8A;5=> 2 D0A5B5 enumeration.5Union content is not listed in the enumeration facet. QtXmlPatterns<58725AB2=K9 0B@81CB XSL-T %1.Unknown XSL-T attribute %1. QtXmlPatternsh D0A5B5 %2 8A?>;L7C5BAO =58725AB=>5 >1>7=0G5=85 %1.%Unknown notation %1 used in %2 facet. QtXmlPatternsl577=0:>2>5 F5;>5 =5 A>>B25BAB2C5B D0A5BC totalDigits.AUnsigned integer content does not match in the totalDigits facet. QtXmlPatternsd577=0:>2>5 F5;>5 =5 A>>B25BAB2C5B D0A5BC pattern.6Unsigned integer content does not match pattern facet. QtXmlPatternsn577=0:>2>5 F5;>5 =5 A>>B25BAB2C5B D0A5BC maxExclusive.?Unsigned integer content does not match the maxExclusive facet. QtXmlPatternsn577=0:>2>5 F5;>5 =5 A>>B25BAB2C5B D0A5BC maxInclusive.?Unsigned integer content does not match the maxInclusive facet. QtXmlPatternsn577=0:>2>5 F5;>5 =5 A>>B25BAB2C5B D0A5BC minExclusive.?Unsigned integer content does not match the minExclusive facet. QtXmlPatternsn577=0:>2>5 F5;>5 =5 A>>B25BAB2C5B D0A5BC minInclusive.?Unsigned integer content does not match the minInclusive facet. QtXmlPatternsf577=0:>2>5 F5;>5 >BACBAB2C5B 2 D0A5B5 enumeration.@Unsigned integer content is not listed in the enumeration facet. QtXmlPatternsT=0G5=85 %1 B8?0 %2 1>;LH5 <0:A8<C<0 (%3).)Value %1 of type %2 exceeds maximum (%3). QtXmlPatternsR=0G5=85 %1 B8?0 %2 <5=LH5 <8=8<C<0 (%3).*Value %1 of type %2 is below minimum (%3). QtXmlPatternsl3@0=8G5=85 7=0G5=8O 0B@81CB0 %1 =5 B8?0 0B@81CB0: %2.?Value constraint of attribute %1 is not of attributes type: %2. QtXmlPatternsl3@0=8G5=85 7=0G5=8O M;5<5=B0 %1 =5 B8?0 M;5<5=B0: %2.;Value constraint of element %1 is not of elements type: %2. QtXmlPatterns84K B8?>2 M;5<5=B>2 %1 4>;6=K 1KBL 8;8 0B><0@=K<8, 8;8 >1J548=5=8O<8.:Variety of item type of %1 must be either atomic or union. QtXmlPatterns`84K 2=CB@5==8E B8?>2 %1 4>;6=K 1KBL 0B><0@=K<8.-Variety of member types of %1 must be atomic. QtXmlPatterns|5@A8O %1 =5 ?>445@68205BAO. >445@68205BAO XQuery 25@A88 1.0.AVersion %1 is not supported. The supported XQuery version is 1.0. QtXmlPatternsJ>;5 >3@0=8G5=89 B8?0 H01;>=0 W3C XML(W3C XML Schema identity constraint field QtXmlPatterns\5@5:;NG0B5;L >3@0=8G5=89 B8?0 H01;>=0 W3C XML+W3C XML Schema identity constraint selector QtXmlPatternsA;8 ?0@0<5B@ =5>1E>48<, 7=0G5=85 ?> C<>;G0=85 =5 <>65B 1KBL ?5@540=> G5@57 0B@81CB %1 8;8 :>=AB@C:B>@ ?>A;54>20B5;L=>AB8.rWhen a parameter is required, a default value cannot be supplied through a %1-attribute or a sequence constructor. QtXmlPatternsA;8 %2 A>45@68B 0B@81CB %1, :>=AB@C:B>@ ?>A;54>20B5;L=>AB8 =5 <>65B 1KBL 8A?>;L7>20=.JWhen attribute %1 is present on %2, a sequence constructor cannot be used. QtXmlPatterns|@8 ?@5>1@07>20=88 %2 2 %1 8AE>4=>5 7=0G5=85 =5 <>65B 1KBL %3.:When casting to %1 from %2, the source value cannot be %3. QtXmlPatterns@8 ?@5>1@07>20=88 2 %1 8;8 ?@>872>4=K5 >B =53> B8?K 8AE>4=>5 7=0G5=85 4>;6=> 1KBL B>3> 65 B8?0 8;8 AB@>:>2K< ;8B5@0;><. "8? %2 =54>?CAB8<.When casting to %1 or types derived from it, the source value must be of the same type, or it must be a string literal. Type %2 is not allowed. QtXmlPatternsA;8 DC=:F8O %1 8A?>;L7C5BAO 4;O A@02=5=8O 2=CB@8 H01;>=0, 0@3C<5=B 4>;65= 1KBL AAK;:>9 =0 ?5@5<5==CN 8;8 AB@>:>2K< ;8B5@0;><.vWhen function %1 is used for matching inside a pattern, the argument must be a variable reference or a string literal. QtXmlPatterns!8<2>;K ?@>15;>2 C40;5=K (70 8A:;NG5=85< B5E, GB> 1K;8 2 A8<2>;0E :;0AA>2)OWhitespace characters are removed, except when they appear in character classes QtXmlPatternsP>4 %1 =525@5=, B0: :0: =0G8=05BAO A %2.-Year %1 is invalid because it begins with %2. QtXmlPatterns ?CAB>empty QtXmlPatterns@>2=> >48= exactly one QtXmlPatterns>48= 8;8 1>;55 one or more QtXmlPatternsxsi:noNamespaceSchemaLocation =5 <>65B 2AB@5G0BLAO ?>A;5 ?5@2>3> =5-`namespace` M;5<5=B0 8;8 0B@81CB0.^xsi:noNamespaceSchemaLocation cannot appear after the first no-namespace element or attribute. QtXmlPatterns@>AB@0=AB2> 8<Q= xsi:schemaLocation %1 C65 2AB@5G0;>AL @0=55 2 40==>< 4>:C<5=B5.Vxsi:schemaLocation namespace %1 has already appeared earlier in the instance document. QtXmlPatterns=C;L 8;8 1>;55 zero or more QtXmlPatterns=C;L 8;8 >48= zero or one QtXmlPatterns ) , qupzilla-1.6.0/bin/locale/qt_sk.qm000066400000000000000000002247751226107126500170710ustar00rootroot00000000000000@+O+O7 H4GHJáKLD"LvPS_Zr9[`[`\l__ 1?57Exn,2t w=}E6(E%i%GU+0090{0~0ż0M5X5 D< DN+5,=,FH5 &H5<H5O$H5f f0$f:wfIf~efflH;<OU`ї`i0Tee="eOįį y~^i(4KL(4K(5K(5K*y*ys *yާ*TO*0%*0+F{+F+f+fB+z.u+|+s++z.++7g+Ce+O+{+Y+į+įs+į^+.; }F0iLG7Hw9Hw98 I,IJ+J6J6/J68wJ6=JJ6{J6~ J6eJ6KG$LZILL/Lb9M5=O|/PFEXPFE}3PFETU?^U|5~V1V1Vl VΑWWTWTX:XX˙;QXYYJZg-\]4\]4S\atb|^v6Zv!%fVIAm[:IAyɵn0ɵnb/ɵngɵnu)ɵnɵnrɵn2ɵnI'+Y B EMEmq}H+<pn5#Q%UT(ŎL[*42CCJCeD"iD1TMaR?CfP loR)w^|{yuWx2}29.>kRc dDyluri- a"l))N-W/=Nl1$5~S< m?NNkyL]U`2G`H"}G )j666z6^W-IsW=~."%HEE+{8A AUu[yLBn2xH$MzM}ERGEZw,w!e&)6*/e5;rByF5OZf`z%cփfjCLqou(~ 5$$/c(Ӻ^ n,d;yA&Hc./cIxS->R> YMRYM[6h^i$sscwRۊ/UN+k]S]IIIII8@IZI*IDI*YhiȦy2pǮƶIX`ɞ"uDV1uD]8Dro_,,tA,,,7ɘeĝ5$ fR SfRI?NŌIc!PqXV9VfRB7Ɔ_ i%C?"vKNWMR]aR]gkξy^{ypFJG%Pص;ǥР+t{yrH%,C-B5wƨƨ˾gҝz iZէ?Z> f[ ~bH~bNo !e+3/b/i6 dD(GQGbMLAUݿPѧ8SnUk,UfZŸZZ ZA[]k*H^ne iVi]kQ *oNy;u{}u^}w}w}wG l1tt.3.!PDt&gt[tK=_ Fxʢ3}ʢd4Zdxdd59d׫U2BwoP e=+_2>6WCU]=DK 1U|0art }wZ=}$}$Ԥ}$JZ K<9" /\EPu %5NPTi~&%. b5kEXU GbDbGn2gAi$x1 iz*2d$U5Qz?mQnϓC;ʴ5{Wʴ5"ԄD@dF5F5|zYI "IHAsp 3 }$y qeY ڤ EwR Eg AcJ AcJ 35 K!?E bb b` b`S i3## la~ xq> | t tJG .  ? & t > o h w K& [ %'M  ʖ =n Z ) */ 7u ;p& =Q BO Rۮ T^b ] `a `j c(! d֠ e eH f1T) gn k, rD"d t ]$1 f) f)D io>P m` w z yr5 HI HC( ( $E .@ҽ  i k tw j J JF  t. kc Ӈ { N>n ̺Pc -DQL .r\ kq k U)] < 0A  U  \ ͪ xH` .- 7FS >X >YM >Z@ >`T >k >r > >{ DT I- RVK RV RV/ S.U S Y [ j7oA p- . Bhe J T0 Tu T TF  i 3  )d  .1C .b .v\ . .? . a y ҂D ~6  t a :b^0 ʜ,> +>/ 0E ;ɾߜ Pt| Pt< fe fe g iFC iHZ iY n u% uv w. w( w w}n w}e w} |[ Sj [ ^ }qP R  \ X 7 &W D M t5|3 t5 }w  )^ JT'gT(;*&5*/E'/EF=BmsI_^XRu[ a.9JnyGdvɅy$~_Sk^\B$<ݖc[y { FK"#9$U%4<]%4N-v0i)˫0̃1c 2wTaD[H_Jd_~L$.8c5hc5 yC \{~a`[6LFpN@ky=P,t2*t\i`0%1, %2 nie je definovan%1, %2 not definedQ3Accel8Nejednozna n %1 neobsl~enAmbiguous %1 not handledQ3AccelOdstrnieDelete Q3DataTableNepravdaFalse Q3DataTable Vlo~ieInsert Q3DataTable PravdaTrue Q3DataTableAktualizovaeUpdate Q3DataTable^%1 Sbor nenjden. Overte cestu a meno sboru.+%1 File not found. Check path and filename. Q3FileDialogO&dstrnie&Delete Q3FileDialog&Nie&No Q3FileDialog&OK&OK Q3FileDialog&Otvorie&Open Q3FileDialogP&remenovae&Rename Q3FileDialog&Ulo~ie&Save Q3FileDialog&Netriedie &Unsorted Q3FileDialogn&o&Yes Q3FileDialogR<qt>Naozaj chcete odstrnie %1 "%2"?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialog"Vaetky sbory (*) All Files (*) Q3FileDialog&Vaetky sbory (*.*)All Files (*.*) Q3FileDialogAtribty Attributes Q3FileDialogSpeBack Q3FileDialog StornoCancel Q3FileDialog<Koprovae alebo presune sborCopy or Move a File Q3FileDialog.Vytvorie nov prie inokCreate New Folder Q3FileDialog DtumDate Q3FileDialogOdstrnie %1 Delete %1 Q3FileDialogDetaily Detail View Q3FileDialogPrie inokDir Q3FileDialogPrie inky Directories Q3FileDialogPrie inok: Directory: Q3FileDialog ChybaError Q3FileDialog SborFile Q3FileDialogMe&no sboru: File &name: Q3FileDialog&Typ sboru: File &type: Q3FileDialogNjse prie inokFind Directory Q3FileDialogNeprstupn Inaccessible Q3FileDialog Zoznam List View Q3FileDialogH>adae &v: Look &in: Q3FileDialogMenoName Q3FileDialogNov prie inok New Folder Q3FileDialog"Nov prie inok %1 New Folder %1 Q3FileDialog Nov prie inok 1 New Folder 1 Q3FileDialogO roveH vyaaieOne directory up Q3FileDialogOtvorieOpen Q3FileDialogOtvorie Open  Q3FileDialog(Nh>ad obsahu sboruPreview File Contents Q3FileDialog4Nh>ad informci o sborePreview File Info Q3FileDialogO&bnovieR&eload Q3FileDialogLen na  tanie Read-only Q3FileDialog tanie a zpis Read-write Q3FileDialog tanie: %1Read: %1 Q3FileDialogUlo~ie akoSave As Q3FileDialog"Vyberte prie inokSelect a Directory Q3FileDialog.Zobrazie &skryt sboryShow &hidden files Q3FileDialogVe>koseSize Q3FileDialogTriedieSort Q3FileDialog*Triedie pod>a &dtumu Sort by &Date Q3FileDialog&Triedie pod>a me&na Sort by &Name Q3FileDialog.Triedie pod>a &ve>kosti Sort by &Size Q3FileDialog`pecilny sborSpecial Q3FileDialog:Symbolick odkaz na prie inokSymlink to Directory Q3FileDialog2Symbolick odkaz na sborSymlink to File Q3FileDialogFSymbolick odkaz na apecilny sborSymlink to Special Q3FileDialogTypType Q3FileDialogLen pre zpis Write-only Q3FileDialogZpis: %1 Write: %1 Q3FileDialogprie inok the directory Q3FileDialog sborthe file Q3FileDialog symbolick odkaz the symlink Q3FileDialogDNie je mo~n vytvorie prie inok %1Could not create directory %1 Q3LocalFs.Nie je mo~n otvorie %1Could not open %1 Q3LocalFsDNie je mo~n pre tae prie inok %1Could not read directory %1 Q3LocalFs^Nie je mo~n odstrnie sbor alebo prie inok %1%Could not remove file or directory %1 Q3LocalFs@Nie je mo~n premenovae %1 na %2Could not rename %1 to %2 Q3LocalFs.Nie je mo~n zapsae %1Could not write %1 Q3LocalFsPrispsobie... Customize... Q3MainWindowVyrovnaeLine up Q3MainWindow:Opercia zastaven u~vate>omOperation stopped by the userQ3NetworkProtocol StornoCancelQ3ProgressDialog Pou~ieApply Q3TabDialog StornoCancel Q3TabDialog`tandardnDefaults Q3TabDialogPomocnkHelp Q3TabDialogOKOK Q3TabDialog&Koprovae&Copy Q3TextEditV&lo~ie&Paste Q3TextEdit"&Opakovae vrten&Redo Q3TextEditV&rtie spe&Undo Q3TextEditVy istieClear Q3TextEditVys&trihneCu&t Q3TextEditVybrae vaetko Select All Q3TextEditZavrieeClose Q3TitleBarZavrie oknoCloses the window Q3TitleBarNObsahuje prkazy na manipulciu s oknom*Contains commands to manipulate the window Q3TitleBarZobraz meno okna a obsahuje riadiace prvky na manipulciu s nmFDisplays the name of the window and contains controls to manipulate it Q3TitleBar:Zv a okno na cel obrazovkuMakes the window full screen Q3TitleBarMaximalizovaeMaximize Q3TitleBarMinimalizovaeMinimize Q3TitleBar(Posunie okno z cestyMoves the window out of the way Q3TitleBardVrti maximalizovan okno spe na normlnu ve>kose&Puts a maximized window back to normal Q3TitleBardVrti minimalizovan okno spe na normlnu ve>kosePuts a minimized back to normal Q3TitleBarZmenaie Restore down Q3TitleBarZv aie Restore up Q3TitleBar SystmSystem Q3TitleBarViac...More... Q3ToolBar(neznme) (unknown) Q3UrlOperatorProtokol '%1' nepodporuje koprovanie alebo presun sborov alebo prie inkovIThe protocol `%1' does not support copying or moving files or directories Q3UrlOperatorlProtokol '%1' nepodporuje vytvranie novch prie inkov;The protocol `%1' does not support creating new directories Q3UrlOperatorXProtokol '%1' nepodporuje zskavanie sborov0The protocol `%1' does not support getting files Q3UrlOperatorTProtokol '%1' nepodporuje vpis prie inkov6The protocol `%1' does not support listing directories Q3UrlOperatorVProtokol '%1' nepodporuje ukladanie sborov0The protocol `%1' does not support putting files Q3UrlOperator|Protokol '%1' nepodporuje odstrnenie sborov alebo prie inkov@The protocol `%1' does not support removing files or directories Q3UrlOperator~Protokol '%1' nepodporuje premenovanie sborov alebo prie inkov@The protocol `%1' does not support renaming files or directories Q3UrlOperator@Protokol '%1' nie je podporovan"The protocol `%1' is not supported Q3UrlOperatorS&torno&CancelQ3Wizard&Dokon ie&FinishQ3Wizard&Pomocnk&HelpQ3Wizarda&lej >&Next >Q3Wizard< &Spe< &BackQ3Wizard&Spojenie odmietnutConnection refusedQAbstractSocket0Vypraal  as pre spojenieConnection timed outQAbstractSocket"Po ta nenjdenHost not foundQAbstractSocketSiee nedostupnNetwork unreachableQAbstractSocket,Soket nie je pripojenSocket is not connectedQAbstractSocketFVypraal  as pre operciu so soketomSocket operation timed outQAbstractSocketVy&brae vaetko &Select AllQAbstractSpinBoxKrok na&hor&Step upQAbstractSpinBoxKrok na&dol Step &downQAbstractSpinBoxAktivovaeActivate QApplication:Aktivuje hlavn okno programu#Activates the program's main window QApplicationVProgram '%1' vy~aduje Qt %2, njden Qt %3.,Executable '%1' requires Qt %2, found Qt %3. QApplication>Chyba kompatibility kni~nice QtIncompatible Qt Library Error QApplicationLTRQT_LAYOUT_DIRECTION QApplicationS&torno&Cancel QAxSelectCOM &objekt: COM &Object: QAxSelectOKOK QAxSelect.Vyberte ActiveX ControlSelect ActiveX Control QAxSelectZaakrtneCheck QCheckBoxPrepneToggle QCheckBoxOdakrtneUncheck QCheckBox2Prid&ae k vlastnm farbm&Add to Custom Colors QColorDialog&Zkladn farby &Basic colors QColorDialog&Vlastn farby&Custom colors QColorDialog&Zelen:&Green: QColorDialog e&rven:&Red: QColorDialog Na&s:&Sat: QColorDialog &Hod:&Val: QColorDialogKanl a&lfa:A&lpha channel: QColorDialog&Modr:Bl&ue: QColorDialogOd&tieH:Hu&e: QColorDialogZavrieeClose QComboBoxNepravdaFalse QComboBoxOtvorieOpen QComboBox PravdaTrue QComboBox6Transakcia sa ned potvrdieUnable to commit transaction QDB2Driver Ned sa pripojieUnable to connect QDB2Driver<Transakcia sa ned vrtie speUnable to rollback transaction QDB2DriverTNed sa nastavie automatick potvrdzovanieUnable to set autocommit QDB2Driver2Premenn sa ned naviazaeUnable to bind variable QDB2Result,Prkaz sa ned vykonaeUnable to execute statement QDB2Result4Ned sa zskae prv zznamUnable to fetch first QDB2ResultBNed sa zskae nasledujci zznamUnable to fetch next QDB2Result0Zznam %1 sa ned zskaeUnable to fetch record %1 QDB2ResultJPrkaz sa ned pripravie na vykonanieUnable to prepare statement QDB2ResultAMAM QDateTimeEditPMPM QDateTimeEditamam QDateTimeEditpmpm QDateTimeEdit QDialQDialQDialSliderHandle SliderHandleQDialMera rchlosti SpeedoMeterQDialDokon enDoneQDialog o je to? What's This?QDialogS&torno&CancelQDialogButtonBox&Zavriee&CloseQDialogButtonBox&Nie&NoQDialogButtonBox&OK&OKQDialogButtonBox&Ulo~ie&SaveQDialogButtonBoxn&o&YesQDialogButtonBoxPreruaieAbortQDialogButtonBox Pou~ieApplyQDialogButtonBox StornoCancelQDialogButtonBoxZavrieeCloseQDialogButtonBox(Zavriee bez ulo~eniaClose without SavingQDialogButtonBoxZahodieDiscardQDialogButtonBoxNeulo~ie Don't SaveQDialogButtonBoxPomocnkHelpQDialogButtonBoxIgnorovaeIgnoreQDialogButtonBoxNie pre vaetk&o N&o to AllQDialogButtonBoxOKOKQDialogButtonBoxOtvorieOpenQDialogButtonBox Nastavie pvodnResetQDialogButtonBox$Obnovie atandardnRestore DefaultsQDialogButtonBoxSksie znovaRetryQDialogButtonBox Ulo~ieSaveQDialogButtonBoxUlo~ie vaetkoSave AllQDialogButtonBoxno pre &vaetko Yes to &AllQDialogButtonBoxDtum zmeny Date Modified QDirModelDruhKind QDirModelMenoName QDirModelVe>koseSize QDirModelTypType QDirModelZavrieeClose QDockWidgetUkotvieDock QDockWidget PlvaeFloat QDockWidget MenejLessQDoubleSpinBoxViacMoreQDoubleSpinBox&OK&OK QErrorMessageB&Zobrazie tto sprvu aj nabudce&Show this message again QErrorMessageLadiaca sprva:Debug Message: QErrorMessageKritick chyba: Fatal Error: QErrorMessageVarovanie:Warning: QErrorMessage%1 Prie inok nenjden. Prosm overte sprvnose zadanho mena prie inku.K%1 Directory not found. Please verify the correct directory name was given. QFileDialog%1 Sbor nenjden. Prosm overte sprvnose zadanho mena sboru.A%1 File not found. Please verify the correct file name was given. QFileDialogH%1 u~ existuje. Chcete ho nahradie?-%1 already exists. Do you want to replace it? QFileDialog&Zvolie&Choose QFileDialogO&dstrnie&Delete QFileDialog&Nov prie inok &New Folder QFileDialog&Otvorie&Open QFileDialogP&remenovae&Rename QFileDialog&Ulo~ie&Save QFileDialogn'%1' je chrnen proti zpisu. Chcete ho aj tak zmazae?9'%1' is write protected. Do you want to delete it anyway? QFileDialog"Vaetky sbory (*) All Files (*) QFileDialog&Vaetky sbory (*.*)All Files (*.*) QFileDialog4Naozaj chcete zmazae '%1'?!Are sure you want to delete '%1'? QFileDialogSpeBack QFileDialog2Prie inok sa ned zmazae.Could not delete directory. QFileDialog.Vytvorie nov prie inokCreate New Folder QFileDialogDetaily Detail View QFileDialogPrie inky Directories QFileDialogPrie inok: Directory: QFileDialog OddielDrive QFileDialog SborFile QFileDialogMe&no sboru: File &name: QFileDialogSbory typu:Files of type: QFileDialogNjse prie inokFind Directory QFileDialogDopreduForward QFileDialog Zoznam List View QFileDialogH>adae v:Look in: QFileDialogMj po ta  My Computer QFileDialogNov prie inok New Folder QFileDialogOtvorieOpen QFileDialog(Rodi ovsk prie inokParent Directory QFileDialogOdstrnieRemove QFileDialogUlo~ie akoSave As QFileDialogZobrazieShow  QFileDialog.Zobrazie &skryt sboryShow &hidden files QFileDialogNeznmeUnknown QFileDialog %1 GB%1 GBQFileSystemModel %1 KB%1 KBQFileSystemModel %1 MB%1 MBQFileSystemModel %1 TB%1 TBQFileSystemModel%1 bajtov%1 bytesQFileSystemModel<b>Meno "%1" sa ned pou~ie.</b><p>Skste pou~ie in meno s menej psmenami alebo bez interpunk nch znamienok.oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModelPo ta ComputerQFileSystemModelDtum zmeny Date ModifiedQFileSystemModel(Neplatn meno sboruInvalid filenameQFileSystemModelDruhKindQFileSystemModelMj po ta  My ComputerQFileSystemModelMenoNameQFileSystemModelVe>koseSizeQFileSystemModelTypTypeQFileSystemModel &Psmo&Font QFontDialog&Ve>kose&Size QFontDialog&Pod iarknue &Underline QFontDialog EfektyEffects QFontDialog`&tl psma Font st&yle QFontDialog Nh>adSample QFontDialogVybrae psmo Select Font QFontDialogPre iar&knue Stri&keout QFontDialogSystm psan&iaWr&iting System QFontDialog6Zmena prie inku zlyhala: %1Changing directory failed: %1QFtp(Pripojen k po ta uConnected to hostQFtp.Pripojen k po ta u %1Connected to host %1QFtp@Spojenie s po ta om zlyhalo: %1Connecting to host failed: %1QFtp"Spojenie uzavretConnection closedQFtp4Dtov spojenie odmietnut&Connection refused for data connectionQFtpDSpojenie s po ta om %1 odmietnutConnection refused to host %1QFtp,Spojenie s %1 uzavretConnection to %1 closedQFtp@Vytvorenie prie inku zlyhalo: %1Creating directory failed: %1QFtp:Stiahnutie sboru zlyhalo: %1Downloading file failed: %1QFtp(Po ta %1 nenjden Host %1 foundQFtp(Po ta %1 nenjdenHost %1 not foundQFtpPo ta njden Host foundQFtp4Vpis prie inku zlyhal: %1Listing directory failed: %1QFtp.Prihlsenie zlyhalo: %1Login failed: %1QFtpNepripojen Not connectedQFtpBOdstrnenie prie inku zlyhalo: %1Removing directory failed: %1QFtp<Odstrnenie sboru zlyhalo: %1Removing file failed: %1QFtpNeznma chyba Unknown errorQFtp6Poslanie sboru zlyhalo: %1Uploading file failed: %1QFtpNeznma chyba Unknown error QHostInfo"Po ta nenjdenHost not foundQHostInfoAgent$Neznmy typ adresyUnknown address typeQHostInfoAgentNeznma chyba Unknown errorQHostInfoAgent(Vy~aduje sa overenieAuthentication requiredQHttp(Pripojen k po ta uConnected to hostQHttp.Pripojen k po ta u %1Connected to host %1QHttp"Spojenie uzavretConnection closedQHttp&Spojenie odmietnutConnection refusedQHttp,Spojenie s %1 uzavretConnection to %1 closedQHttp.Po~iadavka HTTP zlyhalaHTTP request failedQHttp(Po ta %1 nenjden Host %1 foundQHttp(Po ta %1 nenjdenHost %1 not foundQHttpPo ta njden Host foundQHttp0Neplatn  asti tela HTTPInvalid HTTP chunked bodyQHttp>Neplatn hlavi ka odpovede HTTPInvalid HTTP response headerQHttp@Nenastaven server na pripojenieNo server set to connect toQHttp.Proxy vy~aduje overenieProxy authentication requiredQHttp(Po~iadavka preruaenRequest abortedQHttpFServer neo akvane uzavrel spojenie%Server closed connection unexpectedlyQHttpNeznma chyba Unknown errorQHttp*Neplatn d:~ka obsahuWrong content lengthQHttp(Vy~aduje sa overenieAuthentication requiredQHttpSocketEngine4Transakcia sa ned spustieCould not start transaction QIBaseDriver6Chyba pri otvran databzyError opening database QIBaseDriver6Transakcia sa ned potvrdieUnable to commit transaction QIBaseDriver<Transakcia sa ned vrtie speUnable to rollback transaction QIBaseDriver.Prkaz sa ned alokovaeCould not allocate statement QIBaseResult<Vstupn prkaz sa ned popsae"Could not describe input statement QIBaseResult,Prkaz sa ned popsaeCould not describe statement QIBaseResult:Ned sa zskae a>aia polo~kaCould not fetch next item QIBaseResult$Pole sa ned njseCould not find array QIBaseResult.Pole dt sa ned zskaeCould not get array data QIBaseResultJInformcie o h>adan sa nedaj zskaeCould not get query info QIBaseResultJInformcie o prkaze sa nedaj zskaeCould not get statement info QIBaseResult0Prkaz sa ned pripravieCould not prepare statement QIBaseResult4Transakcia sa ned spustieCould not start transaction QIBaseResult.Prkaz sa ned uzavrieeUnable to close statement QIBaseResult6Transakcia sa ned potvrdieUnable to commit transaction QIBaseResult*BLOB sa ned vytvorieUnable to create BLOB QIBaseResult0H>adanie sa ned vykonaeUnable to execute query QIBaseResult(BLOB sa ned otvorieUnable to open BLOB QIBaseResult$BLOB sa ned  taeUnable to read BLOB QIBaseResult(BLOB sa ned zapsaeUnable to write BLOB QIBaseResult@Na zariaden nie je vo>n miestoNo space left on device QIODeviceB}iadny tak sbor alebo prie inokNo such file or directory QIODevice$Prstup zamietnutPermission denied QIODevice<Prlia ve>a otvorench sborovToo many open files QIODeviceNeznma chyba Unknown error QIODevice,Metda vstupu Mac OS XMac OS X input method QInputContext*Metda vstupu WindowsWindows input method QInputContextXIMXIM QInputContext"Metda vstupu XIMXIM input method QInputContext*Ned sa mmap '%1': %2Could not mmap '%1': %2QLibrary,Ned sa unmap '%1': %2Could not unmap '%1': %2QLibraryPOverovacie dta modulu v '%1' neshlasia)Plugin verification data mismatch in '%1'QLibraryDSbor '%1' nie je platn Qt modul.'The file '%1' is not a valid Qt plugin.QLibrary|Modul '%1' pou~va nekompatibiln Qt kni~nicu. (%2.%3.%4) [%5]=The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]QLibraryModul '%1' pou~va nekompatibiln Qt kni~nicu. (Nedaj sa mieaae debug a release kni~nice.)WThe plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)QLibraryModul '%1' pou~va nekompatibiln Qt kni~nicu. O akvan k> "%2", njden "%3"OThe plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"QLibraryBZdie>an kni~nica nebola njden.!The shared library was not found.QLibraryNeznma chyba Unknown errorQLibrary&Koprovae&Copy QLineEditV&lo~ie&Paste QLineEdit"&Opakovae vrten&Redo QLineEditV&rtie spe&Undo QLineEditVys&trihneCu&t QLineEditOdstrnieDelete QLineEditVybrae vaetko Select All QLineEdit4Transakcia sa ned spustieUnable to begin transaction QMYSQLDriver6Transakcia sa ned potvrdieUnable to commit transaction QMYSQLDriver Ned sa pripojieUnable to connect QMYSQLDriver4Databza sa ned otvorie 'Unable to open database ' QMYSQLDriver<Transakcia sa ned vrtie speUnable to rollback transaction QMYSQLDriverBVstupn hodnota sa ned naviazaeUnable to bind outvalues QMYSQLResult0Hodnota sa ned naviazaeUnable to bind value QMYSQLResult0H>adanie sa ned vykonaeUnable to execute query QMYSQLResult,Prkaz sa ned vykonaeUnable to execute statement QMYSQLResult*Dta sa nedaj zskaeUnable to fetch data QMYSQLResult0Prkaz sa ned pripravieUnable to prepare statement QMYSQLResult4Prkaz sa ned vrtie speUnable to reset statement QMYSQLResult.Vsledok sa ned ulo~ieUnable to store result QMYSQLResultBVsledky prkazu sa nedaj ulo~ie!Unable to store statement results QMYSQLResult%1 - [%2] %1 - [%2] QMdiSubWindow&Zavriee&Close QMdiSubWindow&Presune&Move QMdiSubWindow&Obnovie&Restore QMdiSubWindowVe>ko&se&Size QMdiSubWindowZavrieeClose QMdiSubWindowPomocnkHelp QMdiSubWindowMa&ximalizovae Ma&ximize QMdiSubWindowMaximalizovaeMaximize QMdiSubWindowMenuMenu QMdiSubWindowMi&nimalizovae Mi&nimize QMdiSubWindowMinimalizovaeMinimize QMdiSubWindowObnovie dolu Restore Down QMdiSubWindowNechae navr&chu Stay on &Top QMdiSubWindowZavrieeCloseQMenuVykonaeExecuteQMenuOtvorieOpenQMenuInformcie o QtAbout Qt QMessageBoxPomocnkHelp QMessageBox Skrye detaily...Hide Details... QMessageBoxOKOK QMessageBox&Zobrazie detaily...Show Details... QMessageBoxVybrae IM Select IMQMultiInputContextHPrepna metdy viacnsobnho vstupuMultiple input method switcherQMultiInputContextPluginPrepna metdy viacnsobnho vstupu, ktor pou~va kontextov menu textovch prvkovMMultiple input method switcher that uses the context menu of the text widgetsQMultiInputContextPluginJIn soket u~ po va na rovnakom porte4Another socket is already listening on the same portQNativeSocketEnginetPokus o pou~itie IPv6 soketu na platforme bez IPv6 podpory=Attempt to use IPv6 socket on a platform with no IPv6 supportQNativeSocketEngine&Spojenie odmietnutConnection refusedQNativeSocketEngine0Vypraal  as pre spojenieConnection timed outQNativeSocketEngineJDatagram je pre poslanie prlia ve>kDatagram was too large to sendQNativeSocketEngine*Po ta je nedostupnHost unreachableQNativeSocketEngine*Neplatn popis soketuInvalid socket descriptorQNativeSocketEngineSieeov chyba Network errorQNativeSocketEngine@Vypraal  as pre sieeov operciuNetwork operation timed outQNativeSocketEngineSiee nedostupnNetwork unreachableQNativeSocketEngine,Opercia na non-soketeOperation on non-socketQNativeSocketEngine$Nedostatok zdrojovOut of resourcesQNativeSocketEngine$Prstup zamietnutPermission deniedQNativeSocketEngine6Nepodporovan typ protokoluProtocol type not supportedQNativeSocketEngine,Adresa nie je dostupnThe address is not availableQNativeSocketEngine$Adresa je chrnenThe address is protectedQNativeSocketEngine:Hrani n adresa je u~ pou~it#The bound address is already in useQNativeSocketEngineDVzdialen po ta uzavrel spojenie%The remote host closed the connectionQNativeSocketEngineJNed sa inicializovae vysielac soket%Unable to initialize broadcast socketQNativeSocketEngineNNed sa inicializovae neblokujci soket(Unable to initialize non-blocking socketQNativeSocketEngine*Sprva sa ned prijaeUnable to receive a messageQNativeSocketEngine*Sprva sa ned poslaeUnable to send a messageQNativeSocketEngineNed sa zapsaeUnable to writeQNativeSocketEngineNeznma chyba Unknown errorQNativeSocketEngineBNepodporovan opercia so soketomUnsupported socket operationQNativeSocketEngine4Transakcia sa ned spustieUnable to begin transaction QOCIDriver6Transakcia sa ned potvrdieUnable to commit transaction QOCIDriver*Ned sa inicializovaeUnable to initialize QOCIDriver"Ned sa prihlsieUnable to logon QOCIDriver<Transakcia sa ned vrtie speUnable to rollback transaction QOCIDriver.Prkaz sa ned alokovaeUnable to alloc statement QOCIResultZPre dvkov spustenie sa ned naviazae st:pec'Unable to bind column for batch execute QOCIResult2Hodnota sa ned previazaeUnable to bind value QOCIResult<Ned sa vykonae dvkov prkaz!Unable to execute batch statement QOCIResult,Prkaz sa ned vykonaeUnable to execute statement QOCIResult(Ned sa prejse alejUnable to goto next QOCIResult0Prkaz sa ned pripravieUnable to prepare statement QOCIResult6Transakcia sa ned potvrdieUnable to commit transaction QODBCDriver Ned sa pripojieUnable to connect QODBCDriverNed sa pripojie - ovlda neposkytuje vaetku po~adovan funkcionalituCUnable to connect - Driver doesn't support all needed functionality QODBCDriverRNed sa zakzae automatick potvrdzovanieUnable to disable autocommit QODBCDriverRNed sa povolie automatick potvrdzovanieUnable to enable autocommit QODBCDriver<Transakcia sa ned vrtie speUnable to rollback transaction QODBCDriverQODBCResult::reset: Pre prkaz sa ned nastavie atribt 'SQL_CURSOR_STATIC'. Prosm skontrolujte konfigurciu ovlda a ODBCyQODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResult4Premenn sa ned previazaeUnable to bind variable QODBCResult,Prkaz sa ned vykonaeUnable to execute statement QODBCResult4Ned sa zskae prv zznamUnable to fetch first QODBCResult6Ned sa zskae a>a zznamUnable to fetch next QODBCResult0Prkaz sa ned pripravieUnable to prepare statement QODBCResult DomovHomeQObjectMenoNameQPPDOptionsModelHodnotaValueQPPDOptionsModel4Transakcia sa ned spustieCould not begin transaction QPSQLDriver6Transakcia sa ned potvrdieCould not commit transaction QPSQLDriver<Transakcia sa ned vrtie speCould not rollback transaction QPSQLDriver Ned sa pripojieUnable to connect QPSQLDriver2Ned sa vytvorie h>adanieUnable to create query QPSQLResultNa arku LandscapeQPageSetupWidgetVe>kose strany: Page size:QPageSetupWidgetZdroj papiera: Paper source:QPageSetupWidgetNa vakuPortraitQPageSetupWidget*Modul nebol na tan.The plugin was not loaded. QPluginLoaderNeznma chyba Unknown error QPluginLoaderH%1 u~ existuje. Chcete ho prepsae?/%1 already exists. Do you want to overwrite it? QPrintDialog`%1 je prie inok. Prosm zvo>te in meno sboru.7%1 is a directory. Please choose a different file name. QPrintDialog8<qt>Chcete ho prepsae?</qt>%Do you want to overwrite it? QPrintDialog$A0 (841 x 1189 mm)A0 (841 x 1189 mm) QPrintDialog"A1 (594 x 841 mm)A1 (594 x 841 mm) QPrintDialog"A2 (420 x 594 mm)A2 (420 x 594 mm) QPrintDialog"A3 (297 x 420 mm)A3 (297 x 420 mm) QPrintDialogJA4 (210 x 297 mm, 8.26 x 11.7 palcov)%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialog"A5 (148 x 210 mm)A5 (148 x 210 mm) QPrintDialog"A6 (105 x 148 mm)A6 (105 x 148 mm) QPrintDialog A7 (74 x 105 mm)A7 (74 x 105 mm) QPrintDialogA8 (52 x 74 mm)A8 (52 x 74 mm) QPrintDialogA9 (37 x 52 mm)A9 (37 x 52 mm) QPrintDialogAliasy: %1 Aliases: %1 QPrintDialog&B0 (1000 x 1414 mm)B0 (1000 x 1414 mm) QPrintDialog$B1 (707 x 1000 mm)B1 (707 x 1000 mm) QPrintDialog B10 (31 x 44 mm)B10 (31 x 44 mm) QPrintDialog"B2 (500 x 707 mm)B2 (500 x 707 mm) QPrintDialog"B3 (353 x 500 mm)B3 (353 x 500 mm) QPrintDialog"B4 (250 x 353 mm)B4 (250 x 353 mm) QPrintDialogJB5 (176 x 250 mm, 6.93 x 9.84 palcov)%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialog"B6 (125 x 176 mm)B6 (125 x 176 mm) QPrintDialog B7 (88 x 125 mm)B7 (88 x 125 mm) QPrintDialogB8 (62 x 88 mm)B8 (62 x 88 mm) QPrintDialogB9 (44 x 62 mm)B9 (44 x 62 mm) QPrintDialog$C5E (163 x 229 mm)C5E (163 x 229 mm) QPrintDialog$DLE (110 x 220 mm)DLE (110 x 220 mm) QPrintDialogRExecutive (7.5 x 10 palcov, 191 x 254 mm))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialogDo sboru %1 sa ned zapisovae. Prosm vyberte si in meno sboru.=File %1 is not writable. Please choose a different file name. QPrintDialogSbor existuje File exists QPrintDialog(Folio (210 x 330 mm)Folio (210 x 330 mm) QPrintDialog*Ledger (432 x 279 mm)Ledger (432 x 279 mm) QPrintDialogJLegal (8.5 x 14 palcov, 216 x 356 mm)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialogLLetter (8.5 x 11 palcov, 216 x 279 mm)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialogOKOK QPrintDialogTla Print QPrintDialog(Tla ie do sboru ...Print To File ... QPrintDialogTla ie vaetko Print all QPrintDialogRozsah tla e Print range QPrintDialogVber tla ePrint selection QPrintDialog,Tabloid (279 x 432 mm)Tabloid (279 x 432 mm) QPrintDialogFOblka US Common #10 (105 x 241 mm)%US Common #10 Envelope (105 x 241 mm) QPrintDialog"loklne pripojenlocally connected QPrintDialogneznmeunknown QPrintDialogZavrieeCloseQPrintPreviewDialogNa arku LandscapeQPrintPreviewDialogNa vakuPortraitQPrintPreviewDialogTriedieCollateQPrintSettingsOutput KpieCopiesQPrintSettingsOutputMo~nostiOptionsQPrintSettingsOutputStrany od Pages fromQPrintSettingsOutputTla ie vaetko Print allQPrintSettingsOutputRozsah tla e Print rangeQPrintSettingsOutput Vber SelectionQPrintSettingsOutputdotoQPrintSettingsOutputTla iareHPrinter QPrintWidget StornoCancelQProgressDialogOtvorieOpen QPushButtonZaakrtneCheck QRadioButton8neplatn zpis triedy znakovbad char class syntaxQRegExp,neplatn zpis vh>adubad lookahead syntaxQRegExp2neplatn zpis opakovaniabad repetition syntaxQRegExp.pou~it vypnut funkciadisabled feature usedQRegExp4neplatn osmi kov hodnotainvalid octal valueQRegExp0dosiahnut intern limitmet internal limitQRegExp2chbajci prav odde>ova missing left delimQRegExp4nevyskytli sa ~iadne chybyno error occurredQRegExp$neo akvan koniecunexpected endQRegExp6Chyba pri otvran databzyError to open databaseQSQLite2Driver4Transakcia sa ned spustieUnable to begin transactionQSQLite2Driver6Transakcia sa ned potvrdieUnable to commit transactionQSQLite2Driver<Transakcia sa ned vrtie speUnable to rollback TransactionQSQLite2Driver,Prkaz sa ned vykonaeUnable to execute statementQSQLite2Result2Vsledky sa nedaj zskaeUnable to fetch resultsQSQLite2Result8Chyba pri zatvran databzyError closing database QSQLiteDriver6Chyba pri otvran databzyError opening database QSQLiteDriver4Transakcia sa ned spustieUnable to begin transaction QSQLiteDriver6Transakcia sa ned potvrdieUnable to commit transaction QSQLiteDriver<Transakcia sa ned vrtie speUnable to rollback transaction QSQLiteDriver4Neshlas po et parametrovParameter count mismatch QSQLiteResult:Parametre sa nedaj previazaeUnable to bind parameters QSQLiteResult,Prkaz sa ned spustieUnable to execute statement QSQLiteResult*Riadok sa ned zskaeUnable to fetch row QSQLiteResult4Prkaz sa ned vrtie speUnable to reset statement QSQLiteResult SpodokBottom QScrollBar=av hrana Left edge QScrollBarVyrovnae Line down QScrollBarVyrovnaeLine up QScrollBarStrana nadol Page down QScrollBarStrana na>avo Page left QScrollBarStrana napravo Page right QScrollBarStrana nahorPage up QScrollBarPozciaPosition QScrollBarPrav hrana Right edge QScrollBarPosune nadol Scroll down QScrollBarPosune sem Scroll here QScrollBarPosune na>avo Scroll left QScrollBarPosune napravo Scroll right QScrollBarPosune nahor Scroll up QScrollBarVrchTop QScrollBar++ QShortcutAltAlt QShortcut DozaduBack QShortcutBackspace Backspace QShortcutBacktabBacktab QShortcut2ZosilHova basovch tnov Bass Boost QShortcut(Potla ie basov tny Bass Down QShortcut*Zvraznie basov tnyBass Up QShortcutZavolaeCall QShortcutCaps Lock Caps Lock QShortcutCapsLockCapsLock QShortcutContext1Context1 QShortcutContext2Context2 QShortcutContext3Context3 QShortcutContext4Context4 QShortcutCtrlCtrl QShortcutDelDel QShortcut DeleteDelete QShortcutDoluDown QShortcutEndEnd QShortcut EnterEnter QShortcutEscEsc QShortcut EscapeEscape QShortcutF%1F%1 QShortcutOb>ben Favorites QShortcut Oto ieFlip QShortcutDopreduForward QShortcut Zlo~ieHangup QShortcutPomocnkHelp QShortcutHomeHome QShortcut Domovsk strnka Home Page QShortcutInsIns QShortcut InsertInsert QShortcutSpustie (0) Launch (0) QShortcutSpustie (1) Launch (1) QShortcutSpustie (2) Launch (2) QShortcutSpustie (3) Launch (3) QShortcutSpustie (4) Launch (4) QShortcutSpustie (5) Launch (5) QShortcutSpustie (6) Launch (6) QShortcutSpustie (7) Launch (7) QShortcutSpustie (8) Launch (8) QShortcutSpustie (9) Launch (9) QShortcutSpustie (A) Launch (A) QShortcutSpustie (B) Launch (B) QShortcutSpustie (C) Launch (C) QShortcutSpustie (D) Launch (D) QShortcutSpustie (E) Launch (E) QShortcutSpustie (F) Launch (F) QShortcut2Spustie poatovho klienta Launch Mail QShortcutSpustie mdi Launch Media QShortcut V>avoLeft QShortcut"Nasledujce mdi Media Next QShortcutPrehrae mdi Media Play QShortcut(Predchdzajce mdiMedia Previous QShortcutNahre mdi Media Record QShortcutZastavie mdi Media Stop QShortcutMenuMenu QShortcutMetaMeta QShortcutNieNo QShortcutNum LockNum Lock QShortcutNumLockNumLock QShortcutNumber Lock Number Lock QShortcutOtvorie URLOpen URL QShortcutPage Down Page Down QShortcutPage UpPage Up QShortcut PausePause QShortcut PgDownPgDown QShortcutPgUpPgUp QShortcut PrintPrint QShortcut$Vytla ie obrazovku Print Screen QShortcutObnovieRefresh QShortcut ReturnReturn QShortcut VpravoRight QShortcutScroll Lock Scroll Lock QShortcutScrollLock ScrollLock QShortcut H>adaeSearch QShortcut SelectSelect QShortcut ShiftShift QShortcutMedzeraSpace QShortcutPohotovoseStandby QShortcutStopStop QShortcut SysReqSysReq QShortcutSystem RequestSystem Request QShortcutTabultorTab QShortcut(Potla ie vysok tny Treble Down QShortcut*Zvraznie vsok tny Treble Up QShortcutHoreUp QShortcut Staie hlasitose Volume Down QShortcutBez zvuku Volume Mute QShortcut Zvaie hlasitose Volume Up QShortcutnoYes QShortcutStrana nadol Page downQSliderStrana na>avo Page leftQSliderStrana napravo Page rightQSliderStrana nahorPage upQSliderPozciaPositionQSlider@Vypraal  as pre sieeov operciuNetwork operation timed outQSocks5SocketEngine MenejLessQSpinBoxViacMoreQSpinBox StornoCancelQSql Stornovae zmeny?Cancel your edits?QSqlPotvrdenieConfirmQSqlOdstrnieDeleteQSql.Odstrnie tento zznam?Delete this record?QSql Vlo~ieInsertQSqlNieNoQSqlUlo~ie zmeny? Save edits?QSqlAktualizovaeUpdateQSqlnoYesQSqlTNed sa poskytne certifikt bez k> a, %1,Cannot provide a certificate with no key, %1 QSslSocketJChyba pri vytvran SSL kontextu (%1)Error creating SSL context (%1) QSslSocketFChyba pri vytvran SSL sedenia, %1Error creating SSL session, %1 QSslSocketFChyba pri vytvran SSL sedenia: %1Error creating SSL session: %1 QSslSocket:Chyba po as SSL handshake: %1Error during SSL handshake: %1 QSslSocketNChyba  tania loklneho certifiktu, %1#Error loading local certificate, %1 QSslSocketDChyba  tania skromnho k> a, %1Error loading private key, %1 QSslSocket.Chyba po as  tania: %1Error while reading: %1 QSslSocketRNeplatn alebo przdny zoznam aifier (%1)!Invalid or empty cipher list (%1) QSslSocket4Nedaj sa zapsae dta: %1Unable to write data: %1 QSslSocket0Ned sa otvorie spojenieUnable to open connection QTDSDriver.Databza sa ned pou~ieUnable to use database QTDSDriverPosune v>avo Scroll LeftQTabBarPosune vpravo Scroll RightQTabBar&Koprovae&Copy QTextControlV&lo~ie&Paste QTextControl"&Opakovae vrten&Redo QTextControlV&rtie spe&Undo QTextControl,Koprovae cie> o&dkazuCopy &Link Location QTextControlVys&trihneCu&t QTextControl ZmazaeDelete QTextControlVybrae vaetko Select All QTextControlOtvorieOpen QToolButtonStla iePress QToolButton>Tto platforma nepodporuje IPv6#This platform does not support IPv6 QUdpSocket Opakovae vrtenRedo QUndoGroupVrtie speUndo QUndoGroup<przdne> QUndoModel Opakovae vrtenRedo QUndoStackVrtie speUndo QUndoStack8Vlo~ie Unicode riadiaci znak Insert Unicode control characterQUnicodeControlCharacterMenuBLRE za iatok z>ava-doprava vlo~ky$LRE Start of left-to-right embeddingQUnicodeControlCharacterMenu0LRM zna ka z>ava-dopravaLRM Left-to-right markQUnicodeControlCharacterMenuDLRO za iatok z>ava-doprava prepisu#LRO Start of left-to-right overrideQUnicodeControlCharacterMenu6PDF formtovanie pop smeromPDF Pop directional formattingQUnicodeControlCharacterMenuBRLE za iatok zprava-do>ava vlo~ky$RLE Start of right-to-left embeddingQUnicodeControlCharacterMenu0RLM zna ka zprava-do>avaRLM Right-to-left markQUnicodeControlCharacterMenuDRLO za iatok zprava-do>ava prepisu#RLO Start of right-to-left overrideQUnicodeControlCharacterMenu4ZWJ spjadlo nulovej arkyZWJ Zero width joinerQUnicodeControlCharacterMenu<ZWNJ ne-spjadlo nulovej arkyZWNJ Zero width non-joinerQUnicodeControlCharacterMenu4ZWSP medzera nulovej arkyZWSP Zero width spaceQUnicodeControlCharacterMenu SpodokBottomQWebPageVrtie sa speGo BackQWebPageIgnorovaeIgnoreQWebPageIgnorovae Ignore Grammar context menu itemIgnoreQWebPage=av hrana Left edgeQWebPageStrana nadol Page downQWebPageStrana na>avo Page leftQWebPageStrana napravo Page rightQWebPageStrana nahorPage upQWebPage Nastavie pvodnResetQWebPagePrav hrana Right edgeQWebPagePosune nadol Scroll downQWebPagePosune sem Scroll hereQWebPagePosune na>avo Scroll leftQWebPagePosune napravo Scroll rightQWebPagePosune nahor Scroll upQWebPageStopStopQWebPageVrchTopQWebPageNeznmeUnknownQWebPage o je to? What's This?QWhatsThisAction**QWidget&Dokon ie&FinishQWizard&Pomocnk&HelpQWizarda&lej >&Next >QWizard< &Spe< &BackQWizard StornoCancelQWizardOdovzdaeCommitQWizardPokra ovaeContinueQWizardDokon enDoneQWizardVrtie sa speGo BackQWizardPomocnkHelpQWizard%1 - [%2] %1 - [%2] QWorkspace&Zavriee&Close QWorkspace&Presune&Move QWorkspace&Obnovie&Restore QWorkspace&Ve>kose&Size QWorkspace&Rozbalie&Unshade QWorkspaceZavrieeClose QWorkspaceMa&ximalizovae Ma&ximize QWorkspaceMi&nimalizovae Mi&nimize QWorkspaceMinimalizovaeMinimize QWorkspaceObnovie dolu Restore Down QWorkspaceZa&balieSh&ade QWorkspaceNechae navr&chu Stay on &Top QWorkspaceo akvan kdovanie deklarcie alebo samostatnej deklarcie po as  tania deklarcie XMLYencoding declaration or standalone declaration expected while reading the XML declarationQXmlPchyba v deklarcii textu externej entity3error in the text declaration of an external entityQXmlBchyba po as spracovania dokumentu$error occurred while parsing commentQXml<chyba po as spracovania obsahu$error occurred while parsing contentQXml`chyba po as spracovania defincie typu dokumentu5error occurred while parsing document type definitionQXml@chyba po as spracovania elementu$error occurred while parsing elementQXml<chyba po as spracovania odkazu&error occurred while parsing referenceQXml2chyba vyvolan zkaznkomerror triggered by consumerQXml~v DTD nie je mo~n extern spracovan odkaz na vaeobecn entitu;external parsed general entity reference not allowed in DTDQXmlv hodnote atribtu nie je mo~n extern spracovan odkaz na vaeobecn entituGexternal parsed general entity reference not allowed in attribute valueQXmlhv DTD nie je mo~n intern vaeobecn odkaz na entitu4internal general entity reference not allowed in DTDQXmlPneplatn meno pre inatrukciu spracovania'invalid name for processing instructionQXml$o akva sa psmenoletter is expectedQXmlNviac ako jedna defincia typu dokumentu&more than one document type definitionQXml4nevyskytla sa ~iadna chybano error occurredQXml"rekurzvne entityrecursive entitiesQXmlxo akvan samostatn deklarcia po as  tania deklarcie XMLAstandalone declaration expected while reading the XML declarationQXml,nezodpovedajca zna ka tag mismatchQXml neo akvan znakunexpected characterQXml2neo akvan koniec sboruunexpected end of fileQXmlbnespracovan odkaz na entitu v neplatnom kontexte*unparsed entity reference in wrong contextQXmlZo akvan verzia po as  tania deklarcie XML2version expected while reading the XML declarationQXmlTneplatn hodnota pre samostatn deklarciu&wrong value for standalone declarationQXmlH%1 je neplatn PUBLIC identifiktor.#%1 is an invalid PUBLIC identifier. QXmlStream<%1 je neplatn meno kdovania.%1 is an invalid encoding name. QXmlStreamP%1 je neplatn meno vkonnej inatrukcie.-%1 is an invalid processing instruction name. QXmlStream, ale prialo ' , but got ' QXmlStream,Atribt predefinovan.Attribute redefined. QXmlStream8Kdovanie %1 nie podporovanEncoding %1 is unsupported QXmlStreamBNjden nesprvne kdovan obsah.(Encountered incorrectly encoded content. QXmlStream>Entita '%1' nie je deklarovan.Entity '%1' not declared. QXmlStreamO akvalo sa Expected  QXmlStream.O akvan znakov dta.Expected character data. QXmlStream@Obsah naviac na konci dokumentu.!Extra content at end of document. QXmlStreamLNeprpustn deklarcia priestoru mien.Illegal namespace declaration. QXmlStream$Neplatn XML znak.Invalid XML character. QXmlStream$Neplatn XML meno.Invalid XML name. QXmlStream8Neplatn reeazec verzie XML.Invalid XML version string. QXmlStreamDNeplatn atribt v XML deklarcii.%Invalid attribute in XML declaration. QXmlStream*Neplatn znak odkazu.Invalid character reference. QXmlStream$Neplatn dokument.Invalid document. QXmlStream0Neplatn hodnota entity.Invalid entity value. QXmlStreamDNeplatn meno vkonnej inatrukcie.$Invalid processing instruction name. QXmlStreamHNDATA v deklarcii parametra entity.&NDATA in parameter entity declaration. QXmlStream^Predpona '%1' priestoru mien nie je deklarovan"Namespace prefix '%1' not declared QXmlStreamLNeshlasia otvracia a koncov zna ka. Opening and ending tag mismatch. QXmlStream6Pred asn koniec dokumentu.Premature end of document. QXmlStream4Zisten rekurzvne entity.Recursive entity detected. QXmlStream`Odkaz na extern entitu '%1' v hodnote atribtu.5Reference to external entity '%1' in attribute value. QXmlStreamDOdkaz na nespracovan entitu '%1'."Reference to unparsed entity '%1'. QXmlStreamVPostupnose ']]>' nie je v obsahu prpustn.&Sequence ']]>' not allowed in content. QXmlStreamLSamostatn pripaea iba no alebo nie."Standalone accepts only yes or no. QXmlStream<O akva sa atartovacia zna ka.Start tag expected. QXmlStreamnSamostatn pseudo atribt sa mus objavie za kdovanm.?The standalone pseudo attribute must appear after the encoding. QXmlStreamNeo kavan ' Unexpected ' QXmlStream`Neo akvan znak '%1' vo verejnom literlnom id./Unexpected character '%1' in public id literal. QXmlStream2Nepodporovan XML veriza.Unsupported XML version. QXmlStreamXXML deklracia nie je na za iatku dokumentu.)XML declaration not at start of document. QXmlStreamqupzilla-1.6.0/bin/locale/qt_sr_BA.qm000066400000000000000000001526331226107126500174330ustar00rootroot00000000000000%z'G9Z`$`v +eHe'ye9įį] yh>9(2 W(44(450(4(55d(55*y*y@*y*T:*0*0+FB+F+L+f+f+h+z+X+A5+.++!+++;+C+|+į+įAf+įb3BjHF0isG"AH/,Hw9Hw9"yHOI'9IIISJ+J+J6^J6J6"J6'J6CJ6EJ6{J6AJ6J6!J6JcbKQLLLb L2M5(MbrMe/M?PFEPFEDPFE^PCR|sR̼R:aS8^`V1v:V1oVl xV^VVVV W)WWTuWTWT X%XX˙%Y Y4,Zkt[f3V[f3\\\\gc|v v&4Lc5c[%Kym=M^qnHpi1#Qoc(Ŏ6L2i5vCCj]CeD"4aR?, eeewfP or$w^Y|{ygxt2EL2.(Aiyk_ɷKʯNkykUi\E]lyz@- w 50A6!96Bv6S!@RaTd5EWEE%e{V=Z8A[yfnw'mCVMB9Mww Iw1E&BylZfjC6]֊Zcbg;yeIxS~Mh^5w\"%@ۊ%N]]IYIII"IIBIIZDol,U,A,,,,-]p2]M}|5$tfR fR2*1"jV$-V:fR+!B/ :) r+s5,tV|:{yp5t5tiF3G%;nn1++K+t8{yormH%ƨƨyҝz ߺ`M!^~b2~b8o 9^G/v/? 2A%Gb7Pѧ#(Sna[[]k*2M_P_P_pe O{{}w}w}w}}+rd1Bvt_mt..iUz5vz+A0d[!,D2)2?;agCU]mJ0`KK_\~]\Dt|(^|~}wZ^Z}$^}$}$YϗOZFK<$hf+׳ e!u>E;u%58UTzi~sfb/:wV%=0V%>z)rm<^nQ†5C&'ʴ5Bʴ5GʶE۔#F5F5D0I I0As qe> ڥ Ac Ac4_ =:EY K!?- b b`` b` laY J t| t3 i ҉wq 4 k  V 팤[z P }_ 95 )u =< Bz Ty ] c( cE| e K e2 f* g5U} k, rD"( y5x> 9s If I I ;g f* , ,* tN tg ʀs ˔;: P P :o f Q f - s K s/ ~ 9_) #  m, : J E9 L L L L Mc\&j O\ X\ \Ot! f) f)-\ f={ w? H H+ G $.\ ig ! A ` g %p J J0! k M K ̺;x -D< >= >?K >? >? >@ >ZO >b > > >c Id IM K K$ RV4 RV RV{< S& j7o* p& dl q x C; E 9C ʜ~  +> ;ɾ PtD Pt" fe fe% gt i1X i jӮx m9 m91 v&_ w w w w} w}N w} ^Y B ɰey X bFJ D 3> t5C t5$YE1*4*Ra.#vɅ6%>,^c ǗH:\ݖq[ylR  .$U%4&%48 Hc5c5g3~ iT3`h/>b^rhr:kyfڔ..B<Pnvd|/i0B2>@8 X578G0: Close Tab CloseButton<=545D8=8A0=>> Debugger::JSAgentWatchData[87 4C68=5 %1][Array of length %1]Debugger::JSAgentWatchData06=0 3@5H:0! Fake error! FakeReply58A?@020= #  Invalid URL FakeReply58A?@020= #  Invalid URL Phonon::MMF %1 Hz%1 HzPhonon::MMF::AudioEqualizer82> (%) Level (%)Phonon::MMF::StereoWidening 1@8H8Delete Q3DataTable5B0G=>False Q3DataTable #<5B=8Insert Q3DataTable "0G=>True Q3DataTable6C@8@0XUpdate Q3DataTabled%1 $0X; =8X5 =0R5=. @>2X5@8B5 ?CB0ZC 8 8<5 D0X;0.+%1 File not found. Check path and filename. Q3FileDialog&1@8H8&Delete Q3FileDialog&5&No Q3FileDialog&# @54C&OK Q3FileDialog&B2>@8&Open Q3FileDialog&@58<5=CX&Rename Q3FileDialog&!0GC20X&Save Q3FileDialog&5?>@5R0=> &Unsorted Q3FileDialog&0&Yes Q3FileDialog\<qt>5;8B5 ;8 708AB0 40 >1@8H5B5 %1 %2 ?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialog!28 D0X;>28 (*) All Files (*) Q3FileDialog"!28 D0X;>28 (*.*)All Files (*.*) Q3FileDialog!2>XAB20 Attributes Q3FileDialog 0704Back Q3FileDialog4CAB0=8Cancel Q3FileDialog0>?8@0X 8;8 ?><X5@8 D0X;Copy or Move a File Q3FileDialog*0?@028 =>2C D0AF8:;CCreate New Folder Q3FileDialog 0BC<Date Q3FileDialog1@8H8 %1 Delete %1 Q3FileDialog( 568< ?@8:070 45B0Y0 Detail View Q3FileDialog8@5:B>@8XC<Dir Q3FileDialog8@5:B>@8XC<8 Directories Q3FileDialog8@5:B>@8XC<: Directory: Q3FileDialog @5H:0Error Q3FileDialog$0X;File Q3FileDialog&<5 D0X;0: File &name: Q3FileDialog&"8? D0X;0: File &type: Q3FileDialog"0R8 48@5:B>@8XC<Find Directory Q3FileDialog54>ABC?0= Inaccessible Q3FileDialog( 568< ?@8:070 A?8A:0 List View Q3FileDialog>3;540X &C: Look &in: Q3FileDialog<5Name Q3FileDialog>20 D0AF8:;0 New Folder Q3FileDialog >20 D0AF8:;0 %1 New Folder %1 Q3FileDialog>20 D0AF8:;0 1 New Folder 1 Q3FileDialog.540= 48@5:B>@8XC< 3>@5One directory up Q3FileDialog B2>@8Open Q3FileDialog B2>@8Open  Q3FileDialog,@53;54 A04@60X0 D0X;0Preview File Contents Q3FileDialog6@53;54 8=D>@<0F8X0 > D0X;CPreview File Info Q3FileDialog&#G8B0X ?>=>2>R&eload Q3FileDialog!0<>-70-G8B0Z5 Read-only Q3FileDialog'8B0Z5-C?8A Read-write Q3FileDialog'8B0Z5: %1Read: %1 Q3FileDialog!0GC20X :0>Save As Q3FileDialog(7015@8 48@5:B>@8XC<Select a Directory Q3FileDialog2@8:068 &A:@825=5 D0X;>25Show &hidden files Q3FileDialog5;8G8=0Size Q3FileDialog>@5R0XSort Q3FileDialog$>@5R0X ?> &40BC<C Sort by &Date Q3FileDialog">@5R0X ?> &8<5=C Sort by &Name Q3FileDialog(>@5R0X ?> &25;8G8=8 Sort by &Size Q3FileDialog!?5F8X0;=>Special Q3FileDialog:A=>2=0 2570 4> 48@5:B>@8XC<0Symlink to Directory Q3FileDialog*A=>2=0 2570 4> D0X;0Symlink to File Q3FileDialog6A=>2=0 2570 4> A?5F8X0;=>3Symlink to Special Q3FileDialog"8?Type Q3FileDialog!0<>-70-C?8A Write-only Q3FileDialog#?8A: %1 Write: %1 Q3FileDialog48@5:B>@8XC< the directory Q3FileDialogD0X;the file Q3FileDialog>A=>2=0 2570 the symlink Q3FileDialog>45A8... Customize... Q3MainWindow8=8X0 3>@5Line up Q3MainWindow8?5@0F8XC 70CAB028> :>@8A=8:Operation stopped by the userQ3NetworkProtocol4CAB0=8CancelQ3ProgressDialog@8<8X5=8Apply Q3TabDialog4CAB0=8Cancel Q3TabDialog>4@07C<8X520=>Defaults Q3TabDialog ><>[Help Q3TabDialog # @54COK Q3TabDialog&>?8@0X&Copy Q3TextEdit&0;8X5?8&Paste Q3TextEdit&>=>28&Redo Q3TextEdit&?>7>28&Undo Q3TextEdit G8AB8Clear Q3TextEdit&A8X5F8Cu&t Q3TextEditG8AB8 A25 Select All Q3TextEdit0B2>@8Close Q3TitleBar0:A8<87CXMaximize Q3TitleBar8=8<87CXMinimize Q3TitleBar !8AB5<System Q3TitleBar >H...More... Q3ToolBar&4CAB0=8&CancelQ3Wizard&02@H8&FinishQ3Wizard &><>[&HelpQ3Wizard&!Y545[5 >&Next >Q3Wizard< 0&704< &BackQ3WizardB?5@0F8X0 =0 A>:5BC =8X5 ?>4@60=0$Operation on socket is not supportedQAbstractSocket >?C=8CheckQAccessibleButton@8B8A=8PressQAccessibleButton #:;>=8UncheckQAccessibleButtonLTRQT_LAYOUT_DIRECTION QApplication&4CAB0=8&Cancel QAxSelect& &>1X5:0B: COM &Object: QAxSelect # @54COK QAxSelect67015@8B5 :B82:A :>=B@>;CSelect ActiveX Control QAxSelect >?C=8Check QCheckBox@><8X5=8Toggle QCheckBox #:;>=8Uncheck QCheckBox*&>40X C ?>A51=5 1>X5&Add to Custom Colors QColorDialog&A=>2=5 1>X5 &Basic colors QColorDialog&>A51=5 1>X5&Custom colors QColorDialog&5;5=0:&Green: QColorDialog&&@25=0:&Red: QColorDialog&;D0 :0=0;:A&lpha channel: QColorDialog&;020:Bl&ue: QColorDialog71>@ 1>X5 Select Color QColorDialog0B2>@8Close QComboBox5B0G=>False QComboBox B2>@8Open QComboBox "0G=>True QComboBox %1 %2%1 %2QDeclarativeTypeLoader >B>2>DoneQDialog(B0 X5 >2>? What's This?QDialog&4CAB0=8&CancelQDialogButtonBox&0B2>@8&CloseQDialogButtonBox&5&NoQDialogButtonBox&# @54C&OKQDialogButtonBox&!0GC20X&SaveQDialogButtonBox&0&YesQDialogButtonBox@5:8=8AbortQDialogButtonBox@8<8X5=8ApplyQDialogButtonBox4CAB0=8CancelQDialogButtonBox0B2>@8CloseQDialogButtonBox"0B2>@8 157 C?8A0Close without SavingQDialogButtonBox 410F8DiscardQDialogButtonBox5 GC20X Don't SaveQDialogButtonBox ><>[HelpQDialogButtonBox0=5<0@8IgnoreQDialogButtonBox5 70 &A25 N&o to AllQDialogButtonBox # @54COKQDialogButtonBox B2>@8OpenQDialogButtonBox 5A5BCXResetQDialogButtonBox*@0B8 ?>4@07C<8X520=>Restore DefaultsQDialogButtonBox>:CH0X ?>=>2>RetryQDialogButtonBox!0GC20XSaveQDialogButtonBox!0GC20X A25Save AllQDialogButtonBox0 70 &A25 Yes to &AllQDialogButtonBox0BC< 87<X5=5 Date Modified QDirModel @AB0Kind QDirModel<5Name QDirModel5;8G8=0Size QDirModel"8?Type QDirModel0B2>@8Close QDockWidget !?>X8Dock QDockWidget ;CB0XFloat QDockWidget0Z5LessQDoubleSpinBox8H5MoreQDoubleSpinBox&# @54C&OK QErrorMessage4&@8:068 >2C ?>@C:C ?>=>2>&Show this message again QErrorMessage*>@C:0 > :>=B@0B@03C:Debug Message: QErrorMessage>1=0 3@5H:0: Fatal Error: QErrorMessage#?>7>@5Z5:Warning: QErrorMessageV%1 25[ ?>AB>X8. 5;8B5 ;8 40 30 70<8X5=8B5?-%1 already exists. Do you want to replace it? QFileDialog&7015@8&Choose QFileDialog&1@8H8&Delete QFileDialog&>20 D0AF8:;0 &New Folder QFileDialog&B2>@8&Open QFileDialog&@58<5=CX&Rename QFileDialog&!0GC20X&Save QFileDialogz %1  X5 70HB8[5= >4 C?8A0. 5;8B5 ;8 40 30 >1@8H5B5 A25X54=>?9'%1' is write protected. Do you want to delete it anyway? QFileDialog048<0:Alias QFileDialog!28 D0X;>28 (*) All Files (*) QFileDialog!28 D0X;>28 (*)All Files (*.*) QFileDialogD5;8B5 ;8 708AB0 40 >1@8H5B5 %1 ?!Are sure you want to delete '%1'? QFileDialog 0704Back QFileDialogH8A0< <>30> 40 >1@8H5< 48@5:B>@8XC<.Could not delete directory. QFileDialog*0?@028 =>2C D0AF8:;CCreate New Folder QFileDialog*0?@028 =>2C D0AF8:;CCreate a New Folder QFileDialog@8:07 45B0Y0 Detail View QFileDialog8@5:B>@8XC<8 Directories QFileDialog8@5:B>@8XC<: Directory: QFileDialog$0X;File QFileDialog&<5 D0X;0: File &name: QFileDialog"0R8 48@5:B>@8XC<Find Directory QFileDialog$0AF8:;0Folder QFileDialog0?@8X54Forward QFileDialog48 =0704Go back QFileDialog48 =0?@8X54 Go forward QFileDialog@8:07 A?8A:0 List View QFileDialog>B@068 C:Look in: QFileDialog>X @0GC=0@ My Computer QFileDialog>20 D0AF8:;0 New Folder QFileDialog B2>@8Open QFileDialog5402=0 <X5AB0 Recent Places QFileDialog #:;>=8Remove QFileDialog!0GC20X :0>Save As QFileDialog@5G8F0Shortcut QFileDialog@8:068Show  QFileDialog2@8:068 &A:@825=5 D0X;>25Show &hidden files QFileDialog5?>7=0B>Unknown QFileDialog %1 GB%1 GBQFileSystemModel %1 KB%1 KBQFileSystemModel %1 MB%1 MBQFileSystemModel %1 TB%1 TBQFileSystemModel%1 10XB(0) %1 byte(s)QFileSystemModel%1 10XB0%1 bytesQFileSystemModel<b><5 %1  A5 =5 <>65 C?>B@8X518B8.</b><p>>:CH0XB5 A 4@C38< 8<5=><, A0 <0Z5 7=0:>20 8;8 157 8=B5@?C=:F8XA:8E 7=0:>20.oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModel 0GC=0@ComputerQFileSystemModel0BC< 87<X5=5 Date ModifiedQFileSystemModel(58A?@02=> 8<5 D0X;0Invalid filenameQFileSystemModel @AB0KindQFileSystemModel>X @0GC=0@ My ComputerQFileSystemModel<5NameQFileSystemModel5;8G8=0SizeQFileSystemModel"8?TypeQFileSystemModel "0<0=Black QFontDatabase>451Y0=Bold QFontDatabaseC@7820=Italic QFontDatabase!28X5B0>Light QFontDatabase!B0=40@40=Normal QFontDatabase &$>=B&Font QFontDialog&5;8G8=0&Size QFontDialog&>4C2G5=> &Underline QFontDialog D5:B8Effects QFontDialog&!B8; D>=B0 Font st&yle QFontDialog@8<X5@Sample QFontDialog7015@8 D>=B Select Font QFontDialog&@5F@B0= Stri&keout QFontDialog&!8AB5< ?8A0Z0Wr&iting System QFontDialog 5?>7=0B0 3@5H:0 Unknown errorQFtp,8X5 40B> 8<5 4><0[8=0No host name given QHostInfo 5?>7=0B0 3@5H:0 Unknown error QHostInfo$><0[8= =8X5 =0R5=Host not foundQHostInfoAgent.58A?@02=> 8<5 4><0[8=0Invalid hostnameQHostInfoAgent,8X5 40B> 8<5 4><0[8=0No host name givenQHostInfoAgent&5?>7=0B B8? 04@5A5Unknown address typeQHostInfoAgent 5?>7=0B0 3@5H:0 Unknown errorQHostInfoAgent 5?>7=0B0 3@5H:0 Unknown errorQHttp 5?>7=0B0 3@5H:0 Unknown error QIODevice&#=5A8B5 2@8X54=>AB:Enter a value: QInputDialog 5?>7=0B0 3@5H:0 Unknown errorQLibrary&>?8@0X&Copy QLineEdit&0;8X5?8&Paste QLineEdit&>=>28&Redo QLineEdit&?>7>28&Undo QLineEdit&A8X5F8Cu&t QLineEdit 1@8H8Delete QLineEdit7015@8 A25 Select All QLineEdit%1 - [%2] %1 - [%2] QMdiSubWindow&0B2>@8&Close QMdiSubWindow&><X5@8&Move QMdiSubWindow&1=>28&Restore QMdiSubWindow&5;8G8=0&Size QMdiSubWindow - [%1]- [%1] QMdiSubWindow0B2>@8Close QMdiSubWindow ><>[Help QMdiSubWindow0&:A8<87CX Ma&ximize QMdiSubWindow0:A8<87CXMaximize QMdiSubWindow5=8Menu QMdiSubWindow8&=8<87CX Mi&nimize QMdiSubWindow8=8<87CXMinimize QMdiSubWindow 1=>28Restore QMdiSubWindowAB0=8 =0 &2@EC Stay on &Top QMdiSubWindow0B2>@8CloseQMenu 72@H8ExecuteQMenu B2>@8OpenQMenu  04Z5ActionsQMenuBarv<h3> XCBC</h3><p>20X ?@>3@0< :>@8AB8 XCB 8740Z5 %1.</p>8

About Qt

This program uses Qt version %1.

 QMessageBox <p>XCB ?@54AB02Y0 C++ 3@C?C 0;0B0 70 <5RC?;0BD>@<A:8 @072>X ?@>3@0<0.</p><p>XCB >15715RCX5 ?>@B018;=>AB X54=>3 872>@=>3 :40 87<5RC !&nbsp;8=4>C70, 5:&nbsp;!&nbsp;:A0, 8=C:A0, 8 A28E 3;02=8E :><5@F8X0;=8E 20@8X0=B8 C=8:A0. XCB X5 B0:>R5 4>ABC?0= 70 C3@0R5=5 C@5R0X5 C 284C XCB0 70 #3@0R5=8 8=C:A 8 XCB0 70 8=4>C7 &.</p><p>XCB X5 4>ABC?0= ?>4 B@8 @07;8G8B5 >?F8X5 ;8F5=F8@0Z0 4870X=8@0=8E 40 704>2>Y5 ?>B@515 @07=8E :>@8A=8:0.</p><p>XCB ;8F5=F8@0= ?>4 =0H>< :><5@F8X0;=>< A?>@07C<=>< ;8F5=F>< X5 >43>20@0XC[ 70 @072>X 2;0A=8G:>3/:><5@F8X0;=>3 A>DB25@0, B0<> 34X5 =5 65;8B5 40 48X5;8B5 872>@=8 :4 A0 B@5[8< AB@0=:0<0 8;8 8=0G5 =5 <>65B5 40 A5 CA03;0A8B5 A0 >4@5410<0 #>25  25@78X5 2.1 8;8 #>25  25@78X5 3.0.</p><p>XCB ;8F5=F8@0= ?>4 #>2><  25@78X5 2.1 X5 >43>20@0XC[ 70 @072>X XCB ?@>3@0<0 (2;0A=8G:8E 8;8 >B2>@5=>3 :40) 0:> <>65B5 40 A5 CA03;0A8B5 A0 >4@5410<0 8 CA;>28<0 #>25  25@78X5 2.1</p><p>XCB ;8F5=F8@0= ?>4 #>2><  25@78X5 3.0 X5 >43>20@0XC[ 70 @072>X XCB ?@>3@0<0 0:> 65;8B5 40 :>@8AB8B5 B0:25 ?@>3@0<5 C :><18=0F8X8 A0 A>DB25@>< :>X8 X5 CA;>2Y5= #>2><  25@78X5 3.0 8;8 0:> 8=0G5 65;8B5 40 A5 ?>28=CX5B5 >4@5410<0 #>25  25@78X5 3.0.</p><p>>3;540XB5 <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> 70 ?@53;54 XCB ;8F5=F8@0Z0.</p><p>CB>@A:0 ?@020 2011 >@?>@0F8X0 >:8X0 8/8;8 Z5=5 ?>4@C6=8F5.</p><p>XCB X5 >:8X8= ?@>872>4. >3;540XB5 <a href="http://qt.nokia.com/">qt.nokia.com</a> 70 28H5 8=D>@<0F8X0.</p>

Qt is a C++ toolkit for cross-platform application development.

Qt provides single-source portability across MS Windows, Mac OS X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.

Qt is available under three different licensing options designed to accommodate the needs of our various users.

Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.

Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.

Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.

Please see qt.nokia.com/products/licensing for an overview of Qt licensing.

Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).

Qt is a Nokia product. See qt.nokia.com for more information.

 QMessageBox XCBCAbout Qt QMessageBox ><>[Help QMessageBox !0:@8X 45B0Y5...Hide Details... QMessageBox # @54COK QMessageBox"@8:068 45B0Y5...Show Details... QMessageBox 5?>7=0B0 3@5H:0 Unknown errorQNativeSocketEngine6@5H:0 ?@8;8:>< >B20@0Z0 %1Error opening %1QNetworkAccessCacheBackend$58A?@020= # : %1Invalid URI: %1QNetworkAccessDataBackend&?5@0F8X0 ?@5:8=CB0Operation canceledQNetworkReplyImpl<5NameQPPDOptionsModel@8X54=>ABValueQPPDOptionsModel&5=B8<5B@8 (cm)Centimeters (cm)QPageSetupWidget$>@<C;0@FormQPageSetupWidget8A8=0:Height:QPageSetupWidget=G8 (in) Inches (in)QPageSetupWidget 5X706 LandscapeQPageSetupWidget0@38=5MarginsQPageSetupWidget8;8<5B@8 (mm)Millimeters (mm)QPageSetupWidget@8X5=B0F8X0 OrientationQPageSetupWidget 5;8G8=0 ?0?8@0: Page size:QPageSetupWidget 0?8@PaperQPageSetupWidget72>@ ?0?8@0: Paper source:QPageSetupWidget"0G:5 (pt) Points (pt)QPageSetupWidget>@B@5BPortraitQPageSetupWidget1@=CB8 ?5X706Reverse landscapeQPageSetupWidget1@=CB8 ?>@B@5BReverse portraitQPageSetupWidget(8@8=0:Width:QPageSetupWidget4>Z0 <0@38=0 bottom marginQPageSetupWidget;8X520 <0@38=0 left marginQPageSetupWidget45A=0 <0@38=0 right marginQPageSetupWidget3>@Z0 <0@38=0 top marginQPageSetupWidget,@8:YCG0: =8X5 CG8B0=.The plugin was not loaded. QPluginLoader 5?>7=0B0 3@5H:0 Unknown error QPluginLoaderV%1 25[ ?>AB>X8. 5;8B5 ;8 40 30 ?@51@8H5B5?/%1 already exists. Do you want to overwrite it? QPrintDialogP%1 X5 48@5:B>@8XC<. 7015@8B5 4@C3> 8<5.7%1 is a directory. Please choose a different file name. QPrintDialog&?F8X5 << &Options << QPrintDialog&?F8X5 >> &Options >> QPrintDialog&(B0<?0X&Print QPrintDialogH<qt>5;8B5 ;8 40 30 ?@51@8H5B5?</qt>%Do you want to overwrite it? QPrintDialog0A0 QPrintDialog$0 (841 x 1189 mm)A0 (841 x 1189 mm) QPrintDialog1A1 QPrintDialog"1 (594 x 841 mm)A1 (594 x 841 mm) QPrintDialog3A2 QPrintDialog"2 (420 x 594 mm)A2 (420 x 594 mm) QPrintDialog4A3 QPrintDialog"3 (297 x 420 mm)A3 (297 x 420 mm) QPrintDialog5A4 QPrintDialogF4 (210 x 297 mm, 8.26 x 11.7 8=G0)%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialog5A5 QPrintDialog"5 (148 x 210 mm)A5 (148 x 210 mm) QPrintDialog6A6 QPrintDialog"6 (105 x 148 mm)A6 (105 x 148 mm) QPrintDialog7A7 QPrintDialog 7 (74 x 105 mm)A7 (74 x 105 mm) QPrintDialog8A8 QPrintDialog8 (52 x 74 mm)A8 (52 x 74 mm) QPrintDialog9A9 QPrintDialog9 (37 x 52 mm)A9 (37 x 52 mm) QPrintDialog048<F8: %1 Aliases: %1 QPrintDialog0B0 QPrintDialog&0 (1000 x 1414 mm)B0 (1000 x 1414 mm) QPrintDialog1B1 QPrintDialog$1 (707 x 1000 mm)B1 (707 x 1000 mm) QPrintDialog10B10 QPrintDialog 10 (31 x 44 mm)B10 (31 x 44 mm) QPrintDialog2B2 QPrintDialog"2 (500 x 707 mm)B2 (500 x 707 mm) QPrintDialog3B3 QPrintDialog"3 (353 x 500 mm)B3 (353 x 500 mm) QPrintDialog4B4 QPrintDialog"4 (250 x 353 mm)B4 (250 x 353 mm) QPrintDialog5B5 QPrintDialogF5 (176 x 250 mm, 6.93 x 9.84 8=G0)%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialog6B6 QPrintDialog"6 (125 x 176 mm)B6 (125 x 176 mm) QPrintDialog7B7 QPrintDialog 7 (88 x 125 mm)B7 (88 x 125 mm) QPrintDialog8B8 QPrintDialog8 (62 x 88 mm)B8 (62 x 88 mm) QPrintDialog9B9 QPrintDialog9 (44 x 62 mm)B9 (44 x 62 mm) QPrintDialog&5C5E QPrintDialog$&5 (163 x 229 mm)C5E (163 x 229 mm) QPrintDialog>A51=>Custom QPrintDialogDLE QPrintDialog$ (110 x 220 mm)DLE (110 x 220 mm) QPrintDialog72@H=> Executive QPrintDialogJ72@H=0 (7.5 x 10 8=G0, 191 x 254 mm))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialogR$0X; %1 =8X5 C?8A82. 7015@8B5 4@C3> 8<5.=File %1 is not writable. Please choose a different file name. QPrintDialog$0X; ?>AB>X8 File exists QPrintDialog $>;8>Folio QPrintDialog($>;8> (210 x 330 mm)Folio (210 x 330 mm) QPrintDialog 5_5@Ledger QPrintDialog(5_5@ (432 x 279 mm)Ledger (432 x 279 mm) QPrintDialog 530;Legal QPrintDialogF530; (8.5 x 14 8=G0, 216 x 356 mm)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialog 8A<>Letter QPrintDialogF8A<> (8.5 x 11 8=G0, 216 x 279 mm)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialog>:0;=8 D0X; Local file QPrintDialog # @54COK QPrintDialog(B0<?0Z5Print QPrintDialog"(B0<?0X C D0X;...Print To File ... QPrintDialog(B0<?0X A25 Print all QPrintDialog2(B0<?0X B@5=CB=C AB@0=8FCPrint current page QPrintDialog(B0<?0X @0A?>= Print range QPrintDialog(B0<?0X 871>@Print selection QPrintDialog((B0<?0X C D0X; ($)Print to File (PDF) QPrintDialog6(B0<?0X C D0X; (>ABA:@8?B)Print to File (Postscript) QPrintDialog"01;>84Tabloid QPrintDialog,"01;>84 (279 x 432 mm)Tabloid (279 x 432 mm) QPrintDialogl@8X54=>AB >4  =5 <>65 18B8 25[0 >4 4>  2@8X54=>AB8.7The 'From' value cannot be greater than the 'To' value. QPrintDialogF<5@8G:0 #10 :>25@B0 (105 x 241 mm)US Common #10 Envelope QPrintDialogF<5@8G:0 #10 :>25@B0 (105 x 241 mm)%US Common #10 Envelope (105 x 241 mm) QPrintDialog#?8H8 %1 D0X; Write %1 file QPrintDialog;>:0;=> ?>2570=locally connected QPrintDialog=5?>7=0B>unknown QPrintDialog%1%%1%QPrintPreviewDialog0B2>@8CloseQPrintPreviewDialog72578 C $ Export to PDFQPrintPreviewDialog&72578 C >ABA:@8?BExport to PostScriptQPrintPreviewDialog@20 AB@0=8F0 First pageQPrintPreviewDialog#:;>?8 AB@0=8FCFit pageQPrintPreviewDialog #:;>?8 ?> H8@8=8 Fit widthQPrintPreviewDialog 5X706 LandscapeQPrintPreviewDialog">AY54Z0 AB@0=8F0 Last pageQPrintPreviewDialog !Y545[0 AB@0=8F0 Next pageQPrintPreviewDialog">AB02:0 AB@0=8F5 Page SetupQPrintPreviewDialog">AB02:0 AB@0=8F5 Page setupQPrintPreviewDialog>@B@5BPortraitQPrintPreviewDialog$@5BE>4=0 AB@0=8F0 Previous pageQPrintPreviewDialog(B0<?0Z5PrintQPrintPreviewDialog @53;54 HB0<?0Z0 Print PreviewQPrintPreviewDialog0@8:068 AC>G5=5 AB@0=8F5Show facing pagesQPrintPreviewDialog:@8:068 ?@53;54 A28E AB@0=8F0Show overview of all pagesQPrintPreviewDialog,@8:068 X54=C AB@0=8FCShow single pageQPrintPreviewDialog#25;8G0XZoom inQPrintPreviewDialog #<0Z8Zoom outQPrintPreviewDialog0?@54=>AdvancedQPrintPropertiesWidget$>@<C;0@FormQPrintPropertiesWidget!B@0=8F0PageQPrintPropertiesWidget !;>68CollateQPrintSettingsOutput # 1>X8ColorQPrintSettingsOutput 568< 1>X5 Color ModeQPrintSettingsOutput >?8X5CopiesQPrintSettingsOutput>?8X0:Copies:QPrintSettingsOutput""@5=CB=0 AB@0=8F0 Current PageQPrintSettingsOutput$2>AB@0=> HB0<?0Z5Duplex PrintingQPrintSettingsOutput$>@<C;0@FormQPrintSettingsOutput!828 B>=>28 GrayscaleQPrintSettingsOutputC30 828F0 Long sideQPrintSettingsOutput5NoneQPrintSettingsOutput ?F8X5OptionsQPrintSettingsOutput>AB02:5 87;070Output SettingsQPrintSettingsOutput!B@0=8F5 >4 Pages fromQPrintSettingsOutput(B0<?0X A25 Print allQPrintSettingsOutput(B0<?0X @0A?>= Print rangeQPrintSettingsOutput1@=CB>ReverseQPrintSettingsOutput 71>@ SelectionQPrintSettingsOutput@0B:0 828F0 Short sideQPrintSettingsOutput4>toQPrintSettingsOutput &<5:&Name: QPrintWidget...... QPrintWidget$>@<C;0@Form QPrintWidget>:0F8X0: Location: QPrintWidget7;07=8 &D0X;: Output &file: QPrintWidget!&2>XAB20 P&roperties QPrintWidget@53;54Preview QPrintWidget(B0<?0GPrinter QPrintWidget"8?:Type: QPrintWidget4CAB0=8CancelQProgressDialog B2>@8Open QPushButton >?C=8Check QRadioButton>:0F8X0LocationQScriptBreakpointsModel 1@8H8DeleteQScriptBreakpointsWidget>2>NewQScriptBreakpointsWidgetG8AB8 :>=7>;C Clear ConsoleQScriptDebugger0AB028ContinueQScriptDebugger<img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;"@068 ?@5;><Y5=>J Search wrappedQScriptDebuggerCodeFinderWidget">:;0?0X 25;8G8=CCase SensitiveQScriptDebuggerCodeFinderWidget0B2>@8CloseQScriptDebuggerCodeFinderWidget!Y545[5NextQScriptDebuggerCodeFinderWidget@5BE>4=>PreviousQScriptDebuggerCodeFinderWidget&8X5;5 @8X5G8 Whole wordsQScriptDebuggerCodeFinderWidget<5NameQScriptDebuggerLocalsModel@8X54=>ABValueQScriptDebuggerLocalsModel82>LevelQScriptDebuggerStackModel>:0F8X0LocationQScriptDebuggerStackModel<5NameQScriptDebuggerStackModel0B2>@8CloseQScriptNewBreakpointWidget=>Bottom QScrollBar8X520 828F0 Left edge QScrollBar8=8X0 4>Y5 Line down QScrollBar8=8X0 3>@5Line up QScrollBar!B@0=8F0 4>Y5 Page down QScrollBar!B@0=8F0 ;8X52> Page left QScrollBar!B@0=8F0 45A=> Page right QScrollBar!B@0=8F0 3>@5Page up QScrollBar>;>60XPosition QScrollBar5A=0 828F0 Right edge QScrollBar;870X 4>Y5 Scroll down QScrollBar;870X >24X5 Scroll here QScrollBar;870X ;8X52> Scroll left QScrollBar;870X 45A=> Scroll right QScrollBar;870X 3>@5 Scroll up QScrollBar@ETop QScrollBar 0704Back QShortcut G8AB8Clear QShortcut0B2>@8Close QShortcut>?8@0XCopy QShortcutA8X5F8Cut QShortcut 1@8H8Delete QShortcut0?@8X54Forward QShortcut ><>[Help QShortcut #<5B=8Insert QShortcut5=8Menu QShortcut5No QShortcut0;8X5?8Paste QShortcut 0C70Pause QShortcut(B0<?0XPrint QShortcutA2X568Refresh QShortcut#G8B0X ?>=>2>Reload QShortcut!0GC20XSave QShortcut7015@8Select QShortcut0CAB028Stop QShortcut ;0B:5Tools QShortcut0Yes QShortcut#25;8G0XZoom In QShortcut #<0Z8Zoom Out QShortcut!B@0=8F0 4>Y5 Page downQSlider!B@0=8F0 ;8X52> Page leftQSlider!B@0=8F0 45A=> Page rightQSlider!B@0=8F0 3>@5Page upQSlider>;>60XPositionQSlider4CAB0=8CancelQSoftKeyManager >B>2>DoneQSoftKeyManager 70R8ExitQSoftKeyManager # @54COKQSoftKeyManager ?F8X5OptionsQSoftKeyManager7015@8SelectQSoftKeyManager0Z5LessQSpinBox8H5MoreQSpinBox4CAB0=8CancelQSql 1@8H8DeleteQSql #<5B=8InsertQSql5NoQSql6C@8@0XUpdateQSql0YesQSql 5?>7=0B0 3@5H:0 Unknown error QSslSocket 5?>7=0B0 3@5H:0 Unknown error QStateMachine 5?>7=0B0 3@5H:0 Unknown errorQSymbianSocketEngine;870X ;8X52> Scroll LeftQTabBar;870X 45A=> Scroll RightQTabBarB?5@0F8X0 =0 A>:5BC =8X5 ?>4@60=0$Operation on socket is not supported QTcpServer&>?8@0X&Copy QTextControl&0;8X5?8&Paste QTextControl&>=>28&Redo QTextControl&?>7>28&Undo QTextControl,>?8@0X &;>:0F8XC 2575Copy &Link Location QTextControl&A8X5F8Cu&t QTextControl 1@8H8Delete QTextControl7015@8 A25 Select All QTextControl B2>@8Open QToolButton@8B8A=8Press QToolButton<20 ?;0BD>@<0 =5 ?>4@6020 IPv6#This platform does not support IPv6 QUdpSocket >=>28Redo QUndoGroup>=>28 %1Redo %1 QUndoGroup?>7>28Undo QUndoGroup?>7>28 %1Undo %1 QUndoGroup<?@07=>> QUndoModel >=>28Redo QUndoStack>=>28 %1Redo %1 QUndoStack?>7>28Undo QUndoStack?>7>28 %1Undo %1 QUndoStack$%1 (%2x%3 ?8:A5;0)%1 (%2x%3 pixels)QWebPageH%1 40=0 %2 A0B8 %3 <8=CB0 %4 A5:C=48&%1 days %2 hours %3 minutes %4 secondsQWebPage8%1 A0B8 %2 <8=CB0 %3 A5:C=48%1 hours %2 minutes %3 secondsQWebPage(%1 <8=CB0 %2 A5:C=48%1 minutes %2 secondsQWebPage%1 A5:C=48 %1 secondsQWebPage%n D0X;%n D0X;0%n D0X;>20 %n file(s)QWebPage>40X C @X5G=8:Add To DictionaryQWebPage >@02=0X A;8X520 Align LeftQWebPage>@02=0X 745A=0 Align RightQWebPage>451Y0=BoldQWebPage=>BottomQWebPage&5=B@8@0XCenterQWebPage @>25@8 ?@02>?8ACheck SpellingQWebPage7015@8 D0X; Choose FileQWebPage>?8@0XCopyQWebPage>?8@0X 0C48> Copy AudioQWebPage>?8@0X A;8:C Copy ImageQWebPage(>?8@0X 04@5AC A;8:5Copy Image AddressQWebPage>?8@0X 257C Copy LinkQWebPage>?8@0X 2845> Copy VideoQWebPageA8X5F8CutQWebPage>4@07C<8X520=DefaultQWebPage 5B0Y8DetailsQWebPage !<8X5@ DirectionQWebPage&8> 5:@0=Enter FullscreenQWebPage$>=BFontsQWebPage48 =0704Go BackQWebPage48 =0?@8X54 Go ForwardQWebPage6!0:@8X ?@02>?8A 8 3@0<0B8:CHide Spelling and GrammarQWebPage0=5<0@8IgnoreQWebPage0=5<0@8 Ignore Grammar context menu itemIgnoreQWebPage0#<5B=8 A8<1>;5 =01@0X0Z0Insert Bulleted ListQWebPage"#<5B=8 =C<5@8A0Z5Insert Numbered ListQWebPage@53;540XInspectQWebPageC@7820=ItalicQWebPage$>@02=0X >1>AB@0=>JustifyQWebPage8X520 828F0 Left edgeQWebPage"! ;8X520 =0 45A=> Left to RightQWebPage#G8B020<... Loading...QWebPage$>B@068 C @X5G=8:CLook Up In DictionaryQWebPage&54>AB0X5 ?@8:YCG0:Missing Plug-inQWebPage #B8H0XMuteQWebPage"$0X; =8X5 8701@0=No file selectedQWebPageB2>@8 0C48> Open AudioQWebPageB2>@8 >:28@ Open FrameQWebPageB2>@8 A;8:C Open ImageQWebPageB2>@8 257C Open LinkQWebPageB2>@8 2845> Open VideoQWebPage,B2>@8 C =>2>< ?@>7>@COpen in New WindowQWebPage>=BC@0OutlineQWebPage!B@0=8F0 4>Y5 Page downQWebPage!B@0=8F0 ;8X52> Page leftQWebPage!B@0=8F0 45A=> Page rightQWebPage!B@0=8F0 3>@5Page upQWebPage0;8X5?8PasteQWebPage0C78@0XPauseQWebPage CAB8PlayQWebPage#G8B0X ?>=>2>ReloadQWebPage 5A5BCXResetQWebPage5A=0 828F0 Right edgeQWebPage"! 45A=0 =0 ;8X52> Right to LeftQWebPage!0GC20X A;8:C Save ImageQWebPage!0GC20X 257C... Save Link...QWebPage;870X 4>Y5 Scroll downQWebPage;870X >24X5 Scroll hereQWebPage;870X ;8X52> Scroll leftQWebPage;870X 45A=> Scroll rightQWebPage;870X 3>@5 Scroll upQWebPage@5B@068 251Search The WebQWebPage7015@8 A25 Select AllQWebPage8@8:068 ?@02>?8A 8 3@0<0B8:CShow Spelling and GrammarQWebPage ;870GSliderQWebPage@02>?8ASpellingQWebPage0CAB028StopQWebPage@5F@B0= StrikethroughQWebPage >H0Y8SubmitQWebPage >H0Y8QSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPage =45:A SubscriptQWebPage:A?>=5=B SuperscriptQWebPage!<8X5@ B5:AB0Text DirectionQWebPage@ETopQWebPage>42CG5= UnderlineQWebPage5?>7=0B>UnknownQWebPage$51 =A?5:B>@ - %2Web Inspector - %2QWebPage(B0 X5 >2>? What's This?QWhatsThisAction**QWidget&02@H8&FinishQWizard &><>[&HelpQWizard&!Y545[5&NextQWizard&!Y545[5 >&Next >QWizard< &0704< &BackQWizard4CAB0=8CancelQWizard>4=5A8CommitQWizard0AB028ContinueQWizard >B>2>DoneQWizard48 =0704Go BackQWizard ><>[HelpQWizard%1 - [%2] %1 - [%2] QWorkspace&0B2>@8&Close QWorkspace&><X5@8&Move QWorkspace&1=>28&Restore QWorkspace&5;8G8=0&Size QWorkspace0B2>@8Close QWorkspace0&:A8<87CX Ma&ximize QWorkspace8&=8<87CX Mi&nimize QWorkspace8=8<87CXMinimize QWorkspaceAB0=8 =0 &2@EC Stay on &Top QWorkspace !B02:5Items QmlJSDebugger::LiveSelectionTool 0.125x0.125xQmlJSDebugger::QmlToolBar0.1x0.1xQmlJSDebugger::QmlToolBar 0.25x0.25xQmlJSDebugger::QmlToolBar0.5x0.5xQmlJSDebugger::QmlToolBar1x1xQmlJSDebugger::QmlToolBar8@0G 1>X5 Color PickerQmlJSDebugger::QmlToolBar7015@8SelectQmlJSDebugger::QmlToolBar ;0B:5ToolsQmlJSDebugger::QmlToolBar#25;8G0XZoomQmlJSDebugger::QmlToolBar>?8@0X 1>XC Copy ColorQmlJSDebugger::ToolBarColorBox#25;8G0XZoom InQmlJSDebugger::ZoomTool #<0Z8Zoom OutQmlJSDebugger::ZoomTool@0B8 =0 &100% Zoom to &100%QmlJSDebugger::ZoomTool ) , qupzilla-1.6.0/bin/locale/qt_sr_BA@latin.qm000066400000000000000000001530131226107126500205540ustar00rootroot00000000000000IiPjjQjRkSl_TlUmUVnWnXnYop;;^;$;Y;u;8OO(5{+;b+;!+;(+O8+O!1tE@kiFoIpJJzK TP[`[`__1)z"11K,.>$:$yyAPR'E EE% %0w֍\֍y֍֍00$0C0Y{0h0 D& D8,(?,VEVpW5W)WTuWTWTrX%X X˙%YkY4>Zk[f3[f3I\\\5\gc}v v4Lc5d)[%Wyn/=M_ qo"Hpie#Qo(Ŏ6^2i5vLCCjCeD">aR?,eeefP orw^Z(|{ygx2Ed2.(Aiykɷ+ʯ=Nkyl Ui\s]lyz@E { 90A6!E6B6LSC+AMRaLTdiKEE+{=Z8A[yfnwamCnMBQMww Ix1EBymZf^jC6!]֊fwb;yeIxSMfh^?w"%ۊ1N]=] eI[III"I1II-IZ3D%o,U,A,,,\,]pf]{}5$xfR fR2*14kV$9VfR+1 :? s +si,tV|:{yp5t5tF3G%<nn}+D++xt:{ypGrm|%#ƨƨҝz ߺ`{!^@~b2~b8o 9^G4/w/? 2=AkGb7Pѧ#4Sna[[U]k*2__P1_Pb_pe S{{j}w}w)}w}}er1BvYt_tE.3.fiUz5v+0d[G!h,D#2)@?;aCU]J0aKK\~\Dt|(^|~}wZ^}$}$}$ϗZF4K<$tf+׳ eUuvE;u%58iT{&i~sb/JwhV%=HV%>z)r m<^ n†5xC&3ʴ5Bʴ5ʶE/O۔#F5F5DHI I0As qe? ڥ Ac Ac4q =:E K!?- b b` b`N laYE J t t3 j( ҉w 4  k ` V, 팤[ P }`( 95 )v =<6 BzR Ty ] c( cE| e O e2 f* g5U} k, rD"2 y5xx 9} Ip I I! ;q f* , ,* t t ʀs ˔;P P P :{ f S f -! s O s/ ~ 9_W # W m, : E9 L" Lc L L Mc\&v O X\9 \Ot f) f)-l f=| wG H H+ G $.l igD + B %q J J03 kR M6 U ̺; -D= >= >?c >? >? >@ >Z{ >bL > >l > Ip IY Kt K| RV4 RV RV{v Sn j7o*" p2 d qT x C E 9 ʜ  ' +> ;ɾ PtD Pt feh fe gt i1j i3 jӮy m9 m91 v&_ w$ wc w7 w}h w} w}y ^Y ɰey X bFd D 3P t5D t5R$J1*@*a.#vɅ@%>D^cAǗ:\ݖq[yl  .$U%4&%48H c5hc5:g3~JiT4`h/>b*rtrkyfNڔ.LrBPnd|iiZatvori jezi ak Close Tab CloseButton<nedefinisano> Debugger::JSAgentWatchData[Niz du~ine %1][Array of length %1]Debugger::JSAgentWatchDataLa~na greaka! Fake error! FakeReplyNeispravan URL Invalid URL FakeReplyNeispravan URL Invalid URL Phonon::MMF %1 Hz%1 HzPhonon::MMF::AudioEqualizerNivo (%) Level (%)Phonon::MMF::StereoWidening ObriaiDelete Q3DataTableNeta noFalse Q3DataTable UmetniInsert Q3DataTable Ta noTrue Q3DataTableA~urirajUpdate Q3DataTablef%1 Fajl nije naen. Provjerite putanju i ime fajla.+%1 File not found. Check path and filename. Q3FileDialogO&briai&Delete Q3FileDialog&Ne&No Q3FileDialog&U redu&OK Q3FileDialog&Otvori&Open Q3FileDialog&Preimenuj&Rename Q3FileDialog&Sa uvaj&Save Q3FileDialog&Neporeano &Unsorted Q3FileDialog&Da&Yes Q3FileDialog\<qt>}elite li zaista da obriaete %1 %2 ?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialogSvi fajlovi (*) All Files (*) Q3FileDialog"Svi fajlovi (*.*)All Files (*.*) Q3FileDialogSvojstva Attributes Q3FileDialog NazadBack Q3FileDialogOdustaniCancel Q3FileDialog0Kopiraj ili pomjeri fajlCopy or Move a File Q3FileDialog*Napravi novu fascikluCreate New Folder Q3FileDialog DatumDate Q3FileDialogObriai %1 Delete %1 Q3FileDialog*Re~im prikaza detalja Detail View Q3FileDialogDirektorijumDir Q3FileDialogDirektorijumi Directories Q3FileDialogDirektorijum: Directory: Q3FileDialog GreakaError Q3FileDialogFajlFile Q3FileDialog&Ime fajla: File &name: Q3FileDialog&Tip fajla: File &type: Q3FileDialog"Nai direktorijumFind Directory Q3FileDialogNedostupan Inaccessible Q3FileDialog(Re~im prikaza spiska List View Q3FileDialogPogledaj &u: Look &in: Q3FileDialogImeName Q3FileDialogNova fascikla New Folder Q3FileDialog Nova fascikla %1 New Folder %1 Q3FileDialogNova fascikla 1 New Folder 1 Q3FileDialog.Jedan direktorijum goreOne directory up Q3FileDialog OtvoriOpen Q3FileDialog OtvoriOpen  Q3FileDialog,Pregled sadr~aja fajlaPreview File Contents Q3FileDialog6Pregled informacija o fajluPreview File Info Q3FileDialog&U itaj ponovoR&eload Q3FileDialogSamo-za- itanje Read-only Q3FileDialog itanje-upis Read-write Q3FileDialog itanje: %1Read: %1 Q3FileDialogSa uvaj kaoSave As Q3FileDialog(Izaberi direktorijumSelect a Directory Q3FileDialog2Prika~i &skrivene fajloveShow &hidden files Q3FileDialogVeli inaSize Q3FileDialogPoreajSort Q3FileDialog$Poreaj po &datumu Sort by &Date Q3FileDialog"Poreaj po &imenu Sort by &Name Q3FileDialog(Poreaj po &veli ini Sort by &Size Q3FileDialogSpecijalnoSpecial Q3FileDialog:Osnovna veza do direktorijumaSymlink to Directory Q3FileDialog*Osnovna veza do fajlaSymlink to File Q3FileDialog6Osnovna veza do specijalnogSymlink to Special Q3FileDialogTipType Q3FileDialogSamo-za-upis Write-only Q3FileDialogUpis: %1 Write: %1 Q3FileDialogdirektorijum the directory Q3FileDialogfajlthe file Q3FileDialogosnovna veza the symlink Q3FileDialogPodesi... Customize... Q3MainWindowLinija goreLine up Q3MainWindow8Operaciju zaustavio korisnikOperation stopped by the userQ3NetworkProtocolOdustaniCancelQ3ProgressDialogPrimijeniApply Q3TabDialogOdustaniCancel Q3TabDialogPodrazumijevanoDefaults Q3TabDialog PomoHelp Q3TabDialog U reduOK Q3TabDialog&Kopiraj&Copy Q3TextEdit&Nalijepi&Paste Q3TextEdit&Ponovi&Redo Q3TextEdit&Opozovi&Undo Q3TextEdit O istiClear Q3TextEdit&IsijeciCu&t Q3TextEditO isti sve Select All Q3TextEditZatvoriClose Q3TitleBarMaksimizujMaximize Q3TitleBarMinimizujMinimize Q3TitleBar SistemSystem Q3TitleBar Joa...More... Q3ToolBar&Odustani&CancelQ3Wizard&Zavrai&FinishQ3Wizard &Pomo&HelpQ3Wizard&Sljedee >&Next >Q3Wizard< Na&zad< &BackQ3WizardBOperacija na soketu nije podr~ana$Operation on socket is not supportedQAbstractSocket PopuniCheckQAccessibleButtonPritisniPressQAccessibleButton UkloniUncheckQAccessibleButtonLTRQT_LAYOUT_DIRECTION QApplication&Odustani&Cancel QAxSelectCOM &objekat: COM &Object: QAxSelect U reduOK QAxSelect6Izaberite AktivIks kontroluSelect ActiveX Control QAxSelect PopuniCheck QCheckBoxPromijeniToggle QCheckBox UkloniUncheck QCheckBox*&Dodaj u posebne boje&Add to Custom Colors QColorDialog&Osnovne boje &Basic colors QColorDialog&Posebne boje&Custom colors QColorDialog&Zelena:&Green: QColorDialog&Crvena:&Red: QColorDialog&Alfa kanal:A&lpha channel: QColorDialogP&lava:Bl&ue: QColorDialogIzbor boje Select Color QColorDialogZatvoriClose QComboBoxNeta noFalse QComboBox OtvoriOpen QComboBox Ta noTrue QComboBox %1 %2%1 %2QDeclarativeTypeLoader GotovoDoneQDialog`ta je ovo? What's This?QDialog&Odustani&CancelQDialogButtonBox&Zatvori&CloseQDialogButtonBox&Ne&NoQDialogButtonBox&U redu&OKQDialogButtonBox&Sa uvaj&SaveQDialogButtonBox&Da&YesQDialogButtonBoxPrekiniAbortQDialogButtonBoxPrimijeniApplyQDialogButtonBoxOdustaniCancelQDialogButtonBoxZatvoriCloseQDialogButtonBox"Zatvori bez upisaClose without SavingQDialogButtonBox OdbaciDiscardQDialogButtonBoxNe  uvaj Don't SaveQDialogButtonBox PomoHelpQDialogButtonBoxZanemariIgnoreQDialogButtonBoxNe za &sve N&o to AllQDialogButtonBox U reduOKQDialogButtonBox OtvoriOpenQDialogButtonBoxResetujResetQDialogButtonBox*Vrati podrazumijevanoRestore DefaultsQDialogButtonBoxPokuaaj ponovoRetryQDialogButtonBoxSa uvajSaveQDialogButtonBoxSa uvaj sveSave AllQDialogButtonBoxDa za &sve Yes to &AllQDialogButtonBoxDatum izmjene Date Modified QDirModel VrstaKind QDirModelImeName QDirModelVeli inaSize QDirModelTipType QDirModelZatvoriClose QDockWidget SpojiDock QDockWidget PlutajFloat QDockWidget ManjeLessQDoubleSpinBoxViaeMoreQDoubleSpinBox&U redu&OK QErrorMessage4&Prika~i ovu poruku ponovo&Show this message again QErrorMessage*Poruka o kontratragu:Debug Message: QErrorMessageKobna greaka: Fatal Error: QErrorMessageUpozorenje:Warning: QErrorMessageV%1 ve postoji. }elite li da ga zamijenite?-%1 already exists. Do you want to replace it? QFileDialog&Izaberi&Choose QFileDialog&Obriai&Delete QFileDialog&Nova fascikla &New Folder QFileDialog&Otvori&Open QFileDialog&Preimenuj&Rename QFileDialog&Sa uvaj&Save QFileDialogz %1  je zaatien od upisa. }elite li da ga obriaete svejedno?9'%1' is write protected. Do you want to delete it anyway? QFileDialogNadimakAlias QFileDialogSvi fajlovi (*) All Files (*) QFileDialogSvi fajlovi (*)All Files (*.*) QFileDialogD}elite li zaista da obriaete %1 ?!Are sure you want to delete '%1'? QFileDialog NazadBack QFileDialogHNisam mogao da obriaem direktorijum.Could not delete directory. QFileDialog*Napravi novu fascikluCreate New Folder QFileDialog*Napravi novu fascikluCreate a New Folder QFileDialogPrikaz detalja Detail View QFileDialogDirektorijumi Directories QFileDialogDirektorijum: Directory: QFileDialogFajlFile QFileDialog&Ime fajla: File &name: QFileDialog"Nai direktorijumFind Directory QFileDialogFasciklaFolder QFileDialogNaprijedForward QFileDialogIdi nazadGo back QFileDialogIdi naprijed Go forward QFileDialogPrikaz spiska List View QFileDialogPotra~i u:Look in: QFileDialogMoj ra unar My Computer QFileDialogNova fascikla New Folder QFileDialog OtvoriOpen QFileDialogNedavna mjesta Recent Places QFileDialog UkloniRemove QFileDialogSa uvaj kaoSave As QFileDialogPre icaShortcut QFileDialogPrika~iShow  QFileDialog2Prika~i &skrivene fajloveShow &hidden files QFileDialogNepoznatoUnknown QFileDialog %1 GB%1 GBQFileSystemModel %1 KB%1 KBQFileSystemModel %1 MB%1 MBQFileSystemModel %1 TB%1 TBQFileSystemModel%1 bajt(a) %1 byte(s)QFileSystemModel%1 bajta%1 bytesQFileSystemModel<b>Ime %1  se ne mo~e upotrijebiti.</b><p>Pokuaajte s drugim imenom, sa manje znakova ili bez interpunkcijskih znakova.oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModelRa unarComputerQFileSystemModelDatum izmjene Date ModifiedQFileSystemModel(Neispravno ime fajlaInvalid filenameQFileSystemModel VrstaKindQFileSystemModelMoj ra unar My ComputerQFileSystemModelImeNameQFileSystemModelVeli inaSizeQFileSystemModelTipTypeQFileSystemModel TamanBlack QFontDatabasePodebljanBold QFontDatabaseKurzivanItalic QFontDatabaseSvijetaoLight QFontDatabaseStandardanNormal QFontDatabase &Font&Font QFontDialog&Veli ina&Size QFontDialog&Poduv eno &Underline QFontDialog EfektiEffects QFontDialog&Stil fonta Font st&yle QFontDialogPrimjerSample QFontDialogIzaberi font Select Font QFontDialogP&recrtan Stri&keout QFontDialog&Sistem pisanjaWr&iting System QFontDialog Nepoznata greaka Unknown errorQFtp,Nije dato ime domainaNo host name given QHostInfo Nepoznata greaka Unknown error QHostInfo$Domain nije naenHost not foundQHostInfoAgent.Neispravno ime domainaInvalid hostnameQHostInfoAgent,Nije dato ime domainaNo host name givenQHostInfoAgent&Nepoznat tip adreseUnknown address typeQHostInfoAgent Nepoznata greaka Unknown errorQHostInfoAgent Nepoznata greaka Unknown errorQHttp Nepoznata greaka Unknown error QIODevice&Unesite vrijednost:Enter a value: QInputDialog Nepoznata greaka Unknown errorQLibrary&Kopiraj&Copy QLineEdit&Nalijepi&Paste QLineEdit&Ponovi&Redo QLineEdit&Opozovi&Undo QLineEdit&IsijeciCu&t QLineEdit ObriaiDelete QLineEditIzaberi sve Select All QLineEdit%1 - [%2] %1 - [%2] QMdiSubWindow&Zatvori&Close QMdiSubWindow&Pomjeri&Move QMdiSubWindow&Obnovi&Restore QMdiSubWindow&Veli ina&Size QMdiSubWindow - [%1]- [%1] QMdiSubWindowZatvoriClose QMdiSubWindow PomoHelp QMdiSubWindowMa&ksimizuj Ma&ximize QMdiSubWindowMaksimizujMaximize QMdiSubWindowMeniMenu QMdiSubWindowMi&nimizuj Mi&nimize QMdiSubWindowMinimizujMinimize QMdiSubWindow ObnoviRestore QMdiSubWindowOstani na &vrhu Stay on &Top QMdiSubWindowZatvoriCloseQMenu IzvraiExecuteQMenu OtvoriOpenQMenu RadnjeActionsQMenuBarx<h3>O Kjutu</h3><p>Ovaj program koristi Kjut izdanje %1.</p>8

About Qt

This program uses Qt version %1.

 QMessageBox <p>Kjut predstavlja C++ grupu alata za meuplatformski razvoj programa.</p><p>Kjut obezbeuje portabilnost jednog izvornog kda izmeu MS&nbsp;Vindouza, Mek&nbsp;OS&nbsp;Iksa, Linuksa, i svih glavnih komercijalnih varijanti Juniksa. Kjut je takoe dostupan za ugraene ureaje u vidu Kjuta za Ugraeni Linuks i Kjuta za Vindouz CE.</p><p>Kjut je dostupan pod tri razli ite opcije licenciranja dizajniranih da zadovolje potrebe raznih korisnika.</p><p>Kjut licenciran pod naaom komercijalnom sporazumnom licencom je odgovaraju za razvoj vlasni kog/komercijalnog softvera, tamo gdje ne ~elite da dijelite izvorni kd sa treim strankama ili ina e ne mo~ete da se usaglasite sa odredbama GNUove LGPL verzije 2.1 ili GNUove GPL verzije 3.0.</p><p>Kjut licenciran pod GNUovom LGPL verzije 2.1 je odgovaraju za razvoj Kjut programa (vlasni kih ili otvorenog kda) ako mo~ete da se usaglasite sa odredbama i uslovima GNUove LGPL verzije 2.1</p><p>Kjut licenciran pod GNUovom GPL verzije 3.0 je odgovaraju za razvoj Kjut programa ako ~elite da koristite takve programe u kombinaciji sa softverom koji je uslovljen GNUovom GPL verzije 3.0 ili ako ina e ~elite da se povinujete odredbama GNUove GPL verzije 3.0.</p><p>Pogledajte <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> za pregled Kjut licenciranja.</p><p>Autorska prava 2011 Korporacija Nokija i/ili njene podru~nice.</p><p>Kjut je Nokijin proizvod. Pogledajte <a href="http://qt.nokia.com/">qt.nokia.com</a> za viae informacija.</p>

Qt is a C++ toolkit for cross-platform application development.

Qt provides single-source portability across MS Windows, Mac OS X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.

Qt is available under three different licensing options designed to accommodate the needs of our various users.

Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.

Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.

Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.

Please see qt.nokia.com/products/licensing for an overview of Qt licensing.

Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).

Qt is a Nokia product. See qt.nokia.com for more information.

 QMessageBoxO KjutuAbout Qt QMessageBox PomoHelp QMessageBox"Sakrij detalje...Hide Details... QMessageBox U reduOK QMessageBox$Prika~i detalje...Show Details... QMessageBox Nepoznata greaka Unknown errorQNativeSocketEngine8Greaka prilikom otvaranja %1Error opening %1QNetworkAccessCacheBackend$Neispravan URI: %1Invalid URI: %1QNetworkAccessDataBackend&Operacija prekinutaOperation canceledQNetworkReplyImplImeNameQPPDOptionsModelVrijednostValueQPPDOptionsModelCentimetri (cm)Centimeters (cm)QPageSetupWidgetFormularFormQPageSetupWidgetVisina:Height:QPageSetupWidgetIn i (in) Inches (in)QPageSetupWidget Pejza~ LandscapeQPageSetupWidgetMargineMarginsQPageSetupWidgetMilimetri (mm)Millimeters (mm)QPageSetupWidgetOrijentacija OrientationQPageSetupWidget Veli ina papira: Page size:QPageSetupWidget PapirPaperQPageSetupWidgetIzvor papira: Paper source:QPageSetupWidgetTa ke (pt) Points (pt)QPageSetupWidgetPortretPortraitQPageSetupWidgetObrnuti pejza~Reverse landscapeQPageSetupWidgetObrnuti portretReverse portraitQPageSetupWidget`irina:Width:QPageSetupWidgetdonja margina bottom marginQPageSetupWidgetlijeva margina left marginQPageSetupWidgetdesna margina right marginQPageSetupWidgetgornja margina top marginQPageSetupWidget.Priklju ak nije u itan.The plugin was not loaded. QPluginLoader Nepoznata greaka Unknown error QPluginLoaderV%1 ve postoji. }elite li da ga prebriaete?/%1 already exists. Do you want to overwrite it? QPrintDialogP%1 je direktorijum. Izaberite drugo ime.7%1 is a directory. Please choose a different file name. QPrintDialog&Opcije << &Options << QPrintDialog&Opcije >> &Options >> QPrintDialog&`tampaj&Print QPrintDialogH<qt>}elite li da ga prebriaete?</qt>%Do you want to overwrite it? QPrintDialogA0A0 QPrintDialog$A0 (841 x 1189 mm)A0 (841 x 1189 mm) QPrintDialogA1A1 QPrintDialog"A1 (594 x 841 mm)A1 (594 x 841 mm) QPrintDialogA3A2 QPrintDialog"A2 (420 x 594 mm)A2 (420 x 594 mm) QPrintDialogA4A3 QPrintDialog"A3 (297 x 420 mm)A3 (297 x 420 mm) QPrintDialogA5A4 QPrintDialogFA4 (210 x 297 mm, 8.26 x 11.7 in a)%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialogA5A5 QPrintDialog"A5 (148 x 210 mm)A5 (148 x 210 mm) QPrintDialogA6A6 QPrintDialog"A6 (105 x 148 mm)A6 (105 x 148 mm) QPrintDialogA7A7 QPrintDialog A7 (74 x 105 mm)A7 (74 x 105 mm) QPrintDialogA8A8 QPrintDialogA8 (52 x 74 mm)A8 (52 x 74 mm) QPrintDialogA9A9 QPrintDialogA9 (37 x 52 mm)A9 (37 x 52 mm) QPrintDialogNadimci: %1 Aliases: %1 QPrintDialogB0B0 QPrintDialog&B0 (1000 x 1414 mm)B0 (1000 x 1414 mm) QPrintDialogB1B1 QPrintDialog$B1 (707 x 1000 mm)B1 (707 x 1000 mm) QPrintDialogB10B10 QPrintDialog B10 (31 x 44 mm)B10 (31 x 44 mm) QPrintDialogB2B2 QPrintDialog"B2 (500 x 707 mm)B2 (500 x 707 mm) QPrintDialogB3B3 QPrintDialog"B3 (353 x 500 mm)B3 (353 x 500 mm) QPrintDialogB4B4 QPrintDialog"B4 (250 x 353 mm)B4 (250 x 353 mm) QPrintDialogB5B5 QPrintDialogFB5 (176 x 250 mm, 6.93 x 9.84 in a)%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialogB6B6 QPrintDialog"B6 (125 x 176 mm)B6 (125 x 176 mm) QPrintDialogB7B7 QPrintDialog B7 (88 x 125 mm)B7 (88 x 125 mm) QPrintDialogB8B8 QPrintDialogB8 (62 x 88 mm)B8 (62 x 88 mm) QPrintDialogB9B9 QPrintDialogB9 (44 x 62 mm)B9 (44 x 62 mm) QPrintDialogC5EC5E QPrintDialog$C5E (163 x 229 mm)C5E (163 x 229 mm) QPrintDialogPosebnoCustom QPrintDialogDLEDLE QPrintDialog$DLE (110 x 220 mm)DLE (110 x 220 mm) QPrintDialogIzvrano Executive QPrintDialogJIzvrana (7.5 x 10 in a, 191 x 254 mm))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialogRFajl %1 nije upisiv. Izaberite drugo ime.=File %1 is not writable. Please choose a different file name. QPrintDialogFajl postoji File exists QPrintDialog FolioFolio QPrintDialog(Folio (210 x 330 mm)Folio (210 x 330 mm) QPrintDialog Led~erLedger QPrintDialog*Led~er (432 x 279 mm)Ledger (432 x 279 mm) QPrintDialog LegalLegal QPrintDialogFLegal (8.5 x 14 in a, 216 x 356 mm)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialog PismoLetter QPrintDialogFPismo (8.5 x 11 in a, 216 x 279 mm)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialogLokalni fajl Local file QPrintDialog U reduOK QPrintDialog`tampanjePrint QPrintDialog"`tampaj u fajl...Print To File ... QPrintDialog`tampaj sve Print all QPrintDialog2`tampaj trenutnu stranicuPrint current page QPrintDialog`tampaj raspon Print range QPrintDialog`tampaj izborPrint selection QPrintDialog(`tampaj u fajl (PDF)Print to File (PDF) QPrintDialog6`tampaj u fajl (Postskript)Print to File (Postscript) QPrintDialogTabloidTabloid QPrintDialog,Tabloid (279 x 432 mm)Tabloid (279 x 432 mm) QPrintDialoglVrijednost od  ne mo~e biti vea od do  vrijednosti.7The 'From' value cannot be greater than the 'To' value. QPrintDialogFAmeri ka #10 koverta (105 x 241 mm)US Common #10 Envelope QPrintDialogFAmeri ka #10 koverta (105 x 241 mm)%US Common #10 Envelope (105 x 241 mm) QPrintDialogUpiai %1 fajl Write %1 file QPrintDialoglokalno povezanlocally connected QPrintDialognepoznatounknown QPrintDialog%1%%1%QPrintPreviewDialogZatvoriCloseQPrintPreviewDialogIzvezi u PDF Export to PDFQPrintPreviewDialog&Izvezi u PostskriptExport to PostScriptQPrintPreviewDialogPrva stranica First pageQPrintPreviewDialogUklopi stranicuFit pageQPrintPreviewDialog Uklopi po airini Fit widthQPrintPreviewDialog Pejza~ LandscapeQPrintPreviewDialog&Posljednja stranica Last pageQPrintPreviewDialog"Sljedea stranica Next pageQPrintPreviewDialog"Postavka stranice Page SetupQPrintPreviewDialog"Postavka stranice Page setupQPrintPreviewDialogPortretPortraitQPrintPreviewDialog$Prethodna stranica Previous pageQPrintPreviewDialog`tampanjePrintQPrintPreviewDialog"Pregled atampanja Print PreviewQPrintPreviewDialog0Prika~i suo ene straniceShow facing pagesQPrintPreviewDialog:Prika~i pregled svih stranicaShow overview of all pagesQPrintPreviewDialog,Prika~i jednu stranicuShow single pageQPrintPreviewDialogUveli ajZoom inQPrintPreviewDialog UmanjiZoom outQPrintPreviewDialogNaprednoAdvancedQPrintPropertiesWidgetFormularFormQPrintPropertiesWidgetStranicaPageQPrintPropertiesWidget Slo~iCollateQPrintSettingsOutput U bojiColorQPrintSettingsOutputRe~im boje Color ModeQPrintSettingsOutput KopijeCopiesQPrintSettingsOutputKopija:Copies:QPrintSettingsOutput"Trenutna stranica Current PageQPrintSettingsOutput&Dvostrano atampanjeDuplex PrintingQPrintSettingsOutputFormularFormQPrintSettingsOutputSivi tonovi GrayscaleQPrintSettingsOutputDuga ivica Long sideQPrintSettingsOutputNeNoneQPrintSettingsOutput OpcijeOptionsQPrintSettingsOutputPostavke izlazaOutput SettingsQPrintSettingsOutputStranice od Pages fromQPrintSettingsOutput`tampaj sve Print allQPrintSettingsOutput`tampaj raspon Print rangeQPrintSettingsOutputObrnutoReverseQPrintSettingsOutput Izbor SelectionQPrintSettingsOutputKratka ivica Short sideQPrintSettingsOutputdotoQPrintSettingsOutput &Ime:&Name: QPrintWidget...... QPrintWidgetFormularForm QPrintWidgetLokacija: Location: QPrintWidgetIzlazni &fajl: Output &file: QPrintWidgetS&vojstva P&roperties QPrintWidgetPregledPreview QPrintWidget`tampa Printer QPrintWidgetTip:Type: QPrintWidgetOdustaniCancelQProgressDialog OtvoriOpen QPushButton PopuniCheck QRadioButtonLokacijaLocationQScriptBreakpointsModel ObriaiDeleteQScriptBreakpointsWidgetNovoNewQScriptBreakpointsWidgetO isti konzolu Clear ConsoleQScriptDebuggerNastaviContinueQScriptDebugger<img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;Tra~i prelomljenoJ Search wrappedQScriptDebuggerCodeFinderWidget"Poklapaj veli inuCase SensitiveQScriptDebuggerCodeFinderWidgetZatvoriCloseQScriptDebuggerCodeFinderWidgetSljedeeNextQScriptDebuggerCodeFinderWidgetPrethodnoPreviousQScriptDebuggerCodeFinderWidgetCijele rije i Whole wordsQScriptDebuggerCodeFinderWidgetImeNameQScriptDebuggerLocalsModelVrijednostValueQScriptDebuggerLocalsModelNivoLevelQScriptDebuggerStackModelLokacijaLocationQScriptDebuggerStackModelImeNameQScriptDebuggerStackModelZatvoriCloseQScriptNewBreakpointWidgetDnoBottom QScrollBarLijeva ivica Left edge QScrollBarLinija dolje Line down QScrollBarLinija goreLine up QScrollBarStranica dolje Page down QScrollBarStranica lijevo Page left QScrollBarStranica desno Page right QScrollBarStranica gorePage up QScrollBarPolo~ajPosition QScrollBarDesna ivica Right edge QScrollBarKlizaj dolje Scroll down QScrollBarKlizaj ovdje Scroll here QScrollBarKlizaj lijevo Scroll left QScrollBarKlizaj desno Scroll right QScrollBarKlizaj gore Scroll up QScrollBarVrhTop QScrollBar NazadBack QShortcut O istiClear QShortcutZatvoriClose QShortcutKopirajCopy QShortcutIsijeciCut QShortcut ObriaiDelete QShortcutNaprijedForward QShortcut PomoHelp QShortcut UmetniInsert QShortcutMeniMenu QShortcutNeNo QShortcutNalijepiPaste QShortcut PauzaPause QShortcut`tampajPrint QShortcutOsvje~iRefresh QShortcutU itaj ponovoReload QShortcutSa uvajSave QShortcutIzaberiSelect QShortcutZaustaviStop QShortcut AlatkeTools QShortcutDaYes QShortcutUveli ajZoom In QShortcut UmanjiZoom Out QShortcutStranica dolje Page downQSliderStranica lijevo Page leftQSliderStranica desno Page rightQSliderStranica gorePage upQSliderPolo~ajPositionQSliderOdustaniCancelQSoftKeyManager GotovoDoneQSoftKeyManager IzaiExitQSoftKeyManager U reduOKQSoftKeyManager OpcijeOptionsQSoftKeyManagerIzaberiSelectQSoftKeyManager ManjeLessQSpinBoxViaeMoreQSpinBoxOdustaniCancelQSql ObriaiDeleteQSql UmetniInsertQSqlNeNoQSqlA~urirajUpdateQSqlDaYesQSql Nepoznata greaka Unknown error QSslSocket Nepoznata greaka Unknown error QStateMachine Nepoznata greaka Unknown errorQSymbianSocketEngineKlizaj lijevo Scroll LeftQTabBarKlizaj desno Scroll RightQTabBarBOperacija na soketu nije podr~ana$Operation on socket is not supported QTcpServer&Kopiraj&Copy QTextControl&Nalijepi&Paste QTextControl&Ponovi&Redo QTextControl&Opozovi&Undo QTextControl,Kopiraj &lokaciju vezeCopy &Link Location QTextControl&IsijeciCu&t QTextControl ObriaiDelete QTextControlIzaberi sve Select All QTextControl OtvoriOpen QToolButtonPritisniPress QToolButton<Ova platforma ne podr~ava IPv6#This platform does not support IPv6 QUdpSocket PonoviRedo QUndoGroupPonovi %1Redo %1 QUndoGroupOpozoviUndo QUndoGroupOpozovi %1Undo %1 QUndoGroup<prazno> QUndoModel PonoviRedo QUndoStackPonovi %1Redo %1 QUndoStackOpozoviUndo QUndoStackOpozovi %1Undo %1 QUndoStack$%1 (%2x%3 piksela)%1 (%2x%3 pixels)QWebPageH%1 dana %2 sati %3 minuta %4 sekundi&%1 days %2 hours %3 minutes %4 secondsQWebPage8%1 sati %2 minuta %3 sekundi%1 hours %2 minutes %3 secondsQWebPage(%1 minuta %2 sekundi%1 minutes %2 secondsQWebPage%1 sekundi %1 secondsQWebPage%n fajl%n fajla%n fajlova %n file(s)QWebPageDodaj u rje nikAdd To DictionaryQWebPage Poravnaj slijeva Align LeftQWebPagePoravnaj zdesna Align RightQWebPagePodebljanBoldQWebPageDnoBottomQWebPageCentrirajCenterQWebPage Proveri pravopisCheck SpellingQWebPageIzaberi fajl Choose FileQWebPageKopirajCopyQWebPageKopiraj audio Copy AudioQWebPageKopiraj sliku Copy ImageQWebPage(Kopiraj adresu slikeCopy Image AddressQWebPageKopiraj vezu Copy LinkQWebPageKopiraj video Copy VideoQWebPageIsijeciCutQWebPagePodrazumijevanDefaultQWebPageDetaljiDetailsQWebPage Smijer DirectionQWebPageCio ekranEnter FullscreenQWebPageFontFontsQWebPageIdi nazadGo BackQWebPageIdi naprijed Go ForwardQWebPage6Sakrij pravopis i gramatikuHide Spelling and GrammarQWebPageZanemariIgnoreQWebPageZanemari Ignore Grammar context menu itemIgnoreQWebPage2Umetni simbole nabrajanjaInsert Bulleted ListQWebPage$Umetni numerisanjeInsert Numbered ListQWebPagePregledajInspectQWebPageKurzivanItalicQWebPage$Poravnaj obostranoJustifyQWebPageLijeva ivica Left edgeQWebPage"S lijeva na desno Left to RightQWebPageU itavam... Loading...QWebPage$Potra~i u rje nikuLook Up In DictionaryQWebPage(Nedostaje priklju akMissing Plug-inQWebPage UtiaajMuteQWebPage"Fajl nije izabranNo file selectedQWebPageOtvori audio Open AudioQWebPageOtvori okvir Open FrameQWebPageOtvori sliku Open ImageQWebPageOtvori vezu Open LinkQWebPageOtvori video Open VideoQWebPage,Otvori u novom prozoruOpen in New WindowQWebPageKonturaOutlineQWebPageStranica dolje Page downQWebPageStranica lijevo Page leftQWebPageStranica desno Page rightQWebPageStranica gorePage upQWebPageNalijepiPasteQWebPagePauzirajPauseQWebPage PustiPlayQWebPageU itaj ponovoReloadQWebPageResetujResetQWebPageDesna ivica Right edgeQWebPage"S desna na lijevo Right to LeftQWebPageSa uvaj sliku Save ImageQWebPageSa uvaj vezu... Save Link...QWebPageKlizaj dolje Scroll downQWebPageKlizaj ovdje Scroll hereQWebPageKlizaj lijevo Scroll leftQWebPageKlizaj desno Scroll rightQWebPageKlizaj gore Scroll upQWebPagePretra~i vebSearch The WebQWebPageIzaberi sve Select AllQWebPage8Prika~i pravopis i gramatikuShow Spelling and GrammarQWebPage Kliza SliderQWebPagePravopisSpellingQWebPageZaustaviStopQWebPagePrecrtan StrikethroughQWebPagePoaaljiSubmitQWebPagePoaaljiQSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPage Indeks SubscriptQWebPageEksponent SuperscriptQWebPageSmijer tekstaText DirectionQWebPageVrhTopQWebPagePodvu en UnderlineQWebPageNepoznatoUnknownQWebPage$Veb Inspektor - %2Web Inspector - %2QWebPage`ta je ovo? What's This?QWhatsThisAction**QWidget&Zavrai&FinishQWizard &Pomo&HelpQWizard&Sljedee&NextQWizard&Sljedee >&Next >QWizard< &Nazad< &BackQWizardOdustaniCancelQWizardPodnesiCommitQWizardNastaviContinueQWizard GotovoDoneQWizardIdi nazadGo BackQWizard PomoHelpQWizard%1 - [%2] %1 - [%2] QWorkspace&Zatvori&Close QWorkspace&Pomjeri&Move QWorkspace&Obnovi&Restore QWorkspace&Veli ina&Size QWorkspaceZatvoriClose QWorkspaceMa&ksimizuj Ma&ximize QWorkspaceMi&nimizuj Mi&nimize QWorkspaceMinimizujMinimize QWorkspaceOstani na &vrhu Stay on &Top QWorkspace StavkeItems QmlJSDebugger::LiveSelectionTool 0.125x0.125xQmlJSDebugger::QmlToolBar0.1x0.1xQmlJSDebugger::QmlToolBar 0.25x0.25xQmlJSDebugger::QmlToolBar0.5x0.5xQmlJSDebugger::QmlToolBar1x1xQmlJSDebugger::QmlToolBarBira boje Color PickerQmlJSDebugger::QmlToolBarIzaberiSelectQmlJSDebugger::QmlToolBar AlatkeToolsQmlJSDebugger::QmlToolBarUveli ajZoomQmlJSDebugger::QmlToolBarKopiraj boju Copy ColorQmlJSDebugger::ToolBarColorBoxUveli ajZoom InQmlJSDebugger::ZoomTool UmanjiZoom OutQmlJSDebugger::ZoomToolVrati na &100% Zoom to &100%QmlJSDebugger::ZoomTool ) , qupzilla-1.6.0/bin/locale/qt_sr_RS.qm000066400000000000000000001523071226107126500174730ustar00rootroot00000000000000;$;Y;u%;ROOh(5{+;^+;!+;(o+O4+O!\1E@jFoUIp JJ~K T[` [`o__1)jv!11 (.H$9$yyAU`L'E yEEG % %0?֍\D֍֍4֍00#0Cu0Y00 D& D8|,(,Qz)rm ڥq Ac Ac4/ =:E K!?- b b` b` laX J' tx t3 i ҉w 4c  k l V 팤[* P }_ 95 )u =; By Ty ]m c(M cE|- e G e1 f*C g5U}U k, rD"$ y5w 9o IR I I ;c f* , ,* t t ʀs ˔; P P :W f O f , s G s/ ~ 9^ #g  m, : E9 L& Lg L LI Mc\&J O X\= \Oto f) f)-6 f={~ w; H H+u G $.6 if  A %p J J/ kf M C ̺;> -D<' ۷~ k k \ z+ . >< >=P >? >?_ >? >@B >Y >a >8 > > IP I5 K K RV4 RV RVz S j7o) p d p x C E{ 9 ʜj  y +> ;ɾ PtDR PtN fe fes gtU i12 i_ jӮx{ m9 m91 v&_P wb w w w} w} w}Y ^Y1 ɰey7 X bF D 3 t5C t5$Ts1e* *a.#vɅ2%=^bǗ:\}ݖqX[yk  .$U%4&%47Hc5c5g3}iT3`h]/q>brTrkyeڔ.BBPnd{i0B2>@8 X578G0: Close Tab CloseButton<=545D8=8A0=>> Debugger::JSAgentWatchData[87 4C68=5 %1][Array of length %1]Debugger::JSAgentWatchData06=0 3@5H:0! Fake error! FakeReply58A?@020= #  Invalid URL FakeReply58A?@020= #  Invalid URL Phonon::MMF %1 Hz%1 HzPhonon::MMF::AudioEqualizer82> (%) Level (%)Phonon::MMF::StereoWidening 1@8H8Delete Q3DataTable5B0G=>False Q3DataTable #<5B=8Insert Q3DataTable "0G=>True Q3DataTable6C@8@0XUpdate Q3DataTableb%1 $0X; =8X5 =0R5=. @>25@8B5 ?CB0ZC 8 8<5 D0X;0.+%1 File not found. Check path and filename. Q3FileDialog&1@8H8&Delete Q3FileDialog&5&No Q3FileDialog&# @54C&OK Q3FileDialog&B2>@8&Open Q3FileDialog&@58<5=CX&Rename Q3FileDialog&!0GC20X&Save Q3FileDialog&5?>@5R0=> &Unsorted Q3FileDialog&0&Yes Q3FileDialog\<qt>5;8B5 ;8 708AB0 40 >1@8H5B5 %1 %2 ?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialog!28 D0X;>28 (*) All Files (*) Q3FileDialog"!28 D0X;>28 (*.*)All Files (*.*) Q3FileDialog!2>XAB20 Attributes Q3FileDialog 0704Back Q3FileDialog4CAB0=8Cancel Q3FileDialog.>?8@0X 8;8 ?><5@8 D0X;Copy or Move a File Q3FileDialog*0?@028 =>2C D0AF8:;CCreate New Folder Q3FileDialog 0BC<Date Q3FileDialog1@8H8 %1 Delete %1 Q3FileDialog( 568< ?@8:070 45B0Y0 Detail View Q3FileDialog8@5:B>@8XC<Dir Q3FileDialog8@5:B>@8XC<8 Directories Q3FileDialog8@5:B>@8XC<: Directory: Q3FileDialog @5H:0Error Q3FileDialog$0X;File Q3FileDialog&<5 D0X;0: File &name: Q3FileDialog&"8? D0X;0: File &type: Q3FileDialog"0R8 48@5:B>@8XC<Find Directory Q3FileDialog54>ABC?0= Inaccessible Q3FileDialog( 568< ?@8:070 A?8A:0 List View Q3FileDialog>3;540X &C: Look &in: Q3FileDialog<5Name Q3FileDialog>20 D0AF8:;0 New Folder Q3FileDialog >20 D0AF8:;0 %1 New Folder %1 Q3FileDialog>20 D0AF8:;0 1 New Folder 1 Q3FileDialog.540= 48@5:B>@8XC< 3>@5One directory up Q3FileDialog B2>@8Open Q3FileDialog B2>@8Open  Q3FileDialog,@53;54 A04@60X0 D0X;0Preview File Contents Q3FileDialog6@53;54 8=D>@<0F8X0 > D0X;CPreview File Info Q3FileDialog&#G8B0X ?>=>2>R&eload Q3FileDialog!0<>-70-G8B0Z5 Read-only Q3FileDialog'8B0Z5-C?8A Read-write Q3FileDialog'8B0Z5: %1Read: %1 Q3FileDialog!0GC20X :0>Save As Q3FileDialog(7015@8 48@5:B>@8XC<Select a Directory Q3FileDialog2@8:068 &A:@825=5 D0X;>25Show &hidden files Q3FileDialog5;8G8=0Size Q3FileDialog>@5R0XSort Q3FileDialog$>@5R0X ?> &40BC<C Sort by &Date Q3FileDialog">@5R0X ?> &8<5=C Sort by &Name Q3FileDialog(>@5R0X ?> &25;8G8=8 Sort by &Size Q3FileDialog!?5F8X0;=>Special Q3FileDialog:A=>2=0 2570 4> 48@5:B>@8XC<0Symlink to Directory Q3FileDialog*A=>2=0 2570 4> D0X;0Symlink to File Q3FileDialog6A=>2=0 2570 4> A?5F8X0;=>3Symlink to Special Q3FileDialog"8?Type Q3FileDialog!0<>-70-C?8A Write-only Q3FileDialog#?8A: %1 Write: %1 Q3FileDialog48@5:B>@8XC< the directory Q3FileDialogD0X;the file Q3FileDialog>A=>2=0 2570 the symlink Q3FileDialog>45A8... Customize... Q3MainWindow8=8X0 3>@5Line up Q3MainWindow8?5@0F8XC 70CAB028> :>@8A=8:Operation stopped by the userQ3NetworkProtocol4CAB0=8CancelQ3ProgressDialog@8<5=8Apply Q3TabDialog4CAB0=8Cancel Q3TabDialog>4@07C<520=>Defaults Q3TabDialog ><>[Help Q3TabDialog # @54COK Q3TabDialog&>?8@0X&Copy Q3TextEdit&0;5?8&Paste Q3TextEdit&>=>28&Redo Q3TextEdit&?>7>28&Undo Q3TextEdit G8AB8Clear Q3TextEdit &A5F8Cu&t Q3TextEditG8AB8 A25 Select All Q3TextEdit0B2>@8Close Q3TitleBar0:A8<87CXMaximize Q3TitleBar8=8<87CXMinimize Q3TitleBar !8AB5<System Q3TitleBar >H...More... Q3ToolBar&4CAB0=8&CancelQ3Wizard&02@H8&FinishQ3Wizard &><>[&HelpQ3Wizard&!;545[5 >&Next >Q3Wizard< 0&704< &BackQ3WizardB?5@0F8X0 =0 A>:5BC =8X5 ?>4@60=0$Operation on socket is not supportedQAbstractSocket >?C=8CheckQAccessibleButton@8B8A=8PressQAccessibleButton #:;>=8UncheckQAccessibleButtonLTRQT_LAYOUT_DIRECTION QApplication&4CAB0=8&Cancel QAxSelect& &>1X5:0B: COM &Object: QAxSelect # @54COK QAxSelect67015@8B5 :B82:A :>=B@>;CSelect ActiveX Control QAxSelect >?C=8Check QCheckBox@><5=8Toggle QCheckBox #:;>=8Uncheck QCheckBox*&>40X C ?>A51=5 1>X5&Add to Custom Colors QColorDialog&A=>2=5 1>X5 &Basic colors QColorDialog&>A51=5 1>X5&Custom colors QColorDialog&5;5=0:&Green: QColorDialog&&@25=0:&Red: QColorDialog&;D0 :0=0;:A&lpha channel: QColorDialog&;020:Bl&ue: QColorDialog71>@ 1>X5 Select Color QColorDialog0B2>@8Close QComboBox5B0G=>False QComboBox B2>@8Open QComboBox "0G=>True QComboBox %1 %2%1 %2QDeclarativeTypeLoader >B>2>DoneQDialog(B0 X5 >2>? What's This?QDialog&4CAB0=8&CancelQDialogButtonBox&0B2>@8&CloseQDialogButtonBox&5&NoQDialogButtonBox&# @54C&OKQDialogButtonBox&!0GC20X&SaveQDialogButtonBox&0&YesQDialogButtonBox@5:8=8AbortQDialogButtonBox@8<5=8ApplyQDialogButtonBox4CAB0=8CancelQDialogButtonBox0B2>@8CloseQDialogButtonBox"0B2>@8 157 C?8A0Close without SavingQDialogButtonBox 410F8DiscardQDialogButtonBox5 GC20X Don't SaveQDialogButtonBox ><>[HelpQDialogButtonBox0=5<0@8IgnoreQDialogButtonBox5 70 &A25 N&o to AllQDialogButtonBox # @54COKQDialogButtonBox B2>@8OpenQDialogButtonBox 5A5BCXResetQDialogButtonBox&@0B8 ?>4@07C<520=>Restore DefaultsQDialogButtonBox>:CH0X ?>=>2>RetryQDialogButtonBox!0GC20XSaveQDialogButtonBox!0GC20X A25Save AllQDialogButtonBox0 70 &A25 Yes to &AllQDialogButtonBox0BC< 87<5=5 Date Modified QDirModel @AB0Kind QDirModel<5Name QDirModel5;8G8=0Size QDirModel"8?Type QDirModel0B2>@8Close QDockWidget !?>X8Dock QDockWidget ;CB0XFloat QDockWidget0Z5LessQDoubleSpinBox8H5MoreQDoubleSpinBox&# @54C&OK QErrorMessage4&@8:068 >2C ?>@C:C ?>=>2>&Show this message again QErrorMessage*>@C:0 > :>=B@0B@03C:Debug Message: QErrorMessage>1=0 3@5H:0: Fatal Error: QErrorMessage#?>7>@5Z5:Warning: QErrorMessageR%1 25[ ?>AB>X8. 5;8B5 ;8 40 30 70<5=8B5?-%1 already exists. Do you want to replace it? QFileDialog&7015@8&Choose QFileDialog&1@8H8&Delete QFileDialog&>20 D0AF8:;0 &New Folder QFileDialog&B2>@8&Open QFileDialog&@58<5=CX&Rename QFileDialog&!0GC20X&Save QFileDialogz %1  X5 70HB8[5= >4 C?8A0. 5;8B5 ;8 40 30 >1@8H5B5 A25X54=>?9'%1' is write protected. Do you want to delete it anyway? QFileDialog048<0:Alias QFileDialog!28 D0X;>28 (*) All Files (*) QFileDialog!28 D0X;>28 (*)All Files (*.*) QFileDialogD5;8B5 ;8 708AB0 40 >1@8H5B5 %1 ?!Are sure you want to delete '%1'? QFileDialog 0704Back QFileDialogH8A0< <>30> 40 >1@8H5< 48@5:B>@8XC<.Could not delete directory. QFileDialog*0?@028 =>2C D0AF8:;CCreate New Folder QFileDialog*0?@028 =>2C D0AF8:;CCreate a New Folder QFileDialog@8:07 45B0Y0 Detail View QFileDialog8@5:B>@8XC<8 Directories QFileDialog8@5:B>@8XC<: Directory: QFileDialog$0X;File QFileDialog&<5 D0X;0: File &name: QFileDialog"0R8 48@5:B>@8XC<Find Directory QFileDialog$0AF8:;0Folder QFileDialog 0?@54Forward QFileDialog48 =0704Go back QFileDialog48 =0?@54 Go forward QFileDialog@8:07 A?8A:0 List View QFileDialog>B@068 C:Look in: QFileDialog>X @0GC=0@ My Computer QFileDialog>20 D0AF8:;0 New Folder QFileDialog B2>@8Open QFileDialog5402=0 <5AB0 Recent Places QFileDialog #:;>=8Remove QFileDialog!0GC20X :0>Save As QFileDialog@5G8F0Shortcut QFileDialog@8:068Show  QFileDialog2@8:068 &A:@825=5 D0X;>25Show &hidden files QFileDialog5?>7=0B>Unknown QFileDialog %1 GB%1 GBQFileSystemModel %1 KB%1 KBQFileSystemModel %1 MB%1 MBQFileSystemModel %1 TB%1 TBQFileSystemModel%1 10XB(0) %1 byte(s)QFileSystemModel%1 10XB0%1 bytesQFileSystemModel<b><5 %1  A5 =5 <>65 C?>B@518B8.</b><p>>:CH0XB5 A 4@C38< 8<5=><, A0 <0Z5 7=0:>20 8;8 157 8=B5@?C=:F8XA:8E 7=0:>20.oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModel 0GC=0@ComputerQFileSystemModel0BC< 87<5=5 Date ModifiedQFileSystemModel(58A?@02=> 8<5 D0X;0Invalid filenameQFileSystemModel @AB0KindQFileSystemModel>X @0GC=0@ My ComputerQFileSystemModel<5NameQFileSystemModel5;8G8=0SizeQFileSystemModel"8?TypeQFileSystemModel "0<0=Black QFontDatabase>451Y0=Bold QFontDatabaseC@7820=Italic QFontDatabase !25B0>Light QFontDatabase!B0=40@40=Normal QFontDatabase &$>=B&Font QFontDialog&5;8G8=0&Size QFontDialog&>4C2G5=> &Underline QFontDialog D5:B8Effects QFontDialog&!B8; D>=B0 Font st&yle QFontDialog @8<5@Sample QFontDialog7015@8 D>=B Select Font QFontDialog&@5F@B0= Stri&keout QFontDialog&!8AB5< ?8A0Z0Wr&iting System QFontDialog 5?>7=0B0 3@5H:0 Unknown errorQFtp,8X5 40B> 8<5 4><0[8=0No host name given QHostInfo 5?>7=0B0 3@5H:0 Unknown error QHostInfo$><0[8= =8X5 =0R5=Host not foundQHostInfoAgent.58A?@02=> 8<5 4><0[8=0Invalid hostnameQHostInfoAgent,8X5 40B> 8<5 4><0[8=0No host name givenQHostInfoAgent&5?>7=0B B8? 04@5A5Unknown address typeQHostInfoAgent 5?>7=0B0 3@5H:0 Unknown errorQHostInfoAgent 5?>7=0B0 3@5H:0 Unknown errorQHttp 5?>7=0B0 3@5H:0 Unknown error QIODevice"#=5A8B5 2@54=>AB:Enter a value: QInputDialog 5?>7=0B0 3@5H:0 Unknown errorQLibrary&>?8@0X&Copy QLineEdit&0;5?8&Paste QLineEdit&>=>28&Redo QLineEdit&?>7>28&Undo QLineEdit &A5F8Cu&t QLineEdit 1@8H8Delete QLineEdit7015@8 A25 Select All QLineEdit%1 - [%2] %1 - [%2] QMdiSubWindow&0B2>@8&Close QMdiSubWindow&><5@8&Move QMdiSubWindow&1=>28&Restore QMdiSubWindow&5;8G8=0&Size QMdiSubWindow - [%1]- [%1] QMdiSubWindow0B2>@8Close QMdiSubWindow ><>[Help QMdiSubWindow0&:A8<87CX Ma&ximize QMdiSubWindow0:A8<87CXMaximize QMdiSubWindow5=8Menu QMdiSubWindow8&=8<87CX Mi&nimize QMdiSubWindow8=8<87CXMinimize QMdiSubWindow 1=>28Restore QMdiSubWindowAB0=8 =0 &2@EC Stay on &Top QMdiSubWindow0B2>@8CloseQMenu 72@H8ExecuteQMenu B2>@8OpenQMenu  04Z5ActionsQMenuBarv<h3> XCBC</h3><p>20X ?@>3@0< :>@8AB8 XCB 8740Z5 %1.</p>8

About Qt

This program uses Qt version %1.

 QMessageBox <p>XCB ?@54AB02Y0 C++ 3@C?C 0;0B0 70 <5RC?;0BD>@<A:8 @072>X ?@>3@0<0.</p><p>XCB >15715RCX5 ?>@B018;=>AB X54=>3 872>@=>3 :40 87<5RC !&nbsp;8=4>C70, 5:&nbsp;!&nbsp;:A0, 8=C:A0, 8 A28E 3;02=8E :><5@F8X0;=8E 20@8X0=B8 C=8:A0. XCB X5 B0:>R5 4>ABC?0= 70 C3@0R5=5 C@5R0X5 C 284C XCB0 70 #3@0R5=8 8=C:A 8 XCB0 70 8=4>C7 &.</p><p>XCB X5 4>ABC?0= ?>4 B@8 @07;8G8B5 >?F8X5 ;8F5=F8@0Z0 4870X=8@0=8E 40 704>2>Y5 ?>B@515 @07=8E :>@8A=8:0.</p><p>XCB ;8F5=F8@0= ?>4 =0H>< :><5@F8X0;=>< A?>@07C<=>< ;8F5=F>< X5 >43>20@0XC[ 70 @072>X 2;0A=8G:>3/:><5@F8X0;=>3 A>DB25@0, B0<> 345 =5 65;8B5 40 45;8B5 872>@=8 :4 A0 B@5[8< AB@0=:0<0 8;8 8=0G5 =5 <>65B5 40 A5 CA03;0A8B5 A0 >4@5410<0 #>25  25@78X5 2.1 8;8 #>25  25@78X5 3.0.</p><p>XCB ;8F5=F8@0= ?>4 #>2><  25@78X5 2.1 X5 >43>20@0XC[ 70 @072>X XCB ?@>3@0<0 (2;0A=8G:8E 8;8 >B2>@5=>3 :40) 0:> <>65B5 40 A5 CA03;0A8B5 A0 >4@5410<0 8 CA;>28<0 #>25  25@78X5 2.1</p><p>XCB ;8F5=F8@0= ?>4 #>2><  25@78X5 3.0 X5 >43>20@0XC[ 70 @072>X XCB ?@>3@0<0 0:> 65;8B5 40 :>@8AB8B5 B0:25 ?@>3@0<5 C :><18=0F8X8 A0 A>DB25@>< :>X8 X5 CA;>2Y5= #>2><  25@78X5 3.0 8;8 0:> 8=0G5 65;8B5 40 A5 ?>28=CX5B5 >4@5410<0 #>25  25@78X5 3.0.</p><p>>3;540XB5 <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> 70 ?@53;54 XCB ;8F5=F8@0Z0.</p><p>CB>@A:0 ?@020 2011 >@?>@0F8X0 >:8X0 8/8;8 Z5=5 ?>4@C6=8F5.</p><p>XCB X5 >:8X8= ?@>872>4. >3;540XB5 <a href="http://qt.nokia.com/">qt.nokia.com</a> 70 28H5 8=D>@<0F8X0.</p>

Qt is a C++ toolkit for cross-platform application development.

Qt provides single-source portability across MS Windows, Mac OS X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.

Qt is available under three different licensing options designed to accommodate the needs of our various users.

Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.

Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.

Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.

Please see qt.nokia.com/products/licensing for an overview of Qt licensing.

Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).

Qt is a Nokia product. See qt.nokia.com for more information.

 QMessageBox XCBCAbout Qt QMessageBox ><>[Help QMessageBox !0:@8X 45B0Y5...Hide Details... QMessageBox # @54COK QMessageBox"@8:068 45B0Y5...Show Details... QMessageBox 5?>7=0B0 3@5H:0 Unknown errorQNativeSocketEngine6@5H:0 ?@8;8:>< >B20@0Z0 %1Error opening %1QNetworkAccessCacheBackend$58A?@020= # : %1Invalid URI: %1QNetworkAccessDataBackend&?5@0F8X0 ?@5:8=CB0Operation canceledQNetworkReplyImpl<5NameQPPDOptionsModel@54=>ABValueQPPDOptionsModel&5=B8<5B@8 (cm)Centimeters (cm)QPageSetupWidget$>@<C;0@FormQPageSetupWidget8A8=0:Height:QPageSetupWidget=G8 (in) Inches (in)QPageSetupWidget 5X706 LandscapeQPageSetupWidget0@38=5MarginsQPageSetupWidget8;8<5B@8 (mm)Millimeters (mm)QPageSetupWidget@5=B0F8X0 OrientationQPageSetupWidget 5;8G8=0 ?0?8@0: Page size:QPageSetupWidget 0?8@PaperQPageSetupWidget72>@ ?0?8@0: Paper source:QPageSetupWidget"0G:5 (pt) Points (pt)QPageSetupWidget>@B@5BPortraitQPageSetupWidget1@=CB8 ?5X706Reverse landscapeQPageSetupWidget1@=CB8 ?>@B@5BReverse portraitQPageSetupWidget(8@8=0:Width:QPageSetupWidget4>Z0 <0@38=0 bottom marginQPageSetupWidget;520 <0@38=0 left marginQPageSetupWidget45A=0 <0@38=0 right marginQPageSetupWidget3>@Z0 <0@38=0 top marginQPageSetupWidget,@8:YCG0: =8X5 CG8B0=.The plugin was not loaded. QPluginLoader 5?>7=0B0 3@5H:0 Unknown error QPluginLoaderV%1 25[ ?>AB>X8. 5;8B5 ;8 40 30 ?@51@8H5B5?/%1 already exists. Do you want to overwrite it? QPrintDialogP%1 X5 48@5:B>@8XC<. 7015@8B5 4@C3> 8<5.7%1 is a directory. Please choose a different file name. QPrintDialog&?F8X5 << &Options << QPrintDialog&?F8X5 >> &Options >> QPrintDialog&(B0<?0X&Print QPrintDialogH<qt>5;8B5 ;8 40 30 ?@51@8H5B5?</qt>%Do you want to overwrite it? QPrintDialog0A0 QPrintDialog$0 (841 x 1189 mm)A0 (841 x 1189 mm) QPrintDialog1A1 QPrintDialog"1 (594 x 841 mm)A1 (594 x 841 mm) QPrintDialog3A2 QPrintDialog"2 (420 x 594 mm)A2 (420 x 594 mm) QPrintDialog4A3 QPrintDialog"3 (297 x 420 mm)A3 (297 x 420 mm) QPrintDialog5A4 QPrintDialogF4 (210 x 297 mm, 8.26 x 11.7 8=G0)%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialog5A5 QPrintDialog"5 (148 x 210 mm)A5 (148 x 210 mm) QPrintDialog6A6 QPrintDialog"6 (105 x 148 mm)A6 (105 x 148 mm) QPrintDialog7A7 QPrintDialog 7 (74 x 105 mm)A7 (74 x 105 mm) QPrintDialog8A8 QPrintDialog8 (52 x 74 mm)A8 (52 x 74 mm) QPrintDialog9A9 QPrintDialog9 (37 x 52 mm)A9 (37 x 52 mm) QPrintDialog048<F8: %1 Aliases: %1 QPrintDialog0B0 QPrintDialog&0 (1000 x 1414 mm)B0 (1000 x 1414 mm) QPrintDialog1B1 QPrintDialog$1 (707 x 1000 mm)B1 (707 x 1000 mm) QPrintDialog10B10 QPrintDialog 10 (31 x 44 mm)B10 (31 x 44 mm) QPrintDialog2B2 QPrintDialog"2 (500 x 707 mm)B2 (500 x 707 mm) QPrintDialog3B3 QPrintDialog"3 (353 x 500 mm)B3 (353 x 500 mm) QPrintDialog4B4 QPrintDialog"4 (250 x 353 mm)B4 (250 x 353 mm) QPrintDialog5B5 QPrintDialogF5 (176 x 250 mm, 6.93 x 9.84 8=G0)%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialog6B6 QPrintDialog"6 (125 x 176 mm)B6 (125 x 176 mm) QPrintDialog7B7 QPrintDialog 7 (88 x 125 mm)B7 (88 x 125 mm) QPrintDialog8B8 QPrintDialog8 (62 x 88 mm)B8 (62 x 88 mm) QPrintDialog9B9 QPrintDialog9 (44 x 62 mm)B9 (44 x 62 mm) QPrintDialog&5C5E QPrintDialog$&5 (163 x 229 mm)C5E (163 x 229 mm) QPrintDialog>A51=>Custom QPrintDialogDLE QPrintDialog$ (110 x 220 mm)DLE (110 x 220 mm) QPrintDialog72@H=> Executive QPrintDialogJ72@H=0 (7.5 x 10 8=G0, 191 x 254 mm))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialogR$0X; %1 =8X5 C?8A82. 7015@8B5 4@C3> 8<5.=File %1 is not writable. Please choose a different file name. QPrintDialog$0X; ?>AB>X8 File exists QPrintDialog $>;8>Folio QPrintDialog($>;8> (210 x 330 mm)Folio (210 x 330 mm) QPrintDialog 5_5@Ledger QPrintDialog(5_5@ (432 x 279 mm)Ledger (432 x 279 mm) QPrintDialog 530;Legal QPrintDialogF530; (8.5 x 14 8=G0, 216 x 356 mm)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialog 8A<>Letter QPrintDialogF8A<> (8.5 x 11 8=G0, 216 x 279 mm)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialog>:0;=8 D0X; Local file QPrintDialog # @54COK QPrintDialog(B0<?0Z5Print QPrintDialog"(B0<?0X C D0X;...Print To File ... QPrintDialog(B0<?0X A25 Print all QPrintDialog2(B0<?0X B@5=CB=C AB@0=8FCPrint current page QPrintDialog(B0<?0X @0A?>= Print range QPrintDialog(B0<?0X 871>@Print selection QPrintDialog((B0<?0X C D0X; ($)Print to File (PDF) QPrintDialog6(B0<?0X C D0X; (>ABA:@8?B)Print to File (Postscript) QPrintDialog"01;>84Tabloid QPrintDialog,"01;>84 (279 x 432 mm)Tabloid (279 x 432 mm) QPrintDialogd@54=>AB >4  =5 <>65 18B8 25[0 >4 4>  2@54=>AB8.7The 'From' value cannot be greater than the 'To' value. QPrintDialogF<5@8G:0 #10 :>25@B0 (105 x 241 mm)US Common #10 Envelope QPrintDialogF<5@8G:0 #10 :>25@B0 (105 x 241 mm)%US Common #10 Envelope (105 x 241 mm) QPrintDialog#?8H8 %1 D0X; Write %1 file QPrintDialog;>:0;=> ?>2570=locally connected QPrintDialog=5?>7=0B>unknown QPrintDialog%1%%1%QPrintPreviewDialog0B2>@8CloseQPrintPreviewDialog72578 C $ Export to PDFQPrintPreviewDialog&72578 C >ABA:@8?BExport to PostScriptQPrintPreviewDialog@20 AB@0=8F0 First pageQPrintPreviewDialog#:;>?8 AB@0=8FCFit pageQPrintPreviewDialog #:;>?8 ?> H8@8=8 Fit widthQPrintPreviewDialog 5X706 LandscapeQPrintPreviewDialog">A;54Z0 AB@0=8F0 Last pageQPrintPreviewDialog !;545[0 AB@0=8F0 Next pageQPrintPreviewDialog">AB02:0 AB@0=8F5 Page SetupQPrintPreviewDialog">AB02:0 AB@0=8F5 Page setupQPrintPreviewDialog>@B@5BPortraitQPrintPreviewDialog$@5BE>4=0 AB@0=8F0 Previous pageQPrintPreviewDialog(B0<?0Z5PrintQPrintPreviewDialog @53;54 HB0<?0Z0 Print PreviewQPrintPreviewDialog0@8:068 AC>G5=5 AB@0=8F5Show facing pagesQPrintPreviewDialog:@8:068 ?@53;54 A28E AB@0=8F0Show overview of all pagesQPrintPreviewDialog,@8:068 X54=C AB@0=8FCShow single pageQPrintPreviewDialog#25;8G0XZoom inQPrintPreviewDialog #<0Z8Zoom outQPrintPreviewDialog0?@54=>AdvancedQPrintPropertiesWidget$>@<C;0@FormQPrintPropertiesWidget!B@0=8F0PageQPrintPropertiesWidget !;>68CollateQPrintSettingsOutput # 1>X8ColorQPrintSettingsOutput 568< 1>X5 Color ModeQPrintSettingsOutput >?8X5CopiesQPrintSettingsOutput>?8X0:Copies:QPrintSettingsOutput""@5=CB=0 AB@0=8F0 Current PageQPrintSettingsOutput$2>AB@0=> HB0<?0Z5Duplex PrintingQPrintSettingsOutput$>@<C;0@FormQPrintSettingsOutput!828 B>=>28 GrayscaleQPrintSettingsOutputC30 828F0 Long sideQPrintSettingsOutput5NoneQPrintSettingsOutput ?F8X5OptionsQPrintSettingsOutput>AB02:5 87;070Output SettingsQPrintSettingsOutput!B@0=8F5 >4 Pages fromQPrintSettingsOutput(B0<?0X A25 Print allQPrintSettingsOutput(B0<?0X @0A?>= Print rangeQPrintSettingsOutput1@=CB>ReverseQPrintSettingsOutput 71>@ SelectionQPrintSettingsOutput@0B:0 828F0 Short sideQPrintSettingsOutput4>toQPrintSettingsOutput &<5:&Name: QPrintWidget...... QPrintWidget$>@<C;0@Form QPrintWidget>:0F8X0: Location: QPrintWidget7;07=8 &D0X;: Output &file: QPrintWidget!&2>XAB20 P&roperties QPrintWidget@53;54Preview QPrintWidget(B0<?0GPrinter QPrintWidget"8?:Type: QPrintWidget4CAB0=8CancelQProgressDialog B2>@8Open QPushButton >?C=8Check QRadioButton>:0F8X0LocationQScriptBreakpointsModel 1@8H8DeleteQScriptBreakpointsWidget>2>NewQScriptBreakpointsWidgetG8AB8 :>=7>;C Clear ConsoleQScriptDebugger0AB028ContinueQScriptDebugger<img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;"@068 ?@5;><Y5=>J Search wrappedQScriptDebuggerCodeFinderWidget">:;0?0X 25;8G8=CCase SensitiveQScriptDebuggerCodeFinderWidget0B2>@8CloseQScriptDebuggerCodeFinderWidget!;545[5NextQScriptDebuggerCodeFinderWidget@5BE>4=>PreviousQScriptDebuggerCodeFinderWidget&5;5 @5G8 Whole wordsQScriptDebuggerCodeFinderWidget<5NameQScriptDebuggerLocalsModel@54=>ABValueQScriptDebuggerLocalsModel82>LevelQScriptDebuggerStackModel>:0F8X0LocationQScriptDebuggerStackModel<5NameQScriptDebuggerStackModel0B2>@8CloseQScriptNewBreakpointWidget=>Bottom QScrollBar520 828F0 Left edge QScrollBar8=8X0 4>;5 Line down QScrollBar8=8X0 3>@5Line up QScrollBar!B@0=8F0 4>;5 Page down QScrollBar!B@0=8F0 ;52> Page left QScrollBar!B@0=8F0 45A=> Page right QScrollBar!B@0=8F0 3>@5Page up QScrollBar>;>60XPosition QScrollBar5A=0 828F0 Right edge QScrollBar;870X 4>;5 Scroll down QScrollBar;870X >245 Scroll here QScrollBar;870X ;52> Scroll left QScrollBar;870X 45A=> Scroll right QScrollBar;870X 3>@5 Scroll up QScrollBar@ETop QScrollBar 0704Back QShortcut G8AB8Clear QShortcut0B2>@8Close QShortcut>?8@0XCopy QShortcut A5F8Cut QShortcut 1@8H8Delete QShortcut 0?@54Forward QShortcut ><>[Help QShortcut #<5B=8Insert QShortcut5=8Menu QShortcut5No QShortcut 0;5?8Paste QShortcut 0C70Pause QShortcut(B0<?0XPrint QShortcut A2568Refresh QShortcut#G8B0X ?>=>2>Reload QShortcut!0GC20XSave QShortcut7015@8Select QShortcut0CAB028Stop QShortcut ;0B:5Tools QShortcut0Yes QShortcut#25;8G0XZoom In QShortcut #<0Z8Zoom Out QShortcut!B@0=8F0 4>;5 Page downQSlider!B@0=8F0 ;52> Page leftQSlider!B@0=8F0 45A=> Page rightQSlider!B@0=8F0 3>@5Page upQSlider>;>60XPositionQSlider4CAB0=8CancelQSoftKeyManager >B>2>DoneQSoftKeyManager 70R8ExitQSoftKeyManager # @54COKQSoftKeyManager ?F8X5OptionsQSoftKeyManager7015@8SelectQSoftKeyManager0Z5LessQSpinBox8H5MoreQSpinBox4CAB0=8CancelQSql 1@8H8DeleteQSql #<5B=8InsertQSql5NoQSql6C@8@0XUpdateQSql0YesQSql 5?>7=0B0 3@5H:0 Unknown error QSslSocket 5?>7=0B0 3@5H:0 Unknown error QStateMachine 5?>7=0B0 3@5H:0 Unknown errorQSymbianSocketEngine;870X ;52> Scroll LeftQTabBar;870X 45A=> Scroll RightQTabBarB?5@0F8X0 =0 A>:5BC =8X5 ?>4@60=0$Operation on socket is not supported QTcpServer&>?8@0X&Copy QTextControl&0;5?8&Paste QTextControl&>=>28&Redo QTextControl&?>7>28&Undo QTextControl,>?8@0X &;>:0F8XC 2575Copy &Link Location QTextControl &A5F8Cu&t QTextControl 1@8H8Delete QTextControl7015@8 A25 Select All QTextControl B2>@8Open QToolButton@8B8A=8Press QToolButton<20 ?;0BD>@<0 =5 ?>4@6020 IPv6#This platform does not support IPv6 QUdpSocket >=>28Redo QUndoGroup>=>28 %1Redo %1 QUndoGroup?>7>28Undo QUndoGroup?>7>28 %1Undo %1 QUndoGroup<?@07=>> QUndoModel >=>28Redo QUndoStack>=>28 %1Redo %1 QUndoStack?>7>28Undo QUndoStack?>7>28 %1Undo %1 QUndoStack$%1 (%2x%3 ?8:A5;0)%1 (%2x%3 pixels)QWebPageH%1 40=0 %2 A0B8 %3 <8=CB0 %4 A5:C=48&%1 days %2 hours %3 minutes %4 secondsQWebPage8%1 A0B8 %2 <8=CB0 %3 A5:C=48%1 hours %2 minutes %3 secondsQWebPage(%1 <8=CB0 %2 A5:C=48%1 minutes %2 secondsQWebPage%1 A5:C=48 %1 secondsQWebPage%n D0X;%n D0X;0%n D0X;>20 %n file(s)QWebPage>40X C @5G=8:Add To DictionaryQWebPage>@02=0X A;520 Align LeftQWebPage>@02=0X 745A=0 Align RightQWebPage>451Y0=BoldQWebPage=>BottomQWebPage&5=B@8@0XCenterQWebPage @>25@8 ?@02>?8ACheck SpellingQWebPage7015@8 D0X; Choose FileQWebPage>?8@0XCopyQWebPage>?8@0X 0C48> Copy AudioQWebPage>?8@0X A;8:C Copy ImageQWebPage(>?8@0X 04@5AC A;8:5Copy Image AddressQWebPage>?8@0X 257C Copy LinkQWebPage>?8@0X 2845> Copy VideoQWebPage A5F8CutQWebPage>4@07C<520=DefaultQWebPage 5B0Y8DetailsQWebPage!<5@ DirectionQWebPage&8> 5:@0=Enter FullscreenQWebPage$>=BFontsQWebPage48 =0704Go BackQWebPage48 =0?@54 Go ForwardQWebPage6!0:@8X ?@02>?8A 8 3@0<0B8:CHide Spelling and GrammarQWebPage0=5<0@8IgnoreQWebPage0=5<0@8 Ignore Grammar context menu itemIgnoreQWebPage0#<5B=8 A8<1>;5 =01@0X0Z0Insert Bulleted ListQWebPage"#<5B=8 =C<5@8A0Z5Insert Numbered ListQWebPage@53;540XInspectQWebPageC@7820=ItalicQWebPage$>@02=0X >1>AB@0=>JustifyQWebPage520 828F0 Left edgeQWebPage! ;520 =0 45A=> Left to RightQWebPage#G8B020<... Loading...QWebPage">B@068 C @5G=8:CLook Up In DictionaryQWebPage&54>AB0X5 ?@8:YCG0:Missing Plug-inQWebPage #B8H0XMuteQWebPage"$0X; =8X5 8701@0=No file selectedQWebPageB2>@8 0C48> Open AudioQWebPageB2>@8 >:28@ Open FrameQWebPageB2>@8 A;8:C Open ImageQWebPageB2>@8 257C Open LinkQWebPageB2>@8 2845> Open VideoQWebPage,B2>@8 C =>2>< ?@>7>@COpen in New WindowQWebPage>=BC@0OutlineQWebPage!B@0=8F0 4>;5 Page downQWebPage!B@0=8F0 ;52> Page leftQWebPage!B@0=8F0 45A=> Page rightQWebPage!B@0=8F0 3>@5Page upQWebPage 0;5?8PasteQWebPage0C78@0XPauseQWebPage CAB8PlayQWebPage#G8B0X ?>=>2>ReloadQWebPage 5A5BCXResetQWebPage5A=0 828F0 Right edgeQWebPage! 45A=0 =0 ;52> Right to LeftQWebPage!0GC20X A;8:C Save ImageQWebPage!0GC20X 257C... Save Link...QWebPage;870X 4>;5 Scroll downQWebPage;870X >245 Scroll hereQWebPage;870X ;52> Scroll leftQWebPage;870X 45A=> Scroll rightQWebPage;870X 3>@5 Scroll upQWebPage@5B@068 251Search The WebQWebPage7015@8 A25 Select AllQWebPage8@8:068 ?@02>?8A 8 3@0<0B8:CShow Spelling and GrammarQWebPage ;870GSliderQWebPage@02>?8ASpellingQWebPage0CAB028StopQWebPage@5F@B0= StrikethroughQWebPage >H0Y8SubmitQWebPage >H0Y8QSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPage =45:A SubscriptQWebPage:A?>=5=B SuperscriptQWebPage!<5@ B5:AB0Text DirectionQWebPage@ETopQWebPage>42CG5= UnderlineQWebPage5?>7=0B>UnknownQWebPage$51 =A?5:B>@ - %2Web Inspector - %2QWebPage(B0 X5 >2>? What's This?QWhatsThisAction**QWidget&02@H8&FinishQWizard &><>[&HelpQWizard&!;545[5&NextQWizard&!;545[5 >&Next >QWizard< &0704< &BackQWizard4CAB0=8CancelQWizard>4=5A8CommitQWizard0AB028ContinueQWizard >B>2>DoneQWizard48 =0704Go BackQWizard ><>[HelpQWizard%1 - [%2] %1 - [%2] QWorkspace&0B2>@8&Close QWorkspace&><5@8&Move QWorkspace&1=>28&Restore QWorkspace&5;8G8=0&Size QWorkspace0B2>@8Close QWorkspace0&:A8<87CX Ma&ximize QWorkspace8&=8<87CX Mi&nimize QWorkspace8=8<87CXMinimize QWorkspaceAB0=8 =0 &2@EC Stay on &Top QWorkspace !B02:5Items QmlJSDebugger::LiveSelectionTool 0.125x0.125xQmlJSDebugger::QmlToolBar0.1x0.1xQmlJSDebugger::QmlToolBar 0.25x0.25xQmlJSDebugger::QmlToolBar0.5x0.5xQmlJSDebugger::QmlToolBar1x1xQmlJSDebugger::QmlToolBar8@0G 1>X5 Color PickerQmlJSDebugger::QmlToolBar7015@8SelectQmlJSDebugger::QmlToolBar ;0B:5ToolsQmlJSDebugger::QmlToolBar#25;8G0XZoomQmlJSDebugger::QmlToolBar>?8@0X 1>XC Copy ColorQmlJSDebugger::ToolBarColorBox#25;8G0XZoom InQmlJSDebugger::ZoomTool #<0Z8Zoom OutQmlJSDebugger::ZoomTool@0B8 =0 &100% Zoom to &100%QmlJSDebugger::ZoomTool ) , qupzilla-1.6.0/bin/locale/qt_sr_RS@latin.qm000066400000000000000000001524531226107126500206250ustar00rootroot00000000000000Er% %0[֍\|֍֍֍@00#0C0Y500  D& D8,(',Esz)r4m<^lksn†5C&ʴ5Bʴ5ʶD۔#}F5F5DI I0As qe> ڥ Ac Ac4K =:E K!?- bk b`2 b`x laX Ju t t3 i $ ҉wY 4 kh VV 팤[b P }_ 95 )u =< By Ty ] c( cE|q e K e1 f* g5U} k, rD". y5x& 9y I\ I I ;m f* , ,* t t ʀs: ˔; P P :a f Q f - s K s/ ~Q 9_ #}  m, : E9 L| L L L Mc\&` O X\ \Ot f) f)-P f={ wC H H+ G $.P if  A  %p J J0 k M M ̺;^ -D< >=r >?1 >? >? >@d >Z5 >a > > >' IZ I? K K RV4 RV- RV{ S j7o* p dN q x C E 9 ʜt  +> ;ɾT PtDt Pt fe fe gt i1N i jӮx m99 m91 v&_ w w ww w} w} w} ^Yc ɰey{ X bF$ D 3, t5C t5r$1***a.#vɅ<%>^bǗ:\ݖq[yl4  .$U%4&%47Hc5c5pg3}iT3`h/>btr^rkyeڔ.B$PnXd|iZatvori jezi ak Close Tab CloseButton<nedefinisano> Debugger::JSAgentWatchData[Niz du~ine %1][Array of length %1]Debugger::JSAgentWatchDataLa~na greaka! Fake error! FakeReplyNeispravan URL Invalid URL FakeReplyNeispravan URL Invalid URL Phonon::MMF %1 Hz%1 HzPhonon::MMF::AudioEqualizerNivo (%) Level (%)Phonon::MMF::StereoWidening ObriaiDelete Q3DataTableNeta noFalse Q3DataTable UmetniInsert Q3DataTable Ta noTrue Q3DataTableA~urirajUpdate Q3DataTabled%1 Fajl nije naen. Proverite putanju i ime fajla.+%1 File not found. Check path and filename. Q3FileDialogO&briai&Delete Q3FileDialog&Ne&No Q3FileDialog&U redu&OK Q3FileDialog&Otvori&Open Q3FileDialog&Preimenuj&Rename Q3FileDialog&Sa uvaj&Save Q3FileDialog&Neporeano &Unsorted Q3FileDialog&Da&Yes Q3FileDialog\<qt>}elite li zaista da obriaete %1 %2 ?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialogSvi fajlovi (*) All Files (*) Q3FileDialog"Svi fajlovi (*.*)All Files (*.*) Q3FileDialogSvojstva Attributes Q3FileDialog NazadBack Q3FileDialogOdustaniCancel Q3FileDialog.Kopiraj ili pomeri fajlCopy or Move a File Q3FileDialog*Napravi novu fascikluCreate New Folder Q3FileDialog DatumDate Q3FileDialogObriai %1 Delete %1 Q3FileDialog*Re~im prikaza detalja Detail View Q3FileDialogDirektorijumDir Q3FileDialogDirektorijumi Directories Q3FileDialogDirektorijum: Directory: Q3FileDialog GreakaError Q3FileDialogFajlFile Q3FileDialog&Ime fajla: File &name: Q3FileDialog&Tip fajla: File &type: Q3FileDialog"Nai direktorijumFind Directory Q3FileDialogNedostupan Inaccessible Q3FileDialog(Re~im prikaza spiska List View Q3FileDialogPogledaj &u: Look &in: Q3FileDialogImeName Q3FileDialogNova fascikla New Folder Q3FileDialog Nova fascikla %1 New Folder %1 Q3FileDialogNova fascikla 1 New Folder 1 Q3FileDialog.Jedan direktorijum goreOne directory up Q3FileDialog OtvoriOpen Q3FileDialog OtvoriOpen  Q3FileDialog,Pregled sadr~aja fajlaPreview File Contents Q3FileDialog6Pregled informacija o fajluPreview File Info Q3FileDialog&U itaj ponovoR&eload Q3FileDialogSamo-za- itanje Read-only Q3FileDialog itanje-upis Read-write Q3FileDialog itanje: %1Read: %1 Q3FileDialogSa uvaj kaoSave As Q3FileDialog(Izaberi direktorijumSelect a Directory Q3FileDialog2Prika~i &skrivene fajloveShow &hidden files Q3FileDialogVeli inaSize Q3FileDialogPoreajSort Q3FileDialog$Poreaj po &datumu Sort by &Date Q3FileDialog"Poreaj po &imenu Sort by &Name Q3FileDialog(Poreaj po &veli ini Sort by &Size Q3FileDialogSpecijalnoSpecial Q3FileDialog:Osnovna veza do direktorijumaSymlink to Directory Q3FileDialog*Osnovna veza do fajlaSymlink to File Q3FileDialog6Osnovna veza do specijalnogSymlink to Special Q3FileDialogTipType Q3FileDialogSamo-za-upis Write-only Q3FileDialogUpis: %1 Write: %1 Q3FileDialogdirektorijum the directory Q3FileDialogfajlthe file Q3FileDialogosnovna veza the symlink Q3FileDialogPodesi... Customize... Q3MainWindowLinija goreLine up Q3MainWindow8Operaciju zaustavio korisnikOperation stopped by the userQ3NetworkProtocolOdustaniCancelQ3ProgressDialogPrimeniApply Q3TabDialogOdustaniCancel Q3TabDialogPodrazumevanoDefaults Q3TabDialog PomoHelp Q3TabDialog U reduOK Q3TabDialog&Kopiraj&Copy Q3TextEdit&Nalepi&Paste Q3TextEdit&Ponovi&Redo Q3TextEdit&Opozovi&Undo Q3TextEdit O istiClear Q3TextEdit &IseciCu&t Q3TextEditO isti sve Select All Q3TextEditZatvoriClose Q3TitleBarMaksimizujMaximize Q3TitleBarMinimizujMinimize Q3TitleBar SistemSystem Q3TitleBar Joa...More... Q3ToolBar&Odustani&CancelQ3Wizard&Zavrai&FinishQ3Wizard &Pomo&HelpQ3Wizard&Sledee >&Next >Q3Wizard< Na&zad< &BackQ3WizardBOperacija na soketu nije podr~ana$Operation on socket is not supportedQAbstractSocket PopuniCheckQAccessibleButtonPritisniPressQAccessibleButton UkloniUncheckQAccessibleButtonLTRQT_LAYOUT_DIRECTION QApplication&Odustani&Cancel QAxSelectCOM &objekat: COM &Object: QAxSelect U reduOK QAxSelect6Izaberite AktivIks kontroluSelect ActiveX Control QAxSelect PopuniCheck QCheckBoxPromeniToggle QCheckBox UkloniUncheck QCheckBox*&Dodaj u posebne boje&Add to Custom Colors QColorDialog&Osnovne boje &Basic colors QColorDialog&Posebne boje&Custom colors QColorDialog&Zelena:&Green: QColorDialog&Crvena:&Red: QColorDialog&Alfa kanal:A&lpha channel: QColorDialogP&lava:Bl&ue: QColorDialogIzbor boje Select Color QColorDialogZatvoriClose QComboBoxNeta noFalse QComboBox OtvoriOpen QComboBox Ta noTrue QComboBox%1% {1 %2?}%1 %2QDeclarativeTypeLoader GotovoDoneQDialog`ta je ovo? What's This?QDialog&Odustani&CancelQDialogButtonBox&Zatvori&CloseQDialogButtonBox&Ne&NoQDialogButtonBox&U redu&OKQDialogButtonBox&Sa uvaj&SaveQDialogButtonBox&Da&YesQDialogButtonBoxPrekiniAbortQDialogButtonBoxPrimeniApplyQDialogButtonBoxOdustaniCancelQDialogButtonBoxZatvoriCloseQDialogButtonBox"Zatvori bez upisaClose without SavingQDialogButtonBox OdbaciDiscardQDialogButtonBoxNe  uvaj Don't SaveQDialogButtonBox PomoHelpQDialogButtonBoxZanemariIgnoreQDialogButtonBoxNe za &sve N&o to AllQDialogButtonBox U reduOKQDialogButtonBox OtvoriOpenQDialogButtonBoxResetujResetQDialogButtonBox&Vrati podrazumevanoRestore DefaultsQDialogButtonBoxPokuaaj ponovoRetryQDialogButtonBoxSa uvajSaveQDialogButtonBoxSa uvaj sveSave AllQDialogButtonBoxDa za &sve Yes to &AllQDialogButtonBoxDatum izmene Date Modified QDirModel VrstaKind QDirModelImeName QDirModelVeli inaSize QDirModelTipType QDirModelZatvoriClose QDockWidget SpojiDock QDockWidget PlutajFloat QDockWidget ManjeLessQDoubleSpinBoxViaeMoreQDoubleSpinBox&U redu&OK QErrorMessage4&Prika~i ovu poruku ponovo&Show this message again QErrorMessage*Poruka o kontratragu:Debug Message: QErrorMessageKobna greaka: Fatal Error: QErrorMessageUpozorenje:Warning: QErrorMessageR%1 ve postoji. }elite li da ga zamenite?-%1 already exists. Do you want to replace it? QFileDialog&Izaberi&Choose QFileDialog&Obriai&Delete QFileDialog&Nova fascikla &New Folder QFileDialog&Otvori&Open QFileDialog&Preimenuj&Rename QFileDialog&Sa uvaj&Save QFileDialogz %1  je zaatien od upisa. }elite li da ga obriaete svejedno?9'%1' is write protected. Do you want to delete it anyway? QFileDialogNadimakAlias QFileDialogSvi fajlovi (*) All Files (*) QFileDialogSvi fajlovi (*)All Files (*.*) QFileDialogD}elite li zaista da obriaete %1 ?!Are sure you want to delete '%1'? QFileDialog NazadBack QFileDialogHNisam mogao da obriaem direktorijum.Could not delete directory. QFileDialog*Napravi novu fascikluCreate New Folder QFileDialog*Napravi novu fascikluCreate a New Folder QFileDialogPrikaz detalja Detail View QFileDialogDirektorijumi Directories QFileDialogDirektorijum: Directory: QFileDialogFajlFile QFileDialog&Ime fajla: File &name: QFileDialog"Nai direktorijumFind Directory QFileDialogFasciklaFolder QFileDialog NapredForward QFileDialogIdi nazadGo back QFileDialogIdi napred Go forward QFileDialogPrikaz spiska List View QFileDialogPotra~i u:Look in: QFileDialogMoj ra unar My Computer QFileDialogNova fascikla New Folder QFileDialog OtvoriOpen QFileDialogNedavna mesta Recent Places QFileDialog UkloniRemove QFileDialogSa uvaj kaoSave As QFileDialogPre icaShortcut QFileDialogPrika~iShow  QFileDialog2Prika~i &skrivene fajloveShow &hidden files QFileDialogNepoznatoUnknown QFileDialog %1 GB%1 GBQFileSystemModel %1 KB%1 KBQFileSystemModel %1 MB%1 MBQFileSystemModel %1 TB%1 TBQFileSystemModel%1 bajt(a) %1 byte(s)QFileSystemModel%1 bajta%1 bytesQFileSystemModel<b>Ime %1  se ne mo~e upotrebiti.</b><p>Pokuaajte s drugim imenom, sa manje znakova ili bez interpunkcijskih znakova.oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModelRa unarComputerQFileSystemModelDatum izmene Date ModifiedQFileSystemModel(Neispravno ime fajlaInvalid filenameQFileSystemModel VrstaKindQFileSystemModelMoj ra unar My ComputerQFileSystemModelImeNameQFileSystemModelVeli inaSizeQFileSystemModelTipTypeQFileSystemModel TamanBlack QFontDatabasePodebljanBold QFontDatabaseKurzivanItalic QFontDatabase SvetaoLight QFontDatabaseStandardanNormal QFontDatabase &Font&Font QFontDialog&Veli ina&Size QFontDialog&Poduv eno &Underline QFontDialog EfektiEffects QFontDialog&Stil fonta Font st&yle QFontDialog PrimerSample QFontDialogIzaberi font Select Font QFontDialogP&recrtan Stri&keout QFontDialog&Sistem pisanjaWr&iting System QFontDialog Nepoznata greaka Unknown errorQFtp,Nije dato ime domainaNo host name given QHostInfo Nepoznata greaka Unknown error QHostInfo$Domain nije naenHost not foundQHostInfoAgent.Neispravno ime domainaInvalid hostnameQHostInfoAgent,Nije dato ime domainaNo host name givenQHostInfoAgent&Nepoznat tip adreseUnknown address typeQHostInfoAgent Nepoznata greaka Unknown errorQHostInfoAgent Nepoznata greaka Unknown errorQHttp Nepoznata greaka Unknown error QIODevice"Unesite vrednost:Enter a value: QInputDialog Nepoznata greaka Unknown errorQLibrary&Kopiraj&Copy QLineEdit&Nalepi&Paste QLineEdit&Ponovi&Redo QLineEdit&Opozovi&Undo QLineEdit &IseciCu&t QLineEdit ObriaiDelete QLineEditIzaberi sve Select All QLineEdit%1 - [%2] %1 - [%2] QMdiSubWindow&Zatvori&Close QMdiSubWindow&Pomeri&Move QMdiSubWindow&Obnovi&Restore QMdiSubWindow&Veli ina&Size QMdiSubWindow - [%1]- [%1] QMdiSubWindowZatvoriClose QMdiSubWindow PomoHelp QMdiSubWindowMa&ksimizuj Ma&ximize QMdiSubWindowMaksimizujMaximize QMdiSubWindowMeniMenu QMdiSubWindowMi&nimizuj Mi&nimize QMdiSubWindowMinimizujMinimize QMdiSubWindow ObnoviRestore QMdiSubWindowOstani na &vrhu Stay on &Top QMdiSubWindowZatvoriCloseQMenu IzvraiExecuteQMenu OtvoriOpenQMenu RadnjeActionsQMenuBarx<h3>O Kjutu</h3><p>Ovaj program koristi Kjut izdanje %1.</p>8

About Qt

This program uses Qt version %1.

 QMessageBox <p>Kjut predstavlja C++ grupu alata za meuplatformski razvoj programa.</p><p>Kjut obezbeuje portabilnost jednog izvornog kda izmeu MS&nbsp;Vindouza, Mek&nbsp;OS&nbsp;Iksa, Linuksa, i svih glavnih komercijalnih varijanti Juniksa. Kjut je takoe dostupan za ugraene ureaje u vidu Kjuta za Ugraeni Linuks i Kjuta za Vindouz CE.</p><p>Kjut je dostupan pod tri razli ite opcije licenciranja dizajniranih da zadovolje potrebe raznih korisnika.</p><p>Kjut licenciran pod naaom komercijalnom sporazumnom licencom je odgovaraju za razvoj vlasni kog/komercijalnog softvera, tamo gde ne ~elite da delite izvorni kd sa treim strankama ili ina e ne mo~ete da se usaglasite sa odredbama GNUove LGPL verzije 2.1 ili GNUove GPL verzije 3.0.</p><p>Kjut licenciran pod GNUovom LGPL verzije 2.1 je odgovaraju za razvoj Kjut programa (vlasni kih ili otvorenog kda) ako mo~ete da se usaglasite sa odredbama i uslovima GNUove LGPL verzije 2.1</p><p>Kjut licenciran pod GNUovom GPL verzije 3.0 je odgovaraju za razvoj Kjut programa ako ~elite da koristite takve programe u kombinaciji sa softverom koji je uslovljen GNUovom GPL verzije 3.0 ili ako ina e ~elite da se povinujete odredbama GNUove GPL verzije 3.0.</p><p>Pogledajte <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> za pregled Kjut licenciranja.</p><p>Autorska prava 2011 Korporacija Nokija i/ili njene podru~nice.</p><p>Kjut je Nokijin proizvod. Pogledajte <a href="http://qt.nokia.com/">qt.nokia.com</a> za viae informacija.</p>

Qt is a C++ toolkit for cross-platform application development.

Qt provides single-source portability across MS Windows, Mac OS X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.

Qt is available under three different licensing options designed to accommodate the needs of our various users.

Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.

Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.

Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.

Please see qt.nokia.com/products/licensing for an overview of Qt licensing.

Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).

Qt is a Nokia product. See qt.nokia.com for more information.

 QMessageBoxO KjutuAbout Qt QMessageBox PomoHelp QMessageBox"Sakrij detalje...Hide Details... QMessageBox U reduOK QMessageBox$Prika~i detalje...Show Details... QMessageBox Nepoznata greaka Unknown errorQNativeSocketEngine8Greaka prilikom otvaranja %1Error opening %1QNetworkAccessCacheBackend$Neispravan URI: %1Invalid URI: %1QNetworkAccessDataBackend&Operacija prekinutaOperation canceledQNetworkReplyImplImeNameQPPDOptionsModelVrednostValueQPPDOptionsModelCentimetri (cm)Centimeters (cm)QPageSetupWidgetFormularFormQPageSetupWidgetVisina:Height:QPageSetupWidgetIn i (in) Inches (in)QPageSetupWidget Pejza~ LandscapeQPageSetupWidgetMargineMarginsQPageSetupWidgetMilimetri (mm)Millimeters (mm)QPageSetupWidgetOrentacija OrientationQPageSetupWidget Veli ina papira: Page size:QPageSetupWidget PapirPaperQPageSetupWidgetIzvor papira: Paper source:QPageSetupWidgetTa ke (pt) Points (pt)QPageSetupWidgetPortretPortraitQPageSetupWidgetObrnuti pejza~Reverse landscapeQPageSetupWidgetObrnuti portretReverse portraitQPageSetupWidget`irina:Width:QPageSetupWidgetdonja margina bottom marginQPageSetupWidgetleva margina left marginQPageSetupWidgetdesna margina right marginQPageSetupWidgetgornja margina top marginQPageSetupWidget.Priklju ak nije u itan.The plugin was not loaded. QPluginLoader Nepoznata greaka Unknown error QPluginLoaderV%1 ve postoji. }elite li da ga prebriaete?/%1 already exists. Do you want to overwrite it? QPrintDialogP%1 je direktorijum. Izaberite drugo ime.7%1 is a directory. Please choose a different file name. QPrintDialog&Opcije << &Options << QPrintDialog&Opcije >> &Options >> QPrintDialog&`tampaj&Print QPrintDialogH<qt>}elite li da ga prebriaete?</qt>%Do you want to overwrite it? QPrintDialogA0A0 QPrintDialog$A0 (841 x 1189 mm)A0 (841 x 1189 mm) QPrintDialogA1A1 QPrintDialog"A1 (594 x 841 mm)A1 (594 x 841 mm) QPrintDialogA3A2 QPrintDialog"A2 (420 x 594 mm)A2 (420 x 594 mm) QPrintDialogA4A3 QPrintDialog"A3 (297 x 420 mm)A3 (297 x 420 mm) QPrintDialogA5A4 QPrintDialogFA4 (210 x 297 mm, 8.26 x 11.7 in a)%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialogA5A5 QPrintDialog"A5 (148 x 210 mm)A5 (148 x 210 mm) QPrintDialogA6A6 QPrintDialog"A6 (105 x 148 mm)A6 (105 x 148 mm) QPrintDialogA7A7 QPrintDialog A7 (74 x 105 mm)A7 (74 x 105 mm) QPrintDialogA8A8 QPrintDialogA8 (52 x 74 mm)A8 (52 x 74 mm) QPrintDialogA9A9 QPrintDialogA9 (37 x 52 mm)A9 (37 x 52 mm) QPrintDialogNadimci: %1 Aliases: %1 QPrintDialogB0B0 QPrintDialog&B0 (1000 x 1414 mm)B0 (1000 x 1414 mm) QPrintDialogB1B1 QPrintDialog$B1 (707 x 1000 mm)B1 (707 x 1000 mm) QPrintDialogB10B10 QPrintDialog B10 (31 x 44 mm)B10 (31 x 44 mm) QPrintDialogB2B2 QPrintDialog"B2 (500 x 707 mm)B2 (500 x 707 mm) QPrintDialogB3B3 QPrintDialog"B3 (353 x 500 mm)B3 (353 x 500 mm) QPrintDialogB4B4 QPrintDialog"B4 (250 x 353 mm)B4 (250 x 353 mm) QPrintDialogB5B5 QPrintDialogFB5 (176 x 250 mm, 6.93 x 9.84 in a)%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialogB6B6 QPrintDialog"B6 (125 x 176 mm)B6 (125 x 176 mm) QPrintDialogB7B7 QPrintDialog B7 (88 x 125 mm)B7 (88 x 125 mm) QPrintDialogB8B8 QPrintDialogB8 (62 x 88 mm)B8 (62 x 88 mm) QPrintDialogB9B9 QPrintDialogB9 (44 x 62 mm)B9 (44 x 62 mm) QPrintDialogC5EC5E QPrintDialog$C5E (163 x 229 mm)C5E (163 x 229 mm) QPrintDialogPosebnoCustom QPrintDialogDLEDLE QPrintDialog$DLE (110 x 220 mm)DLE (110 x 220 mm) QPrintDialogIzvrano Executive QPrintDialogJIzvrana (7.5 x 10 in a, 191 x 254 mm))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialogRFajl %1 nije upisiv. Izaberite drugo ime.=File %1 is not writable. Please choose a different file name. QPrintDialogFajl postoji File exists QPrintDialog FolioFolio QPrintDialog(Folio (210 x 330 mm)Folio (210 x 330 mm) QPrintDialog Led~erLedger QPrintDialog*Led~er (432 x 279 mm)Ledger (432 x 279 mm) QPrintDialog LegalLegal QPrintDialogFLegal (8.5 x 14 in a, 216 x 356 mm)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialog PismoLetter QPrintDialogFPismo (8.5 x 11 in a, 216 x 279 mm)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialogLokalni fajl Local file QPrintDialog U reduOK QPrintDialog`tampanjePrint QPrintDialog"`tampaj u fajl...Print To File ... QPrintDialog`tampaj sve Print all QPrintDialog2`tampaj trenutnu stranicuPrint current page QPrintDialog`tampaj raspon Print range QPrintDialog`tampaj izborPrint selection QPrintDialog(`tampaj u fajl (PDF)Print to File (PDF) QPrintDialog6`tampaj u fajl (Postskript)Print to File (Postscript) QPrintDialogTabloidTabloid QPrintDialog,Tabloid (279 x 432 mm)Tabloid (279 x 432 mm) QPrintDialogdVrednost od  ne mo~e biti vea od do  vrednosti.7The 'From' value cannot be greater than the 'To' value. QPrintDialogFAmeri ka #10 koverta (105 x 241 mm)US Common #10 Envelope QPrintDialogFAmeri ka #10 koverta (105 x 241 mm)%US Common #10 Envelope (105 x 241 mm) QPrintDialogUpiai %1 fajl Write %1 file QPrintDialoglokalno povezanlocally connected QPrintDialognepoznatounknown QPrintDialog%1%%1%QPrintPreviewDialogZatvoriCloseQPrintPreviewDialogIzvezi u PDF Export to PDFQPrintPreviewDialog&Izvezi u PostskriptExport to PostScriptQPrintPreviewDialogPrva stranica First pageQPrintPreviewDialogUklopi stranicuFit pageQPrintPreviewDialog Uklopi po airini Fit widthQPrintPreviewDialog Pejza~ LandscapeQPrintPreviewDialog$Poslednja stranica Last pageQPrintPreviewDialog Sledea stranica Next pageQPrintPreviewDialog"Postavka stranice Page SetupQPrintPreviewDialog"Postavka stranice Page setupQPrintPreviewDialogPortretPortraitQPrintPreviewDialog$Prethodna stranica Previous pageQPrintPreviewDialog`tampanjePrintQPrintPreviewDialog"Pregled atampanja Print PreviewQPrintPreviewDialog0Prika~i suo ene straniceShow facing pagesQPrintPreviewDialog:Prika~i pregled svih stranicaShow overview of all pagesQPrintPreviewDialog,Prika~i jednu stranicuShow single pageQPrintPreviewDialogUveli ajZoom inQPrintPreviewDialog UmanjiZoom outQPrintPreviewDialogNaprednoAdvancedQPrintPropertiesWidgetFormularFormQPrintPropertiesWidgetStranicaPageQPrintPropertiesWidget Slo~iCollateQPrintSettingsOutput U bojiColorQPrintSettingsOutputRe~im boje Color ModeQPrintSettingsOutput KopijeCopiesQPrintSettingsOutputKopija:Copies:QPrintSettingsOutput"Trenutna stranica Current PageQPrintSettingsOutput&Dvostrano atampanjeDuplex PrintingQPrintSettingsOutputFormularFormQPrintSettingsOutputSivi tonovi GrayscaleQPrintSettingsOutputDuga ivica Long sideQPrintSettingsOutputNeNoneQPrintSettingsOutput OpcijeOptionsQPrintSettingsOutputPostavke izlazaOutput SettingsQPrintSettingsOutputStranice od Pages fromQPrintSettingsOutput`tampaj sve Print allQPrintSettingsOutput`tampaj raspon Print rangeQPrintSettingsOutputObrnutoReverseQPrintSettingsOutput Izbor SelectionQPrintSettingsOutputKratka ivica Short sideQPrintSettingsOutputdotoQPrintSettingsOutput &Ime:&Name: QPrintWidget...... QPrintWidgetFormularForm QPrintWidgetLokacija: Location: QPrintWidgetIzlazni &fajl: Output &file: QPrintWidgetS&vojstva P&roperties QPrintWidgetPregledPreview QPrintWidget`tampa Printer QPrintWidgetTip:Type: QPrintWidgetOdustaniCancelQProgressDialog OtvoriOpen QPushButton PopuniCheck QRadioButtonLokacijaLocationQScriptBreakpointsModel ObriaiDeleteQScriptBreakpointsWidgetNovoNewQScriptBreakpointsWidgetO isti konzolu Clear ConsoleQScriptDebuggerNastaviContinueQScriptDebugger<img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;Tra~i prelomljenoJ Search wrappedQScriptDebuggerCodeFinderWidget"Poklapaj veli inuCase SensitiveQScriptDebuggerCodeFinderWidgetZatvoriCloseQScriptDebuggerCodeFinderWidgetSledeeNextQScriptDebuggerCodeFinderWidgetPrethodnoPreviousQScriptDebuggerCodeFinderWidgetCele re i Whole wordsQScriptDebuggerCodeFinderWidgetImeNameQScriptDebuggerLocalsModelVrednostValueQScriptDebuggerLocalsModelNivoLevelQScriptDebuggerStackModelLokacijaLocationQScriptDebuggerStackModelImeNameQScriptDebuggerStackModelZatvoriCloseQScriptNewBreakpointWidgetDnoBottom QScrollBarLeva ivica Left edge QScrollBarLinija dole Line down QScrollBarLinija goreLine up QScrollBarStranica dole Page down QScrollBarStranica levo Page left QScrollBarStranica desno Page right QScrollBarStranica gorePage up QScrollBarPolo~ajPosition QScrollBarDesna ivica Right edge QScrollBarKlizaj dole Scroll down QScrollBarKlizaj ovde Scroll here QScrollBarKlizaj levo Scroll left QScrollBarKlizaj desno Scroll right QScrollBarKlizaj gore Scroll up QScrollBarVrhTop QScrollBar NazadBack QShortcut O istiClear QShortcutZatvoriClose QShortcutKopirajCopy QShortcut IseciCut QShortcut ObriaiDelete QShortcut NapredForward QShortcut PomoHelp QShortcut UmetniInsert QShortcutMeniMenu QShortcutNeNo QShortcut NalepiPaste QShortcut PauzaPause QShortcut`tampajPrint QShortcut Osve~iRefresh QShortcutU itaj ponovoReload QShortcutSa uvajSave QShortcutIzaberiSelect QShortcutZaustaviStop QShortcut AlatkeTools QShortcutDaYes QShortcutUveli ajZoom In QShortcut UmanjiZoom Out QShortcutStranica dole Page downQSliderStranica levo Page leftQSliderStranica desno Page rightQSliderStranica gorePage upQSliderPolo~ajPositionQSliderOdustaniCancelQSoftKeyManager GotovoDoneQSoftKeyManager IzaiExitQSoftKeyManager U reduOKQSoftKeyManager OpcijeOptionsQSoftKeyManagerIzaberiSelectQSoftKeyManager ManjeLessQSpinBoxViaeMoreQSpinBoxOdustaniCancelQSql ObriaiDeleteQSql UmetniInsertQSqlNeNoQSqlA~urirajUpdateQSqlDaYesQSql Nepoznata greaka Unknown error QSslSocket Nepoznata greaka Unknown error QStateMachine Nepoznata greaka Unknown errorQSymbianSocketEngineKlizaj levo Scroll LeftQTabBarKlizaj desno Scroll RightQTabBarBOperacija na soketu nije podr~ana$Operation on socket is not supported QTcpServer&Kopiraj&Copy QTextControl&Nalepi&Paste QTextControl&Ponovi&Redo QTextControl&Opozovi&Undo QTextControl,Kopiraj &lokaciju vezeCopy &Link Location QTextControl &IseciCu&t QTextControl ObriaiDelete QTextControlIzaberi sve Select All QTextControl OtvoriOpen QToolButtonPritisniPress QToolButton<Ova platforma ne podr~ava IPv6#This platform does not support IPv6 QUdpSocket PonoviRedo QUndoGroupPonovi %1Redo %1 QUndoGroupOpozoviUndo QUndoGroupOpozovi %1Undo %1 QUndoGroup<prazno> QUndoModel PonoviRedo QUndoStackPonovi %1Redo %1 QUndoStackOpozoviUndo QUndoStackOpozovi %1Undo %1 QUndoStack$%1 (%2x%3 piksela)%1 (%2x%3 pixels)QWebPageH%1 dana %2 sati %3 minuta %4 sekundi&%1 days %2 hours %3 minutes %4 secondsQWebPage8%1 sati %2 minuta %3 sekundi%1 hours %2 minutes %3 secondsQWebPage(%1 minuta %2 sekundi%1 minutes %2 secondsQWebPage%1 sekundi %1 secondsQWebPage%n fajl%n fajla%n fajlova %n file(s)QWebPageDodaj u re nikAdd To DictionaryQWebPagePoravnaj sleva Align LeftQWebPagePoravnaj zdesna Align RightQWebPagePodebljanBoldQWebPageDnoBottomQWebPageCentrirajCenterQWebPage Proveri pravopisCheck SpellingQWebPageIzaberi fajl Choose FileQWebPageKopirajCopyQWebPageKopiraj audio Copy AudioQWebPageKopiraj sliku Copy ImageQWebPage(Kopiraj adresu slikeCopy Image AddressQWebPageKopiraj vezu Copy LinkQWebPageKopiraj video Copy VideoQWebPage IseciCutQWebPagePodrazumevanDefaultQWebPageDetaljiDetailsQWebPageSmer DirectionQWebPageCio ekranEnter FullscreenQWebPageFontFontsQWebPageIdi nazadGo BackQWebPageIdi napred Go ForwardQWebPage6Sakrij pravopis i gramatikuHide Spelling and GrammarQWebPageZanemariIgnoreQWebPageZanemari Ignore Grammar context menu itemIgnoreQWebPage2Umetni simbole nabrajanjaInsert Bulleted ListQWebPage$Umetni numerisanjeInsert Numbered ListQWebPagePregledajInspectQWebPageKurzivanItalicQWebPage$Poravnaj obostranoJustifyQWebPageLeva ivica Left edgeQWebPageS leva na desno Left to RightQWebPageU itavam... Loading...QWebPage"Potra~i u re nikuLook Up In DictionaryQWebPage(Nedostaje priklju akMissing Plug-inQWebPage UtiaajMuteQWebPage"Fajl nije izabranNo file selectedQWebPageOtvori audio Open AudioQWebPageOtvori okvir Open FrameQWebPageOtvori sliku Open ImageQWebPageOtvori vezu Open LinkQWebPageOtvori video Open VideoQWebPage,Otvori u novom prozoruOpen in New WindowQWebPageKonturaOutlineQWebPageStranica dole Page downQWebPageStranica levo Page leftQWebPageStranica desno Page rightQWebPageStranica gorePage upQWebPage NalepiPasteQWebPagePauzirajPauseQWebPage PustiPlayQWebPageU itaj ponovoReloadQWebPageResetujResetQWebPageDesna ivica Right edgeQWebPageS desna na levo Right to LeftQWebPageSa uvaj sliku Save ImageQWebPageSa uvaj vezu... Save Link...QWebPageKlizaj dole Scroll downQWebPageKlizaj ovde Scroll hereQWebPageKlizaj levo Scroll leftQWebPageKlizaj desno Scroll rightQWebPageKlizaj gore Scroll upQWebPagePretra~i vebSearch The WebQWebPageIzaberi sve Select AllQWebPage8Prika~i pravopis i gramatikuShow Spelling and GrammarQWebPage Kliza SliderQWebPagePravopisSpellingQWebPageZaustaviStopQWebPagePrecrtan StrikethroughQWebPagePoaaljiSubmitQWebPagePoaaljiQSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPage Indeks SubscriptQWebPageEksponent SuperscriptQWebPageSmer tekstaText DirectionQWebPageVrhTopQWebPagePodvu en UnderlineQWebPageNepoznatoUnknownQWebPage$Veb Inspektor - %2Web Inspector - %2QWebPage`ta je ovo? What's This?QWhatsThisAction**QWidget&Zavrai&FinishQWizard &Pomo&HelpQWizard&Sledee&NextQWizard&Sledee >&Next >QWizard< &Nazad< &BackQWizardOdustaniCancelQWizardPodnesiCommitQWizardNastaviContinueQWizard GotovoDoneQWizardIdi nazadGo BackQWizard PomoHelpQWizard%1 - [%2] %1 - [%2] QWorkspace&Zatvori&Close QWorkspace&Pomeri&Move QWorkspace&Obnovi&Restore QWorkspace&Veli ina&Size QWorkspaceZatvoriClose QWorkspaceMa&ksimizuj Ma&ximize QWorkspaceMi&nimizuj Mi&nimize QWorkspaceMinimizujMinimize QWorkspaceOstani na &vrhu Stay on &Top QWorkspace StavkeItems QmlJSDebugger::LiveSelectionTool 0.125x0.125xQmlJSDebugger::QmlToolBar0.1x0.1xQmlJSDebugger::QmlToolBar 0.25x0.25xQmlJSDebugger::QmlToolBar0.5x0.5xQmlJSDebugger::QmlToolBar1x1xQmlJSDebugger::QmlToolBarBira boje Color PickerQmlJSDebugger::QmlToolBarIzaberiSelectQmlJSDebugger::QmlToolBar AlatkeToolsQmlJSDebugger::QmlToolBarUveli ajZoomQmlJSDebugger::QmlToolBarKopiraj boju Copy ColorQmlJSDebugger::ToolBarColorBoxUveli ajZoom InQmlJSDebugger::ZoomTool UmanjiZoom OutQmlJSDebugger::ZoomToolVrati na &100% Zoom to &100%QmlJSDebugger::ZoomTool ) , qupzilla-1.6.0/bin/locale/qt_sv.qm000066400000000000000000002004701226107126500170660ustar00rootroot0000000000000081}D,*i% %F30090q0t}0055 D< DI+,=,ɵn{(U BzMRqH-^<_p5z#Q%UT}*42CClCeiD"D1PM<aR?BfP hloR+Lw^u |{y^Wҋ2s2.> d@ygurd <"l)*-Sp/=N1$y5~O,< h\?N$Nkyn]{`3`  HF)f67f6p6s^Sci#=uocûE5E'qa{8AAQ%[yL47mJfMpM9EMEVw<wZ!eH)Ɣ*/e5;x$ByO$Zf`p cփu( *$$M(^ n,_2;y&H^/^*IxS.YMMYMVh^ i%sscvXw NVۊ0N,]]ԚIIIeI8IIjII YFiyVI&6ruDQuDYo,,i,,",J ɘe5$1fR fRH=NHc#PqTV9Vrʡ =e@$w%C :?"lKNˈMDRu]\A]bWk^y^{y^G%L3ǥܠ6+`t{y5rjQ%.OC-b5ƨeƨ7˾bҝz է?OfS~bH~bJ,o W!`+3//6 GM1LAUUfU}XZZZZC^ne &iRKiY\y;k}u}wI}w}wDgfttK..SP&Dt'tWty _ FnQʢ5ʢd5dndd dX59`UXBwa `z2>6SCU]DvKU| ar&tm}wZ }$ }$}$ ZXK<:*N /XYEKuTQi~5kEXU GbDŁgA i$x1 Yz*2d+U5Wz?5mLn'bC;ʴ5qAʴ5Ԅ߁DdF5-F5rTYI IGPAsB 5d }$o qeV ڤwr Em EB Ac AcI* 35 K!?D) bbБ b` b` i3$ latK lf | t# tH . ?o (U yq {T > d my K %'  b  )n */ 7uI =La B T^ ] `\ ` c( d e P eG f1O gnx k,m rD"t x| ~a # 9 I& I-+ I7, ; o( 2 J %p* ,Y ,B + ˔Kq P') P P5 W 68 :/ f  f C 4_ s x sE AAT: 9= m,l #-t 0N+ E9] L' Lu Mc\<( Sa^ Ve ]$3> f) f)C io> m` w H HBj $D .@1  i _ j#  J JF4 t. k̤ Ӈ  ̺K -DL k kף U)Y < 0  Q  X N xH[ ./" 7F' >T >Uq >V\ >[ >g) >h > > DT I.} RVI~ RV{ RV S.ɕ S YE [ j7oAk p/d . Bc  T2c TkZ T T d 4 ] SV )d 0 .2 .] .l$ . .V . a~ y s  t :bZ ʜ- +>0 0E ;ɾͻ Ptr Pt fe feU g iFC iG i] u w wl wՑ w} w}ǥ w} N WI ^t R X D t5r t5۬ s3 W ): HT)gT**'*٨/E)//E|.I_ZgXRu?[ Pa.9yvɅy$~[/SfB&{ӟ~ ݖy[yr; Q Eg"#$U%4r du sker p att du vill ta bort %1 "%2"?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialogAlla filer (*) All Files (*) Q3FileDialog Alla filer (*.*)All Files (*.*) Q3FileDialogAttribut Attributes Q3FileDialogTillbakaBack Q3FileDialog AvbrytCancel Q3FileDialog8Kopiera eller ta bort en filCopy or Move a File Q3FileDialogSkapa ny mappCreate New Folder Q3FileDialog DatumDate Q3FileDialogTa bort %1 Delete %1 Q3FileDialogDetaljvy Detail View Q3FileDialogKatalogDir Q3FileDialogKataloger Directories Q3FileDialogKatalog: Directory: Q3FileDialogFelError Q3FileDialogFilFile Q3FileDialogFil&namn: File &name: Q3FileDialogFil&typ: File &type: Q3FileDialogHitta katalogFind Directory Q3FileDialogOtillgnglig Inaccessible Q3FileDialog Listvy List View Q3FileDialogLeta &i: Look &in: Q3FileDialogNamnName Q3FileDialogNy mapp New Folder Q3FileDialogNy mapp %1 New Folder %1 Q3FileDialogNy mapp 1 New Folder 1 Q3FileDialog En katalog upptOne directory up Q3FileDialog ppnaOpen Q3FileDialog ppnaOpen  Q3FileDialog6Frhandsgranska filinnehllPreview File Contents Q3FileDialog<Frhandsgranska filinformationPreview File Info Q3FileDialogUppdat&eraR&eload Q3FileDialogSkrivskyddad Read-only Q3FileDialogLs-skriv Read-write Q3FileDialogLs: %1Read: %1 Q3FileDialogSpara somSave As Q3FileDialogVlj en katalogSelect a Directory Q3FileDialog"Visa &dolda filerShow &hidden files Q3FileDialogStorlekSize Q3FileDialogSorteraSort Q3FileDialog(Sortera efter &datum Sort by &Date Q3FileDialog&Sortera efter &namn Sort by &Name Q3FileDialog,Sortera efter &storlek Sort by &Size Q3FileDialogSpecialSpecial Q3FileDialog6Symbolisk lnk till katalogSymlink to Directory Q3FileDialog.Symbolisk lnk till filSymlink to File Q3FileDialog6Symbolisk lnk till specialSymlink to Special Q3FileDialogTypType Q3FileDialogLsskyddad Write-only Q3FileDialogSkriv: %1 Write: %1 Q3FileDialogkatalogen the directory Q3FileDialog filenthe file Q3FileDialog"symboliska lnken the symlink Q3FileDialog<Kunde inte skapa katalogen %1Could not create directory %1 Q3LocalFs(Kunde inte ppna %1Could not open %1 Q3LocalFs8Kunde inte lsa katalogen %1Could not read directory %1 Q3LocalFsXKunde inte ta bort filen eller katalogen %1%Could not remove file or directory %1 Q3LocalFsJKunde inte byta namn p %1 till %2Could not rename %1 to %2 Q3LocalFs4Kunde inte skriva till %1Could not write %1 Q3LocalFsAnpassa... Customize... Q3MainWindowRada uppLine up Q3MainWindow@tgrden stoppades av anvndarenOperation stopped by the userQ3NetworkProtocol AvbrytCancelQ3ProgressDialogVerkstllApply Q3TabDialog AvbrytCancel Q3TabDialogStandardvrdenDefaults Q3TabDialog HjlpHelp Q3TabDialogOKOK Q3TabDialog&Kopiera&Copy Q3TextEditKlistra &in&Paste Q3TextEdit&Gr om&Redo Q3TextEdit &ngra&Undo Q3TextEditTmClear Q3TextEditKlipp u&tCu&t Q3TextEditMarkera alla Select All Q3TextEdit StngClose Q3TitleBar Stnger fnstretCloses the window Q3TitleBar`Innehller kommandon fr att manipulera fnstret*Contains commands to manipulate the window Q3TitleBarVisar namnet p fnstret och innehller kontroller fr att manipulera detFDisplays the name of the window and contains controls to manipulate it Q3TitleBar4Gr fnstret till helskrmMakes the window full screen Q3TitleBarMaximeraMaximize Q3TitleBarMinimeraMinimize Q3TitleBar2Flyttar fnstret ur vgenMoves the window out of the way Q3TitleBarnterstller ett maximerat fnster tillbaka till normalt&Puts a maximized window back to normal Q3TitleBarLterstller ett minimerat till normaltPuts a minimized back to normal Q3TitleBarterstll nedt Restore down Q3TitleBarterstll uppt Restore up Q3TitleBar SystemSystem Q3TitleBar Mer...More... Q3ToolBar(oknt) (unknown) Q3UrlOperatorProtokollet \"%1\" har inte std fr att kopiera eller flytta filer eller katalogerIThe protocol `%1' does not support copying or moving files or directories Q3UrlOperatorxProtokollet \"%1\" har inte std fr att skapa nya kataloger;The protocol `%1' does not support creating new directories Q3UrlOperatorhProtokollet \"%1\" har inte std fr att hmta filer0The protocol `%1' does not support getting files Q3UrlOperatorpProtokollet \"%1\" har inte std fr att lista kataloger6The protocol `%1' does not support listing directories Q3UrlOperatorhProtokollet \"%1\" har inte std fr att lmna filer0The protocol `%1' does not support putting files Q3UrlOperatorProtokollet \"%1\" har inte std fr att ta bort filer eller kataloger@The protocol `%1' does not support removing files or directories Q3UrlOperatorProtokollet \"%1\" har inte std fr att byta namn p filer eller kataloger@The protocol `%1' does not support renaming files or directories Q3UrlOperator8Protokollet \"%\" stds inte"The protocol `%1' is not supported Q3UrlOperator&Avbryt&CancelQ3Wizard&Frdig&FinishQ3Wizard &Hjlp&HelpQ3Wizard&Nsta >&Next >Q3Wizard< Till&baka< &BackQ3Wizard(Anslutningen nekadesConnection refusedQAbstractSocketHTidsgrnsen fr anslutning verstegsConnection timed outQAbstractSocket(Vrden hittades inteHost not foundQAbstractSocket0Ntverket r inte nbartNetwork unreachableQAbstractSocket0Uttaget r inte anslutetSocket is not connectedQAbstractSocketHTidsgrns fr uttagstgrd verstegsSocket operation timed outQAbstractSocket&Stega uppt&Step upQAbstractSpinBoxStega &nedt Step &downQAbstractSpinBoxAktiveraActivate QApplicationDAktiverar programmets huvudfnster#Activates the program's main window QApplicationVBinren \"%1\" krver Qt %2, hittade Qt %3.,Executable '%1' requires Qt %2, found Qt %3. QApplication<Inkompatibelt Qt-biblioteksfelIncompatible Qt Library Error QApplicationLTRQT_LAYOUT_DIRECTION QApplication&Avbryt&Cancel QAxSelectCOM-&objekt: COM &Object: QAxSelectOKOK QAxSelect(Vlj ActiveX ControlSelect ActiveX Control QAxSelect KryssaCheck QCheckBox VxlaToggle QCheckBoxAvkryssaUncheck QCheckBox:&Lgg till i anpassade frger&Add to Custom Colors QColorDialog&Basfrger &Basic colors QColorDialog"&Anpassade frger&Custom colors QColorDialog &Grn:&Green: QColorDialog &Rd:&Red: QColorDialog&Mttnad:&Sat: QColorDialog&Ljushet:&Val: QColorDialogAlfa&kanal:A&lpha channel: QColorDialog Bl&:Bl&ue: QColorDialogNya&ns:Hu&e: QColorDialog StngClose QComboBox FalsktFalse QComboBox ppnaOpen QComboBoxSantTrue QComboBoxBKunde inte verkstlla transaktionUnable to commit transaction QDB2Driver$Kunde inte anslutaUnable to connect QDB2DriverJKunde inte rulla tillbaka transaktionUnable to rollback transaction QDB2DriverZKunde inte stlla in automatisk verkstllningUnable to set autocommit QDB2Driver2Kunde inte binda variabelUnable to bind variable QDB2Result2Kunde inte kra frgesatsUnable to execute statement QDB2Result.Kunde inte hmta frstaUnable to fetch first QDB2Result,Kunde inte hmta nstaUnable to fetch next QDB2Result4Kunde inte hmta posten %1Unable to fetch record %1 QDB2Result<Kunde inte frbereda frgesatsUnable to prepare statement QDB2ResultAMAM QDateTimeEditPMPM QDateTimeEditamam QDateTimeEditpmpm QDateTimeEditVad r det hr? What's This?QDialog&Avbryt&CancelQDialogButtonBox &Stng&CloseQDialogButtonBox&Nej&NoQDialogButtonBox&OK&OKQDialogButtonBox &Spara&SaveQDialogButtonBox&Ja&YesQDialogButtonBox AvbrytAbortQDialogButtonBoxVerkstllApplyQDialogButtonBox AvbrytCancelQDialogButtonBox StngCloseQDialogButtonBoxFrkastaDiscardQDialogButtonBoxSpara inte Don't SaveQDialogButtonBox HjlpHelpQDialogButtonBoxIgnoreraIgnoreQDialogButtonBoxN&ej till alla N&o to AllQDialogButtonBoxOKOKQDialogButtonBox ppnaOpenQDialogButtonBoxterstllResetQDialogButtonBox0terstll standardvrdenRestore DefaultsQDialogButtonBoxFrsk igenRetryQDialogButtonBox SparaSaveQDialogButtonBoxSpara allaSave AllQDialogButtonBoxJa till &alla Yes to &AllQDialogButtonBoxndringsdatum Date Modified QDirModelSortKind QDirModelNamnName QDirModelStorlekSize QDirModelTypType QDirModel StngClose QDockWidget MindreLessQDoubleSpinBoxMerMoreQDoubleSpinBox&OK&OK QErrorMessage6&Visa detta meddelande igen&Show this message again QErrorMessage,Felskningsmeddelande:Debug Message: QErrorMessagedesdigert fel: Fatal Error: QErrorMessageVarning:Warning: QErrorMessage%1 Katalogen hittades inte. Kontrollera att det korrekta katalognamnet angavs.K%1 Directory not found. Please verify the correct directory name was given. QFileDialog%1 Filen hittades inte. Kontrollera att det korrekta filnamnet angavs.A%1 File not found. Please verify the correct file name was given. QFileDialogJ%1 finns redan. Vill du erstta den?-%1 already exists. Do you want to replace it? QFileDialog&Ta bort&Delete QFileDialog &ppna&Open QFileDialog&Byt namn&Rename QFileDialog &Spara&Save QFileDialogd\"%1\" r skrivskyddad. Vill du ta bort den nd?9'%1' is write protected. Do you want to delete it anyway? QFileDialogAlla filer (*) All Files (*) QFileDialog Alla filer (*.*)All Files (*.*) QFileDialogTr du sker p att du vill ta bort \"%1\"?!Are sure you want to delete '%1'? QFileDialogTillbakaBack QFileDialog:Kunde inte ta bort katalogen.Could not delete directory. QFileDialogSkapa ny mappCreate New Folder QFileDialogDetaljerad vy Detail View QFileDialogKataloger Directories QFileDialogKatalog: Directory: QFileDialog EnhetDrive QFileDialogFilFile QFileDialogFil&namn: File &name: QFileDialogFiler av typen:Files of type: QFileDialogHitta katalogFind Directory QFileDialog FramtForward QFileDialog Listvy List View QFileDialogMin dator My Computer QFileDialogNy mapp New Folder QFileDialog ppnaOpen QFileDialogFrldrakatalogParent Directory QFileDialogSpara somSave As QFileDialog"Visa &dolda filerShow &hidden files QFileDialog OkntUnknown QFileDialogndringsdatum Date ModifiedQFileSystemModelSortKindQFileSystemModelMin dator My ComputerQFileSystemModelNamnNameQFileSystemModelStorlekSizeQFileSystemModelTypTypeQFileSystemModel&Typsnitt&Font QFontDialog&Storlek&Size QFontDialog&Understruken &Underline QFontDialogEffekterEffects QFontDialogT&ypsnittsstil Font st&yle QFontDialogTestSample QFontDialogVlj typsnitt Select Font QFontDialogGenomstru&ken Stri&keout QFontDialogSkr&ivsystemWr&iting System QFontDialogBByte av katalog misslyckades: %1Changing directory failed: %1QFtp(Ansluten till vrdenConnected to hostQFtp.Ansluten till vrden %1Connected to host %1QFtpPAnslutning till vrden misslyckades: %1Connecting to host failed: %1QFtp&Anslutningen stngdConnection closedQFtpLAnslutning vgrades fr dataanslutning&Connection refused for data connectionQFtpHAnslutningen till vrden %1 vgradesConnection refused to host %1QFtp:Anslutningen till %1 stngdesConnection to %1 closedQFtpPSkapandet av katalogen misslyckades: %1Creating directory failed: %1QFtpPNedladdningen av filen misslyckades: %1Downloading file failed: %1QFtp$Vrden %1 hittades Host %1 foundQFtp.Vrden %1 hittades inteHost %1 not foundQFtpVrden hittades Host foundQFtpNListning av katalogen misslyckades: %1Listing directory failed: %1QFtp8Inloggning misslyckades: %1Login failed: %1QFtpInte ansluten Not connectedQFtpTBorttagning av katalogen misslyckades: %1Removing directory failed: %1QFtpLBorttagning av filen misslyckades: %1Removing file failed: %1QFtpOknt fel Unknown errorQFtpPUppladdningen av filen misslyckades: %1Uploading file failed: %1QFtpOknt fel Unknown error QHostInfo(Vrden hittades inteHost not foundQHostInfoAgentOknd adresstypUnknown address typeQHostInfoAgentOknt fel Unknown errorQHostInfoAgent$Ansluten till vrdConnected to hostQHttp.Ansluten till vrden %1Connected to host %1QHttp&Anslutningen stngdConnection closedQHttp(Anslutningen nekadesConnection refusedQHttp:Anslutningen till %1 stngdesConnection to %1 closedQHttp2HTTP-begran misslyckadesHTTP request failedQHttp$Vrden %1 hittades Host %1 foundQHttp.Vrden %1 hittades inteHost %1 not foundQHttpVrden hittades Host foundQHttp2Ogiltig HTTP chunked bodyInvalid HTTP chunked bodyQHttp.Ogiltig HTTP-svarshuvudInvalid HTTP response headerQHttpLIngen server instlld att ansluta tillNo server set to connect toQHttpBegran avbrtsRequest abortedQHttpHServern stngde ovntat anslutningen%Server closed connection unexpectedlyQHttpOknt fel Unknown errorQHttp$Fel innehllslngdWrong content lengthQHttp:Kunde inte starta transaktionCould not start transaction QIBaseDriver4Fel vid ppning av databasError opening database QIBaseDriverBKunde inte verkstlla transaktionUnable to commit transaction QIBaseDriverJKunde inte rulla tillbaka transaktionUnable to rollback transaction QIBaseDriver:Kunde inte allokera frgesatsCould not allocate statement QIBaseResultNKunde inte beskriva inmatningsfrgesats"Could not describe input statement QIBaseResult:Kunde inte beskriva frgesatsCould not describe statement QIBaseResult6Kunde inte hmta nsta postCould not fetch next item QIBaseResult,Kunde inte hitta kedjaCould not find array QIBaseResult.Kunde inte f kedjedataCould not get array data QIBaseResultDKunde inte g frgesatsinformationCould not get query info QIBaseResultDKunde inte f frgesatsinformationCould not get statement info QIBaseResult<Kunde inte frbereda frgesatsCould not prepare statement QIBaseResult:Kunde inte starta transaktionCould not start transaction QIBaseResult6Kunde inte stnga frgesatsUnable to close statement QIBaseResultBKunde inte verkstlla transaktionUnable to commit transaction QIBaseResult*Kunde inte skapa BLOBUnable to create BLOB QIBaseResult2Kunde inte kra frgesatsUnable to execute query QIBaseResult*Kunde inte ppna BLOBUnable to open BLOB QIBaseResult(Kunde inte lsa BLOBUnable to read BLOB QIBaseResult,Kunde inte skriva BLOBUnable to write BLOB QIBaseResult>Inget ledigt utrymme p enhetenNo space left on device QIODevice:Ingen sdan fil eller katalogNo such file or directory QIODevicetkomst nekadPermission denied QIODevice*Fr mnga ppna filerToo many open files QIODeviceOknt fel Unknown error QIODevice0Mac OS X-inmatningsmetodMac OS X input method QInputContext.Windows-inmatningsmetodWindows input method QInputContextXIMXIM QInputContext&XIM-inmatningsmetodXIM input method QInputContextOknt fel Unknown errorQLibrary&Kopiera&Copy QLineEditKlistra &in&Paste QLineEdit&Gr om&Redo QLineEdit &ngra&Undo QLineEditKlipp &utCu&t QLineEditTa bortDelete QLineEditMarkera alla Select All QLineEdit<Kunde inte pbrja transaktionUnable to begin transaction QMYSQLDriverBKunde inte verkstlla transaktionUnable to commit transaction QMYSQLDriver$Kunde inte anslutaUnable to connect QMYSQLDriver:Kunde inte ppna databasen \"Unable to open database ' QMYSQLDriverJKunde inte rulla tillbaka transaktionUnable to rollback transaction QMYSQLDriver2Kunde inte binda utvrdenUnable to bind outvalues QMYSQLResult,Kunde inte binda vrdeUnable to bind value QMYSQLResult2Kunde inte kra frgesatsUnable to execute query QMYSQLResult2Kunde inte kra frgesatsUnable to execute statement QMYSQLResult*Kunde inte hmta dataUnable to fetch data QMYSQLResult<Kunde inte frbereda frgesatsUnable to prepare statement QMYSQLResult>Kunde inte terstlla frgesatsUnable to reset statement QMYSQLResult2Kunde inte lagra resultatUnable to store result QMYSQLResultPKunde inte lagra resultat frn frgesats!Unable to store statement results QMYSQLResult%1 - [%2] %1 - [%2] QMdiSubWindow &Stng&Close QMdiSubWindow&Flytta&Move QMdiSubWindowte&rstll&Restore QMdiSubWindow&Storlek&Size QMdiSubWindow StngClose QMdiSubWindow HjlpHelp QMdiSubWindowMa&ximera Ma&ximize QMdiSubWindowMaximeraMaximize QMdiSubWindowMenyMenu QMdiSubWindowMi&nimera Mi&nimize QMdiSubWindowMinimeraMinimize QMdiSubWindowterstll nedt Restore Down QMdiSubWindow&Stanna kvar vers&t Stay on &Top QMdiSubWindow StngCloseQMenuKrExecuteQMenu ppnaOpenQMenu Om QtAbout Qt QMessageBox HjlpHelp QMessageBox Dlj detaljer,,,Hide Details... QMessageBoxOKOK QMessageBox Visa detaljer...Show Details... QMessageBox(Vlj inmatningsmetod Select IMQMultiInputContextFVxlare fr flera inmatningsmetoderMultiple input method switcherQMultiInputContextPluginVxlare fr flera inmatningsmetoder som anvnder sammanhangsmenyn fr textwidgarMMultiple input method switcher that uses the context menu of the text widgetsQMultiInputContextPluginVEtt annat uttag lyssnar redan p samma port4Another socket is already listening on the same portQNativeSocketEngineFrsk att anvnda IPv6-uttag p en plattform som saknar IPv6-std=Attempt to use IPv6 socket on a platform with no IPv6 supportQNativeSocketEngine*Anslutningen vgradesConnection refusedQNativeSocketEngineHTidsgrnsen fr anslutning verstegsConnection timed outQNativeSocketEngineHDatagram fr fr stor fr att skickaDatagram was too large to sendQNativeSocketEngine(Vrden r inte nbarHost unreachableQNativeSocketEngine0Ogiltig uttagsbeskrivareInvalid socket descriptorQNativeSocketEngineNtverksfel Network errorQNativeSocketEngineLTidsgrns fr ntverkstgrd verstegsNetwork operation timed outQNativeSocketEngine0Ntverket r inte nbartNetwork unreachableQNativeSocketEngine(tgrd p icke-uttagOperation on non-socketQNativeSocketEngine Slut p resurserOut of resourcesQNativeSocketEnginetkomst nekadPermission deniedQNativeSocketEngine2Protokolltypen stds inteProtocol type not supportedQNativeSocketEngine8Adressen r inte tillgngligThe address is not availableQNativeSocketEngine&Adressen r skyddadThe address is protectedQNativeSocketEngine:Bindningsadress anvnds redan#The bound address is already in useQNativeSocketEngine@Fjrrvrden stngde anslutningen%The remote host closed the connectionQNativeSocketEngineNKunde inte initiera uttag fr broadcast%Unable to initialize broadcast socketQNativeSocketEngineTKunde inte initiera icke-blockerande uttag(Unable to initialize non-blocking socketQNativeSocketEngineBKunde inte ta emot ett meddelandeUnable to receive a messageQNativeSocketEngine@Kunde inte skicka ett meddelandeUnable to send a messageQNativeSocketEngine"Kunde inte skrivaUnable to writeQNativeSocketEngineOknt fel Unknown errorQNativeSocketEngine2Uttagstgrden stds inteUnsupported socket operationQNativeSocketEngine<Kunde inte pbrja transaktionUnable to begin transaction QOCIDriverBKunde inte verkstlla transaktionUnable to commit transaction QOCIDriver&Kunde inte logga inUnable to logon QOCIDriverJKunde inte rulla tillbaka transaktionUnable to rollback transaction QOCIDriver:Kunde inte allokera frgesatsUnable to alloc statement QOCIResultNKunde inte binda kolumn fr satskrning'Unable to bind column for batch execute QOCIResult,Kunde inte binda vrdeUnable to bind value QOCIResult2Kunde inte kra satsfrga!Unable to execute batch statement QOCIResult2Kunde inte kra frgesatsUnable to execute statement QOCIResult0Kunde inte g till nstaUnable to goto next QOCIResult<Kunde inte frbereda frgesatsUnable to prepare statement QOCIResultBKunde inte verkstlla transaktionUnable to commit transaction QODBCDriver$Kunde inte anslutaUnable to connect QODBCDriverKunde inte ansluta - Drivrutinen har inte std fr all ndvndig funktionalitetCUnable to connect - Driver doesn't support all needed functionality QODBCDriver\Kunde inte inaktivera automatisk verkstllningUnable to disable autocommit QODBCDriverXKunde inte aktivera automatisk verkstllningUnable to enable autocommit QODBCDriverJKunde inte rulla tillbaka transaktionUnable to rollback transaction QODBCDriverQODBCResult::reset: Kunde inte stlla in \"SQL_CURSOR_STATIC\" som frgesatsattribut. Kontrollera konfigurationen fr din ODBC-drivrutinyQODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResult2Kunde inte binda variabelUnable to bind variable QODBCResult2Kunde inte kra frgesatsUnable to execute statement QODBCResult.Kunde inte hmta frstaUnable to fetch first QODBCResult,Kunde inte hmta nstaUnable to fetch next QODBCResult<Kunde inte frbereda frgesatsUnable to prepare statement QODBCResultHomeHomeQObjectNamnNameQPPDOptionsModel VrdeValueQPPDOptionsModel<Kunde inte pbrja transaktionCould not begin transaction QPSQLDriverBKunde inte verkstlla transaktionCould not commit transaction QPSQLDriverJKunde inte rulla tillbaka transaktionCould not rollback transaction QPSQLDriver$Kunde inte anslutaUnable to connect QPSQLDriver,Kunde inte skapa frgaUnable to create query QPSQLResult<Kunde inte frbereda frgesatsUnable to prepare statement QPSQLResultLiggande LandscapeQPageSetupWidgetSidstorlek: Page size:QPageSetupWidgetPappersklla: Paper source:QPageSetupWidgetStendePortraitQPageSetupWidgetOknt fel Unknown error QPluginLoaderR%1 finns redan. Vill du skriva ver den?/%1 already exists. Do you want to overwrite it? QPrintDialog$A0 (841 x 1189 mm)A0 (841 x 1189 mm) QPrintDialog"A1 (594 x 841 mm)A1 (594 x 841 mm) QPrintDialog"A2 (420 x 594 mm)A2 (420 x 594 mm) QPrintDialog"A3 (297 x 420 mm)A3 (297 x 420 mm) QPrintDialogDA4 (210 x 297 mm, 8.26 x 11.7 tum)%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialog"A5 (148 x 210 mm)A5 (148 x 210 mm) QPrintDialog"A6 (105 x 148 mm)A6 (105 x 148 mm) QPrintDialog A7 (74 x 105 mm)A7 (74 x 105 mm) QPrintDialogA8 (52 x 74 mm)A8 (52 x 74 mm) QPrintDialogA9 (37 x 52 mm)A9 (37 x 52 mm) QPrintDialogAlias: %1 Aliases: %1 QPrintDialog&B0 (1000 x 1414 mm)B0 (1000 x 1414 mm) QPrintDialog$B1 (707 x 1000 mm)B1 (707 x 1000 mm) QPrintDialog B10 (31 x 44 mm)B10 (31 x 44 mm) QPrintDialog"B2 (500 x 707 mm)B2 (500 x 707 mm) QPrintDialog"B3 (353 x 500 mm)B3 (353 x 500 mm) QPrintDialog"B4 (250 x 353 mm)B4 (250 x 353 mm) QPrintDialogDB5 (176 x 250 mm, 6.93 x 9.84 tum)%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialog"B6 (125 x 176 mm)B6 (125 x 176 mm) QPrintDialog B7 (88 x 125 mm)B7 (88 x 125 mm) QPrintDialogB8 (62 x 88 mm)B8 (62 x 88 mm) QPrintDialogB9 (44 x 62 mm)B9 (44 x 62 mm) QPrintDialog$C5E (163 x 229 mm)C5E (163 x 229 mm) QPrintDialog$DLE (110 x 220 mm)DLE (110 x 220 mm) QPrintDialogLExecutive (7.5 x 10 tum, 191 x 254 mm))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialogfFilen %1 r inte skrivbar. Vlj ett annat filnamn.=File %1 is not writable. Please choose a different file name. QPrintDialog(Folio (210 x 330 mm)Folio (210 x 330 mm) QPrintDialog*Ledger (432 x 279 mm)Ledger (432 x 279 mm) QPrintDialogDLegal (8.5 x 14 tum, 216 x 356 mm)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialogFLetter (8.5 x 11 tum, 216 x 279 mm)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialogOKOK QPrintDialogSkriv utPrint QPrintDialog*Skriv ut till fil ...Print To File ... QPrintDialogSkriv ut alla Print all QPrintDialog$Skriv ut intervall Print range QPrintDialog,Tabloid (279 x 432 mm)Tabloid (279 x 432 mm) QPrintDialogJUS Common #10 Envelope (105 x 241 mm)%US Common #10 Envelope (105 x 241 mm) QPrintDialoglokalt anslutenlocally connected QPrintDialog okntunknown QPrintDialog StngCloseQPrintPreviewDialogLiggande LandscapeQPrintPreviewDialogStendePortraitQPrintPreviewDialogSorteraCollateQPrintSettingsOutput KopiorCopiesQPrintSettingsOutputSidor frn Pages fromQPrintSettingsOutputSkriv ut alla Print allQPrintSettingsOutput$Skriv ut intervall Print rangeQPrintSettingsOutputVal SelectionQPrintSettingsOutputtilltoQPrintSettingsOutputSkrivarePrinter QPrintWidget AvbrytCancelQProgressDialog ppnaOpen QPushButton KryssaCheck QRadioButton4felaktig teckenklasssyntaxbad char class syntaxQRegExp.felaktig seframtsyntaxbad lookahead syntaxQRegExp4felaktig upprepningssyntaxbad repetition syntaxQRegExp8inaktiverad funktion anvndsdisabled feature usedQRegExp*ogiltigt oktalt vrdeinvalid octal valueQRegExp$ndde intern grnsmet internal limitQRegExp2saknar vnster avgrnsaremissing left delimQRegExp&inga fel intrffadeno error occurredQRegExpovntat slutunexpected endQRegExp4Fel vid ppning av databasError to open databaseQSQLite2Driver<Kunde inte pbrja transaktionUnable to begin transactionQSQLite2DriverBKunde inte verkstlla transaktionUnable to commit transactionQSQLite2DriverJKunde inte rulla tillbaka transaktionUnable to rollback TransactionQSQLite2Driver2Kunde inte kra frgesatsUnable to execute statementQSQLite2Result2Kunde inte hmta resultatUnable to fetch resultsQSQLite2Result8Fel vid stngning av databasError closing database QSQLiteDriver4Fel vid ppning av databasError opening database QSQLiteDriver<Kunde inte pbrja transaktionUnable to begin transaction QSQLiteDriverBKunde inte verkstlla transaktionUnable to commit transaction QSQLiteDriverJKunde inte rulla tillbaka transaktionUnable to rollback transaction QSQLiteDriver6Parameterantal stmmer inteParameter count mismatch QSQLiteResult6Kunde inte binda parametrarUnable to bind parameters QSQLiteResult2Kunde inte kra frgesatsUnable to execute statement QSQLiteResult(Kunde inte hmta radUnable to fetch row QSQLiteResult>Kunde inte terstlla frgesatsUnable to reset statement QSQLiteResultNederkantBottom QScrollBarVnsterkant Left edge QScrollBarRad nedt Line down QScrollBarRada uppLine up QScrollBarSida nedt Page down QScrollBarSida vnster Page left QScrollBarSida hger Page right QScrollBarSida upptPage up QScrollBarPositionPosition QScrollBarHgerkant Right edge QScrollBarRulla nedt Scroll down QScrollBarRulla hr Scroll here QScrollBarRulla vnster Scroll left QScrollBarRulla hger Scroll right QScrollBarRulla uppt Scroll up QScrollBarverkantTop QScrollBar++ QShortcutAltAlt QShortcut BaktBack QShortcutBacksteg Backspace QShortcutBacktabBacktab QShortcutFrstrk bas Bass Boost QShortcutSnk bas Bass Down QShortcutHj basBass Up QShortcutRing uppCall QShortcutCaps Lock Caps Lock QShortcutCapsLockCapsLock QShortcutSammanhang1Context1 QShortcutSammanhang2Context2 QShortcutSammanhang3Context3 QShortcutSammanhang4Context4 QShortcutCtrlCtrl QShortcutDelDel QShortcut DeleteDelete QShortcutNedDown QShortcutEndEnd QShortcut EnterEnter QShortcutEscEsc QShortcut EscapeEscape QShortcutF%1F%1 QShortcutFavoriter Favorites QShortcutVndFlip QShortcut FramtForward QShortcutLgg pHangup QShortcut HjlpHelp QShortcutHomeHome QShortcutHemsida Home Page QShortcutInsIns QShortcut InsertInsert QShortcutStarta (0) Launch (0) QShortcutStarta (1) Launch (1) QShortcutStarta (2) Launch (2) QShortcutStarta (3) Launch (3) QShortcutStarta (4) Launch (4) QShortcutStarta (5) Launch (5) QShortcutStarta (6) Launch (6) QShortcutStarta (7) Launch (7) QShortcutStarta (8) Launch (8) QShortcutStarta (9) Launch (9) QShortcutStarta (A) Launch (A) QShortcutStarta (B) Launch (B) QShortcutStarta (C) Launch (C) QShortcutStarta (D) Launch (D) QShortcutStarta (E) Launch (E) QShortcutStarta (F) Launch (F) QShortcutStarta e-post Launch Mail QShortcutStarta media Launch Media QShortcutVnsterLeft QShortcutMedia nsta Media Next QShortcutMedia spela upp Media Play QShortcut Media fregendeMedia Previous QShortcutMedia spela in Media Record QShortcutMedia stopp Media Stop QShortcutMenyMenu QShortcutMetaMeta QShortcutNejNo QShortcutNum LockNum Lock QShortcutNumLockNumLock QShortcutNumber Lock Number Lock QShortcutppna urlOpen URL QShortcutPage Down Page Down QShortcutPage UpPage Up QShortcut PausePause QShortcut PgDownPgDown QShortcutPgUpPgUp QShortcut PrintPrint QShortcutPrint Screen Print Screen QShortcutUppdateraRefresh QShortcut ReturnReturn QShortcut HgerRight QShortcutScroll Lock Scroll Lock QShortcutScrollLock ScrollLock QShortcutSkSearch QShortcutVljSelect QShortcut ShiftShift QShortcutMellanslagSpace QShortcutAvvaktaStandby QShortcut StoppaStop QShortcut SysReqSysReq QShortcutSystem RequestSystem Request QShortcutTabTab QShortcutSnk diskant Treble Down QShortcutHj diskant Treble Up QShortcutUppUp QShortcutSnk volym Volume Down QShortcutVolym tyst Volume Mute QShortcutHj volym Volume Up QShortcutJaYes QShortcutSida nedt Page downQSliderSida vnster Page leftQSliderSida hger Page rightQSliderSida upptPage upQSliderPositionPositionQSliderLTidsgrns fr ntverkstgrd verstegsNetwork operation timed outQSocks5SocketEngine MindreLessQSpinBoxMerMoreQSpinBox AvbrytCancelQSql2Avbryt dina redigeringar?Cancel your edits?QSqlBekrftaConfirmQSqlTa bortDeleteQSql&Ta bort denna post?Delete this record?QSql InfogaInsertQSqlNejNoQSql&Spara redigeringar? Save edits?QSqlUppdateraUpdateQSqlJaYesQSql6Kunde inte ppna anslutningUnable to open connection QTDSDriver8Kunde inte anvnda databasenUnable to use database QTDSDriverRulla vnster Scroll LeftQTabBarRulla hger Scroll RightQTabBar&Kopiera&Copy QTextControlKlistra &in&Paste QTextControl&Gr om&Redo QTextControl &ngra&Undo QTextControl$Kopiera &lnkplatsCopy &Link Location QTextControlKlipp u&tCu&t QTextControlTa bortDelete QTextControlMarkera alla Select All QTextControl ppnaOpen QToolButton TryckPress QToolButtonHDenna plattform saknar std fr IPv6#This platform does not support IPv6 QUdpSocket Gr omRedo QUndoGroup ngraUndo QUndoGroup <tom> QUndoModel Gr omRedo QUndoStack ngraUndo QUndoStack:Infoga unicode-kontrolltecken Insert Unicode control characterQUnicodeControlCharacterMenu U+202A$LRE Start of left-to-right embeddingQUnicodeControlCharacterMenu U+200ELRM Left-to-right markQUnicodeControlCharacterMenu U+202D#LRO Start of left-to-right overrideQUnicodeControlCharacterMenu U+202CPDF Pop directional formattingQUnicodeControlCharacterMenu U+202B$RLE Start of right-to-left embeddingQUnicodeControlCharacterMenu U+200FRLM Right-to-left markQUnicodeControlCharacterMenu U+202E#RLO Start of right-to-left overrideQUnicodeControlCharacterMenu U+200DZWJ Zero width joinerQUnicodeControlCharacterMenu U+200CZWNJ Zero width non-joinerQUnicodeControlCharacterMenu U+200BZWSP Zero width spaceQUnicodeControlCharacterMenuNederkantBottomQWebPageIgnoreraIgnoreQWebPageIgnorera Ignore Grammar context menu itemIgnoreQWebPageVnsterkant Left edgeQWebPageSida nedt Page downQWebPageSida vnster Page leftQWebPageSida hger Page rightQWebPageSida upptPage upQWebPageterstllResetQWebPageHgerkant Right edgeQWebPageRulla nedt Scroll downQWebPageRulla hr Scroll hereQWebPageRulla vnster Scroll leftQWebPageRulla hger Scroll rightQWebPageRulla uppt Scroll upQWebPage StoppaStopQWebPageverkantTopQWebPage OkntUnknownQWebPageVad r det hr? What's This?QWhatsThisAction**QWidget&Frdig&FinishQWizard &Hjlp&HelpQWizard&Nsta >&Next >QWizard< Till&baka< &BackQWizard AvbrytCancelQWizard HjlpHelpQWizard%1 - [%2] %1 - [%2] QWorkspace &Stng&Close QWorkspace&Flytta&Move QWorkspacete&rstll&Restore QWorkspace&Storlek&Size QWorkspaceA&vskugga&Unshade QWorkspace StngClose QWorkspaceMa&ximera Ma&ximize QWorkspaceMi&nimera Mi&nimize QWorkspaceMinimeraMinimize QWorkspaceterstll nedt Restore Down QWorkspaceSkugg&aSh&ade QWorkspace&Stanna kvar vers&t Stay on &Top QWorkspacekodningsdeklarering eller fristende deklarering frvntades vid lsning av XML-deklareringenYencoding declaration or standalone declaration expected while reading the XML declarationQXmlXfel i textdeklareringen av en extern entitet3error in the text declaration of an external entityQXmlPfel intrffade vid tolkning av kommentar$error occurred while parsing commentQXmlNfel intrffade vid tolkning av innehll$error occurred while parsing contentQXmljfel intrffade vid tolkning av dokumenttypsdefinition5error occurred while parsing document type definitionQXmlLfel intrffade vid tolkning av element$error occurred while parsing elementQXmlNfel intrffade vid tolkning av referens&error occurred while parsing referenceQXml2fel utlstes av konsumenterror triggered by consumerQXmlpextern tolkad allmn entitetsreferens tillts inte i DTD;external parsed general entity reference not allowed in DTDQXmlextern tolkad allmn entitetsreferens tillts inte i attributvrdeGexternal parsed general entity reference not allowed in attribute valueQXmlbintern allmn entitetsreferens tillts inte i DTD4internal general entity reference not allowed in DTDQXmlPogiltigt namn fr behandlingsinstruktion'invalid name for processing instructionQXml&bokstav frvntadesletter is expectedQXmlBfler n en dokumenttypsdefinition&more than one document type definitionQXml&inga fel intrffadeno error occurredQXml&rekursiva entiteterrecursive entitiesQXmlfristende deklarering frvntades vid lsning av XML-deklareringAstandalone declaration expected while reading the XML declarationQXml"tagg stmmer inte tag mismatchQXmlovntat teckenunexpected characterQXml*ovntat slut p filenunexpected end of fileQXmlRotolkad entitetsreferens i fel sammanhang*unparsed entity reference in wrong contextQXmlhversion frvntades vid lsning av XML-deklareringen2version expected while reading the XML declarationQXmlHfel vrde fr fristende deklarering&wrong value for standalone declarationQXmlqupzilla-1.6.0/bin/locale/qt_uk.qm000066400000000000000000006420211226107126500170570ustar00rootroot00000000000000RT~Zr4[`[`]\9v\F_:_H~1E5O11k79 j >$s$[p,5y5y JLP~8gi9%EEE+EEe%9% ֍ ֍һ֍2֍T5'0H0[0a0xN00c5C  DH DH+$",,F,^ISo=QHt3A!npvSĂC$W(2(4(4(4%(5(54*yI9*yP*y}*T*0V*0Ş+F`+F+L+f4+f +z`+I+P+~+za3+5 ++++`+u+įI+įP+į~W+as384r7d;=2@BjHC:C:tF0iVFn4SFn4GH/Hw9H:Hw9H'I'@I[I^I߹J+JJ+tJ6JJ6bJ69J6J6`J6dJ6J6IJ64J6J6JcbӉJKQjK L _LZL2LbLb9LM5[MbMeMM?NNBO|b4PFEMlPFEbOPFEɶPCQ QVRR|&R̼R3S.S8^T2T)}Tʴ/TDU?^U|lU}yV1ƠV13Vl<VV+V4V,!VVVE,W[AWWTWTWT-X9.XxXX˙X.YYYc Y1YZ+2 Zg2HZkZZ[=[f36g[f3\\]4L\]4@\]4o\*\\\8.atgc[t>v |^|^t|AR8vv R*Աf%G)C:Md˳4L+5i.46CdIAE%[CkgR)I&~É}y)XtJDD%)'E:ɵnfeɵn;ɵnA/ɵnXɵnɵnɵn!ɵnLɵnfuX(E B~~ Bn*-MG1lNٗ(a+qpT ۔  > H^qBI8,*ɤS5<֓p{5~$5nx#Q%UTT%UTq(Ŏ*4-ctc-cty235v ?t,A<CA/CCe@D"@D1#HZ$MD`Sža;,?aR?e;weefP<<g CjRrlljl2l2MoR\oru&{v̲yv̲zuw^xxB|{yicGI24W2c[2ʁ%{'.#RAiMl= dy~,Tɷԃʯeؘ8%FhurBtt.70TSIQp  YdA $E!g)"l%%&Xd)Z-%/=N7C/Xt01$}1$m5~!:s< F<34>?2?NFRMNkyUi]C`h@`jtYlg&lyzGKl}oi#vtydivty.$1hl%ڑ":J: )DS {-6|6_6S[^%IqPJ}RT=yN)~.F|0EjEB{{=8A8τcnA#>w[yLQtHnǓ'h\4jUm`M_MǑE TE*^nwGDw16e% II ڎ`A< 4:XU!e^&)8*/e8+p,.R,NOY1E;{;l7; iB?4PByFNjuOdZf\cAZ\`^cփ&*fg&4 jCqJtu@Qu(}kaD@}S ~g"_yGQz$K% $$-'f(9Au'_ʁr)^ԾK1<L$֊bns nQ5[K,<8q;yω"aI*$&AK0 n&H<{&k},n./< 4r>4!5CIxS_KLMO7R>XE% YM YM*dKh^P iTnnwnPsscz+w x4"%ۊa;T,N]]v]&չI7hIGIHuIIIIDIFI^( MZQ I!Y!ai!y!  Y  I#q"i""#/"'uD$uD.Dƒo,2L,Q",;,,G@,2]N>V_>hq.5ɘe˓5$>+ 4389fR;fR G>* <U89 GNuNy zQ~"cR"SPq':VVfR|T2eGI   Q8 K6mC:%9bZ lE"oI$$؁%CPA&~)2J+Ó,535$8% 8%;;_?"ZY?>u?%FuIKN{K-M DRyU5V|]:5]@Segg^+2k,Ny^L{yw?Ji|5t.R5tRF.:>8 /*G%nn=صǥ21+1H+E+D`t5A{yԍD;R/xArv9\4usO6N%_/\#:J7C-Gd|5*zU`NC^/qƨ3ƨHQ˾@hhҝz;JҰhل iLէ?Go؊=؊=ϙZ>i}9zܓ7ߺサffwFtMP롥S`+!Ntmm^!DD $ f  ۈ$]~b ~bwo=5MHtp!>%?6'+u,+3//K/14~6 08i<]!? 2ĸADܴGGbbLAU|Or=PѧqQ-RCSnUsUDwUUqTUT9(XYĻ ZMZZZ[@[]k* ^nҿ_P;_P_p6`u.d`d`Ue;i%i/+kQ>m?$oNLx y;Yf{L{E}u+}wR}w<}w}ͣ1lϪEr'BvttwYd%_..=/3gPiU>hZuf5D΄YS^ntWDt+Nt|tm(pl_ *a+KUsxtF\ʢiʢʬƴHdjmd]d$ddH059=эi4f+5lHNS6㵾L uHk;yUUxIdLTeBhwK,%-\ #x >R w!*+1W,D</26&/7D:9 :%T?;CU]MCU6D՘E[Gl J0FK>KU|\\D5]]/tarldn8Wp&t>cy'|(^_||!}wZ}$}$<}$~94DɜϗWҒZڏ~% D4;{~eB9;q_diK<f+:·cu·6·yS׳֎ /-pfCgue t3ŬUXE|>ȥ!NUu7%5ThI}i~5Wg{bi9% w##%%%d!'.H5kEn=e=={F?R?W@TCtIVEf^NP(PtV%'V%(XU  `2awbD4bGJfdgAE,hIi$Qx1 >z*2 |QRVd^eU cM(.zWc.14eC5eQEedr_Xm^enF.b†5yiCzq~URʴ5`Mʴ5:ʶbϡ$ZDы#ßDï^ 7tԄ3۔#D̠'NOdAXF5M+F5aYp64Ns&D *I:I As6 i }$^e qe)T ڤ{A ڤk ڥi dCv EZ E Ac? Ac ? *ʒ 35- 35w  >i : U k] B [  nV`  V? $ u"3  Y+ Y>b 0ߌ KK@ P 팤. E %', 3M #  C G = qd  D2  }p 9h o Ąȃ )H */ .>V 7um ;L > am v" :` f 6l f  4=k . ' s9< s J ~ AA& 9 1 9_^ 05 rF ё m,B 5 ݡ !o #-t_ #-tu ' J 0N\ 5 :  AI= CU E9?m I L? L LV L Mc\ O3 P..oG S?R VC X\ Z) \Ot ]$g `p cG f)6 f) f=Z io>L j l#/\ lu6 m`O w> yr }Q;, z H4 HC G Z0  С $ .@7~ F( if <N 3  J QV i  zdH% s % J9p J } ߂  t. k| ӇJ  Mv H N>K; /7 ̺l 9Ne Y -D] .OI x ۷ϵ k k U)/  T>( <N d 8 zy 0*6  $r0X y z+  $b  . I )G %% X * s xH4 Wd I i !py $ %6b )Ε .` 2 7FO <r0 >& >' >) >3 >E+ >O > > >a! >c >x ?t| DT1 G& I[~ I_g K= K] LI Mb2y P@ QT RVa RV RV˼ Rn S.F SG S Yȧ Yc [4 hۮ j7o m( p`h sL , uK BA 2 Tf TY T T  B i  5V E H ,&j ,/= S )d )dv TU  .g4 .; .Y .S . . . .g  d C a; as3 P yM p x. C  ɾd$" ɾd% e X ̈́^r ҂ Ӵy ` >V % ux t| d3 | [ b"F F Xt 9 ){ t C aL\  :b0\ R ʜ^ f f f 3iy    $P g~ #$ #=۬ %n~ (I$=a (N +>a 0E 64 ;ɾ~ Cn' Fg K9x Ptb Ptt R"y S,5 cs fe fe g M g hQ$, iFCf i 4 i jN jӮW l"c m9k m9 n u+` uK v& v{ 2 ws w< w w} w}Yt u[TYK5.* ggTY'!ah&-$*W*++{/EXf/E/Ep+4Qt#7SI_0KOOTS54XRu[ a.a%!gc?-i#4nyGxvɅCy$y?.\HO~3%(e44SDN(^u5$ǗDx:?Z5D%BUMr5L3Ӯ`mӮ`Ӯ`A|ovrQݖmUވ[y4rFjPj| 8  8 clD݅#"#"#h$UB*%4 %4'ue,-[s-v0i)%0&1c1cp2wT%kDPF74NHAJd2aJKBL$.Rd[{(c5c5cg3xiC?iTl7pqiiwv)yCQq{`_{~a#~5/6$0&&DE`dr$t rYC`Y[_3)ͣ,(8 tַ>b N7 E"~gd~rXr}#-1`?kyx֠#Uڔ.V&"8'T-445ЪBPbt2]=X!fd̩U5i0:@8B8 2:;04:C Close Tab CloseButton<=5 287=0G5=>> Debugger::JSAgentWatchData$[0A82 4>268=8 %1][Array of length %1]Debugger::JSAgentWatchData&5A?@026=O ?><8;:0! Fake error! FakeReply 5?@028;L=89 URL Invalid URL FakeReply @> %1About %1MAC_APPLICATION_MENU!E>20B8 %1Hide %1MAC_APPLICATION_MENU!E>20B8 V=HV Hide OthersMAC_APPLICATION_MENU0;0HBC20==O...Preferences...MAC_APPLICATION_MENU89B8 7 %1Quit %1MAC_APPLICATION_MENU !;C618ServicesMAC_APPLICATION_MENU>:070B8 2AVShow AllMAC_APPLICATION_MENU>ABC?=VABL AccessibilityPhonon::!?V;:C20==O CommunicationPhonon::3@8GamesPhonon:: C78:0MusicPhonon::!?>2VI5==O NotificationsPhonon:: V45>VideoPhonon::<html>5@5<8:0==O =0 ?@8AB@V9 2V4B2>@5==O 72C:C <b>%1</b><br/>, O:89 <0T 28I89 ?@V>@8B5B G8 A?5FV0;L=> =0;0HB>20=89 4;O FL>3> ?>B>:C.</html>Switching to the audio playback device %1
which has higher preference or is specifically configured for this stream.Phonon::AudioOutput<html>5@5<8:0==O =0 ?@8AB@V9 2V4B2>@5==O 72C:C <b>%1</b><br/>, O:89 AB02 4>ABC?=89 B0 <0T 28I89 ?@V>@8B5B.</html>xSwitching to the audio playback device %1
which just became available and has higher preference.Phonon::AudioOutput<html>@8AB@V9 2V4B2>@5==O 72C:C <b>%1</b> =5 ?@0FNT.<br/>C45 28:>@8AB>2C20B8AL <b>%2</b>.</html>^The audio playback device %1 does not work.
Falling back to %2.Phonon::AudioOutput6>25@=5==O 4> ?@8AB@>N %1'Revert back to device '%1'Phonon::AudioOutput>?5@5465==O: !E>65, I> C 20A =5 2AB0=>2;5=> 107>2V 4>40B:8 Gstreamer. #AO ?V4B@8<:0 72C:C B0 2V45> 1C;0 28<:=5=0~Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabledPhonon::Gstreamer::Backend>?5@5465==O: !E>65, I> C 20A =5 2AB0=>2;5=> ?0:C=>: gstreamer0.10-plugins-good. 5O:V <>6;82>ABV 2V45> 1C;8 28<:=5=V.Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled.Phonon::Gstreamer::BackendV4ACB=V9 =5>1EV4=89 :>45:. 0< ?>B@V1=> 2AB0=>28B8 =0ABC?=V :>45:8 4;O 2V4B2>@5==O FL>3> 2<VABC: %0`A required codec is missing. You need to install the following codec(s) to play this content: %0Phonon::Gstreamer::MediaObject5<>6;82> ?>G0B8 2V4B2>@5==O. 5@52V@B5 20H5 2AB0=>2;5==O GStreamer B0 ?5@5:>=09B5AL, I> C 20A 2AB0=>2;5=> libgstreamer-plugins-base.wCannot start playback. Check your GStreamer installation and make sure you have libgstreamer-plugins-base installed.Phonon::Gstreamer::MediaObjectT5 240;>AO 45:>4C20B8 465@5;> <54V0-40=8E.Could not decode media source.Phonon::Gstreamer::MediaObjectL5 240;>AO 7=09B8 465@5;> <54V0-40=8E.Could not locate media source.Phonon::Gstreamer::MediaObject5 240;>AO 2V4:@8B8 72C:>289 ?@8AB@V9. @8AB@V9 265 28:>@8AB>2CTBLAO.:Could not open audio device. The device is already in use.Phonon::Gstreamer::MediaObjectP5 240;>AO 2V4:@8B8 465@5;> <54V0-40=8E.Could not open media source.Phonon::Gstreamer::MediaObject25?@028;L=89 B8? 465@5;0.Invalid source type.Phonon::Gstreamer::MediaObject`V4ACB=V9 4>?><V6=89 A:@8?B 2AB0=>2;5==O :>45:0.&Missing codec helper script assistant.Phonon::Gstreamer::MediaObjectH1V9 2AB0=>2;5==O 4>40B:C :>45:0: %0.Plugin codec installation failed for codec: %0Phonon::Gstreamer::MediaObject">ABC? 701>@>=5=> Access denied Phonon::MMF65 VA=CTAlready exists Phonon::MMF2C:>289 28EV4 Audio Output Phonon::MMF^5 240;>AO 2V4B2>@8B8 0C4V>- G8 2V45>-:><?>=5=B-Audio or video components could not be played Phonon::MMF.><8;:0 282545==O 72C:CAudio output error Phonon::MMF*5 240;>AO 7 T4=0B8ALCould not connect Phonon::MMF><8;:0 DRM DRM error Phonon::MMF ><8;:0 45:>45@0 Decoder error Phonon::MMFV4 T4=0=> Disconnected Phonon::MMF 8:>@8AB>2CTBLAOIn use Phonon::MMF<54>AB0B=O ?@>?CA:=0 740B=VABLInsufficient bandwidth Phonon::MMF 5?@028;L=89 URL Invalid URL Phonon::MMF*5?@028;L=89 ?@>B>:>;Invalid protocol Phonon::MMF2><8;:0 3@C?>2>W ?5@540GVMulticast error Phonon::MMF8><C=V:0FV9=0 ?><8;:0 <5@56VNetwork communication error Phonon::MMF"5@560 =54>ABC?=0Network unavailable Phonon::MMF5<0T ?><8;:8No error Phonon::MMF5 7=0945=> Not found Phonon::MMF5 3>B>2> Not ready Phonon::MMF 5 ?V4B@8<CTBLAO Not supported Phonon::MMF&54>AB0B=L> ?0< OBV Out of memory Phonon::MMF5@5?>2=5==OOverflow Phonon::MMF (;OE =5 7=0945=>Path not found Phonon::MMF">ABC? 701>@>=5=>Permission denied Phonon::MMF,><8;:0 ?@>:AV-A5@25@0Proxy server error Phonon::MMF<@>:AV-A5@25@ =5 ?V4B@8<CTBLAOProxy server not supported Phonon::MMF$!?>2VI5==O A5@25@0 Server alert Phonon::MMFD>B>:>20 ?5@540G0 =5 ?V4B@8<CTBLAOStreaming not supported Phonon::MMF0@8AB@V9 282545==O 72C:CThe audio output device Phonon::MMF54>AB0G0 Underflow Phonon::MMF*52V4><0 ?><8;:0 (%1)Unknown error (%1) Phonon::MMF.><8;:0 282545==O 2V45>Video output error Phonon::MMF&><8;:0 720=B065==ODownload error Phonon::MMF::AbstractMediaPlayer*><8;:0 2V4:@8BBO URLError opening URL Phonon::MMF::AbstractMediaPlayer.><8;:0 2V4:@8BBO D09;CError opening file Phonon::MMF::AbstractMediaPlayer2><8;:0 2V4:@8BBO @5AC@ACError opening resource Phonon::MMF::AbstractMediaPlayerZ><8;:0 2V4:@8BBO 465@5;0: @5AC@A =5 2V4:@8B>)Error opening source: resource not opened Phonon::MMF::AbstractMediaPlayer.1V9 7020=B065==O :;V?CLoading clip failed Phonon::MMF::AbstractMediaPlayer25 3>B>289 4> 2V4B2>@5==ONot ready to play Phonon::MMF::AbstractMediaPlayer*V4B2>@5==O 7025@H5=5Playback complete Phonon::MMF::AbstractMediaPlayer41V9 2AB0=>2;5==O 3CG=>ABVSetting volume failed Phonon::MMF::AbstractMediaPlayer,1V9 >B@8<0==O ?>78FVWGetting position failed Phonon::MMF::AbstractVideoPlayer(1V9 2V4:@8BBO :;V?COpening clip failed Phonon::MMF::AbstractVideoPlayer1V9 ?0C78 Pause failed Phonon::MMF::AbstractVideoPlayer1V9 ?@>:@CB:8 Seek failed Phonon::MMF::AbstractVideoPlayer %1 F%1 HzPhonon::MMF::AudioEqualizer,1V9 >B@8<0==O ?>78FVWGetting position failedPhonon::MMF::AudioPlayer4><8;:0 2V4>1@065==O 2V45>Video display errorPhonon::MMF::DsaVideoPlayer#2V<:=5=>EnabledPhonon::MMF::EffectFactory:>5DVFVT=B ?>A;01;5==O ' (%)Decay HF ratio (%) Phonon::MMF::EnvironmentalReverb('0A ?>A;01;5==O (<A)Decay time (ms) Phonon::MMF::EnvironmentalReverb)V;L=VABL (%) Density (%) Phonon::MMF::EnvironmentalReverb >7AVN20==O (%) Diffusion (%) Phonon::MMF::EnvironmentalReverb,0B@8<:0 2V418BBO (<A)Reflections delay (ms) Phonon::MMF::EnvironmentalReverb( V25=L 2V418BBO (<)Reflections level (mB) Phonon::MMF::EnvironmentalReverb$0B@8<:0 ;C=8 (<A)Reverb delay (ms) Phonon::MMF::EnvironmentalReverb  V25=L ;C=8 (<)Reverb level (mB) Phonon::MMF::EnvironmentalReverb$ V25=L ' 2V418BBO Room HF level Phonon::MMF::EnvironmentalReverb( V25=L 2V418BBO (<)Room level (mB) Phonon::MMF::EnvironmentalReverb~><8;:0 2V4:@8BBO 465@5;0: =5 240;>AO 287=0G8B8 B8? <54V0-40=8E8Error opening source: media type could not be determinedPhonon::MMF::MediaObjectV><8;:0 2V4:@8BBO 465@5;0: @5AC@A AB8A=CB89,Error opening source: resource is compressedPhonon::MMF::MediaObject\><8;:0 2V4:@8BBO 465@5;0: @5AC@A =5?@028;L=89(Error opening source: resource not validPhonon::MMF::MediaObject^><8;:0 2V4:@8BBO 465@5;0: B8? =5 ?V4B@8<CTBLAO(Error opening source: type not supportedPhonon::MMF::MediaObjectV1V9 2AB0=>2;5==O B>G:8 4>ABC?C 4> =B5@=5BFailed to set requested IAPPhonon::MMF::MediaObject V25=L (%) Level (%)Phonon::MMF::StereoWidening4><8;:0 2V4>1@065==O 2V45>Video display errorPhonon::MMF::SurfaceVideoPlayer57 72C:CMutedPhonon::VolumeSlider8:>@8AB>2C9B5 F59 ?>27C=>: 4;O @53C;N20==O 3CG=>ABV. @09=O ;V20 ?>78FVO - 0%, :@09=O ?@020 - %1%WUse this slider to adjust the volume. The leftmost position is 0%. The rightmost is %1%Phonon::VolumeSliderCG=VABL: %1% Volume: %1%Phonon::VolumeSlider&%1, %2 =5 287=0G5=>%1, %2 not definedQ3Accel:5>4=>7=0G=89 %1 =5 >1@>1;5=>Ambiguous %1 not handledQ3Accel840;8B8Delete Q3DataTable %81=>False Q3DataTableAB028B8Insert Q3DataTableAB8==>True Q3DataTable=>28B8Update Q3DataTablef%1 $09; =5 7=0945=>. 5@52V@B5 H;OE B0 =072C D09;C.+%1 File not found. Check path and filename. Q3FileDialog8&40;8B8&Delete Q3FileDialog&V&No Q3FileDialog&OK&OK Q3FileDialog&V4:@8B8&Open Q3FileDialog&5@59<5=C20B8&Rename Q3FileDialog&15@53B8&Save Q3FileDialog&57 A>@BC20==O &Unsorted Q3FileDialog"&0:&Yes Q3FileDialogd<qt>8 2?52=5=V, I> 1060TB5 2840;8B8 %1 "%2"?</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialog#AV D09;8 (*) All Files (*) Q3FileDialog#AV D09;8 (*)All Files (*.*) Q3FileDialogB@81CB8 Attributes Q3FileDialog 0704Back Q3FileDialog!:0AC20B8Cancel Q3FileDialog<>?VN20B8 01> ?5@5<VAB8B8 D09;Copy or Move a File Q3FileDialog$!B2>@8B8 =>2C B5:CCreate New Folder Q3FileDialog0B0Date Q3FileDialog840;8B8 %1 Delete %1 Q3FileDialog5B0;L=> Detail View Q3FileDialog"5:0Dir Q3FileDialog"5:8 Directories Q3FileDialog "5:0: Directory: Q3FileDialog><8;:0Error Q3FileDialog$09;File Q3FileDialog&<'O D09;C: File &name: Q3FileDialog&"8? D09;C: File &type: Q3FileDialog>HC: B5:8Find Directory Q3FileDialog54>ABC?=89 Inaccessible Q3FileDialog!?8A:>< List View Q3FileDialog5@5&3;O4 2: Look &in: Q3FileDialog<'OName Q3FileDialog>20 B5:0 New Folder Q3FileDialog>20 B5:0 %1 New Folder %1 Q3FileDialog>20 B5:0 1 New Folder 1 Q3FileDialog0 B5:C 28I5One directory up Q3FileDialogV4:@8B8Open Q3FileDialogV4:@8B8 Open  Q3FileDialog@>?5@54=V9 ?5@53;O4 7<VABC D09;CPreview File Contents Q3FileDialogN>?5@54=V9 ?5@53;O4 V=D>@<0FVW ?@> D09;Preview File Info Q3FileDialog&=>28B8R&eload Q3FileDialog8H5 G8B0==O Read-only Q3FileDialog '8B0==O B0 70?8A Read-write Q3FileDialog'8B0==O: %1Read: %1 Q3FileDialog15@53B8 O:Save As Q3FileDialog15@VBL B5:CSelect a Directory Q3FileDialog6>:07C20B8 ?@8&E>20=V D09;8Show &hidden files Q3FileDialog  >7<V@Size Q3FileDialog!>@BC20B8Sort Q3FileDialog$!>@BC20B8 ?> &40BV Sort by &Date Q3FileDialog&!>@BC20B8 ?> &V<5=V Sort by &Name Q3FileDialog*!>@BC20B8 ?> &@>7<V@C Sort by &Size Q3FileDialog!?5FD09;Special Q3FileDialog6!8<2>;L=5 ?>A8;0==O =0 B5:CSymlink to Directory Q3FileDialog6!8<2>;L=5 ?>A8;0==O =0 D09;Symlink to File Q3FileDialog>!8<2>;L=5 ?>A8;0==O =0 A?5FD09;Symlink to Special Q3FileDialog"8?Type Q3FileDialog8H5 70?8A Write-only Q3FileDialog0?8A: %1 Write: %1 Q3FileDialogB5:0 the directory Q3FileDialogD09;the file Q3FileDialog&A8<2>;L=5 ?>A8;0==O the symlink Q3FileDialog65 240;>AO AB2>@8B8 B5:C %1Could not create directory %1 Q3LocalFs,5 240;>AO 2V4:@8B8 %1Could not open %1 Q3LocalFs85 240;>AO ?@>G8B0B8 B5:C %1Could not read directory %1 Q3LocalFsH5 240;>AO 2840;8B8 D09; 01> B5:C %1%Could not remove file or directory %1 Q3LocalFs@5 240;>AO ?5@59<5=C20B8 %1 2 %2Could not rename %1 to %2 Q3LocalFs,5 240;>AO 70?8A0B8 %1Could not write %1 Q3LocalFs0;0HBC20B8... Customize... Q3MainWindow8@V2=OB8Line up Q3MainWindow<?5@0FVO 7C?8=5=0 :>@8ABC20G5<Operation stopped by the userQ3NetworkProtocol!:0AC20B8CancelQ3ProgressDialog0AB>AC20B8Apply Q3TabDialog!:0AC20B8Cancel Q3TabDialog "8?>2>Defaults Q3TabDialog>2V4:0Help Q3TabDialogOKOK Q3TabDialog&>?VN20B8&Copy Q3TextEdit&AB028B8&Paste Q3TextEdit&>2B>@8B8&Redo Q3TextEdit&>25@=CB8&Undo Q3TextEditG8AB8B8Clear Q3TextEdit8&@V70B8Cu&t Q3TextEdit84V;8B8 2A5 Select All Q3TextEdit0:@8B8Close Q3TitleBar0:@820T 2V:=>Closes the window Q3TitleBarPVAB8BL :><0=48 4;O <0=V?C;OFV9 7 2V:=><*Contains commands to manipulate the window Q3TitleBarx>:07CT =072C 2V:=0 B0 <VAB8BL :><0=48 4;O <0=V?C;OFV9 7 =8<FDisplays the name of the window and contains controls to manipulate it Q3TitleBar: >73>@B0T 2V:=> =0 25AL 5:@0=Makes the window full screen Q3TitleBar0:A8<V7C20B8Maximize Q3TitleBarV=V<V7C20B8Minimize Q3TitleBar*@818@0T 2V:=> 7 >G59Moves the window out of the way Q3TitleBarb>25@B0T <0:A8<V7>20=5 2V:=> =0704 4> =>@<0;L=>3>&Puts a maximized window back to normal Q3TitleBar`>25@B0T <V=V<V7>20=5 2V:=> =0704 4> =>@<0;L=>3>&Puts a minimized window back to normal Q3TitleBarV4=>28B8 Restore down Q3TitleBarV4=>28B8 Restore up Q3TitleBar!8AB5<0System Q3TitleBarV;LH5...More... Q3ToolBar(=52V4><>) (unknown) Q3UrlOperator@>B>:>; %1  =5 ?V4B@8<CT :>?VN20==O 01> ?5@5<VI5==O D09;V2 G8 B5:IThe protocol `%1' does not support copying or moving files or directories Q3UrlOperator\@>B>:>; %1  =5 ?V4B@8<CT AB2>@5==O =>28E B5:;The protocol `%1' does not support creating new directories Q3UrlOperatorV@>B>:>; %1  =5 ?V4B@8<CT >B@8<0==O D09;V20The protocol `%1' does not support getting files Q3UrlOperatorN@>B>:>; %1  =5 ?V4B@8<CT ?5@53;O4 B5:6The protocol `%1' does not support listing directories Q3UrlOperator\@>B>:>; %1  =5 ?V4B@8<CT 2V4?@02;5==O D09;V20The protocol `%1' does not support putting files Q3UrlOperatord@>B>:>; %1  =5 ?V4B@8<CT 2840;5==O D09;V2 G8 B5:@The protocol `%1' does not support removing files or directories Q3UrlOperatorn@>B>:>; %1  =5 ?V4B@8<CT ?5@59<5=C20==O D09;V2 G8 B5:@The protocol `%1' does not support renaming files or directories Q3UrlOperator<@>B>:>; %1  =5 ?V4B@8<CTBLAO"The protocol `%1' is not supported Q3UrlOperator&!:0AC20B8&CancelQ3Wizard&025@H8B8&FinishQ3Wizard&>2V4:0&HelpQ3Wizard&0;V >&Next >Q3Wizard< &0704< &BackQ3Wizard,# 7'T4=0==V 2V4<>2;5=>Connection refusedQAbstractSocket4'0A =0 7 T4=0==O 28G5@?0=>Connection timed outQAbstractSocket"C7>; =5 7=0945=>Host not foundQAbstractSocket"5@560 =54>ABC?=0Network unreachableQAbstractSocketD5?V4B@8<C20=0 4;O A>:5B0 >?5@0FVO$Operation on socket is not supportedQAbstractSocket&!>:5B =5 ?V4 T4=0=>Socket is not connectedQAbstractSocketF'0A =0 >?5@0FVN 7 A>:5B>< 28G5@?0=>Socket operation timed outQAbstractSocket&84V;8B8 2A5 &Select AllQAbstractSpinBox@>: 2&3>@C&Step upQAbstractSpinBox@>: 4>&=87C Step &downQAbstractSpinBoxV4<VB8B8CheckQAccessibleButton0B8A=VBLPressQAccessibleButton=OB8 2V4<VB:CUncheckQAccessibleButton:B82C20B8Activate QApplication<:B82CT 3>;>2=5 2V:=> ?@>3@0<8#Activates the program's main window QApplicationl8:>=C20=89 <>4C;L '%1' 28<030T Qt %2, 7=0945=> Qt %3.,Executable '%1' requires Qt %2, found Qt %3. QApplication.5AC<VA=0 1V1;V>B5:0 QtIncompatible Qt Library Error QApplicationLTRQT_LAYOUT_DIRECTION QApplication&!:0AC20B8&Cancel QAxSelectCOM-&>1'T:B: COM &Object: QAxSelectOKOK QAxSelectD815@VBL 5;5<5=B :5@C20==O ActiveXSelect ActiveX Control QAxSelectV4<VB8B8Check QCheckBox5@5<:=CB8Toggle QCheckBox=OB8 2V4<VB:CUncheck QCheckBox>&>40B8 4> :>;L>@V2 :>@8ABC20G0&Add to Custom Colors QColorDialog07&>2V :>;L>@8 &Basic colors QColorDialog(&>;L>@8 :>@8ABC20G0&Custom colors QColorDialog&5;5=89:&Green: QColorDialog&'5@2>=89:&Red: QColorDialog&0A8G5=VABL:&Sat: QColorDialog=0&G5==O:&Val: QColorDialog&;LD0-:0=0;:A&lpha channel: QColorDialog&;0:8B=89:Bl&ue: QColorDialog&V4BV=>::Hu&e: QColorDialog15@VBL :>;V@ Select Color QColorDialog0:@8B8Close QComboBox %81=>False QComboBoxV4:@8B8Open QComboBoxAB8==>True QComboBox%1: 265 VA=CT%1: already existsQCoreApplication%1: =5 VA=CT%1: does not existQCoreApplication %1: ?><8;:0 ftok%1: ftok failedQCoreApplication"%1: ?>@>6=V9 :;NG%1: key is emptyQCoreApplication0%1: =54>AB0B=L> @5AC@AV2%1: out of resourcesQCoreApplication*%1: 4>ABC? 701>@>=5=>%1: permission deniedQCoreApplication6%1: =5<>6;82> AB2>@8B8 :;NG%1: unable to make keyQCoreApplication.%1: =52V4><0 ?><8;:0 %2%1: unknown error %2QCoreApplication<5<>6;82> 7025@H8B8 B@0=70:FVNUnable to commit transaction QDB2Driver(5<>6;82> 7'T4=0B8ALUnable to connect QDB2Driver<5<>6;82> 2V4:>B8B8 B@0=70:FVNUnable to rollback transaction QDB2Driver\5<>6;82> 2AB0=>28B8 02B>7025@H5==O B@0=70:FV9Unable to set autocommit QDB2Driver65<>6;82> ?@82'O70B8 7<V==CUnable to bind variable QDB2Result05<>6;82> 28:>=0B8 28@07Unable to execute statement QDB2Result>5<>6;82> >B@8<0B8 ?5@H89 70?8AUnable to fetch first QDB2ResultD5<>6;82> >B@8<0B8 =0ABC?=89 70?8AUnable to fetch next QDB2Result65<>6;82> >B@8<0B8 70?8A %1Unable to fetch record %1 QDB2Result65<>6;82> ?V43>BC20B8 28@07Unable to prepare statement QDB2ResultAMAM QDateTimeEditPMPM QDateTimeEditamam QDateTimeEditpmpm QDateTimeEdit>Animation - F5 01AB@0:B=89 :;0AAnimation is an abstract classQDeclarativeAbstractAnimation\5<>6;82> 0=V<C20B8 =5VA=CNGC 2;0AB82VABL "%1")Cannot animate non-existent property "%1"QDeclarativeAbstractAnimationj5<>6;82> 0=V<C20B8 2;0AB82VABL ;8H5 4;O G8B0==O "%1"&Cannot animate read-only property "%1"QDeclarativeAbstractAnimationB5 <>6C 2AB0=>28B8 B@820;VABL < 0Cannot set a duration of < 0QDeclarativeAnchorAnimation5<>6;82> 28:>@8AB0B8 107>2C ?@82'O7:C @07>< 7 25@E=L>W, =86=L>N G8 F5=B@0;L=>N ?> 25@B8:0;V.SBaseline anchor cannot be used in conjunction with top, bottom, or vcenter anchors.QDeclarativeAnchorst5<>6;82> ?@82'O70B8 3>@87>=B0;L=89 :@09 4> 25@B8:0;L=>3>.3Cannot anchor a horizontal edge to a vertical edge.QDeclarativeAnchorst5<>6;82> ?@82'O70B8 25@B8:0;L=89 :@09 4> 3>@87>=B0;L=>3>.3Cannot anchor a vertical edge to a horizontal edge.QDeclarativeAnchorsX5<>6;82> ?@82'O70B8 5;5<5=B 4> A0<>3> A515.Cannot anchor item to self.QDeclarativeAnchorsV5<>6;82> ?@82'O70B8 4> =C;L>2>3> 5;5<5=B0.Cannot anchor to a null item.QDeclarativeAnchors5<>6;82> ?@82'O70B8 4> 5;5<5=B0, I> =5 T 10BL:V2AL:8< G8 ACAV4=V<.8Cannot anchor to an item that isn't a parent or sibling.QDeclarativeAnchors5<>6;82> 7040B8 ?@82'O7:8 7;V20, A?@020 B0 F5=B@C ?> 3>@87>=B0;V.0Cannot specify left, right, and hcenter anchors.QDeclarativeAnchors|5<>6;82> 7040B8 ?@82'O7:8 25@EC, =87C B0 F5=B@C ?> 25@B8:0;V.0Cannot specify top, bottom, and vcenter anchors.QDeclarativeAnchorsb8O2;5=> V<>2V@=C F8:;VG=C ?@82'O7:C 4> centerIn.*Possible anchor loop detected on centerIn.QDeclarativeAnchorsZ8O2;5=> V<>2V@=C F8:;VG=C ?@82'O7:C 4> fill.&Possible anchor loop detected on fill.QDeclarativeAnchors8O2;5=> V<>2V@=C F8:;VG=C ?@82'O7:C 4> 3>@87>=B0;L=>W ?@82'O7:8.3Possible anchor loop detected on horizontal anchor.QDeclarativeAnchors~8O2;5=> V<>2V@=C F8:;VG=C ?@82'O7:C 4> 25@B8:0;L=>W ?@82'O7:8.1Possible anchor loop detected on vertical anchor.QDeclarativeAnchors^V1;V>B5:0 Qt 1C;0 7V1@0=0 157 ?V4B@8<:8 QMovie'Qt was built without support for QMovieQDeclarativeAnimatedImageBApplication - F5 01AB@0:B=89 :;0A Application is an abstract classQDeclarativeApplicationh5<>6;82> 7<V=8B8 0=V<0FVN, ?@87=0G5=C 4> ?>254V=:8.3Cannot change the animation assigned to a Behavior.QDeclarativeBehavior`=0945=> F8:;VG=C ?@82 O7:C 4;O 2;0AB82>ABV "%1"'Binding loop detected for property "%1"QDeclarativeBinding`=0945=> F8:;VG=C ?@82 O7:C 4;O 2;0AB82>ABV "%1"'Binding loop detected for property "%1"QDeclarativeCompiledBindings>"%1" =5 <>65 >?5@C20B8 =04 "%2""%1" cannot operate on "%2"QDeclarativeCompilerb"%1.%2" =5 4>ABC?=> G5@57 25@AVN20==O :><?>=5=B0.5"%1.%2" is not available due to component versioning.QDeclarativeCompiler>"%1.%2" =5 4>ABC?=> 2 %3 %4.%5.%"%1.%2" is not available in %3 %4.%5.QDeclarativeCompilerb;0AB82VABL-?A524>=V< 28E>48BL 70 <56V ?A524>=V<C#Alias property exceeds alias boundsQDeclarativeCompilerl@8:@V?;5=V 2;0AB82>ABV =5 <>6CBL 1CB8 BCB 28:>@8AB0=V'Attached properties cannot be used hereQDeclarativeCompilerZ>6=0 ?@87=0G8B8 ;8H5 >48= 72'O7>: 4> A?8A:V2$Can only assign one binding to listsQDeclarativeCompiler5<>6;82> ?@87=0G8B8 7=0G5==O 157?>A5@54=L> 4> 73@C?>20=>W 2;0AB82>ABV4Cannot assign a value directly to a grouped propertyQDeclarativeCompiler5<>6;82> ?@87=0G8B8 7=0G5==O A83=0;C (>GV:CTBLAO A:@8?B 4;O 28:>=0==O)@Cannot assign a value to a signal (expecting a script to be run)QDeclarativeCompilerr5<>6;82> ?@87=0G8B8 45:V;L:0 7=0G5=L 2;0AB82>ABV A:@8?BC2Cannot assign multiple values to a script propertyQDeclarativeCompiler|5<>6;82> ?@8A2>WB8 45:V;L:0 7=0G5=BL 4> >48=8G=>W 2;0AB82>ABV4Cannot assign multiple values to a singular propertyQDeclarativeCompilerD5<>6;82> ?@87=0G8B8 >1'T:B A?8A:CCannot assign object to listQDeclarativeCompilerN5<>6;82> ?@87=0G8B8 >1'T:B 2;0AB82>ABV Cannot assign object to propertyQDeclarativeCompilerR5<>6;82> ?@87=0G8B8 ?@8<VB828 4> A?8A:V2!Cannot assign primitives to listsQDeclarativeCompilerl5<>6;82> ?@87=0G8B8 4> =5VA=CNG>W B8?>2>W 2;0AB82>ABV.Cannot assign to non-existent default propertyQDeclarativeCompiler`5<>6;82> ?@87=0G8B8 =5VA=CNGV9 2;0AB82>ABV "%1"+Cannot assign to non-existent property "%1"QDeclarativeCompilerd5<>6;82> AB2>@8B8 ?>@>6=N A?5F8DV:0FVN :><?>=5=B8+Cannot create empty component specificationQDeclarativeCompilerR5<>6;82> ?5@5287=0G8B8 2;0AB82VABL FINALCannot override FINAL propertyQDeclarativeCompilert;5<5=B8 Component =5 <>6CBL <VAB8B8 2;0AB82>AB59 >:@V< id;Component elements may not contain properties other than idQDeclarativeCompilerj1'T:B8 Component =5 <>6CBL >3>;>HC20B8 =>2V DC=:FVW./Component objects cannot declare new functions.QDeclarativeCompilerr1'T:B8 Component =5 <>6CBL >3>;>HC20B8 =>2V 2;0AB82>ABV.0Component objects cannot declare new properties.QDeclarativeCompilerj1'T:B8 Component =5 <>6CBL >3>;>HC20B8 =>2V A83=0;8.-Component objects cannot declare new signals.QDeclarativeCompiler:C1;L>20=0 B8?>20 2;0AB82VABLDuplicate default propertyQDeclarativeCompiler.C1;L>20=0 =0720 <5B>4CDuplicate method nameQDeclarativeCompiler8C1;L>20=0 =0720 2;0AB82>ABVDuplicate property nameQDeclarativeCompiler0C1;L>20=0 =0720 A83=0;CDuplicate signal nameQDeclarativeCompiler2;5<5=B =5 T AB2>@N20=8<.Element is not creatable.QDeclarativeCompiler>>@>6=T ?@87=0G5==O 2;0AB82>ABVEmpty property assignmentQDeclarativeCompiler6>@>6=T ?@87=0G5==O A83=0;CEmpty signal assignmentQDeclarativeCompiler45=B8DV:0B>@ =5?@028;L=> <0A:CT 3;>10;L=C 2;0AB82VABL JavaScript-ID illegally masks global JavaScript propertyQDeclarativeCompilerh45=B8DV:0B>@8 =5 <>6CBL ?>G8=0B8AL 7 25;8:>W ;VB5@8)IDs cannot start with an uppercase letterQDeclarativeCompiler45=B8DV:0B>@8 ?>28==V <VAB8B8 ;8H5 ;VB5@8, F8D@8 B0 ?V4:@5A;5==O7IDs must contain only letters, numbers, and underscoresQDeclarativeCompilert45=B8DV:0B>@8 ?>28==V ?>G8=0B8AL 7 ;VB5@8 G8 ?V4:@5A;5==O*IDs must start with a letter or underscoreQDeclarativeCompiler25?@8?CAB8<0 =0720 <5B>4CIllegal method nameQDeclarativeCompiler<5?@8?CAB8<0 =0720 2;0AB82>ABVIllegal property nameQDeclarativeCompiler45?@8?CAB8<0 =0720 A83=0;CIllegal signal nameQDeclarativeCompilerN5?@028;L=> 2:070=5 ?@87=0G5==O A83=0;C'Incorrectly specified signal assignmentQDeclarativeCompiler:5?@08;L=0 ?>78FVO ?A524>=V<CInvalid alias locationQDeclarativeCompiler25?@028;L=5 ?>A8;0==O =0 ?A524>=V<. >A8;0==O =0 ?A524>=V< ?>28==> 1CB8 2:070=5 O: <id>, <id>.<2;0AB82VABL> 01> <id>.<2;0AB82VABL-7=0G5==O>.<2;0AB82VABL>zInvalid alias reference. An alias reference must be specified as , . or ..QDeclarativeCompilerx5?@028;L=5 ?>A8;0==O =0 ?A524>=V<. 5<>6;82> 7=09B8 id "%1"/Invalid alias reference. Unable to find id "%1"QDeclarativeCompilerZ5?@028;L=5 ?@87=0G5==O ?@8:@V?;5=>3> >1'T:B0"Invalid attached object assignmentQDeclarativeCompilerP5?@028;L=0 A?5F8DV:0FVO BV;0 :><?>=5=B8$Invalid component body specificationQDeclarativeCompilerd5?@028;L=0 A?5F8DV:0FVO V45=B8DV:0B>@0 :><?>=5=B8"Invalid component id specificationQDeclarativeCompiler05?@028;L=89 ?>@>6=V9 IDInvalid empty IDQDeclarativeCompiler\5?@028;L=89 4>ABC? 4> 73@C?>20=>W 2;0AB82>ABVInvalid grouped property accessQDeclarativeCompiler5?@028;L=5 ?@8A2>T==O 2;0AB82>ABV: 2;0AB82VABL "%1" ;8H5 4;O G8B0==O9Invalid property assignment: "%1" is a read-only propertyQDeclarativeCompiler5?@028;L=5 ?@8A2>T==O 2;0AB82>ABV: >GV:C202AO B@828<V@=89 25:B>@/Invalid property assignment: 3D vector expectedQDeclarativeCompilerl5?@028;L=5 ?@8A2>T==O 2;0AB82>ABV: >GV:C20;>AL 1C;525-Invalid property assignment: boolean expectedQDeclarativeCompilerh5?@028;L=5 ?@8A2>T==O 2;0AB82>ABV: >GV:C202AO :>;V@+Invalid property assignment: color expectedQDeclarativeCompilerh5?@028;L=5 ?@8A2>T==O 2;0AB82>ABV: >GV:C20;0AL 40B0*Invalid property assignment: date expectedQDeclarativeCompilerv5?@028;L=5 ?@8A2>T==O 2;0AB82>ABV: >GV:C20;8AL 40B0 B0 G0A.Invalid property assignment: datetime expectedQDeclarativeCompilerh5?@028;L=5 ?@8A2>T==O 2;0AB82>ABV: >GV:C20;>AL FV;5)Invalid property assignment: int expectedQDeclarativeCompilerj5?@028;L=5 ?@8A2>T==O 2;0AB82>ABV: >GV:C20;>AL G8A;>,Invalid property assignment: number expectedQDeclarativeCompilerj5?@028;L=5 ?@8A2>T==O 2;0AB82>ABV: >GV:C20;0AL B>G:0+Invalid property assignment: point expectedQDeclarativeCompilert5?@028;L=5 ?@8A2>T==O 2;0AB82>ABV: >GV:C202AO ?@O<>:CB=8:*Invalid property assignment: rect expectedQDeclarativeCompilerj5?@028;L=5 ?@8A2>T==O 2;0AB82>ABV: >GV:C202AO A:@8?B,Invalid property assignment: script expectedQDeclarativeCompilerj5?@028;L=5 ?@8A2>T==O 2;0AB82>ABV: >GV:C202AO @>7<V@*Invalid property assignment: size expectedQDeclarativeCompilerh5?@028;L=5 ?@8A2>T==O 2;0AB82>ABV: >GV:C202AO @O4>:,Invalid property assignment: string expectedQDeclarativeCompilerd5?@028;L=5 ?@8A2>T==O 2;0AB82>ABV: >GV:C202AO G0A*Invalid property assignment: time expectedQDeclarativeCompilerj5?@028;L=5 ?@8A2>T==O 2;0AB82>ABV: =52V4><89 ?5@5;V:0Invalid property assignment: unknown enumerationQDeclarativeCompiler~5?@028;L=5 ?@8A2>T==O 2;0AB82>ABV: >GV:C20;>AL 1577=0:>25 FV;52Invalid property assignment: unsigned int expectedQDeclarativeCompilerx5?@028;L=5 ?@8A2>T==O 2;0AB82>ABV: =5?V4B@8<C20=89 B8? "%1"2Invalid property assignment: unsupported type "%1"QDeclarativeCompilerd5?@028;L=5 ?@8A2>T==O 2;0AB82>ABV: >GV:C202AO URL)Invalid property assignment: url expectedQDeclarativeCompilerD5?@028;L=5 2:;045==O 2;0AB82>AB59Invalid property nestingQDeclarativeCompiler65?@028;L=5 B8? 2;0AB82>ABVInvalid property typeQDeclarativeCompilerH5?@028;L=5 28:>@8AB0==O 2;0AB82>ABVInvalid property useQDeclarativeCompilerN5?@028;L=5 28:>@8AB0==O 2;0AB82>ABV idInvalid use of id propertyQDeclarativeCompilerL5?@028;L=5 28:>@8AB0==O ?@>AB>@C V<5=Invalid use of namespaceQDeclarativeCompilerf0728 <5B>4V2 =5 <>6CBL ?>G8=0B8AL 7 25;8:>W ;VB5@83Method names cannot begin with an upper case letterQDeclarativeCompilerNV4ACB=O ?>78FVO ?A524>=V<0 2;0AB82>ABVNo property alias locationQDeclarativeCompiler<5VA=CNG89 ?@8:@V?;5=89 >1'T:BNon-existent attached objectQDeclarativeCompilerH5 T =072>N ?@8:@V?;5=>W 2;0AB82>ABVNot an attached property nameQDeclarativeCompilerFGV:C20;>AL ?@87=0G5==O 2;0AB82>ABVProperty assignment expectedQDeclarativeCompilerF;0AB82>ABV 265 ?@87=0G5=> 7=0G5==O*Property has already been assigned a valueQDeclarativeCompilerp0728 2;0AB82>AB59 =5 <>6CBL ?>G8=0B8AL 7 25;8:>W ;VB5@85Property names cannot begin with an upper case letterQDeclarativeCompiler^=0G5==O 2;0AB82>ABV 2AB0=>2;5=> 45:V;L:0 @07V2!Property value set multiple timesQDeclarativeCompilerh0728 A83=0;V2 =5 <>6CBL ?>G8=0B8AL 7 25;8:>W ;VB5@83Signal names cannot begin with an upper case letterQDeclarativeCompilerVGV:CTBLAO >48=>G=5 ?@87=0G5==O 2;0AB82>ABV#Single property assignment expectedQDeclarativeCompiler>5>GV:C20=5 ?@87=0G5==O >1'T:B0Unexpected object assignmentQDeclarativeCompiler6V45=B8DV:0B>@ =5 C=V:0;L=89id is not uniqueQDeclarativeCompiler25?@028;L=89 ?>@>6=V9 URLInvalid empty URLQDeclarativeComponentHcreateObject: 7=0G5==O =5 T >1 T:B><$createObject: value is not an objectQDeclarativeComponent`5<>6;82> ?@87=0G8B8 =5VA=CNGV9 2;0AB82>ABV "%1"+Cannot assign to non-existent property "%1"QDeclarativeConnectionsV T4=0==O: 2:;045=V >1 T:B8 =5 4>72>;ONBLAO'Connections: nested objects not allowedQDeclarativeConnections8 T4=0==O: >GV:C202AO A:@8?BConnections: script expectedQDeclarativeConnections< T4=0==O: A8=B0:A8G=0 ?><8;:0Connections: syntax errorQDeclarativeConnections6"@0=70:FVO ;8H5 4;O G8B0==ORead-only TransactionQDeclarativeEngine&1V9 B@0=70:FVW SQLSQL transaction failedQDeclarativeEngineDSQL: @>71V6=VABL 25@AV9 1078 40=8ESQL: database version mismatchQDeclarativeEngine^ >71V6=VABL 25@AV9: >GV:C20;0AL %1, 7=0945=0 %2'Version mismatch: expected %1, found %2QDeclarativeEngineXexecuteSql 1C;> 28:;8:0=> ?>70 transaction()'executeSql called outside transaction()QDeclarativeEngineLB@0=70:FVO: 2V4ACB=V9 72>@>B=V9 28:;8:transaction: missing callbackQDeclarativeEngineZ;0AB82VABL back ;8H5 4;O >4=>@07>2>3> 70?8ACback is a write-once propertyQDeclarativeFlipable\;0AB82VABL front ;8H5 4;O >4=>@07>2>3> 70?8ACfront is a write-once propertyQDeclarativeFlipable&"%1": B5:0 =5 VA=CT"%1": no such directoryQDeclarativeImportDatabase0- %1 =5 T ?@>AB>@>< V<5=- %1 is not a namespaceQDeclarativeImportDatabaseP- 2:;045=V ?@>AB>@8 V<5= =5 4>72>;ONBLAO- nested namespaces not allowedQDeclarativeImportDatabaseT 53VAB@ V<5=V D09;C =5 71V30TBLAO 4;O "%2" File name case mismatch for "%2"QDeclarativeImportDatabase=5<>6;82> 7020=B068B8 <>4C;L "%1":  53VAB@ V<5=V D09;C =5 71V30TBLAO 4;O "%2"9cannot load module "%1": File name case mismatch for "%2"QDeclarativeImportDatabaseTimport "%1" =5 <0T =V qmldir, =V namespace*import "%1" has no qmldir and no namespaceQDeclarativeImportDatabaseLT =5>4=>7=0G=8<. =0945=> 2 %1 B0 2 %2#is ambiguous. Found in %1 and in %2QDeclarativeImportDatabasehT =5>4=>7=0G=8<. =0945=> 2 %1 25@AVW %2.%3 B0 %4.%54is ambiguous. Found in %1 in version %2.%3 and %4.%5QDeclarativeImportDatabase2V=AB0=FVNTBLAO @5:C@A82=>is instantiated recursivelyQDeclarativeImportDatabase=5 T B8?>< is not a typeQDeclarativeImportDatabase;>:0;L=0 B5:0local directoryQDeclarativeImportDatabase^=5<>6;82> ?@>G8B0B8 287=0G5==O "%2" <>4C;O "%1"(module "%1" definition "%2" not readableQDeclarativeImportDatabase4<>4C;L "%1" =5 2AB0=>2;5=>module "%1" is not installedQDeclarativeImportDatabaseH=5 7=0945=> 4>40B>: "%2" <>4C;O "%1"!module "%1" plugin "%2" not foundQDeclarativeImportDatabaseN<>4C;L "%1" 25@AVW %2.%3 =5 2AB0=>2;5=>*module "%1" version %2.%3 is not installedQDeclarativeImportDatabaseb=5<>6;82> 7020=B068B8 4>40B>: 4;O <>4C;O "%1": %2+plugin cannot be loaded for module "%1": %2QDeclarativeImportDatabaserKeyNavigation 4>ABC?=0 ;8H5 G5@57 ?@8:@V?;5=V 2;0AB82>ABV7KeyNavigation is only available via attached properties!QDeclarativeKeyNavigationAttached`Keys 4>ABC?=V ;8H5 G5@57 ?@8:@V?;5=V 2;0AB82>ABV.Keys is only available via attached propertiesQDeclarativeKeysAttachedt@8:@V?;5=0 2;0AB82VABL LayoutDirection ?@0FNT ;8H5 7 Item7LayoutDirection attached property only works with Items#QDeclarativeLayoutMirroringAttachedvLayoutMirroring 4>ABC?=0 ;8H5 G5@57 ?@8:@V?;5=V 2;0AB82>ABV9LayoutMirroring is only available via attached properties#QDeclarativeLayoutMirroringAttached\ListElement: =5 <>65 <VAB8B8 2:;045=V 5;5<5=B8+ListElement: cannot contain nested elementsQDeclarativeListModelListElement: =5 <>65 28:>@8AB>2C20B8 70@575@2>20=C 2;0AB82VABL "id".ListElement: cannot use reserved "id" propertyQDeclarativeListModelListElement: =5<>6;82> 28:>@8AB>2C20B8 A:@8?B 2 O:>ABV 7=0G5==O 2;0AB82>ABV1ListElement: cannot use script for property valueQDeclarativeListModelNListModel: =5287=0G5=0 2;0AB82VABL '%1'"ListModel: undefined property '%1'QDeclarativeListModel<append: 7=0G5==O =5 T >1 T:B><append: value is not an objectQDeclarativeListModelNinsert: V=45:A %1 ?>70 <560<8 4V0?07>=Cinsert: index %1 out of rangeQDeclarativeListModel<insert: 7=0G5==O =5 T >1 T:B><insert: value is not an objectQDeclarativeListModel6move: ?>70 <560<8 4V0?07>=Cmove: out of rangeQDeclarativeListModelNremove: V=45:A %1 ?>70 <560<8 4V0?07>=Cremove: index %1 out of rangeQDeclarativeListModelHset: V=45:A %1 ?>70 <560<8 4V0?07>=Cset: index %1 out of rangeQDeclarativeListModel6set: 7=0G5==O =5 T >1 T:B><set: value is not an objectQDeclarativeListModel|020=B06C20G =5 ?V4B@8<CT 7020=B065==O =52V7C0;L=8E 5;5<5=BV2.4Loader does not support loading non-visual elements.QDeclarativeLoader|5<>6;82> 715@53B8 7>2=VH=V9 283;O4 ?@8 A:;04=><C ?5@5B2>@5==V5Unable to preserve appearance under complex transformQDeclarativeParentAnimation|5<>6;82> 715@53B8 7>2=VH=V9 283;O4 ?@8 =5>4=>@V4=><C <0AHB01V5Unable to preserve appearance under non-uniform scaleQDeclarativeParentAnimationt5<>6;82> 715@53B8 7>2=VH=V9 283;O4 ?@8 =C;L>2><C <0AHB01V.Unable to preserve appearance under scale of 0QDeclarativeParentAnimation|5<>6;82> 715@53B8 7>2=VH=V9 283;O4 ?@8 A:;04=><C ?5@5B2>@5==V5Unable to preserve appearance under complex transformQDeclarativeParentChange|5<>6;82> 715@53B8 7>2=VH=V9 283;O4 ?@8 =5>4=>@V4=><C <0AHB01V5Unable to preserve appearance under non-uniform scaleQDeclarativeParentChanget5<>6;82> 715@53B8 7>2=VH=V9 283;O4 ?@8 =C;L>2><C <0AHB01V.Unable to preserve appearance under scale of 0QDeclarativeParentChange0GV:C202AO B8? ?0@0<5B@0Expected parameter typeQDeclarativeParser4GV:C202AO B8? 2;0AB82>ABVExpected property typeQDeclarativeParser*GV:C202AO B>:5= `%1'Expected token `%1'QDeclarativeParser,GV:C20;0AL =0720 B8?CExpected type nameQDeclarativeParsern45=B8DV:0B>@ =5 <>65 ?>G8=0B8AL 70 G8A5;L=>3> ;VB5@0;C,Identifier cannot start with numeric literalQDeclarativeParser(5?@8?CAB8<89 A8<2>;Illegal characterQDeclarativeParserD5?@8?CAB8<0 :5@CNG0 ?>A;V4>2=VABLIllegal escape sequenceQDeclarativeParserb5?@8?CAB8<89 A8=B0:A8A 4;O 5:A?>=5=FV9=>3> G8A;0%Illegal syntax for exponential numberQDeclarativeParserT5?@8?CAB8<0 :5@CNG0 ?>A;V4>2=VABL UnicodeIllegal unicode escape sequenceQDeclarativeParserJ5?@028;L=89 ID A?5F8DV:0B>@C V<?>@BCInvalid import qualifier IDQDeclarativeParserR5?@028;L=89 <>48DV:0B>@ B8?C 2;0AB82>ABVInvalid property type modifierQDeclarativeParser\5?@028;L=89 ?@0?>@5FL @53C;O@=>3> 28@07C %0 $Invalid regular expression flag '%0'QDeclarativeParserb5:;0@0FVO JavaScript ?>70 <560<8 5;5<5=B0 Script-JavaScript declaration outside Script elementQDeclarativeParser@<?>@B 1V1;V>B5:8 28<030T 25@AVW!Library import requires a versionQDeclarativeParser^=0G5==O 2;0AB82>ABV 2AB0=>2;5=> 45:V;L:0 @07V2!Property value set multiple timesQDeclarativeParserP""V;L:8 4;O G8B0==O" I5 =5 ?V4B@8<CTBLAOReadonly not yet supportedQDeclarativeParser0@575@2>20=5 V< O "Qt" =5 <>65 1CB8 70AB>A>20=5 2 O:>ABV A?5F8DV:0B>@01Reserved name "Qt" cannot be used as an qualifierQDeclarativeParserj!?5F8DV:0B>@8 V<?>@BC A:@8?BC <0NBL 1CB8 C=V:0;L=8<8.(Script import qualifiers must be unique.QDeclarativeParserH<?>@B A:@8?BC 28<030T A?5F8DV:0B>@0"Script import requires a qualifierQDeclarativeParser&!8=B0:A8G=0 ?><8;:0 Syntax errorQDeclarativeParserB570:@8B89 :><5=B0@ 2 :V=FV D09;CUnclosed comment at end of fileQDeclarativeParser<570:@8B89 @O4>: 2 :V=FV D09;CUnclosed string at end of lineQDeclarativeParserR5>GV:C20=89 <>48DV:0B>@ B8?C 2;0AB82>ABV!Unexpected property type modifierQDeclarativeParser.5>GV:C20=89 B>:5= `%1'Unexpected token `%1'QDeclarativeParsern57025@H5=0 5:@0=>20=0 ?>A;V4>2=VABL @53C;O@=>3> 28@07C2Unterminated regular expression backslash sequenceQDeclarativeParserH57025@H5=89 :;0A @53C;O@=>3> 28@07C%Unterminated regular expression classQDeclarativeParserN57025@H5=89 ;VB5@0; @53C;O@=>3> 28@07C'Unterminated regular expression literalQDeclarativeParserB5 <>6C 2AB0=>28B8 B@820;VABL < 0Cannot set a duration of < 0QDeclarativePauseAnimation,5<>6;82> 2V4:@8B8: %1Cannot open: %1QDeclarativePixmap6><8;:0 45:>4C20==O: %1: %2Error decoding: %1: %2QDeclarativePixmap^1V9 >B@8<0==O 7>1@065==O 2V4 ?>AB0G0;L=8:0: %1%Failed to get image from provider: %1QDeclarativePixmapB5 <>6C 2AB0=>28B8 B@820;VABL < 0Cannot set a duration of < 0QDeclarativePropertyAnimation`5<>6;82> ?@87=0G8B8 =5VA=CNGV9 2;0AB82>ABV "%1"+Cannot assign to non-existent property "%1"QDeclarativePropertyChangesl5<>6;82> ?@87=0G8B8 2;0AB82>ABV ;8H5 4;O G8B0==O "%1"(Cannot assign to read-only property "%1"QDeclarativePropertyChangesPropertyChanges =5 ?V4B@8<CT AB2>@5==O >1 T:BV2 A?5F8DVG=8E 4> AB0=C.APropertyChanges does not support creating state-specific objects.QDeclarativePropertyChangesP5 240;>AO V=AB0=FVN20B8 45;530B :C@A>@C%Could not instantiate cursor delegateQDeclarativeTextInputL5 240;>AO 7020=B068B8 45;530B :C@A>@CCould not load cursor delegateQDeclarativeTextInput%1 %2QDeclarativeTypeLoader`@>ABV@ V<5= %1 =5 <>65 1CB8 28:>@8AB0=89 O: B8?%Namespace %1 cannot be used as a typeQDeclarativeTypeLoader*!:@8?B %1 =54>ABC?=89Script %1 unavailableQDeclarativeTypeLoader$"8? %1 =54>ABC?=89Type %1 unavailableQDeclarativeTypeLoaderj5<>6;82> ?@87=0G8B8 >1 T:B 4> 2;0AB82>ABV A83=0;C %1-Cannot assign an object to signal property %1QDeclarativeVMEj5<>6;82> ?@87=0G8B8 >1 T:B 4> 2;0AB82>ABV V=B5@D59AC*Cannot assign object to interface propertyQDeclarativeVMEJ5<>6;82> ?@87=0G8B8 >1 T:B 4> A?8A:CCannot assign object to listQDeclarativeVME~5<>6;82> ?@87=0G8B8 >1 T:B B8?C %1 157 <5B>4C 70 70<>2GC20==O<3Cannot assign object type %1 with no default methodQDeclarativeVME^5<>6;82> ?@87=0G8B8 2;0AB82>ABV %2 7=0G5==O %1%Cannot assign value %1 to property %2QDeclarativeVMEn5<>6;82> 7 T4=0B8 =5AC<VA=89 A83=0;/A;>B (%1 ?@>B8 %2)0Cannot connect mismatched signal/slot %1 %vs. %2QDeclarativeVME|5<>6;82> 2AB0=>28B8 2;0AB82>ABV 4;O %1, >A:V;L:8 2V= =C;L>289)Cannot set properties on %1 as it is nullQDeclarativeVMEL5<>6;82> AB2>@8B8 ?@8:@V?;5=89 >1 T:B Unable to create attached objectQDeclarativeVMEB5<>6;82> AB2>@8B8 >1 T:B B8?C %1"Unable to create object of type %1QDeclarativeVMEL><?>=5=B 45;530BC <0T 1CB8 B8?C Item.%Delegate component must be Item type.QDeclarativeVisualDataModelhV1;V>B5:0 Qt 1C;0 7V1@0=0 157 ?V4B@8<:8 xmlpatterns,Qt was built without support for xmlpatternsQDeclarativeXmlListModelR0?8B XmlRole =5 ?>28=5= ?>G8=0B8AL 7 '/'(An XmlRole query must not start with '/'QDeclarativeXmlListModelRolen0?8B XmlListModel =5 ?>28=5= ?>G8=0B8AL 7 '/' 01> "//"1An XmlListModel query must start with '/' or "//"QDeclarativeXmlRoleListQDialQDial SliderHandleQDial SpeedoMeterQDial025@H5=>DoneQDialog )> F5? What's This?QDialog&!:0AC20B8&CancelQDialogButtonBox0:@8&B8&CloseQDialogButtonBox&V&NoQDialogButtonBox&OK&OKQDialogButtonBox&15@53B8&SaveQDialogButtonBox"&0:&YesQDialogButtonBox5@5@20B8AbortQDialogButtonBox0AB>AC20B8ApplyQDialogButtonBox!:0AC20B8CancelQDialogButtonBox0:@8B8CloseQDialogButtonBox,0:@8B8 157 715@565==OClose without SavingQDialogButtonBoxV4E8;8B8DiscardQDialogButtonBox5 715@V30B8 Don't SaveQDialogButtonBox>2V4:0HelpQDialogButtonBox3=>@C20B8IgnoreQDialogButtonBoxV 4;O 2A&VE N&o to AllQDialogButtonBoxOKQDialogButtonBoxV4:@8B8OpenQDialogButtonBox!:8=CB8ResetQDialogButtonBox V4=>28B8 B8?>2>Restore DefaultsQDialogButtonBox>2B>@8B8RetryQDialogButtonBox15@53B8SaveQDialogButtonBox15@53B8 2A5Save AllQDialogButtonBox"0: &4;O 2AVE Yes to &AllQDialogButtonBox0B0 7<V=8 Date Modified QDirModel"8?Kind QDirModel 0720Name QDirModel  >7<V@Size QDirModel"8?Type QDirModel0:@8B8Close QDockWidget0:@V?8B8Dock QDockWidgetV4:@V?8B8Float QDockWidget 5=H5LessQDoubleSpinBox V;LH5MoreQDoubleSpinBox&OK&OK QErrorMessageB&>:07C20B8 F5 ?>2V4><;5==O 7=>2C&Show this message again QErrorMessage8=52046C20;L=5 ?>2V4><;5==O:Debug Message: QErrorMessage"$0B0;L=0 ?><8;:0: Fatal Error: QErrorMessage>?5@5465==O:Warning: QErrorMessage@5<>6;82> AB2>@8B8 %1 4;O 282>4CCannot create %1 for outputQFileD5<>6;82> 2V4:@8B8 %1 4;O 22545==OCannot open %1 for inputQFile:5<>6;82> 2V4:@8B8 4;O 282>4CCannot open for outputQFileD5<>6;82> 2840;8B8 ?>G0B:>289 D09;Cannot remove source fileQFile($09;->B@8<C20G VA=CTDestination file existsQFile"1V9 70?8AC 1;>:0Failure to write blockQFile>4=89 D09;>289 @CHV9 =5 T 4>ABC?=8< 01> ?V4B@8<CT UnMapExtensionBNo file engine available or engine does not support UnMapExtensionQFile>A;V4>2=89 D09; =5 1C45 ?5@59<5=>20=> 70 4>?><>3>N 1;>G=>3> :>?VN20==O0Will not rename sequential file using block copyQFile%1 "5:0 =5 7=0945=0. C4L ;0A:0, ?5@52V@B5, I> 2:070=5 ?@028;L=5 V<'O B5:8.K%1 Directory not found. Please verify the correct directory name was given. QFileDialog%1 $09; =5 7=0945=>. C4L ;0A:0, ?5@52V@B5, I> 2:070=5 ?@028;L=5 V<'O D09;C.A%1 File not found. Please verify the correct file name was given. QFileDialogP%1 265 VA=CT. 060TB5 ?5@570?8A0B8 9>3>?-%1 already exists. Do you want to replace it? QFileDialog&1@0B8&Choose QFileDialog&840;8B8&Delete QFileDialog&>20 B5:0 &New Folder QFileDialog&V4:@8B8&Open QFileDialog&5@59<5=C20B8&Rename QFileDialog&15@53B8&Save QFileDialogx'%1' 70E8I5=> 2V4 70?8AC. 060TB5 2840;8B8 =572060NG8 =0 F5?9'%1' is write protected. Do you want to delete it anyway? QFileDialogA524>=V<Alias QFileDialog#AV D09;8 (*) All Files (*) QFileDialog#AV D09;8 (*)All Files (*.*) QFileDialogJ8 2?52=5=V, I> E>G5B5 2840;8B8 '%1'?!Are sure you want to delete '%1'? QFileDialog 0704Back QFileDialog>5@59B8 4> 45B0;L=>3> ?5@53;O4CChange to detail view mode QFileDialog85@59B8 4> ?5@53;O4C A?8A:><Change to list view mode QFileDialog25 240;>AO 2840;8B8 B5:C.Could not delete directory. QFileDialog$!B2>@8B8 =>2C B5:CCreate New Folder QFileDialog$!B2>@8B8 =>2C B5:CCreate a New Folder QFileDialog5B0;L=> Detail View QFileDialog"5:8 Directories QFileDialog "5:0: Directory: QFileDialog8A:Drive QFileDialog$09;File QFileDialog&<'O D09;C: File &name: QFileDialog"5:0 File Folder QFileDialog"8? D09;V2:Files of type: QFileDialog>HC: B5:8Find Directory QFileDialog"5:0Folder QFileDialog ?5@54Forward QFileDialogB8 =0704Go back QFileDialogB8 2?5@54 Go forward QFileDialog85@59B8 4> 10BL:V2AL:>W B5:8Go to the parent directory QFileDialog!?8A:>< List View QFileDialog5@53;O4 2:Look in: QFileDialogV9 :><?'NB5@ My Computer QFileDialog>20 B5:0 New Folder QFileDialogV4:@8B8Open QFileDialog 0BL:V2AL:0 B5:0Parent Directory QFileDialog5I>402=V <VAFO Recent Places QFileDialog840;8B8Remove QFileDialog15@53B8 O:Save As QFileDialog!:>@>G5==OShortcut QFileDialog>:070B8Show  QFileDialog6>:07C20B8 ?@8&E>20=V D09;8Show &hidden files QFileDialog52V4><>Unknown QFileDialog %1 1%1 GBQFileSystemModel %1 1%1 KBQFileSystemModel %1 1%1 MBQFileSystemModel %1 "1%1 TBQFileSystemModel%1 109B %1 byte(s)QFileSystemModel%1 109B%1 bytesQFileSystemModel<b><'O "%1" =5 <>65 1CB8 28:>@8AB0=5.</b><p>!?@>1C9B5 28:>@8AB0B8 V=H5 V<'O, <5=H>W 4>268=8 01> 157 7=0:V2 ?C=:BC0FVW.oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModel><?'NB5@ComputerQFileSystemModel0B0 7<V=8 Date ModifiedQFileSystemModel,5?@028;L=5 V<'O D09;CInvalid filenameQFileSystemModel"8?KindQFileSystemModelV9 :><?'NB5@ My ComputerQFileSystemModel<'ONameQFileSystemModel  >7<V@SizeQFileSystemModel"8?TypeQFileSystemModelC4L-O:0Any QFontDatabase@01AL:0Arabic QFontDatabaseV@<5=AL:0Armenian QFontDatabase5=30;LAL:0Bengali QFontDatabase '>@=89Black QFontDatabase 8@=89Bold QFontDatabase8@8;8FOCyrillic QFontDatabase!5@54=V9Demi QFontDatabase0?V268@=89 Demi Bold QFontDatabase520=030@V Devanagari QFontDatabase@C78=AL:0Georgian QFontDatabase@5FL:0Greek QFontDatabaseC460@0BVGujarati QFontDatabaseC@<C:EVGurmukhi QFontDatabase 2@8BHebrew QFontDatabase C@A82Italic QFontDatabase/?>=AL:0Japanese QFontDatabase0==040Kannada QFontDatabaseE<5@AL:0Khmer QFontDatabase>@59AL:0Korean QFontDatabase0>AL:0Lao QFontDatabase0B8=8FOLatin QFontDatabase!2VB;89Light QFontDatabase0;0O;0< Malayalam QFontDatabase 'O=<0Myanmar QFontDatabase:>N'Ko QFontDatabase28G09=89Normal QFontDatabase0E8;5=89Oblique QFontDatabase30<Ogham QFontDatabase@VOOriya QFontDatabase C=VG=0Runic QFontDatabase$8B09AL:0 A?@>I5=0Simplified Chinese QFontDatabase!8=30;LAL:0Sinhala QFontDatabase!8<2>;L=0Symbol QFontDatabase!8@V9AL:0Syriac QFontDatabase"0<V;LAL:0Tamil QFontDatabase "5;C3CTelugu QFontDatabase"0=0Thaana QFontDatabase"09AL:0Thai QFontDatabase"815BAL:0Tibetan QFontDatabase(8B09AL:0 B@048FV9=0Traditional Chinese QFontDatabase'TB=0<AL:0 Vietnamese QFontDatabase &(@8DB&Font QFontDialog& >7<V@&Size QFontDialog&V4:@5A;5=89 &Underline QFontDialog D5:B8Effects QFontDialog&!B8;L H@8DBC Font st&yle QFontDialog @07>:Sample QFontDialog815@VBL H@8DB Select Font QFontDialog&5@5:@5A;5=89 Stri&keout QFontDialog&!8AB5<0 &?8A5<=>ABVWr&iting System QFontDialog&1V9 7<V=8 B5:8: %1Changing directory failed: %1QFtp" T4=0=> 7 2C7;><Connected to hostQFtp( T4=0=> 7 2C7;>< %1Connected to host %1QFtp@V4<>20 C 7 T4=0==V 7 2C7;><: %1Connecting to host failed: %1QFtp"'T4=0==O 70:@8B>Connection closedQFtpLV4<>20 C 7 T4=0==V 4;O ?5@540GV 40=8E&Connection refused for data connectionQFtp>V4<>20 C 7 T4=0==V 7 2C7;>< %1Connection refused to host %1QFtpL'0A =0 7 T4=0==O 7 2C7;>< %1 28G5@?0=>Connection timed out to host %1QFtp,'T4=0==O 7 %1 70:@8B>Connection to %1 closedQFtp.1V9 AB2>@5==O B5:8: %1Creating directory failed: %1QFtp41V9 720=B065==O D09;C: %1Downloading file failed: %1QFtp(C7>; %1 =5 7=0945=> Host %1 foundQFtp(C7>; %1 =5 7=0945=>Host %1 not foundQFtp"C7>; =5 7=0945=> Host foundQFtp.1V9 ?5@53;O4C B5:8: %1Listing directory failed: %1QFtp1V9 2E>4C: %1Login failed: %1QFtp5 ?V4'T4=0=> Not connectedQFtp.1V9 2840;5==O B5:8: %1Removing directory failed: %1QFtp01V9 2840;5==O D09;C: %1Removing file failed: %1QFtp 52V4><0 ?><8;:0 Unknown errorQFtp61V9 2820=B065==O D09;C: %1Uploading file failed: %1QFtp(<'O 2C7;0 =5 7040=>No host name given QHostInfo 52V4><0 ?><8;:0 Unknown error QHostInfo"C7>; =5 7=0945=>Host not foundQHostInfoAgent,5?@028;L=5 V<'O 2C7;0Invalid hostnameQHostInfoAgent(<'O 2C7;0 =5 7040=>No host name givenQHostInfoAgent(52V4><89 B8? 04@5A8Unknown address typeQHostInfoAgent 52V4><0 ?><8;:0 Unknown errorQHostInfoAgent*5>1EV4=0 02B>@870FVOAuthentication requiredQHttp" T4=0=> 7 2C7;><Connected to hostQHttp( T4=0=> 7 2C7;>< %1Connected to host %1QHttp"'T4=0==O 70:@8B>Connection closedQHttp,# 7'T4=0==V 2V4<>2;5=>Connection refusedQHttpj# 7 T4=0==V 2V4<>2;5=> (01> G0A >GV:C20==O 28G5@?0=>)!Connection refused (or timed out)QHttp,'T4=0==O 7 %1 70:@8B>Connection to %1 closedQHttp0=V ?>H:>465=>Data corruptedQHttpH><8;:0 70?8AC 2V4?>2V4V 4> ?@8AB@>N Error writing response to deviceQHttp 1V9 70?8BC HTTPHTTP request failedQHttpx0?8B0=5 7 T4=0==O HTTPS, 0;5 ?V4B@8<:0 SSL =5 2:><?V;L>20=0:HTTPS connection requested but SSL support not compiled inQHttp(C7>; %1 =5 7=0945=> Host %1 foundQHttp(C7>; %1 =5 7=0945=>Host %1 not foundQHttp"C7>; =5 7=0945=> Host foundQHttp<5>1EV4=0 02B>@870FVO =0 2C7;VHost requires authenticationQHttpF5?@028;L=> D@03<5=B>20=V 40=V HTTPInvalid HTTP chunked bodyQHttpJ5?@028;L=89 703>;>2>: 2V4?>2V4V HTTPInvalid HTTP response headerQHttpF5 2AB0=>2;5=> A5@25@ 4;O 7 T4=0==ONo server set to connect toQHttpN5>1EV4=0 02B>@870FVO =0 ?@>:AV-A5@25@VProxy authentication requiredQHttpN5>1EV4=0 02B>@870FVO =0 ?@>:AV-A5@25@VProxy requires authenticationQHttp0?8B ?5@5@20=>Request abortedQHttp,1V9 @C:>AB8A:0==O SSLSSL handshake failedQHttpF!5@25@ =5A?>4V20=> 70:@82 7 T4=0==O%Server closed connection unexpectedlyQHttp652V4><89 <5B>4 02B>@870FVWUnknown authentication methodQHttp 52V4><0 ?><8;:0 Unknown errorQHttp4:070=> =52V4><89 ?@>B>:>;Unknown protocol specifiedQHttp45?@028;L=0 4>268=0 2<VABCWrong content lengthQHttp*5>1EV4=0 02B>@870FVOAuthentication requiredQHttpSocketEngineZ5 >B@8<0=> HTTP-2V4?>2V4L 2V4 ?@>:AV-A5@25@0(Did not receive HTTP response from proxyQHttpSocketEngineX><8;:0 >1<V=C 40=8<8 7 ?@>:AV-A5@25@>< HTTP#Error communicating with HTTP proxyQHttpSocketEnginej><8;:0 @>71>@C 70?8BC 02B>@870FVW 2V4 ?@>:AV-A5@25@0/Error parsing authentication request from proxyQHttpSocketEngineh T4=0==O 7 ?@>:AV-A5@25@>< 1C;> =5A?>4V20=> 70:@8B5#Proxy connection closed prematurelyQHttpSocketEngineD@>:AV-A5@25@ 2V4<>282 C 7 T4=0==VProxy connection refusedQHttpSocketEngineD@>:AV-A5@25@ 2V4<>282 C 7 T4=0==VProxy denied connectionQHttpSocketEngineX'0A =0 7 T4=0==O 7 ?@>:AV-A5@25@>< 28G5@?0=>!Proxy server connection timed outQHttpSocketEngine25 7=0945=> ?@>:AV-A5@25@Proxy server not foundQHttpSocketEngine85 240;>AO ?>G0B8 B@0=70:FVNCould not start transaction QIBaseDriver8><8;:0 2V4:@8BBO 1078 40=8EError opening database QIBaseDriver<5<>6;82> 7025@H8B8 B@0=70:FVNUnable to commit transaction QIBaseDriver<5<>6;82> 2V4:>B8B8 B@0=70:FVNUnable to rollback transaction QIBaseDriver25 240;>AO 284V;8B8 28@07Could not allocate statement QIBaseResult@5 240;>AO >?8A0B8 2EV4=89 28@07"Could not describe input statement QIBaseResult05 240;>AO >?8A0B8 28@07Could not describe statement QIBaseResultJ5 240;>AO >B@8<0B8 =0ABC?=89 5;5<5=BCould not fetch next item QIBaseResult.5 240;>AO 7=09B8 <0A82Could not find array QIBaseResult>5 240;>AO >B@8<0B8 40=V <0A82CCould not get array data QIBaseResultP5 240;>AO >B@8<0B8 V=D>@<0FVN ?@> 70?8BCould not get query info QIBaseResultP5 240;>AO >B@8<0B8 V=D>@<0FVN ?@> 28@07Could not get statement info QIBaseResult85 240;>AO ?V43>BC20B8 28@07Could not prepare statement QIBaseResult85 240;>AO ?>G0B8 B@0=70:FVNCould not start transaction QIBaseResult.5<>6;82> 70:@8B8 28@07Unable to close statement QIBaseResult<5<>6;82> 7025@H8B8 B@0=70:FVNUnable to commit transaction QIBaseResult.5<>6;82> AB2>@8B8 BLOBUnable to create BLOB QIBaseResult05<>6;82> 28:>=0B8 70?8BUnable to execute query QIBaseResult.5<>6;82> 2V4:@8B8 BLOBUnable to open BLOB QIBaseResult05<>6;82> ?@>G8B0B8 BLOBUnable to read BLOB QIBaseResult.5<>6;82> 70?8A0B8 BLOBUnable to write BLOB QIBaseResult@0 ?@8AB@>W =5<0T 2V;L=>3> <VAFONo space left on device QIODevice.$09; G8 B5:0 =5 VA=CNBLNo such file or directory QIODevice">ABC? 701>@>=5=>Permission denied QIODevice201030B> 2V4:@8B8E D09;V2Too many open files QIODevice 52V4><0 ?><8;:0 Unknown error QIODeviceFEPFEP QInputContext.5B>4 22545==O Mac OS XMac OS X input method QInputContext,5B>4 22545==O S60 FEPS60 FEP input method QInputContext,5B>4 22545==O WindowsWindows input method QInputContextXIMXIM QInputContext$5B>4 22545==O XIMXIM input method QInputContext"254VBL 7=0G5==O:Enter a value: QInputDialogJ'%1' T =5?@028;L=8< >1'T:B>< ELF (%2)"'%1' is an invalid ELF object (%2)QLibrary,'%1' =5 T >1'T:B>< ELF'%1' is not an ELF objectQLibrary6'%1' =5 T >1'T:B>< ELF (%2)'%1' is not an ELF object (%2)QLibraryN5<>6;82> 7020=B068B8 1V1;V>B5:C %1: %2Cannot load library %1: %2QLibraryR5<>6;82> @>72 O70B8 A8<2>; "%1" 2 %2: %3$Cannot resolve symbol "%1" in %2: %3QLibraryN5<>6;82> 2820=B068B8 1V1;V>B5:C %1: %2Cannot unload library %1: %2QLibrary^0=V 25@8DV:0FVW 4>40B:C =5 71V30NBLAO 4;O %1 )Plugin verification data mismatch in '%1'QLibraryL$09; '%1' =5 T ?@028;L=89 4>40B:>< Qt.'The file '%1' is not a valid Qt plugin.QLibrary>40B>: '%1' 28:>@8AB>2CT =5AC<VA=C 25@AVN 1V1;V>B5:8 Qt. (%2.%3.%4) [%5]=The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]QLibrary>40B>: '%1' 28:>@8AB>2CT =5AC<VA=C 25@AVN 1V1;V>B5:8 Qt. (5<>6;82> 7<VHC20B8 7=52046C20;L=V B0 @5;V7=V 1V1;V>B5:8.)WThe plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)QLibrary>40B>: '%1' 28:>@8AB>2CT =5AC<VA=C 25@AVN 1V1;V>B5:8 Qt. GV:C202AO :;NG 71V@:8 "%2", >B@8<0=> "%3"OThe plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"QLibraryB8=0<VG=0 1V1;V>B5:0 =5 7=0945=0.!The shared library was not found.QLibrary 52V4><0 ?><8;:0 Unknown errorQLibrary&>?VN20B8&Copy QLineEdit&AB028B8&Paste QLineEdit&>2B>@8B8&Redo QLineEdit&>25@=CB8&Undo QLineEdit8&@V70B8Cu&t QLineEdit840;8B8Delete QLineEdit84V;8B8 2A5 Select All QLineEdit6%1: 4@5A0 28:>@8AB>2CTBLAO%1: Address in use QLocalServer"%1: ><8;:0 V<5=V%1: Name error QLocalServer*%1: >ABC? 701>@>=5=>%1: Permission denied QLocalServer.%1: 52V4><0 ?><8;:0 %2%1: Unknown error %2 QLocalServer*%1: >ABC? 701>@>=5=>%1: Access denied QLocalSocket*%1: ><8;:0 7'T4=0==O%1: Connection error QLocalSocket4%1: # 7'T4=0==V 2V4<>2;5=>%1: Connection refused QLocalSocket,%1: 025;8:0 40B03@0<0%1: Datagram too large QLocalSocket(%1: 5?@028;L=5 V<'O%1: Invalid name QLocalSocket:%1: V440;5=89 :V=5FL 70:@8B>%1: Remote closed QLocalSocket:%1: ><8;:0 4>ABC?C 4> A>:5B0%1: Socket access error QLocalSocketN%1: '0A =0 >?5@0FVN 7 A>:5B>< 28G5@?0=>%1: Socket operation timed out QLocalSocket4%1: ><8;:0 @5AC@AC A>:5B0%1: Socket resource error QLocalSocketL%1: 5?V4B@8<C20=0 4;O A>:5B0 >?5@0FVO)%1: The socket operation is not supported QLocalSocket(%1: 52V4><0 ?><8;:0%1: Unknown error QLocalSocket.%1: 52V4><0 ?><8;:0 %2%1: Unknown error %2 QLocalSocket65<>6;82> ?>G0B8 B@0=70:FVNUnable to begin transaction QMYSQLDriver<5<>6;82> 7025@H8B8 B@0=70:FVNUnable to commit transaction QMYSQLDriver(5<>6;82> 7'T4=0B8ALUnable to connect QMYSQLDriver>5<>6;82> 2V4:@8B8 107C 40=8E 'Unable to open database ' QMYSQLDriver<5<>6;82> 2V4:>B8B8 B@0=70:FVNUnable to rollback transaction QMYSQLDriverJ5<>6;82> ?@82'O70B8 28EV4=V 7=0G5==OUnable to bind outvalues QMYSQLResult:5<>6;82> ?@82'O70B8 7=0G5==OUnable to bind value QMYSQLResultD5<>6;82> 28:>=0B8 =0ABC?=89 70?8BUnable to execute next query QMYSQLResult05<>6;82> 28:>=0B8 70?8BUnable to execute query QMYSQLResult05<>6;82> 28:>=0B8 28@07Unable to execute statement QMYSQLResult.5<>6;82> >B@8<0B8 40=VUnable to fetch data QMYSQLResult65<>6;82> ?V43>BC20B8 28@07Unable to prepare statement QMYSQLResult.5<>6;82> A:8=CB8 28@07Unable to reset statement QMYSQLResultL5<>6;82> 715@53B8 =0ABC?=89 @57C;LB0BUnable to store next result QMYSQLResult85<>6;82> 715@53B8 @57C;LB0BUnable to store result QMYSQLResultH5<>6;82> 715@53B8 @57C;LB0B8 28@07C!Unable to store statement results QMYSQLResult(57 =0728) (Untitled)QMdiArea%1 - [%2] %1 - [%2] QMdiSubWindow0:@8&B8&Close QMdiSubWindow&5@5AC=CB8&Move QMdiSubWindow&V4=>28B8&Restore QMdiSubWindow& >7<V@&Size QMdiSubWindow- [%1] QMdiSubWindow0:@8B8Close QMdiSubWindow>2V4:0Help QMdiSubWindow&0:A8<V7C20B8 Ma&ximize QMdiSubWindow0:A8<V7C20B8Maximize QMdiSubWindow5=NMenu QMdiSubWindow&V=V<V7C20B8 Mi&nimize QMdiSubWindowV=V<V7C20B8Minimize QMdiSubWindowV4=>28B8Restore QMdiSubWindowV4=>28B8 Restore Down QMdiSubWindow(3>@=CB8 2 703>;>2>:Shade QMdiSubWindow&0;8H0B8AL =0 &3>@V Stay on &Top QMdiSubWindow. >73>@=CB8 V7 703>;>2:0Unshade QMdiSubWindow0:@8B8CloseQMenu8:>=0B8ExecuteQMenuV4:@8B8OpenQMenuVWActionsQMenuBarCB>20 ?0=5;LCorner ToolbarQMenuBarx<h3>@> Qt</h3><p>&O ?@>3@0<0 28:>@8AB>2CT Qt 25@AVW %1.</p>8

About Qt

This program uses Qt version %1.

 QMessageBox <p>Qt - F5 V=AB@C<5=B0@V9 4;O :@>A-?;0BD>@<=>W @>7@>1:8 ?@>3@0< =0 C++.</p><p>Qt =040T ?5@5=>A8<VABL T48=>3> :>4C <V6 MS&nbsp;Windows, Mac&nbsp;OS&nbsp;X, Linux B0 CAV<0 V=H8<8 3>;>2=8<8 :><5@FV9=8<8 20@V0=B0<8 Unix. "0:>6, Qt 4>ABC?=0 4;O 21C4>20=8E ?@8AB@>W2 C 283;O4V Qt 4;O Embedded Linux B0 Qt 4;O Windows CE.</p><p>Qt 4>ABC?=0 =0 C<>20E B@L>E @V7=8E >?FV9 ;VF5=7C20==O 7 <5B>N 704>2>;5==O ?>B@51 CAVE =0H8E @V7=><0=VB=8E :>@8ABC20GV2.</p><p>Qt ;VF5=7>20=0 =0 C<>20E =0H>W :><5@FV9=>W ;VF5=7V9=>W C3>48 ?@840B=0 4;O @>7@>1:8 ?@>?VTB0@=>3>/:><5@FV9=>3> ?@>3@0<=>3> 70157?5G5==O B>4V, :>;8 28 =5 1060TB5 =04020B8 1C4L-O:89 :>4 G8 :>;8 =5 <>65B5 ?@89=OB8 C<>28 ;VF5=7V9 GNU LGPL 25@AVW 2.1 G8 GNU GPL 25@AVW 3.0.</p><p>Qt ;VF5=7>20=0 =0 C<>20E GNU LGPL 25@AVW 2.1 ?@840B=0 4;O @>7@>1:8 ?@>3@0< =0 107V Qt (?@>?VTB0@=8E 01> 7 2V4:@8B8< :>4><) 70 C<>28, I> 28 <>65B5 ?>3>48B8AL 7 28<>30<8 B0 C<>20<8 GNU LGPL 25@AVW 2.1.</p><p>Qt ;VF5=7>20=0 =0 C<>20E GNU General Public License 25@AVW 3.0 ?@840B=0 4;O @>7@>1:8 ?@>3@0< =0 107V Qt, :>;8 28 1060TB5 28:>@8AB>2C20B8 B0:V ?@>3@0<8 C ?>T4=0==V 7 ?@>3@0<=8< 70157?5G5==O<, I> ?V4?040T ?V4 28<>38 GNU GPL 25@AVW 3.0 01> :>;8 28 1060TB5 4>B@8<C20B8AL 28<>3 GNU GPL 25@AVW 3.0.</p><p>C4L ;0A:0, ?5@53;O=LB5 <a href="http://qt.nokia.com/products/licensing">qt.nokia.com/products/licensing</a> 4;O >3;O4C ;VF5=7C20==O Qt.</p><p>Copyright (C) 2012 >@?>@0FVO Nokia B0/01> WW 4>GV@=V :><?0=VW.</p><p>Qt - F5 ?@>4C:B Nokia. >482VBLAO <a href="http://qt.nokia.com/">qt.nokia.com</a> 4;O 4>40B:>2>W V=D>@<0FVW.</p>

Qt is a C++ toolkit for cross-platform application development.

Qt provides single-source portability across MS Windows, Mac OS X, Linux, and all major commercial Unix variants. Qt is also available for embedded devices as Qt for Embedded Linux and Qt for Windows CE.

Qt is available under three different licensing options designed to accommodate the needs of our various users.

Qt licensed under our commercial license agreement is appropriate for development of proprietary/commercial software where you do not want to share any source code with third parties or otherwise cannot comply with the terms of the GNU LGPL version 2.1 or GNU GPL version 3.0.

Qt licensed under the GNU LGPL version 2.1 is appropriate for the development of Qt applications (proprietary or open source) provided you can comply with the terms and conditions of the GNU LGPL version 2.1.

Qt licensed under the GNU General Public License version 3.0 is appropriate for the development of Qt applications where you wish to use such applications in combination with software subject to the terms of the GNU GPL version 3.0 or where you are otherwise willing to comply with the terms of the GNU GPL version 3.0.

Please see qt.nokia.com/products/licensing for an overview of Qt licensing.

Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).

Qt is a Nokia product. See qt.nokia.com for more information.

 QMessageBox @> QtAbout Qt QMessageBox>2V4:0Help QMessageBox&@8E>20B8 45B0;V...Hide Details... QMessageBoxOKOK QMessageBox$>:070B8 45B0;V...Show Details... QMessageBox.815@VBL <5B>4 22545==O Select IMQMultiInputContext45@5<8:0G <5B>4V2 22545==OMultiple input method switcherQMultiInputContextPlugin5@5<8:0G <5B>4V2 22545==O, I> 28:>@8AB>2CT :>=B5:AB=5 <5=N B5:AB>28E 2V465BV2MMultiple input method switcher that uses the context menu of the text widgetsQMultiInputContextPluginJ=H89 A>:5B 265 A;CE0T F59 A0<89 ?>@B4Another socket is already listening on the same portQNativeSocketEnginez!?@>10 28:>@8AB0B8 A>:5B IPv6 =0 ?;0BD>@<V 157 ?V4B@8<:8 IPv6=Attempt to use IPv6 socket on a platform with no IPv6 supportQNativeSocketEngine,# 7'T4=0==V 2V4<>2;5=>Connection refusedQNativeSocketEngine4'0A =0 7 T4=0==O 28G5@?0=>Connection timed outQNativeSocketEngineB0B03@0<0 7025;8:0, I>1 =04VA;0B8Datagram was too large to sendQNativeSocketEngine"C7>; =54>ABC?=89Host unreachableQNativeSocketEngine<5?@028;L=89 45A:@8?B>@ A>:5B0Invalid socket descriptorQNativeSocketEngine><8;:0 <5@56V Network errorQNativeSocketEngineD'0A =0 <5@5652C >?5@0FVN 28G5@?0=>Network operation timed outQNativeSocketEngine"5@560 =54>ABC?=0Network unreachableQNativeSocketEngine*?5@0FVO 7 =5-A>:5B><Operation on non-socketQNativeSocketEngine(54>AB0B=L> @5AC@AV2Out of resourcesQNativeSocketEngine">ABC? 701>@>=5=>Permission deniedQNativeSocketEngine<"8? ?@>B>:>;C =5 ?V4B@8<CTBLAOProtocol type not supportedQNativeSocketEngine$4@5A0 =5 4>ABC?=0The address is not availableQNativeSocketEngine4@5A0 70E8I5=0The address is protectedQNativeSocketEngine64@5A0 265 28:>@8AB>2CTBLAO#The bound address is already in useQNativeSocketEngineb5?@028;L=89 B8? ?@>:AV-A5@25@C 4;O FVTW >?5@0FVW,The proxy type is invalid for this operationQNativeSocketEngineBV440;5=89 2C7>; 70:@82 7 T4=0==O%The remote host closed the connectionQNativeSocketEngineV5<>6;82> V=VFV0;V7C20B8 H8@>:><>2=89 A>:5B%Unable to initialize broadcast socketQNativeSocketEngineZ5<>6;82> V=VFV0;V7C20B8 =51;>:C20;L=89 A>:5B(Unable to initialize non-blocking socketQNativeSocketEngine>5<>6;82> >B@8<0B8 ?>2V4><;5==OUnable to receive a messageQNativeSocketEngine@5<>6;82> =04VA;0B8 ?>2V4><;5==OUnable to send a messageQNativeSocketEngine$5<>6;82> 70?8A0B8Unable to writeQNativeSocketEngine 52V4><0 ?><8;:0 Unknown errorQNativeSocketEngineD5?V4B@8<C20=0 4;O A>:5B0 >?5@0FVOUnsupported socket operationQNativeSocketEngine(><8;:0 2V4:@8BBO %1Error opening %1QNetworkAccessCacheBackend(5?@028;L=89 URI: %1Invalid URI: %1QNetworkAccessDataBackendhV440;5=89 2C7>; =5A?>4V20=> 70:@82 7 T4=0==O 4;O %13Remote host closed the connection prematurely on %1QNetworkAccessDebugPipeBackend2><8;:0 A>:5B0 4;O %1: %2Socket error on %1: %2QNetworkAccessDebugPipeBackend.><8;:0 70?8AC 2 %1: %2Write error writing to %1: %2QNetworkAccessDebugPipeBackendF5<>6;82> 2V4:@8B8 %1: (;OE T B5:>N#Cannot open %1: Path is a directoryQNetworkAccessFileBackend0><8;:0 2V4:@8BBO %1: %2Error opening %1: %2QNetworkAccessFileBackend0><8;:0 G8B0==O 7 %1: %2Read error reading from %1: %2QNetworkAccessFileBackendP0?8B =0 2V4:@8BBO =5;>:0;L=>3> D09;C %1%Request for opening non-local file %1QNetworkAccessFileBackend.><8;:0 70?8AC 2 %1: %2Write error writing to %1: %2QNetworkAccessFileBackendF5<>6;82> 2V4:@8B8 %1: H;OE T B5:>NCannot open %1: is a directoryQNetworkAccessFtpBackend4><8;:0 720=B065==O %1: %2Error while downloading %1: %2QNetworkAccessFtpBackend6><8;:0 2820=B065==O %1: %2Error while uploading %1: %2QNetworkAccessFtpBackendN1V9 2E>4C 4> %1: =5>1EV4=0 02B>@870FVO0Logging in to %1 failed: authentication requiredQNetworkAccessFtpBackendJ5 7=0945=> ?@840B=>3> ?@>:AV-A5@25@0No suitable proxy foundQNetworkAccessFtpBackendJ5 7=0945=> ?@840B=>3> ?@>:AV-A5@25@0No suitable proxy foundQNetworkAccessHttpBackend4>ABC? 4> <5@56V 28<:=5=>.Network access is disabled.QNetworkAccessManagerX><8;:0 720=B065==O %1 - A5@25@ 2V4?>2V2: %2)Error downloading %1 - server replied: %2 QNetworkReply0><8;:0 <5@5652>W A5AVW.Network session error. QNetworkReply.52V4><89 ?@>B>:>; "%1"Protocol "%1" is unknown QNetworkReply."8<G0A>289 71V9 <5@56V.Temporary network failure. QNetworkReply2?><8;:0 70?CA:C 4@0925@0.backend start error. QNetworkReply$?5@0FVO A:0A>20=0Operation canceledQNetworkReplyImpl25?@028;L=V =0;0HBC20==O.Invalid configuration.QNetworkSession&><8;:0 ?5@5<VI5==O Roaming errorQNetworkSessionPrivateImplR5@5<VI5==O 1C;> ?5@5@20=5 01> =5<>6;825.'Roaming was aborted or is not possible.QNetworkSessionPrivateImplR!5AVO ?5@5@20=0 :>@8ABC20G5< 01> A8AB5<>N!Session aborted by user or systemQNetworkSessionPrivateImplh?5@0FVO, I> 70?8BCTBLAO, =5 ?V4B@8<CTBLAO A8AB5<>N.7The requested operation is not supported by the system.QNetworkSessionPrivateImplT!5AVO ?5@5@20=0 :>@8ABC20G5< 01> A8AB5<>N..The session was aborted by the user or system.QNetworkSessionPrivateImplV5<>6;82> 28:>@8AB0B8 2:070=V =0;0HBC20==O.+The specified configuration cannot be used.QNetworkSessionPrivateImpl&5287=0G5=0 ?><8;:0Unidentified ErrorQNetworkSessionPrivateImpl.52V4><0 ?><8;:0 A5AVW.Unknown session error.QNetworkSessionPrivateImpl65<>6;82> ?>G0B8 B@0=70:FVNUnable to begin transaction QOCIDriver<5<>6;82> 7025@H8B8 B@0=70:FVNUnable to commit transaction QOCIDriver05<>6;82> V=VFV0;V7C20B8Unable to initialize QOCIDriver05<>6;82> 02B>@87C20B8ALUnable to logon QOCIDriver<5<>6;82> 2V4:>B8B8 B@0=70:FVNUnable to rollback transaction QOCIDriver05<>6;82> 284V;8B8 28@07Unable to alloc statement QOCIResultj5<>6;82> ?@82 O70B8 AB>2?5FL 4;O ?0:5B=>3> 28:>=0==O'Unable to bind column for batch execute QOCIResult:5<>6;82> ?@82'O70B8 7=0G5==OUnable to bind value QOCIResultB5<>6;82> 28:>=0B8 ?0:5B=89 28@07!Unable to execute batch statement QOCIResult05<>6;82> 28:>=0B8 28@07Unable to execute statement QOCIResult<5<>6;82> 287=0G8B8 B8? 28@07CUnable to get statement type QOCIResult>5<>6;82> ?5@59B8 4> =0ABC?=>3>Unable to goto next QOCIResult65<>6;82> ?V43>BC20B8 28@07Unable to prepare statement QOCIResult<5<>6;82> 7025@H8B8 B@0=70:FVNUnable to commit transaction QODBCDriver(5<>6;82> 7'T4=0B8ALUnable to connect QODBCDriver5<>6;82> 7'T4=0B8AL - @0925@ =5 ?V4B@8<CT CAN =5>1EV4=C DC=:FV>=0;L=VABLEUnable to connect - Driver doesn't support all functionality required QODBCDriverX5<>6;82> 28<:=CB8 02B>7025@H5==O B@0=70:FV9Unable to disable autocommit QODBCDriverZ5<>6;82> C2V<:=CB8 02B>7025@H5==O B@0=70:FV9Unable to enable autocommit QODBCDriver<5<>6;82> 2V4:>B8B8 B@0=70:FVNUnable to rollback transaction QODBCDriverQODBCResult::reset: 5<>6;82> 2AB0=>28B8 'SQL_CURSOR_STATIC', O: 0B@81CB 28@07C. C4L ;0A:0, ?5@52V@B5 =0;0HBC20==O 20H>3> 4@0925@C ODBCyQODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResult65<>6;82> ?@82'O70B8 7<V==CUnable to bind variable QODBCResult05<>6;82> 28:>=0B8 28@07Unable to execute statement QODBCResult$5<>6;82> >B@8<0B8Unable to fetch QODBCResult>5<>6;82> >B@8<0B8 ?5@H89 70?8AUnable to fetch first QODBCResultB5<>6;82> >B@8<0B8 >AB0==V9 70?8AUnable to fetch last QODBCResultD5<>6;82> >B@8<0B8 =0ABC?=89 70?8AUnable to fetch next QODBCResultF5<>6;82> >B@8<0B8 ?>?5@54=V9 70?8AUnable to fetch previous QODBCResult65<>6;82> ?V43>BC20B8 28@07Unable to prepare statement QODBCResultl"%1" ?>2B>@NT =072C ?>?5@54=L>W @>;V B0 1C45 28<:=5=5.:"%1" duplicates a previous role name and will be disabled.QObject"C7>; =5 7=0945=>Host not foundQObject42C:>289 A5@25@ PulseAudioPulseAudio Sound ServerQObject.=5?@028;L=89 70?8B "%1"invalid query: "%1"QObject 0720NameQPPDOptionsModel=0G5==OValueQPPDOptionsModel85 240;>AO ?>G0B8 B@0=70:FVNCould not begin transaction QPSQLDriver>5 240;>AO 7025@H8B8 B@0=70:FVNCould not commit transaction QPSQLDriver>5 240;>AO 2V4:>B8B8 B@0=70:FVNCould not rollback transaction QPSQLDriver(5<>6;82> 7'T4=0B8ALUnable to connect QPSQLDriver*5<>6;82> ?V4?8A0B8ALUnable to subscribe QPSQLDriver*5<>6;82> 2V4?8A0B8ALUnable to unsubscribe QPSQLDriver05<>6;82> AB2>@8B8 70?8BUnable to create query QPSQLResult65<>6;82> ?V43>BC20B8 28@07Unable to prepare statement QPSQLResult!0=B8<5B@8 (A<)Centimeters (cm)QPageSetupWidget $>@<0FormQPageSetupWidget8A>B0:Height:QPageSetupWidgetN9<8 (in) Inches (in)QPageSetupWidget0=4H0DB LandscapeQPageSetupWidget>;OMarginsQPageSetupWidgetV;V<5B@8 (<<)Millimeters (mm)QPageSetupWidget@VT=B0FVO OrientationQPageSetupWidget  >7<V@ AB>@V=:8: Page size:QPageSetupWidget 0?V@PaperQPageSetupWidget65@5;> ?0?5@C: Paper source:QPageSetupWidget">G:8 (pt) Points (pt)QPageSetupWidget>@B@5BPortraitQPageSetupWidget$15@=5=89 ;0=4H0DBReverse landscapeQPageSetupWidget"15@=5=89 ?>@B@5BReverse portraitQPageSetupWidget(8@8=0:Width:QPageSetupWidget=86=T ?>;5 bottom marginQPageSetupWidget;V25 ?>;5 left marginQPageSetupWidget?@025 ?>;5 right marginQPageSetupWidget25@E=T ?>;5 top marginQPageSetupWidget8>40B>: =5 1C;> 7020=B065=>.The plugin was not loaded. QPluginLoader 52V4><0 ?><8;:0 Unknown error QPluginLoaderP%1 265 VA=CT. 060TB5 ?5@570?8A0B8 9>3>?/%1 already exists. Do you want to overwrite it? QPrintDialog^%1 - B5:0. C4L ;0A:0, >15@VBL V=H5 V<'O D09;C.7%1 is a directory. Please choose a different file name. QPrintDialog&?FVW << &Options << QPrintDialog&?FVW >> &Options >> QPrintDialog &@C:&Print QPrintDialogF<qt>060TB5 ?5@570?8A0B8 9>3>?</qt>%Do you want to overwrite it? QPrintDialogA0 QPrintDialog$A0 (841 x 1189 <<)A0 (841 x 1189 mm) QPrintDialogA1 QPrintDialog"A1 (594 x 841 <<)A1 (594 x 841 mm) QPrintDialogA2 QPrintDialog"A2 (420 x 594 <<)A2 (420 x 594 mm) QPrintDialogA3 QPrintDialog"A3 (297 x 420 <<)A3 (297 x 420 mm) QPrintDialogA4 QPrintDialogJA4 (210 x 297 <<, 8.26 x 11.7 4N9<V2)%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialogA5 QPrintDialog"A5 (148 x 210 <<)A5 (148 x 210 mm) QPrintDialogA6 QPrintDialog"A6 (105 x 148 <<)A6 (105 x 148 mm) QPrintDialogA7 QPrintDialog A7 (74 x 105 <<)A7 (74 x 105 mm) QPrintDialogA8 QPrintDialogA8 (52 x 74 <<)A8 (52 x 74 mm) QPrintDialogA9 QPrintDialogA9 (37 x 52 <<)A9 (37 x 52 mm) QPrintDialogA524>=V<8: %1 Aliases: %1 QPrintDialogB0 QPrintDialog&B0 (1000 x 1414 <<)B0 (1000 x 1414 mm) QPrintDialogB1 QPrintDialog$B1 (707 x 1000 <<)B1 (707 x 1000 mm) QPrintDialogB10 QPrintDialog B10 (31 x 44 <<)B10 (31 x 44 mm) QPrintDialogB2 QPrintDialog"B2 (500 x 707 <<)B2 (500 x 707 mm) QPrintDialogB3 QPrintDialog"B3 (353 x 500 <<)B3 (353 x 500 mm) QPrintDialogB4 QPrintDialog"B4 (250 x 353 <<)B4 (250 x 353 mm) QPrintDialogB5 QPrintDialogJB5 (176 x 250 <<, 6.93 x 9.84 4N9<V2)%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialogB6 QPrintDialog"B6 (125 x 176 <<)B6 (125 x 176 mm) QPrintDialogB7 QPrintDialog B7 (88 x 125 <<)B7 (88 x 125 mm) QPrintDialogB8 QPrintDialogB8 (62 x 88 <<)B8 (62 x 88 mm) QPrintDialogB9 QPrintDialogB9 (44 x 62 <<)B9 (44 x 62 mm) QPrintDialogC5E QPrintDialog$C5E (163 x 229 <<)C5E (163 x 229 mm) QPrintDialog>@8ABC20FL:89Custom QPrintDialogDLE QPrintDialog$DLE (110 x 220 <<)DLE (110 x 220 mm) QPrintDialogExecutive Executive QPrintDialogRExecutive (7.5 x 10 4N9<V2, 191 x 254 <<))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialog> D09;C %1 =5<>6;82> ?8A0B8. C4L ;0A:0, >15@VBL V=H5 V<'O D09;C.=File %1 is not writable. Please choose a different file name. QPrintDialog$09; VA=CT File exists QPrintDialog FolioFolio QPrintDialog(Folio (210 x 330 <<)Folio (210 x 330 mm) QPrintDialog LedgerLedger QPrintDialog*Ledger (432 x 279 <<)Ledger (432 x 279 mm) QPrintDialog LegalLegal QPrintDialogJLegal (8.5 x 14 4N9<V2, 216 x 356 <<)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialog LetterLetter QPrintDialogLLetter (8.5 x 11 4N9<V2, 216 x 279 <<)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialog>:0;L=89 D09; Local file QPrintDialogOKOK QPrintDialog@C:Print QPrintDialog&@C:C20B8 2 D09;...Print To File ... QPrintDialog@C:C20B8 2A5 Print all QPrintDialog4@C:C20B8 ?>B>G=C AB>@V=:CPrint current page QPrintDialogV0?07>= 4@C:C Print range QPrintDialog&@C:C20B8 284V;5==OPrint selection QPrintDialog,@C:C20B8 2 D09; (PDF)Print to File (PDF) QPrintDialog:@C:C20B8 2 D09; (Postscript)Print to File (Postscript) QPrintDialogTabloidTabloid QPrintDialog,Tabloid (279 x 432 <<)Tabloid (279 x 432 mm) QPrintDialogt=0G5==O ?>;O '' =5 <>65 1CB8 1V;LH8< 7=0G5==O ?>;O '>'.7The 'From' value cannot be greater than the 'To' value. QPrintDialog,US Common #10 EnvelopeUS Common #10 Envelope QPrintDialogJUS Common #10 Envelope (105 x 241 <<)%US Common #10 Envelope (105 x 241 mm) QPrintDialog$0?8A0B8 2 D09; %1 Write %1 file QPrintDialog";>:0;L=> 7'T4=0=>locally connected QPrintDialog=52V4><>unknown QPrintDialog%1%QPrintPreviewDialog0:@8B8CloseQPrintPreviewDialog:A?>@B 2 PDF Export to PDFQPrintPreviewDialog(:A?>@B 2 PostScriptExport to PostScriptQPrintPreviewDialog5@H0 AB>@V=:0 First pageQPrintPreviewDialog#AN AB>@V=:CFit pageQPrintPreviewDialog> H8@8=V Fit widthQPrintPreviewDialog0=4H0DB LandscapeQPrintPreviewDialog AB0==O AB>@V=:0 Last pageQPrintPreviewDialog"0ABC?=0 AB>@V=:0 Next pageQPrintPreviewDialog$0@0<5B@8 AB>@V=:8 Page SetupQPrintPreviewDialog$0@0<5B@8 AB>@V=:8 Page setupQPrintPreviewDialog>@B@5BPortraitQPrintPreviewDialog$>?5@54=O AB>@V=:0 Previous pageQPrintPreviewDialog@C:PrintQPrintPreviewDialog2>?5@54=V9 ?5@53;O4 4@C:C Print PreviewQPrintPreviewDialog4>:070B8 B8BC;L=V AB>@V=:8Show facing pagesQPrintPreviewDialog8>:070B8 >3;O4 CAVE AB>@V=>:Show overview of all pagesQPrintPreviewDialog,>:070B8 >4=C AB>@V=:CShow single pageQPrintPreviewDialog1V;LH8B8Zoom inQPrintPreviewDialog<5=H8B8Zoom outQPrintPreviewDialog >7H8@5=VAdvancedQPrintPropertiesWidget $>@<0FormQPrintPropertiesWidget!B>@V=:0PageQPrintPropertiesWidget& >7V1@0B8 ?> :>?VOECollateQPrintSettingsOutput >;V@ColorQPrintSettingsOutput 568< :>;L>@C Color ModeQPrintSettingsOutput >?VWCopiesQPrintSettingsOutput >?V9:Copies:QPrintSettingsOutput >B>G=C AB>@V=:C Current PageQPrintSettingsOutput"2>AB>@>==V9 4@C:Duplex PrintingQPrintSettingsOutput $>@<0FormQPrintSettingsOutputV4BV=:8 AV@>3> GrayscaleQPrintSettingsOutput"> 4>23V9 AB>@>=V Long sideQPrintSettingsOutputV4ACB=V9NoneQPrintSettingsOutput0@0<5B@8OptionsQPrintSettingsOutput&0;0HBC20==O 282>4COutput SettingsQPrintSettingsOutput!B>@V=:8 7 Pages fromQPrintSettingsOutput@C:C20B8 2A5 Print allQPrintSettingsOutputV0?07>= 4@C:C Print rangeQPrintSettingsOutput* 72>@>B=L><C ?>@O4:CReverseQPrintSettingsOutput84V;5==O SelectionQPrintSettingsOutput&> :>@>B:V9 AB>@>=V Short sideQPrintSettingsOutput4>toQPrintSettingsOutput&0720:&Name: QPrintWidget...... QPrintWidget $>@<0Form QPrintWidget >7B0HC20==O: Location: QPrintWidget8EV4=89 &D09;: Output &file: QPrintWidget&;0AB82>ABV P&roperties QPrintWidget5@53;O4Preview QPrintWidget@8=B5@Printer QPrintWidget"8?:Type: QPrintWidgetp5 240;>AO 2V4:@8B8 ?5@5=0?@02;5==O 22545==O 4;O G8B0==O,Could not open input redirection for readingQProcessp5 240;>AO 2V4:@8B8 ?5@5=0?@02;5==O 282545==O 4;O 70?8AC-Could not open output redirection for writingQProcess2><8;:0 G8B0==O 7 ?@>F5ACError reading from processQProcess.><8;:0 70?8AC 2 ?@>F5AError writing to processQProcess$@>3@0<C =5 7040=>No program definedQProcess4@>F5A 020@V9=> 7025@H82AOProcess crashedQProcess01V9 70?CA:C ?@>F5AC: %1Process failed to start: %1QProcessH'0A =0 >?5@0FVN 7 ?@>F5A>< 28G5@?0=>Process operation timed outQProcess>><8;:0 @5AC@AC (71V9 fork): %1!Resource error (fork failure): %1QProcess!:0AC20B8CancelQProgressDialogV4:@8B8Open QPushButtonV4<VB8B8Check QRadioButtonJ=5?@028;L=89 A8=B0:A8A :;0AC A8<2>;V2bad char class syntaxQRegExpD=5?@028;L=89 A8=B0:A8A "lookahead"bad lookahead syntaxQRegExpB=5?@028;L=89 A8=B0:A8A ?>2B>@5==Obad repetition syntaxQRegExp>28:>@8AB0=0 28<:=5=0 <>6;82VABLdisabled feature usedQRegExp*=5?@028;L=0 :0B53>@VOinvalid categoryQRegExp*=5?@028;L=89 V=B5@20;invalid intervalQRegExp<=5?@028;L=5 2VAV<:>25 7=0G5==Oinvalid octal valueQRegExp@4>AO3=CB> 2=CB@VH=L>3> >1<565==Omet internal limitQRegExp42V4ACB=V9 ;V289 @>74V;N20Gmissing left delimQRegExp157 ?><8;>:no error occurredQRegExp&=5>GV:C20=89 :V=5FLunexpected endQRegExp8><8;:0 2V4:@8BBO 1078 40=8EError opening databaseQSQLite2Driver65<>6;82> ?>G0B8 B@0=70:FVNUnable to begin transactionQSQLite2Driver<5<>6;82> 7025@H8B8 B@0=70:FVNUnable to commit transactionQSQLite2Driver<5<>6;82> 2V4:>B8B8 B@0=70:FVNUnable to rollback transactionQSQLite2Driver05<>6;82> 28:>=0B8 28@07Unable to execute statementQSQLite2Result:5<>6;82> >B@8<0B8 @57C;LB0B8Unable to fetch resultsQSQLite2Result6><8;:0 70:@8BBO 1078 40=8EError closing database QSQLiteDriver8><8;:0 2V4:@8BBO 1078 40=8EError opening database QSQLiteDriver65<>6;82> ?>G0B8 B@0=70:FVNUnable to begin transaction QSQLiteDriver<5<>6;82> 7025@H8B8 B@0=70:FVNUnable to commit transaction QSQLiteDriver<5<>6;82> 2V4:>B8B8 B@0=70:FVNUnable to rollback transaction QSQLiteDriver0?8B 2V4ACB=V9No query QSQLiteResultDV;L:VABL ?0@0<5B@V2 =5 71V30TBLAOParameter count mismatch QSQLiteResult<5<>6;82> ?@82'O70B8 ?0@0<5B@8Unable to bind parameters QSQLiteResult05<>6;82> 28:>=0B8 28@07Unable to execute statement QSQLiteResult05<>6;82> >B@8<0B8 @O4>:Unable to fetch row QSQLiteResult.5<>6;82> A:8=CB8 28@07Unable to reset statement QSQLiteResult #<>20 ConditionQScriptBreakpointsModel 1V3V2 Hit-countQScriptBreakpointsModelIDQScriptBreakpointsModel@>?CI5=> Ignore-countQScriptBreakpointsModel>78FVOLocationQScriptBreakpointsModel48= @07 Single-shotQScriptBreakpointsModel840;8B8DeleteQScriptBreakpointsWidget >289NewQScriptBreakpointsWidget(&=09B8 2 A:@8?BV...&Find in Script...QScriptDebugger G8AB8B8 :>=A>;L Clear ConsoleQScriptDebuggerBG8AB8B8 7=52046C20;L=5 282545==OClear Debug OutputQScriptDebugger.G8AB8B8 6C@=0; ?><8;>:Clear Error LogQScriptDebugger@>4>268B8ContinueQScriptDebuggerCtrl+FQScriptDebuggerCtrl+F10QScriptDebuggerCtrl+GQScriptDebugger=520465==ODebugQScriptDebuggerF10QScriptDebuggerF11QScriptDebuggerF3QScriptDebuggerF5QScriptDebuggerF9QScriptDebugger =09B8 &=0ABC?=5 Find &NextQScriptDebugger"=09B8 &?>?5@54=TFind &PreviousQScriptDebugger 5@59B8 4> @O4:0 Go to LineQScriptDebugger5@5@20B8 InterruptQScriptDebugger  O4>::Line:QScriptDebugger&8:>=0B8 4> :C@A>@C Run to CursorQScriptDebugger48:>=0B8 4> =>2>3> A:@8?BCRun to New ScriptQScriptDebugger Shift+F11QScriptDebuggerShift+F3QScriptDebuggerShift+F5QScriptDebugger#2V9B8 2 Step IntoQScriptDebugger89B8 7Step OutQScriptDebugger5@59B8 G5@57 Step OverQScriptDebugger25@5<:=CB8 B>G:C ?5@5?8=CToggle BreakpointQScriptDebugger<img src=":/qt/scripttools/debugging/images/wrap.png">&nbsp;>HC: 7 ?>G0B:CJ Search wrappedQScriptDebuggerCodeFinderWidget&@0E>2C20B8 @53VAB@Case SensitiveQScriptDebuggerCodeFinderWidget0:@8B8CloseQScriptDebuggerCodeFinderWidget0ABC?=89NextQScriptDebuggerCodeFinderWidget>?5@54=V9PreviousQScriptDebuggerCodeFinderWidget&V;V A;>20 Whole wordsQScriptDebuggerCodeFinderWidget 0720NameQScriptDebuggerLocalsModel=0G5==OValueQScriptDebuggerLocalsModel  V25=LLevelQScriptDebuggerStackModel>78FVOLocationQScriptDebuggerStackModel 0720NameQScriptDebuggerStackModel#<>20 ?5@5?8=C:Breakpoint Condition: QScriptEdit.8<:=CB8 B>G:C ?5@5?8=CDisable Breakpoint QScriptEdit0#2V<:=CB8 B>G:C ?5@5?8=CEnable Breakpoint QScriptEdit25@5<:=CB8 B>G:C ?5@5?8=CToggle Breakpoint QScriptEdit">G:8 ?5@5?8=C BreakpointsQScriptEngineDebugger>=A>;LConsoleQScriptEngineDebugger0=52046C20;L=5 282545==O Debug OutputQScriptEngineDebuggerC@=0; ?><8;>: Error LogQScriptEngineDebugger&020=B065=V A:@8?B8Loaded ScriptsQScriptEngineDebugger>:0;L=V 7<V==VLocalsQScriptEngineDebugger.=52046C20G A:@8?BV2 QtQt Script DebuggerQScriptEngineDebugger >HC:SearchQScriptEngineDebugger!B5:StackQScriptEngineDebugger84ViewQScriptEngineDebugger0:@8B8CloseQScriptNewBreakpointWidget >=87CBottom QScrollBar > ;V2>W 3@0=8FV Left edge QScrollBar0 @O4>: 2=87 Line down QScrollBar0 @O4>: 23>@CLine up QScrollBar 0 AB>@V=:C 2=87 Page down QScrollBar"0 AB>@V=:C 2;V2> Page left QScrollBar$0 AB>@V=:C 2?@02> Page right QScrollBar"0 AB>@V=:C 23>@CPage up QScrollBar>;>65==OPosition QScrollBar"> ?@02>W 3@0=8FV Right edge QScrollBar"@>:@CB8B8 4>=87C Scroll down QScrollBar@>:@CB8B8 AN48 Scroll here QScrollBar @>:@CB8B8 2;V2> Scroll left QScrollBar"@>:@CB8B8 2?@02> Scroll right QScrollBar @>:@CB8B8 23>@C Scroll up QScrollBar 3>@CTop QScrollBar8%1: D09; :;NG0 UNIX =5 VA=CT%1: UNIX key file doesn't exist QSharedMemory%1: 265 VA=CT%1: already exists QSharedMemory%1: ?030=5 V<'O %1: bad name QSharedMemory@%1: @>7<V@ AB2>@5==O <5=H89 =C;O%1: create size is less then 0 QSharedMemory%1: =5 VA=CT%1: doesn't exist QSharedMemory%1: =5 VA=CT%1: doesn't exists QSharedMemory%1: 71V9 ftok%1: ftok failed QSharedMemory.%1: =5?@028;L=89 @>7<V@%1: invalid size QSharedMemory%1: ?CAB89 :;NG%1: key is empty QSharedMemory$%1: =5 ?@8:@V?;5=>%1: not attached QSharedMemory0%1: =54>AB0B=L> @5AC@AV2%1: out of resources QSharedMemory*%1: 4>ABC? 701>@>=5=>%1: permission denied QSharedMemory.%1: 71V9 70?8BC @>7<V@C%1: size query failed QSharedMemoryT%1: >1<565==O @>7<V@C 2AB0=>2;5=V A8AB5<>N$%1: system-imposed size restrictions QSharedMemory2%1: =5<>6;82> 701;>:C20B8%1: unable to lock QSharedMemory6%1: =5<>6;82> AB2>@8B8 :;NG%1: unable to make key QSharedMemoryX%1: =5<>6;82> 2AB0=>28B8 :;NG 4;O 1;>:C20==O%1: unable to set key on lock QSharedMemory4%1: =5<>6;82> @>71;>:C20B8%1: unable to unlock QSharedMemory.%1: =52V4><0 ?><8;:0 %2%1: unknown error %2 QSharedMemory++ QShortcut$>40B8 4> >1@0=>3> Add Favorite QShortcut.0;0HBC20==O OA:@02>ABVAdjust Brightness QShortcutAltAlt QShortcut>40B>: 2;V2>Application Left QShortcut>40B>: 2?@02>Application Right QShortcut0F8:;8B8 B@5:Audio Cycle Track QShortcut>A;V4>2=> Audio Forward QShortcut*8?04:>25 2V4B2>@5==OAudio Random Play QShortcut>2B>@N20B8 Audio Repeat QShortcut45@5<>B:0 72C:C =0 ?>G0B>: Audio Rewind QShortcut VH>2Away QShortcut 0704Back QShortcut0704 ?5@54 Back Forward QShortcutBackspace Backspace QShortcutBacktabBacktab QShortcut>A8;5==O 10AV2 Bass Boost QShortcut0A8 B8EVH5 Bass Down QShortcut0A8 3CG=VH5Bass Up QShortcut0B0@5OBattery QShortcutBluetooth Bluetooth QShortcut =830Book QShortcut02V30B>@Browser QShortcutCDCD QShortcut0;L:C;OB>@ Calculator QShortcut72>=8B8Call QShortcut$!D>:CAC20B8 :0<5@C Camera Focus QShortcut!?CA: :0<5@8Camera Shutter QShortcut5@E=V9 @53VAB@ Caps Lock QShortcutCapsLockCapsLock QShortcutG8AB8B8Clear QShortcut0:@8B8Close QShortcut25AB8 :>4 Code input QShortcut!?V;L=>B0 Community QShortcut>=B5:AB 1Context1 QShortcut>=B5:AB 2Context2 QShortcut>=B5:AB 3Context3 QShortcut>=B5:AB 4Context4 QShortcut>?VN20B8Copy QShortcutCtrlCtrl QShortcut8@V70B8Cut QShortcutDOSDOS QShortcutDelDel QShortcut840;8B8Delete QShortcut8A?;59Display QShortcut>:C<5=B8 Documents QShortcut=87Down QShortcutEisu Shift Eisu Shift QShortcutEisu ?5@5<:=CB8 Eisu toggle QShortcut8BO3=CB8Eject QShortcutEndEnd QShortcut EnterEnter QShortcutEscEsc QShortcut EscapeEscape QShortcutF%1F%1 QShortcut 1@0=5 Favorites QShortcut$V=0=A8Finance QShortcut$;V?Flip QShortcut ?5@54Forward QShortcut@0Game QShortcutB8Go QShortcut%0=38;LHangul QShortcut%0=38;L Banja Hangul Banja QShortcutV=5FL E0=38;O Hangul End QShortcut%0=38;L %0=G0 Hangul Hanja QShortcut%0=38;L '0<> Hangul Jamo QShortcut%0=38;L Jeonja Hangul Jeonja QShortcut"%0=38;L ?>ABE0=G0Hangul PostHanja QShortcut %0=38;L ?@5E0=G0Hangul PreHanja QShortcut%0=38;L Romaja Hangul Romaja QShortcut&%0=38;L A?5FV0;L=89Hangul Special QShortcut>G0B>: E0=38;O Hangul Start QShortcut">:;0AB8 A;CE02:CHangup QShortcutHankakuHankaku QShortcut>2V4:0Help QShortcut HenkanHenkan QShortcut@8A?0B8 Hibernate QShortcut%V@030=0Hiragana QShortcut"%V@030=0 0B0:0=0Hiragana Katakana QShortcutAB>@VOHistory QShortcutHomeHome QShortcut><0H=V9 >DVA Home Office QShortcut ><0H=O AB>@V=:0 Home Page QShortcut 0@OGV ?>A8;0==O Hot Links QShortcutInsIns QShortcutAB028B8Insert QShortcut0<:=CB8 :0=0 Kana Lock QShortcut0=0 Shift Kana Shift QShortcut 0=47VKanji QShortcut0B0:0=0Katakana QShortcutP<5=H8B8 OA:@02VABL ?V4A2VB:8 :;02V0BC@8Keyboard Brightness Down QShortcutR1V;LH8B8 OA:@02VABL ?V4A2VB:8 :;02V0BC@8Keyboard Brightness Up QShortcut@V<:./8<:. ?V4A2VB:C :;02V0BC@8Keyboard Light On/Off QShortcut ;02V0BC@=5 <5=N Keyboard Menu QShortcut>2B>@=89 =01V@Last Number Redial QShortcut0?CAB8B8 (0) Launch (0) QShortcut0?CAB8B8 (1) Launch (1) QShortcut0?CAB8B8 (2) Launch (2) QShortcut0?CAB8B8 (3) Launch (3) QShortcut0?CAB8B8 (4) Launch (4) QShortcut0?CAB8B8 (5) Launch (5) QShortcut0?CAB8B8 (6) Launch (6) QShortcut0?CAB8B8 (7) Launch (7) QShortcut0?CAB8B8 (8) Launch (8) QShortcut0?CAB8B8 (9) Launch (9) QShortcut0?CAB8B8 (A) Launch (A) QShortcut0?CAB8B8 (B) Launch (B) QShortcut0?CAB8B8 (C) Launch (C) QShortcut0?CAB8B8 (D) Launch (D) QShortcut0?CAB8B8 (E) Launch (E) QShortcut0?CAB8B8 (F) Launch (F) QShortcut >HB0 Launch Mail QShortcut@>3@020G Launch Media QShortcut ;V2>Left QShortcut0<?>G:0 LightBulb QShortcut89B8 7 A8AB5<8Logoff QShortcut5@5A;0B8 ;8AB Mail Forward QShortcut  8=>:Market QShortcut MassyoMassyo QShortcut&V4B2>@8B8 =0ABC?=5 Media Next QShortcut 0C70 Media Pause QShortcutV4B2>@5==O Media Play QShortcut(V4B2>@8B8 ?>?5@54=TMedia Previous QShortcut 0?8A Media Record QShortcut(C?8=8B8 2V4B2>@5==O Media Stop QShortcutCAB@VGMeeting QShortcut5=NMenu QShortcut5=N PBMenu PB QShortcut4@>3@0<0 <8BBT2>3> 72'O7:C Messenger QShortcutMetaMeta QShortcut8<5=H8B8 OA:@02VABL <>=VB>@CMonitor Brightness Down QShortcut:1V;LH8B8 OA:@02VABL <>=VB>@CMonitor Brightness Up QShortcutMuhenkanMuhenkan QShortcut&5:V;L:0 :0=4840BV2Multiple Candidate QShortcut C78:0Music QShortcut>W A09B8My Sites QShortcut >28=8News QShortcutVNo QShortcut&8D@>2V :;02VHVNum Lock QShortcutNumLockNumLock QShortcut&8D@>2V :;02VHV Number Lock QShortcutV4:@8B8 URLOpen URL QShortcut ?FVOOption QShortcut 0 AB>@V=:C 2=87 Page Down QShortcut"0 AB>@V=:C 23>@CPage Up QShortcutAB028B8Paste QShortcut PausePause QShortcut PgDownPgDown QShortcutPgUpPgUp QShortcut"5;5D>=Phone QShortcut>1@065==OPictures QShortcut"8<:=CB8 682;5==O Power Off QShortcut&>?5@54=V9 :0=4840BPrevious Candidate QShortcut PrintPrint QShortcut@C: 5:@0=C Print Screen QShortcut=>28B8Refresh QShortcut5@57020=B068B8Reload QShortcutV4?>2VAB8Reply QShortcut ReturnReturn QShortcut ?@02>Right QShortcut ><047VRomaji QShortcut15@B0B8 2V:=0Rotate Windows QShortcut15@B0==O KB Rotation KB QShortcut15@B0==O PB Rotation PB QShortcut15@53B8Save QShortcut15@V30G 5:@0=0 Screensaver QShortcutScroll Lock Scroll Lock QShortcutScrollLock ScrollLock QShortcut >HC:Search QShortcut 1@0B8Select QShortcut04VA;0B8Send QShortcut ShiftShift QShortcut@0<=8FOShop QShortcut!?;OG89 @568<Sleep QShortcut@>?CA:Space QShortcut&5@52V@:0 ?@02>?8AC Spellchecker QShortcut >74V;8B8 5:@0= Split Screen QShortcut$;5:B@>==0 B01;8FO Spreadsheet QShortcut  568< >GV:C20==OStandby QShortcut!B>?Stop QShortcut!C1B8B@8Subtitle QShortcutV4B@8<:0Support QShortcut@87C?8=8B8Suspend QShortcut SysReqSysReq QShortcut!8AB5<=89 70?8BSystem Request QShortcutTabTab QShortcut0=5;L 7040G Task Panel QShortcut"5@<V=0;Terminal QShortcut'0ATime QShortcut8>472>=8B8/?>:;0AB8 A;CE02:CToggle Call/Hangup QShortcut@0B8/0C70Toggle Media Play/Pause QShortcut=AB@C<5=B8Tools QShortcut>;>2=5 <5=NTop Menu QShortcutTourokuTouroku QShortcut>4>@>6Travel QShortcut' B8EVH5 Treble Down QShortcut' 3CG=VH5 Treble Up QShortcutUltra Wide BandUltra Wide Band QShortcut 3>@CUp QShortcut V45>Video QShortcut84View QShortcut>;>A>289 =01V@ Voice Dial QShortcut "8EVH5 Volume Down QShortcut8<:=CB8 72C: Volume Mute QShortcutCG=VH5 Volume Up QShortcutWWWWWW QShortcut@>:8=CB8ALWake Up QShortcut51-:0<5@0WebCam QShortcut"574@>B>20 <5@560Wireless QShortcut$"5:AB>289 ?@>F5A>@Word Processor QShortcutXFerXFer QShortcut"0:Yes QShortcutZenkakuZenkaku QShortcutZenkaku HankakuZenkaku Hankaku QShortcut1V;LH8B8Zoom In QShortcut<5=H8B8Zoom Out QShortcut iTouchiTouch QShortcut 0 AB>@V=:C 2=87 Page downQSlider"0 AB>@V=:C 2;V2> Page leftQSlider$0 AB>@V=:C 2?@02> Page rightQSlider"0 AB>@V=:C 23>@CPage upQSlider>78FVOPositionQSlider6"8? 04@5A8 =5 ?V4B@8<CTBLAOAddress type not supportedQSocks5SocketEngineN T4=0==O =5 4>72>;5=5 A5@25@>< SOCKSv5(Connection not allowed by SOCKSv5 serverQSocks5SocketEngineh T4=0==O 7 ?@>:AV-A5@25@>< 1C;> =5A?>4V20=> 70:@8B5&Connection to proxy closed prematurelyQSocks5SocketEngineD@>:AV-A5@25@ 2V4<>282 C 7 T4=0==VConnection to proxy refusedQSocks5SocketEngineX'0A =0 7 T4=0==O 7 ?@>:AV-A5@25@>< 28G5@?0=>Connection to proxy timed outQSocks5SocketEngine<030;L=89 71V9 A5@25@0 SOCKSv5General SOCKSv5 server failureQSocks5SocketEngineD'0A =0 <5@5652C >?5@0FVN 28G5@?0=>Network operation timed outQSocks5SocketEngineD1V9 02B>@870FVW 7 ?@>:AV-A5@25@><Proxy authentication failedQSocks5SocketEngineL1V9 02B>@870FVW 7 ?@>:AV-A5@25@><: %1Proxy authentication failed: %1QSocks5SocketEngine@5 7=0945=> 2C7>; ?@>:AV-A5@25@0Proxy host not foundQSocks5SocketEngine@><8;:0 ?@>B>:>;C SOCKS 25@AVW 5SOCKS version 5 protocol errorQSocks5SocketEngine@><0=40 SOCKSv5 =5 ?V4B@8<CTBLAOSOCKSv5 command not supportedQSocks5SocketEngineTTL <8=C2 TTL expiredQSocks5SocketEngineb52V4><89 :>4 ?><8;:8 ?@>:AV-A5@25@C SOCKSv5 0x%1%Unknown SOCKSv5 proxy error code 0x%1QSocks5SocketEngine!:0AC20B8CancelQSoftKeyManager025@H5=>DoneQSoftKeyManager 89B8ExitQSoftKeyManagerOKOKQSoftKeyManager ?FVWOptionsQSoftKeyManager 1@0B8SelectQSoftKeyManager 5=H5LessQSpinBox V;LH5MoreQSpinBox!:0AC20B8CancelQSql*!:0AC20B8 20HV 7<V=8?Cancel your edits?QSqlV4B25@48B8ConfirmQSql840;8B8DeleteQSql&840;8B8 F59 70?8A?Delete this record?QSqlAB028B8InsertQSqlVNoQSql15@53B8 7<V=8? Save edits?QSql=>28B8UpdateQSql"0:YesQSqlR5<>6;82> =040B8 A5@B8DV:0B 157 :;NG0, %1,Cannot provide a certificate with no key, %1 QSslSocketH><8;:0 AB2>@5==O :>=B5:ABC SSL (%1)Error creating SSL context (%1) QSslSocket>><8;:0 AB2>@5==O A5AVW SSL, %1Error creating SSL session, %1 QSslSocket>><8;:0 AB2>@5==O A5AVW SSL: %1Error creating SSL session: %1 QSslSocket:><8;:0 @C:>AB8A:0==O SSL: %1Error during SSL handshake: %1 QSslSocket^><8;:0 7020=B065==O ;>:0;L=>3> A5@B8DV:0B0, %1#Error loading local certificate, %1 QSslSocketP><8;:0 7020=B065==O 70:@8B>3> :;NG0, %1Error loading private key, %1 QSslSocket&><8;:0 G8B0==O: %1Error while reading: %1 QSslSocketX5?@028;L=89 01> ?>@>6=V9 A?8A>: H8D@V2 (%1)!Invalid or empty cipher list (%1) QSslSocket@5<>6;82> ?5@52V@8B8 A5@B8DV:0B8!No certificates could be verified QSslSocket5<0T ?><8;:8No error QSslSocketh48= 7 A5@B8DV:0BV2 F5=B@C A5@B8DV:0FVW =5?@028;L=89%One of the CA certificates is invalid QSslSocketR0:@8B89 :;NG =5 A5@B8DV:CT 2V4:@8B89, %1+Private key does not certify public key, %1 QSslSocketf5@528I5=> 4>268=C H;OEC ?0@0<5B@C basicConstraints?V4?8A0=89 B0 9><C =5<0T 4>2V@8-The certificate is self-signed, and untrusted QSslSocketR5 240;>AO 45H8D@C20B8 ?V4?8A A5@B8DV:0B00The certificate signature could not be decrypted QSslSocketd>;5 notAfter A5@B8DV:0B0 <VAB8BL =5?@028;L=89 G0A9The certificate's notAfter field contains an invalid time QSslSocketf>;5 notBefore A5@B8DV:0B0 <VAB8BL =5?@028;L=89 G0A:The certificate's notBefore field contains an invalid time QSslSocket~!5@B8DV:0B ?>B>G=>3> :0=4840B0 28402FO 1C;> 2V4E8;5=>, >A:V;L:8 ?@54AB02;5=V V<'O 28402FO B0 A5@V9=89 =><5@ =5 71V30NBLAO 7 V45=B8DV:0B>@>< :;NG0 A5@B8DV:0FV9=>3> >@30=C ?>B>G=>3> A5@B8DV:0B0The current candidate issuer certificate was rejected because its issuer name and serial number was present and did not match the authority key identifier of the current certificate QSslSocket!5@B8DV:0B ?>B>G=>3> :0=4840B0 28402FO 1C;> 2V4E8;5=>, >A:V;L:8 =0720 B5<8 =5 71V30TBLAO 7 V<5=5< 28402FO ?>B>G=>3> A5@B8DV:0B0The current candidate issuer certificate was rejected because its subject name did not match the issuer name of the current certificate QSslSocket0720 2C7;0 =5 71V30TBLAO 7 6>4=>N 7 ?@8?CAB8<8E =072 2C7;V2 4;O FL>3> A5@B8DV:0B0GThe host name did not match any of the valid hosts for this certificate QSslSocketH5 240;>AO 7=09B8 A5@B8DV:0B 28402FO)The issuer certificate could not be found QSslSocket5 240;>AO 7=09B8 A5@B8DV:0B 28402FO 4;O A5@B8DV:0B0, I> HC:0TBLAO ;>:0;L=>LThe issuer certificate of a locally looked up certificate could not be found QSslSocketR!5@B8DV:0B V=H>W AB>@>=8 2 G>@=><C A?8A:C#The peer certificate is blacklisted QSslSocketT=H0 AB>@>=0 =5 =040;0 6>4=>3> A5@B8DV:0B0(The peer did not present any certificate QSslSocket^5 240;>AO ?@>G8B0B8 2V4:@8B89 :;NG A5@B8DV:0B03The public key in the certificate could not be read QSslSocket>@5=5289 A5@B8DV:0B F5=B@C A5@B8DV:0FVW ?><VG5=89 =0 2V4E8;5==O 4;O 40=>W <5B8AThe root CA certificate is marked to reject the specified purpose QSslSocket>@5=5289 A5@B8DV:0B F5=B@C A5@B8DV:0FVW =5 T =04V9=8< 4;O 40=>W <5B87The root CA certificate is not trusted for this purpose QSslSocket>@5=5289 A5@B8DV:0B ;0=FN6:0 A5@B8DV:0BV2 A0<>?V4?8A0=89 B0 9><C =5<0T 4>2V@8KThe root certificate of the certificate chain is self-signed, and untrusted QSslSocket>5?@028;L=89 ?V4?8A A5@B8DV:0B0+The signature of the certificate is invalid QSslSocketZ040=89 A5@B8DV:0B =5?@840B=89 4;O 40=>W <5B87The supplied certificate is unsuitable for this purpose QSslSocket<5<>6;82> 45H8D@C20B8 40=V, %1Unable to decrypt data: %1 QSslSocket65<>6;82> 70?8A0B8 40=V: %1Unable to write data: %1 QSslSocket 52V4><0 ?><8;:0 Unknown error QSslSocket^V4ACB=V9 B8?>289 AB0= 2 VAB>@8G=><C AB0=V %1 +Missing default state in history state '%1' QStateMachinebV4ACB=V9 ?>G0B:>289 AB0= 2 A:;045=><C AB0=V %1 ,Missing initial state in compound state '%1' QStateMachine5<0T A?V;L=>3> ?@54:0 4;O FV;59 B0 465@5; ?5@5E>4C 7V AB0=C '%1'GNo common ancestor for targets and source of transition from state '%1' QStateMachine 52V4><0 ?><8;:0 Unknown error QStateMachine8><8;:0 2V4:@8BBO 1078 40=8EError opening database QSymSQLDriver&5?@028;L=0 >?FVO: Invalid option:  QSymSQLDriverPOLICY_DB_DEFAULT ?>28==0 1CB8 287=0G5=0 4> B>3>, O: 1C4L-O:V V=HV 287=0G5==O POLICY <>6CBL 1CB8 28:>@8AB0=VQPOLICY_DB_DEFAULT must be defined before any other POLICY definitions can be used QSymSQLDriver65<>6;82> ?>G0B8 B@0=70:FVNUnable to begin transaction QSymSQLDriver<5<>6;82> 7025@H8B8 B@0=70:FVNUnable to commit transaction QSymSQLDriver<5<>6;82> 2V4:>B8B8 B@0=70:FVNUnable to rollback transaction QSymSQLDriverH><8;:0 >B@8<0==O :V;L:>ABV AB>2?FV2Error retrieving column count QSymSQLResult>><8;:0 >B@8<0==O =0728 AB>2?FOError retrieving column name QSymSQLResult<><8;:0 >B@8<0==O B8?C AB>2?FOError retrieving column type QSymSQLResultDV;L:VABL ?0@0<5B@V2 =5 71V30TBLAOParameter count mismatch QSymSQLResult*8@07 =5 ?V43>B>2;5=>Statement is not prepared QSymSQLResult<5<>6;82> ?@82'O70B8 ?0@0<5B@8Unable to bind parameters QSymSQLResult05<>6;82> 28:>=0B8 28@07Unable to execute statement QSymSQLResult05<>6;82> >B@8<0B8 @O4>:Unable to fetch row QSymSQLResult.5<>6;82> A:8=CB8 28@07Unable to reset statement QSymSQLResultJ=H89 A>:5B 265 A;CE0T F59 A0<89 ?>@B4Another socket is already listening on the same portQSymbianSocketEnginez!?@>10 28:>@8AB0B8 A>:5B IPv6 =0 ?;0BD>@<V 157 ?V4B@8<:8 IPv6=Attempt to use IPv6 socket on a platform with no IPv6 supportQSymbianSocketEngine,# 7'T4=0==V 2V4<>2;5=>Connection refusedQSymbianSocketEngine4'0A =0 7 T4=0==O 28G5@?0=>Connection timed outQSymbianSocketEngineB0B03@0<0 7025;8:0, I>1 =04VA;0B8Datagram was too large to sendQSymbianSocketEngine"C7>; =54>ABC?=89Host unreachableQSymbianSocketEngine<5?@028;L=89 45A:@8?B>@ A>:5B0Invalid socket descriptorQSymbianSocketEngine><8;:0 <5@56V Network errorQSymbianSocketEngineD'0A =0 <5@5652C >?5@0FVN 28G5@?0=>Network operation timed outQSymbianSocketEngine"5@560 =54>ABC?=0Network unreachableQSymbianSocketEngine*?5@0FVO 7 =5-A>:5B><Operation on non-socketQSymbianSocketEngine(54>AB0B=L> @5AC@AV2Out of resourcesQSymbianSocketEngine">ABC? 701>@>=5=>Permission deniedQSymbianSocketEngine<"8? ?@>B>:>;C =5 ?V4B@8<CTBLAOProtocol type not supportedQSymbianSocketEngineH5?@028;L=0 04@5A0 4;O FVTW >?5@0FVW)The address is invalid for this operationQSymbianSocketEngine$4@5A0 =5 4>ABC?=0The address is not availableQSymbianSocketEngine4@5A0 70E8I5=0The address is protectedQSymbianSocketEngine64@5A0 265 28:>@8AB>2CTBLAO#The bound address is already in useQSymbianSocketEngineb5?@028;L=89 B8? ?@>:AV-A5@25@C 4;O FVTW >?5@0FVW,The proxy type is invalid for this operationQSymbianSocketEngineBV440;5=89 2C7>; 70:@82 7 T4=0==O%The remote host closed the connectionQSymbianSocketEngineH:070=89 <5@565289 A50=A =5 2V4:@8B>+The specified network session is not openedQSymbianSocketEngineV5<>6;82> V=VFV0;V7C20B8 H8@>:><>2=89 A>:5B%Unable to initialize broadcast socketQSymbianSocketEngineZ5<>6;82> V=VFV0;V7C20B8 =51;>:C20;L=89 A>:5B(Unable to initialize non-blocking socketQSymbianSocketEngine>5<>6;82> >B@8<0B8 ?>2V4><;5==OUnable to receive a messageQSymbianSocketEngine@5<>6;82> =04VA;0B8 ?>2V4><;5==OUnable to send a messageQSymbianSocketEngine$5<>6;82> 70?8A0B8Unable to writeQSymbianSocketEngine 52V4><0 ?><8;:0 Unknown errorQSymbianSocketEngineD5?V4B@8<C20=0 4;O A>:5B0 >?5@0FVOUnsupported socket operationQSymbianSocketEngine%1: 265 VA=CT%1: already existsQSystemSemaphore%1: =5 VA=CT%1: does not existQSystemSemaphore"%1: ?><8;:0 V<5=V%1: name errorQSystemSemaphore0%1: =54>AB0B=L> @5AC@AV2%1: out of resourcesQSystemSemaphore*%1: 4>ABC? 701>@>=5=>%1: permission deniedQSystemSemaphore.%1: =52V4><0 ?><8;:0 %2%1: unknown error %2QSystemSemaphore85<>6;82> 2V4:@8B8 7'T4=0==OUnable to open connection QTDSDriver@5<>6;82> 28:>@8AB0B8 107C 40=8EUnable to use database QTDSDriver @>:@CB8B8 2;V2> Scroll LeftQTabBar"@>:@CB8B8 2?@02> Scroll RightQTabBarD5?V4B@8<C20=0 4;O A>:5B0 >?5@0FVO$Operation on socket is not supported QTcpServer&>?VN20B8&Copy QTextControl&AB028B8&Paste QTextControl&>2B>@8B8&Redo QTextControl&>25@=CB8&Undo QTextControl6>?VN20B8 &04@5AC ?>A8;0==OCopy &Link Location QTextControl8&@V70B8Cu&t QTextControl840;8B8Delete QTextControl84V;8B8 2A5 Select All QTextControlV4:@8B8Open QToolButton0B8A=VBLPress QToolButton<&O ?;0BD>@<0 =5 ?V4B@8<CT IPv6#This platform does not support IPv6 QUdpSocket>2B>@8B8Redo QUndoGroup>2B>@8B8 %1Redo %1 QUndoGroup>25@=CB8Undo QUndoGroup>25@=CB8 %1Undo %1 QUndoGroup<?>@>6=L>> QUndoModel>2B>@8B8Redo QUndoStack>2B>@8B8 %1Redo %1 QUndoStack>25@=CB8Undo QUndoStack>25@=CB8 %1Undo %1 QUndoStack@AB028B8 :5@CNG89 A8<2>; Unicode Insert Unicode control characterQUnicodeControlCharacterMenuXLRE >G0B>: 21C4>20=>3> =0?8AC 7;V20 =0?@02>$LRE Start of left-to-right embeddingQUnicodeControlCharacterMenu0LRM 7=0:0 7;V20 =0?@02>LRM Left-to-right markQUnicodeControlCharacterMenuNLRO >G0B>: 70<V=8 =0?8AC 7;V20 =0?@02>#LRO Start of left-to-right overrideQUnicodeControlCharacterMenuFPDF 01@0B8 =0?@02;5=5 D>@<0BC20==OPDF Pop directional formattingQUnicodeControlCharacterMenuXRLE >G0B>: 21C4>20=>3> =0?8AC A?@020 =0;V2>$RLE Start of right-to-left embeddingQUnicodeControlCharacterMenu0RLM 7=0:0 A?@020 =0;V2>RLM Right-to-left markQUnicodeControlCharacterMenuNRLO >G0B>: 70<V=8 =0?8AC A?@020 =0;V2>#RLO Start of right-to-left overrideQUnicodeControlCharacterMenu<ZWJ 1 T4=C20G =C;L>2>W H8@8=8ZWJ Zero width joinerQUnicodeControlCharacterMenuDZWNJ 5>1 T4=C20G =C;L>2>W 4>268=8ZWNJ Zero width non-joinerQUnicodeControlCharacterMenu8ZWSP @>?CA: =C;L>2>W H8@8=8ZWSP Zero width spaceQUnicodeControlCharacterMenu,5<>6;82> ?>:070B8 URLCannot show URL QWebFrame65<>6;82> ?>:070B8 B8? MIMECannot show mimetype QWebFrame$09; =5 VA=CTFile does not exist QWebFramed020=B065==O D@59<C 1C;> ?5@5@20=5 7<V=>N ?>;VB8:8'Frame load interrupted by policy change QWebFrameP20=B065==O >1@>1;5=5 @CHVT< <C;LB8<54V0&Loading is handled by the media engine QWebFrame0?8B 1;>:>20=>Request blocked QWebFrame0?8B A:0A>20=>Request canceled QWebFrame0?8B A:0A>20=>Request cancelled QWebFrame&%1 (%2x%3 ?V:A5;V2)%1 (%2x%3 pixels)QWebPageH%1 4=V2 %2 3>48= %3 E28;8= %4 A5:C=4&%1 days %2 hours %3 minutes %4 secondsQWebPage8%1 3>48= %2 E28;8= %3 A5:C=4%1 hours %2 minutes %3 secondsQWebPage&%1 E28;8= %2 A5:C=4%1 minutes %2 secondsQWebPage%1 A5:C=4 %1 secondsQWebPage%n D09;%n D09;8%n D09;V2 %n file(s)QWebPage$>40B8 4> A;>2=8:0Add To DictionaryQWebPage8@V2=OB8 2;V2> Align LeftQWebPage 8@V2=OB8 2?@02> Align RightQWebPageC4V>-5;5<5=B Audio ElementQWebPagev;5<5=B8 :5@C20==O 2V4B2>@5==O< 72C:C B0 2V4>1@065==O AB0=C2Audio element playback controls and status displayQWebPage$>G0B8 2V4B2>@5==OBegin playbackQWebPage 8@=89BoldQWebPage >=87CBottomQWebPage> F5=B@CCenterQWebPageN5@52V@OB8 3@0<0B8:C @07>< 7 ?@02>?8A><Check Grammar With SpellingQWebPage&5@52V@:0 ?@02>?8ACCheck SpellingQWebPageD5@52V@OB8 ?@02>?8A ?V4 G0A =01>@CCheck Spelling While TypingQWebPage15@VBL D09; Choose FileQWebPage2G8AB8B8 =5I>402=V ?>HC:8Clear recent searchesQWebPage>?VN20B8CopyQWebPage>?VN20B8 0C4V> Copy AudioQWebPage(>?VN20B8 7>1@065==O Copy ImageQWebPage8!:>?VN20B8 04@5AC 7>1@065==OCopy Image AddressQWebPage&>?VN20B8 ?>A8;0==O Copy LinkQWebPage>?VN20B8 2V45> Copy VideoQWebPage(>B>G=89 AB0= DV;L<CCurrent movie statusQWebPage&>B>G=89 G0A DV;L<CCurrent movie timeQWebPage8@V70B8CutQWebPage "8?>2>DefaultQWebPage.840;8B8 4> :V=FO A;>20Delete to the end of the wordQWebPage2840;8B8 4> ?>G0B:C A;>20Delete to the start of the wordQWebPage 5B0;VDetailsQWebPage0?@O<>: DirectionQWebPage@>9H;> G0AC Elapsed TimeQWebPage0 ?>2=89 5:@0=Enter FullscreenQWebPage (@8DB8FontsQWebPage8=>?:0 ?>2=>5:@0==>3> @568<CFullscreen ButtonQWebPageB8 =0704Go BackQWebPageB8 2?5@54 Go ForwardQWebPage:!E>20B8 ?@02>?8A B0 3@0<0B8:CHide Spelling and GrammarQWebPage3=>@C20B8IgnoreQWebPage3=>@C20B8 Ignore Grammar context menu itemIgnoreQWebPage 5287=0G5=89 G0AIndefinite timeQWebPage"1V;LH8B8 2V4ABC?IndentQWebPage4AB028B8 <0@:>20=89 A?8A>:Insert Bulleted ListQWebPage6AB028B8 =C<5@>20=89 A?8A>:Insert Numbered ListQWebPage(AB028B8 =>289 @O4>:Insert a new lineQWebPage.AB028B8 =>289 ?0@03@0DInsert a new paragraphQWebPage=A?5:BC20B8InspectQWebPage C@A82ItalicQWebPage8>?5@5465==O JavaScript - %1JavaScript Alert - %1QWebPage:V4B25@465==O JavaScript - %1JavaScript Confirm - %1QWebPage0@>1;5<0 JavaScript - %1JavaScript Problem - %1QWebPage*0?8B JavaScript - %1JavaScript Prompt - %1QWebPage> H8@8=VJustifyQWebPage > ;V2>W 3@0=8FV Left edgeQWebPage;V20 =0?@02> Left to RightQWebPage>2;5==O =0682>Live BroadcastQWebPage020=B065==O... Loading...QWebPage"(C:0B8 2 A;>2=8:CLook Up In DictionaryQWebPage">40B>: 2V4ACB=V9Missing Plug-inQWebPage@5@5AC=CB8 :C@A>@ 2 :V=5FL 1;>:0'Move the cursor to the end of the blockQWebPageH5@5AC=CB8 :C@A>@ 2 :V=5FL 4>:C<5=B0*Move the cursor to the end of the documentQWebPage@5@5AC=CB8 :C@A>@ 2 :V=5FL @O4:0&Move the cursor to the end of the lineQWebPageN5@5AC=CB8 :C@A>@ 4> =0ABC?=>3> A8<2>;C%Move the cursor to the next characterQWebPageJ5@5AC=CB8 :C@A>@ 4> =0ABC?=>3> @O4:0 Move the cursor to the next lineQWebPageJ5@5AC=CB8 :C@A>@ 4> =0ABC?=>3> A;>20 Move the cursor to the next wordQWebPageR5@5AC=CB8 :C@A>@ 4> ?>?5@54=L>3> A8<2>;C)Move the cursor to the previous characterQWebPageN5@5AC=CB8 :C@A>@ 4> ?>?5@54=L>3> @O4:0$Move the cursor to the previous lineQWebPageN5@5AC=CB8 :C@A>@ 4> ?>?5@54=L>3> A;>20$Move the cursor to the previous wordQWebPageD5@5AC=CB8 :C@A>@ 4> ?>G0B:C 1;>:0)Move the cursor to the start of the blockQWebPageL5@5AC=CB8 :C@A>@ 4> ?>G0B:C 4>:C<5=B0,Move the cursor to the start of the documentQWebPageD5@5AC=CB8 :C@A>@ 4> ?>G0B:C @O4:0(Move the cursor to the start of the lineQWebPage(>27C=>: G0AC DV;L<CMovie time scrubberQWebPage65@60: ?>27C=:0 G0AC DV;L<CMovie time scrubber thumbQWebPage57 72C:CMuteQWebPage,=>?:0 28<8:0==O 72C:C Mute ButtonQWebPage08<:=CB8 72C:>2V 4>@V6:8Mute audio tracksQWebPage(V4:07>: =5 7=0945=>No Guesses FoundQWebPage$09; =5 >1@0=>No file selectedQWebPage05<0T =5I>402=VE ?>HC:V2No recent searchesQWebPageV4:@8B8 0C4V> Open AudioQWebPageV4:@8B8 D@59< Open FrameQWebPage&V4:@8B8 7>1@065==O Open ImageQWebPage$V4:@8B8 ?>A8;0==O Open LinkQWebPageV4:@8B8 2V45> Open VideoQWebPage.V4:@8B8 2 =>2><C 2V:=VOpen in New WindowQWebPage <5=H8B8 2V4ABC?OutdentQWebPage >=BC@OutlineQWebPage 0 AB>@V=:C 2=87 Page downQWebPage"0 AB>@V=:C 2;V2> Page leftQWebPage$0 AB>@V=:C 2?@02> Page rightQWebPage"0 AB>@V=:C 23>@CPage upQWebPageAB028B8PasteQWebPage4AB028B8 B0 715@53B8 AB8;LPaste and Match StyleQWebPage 0C70PauseQWebPage=>?:0 ?0C78 Pause ButtonQWebPage.@87C?8=8B8 2V4B2>@5==OPause playbackQWebPage @0B8PlayQWebPage$=>?:0 2V4B2>@5==O Play ButtonQWebPagePV4B2>@8B8 DV;L< 2 ?>2=>5:@0==><C @568<VPlay movie in full-screen modeQWebPage 5I>402=V ?>HC:8Recent searchesQWebPage<V<VB ?5@5=0?@02;5=L 28G5@?0=>Redirection limit reachedQWebPage5@57020=B068B8ReloadQWebPage0;8H8;>AL G0ACRemaining TimeQWebPage&'0A 4> :V=FO DV;L<CRemaining movie timeQWebPage*840;8B8 D>@<0BC20==ORemove formattingQWebPage!:8=CB8ResetQWebPageT>25@=CB8 ?>B>:>25 2V45> 4> @50;L=>3> G0AC#Return streaming movie to real-timeQWebPage@=>?:0 ?>25@=5==O 2 @50;L=89 G0AReturn to Real-time ButtonQWebPage6=>?:0 ?5@5<>B:8 =0 ?>G0B>: Rewind ButtonQWebPage65@5<>B:0 DV;L<C =0 ?>G0B>: Rewind movieQWebPage"> ?@02>W 3@0=8FV Right edgeQWebPage!?@020 =0;V2> Right to LeftQWebPage&15@53B8 7>1@065==O Save ImageQWebPage*15@53B8 ?>A8;0==O... Save Link...QWebPage"@>:@CB8B8 4>=87C Scroll downQWebPage@>:@CB8B8 AN48 Scroll hereQWebPage @>:@CB8B8 2;V2> Scroll leftQWebPage"@>:@CB8B8 2?@02> Scroll rightQWebPage @>:@CB8B8 23>@C Scroll upQWebPage>HC: 2 <5@56VSearch The WebQWebPage,=>?:0 ?5@5<>B:8 =0704Seek Back ButtonQWebPage.=>?:0 ?5@5<>B:8 2?5@54Seek Forward ButtonQWebPage,(284:0 ?5@5<>B:0 =0704Seek quickly backQWebPage.(284:0 ?5@5<>B:0 2?5@54Seek quickly forwardQWebPage84V;8B8 2A5 Select AllQWebPage.84V;8B8 4> :V=FO 1;>:0Select to the end of the blockQWebPage684V;8B8 4> :V=FO 4>:C<5=B0!Select to the end of the documentQWebPage.84V;8B8 4> :V=FO @O4:0Select to the end of the lineQWebPage<84V;8B8 4> =0ABC?=>3> A8<2>;CSelect to the next characterQWebPage884V;8B8 4> =0ABC?=>3> @O4:0Select to the next lineQWebPage884V;8B8 4> =0ABC?=>3> A;>20Select to the next wordQWebPage@84V;8B8 4> ?>?5@54=L>3> A8<2>;C Select to the previous characterQWebPage<84V;8B8 4> ?>?5@54=L>3> @O4:0Select to the previous lineQWebPage<84V;8B8 4> ?>?5@54=L>3> A;>20Select to the previous wordQWebPage284V;8B8 4> ?>G0B:C 1;>:0 Select to the start of the blockQWebPage:84V;8B8 4> ?>G0B:C 4>:C<5=B0#Select to the start of the documentQWebPage284V;8B8 4> ?>G0B:C @O4:0Select to the start of the lineQWebPage<>:070B8 ?@02>?8A B0 3@0<0B8:CShow Spelling and GrammarQWebPage>27C=>:SliderQWebPage5@60: ?>27C=:0 Slider ThumbQWebPage@02>?8ASpellingQWebPage$V4>1@065==O AB0=CStatus DisplayQWebPageC?8=8B8StopQWebPage5@5:@5A;5=89 StrikethroughQWebPage04VA;0B8SubmitQWebPage04VA;0B8QSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPage86=V9 V=45:A SubscriptQWebPage5@E=V9 V=45:A SuperscriptQWebPage0?@O<>: B5:ABCText DirectionQWebPage40TBLAO T ?@>1;5<0 7V A:@8?B>< =0 FV9 AB>@V=FV. 060TB5 7C?8=8B8 A:@8?B?RThe script on this page appears to have a problem. Do you want to stop the script?QWebPagej&5 ?>HC:>289 ?>:06G8:. 254VBL :;NG>2V A;>20 ?>HC:C: 3This is a searchable index. Enter search keywords: QWebPage8#2V<:=CB8/28:=CB8 C?@02;V==OToggle ControlsQWebPageJ#2V<:=CB8/28:=CB8 ?@>3@020==O ?> :>;C Toggle LoopQWebPage 3>@CTopQWebPageV4:@5A;5=89 UnderlineQWebPage52V4><>UnknownQWebPage*=>?:0 2<8:0==O 72C:C Unmute ButtonQWebPage2#2V<:=CB8 72C:>2V 4>@V6:8Unmute audio tracksQWebPageV45>-5;5<5=B Video ElementQWebPagev;5<5=B8 :5@C20==O 2V4B2>@5==O< 2V45> B0 2V4>1@065==O AB0=C2Video element playback controls and status displayQWebPage$Web-V=A?5:B>@ - %2Web Inspector - %2QWebPage )> F5? What's This?QWhatsThisAction**QWidget&025@H8B8&FinishQWizard&>2V4:0&HelpQWizard &0;V&NextQWizard&0;V >&Next >QWizard< &0704< &BackQWizard!:0AC20B8CancelQWizard8:>=0B8CommitQWizard@>4>268B8ContinueQWizard025@H5=>DoneQWizardB8 =0704Go BackQWizard>2V4:0HelpQWizard%1 - [%2] %1 - [%2] QWorkspace0:@8&B8&Close QWorkspace&5@5AC=CB8&Move QWorkspace&V4=>28B8&Restore QWorkspace& >7<V@&Size QWorkspace0 &>73>@=CB8 V7 703>;>2:0&Unshade QWorkspace0:@8B8Close QWorkspace&0:A8<V7C20B8 Ma&ximize QWorkspace&V=V<V7C20B8 Mi&nimize QWorkspaceV=V<V7C20B8Minimize QWorkspaceV4=>28B8 Restore Down QWorkspace*&3>@=CB8 2 703>;>2>:Sh&ade QWorkspace&0;8H0B8AL =0 &3>@V Stay on &Top QWorkspace?V4 G0A G8B0==O >3>;>H5==O XML >GV:C20;>AL >3>;>H5==O :>4C20==O 01> A0<>ABV9=5 >3>;>H5==OYencoding declaration or standalone declaration expected while reading the XML declarationQXml^?><8;:0 2 B5:ABV >3>;>H5==O 7>2=VH=L>W ACB=>ABV3error in the text declaration of an external entityQXmlV?V4 G0A @>71>@C :><5=B0@O B@0?8;0AL ?><8;:0$error occurred while parsing commentQXmlP?V4 G0A @>71>@C 2<VABC B@0?8;0AL ?><8;:0$error occurred while parsing contentQXmlv?V4 G0A @>71>@C 287=0G5==O B8?C 4>:C<5=B0 B@0?8;0AL ?><8;:05error occurred while parsing document type definitionQXmlT?V4 G0A @>71>@C 5;5<5=B0 B@0?8;0AL ?><8;:0$error occurred while parsing elementQXmlV?V4 G0A @>71>@C ?>A8;0==O B@0?8;0AL ?><8;:0&error occurred while parsing referenceQXml>?><8;:0, 28:;8:0=0 :>@8ABC20G5<error triggered by consumerQXml7>2=VH=T @>7V1@0=5 ?>A8;0==O =0 7030;L=C ACB=VABL =5 4>72>;5=5 2 DTD;external parsed general entity reference not allowed in DTDQXml7>2=VH=T @>7V1@0=5 ?>A8;0==O =0 7030;L=C ACB=VABL =5 4>72>;5=5 2 7=0G5==V 0B@81CBCGexternal parsed general entity reference not allowed in attribute valueQXmlv2=CB@VH=T ?>A8;0==O =0 7030;L=C ACB=VABL =5 4>72>;5=5 2 DTD4internal general entity reference not allowed in DTDQXmlP=5?@028;L=0 =0720 4;O V=AB@C:FVW >1@>1:8'invalid name for processing instructionQXml$>GV:C20;0AL ;VB5@0letter is expectedQXmlP1V;LH =V6 >4=5 287=0G5==O B8?C 4>:C<5=BC&more than one document type definitionQXml157 ?><8;>:no error occurredQXml&@5:C@A82=V ACB=>ABVrecursive entitiesQXml?V4 G0A G8B0==O >3>;>H5==O XML >GV:C20;>AL A0<>ABV9=5 >3>;>H5==OAstandalone declaration expected while reading the XML declarationQXml"B53 =5 71V30TBLAO tag mismatchQXml&=5A?>4V20=89 A8<2>;unexpected characterQXml2=5A?>4V20=89 :V=5FL D09;Cunexpected end of fileQXmlv=5@>7V1@0=5 ?>A8;0==O =0 ACB=VABL 2 =5?@028;L=><C :>=B5:ABV*unparsed entity reference in wrong contextQXmlb?V4 G0A G8B0==O >3>;>H5==O XML >GV:C20;0AL 25@AVO2version expected while reading the XML declarationQXml`=5?@028;L=5 7=0G5==O 4;O A0<>ABV9=>3> >3>;>H5==O&wrong value for standalone declarationQXmlR><8;:0 %1 2 %2, @O4>: %3, ?>78FVO %4: %5)Error %1 in %2, at line %3, column %4: %5QXmlPatternistCLI&><8;:0 %1 2 %2: %3Error %1 in %2: %3QXmlPatternistCLI 52V4><0 ?>78FVOUnknown locationQXmlPatternistCLIV>?5@5465==O 2 %1, @O4>: %2, ?>78FVO %3: %4(Warning in %1, at line %2, column %3: %4QXmlPatternistCLI*>?5@5465==O 2 %1: %2Warning in %1: %2QXmlPatternistCLIT%1 =5 T ?@028;L=8< V45=B8DV:0B>@>< PUBLIC.#%1 is an invalid PUBLIC identifier. QXmlStreamB%1 - =5?@028;L=0 =0720 :>4C20==O.%1 is an invalid encoding name. QXmlStream`%1 =5 T ?@028;L=0 =072>N 4;O V=AB@C:FVW >1@>1:8.-%1 is an invalid processing instruction name. QXmlStream , 0;5 >B@8<0=> ' , but got ' QXmlStream.B@81CB8 ?5@5287=0G5=>.Attribute redefined. QXmlStream:>4C20==O %1 =5 ?V4B@8<CTBLAOEncoding %1 is unsupported QXmlStreamN8O2;5=> =5?@028;L=> 70:>4>20=89 2<VAB.(Encountered incorrectly encoded content. QXmlStream6!CB=VABL '%1' =5 >3>;>H5=0.Entity '%1' not declared. QXmlStreamGV:C20;>AL  Expected  QXmlStream6GV:C20;8AL A8<2>;L=V 40=V.Expected character data. QXmlStream:092V 40=V 2 :V=FV 4>:C<5=BC.!Extra content at end of document. QXmlStreamL5?@8?CAB8<5 >3>;>H5==O ?@>AB>@C V<5=.Illegal namespace declaration. QXmlStream05?@028;L=89 A8<2>; XML.Invalid XML character. QXmlStream,5?@028;L=0 =0720 XML.Invalid XML name. QXmlStream<5?@028;L=89 @O4>: 25@AVW XML.Invalid XML version string. QXmlStreamL5?@028;L=89 0B@81CB 2 >3>;>H5==V XML.%Invalid attribute in XML declaration. QXmlStream@5?@028;L=5 A8<2>;L=5 ?>A8;0==O.Invalid character reference. QXmlStream,5?@028;L=89 4>:C<5=B.Invalid document. QXmlStream<5?@028;L=5 7=0G5==O ACB=>ABV.Invalid entity value. QXmlStreamR5?@028;L=0 =0720 4;O V=AB@C:FVW >1@>1:8.$Invalid processing instruction name. QXmlStreamLNDATA 2 ?0@0<5B@V >3>;>H5==O ACB=>ABV.&NDATA in parameter entity declaration. QXmlStreamN@5DV:A ?@>AB>@C V<5= '%1' =5 >3>;>H5=>"Namespace prefix '%1' not declared QXmlStream^V4:@820NG89 B0 70:@820NG89 B538 =5 71V30NBLAO. Opening and ending tag mismatch. QXmlStream<5A?>4V20=89 :V=5FL 4>:C<5=BC.Premature end of document. QXmlStream:=0945=> @5:C@A82=C ACB=VABL.Recursive entity detected. QXmlStreamn>A8;0==O =0 7>2=VH=N ACB=VABL '%1' 2 7=0G5=V 0B@81CB0.5Reference to external entity '%1' in attribute value. QXmlStreamN>A8;0==O =0 =5@>7V1@0=C ACB=VABL '%1'."Reference to unparsed entity '%1'. QXmlStreamT>A;V4>2=VABL ']]>' =5 4>72>;5=0 2 7<VABV.&Sequence ']]>' not allowed in content. QXmlStreamF!0<>ABV9=89 ?@89<0T ;8H5 B0: G8 =V."Standalone accepts only yes or no. QXmlStream8GV:C202AO 2V4:@820NG89 B53.Start tag expected. QXmlStreamr!0<>ABV9=89 ?A524>0B@81CB <0T 7=0E>48BAL ?VA;O :>4C20==O.?The standalone pseudo attribute must appear after the encoding. QXmlStream5>GV:C20=5 ' Unexpected ' QXmlStreamd5>GV:C20=89 A8<2>; '%1' 2 ?C1;VG=><C ;VB5@0;V id./Unexpected character '%1' in public id literal. QXmlStream45?V4B@8<C20=0 25@AVO XML.Unsupported XML version. QXmlStreamf3>;>H5==O XML =5 7=0E>48BLAO =0 ?>G0B:C 4>:C<5=BC.)XML declaration not at start of document. QXmlStream;5<5=B8Items QmlJSDebugger::LiveSelectionTool0.125xQmlJSDebugger::QmlToolBar0.1xQmlJSDebugger::QmlToolBar0.25xQmlJSDebugger::QmlToolBar0.5xQmlJSDebugger::QmlToolBar1xQmlJSDebugger::QmlToolBar<0AB>AC20B8 7<V=8 4> 4>:C<5=B0Apply Changes to DocumentQmlJSDebugger::QmlToolBarH0AB>AC20B8 7<V=8 4> ?5@53;O40G0 QMLApply Changes to QML ViewerQmlJSDebugger::QmlToolBar81V@ :>;L>@C Color PickerQmlJSDebugger::QmlToolBar  568< V=A?5:B>@0Inspector ModeQmlJSDebugger::QmlToolBar.@0B8/7C?8=8B8 0=V<0FVWPlay/Pause AnimationsQmlJSDebugger::QmlToolBar 1@0B8SelectQmlJSDebugger::QmlToolBar 1@0B8 (Marquee)Select (Marquee)QmlJSDebugger::QmlToolBar=AB@C<5=B8ToolsQmlJSDebugger::QmlToolBar0AHB01C20B8ZoomQmlJSDebugger::QmlToolBar>?VN20B8 :>;V@ Copy ColorQmlJSDebugger::ToolBarColorBox1V;LH8B8Zoom InQmlJSDebugger::ZoomTool<5=H8B8Zoom OutQmlJSDebugger::ZoomTool*0AHB01C20B8 4> &100% Zoom to &100%QmlJSDebugger::ZoomToolB@81CB %1 5;5<5=B0 %2 <VAB8BL =5?@028;L=89 2<VAB: {%3} =5 T 7=0G5==O< B8?C %4.T%1 attribute of %2 element contains invalid content: {%3} is not a value of type %4. QtXmlPatternspB@81CB %1 5;5<5=B0 %2 <VAB8BL =5?@028;L=89 2<VAB: {%3}.:%1 attribute of %2 element contains invalid content: {%3}. QtXmlPatternsTB@81CB %1 5;5<5=B0 %2 <0T 1CB8 %3 01> %4.,%1 attribute of %2 element must be %3 or %4. QtXmlPatterns<>4C20==O %1 =5 ?V4B@8<CTBLAO.%1 is an unsupported encoding. QtXmlPatternsH%1 =5 T ?@028;L=8< A8<2>;>< XML 1.0.$%1 is not a valid XML 1.0 character. QtXmlPatternsR%1 =5 T ?@028;L=8< 7=0G5==O< 4;O B8?C %2.#%1 is not a valid value of type %2. QtXmlPatternsH%1 =5 T ?@028;L=8< 2V4?>2V4=> 4> %2. %1 is not valid according to %2. QtXmlPatternsR%1 =5 T ?@028;L=8< 7=0G5==O< 4;O B8?C %2.&%1 is not valid as a value of type %2. QtXmlPatterns6><5=B0@ =5 <>65 <VAB8B8 %1A comment cannot contain %1 QtXmlPatternsF><5=B0@ =5 <>65 70:V=GC20B8 =0 %1.A comment cannot end with a %1. QtXmlPatternsZ)>=09<5=H5 >48= :><?>=5=B <0T 1CB8 ?@8ACB=V<.'At least one component must be present. QtXmlPatternsF5?@028;L=89 45=L %1 4;O <VAOFO %2.Day %1 is invalid for month %2. QtXmlPatternsJ5=L %1 ?>70 <560<8 4V0?07>=C %2..%3.#Day %1 is outside the range %2..%3. QtXmlPatternsNV;5==O (%1) =0 =C;L (%2) =5 287=0G5=5.(Division (%1) by zero (%2) is undefined. QtXmlPatternsh&V;>G8A5;L=5 4V;5==O (%1) =0 =C;L (%2) =5 287=0G5=5.0Integer division (%1) by zero (%2) is undefined. QtXmlPatternsNVAOFL %1 ?>70 <560<8 4V0?07>=C %2..%3.%Month %1 is outside the range %2..%3. QtXmlPatterns?5@0B>@ %1 =5 <>65 28:>@8AB>2C20B8AL 4;O 0B><0@=8E 7=0G5=L B8?C %2 B0 %3.>Operator %1 cannot be used on atomic values of type %2 and %3. QtXmlPatternsd?5@0B>@ %1 =5 <>65 28:>@8AB>2C20B8AL 4;O B8?C %2.&Operator %1 cannot be used on type %2. QtXmlPatternsT5@5?>2=5==O: 5 <>6C ?@54AB028B8 40BC %1."Overflow: Can't represent date %1. QtXmlPatternsN5@5?>2=5==O: 5 <>6C ?@54AB028B8 40BC.$Overflow: Date can't be represented. QtXmlPatterns&><8;:0 @>71>@C: %1Parse error: %1 QtXmlPatternsH8<030TBLAO B8? %1, 0;5 7=0945=> %2.&Required type is %1, but %2 was found. QtXmlPatterns&$>:CA =5 287=0G5=>.The focus is undefined. QtXmlPatternsZ;5<5=B %1 =5 2V4?>2V40T =5>1EV4=><C B8?C %2./The item %1 did not match the required type %2. QtXmlPatternsV>6;82VABL V<?>@BC <>4C;V2 =5 ?V4B@8<CTBLAO*The module import feature is not supported QtXmlPatterns@5<>6;82> ?@82'O70B8 ?@5DV:A %1.The prefix %1 cannot be bound. QtXmlPatterns:<V==0 %1 =5 28:>@8AB>2CTBLAOThe variable %1 is unused QtXmlPatterns:5?@028;L=89 G0A %1:%2:%3.%4.Time %1:%2:%3.%4 is invalid. QtXmlPatterns*"8? %1 265 287=0G5=>.Type %1 already defined. QtXmlPatterns652V4><89 0B@81CB XSL-T %1.Unknown XSL-T attribute %1. QtXmlPatternsX=0G5==O %1 B8?C %2 ?5@528ICT <0:A8<C< (%3).)Value %1 of type %2 exceeds maximum (%3). QtXmlPatternsT=0G5==O %1 B8?C %2 <5=H5 70 <V=V<C< (%3).*Value %1 of type %2 is below minimum (%3). QtXmlPatternsx5@AVO %1 =5 ?V4B@8<CTBLAO. V4B@8<CTBLAO XQuery 25@AVW 1.0.AVersion %1 is not supported. The supported XQuery version is 1.0. QtXmlPatternsZ V: %1 =5?@028;L=89, 1> 2V= ?>G8=0TBLAO 7 %2.-Year %1 is invalid because it begins with %2. QtXmlPatterns>48= G8 1V;LH5 one or more QtXmlPatterns=C;L G8 1V;LH5 zero or more QtXmlPatterns=C;L G8 >48= zero or one QtXmlPatterns ) , qupzilla-1.6.0/bin/locale/qt_zh_CN.qm000066400000000000000000003451311226107126500174430ustar00rootroot00000000000000+O,<,l:;<J``OyR >0ee;beJį7į y~{^&t>Q73[(4G(4G(5G(5H3*yX*yq*y*TR*0'*0 +F|{+F+L7+f+f@+z.++rE+,+z.++6+AQ+R+|++į+įrt+į^+/,7:9,;(@FC:F0iGFn4Fn4 G70Hw9Hw97^H fI'KI-CIJ+J6J60FJ67J6;J6}KJ6J61J6JcbKQ KDLZكL L0mLbM5;MbMeMkNM0O|/PFE!UPFE~lPFExQNROR|RO5S8^WTTʴ+T0U?^*U|4U}PV1EV14VlVV V7VPLWWTWT*WTX~/X9X X˙9XYP{Y~Y~YFZgZkZQs[;^cH\\]4\]4\\at#gc1lG'|^'cv5v$fX54L5.86CL?IA[9 Iyɵn1ɵne'ɵnhɵnwɵnɵnɵnɵn(Z Bg* 'MEn;aI[q >\H,<Ap5##Q%UT_(ŎH*4-ctc2]5v<}kaP~"O %V~y BFsp$$L+5d(ʁr^K KW֊0 n\yJ,fW;y\O-RA!0nJ37^k=a&Hf.!$/e?;IxS-MR>)YMU YM[I^Qh^#i&Zsscs+wQU]xKU/^q2ec_~ENڬF5Mc$SOPqYV8VsfR@ z M   ^n1 j9dN$%C#I&~N&1)2m)6*4L+,?"x?>ubJ?KNMR1V|O]d]hPdIgA9kdy^ {y.5t FFV:ΞUOG%Sn:Hصǥ.+V6t0{y/t;QxAQr9\Q!sQC"Ͼ%-j{H*C-ȝ5)C^^kƨ dƨ&˾hdҝz-iէ?~Z>(z>{ߺ&h=fQq.Jm}^=!i  $z~bE~bJkoMl!gr)ўQ+u\+3ʹ,8/w/n14~6 ? 2>AD!GTGbILAUOrPѧ7Q]ISn1TyUkUUTcZZ'ZUZ؃[]k*Ev]6_^n_peiXi^=kQ)oN%Ty;x3{}u}w:}wv}w }i(#kr#"PB>}vptzt.f.3><P%iUTaDDhYtt(2t[tA0."-n_ +&Fz%C\+ʢ3ʢƴd4dzfd^dvd0 /59fэ.+aNS0UdBh0w*oR 2W ?z g)'V||+_,D/22<42a6X7Dz:r?;CU]DIN9J0KK U|׊V7Nk\GartwK|(^ 5| )|}wZ}$ }$J}$ ϗèZVN^DaL>XN5qK<8f+··ý2-׳ /] -UESHgxvEu %5ITmA e~P i~i 9%}wEb. #%%'B-.z.'85kE$=մ=9?s?wCtILPOV%XU DZhD``NvqbDQbGnfCfdgAmhIN#i$x1 z*2֥|QRcdJxlJU7(.5Fz=Mc._1gqrXmTa^en$K-ba†5iKC:Hʴ5|ʴ5Nʶ~^ cԄ۔#DP'NmadbF5!(F5}Y[pb7+>oIIDAs 3 }${B qeZZ ڤ. ڥ d| Ey EI < Ac} AcG$ 6 35 u b bb b`Ћ b` / gUu i3% la lfq uuc xq"R |oS |T J t tF .$  `J )M^ F>, > (r  B7 ҉ >  Z im y nv/ Nr Y+Թ K  팤 l~=I %'E /1U =! qP  } o> 7 ) */l .>v} 5^ 7u ;o =S B BnEa J" J" K2P Rۮ b Ty & T^ Uj4s ]r `d `E bu b} c(o cE d7 e eEE e{ f1V2 f*C g5U gn` k, rD" t>nt :. f  f B 4f .R0 WP s] sC AAY/ 9> 8, 9{ - m, #-t 0N+a 5L A CUR E9> I LU L' Lf Mc\:} R^/ Sg Vj~ WR ]$2z f)Y f)B@ f=b io> m`" w xR/O yr5a >Rv  t/ H HA *( nD $C .@  i  p r 4 % J JC #v t. k< Ӈ M  N>n ̺Sf & -DT) .qb ۷ c>I~ rM kX k U)^  <! 0   z+  W  ] IM] %R] Nq \ p xHaP v 8k  .. 7F+ >Yt >Y >Z >` >k >q >3 >} ?t|' DT ; I- P@  RVGj RV RV S. SG S Y Yh [I c`e hۮL j7o? p.K vu 3 ." Bi'  T1 Tw T T Q i 3I g M S )d Tu y ;>z .21 .ep .x{ .` .? .   a y! p e.@ hNp >Y ҂$b  %^ u  8 |ҽ l h Xt n 9 tc a >d :b^ Uqw  O.< ʜ,  ]a #$ #=ē %nq (I$ (N0 +>/` +k 0E 64ӊ ;ɾ Fg` K9 Pt~3 PtB T>R W H dBg< fe# feY g iFC. iE iڃ jӮ kGn m9 n' u uy v om v& v{G wί w w W w} w} w} |[+h X U [ % Jb ^[ }p Rj PF  xN Ut ɰe F}Y ' X< &+ D Fk +/ t5} t5 D a_ >) ~  ) y "R0w @afT)hoAgT)4*'*/E(/EF=BmI__>KOOuNXRuX49[ D[ a.8\a./gcnyG*tvɅy$~`>G4n4?&m'@24SkG^$Ǘ 0:TB&rs)ݖI[y^{r h CMG3PlDŏ%"#̜$UE%4:%4I-v0i)߭0K1c2wTy<TI<(]D#~HJd`KK#i%L$.Wbc5ϑc5 g3iCmhpyC${~a6$Y5 K&&%{j`pnS-[">T&tC>b/N?L E"~Ler)1rlkyLn~ByPt2+wh`ɍˋdUdip<html>RcbR0Ve>Y <b>%1</b> <br/>[RRSN:Su(^vNQwg fvOQH~0</html>xSwitching to the audio playback device %1
which just became available and has higher preference. AudioOutputl<html>Ve>Y <b>%1</b> lg ]O\0<br/>VnR0 <b>%2</b>0</html>^The audio playback device %1 does not work.
Falling back to %2. AudioOutput`bY R0Y %1 Revert back to device '%1' AudioOutput Qsh{~u Close Tab CloseButton QsN %1About %1MAC_APPLICATION_MENU%1Hide %1MAC_APPLICATION_MENUQvN Hide OthersMAC_APPLICATION_MENU POY}n &Preferences...MAC_APPLICATION_MENU Q %1Quit %1MAC_APPLICATION_MENUg RServicesMAC_APPLICATION_MENUQhf>y:Show AllMAC_APPLICATION_MENU exsX AccessibilityPhonon:: CommunicationPhonon::n8bGamesPhonon::NPMusicPhonon::w NotificationsPhonon::ƘVideoPhonon::ffTJw wge `lg [Wx@v GStreamer cN0 b@g vTƘe/c]~ψQs0~Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabledPhonon::Gstreamer::BackendvfTJw wge `lg [ gstreamer0.10-plugins-good S0 NNƘry`']~ψQs0Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled.Phonon::Gstreamer::Backend>:\NN*vxVh0`[YN xVhgede>N*Q[%0`A required codec is missing. You need to install the following codec(s) to play this content: %0Phonon::Gstreamer::MediaObjectN _YVe>0 hg`v Gstreamer [^vNxn` ]~[ libgstreamer-plugins-base0wCannot start playback. Check your Gstreamer installation and make sure you have libgstreamer-plugins-base installed.Phonon::Gstreamer::MediaObjectN xZOSn0Could not decode media source.Phonon::Gstreamer::MediaObjectN [OMZOSn0Could not locate media source.Phonon::Gstreamer::MediaObject&N bS_󘑋Y0N*YkcW(Ou(0:Could not open audio device. The device is already in use.Phonon::Gstreamer::MediaObjectN bS_ZOSn0Could not open media source.Phonon::Gstreamer::MediaObjecteeHvn|{W0Invalid source type.Phonon::Gstreamer::MediaObject0Ou(N*nWW0g]N:%0 gSN:%1%WUse this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1%Phonon::VolumeSlider %1% Volume: %1%Phonon::VolumeSlider%1 %2g*[NI%1, %2 not definedQ3AccelN fxnv%1lg YtAmbiguous %1 not handledQ3AccelR dDelete Q3DataTablePGFalse Q3DataTablecQeInsert Q3DataTablewTrue Q3DataTablefeUpdate Q3DataTable*eN%1 g*b~R00 hg_TeNT 0 +%1 File not found. Check path and filename. Q3FileDialog R d(&D)&Delete Q3FileDialog T&(&N)&No Q3FileDialog xn[(&O)&OK Q3FileDialog bS_(&O)&Open Q3FileDialogT}T (&R)&Rename Q3FileDialog O[X(&S)&Save Q3FileDialogg*cRv(&U) &Unsorted Q3FileDialog f/(&Y)&Yes Q3FileDialog0<qt>O`xnO``R d%1 %2 </qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialogb@g eN (*) All Files (*) Q3FileDialogb@g eN (*.*)All Files (*.*) Q3FileDialog\^`' Attributes Q3FileDialogTBack Q3FileDialogSmCancel Q3FileDialogY R6byRNN*eNCopy or Move a File Q3FileDialog R^eeNY9Create New Folder Q3FileDialogegDate Q3FileDialogR d%1 Delete %1 Q3FileDialog~ƉV Detail View Q3FileDialogv_UDir Q3FileDialogv_U Directories Q3FileDialogv_U Directory: Q3FileDialogError Q3FileDialogeNFile Q3FileDialogeNT y(&N) File &name: Q3FileDialogeN|{W(&T) File &type: Q3FileDialoggb~v_UFind Directory Q3FileDialog N Sv Inaccessible Q3FileDialogRhV List View Q3FileDialoggb~V(&I) Look &in: Q3FileDialogT yName Q3FileDialog e^eNY9 New Folder Q3FileDialoge^eNY9%1 New Folder %1 Q3FileDialog e^eNY91 New Folder 1 Q3FileDialogTN N~One directory up Q3FileDialogbS_Open Q3FileDialogbS_Open  Q3FileDialog eNQ[Preview File Contents Q3FileDialog eNO`oPreview File Info Q3FileDialoge}Qe(&E)R&eload Q3FileDialogS Read-only Q3FileDialogQ Read-write Q3FileDialog S%1Read: %1 Q3FileDialogS[XN:Save As Q3FileDialog bNN*v_USelect a Directory Q3FileDialogf>y:eN(&H)Show &hidden files Q3FileDialogY'\Size Q3FileDialogcRSort Q3FileDialogc egcR(&D) Sort by &Date Q3FileDialogc T ycR(&N) Sort by &Name Q3FileDialogc Y'\cR(&S) Sort by &Size Q3FileDialogrykSpecial Q3FileDialogv_Uv|~ߔcSymlink to Directory Q3FileDialogeNv|~ߔcSymlink to File Q3FileDialogrykv|~ߔcSymlink to Special Q3FileDialog|{WType Q3FileDialogSQ Write-only Q3FileDialog QQe%1 Write: %1 Q3FileDialogv_U the directory Q3FileDialogeNthe file Q3FileDialog|~ߔc the symlink Q3FileDialogN R^v_U %1Could not create directory %1 Q3LocalFsN bS_ %1Could not open %1 Q3LocalFsN Sv_U %1Could not read directory %1 Q3LocalFsN ydeNbv_U %1%Could not remove file or directory %1 Q3LocalFsN b %1 T}T N: %2Could not rename %1 to %2 Q3LocalFsN QQe %1Could not write %1 Q3LocalFs [NI... Customize... Q3MainWindowcRLine up Q3MainWindowdO\u(b7P\kbOperation stopped by the userQ3NetworkProtocolSmCancelQ3ProgressDialog^u(Apply Q3TabDialogSmCancel Q3TabDialog؋Defaults Q3TabDialog^.RHelp Q3TabDialogxnOK Q3TabDialog Y R6(&C)&Copy Q3TextEdit |4(&P)&Paste Q3TextEdit `bY (&R)&Redo Q3TextEdit dm(&U)&Undo Q3TextEditnzzClear Q3TextEdit RjR(&T)Cu&t Q3TextEdit bQh Select All Q3TextEditQsClose Q3TitleBarQszSCloses the window Q3TitleBarST+dO\zSvT}N0*Contains commands to manipulate the window Q3TitleBar f>y:zST y^vNST+~b[vcNFDisplays the name of the window and contains controls to manipulate it Q3TitleBar zSQh\OSMakes the window full screen Q3TitleBargY'SMaximize Q3TitleBarg\SMinimize Q3TitleBarbzSyR0YbMoves the window out of the way Q3TitleBarbNN*gY'SzS`bY N:fnr`&Puts a maximized window back to normal Q3TitleBarbNN*g\SzS`bY N:fnr`Puts a minimized back to normal Q3TitleBarTN `bY  Restore down Q3TitleBarTN `bY  Restore up Q3TitleBar|~System Q3TitleBar fY...More... Q3ToolBar (g*wv) (unknown) Q3UrlOperator*SO %1 N e/cY R6byReNbv_UIThe protocol `%1' does not support copying or moving files or directories Q3UrlOperatorSO %1 N e/cR^ev_U;The protocol `%1' does not support creating new directories Q3UrlOperatorSO %1 N e/cSeN0The protocol `%1' does not support getting files Q3UrlOperatorSO %1 N e/cRQv_U6The protocol `%1' does not support listing directories Q3UrlOperatorSO %1 N e/cN O eN0The protocol `%1' does not support putting files Q3UrlOperator"SO %1 N e/cydeNbv_U@The protocol `%1' does not support removing files or directories Q3UrlOperator$SO %1 N e/cT}T eNbv_U@The protocol `%1' does not support renaming files or directories Q3UrlOperatorSO %1 N e/c"The protocol `%1' is not supported Q3UrlOperator Sm(&C)&CancelQ3Wizard [b(&F)&FinishQ3Wizard ^.R(&H)&HelpQ3WizardN Nke(&N) >&Next >Q3Wizard< N Nke(&B)< &BackQ3Wizard cb~Connection refusedQAbstractSocketceConnection timed outQAbstractSocket N;g:g*b~R0Host not foundQAbstractSocket Q~N Network unreachableQAbstractSocketSocketdO\N e/c$Operation on socket is not supportedQAbstractSocketYWc[Wlg cSocket is not connectedQAbstractSocketYWc[WdO\eSocket operation timed outQAbstractSocket bQh(&S) &Select AllQAbstractSpinBox XR(&S)&Step upQAbstractSpinBox Q\(&D) Step &downQAbstractSpinBoxom;Activate QApplicationom;N*z ^vN;zS#Activates the program's main window QApplication0bgL %1 Qt %2 Sb~R0NQt %30,Executable '%1' requires Qt %2, found Qt %3. QApplicationN Q|[vQtIncompatible Qt Library Error QApplicationLTRQT_LAYOUT_DIRECTION QApplication Sm(&C)&Cancel QAxSelectCOM[a(&O) COM &Object: QAxSelectxn[OK QAxSelect bActiveXcNSelect ActiveX Control QAxSelect N-Check QCheckBoxRcbToggle QCheckBoxSm N-Uncheck QCheckBoxmRR0[NIr(&A)&Add to Custom Colors QColorDialogWg,r(&B) &Basic colors QColorDialog[NIr(&C)&Custom colors QColorDialog~r(&G)&Green: QColorDialog~r(&R)&Red: QColorDialogqT^(&S)&Sat: QColorDialogN^(&V)&Val: QColorDialogAlphaS(&A)A&lpha channel: QColorDialog݂r(&U)Bl&ue: QColorDialogr(&E)Hu&e: QColorDialog b阜r Select Color QColorDialogQsClose QComboBoxPGFalse QComboBoxbS_Open QComboBoxwTrue QComboBox%1ftok Y1%%1: ftok failedQCoreApplication%1.f/zzv%1: key is emptyQCoreApplication%1N R6 .%1: unable to make keyQCoreApplication N cNNRUnable to commit transaction QDB2DriverN cUnable to connect QDB2Driver N VnNRUnable to rollback transaction QDB2DriverN nRcNUnable to set autocommit QDB2Driver N ^.[SؑUnable to bind variable QDB2Result N bgLSUnable to execute statement QDB2ResultN S{,NN*Unable to fetch first QDB2ResultN SN NN*Unable to fetch next QDB2ResultN S֋_U%1Unable to fetch record %1 QDB2Result N QYSUnable to prepare statement QDB2ResultAMAM QDateTimeEditPMPM QDateTimeEditamam QDateTimeEditpmpm QDateTimeEdit QDialQDialQDialSliderHandle SliderHandleQDialSpeedoMeter SpeedoMeterQDial[bDoneQDialog f/NNH What's This?QDialog Sm(&C)&CancelQDialogButtonBox Qs(&C)&CloseQDialogButtonBox T&(&N)&NoQDialogButtonBox xn[(&O)&OKQDialogButtonBox O[X(&S)&SaveQDialogButtonBox f/(&Y)&YesQDialogButtonBoxe>_AbortQDialogButtonBox^u(ApplyQDialogButtonBoxSmCancelQDialogButtonBoxQsCloseQDialogButtonBox N O[XQsClose without SavingQDialogButtonBoxb_DiscardQDialogButtonBoxN O[X Don't SaveQDialogButtonBox^.RHelpQDialogButtonBox_ueIgnoreQDialogButtonBoxQhT&(&O) N&o to AllQDialogButtonBoxxn[OKQDialogButtonBoxbS_OpenQDialogButtonBoxnResetQDialogButtonBox`bY ؋Restore DefaultsQDialogButtonBox͋RetryQDialogButtonBoxO[XSaveQDialogButtonBoxO[XQhSave AllQDialogButtonBoxQhf/(&A) Yes to &AllQDialogButtonBox egOe9 Date Modified QDirModel|{WKind QDirModelT yName QDirModelY'\Size QDirModel|{WType QDirModelQsClose QDockWidgetcDock QDockWidgetmnRFloat QDockWidgetf\LessQDoubleSpinBoxfYMoreQDoubleSpinBox xn[(&O)&OK QErrorMessageQk!f>y:N*m`o(&S)&Show this message again QErrorMessage m`oDebug Message: QErrorMessage T} Fatal Error: QErrorMessagefTJWarning: QErrorMessageelR^ %1 Cannot create %1 for outputQFileelՏQe %1 Cannot open %1 for inputQFileelՏQCannot open for outputQFilevheN][XW(Destination file existsQFileQWWY1%Failure to write blockQFile.v_U%1 lg b~R00 h8[]~[kcxnv_UT 0K%1 Directory not found. Please verify the correct directory name was given. QFileDialog.eN%1 lg b~R00 h8[]~[kcxneNT 0A%1 File not found. Please verify the correct file name was given. QFileDialog %1]~[XW(0 O``fcb[NH-%1 already exists. Do you want to replace it? QFileDialog b(&C)&Choose QFileDialog R d(&D)&Delete QFileDialoge^eNY9(&N) &New Folder QFileDialog bS_(&O)&Open QFileDialogT}T (&R)&Rename QFileDialog O[X(&S)&Save QFileDialog( %1 f/QObv0 O`f/`R d[NH9'%1' is write protected. Do you want to delete it anyway? QFileDialogb@g eN (*) All Files (*) QFileDialogb@g eN (*.*)All Files (*.*) QFileDialogO`xnO``R d %1 !Are sure you want to delete '%1'? QFileDialogTBack QFileDialogN R dv_U0Could not delete directory. QFileDialog R^eeNY9Create New Folder QFileDialog~ƉV Detail View QFileDialogv_U Directories QFileDialogv_U Directory: QFileDialogqRVhDrive QFileDialogeNFile QFileDialogeNT y(&N) File &name: QFileDialog eN|{WFiles of type: QFileDialoggb~v_UFind Directory QFileDialogRMForward QFileDialogRhV List View QFileDialoggw Look in: QFileDialog bv{g: My Computer QFileDialog e^eNY9 New Folder QFileDialogbS_Open QFileDialogr6v_UParent Directory QFileDialog gvW0e Recent Places QFileDialogydRemove QFileDialogS[XN:Save As QFileDialogf>y: Show  QFileDialogf>y:eN(&H)Show &hidden files QFileDialogg*wvUnknown QFileDialog %1 GB%1 GBQFileSystemModel %1SC[W%1 KBQFileSystemModel %1 MB%1 MBQFileSystemModel %1 TB%1 TBQFileSystemModel%1[W%1 bytesQFileSystemModel`<b>T y %1 N Ou(0</b><p>Ou(SYNN*ST+f\[W{&bN T+g hp{&SvT y0oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModel{g:ComputerQFileSystemModel egOe9 Date ModifiedQFileSystemModel eeHeNT Invalid filenameQFileSystemModel|{WKindQFileSystemModel bv{g: My ComputerQFileSystemModelT yNameQFileSystemModelY'\SizeQFileSystemModel|{WTypeQFileSystemModelNaAny QFontDatabase?bO/eArabic QFontDatabase N\_NRequest abortedQHttpSSL cbKY1%SSL handshake failedQHttpg RVh_^8W0QsNc%Server closed connection unexpectedlyQHttp g*wv Unknown errorQHttpb@c[vSOf/g*wvUnknown protocol specifiedQHttpvQ[^Wrong content lengthQHttpAuthentication requiredQHttpSocketEngineg*e6R0NtvHTTPT^(Did not receive HTTP response from proxyQHttpSocketEngineTHTTPNteSu#Error communicating with HTTP proxyQHttpSocketEnginegNtvlBQ/Error parsing authentication request from proxyQHttpSocketEngineNtceQs#Proxy connection closed prematurelyQHttpSocketEngineNtcb~Proxy connection refusedQHttpSocketEngine Ntb~ݏcProxy denied connectionQHttpSocketEngineNtg RVhce!Proxy server connection timed outQHttpSocketEngineg*b~R0Ntg RVhProxy server not foundQHttpSocketEngine N _YNRCould not start transaction QIBaseDriverbS_epcn^Error opening database QIBaseDriver N cNNRUnable to commit transaction QIBaseDriver N VnNRUnable to rollback transaction QIBaseDriver N RMSCould not allocate statement QIBaseResultN cϏQeS"Could not describe input statement QIBaseResult N cϏSCould not describe statement QIBaseResultN SN NyCould not fetch next item QIBaseResult N b~R0ep~Could not find array QIBaseResultN _R0ep~epcnCould not get array data QIBaseResultN _R0gO`oCould not get query info QIBaseResultN _R0SO`oCould not get statement info QIBaseResult N QYSCould not prepare statement QIBaseResult N _YNRCould not start transaction QIBaseResult N QsSUnable to close statement QIBaseResult N cNNRUnable to commit transaction QIBaseResultN R^BLOBUnable to create BLOB QIBaseResult N bgLgUnable to execute query QIBaseResultN bS_BLOBUnable to open BLOB QIBaseResultN SBLOBUnable to read BLOB QIBaseResultN QQeBLOBUnable to write BLOB QIBaseResultYN lg zzNNo space left on device QIODevicelg N*eNbv_UNo such file or directory QIODevice gCPb~Permission denied QIODeviceY*YbS_veNToo many open files QIODevice g*wv Unknown error QIODeviceMac OS XQelMac OS X input method QInputContextWindowsQelWindows input method QInputContextXIMXIM QInputContext XIMQelXIM input method QInputContext QeNN*P<Enter a value: QInputDialogelR}^%1%2Cannot load library %1: %2QLibrary"elՉg%2N-v{&S %2 %3$Cannot resolve symbol "%1" in %2: %3QLibraryelSx}^%1%2Cannot unload library %1: %2QLibraryN f \ %1 %2Could not mmap '%1': %2QLibraryN Smf \ %1 %2Could not unmap '%1': %2QLibrary %1 N-vcNepcnN S9M)Plugin verification data mismatch in '%1'QLibrary eN %1 N f/g eHvQtcN0'The file '%1' is not a valid Qt plugin.QLibrary@cN %1 Ou(NN Q|[vQt^0(%2.%3.%4) [%5]=The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]QLibraryJcN %1 Ou(NN Q|[vQt^0(N mTOu(^vrHg,TS^rHg,0)WThe plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)QLibraryLcN %1 Ou(NN Q|[vQt^0g_vg^.f/ %2  _R0vStf/ %3 OThe plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"QLibraryQqN^lg b~R00!The shared library was not found.QLibrary g*wv Unknown errorQLibrary Y R6(&C)&Copy QLineEdit |4(&P)&Paste QLineEdit `bY (&R)&Redo QLineEdit dm(&U)&Undo QLineEdit RjR(&T)Cu&t QLineEditR dDelete QLineEdit bQh Select All QLineEdit%1W0W@kcW(Ou(%1: Address in use QLocalServer%1: T y%1: Name error QLocalServer%1gCPb~%1: Permission denied QLocalServer%1g*w %2%1: Unknown error %2 QLocalServer%1c%1: Connection error QLocalSocket%1cb~%1: Connection refused QLocalSocket%1epcnbY*Y'%1: Datagram too large QLocalSocket%1eeHT y%1: Invalid name QLocalSocket%1z ]Qs%1: Remote closed QLocalSocket%1YWc[W%1: Socket access error QLocalSocket%1YWc[WdO\e%1: Socket operation timed out QLocalSocket%1YWc[WDn%1: Socket resource error QLocalSocket%1YWc[WdO\N e/c)%1: The socket operation is not supported QLocalSocket%1g*w%1: Unknown error QLocalSocket%1g*w %2%1: Unknown error %2 QLocalSocket N _YNRUnable to begin transaction QMYSQLDriver N cNNRUnable to commit transaction QMYSQLDriverN cUnable to connect QMYSQLDriverN bS_epcn^Unable to open database ' QMYSQLDriver N VnNRUnable to rollback transaction QMYSQLDriver N ~[YP<Unable to bind outvalues QMYSQLResult N ~[P<Unable to bind value QMYSQLResultN bgLN NN*gUnable to execute next query QMYSQLResult N bgLgUnable to execute query QMYSQLResult N bgLSUnable to execute statement QMYSQLResult N SepcnUnable to fetch data QMYSQLResult N QYSUnable to prepare statement QMYSQLResult N nSUnable to reset statement QMYSQLResultN [XPN NN*~gUnable to store next result QMYSQLResult N [XP~gUnable to store result QMYSQLResultN [XPS~g!Unable to store statement results QMYSQLResult (g*T}T v) (Untitled)QMdiArea%1 - [%2] %1 - [%2] QMdiSubWindow Qs(&C)&Close QMdiSubWindow yR(&M)&Move QMdiSubWindow `bY (&R)&Restore QMdiSubWindow Y'\(&S)&Size QMdiSubWindow - [%1]- [%1] QMdiSubWindowQsClose QMdiSubWindow^.RHelp QMdiSubWindowgY'S(&X) Ma&ximize QMdiSubWindowgY'SMaximize QMdiSubWindowSUMenu QMdiSubWindowg\S(&N) Mi&nimize QMdiSubWindowg\SMinimize QMdiSubWindow`bY Restore QMdiSubWindowTN `bY  Restore Down QMdiSubWindown=Shade QMdiSubWindow`;W(gRM(&T) Stay on &Top QMdiSubWindowSmn=Unshade QMdiSubWindowQsCloseQMenubgLExecuteQMenubS_OpenQMenuQsNQtAbout Qt QMessageBox^.RHelp QMessageBox ~Ƃ & &Hide Details... QMessageBoxxn[OK QMessageBox f>y:~Ƃ & &Show Details... QMessageBox b鏓Qel Select IMQMultiInputContextYQelRcbVhMultiple input method switcherQMultiInputContextPlugin*Ou(eg,zSNN N eSUvYQelRcbVhMMultiple input method switcher that uses the context menu of the text widgetsQMultiInputContextPlugin SNN*YWc[W]~kcW(vT,T NzS4Another socket is already listening on the same portQNativeSocketEngine2VW(N e/cIPv6e/cv^sSN Ou(IPv6YWc[W=Attempt to use IPv6 socket on a platform with no IPv6 supportQNativeSocketEngine cb~Connection refusedQNativeSocketEngineceConnection timed outQNativeSocketEngineN SѐY'vepcnbDatagram was too large to sendQNativeSocketEngine N;g:N Host unreachableQNativeSocketEngineeeHvYWc[WcϏ{&Invalid socket descriptorQNativeSocketEngineQ~ܕ Network errorQNativeSocketEngine Q~dO\eNetwork operation timed outQNativeSocketEngine Q~N Network unreachableQNativeSocketEngine[^YWc[WdO\Operation on non-socketQNativeSocketEngine Dn\=NOut of resourcesQNativeSocketEngine gCPb~Permission deniedQNativeSocketEngineSO|{WN e/cProtocol type not supportedQNativeSocketEngineN*W0W@N Su(The address is not availableQNativeSocketEngineN*W0W@ObNThe address is protectedQNativeSocketEngineT/u(vW0W@]~ψOu(#The bound address is already in useQNativeSocketEngine[NN*dO\Nt|{Wf/eeHv0,The proxy type is invalid for this operationQNativeSocketEnginezN;g:QsNN*c%The remote host closed the connectionQNativeSocketEngineN RYS^dYWc[W%Unable to initialize broadcast socketQNativeSocketEngineN RYS^;X^YWc[W(Unable to initialize non-blocking socketQNativeSocketEngineN ce6NN*m`oUnable to receive a messageQNativeSocketEngineN SѐNN*m`oUnable to send a messageQNativeSocketEngineN QQeUnable to writeQNativeSocketEngine g*wv Unknown errorQNativeSocketEngineN e/cvYWc[WdO\Unsupported socket operationQNativeSocketEnginebS_%1SuError opening %1QNetworkAccessCacheBackendelbS_ %1_f/NN*v_U#Cannot open %1: Path is a directoryQNetworkAccessFileBackendbS_ %1 %2Error opening %1: %2QNetworkAccessFileBackendS %1 %2Read error reading from %1: %2QNetworkAccessFileBackend kcW(bS_^g,W0eN %1 vlB%Request for opening non-local file %1QNetworkAccessFileBackendQQe %1 %2Write error writing to %1: %2QNetworkAccessFileBackendelՋS %1f/NN*v_UCannot open %1: is a directoryQNetworkAccessFtpBackendN } %1 e%2Error while downloading %1: %2QNetworkAccessFtpBackendN } %1 e%2Error while uploading %1: %2QNetworkAccessFtpBackendv{Qe %1 Y1%0Logging in to %1 failed: authentication requiredQNetworkAccessFtpBackendg*b~R0TvNtNo suitable proxy foundQNetworkAccessFtpBackendg*b~R0TvNtNo suitable proxy foundQNetworkAccessHttpBackend&N } %1  - g RVhVY %2)Error downloading %1 - server replied: %2 QNetworkReplySO %1 f/g*wvProtocol "%1" is unknown QNetworkReply dO\SmOperation canceledQNetworkReplyImpl N _YNRUnable to begin transaction QOCIDriver N cNNRUnable to commit transaction QOCIDriver N RYSUnable to initialize QOCIDriverN v{_UUnable to logon QOCIDriver N VnNRUnable to rollback transaction QOCIDriver N RMSUnable to alloc statement QOCIResultN ~[byYtbgLvR'Unable to bind column for batch execute QOCIResult N ~[P<Unable to bind value QOCIResultN bgLbyYtS!Unable to execute batch statement QOCIResult N bgLSUnable to execute statement QOCIResultN QeN NN*Unable to goto next QOCIResult N QYSUnable to prepare statement QOCIResult N cNNRUnable to commit transaction QODBCDriverN cUnable to connect QODBCDriver N c qRz ^N e/cb@g RCUnable to connect - Driver doesn't support all needed functionality QODBCDriverN ykbRcNUnable to disable autocommit QODBCDriverN bS_RcNUnable to enable autocommit QODBCDriver N VnNRUnable to rollback transaction QODBCDriverQODBCResult::reset: N b SQL_CURSOR_STATIC nN:S\^`'0hgO`vODBCqRz ^n0yQODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResult N ^.[SؑUnable to bind variable QODBCResult N bgLSUnable to execute statement QODBCResultN SUnable to fetch QODBCResultN S{,NN*Unable to fetch first QODBCResultN SgTNN*Unable to fetch last QODBCResultN SN NN*Unable to fetch next QODBCResultN SN NN*Unable to fetch previous QODBCResult N QYSUnable to prepare statement QODBCResult[HomeQObjecteeHv URI%1Invalid URI: %1QObject g*c[N;g:T No host name givenQObjectW( %1 N N e/cvdO\Operation not supported on %1QObject SOe6R0NY'\N: 0 vS)Protocol error: packet of size 0 receivedQObjectS %1 %2Read error reading from %1: %2QObject*z N;g:eW0QsNW( %1 N vN*c3Remote host closed the connection prematurely on %1QObject%1 N vYWc[W%2Socket error on %1: %2QObjectQQe %1 %2Write error writing to %1: %2QObjectT yNameQPPDOptionsModelP<ValueQPPDOptionsModel N _YNRCould not begin transaction QPSQLDriver N cNNRCould not commit transaction QPSQLDriver N VnNRCould not rollback transaction QPSQLDriverN cUnable to connect QPSQLDriverN Unable to subscribe QPSQLDriver N SmUnable to unsubscribe QPSQLDriver N R^gUnable to create query QPSQLResult N QYSUnable to prepare statement QPSQLResultS|s (cm)Centimeters (cm)QPageSetupWidgetzOSFormQPageSetupWidget^Height:QPageSetupWidget[ (in) Inches (in)QPageSetupWidgetj*T LandscapeQPageSetupWidgetMarginsQPageSetupWidgetk|s (mm)Millimeters (mm)QPageSetupWidgeteT OrientationQPageSetupWidget ~_ Y'\ Page size:QPageSetupWidget~_ PaperQPageSetupWidget~_ n Paper source:QPageSetupWidget p (pt) Points (pt)QPageSetupWidget~TPortraitQPageSetupWidgetSTj*TReverse landscapeQPageSetupWidgetST~TReverse portraitQPageSetupWidget[^Width:QPageSetupWidgetN  bottom marginQPageSetupWidget]揹 left marginQPageSetupWidgetS󏹍 right marginQPageSetupWidgetN  top marginQPageSetupWidgetcNlg }Qe0The plugin was not loaded. QPluginLoader g*wv Unknown error QPluginLoader%1]~[XW(0 O``v[NH/%1 already exists. Do you want to overwrite it? QPrintDialog&%1f/v_U0 bNN*N T veNT 07%1 is a directory. Please choose a different file name. QPrintDialog y(&O) << &Options << QPrintDialog y(&O) >> &Options >> QPrintDialog bSSp(&P)&Print QPrintDialog <qt>O``v[NH</qt>%Do you want to overwrite it? QPrintDialogA0A0 QPrintDialog$A0 (841 x 1189 k|s)A0 (841 x 1189 mm) QPrintDialogA1A1 QPrintDialog"A1 (594 x 841 k|s)A1 (594 x 841 mm) QPrintDialogA2A2 QPrintDialog"A2 (420 x 594 k|s)A2 (420 x 594 mm) QPrintDialogA3A3 QPrintDialog"A3 (297 x 420 k|s)A3 (297 x 420 mm) QPrintDialogA4A4 QPrintDialog@A4 (210 x 297 k|s 8.26 x 11.7 [)%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialogA5A5 QPrintDialog"A5 (148 x 210 k|s)A5 (148 x 210 mm) QPrintDialogA6A6 QPrintDialog"A6 (105 x 148 k|s)A6 (105 x 148 mm) QPrintDialogA7A7 QPrintDialog A7 (74 x 105 k|s)A7 (74 x 105 mm) QPrintDialogA8A8 QPrintDialogA8 (52 x 74 k|s)A8 (52 x 74 mm) QPrintDialogA9A9 QPrintDialogA9 (37 x 52 k|s)A9 (37 x 52 mm) QPrintDialog R+T %1 Aliases: %1 QPrintDialogB0B0 QPrintDialog&B0 (1000 x 1414 k|s)B0 (1000 x 1414 mm) QPrintDialogB1B1 QPrintDialog$B1 (707 x 1000 k|s)B1 (707 x 1000 mm) QPrintDialogB10B10 QPrintDialog B10 (31 x 44 k|s)B10 (31 x 44 mm) QPrintDialogB2B2 QPrintDialog"B2 (500 x 707 k|s)B2 (500 x 707 mm) QPrintDialogB3B3 QPrintDialog"B3 (353 x 500 k|s)B3 (353 x 500 mm) QPrintDialogB4B4 QPrintDialog"B4 (250 x 353 k|s)B4 (250 x 353 mm) QPrintDialogB5B5 QPrintDialog@B5 (176 x 250 k|s 6.93 x 9.84 [)%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialogB6B6 QPrintDialog"B6 (125 x 176 k|s)B6 (125 x 176 mm) QPrintDialogB7B7 QPrintDialog B7 (88 x 125 k|s)B7 (88 x 125 mm) QPrintDialogB8B8 QPrintDialogB8 (62 x 88 k|s)B8 (62 x 88 mm) QPrintDialogB9B9 QPrintDialogB9 (44 x 62 k|s)B9 (44 x 62 mm) QPrintDialogC5EC5E QPrintDialog$C5E (163 x 229 k|s)C5E (163 x 229 mm) QPrintDialog[NICustom QPrintDialogDLEDLE QPrintDialog$DLE (110 x 220 k|s)DLE (110 x 220 mm) QPrintDialogQ{VeNf Executive QPrintDialogHExecutive (7.5 x 10 [ 191 x 254 k|s))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialog*eN%1N SQ0 bNN*N T veNT 0=File %1 is not writable. Please choose a different file name. QPrintDialogeN[XW( File exists QPrintDialog[_~Folio QPrintDialog(Folio (210 x 330 k|s)Folio (210 x 330 mm) QPrintDialog^uLedger QPrintDialog*Ledger (432 x 279 k|s)Ledger (432 x 279 mm) QPrintDialogl_eNfLegal QPrintDialog@Legal (8.5 x 14 [ 216 x 356 k|s)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialogO~Letter QPrintDialogBLetter (8.5 x 11 [ 216 x 279 k|s)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialogg,W0eN Local file QPrintDialogxn[OK QPrintDialogbSSpPrint QPrintDialogbSSpR0eN & &Print To File ... QPrintDialogbSSpQh Print all QPrintDialogbSSpV Print range QPrintDialogbSSp bPrint selection QPrintDialogbSSpR0eN(PDF)Print to File (PDF) QPrintDialog"bSSpR0eN(Postscript)Print to File (Postscript) QPrintDialog\Wb~Tabloid QPrintDialog,Tabloid (279 x 432 k|s)Tabloid (279 x 432 mm) QPrintDialog" N vepPy:_SRMuShow facing pagesQPrintPreviewDialogf>y:b@g uviShow overview of all pagesQPrintPreviewDialogf>y:SUuShow single pageQPrintPreviewDialoge>Y'Zoom inQPrintPreviewDialog)\Zoom outQPrintPreviewDialog~AdvancedQPrintPropertiesWidgetzOSFormQPrintPropertiesWidgetuPageQPrintPropertiesWidgeth![CollateQPrintSettingsOutput_irColorQPrintSettingsOutput_irj!_ Color ModeQPrintSettingsOutputbCopiesQPrintSettingsOutputYNCopies:QPrintSettingsOutput N$RbSSpDuplex PrintingQPrintSettingsOutputzOSFormQPrintSettingsOutputpp^ GrayscaleQPrintSettingsOutputO Long sideQPrintSettingsOutputeNoneQPrintSettingsOutput yOptionsQPrintSettingsOutputQnOutput SettingsQPrintSettingsOutputuepN Pages fromQPrintSettingsOutputbSSpQh Print allQPrintSettingsOutputbSSpV Print rangeQPrintSettingsOutputSTReverseQPrintSettingsOutput b SelectionQPrintSettingsOutputwO Short sideQPrintSettingsOutputR0toQPrintSettingsOutputT y(&N)&Name: QPrintWidget...... QPrintWidgetzOSForm QPrintWidgetOMn Location: QPrintWidgetQeN(&F) Output &file: QPrintWidget \^`'(&R) P&roperties QPrintWidgetPreview QPrintWidgetbSSpg:Printer QPrintWidget|{WType: QPrintWidgetelbS_u(NSvQe[T,Could not open input redirection for readingQProcesselbS_u(NQQevQ[T-Could not open output redirection for writingQProcessNΏz N-SeSuError reading from processQProcessTz QQeeSuError writing to processQProcess z ]])nProcess crashedQProcess T/Rz Y1%Process failed to startQProcess z YteProcess operation timed outQProcessDn(forkY1%)%1!Resource error (fork failure): %1QProcessdmCancelQProgressDialogbS_Open QPushButton N-Check QRadioButtonv[W{&|{lbad char class syntaxQRegExpvmKlbad lookahead syntaxQRegExpvY lbad repetition syntaxQRegExpOu(NY1eHvryeHdisabled feature usedQRegExpeeHvQkR6epP<invalid octal valueQRegExp GR0QPR6met internal limitQRegExpb~N R0]R{&missing left delimQRegExp lg Suno error occurredQRegExp aYv~kbunexpected endQRegExpbS_epcn^Error to open databaseQSQLite2Driver N _YNRUnable to begin transactionQSQLite2Driver N cNNRUnable to commit transactionQSQLite2Driver N VnNRUnable to rollback TransactionQSQLite2Driver N bgLSUnable to execute statementQSQLite2Result N S~gUnable to fetch resultsQSQLite2ResultQsepcn^Error closing database QSQLiteDriverbS_epcn^Error opening database QSQLiteDriver N _YNRUnable to begin transaction QSQLiteDriver N cNNRUnable to commit transaction QSQLiteDriver N VnNRUnable to rollback transaction QSQLiteDriverlg gNo query QSQLiteResultSepepN S9MParameter count mismatch QSQLiteResult N ~[SepUnable to bind parameters QSQLiteResult N bgLSUnable to execute statement QSQLiteResult N SֈLUnable to fetch row QSQLiteResult N nSUnable to reset statement QSQLiteResult^Bottom QScrollBar]揹 Left edge QScrollBarTN cR Line down QScrollBarTN cRLine up QScrollBarN Nu Page down QScrollBar]Nu Page left QScrollBarSNu Page right QScrollBarN NuPage up QScrollBarOMnPosition QScrollBarS Right edge QScrollBarTN nR Scroll down QScrollBar nRR0ّ Scroll here QScrollBarT]nR Scroll left QScrollBarTSnR Scroll right QScrollBarTN nR Scroll up QScrollBarvTop QScrollBar%1]~[XW(%1: already exists QSharedMemory%1R^vY'\\N 0%1: create size is less then 0 QSharedMemory %1N [XW(%1: doesn't exists QSharedMemory%1ftok Y1%%1: ftok failed QSharedMemory%1eeHY'\%1: invalid size QSharedMemory%1: . %1: key error QSharedMemory%1.f/zzv%1: key is empty QSharedMemory%1lg DR%1: not attached QSharedMemory%1Dn\=N%1: out of resources QSharedMemory%1gCPb~%1: permission denied QSharedMemory%1Y'\gY1%%1: size query failed QSharedMemory%1|~ߘY'\PR6$%1: system-imposed size restrictions QSharedMemory%1elՕ[%1: unable to lock QSharedMemory%1N R6 .%1: unable to make key QSharedMemory%1elՋn[v.%1: unable to set key on lock QSharedMemory%1elSm[%1: unable to unlock QSharedMemory%1Unix .eNN [XW( %1: unix key file doesn't exists QSharedMemory%1g*w %2%1: unknown error %2 QSharedMemory++ QShortcutAltAlt QShortcutTBack QShortcutBackspace Backspace QShortcutBacktabBacktab QShortcutONX_: Bass Boost QShortcut\ON Bass Down QShortcutY'ONBass Up QShortcutT|SCall QShortcutCaps Lock Caps Lock QShortcutCapsLockCapsLock QShortcutN N e1Context1 QShortcutN N e2Context2 QShortcutN N e3Context3 QShortcutN N e4Context4 QShortcutCtrlCtrl QShortcutDelDel QShortcut DeleteDelete QShortcutDownDown QShortcutEndEnd QShortcut EnterEnter QShortcutEscEsc QShortcut EscapeEscape QShortcutF%1F%1 QShortcutgUr1v Favorites QShortcutlFlip QShortcutRMForward QShortcutcwHangup QShortcutHelpHelp QShortcutHomeHome QShortcutN;u Home Page QShortcutInsIns QShortcut InsertInsert QShortcut T/R (0) Launch (0) QShortcut T/R (1) Launch (1) QShortcut T/R (2) Launch (2) QShortcut T/R (3) Launch (3) QShortcut T/R (4) Launch (4) QShortcut T/R (5) Launch (5) QShortcut T/R (6) Launch (6) QShortcut T/R (7) Launch (7) QShortcut T/R (8) Launch (8) QShortcut T/R (9) Launch (9) QShortcut T/R (A) Launch (A) QShortcut T/R (B) Launch (B) QShortcut T/R (C) Launch (C) QShortcut T/R (D) Launch (D) QShortcut T/R (E) Launch (E) QShortcut T/R (F) Launch (F) QShortcutT/RN Launch Mail QShortcut T/RYZOS Launch Media QShortcutLeftLeft QShortcut N NN*YZOS Media Next QShortcut YZOSde> Media Play QShortcut N NN*YZOSMedia Previous QShortcut YZOS_U Media Record QShortcut YZOSP\kb Media Stop QShortcutMenuMenu QShortcutMetaMeta QShortcutT&No QShortcutNum LockNum Lock QShortcutNumLockNumLock QShortcutNumber Lock Number Lock QShortcut bS_URLOpen URL QShortcutPage Down Page Down QShortcutPage UpPage Up QShortcut PausePause QShortcut PgDownPgDown QShortcutPgUpPgUp QShortcut PrintPrint QShortcutPrint Screen Print Screen QShortcutR7eRefresh QShortcut ReturnReturn QShortcut RightRight QShortcutScroll Lock Scroll Lock QShortcutScrollLock ScrollLock QShortcutd}"Search QShortcut bSelect QShortcut ShiftShift QShortcutzzh<Space QShortcut{I_Standby QShortcutP\kbStop QShortcut SysReqSysReq QShortcutSystem RequestSystem Request QShortcutTabTab QShortcut\ؗ Treble Down QShortcutY'ؗ Treble Up QShortcutUpUp QShortcut\ Volume Down QShortcutY Volume Mute QShortcutY' Volume Up QShortcutf/Yes QShortcutN Nu Page downQSlider]Nu Page leftQSliderSNu Page rightQSliderN NuPage upQSliderOMnPositionQSliderN e/cvW0W@|{WAddress type not supportedQSocks5SocketEngine cN SOCKSv5g RVhQA(Connection not allowed by SOCKSv5 serverQSocks5SocketEngineNtceQs&Connection to proxy closed prematurelyQSocks5SocketEngine Ntb~ݏcConnection to proxy refusedQSocks5SocketEngine NtceConnection to proxy timed outQSocks5SocketEngine^8g RVhY1%General SOCKSv5 server failureQSocks5SocketEngine Q~dO\eNetwork operation timed outQSocks5SocketEngine NtY1%Proxy authentication failedQSocks5SocketEngineNtY1%: %1Proxy authentication failed: %1QSocks5SocketEngineNtN;g:g*b~R0Proxy host not foundQSocks5SocketEngineSOCKSrHg,5SOSOCKS version 5 protocol errorQSocks5SocketEngineN e/cvSOCKSv5T}NSOCKSv5 command not supportedQSocks5SocketEngine TTL]g TTL expiredQSocks5SocketEngine*g*wSOCKSv5Nt Nx 0x%1%Unknown SOCKSv5 proxy error code 0x%1QSocks5SocketEnginef\LessQSpinBoxfYMoreQSpinBoxSmCancelQSqlSm`vCancel your edits?QSqlxnConfirmQSqlR dDeleteQSqlR dga_UDelete this record?QSqlcQeInsertQSqlT&NoQSql O[X Save edits?QSqlfeUpdateQSqlf/YesQSqlN cOlg .vNf %1,Cannot provide a certificate with no key, %1 QSslSocketR^SSLN N e%1 Error creating SSL context (%1) QSslSocketR^SSLOݕ %1Error creating SSL session, %1 QSslSocketR^SSLOݕ%1Error creating SSL session: %1 QSslSocketSSLcbK%1Error during SSL handshake: %1 QSslSocketN }Qeg,W0Nf %1#Error loading local certificate, %1 QSslSocketN }Qeyg . %1Error loading private key, %1 QSslSocketSe%1Error while reading: %1 QSslSocketeeHbzzv}v[xRh%1 !Invalid or empty cipher list (%1) QSslSocketyg .N Qlg . %1/Private key does not certificate public key, %1 QSslSocketN QQeepcn%1Unable to write data: %1 QSslSocket%1]~[XW(%1: already existsQSystemSemaphore %1N [XW(%1: does not existQSystemSemaphore%1Dn\=N%1: out of resourcesQSystemSemaphore%1gCPb~%1: permission deniedQSystemSemaphore%1g*w %2%1: unknown error %2QSystemSemaphore N bS_cUnable to open connection QTDSDriverN Ou(epcn^Unable to use database QTDSDriverT]nR Scroll LeftQTabBarTSnR Scroll RightQTabBarsocketdO\N e/c$Operation on socket is not supported QTcpServer Y R6(&C)&Copy QTextControl |4(&P)&Paste QTextControl `bY (&R)&Redo QTextControl dm(&U)&Undo QTextControlY R6cOMn(&L)Copy &Link Location QTextControl RjR(&T)Cu&t QTextControlR dDelete QTextControl bQh Select All QTextControlbS_Open QToolButtonc N Press QToolButtonN*^sSN e/cIPv6#This platform does not support IPv6 QUdpSocket`bY Redo QUndoGroupdUndo QUndoGroup QUndoModel`bY Redo QUndoStackdUndo QUndoStackcQeUnicodecR6[W{& Insert Unicode control characterQUnicodeControlCharacterMenuLRE _YN]R0S]LQe$LRE Start of left-to-right embeddingQUnicodeControlCharacterMenuLRM N]R0ShLRM Left-to-right markQUnicodeControlCharacterMenuLRO _YN]TSv#LRO Start of left-to-right overrideQUnicodeControlCharacterMenuPDF _9QeTh<_PDF Pop directional formattingQUnicodeControlCharacterMenuRLE _YNST]]LQe$RLE Start of right-to-left embeddingQUnicodeControlCharacterMenuRLM NST]hRLM Right-to-left markQUnicodeControlCharacterMenuRLO _YNST]扆v#RLO Start of right-to-left overrideQUnicodeControlCharacterMenuZWJ [^cVhZWJ Zero width joinerQUnicodeControlCharacterMenuZWNJ [^^cVhZWNJ Zero width non-joinerQUnicodeControlCharacterMenuZWSP [^zzh<ZWSP Zero width spaceQUnicodeControlCharacterMenuelf>y: URLCannot show URL QWebFrameelf>y: MIMETYPECannot show mimetype QWebFrame eNN [XW(File does not exist QWebFrameVN:{VueetbSeNhbvR}&Frame load interruped by policy change QWebFrame lB;X^NRequest blocked QWebFrame lBSmNRequest cancelled QWebFrame%1 %2x%3 P} %1 (%2x%3 pixels)QWebPage %n N*eN %n file(s)QWebPage mRR0[WQxAdd To DictionaryQWebPagev HTTP lBBad HTTP requestQWebPage|OSBoldQWebPage^BottomQWebPagehglTbQCheck Grammar With SpellingQWebPagehgbQCheck SpellingQWebPageW(QeehgbQCheck Spelling While TypingQWebPage beN Choose FileQWebPagendgvd}"Clear recent searchesQWebPageY R6CopyQWebPageY R6VrG Copy ImageQWebPageY R6c Copy LinkQWebPageRjRCutQWebPage؋DefaultQWebPage R dR0SU\>Delete to the end of the wordQWebPage R dR0SU͙Delete to the start of the wordQWebPageeT DirectionQWebPage[WOSFontsQWebPageTGo BackQWebPageRM Go ForwardQWebPagebQTlHide Spelling and GrammarQWebPage_ueIgnoreQWebPage_ue Ignore Grammar context menu itemIgnoreQWebPagehgInspectQWebPageaY'R)OSItalicQWebPage"JavaScriptfTJ - %1JavaScript Alert - %1QWebPage"JavaScriptxn - %1JavaScript Confirm - %1QWebPage"JavaScriptcy: - %1JavaScript Prompt - %1QWebPageLTRLTRQWebPage]揹 Left edgeQWebPage W([WQxN-gb~Look Up In DictionaryQWebPageyRQIhR0WW\>'Move the cursor to the end of the blockQWebPageyRQIhR0eNg+\>*Move the cursor to the end of the documentQWebPageyRQIhR0L\>&Move the cursor to the end of the lineQWebPageyRQIhR0N NN*[W{&%Move the cursor to the next characterQWebPageyRQIhR0N NL Move the cursor to the next lineQWebPageyRQIhR0N NN*SU Move the cursor to the next wordQWebPageyRQIhR0N NN*[W{&)Move the cursor to the previous characterQWebPageyRQIhR0N NL$Move the cursor to the previous lineQWebPageyRQIhR0N NN*SU$Move the cursor to the previous wordQWebPageyRQIhR0WW)Move the cursor to the start of the blockQWebPageyRQIhR0eN_Y4,Move the cursor to the start of the documentQWebPageyRQIhR0L(Move the cursor to the start of the lineQWebPage lg b~R0smKNo Guesses FoundQWebPagelg eN bNo file selectedQWebPagelg gvd}"No recent searchesQWebPagebS_hFg Open FrameQWebPagebS_VrG Open ImageQWebPagebS_c Open LinkQWebPageW(ezSN-bS_Open in New WindowQWebPagen^OutlineQWebPageN Nu Page downQWebPage]Nu Page leftQWebPageSNu Page rightQWebPageN NuPage upQWebPage|4PasteQWebPageRTLRTLQWebPage gvd}"Recent searchesQWebPagee}QeReloadQWebPagenResetQWebPageS Right edgeQWebPageO[XVrG Save ImageQWebPageO[Xc... Save Link...QWebPageTN nR Scroll downQWebPage nRR0ّ Scroll hereQWebPageT]nR Scroll leftQWebPageTSnR Scroll rightQWebPageTN nR Scroll upQWebPaged}"QuSearch The WebQWebPage N-R0WW\>Select to the end of the blockQWebPage N-R0eN\>!Select to the end of the documentQWebPage N-R0L\>Select to the end of the lineQWebPage N-R0N NN*[W{&Select to the next characterQWebPage N-R0N NLSelect to the next lineQWebPage N-R0N NN*SUSelect to the next wordQWebPage N-R0N NN*[W{& Select to the previous characterQWebPage N-R0N NLSelect to the previous lineQWebPage N-R0N NN*SUSelect to the previous wordQWebPage N-R0WW Select to the start of the blockQWebPage N-R0eN#Select to the start of the documentQWebPage N-R0LSelect to the start of the lineQWebPagef>y:bQTlShow Spelling and GrammarQWebPagebQSpellingQWebPageP\kbStopQWebPagecNSubmitQWebPagecNQSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPageeg,eTText DirectionQWebPage.f/NN*SNd}"v}"_0Qed}"vQs.[W3This is a searchable index. Enter search keywords: QWebPagevTopQWebPageN R~ UnderlineQWebPageg*wvUnknownQWebPageQuhgTX - %2Web Inspector - %2QWebPage f/NNH What's This?QWhatsThisAction**QWidget [b(&F)&FinishQWizard ^.R(&H)&HelpQWizardN Nke(&N)&NextQWizardN Nke(&N) >&Next >QWizard< N Nke(&B)< &BackQWizardSmCancelQWizardcNCommitQWizard~~ContinueQWizard[bDoneQWizardVGo BackQWizard^.RHelpQWizard%1 - [%2] %1 - [%2] QWorkspace Qs(&C)&Close QWorkspace yR(&M)&Move QWorkspace `bY (&R)&Restore QWorkspace Y'\(&S)&Size QWorkspace \U_(&U)&Unshade QWorkspaceQsClose QWorkspacegY'S(&X) Ma&ximize QWorkspaceg\S(&N) Mi&nimize QWorkspaceg\SMinimize QWorkspace`bY  Restore Down QWorkspace Sww(&A)Sh&ade QWorkspace`;W(gRM(&T) Stay on &Top QWorkspace2W(SXMLXfveP xXfbrzXfg_Yencoding declaration or standalone declaration expected while reading the XML declarationQXml W(NN*Y[OSveg,Xfg 3error in the text declaration of an external entityQXmlW(glvePSu$error occurred while parsing commentQXmlW(gQ[vePSu$error occurred while parsing contentQXml W(gehc|{W[NIvePSu5error occurred while parsing document type definitionQXmlW(gQC} vePSu$error occurred while parsing elementQXmlW(gS€vePSu&error occurred while parsing referenceQXmlu1m9QSverror triggered by consumerQXml*W(DTDN-N QAOu(Ygvu([OSS€;external parsed general entity reference not allowed in DTDQXml*W(\^`'Pg YQ[0!Extra content at end of document. QXmlStream^lvT}T zzXf0Illegal namespace declaration. QXmlStreameeHvXML[W{&0Invalid XML character. QXmlStreameeHvXMLT y0Invalid XML name. QXmlStreameeHvXMLrHg,[W{&N20Invalid XML version string. QXmlStreamW(XMLXfN-eeHv\^`'0%Invalid attribute in XML declaration. QXmlStreameeHv[W{&_u(0Invalid character reference. QXmlStream eeHvehc0Invalid document. QXmlStreameeHv[OSP<0Invalid entity value. QXmlStreameeHvYtcNT y0$Invalid processing instruction name. QXmlStreamW(Sep[OSXfN-g NDATA0&NDATA in parameter entity declaration. QXmlStream T}T zzv %1 RMlg Xf"Namespace prefix '%1' not declared QXmlStream_YhT~g_hN S9M0 Opening and ending tag mismatch. QXmlStreamehcev~g_0Premature end of document. QXmlStreamhmKR0]LYW[OS0Recursive entity detected. QXmlStream$W(\^`'P ^R0&Sequence ']]>' not allowed in content. QXmlStreamrzˏЈLSQAf/bT&0"Standalone accepts only yes or no. QXmlStream_Yg_vh0Start tag expected. QXmlStream"rzˏЈLO*\^`'_Ř{QsW(xNKT0?The standalone pseudo attribute must appear after the encoding. QXmlStreamaYv  Unexpected ' QXmlStream&W(Qlg heg,N-g aYv[W{& %1 0/Unexpected character '%1' in public id literal. QXmlStreamN e/cvXMLrHg,0Unsupported XML version. QXmlStream XMLXflg W(ehcv_YOMn0)XML declaration not at start of document. QXmlStream$%1 T %2 S9MNNLvY4T\>0,%1 and %2 match the start and end of a line. QtXmlPatternselՃS %1%1 cannot be retrieved QtXmlPatterns,%1ST+NW(lBx%2N-N QAvQkOMP<0E%1 contains octets which are disallowed in the requested encoding %2. QtXmlPatternsZ%1 f/NN*Y gB|{W0elbQR0Y gB|{W0Vkd bQR0OY %2 h7vS[P|{Wf/SNv0s%1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works. QtXmlPatterns%1 f/NN*eeHv %20%1 is an invalid %2 QtXmlPatterns0%1 f/kcRh_N-vNN*eeHh0g eHhN:?%1 is an invalid flag for regular expressions. Valid flags are: QtXmlPatterns$%1 f/NN*eeHvT}T zz URI0%1 is an invalid namespace URI. QtXmlPatterns(%1 f/kcRh_N-vNN*eeHj!_%2/%1 is an invalid regular expression pattern: %2 QtXmlPatterns %1N f/NN*Tlvj!gj!_T y0$%1 is an invalid template mode name. QtXmlPatterns%1 f/NN*g*wvehH|{W0%1 is an unknown schema type. QtXmlPatterns %1 f/N e/cvx0%1 is an unsupported encoding. QtXmlPatterns,%1 N f/NN*g eHv XML 1.0 [W{&0$%1 is not a valid XML 1.0 character. QtXmlPatterns %1N f/NN*YtcNvTlT y04%1 is not a valid name for a processing-instruction. QtXmlPatterns%1 N f/NN*g eHvep[WNI0"%1 is not a valid numeric literal. QtXmlPatterns@%1 N f/YtcNvg eHvhT y0[_Ř{f/P< %2 OY %30Z%1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3. QtXmlPatterns"%1 N f/|{WN: %2 vg eHP<0#%1 is not a valid value of type %2. QtXmlPatterns%1 N f/Rvetep0$%1 is not a whole number of minutes. QtXmlPatterns(%1 N f/S[P|{W0SbQR0S[P|{W0C%1 is not an atomic type. Casting is only possible to atomic types. QtXmlPatterns8%1 N f/VQ\^`'Xf0laehH[Qery`'f/N e/cv0g%1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported. QtXmlPatterns"%1 N f/|{WN: %2 vg eHP<0&%1 is not valid as a value of type %2. QtXmlPatterns%1 S9MNcbL{&%1 matches newline characters QtXmlPatterns>%1 _Ř{ %2 b %3 ߖ N W(fcb[W{&N2vg+\>0J%1 must be followed by %2 or %3, not at the end of the replacement string. QtXmlPatterns4%1 \ %n N*Sep0Vkd %2 f/eeHv0=%1 requires at least %n argument(s). %2 is therefore invalid. QtXmlPatterns6%1 gYSNg %n N*Sep0Vkd %2 f/eeHv09%1 takes at most %n argument(s). %2 is therefore invalid. QtXmlPatterns%1 u(N0%1 was called. QtXmlPatternslN ST+ %1A comment cannot contain %1 QtXmlPatternslN N %1 ~\>0A comment cannot end with a %1. QtXmlPatterns,GR0NNN*SQAW(XQueryN-Qsvg 0An %1-attribute must have a valid %2 as value, which %3 isn't. QtXmlPatterns*^&g P< %2 v %1 \^`']~XfN08An %1-attribute with value %2 has already been declared. QtXmlPatterns8T yN: %1 vSep]~ψXfN0kN*SepT y_Ř{U/N0UAn argument by name %1 has already been declared. Every argument name must be unique. QtXmlPatterns0NN*T yN: %1 v\^`']~QsW(N*QC} N-N0=An attribute by name %1 has already appeared on this element. QtXmlPatterns$NN*T yN: %1 v\^`']~ψR^01An attribute by name %1 has already been created. QtXmlPatternsRNN*\^`'pN f/NN*ehcpv[Pp0Vkd N*\^`' %1 b@W(OMnf/N Tv0dAn attribute node cannot be a child of a document node. Therefore, the attribute %1 is out of place. QtXmlPatterns%2_Ř{\SNN*[PQC} %103At least one %1 element must appear as child of %2. QtXmlPatterns"\NN*QC} %1QsW(%2NKRM0-At least one %1-element must occur before %2. QtXmlPatterns"\NN*QC} %1QsW(%2NKQ0-At least one %1-element must occur inside %2. QtXmlPatterns\g NN*~NTHs0'At least one component must be present. QtXmlPatterns*W(QC} %2v%1\^`'N-\c[NN*j!_0FAt least one mode must be specified in the %1-attribute on element %2. QtXmlPatterns0\NN*e~N_Ř{QsW(N* %1 uLPNKT0?At least one time component must appear after the %1-delimiter. QtXmlPatterns\^`'%1T%2_|kdNe0+Attribute %1 and %2 are mutually exclusive. QtXmlPatterns.\^`' %1 N N2LS VN:[QsW(gv\B0EAttribute %1 can't be serialized because it appears at the top level. QtXmlPatterns@\^`'%1N QsW(QC} %2N 0Sg %30%4ThQ\^`'f/QAv0]Attribute %1 cannot appear on the element %2. Allowed is %3, %4, and the standard attributes. QtXmlPatterns:\^`'%1N QsW(QC} %2N 0Sg %3ThQ\^`'f/QAv0YAttribute %1 cannot appear on the element %2. Allowed is %3, and the standard attributes. QtXmlPatterns:\^`'%1N QsW(QC} %2N 0Sg %3ThQ\^`'f/QAv0^Attribute %1 cannot appear on the element %2. Only %3 is allowed, and the standard attributes. QtXmlPatterns4\^`'%1N QsW(QC} %2N 0Sg hQ\^`'SNQs0VAttribute %1 cannot appear on the element %2. Only the standard attributes can appear. QtXmlPatterns\^`'%1vPelbQR0 %1 VN:[f/NN*ba|{W ^vNVkdelՈ[OS0fCasting to %1 is not possible because it is an abstract type, and can therefore never be instantiated. QtXmlPatternshmKR0sCircularity detected QtXmlPatterns %1 e[N %2 gf/eeHv0Day %1 is invalid for month %2. QtXmlPatterns*%1 ef/W( %2...%3 VNKYv0#Day %1 is outside the range %2..%3. QtXmlPatternsW(XSL-TNN- N Ou(%1t SOu(%2tb%3t0DIn an XSL-T pattern, axis %1 cannot be used, only axis %2 or %3 can. QtXmlPatterns.W(XSL-Th7_N- Qep%1N g {,N N*Sep0>In an XSL-T pattern, function %1 cannot have a third argument. QtXmlPatterns@W(XSL-Th7_N- Su(Qep%1T%2SNu(NS9M %3N SN0OIn an XSL-T pattern, only function %1 and %2, not %3, can be used for matching. QtXmlPatternsNW(XSL-Th7_N- Qep%1v{,NN*Sep_Ř{f/e[WbSؑS€ NOu(NS9M0yIn an XSL-T pattern, the first argument to function %1 must be a literal or a variable reference, when used for matching. QtXmlPatternsDW(XSL-Th7_N- Qep%1v{,NN*Sep_Ř{f/[W{&N2 NOu(NS9M0hIn an XSL-T pattern, the first argument to function %1 must be a string literal, when used for matching. QtXmlPatternsFW(N*fcb[W{&N2N- %1 Su(NlNI[g,b %2 N f/ %3MIn the replacement string, %1 can only be used to escape itself or %2, not %3 QtXmlPatternsDW(N*fcb[W{&N2N- %1 W(lg lNIveP_Ř{\NN*ep[Wߖ0VIn the replacement string, %1 must be followed by at least one digit when not escaped. QtXmlPatterns(etepdl(%1)d(%2)f/g*[NIv00Integer division (%1) by zero (%2) is undefined. QtXmlPatternsel~[R0N*RM %10+It is not possible to bind to the prefix %1 QtXmlPatternselN %1 bQR0 %20)It is not possible to cast from %1 to %2. QtXmlPatternsN Y XfRM %10*It is not possible to redeclare prefix %1. QtXmlPatterns\N S %10'It will not be possible to retrieve %1. QtXmlPatterns"N W(NOUQv[|{WpTmR\^`'0AIt's not possible to add attributes after any other kind of node. QtXmlPatterns,elN|{WN: %2 vP< %1 bQR0 %37It's not possible to cast the value %1 of type %2 to %3 QtXmlPatternsS9Mf/Y'\QN eOavMatches are case insensitive QtXmlPatterns,j!WW[QeN QsW(Qep0SؑT yXfNKRM0MModule imports must occur before function, variable, and option declarations. QtXmlPatterns(lBj!dl(%1)d(%2)f/g*[NIv00Modulus division (%1) by zero (%2) is undefined. QtXmlPatterns*%1 gf/W( %2...%3 VNKYv0%Month %1 is outside the range %2..%3. QtXmlPatternsDNN*|{WN: %1 vPOperator %1 cannot be used on atomic values of type %2 and %3. QtXmlPatterns$dO\{& %1 N u(N|{W %20&Operator %1 cannot be used on type %2. QtXmlPatterns@W(|{W %2 T %3 vS[PPu|{e n|{W_Ř{f/T N|{W b[_Ř{f/NN*[W{&N2|{W0|{W %2 f/N QAv0When casting to %1 or types derived from it, the source value must be of the same type, or it must be a string literal. Type %2 is not allowed. QtXmlPatterns:_SQep%1u(Nh7_S9Me Sep_Ř{f/SؑS€b[W{&N20vWhen function %1 is used for matching inside a pattern, the argument must be a variable reference or a string literal. QtXmlPatterns*zzv}[W{&ydN d^_S[NQsW([W{&|{N-OWhitespace characters are removed, except when they appear in character classes QtXmlPatternsrXSL-TQC} N-vXSL-T\^`'_Ř{e>W(zz(null)T}T zzN- N f/W(XSL-TT}T zzN- %1Stf/N*h7[P0iXSL-T attributes on XSL-T elements must be in the null namespace, not in the XSL-T namespace which %1 is. QtXmlPatterns*%1 ^tf/eeHv VN:^N %2 _Y0-Year %1 is invalid because it begins with %2. QtXmlPatternszzv}empty QtXmlPatternsxnRW0N exactly one QtXmlPatterns NbfY one or more QtXmlPatterns bfY zero or more QtXmlPatternsbN zero or one QtXmlPatterns]YMuted VolumeSlider %1% Volume: %1% VolumeSliderqupzilla-1.6.0/bin/locale/qt_zh_TW.qm000066400000000000000000003450051226107126500174750ustar00rootroot00000000000000,(4G(4H (5HA(5Hu*y|*yr*ye*TR*0'*0+F}i+F+L/+f+fA7+z.++s++z/ ++6+A+S-+}+s+į +įsB+į+/V7s:9;*}@ƼC:F0iFn4Fn4FG7`Hw9Hw97H 0I'L$I-uIqJ+=J6J60pJ67J6;J6~9J6J6J6Jcb!KQ _KDhLZL L0LbM5<MbIMeBMgNMtO|0PFE!PFEZPFEnQNROJR|cROuS8^TTʴTZU?^,U|5*U}PYV1V1¶VlVV VUVPW-WT5WTWTX~X9X X˙:'XYPYYlYG?ZgZkmZQ[;^d\ņ\]4 \]4\\at%gclG|^;c?v5vy$fXi4L5.96CLyIA[9@Ikyɵn1ɵneɵnirɵnxɵnɵnɵnmɵnr(ZY Bq* 'C QMHEnaǽ\,q >^3H,<!p 5+#QB%UT{(ŎH*4@-ct25vEјEn{=8AAW[yL^no31z=m~M|MEUE[LwwWt^[ I GisD !eW%C&()D*/eu5"W;ByEc0GF5SO/ZfV\c``|ubFcփ5f(g&4jCHmnlqTqaLtuu(ܨ{>}ka`PD~${P eVy @Gt:$e$Lq+76(ʁVr^K K֊0; nz:,f ];yO-SHAĴnKk7^k=W&Hf."/fM?=IxS-MR>+YMUPYM[^R9h^#8i&psscs-wUxK/^rq2>7+ۊ/at.8N,Z]Ϙ]VIIII7II+IINYހi޲y݆ݸ"TIHz߬uDXuD^@Do, ,s,ڒ,,]`=rhɘe[5$ZfRfRFG>7d4_~CN0FyNc%SOPqYV8VfR@ .  NA  yq jd$%C#g&~N&3)2nD)8*4M+,?"y?>u JA,KN MtR%V|O]e(]hdI)gBky^! {yf5t ZFFd:ΞVP*G%Sn<ص+ǥ+D69tH{y/;QxARr+9\QIsQu#ϾK%-{IZC-'5mC^^ƨ ~ƨ˾i,eҝz=iէ?Z>*z>ߺbi>fsq.m}^9! "${~bE~bJoMm!h)ўR+u\+3O,8//114~6 ? 2:ASD#XGTGbILAUdOr!Pѧ8Q]SneTyUkU:UTdZّZٽZZ[]k*E]8-^n_peiX>i^{kQ+oN'6y;y{}u(}w}w|}w }* lOr"B>}vtt5. .3>PțiUaDDDYuIt(@t[tO2$-n+_ +2F{C]ʢ3ʢBƴd4Dd{Vddd0 59g~эŲ+b#NSLUd5B hwhp 2Y }?  g'V|v+_,D /42=42c"6Y7D:sd?;2CU]&D fIN;}J0KK U|4V7O\ar̕twL|(^| |}wZ}$Э}$N}$ }ϗ,ZXVN_ Da^L>YiNqjK<9!f+·҅·ý3m׳7 /]H/UESHhxvu:%5J?Tm e~QDi~i9%kwb/#)%''p-.z.) 5kEɮ=N=?t?x CtIMPP?V%rXU DZiX`Ӡ`NvbDAbGo>fDLfdgAhINmi$x1 cz*2A|QRQdJx6lU(.G5z=c.`"1 rX~mT^en$M9;b_†5iKC:ʴ5}ʴ5@ʶ,^ cԄ۔#SD>'Nmd*F5!ZF5~Ypb+>?IIE*As 3 }$|2 qeZ ڤ$ ڥh d Ey E  Ac AcGj R 35 u bØ bbx b`/ b` gUvZ i3% la lfo uui xq$ |oT |j JĄ t$ tG .&  a )N F>.~ ? (~   B ҉A >΂  [ j z nw Ns p Y+W K % 팤^ l~? %' B /3/ =# qQ v }% o>J 9U )_ */ .>w_ 5`@ 7u ;p =T$ BR BnFw J" J"b K2J Rۮ", Ty t T^آ Uj4tw ] `ep ` bu b c( cEs d e eE e{֨ f1VZ f* g5UQ gn* k, rD"- t>n :. f 5 f BO 4g2 .Rb X ss sD AAYe 9 8^ 9|  m, #-t 0N+ 5 A, CUR E9T I] L L' L^ Mc\: R_ ShO Vk W ]$2 f)s f)B f= io>!r m`" w xR17 yr5 >S  tu H HAh *D nF $CP .@ 7 i `  s % J JD8 %@ t. k Ӈ MP  N>o ̺S &k -DTW .r2 ۷i c>J rO k k U)^  <! ԡ B 0?  {  z+  W  ^ IM %R Nq   xHa w :=  ..= 7F >Y >Z$ >Z >a- >l >r >M > ?t| DT Q I- P@  RVG RV RVB S.N SGD Sw Y YV [ c`g% hۮMD j7o@+ p.{ vu 5 .˸ Bi  T2' Tx T, T  j 3w M S )d Tv  ;>z .2_ .f .yg . . .ͼ  ! s a y! p e.BB hNq >ZV ҂&6  %  u : |c m_  Xt n 9 t a_ @ :b_8 Uqw p O.> ʜ-'  ^ #$ #= %nr (I$ (N2g +>/ +k 0E 64* ;ɾ. Fg K9? Pt! Pt8 T>T W I dBh\ fe fe gN iFC۲ iE` i jӮ kGn m9 n)w u u v o v& v{E wM w w ! w}} w}! w} O |[-\  U [ %o Jc ^K }q| R PR  xN Uu ɰe F}Y ) XH &- D F + t5~ t5 E< b >   ) "Rwy @agT)hZoC'gT)6*(*/E(/E\=BnI__KfOOvXRu0X6[ [ a.8a.1gcnyG,fvɅy$ʞ~`>HboZ4u&n_'A44Sk^XǗ 2:B&rsݖ[y5^{r | CG5(lD'"#:$Ua%4:%4J-vF0i)01c2wT<U<(_D#HJd`kK`K#j5L$.Wcc57c5 g3iCmhDp|yC$+{~aw6$Y5 O&&{kB`nTa[#>V(\C>b=N? E"~LfDr)=rky Ln~BPUt2,xT#)dUi;l<html>eHde>n <b>%1</b> ]SOu( Vpg Q*QHk Vkd\RcR0rn0</html>xSwitching to the audio playback device %1
which just became available and has higher preference. AudioOutputr<html>eHde>n <b>%1</b> g*KO\0<br/>e9u(-n <b>%2</b>0</html>^The audio playback device %1 does not work.
Falling back to %2. AudioOutputV_R0n %1Revert back to device '%1' AudioOutputܕR Close Tab CloseButton e %1About %1MAC_APPLICATION_MENU%1Hide %1MAC_APPLICATION_MENUQvN Hide OthersMAC_APPLICATION_MENU POY}-["Preferences...MAC_APPLICATION_MENU }Pg_ %1Quit %1MAC_APPLICATION_MENUg RServicesMAC_APPLICATION_MENUoy:QhShow AllMAC_APPLICATION_MENURn AccessibilityPhonon::  CommunicationPhonon::Jb2GamesPhonon::jMusicPhonon::w NotificationsPhonon::_qPVideoPhonon::dfTJ`Slg [ GStreamer Ycz _0 b@g eH_qPe/c\ܕ0~Warning: You do not seem to have the base GStreamer plugins installed. All audio and video support has been disabledPhonon::Gstreamer::BackendzfTJ`Slg [ gstreamer0.10-plugins-good0 g N_qPvR\ܕ0Warning: You do not seem to have the package gstreamer0.10-plugins-good installed. Some video features have been disabled.Phonon::Gstreamer::BackendkdQg[%0`A required codec is missing. You need to install the following codec(s) to play this content: %0Phonon::Gstreamer::MediaObjectq!lՕYde>0 jg`v Gstreamer [ N&x[`g [ libgstreamer-plugins-base YWN0wCannot start playback. Check your Gstreamer installation and make sure you have libgstreamer-plugins-base installed.Phonon::Gstreamer::MediaObjectq!lՉxZOn0Could not decode media source.Phonon::Gstreamer::MediaObjectq!l[OMZOn0Could not locate media source.Phonon::Gstreamer::MediaObject"q!lՕU_eHn0n]W(Ou(N-0:Could not open audio device. The device is already in use.Phonon::Gstreamer::MediaObjectq!lՕU_ZOn0Could not open media source.Phonon::Gstreamer::MediaObjectN TlvOnWaK0Invalid source type.Phonon::Gstreamer::MediaObjectBOu(kdnRVhOet0g]搊vOMnp 0% gSvp %1%0WUse this slider to adjust the volume. The leftmost position is 0%, the rightmost is %1%Phonon::VolumeSlider %1% Volume: %1%Phonon::VolumeSlider%1 %2 g*[%1, %2 not definedQ3AccelN fxv %1 \g*UtAmbiguous %1 not handledQ3AccelR*dDelete Q3DataTablePGFalse Q3DataTablecQeInsert Q3DataTablewTrue Q3DataTablefeUpdate Q3DataTable&%1 b~N R0jhH0 jg_jT 0+%1 File not found. Check path and filename. Q3FileDialog R*d(&D)&Delete Q3FileDialog T&(&N)&No Q3FileDialog x[(&O)&OK Q3FileDialog U_(&O)&Open Q3FileDialogeT}T (&R)&Rename Q3FileDialog Q2[X(&S)&Save Q3FileDialogg*c^(&U) &Unsorted Q3FileDialog f/(&Y)&Yes Q3FileDialog4<qt>`x[R*d %1 "%2" U</qt>1Are you sure you wish to delete %1 "%2"? Q3FileDialogb@g jhH (*) All Files (*) Q3FileDialogb@g jhH (*.*)All Files (*.*) Q3FileDialog\l`' Attributes Q3FileDialogVBack Q3FileDialogSmCancel Q3FileDialogbyRjhHCopy or Move a File Q3FileDialog ^zeeY>Create New Folder Q3FileDialogegDate Q3FileDialog R*d %1 Delete %1 Q3FileDialogs}0j Detail View Q3FileDialogvDir Q3FileDialogv Directories Q3FileDialogv Directory: Q3FileDialog/Error Q3FileDialogjhHFile Q3FileDialogjT (&N) File &name: Q3FileDialogjhHWaK(&T) File &type: Q3FileDialog\ b~vFind Directory Q3FileDialogq!l[XS Inaccessible Q3FileDialogRhj List View Q3FileDialog\ b~e(&I) Look &in: Q3FileDialogT z1Name Q3FileDialogeeY> New Folder Q3FileDialogeeY> %1 New Folder %1 Q3FileDialog eeY> 1 New Folder 1 Q3FileDialog _N N\dvOne directory up Q3FileDialogU_Open Q3FileDialogU_ Open  Q3FileDialog jhHQg[Preview File Contents Q3FileDialog jhHNJ Preview File Info Q3FileDialoge Qe(&E)R&eload Q3FileDialogU/ Read-only Q3FileDialogS[ Read-write Q3FileDialog S%1Read: %1 Q3FileDialogS[XejSave As Q3FileDialogːxdNP vSelect a Directory Q3FileDialogoy:j(&H)Show &hidden files Q3FileDialogY'\Size Q3FileDialogc^Sort Q3FileDialogOegc^(&D) Sort by &Date Q3FileDialogOT z1c^(&N) Sort by &Name Q3FileDialogOY'\c^(&S) Sort by &Size Q3FileDialogryk{Special Q3FileDialogR0vv{&_#}PSymlink to Directory Q3FileDialogR0jhHv{&_#}PSymlink to File Q3FileDialogR0ryk{v{&_#}PSymlink to Special Q3FileDialogWaKType Q3FileDialogU/[ Write-only Q3FileDialog [Qe%1 Write: %1 Q3FileDialogkdv the directory Q3FileDialogkdjhHthe file Q3FileDialog kd{&_#}P the symlink Q3FileDialogq!l^zv %1Could not create directory %1 Q3LocalFsq!lՕU_ %1Could not open %1 Q3LocalFsq!lՋSv %1Could not read directory %1 Q3LocalFsq!lydv %1%Could not remove file or directory %1 Q3LocalFsq!l\ %1 eT}T p %2Could not rename %1 to %2 Q3LocalFsq!l[Qe %1Could not write %1 Q3LocalFs ... Customize... Q3MainWindowcRLine up Q3MainWindowOu(]N-kbdO\Operation stopped by the userQ3NetworkProtocolSmCancelQ3ProgressDialogYWu(Apply Q3TabDialogSmCancel Q3TabDialog-Defaults Q3TabDialogfHelp Q3TabDialogx[OK Q3TabDialog (&C)&Copy Q3TextEdit N (&P)&Paste Q3TextEdit PZ(&R)&Redo Q3TextEdit _S(&U)&Undo Q3TextEditndClear Q3TextEdit RjN (&T)Cu&t Q3TextEditQhxd Select All Q3TextEditܕClose Q3TitleBarܕzCloses the window Q3TitleBarST+dO\kdzvcN*Contains commands to manipulate the window Q3TitleBar$oy:zT z1 N&ST+dO\[vcR6QCNFDisplays the name of the window and contains controls to manipulate it Q3TitleBar\ze>Y'R0QhukbMakes the window full screen Q3TitleBargY'SMaximize Q3TitleBarg\SMinimize Q3TitleBar bzyMoves the window out of the way Q3TitleBar\gY'Sze>VSY'\&Puts a maximized window back to normal Q3TitleBar\g\Sze>VSY'\Puts a minimized back to normal Q3TitleBarTN `b_ Restore down Q3TitleBarTN `b_ Restore up Q3TitleBar|}qSystem Q3TitleBar fY...More... Q3ToolBarg*w  (unknown) Q3UrlOperator&ST[ %1 g*e/cbyRjhHbvIThe protocol `%1' does not support copying or moving files or directories Q3UrlOperatorST[ %1 g*e/c^zev;The protocol `%1' does not support creating new directories Q3UrlOperatorST[ %1 g*e/cS_jhH0The protocol `%1' does not support getting files Q3UrlOperatorST[ %1 g*e/cRQv6The protocol `%1' does not support listing directories Q3UrlOperatorST[ %1 g*e/c[QejhH0The protocol `%1' does not support putting files Q3UrlOperator ST[ %1 g*e/cydjhHbv@The protocol `%1' does not support removing files or directories Q3UrlOperator$ST[ %1 g*e/ceT}T jhHbv@The protocol `%1' does not support renaming files or directories Q3UrlOperatorST[ %1 g*e/c"The protocol `%1' is not supported Q3UrlOperator Sm(&C)&CancelQ3Wizard [b(&F)&FinishQ3Wizard f(&H)&HelpQ3WizardN NP (&N)&Next >Q3WizardV(&B)< &BackQ3Wizard#}ڈbConnection refusedQAbstractSocket#}ڐ>fBConnection timed outQAbstractSocket b~N R0N;j_Host not foundQAbstractSocket q!lOu(}Network unreachableQAbstractSocketSocket vdO\g*e/c$Operation on socket is not supportedQAbstractSocketSocket g*#}Socket is not connectedQAbstractSocketSocket dO\>fBSocket operation timed outQAbstractSocketQhxd(&S) &Select AllQAbstractSpinBoxUkeTN (&S)&Step upQAbstractSpinBoxUkeTN (&D) Step &downQAbstractSpinBoxU_RActivate QApplicationU_Rz _vN;z#Activates the program's main window QApplication6WLj %1 Qt %2 OFSb~R0 Qt %30,Executable '%1' requires Qt %2, found Qt %3. QApplicationQt Q_^N v[v/Incompatible Qt Library Error QApplicationLTRQT_LAYOUT_DIRECTION QApplication Sm(&C)&Cancel QAxSelectCOM riN(&O) COM &Object: QAxSelectx[OK QAxSelectxd ActiveX cR6Select ActiveX Control QAxSelectRxCheck QCheckBoxRcToggle QCheckBoxSmRxUncheck QCheckBoxeXR0Or(&A)&Add to Custom Colors QColorDialogWg,Or(&B) &Basic colors QColorDialogOr(&C)&Custom colors QColorDialog }(&G)&Green: QColorDialog }(&R)&Red: QColorDialogT^(&S)&Sat: QColorDialogN^(&V)&Val: QColorDialogAlpha r;(&L)A&lpha channel: QColorDialog (&U)Bl&ue: QColorDialogr(&E)Hu&e: QColorDialogxdǘOr Select Color QColorDialogܕClose QComboBoxPGFalse QComboBoxU_Open QComboBoxwTrue QComboBox%1ftok Y1eW%1: ftok failedQCoreApplication%1uP(&N) &New Folder QFileDialog U_(&O)&Open QFileDialogeT}T (&R)&Rename QFileDialog Q2[X(&S)&Save QFileDialog&%1 g [QeO݋w0 `x[R*d[U9'%1' is write protected. Do you want to delete it anyway? QFileDialogb@g jhH (*) All Files (*) QFileDialogb@g jhH (*.*)All Files (*.*) QFileDialog`x[R*d %1 U!Are sure you want to delete '%1'? QFileDialogVBack QFileDialogq!lR*dv0Could not delete directory. QFileDialog ^zeeY>Create New Folder QFileDialogs}0j Detail View QFileDialogv Directories QFileDialogv Directory: QFileDialogxxDrive QFileDialogjhHFile QFileDialogjT (&N) File &name: QFileDialog jhHWaKFiles of type: QFileDialog\ b~vFind Directory QFileDialog_RMForward QFileDialogRhj List View QFileDialog\ b~eLook in: QFileDialogbvf My Computer QFileDialogeeY> New Folder QFileDialogU_Open QFileDialogr6vParent Directory QFileDialog gvW0e Recent Places QFileDialogydRemove QFileDialogS[XejSave As QFileDialogoy: Show  QFileDialogoy:j(&H)Show &hidden files QFileDialogg*wUnknown QFileDialog %1 GB%1 GBQFileSystemModel %1 KB%1 KBQFileSystemModel %1 MB%1 MBQFileSystemModel %1 TB%1 TBQFileSystemModel %1 OMQC}D%1 bytesQFileSystemModel^<b>q!lOu(T z1 "%1"0</b><p>Ou(Qv[T z1 [WQCex\N bf/N g j{&_0oThe name "%1" can not be used.

Try using another name, with fewer characters or no punctuations marks.QFileSystemModelfComputerQFileSystemModelfeg Date ModifiedQFileSystemModel N TlvjT Invalid filenameQFileSystemModelz.^KindQFileSystemModelbvf My ComputerQFileSystemModelT z1NameQFileSystemModelY'\SizeQFileSystemModelWaKTypeQFileSystemModelNOUAny QFontDatabase?bO/Arabic QFontDatabaseN\Tamil QFontDatabase TeluguTelugu QFontDatabase ThaanaThaana QFontDatabaselThai QFontDatabaseTibetan QFontDatabase~AN-eTraditional Chinese QFontDatabaseSW Vietnamese QFontDatabase [WW(&F)&Font QFontDialog Y'\(&S)&Size QFontDialog ^}(&U) &Underline QFontDialogeHgEffects QFontDialog[WWj#_(&Y) Font st&yle QFontDialog{OSample QFontDialogxd[WW Select Font QFontDialogR*d}(&K) Stri&keout QFontDialog[Qe|}q(&I)Wr&iting System QFontDialogfvfBY1eW %1Changing directory failed: %1QFtp ]#}R0N;j_Connected to hostQFtp]#cR0N;j_ %1Connected to host %1QFtp#}R0N;j_Y1eW %1Connecting to host failed: %1QFtp #}]ܕConnection closedQFtp e#}ڈb&Connection refused for data connectionQFtp#}R0N;j_ %1 bConnection refused to host %1QFtp#}R0N;j_ %1 >fBConnection timed out to host %1QFtpR0 %1 v#}]ܕConnection to %1 closedQFtp^zvfBY1eW %1Creating directory failed: %1QFtpN jhHfBY1eW %1Downloading file failed: %1QFtpb~R0N;j_ %1 Host %1 foundQFtpb~N R0N;j_ %1Host %1 not foundQFtpb~R0N;j_ Host foundQFtpRQvfBY1eW %1Listing directory failed: %1QFtpv{QeY1eW %1Login failed: %1QFtpg*#} Not connectedQFtpydvfBY1eW %1Removing directory failed: %1QFtpydjhHfBY1eW %1Removing file failed: %1QFtp g*wv/ Unknown errorQFtpN PjhHfBY1eW %1Uploading file failed: %1QFtp g*wv/ Unknown error QHostInfo b~N R0N;j_Host not foundQHostInfoAgentg*wvOMW@WaKUnknown address typeQHostInfoAgent g*wv/ Unknown errorQHostInfoAgentIAuthentication requiredQHttp ]#}R0N;j_Connected to hostQHttp]#cR0N;j_ %1Connected to host %1QHttp #}]ܕConnection closedQHttp#}ڈbConnection refusedQHttp#}ڈbb#}ڐ>fB !Connection refused (or timed out)QHttpR0 %1 v#}]ܕConnection to %1 closedQHttp e]d kData corruptedQHttp[QeVaR0nfBv|u/ Error writing response to deviceQHttpHTTP lBY1eWHTTP request failedQHttp0HTTPS #}ڗv SSL e/cN&g*}o2O:HTTPS connection requested but SSL support not compiled inQHttpb~R0N;j_ %1 Host %1 foundQHttpb~N R0N;j_ %1Host %1 not foundQHttpb~R0N;j_ Host foundQHttp N;j_IHost requires authenticationQHttpN Tlv HTTP S@XJN;Invalid HTTP chunked bodyQHttpN Tlv HTTP Vމj-Invalid HTTP response headerQHttplg -[#}R0TP O:g VhNo server set to connect toQHttpNtO:g VhIProxy authentication requiredQHttpNtO:g VhIProxy requires authenticationQHttplBN-kbRequest abortedQHttpSSL nY1eWSSL handshake failedQHttpO:g Vhq!fܕ#}%Server closed connection unexpectedlyQHttp g*wv/ Unknown errorQHttpc[Ng*wvST[Unknown protocol specifiedQHttp/vQg[w^Wrong content lengthQHttpIAuthentication requiredQHttpSocketEngine$g*_NtO:g Vhce6R0 HTTP Va(Did not receive HTTP response from proxyQHttpSocketEngine& HTTP NtO:g Vho~kfBv|u/#Error communicating with HTTP proxyQHttpSocketEngine(RVg_NtO:g VhPOvIlBfBv|u//Error parsing authentication request from proxyQHttpSocketEngineNtO:g Vh#}]N kc^8ܕ#Proxy connection closed prematurelyQHttpSocketEngineNtO:g Vh#}ڈbProxy connection refusedQHttpSocketEngineNtO:g Vhb}U#}Proxy denied connectionQHttpSocketEngineNtO:g Vh#}ڐ>fB!Proxy server connection timed outQHttpSocketEngineb~N R0NtO:g VhProxy server not foundQHttpSocketEngine q!lՕYNRCould not start transaction QIBaseDriverU_e^v|u/Error opening database QIBaseDriver q!lcNNRUnable to commit transaction QIBaseDriver q!lS͏INRUnable to rollback transaction QIBaseDriver q!lՑMneXCould not allocate statement QIBaseResultq!lcϏ8QeeX"Could not describe input statement QIBaseResult q!lcϏeXCould not describe statement QIBaseResultq!lbSN NP vCould not fetch next item QIBaseResult b~N R0cRCould not find array QIBaseResultq!lS_cReCould not get array data QIBaseResultq!lS_gbNJ Could not get query info QIBaseResultq!lS_eXNJ Could not get statement info QIBaseResult q!lnPeXCould not prepare statement QIBaseResult q!lՕYNRCould not start transaction QIBaseResult q!lՕܕeXUnable to close statement QIBaseResult q!lcNNRUnable to commit transaction QIBaseResultq!l^z BLOBUnable to create BLOB QIBaseResult q!lWLgbUnable to execute query QIBaseResultq!lՕU_ BLOBUnable to open BLOB QIBaseResultq!lՋS BLOBUnable to read BLOB QIBaseResultq!l[Qe BLOBUnable to write BLOB QIBaseResultnN ]q!zzNo space left on device QIODeviceb~N R0rjhHbvNo such file or directory QIODevicek PN Permission denied QIODevice U_NYjhHToo many open files QIODevice g*wv/ Unknown error QIODeviceMac OS X 8QelMac OS X input method QInputContextWindows 8QelWindows input method QInputContextXIMXIM QInputContextXIM 8QelXIM input method QInputContext ˏ8QeP<Enter a value: QInputDialogq!lՏ QeQ_^ %1%2Cannot load library %1: %2QLibrary$q!lS͉ %2 Qgv{&_ %1%3$Cannot resolve symbol "%1" in %2: %3QLibraryq!lSx Q_^ %1%2Cannot unload library %1: %2QLibraryq!l mmap '%1'%2Could not mmap '%1': %2QLibrary q!l unmap '%1'%2Could not unmap '%1': %2QLibrary$W( %1 N-vYcz _xeN {&T)Plugin verification data mismatch in '%1'QLibrary(jhH %1 N f/Tlv Qt Ycz _0'The file '%1' is not a valid Qt plugin.QLibraryFYcz _ %1 Ou(N v[v Qt Q_^%2.%3.%4 0%50=The plugin '%1' uses incompatible Qt library. (%2.%3.%4) [%5]QLibraryTYcz _ %1 Ou(N v[v Qt Q_^0N \d/QrHvQ_^mW(Nw0 WThe plugin '%1' uses incompatible Qt library. (Cannot mix debug and release libraries.)QLibraryJYcz _ %1 Ou(N v[v Qt Q_^0g^i˔p %2 S{_R0 %3OThe plugin '%1' uses incompatible Qt library. Expected build key "%2", got "%3"QLibraryb~N R0RNQ_^!The shared library was not found.QLibrary g*wv/ Unknown errorQLibrary (&C)&Copy QLineEdit N (&P)&Paste QLineEdit PZ(&R)&Redo QLineEdit _S(&U)&Undo QLineEdit RjN (&T)Cu&t QLineEditR*dDelete QLineEditQhxd Select All QLineEdit%1OMW@Ou(N-%1: Address in use QLocalServer%1T z1/%1: Name error QLocalServer%1[XSֈb%1: Permission denied QLocalServer%1g*wv/ %2%1: Unknown error %2 QLocalServer%1#}ړ/%1: Connection error QLocalSocket%1#}ڈb%1: Connection refused QLocalSocket%1eSNY'%1: Datagram too large QLocalSocket%1N TlvT z1%1: Invalid name QLocalSocket%1`z]ܕ%1: Remote closed QLocalSocket%1Socket OMW@/%1: Socket access error QLocalSocket%1Socket dO\>fB%1: Socket operation timed out QLocalSocket%1Socket n/%1: Socket resource error QLocalSocket%1socket dO\g*e/c)%1: The socket operation is not supported QLocalSocket%1g*wv/%1: Unknown error QLocalSocket%1g*wv/ %2%1: Unknown error %2 QLocalSocket q!lՕYNRUnable to begin transaction QMYSQLDriver q!lcNNRUnable to commit transaction QMYSQLDriverq!lՐ#}Unable to connect QMYSQLDriverq!lՕU_e^Unable to open database ' QMYSQLDriver q!lS͏INRUnable to rollback transaction QMYSQLDriverq!l}PT8QP<Unable to bind outvalues QMYSQLResult q!l}PTexP<Unable to bind value QMYSQLResultq!lWLN NP gbUnable to execute next query QMYSQLResult q!lWLgbUnable to execute query QMYSQLResult q!lWLeXUnable to execute statement QMYSQLResult q!lbS֌eUnable to fetch data QMYSQLResult q!lnPeXUnable to prepare statement QMYSQLResult q!lՑneXUnable to reset statement QMYSQLResultq!lQ2[XN NP }PgUnable to store next result QMYSQLResult q!lQ2[X}PgUnable to store result QMYSQLResultq!lQ2[XeX}Pg!Unable to store statement results QMYSQLResult g*T}T  (Untitled)QMdiArea%1 - [%2] %1 - [%2] QMdiSubWindow ܕ(&C)&Close QMdiSubWindow yR(&M)&Move QMdiSubWindow V_(&R)&Restore QMdiSubWindow Y'\(&S)&Size QMdiSubWindow - [%1]- [%1] QMdiSubWindowܕClose QMdiSubWindowfHelp QMdiSubWindowgY'S(&X) Ma&ximize QMdiSubWindowgY'SMaximize QMdiSubWindowxUMenu QMdiSubWindowg\S(&N) Mi&nimize QMdiSubWindowg\SMinimize QMdiSubWindowV_Restore QMdiSubWindowTN `b_ Restore Down QMdiSubWindown=Shade QMdiSubWindowuYW(z(&T) Stay on &Top QMdiSubWindowSmn=Unshade QMdiSubWindowܕCloseQMenuWLExecuteQMenuU_OpenQMenu e QtAbout Qt QMessageBoxfHelp QMessageBoxϊs`...Hide Details... QMessageBoxx[OK QMessageBoxoy:s`...Show Details... QMessageBox xdǏ8Qel Select IMQMultiInputContextY͏8QelRcVhMultiple input method switcherQMultiInputContextPlugin*Ou(e[WQCNN-vQgexUvY͏8QelRcVhMMultiple input method switcher that uses the context menu of the text widgetsQMultiInputContextPlugin,SNP socket ]}W(v}T NP #cW4Another socket is already listening on the same portQNativeSocketEngine>fWW(lg IPv6 e/cv^sSN Ou( IPv6 socket=Attempt to use IPv6 socket on a platform with no IPv6 supportQNativeSocketEngine#}ڈbConnection refusedQNativeSocketEngine#}ڐ>fBConnection timed outQNativeSocketEngineeNY'q!lՐQDatagram was too large to sendQNativeSocketEngineq!lՐ#}R0N;j_Host unreachableQNativeSocketEngineN Tlv socket cϏ[PInvalid socket descriptorQNativeSocketEngine}/ Network errorQNativeSocketEngine }dO\>fBNetwork operation timed outQNativeSocketEngine q!lOu(}Network unreachableQNativeSocketEngine\ ^ socket dO\Operation on non-socketQNativeSocketEnginenN Out of resourcesQNativeSocketEnginek PN Permission deniedQNativeSocketEngineST[WaKg*e/cProtocol type not supportedQNativeSocketEngine q!lS_OMW@The address is not availableQNativeSocketEnginekdOMW@]O݋wThe address is protectedQNativeSocketEngine}PTvOMW@]}W(Ou(N-#The bound address is already in useQNativeSocketEngineNtO:g VhWaKq!le/ckddO\,The proxy type is invalid for this operationQNativeSocketEngine`zN;j_ܕN#}%The remote host closed the connectionQNativeSocketEngineq!lRYS^d socket%Unable to initialize broadcast socketQNativeSocketEngine q!lRYS^;d`' socket(Unable to initialize non-blocking socketQNativeSocketEngine q!lce6 `oUnable to receive a messageQNativeSocketEngine q!lՐQ `oUnable to send a messageQNativeSocketEngineq!l[QeUnable to writeQNativeSocketEngine g*wv/ Unknown errorQNativeSocketEngineg*e/cv socket dO\Unsupported socket operationQNativeSocketEngineU_ %1 v|u/Error opening %1QNetworkAccessCacheBackend q!lՕU_ %1kd_f/NP v#Cannot open %1: Path is a directoryQNetworkAccessFileBackendU_ %1 v|u/%2Error opening %1: %2QNetworkAccessFileBackend_ %1 S֓/%2Read error reading from %1: %2QNetworkAccessFileBackendlBU_^g,W0zjhH %1%Request for opening non-local file %1QNetworkAccessFileBackend[Qe %1 fBv|u/%2Write error writing to %1: %2QNetworkAccessFileBackendq!lՕU_ %1f/NP vCannot open %1: is a directoryQNetworkAccessFtpBackendN %1 fBv|u/%2Error while downloading %1: %2QNetworkAccessFtpBackendN P %1 fBv|u/%2Error while uploading %1: %2QNetworkAccessFtpBackendv{Qe %1 Y1eWI0Logging in to %1 failed: authentication requiredQNetworkAccessFtpBackendb~N R0TivNtO:g VhNo suitable proxy foundQNetworkAccessFtpBackendb~N R0TivNtO:g VhNo suitable proxy foundQNetworkAccessHttpBackend(N %1 fBv|u/%O:g VhVa%2)Error downloading %1 - server replied: %2 QNetworkReplyg*wvST[ %1Protocol "%1" is unknown QNetworkReplySmdO\Operation canceledQNetworkReplyImpl q!lՕYNRUnable to begin transaction QOCIDriver q!lcNNRUnable to commit transaction QOCIDriver q!lRYSUnable to initialize QOCIDriverq!lv{QeUnable to logon QOCIDriver q!lS͏INRUnable to rollback transaction QOCIDriver q!lՑMneXUnable to alloc statement QOCIResultq!l}PTkOMNPZbyk!WL'Unable to bind column for batch execute QOCIResult q!l}PTexP<Unable to bind value QOCIResultq!lWLbyk!eX!Unable to execute batch statement QOCIResult q!lWLeXUnable to execute statement QOCIResultq!lՍR0N NP Unable to goto next QOCIResult q!lnPeXUnable to prepare statement QOCIResult q!lcNNRUnable to commit transaction QODBCDriverq!lՐ#cUnable to connect QODBCDriver(q!lՐ#c%ERz _q!le/cb@g vRCUnable to connect - Driver doesn't support all needed functionality QODBCDriverq!lՕܕRcNRUnable to disable autocommit QODBCDriverq!lՕU_RcNRUnable to enable autocommit QODBCDriver q!lS͏INRUnable to rollback transaction QODBCDriverQODBCResult::reset: q!lՊ-[ SQL_CURSOR_STATIC PZpeX\l`'0jg`v ODBC ERz _v-[yQODBCResult::reset: Unable to set 'SQL_CURSOR_STATIC' as statement attribute. Please check your ODBC driver configuration QODBCResult q!l}PTexUnable to bind variable QODBCResult q!lWLeXUnable to execute statement QODBCResultq!lbSUnable to fetch QODBCResultq!lbS{,N{FUnable to fetch first QODBCResultq!lbSg_N{FUnable to fetch last QODBCResultq!lbSN N{FUnable to fetch next QODBCResultq!lbSRMN{FUnable to fetch previous QODBCResult q!lnPeXUnable to prepare statement QODBCResultHomeQObjectN Tlv}W@%1Invalid URI: %1QObject g*c[N;j_No host name givenQObjectW( %1 N N e/ckddO\Operation not supported on %1QObject"ST[/ce6R0Y'\p 0 v\S)Protocol error: packet of size 0 receivedQObject_ %1 S֓/%2Read error reading from %1: %2QObject&e %1 N `zN;j_ܕNN kc^8v#}3Remote host closed the connection prematurely on %1QObject&%1 N v|u socket /%2Socket error on %1: %2QObject[Qe %1 fBv|u/%2Write error writing to %1: %2QObjectT z1NameQPPDOptionsModelP<ValueQPPDOptionsModel q!lՕYNRCould not begin transaction QPSQLDriver q!lcNNRCould not commit transaction QPSQLDriver q!lS͏INRCould not rollback transaction QPSQLDriverq!lՐ#}Unable to connect QPSQLDriverq!lՊUnable to subscribe QPSQLDriver q!lSmUnable to unsubscribe QPSQLDriver q!l^zgbUnable to create query QPSQLResult q!lnPeXUnable to prepare statement QPSQLResultQlRCentimeters (cm)QPageSetupWidgethUFormQPageSetupWidget^Height:QPageSetupWidgetT  Inches (in)QPageSetupWidgetjkT LandscapeQPageSetupWidget}MarginsQPageSetupWidgetQlSMillimeters (mm)QPageSetupWidgeteT OrientationQPageSetupWidget }_5Y'\ Page size:QPageSetupWidget}_5PaperQPageSetupWidget }_5On Paper source:QPageSetupWidget Points (pt)QPageSetupWidget~1TPortraitQPageSetupWidgetS^jkTReverse landscapeQPageSetupWidgetS^~1TReverse portraitQPageSetupWidget[^Width:QPageSetupWidgetN } bottom marginQPageSetupWidget]} left marginQPageSetupWidgetS} right marginQPageSetupWidgetN } top marginQPageSetupWidgetYcz _g* Qe0The plugin was not loaded. QPluginLoader g*wv/ Unknown error QPluginLoader%1 ][XW(0 `[[U/%1 already exists. Do you want to overwrite it? QPrintDialog$%1 f/NP v0 ːxdQvNjT 07%1 is a directory. Please choose a different file name. QPrintDialogdO\ (&O) << &Options << QPrintDialogdO\ (&O) >> &Options >> QPrintDialog RSp(&P)&Print QPrintDialog <qt>`[[U</qt>%Do you want to overwrite it? QPrintDialogA0A0 QPrintDialog$A0 (841 x 1189 mm)A0 (841 x 1189 mm) QPrintDialogA1A1 QPrintDialog"A1 (594 x 841 mm)A1 (594 x 841 mm) QPrintDialogA2A2 QPrintDialog"A2 (420 x 594 mm)A2 (420 x 594 mm) QPrintDialogA3A3 QPrintDialog"A3 (297 x 420 mm)A3 (297 x 420 mm) QPrintDialogA4A4 QPrintDialogBA4 (210 x 297 mm, 8.26 x 11.7 T )%A4 (210 x 297 mm, 8.26 x 11.7 inches) QPrintDialogA5A5 QPrintDialog"A5 (148 x 210 mm)A5 (148 x 210 mm) QPrintDialogA6A6 QPrintDialog"A6 (105 x 148 mm)A6 (105 x 148 mm) QPrintDialogA7A7 QPrintDialog A7 (74 x 105 mm)A7 (74 x 105 mm) QPrintDialogA8A8 QPrintDialogA8 (52 x 74 mm)A8 (52 x 74 mm) QPrintDialogA9A9 QPrintDialogA9 (37 x 52 mm)A9 (37 x 52 mm) QPrintDialog R%T %1 Aliases: %1 QPrintDialogB0B0 QPrintDialog&B0 (1000 x 1414 mm)B0 (1000 x 1414 mm) QPrintDialogB1B1 QPrintDialog$B1 (707 x 1000 mm)B1 (707 x 1000 mm) QPrintDialogB10B10 QPrintDialog B10 (31 x 44 mm)B10 (31 x 44 mm) QPrintDialogB2B2 QPrintDialog"B2 (500 x 707 mm)B2 (500 x 707 mm) QPrintDialogB3B3 QPrintDialog"B3 (353 x 500 mm)B3 (353 x 500 mm) QPrintDialogB4B4 QPrintDialog"B4 (250 x 353 mm)B4 (250 x 353 mm) QPrintDialogB5B5 QPrintDialogBB5 (176 x 250 mm, 6.93 x 9.84 T )%B5 (176 x 250 mm, 6.93 x 9.84 inches) QPrintDialogB6B6 QPrintDialog"B6 (125 x 176 mm)B6 (125 x 176 mm) QPrintDialogB7B7 QPrintDialog B7 (88 x 125 mm)B7 (88 x 125 mm) QPrintDialogB8B8 QPrintDialogB8 (62 x 88 mm)B8 (62 x 88 mm) QPrintDialogB9B9 QPrintDialogB9 (44 x 62 mm)B9 (44 x 62 mm) QPrintDialogC5EC5E QPrintDialog$C5E (163 x 229 mm)C5E (163 x 229 mm) QPrintDialogCustom QPrintDialogDLEDLE QPrintDialog$DLE (110 x 220 mm)DLE (110 x 220 mm) QPrintDialogExecutive Executive QPrintDialogJExecutive (7.5 x 10 T , 191 x 254 mm))Executive (7.5 x 10 inches, 191 x 254 mm) QPrintDialog(jhH %1 q!l[Qe0 ːxdQv[jT 0=File %1 is not writable. Please choose a different file name. QPrintDialog jhH][XW( File exists QPrintDialog FolioFolio QPrintDialog"\ (210 x 330 mm)Folio (210 x 330 mm) QPrintDialog LedgerLedger QPrintDialog*Ledger (432 x 279 mm)Ledger (432 x 279 mm) QPrintDialog LegalLegal QPrintDialogBLegal (8.5 x 14 T , 216 x 356 mm)%Legal (8.5 x 14 inches, 216 x 356 mm) QPrintDialog LetterLetter QPrintDialogDLetter (8.5 x 11 T , 216 x 279 mm)&Letter (8.5 x 11 inches, 216 x 279 mm) QPrintDialog g,W0zjhH Local file QPrintDialogx[OK QPrintDialogRSpPrint QPrintDialogRSpR0jhH...Print To File ... QPrintDialogQhRSp Print all QPrintDialogRSp{W  Print range QPrintDialog RSpxdS@Print selection QPrintDialogRSpR0jhHPDF Print to File (PDF) QPrintDialog"RSpR0jhHPostscript Print to File (Postscript) QPrintDialogTabloidTabloid QPrintDialog,Tabloid (279 x 432 mm)Tabloid (279 x 432 mm) QPrintDialogwYexPY'Zoom inQPrintPreviewDialog~.\Zoom outQPrintPreviewDialog2AdvancedQPrintPropertiesWidgethUFormQPrintPropertiesWidgetbPageQPrintPropertiesWidgeth!\ CollateQPrintSettingsOutputOrColorQPrintSettingsOutputOrj!_ Color ModeQPrintSettingsOutputNexCopiesQPrintSettingsOutputNexCopies:QPrintSettingsOutput]RSpDuplex PrintingQPrintSettingsOutputhUFormQPrintSettingsOutputpp GrayscaleQPrintSettingsOutputw Long sideQPrintSettingsOutputq!NoneQPrintSettingsOutputxOptionsQPrintSettingsOutput8Q-[Output SettingsQPrintSettingsOutput c[b_ Pages fromQPrintSettingsOutputQhRSp Print allQPrintSettingsOutputRSp{W  Print rangeQPrintSettingsOutputSTReverseQPrintSettingsOutputxdS@ SelectionQPrintSettingsOutputw퐊 Short sideQPrintSettingsOutputR0toQPrintSettingsOutputT z1(&N)&Name: QPrintWidget...... QPrintWidgethUForm QPrintWidgetOMn Location: QPrintWidget8QjhH(&F) Output &file: QPrintWidget \l`'(&R) P&roperties QPrintWidgetPreview QPrintWidgetSphj_Printer QPrintWidgetWaKType: QPrintWidgetq!lՕU_8Qe\TN勀S,Could not open input redirection for readingQProcessq!lՕU_8Q\TN[Qe-Could not open output redirection for writingQProcess_Lz SfBv|u/Error reading from processQProcess[QeLz fBv|u/Error writing to processQProcess Lz ]])opProcess crashedQProcess U_RՈLz Y1eWProcess failed to startQProcess Lz dO\>fBProcess operation timed outQProcess n/fork Y1eW %1!Resource error (fork failure): %1QProcessSmCancelQProgressDialogU_Open QPushButtonRxCheck QRadioButton/v[WQC^R%lbad char class syntaxQRegExp /v lookahead lbad lookahead syntaxQRegExp/v͉lbad repetition syntaxQRegExpOu(]ܕvRdisabled feature usedQRegExpN TlvQk2OMP<invalid octal valueQRegExp GR0QgPR6met internal limitQRegExp\N]evS@{&missing left delimQRegExp lg v|u/no error occurredQRegExpg*gGR0}P\>unexpected endQRegExpU_e^fBv|u/Error to open databaseQSQLite2Driver q!lՕYNRUnable to begin transactionQSQLite2Driver q!lcNNRUnable to commit transactionQSQLite2Driver q!lS͏INRUnable to rollback TransactionQSQLite2Driver q!lWLeXUnable to execute statementQSQLite2Result q!lbS}PgUnable to fetch resultsQSQLite2Resultܕe^v|u/Error closing database QSQLiteDriverU_e^v|u/Error opening database QSQLiteDriver q!lՕYNRUnable to begin transaction QSQLiteDriver q!lcNNRUnable to commit transaction QSQLiteDriver q!lS͏INRUnable to rollback transaction QSQLiteDriverlg gbNo query QSQLiteResultSexexN {&TParameter count mismatch QSQLiteResult q!l}PTSexUnable to bind parameters QSQLiteResult q!lWLeXUnable to execute statement QSQLiteResult q!lbSRUnable to fetch row QSQLiteResult q!lՑneXUnable to reset statement QSQLiteResult^zBottom QScrollBar]搊} Left edge QScrollBar\ N cR Line down QScrollBar\ N cRLine up QScrollBarbN e Page down QScrollBarb]e Page left QScrollBarbSe Page right QScrollBarbN ePage up QScrollBarOMnPosition QScrollBarS} Right edge QScrollBar_N cr Scroll down QScrollBarW(kdcr Scroll here QScrollBar_]cr Scroll left QScrollBar_Scr Scroll right QScrollBar_N cr Scroll up QScrollBarzTop QScrollBar %1][XW(%1: already exists QSharedMemory%1^zY'\\e 0%1: create size is less then 0 QSharedMemory %1N [XW(%1: doesn't exists QSharedMemory%1ftok Y1eW%1: ftok failed QSharedMemory%1N TlvY'\%1: invalid size QSharedMemory%1uP Media Play QShortcut ZRMNMedia Previous QShortcutZԓ Media Record QShortcutZP\kb Media Stop QShortcutxUMenu QShortcutMetaMeta QShortcutT&No QShortcutex[W[Num Lock QShortcutex[W[NumLock QShortcutex[W[ Number Lock QShortcutU_}W@Open URL QShortcut_N N Page Down QShortcut_N NPage Up QShortcut PausePause QShortcut PgDownPgDown QShortcutPgUpPgUp QShortcut PrintPrint QShortcutRSp^U Print Screen QShortcutR7eRefresh QShortcut ReturnReturn QShortcutSuRight QShortcutcr[ Scroll Lock QShortcutcr[ ScrollLock QShortcutd\ Search QShortcutxdSelect QShortcut ShiftShift QShortcutzzv}uSpace QShortcut_T}Standby QShortcutP\kbStop QShortcut SysReqSysReq QShortcut|}qlB SysRqSystem Request QShortcutTabTab QShortcutTreble Down Treble Down QShortcutTreble Up Treble Up QShortcutN uUp QShortcutϖMON Volume Down QShortcut\ Volume Mute QShortcutcК Volume Up QShortcutf/Yes QShortcutbN e Page downQSliderb]e Page leftQSliderbSe Page rightQSliderbN ePage upQSliderOMnPositionQSliderOMW@WaKg*e/cAddress type not supportedQSocks5SocketEngine$#}g* SOCKSv5 O:g VhQA1(Connection not allowed by SOCKSv5 serverQSocks5SocketEngineNtO:g Vh#}]N kc^8ܕ&Connection to proxy closed prematurelyQSocks5SocketEngineNtO:g Vh#}ڈbConnection to proxy refusedQSocks5SocketEngineNtO:g Vh#}ڐ>fBConnection to proxy timed outQSocks5SocketEngine"N,v SOCKSv5 O:g Vh/General SOCKSv5 server failureQSocks5SocketEngine }dO\>fBNetwork operation timed outQSocks5SocketEngineNtO:g VhIY1eWProxy authentication failedQSocks5SocketEngineNtO:g VhIY1eW%1Proxy authentication failed: %1QSocks5SocketEngineb~N R0NtO:g VhProxy host not foundQSocks5SocketEngineSOCKS 5 vST[/SOCKS version 5 protocol errorQSocks5SocketEngineSOCKSv5 cNg*e/cSOCKSv5 command not supportedQSocks5SocketEngine TTL >fB TTL expiredQSocks5SocketEngine4g*wv SOCKSv5 NtO:g Vh/Nx 0x%1%Unknown SOCKSv5 proxy error code 0x%1QSocks5SocketEngine\LessQSpinBoxfYMoreQSpinBoxSmCancelQSqlSm}/UCancel your edits?QSqlxConfirmQSqlR*dDeleteQSqlR*d{F}UDelete this record?QSqlcQeInsertQSqlT&NoQSqlQ2[X}/NvQg[U Save edits?QSqlfeUpdateQSqlf/YesQSqllg єpq!lcOaI%1,Cannot provide a certificate with no key, %1 QSslSocket$^z SSL QgefBv|u/%1 Error creating SSL context (%1) QSslSocket&^z SSL ]O\kfBv|u/%1Error creating SSL session, %1 QSslSocket&^z SSL ]O\kfBv|u/%1Error creating SSL session: %1 QSslSocketSSL T kefBv|u/%1Error during SSL handshake: %1 QSslSocket Qeg,W0aIfBv|u/%1#Error loading local certificate, %1 QSslSocket QeypfBv|u/%1Error loading private key, %1 QSslSocketSfBv|u/%1Error while reading: %1 QSslSocketN Tlbzzv}vR[nU%1 !Invalid or empty cipher list (%1) QSslSockety[Ƒєpq!lՊIQlєp %1/Private key does not certificate public key, %1 QSslSocketq!l[Qee%1Unable to write data: %1 QSslSocket %1][XW(%1: already existsQSystemSemaphore %1N [XW(%1: does not existQSystemSemaphore%1nN %1: out of resourcesQSystemSemaphore%1[XSֈb%1: permission deniedQSystemSemaphore%1g*wv/ %2%1: unknown error %2QSystemSemaphore q!lՕU_#}Unable to open connection QTDSDriverq!lOu(e^Unable to use database QTDSDriver_]cr Scroll LeftQTabBar_Scr Scroll RightQTabBarSocket vdO\g*e/c$Operation on socket is not supported QTcpServer (&C)&Copy QTextControl N (&P)&Paste QTextControl PZ(&R)&Redo QTextControl _S(&U)&Undo QTextControl#}POMW@(&L)Copy &Link Location QTextControl RjN (&T)Cu&t QTextControlR*dDelete QTextControlQhxd Select All QTextControlU_Open QToolButtonc N Press QToolButtonkd^sSN e/c IPv6#This platform does not support IPv6 QUdpSocketPZRedo QUndoGroup_SUndo QUndoGroupzzv} QUndoModelPZRedo QUndoStack_SUndo QUndoStackcQe,W xcR6[WQC Insert Unicode control characterQUnicodeControlCharacterMenuLRE ]R0S]LQew$LRE Start of left-to-right embeddingQUnicodeControlCharacterMenuLRM ]R0SjLRM Left-to-right markQUnicodeControlCharacterMenuLRO ]R0S[w#LRO Start of left-to-right overrideQUnicodeControlCharacterMenuPDF _HQeTh<_PDF Pop directional formattingQUnicodeControlCharacterMenuRLE SR0]]LQew$RLE Start of right-to-left embeddingQUnicodeControlCharacterMenuRLM SR0]jRLM Right-to-left markQUnicodeControlCharacterMenuRLO SR0]扆[w#RLO Start of right-to-left overrideQUnicodeControlCharacterMenuZWJ [^#cVhZWJ Zero width joinerQUnicodeControlCharacterMenuZWNJ [^^#cVhZWNJ Zero width non-joinerQUnicodeControlCharacterMenuZWSP [^zzv}ZWSP Zero width spaceQUnicodeControlCharacterMenu q!l՘oy:}W@Cannot show URL QWebFrameq!l՘oy: MIME WaKCannot show mimetype QWebFrame jhHN [XW(File does not exist QWebFrame_qPϏ QeVe?{Vf N-e&Frame load interruped by policy change QWebFrame lB]򈫖;dRequest blocked QWebFrame lB]SmRequest cancelled QWebFrame%1%2x%3 P} %1 (%2x%3 pixels)QWebPage %n P jhH %n file(s)QWebPage eXR0[WQxAdd To DictionaryQWebPageN ov HTTP lBBad HTTP requestQWebPage|BoldQWebPage^zBottomQWebPagejgb[WelCheck Grammar With SpellingQWebPagejgb[WCheck SpellingQWebPagebS[WfBzSsjgb[WCheck Spelling While TypingQWebPagexdjhH Choose FileQWebPagendgvd\ Clear recent searchesQWebPageCopyQWebPage_qP Copy ImageQWebPage#}P Copy LinkQWebPageRjN CutQWebPage-DefaultQWebPageR*dR0kdU[Wv}P\>Delete to the end of the wordQWebPageR*dR0kdU[Wvw-Delete to the start of the wordQWebPageeT DirectionQWebPage[WWFontsQWebPage_VGo BackQWebPage_RM Go ForwardQWebPageb[WelHide Spelling and GrammarQWebPage_ueIgnoreQWebPage_ue Ignore Grammar context menu itemIgnoreQWebPagegWInspectQWebPageeItalicQWebPage$JavaScript fTJ % %1JavaScript Alert - %1QWebPage$JavaScript x % %1JavaScript Confirm - %1QWebPage$JavaScript cy: % %1JavaScript Prompt - %1QWebPage]R0SLTRQWebPage]搊} Left edgeQWebPage W([WQxd\ Look Up In DictionaryQWebPageyRn8jR0NP S@XJv}P\>'Move the cursor to the end of the blockQWebPageyRn8jR0NP eNv}P\>*Move the cursor to the end of the documentQWebPageyRn8jR0NLv}P\>&Move the cursor to the end of the lineQWebPageyRn8jR0N NP [WQC%Move the cursor to the next characterQWebPageyRn8jR0N NL Move the cursor to the next lineQWebPageyRn8jR0N NP U[W Move the cursor to the next wordQWebPageyRn8jR0RMNP [WQC)Move the cursor to the previous characterQWebPageyRn8jR0RMNL$Move the cursor to the previous lineQWebPageyRn8jR0RMNP U[W$Move the cursor to the previous wordQWebPageyRn8jR0NP S@XJvw-)Move the cursor to the start of the blockQWebPageyRn8jR0NP eNvw-,Move the cursor to the start of the documentQWebPageyRn8jR0NLvw-(Move the cursor to the start of the lineQWebPageb~N R0SvQg[No Guesses FoundQWebPageg*xSNOUjhHNo file selectedQWebPagelg gvd\ No recent searchesQWebPageU_hFg Open FrameQWebPageU__qP Open ImageQWebPageU_#}P Open LinkQWebPage W(ezU_Open in New WindowQWebPageYhF}OutlineQWebPagebN e Page downQWebPageb]e Page leftQWebPagebSe Page rightQWebPagebN ePage upQWebPageN PasteQWebPageSR0]RTLQWebPage gvd\ Recent searchesQWebPagee QeReloadQWebPagenResetQWebPageS} Right edgeQWebPageQ2[X_qP Save ImageQWebPageQ2[X#}P... Save Link...QWebPage_N cr Scroll downQWebPageW(kdcr Scroll hereQWebPage_]cr Scroll leftQWebPage_Scr Scroll rightQWebPage_N cr Scroll upQWebPaged\ zSSearch The WebQWebPagexdR0NP S@XJv}P\>Select to the end of the blockQWebPagexdR0NP eNv}P\>!Select to the end of the documentQWebPagexdR0NLv}P\>Select to the end of the lineQWebPagexdR0N NP [WQCSelect to the next characterQWebPage xdR0N NLSelect to the next lineQWebPagexdR0N NP U[WSelect to the next wordQWebPagexdR0RMNP [WQC Select to the previous characterQWebPage xdR0RMNLSelect to the previous lineQWebPagexdR0RMNP U[WSelect to the previous wordQWebPagexdR0NP S@XJvw- Select to the start of the blockQWebPagexdR0NP eNvw-#Select to the start of the documentQWebPagexdR0NLvw-Select to the start of the lineQWebPageoy:b[WelShow Spelling and GrammarQWebPageb[WSpellingQWebPageP\kbStopQWebPagecNSubmitQWebPagecNQSubmit (input element) alt text for elements with no alt, title, or valueSubmitQWebPagee[WeTText DirectionQWebPage"f/Sd\ v}"_0ˏ8Qeܓu[W03This is a searchable index. Enter search keywords: QWebPagezTopQWebPage^} UnderlineQWebPageg*wUnknownQWebPage}zgWVh%%2Web Inspector - %2QWebPage f/N What's This?QWhatsThisAction+*QWidget [b(&F)&FinishQWizard f(&H)&HelpQWizardN NP (&N)&NextQWizardN NP (&N)&Next >QWizardV(&B)< &BackQWizardSmCancelQWizardcNCommitQWizard~|~ContinueQWizard[bDoneQWizard_VGo BackQWizardfHelpQWizard%1 - [%2] %1 - [%2] QWorkspace ܕ(&C)&Close QWorkspace yR(&M)&Move QWorkspace V_(&R)&Restore QWorkspace Y'\(&S)&Size QWorkspaceSmn=(&U)&Unshade QWorkspaceܕClose QWorkspacegY'S(&X) Ma&ximize QWorkspaceg\S(&N) Mi&nimize QWorkspaceg\SMinimize QWorkspaceTN `b_ Restore Down QWorkspace n=(&A)Sh&ade QWorkspaceuYW(z(&T) Stay on &Top QWorkspace*S XML [TJfBag }x[TJbshz[TJYencoding declaration or standalone declaration expected while reading the XML declarationQXmlW(Y[N-ve[W[TJg /3error in the text declaration of an external entityQXmlRVg;fBv|u/$error occurred while parsing commentQXmlRVgQg[fBv|u/$error occurred while parsing contentQXmlRVgeNWaK[fBv|u/5error occurred while parsing document type definitionQXmlRVgQC} fBv|u/$error occurred while parsing elementQXmlRVgSÀfBv|u/&error occurred while parsing referenceQXmlu(b6v|v/error triggered by consumerQXml*W( DTD N-N QA1Ou(YRVgv[SÀ;external parsed general entity reference not allowed in DTDQXml&W(\l`'Punexpected end of fileQXml W(/vQgeN-g g*RVgv[SÀ*unparsed entity reference in wrong contextQXmlS XML [TJfBag rHg,_2version expected while reading the XML declarationQXmlshz[TJfBvPzg YvQg[0!Extra content at end of document. QXmlStreamN TlvT}T zz[TJ0Illegal namespace declaration. QXmlStreamN Tlv XML [WQC0Invalid XML character. QXmlStreamN Tlv XML T z10Invalid XML name. QXmlStreamN Tlv XML rHg,[WN20Invalid XML version string. QXmlStreamXML [TJN-g N Tlv\l`'0%Invalid attribute in XML declaration. QXmlStreamN Tlv[WQCSÀ0Invalid character reference. QXmlStreamN TlveN0Invalid document. QXmlStreamN Tlv[P<Invalid entity value. QXmlStreamN TlvUtcNT z10$Invalid processing instruction name. QXmlStreamW(Sex[[TJg NDATA0&NDATA in parameter entity declaration. QXmlStream T}T zzvRMn[WN2 %1 g*[TJ"Namespace prefix '%1' not declared QXmlStreamU_}Pg_vj|dN \ z10 Opening and ending tag mismatch. QXmlStreameN}P\>N kcx0Premature end of document. QXmlStreamPun,R0^[0Recursive entity detected. QXmlStream W(\l`'P"0&Sequence ']]>' not allowed in content. QXmlStream"shz[ScS yes b no0"Standalone accepts only yes or no. QXmlStreamgag Yj|d0Start tag expected. QXmlStream"shzv[d\l`'_ŘW(}xNK_Qs0?The standalone pseudo attribute must appear after the encoding. QXmlStream^g Unexpected ' QXmlStream(W(QlNx[WQCN-GR0^gv[WQC %10/Unexpected character '%1' in public id literal. QXmlStreamg*e/cv XML rHg,0Unsupported XML version. QXmlStreamXML [TJlg W(eNYˆU0)XML declaration not at start of document. QXmlStream(%1  %2 {&TNNLvY˂}P\>0,%1 and %2 match the start and end of a line. QtXmlPatterns%1 q!lS_%1 cannot be retrieved QtXmlPatterns4%1 ST+NW(lBv}x %2 QgN QA1vQk2OMP<0E%1 contains octets which are disallowed in the requested encoding %2. QtXmlPatternsN%1 f/exWaK q!lՏIcbexWaK0q6 IcpSWaK Y %2 f/SLv0s%1 is an complex type. Casting to complex types is not possible. However, casting to atomic types such as %2 works. QtXmlPatterns%1 f/N Tlv %2%1 is an invalid %2 QtXmlPatterns0%1 f/kchy:_N-N Tlvej0Tlvejg ?%1 is an invalid flag for regular expressions. Valid flags are: QtXmlPatterns%1 f/N TlvT}T zz}W@0%1 is an invalid namespace URI. QtXmlPatterns$%1 f/N Tlvkchy:_j#_%2/%1 is an invalid regular expression pattern: %2 QtXmlPatterns%1 N f/Tlvj#g,j!_T z10$%1 is an invalid template mode name. QtXmlPatterns%1 f/g*wvj_R6WaK0%1 is an unknown schema type. QtXmlPatterns%1 f/P g*e/cv}x0%1 is an unsupported encoding. QtXmlPatterns(%1 N f/Tlv XML 1.0 [WQC0$%1 is not a valid XML 1.0 character. QtXmlPatterns%1 N f/UtcNvTlT z104%1 is not a valid name for a processing-instruction. QtXmlPatterns%1 N f/TlvexP<0"%1 is not a valid numeric literal. QtXmlPatternsH%1 N f/NP TlvUtcNvvjT z10_Řf/ %2 vP< OY %30Z%1 is not a valid target name in a processing instruction. It must be a %2 value, e.g. %3. QtXmlPatterns"%1 N f/Tlv %2 WaKvP<0#%1 is not a valid value of type %2. QtXmlPatterns%1 N f/RvexP<0$%1 is not a whole number of minutes. QtXmlPatterns(%1 N f/NP SWaK0SIcpSWaK0C%1 is not an atomic type. Casting is only possible to atomic types. QtXmlPatterns2%1 N f/{W Qg\l`'[TJ0laj_R6S/QeRg*e/c0g%1 is not in the in-scope attribute declarations. Note that the schema import feature is not supported. QtXmlPatterns"%1 N f/Tlv %2 WaKvP<0&%1 is not valid as a value of type %2. QtXmlPatterns%1 {&TNcۈL[WQC%1 matches newline characters QtXmlPatterns8%1 _b_Ř߄W %2 b %3 ^SN[WN2v}P\>0J%1 must be followed by %2 or %3, not at the end of the replacement string. QtXmlPatterns6%1 \ %n P Sex Vkd %2 f/N Tlv0=%1 requires at least %n argument(s). %2 is therefore invalid. QtXmlPatterns8%1 gYSg %n P Sex Vkd %2 f/N Tlv09%1 takes at most %n argument(s). %2 is therefore invalid. QtXmlPatterns%1 ]T|S0%1 was called. QtXmlPatterns;N ST+ %1A comment cannot contain %1 QtXmlPatterns;N N %1 PZ}P\>A comment cannot end with a %1. QtXmlPatterns0GR0N^i [斛N SQA1W( XQuery Qg0WaK %1 vP<_ŘST+PvexP ex[W0exP< %2 g*{&TkdhN0PA value of type %1 must contain an even number of digits. The value %2 does not. QtXmlPatternsT p %1 vex][TJ00A variable by name %1 has already been declared. QtXmlPatterns>S@WOMy_Řf/W( %1 R0 %2 {W NKQg0%3 ]Q{W 0HA zone offset must be in the range %1..%2 inclusive. %3 is out of range. QtXmlPatternsN fxvRG{&T0Ambiguous rule match. QtXmlPatterns<\l`' %1 _ŘNTlv %2 pP< %3 f/N Tlv0>An %1-attribute must have a valid %2 as value, which %3 isn't. QtXmlPatterns ][TJ\l`' %1 vP\l`'N PZpeNv[P{0Vkd \l`' %1 vOMnN Ti0dAn attribute node cannot be a child of a document node. Therefore, the attribute %1 is out of place. QtXmlPatterns"%2 _Ř\g NP [PQC} %103At least one %1 element must appear as child of %2. QtXmlPatterns*\NP QC} %1 QsW( %2 NKRM0-At least one %1-element must occur before %2. QtXmlPatterns*\NP QC} %1 QsW( %2 NKQg0-At least one %1-element must occur inside %2. QtXmlPatterns_ŘhT\NP }DN0'At least one component must be present. QtXmlPatterns2W(QC} %2 v %1 \l`'N-\c[NP j!_0FAt least one mode must be specified in the %1-attribute on element %2. QtXmlPatterns*W(R{& %1 __Ř\g NP fB}DN0?At least one time component must appear after the %1-delimiter. QtXmlPatterns \l`' %1  %2 _|kdNe0+Attribute %1 and %2 are mutually exclusive. QtXmlPatterns.\l`'QC} %1 q!l^RS VpO\l`' %1 N QsW(QC} %20Sg %3 NSjn\l`'0YAttribute %1 cannot appear on the element %2. Allowed is %3, and the standard attributes. QtXmlPatterns>\l`' %1 N QsW(QC} %20Sg %3 NSjn\l`'0^Attribute %1 cannot appear on the element %2. Only %3 is allowed, and the standard attributes. QtXmlPatterns2\l`' %1 N QsW(QC} %20Sg jn\l`'0VAttribute %1 cannot appear on the element %2. Only the standard attributes can appear. QtXmlPatterns\l`' %1 vPQC} %1 lg \l`' %2 RGN_N g \l`' %3 b %40EIf element %1 has no attribute %2, it cannot have attribute %3 or %4. QtXmlPatternshYg{,NP Sexf/zz^R bf/w^p 0 v[WN2lg T}T zz RGq!lc[RMn[WN20OFf/`c[N %10If the first argument is the empty sequence or a zero-length string (no namespace), a prefix cannot be specified. Prefix %1 was specified. QtXmlPatterns,W(|!Svj#_hj!}DN- \l`' %1 _Ř[XW(0@In a simplified stylesheet module, attribute %1 must be present. QtXmlPatternsBW( XSL-T j#_Qg N u( %1 Su( %2 b %30DIn an XSL-T pattern, axis %1 cannot be used, only axis %2 or %3 can. QtXmlPatterns8W( XSL-T j#_Qg Q_ %1 vN g {,N P Sex0>In an XSL-T pattern, function %1 cannot have a third argument. QtXmlPatternsHW( XSL-T j#_Qg Sg Q_ %1 %2 SNu(ek\ 0%3 N L0OIn an XSL-T pattern, only function %1 and %2, not %3, can be used for matching. QtXmlPatternsTW( XSL-T j#_Qg Q_ %1 v{,NP Sex_Řf/e[WbexSÀ NOu(ek\ 0yIn an XSL-T pattern, the first argument to function %1 must be a literal or a variable reference, when used for matching. QtXmlPatternsJW( XSL-T j#_Qg Q_ %1 v{,NP Sex_Řf/[WN2 NOu(ek\ 0hIn an XSL-T pattern, the first argument to function %1 must be a string literal, when used for matching. QtXmlPatterns>W(SN[WN2N- %1 Su(eꎫb %2 v+8 ^ %30MIn the replacement string, %1 can only be used to escape itself or %2, not %3 QtXmlPatterns\WaK %1 NXN %2 b %3kcbq!PY' f/N QA1v0YMultiplication of a value of type %1 by %2 or %3 (plus or minus infinity) is not allowed. QtXmlPatternsfB0Network timeout. QtXmlPatternsN IcR0 %1 WaK02No casting is possible with %1 as the target type. QtXmlPatternsST+WaK %1 fBN PZkԏ01No comparisons can be done involving the type %1. QtXmlPatternsDg*e/cYQ_0b@g e/cvT+_SNvcOu( N QH[TJpYQ_0{No external functions are supported. All supported functions can be used directly, without first declaring them as external QtXmlPatternslg T p %1 vQ_0$No function by name %1 is available. QtXmlPatternslg |=zp %1 vQ_SOu(*No function with signature %1 is available QtXmlPatterns RMn[WN2 %1 lg }PTT}T zz-No namespace binding exists for the prefix %1 QtXmlPatterns,W( %2 vRMn[WN2 %1 lg }PTT}T zz3No namespace binding exists for the prefix %1 in %2 QtXmlPatterns(etexdllg KO\\ a %1 SNf/ %21No operand in an integer division, %1, can be %2. QtXmlPatternslg T p %1 vj#g,[XW(0No template by name %1 exists. QtXmlPatterns$T p %1 vY苊exlg Su(vP<0;No value is available for the external variable by name %1. QtXmlPatternslg T p %1 vex[XW(No variable by name %1 exists QtXmlPatterns4g*e/c pragma eX0Vk! _Řg -veX0^None of the pragma expressions are supported. Therefore, a fallback expression must be present QtXmlPatterns"Sg NP %1 [TJSNW(gbN-06Only one %1 declaration can occur in the query prolog. QtXmlPatternsSQsNP QC} %10Only one %1-element can appear. QtXmlPatternsXSe/c Unicode Codepoint Collation%1 0%2 g*e/c0;IOnly the Unicode Codepoint Collation is supported(%1). %2 is unsupported. QtXmlPatterns0Sg RMn[WN2 %1  %2 }PT0SNKNq605Only the prefix %1 can be bound to %2 and vice versa. QtXmlPatterns6dO\QC %1 N u(eWaK %2  %3 vSexP<0>Operator %1 cannot be used on atomic values of type %2 and %3. QtXmlPatterns"dO\QC %1 N u(eWaK %20&Operator %1 cannot be used on type %2. QtXmlPatterns6dO\QC %1 N u(eWaK %2  %3 vSexP<0EOperator %1 is not available between atomic values of type %2 and %3. QtXmlPatternsnOMq!lՈhy:eg %10"Overflow: Can't represent date %1. QtXmlPatternsnOMq!lՈhy:eg0$Overflow: Date can't be represented. QtXmlPatternsRVg/%1Parse error: %1 QtXmlPatternsW(zznull vT}T zz N f/P %1 W( XSL-T T}T zz0iXSL-T attributes on XSL-T elements must be in the null namespace, not in the XSL-T namespace which %1 is. QtXmlPatterns,^tN %1 N Tl Vpf/_ %2 Yv0-Year %1 is invalid because it begins with %2. QtXmlPatternszzv}empty QtXmlPatternsR[Y}NP  exactly one QtXmlPatternsNP NN  one or more QtXmlPatterns 0 P NN  zero or more QtXmlPatterns0 b 1 P  zero or one QtXmlPatterns\Muted VolumeSlider %1% Volume: %1% VolumeSliderqupzilla-1.6.0/bin/themes/000077500000000000000000000000001226107126500154165ustar00rootroot00000000000000qupzilla-1.6.0/bin/themes/chrome/000077500000000000000000000000001226107126500166735ustar00rootroot00000000000000qupzilla-1.6.0/bin/themes/chrome/images/000077500000000000000000000000001226107126500201405ustar00rootroot00000000000000qupzilla-1.6.0/bin/themes/chrome/images/blankbutton-a.png000066400000000000000000000022431226107126500234100ustar00rootroot00000000000000PNG  IHDRRf2tEXtSoftwareAdobe ImageReadyqe<EIDATHǭWo[E}|(T") H$z@s{A-!!Dr(TJ$`U-EةowzlEuꗌz7;3 k?VNoa?>~E~`KMDž"Dswz0C']JSY"%A?9D./M\p_~wvvfiD9Bng';*jw6?][YKHc .>=qKߌ)x5x ~QQw#8hBG@o_ j\M<¡.~2d_):ZOstʡ~1aqg±Za&qBแ39od ']h2Bx49d!h@-[И wO_pso8s98<\ܬ^_2c%u|0țG+ƝH$ab2¢K9ۖ>]@$jux ltS;DhRRIZߓT8ڴ;9&ɐHwƲ׼OV{klhu i&25d@3]:35()BZ[Ru;77~4 $&ο?O.r*H-'7qC@S>/`RiG̥f.woqPM+Q{y&Y 4kJкNZEz,eNvN7>w&]{N'z}U*XLwO@ܜt,$c%mm+Wo\__X};#=8U)P{i~[?1wn2yAqIENDB`qupzilla-1.6.0/bin/themes/chrome/images/blankbutton-h.png000066400000000000000000000024521226107126500234210ustar00rootroot00000000000000PNG  IHDRRf2tEXtSoftwareAdobe ImageReadyqe<IDATxڼWMo5k{6lf7l C4BCąHr !p_@z.܀C9&@($6dgw>{PKޱyOo|mm rvJt.--i ߼=7r7fbb,MB W,S&Cg;fRa:G毴?텍_? b3s 3V'F/앇ύAβSlsO>ѝN[;)W~?޹Kыl7_wu xcd s#  j89l< HFMn!*`QnXkԵjz N#s!xCjQZ4gS@*fv qE༘(zljICy0Vfdz5tF7,0ccոd܅`TXn%=T"p8RQXo~ v:03'Meg\ixo[<6)- 7;+:%{CEU] ҈'/i$)nQTAm|Кv-(u4y.NEB2MR@l{bdXvy]!Dޞ}T3xi̲4ä@:dKKPF ݢD8scr_؅P`iw=ziA,U 3E-Q"}IVBɔGr(̋kˊg`&eafj xzyǚ|k9HPD3UpyUnwU "yr ǨQJOLΖ+4eRIQpU8ŏP4FY_P^avZԎ`{! ɳ)Jݽ=uѩ 2VfZ`!Sz8 \֩lp}xSgu`+#Cc՗nssʆq&Y`wC ?EA@jZg2mO?gg'[~}r}V0)kDVslNz˟4s~^ٖQ.]o,a).*2{.}7'ƒp7Ӓ^GW#QI*}cfy&YQ? o'xfIENDB`qupzilla-1.6.0/bin/themes/chrome/images/flash.png000066400000000000000000000064501226107126500217500ustar00rootroot00000000000000PNG  IHDR00WgAMA7tEXtSoftwareAdobe ImageReadyqe< IDATh޽ZilT>f]Foߦf CЎ0? =)E$(Ɗ 3f4@Ҍ2F0s)zyD+Lo`ea+i7ijxHO6eO#]]]J޽KǎSZP&d>^gc3tRaH^L&'NH>Z(''G"q\6cBPSgΝG*a@0bR&&[T pp=`ǂJJX@"v`gB'0~:?x&OL#GTೳxx,1.y?ƛ6:@]Χ2.Jf5M~&N|hgAi@WT_LȽnR] t7 yfs+qRCnv`&áp;{;XTm4, \7dĻu?=YO"Ow*hzxPZKNx74 GPٻŁ]5A  `W\utFz DYd$sbwB?+\^ߒɟx] )> |.xH&Pi73_3{NF{m}4A>HNu=`vc|S'Z@]xQ"{-t"GF1*_TɶzXa/OvDL֭[zQHx!z饗Н-l&,tN;<}b#>; O k ;D㙍t$ц( ;w] nkq`8֣;͛GS*iKAjrx>^o< 7€OYf.kn%ܕ6 +Jз3`5xut:6mR)Ʋl3hB iӦN&Z:xie9rD 悖5ɫ:﻽.̙3c|ELGCz)=ʜp{졋/>2pl߾84&ߦ=}hWVVҔ)ST-g\#߿N8ށ1_ꈉ#&q<ƞϡGI&iѪ7J "I̥K͛E`iLx-&*,:CG3 #*yzJ?k?f՘P5EKc~f#r;O 0>Ek}1[gg #3=>a@s,3}nàsDuiIENDB`qupzilla-1.6.0/bin/themes/chrome/images/flashstart.png000066400000000000000000000037151226107126500230270ustar00rootroot00000000000000PNG  IHDR00 1 sBITUF pHYs11(RtEXtSoftwarewww.inkscape.org<LIDATX[l]G{s D!6 Ԧj'R*Tȥj^ZN ")$ZD#T\,_Vxcq=,Zkg(ar~jSXdE5DžV7#8##QT,#7>g h Al0&']c^F-&c" BJJLLDDL"%@ (`^L,JؠЧINZ Ѭsަ@+7%xbJLD|2Etdv$DĬs7)SEjIqblAR"l(hMBH@x(SّǃrQ |OSeU\\2S% s5+UK Ds fI6 3ypЁZVXj#+aX-z/OCXMJBLL&˜^0i (+ :(Ii &EX?p]&4XeCA1l˼HmDs?M gO>i=7%m#޵.oq7m-* Iѽz܆=r']b]<:-fl|&$$&A?ȽR|쵥o 13^kRKc-PG9D@Fr H$D R%,= y)~ {x"&"!%ܷKK]HhK%^7HDHDL>j-oAr.Ą|<|9Vw"BBBn?o> $&E84L jB.}.oplZ2W[͗`C"?Yⲇ 1))ߑ)"%BDJ3'rZOjش4Cgq O;_@F) p{w$XMB2#}ץpnw4e]^ i} a$|/X-i"yĐuMsgo=" D/zF KgW7CQc{6 FxJmvL[ڦҙl6zb5Fي:|[Lr萋t&;yQA #PEkg(V"JuK@㣈XCyӳa!p 604ttPZQl1sJ2PYyqj:JP1b fKGq  y|ËKl @Q"QUZBʧ9co}F+ d |ϳYc\N{zhXHq˗s ~>Vh40 H$Պx0`0أўFRDT*tZ쳳eU6ŭV rā@p1Lp*ziX,Hry qbs\zq\dOSd8]Ef}DiR^_XT*|>GgXܐoD;#XؒΎ(&FyP(s̵F9r\VY< LΜ} Xd26 x>+q$ T,Vl6{ "ZޖH$(KvEDbA?Xcx?dy@e{Af|Bh~CiCjDlEmFnGpHqIrJsKuKvLwMyNzO{P|Q~RRSTUVWXYZZ[\]^_`abbcdefghiijklǛڪIDATx1 ,g 'x<x<x<x<x<x<x<x<x<x<x<x<x<x<x<x<)ǘ4|IENDB`qupzilla-1.6.0/bin/themes/chrome/images/library-bg-top-right.png000066400000000000000000000003201226107126500246060ustar00rootroot00000000000000PNG  IHDRrosRGBbKGD pHYs  tIME 1\"$PIDAT(cTrguk`<{"(vea.6zO8\F/R $٥cE&iIENDB`qupzilla-1.6.0/bin/themes/chrome/images/library-bg-top.png000066400000000000000000000005071226107126500235020ustar00rootroot00000000000000PNG  IHDRGVsRGBIDATXݖ 0 @m 0[+pfNR͵ PI(9S/v ܟ.e# ~l|a_I00`g9DZVd[+ s‘ׁ*AWԠV[,d+캯tqY}nHW`u`f//&(4;*jۢ{-/M(/&-+ݒ0[7{..Lot!IENDB`qupzilla-1.6.0/bin/themes/chrome/images/library-search-bg.png000066400000000000000000000010711226107126500241420ustar00rootroot00000000000000PNG  IHDRun8sRGBbKGDC pHYs  tIME r`IDATh?N0?IUrڥ3!8DwN g53U D8M~R(v"lno/01 |BxއTJڿ1Ya\.f3 !꟤ژ0t@,Gcp,Z.,Kk'"ŚďRJѻK$i&<)D QJBcb"Nd,Ic77;ʊ~`*XE+KXE4M98b1S7L* %SӠ/M&#,9%eY~ZNDO% yٖMM=%m\<Ѯ|}fYZ{ݮiߺuF#oO&8X7 ya$S5mۿޚB"c\ш`IENDB`qupzilla-1.6.0/bin/themes/chrome/images/lineedit-bg.png000066400000000000000000000005621226107126500230340ustar00rootroot00000000000000PNG  IHDR9׊sRGBiPLTEKW tRNSIDAT8I0EC?/` btqSI5ϩGQEI%!"Hgkm[emZ}y/{_j{̋aNy0̤Rȼy;w '< vt+7܁@ :(AVl59UNIENDB`qupzilla-1.6.0/bin/themes/chrome/images/navigation-addtab.png000066400000000000000000000056231226107126500242300ustar00rootroot00000000000000PNG  IHDRt}sRGB MIDAThZkW>|^fgVjB[1&LфD%Z6O[l0MR^4h,bT.33w^{nns9>罞}PyRҽz"W 6P4i9Kڣ3d\}:cL^opDzH#4r\3|eagC]7_x$w6޽Z)mʁ\F!'u  C6ܽQV &# \P4 4XP[x R<) @.MAHYEVѣZ'cT|L w /Z#._D8GRoo}~OAlO@vrphpf''!cuqM *IѧcԈDHX@mb&uI8G:g$X\'voŝ4sՎ @TI0PRAjc/=B|E)rpc6D#<-EZH@FUU[度 l3-U8Mūl>y2<2YNh"C 7BY%qb5~̹Ө[.N"ס}\E.Hvk /ӈg/= pϪNL4֭ȹ0,Ipu۞'-.|{o7zGMβ y2?'NC߿o? }m0I6JHbS{9k8-\§FIpH˳Qnk@?b}U ]5 o𦇾y#]+ eZlב޸ lsrjգ{Cy9$_|z/+D^*׎Ԫk/.}oB1}Ţv'M 3)¶@(hXG7o+Vt\xr؀:B2St|}Pasie_U6E.#B ȀR皒f,4qRUYjs 棞qJi@/V5{p)A/ Uf Y|#{,}5(ryY o&hM9i8('S.vI쥴+hs<Ǝbf^4ƕcFqޘqm@AB%/dD2i7nFϧxt`6X$hZW/?n߶ v>Еўxpg<éIIHRDJ*& W ǎqX{R.jX.UXWp/}( < M Vroo 11Y<vK< }$v]}~@C\ R8 Tfe !}sߧ?BֵR͠O<&:ÅކwOO̚JZ_dZY\[f RMGѮg@;\:}lXZS}{Uv9+BE>*V_s(ۿ9HibSG*BMܲq_ui9 Ϗ[$t#}S u_SLN b4<;ۛM]]Ʃ58?jkklEm(VX Ϩ}*&w>j]޼ƍ]ooM Z=d$&ƍߵ~DZ²yOz>0{:߱뺻;]q],+ :_CKoOc.Te&@Xhu }J[hBi J*e{jJ JdJ:9(֡eT:9*X4.9<Z J_J쬤Z~vGw ڹSWqT*f~Rh"TV <{+G9q,˺[ˎUEi%M{`ϫDW8tz|!d%KhZe͝ZӪʨsIuw|u<+Pa6*so$WsW`06VٌZ2TPk|Oz 0U K$7mZƫVO@IZDգxyJbbǿ|juJ6Q` -7P,$Hay)0\HNJZBx%.Ƕ1D^"86]A$PqNy"ʞ||@_;O?nX~J|K) mA<{b|k@Ex,{:AO]g>q{?~y\PVVX~kP9Ku)*rʫ_{塽\AieCT6RQ`|Sfdd"Kb裵FBc*F49|bxuu"bTW# m9SxG~{m-X+=LTLm^MÌ/NsI-|ÅJ S;꺂vapp@UKp[[H6d\n6cs$1Ɛez~fe=:e{U3L9+C ߼Y _;̢o[C ߼okm\ӣ=q|emXZ͚{M7cC|=rڷ-|hm̐سk˔3f ؔ谭kj᫖QU6ֻ6cPLu;gl\}O}H]yιe&mxg78;’ZZw䧦!{^zV-|j<֐s黠9+7Aj4-|Ugq G {o-|vi[R#F#\fw4$B`LaE P$3c󠧧{߳3 t*oխ{=|Ϲ 0OĢuy9gh*RˆLaϞ~˃XWD(Ck~56ۆ~M֖ܭz 2 q彚6qFS,LT)$k\ΚdKR?8YDR<؎n|,[:mߏBPژh`T^0[#FLѐpϗqUADcYYuqFB HB!"Fl q<\> 0,n=֗X+ JӗB}"}6öE2f>8b08q]h.ǶTYNRlr`eQfi29,)6Ev]n\,Sb%r [K~3 i;n[z-p=)ΰy):p0iRᛲo=Þ2M(3gnϗW%TC[QH^6A<ݶ3ی2}|es1KofC쐕@1ΛCa/Y #N)X?T0m^("466 P j %UŠI|D=IIド`X$5&MP7$ ?;;a@[Jmg7?aK+ba{o敏oxe5gķO=b#}XxE ۤh,;sr}/1dQWȢ4a;Eε)Т]8$l>hdF)P8{U[A%tRMx8rߡ3g`=jx VkzgQq1}݇{76s'ykxC{=xpdMkxiLuZ(x`i\s;_ F2`eY.I`5"gzkV/=_,|G\X}䒀J)8_6}j-4Ǖ0>+K3<$hQ'>0CU8Jicw*rdg Q43!&a[Xqy`.8zO-DzW#N(,UWVQie,ٵ?zbZEנDPBԣrQ<͝M{ؼ`TdP*.7yXUbr5Vf,YW%$-]q*'$T nڃkZ+3a*3}wV)aYecJkl {缲3z[oK !e}Xbiڦ@\7Y|a_V~R\ $i=[i]TFRB,ڀlj;o|KQ\LD"Mŭ23^FgW/+/,da(be: 2%pkU Y~xEL*&Q*1& 1 %ZZ㺞F, SZ -%:#fCoW]Ff$-I葞݈hv øab}u< ='<+M"BG~ds۶n}EoqQ"sׇ zS矯](fv]HEhٚsma̩-P󶴪I{En:Ǫ=0&JfF빌EĆzzzwkfc5P\}d&5Dώ ɡ*VTahKR"+f8} ő~~X:Mfh}?1NqDJtvE1N Gp :ZHu]3 {.iN!QylzDŽ^39u"S'5wJtfYѳYS[rF[TPC+c&tW͞Ն+~j?%I"}޾| 6+gŭEMpT͞Նpq6ZƲhiQ(LmxT4}a*͹SWW V"awlޕ uBڟ]MXnlSIENDB`qupzilla-1.6.0/bin/themes/chrome/images/navigation-home.png000066400000000000000000000066231226107126500237420ustar00rootroot00000000000000PNG  IHDRt}sBIT|d pHYs   5IDAThZi>m 08.jEMƈ1&ъ+QV쥆`D 8 BȤdP30{朻toDM~LO~}w{94?Bp| WL:nxLE@ztB[zyW[/ۺP]w+@5ƥ 4.YP¾2J\GMh՞;PY( @wT-|Ռ7jI;f< <ͦ7'5I5/O-3 UH-p/tpEk=I浭0Wp d vY}\g48F*/? ^ALZ6}[#MQY*b48x[Զ1Ǐ!J t&YHr\n; e)b!psuYyqX·)Q)ʳ9g!9!,g} f䖥sy% 9L"g!^إPr_bzx|x}+恓um#QS'_njlΛTmO|!,o, j.!+m'ʡ*uNb~ Ik`iHP_9n |¯kw²[qRFT|/y1)=nQ^9:8Ϯ5Y8FxqHe 5@}\GDsG[d+L#YIt.$^Xg ]]6\ C:Ÿ@Jp~N(o)8 t*9OIQ>ɑxpc]$-Ldc"OTLTKҍ=u灁WύcE{Z;X.2Nd O7/EUv [?է2:bN~҄}fH N8☻\SzBtzpvZ8}N: DU`:z ;ZFu &U*_GZp]9;{Έl6=FTh>o+?ڧ7k=[.v/_AKϨՁOV!pS בNSj//8Nր3 K :Ќgߎw-ZsqJVHe!{GRa~.N -} )1Q,ԓxs"U[˧_ /Ki&1e%  w&DSyifATg`qK GaV`Z|' Eiv +BA;J]Biiښ40Bd.oAœ:]"s1fԷ4+ch9IIUv!4BRK 9L(}\}8!;*}f"(jΒ߂^7 Mtޕq(&ٛAaDj; {fjɠF4w@.< 0B<-Bя <b G/:_K=croر/jBJ 9U~}xdC;vȭ똥[n׍'9hmm^xv_ эO:76gŻ[6‚19ut:MÇ|>.jX%*n6?ܼ}|a̕Ɨ:!QuQ} E֛f!vBy 5]ϾР ǺV}„"VNI(d0bB~c1\4뮜x 0jTECjs{bpkKo::8g,oG̪&9&~9#NNJ]avYu6; g8b޼eлGEMp&ƢMFq.mfmSUsY8QLy[[H{J;Q#." 8 #j*<[ʦ`N|mmlڬw[ LF$F @D>Q]Qخ{g0ǣV__w6ၵa&=;:Pת'X9w=svwm0 }ůʴє DDRu2S } l18f+Pi2iPC}vX# ~`cS A-4&]Y\`Eؑ8ח}zm *"k:䦒6n+j3Y%%-.HQέ)"ҒT U[1pO鬱UT:īmɓ/lތIw|y*rP|OLox$p̈́:D?w,BXR17YEӤ;o ,9 uǪy (9'8%<7B&}aAc\@h;{ SQqk-z-rAyK(reOUDE)mx!F<?Krm_DijǍpLR jC;K>䶇N{m>f22ekoܨiDĎj=*յ!\u[',b&WlJhRMytg>_3-En-.VA5QiepGwUQ{vsxcXr$xD>bU@Fj`YźRO>3jbDS&lvOA#[^{^[7_Tېt~C{:;st6Id(ތ~هÇ;d^\l+з#ŀ@v VN3XT3зD}c||||||||||||,Ʋe,Kl$KHst|uLH*Z?TOtx{1C]%` ׌䀗kܠ$Zѿ-ng\v5Tt xRg59=N8vAgXBg#|u6<ӻ* <+ xRwծy d, 1% ][N,ޑޢBJ xTP!bR6S0[Ӫ z<$$% 49dzSk$`ILh}1jgLŬrܪxv8û}Z1fl,tK2'#2EuCVU6 (+ ^F PbVm,$;4~pl@ EVwH!OဂCXPZFY-< \f6/g/,@XAzG|%$*<"nE.> b?dπ7cr&pE441W2v,LD̛c ͈DepgGFxWg 3u'W0Ɍ ]0TS+(CHҶ'w}&bVuT[ӄ ۜe8hߠt2.o&qXf1dY댞Y]K }BC#;v,MrUS}]7 :Z|Zv3+%\aCe\9{}≗6:ٓ9LuSEg!o683'c7f}GʦCĒaL'ÌGrz/Яބ៟N <ö!)t^(>sRRK{YUͳV߿/hP}ilu>mua=$~ LR7sPe22w9*ʊ:|yL//ƲO0$iyc[U'YrC-\#'Zp|=]UT!H;cI&gY -EŀF^VX'N\b[,Y>1pv-HA $scp8NW1hrƖJ;X⇍\һq\EU @^Fq΃~ág$2mz#q1vOu֩RDZK\ mg ҺCZ"ϲapVqeB1$O\|& $W%.*9GFpOي"y\閰$o l\ TU4\ްHW-,$^?9H& O@qǒ\IW&X|L}0TOxJ,Mvcr؅.tD +IqŮv%W 6\ơø{qq zn#O˽2T_1dݨ3%5elKR r lKqǭF &1@Dl(qz[ZFn.x6'8yrgA5KC{JA x~W}5֮祌|$M> -']#/ ~qBTM$tDz9ģS3 mrRU+s{Rڔ.NSXFܪh% lIZo9Gځ!EGG:_K^/83ˈ+sWcxcE, a fBѽw sgTͤE"6|AWhC>7¸y$:Do\iKcO3yM)+prc+TWOTr[BgKD"ѶPA4drkhɬa,1Gajg6qeCxٳdIJ; ۴ܮ fx.}or2UZZ.4qI۱.;0?Zm&ə!F1278xmǩC{35m@'ґ˗M\jh8}H~OK(E_T9oiQ'ɎNlRRט @st|C%v**qT zUPS%s|wmӦ. ΑiX{ bZ^Tnlm8[{vlݍC֩&$~Z^^Ri*Pe\=pt6lykT%nZnlOפ,{E]q0qFhUL|aӮ#Dj:%\b",[>J@FYU,M.74MOi)K5K*@5"*>zH-]5ljIF$5/wF0H~̫.KF#Ohg:%ssFOt/(2 kn|z|x<ٓOLդS|ѯȕ$SO<`=n7=w)5pP:܁/Iz ;@pJr,oή|9Xz4nϟ܎NL:h:;+NCfql;Sq㈲=fQYQMήlP|8&jC`uN붭hSK_7UۼgZ[w?-M'AeH~P{wp(qynD797G4ss_xqI1Q̢Nbh˸e,TPҁXĘcbL11&ĘcbL;:IENDB`qupzilla-1.6.0/bin/themes/chrome/images/navigation-stop.png000066400000000000000000000073251226107126500237770ustar00rootroot00000000000000PNG  IHDRt}sRGBIDAThZyT73;}x ,1!bE-HbRj5wS@D b솢<3GBF靈:/b_Ɵ؅fك摌NR:I#1~=f>pUOU} ˂k^\FIч0ƏofB>Z,/Gn@9(rʊ ^;k4T@ @Cd;O,}D\UQ(b2GUc Kh;ɓx𺖞S2u`:﹯Yc "'v-XNeȘ9k^‰ZLz7m@t~ջyJ< H: cI> ‘!,[vb[k;tT ~ Ntǚ06گ}b OЉ`O% ꏣ| Icڴ>缃J *qMXA$ww|<ݚ* x9gj .QjbIU9H%3*/EeK@yo^?΄2Zo ֽW$qko@[gZ%,CB\5b?/]'PㆅsQqqs׉|qb̌T[O~Q|p%r'_Ƣ]EЋn|pK=wXZ 9["C6p$kqFd^*-)7NJ6A\C9w;:ӳ0gƙXy"<#NP勯' ;5<)=+Yc-=ш"y1b]v4=zʏa#|g%yS8.k!w)ԋ%2dz#Ђ%œ(Sv)U3=1ʃQOvp=D'Bc8$klR/8bQ% 4\LJ _F׈StA:^5hw>WsꚎAXDXeѫk p<"gg@;؉PW,2eTX Ja3}?QBrϩCh=8_>O#Ib[x{ ^=`X 9"c3? farMbb\9\6Ba:lgj̶%KY*Lzqx KMu(k`bOEzdP-i-/MEy po ,,:4ų"1gu7óygYk"k0e7:$ʪH"\uafO Ҍx/xF&xjo! u wH3C\*?g6T*iʉf?3LjtYY󈵧BE!M)Hic ʛvp4u2p8,/orDc"gCd>JAbG"] ᪆遶Tۚ[4@mpkOw{C \T#z*+NUf%AFFHVZǑνV{mm3;]єZ[]}ŅebtHDc{x =lW ﭫZzD5?UZ?X;al&l1>#^#QƌRP5TTqT{=}$R%&p|EͿv^YiLZ,(ʇWK3z[׭[ldRb[~f|^jO{̬(Y[]1!6^a0$f3lJcΕ>Sw)Ʀn /n}#LESc<&1HvY2UE0pO)3ixBU2i@ʔJ^хe)[#K;1e"-X #%@qT-aR={~>G&+9 ;e\-_{v;zkΝ*X(n[+~Yŵ(qssuN`ӓH|5ʸ _܂Oݧ4T㑥_˰<#X&O6Bd@KӬgNÜXd>9{*xZ58o鼢ȋLWRaOۣHG!q^yN$s5Wa=nf"Qל D@GHSZV]i4QΤ'*b`b~?s0%bon FiܮedYFhl胢fipf 1Kϱ][eQѡ6'lhꪊfD0ߍ~'ɼ}Kb_W '(i?*trDM6",jZ*&ͺuSB[[?8/3d_;d,F\o.Fnl#kpSC$?=?[0?[QC+:(*꟔c2L3PabP8&DhmM6&Dhm9ڿ;'t)\IENDB`qupzilla-1.6.0/bin/themes/chrome/images/navigation-supermenu.png000066400000000000000000000122131226107126500250250ustar00rootroot00000000000000PNG  IHDR#tRsRGBEIDAThZk]Ev9n1!,$1"q >( Aq48KaF(r $`I tΣ:GQ{Ϗsd3]Iۧ=uk}|DZ+TGNDxZϡimmb "~bZ,)'KE_x&"z](W"#6@xX3M?Nƒtq _Y;s{^.?Tv1݇ý; 7=|:ݾ-DSf]kcˇ*QWTBJRmATCrԵm[浳-_5R >wpŒvLjZ{z idI|OO8yܒOm´&P()>tYA *v@jo ms?\啇+x?ȝuߨ}q] y5 v7Y >E|ޟ 4]5k%`P&M߆B, c[qN@8gt| bh$2#} )Sܻ=J@"@ F]Y%٭! 2FF1 & >,bw:ЏޱbBJl$=}Ko>HiYܽ]3DJՋ`NX f<7vՄ!kU{5b݊Q%F (Ī)Qm]G(Ù.` 3K.k,vn2eTCjIƵG$"a<Xi;tB 6ZJX|L9mHHUL0a}pGoӿ`jRx} Jy Zi\[Qoi*`q5Q "^0Кs@L[e'NO $ncowUo vk6e|94;@-Hv߇u@A^ 0cr n{,ƒtaskEtʅXw3 o]IH)O"M5Sf޽&!;#8Ղ.}lc71|DrZ,F(_J ,*B %//PD-eK$lu)+.!hFPQlIJ H&vT]!\,f Tw>rbl, 0Ո10*UV R˘}hht2FJ"u C}[ :ı Q,nح/1Ѹq]d$ O F<ww"6iby橧BRRsH6 ΎwAӻlѾNRFoܰMbw+kJQkaَ8 vZw:zOW.]VՅ\;|,FF+*=_^/̶(6"& ˞ Mo0xyQPعc@oHD^;k"ۻGy3lXN%twwchia?iDA|l-wvv  K|ooOscP|ށJM""q̈b(ڊWcGW]{ QjuZڕsw|!wW}=oUx D{~䛗_뛷" xg]0sZ7sԙZ>٫ξQ?o!y&xn.Ory}J)M R1SR7ST sF & G qaAl+2̟/MYI0H"A0*O(r :CE a|o#Xi 1R V{9d|_Y'"KEN:O;kyϚڡ@16K3`m- xCe}ɠldrnQ>9CFwES  >! aTR%H9+>ELw@_F1jC{X-v02yĹU\%DlA.A Y1,<< > _,j@`s 0,D Tt,b%lq] (|vzHfYo/_}HhkW|T$Ԝ[.bWv0:w3B0ҾnōPbf"] $HHh [4xt@ aظ~bbLںe˨1HMHaD^ԀAD݊u_R56紉Z31IPKbRg.?[ގ~y32uD䘫X'XkW[QkHqՋQ k?!b e,?iyd6ĮXs8F/00T`,ہ^ NH g)dǤ+![FQu 2QD^-,/u9 )?^[xMnFd'\%! :"RqlYݿh5ς~%I ?8yXvqlQBUHlݲK (Sp勬nj8b(OU Qum%-#Xqz8CǏg*0bc\qťF1/c" lt&;eN@ }GA XPP` 5,V]”:!Fq߱@X(V"վ_ܳkx<# ϱԄHqlC0kZ:4aRҞxx8ک'<aO%Kh4f(Zcб'>G?^K/o_Mjs tF:170(2& (M!7?+Bv*?gB*0oJ8wbarP'S^a8@<)y;i(EyUȀ#W 88),8=>zɢ 9{mmsJũѬݼuUJ's_v>w> [u\6wΌǍkPJC) ud&{2-ϛ6eWۼ?>3mmny Z4D K#J{q"'cēZɋneS&Ph|J:4v^ FiR2KJaz=7ga犤< Zs^N8A2G QIJ{A.Zf~P2J)[;UTDzt&C[S 2R|.'AkLW|) 붮MFg6}~{#|利< DNd\VvG&*I$ %Cwuck91 gcެv Ҩ {C$yWInT.gڰy;<*Ep`FI`6$\k)t)K/' (̞S)7w~ݓr q$u*kHv^[_eV}WgUwސ.DDPuũ;3ݱH]P5+nF` "5:ڵ3aVc jݢC ?~\[֭Xret`JڌKYxhXmWp[OE֤QjaGn )B$[Ξ$H0SX1lti[ݏygL W, PqloIVE܁q+dJƘc8ADXsq%V #VJ%o2㒜568!̈#qN8=|!_$?bfĎG'ŜU j09IE(>."ػӧLB>7ĖSHg]6/q|Ql%k[؆N:^> IR@oS:&Z[OsqV`;`1GWgLޖ19;F%~?Zg/00ȁɽ,@o/.xR(3itn,ና䚍Py߾=_W=*шRuIrmլWTZ,DD$"PJ34C%"03؈0ZRwdSamf5mgQX&Oq-=Ej(/K#cvXkcm6Xkcm6(ÀAIENDB`qupzilla-1.6.0/bin/themes/chrome/images/rss.png000066400000000000000000000013371226107126500214610ustar00rootroot00000000000000PNG  IHDRatEXtSoftwareAdobe ImageReadyqe<IDATxڤRMHTQ>^' IgRcMA-.MD+-E Q- ۸hSeAPm`-7?M/ԧ{޾; {ss=L)E3X0 `b݄]h~8ɯ_H̽#)!ȟ8`ٝdN-{IofR a]jQ$81%&%;;`'9}FRzcot[ PCQ[|C>F&;S$a:Lʘ ė1""9D&F6bE:Z^H 8&5;A̝J5r8nwwYy`Qe$ٵi4"6 8@9Zr8*Bvhh̥SQ xLĶ%=y'!zEVz@Y  s `32Ivcdl7#k=*.{s"e炾杌ݲE.E.\$W@sV۱֔V5oFCy 3(b9¯GO{ f¦/Z4X/aV{9M% wIENDB`qupzilla-1.6.0/bin/themes/chrome/images/search-icon.png000066400000000000000000000004171226107126500230430ustar00rootroot00000000000000PNG  IHDR(-SsBITO pHYs  3PLTEzKtRNS@ffIDAT bWmY$דg.TopeO~V:n)|- Puϖc$ɑ^cIJR,P>g~zZIENDB`qupzilla-1.6.0/bin/themes/chrome/images/searchbar-provider-bg.png000066400000000000000000000017351226107126500250240ustar00rootroot00000000000000PNG  IHDR%0sRGBPLTE[[[llloooyK" tRNSsdIDAT8OUӱE =MQR(ix:J^IK:Jus3=֯ɖ=3ne= p2/z[6nr@w>֜1 J܊d,s9?_q'<1!PLq E6>]AKB$)! !CQ3^vJD# NA:ͤfٓCNg DϘL[_G1j(NCKm5~Y[˶/~{o/zv]e.s > &پ4q۫IY&$V.e jnkkdU[wGW]۩nU7U0fͶ_fYQ,}8CY鎯KQlذauͻwZ՜T/_(=;-7=M#wSu_l_xf뾒FXw7!&IENDB`qupzilla-1.6.0/bin/themes/chrome/images/semi-transp.png000066400000000000000000000002261226107126500231100ustar00rootroot00000000000000PNG  IHDRo&sRGBbKGD pHYs  tIME ٿ'IDATcd``e@L Xe_.kkU^%IENDB`qupzilla-1.6.0/bin/themes/chrome/images/siteicon-bg.png000066400000000000000000000014201226107126500230460ustar00rootroot00000000000000PNG  IHDRk?sRGBIDATHǥ?oA ] sDB! #$~c^#R4o~cL~ln$c(0絛cY]%̬;M>^CNO8X&||vRo^>y +r5aK<6[zt|C~]zjiv<rs"`R=Il)6rvǭ.Xczκ-6w9V0S W A2 Lz>A2y=Tۿ8']L'vRhg 0ٽƴ DR\֌Ps̺%؇p{wʲゃ{ *)*Ca#4!҃WQHy,=nP {ʡl =qeF3#`we#F٭LwDh%y}/ 5eD$IdIDAT(}JAD_tփ"D[(A!tyؘ nWϩjziХR4<=g|$3ȗ# Km=lK{RyX){{cb,l+ޑFtB]eK}Lz@TTPA *`:gl2S+DATQ\xG ;8kz̡v?N>y; L=~wX~l|m{gҎ)ݟ1 ?IENDB`qupzilla-1.6.0/bin/themes/chrome/images/star-a.png000066400000000000000000000005471226107126500220430ustar00rootroot00000000000000PNG  IHDR extEXtSoftwareAdobe ImageReadyqe<]PLTEL@@@@@@@@@@@@@@@@+K~:W{Ibwhypwlie^¾ZWSPLdtRNS"3UcfwpuIDATAn0 0Z]2?rh kA 0FF!CDubǨ ZUkyV#s`v=<:(znףr*5W533IENDB`qupzilla-1.6.0/bin/themes/chrome/images/star.png000066400000000000000000000005331226107126500216200ustar00rootroot00000000000000PNG  IHDR extEXtSoftwareAdobe ImageReadyqe<ZPLTE@@@@@@@@@@@@@@@@+M:YIfhwų2wtRNS"3Ucfw&kzIDATMC0/F)"_+3íMҀ'<GH <,-[šSfq.C M!=nSE ɼ\esQ|e>eq0Nb I8y?vV ̤rIENDB`qupzilla-1.6.0/bin/themes/chrome/images/tab-left-arrow.png000066400000000000000000000003001226107126500234650ustar00rootroot00000000000000PNG  IHDR /3bKGD pHYs  tIME  !Q MIDATc` `g``.pA Y0?L Il300\b``&p sz@?InIENDB`qupzilla-1.6.0/bin/themes/chrome/images/tab-right-arrow.png000066400000000000000000000002741226107126500236620ustar00rootroot00000000000000PNG  IHDR /3bKGD pHYs  tIME  5PCIIDAT׍̡ @D PTBN"i3r Xr);[lXyR{k81E[?"IENDB`qupzilla-1.6.0/bin/themes/chrome/images/tabbar-addtab.png000066400000000000000000000023471226107126500233240ustar00rootroot00000000000000PNG  IHDRH9zsRGB pHYs  tIME  *8{~PLTEtttzzznnnRRRVVV>>>@@@///888###((( (((,,,///222999AAAOOOWWWXXXmmmqqq%Fp$DmFa%Fp%EoGc.Mv%FpbtRNS  !"#$%&'''''(((((()))***+++++,,,--...///0001111112222345689::;;;;;<<<===>>?@@@ABBBBCCDDDEEEEEEEZ]NVbKGD*SԞ1IDATHw@'h(jQEkU+!AZ..gKrO{$ZaZG?sQß;Gsce2^/&Y/[-0X!ږ)59>s}ʻnD?)mn/DJ-%(tbsI3W3zYӵcV=m~_;kIENDB`qupzilla-1.6.0/bin/themes/chrome/images/tabs-bg.png000066400000000000000000000005001226107126500221600ustar00rootroot00000000000000PNG  IHDR tEXtSoftwareAdobe ImageReadyqe<IDATxڌR;1֖֞cxIB>YE@|]؞HE:/8epg)ûp!`NIJ]msNA!JP "^8[MH;a4\L"AN(3g]1*H2$Epx&0 [c$_*#^"w5LIoioJyKڲkIENDB`qupzilla-1.6.0/bin/themes/chrome/images/tabs-list-button.png000066400000000000000000000024741226107126500240700ustar00rootroot00000000000000PNG  IHDRlƙdsRGB pHYs  tIME yGPLTEwtttzzznnnRRRVVV>>>@@@///888###((( (((,,,///222999AAAOOOWWWXXXMhmmmqqq$En$Dl#BiSm%Fp$En2Qx(Ir7U|.Mv%FpftRNS  !"#$%&'''''(((((())))***+++++,,,--...///0001111112222345689:::;;;;;<<<===>>>?@@@AABBBBBCCDDDDEEEEEEEQ]qن:bKGD*SԞVIDATH{@h(jQE[RZ"$XZ}+V:w<{9ߜsBzP#;gN9ڒC]9t?W w gOIIG~`aSq_,=4y4 f1X~6d:togoOlm1r,6:&7ɯ`ɲ\#.۬n/دmM2|[VsgojW쿹mMқnultD,WV~|)bR|h(d\D8嫔 3]GeHIQ?;F}?„uw͘|dĐel?_C_X0瓊qIENDB`qupzilla-1.6.0/bin/themes/chrome/images/transp.png000066400000000000000000000002071226107126500221540ustar00rootroot00000000000000PNG  IHDR sRGB pHYs'TtIME$0bKGD) IDATc``OH IENDB`qupzilla-1.6.0/bin/themes/chrome/linux.css000066400000000000000000000002221226107126500205400ustar00rootroot00000000000000/*TabWidget*/ #tabbar { background-image: url(images/tabs-bg.png); background-repeat: repeat-x; } #tabbar::tab { max-height: 26px; } qupzilla-1.6.0/bin/themes/chrome/main.css000066400000000000000000000147021226107126500203350ustar00rootroot00000000000000/************************************* * Chrome Theme * * Author: nowrep * * Based on: Firefox Chromifox Theme * *************************************/ *[html-link-look="true"] { color: palette(link); text-decoration: underline; } /*MainWindow*/ #mainwindow { background: #e4edf9 url(images/toolbar-bg.png) repeat-x; } #mainwindow-menubar { background-image:url(images/transp.png); border:none; } #mainwindow-menubar:item { color: black; spacing: 5px; padding: 2px 6px; background: transparent; } #mainwindow-menubar::item:pressed { background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0 #a1c0e6, stop:1 #86abd9); border: 1px solid #4b6e99; border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom: none; } #mainwindow-statusbar { background-color: #e4edf9; } #mainwindow QToolBar { background-image:url(images/transp.png); border:none; } #statusbar-ip-label { padding-right: 5px; } /*NavigationBar*/ #navigationbar { qproperty-layoutMargin: 3; qproperty-layoutSpacing: 3; } #navigationbar QSplitter::handle { background-color:transparent; } #navigation-button-back { qproperty-multiIcon: url(images/navigation-back.png); } #navigation-button-next { qproperty-multiIcon: url(images/navigation-forward.png); } #navigation-button-stop { qproperty-multiIcon: url(images/navigation-stop.png); } #navigation-button-reload { qproperty-multiIcon: url(images/navigation-reload.png); } #navigation-button-home { qproperty-multiIcon: url(images/navigation-home.png); } #navigation-button-addtab { qproperty-multiIcon: url(images/navigation-addtab.png); } #navigation-button-supermenu { qproperty-multiIcon: url(images/navigation-supermenu.png); } /*TabWidget*/ #tabbar::scroller { width: 0px; } #tabbar-button-right { qproperty-icon: url(images/tab-right-arrow.png); qproperty-fixedsize: 15px 25px; } #tabbar-button-left { qproperty-icon: url(images/tab-left-arrow.png); qproperty-fixedsize: 15px 25px; } #tabwidget-button-opentabs { qproperty-multiIcon: url(images/tabs-list-button.png); } #tabwidget-button-addtab { qproperty-multiIcon: url(images/tabbar-addtab.png); } /*IconProvider*/ IconProvider { qproperty-bookmarkIcon: url(images/star-a.png); } /*LocationBar*/ #locationbar { background: transparent; border-image: url(images/lineedit-bg.png); border-width: 3px; color:black; padding-right: 0px; padding-left: 0px; padding-top: -2px; padding-bottom: -2px; qproperty-fixedheight: 27; qproperty-leftMargin: 28; } #locationbar-bookmarkicon { margin-bottom: 2px; qproperty-pixmap: url(images/star.png); } #locationbar-bookmarkicon[bookmarked="true"] { qproperty-pixmap: url(images/star-a.png); } #locationbar-siteicon { border-image: url(images/siteicon-bg.png); qproperty-fixedsize:30px 27px; padding-left: 0px; } #locationbar-siteicon[secured="true"] { border-image: url(images/siteicon-secure-bg.png); } #locationbar-rss-icon { margin-bottom:2px; qproperty-pixmap: url(images/rss.png); } #locationbar-goicon { margin-bottom:2px; qproperty-pixmap: url(images/gotoaddress.png); } #locationbar-down-icon { margin-bottom: 1px; qproperty-pixmap: url(images/navigation-dropdown.png); } #locationbar-autofillicon { margin-bottom: 1px; qproperty-pixmap: url(images/key.png); } /*BookmarksToolbar*/ #bookmarksbar QToolButton { border-image: url(images/transp.png); border-width: 0px; height: 15px; } #bookmarksbar QToolButton::menu-indicator { background: url(images/transp.png); } /*SideBar*/ #sidebar { background: transparent; } #sidebar-splitter::handle { background-color:transparent; } /*WebSearchBar*/ #websearchbar { background: transparent; border-image: url(images/lineedit-bg.png); border-width: 3px; color:black; padding-right: 0px; padding-left: 0px; padding-top: -2px; padding-bottom: -2px; qproperty-fixedheight: 27; qproperty-leftMargin: 35; } #websearchbar-searchbutton { margin-bottom:2px; margin-right: 2px; qproperty-pixmap: url(images/search-icon.png); } #websearchbar-searchprovider-comobobox { border-image: url(images/searchbar-provider-bg.png); padding-left:-8px; qproperty-fixedsize: 37px 27px; } #websearchbar-searchprovider-comobobox::menu-indicator { background: url(images/transp.png); } /*SourceViewer*/ #sourceviewer-textedit { border:none; } /*SourceViewerSearch*/ SourceViewerSearch #lineEdit[notfound="true"] { background:#ff6666; } /*SearchToolbar*/ SearchToolBar #lineEdit[notfound="true"] { background:#ff6666; } /*Click2Flash*/ #click2flash-frame { border: 1px solid #e8e8e8; } #click2flash-toolbutton { background: url(images/flash.png) no-repeat; background-position: center; border: none; } #click2flash-toolbutton:hover { background: url(images/flashstart.png) no-repeat; background-position: center; border:none; } /*RSSManager*/ #rssmanager-frame { background: white; } RSSManager QTabBar::tab { max-width:100px; } /*AboutDialog*/ AboutDialog #label { background:white; } AboutDialog #textBrowser { border:none; margin-top: -2px; /* Workarounding rounded border on KDE */ } /*DesktopNotification*/ DesktopNotification { background: transparent; } DesktopNotification #frame { border: 2px solid darkblue; border-radius: 20px; background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0 #e4ecf1, stop:1 #d3e5f1); } DesktopNotification #heading { font: bold; font-size: 13pt; } /*BrowsingLibrary*/ BrowsingLibrary #tabs { qproperty-bgPixmap: url(images/library-bg-left.png); } BrowsingLibrary #frame { background: url(images/library-bg-top.png) no-repeat; } BrowsingLibrary #frame_2 { background: url(images/library-bg-top-right.png); } BrowsingLibrary #searchLine { background: transparent; border-image: url(images/library-search-bg.png); border-width:4; color:black; } /*Downloads*/ DownloadItem #fileName { font-size: 13pt; } DownloadManager #list { border: none; } /*JavaScript Dialogs*/ #jsFrame { background: url(images/semi-transp.png); } QFrame[js-frame="true"] { border: 1px solid black; border-bottom: 0px; background-color: white; } QFrame[js-frame2="true"] { border: 1px solid black; border-top: 0px; background-color: #f3f3f3; } qupzilla-1.6.0/bin/themes/chrome/rtl.css000066400000000000000000000002601226107126500202040ustar00rootroot00000000000000#navigation-button-next { qproperty-multiIcon: url(images/navigation-back.png); } #navigation-button-back { qproperty-multiIcon: url(images/navigation-forward.png); } qupzilla-1.6.0/bin/themes/chrome/theme.info000066400000000000000000000002231226107126500206470ustar00rootroot00000000000000Name: Chrome Author: nowrep Short Description: Chrome like theme Long Description: Chrome like theme for QupZilla based on Firefox Chromifox theme qupzilla-1.6.0/bin/themes/chrome/theme.license000066400000000000000000000607751226107126500213600ustar00rootroot00000000000000Theme based on Chromifox Basic (https://addons.mozilla.org/en-US/firefox/addon/chromifox-basic/) MOZILLA PUBLIC LICENSE Version 1.1 --------------- 1. Definitions. 1.0.1. "Commercial Use" means distribution or otherwise making the Covered Code available to a third party. 1.1. "Contributor" means each entity that creates or contributes to the creation of Modifications. 1.2. "Contributor Version" means the combination of the Original Code, prior Modifications used by a Contributor, and the Modifications made by that particular Contributor. 1.3. "Covered Code" means the Original Code or Modifications or the combination of the Original Code and Modifications, in each case including portions thereof. 1.4. "Electronic Distribution Mechanism" means a mechanism generally accepted in the software development community for the electronic transfer of data. 1.5. "Executable" means Covered Code in any form other than Source Code. 1.6. "Initial Developer" means the individual or entity identified as the Initial Developer in the Source Code notice required by Exhibit A. 1.7. "Larger Work" means a work which combines Covered Code or portions thereof with code not governed by the terms of this License. 1.8. "License" means this document. 1.8.1. "Licensable" means having the right to grant, to the maximum extent possible, whether at the time of the initial grant or subsequently acquired, any and all of the rights conveyed herein. 1.9. "Modifications" means any addition to or deletion from the substance or structure of either the Original Code or any previous Modifications. When Covered Code is released as a series of files, a Modification is: A. Any addition to or deletion from the contents of a file containing Original Code or previous Modifications. B. Any new file that contains any part of the Original Code or previous Modifications. 1.10. "Original Code" means Source Code of computer software code which is described in the Source Code notice required by Exhibit A as Original Code, and which, at the time of its release under this License is not already Covered Code governed by this License. 1.10.1. "Patent Claims" means any patent claim(s), now owned or hereafter acquired, including without limitation, method, process, and apparatus claims, in any patent Licensable by grantor. 1.11. "Source Code" means the preferred form of the Covered Code for making modifications to it, including all modules it contains, plus any associated interface definition files, scripts used to control compilation and installation of an Executable, or source code differential comparisons against either the Original Code or another well known, available Covered Code of the Contributor's choice. The Source Code can be in a compressed or archival form, provided the appropriate decompression or de-archiving software is widely available for no charge. 1.12. "You" (or "Your") means an individual or a legal entity exercising rights under, and complying with all of the terms of, this License or a future version of this License issued under Section 6.1. For legal entities, "You" includes any entity which controls, is controlled by, or is under common control with You. For purposes of this definition, "control" means (a) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (b) ownership of more than fifty percent (50%) of the outstanding shares or beneficial ownership of such entity. 2. Source Code License. 2.1. The Initial Developer Grant. The Initial Developer hereby grants You a world-wide, royalty-free, non-exclusive license, subject to third party intellectual property claims: (a) under intellectual property rights (other than patent or trademark) Licensable by Initial Developer to use, reproduce, modify, display, perform, sublicense and distribute the Original Code (or portions thereof) with or without Modifications, and/or as part of a Larger Work; and (b) under Patents Claims infringed by the making, using or selling of Original Code, to make, have made, use, practice, sell, and offer for sale, and/or otherwise dispose of the Original Code (or portions thereof). (c) the licenses granted in this Section 2.1(a) and (b) are effective on the date Initial Developer first distributes Original Code under the terms of this License. (d) Notwithstanding Section 2.1(b) above, no patent license is granted: 1) for code that You delete from the Original Code; 2) separate from the Original Code; or 3) for infringements caused by: i) the modification of the Original Code or ii) the combination of the Original Code with other software or devices. 2.2. Contributor Grant. Subject to third party intellectual property claims, each Contributor hereby grants You a world-wide, royalty-free, non-exclusive license (a) under intellectual property rights (other than patent or trademark) Licensable by Contributor, to use, reproduce, modify, display, perform, sublicense and distribute the Modifications created by such Contributor (or portions thereof) either on an unmodified basis, with other Modifications, as Covered Code and/or as part of a Larger Work; and (b) under Patent Claims infringed by the making, using, or selling of Modifications made by that Contributor either alone and/or in combination with its Contributor Version (or portions of such combination), to make, use, sell, offer for sale, have made, and/or otherwise dispose of: 1) Modifications made by that Contributor (or portions thereof); and 2) the combination of Modifications made by that Contributor with its Contributor Version (or portions of such combination). (c) the licenses granted in Sections 2.2(a) and 2.2(b) are effective on the date Contributor first makes Commercial Use of the Covered Code. (d) Notwithstanding Section 2.2(b) above, no patent license is granted: 1) for any code that Contributor has deleted from the Contributor Version; 2) separate from the Contributor Version; 3) for infringements caused by: i) third party modifications of Contributor Version or ii) the combination of Modifications made by that Contributor with other software (except as part of the Contributor Version) or other devices; or 4) under Patent Claims infringed by Covered Code in the absence of Modifications made by that Contributor. 3. Distribution Obligations. 3.1. Application of License. The Modifications which You create or to which You contribute are governed by the terms of this License, including without limitation Section 2.2. The Source Code version of Covered Code may be distributed only under the terms of this License or a future version of this License released under Section 6.1, and You must include a copy of this License with every copy of the Source Code You distribute. You may not offer or impose any terms on any Source Code version that alters or restricts the applicable version of this License or the recipients' rights hereunder. However, You may include an additional document offering the additional rights described in Section 3.5. 3.2. Availability of Source Code. Any Modification which You create or to which You contribute must be made available in Source Code form under the terms of this License either on the same media as an Executable version or via an accepted Electronic Distribution Mechanism to anyone to whom you made an Executable version available; and if made available via Electronic Distribution Mechanism, must remain available for at least twelve (12) months after the date it initially became available, or at least six (6) months after a subsequent version of that particular Modification has been made available to such recipients. You are responsible for ensuring that the Source Code version remains available even if the Electronic Distribution Mechanism is maintained by a third party. 3.3. Description of Modifications. You must cause all Covered Code to which You contribute to contain a file documenting the changes You made to create that Covered Code and the date of any change. You must include a prominent statement that the Modification is derived, directly or indirectly, from Original Code provided by the Initial Developer and including the name of the Initial Developer in (a) the Source Code, and (b) in any notice in an Executable version or related documentation in which You describe the origin or ownership of the Covered Code. 3.4. Intellectual Property Matters (a) Third Party Claims. If Contributor has knowledge that a license under a third party's intellectual property rights is required to exercise the rights granted by such Contributor under Sections 2.1 or 2.2, Contributor must include a text file with the Source Code distribution titled "LEGAL" which describes the claim and the party making the claim in sufficient detail that a recipient will know whom to contact. If Contributor obtains such knowledge after the Modification is made available as described in Section 3.2, Contributor shall promptly modify the LEGAL file in all copies Contributor makes available thereafter and shall take other steps (such as notifying appropriate mailing lists or newsgroups) reasonably calculated to inform those who received the Covered Code that new knowledge has been obtained. (b) Contributor APIs. If Contributor's Modifications include an application programming interface and Contributor has knowledge of patent licenses which are reasonably necessary to implement that API, Contributor must also include this information in the LEGAL file. (c) Representations. Contributor represents that, except as disclosed pursuant to Section 3.4(a) above, Contributor believes that Contributor's Modifications are Contributor's original creation(s) and/or Contributor has sufficient rights to grant the rights conveyed by this License. 3.5. Required Notices. You must duplicate the notice in Exhibit A in each file of the Source Code. If it is not possible to put such notice in a particular Source Code file due to its structure, then You must include such notice in a location (such as a relevant directory) where a user would be likely to look for such a notice. If You created one or more Modification(s) You may add your name as a Contributor to the notice described in Exhibit A. You must also duplicate this License in any documentation for the Source Code where You describe recipients' rights or ownership rights relating to Covered Code. You may choose to offer, and to charge a fee for, warranty, support, indemnity or liability obligations to one or more recipients of Covered Code. However, You may do so only on Your own behalf, and not on behalf of the Initial Developer or any Contributor. You must make it absolutely clear than any such warranty, support, indemnity or liability obligation is offered by You alone, and You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of warranty, support, indemnity or liability terms You offer. 3.6. Distribution of Executable Versions. You may distribute Covered Code in Executable form only if the requirements of Section 3.1-3.5 have been met for that Covered Code, and if You include a notice stating that the Source Code version of the Covered Code is available under the terms of this License, including a description of how and where You have fulfilled the obligations of Section 3.2. The notice must be conspicuously included in any notice in an Executable version, related documentation or collateral in which You describe recipients' rights relating to the Covered Code. You may distribute the Executable version of Covered Code or ownership rights under a license of Your choice, which may contain terms different from this License, provided that You are in compliance with the terms of this License and that the license for the Executable version does not attempt to limit or alter the recipient's rights in the Source Code version from the rights set forth in this License. If You distribute the Executable version under a different license You must make it absolutely clear that any terms which differ from this License are offered by You alone, not by the Initial Developer or any Contributor. You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of any such terms You offer. 3.7. Larger Works. You may create a Larger Work by combining Covered Code with other code not governed by the terms of this License and distribute the Larger Work as a single product. In such a case, You must make sure the requirements of this License are fulfilled for the Covered Code. 4. Inability to Comply Due to Statute or Regulation. If it is impossible for You to comply with any of the terms of this License with respect to some or all of the Covered Code due to statute, judicial order, or regulation then You must: (a) comply with the terms of this License to the maximum extent possible; and (b) describe the limitations and the code they affect. Such description must be included in the LEGAL file described in Section 3.4 and must be included with all distributions of the Source Code. Except to the extent prohibited by statute or regulation, such description must be sufficiently detailed for a recipient of ordinary skill to be able to understand it. 5. Application of this License. This License applies to code to which the Initial Developer has attached the notice in Exhibit A and to related Covered Code. 6. Versions of the License. 6.1. New Versions. Netscape Communications Corporation ("Netscape") may publish revised and/or new versions of the License from time to time. Each version will be given a distinguishing version number. 6.2. Effect of New Versions. Once Covered Code has been published under a particular version of the License, You may always continue to use it under the terms of that version. You may also choose to use such Covered Code under the terms of any subsequent version of the License published by Netscape. No one other than Netscape has the right to modify the terms applicable to Covered Code created under this License. 6.3. Derivative Works. If You create or use a modified version of this License (which you may only do in order to apply it to code which is not already Covered Code governed by this License), You must (a) rename Your license so that the phrases "Mozilla", "MOZILLAPL", "MOZPL", "Netscape", "MPL", "NPL" or any confusingly similar phrase do not appear in your license (except to note that your license differs from this License) and (b) otherwise make it clear that Your version of the license contains terms which differ from the Mozilla Public License and Netscape Public License. (Filling in the name of the Initial Developer, Original Code or Contributor in the notice described in Exhibit A shall not of themselves be deemed to be modifications of this License.) 7. DISCLAIMER OF WARRANTY. COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED CODE IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER. 8. TERMINATION. 8.1. This License and the rights granted hereunder will terminate automatically if You fail to comply with terms herein and fail to cure such breach within 30 days of becoming aware of the breach. All sublicenses to the Covered Code which are properly granted shall survive any termination of this License. Provisions which, by their nature, must remain in effect beyond the termination of this License shall survive. 8.2. If You initiate litigation by asserting a patent infringement claim (excluding declatory judgment actions) against Initial Developer or a Contributor (the Initial Developer or Contributor against whom You file such action is referred to as "Participant") alleging that: (a) such Participant's Contributor Version directly or indirectly infringes any patent, then any and all rights granted by such Participant to You under Sections 2.1 and/or 2.2 of this License shall, upon 60 days notice from Participant terminate prospectively, unless if within 60 days after receipt of notice You either: (i) agree in writing to pay Participant a mutually agreeable reasonable royalty for Your past and future use of Modifications made by such Participant, or (ii) withdraw Your litigation claim with respect to the Contributor Version against such Participant. If within 60 days of notice, a reasonable royalty and payment arrangement are not mutually agreed upon in writing by the parties or the litigation claim is not withdrawn, the rights granted by Participant to You under Sections 2.1 and/or 2.2 automatically terminate at the expiration of the 60 day notice period specified above. (b) any software, hardware, or device, other than such Participant's Contributor Version, directly or indirectly infringes any patent, then any rights granted to You by such Participant under Sections 2.1(b) and 2.2(b) are revoked effective as of the date You first made, used, sold, distributed, or had made, Modifications made by that Participant. 8.3. If You assert a patent infringement claim against Participant alleging that such Participant's Contributor Version directly or indirectly infringes any patent where such claim is resolved (such as by license or settlement) prior to the initiation of patent infringement litigation, then the reasonable value of the licenses granted by such Participant under Sections 2.1 or 2.2 shall be taken into account in determining the amount or value of any payment or license. 8.4. In the event of termination under Sections 8.1 or 8.2 above, all end user license agreements (excluding distributors and resellers) which have been validly granted by You or any distributor hereunder prior to termination shall survive termination. 9. LIMITATION OF LIABILITY. UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU. 10. U.S. GOVERNMENT END USERS. The Covered Code is a "commercial item," as that term is defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer software" and "commercial computer software documentation," as such terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995), all U.S. Government End Users acquire Covered Code with only those rights set forth herein. 11. MISCELLANEOUS. This License represents the complete agreement concerning subject matter hereof. If any provision of this License is held to be unenforceable, such provision shall be reformed only to the extent necessary to make it enforceable. This License shall be governed by California law provisions (except to the extent applicable law, if any, provides otherwise), excluding its conflict-of-law provisions. With respect to disputes in which at least one party is a citizen of, or an entity chartered or registered to do business in the United States of America, any litigation relating to this License shall be subject to the jurisdiction of the Federal Courts of the Northern District of California, with venue lying in Santa Clara County, California, with the losing party responsible for costs, including without limitation, court costs and reasonable attorneys' fees and expenses. The application of the United Nations Convention on Contracts for the International Sale of Goods is expressly excluded. Any law or regulation which provides that the language of a contract shall be construed against the drafter shall not apply to this License. 12. RESPONSIBILITY FOR CLAIMS. As between Initial Developer and the Contributors, each party is responsible for claims and damages arising, directly or indirectly, out of its utilization of rights under this License and You agree to work with Initial Developer and Contributors to distribute such responsibility on an equitable basis. Nothing herein is intended or shall be deemed to constitute any admission of liability. 13. MULTIPLE-LICENSED CODE. Initial Developer may designate portions of the Covered Code as "Multiple-Licensed". "Multiple-Licensed" means that the Initial Developer permits you to utilize portions of the Covered Code under Your choice of the NPL or the alternative licenses, if any, specified by the Initial Developer in the file described in Exhibit A. EXHIBIT A -Mozilla Public License. ``The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.mozilla.org/MPL/ Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License. The Original Code is ______________________________________. The Initial Developer of the Original Code is ________________________. Portions created by ______________________ are Copyright (C) ______ _______________________. All Rights Reserved. Contributor(s): ______________________________________. Alternatively, the contents of this file may be used under the terms of the _____ license (the "[___] License"), in which case the provisions of [______] License are applicable instead of those qupzilla-1.6.0/bin/themes/chrome/theme.png000066400000000000000000000026641226107126500205130ustar00rootroot00000000000000PNG  IHDR szzsRGB pHYs  YIDATXW[lU;{m-,% E&&>111h (>hrU1SжB 4EC"vs9sf{Sン;93|I'yO/@B?|* R:,)E굡79zxhaeNrx9Ӗ-eHfLf8 ǀ1 OnZ]V`>*JI:c׬jZ, u.xY`%K2< TMSY.I㟯UDMu2'+, EJԤĵMtv"`գ!_k3vu/b8@Xr|+ %PT?dUeۋx]>J$қ*PfGАDT:`)ph-@{5R†-݈ Ƭqm&0x"ǟ޹6?XPMSQpe$c躊 -Rp#aI9PWS+zooXBmNrNE0.޾󸔵4 9`\ 9=gNC Fn6׶92walNwbl٩t ʊӸ"C}N ~c-oJd["\{`.!,dn~UFt|O,VuH:ґ>Ggg[?m]hףN~KGke Q߄nXE|WamtmNb;])ڍwGK_H|a8ppOW'! Q7U@M2ǽ8}ُ~lOB~Ew{=q~5i|pݴ& +ct64F#%:ɗkwǛ$w- SV6o4m2(tiG}~돯?OnY:}8S毿cD_F7~># @QB WB\*|_6Ncň0zɧ3fco|/Kɤ|APmۦw>_D:?%sw[Ưe{I׌䞯[y{JܞS,h;)4?rM]=%u7k4anWVqy疷$uqHw~2qr)uժܿM-qyۼ݌|ǭwwۯt/m?^w{\c_Quס=x q9ۼDM&vqjFė*Wu/Q}y\Hn0ڝfk٩{/73w S۫RE|&Imn}蕦UT:M~u2Nbu$?Uc6e=quN!>F{sg .A-w]gϺ?S}/^ZԝnE̝*3ph휸EkX?[u_mVũC~N^nCv )s|rۣydĈ'Im6[N|?7Ӌ Um.p^OܳrIz=3og[dnv_l\s續Pwgeɚ;xJw"u+눞{שD^Wu=0@ Ϩ.k.(6pݥO՝vbT/۪۔]#BM;5J.Jw}o=L&"soKpw?{7irM,p7wG=YcN}N]^|{&;.Gey;Mqw'ΩR>ɧuD. 33w;1v=M۽lg"m4I qO~L_߿1w;1q.Ly{=3o4yFu$=yy)seDn@'wСz }s:؏֍o2dk92NקLI{8cFv|h t]hC#Hd(=CwN#oc'~Ⱥ̞#RI.RUw-./! oĝV\teE$BvVTtZr̊սޒ9+><$2ƺ׍W;=v"UP8^e|b?:lSfRgiu%ƫ3z+x.SwU&\=KT2K>ٝ\I((=Bo'sweN=q2r?O'w3/«%,ejqxzL.;f(gT#q;ӟh˼ԇ>FY4 -:ku|EDdz;ݏxྲ$ԝ@FdǸN|Ok%VUkRWL+=K9IlSսscTFݴvNC!%]vf7?B@*%)]tSqE6J=͖LsKBK%%w/nx{]*HibJdu6iR'~Sۉ?Y~CC@~Eܘ8NVK J2Oۓ# 9lǻx\wK5 Yo H%D]4 붻n#㿭:}T;q{tTsds88"%FQ)u;%=lEeV'RW[.:2ߵdr{ZIvݣݥNw_d讻2U3vNZC}|8,~8ko̽W2+%n?g*.ۏBmMYZ%ݮ3~t#ePY+Y nd{XT[ۛP_ߦ$v m=v;I$2SQv}W{42FF[`P{0ɏ&eI=γCNN(lv^6F|r){c<aY>:2?vd>GwtSڃI}G.97[mY۟u=*S2s!lERwq݇"ߥr|q{wSܽbj塤/ܞ'߿ƴ=sv>}v-:]l$! _SGak(2wG2I[9´mtRn?H~DA;ڟٺv_lW|c!Kw/oohX,Ň )r%2 vSIk)9v#ۧO{a>IOۥ̕|qsij+A{~,tY&&)>ՌjS|~lz>=?=#}Jsw! _ܬY>|><HA"s2Uky:{UIOߜ%s8>}u;B)q?)dܵ{ r-oӂm&2i;\ϔ y \zU]Zp7# 3GK˰ߧ>弝2w/nU32F/ѕJcvՓQcdzsUqGknv&NSKM;m˴ݽ! _dV dfeIq_dPۮ=XguSU>o笍Rq;>?r;촌v}oZ;䋛s/Q=2[/y{qS{J۩cnѕ^Nr- HV0dj4żܤa2"pSыJUgsCә?:.;ϓ؟ne.Rw# ȩ{ox,Z"(! D:ߋ;Uehc)c8fk{Kda^i}ߓ]]tI;_NTZ'2S}!?7[a+̸|65]mɽЦKW\oTaQZkkW u>UgO%J/ Oh?E䎠(RTZJ=܋Pe}p=WN)ڮv*Whn c"']vvvEamrx/~ q&cqjzLuȢ/ŅS%ޖe揽?9Jq.7wypI{`~B_*A@*ZٓԆ)$|.&]%4m_{ q¦LOrTSPE>5#2[ q"kLdnCXemhW.^_~1oպTy q&^Z[wwMOk%RL5jyE,iφ׏N{.^_T-anz-/E$䎎; KuJx+WBۥVʲ-.(+S#\x0lv: ;Lۙu ;%./(6̝4kim_T|[N{ںT$U~<&kuNW{o^??Dw͵6v6bce _dtKk?UMb>ѨȒۋtV\Ee*;;S}Y,:f[&PO>&CL^2)#ͽ9ٜW R):7J<*;TզL&O9pXRVqE؃]g u??^^Y%?z4'u[]$ڋBܑ>V5~*lG'~0vUiw$ dTe8o?‰;]ŽN-vT[ۡ+WLN='|t?4 ^d5sqLooʞ}jЗg q*{XYK-+EP.]b weHʺhpp[yWyy~~x4ohGkMݓQv`gi)*FjSfWW k;ڧ vv*< XZ2 5xpxT%ga$;MZqw ܋SQi]E.>X rMjNS n_&kާ {2fQ2žDǸC@JkOjO ܹB^1Eݕ m'cjRK|2 dMY7>? 1y;BTsoʼVeveD}/qcuA#M y_$RZ.(o7U.PO FUt6Zɉ2gћirNvё]rao'y> __S6y?%2p/Š;}L(\q{Ƚ+iyq9'^L:}1 2L/>tWL1wvG]p ]9ݹ5e@Ow_ =qߕj~kI}Q Ue9E3/+E{LuP]Yĉ޲֬]M60}AiQ^c&IqLIe^SRܩea2roThdaFUF$xN"]`7y HDNwi>N/"+@ܣ{kv ܟ{+xܛ{O%*p/˲Kܩ)CL3AFaGr}]a/OZ?bT!ԽQA@vehQl$kv-|#(u=92Lj>wɴfTug??ՎM.e;aSܛf,Pw_! פ;In}${iue,m+C+\r}XiBB"cN3y*|oף â0AEu| k1w;{u߯v`+FgCԽtex([CQe֬׊Gu qWkS#^NqȼQ$tIiX r5kEA_ 5j(3vje.קʞnʴLyUqqsm"~tD=7~{YNYz{vyqy2 \{VSk_+~lM9QBw%|4Cig7۱3.wbR+wANga<,_p]v_˛84H;׌Siu*chNj;iF[F{%P=T[FW&hN>-J2qoLp/4*y2 y46k ZWoIe~EeN'6 TJV(˴n;|y{fvq{Y̓Q7fy<7ъ;: wd-N] yMjݪE%s}l{X^ ]lEԽ|sM9[tNרXW];U?YTj|?4[q&=q'-Y W50S "q4ԝEfvnvY- ^-:F*>u&‰2$C Un5DI",ᅣk֩VI L^n$"xeptwJQm7܏Tdh8ڒi~g2χuǶ*F.?;T+Yaި[;ܱ8kC__^f.Sm{fq{h:oPޮĜ]P+퐸|Y-sTV3w~{"á4jUcwQyX 2PP.,Džɘq wn={0\s+C6}%o9汐݇W!Bio'@+hq<44w qZdm*s՜*S׍2d>{)[\Q@ZIY=o= S'cVwO/J5Dvs+덒{Ixo1T6xQ;ܣ.սRQkTlgJh29f/5k2ުSEIcV s]*;^ۭu>kl/oۙ׶8wTw[XŎ աveXoLtPfљңͤcE.YTk*q9z^_mVV4ejl7p>{E$刷o훘79PFmZ@ܟŲ-=eSf5r72r"2-|{ƚL{YgVtU͟LfG]dfe^%i; }Ɖ;Tw>N~kfɝ#YjsY2!{jp>PX儹[u7E|nh{8NWr>{q$VgBܩPն֥u4qGU䒈'2Қ̝$xN>+Yۓ3Ӎ]F5<3 緛RU-nmy/̽?t_$4MץZ(SKC@θfEɤ$rt6vvζ=ry^ ՝Z-mʽʱo{mXK%#bS΅`Rַg~%:)kv]tevT6Cn-ՐO2VE5Qt7Ox&r{SjvG˶M =m[]T$ o\qսma,mkvw)j-TwuOǽ]Y;}{!0UTN_둸]5eP#̝GBKTmO{ͽK;etN$Tf8r=u,(sb֍`KRSurz{ ܅v32w+/+/oW?Hyi͘ȓyqj[UgX q9z+rɺ]ڻ'ʾ ]<KsM(J݇z2Er,OTp*w~Kᄚ_)3Sa.! g\oEn?Ό̨5BJ4rݓ^i:Zm6ഽfui˛}vݻ< R5e>-ZJۑ\r*ˈSwZ`TYG]QUKTfLyiv5J׶FxܗInK|<8˅u&vcFl0pq6rSK {Xx;g2Kw ,7) }n5;B%]~)Y;bRiC@θ^7G2=jUNC͘vf^Vnu60@@i'R՜m{+T[{0r'{y>J;2\F537c*'GRd?ۜwr%^-^p7+w3R2Y"r=M)t"3EW x 4C! i*n/,v,)^'o#^:)q9%*s'k)t>TYƨˈ}Ԟ2ݷYXz{mĽ"X=i;#O ! g\V&Z0wQtɐ5j2do+[_frN$;X{6m^yYZ<Һ>Sr}'}uX sKe22xO˜ /?dvG{m\)wC@θ,r'NNkS;xό"Uwoc'ۻBjCm6u\Yحw! o\`۩QEwϳ2wOi5s2${oˁW0z?ܨm'mo"o_j{;FVQz~%"w*{#2]UV,Dufe"MJ۠2-0z kt6}1_G]onq6rYv\>5w˄Cݍ%ތ)DcmP{.MVM_9py{]dFZ5e sw3E=ٖyf̭2w؎)P^j[&YXj^?C 1m,/8ѨC'r}ŝ]Ns ;m+wimLu{Y6޽|"_pLtd"q޾~۟TnDr53rׁ{-OVku͘!1U10Rodz{Kl mSev#qmWF̽3beE}Lus@Vzf^Rj2Y-f߶AOkDq9#Sܯ vOdOxYs"CxP+zp%f3-ߎۙub~v*PU)6U q& qW )~zx:rex;նkw{W[wgs@ٳ~nG6]5O|{! _\2T*m=)NV+"Uenj;>?xOq]S! 4qWME &Qoɻh]w&޵KAPl/ܔv9S&-5ɌI̒;wSuSf$\,r'USQQwyxvˈ+x߫;͔1֥ }-]u܃;TO@/J흈T];g̈́#g蛲wa7}y?6z21@FLqy]UeBɌ/fӡf$=w+ς=ө8S6`Y}5+sΕw_'MGd\X)lKVSђ٩;i=v:sis7\="qx>L|?xkU1G~">9}i^ew |3rl@uOƀFiD=-ݣwE#%CW/KrߥFc7+Dwk]z̓n܏͊'wvL8w'[ё}dQmْ!ots?IܣE ~T~'Խ (V""vbt\..E?\ٛ,q憸L'Æl;h+eڮ2nLɰ?ɴ='#}OH,;;77N5w3ogee4w9^;u;nC!c*^4nWwo˄e~K5;1i5UO_cA.R%qu@\{{d}ywTiYjȝ}:5;/)qKVe+m']Kvw/YuVb2 j:{/ãYY>@͚N֐ޔgǛ2x9.}B[2'<R\j {絫a.O-z;oZ8'k2R{tZ"pGEۥKs/~LD;fBߖc%c'U"wmOȽK! LBmˈO~B!;d V8JeWh=oz{"s.#wvn`q*;iELeྏe$.R٩1Ohf]Foߦf CЎ0? =)E$(Ɗ 3f4@Ҍ2F0s)zyD+Lo`ea+i7ijxHO6eO#]]]J޽KǎSZP&d>^gc3tRaH^L&'NH>Z(''G"q\6cBPSgΝG*a@0bR&&[T pp=`ǂJJX@"v`gB'0~:?x&OL#GTೳxx,1.y?ƛ6:@]Χ2.Jf5M~&N|hgAi@WT_LȽnR] t7 yfs+qRCnv`&áp;{;XTm4, \7dĻu?=YO"Ow*hzxPZKNx74 GPٻŁ]5A  `W\utFz DYd$sbwB?+\^ߒɟx] )> |.xH&Pi73_3{NF{m}4A>HNu=`vc|S'Z@]xQ"{-t"GF1*_TɶzXa/OvDL֭[zQHx!z饗Н-l&,tN;<}b#>; O k ;D㙍t$ц( ;w] nkq`8֣;͛GS*iKAjrx>^o< 7€OYf.kn%ܕ6 +Jз3`5xut:6mR)Ʋl3hB iӦN&Z:xie9rD 悖5ɫ:﻽.̙3c|ELGCz)=ʜp{졋/>2pl߾84&ߦ=}hWVVҔ)ST-g\#߿N8ށ1_ꈉ#&q<ƞϡGI&iѪ7J "I̥K͛E`iLx-&*,:CG3 #*yzJ?k?f՘P5EKc~f#r;O 0>Ek}1[gg #3=>a@s,3}nàsDuiIENDB`qupzilla-1.6.0/bin/themes/default/images/flashstart.png000066400000000000000000000037151226107126500231760ustar00rootroot00000000000000PNG  IHDR00 1 sBITUF pHYs11(RtEXtSoftwarewww.inkscape.org<LIDATX[l]G{s D!6 Ԧj'R*Tȥj^ZN ")$ZD#T\,_Vxcq=,Zkg(ar~jSXdE5DžV7#8##QT,#7>g h Al0&']c^F-&c" BJJLLDDL"%@ (`^L,JؠЧINZ Ѭsަ@+7%xbJLD|2Etdv$DĬs7)SEjIqblAR"l(hMBH@x(SّǃrQ |OSeU\\2S% s5+UK Ds fI6 3ypЁZVXj#+aX-z/OCXMJBLL&˜^0i (+ :(Ii &EX?p]&4XeCA1l˼HmDs?M gO>i=7%m#޵.oq7m-* Iѽz܆=r']b]<:-fl|&$$&A?ȽR|쵥o 13^kRKc-PG9D@Fr H$D R%,= y)~ {x"&"!%ܷKK]HhK%^7HDHDL>j-oAr.Ą|<|9Vw"BBBn?o> $&E84L jB.}.oplZ2W[͗`C"?Yⲇ 1))ߑ)"%BDJ3'rZOjش4Cgq O;_@F) p{w$XMB2#}ץpnw4e]^ i} a$|/X-i"yĐuMsgo=" D/zF KgW7CQc{6 FxJmvL[ڦҙl6zb5Fي:|[Lr萋t&;yQA #PEkg(V"JuK@㣈XCyӳa!p 604ttPZQl1sJ2PYyqj:JP1b fKGq  y|ËKl @Q"QUZBʧ9co}F+ d |ϳYc\N{zhXHq˗s ~>Vh40 H$Պx0`0أўFRDT*tZ쳳eU6ŭV rā@p1Lp*ziX,Hry qbs\zq\dOSd8]Ef}DiR^_XT*|>GgXܐoD;#XؒΎ(&FyP(s̵F9r\VY< LΜ} Xd26 x>+q$ T,Vl6{ "ZޖH$(KvEDbA?Xcx?dy@e{Af|Bh~CiCjDlEmFnGpHqIrJsKuKvLwMyNzO{P|Q~RRSTUVWXYZZ[\]^_`abbcdefghiijklǛڪIDATx1 ,g 'x<x<x<x<x<x<x<x<x<x<x<x<x<x<x<x<)ǘ4|IENDB`qupzilla-1.6.0/bin/themes/default/images/library-bg-top-right.png000066400000000000000000000003201226107126500247550ustar00rootroot00000000000000PNG  IHDRrosRGBbKGD pHYs  tIME 1\"$PIDAT(cTrguk`<{"(vea.6zO8\F/R $٥cE&iIENDB`qupzilla-1.6.0/bin/themes/default/images/library-bg-top.png000066400000000000000000000005071226107126500236510ustar00rootroot00000000000000PNG  IHDRGVsRGBIDATXݖ 0 @m 0[+pfNR͵ PI(9S/v ܟ.e# ~l|a_I00`g9DZVd[+ s‘ׁ*AWԠV[,d+캯tqY}nHW`u`f//&(4;*jۢ{-/M(/&-+ݒ0[7{..Lot!IENDB`qupzilla-1.6.0/bin/themes/default/images/lineedit-bg.png000066400000000000000000000010711226107126500231770ustar00rootroot00000000000000PNG  IHDRun8sRGBbKGDC pHYs  tIME r`IDATh?N0?IUrڥ3!8DwN g53U D8M~R(v"lno/01 |BxއTJڿ1Ya\.f3 !꟤ژ0t@,Gcp,Z.,Kk'"ŚďRJѻK$i&<)D QJBcb"Nd,Ic77;ʊ~`*XE+KXE4M98b1S7L* %SӠ/M&#,9%eY~ZNDO% yٖMM=%m\<Ѯ|}fYZ{ݮiߺuF#oO&8X7 ya$S5mۿޚB"c\ш`IENDB`qupzilla-1.6.0/bin/themes/default/images/navigation-addtab.png000066400000000000000000000005111226107126500243660ustar00rootroot00000000000000PNG  IHDR(-StEXtSoftwareAdobe ImageReadyqe<lPLTEAFGIMQUY_sssszz bKGD ,IDAT_OP_*X.Z}uӧhuњfC |{]8GgFF@~őns=A h:jTw u,a/eb`rDBQoKER7=ghk|v U"8, 2%'QZ-! ΟFh~=DyM^r>378V [qfQ@@K[Cj 6vm<:6v~&=IENDB`qupzilla-1.6.0/bin/themes/default/images/navigation-stop.png000066400000000000000000000011501226107126500241340ustar00rootroot00000000000000PNG  IHDRl"sRGB pHYs  tIME zyQPLTEMQnGJf${$~$%q%t%x&[&_&l'O'S'V(I(L"o#f$Y$arugko^bPTYCGK@e2tRNS:??BKKgg{{{{{{{{' bKGDHIDATWM@ DY] ( _D8ɜ3McF™FbR6zތ( M4U1- pTd: `9R";.|?a,"}9*җ9Cx{nEڴuE+u3M4Iz=Z $8.>o:;9Jӓ+> #1IcFZ/oXYIENDB`qupzilla-1.6.0/bin/themes/default/images/navigation-supmenu.png000066400000000000000000000047721226107126500246600ustar00rootroot00000000000000PNG  IHDR szzsBIT|d pHYs B(x IDATXÍ]]Uk}ι_s=g&-P\jTTAB}T<xBP塪*UUTT>_iӊMDb3xswνsZv1g١o UͲl5vƝ2qӾДfH)Q1kF5ۊwcb49$>qm ٫;e͍Iˣ}Jo"oW')l+K_V#9 a]{u݉?72̅N2ԉ͡6û9NgPڠLrGl%X|MޔApst@D&LBޤ Q'Url_(;l}Q]~<Ҫ<Ģa_c׫֟~(w?YaznmE J'y 5Uľ+SdioO(pOϒ \j54~NDVM^w/7F&-}SDy3R#x=#2 ^z JR2čNectȓZ=㩂ܘ@3oG<̭6ngQNbf!1*/?qӌ(H0vvi nevXŢ䶑썓(i݃~sVsL6][̣2v!:B'kR:DL@:׼2 0Oi%m HhI+(;Kͼ=´:˔:@k޷^&UU l;XT:AQ%wԥnԴvkk䉬JTX͒:*Y(Tfb! AQ7R?Hy@Qxtd&<Džv40LL1HE \SJ f~[ėwg43DȂ!t#4E\渋*Ji4r\Y OW꘲r3"ZYNc3٘U 7l/UNN?H=uSJZcp6GOHT4XU[A-rư,Lh1333*ү&7QJ3",dȜ)[A'<‰F 0d4N\.Mw-d*ED "JaΠrWĒdT?F߹RuiT4 i0#H>^}nAR;S*- 3E"bBT!O_/pĻMY[yAd)SFL"4J#c#vbNT[3eDK󆀻P ̀^ZQeP><TE]&UC(x1ЬnO,{z3dB]\8uJo&{d- %|`b #Aż|'D|^Ɖm*tıknzVAp:$~fHfBj 8̀!19T x6w,&' X> _L$=9|> GH.T>v^UzXJxg[b5i {!p\t;f?8,QVzRoiEB&H N?:a߈6t ԤշA.ƨ6K^oD֐^~s'u䩸PQZm!wHTT3R9aG$GWX&Wؚ_7t- ŋ<>vE$HLSPh"f~j` 9>p3eze ZEvyO=woѥ_[-Hkq DχA8aD豣"gm{3v-Lsx^)?K/v6\weqL*;,ڈ*A)f{uں9>}kR}q\FT2TxYfYPLIENDB`qupzilla-1.6.0/bin/themes/default/images/rss.png000066400000000000000000000013371226107126500216300ustar00rootroot00000000000000PNG  IHDRatEXtSoftwareAdobe ImageReadyqe<IDATxڤRMHTQ>^' IgRcMA-.MD+-E Q- ۸hSeAPm`-7?M/ԧ{޾; {ss=L)E3X0 `b݄]h~8ɯ_H̽#)!ȟ8`ٝdN-{IofR a]jQ$81%&%;;`'9}FRzcot[ PCQ[|C>F&;S$a:Lʘ ė1""9D&F6bE:Z^H 8&5;A̝J5r8nwwYy`Qe$ٵi4"6 8@9Zr8*Bvhh̥SQ xLĶ%=y'!zEVz@Y  s `32Ivcdl7#k=*.{s"e炾杌ݲE.E.\$W@sV۱֔V5oFCy 3(b9¯GO{ f¦/Z4X/aV{9M% wIENDB`qupzilla-1.6.0/bin/themes/default/images/search.png000066400000000000000000000010761226107126500222660ustar00rootroot00000000000000PNG  IHDR(-SgAMAOX2tEXtSoftwareAdobe ImageReadyqe<PLTEc f;>`n3@c j7>`r/@ f;`w*@` |%@cn3>c f jnrw |%*,}-/377;>>?Nqstv||뀸낺tuXhtRNS FFFF]IDATW-R0@;"8LWՉ% yn؞dU@@}0. 4tױ[˛EqB"͎1.BP﯃I1jޞ1G,Nz*9|r)YȂ5JPCF`7,dIENDB`qupzilla-1.6.0/bin/themes/default/images/semi-transp.png000066400000000000000000000002261226107126500232570ustar00rootroot00000000000000PNG  IHDRo&sRGBbKGD pHYs  tIME ٿ'IDATcd``e@L Xe_.kkU^%IENDB`qupzilla-1.6.0/bin/themes/default/images/siteicon-bg-secure.png000066400000000000000000000014171226107126500245070ustar00rootroot00000000000000PNG  IHDRu2agAMA7tEXtSoftwareAdobe ImageReadyqe<IDAThN `{S&^4Q|W/рq[+tm6u`0ƨZUVZ V_U ^_ںiۍ?n1oC^U\>|^~}[ctlg%׶~/^N9}  <  ,{iQ8ꇭnK@ȁ_w4D+ȋ`o,걄z_P:ƣt^hƮXtQ3דQ9h>h(4[hֵ֠(; u9h?{ıy@d$PllaGaQcAg@9L{[#aѼMQ灲 (U&DV'Xi Itlw<h2b-$PֲHŠul,Mtt(MnX@U1u M ,`d:'iAn.2U}ZaJKci REX祃jcwۄ\ut4,߭IkNuZR MA<} ,3ψ10cʯ-uʢp$*;xۀ]yñ4Dꎣ.M1,Ԭ6., H- oT"n[҅d%(ۆ3(g@PkYOC(?"4IENDB`qupzilla-1.6.0/bin/themes/default/images/siteicon-bg.png000066400000000000000000000012171226107126500232210ustar00rootroot00000000000000PNG  IHDRu2agAMA7tEXtSoftwareAdobe ImageReadyqe<!IDATxMN0$*܊ wAz )i̼ 1 :M;#`+|yrMcY zNNWp]5mg<4;,rL)7;M3˥iv8.|>z<;!"JX&F|y.Jp PU,?ه%P &IgZA&*j>R77n9`U M R N:` \vjXB޺4\}@k6ZEZмA+_PPKp 3ևjE5=2{.ܻxsz{0R"T4L i\[bC%zͭ~IENCuOiʦ7Jꀺ-Y *7{}5|u|K*U2rk޶E(yP'8$]&nT jt&Gy#{{Pj2IxU/'Mmj_W?./D,Jـ`.?TIENDB`qupzilla-1.6.0/bin/themes/default/images/star.png000066400000000000000000000005301226107126500217640ustar00rootroot00000000000000PNG  IHDR(-SsBITO pHYs+fPLTEAAAA1111&&&&  ۀtRNS@T yIDATU0 80dl'!HѺV\q] γRp9N;%Lh޿\13 ="nQ&Qx6M&XPa1R( ةIENDB`qupzilla-1.6.0/bin/themes/default/images/starg.png000066400000000000000000000004131226107126500221330ustar00rootroot00000000000000PNG  IHDRRsBITO pHYs+$PLTE8 tRNS)Rz gIDAT[c````q`$(k fަfR{wn0X  w10F F HQ߽s";MAx0*@'IENDB`qupzilla-1.6.0/bin/themes/default/images/tab-left-arrow.png000066400000000000000000000003001226107126500236340ustar00rootroot00000000000000PNG  IHDR /3bKGD pHYs  tIME  !Q MIDATc` `g``.pA Y0?L Il300\b``&p sz@?InIENDB`qupzilla-1.6.0/bin/themes/default/images/tab-right-arrow.png000066400000000000000000000002741226107126500240310ustar00rootroot00000000000000PNG  IHDR /3bKGD pHYs  tIME  5PCIIDAT׍̡ @D PTBN"i3r Xr);[lXyR{k81E[?"IENDB`qupzilla-1.6.0/bin/themes/default/images/tabs-list-button.png000066400000000000000000000004541226107126500242330ustar00rootroot00000000000000PNG  IHDR ?sRGB pHYs  tIME !_XHPLTE'''333"""000///(((((((((ftRNS ,=vzhbKGD ֘>IDAT )JXn Jjq qO?8׷-`=o}NIENDB`qupzilla-1.6.0/bin/themes/default/images/transp.png000066400000000000000000000002071226107126500223230ustar00rootroot00000000000000PNG  IHDR sRGB pHYs'TtIME$0bKGD) IDATc``OH IENDB`qupzilla-1.6.0/bin/themes/default/main.css000066400000000000000000000150651226107126500205070ustar00rootroot00000000000000/**************************** * Default Theme * * Author: nowrep * ****************************/ *[html-link-look="true"] { color: palette(link); text-decoration: underline; } /*MainWindow*/ #mainwindow { background-image: url(images/background.png); background-position: top right; background-repeat: no-repeat; background-color: #e4eefa; } #mainwindow-menubar { background-image:url(images/transp.png); border:none; } #mainwindow-menubar:item { color: black; spacing: 5px; padding: 2px 6px; background: transparent; } #mainwindow-menubar::item:pressed { background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0 lightgray, stop:1 darkgray); border: 1px solid darkgrey; border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom: none; } #mainwindow-statusbar { background-image:url(images/transp.png); border:none; } #statusbar-ip-label { color:*USER-TEXT-COLOR*; padding-right: 5px; } /*NavigationBar*/ #navigationbar { qproperty-layoutMargin: 2; qproperty-layoutSpacing: 3; } #navigationbar QSplitter::handle { background-color:transparent; } #navigation-button-back { qproperty-icon: url(images/navigation-back.png); } #navigation-button-next { qproperty-icon: url(images/navigation-forward.png); } #navigation-button-stop { qproperty-icon: url(images/navigation-stop.png); } #navigation-button-reload { qproperty-icon: url(images/navigation-reload.png); } #navigation-button-home { qproperty-icon: url(images/navigation-home.png); } #navigation-button-addtab { qproperty-icon: url(images/navigation-addtab.png); } #navigation-button-supermenu { qproperty-icon: url(images/navigation-supmenu.png); } /*TabWidget*/ #tabbar::tab { max-height: 28px; } #tabwidget-button-opentabs { qproperty-icon: url(images/tabs-list-button.png); qproperty-fixedsize: 20px 27px; } #tabwidget-button-addtab { qproperty-icon: url(images/navigation-addtab.png); qproperty-fixedsize: 25px 27px; } #tabbar::scroller { width: 0px; } #tabbar-button-right { qproperty-icon: url(images/tab-right-arrow.png); qproperty-fixedsize: 15px 25px; } #tabbar-button-left { qproperty-icon: url(images/tab-left-arrow.png); qproperty-fixedsize: 15px 25px; } #tabwidget-button-opentabs::menu-indicator { background: url(images/transp.png); } /*IconProvider*/ IconProvider { qproperty-bookmarkIcon: url(images/star.png); } /*LocationBar*/ #locationbar { background: transparent; border-image: url(images/lineedit-bg.png); border-width: 4px; color:black; padding-right: -2px; padding-left: -2px; padding-top: -2px; padding-bottom: -2px; qproperty-fixedheight: 25; qproperty-leftMargin: 35; } #locationbar-bookmarkicon { margin-bottom: 2px; qproperty-pixmap: url(images/starg.png); } #locationbar-bookmarkicon[bookmarked="true"] { qproperty-pixmap: url(images/star.png); } #locationbar-siteicon { border-image: url(images/siteicon-bg.png); margin-left:2px; qproperty-fixedsize:35px 25px; } #locationbar-siteicon[secured="true"] { border-image: url(images/siteicon-bg-secure.png); } #locationbar-rss-icon { margin-bottom:2px; qproperty-pixmap: url(images/rss.png); } #locationbar-goicon { margin-bottom:2px; qproperty-pixmap: url(images/gotoaddress.png); } #locationbar-down-icon { qproperty-pixmap: url(images/arrow-down.gif); } #locationbar-autofillicon { qproperty-pixmap: url(images/key.png); } /*WebSearchBar*/ #websearchbar { background: transparent; border-image: url(images/lineedit-bg.png); border-width: 4px; color:black; padding-right: -2px; padding-top: -2px; padding-bottom: -2px; qproperty-fixedheight: 25; qproperty-leftMargin: 34; } #websearchbar-searchbutton { /* margin-bottom:2px; */ margin-left: 2px; qproperty-pixmap: url(images/search.png); } #websearchbar-searchprovider-comobobox { border-image: url(images/siteicon-bg.png); padding-left:-6px; margin-left:2px; qproperty-fixedsize: 35px 25px; } #websearchbar-searchprovider-comobobox::menu-indicator { background-image: url(images/arrow-down.gif); background-repeat: no-repeat; } /*BookmarksToolbar*/ #bookmarksbar QToolButton { border-image: url(images/transp.png); border-width: 0px; height: 15px; } #bookmarksbar QToolButton::menu-indicator { background: url(images/transp.png); } /*SideBar*/ #sidebar { background: transparent; } #sidebar-splitter::handle { background-color:transparent; } /*SourceViewer*/ #sourceviewer-textedit { border:none; } /*SourceViewerSearch*/ SourceViewerSearch #lineEdit[notfound="true"] { background:#ff6666; } /*SearchToolbar*/ SearchToolBar #lineEdit[notfound="true"] { background:#ff6666; } /*Click2Flash*/ #click2flash-frame { border: 1px solid #e8e8e8; } #click2flash-toolbutton { background: url(images/flash.png) no-repeat; background-position: center; border: none; } #click2flash-toolbutton:hover { background: url(images/flashstart.png) no-repeat; background-position: center; border:none; } /*RSSManager*/ #rssmanager-frame { background: white; } RSSManager QTabBar::tab { max-width:100px; } /*AboutDialog*/ AboutDialog #label { background:white; } AboutDialog #textBrowser { border:none; margin-top: -2px; /* Workarounding rounded border on KDE */ } /*DesktopNotification*/ DesktopNotification { background: transparent; } DesktopNotification #frame { border: 2px solid darkblue; border-radius: 20px; background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0 #e4ecf1, stop:1 #d3e5f1); } DesktopNotification #heading { font: bold; font-size: 13pt; } /*BrowsingLibrary*/ BrowsingLibrary #tabs { qproperty-bgPixmap: url(images/library-bg-left.png); } BrowsingLibrary #frame { background: url(images/library-bg-top.png) no-repeat; } BrowsingLibrary #frame_2 { background: url(images/library-bg-top-right.png); } BrowsingLibrary #searchLine { background: transparent; border-image: url(images/lineedit-bg.png); border-width:4; color:black; } /*Downloads*/ DownloadItem #fileName { font-size: 13pt; } DownloadManager #list { border: none; } /*JavaScript Dialogs*/ #jsFrame { background: url(images/semi-transp.png); } QFrame[js-frame="true"] { border: 1px solid black; border-bottom: 0px; background-color: white; } QFrame[js-frame2="true"] { border: 1px solid black; border-top: 0px; background-color: #f3f3f3; } qupzilla-1.6.0/bin/themes/default/rtl.css000066400000000000000000000002461226107126500203570ustar00rootroot00000000000000#navigation-button-next { qproperty-icon: url(images/navigation-back.png); } #navigation-button-back { qproperty-icon: url(images/navigation-forward.png); } qupzilla-1.6.0/bin/themes/default/theme.info000066400000000000000000000002371226107126500210230ustar00rootroot00000000000000Name: Old Default Author: nowrep Short Description: Old standard theme Long Description: This theme was the only theme available in QupZilla until 1.0.0-beta4 qupzilla-1.6.0/bin/themes/default/theme.png000066400000000000000000000051721226107126500206570ustar00rootroot00000000000000PNG  IHDR szzsBIT|d pHYs   IDATُdYm9UUMg%cDZ[[ᆋ(7HHH!m@.a l%XD$N'ٗ:}/#oʳ~s<K15"`'hJ&=9),I 9@M|K(qMFF #b: scRhΤhc@ PPAcDCwA[pEA@3bAĠ l&g 1,Sf5$T@!#( "*b-=3};ńrDSBDЬbNx#gf<^K~ppGR 9c0Α85FK{r`-xǥS/:+x}w[3^YkV(RFt0΁)r@ ,}b1rIbK;lJW\QYRc0y_18GDy}k̹Q,zGm@Uќ1ȺH^yvTЪ5AkA#!CYcմ6_x$ K|ΊOT3)FRJĔММH)SlH1G=! bж9:(ciK*2Fq9SF3 )(6Txa Õ3XbaY3Ӛw_YǻV `:T3\qul+V}O:D"9'b|1wv%mz^e.hO6x/4 v. 9Oܑ/qR8 BN}@4#^|8PV%#-|pkqܟMF%u,TUQe{r/9~gUyķO^ QPK;N7g1gJNS.\( Å`&)'TFKlDN8_hj sEjf$Je-% sbZ bCYVNr290瓭v*+=7V )fnO/ivf|4N+˄`nk ;Ո+AQWU8?"߲:&j#L60QW(r %eNvJfw)޽sxsN|9;wc9{4AU 7BV!`Dx~ gر-A:>7WtY?ڞb6cstD\}Ʌ4f^H DDbٳ ƢGa`sljU5| jМYLYb))E֌IQp1U>S{jg"^ msoK-WX>MǢpm{[ҍ*F)XK")&\n!eEl48.wKW^Vgʀ t@6 [cR۰Ls`o?<<ܸ"#UUΎ*N5r+ mT4e&lNMpG,n$?2c2/ޣ3mMHI0$'4+ND0! R@_z|&W(6#{,9eb[=z6?n,9< #Wȗ߽ob?֡i*.PU/vv  @xoc9wbPWMwLZcӜRxz~N\? ^}"*p:㧇޳ml U" ͆ f϶pfmqtPUdk}OLc-YQrbYo>c-bᚎYXeE8ĈĮc050lL!SOƄ"(; `ErƆ [(13ylJZbyOk19QVl( Oā2@Er&=b۠-:%[8"cp5b+nT4@rw7YjtU@IENDB`qupzilla-1.6.0/bin/themes/default/windows.css000066400000000000000000000001031226107126500212400ustar00rootroot00000000000000/*Downloads*/ DownloadItem #progressBar { border: 1px solid; } qupzilla-1.6.0/bin/themes/linux/000077500000000000000000000000001226107126500165555ustar00rootroot00000000000000qupzilla-1.6.0/bin/themes/linux/images/000077500000000000000000000000001226107126500200225ustar00rootroot00000000000000qupzilla-1.6.0/bin/themes/linux/images/edit-find.png000066400000000000000000000007331226107126500223760ustar00rootroot00000000000000PNG  IHDR7sBITUF pHYs B(xtEXtSoftwarewww.inkscape.org<ZIDAT(Sc|+W/* 忌^ AƇwY81**u, )7caW$W3\GX_mޫ1rGq/PĸYe-bKE(P^3~"3K#H61ls/SXB-+´yMk{f)ρP-y 1ÌG2,e/Sm_ŔbNĒ  [DC|5A[z0amH L2;ð>$Lh`he]_] d_Dioat T?3 b IENDB`qupzilla-1.6.0/bin/themes/linux/images/flash.png000066400000000000000000000064501226107126500216320ustar00rootroot00000000000000PNG  IHDR00WgAMA7tEXtSoftwareAdobe ImageReadyqe< IDATh޽ZilT>f]Foߦf CЎ0? =)E$(Ɗ 3f4@Ҍ2F0s)zyD+Lo`ea+i7ijxHO6eO#]]]J޽KǎSZP&d>^gc3tRaH^L&'NH>Z(''G"q\6cBPSgΝG*a@0bR&&[T pp=`ǂJJX@"v`gB'0~:?x&OL#GTೳxx,1.y?ƛ6:@]Χ2.Jf5M~&N|hgAi@WT_LȽnR] t7 yfs+qRCnv`&áp;{;XTm4, \7dĻu?=YO"Ow*hzxPZKNx74 GPٻŁ]5A  `W\utFz DYd$sbwB?+\^ߒɟx] )> |.xH&Pi73_3{NF{m}4A>HNu=`vc|S'Z@]xQ"{-t"GF1*_TɶzXa/OvDL֭[zQHx!z饗Н-l&,tN;<}b#>; O k ;D㙍t$ц( ;w] nkq`8֣;͛GS*iKAjrx>^o< 7€OYf.kn%ܕ6 +Jз3`5xut:6mR)Ʋl3hB iӦN&Z:xie9rD 悖5ɫ:﻽.̙3c|ELGCz)=ʜp{졋/>2pl߾84&ߦ=}hWVVҔ)ST-g\#߿N8ށ1_ꈉ#&q<ƞϡGI&iѪ7J "I̥K͛E`iLx-&*,:CG3 #*yzJ?k?f՘P5EKc~f#r;O 0>Ek}1[gg #3=>a@s,3}nàsDuiIENDB`qupzilla-1.6.0/bin/themes/linux/images/flashstart.png000066400000000000000000000037151226107126500227110ustar00rootroot00000000000000PNG  IHDR00 1 sBITUF pHYs11(RtEXtSoftwarewww.inkscape.org<LIDATX[l]G{s D!6 Ԧj'R*Tȥj^ZN ")$ZD#T\,_Vxcq=,Zkg(ar~jSXdE5DžV7#8##QT,#7>g h Al0&']c^F-&c" BJJLLDDL"%@ (`^L,JؠЧINZ Ѭsަ@+7%xbJLD|2Etdv$DĬs7)SEjIqblAR"l(hMBH@x(SّǃrQ |OSeU\\2S% s5+UK Ds fI6 3ypЁZVXj#+aX-z/OCXMJBLL&˜^0i (+ :(Ii &EX?p]&4XeCA1l˼HmDs?M gO>i=7%m#޵.oq7m-* Iѽz܆=r']b]<:-fl|&$$&A?ȽR|쵥o 13^kRKc-PG9D@Fr H$D R%,= y)~ {x"&"!%ܷKK]HhK%^7HDHDL>j-oAr.Ą|<|9Vw"BBBn?o> $&E84L jB.}.oplZ2W[͗`C"?Yⲇ 1))ߑ)"%BDJ3'rZOjش4Cgq O;_@F) p{w$XMB2#}ץpnw4e]^ D+C*.68 IC@:Ϙ Rp\<0E!ɓQV_7͗%H*I*- /Zb0<}q&X&򲤍z |NWpHڜ#$I~Τ$ (#}?I@4,Wk(!RѼ{ tR%ȝs{q?N ˵Za~oyQ=REQ=AE}gh"8/w<W*{˰K,)2:pw =w}ըܨZ7&pv;30/8a~Mݦ>YMo?.n- f%tEXtdate:create2011-11-14T13:29:27+01:007F%tEXtdate:modify2011-11-14T13:29:27+01:00FLtEXtSoftwarewww.inkscape.org<IENDB`qupzilla-1.6.0/bin/themes/linux/images/go-next.png000066400000000000000000000011531226107126500221110ustar00rootroot00000000000000PNG  IHDRw=bKGDԂ pHYs oy vpAgxLoIDATH픿JPW[.,ClI Rp`}@'f|UťJ Z(qЩz)i{Kpsf7#" /"$)M:k4$HjmL%"h5Y1+9!x s`U!"bx gF<~\~$:ήRjl$Wi#ʉHβv})"o:D L&ӫT*IZ`vj^ nǤsV \ D$0 F|)(}B4oi[M/%tEXtdate:create2011-11-14T13:29:38+01:00 #6%tEXtdate:modify2011-11-14T13:29:38+01:00|~;tEXtSoftwarewww.inkscape.org<IENDB`qupzilla-1.6.0/bin/themes/linux/images/gotoaddress.png000066400000000000000000000011441226107126500230460ustar00rootroot00000000000000PNG  IHDRa+IDAT8AKQsdTi9`*-\9@ h"l^!ZԸ/Rr\DH48:}TJ ٿ{GdZDQ},cg(tԈune\NOo_=>i} a$|/X-i"yĐuMsgo=" D/zF KgW7CQc{6 FxJmvL[ڦҙl6zb5Fي:|[Lr萋t&;yQA #PEkg(V"JuK@㣈XCyӳa!p 604ttPZQl1sJ2PYyqj:JP1b fKGq  y|ËKl @Q"QUZBʧ9co}F+ d |ϳYc\N{zhXHq˗s ~>Vh40 H$Պx0`0أўFRDT*tZ쳳eU6ŭV rā@p1Lp*ziX,Hry qbs\zq\dOSd8]Ef}DiR^_XT*|>GgXܐoD;#XؒΎ(&FyP(s̵F9r\VY< LΜ} Xd26 x>+q$ T,Vl6{ "ZޖH$(KvEDbA?Xcx?dy@e{Af|Bh~CiCjDlEmFnGpHqIrJsKuKvLwMyNzO{P|Q~RRSTUVWXYZZ[\]^_`abbcdefghiijklǛڪIDATx1 ,g 'x<x<x<x<x<x<x<x<x<x<x<x<x<x<x<x<)ǘ4|IENDB`qupzilla-1.6.0/bin/themes/linux/images/library-bg-top-right.png000066400000000000000000000003201226107126500244700ustar00rootroot00000000000000PNG  IHDRrosRGBbKGD pHYs  tIME 1\"$PIDAT(cTrguk`<{"(vea.6zO8\F/R $٥cE&iIENDB`qupzilla-1.6.0/bin/themes/linux/images/library-bg-top.png000066400000000000000000000005071226107126500233640ustar00rootroot00000000000000PNG  IHDRGVsRGBIDATXݖ 0 @m 0[+pfNR͵ PI(9S/v ܟ.e# ~l|a_I00`g9DZVd[+ s‘ׁ*AWԠV[,d+캯tqY}nHW`u`f//&(4;*jۢ{-/M(/&-+ݒ0[7{..Lot!IENDB`qupzilla-1.6.0/bin/themes/linux/images/library-search-bg.png000066400000000000000000000010711226107126500240240ustar00rootroot00000000000000PNG  IHDRun8sRGBbKGDC pHYs  tIME r`IDATh?N0?IUrڥ3!8DwN g53U D8M~R(v"lno/01 |BxއTJڿ1Ya\.f3 !꟤ژ0t@,Gcp,Z.,Kk'"ŚďRJѻK$i&<)D QJBcb"Nd,Ic77;ʊ~`*XE+KXE4M98b1S7L* %SӠ/M&#,9%eY~ZNDO% yٖMM=%m\<Ѯ|}fYZ{ݮiߺuF#oO&8X7 ya$S5mۿޚB"c\ш`IENDB`qupzilla-1.6.0/bin/themes/linux/images/list-add.png000066400000000000000000000011071226107126500222300ustar00rootroot00000000000000PNG  IHDRw=bKGDԂ pHYs oy vpAgxLKIDATHUN@q(,X: $ ߄ B#XŖC]'1Yzng}v$oζ!s&I:4 ŏfzLS((%hSߜn#C過mE+H ʳwv ?v0VґbcI9ikI[+'Inى1k6T= |5% )Ijz}izec,{HX#ėk$76(S6(I{KvkAloI]%t;ڛ\%@Ǿ6 Z:we|7ա Oyֿ/%tEXtdate:create2011-11-14T13:30:18+01:00r%tEXtdate:modify2011-11-14T13:30:18+01:00}LtEXtSoftwarewww.inkscape.org<IENDB`qupzilla-1.6.0/bin/themes/linux/images/navigation-dropdown.png000066400000000000000000000010161226107126500245170ustar00rootroot00000000000000PNG  IHDR EbKGD pHYs  tIME 6P"IDAT8]1rAE_%R_K@/Aae 2=3;Mgg־}̰@W=tr1 6&X;( 1!2!2"%/!D-A+P3&'&  *, , %2 ""):$'-,2 03!4!6#5"C*:%?(?(D+I.L0L0N1ʗhtRNS "##%(*/3467@EIIIIIKMOOPQUXZZZ^abopxzs"bKGDo:IDAT(c`>``EfRUbBgHHcARYPX^XXˇeSTfgWTcW)8P]Ҹ4Y ʒ ivF kM[MMY ;ZM+7T?.NTݽ*D]8.&)P*'vjiTffliojqaȦ֜f U5܈ǻ#A`f B񝝝f pNJmr@ FDs`ӵvwcBNqy--yqNIv%tEXtdate:create2011-11-14T13:32:08+01:00S%tEXtdate:modify2011-11-14T13:32:08+01:00˟tEXtSoftwarewww.inkscape.org<IENDB`qupzilla-1.6.0/bin/themes/linux/images/rss.png000066400000000000000000000013371226107126500213430ustar00rootroot00000000000000PNG  IHDRatEXtSoftwareAdobe ImageReadyqe<IDATxڤRMHTQ>^' IgRcMA-.MD+-E Q- ۸hSeAPm`-7?M/ԧ{޾; {ss=L)E3X0 `b݄]h~8ɯ_H̽#)!ȟ8`ٝdN-{IofR a]jQ$81%&%;;`'9}FRzcot[ PCQ[|C>F&;S$a:Lʘ ė1""9D&F6bE:Z^H 8&5;A̝J5r8nwwYy`Qe$ٵi4"6 8@9Zr8*Bvhh̥SQ xLĶ%=y'!zEVz@Y  s `32Ivcdl7#k=*.{s"e炾杌ݲE.E.\$W@sV۱֔V5oFCy 3(b9¯GO{ f¦/Z4X/aV{9M% wIENDB`qupzilla-1.6.0/bin/themes/linux/images/semi-transp.png000066400000000000000000000002261226107126500227720ustar00rootroot00000000000000PNG  IHDRo&sRGBbKGD pHYs  tIME ٿ'IDATcd``e@L Xe_.kkU^%IENDB`qupzilla-1.6.0/bin/themes/linux/images/star-a.png000066400000000000000000000005471226107126500217250ustar00rootroot00000000000000PNG  IHDR extEXtSoftwareAdobe ImageReadyqe<]PLTEL@@@@@@@@@@@@@@@@+K~:W{Ibwhypwlie^¾ZWSPLdtRNS"3UcfwpuIDATAn0 0Z]2?rh kA 0FF!CDubǨ ZUkyV#s`v=<:(znףr*5W533IENDB`qupzilla-1.6.0/bin/themes/linux/images/star.png000066400000000000000000000005331226107126500215020ustar00rootroot00000000000000PNG  IHDR extEXtSoftwareAdobe ImageReadyqe<ZPLTE@@@@@@@@@@@@@@@@+M:YIfhwų2wtRNS"3Ucfw&kzIDATMC0/F)"_+3íMҀ'<GH <,-[šSfq.C M!=nSE ɼ\esQ|e>eq0Nb I8y?vV ̤rIENDB`qupzilla-1.6.0/bin/themes/linux/images/tab-left-arrow.png000066400000000000000000000003001226107126500233470ustar00rootroot00000000000000PNG  IHDR /3bKGD pHYs  tIME  !Q MIDATc` `g``.pA Y0?L Il300\b``&p sz@?InIENDB`qupzilla-1.6.0/bin/themes/linux/images/tab-right-arrow.png000066400000000000000000000002741226107126500235440ustar00rootroot00000000000000PNG  IHDR /3bKGD pHYs  tIME  5PCIIDAT׍̡ @D PTBN"i3r Xr);[lXyR{k81E[?"IENDB`qupzilla-1.6.0/bin/themes/linux/images/tabs-list-button.png000066400000000000000000000004541226107126500237460ustar00rootroot00000000000000PNG  IHDR ?sRGB pHYs  tIME !_XHPLTE'''333"""000///(((((((((ftRNS ,=vzhbKGD ֘>IDAT )JXn Jjq qO?8׷-`=o}NIENDB`qupzilla-1.6.0/bin/themes/linux/images/transp.png000066400000000000000000000002071226107126500220360ustar00rootroot00000000000000PNG  IHDR sRGB pHYs'TtIME$0bKGD) IDATc``OH IENDB`qupzilla-1.6.0/bin/themes/linux/images/view-refresh.png000066400000000000000000000012551226107126500231410ustar00rootroot00000000000000PNG  IHDRJ~s pHYs oy vpAgxLbKGD)IDATKqg_enhsKa%^4Xt(ċBȺ$Ĉ$c.<$#,;.P Щ۫!m}mMTO#a+9͒y! ւVEZgc<>}ӞÔ5aG+^ybЛ[.߂K<^Cp~371UuK q8 1]iZƃW֔[/O%zD0ZT)أj$~L5T2"[c)bX*!)@Ďݮ e۷-O2/ ;ig:uMDE"CP3S v^2AҲrZ\\\{0[+SH\"1T>':i,v}$T}4=ùL]7P܅ EFDi"\'He%`n#l@ED4L4[GV#Ptɔ†g \3=sg"7N)̜w4vthޭ>E2\k8lz1d=E1Ltg[H4!w/?6"E!srfmSxB!\m4N[K2ҩJۿ$ċD-Sx&bX,G"2EEEZ<;BqӧO%&GD$pSrkkVz|&k51*o2/nr{||\vܢ*.ȓr!pM@,,,ȶIFՍ11>wAF`֬L&1&uk@.}vܖ#sssvg "%%EBSzb9Zt؊ W \ )77728G<}x4-555JĂZR-05T]]Ml+"z 䢲:*--]\ Z|Νڒ`!%_]FC`5Vɹe'V2u}B{-^ֳy:SSS"sQ m~hr'B+ֺ]Ιs~ە2OCtaZy Xf0R 6h;6v/=U bI^nZ`u#"iq1Q=ვ†H WJ9't-nx^c EV*W(sJ~x\ܹ.5yeI5x=532THW2Ll([Vxw3bޘo`c~'ͨ$V8'~jo !ܸx[0 ͯ=Yf0]GJ<"`=t_UQ:˦v9`vfnG>cm BSg#-L |阽4Y;ଲuFzN /ʡ *)批o6jNWU)} F5D<QҤ9B7``X1ARPA,(&C",.Vt{!-kJQTfT*Y^n/\f]Foߦf CЎ0? =)E$(Ɗ 3f4@Ҍ2F0s)zyD+Lo`ea+i7ijxHO6eO#]]]J޽KǎSZP&d>^gc3tRaH^L&'NH>Z(''G"q\6cBPSgΝG*a@0bR&&[T pp=`ǂJJX@"v`gB'0~:?x&OL#GTೳxx,1.y?ƛ6:@]Χ2.Jf5M~&N|hgAi@WT_LȽnR] t7 yfs+qRCnv`&áp;{;XTm4, \7dĻu?=YO"Ow*hzxPZKNx74 GPٻŁ]5A  `W\utFz DYd$sbwB?+\^ߒɟx] )> |.xH&Pi73_3{NF{m}4A>HNu=`vc|S'Z@]xQ"{-t"GF1*_TɶzXa/OvDL֭[zQHx!z饗Н-l&,tN;<}b#>; O k ;D㙍t$ц( ;w] nkq`8֣;͛GS*iKAjrx>^o< 7€OYf.kn%ܕ6 +Jз3`5xut:6mR)Ʋl3hB iӦN&Z:xie9rD 悖5ɫ:﻽.̙3c|ELGCz)=ʜp{졋/>2pl߾84&ߦ=}hWVVҔ)ST-g\#߿N8ށ1_ꈉ#&q<ƞϡGI&iѪ7J "I̥K͛E`iLx-&*,:CG3 #*yzJ?k?f՘P5EKc~f#r;O 0>Ek}1[gg #3=>a@s,3}nàsDuiIENDB`qupzilla-1.6.0/bin/themes/mac/images/flashstart.png000066400000000000000000000037151226107126500223120ustar00rootroot00000000000000PNG  IHDR00 1 sBITUF pHYs11(RtEXtSoftwarewww.inkscape.org<LIDATX[l]G{s D!6 Ԧj'R*Tȥj^ZN ")$ZD#T\,_Vxcq=,Zkg(ar~jSXdE5DžV7#8##QT,#7>g h Al0&']c^F-&c" BJJLLDDL"%@ (`^L,JؠЧINZ Ѭsަ@+7%xbJLD|2Etdv$DĬs7)SEjIqblAR"l(hMBH@x(SّǃrQ |OSeU\\2S% s5+UK Ds fI6 3ypЁZVXj#+aX-z/OCXMJBLL&˜^0i (+ :(Ii &EX?p]&4XeCA1l˼HmDs?M gO>i=7%m#޵.oq7m-* Iѽz܆=r']b]<:-fl|&$$&A?ȽR|쵥o 13^kRKc-PG9D@Fr H$D R%,= y)~ {x"&"!%ܷKK]HhK%^7HDHDL>j-oAr.Ą|<|9Vw"BBBn?o> $&E84L jB.}.oplZ2W[͗`C"?Yⲇ 1))ߑ)"%BDJ3'rZOjش4Cgq O;_@F) p{w$XMB2#}ץpnw4e]^ i} a$|/X-i"yĐuMsgo=" D/zF KgW7CQc{6 FxJmvL[ڦҙl6zb5Fي:|[Lr萋t&;yQA #PEkg(V"JuK@㣈XCyӳa!p 604ttPZQl1sJ2PYyqj:JP1b fKGq  y|ËKl @Q"QUZBʧ9co}F+ d |ϳYc\N{zhXHq˗s ~>Vh40 H$Պx0`0أўFRDT*tZ쳳eU6ŭV rā@p1Lp*ziX,Hry qbs\zq\dOSd8]Ef}DiR^_XT*|>GgXܐoD;#XؒΎ(&FyP(s̵F9r\VY< LΜ} Xd26 x>+q$ T,Vl6{ "ZޖH$(KvEDbA?Xcx?dy@e{Af|Bh~CiCjDlEmFnGpHqIrJsKuKvLwMyNzO{P|Q~RRSTUVWXYZZ[\]^_`abbcdefghiijklǛڪIDATx1 ,g 'x<x<x<x<x<x<x<x<x<x<x<x<x<x<x<x<)ǘ4|IENDB`qupzilla-1.6.0/bin/themes/mac/images/library-bg-top-right.png000066400000000000000000000003201226107126500240710ustar00rootroot00000000000000PNG  IHDRrosRGBbKGD pHYs  tIME 1\"$PIDAT(cTrguk`<{"(vea.6zO8\F/R $٥cE&iIENDB`qupzilla-1.6.0/bin/themes/mac/images/library-bg-top.png000066400000000000000000000005071226107126500227650ustar00rootroot00000000000000PNG  IHDRGVsRGBIDATXݖ 0 @m 0[+pfNR͵ PI(9S/v ܟ.e# ~l|a_I00`g9DZVd[+ s‘ׁ*AWԠV[,d+캯tqY}nHW`u`f//&(4;*jۢ{-/M(/&-+ݒ0[7{..Lot!IENDB`qupzilla-1.6.0/bin/themes/mac/images/library-search-bg.png000066400000000000000000000010711226107126500234250ustar00rootroot00000000000000PNG  IHDRun8sRGBbKGDC pHYs  tIME r`IDATh?N0?IUrڥ3!8DwN g53U D8M~R(v"lno/01 |BxއTJڿ1Ya\.f3 !꟤ژ0t@,Gcp,Z.,Kk'"ŚďRJѻK$i&<)D QJBcb"Nd,Ic77;ʊ~`*XE+KXE4M98b1S7L* %SӠ/M&#,9%eY~ZNDO% yٖMM=%m\<Ѯ|}fYZ{ݮiߺuF#oO&8X7 ya$S5mۿޚB"c\ш`IENDB`qupzilla-1.6.0/bin/themes/mac/images/lineedit-bg.png000066400000000000000000000004161226107126500223150ustar00rootroot00000000000000PNG  IHDR4D@lssRGBIDATXرi@PG "58* t"` A@h\=e/%3Ҷ\TLso&0s.W ˲+!yc֠}3#}STUd :ow9c/@2 d @9Ssb.])@O,?Uf'3pL^IENDB`qupzilla-1.6.0/bin/themes/mac/images/navigation-addtab.png000066400000000000000000000042041226107126500235050ustar00rootroot00000000000000PNG  IHDR$\x߿sRGB>IDATX՘]LTgυML21mII8nOA je" t.VA(*5] .պPV]@f3G8g^lvfxs\{WDE;ola (w7mۼHz6KQr^cszN.QM&f_nςnulZ,z%~,r7.O%3:Xl|of6 P9#GQE7Q߅rw"L0@Tv & na[E>214ʈ'*p\%.(J[qc9.3.,g$7Q>|_wsg 1++Xn7VXt77IoB4a`D&!x?>&qO⏲,#q#I%n)- \c+X6ӀB0;e W\K6 Wri ';+A#4$|/@#s[ !* *Bo%狎6,;2.LC?gA[=c;zkǛ]l_j́i4o0; rOآN D9"Рy&yh)wR4: ]Hbw`$b,Q6󊷳ͨC&trPoWrQeQHj l8"΢BRAP-Ԍj|fjQ0QBA/yK֣ -SX?C[n89J+GYO.MpT.|$]D gO;(`kY7>7kXD g0#SaXZֲc%è^ C<˜l5&BB2(,XƲi?emB6MŤp] Oy>ґf~-?AtL߬F>ttˬ &E4[̎/EEDהi*D}Q1a-Z$N񄸦ت+|%b[|M;6WhJ"}Ū;; ʩ u NqTP ;VwherԬTqI"g]+G#]ӎdNΪإi:ʖY l("t;l-dobt\#|BGeo:@6sPnȒGݒu9R5%dvQHTi,E+#%5W`  ˌIENDB`qupzilla-1.6.0/bin/themes/mac/images/navigation-back.png000066400000000000000000000027631226107126500231760ustar00rootroot00000000000000PNG  IHDR#\NsRGBIDATXݘ[Lgst+mTRjҒVPԶIiJŚhQCjTcRmк&C%ihiKb|KK- E. r>.̋8owsVųZX[X(ѬQVhqG0DHjffn!LqaU0qrE<_&,|,וzB͍׏I1kX 8MNšLW&Td7p6 ~CʼnF?ߙcVJN.3wG)ṡ훒IF5|k)3cTnQ-7|R2…h4Sg uE1d41>[՝n2MRE_y]`X\Yje`؎r^f;NبZ쓘ז˒[齮Δ c|*/B /0k5agKzdfzf.;7Uv\Xk/n ֌LQ\XUnNJaۢF@rOș-/[ *2jaà & 7Ǥpfps(H#9cU2) %0Yܾ+Y779MsSm^<ê4sssq.qc=>&G!0*=C_o7۳z~v1;Ǖ;asxƈ}Sx%ǭB< !1ϗufIS#W=1+<!l b3 9*Ġ(E"8"F`Af03!b( 0H7|nIb2*B 0@AZ^ )Ȧβuԓ~ Za[ѩb:QZ d&a!-]T;t#E!ǹC-m(8cw%b8Fa8EaFWHB 8}i! ZS.&&'RȡbйC!3]H‰6&7‡W@({%*8Q=f鈬kt-`İw1 sR@zZu0e#yɱ`>=N`g9fG}V^ɿܦ ?cQ̵:h`9sn6P*sw0mկfi*:Zh^|H{D;\If?gQVIENDB`qupzilla-1.6.0/bin/themes/mac/images/navigation-dropdown.png000066400000000000000000000003351226107126500241230ustar00rootroot00000000000000PNG  IHDR sBIT|d pHYs+IDAT1 P s'BqյSOtւ .]Yx _ "U8рz|IJzY 0 t :KZ6``BB&PB|V¥P.(.Pnae;{iggw ;Vl\au,>K6g&`I/*"1F ^YeE(V%7O"<@ojim|}`1Ȇx&dsCn^Yu;oc-3l< oH}w'dsC;D, ~d-^ ;~Um2D2A8S+rƟ Gd7YM <`w_>`w pv|9)ALL~ě̆+a~ 6d[l<"'-L, cDѢ&)(x$ [~JFdfS>syȆ,o~#z 0;L7S1@ې~ ܐk `ZoںIENDB`qupzilla-1.6.0/bin/themes/mac/images/navigation-home.png000066400000000000000000000042241226107126500232200ustar00rootroot00000000000000PNG  IHDR$\x߿sRGBNIDATX՘Oic41$djfK#EA @ ̈AR(* pAgэP Y0]̺M%Ж-/r)><_>##O^6Q6E>/c}Eܳn^Tyk bkB[7OfqT~^͂~D[f({ /%/!ʾvMd@+b4jQ?vvH ;+f6_ȅZg?Oe" T"!T?ZgBAQYnN*VAsS!YvdJXJ/+b%e#h_恄V>#+Pgʤo})D羈%m||'DM垈&j8i")h~ੵz93߱faPΤ2pS:XjVJR'rJ܃%51Qqŵ%bŘ(f̘+͘9QL=l'3Ғo9w0% \1`vƈ- 졀Pv䐎A&bM n=&Gq!#Ip'u,yUtdpV|tBtYi+&3]q$%s$ uT?xE'5+LOG,iVqc(H -4RK-G=:*;S4ф,T2,}EGp4x7VLGG%=:Έ#H=:⡈Q"jgQI~ȣ2cP!*7=::ˀ,eTSq9N5Ք)$zt_rD%q{QI%&~ݲSNMOGŔQFS诣 ,өG)̒nJIHS4cTґޝ쵥?V,ѿ{s@IENDB`qupzilla-1.6.0/bin/themes/mac/images/navigation-reload.png000066400000000000000000000046421226107126500235420ustar00rootroot00000000000000PNG  IHDR$\x߿sRGB \IDATX՘OTiĤOMĖk@ G) :T@ /@E,\hhͲT9VH$IEעfҩhG3t]t,{ktfEYq!#{2gzh39ϼp-w5޴;lMLcsk>00@nXGmihM>%פb}j" Ҏ"P~n (uUz{'{d{U(mUO L'VG!ycQ(Aœl UoEG!E<2EADS<T!$/VNHx/RSF=XRo-,@;ޔ3#&)/f Poۯ *۸=ߨ|'׉n&x(c'd|d2db:. /|&z4'xx ` #)j؀'wQ!jRmaBN<ȷ[3r[`z<]&26+AvLtҤ"=; 2d+2"KޣpBA{*odS'.d%+qoHG{ I*4łbe`LX}h#g7g)&疰#rf*7&bF44W 1#q76ɔc)'Y{:bc56ml6y#bK!M/ _Qz(\YOB:ڈDa+$5AQfRsQ~J8l"{"詡/hTM4F#FꨦψcluH)Sv8I kXb8%2YɗF CK" QFQK3ip \;.X߶rF h'ֳ}Ts\g;p'ssEG7iY(g>[7-:"(',E\2NOZ =hriYi#, -: 7:78Ms.PN&{WЅl%|NG%tH'\|-Bfꨈvtr{8@_qNY2E(rf 7ܠSV)בԠYHG*s*zmK[ѓ\G WN'IENDB`qupzilla-1.6.0/bin/themes/mac/images/navigation-stop.png000066400000000000000000000044271226107126500232620ustar00rootroot00000000000000PNG  IHDR$\x߿sRGBIDATX՘]LWi^5um]#ԏF] :00PeQb"tA8 "CET5vd:嫭NM}bcf85/8ҕSkwu:8K:X~{3~{Ik`gs s;}/Ir+굨ns-1E 1h>J(eMQC֯"MF"_t1ʯ`44]:xCcg~%?S1#ɳ?H'ڭB~ԏ Ȕ$I=W4vF& d!(ZzRKA,!*%dH-@Eo)9~d,%o$0ĿٛķKGC<dU,]e I}$2&AV (gdBA`R}1w dQ7,%" + &EܖI6l F- $ 2u|+0<4vYx8$X],ib%!A2 } >$=QlEaeS/ٞuĜر<q&رx&Nn^NNYЈdyW`0{حf4-v8B}%J0 O 䰋|>ʐL[GVۢ v(G1lQdQNrܚ!Q]ǜ$llíjzm죀;q}lsd[G{oI%|nc!6av[GѮVG䠧tE7ГC Jv {( ̔rG驣B)U,TTŎY!bHGb*HHr*D?s1oMTIENDB`qupzilla-1.6.0/bin/themes/mac/images/navigation-supermenu.png000066400000000000000000000052051226107126500243130ustar00rootroot00000000000000PNG  IHDR*\/f׵gAMA7tEXtSoftwareAdobe ImageReadyqe<PLTELLL^^^EEEOOO׳JJJ???󻻻:::555MMMIII訨VVVyyyNNNߊ&&&___zzzlll裏DDD\\\TTT000ssswwwGGG """|||QQQ⏏UUUXXXppp]]]AAAkkkYYYeee>>>hhh///<<",f%If]Bw"` Rt\ [@YNfs=Dz[nV0f3W77qtu+0H2J$  'ba^. Vqw­s%vw-9w dBB PY{2~ɒ\yy\ zsMhl4L2R!b}%I[SSbG[REIr"$D (7P%9DŬ6o'-m2)F崵EFQuڣ kk5ۻ#Ǣ|px4NgagظQíGb4ݣZmh7,b]!Slݼo */~e[H Ӗ_9(.OfБH??os_64WVab8Ln?C߱掟Úԗb^Ķ-|a kx/@mA4 r>o7?37FϾFOy͒gv^=tdvv1O#3DsV5C9س?{v^"gp.]0+6PfI4Y﷼.%b/=FuQ-{jeHuzѠhohF5Jh׆(xKܶm۶5EGGӷcMQ$):,%mW@;7$m4Sq6ɴp)Rnw5+y_<\[&DSZ 8pTwsQH3|R}9s lOu.Q'C~ aI 9k<00={Ƴ6R06&E\n >Zt(ؽ+2&MVk̸8ju4[ҍ$i۽%L*=@׷{*6gt`rs k=t`2Cd(5Nw#NnPPJpy U3\44'`IDAT[][ ( @ϩ"8?4]& <sVP*jCz%ߪ\p4%sp :x;F`IENDB`qupzilla-1.6.0/bin/themes/mac/images/searchbar-provider-bg.png000066400000000000000000000024771226107126500243130ustar00rootroot00000000000000PNG  IHDR*}'(gAMA7tEXtSoftwareAdobe ImageReadyqe<IDATxWIK$IBӮ*qiwTDZ= >xO}Mo =EA= *jYEfed-va2#3^D|)fgg%Ҵx<5xVVVp8\XɃB`ww===Dmm-UFrQZVhvv61??"LOOU=xww_;jP(077~M BR;_UGJ}(5='CmKVz$DT{{{9셅e K)! 1rxw~rLvXKJсR!::uG8 ^#;$hSXہCYJT'*k,n͸QlN3ت:+,?s{^cv xs][*y"RKU/"s__9oI:tdc|*3ų>EKKK\9ZZ~㣖鿩L 10Wo))"(Ifww7R< 󛉲EIi |eL /z.'%,]Hvt,Ws d"\㮦?g<;;cnhh`E)_#azWmfIENDB`qupzilla-1.6.0/bin/themes/mac/images/semi-transp.png000066400000000000000000000002261226107126500223730ustar00rootroot00000000000000PNG  IHDRo&sRGBbKGD pHYs  tIME ٿ'IDATcd``e@L Xe_.kkU^%IENDB`qupzilla-1.6.0/bin/themes/mac/images/siteicon-bg.png000066400000000000000000000024421226107126500223360ustar00rootroot00000000000000PNG  IHDR*}'(gAMA7tEXtSoftwareAdobe ImageReadyqe<IDATxWK$GJgvǺ3oEōFq=[. -[?F֋(D0a" QAEh鞩W]=]3@LU^%Z.&qeeD1ZǰփO EQ^,FA͜ΆbR~ߕU(DH["\Fk_fRR ?"ud2UOLxq8mN8|IY[RQׇ-Jc_x-B̽d*%L,[o3TT*.(;kв-JYuYgߦ<ƜoKsb۝e٪dQ4O%+|݄[ηc'0XV4d1344$8Ȋu?8@v`O2S L)RAD* 3e,Q2OQ洶6R)ysquoQU.3Le in^USL[T@DrMr0~ŗ;})vwwc``@ f-sm-oAIENDB`qupzilla-1.6.0/bin/themes/mac/images/siteicon-secure-bg.png000066400000000000000000000017371226107126500236300ustar00rootroot00000000000000PNG  IHDR*}'(gAMA7tEXtSoftwareAdobe ImageReadyqe<qIDATxėKhan61$mL6M}zPѓXAO^7Ao"z*'A<)=i-BФU4]4;?fόchhs8uEjrV[$rll \'OًJ'd x=1W/r{GhjjTUUsS+>@.C70W;duN&S;n;TQ ¥c8|tXTV,KB㏖Gp`oK{6 $ȧ!YZp$md;ԝo1gSKͤ`f'L7CUS4%达,$Mv ^eB z#h%7K}FG|>;Xݙ 9b4f6/BI07Ta4y>=iʏFSAdP(l[XbG-5fDG;BMIENDB`qupzilla-1.6.0/bin/themes/mac/images/splitter.png000066400000000000000000000002151226107126500217750ustar00rootroot00000000000000PNG  IHDRȤPtEXtSoftwareAdobe ImageReadyqe</IDATc``B T77 Ơ$5X6Xn b?Ρ XIENDB`qupzilla-1.6.0/bin/themes/mac/images/star-a.png000066400000000000000000000011641226107126500213220ustar00rootroot00000000000000PNG  IHDR(-SsBITO pHYs  5PLTEeueueueueueueueueueueu5R5S:X;Z@`AZE_EfFbJhJmNrSzU{ViWtW~XkYmZ|Z]u]]^p^_`z`auayaabctcycdudddeueefffffg~ghhiiiijjkkllmmmoopqqqrsssttuuuvwxyz{0ᬁ tRNS?_oiB=IDATWc`.Nbg˂"˅1-+45%c6wOLJ0`c0t4R6e`q p2`m 2@GMYFRb (̵"` 0>SIWHNNG ,,%(!+( 039L4i]?IENDB`qupzilla-1.6.0/bin/themes/mac/images/star.png000066400000000000000000000010541226107126500211020ustar00rootroot00000000000000PNG  IHDR(-SsBITO pHYs  PLTE2Fd 5Cc_03%?+FNnkWzYxYydkmԀi 3Ji/H/HXb'B*E5POq6Q>\Vt]%;%;*D+ETqdgjs#87SEdKoNtSuV}o惰$>'>)B)C)C)C+F+F,E,F,F0ISxV{[^ahjpppstH*;4tRNS//??????_______oBFɶIDATBg MPh;u }OidO B69rf\+{[430 p730lUuZq0(ZVs\.B ^I$*o/1/ϣU|$onIENDB`qupzilla-1.6.0/bin/themes/mac/images/tab-left-arrow.png000066400000000000000000000003001226107126500227500ustar00rootroot00000000000000PNG  IHDR /3bKGD pHYs  tIME  !Q MIDATc` `g``.pA Y0?L Il300\b``&p sz@?InIENDB`qupzilla-1.6.0/bin/themes/mac/images/tab-right-arrow.png000066400000000000000000000002741226107126500231450ustar00rootroot00000000000000PNG  IHDR /3bKGD pHYs  tIME  5PCIIDAT׍̡ @D PTBN"i3r Xr);[lXyR{k81E[?"IENDB`qupzilla-1.6.0/bin/themes/mac/images/tabbar-addtab.png000066400000000000000000000005361226107126500226050ustar00rootroot00000000000000PNG  IHDRlCR sRGB pHYs  tIME8,1KPLTE***///111222333444555888999;;;<<<===>>>???AAABBBDDDEEEFFFGGGJJJY9 tRNS@fbKGDiIDATH@0KږUJzpNf&Oc(Lr027U1.qftr*qAWh*+59޵LJ9I3U 6 HiIENDB`qupzilla-1.6.0/bin/themes/mac/images/tabs-bg.png000066400000000000000000000002311226107126500214440ustar00rootroot00000000000000PNG  IHDR sRGB pHYs  >IDAT׍A r$T4@gOs";5\@FA?[k!{IENDB`qupzilla-1.6.0/bin/themes/mac/images/tabs-list-button.png000066400000000000000000000004641226107126500233500ustar00rootroot00000000000000PNG  IHDRlt1IDAThֱj@1ԥcξc>F_J>/P(8t]CrGB.݅HW{ (1p̛n6 X"ZϜXٮ<:*~ˤzW$Ph n0eI VGzuj~B=p xw0-ۭ́KYxs[)W7$Fb#X$#Hl$6K$It1?qTIENDB`qupzilla-1.6.0/bin/themes/mac/images/tabs-list-button_rtl.png000066400000000000000000000004661226107126500242330ustar00rootroot00000000000000PNG  IHDRlt1IDAThֿNP?D#+ 8y^n& 3w@\ Tτ=ј痜i4/H l-PMyPc`ܶ' U. }D6E29zFcfe>5H֣P ;nj}šA*`MˍRB5p5l8^dأ+p Lh㽶?3`O-ztK`g<%ٮ?$Hl$6Ē$Fb#X$I_{xTpIENDB`qupzilla-1.6.0/bin/themes/mac/images/toolbar-bg.png000066400000000000000000000002511226107126500221570ustar00rootroot00000000000000PNG  IHDRgsRGBtEXtCommentCreated with GIMPW>IDATccaccCp&$HQl9w{MIENDB`qupzilla-1.6.0/bin/themes/mac/images/transp.png000066400000000000000000000002071226107126500214370ustar00rootroot00000000000000PNG  IHDR sRGB pHYs'TtIME$0bKGD) IDATc``OH IENDB`qupzilla-1.6.0/bin/themes/mac/linux.css000066400000000000000000000002221226107126500200230ustar00rootroot00000000000000/*TabWidget*/ #tabbar { background-image: url(images/tabs-bg.png); background-repeat: repeat-x; } #tabbar::tab { max-height: 26px; } qupzilla-1.6.0/bin/themes/mac/main.css000066400000000000000000000144721226107126500176240ustar00rootroot00000000000000/************************************* * Mac Theme * * Author: nowrep * * Based on: Firefox Mac OS X Theme * *************************************/ *[html-link-look="true"] { color: palette(link); text-decoration: underline; } /*MainWindow*/ #mainwindow { background-color: #a7a7a7; } #mainwindow-menubar { background-image:url(images/transp.png); border:none; } #mainwindow-menubar:item { color: black; spacing: 5px; padding: 2px 6px; background: transparent; } #mainwindow-menubar::item:pressed { background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0 #a5a5a5, stop:1 #9a9a9a); border: 1px solid #373737; border-top-left-radius: 4px; border-top-right-radius: 4px; border-bottom: none; } #mainwindow-statusbar { background-color: #a7a7a7; } #statusbar-ip-label { padding-right: 5px; } /*NavigationBar*/ #navigationbar { qproperty-layoutMargin: 4; qproperty-layoutSpacing: 3; } #navigationbar QSplitter::handle { height: 8px; image: url(images/splitter.png); } #navigation-button-back { qproperty-multiIcon: url(images/navigation-back.png); } #navigation-button-next { qproperty-multiIcon: url(images/navigation-forward.png); } #navigation-button-stop { qproperty-multiIcon: url(images/navigation-stop.png); } #navigation-button-reload { qproperty-multiIcon: url(images/navigation-reload.png); } #navigation-button-home { qproperty-multiIcon: url(images/navigation-home.png); } #navigation-button-addtab { qproperty-multiIcon: url(images/navigation-addtab.png); } #navigation-button-supermenu { qproperty-multiIcon: url(images/navigation-supermenu.png); } /*TabWidget*/ #tabbar::scroller { width: 0px; } #tabbar-button-right { qproperty-icon: url(images/tab-right-arrow.png); qproperty-fixedsize: 15px 25px; } #tabbar-button-left { qproperty-icon: url(images/tab-left-arrow.png); qproperty-fixedsize: 15px 25px; } #tabwidget-button-opentabs { qproperty-multiIcon: url(images/tabs-list-button.png); } #tabwidget-button-addtab { qproperty-multiIcon: url(images/tabbar-addtab.png); } /*IconProvider*/ IconProvider { qproperty-bookmarkIcon: url(images/star-a.png); } /*LocationBar*/ #locationbar { background: transparent; border-image: url(images/lineedit-bg.png); border-width: 4px; color:black; padding-right: -5px; padding-left: -5px; padding-top: -2px; padding-bottom: -2px; qproperty-fixedheight: 23; qproperty-leftMargin: 40; } #locationbar-bookmarkicon { margin-left: 2px; qproperty-pixmap: url(images/star.png); } #locationbar-bookmarkicon[bookmarked="true"] { qproperty-pixmap: url(images/star-a.png); } #locationbar-siteicon { border-image: url(images/siteicon-bg.png); qproperty-fixedsize:42px 23px; padding-left: -3px; } #locationbar-siteicon[secured="true"] { border-image: url(images/siteicon-secure-bg.png); } #locationbar-rss-icon { margin-left: 2px; qproperty-pixmap: url(images/feed-icon.png); } #locationbar-goicon { qproperty-pixmap: url(images/gotoaddress.png); } #locationbar-down-icon { margin-left: 3px; margin-right: 2px; qproperty-pixmap: url(images/navigation-dropdown.png); } #locationbar-autofillicon { margin-bottom: 1px; qproperty-pixmap: url(images/key.png); } /*BookmarksToolbar*/ #bookmarksbar QToolButton { border-image: url(images/transp.png); border-width: 0px; height: 15px; } #bookmarksbar QToolButton::menu-indicator { background: url(images/transp.png); } /*SideBar*/ #sidebar { background: transparent; } #sidebar-splitter::handle { background-color:transparent; } /*WebSearchBar*/ #websearchbar { background: transparent; border-image: url(images/lineedit-bg.png); border-width: 4px; padding-right: -4px; padding-top: -2px; padding-bottom: -2px; color:black; qproperty-fixedheight: 23; qproperty-leftMargin: 35; } #websearchbar-searchbutton { margin-bottom: -1px; qproperty-pixmap: url(images/search-icon.png); } #websearchbar-searchprovider-comobobox { border-image: url(images/searchbar-provider-bg.png); padding-left:-11px; qproperty-fixedsize: 42px 23px; } #websearchbar-searchprovider-comobobox::menu-indicator { background: url(images/transp.png); } /*SourceViewer*/ #sourceviewer-textedit { border:none; } /*SourceViewerSearch*/ SourceViewerSearch #lineEdit[notfound="true"] { background:#ff6666; } /*SearchToolbar*/ SearchToolBar #lineEdit[notfound="true"] { background:#ff6666; } /*Click2Flash*/ #click2flash-frame { border: 1px solid #e8e8e8; } #click2flash-toolbutton { background: url(images/flash.png) no-repeat; background-position: center; border: none; } #click2flash-toolbutton:hover { background: url(images/flashstart.png) no-repeat; background-position: center; border:none; } /*RSSManager*/ #rssmanager-frame { background: white; } RSSManager QTabBar::tab { max-width:100px; } /*AboutDialog*/ AboutDialog #label { background:white; } AboutDialog #textBrowser { border:none; margin-top: -2px; /* Workarounding rounded border on KDE */ } /*DesktopNotification*/ DesktopNotification { background: transparent; } DesktopNotification #frame { border: 2px solid darkblue; border-radius: 20px; background-color: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0 #e4ecf1, stop:1 #d3e5f1); } DesktopNotification #heading { font: bold; font-size: 13pt; } /*BrowsingLibrary*/ BrowsingLibrary #tabs { qproperty-bgPixmap: url(images/library-bg-left.png); } BrowsingLibrary #frame { background: url(images/library-bg-top.png) no-repeat; } BrowsingLibrary #frame_2 { background: url(images/library-bg-top-right.png); } BrowsingLibrary #searchLine { background: transparent; border-image: url(images/library-search-bg.png); border-width:4; color:black; } /*Downloads*/ DownloadItem #fileName { font-size: 13pt; } DownloadManager #list { border: none; } /*JavaScript Dialogs*/ #jsFrame { background: url(images/semi-transp.png); } QFrame[js-frame="true"] { border: 1px solid black; border-bottom: 0px; background-color: white; } QFrame[js-frame2="true"] { border: 1px solid black; border-top: 0px; background-color: #f3f3f3; } qupzilla-1.6.0/bin/themes/mac/rtl.css000066400000000000000000000004171226107126500174730ustar00rootroot00000000000000#navigation-button-next { qproperty-multiIcon: url(images/navigation-back.png); } #navigation-button-back { qproperty-multiIcon: url(images/navigation-forward.png); } #tabwidget-button-opentabs { qproperty-multiIcon: url(images/tabs-list-button_rtl.png); } qupzilla-1.6.0/bin/themes/mac/theme.info000066400000000000000000000002111226107126500201270ustar00rootroot00000000000000Name: Mac Author: nowrep Short Description: Mac like theme Long Description: Mac like theme for QupZilla based on Firefox Mac OS X theme qupzilla-1.6.0/bin/themes/mac/theme.license000066400000000000000000000607751226107126500206430ustar00rootroot00000000000000Theme based on MacOSX Theme (https://addons.mozilla.org/en-US/firefox/addon/macosx-theme-12782/) MOZILLA PUBLIC LICENSE Version 1.1 --------------- 1. Definitions. 1.0.1. "Commercial Use" means distribution or otherwise making the Covered Code available to a third party. 1.1. "Contributor" means each entity that creates or contributes to the creation of Modifications. 1.2. "Contributor Version" means the combination of the Original Code, prior Modifications used by a Contributor, and the Modifications made by that particular Contributor. 1.3. "Covered Code" means the Original Code or Modifications or the combination of the Original Code and Modifications, in each case including portions thereof. 1.4. "Electronic Distribution Mechanism" means a mechanism generally accepted in the software development community for the electronic transfer of data. 1.5. "Executable" means Covered Code in any form other than Source Code. 1.6. "Initial Developer" means the individual or entity identified as the Initial Developer in the Source Code notice required by Exhibit A. 1.7. "Larger Work" means a work which combines Covered Code or portions thereof with code not governed by the terms of this License. 1.8. "License" means this document. 1.8.1. "Licensable" means having the right to grant, to the maximum extent possible, whether at the time of the initial grant or subsequently acquired, any and all of the rights conveyed herein. 1.9. "Modifications" means any addition to or deletion from the substance or structure of either the Original Code or any previous Modifications. When Covered Code is released as a series of files, a Modification is: A. Any addition to or deletion from the contents of a file containing Original Code or previous Modifications. B. Any new file that contains any part of the Original Code or previous Modifications. 1.10. "Original Code" means Source Code of computer software code which is described in the Source Code notice required by Exhibit A as Original Code, and which, at the time of its release under this License is not already Covered Code governed by this License. 1.10.1. "Patent Claims" means any patent claim(s), now owned or hereafter acquired, including without limitation, method, process, and apparatus claims, in any patent Licensable by grantor. 1.11. "Source Code" means the preferred form of the Covered Code for making modifications to it, including all modules it contains, plus any associated interface definition files, scripts used to control compilation and installation of an Executable, or source code differential comparisons against either the Original Code or another well known, available Covered Code of the Contributor's choice. The Source Code can be in a compressed or archival form, provided the appropriate decompression or de-archiving software is widely available for no charge. 1.12. "You" (or "Your") means an individual or a legal entity exercising rights under, and complying with all of the terms of, this License or a future version of this License issued under Section 6.1. For legal entities, "You" includes any entity which controls, is controlled by, or is under common control with You. For purposes of this definition, "control" means (a) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (b) ownership of more than fifty percent (50%) of the outstanding shares or beneficial ownership of such entity. 2. Source Code License. 2.1. The Initial Developer Grant. The Initial Developer hereby grants You a world-wide, royalty-free, non-exclusive license, subject to third party intellectual property claims: (a) under intellectual property rights (other than patent or trademark) Licensable by Initial Developer to use, reproduce, modify, display, perform, sublicense and distribute the Original Code (or portions thereof) with or without Modifications, and/or as part of a Larger Work; and (b) under Patents Claims infringed by the making, using or selling of Original Code, to make, have made, use, practice, sell, and offer for sale, and/or otherwise dispose of the Original Code (or portions thereof). (c) the licenses granted in this Section 2.1(a) and (b) are effective on the date Initial Developer first distributes Original Code under the terms of this License. (d) Notwithstanding Section 2.1(b) above, no patent license is granted: 1) for code that You delete from the Original Code; 2) separate from the Original Code; or 3) for infringements caused by: i) the modification of the Original Code or ii) the combination of the Original Code with other software or devices. 2.2. Contributor Grant. Subject to third party intellectual property claims, each Contributor hereby grants You a world-wide, royalty-free, non-exclusive license (a) under intellectual property rights (other than patent or trademark) Licensable by Contributor, to use, reproduce, modify, display, perform, sublicense and distribute the Modifications created by such Contributor (or portions thereof) either on an unmodified basis, with other Modifications, as Covered Code and/or as part of a Larger Work; and (b) under Patent Claims infringed by the making, using, or selling of Modifications made by that Contributor either alone and/or in combination with its Contributor Version (or portions of such combination), to make, use, sell, offer for sale, have made, and/or otherwise dispose of: 1) Modifications made by that Contributor (or portions thereof); and 2) the combination of Modifications made by that Contributor with its Contributor Version (or portions of such combination). (c) the licenses granted in Sections 2.2(a) and 2.2(b) are effective on the date Contributor first makes Commercial Use of the Covered Code. (d) Notwithstanding Section 2.2(b) above, no patent license is granted: 1) for any code that Contributor has deleted from the Contributor Version; 2) separate from the Contributor Version; 3) for infringements caused by: i) third party modifications of Contributor Version or ii) the combination of Modifications made by that Contributor with other software (except as part of the Contributor Version) or other devices; or 4) under Patent Claims infringed by Covered Code in the absence of Modifications made by that Contributor. 3. Distribution Obligations. 3.1. Application of License. The Modifications which You create or to which You contribute are governed by the terms of this License, including without limitation Section 2.2. The Source Code version of Covered Code may be distributed only under the terms of this License or a future version of this License released under Section 6.1, and You must include a copy of this License with every copy of the Source Code You distribute. You may not offer or impose any terms on any Source Code version that alters or restricts the applicable version of this License or the recipients' rights hereunder. However, You may include an additional document offering the additional rights described in Section 3.5. 3.2. Availability of Source Code. Any Modification which You create or to which You contribute must be made available in Source Code form under the terms of this License either on the same media as an Executable version or via an accepted Electronic Distribution Mechanism to anyone to whom you made an Executable version available; and if made available via Electronic Distribution Mechanism, must remain available for at least twelve (12) months after the date it initially became available, or at least six (6) months after a subsequent version of that particular Modification has been made available to such recipients. You are responsible for ensuring that the Source Code version remains available even if the Electronic Distribution Mechanism is maintained by a third party. 3.3. Description of Modifications. You must cause all Covered Code to which You contribute to contain a file documenting the changes You made to create that Covered Code and the date of any change. You must include a prominent statement that the Modification is derived, directly or indirectly, from Original Code provided by the Initial Developer and including the name of the Initial Developer in (a) the Source Code, and (b) in any notice in an Executable version or related documentation in which You describe the origin or ownership of the Covered Code. 3.4. Intellectual Property Matters (a) Third Party Claims. If Contributor has knowledge that a license under a third party's intellectual property rights is required to exercise the rights granted by such Contributor under Sections 2.1 or 2.2, Contributor must include a text file with the Source Code distribution titled "LEGAL" which describes the claim and the party making the claim in sufficient detail that a recipient will know whom to contact. If Contributor obtains such knowledge after the Modification is made available as described in Section 3.2, Contributor shall promptly modify the LEGAL file in all copies Contributor makes available thereafter and shall take other steps (such as notifying appropriate mailing lists or newsgroups) reasonably calculated to inform those who received the Covered Code that new knowledge has been obtained. (b) Contributor APIs. If Contributor's Modifications include an application programming interface and Contributor has knowledge of patent licenses which are reasonably necessary to implement that API, Contributor must also include this information in the LEGAL file. (c) Representations. Contributor represents that, except as disclosed pursuant to Section 3.4(a) above, Contributor believes that Contributor's Modifications are Contributor's original creation(s) and/or Contributor has sufficient rights to grant the rights conveyed by this License. 3.5. Required Notices. You must duplicate the notice in Exhibit A in each file of the Source Code. If it is not possible to put such notice in a particular Source Code file due to its structure, then You must include such notice in a location (such as a relevant directory) where a user would be likely to look for such a notice. If You created one or more Modification(s) You may add your name as a Contributor to the notice described in Exhibit A. You must also duplicate this License in any documentation for the Source Code where You describe recipients' rights or ownership rights relating to Covered Code. You may choose to offer, and to charge a fee for, warranty, support, indemnity or liability obligations to one or more recipients of Covered Code. However, You may do so only on Your own behalf, and not on behalf of the Initial Developer or any Contributor. You must make it absolutely clear than any such warranty, support, indemnity or liability obligation is offered by You alone, and You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of warranty, support, indemnity or liability terms You offer. 3.6. Distribution of Executable Versions. You may distribute Covered Code in Executable form only if the requirements of Section 3.1-3.5 have been met for that Covered Code, and if You include a notice stating that the Source Code version of the Covered Code is available under the terms of this License, including a description of how and where You have fulfilled the obligations of Section 3.2. The notice must be conspicuously included in any notice in an Executable version, related documentation or collateral in which You describe recipients' rights relating to the Covered Code. You may distribute the Executable version of Covered Code or ownership rights under a license of Your choice, which may contain terms different from this License, provided that You are in compliance with the terms of this License and that the license for the Executable version does not attempt to limit or alter the recipient's rights in the Source Code version from the rights set forth in this License. If You distribute the Executable version under a different license You must make it absolutely clear that any terms which differ from this License are offered by You alone, not by the Initial Developer or any Contributor. You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of any such terms You offer. 3.7. Larger Works. You may create a Larger Work by combining Covered Code with other code not governed by the terms of this License and distribute the Larger Work as a single product. In such a case, You must make sure the requirements of this License are fulfilled for the Covered Code. 4. Inability to Comply Due to Statute or Regulation. If it is impossible for You to comply with any of the terms of this License with respect to some or all of the Covered Code due to statute, judicial order, or regulation then You must: (a) comply with the terms of this License to the maximum extent possible; and (b) describe the limitations and the code they affect. Such description must be included in the LEGAL file described in Section 3.4 and must be included with all distributions of the Source Code. Except to the extent prohibited by statute or regulation, such description must be sufficiently detailed for a recipient of ordinary skill to be able to understand it. 5. Application of this License. This License applies to code to which the Initial Developer has attached the notice in Exhibit A and to related Covered Code. 6. Versions of the License. 6.1. New Versions. Netscape Communications Corporation ("Netscape") may publish revised and/or new versions of the License from time to time. Each version will be given a distinguishing version number. 6.2. Effect of New Versions. Once Covered Code has been published under a particular version of the License, You may always continue to use it under the terms of that version. You may also choose to use such Covered Code under the terms of any subsequent version of the License published by Netscape. No one other than Netscape has the right to modify the terms applicable to Covered Code created under this License. 6.3. Derivative Works. If You create or use a modified version of this License (which you may only do in order to apply it to code which is not already Covered Code governed by this License), You must (a) rename Your license so that the phrases "Mozilla", "MOZILLAPL", "MOZPL", "Netscape", "MPL", "NPL" or any confusingly similar phrase do not appear in your license (except to note that your license differs from this License) and (b) otherwise make it clear that Your version of the license contains terms which differ from the Mozilla Public License and Netscape Public License. (Filling in the name of the Initial Developer, Original Code or Contributor in the notice described in Exhibit A shall not of themselves be deemed to be modifications of this License.) 7. DISCLAIMER OF WARRANTY. COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED CODE IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER. 8. TERMINATION. 8.1. This License and the rights granted hereunder will terminate automatically if You fail to comply with terms herein and fail to cure such breach within 30 days of becoming aware of the breach. All sublicenses to the Covered Code which are properly granted shall survive any termination of this License. Provisions which, by their nature, must remain in effect beyond the termination of this License shall survive. 8.2. If You initiate litigation by asserting a patent infringement claim (excluding declatory judgment actions) against Initial Developer or a Contributor (the Initial Developer or Contributor against whom You file such action is referred to as "Participant") alleging that: (a) such Participant's Contributor Version directly or indirectly infringes any patent, then any and all rights granted by such Participant to You under Sections 2.1 and/or 2.2 of this License shall, upon 60 days notice from Participant terminate prospectively, unless if within 60 days after receipt of notice You either: (i) agree in writing to pay Participant a mutually agreeable reasonable royalty for Your past and future use of Modifications made by such Participant, or (ii) withdraw Your litigation claim with respect to the Contributor Version against such Participant. If within 60 days of notice, a reasonable royalty and payment arrangement are not mutually agreed upon in writing by the parties or the litigation claim is not withdrawn, the rights granted by Participant to You under Sections 2.1 and/or 2.2 automatically terminate at the expiration of the 60 day notice period specified above. (b) any software, hardware, or device, other than such Participant's Contributor Version, directly or indirectly infringes any patent, then any rights granted to You by such Participant under Sections 2.1(b) and 2.2(b) are revoked effective as of the date You first made, used, sold, distributed, or had made, Modifications made by that Participant. 8.3. If You assert a patent infringement claim against Participant alleging that such Participant's Contributor Version directly or indirectly infringes any patent where such claim is resolved (such as by license or settlement) prior to the initiation of patent infringement litigation, then the reasonable value of the licenses granted by such Participant under Sections 2.1 or 2.2 shall be taken into account in determining the amount or value of any payment or license. 8.4. In the event of termination under Sections 8.1 or 8.2 above, all end user license agreements (excluding distributors and resellers) which have been validly granted by You or any distributor hereunder prior to termination shall survive termination. 9. LIMITATION OF LIABILITY. UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU. 10. U.S. GOVERNMENT END USERS. The Covered Code is a "commercial item," as that term is defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer software" and "commercial computer software documentation," as such terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995), all U.S. Government End Users acquire Covered Code with only those rights set forth herein. 11. MISCELLANEOUS. This License represents the complete agreement concerning subject matter hereof. If any provision of this License is held to be unenforceable, such provision shall be reformed only to the extent necessary to make it enforceable. This License shall be governed by California law provisions (except to the extent applicable law, if any, provides otherwise), excluding its conflict-of-law provisions. With respect to disputes in which at least one party is a citizen of, or an entity chartered or registered to do business in the United States of America, any litigation relating to this License shall be subject to the jurisdiction of the Federal Courts of the Northern District of California, with venue lying in Santa Clara County, California, with the losing party responsible for costs, including without limitation, court costs and reasonable attorneys' fees and expenses. The application of the United Nations Convention on Contracts for the International Sale of Goods is expressly excluded. Any law or regulation which provides that the language of a contract shall be construed against the drafter shall not apply to this License. 12. RESPONSIBILITY FOR CLAIMS. As between Initial Developer and the Contributors, each party is responsible for claims and damages arising, directly or indirectly, out of its utilization of rights under this License and You agree to work with Initial Developer and Contributors to distribute such responsibility on an equitable basis. Nothing herein is intended or shall be deemed to constitute any admission of liability. 13. MULTIPLE-LICENSED CODE. Initial Developer may designate portions of the Covered Code as "Multiple-Licensed". "Multiple-Licensed" means that the Initial Developer permits you to utilize portions of the Covered Code under Your choice of the NPL or the alternative licenses, if any, specified by the Initial Developer in the file described in Exhibit A. EXHIBIT A -Mozilla Public License. ``The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.mozilla.org/MPL/ Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License. The Original Code is ______________________________________. The Initial Developer of the Original Code is ________________________. Portions created by ______________________ are Copyright (C) ______ _______________________. All Rights Reserved. Contributor(s): ______________________________________. Alternatively, the contents of this file may be used under the terms of the _____ license (the "[___] License"), in which case the provisions of [______] License are applicable instead of those qupzilla-1.6.0/bin/themes/mac/theme.png000066400000000000000000000022241226107126500177660ustar00rootroot00000000000000PNG  IHDR DsRGB pHYs  PLTEGGGLLLNNNOOOPPPQQQRRRTTTVVVWWWXXXYYYZZZ[[[\\\]]]^^^___```aaabbbcccggghhhjjjlllmmmooopppuuuxxx|||YYY[[[YYY]]][[[ZZZ]]]___\\\ZZZ^^^ddd\\\\\\nnn^^^pppiiihhh\\\fffccc___aaa___\\\^^^\\\YYY___>>>AAABBBCCCEEEFFFGGGHHHIIIWWW___```aaahhhiiiuuuwww|||~~~htRNS +177HSVdfikmnxyLIDATmOP{) 94&f_Yz&s,s 弫0Hx3Ӟ@'=]2L,\Xƣv[t dQPk6 D A(JG!/R&9EwɰIxnUayZ`negBmَa9K8}͜"LA)t2 (aREUY$+N`DQq?}F]%7u>IENDB`qupzilla-1.6.0/bin/themes/mac/windows.css000066400000000000000000000003761226107126500203700ustar00rootroot00000000000000/*TabWidget*/ #tabbar { background-image: url(images/tabs-bg.png); background-repeat: repeat-x; min-height: 27px; max-height: 27px; } #tabbar::tab { height: 26px; } /*Downloads*/ DownloadItem #progressBar { border: 1px solid; } qupzilla-1.6.0/bin/themes/windows/000077500000000000000000000000001226107126500171105ustar00rootroot00000000000000qupzilla-1.6.0/bin/themes/windows/images/000077500000000000000000000000001226107126500203555ustar00rootroot00000000000000qupzilla-1.6.0/bin/themes/windows/images/flash.png000066400000000000000000000064501226107126500221650ustar00rootroot00000000000000PNG  IHDR00WgAMA7tEXtSoftwareAdobe ImageReadyqe< IDATh޽ZilT>f]Foߦf CЎ0? =)E$(Ɗ 3f4@Ҍ2F0s)zyD+Lo`ea+i7ijxHO6eO#]]]J޽KǎSZP&d>^gc3tRaH^L&'NH>Z(''G"q\6cBPSgΝG*a@0bR&&[T pp=`ǂJJX@"v`gB'0~:?x&OL#GTೳxx,1.y?ƛ6:@]Χ2.Jf5M~&N|hgAi@WT_LȽnR] t7 yfs+qRCnv`&áp;{;XTm4, \7dĻu?=YO"Ow*hzxPZKNx74 GPٻŁ]5A  `W\utFz DYd$sbwB?+\^ߒɟx] )> |.xH&Pi73_3{NF{m}4A>HNu=`vc|S'Z@]xQ"{-t"GF1*_TɶzXa/OvDL֭[zQHx!z饗Н-l&,tN;<}b#>; O k ;D㙍t$ц( ;w] nkq`8֣;͛GS*iKAjrx>^o< 7€OYf.kn%ܕ6 +Jз3`5xut:6mR)Ʋl3hB iӦN&Z:xie9rD 悖5ɫ:﻽.̙3c|ELGCz)=ʜp{졋/>2pl߾84&ߦ=}hWVVҔ)ST-g\#߿N8ށ1_ꈉ#&q<ƞϡGI&iѪ7J "I̥K͛E`iLx-&*,:CG3 #*yzJ?k?f՘P5EKc~f#r;O 0>Ek}1[gg #3=>a@s,3}nàsDuiIENDB`qupzilla-1.6.0/bin/themes/windows/images/flashstart.png000066400000000000000000000037151226107126500232440ustar00rootroot00000000000000PNG  IHDR00 1 sBITUF pHYs11(RtEXtSoftwarewww.inkscape.org<LIDATX[l]G{s D!6 Ԧj'R*Tȥj^ZN ")$ZD#T\,_Vxcq=,Zkg(ar~jSXdE5DžV7#8##QT,#7>g h Al0&']c^F-&c" BJJLLDDL"%@ (`^L,JؠЧINZ Ѭsަ@+7%xbJLD|2Etdv$DĬs7)SEjIqblAR"l(hMBH@x(SّǃrQ |OSeU\\2S% s5+UK Ds fI6 3ypЁZVXj#+aX-z/OCXMJBLL&˜^0i (+ :(Ii &EX?p]&4XeCA1l˼HmDs?M gO>i=7%m#޵.oq7m-* Iѽz܆=r']b]<:-fl|&$$&A?ȽR|쵥o 13^kRKc-PG9D@Fr H$D R%,= y)~ {x"&"!%ܷKK]HhK%^7HDHDL>j-oAr.Ą|<|9Vw"BBBn?o> $&E84L jB.}.oplZ2W[͗`C"?Yⲇ 1))ߑ)"%BDJ3'rZOjش4Cgq O;_@F) p{w$XMB2#}ץpnw4e]^ i} a$|/X-i"yĐuMsgo=" D/zF KgW7CQc{6 FxJmvL[ڦҙl6zb5Fي:|[Lr萋t&;yQA #PEkg(V"JuK@㣈XCyӳa!p 604ttPZQl1sJ2PYyqj:JP1b fKGq  y|ËKl @Q"QUZBʧ9co}F+ d |ϳYc\N{zhXHq˗s ~>Vh40 H$Պx0`0أўFRDT*tZ쳳eU6ŭV rā@p1Lp*ziX,Hry qbs\zq\dOSd8]Ef}DiR^_XT*|>GgXܐoD;#XؒΎ(&FyP(s̵F9r\VY< LΜ} Xd26 x>+q$ T,Vl6{ "ZޖH$(KvEDbA?Xcx?dy@e{Af|Bh~CiCjDlEmFnGpHqIrJsKuKvLwMyNzO{P|Q~RRSTUVWXYZZ[\]^_`abbcdefghiijklǛڪIDATx1 ,g 'x<x<x<x<x<x<x<x<x<x<x<x<x<x<x<x<)ǘ4|IENDB`qupzilla-1.6.0/bin/themes/windows/images/library-bg-top-right.png000066400000000000000000000003201226107126500250230ustar00rootroot00000000000000PNG  IHDRrosRGBbKGD pHYs  tIME 1\"$PIDAT(cTrguk`<{"(vea.6zO8\F/R $٥cE&iIENDB`qupzilla-1.6.0/bin/themes/windows/images/library-bg-top.png000066400000000000000000000005071226107126500237170ustar00rootroot00000000000000PNG  IHDRGVsRGBIDATXݖ 0 @m 0[+pfNR͵ PI(9S/v ܟ.e# ~l|a_I00`g9DZVd[+ s‘ׁ*AWԠV[,d+캯tqY}nHW`u`f//&(4;*jۢ{-/M(/&-+ݒ0[7{..Lot!IENDB`qupzilla-1.6.0/bin/themes/windows/images/library-search-bg.png000066400000000000000000000010711226107126500243570ustar00rootroot00000000000000PNG  IHDRun8sRGBbKGDC pHYs  tIME r`IDATh?N0?IUrڥ3!8DwN g53U D8M~R(v"lno/01 |BxއTJڿ1Ya\.f3 !꟤ژ0t@,Gcp,Z.,Kk'"ŚďRJѻK$i&<)D QJBcb"Nd,Ic77;ʊ~`*XE+KXE4M98b1S7L* %SӠ/M&#,9%eY~ZNDO% yٖMM=%m\<Ѯ|}fYZ{ݮiߺuF#oO&8X7 ya$S5mۿޚB"c\ш`IENDB`qupzilla-1.6.0/bin/themes/windows/images/lineedit-bg.png000066400000000000000000000001541226107126500232460ustar00rootroot00000000000000PNG  IHDR<masRGBPLTEIDAT[c```(1`n*IENDB`qupzilla-1.6.0/bin/themes/windows/images/navigation-addtab.png000066400000000000000000000012151226107126500244360ustar00rootroot00000000000000PNG  IHDRl"sRGB pHYs  tIME 5#PLTE#%&KpK.Vw„ "#$%&'(1@'@!K.RJojx&i-p&+;+R7UKU+ +ݩU=gf*TUUg@u:;2;Z J{`^]CU~QtЈIENDB`qupzilla-1.6.0/bin/themes/windows/images/navigation-back.png000066400000000000000000000225001226107126500241170ustar00rootroot00000000000000PNG  IHDR$I sRGB$IDATx{gx\յ:gzF.wpظ  JB&pI|@pibJ0`6p1ɖfhz=߻3~n~܁=Es{Z{w!/t'11c(FoM1c3O _i E9~}Կo&)#DzD!ctEކH8[_gm0J1lbc]1%#3>}22ǎ'Hmr3D@T|jSDN3dO1Soڱ5 $I2~09MO~/w?@ihQS8—Q~ulT\FA޼>9zU7>gnڜ d]'|L`b,np- *A"1lV堭;}:R$@u:f5@]ݮX;7 S8HDO~xXM2az N⑞n^(.Kl%55'ˬV[d c梗r=q Gb9*h" E) RUӞV:xmfXd4d4p PeΌЮkz`dZG@MtGsGY,7N\LIP ҉S0  yhA?DWk /ЫoU-n dTLX UQQ )۳;3^(˫tQ>CFP0^C 0 R0M_>$Iz%-{2Ȝd233viߞg%\2dӦMJvVVo^w^Y7L )g?€P(6(7^3n *WPGi df@,,f VeA tt&iڴi#M&pμ%T'O.";. !%u s僿WvYo&"3 K WekEAnNeJuyF}r'y}  @* x3?1_HA]`^;HϾ% P*2eH ,,14vPkB?~lur߰5-Z:hP&$!?-y ˇЛb # i kBJ6tRGSgxQv8M3Ra R'.Y>z$;9^`ƀMz$j44a}J$$Xb?-;:˶PV{{XM"7#&=~ZvHjTElV$ï$+e:MTTdy *6{yBյn߮FSEp$Gp(-~-<ѣTѣg:`1&@}w%A+56k3W,S<1WߔRb!Qr.սQCK!9 e"]v1$;&_TWWUr?/ˉl4d^j|< H sn_XL]; * Y)^\NĜA8;P ұca陿>_la鳟i.ƂQaH$4bp>Wm Q$@MgXxNh i¦:ʊ4׷`|;hy|xqȀ;TۖAH-2-d+A,M $g2 CvoS8| RA担noZZZN˻w{7}HA39>1PAI{Xmk#y [I4() ActijGQE@jmmd0WVTTX3E{?{|n'9AB,ɬ9b3AN/E>\=mD{;G$H $IB,4֖kyj}חzcبw8®NH( Pd:Nȝ<HEujT7VT0i{HIq.k(=Ϟ^[OLMc;/E=q X"zdpXkHȬSVOcDE ;PDğӈ<돑絍o`$2Fw}ӿ<!ezIeɻ3"^+"%$n qb`eK >mMDtTHF^%uZ]]v w_7vhܾ+ pLW3HO||ޱv=|M>DHc,˅0򹔸_|Y FOh $! 0o lvH9=5]ݵxt 5R*d&&_[51W vNVDNêߵ6"ÉqJW.'ǎ5$d MWX>1̠HXuO5RGt:]*Ȇ 9AtL}ki;@?af#BeplPܲoD􄚢$):-Kpl^Vd(*Ra~e, %P~74v?n[? 6nS>7;`4ۀ~Nxl(|(&>\Yؐ#ZUrN}W۱3ɠ-1yqY#F ut2F§| N(VQueC7s M7y^x۰aΒcDɉ_+4.'%fʃgٿ^fЮy^9|d@ Ap S 0Sz"3G*23hpF`״(ɴZoK׮Nm*,HaoϤvw&\"PZ ^f l,'J\7n: \ƣݹh|jdad}!$;CaMIUje0u6Abi]w?:EAWy%Ƞ?츾S3ʲ1Ўmbҁ9!13cbv͇|TYm;)a {: Kɢ7!7d`O;A{ʶȦvq)/1J ArooES'0I*)edYZs}f] ~_ucNi7&NÝp>_l< S54̬uz O^4&>W)7L6,Xm,)uT& l\ w_ڍA?;^"ЍA(Of%{4H &$3y:cfo wk l t#c4D& Mٖ6y:Kp;vdG\Rp7S&D(u# 3K2ﭫkomAJ:=4;K( (z7PI&[8ƠOn:TVd!\p&81ctY%]ҵ%$$)Y)XD+3P~&hl_)ڍAs~Ax _$zLRʊStk,,,QVHk7ʏvCŞKad*fE_~h H4MƠk1DDkߍAmٽѬ#vfr/E@50gi]^P!K2h"hҎj(Rgp_c%k8l +8ͅ(c -"?I;zQ~ =0eÝB%Z_I]{1ܳhdž OlR2x5Ty?N{׷2h{*~$ac#7(ck؜IdP*hlUg&`AAN}.Aj9A[{,-蟅GeruBCvHƪ+C<&/DZQjۨ/jzۚ8gjߛA)u;r/;"y/r`I;a ̢Wy ?|dyYM+~0^lv݀a'St3pdAs4xoڟwu]< /}ph 7. }!+&BWEP''BA0Շ\:{뒛4#$dÄV^rF3^9L'˳PH|+ck7zq:Sw'NGm8-t̙3g1>< aɟq?e,]i'>YU@S6 )e,JވMDc5b^+d{b[N 3&/Z/.G8`IpR9fY8#wR JC ,Vi+'0he&:3_ M0MP˄#Ȉ0AܭlyhVGYjj~46x3uKQ{qgt) ħ\NI)*,R)`?A vWǢoUVaïy `Ug9kzoEsS qx)N^%v41 '(b~In4z9 5$HrS D" 5; ͘;^z /lX۠6 J}L;A9fHi/zcK1h.H4 t @m3eD$s9̴.0wlO׼0b$zTAE+*ʐJuՠ1h 7 rKKH'"'T`b2k6m.0WІ@-8+d(dYm@Сv5vvhJ1ˑSR\|, D"!&ѤgӋsݒ l-Ŭv'Yb1Rc{RMT[{#1h_)(fl0v]p!?r:ihs]6s5ki릷$Hp&H.JvTUtjꎠǺ1h[vd׶uP@`n4qzog%i NxrOd{Y+(c8gƠ}Yze[P)$Ր 0L'C˞:#l[֐(%k"|[I2Mw7mZcE{7BO%]q_p$ÓK➽m%-!hToR ,K:ڍA{³LA؃zaYt!C Є)C襻s m8ٻ`TnD!ҍA[ڿλkRn'Z9L+_4WgЋ7ػv^i;dKB;au0 1n?%Ὼ1hkyF6{1]*!ٔˬYh,;=И´k,Ә/b`yF(H 6O='3 G G.#ړQKFw;h\=q6輣 -n##[888joǏPpcT6ztUȠZ|W0HK,JvI(u^$NF^b dռ4-kgĩ [^ *4Ct{8MMx72hyhԋK҄Y:8H '/6BVcr{!)(6)dL `bȀ[It-Wvq[A5C<tpcH\ ai*++8r,CU -rN"_E;mNv뉤cr(UMoWp8u6&ꥯB00?$t0܂ |VCn{3hmf v¬ca_LKr B`|31R]׊zG?>sG)/oDڛ`(Aƒ>E5FUqgFG3hn7X̳w<ҚS4dv"E-2NqMpdTqg԰Z_9D[AOC1߫O #[1J1 .@ɅWE+5cq0cW=! gdZd(qM[owZ=|YXt:T1eggn)^gbQNzm?  &z-#'d!@0ń T2:"^ʖ-[B6l=1h ͘1C9rĄ'*Y׿~'fHrrrՁYExݺu~0`ӰaÊJKKC@Qa; my0\ F{3hm̘1%eee־}Rss3v]CL=A2pfVe~~>9rN8߹sguɠ 08k֬B'T&AB BgM]ZM \x3TVV \wp[RѸq8X ڞhs*(Mb+N\q㺨VU*fpRG;v`Pz72hcǎ >o~ ,bI*Ѡ^p9QtI"``hH m¸#;wȠ]xEYYY0f/ȋJ_|޼yѣGiڵTSS#?I@_ch\U1ckx! /fNl4gΜaGTzzzRuc a;vVucР.'PM3dxA 8 OCxTP}233ir6ibݖ>GKA?ga0g իW& ^\ 5;aS7 ?'RS&! %3L*5k0kF "u瘇ٍA1jP+ <360c:( DB|@mH;<:s`VZEoV.Q3yl}߿FƠX)r4R ou8:;6Pxaűyq=yX)J7 3>vS"x_ Iirdniڡn D*IgUiRS Ym=QRf ٍAXKHu> O͞A}:4T4djawM4HW%i<Ӽ97L,CCCoV2?qW^Nb`xhKRw@5 I N]zs:3ɠ[EKY9trm IYc- J*,B:kXe${Ihsa H b7,\|27b0=9CZdtw3rg͠u;jCׯoDe`\Ҳh4w<9o#!GV:5'! igtod>Wha+ JoA6mN+?tY#C{IENDB`qupzilla-1.6.0/bin/themes/windows/images/navigation-dropdown.png000066400000000000000000000013411226107126500250530ustar00rootroot00000000000000PNG  IHDRdsRGBIDAT8mrAEO`.coU$$$$|?AJ NQ@.2K3# }L}D?u 0B .7F=B0$fR^R]k f%wlltB\֢vvppY+tB`ow!PK2Jj̲dI 7 {NyE~[6b>?'rrO`\\%)`fMt`*gS^R.ժrox6*3C!Je\>٪J))}+)5J": +ٚ"+ITquoTpWc:u]3x GUEXsvF;̐lΛׯ4LNܻк[J aȒ11Yw{nDŹ^5piGlE?͢׻};jnfSt( \3kIU^ L &Ylhm۩Vy>2ѸSW)@ lVn rR8BZ4'3kk+W @}TU'q(reh)]?n0pWE,'W"Ő38_a * #YџSN]%gع9āh}/rXڵ^ɭ  x҉ IENDB`qupzilla-1.6.0/bin/themes/windows/images/navigation-forward.png000066400000000000000000000115341226107126500246700ustar00rootroot00000000000000PNG  IHDR!iIsRGBIDATx\ 啾U]~O<`FAy$ KdFs֜x&{sV{],jAP0F ]U]U{g8aI:Wo3 7.0Ly-@]/ 82cwgi?Nk;F+p0̱Āx~u:k$s`$)z%,ۂkj. c_{kh}lJAs\,ˠiё2|ʧ2) vE{vݻvtOq9|TvG፝V+]ɨW#~$8vvh ! )p1e7`7co0  .^1gٞ *tL돀ŀ,[8^ 0E`z6 TT}A *(p 3o8R8:#ڃ(PoER;^zK#Ŝ1̉2$dpg@iLFm y鉶 l3tj&U,ʚ^n!ݱ@BUW^yGJW2c5=qx&ts IHqu>/R;gJh{:gAML,}7SkOX 9ꘂ$?A]Wϛ\BHp0&OY܇8WUݼdH=xM'N}*U iSojVG"Wp2pVPl(!dq6ݴkPU8lRUї{W|EKf~bs|7Z(t ؞k;;Oŏ·H6$@E!̴=V 2T/R ݛ̙ws^dj._kopg3O915fX8c=4|~`~7SQ9[bC Se7[y~զH(QA{ IL dqY]b.+7 5#'Sgpjnb8(U  ,X 7Bڭ)[ŁOdjo}%vt0O/;GRB2ؾ\6!Q: 3w^WɋV}lWoN&Dtv(Qye0mb1:w#p,d҉ rw?u7s25:: $멩#()'S G nG;RI/8 +t hº17LMoyS&#Z _"F};gfLe^ 9 xbJ ,Ddn\*S)~RV:g T3@jDjy,EXɊ"+#BM]?B=M:[6`̚Sphִb슚"jW7wX[Tc ,ASXכuB 1lL'3)F$mD1aLMj԰ҠvQhc gdnd۸V>ֆ4@PPt-3[&^ `jšʏ%?L(3@y7| w?`T:~):$ũLMY˸1iNK+ݰl_EB G! 1gYPR05 7!lܳU}T lRUo@fg,DIDi^LA'ae  ^T)TIllq8Rnٙ9N[x3eSH h2Mdz٧RP;}֓~Ϙnnm9y15Vk)55&)A5A:VPW px|ޚaMnUnde~ >̋7<$yjeOMaaU1V`im`(X(p`bXu{^OdjѾ9ZT&>-DVy4[7|mI +#0)~YAZ_hCRfRM0L0W0Yl&@фE :C+1:,KsUBsg&&9Q*aR=ݲȂGFiO@4t j4N Ua/]05Epm`&aQl͢/y)z(cP0uE"key15#Ս@"~0Be{XLo" #DIִ̅(XkljiJ^D ~xXIOx~1QlAB>LeJXI+fϻ^{ [O>.a-qF@͂L]SM*z6pnkzYUS}"7?344|"g@h>}=/&,E'F:y\#Th-̜5^zd5Igv#M $*l!RH]ٔDȤ(OV ö86f_> w=.o,UOwg*s5p&@㘰޼EkAzǴ σ Q; 9Ah'lԬ]&/G2ıhO] #cN@2LTzO 1;%gSebj|b(njLQ.C6_d %ߞ9gŖ;eBlƟꞐS0IH8ݻ@\6I ?dB]3byS#Gd4FdAp͛G͚5^ ,=_# 8:ر"\rOqbj;K4А5N-ɓS~8jMD"(H.]͛7gFI-l۶Cg1Q9/s 0~i>-8. ǙA`0`!e2G"2|:Ȑ2"F<J6GV鵑Id'@H&ɑ  > x|kPm gk$8p!` Fa^զ q. 80d3$K?XnȜ㭨bjzzi3]qƑldzщbjyC 0?1cs15}(6을j6e'SMLtofjvc25DT/ $ f*-s߆.8]4܂IENDB`qupzilla-1.6.0/bin/themes/windows/images/navigation-home.png000066400000000000000000000014431226107126500241520ustar00rootroot00000000000000PNG  IHDRl"sRGB pHYs  tIME :Fz:_PLTEruw$GM넸VwPpPwY]ahej5h2c3g4j5`5j5n6a6n7a7r7r8b9b:cGgGkIjKpOvS}UwV}WXY|\]`acgdidejekfofglgmghohqjsjlvmyp{r~suwz|~Ā„ɍ۠AW+tRNS:BCG_`crtvvzzzt bKGD IDATA/QiKgĦĤ+[~ v`Ch1{GD2!odX*bl b`jʣI18^-g [p x3pIfo&/Z b)hW_:M-N [ߍUaPzG*1_[xr(jRqûk>FSYƦϦsAr&d =ī XpP@$  pIRR8P AFGIMQUY_sssszz bKGD ,IDAT_OP_*X.Z}uӧhuњfC |{]8GgFF@~őns=A h:jTw u,a/eb`rDBQoKER7=ghk|v U"8, 2%'QZ-! ΟFh~=DyM^r>378V [qfQ@@K[Cj 6vm<:6v~&=IENDB`qupzilla-1.6.0/bin/themes/windows/images/navigation-stop.png000066400000000000000000000011501226107126500242020ustar00rootroot00000000000000PNG  IHDRl"sRGB pHYs  tIME zyQPLTEMQnGJf${$~$%q%t%x&[&_&l'O'S'V(I(L"o#f$Y$arugko^bPTYCGK@e2tRNS:??BKKgg{{{{{{{{' bKGDHIDATWM@ DY] ( _D8ɜ3McF™FbR6zތ( M4U1- pTd: `9R";.|?a,"}9*җ9Cx{nEڴuE+u3M4Iz=Z $8.>o:;9Jӓ+> #1IcFZ/oXYIENDB`qupzilla-1.6.0/bin/themes/windows/images/navigation-supermenu.png000066400000000000000000000017201226107126500252430ustar00rootroot00000000000000PNG  IHDR]sRGB pHYs  uIDAT8}[Uk3s\vk#c(bz R!R``=$XP0Z[ct*b+`:3̜soDe?%U, Fe`bPf2pH# J%up1 t_~8 m- {@i _F]Qs^[4imZȉt-JVT"&/Fo/obJe jM.}s-mNφ텓Z6vI,"}}bQU| >Pj>lL*q|&Pj=qˤR効|z[cڀfXū#^7d4V8j*'Z~u a(iZbCgMO{W_I% K }qؔYsշ*GlI{woqI@#ը7~_xڏ>zIY>'vwnu(ʝQFF7\R`yeԫGQiS);#5pXpl蹿tprU9rzϓ6G*^ƀr^<Ҫ.U,ꕝGd*pycdnh瓻v3kר*OI-gTpXIo?8XEA9#Jw7 : (XT1S}{_$+ԭΎDI"(:v`1=;$?E俲7%[0Hbm9Y\ tR,|)IENDB`qupzilla-1.6.0/bin/themes/windows/images/rss.png000066400000000000000000000014231226107126500216720ustar00rootroot00000000000000PNG  IHDRaIDAT8eKh\uLLũ[[cZ E(w}EPpk7"E\t!D+h]5ZVc-1i63ܙqqg׳9y|>}]GK#LD(贈 ~暭w?Q4 z4zP_tjD}s_-0eL'6o ^Eԁј!1kR P" ]G_ ,_/G7Q$`E@CNv6ٲS;ݼwkX cA @D%bvN<;dIב$O3iLrD"@=L%-U܅?݇1<kϗ$#V =̶1Q1w_o@\dM̳g $'q2UCh(q+R{p:]- qB2ϓHhArr/aC緳dқ3%Lk5!>qm0a+~7o_$$#j9bce^ R:-4<,LTIA>@h,$aoE+қX;{u л׈6Z#1o򫃟O!B v@ %H6M-i뚭ӭ1IAũb)~")n?rqHJfIENDB`qupzilla-1.6.0/bin/themes/windows/images/search-icon.png000066400000000000000000000013761226107126500232650ustar00rootroot00000000000000PNG  IHDRdmsRGB(PLTEԤץڴݵ۹rGyILLnorr̈lj̋ՋFm?ri*k-zZ\uw^"wRUmp.t8]Rx?OZd;i=t?{?UWYY0u5|;6^6b7fPyP|Q<5gOf-QElhk%q0}*Q*S+W,^BlBnCrDy(u)YAtl5FP"b#m5k8|:X ]ciq$w*06;?BzE~IMQVZ^cf iytRNS@fwIDATc` BJ疆 dl @$Wפmp.@ek \d0e\x3t\ ڔ)&`2a#Õo[4(.PŹ,PrȻݘD%r!>IENDB`qupzilla-1.6.0/bin/themes/windows/images/searchbar-provider-bg.png000066400000000000000000000003461226107126500252360ustar00rootroot00000000000000PNG  IHDR .; sRGBIDATHՑ;! 뱲s&6$C CZjT=옔4EJVmﭘ pg0z܀Y"f~EgoO朿sB1F\]t aGt? 1ZU{EDZ#w;2C|"IENDB`qupzilla-1.6.0/bin/themes/windows/images/semi-transp.png000066400000000000000000000002261226107126500233250ustar00rootroot00000000000000PNG  IHDRo&sRGBbKGD pHYs  tIME ٿ'IDATcd``e@L Xe_.kkU^%IENDB`qupzilla-1.6.0/bin/themes/windows/images/siteicon-bg.png000066400000000000000000000002711226107126500232660ustar00rootroot00000000000000PNG  IHDR\ksRGBsIDAT8ѱ ! P'ʘ G|DFpK'X {:爓$ :  )O]Z%{T3%\e ԏ85ml4-mIENDB`qupzilla-1.6.0/bin/themes/windows/images/siteicon-secure-bg.png000066400000000000000000000005141226107126500245520ustar00rootroot00000000000000PNG  IHDRH sRGB pHYs  fPLTE>O1IDAT(SA0 gPYM *YYVk=nӼdY[9YB&"c%'sɩn19)XZc{R.]ȿd`ȯ?+ХUϜjzIENDB`qupzilla-1.6.0/bin/themes/windows/images/star-a.png000066400000000000000000000012151226107126500222510ustar00rootroot00000000000000PNG  IHDRatIMEl pHYs  gAMA aIDATxڕKhSAQ'#t7Ÿp7"7ŅT$"uB\.D"- UMbܹI5803Km#/G,ҋY-Oey,jݞE5vC(C }n|@f=)k&PvOfU LPX$,A-\p9k’p{^B ^^ /.? PAȱxun:;)よ|yz%Ȩϓ"#LsMgZ,#'VY4 A_@@f!zv  (lWר4;!>?uT1e+yC RZ1DILK,kTK6S`j7ctmImo[;i9Px#znT`MizQg5z{u۲/\VYCf,K:pCg|&"n=>LՔ#xIENDB`qupzilla-1.6.0/bin/themes/windows/images/star.png000066400000000000000000000007671226107126500220460ustar00rootroot00000000000000PNG  IHDR7 pHYs  gAMAyc cHRMl+x(j/AR'7[mIDAT}KZ/"QkNzPة]w`DФXXڄQQi  R` !H7-ERŢFl_=acqf6(QƠ>9<=J4u'iNa/@<=So抁rp#d>fvd?^ nx d%e*4F9Zh=BWB֮|W|~Q[RDP ǖ5jE_܀b7jJ91!bS t/v.`}>5$e;1}--)ƳDeJI%?ТM*#w&B:[#Z 0Gj\[DM*IENDB`qupzilla-1.6.0/bin/themes/windows/images/tab-active-bg.png000066400000000000000000000003021226107126500234630ustar00rootroot00000000000000PNG  IHDR(- pHYs  tIME #aIDATӽK@C_ ?1C] ZeEJy|do0 VVgK#eng20jF;@Rc2{Rdޏ0fj-<9pIENDB`qupzilla-1.6.0/bin/themes/windows/images/tab-deactive-bg.png000066400000000000000000000001361226107126500240010ustar00rootroot00000000000000PNG  IHDR -a%IDAT[c, M69('G; _,@bIENDB`qupzilla-1.6.0/bin/themes/windows/images/tab-deactive-hover-bg.png000066400000000000000000000002021226107126500251140ustar00rootroot00000000000000PNG  IHDR$!IIDATӝ1 _;hk3^:"A -L(P 0DxZ-ž::IENDB`qupzilla-1.6.0/bin/themes/windows/images/tab-left-arrow.png000066400000000000000000000003001226107126500237020ustar00rootroot00000000000000PNG  IHDR /3bKGD pHYs  tIME  !Q MIDATc` `g``.pA Y0?L Il300\b``&p sz@?InIENDB`qupzilla-1.6.0/bin/themes/windows/images/tab-right-arrow.png000066400000000000000000000002741226107126500240770ustar00rootroot00000000000000PNG  IHDR /3bKGD pHYs  tIME  5PCIIDAT׍̡ @D PTBN"i3r Xr);[lXyR{k81E[?"IENDB`qupzilla-1.6.0/bin/themes/windows/images/tabbar-addtab-outside.png000066400000000000000000000003371226107126500252100ustar00rootroot00000000000000PNG  IHDR ,IDAT8풱 0c;ti!:HB-}R$C(V4E:8?;Gc1&.YlB,6feIUUh=!ڶfuMER !ιx=nNy)FS8uw{7W+Pg-IENDB`qupzilla-1.6.0/bin/themes/windows/images/tabbar-addtab.png000066400000000000000000000015141226107126500235340ustar00rootroot00000000000000PNG  IHDRlِsRGB pHYsodtIMEВDnPLTE8NvB\IgOnRsSs]^^^`djkoooq|||载| tRNSnbKGDoEIDATHұK@ݽKZԺ{G_ढ bҒriW)|C>i?,VTnv4sv;|x.UÞD=ޥЇ E-YBvQZn K'#`o-J>bɗ3]긓8ۊw5$-eykgS+13'<LX :<114sʕ,:G#vzwm/uMSFE Dƒ9s+-:ʧwN;a>>MIENDB`qupzilla-1.6.0/bin/themes/windows/images/tabbar-addtab_rtl.png000066400000000000000000000014521226107126500244160ustar00rootroot00000000000000PNG  IHDRlِ pHYsodnPLTE8NvB\IgOnRsSs]^^^`djkoooq|||载| tRNSnPIDATH=N1F7. -Etpݸ-\ 4 Q(ɮwc k7=~i4cO)j#zn9+ퟩz\%k _YJ)Tq UvdI9鬌 <h Waz =@ -;Ap|B''AOR@hM㦼7+|oY|m4APE ڈ$m눏}odA83 1&ۏ< ZEVg^"<|}:y* 3-yNNN"e:n⊊ ,( Mݼ|dOͅljU/=V X߳-(2rMqz*_DO?3! Zt(jS2HMBً5 JRoĄLb VCmzU ФA1Q#kFe/|AnuG'4/k#PYCtgcD!g|):@V l5uYB:<" C&?)[Xg:~Y~:#qP!~B=hgTGX9;Q \21 ԻjYQܪQQ%,X1/ iwU{ms.d  -* 4O:Epβ[1d4iwcIMcZB|BhV(2]B{ڸ0{],'*-$oF`99 A=e4*zhu(yL# ON1X. ]i2D"o+(9~Nhv'L2 @jv#%Wv:>+vpN{x~ǢĈ|06lwc-^nfL##>H]S#.2 ){qrq#W~d6צŽ yz&rFdf'_l8u#M앥3_[H6;F%9gWRu,[^?$'_8դ&/Ym=g(=7O^?۩a"7_weU?.!8Y FZTL%4ʹZ&_{LK8E(KLk) |6RaV4ZW`rHL iulqmD~?Qy0R_<8gy*=?JkIHZ+^3y0ܐvC8~]J8҄ZD)`[Byhvp~`Ք羦+MgL6X'9dP9]` $ rDsN)-{V%3w0 lүlHɕ 2a-\3! 'ȳˈ~e`3ٹ˝Xʏ nLo!'̈́yrS#=ߦ`e5g-/?Bg6Z}>$TIENDB`qupzilla-1.6.0/bin/themes/windows/windows.css000066400000000000000000000017501226107126500213170ustar00rootroot00000000000000/*TabWidget*/ #tabbar { background-image: url(images/tabs-bg.png); background-repeat: repeat-x; min-height: 27px; max-height: 27px; } #tab-icon { padding-right: 3px; padding-left: 3px; min-width: 16px; max-width: 16px; } #tabbar::tab { height: 26px; padding-right: -1px; padding-left: -1px; } #tabbar::tab:selected { background : url(images/tab-active-bg.png) repeat-x; border-top-left-radius: 3px; border-top-right-radius: 3px; border: 1px solid #606060; border-bottom: none; } #tabbar::tab:!selected { background: url(images/tab-deactive-bg.png) repeat-x; margin-top: 2px; margin-bottom: -3px; border: 1px solid #a6a6a6; } #tabbar::tab:!selected:hover { background: url(images/tab-deactive-hover-bg.png) repeat-x; margin-top: 2px; margin-bottom: -3px; border: 1px solid #3c7fb1; } #tabbar::tab:last { margin-right: -1px; } /*Downloads*/ DownloadItem #progressBar { border: 1px solid; } qupzilla-1.6.0/git_hooks/000077500000000000000000000000001226107126500153475ustar00rootroot00000000000000qupzilla-1.6.0/git_hooks/README000066400000000000000000000003411226107126500162250ustar00rootroot00000000000000Git hooks that writes current git revision into git_revision file that is afterwards used to show revision in program in About dialog. Install these hooks by running hooks-install.sh script (copy into .git/hooks/ directory) qupzilla-1.6.0/git_hooks/hooks-install.sh000077500000000000000000000003371226107126500205000ustar00rootroot00000000000000#!/bin/bash # # Install hooks into .git/hooks directory # cp pre-commit ../.git/hooks/pre-commit cp post-commit ../.git/hooks/post-commit cp post-checkout ../.git/hooks/post-checkout cp post-merge ../.git/hooks/post-merge qupzilla-1.6.0/git_hooks/post-checkout000077500000000000000000000001741226107126500200670ustar00rootroot00000000000000#!/bin/sh # # Writes git revision into git_revision file # git show-ref refs/heads/master | cut -d " " -f 1 > git_revision qupzilla-1.6.0/git_hooks/post-commit000077500000000000000000000001741226107126500175520ustar00rootroot00000000000000#!/bin/sh # # Writes git revision into git_revision file # git show-ref refs/heads/master | cut -d " " -f 1 > git_revision qupzilla-1.6.0/git_hooks/post-merge000077500000000000000000000001741226107126500173610ustar00rootroot00000000000000#!/bin/sh # # Writes git revision into git_revision file # git show-ref refs/heads/master | cut -d " " -f 1 > git_revision qupzilla-1.6.0/git_hooks/pre-commit000077500000000000000000000012021226107126500173440ustar00rootroot00000000000000#!/bin/sh # # Check if copyright statements include the current year # http://damien.lespiau.name/blog/2013/01/13/a-git-pre-commit # files=`git diff --cached --name-only | grep '[.cpp|.h]$'` year=`date +"%Y"` for f in $files; do head -10 $f | grep -i copyright 2>&1 1>/dev/null || continue if ! grep -i -e "copyright.*$year" $f 2>&1 1>/dev/null; then missing_copyright_files="$missing_copyright_files $f" fi done if [ -n "$missing_copyright_files" ]; then echo "$year is missing in the copyright notice of the following files:" for f in $missing_copyright_files; do echo " $f" done exit 1 fi qupzilla-1.6.0/linux/000077500000000000000000000000001226107126500145205ustar00rootroot00000000000000qupzilla-1.6.0/linux/applications/000077500000000000000000000000001226107126500172065ustar00rootroot00000000000000qupzilla-1.6.0/linux/applications/qupzilla.desktop000066400000000000000000000150501226107126500224430ustar00rootroot00000000000000[Desktop Entry] Name=QupZilla Name[ka]=ქუპზილა Name[sr]=Капзила Name[sr@ijekavian]=Капзила Name[fa]=کوپزیلا Name[ar]=كَبزيلّا Type=Application Icon=qupzilla Categories=Network;WebBrowser; Comment=A fast and secure web browser Comment[ca]=Un navegador ràpid i segur Comment[cs]=Rychlý a bezpečný webový prohlížeč Comment[de]=Ein schneller und sicherer Web Browser Comment[eu]=Web nabigatzaile azkar eta seguru bat Comment[el]=Ένας γρήγορος και ασφαλής περιηγητής ιστού Comment[es]=Un navegador web rápido y seguro Comment[fr]=Un navigateur Internet rapide et sûr Comment[he]=דפדפן רשת מהיר ומאובטח Comment[it]=Un browser web veloce e sicuro Comment[id]=Peramban web cepat dan aman Comment[ka]=სწრაფი და დაცული ვებ ბრაუზერი Comment[nl]=Een snelle en veilige webbrowser Comment[pl]=Szybka i bezpieczna przeglądarka internetowa Comment[pt]=Um navegador web rápido e seguro Comment[ro]=Un browser rapid și sigur Comment[ru]=Быстрый и безопасный веб-браузер Comment[sk]=Rýchly a bezpečný webový prehliadač Comment[sr]=Брз и сигуран веб прегледач Comment[sr@ijekavian]=Брз и сигуран веб прегледач Comment[sr@ijekavianlatin]=Brz i siguran veb pregledač Comment[sr@latin]=Brz i siguran veb pregledač Comment[sv]=En snabb och säker webbläsare Comment[uk]=Швидкий і безпечний веб-переглядач Comment[zh_TW]=安全又快速的瀏覽器 Comment[zh_CN]=安全又快速的浏览器 Comment[ja]=高速で安全なブラウザ Comment[fa]=مرورگر سبک و ایمن وب Comment[ar]=متصفح وِب سريع وآمن GenericName=Web Browser GenericName[ca]=Navegador web GenericName[cs]=Webový prohlížeč GenericName[de]=Web Browser GenericName[el]=Περιηγητής ιστού GenericName[es]=Navegador Web GenericName[fr]=Navigateur Internet GenericName[id]=Peramban Web GenericName[it]=Browser Web GenericName[he]=דפדפן רשת GenericName[ka]=ვებ ბრაუზერი GenericName[nl]=Webbrowser GenericName[pl]=Przeglądarka Internetowa GenericName[pt]=Navegador web GenericName[pt_BR]=Navegador web GenericName[ro]=Browser Web GenericName[ru]=Веб-Браузер GenericName[sk]=Webový prehliadač GenericName[sr]=Веб прегледач GenericName[sr@ijekavian]=Веб прегледач GenericName[sr@ijekavianlatin]=Veb pregledač GenericName[sr@latin]=Veb pregledač GenericName[sv]=Webbläsare GenericName[uk]=Веб-переглядач GenericName[zh_TW]=網頁瀏覽器 GenericName[zh_CN]=网页浏览器 GenericName[ja]=Webブラウザ GenericName[fa]=مرورگر وب GenericName[ar]=متصفح وِب Exec=qupzilla %u MimeType=text/html;application/xhtml+xml;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;application/x-mimearchive; Terminal=false X-Ayatana-Desktop-Shortcuts=NewTab;NewWindow;PrivateBrowsing; [X-NewTab Shortcut Group] Name=Open new tab Name[ca]=Obre una nova pestanya Name[cs]=Otevřít nový panel Name[de]=Neuen Tab öffnen Name[eu]=Ireki hegats berria Name[el]=Άνοιγμα νέας καρτέλας Name[es]=Abrir nueva pestaña Name[fr]=Ouvrir un nouvel onglet Name[it]=Apri una nuova scheda Name[he]=פתח כרטיסייה חדשה Name[id]=Buka tab baru Name[ka]=ახალი ჩანართის გახსნა Name[nl]=Open nieuw tabblad Name[pl]=Otwórz nową kartę Name[pt]=Abrir novo separador Name[pt_BR]=Abrir nova guia Name[ru]=Открыть новую вкладку Name[sk]=Otvoriť novú kartu Name[sr]=Отвори у новом језичку Name[sr@ijekavian]=Отвори у новом језичку Name[sr@ijekavianlatin]=Otvori u novom jezičku Name[sr@latin]=Otvori u novom jezičku Name[sv]=Öppna ny flik Name[uk]=Відкрити нову вкладку Name[zh_TW]=新增分頁 Name[zh_CN]=新建标签页 Name[ja]=新しいタブを開く Name[fa]=بازکردن برگه تازه Name[ar]=افتح لسانًا جديدًا Exec=qupzilla --new-tab TargetEnvironment=Unity [X-NewWindow Shortcut Group] Name=Open new window Name[ca]=Obre una nova finestra Name[cs]=Otevřít nové okno Name[de]=Neues Fenster öffnen Name[eu]=Ireki leiho berria Name[el]=Άνοιγμα νέου παράθυρου Name[es]=Abrir nueva ventana Name[fr]=Ouvrir une nouvelle fenêtre Name[it]=Apri una nuova finestra Name[he]=פתח חלון חדש Name[id]=Buka jendela baru Name[ka]=ახალი ფანჯრის გახსნა Name[nl]=Nieuw venster openen Name[pl]=Otwórz nowe okno Name[pt]=Abrir nova janel Name[pt_BR]=Abrir nova janela Name[ru]=Открыть в новом окне Name[sk]=Otvoriť nové okno Name[sr]=Отвори у новом прозору Name[sr@ijekavian]=Отвори у новом прозору Name[sr@ijekavianlatin]=Otvori u novom prozoru Name[sr@latin]=Otvori u novom prozoru Name[sv]=Öppna nytt fönster Name[uk]=Відкрити нове вікно Name[zh_TW]=新增視窗 Name[zh_CN]=新建窗口 Name[ja]=新しいウィンドウを開く Name[fa]=بازکردن پنجره تازه Name[ar]=افتح نافذة جديدة Exec=qupzilla --new-window TargetEnvironment=Unity [X-PrivateBrowsing Shortcut Group] Name=Start private browsing Name[ca]=Inicia la navegació privada Name[cs]=Spustit soukromé prohlížení Name[de]=Privaten Modus starten Name[eu]=Hasi nabigazio pribatua Name[el]=Έναρξη ιδιωτικής περιήγησης Name[es]=Iniciar navegación privada Name[fr]=Commencer la navigation privée Name[it]=Avvia Navigazione Anonima Name[he]=התחל גלישה פרטית Name[id]=Mulai perambahan privat Name[ka]=პირადი ბრაუზინგის დაწყება Name[nl]=Start incognito browsen Name[pl]=Uruchom w trybie prywatnym Name[pt]=Iniciar navegação privada Name[pt_BR]=Iniciar navegação privada Name[ru]=Запустить в режиме приватного просмотра Name[sk]=Spustiť súkromné prehliadanie Name[sr]=Покрени приватно прегледање Name[sr@ijekavian]=Покрени приватно прегледање Name[sr@ijekavianlatin]=Pokreni privatno pregledanje Name[sr@latin]=Pokreni privatno pregledanje Name[sv]=Starta privat surfning Name[uk]=Запустити Приватний перегляд Name[zh_TW]=開始私密瀏覽 Name[zh_CN]=开始隐私浏览 Name[ja]=プライベートブラウジングを開始 Name[fa]=مرور خصوصی وب Name[ar]=ابدأ التصفح خِفيةً Exec=qupzilla --private-browsing TargetEnvironment=Unity qupzilla-1.6.0/linux/completion/000077500000000000000000000000001226107126500166715ustar00rootroot00000000000000qupzilla-1.6.0/linux/completion/README.md000066400000000000000000000006251226107126500201530ustar00rootroot00000000000000**Shell completion files** * *qupzilla* - bash completion file * *_qupzilla* - zsh completion file Bash completion file will be automatically installed with make install into `/usr/share/bash-completion/completions` To install zsh completion file, either manually copy it to proper directory (one directory from $fpath), or run this command: cp _qupzilla "`echo $fpath | cut -d' ' -f1`/_qupzilla" qupzilla-1.6.0/linux/completion/_qupzilla000066400000000000000000000013551226107126500206200ustar00rootroot00000000000000#compdef qupzilla # # Zsh completion for QupZilla # opts=( '(-)'{-h,--help}'[print usage help]' '(-)'{-a,--authors}'[print QupZilla authors]' '(-)'{-v,--version}'[print QupZilla version]' '(-)'{-p=,--profile=}'[start with specified profile]' '(-)'{-ne,--no-extensions}'[start without extensions]' '(-)'{-nt,--new-tab}'[open new tab]' '(-)'{-nw,--new-window}'[open new window]' '(-)'{-pb,--private-browsing}'[start private browsing]' '(-)'{-dm,--download-manager}'[show download manager]' '(-)'{-nr,--no-remote}'[open new instance]' '(-)'{-ct=,--current-tab=}'[open URL in current tab]' '(-)'{-ow=,--open-window=}'[open URL in new window]' '*:files:_files' ) _x_arguments -C $opts return 0 qupzilla-1.6.0/linux/completion/qupzilla000066400000000000000000000010451226107126500204550ustar00rootroot00000000000000# # Bash completion for QupZilla # _qupzilla() { local cur prev opts COMPREPLY=() cur="${COMP_WORDS[COMP_CWORD]}" prev="${COMP_WORDS[COMP_CWORD-1]}" opts="-h --help -a --authors -v --version -p= --profile= -ne --no-extensions -nt --new-tab -pb --private-browsing -dm --download-manager -nr --no-remote -ct= --current-tab= -ow= --open-window=" if [[ ${cur} == -* ]] ; then COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) ) else _filedir fi } complete -F _qupzilla qupzilla qupzilla-1.6.0/linux/hicolor/000077500000000000000000000000001226107126500161575ustar00rootroot00000000000000qupzilla-1.6.0/linux/hicolor/128x128/000077500000000000000000000000001226107126500171145ustar00rootroot00000000000000qupzilla-1.6.0/linux/hicolor/128x128/apps/000077500000000000000000000000001226107126500200575ustar00rootroot00000000000000qupzilla-1.6.0/linux/hicolor/128x128/apps/qupzilla.png000066400000000000000000000651531226107126500224400ustar00rootroot00000000000000PNG  IHDR>asBIT|d IDATxieu[{3{PsUw5͡[9I1Db%R Nd;l  `x H+Xnj$ےl2)Ijqf=W\oaas߭rDx;sZ{>7q*4yn;o8-x}7Ck_G&O}wܯ f@._|!|)NX~#?;P['rmX:)'4=:g|wӵ~~{+3]sz=hzO_S瞾Fz{pR?+_~bnexf - ?_ԏOދ/.BFYuk*/s}*_FĬ@d0lyڶVmi?=u^ݩ犜(CI|_qZ吝e:"ʭk׎~/zӲq" S???܏٫QcBd4gr*>{rʨfP{TGq$1AX㪀Pyh꜀BnI]4%$ IM7K$b 2q*IYQ+D9a8 @T32 eEMcDQ|Д"8M JUWx'd7Wҝ-E*)iꦹ_?%+ )%4FTB# Z9HIRNYq4tThW+q>&"I$T*WKjEٱkj>C8P-vUyxY!g9 9㼓4D NDT5A8RAkrI]5kzT35i9D"H1AT3c׫@ZZ\Uz *81j6zچCL??'ơXPI50!\3/Oof1:rJ}(ݻ|;#R&fhp7=ly5{P%a֖ܬ3ضэ dExs|EbkΛ'΀:M6;PP\(g@48GNXC#ҧa@lj) 7eD \qORc׍=F%Yr2aiFTQ^#c4r³ 0)Akwv|GGGϐS"nH}o[pB$T*'C,@:\U#* FD99mH;pBzhOEuXv<aW 6b1v7ų]"9ΑbBcB6;8"" dSDDI}xS ߀ )fsP8ޫ:G~?O+err{>2@IRQ;f%"ᛆwk[a@ < :&ćd$lNb#\UJFфM;(os ńj0"pWUs 3բL EL ę%R}E>K#<,0tD hSŷŢ |:h?0 ^|Gv߃Do<|x߂ utϞp2״eg+cn]< lV!3@ n6'LNX=Kib)_@!%=Q-Gu,[L'[[9CU,ጜfe] gq<1&XA4ȴn݃7k̸Zc> 4Eo&8SP\&#s8c(1k; [ܭ }kg1Ǥq5F=)H]W+HHÀb )8\]Jʤq*RP~UIñGv>s{d;ֺ_wįܼNyj9j8MAQ%L5s2GG,ECJ!bxO8Davoj4<_.{TߛaƔB:QU4G$ԶU͟K]\ZV4ł,*hAc$u Ejkm17R Ǫ)OFa*[9}UbJX=ߴq #HՒo[bMC\q%$JÀoj p9_7<2yhp9`0f5/&r\AKg3m\g_q}Uu߼Fǯ \v9 دÉ_vd!Ty<|Oc۲}/6pu-iД0Z |{eH3ag\],1_)zeuRt#{=TA2y?k].[eހۨp*xIr _P;לks| zlpOrqRfQy_|EU=g\qa?gvڠ\r K̔T<)rn* U+Jtj-(D)=]?c|͘2ܝ'?(?u~|œw^>KG:>RBrްv-ivv̏h b?ќq7sqCP41V Mk&lm qq6TpĉQ:)X!U2 73 ռog$E*q>_uru-n)md ~+dطtw!+B;ɕߏ8O TJiD+|z_y6Ky Mm1bJvk[ђ;9OZ2~!JeNߙUy/dFELzmFLMsfʉDNWPP̠J㜙u.*C:QneH98u|>;RW5=W²"ThJVFБS?CL\PaԚƑ舜~w 5ůң0B45zmU: )Fb<'ܗʚE̪3׸4=KqVWG<@I7ϛźD&Du̖ iߧ1"my߻k(00WM(wq4дTg,Z^ YK+C3M9qT1YعRQY(&vC\Gwfm|ӍӗCvn滈QϷVf)_D϶"lɻ(ft)3|B(`y/UKĔ+h?U5zEͮHSő3wv9C%x0tGꊪIxt5~6GEi{wEW>7|t+!.#o; ~WT%.֐a9̔<-^#^k%dK9aTSIi*E)'j)s|hw>t?h[Pe\Lѫ`vcn[ G8sFys> 87 8SZڍ,Ǩ8+MayL\H@B5\9+_8k?gWR-eKXYޘ|;UM]v}nl%`y\DVūRa-CΌ9J]@.US\ j ]3m P%)F|Fh6f-b&6ެnӖ-%>xȠ9qQ].nE\-Ǹ`.!g(q9⛙usg=g,C$.m6vVGyt^ǯ^W.4 Avv`$|x &"݊ZFlYV"fZ?B[R"%3|Ɣ:۹|UPI]g[mCxHpzG+cVdv12,sb;Fj>zvw_yruѼ&omŕYM_#f>|ffdKxaS%lA1EKPO/ךj)4 1ØK9x$"x~{|˭XGf22z~0?kZ|]C8a)S[UqHrҊ弧2-B AW+tvwЯ/©n^Z/"ɨ7s3K~pw+*Znz>N6X9 p|Q4)ThG?y/ZfWyC,-1+ib28q82vkJL62m"WX/bnڙ-sJu|`VXY෗U`+Cg 6E VBW#OpX ?>ԛ0p"3 EYKNgIۂ> 9_{l&8R6~R{'v~7xŷښ|xGuV|3ZC5_-+,m<%`dXJ({32z\U3nCǸ<*nj\߳:<[ WEUzoͬ;~3x' L3^x 9xK|J,(3z4%8_M$z}Rh:o"&7͔û5W?x+/q/ [Qw33lF3j}gInNQ({|%QLF#f vkt-HSR?XuvnJX |brBDx1;}޾h;DRp/FdYQ v3ȇ"k lڤӿM>{iӟˎv9[59X9,Ts {vNAT='׏6tn\V@rr] Pnx @'Bn4sΛұL:O~8w;&E;<.Tz0f|Uѥ3/х'vR|~64bW v7l dH9*ދGʙ]g' j}}|hwF܆1%үwRKw PyB+[Kx(_)yUZc+wY& @ [:[ڟs -Lxy>}B3hgpu{NSS{Gb~5>u8ǿY88`D<[x7 I|SdnX|jMMD'Z/|ci^=#7A93*QT1Wn \=âȥ4JfUMxk-ǟb,*"&p^Ko'` 1uQg_×tk<;(1C'BZ̘7pOZ'ϥP|ZUfYTslCep vEVPS CA |2Uŧ^+˞t.wRdVU$28a=zL\?x EhF@Pr*ä\5*Vbߑ՞,B_@U¾Jn>8ZGTaĦsb@#9\1s= x$8spK{ ċXX`3GQ9NuFxOznt2.+hW9OS~4UsSBi+]HJVj^Z d^i[V.٣ޛQMkA\ A`~ovŬ Nkjh{4Dr[8ȆrmH9| 0=b>(rQo/u֙kq}o ?;=z14A$%LH H(lw Y a{gV ʐE7Y'j0ᡝzb-f-(7m MU!65kxgmX):m'j]"Bp򼼲6/&xVLRfKoFp2ءT õš1À#9Gp<¦`1T ^x^y3P,N`j6f FL`5 X4 wVK;ͦ<}\96zvSĿ &2ɔ 4-:d 7W-/靖O59DxjtCf3̈́:d5@$`'aZfDʛ` ko\Bv K( O`0đ㕗iG \•"eg.e.$1s8x#ͼ6E#u0^/yEaf3ޕ7٢\[oԞw w؟2 bT 0.5pSiLR)q'fRQif\q)%xU*4H5rTg4D֡ bcfrN䷬smc~M(܆HUӏ=t{7{~2Non[E>U`̇D2-UI-zo;=Cd'?Wz-p^9psH#ts"h.޶-tspy,ܿ&(g"zAq9g*)+ޚAԆwIx&53(u3fV%[QCEI,&%"zV?&e2w!+I24 a㗋BNMbQyTX;񝑯XESm +I8 0="Rkyb'Gؙ X"8e(JuL%v8Sz.Ti[^j sx稃T( &u?0" b%x%:A/^yK l2VދX tPzƥ> 21̓uVFl92Gߢܳ&/b~9eeMx 1{d1p#,­%(j; Gup-𕃞3p3ٔc[n|7X<젮+FqLGo;%57eXF dqg4()@+]:qu9E+_*,5='77^9OpqpdY= ^43U*%s(f hgxuԢ %ؾGdWjgASl[;i f{埯ڳ䗟?`HN;|}v nt#7'=g-H儣!2&GB^9ﴴsp)X PxKi_i~>R7kEv}J}9'>f]c={jd9aֽE߳[3ss}"Y(:cO[t}靖rm\ wHdJmɆ7%!r'37oAT{jWoR_l-.rS,-~ ՎM^ms~i١YY#r5ޕ')HNd*lF oYDl,4%G쾬_Q}S &YgUZLS*_ ;cbgA%[@ūuG{ ޘѢY昨y'\h, 'RJ̻|lp+T{xM^~y~ŷˮxfϬGr&8+{rċMp 7VGF )=\vPX&^R="lQj5Mjc2In`\:>e.@WC31樼%8גXT _[%en,L9ym)d빞wohP9iS:;uΥ=Κ'M+Ί`mи(* zҡ*dvBJ#o}W][}l:dnr{%w}̈́w*xjc_ ϿzȘ3aS?>UpG#^T7ebEUy\O* L7P٘}' d5Q󈶪~3' )rm=ZKUA)>VʴP*r7d Fx(1/WLPd)tFIu!;kđ/꜏C^\Qю=Щ0-yߙ$~;jZ@,ɣK)1Ӱ{{6l:ǥ={~(l^ u񱺦r$w8{QnqNWWPW{Qx{ϞS(?myiH&gQ<2Yɔ5:4N9fw*q1(T%-@ddT1Y<[.8;5T6m߹ug pf)=F{9&e̙2p3wa:5qYd%g(UMe{vQݤ]\ʬo,][6~p>[MfUpmC@Z͋Ry* blWYn[Pg3]R3c6a-SNNj+E4[xsJNvT)``ʬDN^O@QkK\3sY+HR8јy~ #a=nԵm5E!a;eI'eWT,. G>jH㧞j83!řϚie7nܡs/gTbQRO|p,:e2З !P-bok+iRx0HF/C)٭:圧C|눶 ˤpx}>V5|bj$xw_Cʫe 2}Ѭf+ZR_)ϕ9A@=/ntuM]܇@2#3ϫ}"d2e#eĹyKm+lͦ{Sk[=QM؛9J_@3eK.֯@h۹͠bq=1 Ϯѐ@%Br% y^e'Rv~)'bQ@!.v8ܔ /0, +V^9+bcda3-)'YUDtzyaN6u"F8c~cf^CxqgqR;E˫e2RDexc'{ @\g˹uĈ*NAyj96F+UTm4@fyr,D-#UT~;u'АoS)撕.5xeM/s+3^Uqc# )"ro_F{#Sl/۔AoY4ct@2Ysf̙U5qN6eVMat,3|;){3n#w3' [}+}؀šG͞W.dxqZɛnv϶ռRh^-q8v5# 1X~D| 5P cuKV7 C\\?ahcEL!v0J! ̢p]̻`g\rw̌feL|G1.)9w~Soojk?(ˎr.,P $8Q›GJ(Gxuq=*g>og[&?oۗAy'DelTOlOx ~hAD 1+cViFZj" FU nbE_e̾idlLDLf! _ji$:Yyz:Y*Q׌濺rr\[wG7F5UŶb̤`3>2K5'C΢#K ubc hT*14uG'WkҝfG+cG"Wqa^f2f?yg_%.xj͖C35ZVR )y MP<*FHfd{@]#3TQ)c7 J Ϗ&iRW~LJ֮x,)z|ˀ)̽Uhyҩ =Q2=bӛtKw2׼4!$ FQW<;CĎ'b" ՙgOJLU1F?~vưX =_}~U~ ӆ4Kn*Ee,:z{<`<C6 IDATN iUS>id U҆mqbЬ#5R1]l+x~5%`E(&OoԂ@NZjfQɴI=:1FvsS6A%\vp)YU؋ #/\d##ٲC#>Ȏc|2\swŝ!p\QZ>FIal?C_Q, q *(v' [kkZ5 bk6dH'|7 olQَpELt"z|hRm̞bLZw..e4f"Of1yv^|ޝKȌXD3RhMtӶwW>b?#EjE !/։$$`݉Q{1V$Л@ ԅ0F iJL?&izf{Pb Ӽ+E!mBJYCr$*Q8?RA"҇%IiBtS3K!AZB-JTrJ˯[͚4d(Њf kN%bPt>d q ^P@{L~*4P.cJ(ZVDFKu,w9(NFA4(ƌE }# Ի{d߶?!D3P|k m'߿/^;d?MBŴlFAe`,=ԙI@H Qaj{8y FiǨsR:нkCd'3\*D62|}*~ᕷڞs,_vUsL5_ɥ=g-J*EAHbRunEqzՆ"YUSh^+"o!/$qe' 8JM4Y}&/oN4b g?I8Fח˙9PhVC$K&铝?pn: 69{eC%h*Vr&Fn3Ula݃UE&q=ќȲ~w<.Qråy^@5NIhVj~z|oBסsU5$x.2Ogv6ÌjF|s$aDIQQg/]WuCz4Q)1oW!Pj͵¢5A$ zr$P_?lLBW8f9`LˋwtpޛPdZmC iy!Zk2y ֗_a{{BO4u^בcK}LE*& x0G;s+ nJ 9qAH40D| Fa :WrDpxoUɯOL٭FYsIK?((\! 0"r5| 7mc9e. DT/M/F t\e:2' ǫ<!Hҩ4K& m28ͽ˴obh>_“w5zfT7^!dEG2d61-n Z2n( >^;Oe *CbF#tv4µ-z- '|+lg_Q9Hs00f2- ߹5gAR(2]K`,U}g 2l>OQhkfJr:~֘4s0$LC+unQjvVg =>=d )Q˒LKab"( stw<Ŏ'~p;;pmJp^1,Xhoѻ$3i.mC6bt&/C/JkhNŬ㚖 FF߽f1(TIդᡐ0Li (h#\) {n,%Ub 9*)ظ96Ja86Ba$vIx>8b,#Xwe '~EQ?%;>rT#{yW_ߣ=޵jsuC\`G5Օ;{,9z>.@)\(fTcL^sX]%1;h8 QEy*g6uޝwc ĤQz>IFs)A@VT QD;`ba* e\N :L$b-cܽ{#'odTZa?1\rN5CSUf貢;9;=5lF;Ik>y Z,÷ (ȦYTzњo_v< 0'ړAIIB,`#)V^0fxPABM09zJJY%O#*|@фغz阓$*g(Gxf4FL`^][-h^|{b е ^#?# GT 2;@H|FwzJ+d-p^h1ik5L3~u B0H0,HR޿V>r"kmxwV*)R\5 džFLxF(kQG$a8&!hY#y"UPe477g_6ځz2!!gPZbk5 t^R_I~Pb4:t|e,a#lU 3jI{+dө@I4x<?:~9,h|`9xM&^iT\`,T Y5l[Eʄ|$+lN׳g"$s/Dk>Կ#MTfsk\J55L؅ (- 6Ѱ.Հh#] `hֱbdI<)JD Lwغzݫp @3fU9MGqfp|Ŀy'QVW ⓘ[ |s!zlB%DŽl{Cܵ}o\jV!\*X99rc ]&h)#7`CW_(MmS#Dĉ[ @ >ɱeAQ\ߝІ5/=eN"G h{o^ QQ%tiْo B!DwoJrr&w=qA)|0G/n5GSTZzVRhTцl<*Oet|p$&{阡iɷrr}G9Ůekt21&!xĔv)U)4%bbdE>VnjDA\}{lImTL=q2k:] k41IYG%٦Ldd=?]NBL5_.M9[de]ɷ Cɥﯴ"c9b!ĭ3u A&@l~z_O:;c { t.0~@0rc-tliecJDFiW齨y~D(hwc|J#`=Kٻ:_u {w@YPVH;syQP]yٻ%zOwB\ڼi'd;D=9&S ]+"b<%YҊ^ XƯܢkK %1Ư­.a|. 5YUuɔefqN̙BB 4|  =}Ph(:pp1V+L"]αL> sL+FF޲Wa+pe, *{z ,?,:0MC ;a [b3OĀoڨPJe9P!GcṈP߸ɰ5Wa[&ޱ||2!z_xa2{owʳ*hxkyAe,&HF^"wFlZlaK}Q 9ERghȕi[9EES\}&7]e21Fhm*FjC7O9>1ml1zT5mkω>o`comsTW14+͈gDrstYbG5,g"Bk /1;l`ILF7o1g keX *ޑ|kWD%>>&Kзȷv=;!n9wӷ>k[ɭWq]GwvJwbwœoq֢v5F:7K5n,<ɓ|&W` +A).;jU&*0dx`㪮yדt[]D_h%r_{r?=+Ee ~Ĕ#T5묞<;Ւ|Dz|FLY۟c;<<[E? w06"LC~uB2ݸ:ڣ.S2'a2EkIsՊKxvvv|Zz/}:p)Fhdmh8\E'mJ.#po^_&[QaF1'2mܻ=uCB==!߽- wl,nOw 7mGdb&_|20UסJhHmKB!oKC꛷@wrkW |g2Kð\J_!H;tXUEi5o;F+ͫCˎ 8;=ڵ./B0 S80ƴ&r" GX%*˖xOɯݿC?b'B[KKT_<'t,0B?>"]BgC2y>8[莏ے ,lT:yNʋXr-֌_ n5;~Au媀<'m+tGem|BA2aظL2gǼ,n-cN(7oݤnc4-n—vE} elleAk]|dyq׻oϗYN GdWYF |`ˊ ]o~vFK6ݢX|v jc"J)^"*0QBײz負=|rmh{5f8y.T~q&m~u\>"cυ8`''`lFux՝xl<ƝG7;S{wn^߷lVyF,ah<Čd"`|g,ަzSb-ǰXoo j%;xK~ R`G~qjQʆC$]Sf1ѹ0E.}Sf,h|Ą=8 ޣwت0U);47 IDATjEZɄ,AD CAʦEg9|&6e!6任tVx}')iaJ9nRay- W+B|9wߛOT}9?}l}YF,OM+BLЙ9>Dq貄(ʲD)oNo[KR/[d!"uQ:v-+dN@'_P9lXQZHt L(CLm.O0;L}λ[VV*- bhm#N|? ^;qU<% #7ȶ.ͳgj݋Sz96s^1g31v{08=vk5r͋gA[#}^ҞB *П;^FIѲPޡU7 [M7,"ZnoLù5Lpz/zJihIcٍ\E)%v/Zb ;j)#t ٨3Hu hl!Hj ^s=k` =x"AZa2pzrcAY#o 2qGn{R_? ' 0~:٥/\RCGRcʝWEIZ+K%kB/enP6F}! =:FB#{>4 BղZSl^֘ghaeX-l4y$& ;~v2,9L5(S)WGՅ$~{صJf^gOVp9 x ^KTB _lYI [d4dIKk]KVV!@l a$C>zHBGNyk89~ܿ{Z\96:cY(wZC۠ ggTeLn Eӆaq m y=/ OT#˅$ÖM2 j!ƊIM$Ւcxu'Of1%K%`x|4'Ns]F Rdy.68}'V$aL^LVkN8Za6-] }o?izOm`3K?K!M/sdB^R^K{ٺٔkVl)ȧ[(%:8u)O3!bz,J+ ujDd胓Tp l&uYcLQbRƳxV4G Fq-X#@Mwv34`݀2,%E S>Yŷ4a1/ 37~gfhu̹o `0ʶw>W/^{[ׅHsBG(D!1"eֲj\طYct&Jm43f"%QB=xo;t^'_Mc:Ƅ6,dt$T6$[y2PfsL˹֘"Y(ܭFUH~5b~m.yL!&eIVJitջ}OkS~N0J4QjγR L%̼Z辽ig f_~}cs^؇|ϺluotDQZDyR/}GΙ0LI&tlCЯB׽ B{ŏ6˿X ^?_ zŇO`|͟\?ōo?\,ןxrl: XIENDB`qupzilla-1.6.0/linux/hicolor/16x16/000077500000000000000000000000001226107126500167445ustar00rootroot00000000000000qupzilla-1.6.0/linux/hicolor/16x16/apps/000077500000000000000000000000001226107126500177075ustar00rootroot00000000000000qupzilla-1.6.0/linux/hicolor/16x16/apps/qupzilla.png000066400000000000000000000015631226107126500222630ustar00rootroot00000000000000PNG  IHDRagAMA7tEXtSoftwareAdobe ImageReadyqe<IDATxQ}6x"4!Ē@+Dv^5/4SND*b ")[yJaŊSPi4xEBDzpsЋˈJNAQ4e+- 漒 ntD&(,m.,#i}8G{o8)Ki}8xw|XΌmeE7T e:Gq/h!e񾬊B/ '#u_qihvjůQ(6φҺ<V^4|ؕ"SlLUQ2έ[hz6N?y{kOZ$9]"b3Jw;"w*g>~πەy|Oǟ@ ʟ'gV)q#?裏\ᆱ/^;*. 6AP?]"TmDWסyE恵QXα;0g__ Y-?纺ęsΎm=g]]g=bYqw31r{*t6-w;̻PuX+BUk)7^W_z^7^"+Sowvhx/ Z9OO~??𱧿{>O?xxD $PdP .t!4J!"j7**VG|RuX(hgV&%+2ê6(PY8~@, ={$ghxw*aϘxq!U{֧;O?s7BP|3"Y+6[ B!J`,kdٟ*p7o7_yk_ƗKw/Ou(ciNox/<nc'c??ٟ'>~=ˤ`,Beoiu30F:㈇P0S"*AȔIb(]?{%EQ@@`:Ch@VU(nP HX)R6E8j|Do[{/#qZ'"d~XM\a;+sq{RWr;5c,bgSV<2ERsډyn rX$RsS[=lz@}/#ji.O _Ģ*4BQk𮏻U _~pNx#i m@\_?T,=&w6$:/΍=IΦBoWHUU-0$DTqZ󯯵Z?|=N=H:%$"uBeu=MШIzs:s137@ĔZc"uNâ^zo}O?A<{Vw$k]rƿ#O=PhoJp2LH1(g~A)gp"2RjVVAf*KUb{H0 "Yiw=֪JD Zfw%1N$0˫{@]eQ+~Mr|][d͈CJ`]bYT!E"* uJ`@U5@ vMk}q?;-@XjlTZDLZ)Z)X׮!jHUI\y_}Ww7^/k%*S@}CԿIN 2:@8c j^,I01R߃s j &&UDH]B2@2ΐZ}FDWIeM9t-zR[8D`f(D e&H̷QNvJH:ra<4Ӕ3P/^#ͯuL8cPWۋCX6q* U(NLR>laB )1ePf'RQ% W48ep!%Q{&O9SfDulZs'eUh>ڳ@KEwT"b1CjU V3"He:R )7aKYH˦(kuƬ3L9SYSN~#TjU?_Vg]+oGaH؏}NBD:Fb( wyFgH)$fq5TQdJl$URRbWJZY]]̌eN#R( p@uHE]Nч])CB I|Pgp߁ V77͆jCIiV'Z]4 `*ӈ:OJL.dL@ Q DLUA(LBMi)'TiV8H_8%FPJ Uh(''*Rr֔;̗#(iq*RP׃@v#N)gTA 3 R2)Z9;PNDH&S0P3w(dA `&2> )wJ)AK!)E@RJ) ׃SR~qb"fS""ĵ*{K/~7LXk%w-@?W/?g.21׹\fEPJE)3J)Z3kaM⮂&R*yMAFq*2*PbY#ZžEV\5ͻUURf'bP"j N՞ͩ:OnUU6ġH6^U $*PHkZ(Z0[lTR* TCi@TIjtD(2k)45kҖZ!Y mSLU"D>}s_sW[x;}Ugc{7|?u)RDT-y0F2ATU%Ik%U0g )T@dߩTlL7 3XpuP&{)tQK1 1<2IP||iL*8es$#Ld.PUB΄ @4,<@B"+`kϣ"E"J` sTiϣw~'CN]YZy90LRD)Y@Mqj~Ϫ$γ!=ʙN#%J$@lJ2Wlȋm2#d_Q ZKD&Z+4#pQU\)s&X.cٲ7yuBQ1f-0gZ|8psLĐ%1ș9U1^Ӑ1g T&W înƒ_#b,,@c‚/wc܈~'?ޥ_pphqD38gP̆G} d9_/3li74?a! *6vG~EĞT22Miko_RIژ*n8wD΃g_}W)gg*iRQ%!B TRg[d$jq,LNKdaL8؄ʯeQ-܁R kwgʀZ{l> Ғ 'ڂf4=j gdU;hI5 @:A`NlμbhDa! &AE#!2!"W>Qi6`&H-^;%>~ħIg 0!u=I6-3d0徺/@GJW ];¯HaBF8OIƯd Lj-fZ< ЌG@JdHFVRTW{G7?wˋJQg=_w~ok?rgy7jBIZ̰M d F6C0{) Jfu(nɃLAЦA %ARdP"@8N̷'Zր9|kjݭ: (~{(B9Z N`6-b\6DLl f*"XKz򘵪R$nh)=2-.y_Qz`!)GK|BYQ5OyATWf{gp;JEp~L65 :OmRʎ& 7#!U):V(-jZs7sl_wB" A6ػw`PKJibYmP+I-Z!G.]&0;K=UPZ95??,,pY%r&|=[ohC@f6MF-AvvmWjVB]#ԑ) ⊄ xOΩ)ġyAb~j̧=Yp3 >fA [n~fF*ZgGq)gp?Q22ͨd,,ubx9ǵ6uLN<OԿo[ڰ]EE;R^j C3Vk$"la,7sj +?Ђ7! robxu+2'8^i<ÚD3d'z )D2vJlr b/eZĭ*cʪ\"u*4ڻq7*TuN#ngBw F ) 3Sd722wk!l>qUԋ y KlNj +#: ;._Jap5uAw nrDAӴݒ E&w;\}/|ů}8?<$pq'>yOȏ }!HIa?R99! p ztF~@::{`zTh)$+\)n@(1r}tmS7p- &^R[`QRahU1 SJa0svXb'xa*ܞk0}DX&-µR Yq_6yJ_>ܲ-P48 2|t tls.LAWi٢Gp>"!lGe`JafwIa$ 'Y6*5ʢ?U<uwx!$4Q&*?O0 08wB)"O=~8ˆ.AQ ؄jouqD=:2_EqA4rkT42ȭw4д ,n)29,NX|C{(-[ KG)7.#^-,mܭ;5Xe ӜN|50G$선D{D$ dg,ܑ6ns"ɕ+5fA]g_3-};@He)TCK4]IckH8sgw gőkG59O@~D&'@%CZVi|hA wbkrtpPK 0s mWwB-,'jV{~X}jA#_]ǬE˅pWe1D $jic_68*f}y. PD,QUz`k VlNYġ6&"2!<6G+aR\iZ=-X8Hca uZgtRN©x@8uDMqW,ym𐩖!㴷"p^sQCwڃ>zFS;ˆ.]v<`X~R-e1>AZ.N922=`"AJuH MpDJu6Č:K@iE9VpqQch!rgA :[S"Ҕ@93 v>ٵVgM-m΍NE)]؉`IIՊIQU`VŬb} ZPk1-Q=\?G m,T-Ýeb5/Tk@Ʉ]+2^IR#*-޾[KeX;Zj GY ^Ijl- -+R?XDddjq|Tژ \+W(Py\v=_<.^|KQaAmY#;(aPcL2yjÀ:Ϡ)|BgwjeR-\|rPfdI`N+R,2AN6G+ K-b6{U+Hl$fHJTK^cЫ`F1%ȌcmPNNU,J?` @6h+@aS3VC'2?{bUR]/Иb(En7,fyʩ 0Q ҠÎqE 0F=rm.y2&&|F4:tgiZ=35͵DId9F:%Zz2lт=\ĄKW]>p2 $AN)a=7Æ< [ B]%><]0u"3knpD _C cPaD"x!K #e[&0u` r IDATx-hHYl,Aĩ3HKIeN *L1b}R T+BB쏎51DGӌyό3^&*l;O+:Axd'\6=Ʉo0Æ]B/cH!D,11CbY)5.&{T WZotʒ[ISPu CPZ*)@Q ЖVR,9t稳%FGd!QN^8r0 Ws*]$/HbRp7Nx[%N]s72hK Սߒ&54~<[a0|l,^22 n0,4-,0QDqr6aLf2ߌ JRAn^L6 ܬ 8ݍ<d&]"N(}tmTf.q%a3dc/32nMM˛9_D8 [#_xd&~"$… v \u_8A1DQ]i|wQi}!(HU[&0RpQa.%Z2]]x@"A4j)[epRj}"- i 3[T?7I:Q oNpA2BvPUVN.Ƿ4W{]4PFjyZ(Ds[rȹn"P'3hA=g\N)㌯&7qm` Ck+9b-Sv*F;FP>"r-QgkS #wgп@'KEؒZ/pTW{ш*PU =7j5\LqN&w RԄ ʒ=J& [ӵX6]n#!ƸpwWu| x8ǁmSJɒ(@YF < BEՕAxfQic`]bt d%*ȳ#x; az=8Pˌu+hIU[tYqؿAM]b\ȌMހ!׊}k q+/znol{F^ђlRS=[dv^y:>U<-p4G#[ow `2xzFVv3%• zR RcJ3SP# 'uPy)A*Jd -*vі^F,9!h>.Kayiq.u Gf#{ V7~AQ!r6%8(u3z;>?=,< QrKȫ ZFn7xDel4!msWR94%@H4 ]PZ^1)wgAZ,vuփB8qd mH9W"32{ɠ}Ǹ̍!PJ} X8Ksә LfBGk㡃 .8.3M7^^o8*nɄDpaIafd(2R2+-gRi4rqA^_a?b^5qk ? HZ Ys%-Lĸ[@+b#S <jW>]j=Efb܈! gB$;QK:Kݳ?a뎈N^i=UпœPBZ<ʭ[O7֘e@rjuR+8AHCo$ew2NHHݒ9>(gx[3t@mޔ(Ag4Zx߃7-2s |T)(=W-<"28Jk'!a 9}k'3~7񕷎G<k[E^wGsŬDxp }(,:W(!'@:6‡tvܬmfkP e?D͡ 3{o ^>ށ x`7v3 |ڛG+7{\{m{\߀0W#%%H=ִ,^a>u9>6ݫ1ng!rBў]J/C@82x{&(eE*F9 $/Ψ \~_~ .qʷ2?ڡ'>|K,̸剬(`pZqE]ٻ9)aI˕_: rnp. { Cb.oz|}㰷D̄{l{lsjhBT1>Mpfw2K{8vlH =#=@UQs*::Du%UfkQv'Z< ml{Y&# ݲK|s m&!a\iTO;w wfG4z! Z&D pWZ"3 弣uخiTD7yu7:n®4C`ERP[e{X=dČ'[`^|/[Jr%‘3m{\հqKZf?z!Tpe 9F/}qi^LϪf5cBRs rZ]Dg֊yK`S')Ma^lR-lq~LN뻂AnNxžq.w֊+o6l'>~&;0ސޫAʽweZ;NITz=H*{}oi^;{'Yʇ=gV?zT//6Pd}*g#=wqܵ j]YT yK6h㜀zxXml4 xù۬LFzjgu#\$fs*@7>diqaɉenj'fdTgt2'[Ǹ겔 n ԥ}\HXq%#ܮmzZOiB⃯ Y.>df0 0*8"a-kuaXƪB"s9 [mD$1aI5O^:@>Ͻ~M|/G^:ha4@O}cW,\-"h~F5prȮS}ӟ+OE0t ^qx€.p0Vx˺NV^@yiilD߅%"he\7ns/g__z*.@bx:Ix<מ{ LEn1U2CoD˔wk3՘#»D<Gf-sKCV|65"6މ9Ep]FO֨l0J=71Kua6_ 'YvK.%I":F*QBu0Qe]~Ø' ;O$R6/<:R po6Hc* Me!CG= G|[9Wܿ7{]G]/ΫҼJ8+׾v٣ZceCiA ʫY}v+.jaD!#OYm,,(@䔲[Z 4AmMb2`&3Gz _qNw6]g DX uO!/ϨdϹmbBLHiiJdFQ`V-ЄCmgomw[kiFFyVkx.m+346K+ѻz53?r٢Z.hubk͝zkds|2#Cy[pΨՈ!vR0(ӄ20ǣǵIHȳ/у nyeQ\9^={/smRc%˼a A?5?q9 oVGaQ06RɅ5vpuB0yP$%\tG#]?}~o3߼WN*+dz:p 2ϳqJ jU}S-ӰEСjD\cBٳ?r t2ܗ֓lT+p{ zh̳q$Yn7NᆰάBk'M`}{NHi}0Xyf/&p\F$jN(؃!c"w"q5} O\؂\Do;GY+s;_Pm vHdeڅh7 y3OgHV ?BYEcBw%dZ6aK%ދoT<}y }f=;,-;pmuMh 7ٵD\G>5,k5Q#t@ފ,K\+Ҝo}{PWׁS7:%Oc343M@k9w߼@% CɌ:y~[Pi!adf˦͚.3ViF.^tiP4˶ckԹn5""H{[_ְ!URc.Q4fxFD"-> p]r3<L%l; }. oϽiIvjyI_[D ~vo@Đq2 N=WvoBN]!q0%/Y Սy|7;Ax Rw#5cԜkܒ;*Z!Ej$2lkԱQcB,b-L ZhBS࡜2K-Žk' DO^2jiT IDATLluu5|,'w.dNkB·]?Bۻ>k(in >Zz1YzV ,/{Vx:-d'6ʛG`S8 DIf ]zdhQB-R? (l:TvR0A^ޛXƩ5WF 0#Yȱ,bSMԹ{Jx*8g`B,^w7/qT" 2gG!{[E66NH^U(b[KYAPF Ē^tG(P:- x%vE*~7'7Ȃ-8Rm}2kp^:oYPT ?+&s3<7@33Zqi=i;4l]k7O;./%4[lF;űK܋-91twLzD bQv$-`a:h##&/[fV;eWр:9MdDG'$}^L`Y!,: e\IU^1^)Q])VR3G> QŽ3uluWjalלo>c.eW!aHJčk %:N-WĶ+|O^> E1#.w^8ChγVK1կy&>z!>tCwfPzZA81`M/E^eOy aXXo?"bˆ2V y&G! DjtUZP:NJ`'XGLZHk|_9r)9dF)5He Vؒt @"V9-_º YKpKJ&7LW H@(NĄZl#X PJ'Ck"V9V-a5uG:|>&|!0фbϟ :\zGZq\*21j@.XH ],>P0[FwF-3_hU!ނy,"rJ`}?, l)7^7n6E(%͞,KGʬY PHP2L4ӫ&H!,==Tז۽p=GYYaN[WUf޼,|t)_\OR8":nQ[>rHq-%;Ɋ}// uo}i`i(+sJ kmuM>@O]pHJNZ#>~%>#e6`.t &\cݙZph 3E(oxw~mX.vɇx1g/q¶M:< YRď/{at AfuU06Z *~]NTh5I;7|*B<֦,ĠX\S.ki'FZU*ZS-2';2tlO;Χag@,ժ ދto`hlE{n~Ӯc:Neq4CPek7`_^3Pl'F 'O464bc]D c!NHɰ09o0:=t38طʕ% ss}?.X6ZgSG?YHAdYoձX7Cƫ[knovn~!"u5u-۹-ɯnKWfo^72Ya7%FNc,3p6J{X! oo$SMp`Tat,y~v-jVSZo؇| $f]M39<7)8'e-*Fp'cg6 "?&xm/y:CÁo#__-ulyyGg;mzwM{>p1g)s pcm0?֭4ݛ%G Vڹi$*#:[߼Dm(IلpU GcX6ʭTV*5e簊bfg4wC.wI)nW{D򡒀|ėcXp$[g)i*̩GDD,ת(me &nUQ{|~pf RB]JA6!N&`\ĜmNMzow_B@Dg8l426x[cOe7;,$ŁsJ}!{ /zDˬ< _)ʶs}movn ߇1ye@faEKo95`75bJ?Rs-шm෢ǰߟaU j*Fw^"Tgj*#vC!=&gB(*^~hA{@Tl74='[%B,Ĝ 'lMD#DG@|!%tĸqbl㛜-""n#QPe$iȻ+#y~爷uAkͫo%<dWZO%ЊVzd5 FnF=/o_uiQ]? %fK7#ʈ덟7ᐕ3tbsL)C F@@#hb ʮxV`:1΅xuf&ZCcbc .4Y9p2|sTS {$:3sЏt~;wnF7]+.3OjqOP{+֣*@p .Y_>lJv&*z XlZ&Q?泱m @^*.t`h5;ʍ=my~gv~jWս3[UPq >4sw|cqQV08&1Z0W?h}8_z廁%eWNNѦq'9-'gҽ!BTDQQh985rr6+]~?whסneY% =)g[~g;fdڽF~?}vή8"on/U\Yx@ Ѧ -N}Q߹3p[ɀb K5\~װRvO*uTyQi%=_B(5`utl4_[%U`@VXϫXiUl(~/w"%>=8䉮PZP]-v~!4UceGNZ o M ,ڽPQ~O<2gu!``5GChęۮϚ8+t ;aToo뛟یnٵS*Қ^#" U؍~햎.PyO )qtO`uCٽ~-@0<{w-Uzv s6;Kq-f]ǂ?Z `tiIB5p{\:vk&SDM>'nLC$ĦJ9s!@^DH 6#_ۮan (j??$fyΖG6nU,hroÉ& gIy:gO^ yMZ^Cg'rf7+yq)`Z-"G}g_uoe̐^N,*\!ޘT͢|j~AbϭOr~fL9cO6tpD:͕!Bhr|̓P犸TBOB_KΉLS ؉2ͪ9XiQ :kʭq5۾aD6xot^j,Ƒv(ݼ"巉Ii&I`Ef˴j]KxqH|}ϻ Nێވ[]'QR-\9M4)ҚQ׎mpFElz4tDbXmກ,b|=%܆!_nfm12#s0L)Ju┝c\+FhkSU:`g#w}z<<ަ'/v\je$7:07ZFȹ4h"6 _7 "A1@^*ŚCǘ>z5G! +kkeR".a 6qN%a!'noR#%卡c%.Jͭ K}M/i@+͋+9/nyhGJ%cPSS3w_|2j.sl|d>`)@~,)T*:seK{F2*m3Z@[%[ZCF@]$vtJKͮE.!|?g|ruuʋM66C vf-|ɚ/P=wozu`gApsɳKNRW. X>5HX jG4SeZVڐEH-l\%{c<84DZ5t6!4ێ|yܕ׈C}SZ$QY/1Iv?ءWl-{{dt UdV_NF͙O³U2)2uhc;1Bm*?% x6 +OR\nnޓW}Ryn)g:>GL|ǿ?M캞qlNSG4P%͓Otֳ)ך|^:9(:7?No!v:#:clGV fkq$ G͖ sHs⍡kwC {o.A|Pf %"oyoA+ORu T˕#V o6Q!͙OvwCyovvW7ãW`YJVM%j+Շ,~OtIo}م5ymG(e^32"_Ϩ!}6fl&ƈ5j~=ep2 F[$Sx30%eN=[_&.6̠"ѯ!y,כPEX:L]Aj_u ^x-A4Di* AsC^B@*%׊xnO.(qi"n:HVO|Ζ6#4-ʬbq0KꂃZ/֙ , wF ޽-ǽUQ*5OE# +er`9`lFpUx4FD%Q,;KsLvڌZ F.,Rݳ6Y}iC׮/ CYGlh4Tl6v?-{gŷgMMFrFڤQHCo 97}mOhMrYԈ+X]`!6!YpUL!eJ%ϓYc;F NBLS+TePLG%Da].<1_]"9Æx10ĥ%ҚN,0ϖQ"UTritya"_>9m;G?gE_+m4|t%}Yhy<T޽:C _fsfʉ'RL ,յtX ,їx}myʧ뤂asQEC ʍbuAL|Q8{|9ꗟŞ|dC#%?{zɃMǻǽLvy}nʔ*^5#%+ x J `C-&0 <2So@GB2)M> 3zGKT9P#"p`3;K1GWy5+gU',{=c {>ZURP[E< kVZإ.'_̬BBX4 F ?"ep@X]yz=tKjG\Bbr:_"MUXy`_ΉcmtA?~ OB))Ӟ9wћG0PgLײG APR>]8٭{kV7$kFnkMIpw(3%ND<]"L)}s8W``66tE}GRH=w.\ozlagOO* T#h[JXCslʌ1P`ʬJB/6<>8yu)s2ϧY2!K!F (bUT<>̐[kUQDDxTmf_vw3=_WѢWTT9rD>*eVVJb:Es4?<g >:a+M7=?~~I(|nODdoLC0ƎhUygᾗZߋw VDܙ{ _ ]n 'K01<ǷbC^&cFe#}4͝oَ"Tl95E(֍WQ*O3yv\;xp‹(Iax2'EUI'QOikLνөn1`x|ɇy^x%gԆ#^Q"B^6"΄A^mQ"Rx#9q*> alV~vkw9\ã;#}0=^ FZJ ^-٭wnUvFE\#ۄCXu צ.-34)F0RHLln΅ {y"ͩIm>u>=L: &$d caz |qsw؆ۼB[•WjԠbQECw"~vq[O.w9,)_86]w'U+ IDAT6ڄ?m2vkW;U}cစV_/Xf51{ULMDC3a򒧭`mFZ=jWwwa1%,^Rɏv;R^m5>A{N al@?Hm!D}D34L3ZB$C_@?`wW^okZK\kӿuz[){#1Q:mXrv!T]ꪇԨN ^aGNH n;\)AOW,@;fnk! 50>W5|kFFHW[Z%fllg>bWoo^dW[Nppex)/5"M@Ece5+BVjeF*yHռ?i!t3K.TE;G0Qb^fL21Lzx#'hy0nisx}qo(:G<:8x8HvmT"ջ`rYuf= jZm7a( 5v0F`0:MO'#Ku,ݍi 2`@;YSJ|ڵ^8*b."֙` `?̌qbJLPb'#)t>b.Ŏ2m$8Íq-lW絤x;a{]|M;^ kϮMYَV~]Z;ft4Hᤏ<wH+ = yM 71u, }]\Tt(}!Ҿzo,Zһ뚨Fe |2na~L{ksF⸡ Bg- ]BXUXQ<zw&[O\00ﯯ rta#1Z~S~p8dkP+ٕ-ḱ^ժ> x3N(h  6٦xAϦJFwWfl*9%za-Fv]i)}Tdt _t#&Үz~㦁Q܍6\iE~3軎}1%{ȋxg+ʃx,M \U2Ox Z=~5zfU]&A{aQjIcb*T0EU VĮEŔx~)(Cבy/ S.Rݔlgf>ei 1z/iW#G֥5reX<^o.uEUQn=A{:dK@7 ~K"9g35ny[vTsu[kT6{QP_T9gW';>;$(V_9s 8%z^(.e=QxYT;* ?7od<#xw?IE~`ɭ3@,5={Uٮ=w=R5 K_*`FyW=wJI:Rz 3Y!pE:A}|?6["!e,1 -FQԢi{e@KD)!cǣ@{XTZYz sZ!Qx|H|dgSb* GOm#TāxSMtdp>"6p5O{S樸TS1QKo=O/`;Ea e!p>'&=?;0*-wzv3gEC r`|>%omm !R X7"Y41w=^ XQ Q}Jiu*(һBk|;x{;f4^7Y7.ׅZj 7ov3dN]Qb R)b<^Jˉ(uICoJ>G!@ (bIs$^.rfΥ٢O,whjӳ ,x6ݛr , Um)]{ϛU(Vԓ$" |oӱc#]d~b(oz~q96{猰VY9ًHW)rĽv rn`TnmxsܹX9$Pc T;eBmyl%\|XgDjQ,#}K!pp̩#/Ոn9GT Us{=P{ˏ_/v޸5-FkrTC&I$`-ߘǪ<υJ,a_2x{ A!/2`5[|Ȳf,x1[$:L 4W*qqg` 6&X0>ýÃp`x 'Nw^gWbOV!aEΊU!Fb(܋u8$\M9.9-)RTb0_! QTfS=| 7tN΅:oxـx#wR;{ \P29Yw+Hg|.5kK,7ɵ\{ɭlT zp,V/xq5 r@ixBG^':HROрm[7a>8k3D;XW~ Z0vq:r]~׻9q'7)Dy{'|c`7dw/f>ƭ}㈠mNbeAA슱-`3l*\ }QHēw["WDc e,ZV3rPDZό/ɵ8~s RN&Sc$ td\r1,/J:<>MPw TGmA)^|gsE)|x'W|燙'1y9pPS\uHk ӨlVZɉQυR8rQ^ yςJAT۽ P=ZUGnզ$P:~.~1x*9_Fg5>}YI_[Su%,.pV-2DXK!c~p1<Г˳;;'[y{ ] RE6I ĺ?y3^w5_xx/3 7hx0D_W~[q)JkJrIB*.9%$J(TH0.}s|g~tq(Co)ҧRJds(@l"RۆND?xOV CQ\9ލ(16S-@E=X`uSrY;Q_>ϟP2m{]u=?ϗ|zui4p lA࣫)DP7]`[w^Uv~f;Qd*߼עp7JYkp"HP'.R<z#饴./7K CJ1(>e-[o+[Ev.WI\ˉ;Qtb ̥(8F%CL]w3K [IT1T uC% 0]="~z~}czIץmuUjLQ ?9n鹔xx˜ W>(]< 7RMH~w˔8KT}6'u ֩z%)^h|)Z˂&'Yv }9^(Fؙ{ AlH& [N]K0wygʯ^r3U9W3ķ'l`]_sF;Od#ICT8'ĵ}wEaya)ףh?_[uЉ2&1sfvH_̅\ _3®eRTZzdT9[r&ĝh G \g/Ɂxf5iMj U8In7N8&uGynpg Py ?%[Zf0%f>9+\b2Y*<0̧gWGxp43Eӟ޽+_;MHE D3@{[NrjwOXդ$6}w=wzk﶐%?2bS #AM}Vz `:l̜2I Ws"]c<@&䞵n}sjHmr X} .@{M]?9} E΁@Ee.uR` T q3\(<=kOʶt8SD!]tHA=[ ]k뎞d`_`?HlDHWU>Yhi7\1jUVR#Fkk7mN*Q]*UeTb+V$ CQg#!DmQe/nr?<tJ|KG&('?L_X`k͔ 0xmE/!Xb]ܞ6Z/սA}M5ՀAJG>MGdbQ4UyX'ð6^MO^yNHѢFL4mi ]XC%p@$G3Q7[4or݌A= Ű{}XbL%:> c4dzKQ)n"?x~-\i*DdUvpol;(Wsjv#J3Lu([˥aBjJ)g =3Za8Z(Iuo i޸~T%Ĭ9tǻ?y|ο윋ws.p?_Ay_냀/#|~ }l3hj2;%SPB7\=hk2HuXgScbLzN:8WB*#p9j(jp$%C,~Zw|udǡ>]%.X~gszJR^wė{g!^r1@Qظ$p^W"K#[:Vzջa]ut`BlVRj چK鈪ΎJF9:2U9[W^_<-%=7F)]Ow\d8D4;{E9DŽ:Aa®TLC4W]|&#'57]mlz7CҌ~ [F"6L>d5q҈ɂĿ:|{mXKv\ 5SCzRU (>ۄ+o}qtasI>/}jDuQcMmMΚT/.yt|>s_\~ L- +Zz&l.S◻T8:9fʧNy3P ?" I= b] =[1[ހoOi :iS]PyfAj\/äU/ 2ph਋ 5 ULnjKzGz' o2b~)+o=XH--#[݈^ZkJ}d3(1 + (|?쒋݁'7Bp1*%8JDd5A 串˹pWaә.fsG[F!, yZM$HP IDAT{ze\x2`tͳ}JRl&8S@J!.Hx4)[Tk IX'ڹiQ"v9s#߈0)$>PˣBJ$sSZ|z^V u"x\'h3K>6_g]*M)3Ԅ+*74扫 "$5;NN s}d P!ƒ.p!M6ܽ8xW5fUWi:Y=7X\_h5BD;A{pYdo.f~~(<+uiD{Z+|erNmd> eWYaBSʲJ5"A{gl*M^7QQ>f@T@qLǀQDi:pt#as;79oY @Eas%ii"4^(l}[F^-Zh":$g$vxo(OL*J'NU^/uO{oؤ@Puvlk- .C+0+^> !l6w΄,Ԍ`D5.ksK~mm( |َOw<x> s}.8:h}ԋ9tJ\ƿkl`:ⓃX߁:]8"c0:|Jrr2çVKQL6[6ݱR<b5j1Ths݈N#=C2`M,Ts Qc-9q7)F}%DW C'|hãqhN !l,bUm~"]SWWSB({*||9g!'"#_:jfmR4Wo Zʙk^7*Svo~hhJ/h(os9qߵIZJlF?Pf-LY󫙲8˶(87 ruC\`w\8oIǻ.ћK^ CΧyO_7Sc V _#yvp1%0ka Lns>T s) 1s"Э}$hK#`{06R1F+&O^ f|.* $LbTbn䮈PuQpLU]"ce%6ppjypȅO'e;F/g.L.f*U _fТtF0Bo3 9]\8+¦h벹WxYR h3\VU#Uqq]c?q EuJv zğ=A9ӎClfRgpډy.<7{ŞN=>!#h8qb`d.eqo؄4:)Jvb)t.*EL>&&7z1Ϯ-{'6_,pLĖuY JArn }]ד f!"NhBxaO S [Y3ɪZUGZ{(ӎ q]5g4+WA*mcd@Uٜ(iy2ZV VQ:E,nimԭ(KJQ~}wHB( ʘD Nu5kZFk)PX UCG'z̽'g欭oSz]Q~z|g 컑A0ďbٔmƆñ>x("j?%G=>& LyfR/>pGͦ9>L*p<,7lCI޷j0ڰԲjɳ0GkRlew;]fS ZZ:{PUbnlgxzٕrYMy_ߌG;4% SB:aݲG.%9Zx(/_ 461p':x(Exr1)+TTIb4(?(`}Q^]ox˅ZR!c<:j͏hځiQ`VثeӓpwnfG1tֺ dmAqTCws'_vlc]fW^e!ۓY ԚOܛZ\g~{N73X,MVmȖa 4`À_ l%Ȳ-55"5w<;"VDnf>p̼9ĎX÷-!Ɂ@= *ƻj۽ao`4 |h"-Qjxx9[qmъq~}å21="zĂlb{oY9ѡ80JǸ୅hs9N|]ܳ }z s(8р@/!gv)r2N,2#ԟ <룞L ^k#YgٰE PGD$'p3u7;1OU u0FUm>bĉw|a,'r_eս}1DM֠p;: Y L iہPHN3_\v|aa)'Cf3Sc+RR&Q^`5j!dhL=)޿~F.Z{ao)ͣ!qKqkJaA!GZN WR۽r Qj")qѧֻe꟭3A{+Tv:)8s,K{kKNIXX "`< 3Opz JKJpJ'QI8ˎ]t+Bϧjx <>*_pEpH$ td1bYBЌѹPqE7rWh&Am?¯8c,W, B+!$ʂ,+Nrc猽b'7CanEn)x0*2#CosfUaXo-w;ɘ×t M|WRfkR\pEMD溾u%4q3z;;2z7-^y">4KGL 3r&fɘ~]8qm[EKň"/l?1=AWJnl7 Yy}̬3q`"!u?)5zo)g4S~ 0sx!u")N 12N0ffw9?zm0,R]`#V (c/xDzssC2N迈p=Ebn`E&f.sB_SSx :Jp9)&~!+2LPϚ>7-2p4+0֤&$q{<`xWJ;-0Uֺw8k3)1+os~?.&yx `٤&5{7(\ Og "Z"3J/YgaɐzJ9PY!/g7ժJ}RޱxTs/!:X,ŸF0\ fa2k j!@PW5T0K8< ^\]₋gސǑG/^oz .ũYR#j96P17f%諷Qyb!j5 !'^H&(,p"&nZ_vҒ^,2˘w#IOĐS(ƍh-=Hszw}cD;mAt-G7+P9ܐ:<q`W%)7=_"^ȟ{I|/^X^5y/L||腧ѿ;(ƅ_ ױ*8yrQԈm*a_7^zIʷ8Mk5}N+11~DUwmo/cEn_zxy}_'ONw>gw8;>h;HѸͫ%1s߽ҝv3,&<֤RzϠ]x','9gWS"cU$VRl c"Xn# KWb鐸ORy[CMNGnV֪h=!4RT$a0ךл`@uKz$S޳ O|dQR# A2ofMM.y_Fgn #h"鬁4 맩5[Rimf45fp<_^8t{-#k$NW۾Wq(d4'OW=]}6A·1ZJ0g͐%LDbݘ-Fbj%ͤF,(`v5~R3"\#Lbؖ/$c’fS_^ϟˋ noƩn5X|qTiNpwk1F7ݧBGpz1GGswrELYQk_=T álLvb}x;𣛑ME zXxǔ)s<KbӜYz [j|hb\md מ㢼UpaIAqސy_#[nvUbZMlD_P҈XA*T_Y{~c6{~:evcZ0y p m}l>[Vi )}9vIٕ:kzf:zjTSt qRTw5ʊ6uܷXW.*jN̢ߜ1Fc=NLqދl69Ь#5ax @b~ĬLq2-Y-^ :޻_  C#Ѡ(61s1M|G41;縍 G|x'T<3o-ǺPt ʋ(|O/WNpy9ƕػiLs qoa0]ٰSȆmap-cp3!-岅7ȋNyxrē0w`<;UdŘm$ʵ{_o#ȷvhZ?e]/U>UYh%L@UNYU֢Kgy%2Ϯ0Q:bl{JNnr]p%T޽s>dFGۑݏɱ%pk/!joplWوl59>OGL3ߎ<'82*3ԩgq #E4P(dxZ"@Kn:~Bt>9+1="iĜK77GkHV' A8:>byrL'K<:%Y5NEDjS"{R%8R4۳ yUm9G84[Ct"T`$x_7lsfT6ャ|G=5'#x apu8)uWଥcu(~CAG4E"<#a;4N8{\G(mƹDM^(0mRTtW@fSU+lCP /τ׎LCnp<ή ׮)g%@-߽ 8<6YX=߽NIy̼x˔H}Y1e;ˎ߿wǗg|VBv9ρimdeh`6wV KM)('Q>Qڟ:E͆/躎S{-%ΜS,bs5CSTbI8׻^ "q#;GNIy#:MX=wi,bЇ}`TpbW "УqJǨ,dmŞ h=ҿ *'P"Ws/3(jd7(D{2'e`0;3/pJ:4^W"-8պU-UR{,\~S?gv)g|{KHx2fkr"teno?؛Bm-p#ޒa)p3"I9y>px}}?zdՌ9)(CBGRGT )cƯy Us3N, JiR0*nq xs{>3E2QSlNw0iu7Rq&PJ67JxoSmRG\i;HI`k郧Z`Y1%cힿxzGë%1L\r#%CWw\^ x7Yٍ8]+ l0[}3*;0&o [KliӲ "wmjizZkt"'B0 d;ޝ6zKbw;* ϣqO|f`s IDATx GK\踉4;+z88[A<'nH/a6.Ӊ7/_ôm)'kGrPREpKCk+pkK@MF =RN:6f\]ۙV,Q;N%/`UiYLDN NKp_ \z RG-'8#piLpSFve[Σ:%`Cű*_cjҲyEe"U#GXeqqwҫކ݇#Sńs?zv`A:skSu0( /nEٍ9V:x{nZ3RپHʋŔ躎qh#Ӥ,EyghNUImE EƟ)ddz)º|ig+(Poc;*"tJ!$jSE[Ĭo;%B6V\2i-y+,%8̹ǑsQcfQȽ,,zɊGdaѡ|6$Dɰ XF.p|2*_=]Neg1E:qB*'G])*%_-P˚>8Vu*VXG-բe cF΢c\!JZ i/ ĕ戏/ Xs&K!gBȀ٫,&A)pKn-"-zH1 |ad;aLSl3WG~3) vsWԩ/$OEH"|}/zy3?$Tw1g\2=ĊXBɠHJ+ 0rJL|c|KbqI9v{y$$.Ar*Zu-b+M<:<6)1!rnB2+C2LU0<&R0R٠8}3آأu6sDfj_4)JQ/FS &lI,)r`(?CY:-ePD+!.3#.Ἁ2bbJVWꪡ~K0;K~w d!ȏ\MΣ3t5uw͑s|fϓ9+MP9? UH-/?VYU.j |x9~0L(,(hmMQs8}2_->'qE7ȷw!&)Y+n%vՈ1~k"ohՕx sخhJjJr\"uVo)Ӌ3!%s؂|zo"B˫sCK&~tg;p#n&)j;Vps2r-ݱwZJTt!eb*;8SHG 'N8 Fm[Y((|`kmt XfzQf8Edx|\~4o__Upm&^s--։Gł&^)+z/eٛZjdHik\AugĔe PF=9ӕ%5=:eSwӈ0׼^#i ݭ9NxTtޕei07|-{UV k l P1&vc(4ہ').X ܝ27\&6#wɔCY|=S2Dzs9LyBQmQ MGeѥFa2??*k>Mʿ'Q9I$CQ\!3Sv@KZyfoUI'Ғ`yLXiij1ΉĮ7TG^qX7qp&lo)C޿8&Ќsª_[0FD`+,R; Y2'_{ ]ʱYĚr94T~Wэw"ҫMQh[ ]txm)#Q̝ plNlךaZJ Qnb=8qE70-&8-)Z3zMȗ\K+=B@TnbC!}`c1{Qn: `=HDԜ|1z{!6o{ϒp +B_g KGnE_GrJ"+N .Ç`iB~5Ϸ{Y@\&fy'ٲK ao[r Imlx7roLL=< ; w9&h ֙!PBlѹT@VS bTt#8Ճ)xՕz3<# #uN\ [cJv@ᐔaRB//qU0kCTU:ܴQLrLzAV[s5)l0B*@Fh`Vrk^ʩpZ?`MY9 ߽{=n#EwO;&zeӆ4S&*kIV$kk* 8C-4t)* UߥubS, j.ЉjD\Q:u?/HK"\m<~~gxV-R0ơ:v@:V{|B# _VqRQ!O#)F/" Z,wslb䶀)t_oƉcd2(3[utʢ:Ky5428{ \#ۤ8vF6"W\EK!ZBt\e"4A1DQyw9㨼-K<,*dAo/`*f$)U,'y$?5eCo2_I7 N޳0-Av=G ewaZ/"EqpEtnRPp(y_W RI¢1[wXJD!O#7iSlv}u|* 583@Z, HSUd.}bziTSZk!U~J w<W$F7杻єcFdH1KJ9v=wY e3NqXMԩKI m#{`ɔy kD:ӽ/1O{^=W/gw /vd)eW^7utTQK,: X NX &=! YjiK_V.S[U$EƂ+/W $`"R"h ڮP]QċG:h4QEf:j-]ߋ laEtu~3r?q,Yg~mR3\4YAag\oL\TexS em-3W(d)1L5K㓖DJ'kIj#;:IgڥG*cVe9*QYn<ɐHN9䵶YԸ W@(|w:?^/n}ƪFlE\l3~Jsg'B=}t\Eǰ^pv[s|\Yߙf*+ٓv%4->Ze |{>5%3~TZP]ǺD;k&da %x\JZݵ&dͩ5%T9|@\,⊶59TK,JZDn|4faOwc2ndf=fb&@2h4AV+2) V!U~Z1vr±WdD"@ժKu]!DXmT#mp9 ǮgSqni tNZBMf $D4dz('Ltͽn_q9ouV.{ g#/l3 9쿾A.U.T^QLj= gxÐ27ܦV9UadN PR2oJo311|yjHVL.z ZC[.p}?PgeLS2$ũ?"x Xz]w&-DgHIa}Mj` @`+b' LI#WUydRnSF+h.)lðxI ]JӮ3 .7/.eedtL%N ZJ@L'H-:ze\׉M (~h*6I8 {ȇ%Oxx}z]. ތ9ѕ:n{z99Ef Q皟1,BrG/ k'genĐrk 5k=r!\ sL9eYd5Rt.ۭ 3oc6ݓ)sN0`^p* QpQ-kbQdZIXJGۉ?0tuĔbM:|H4(yU՞ χv @α;}88&L]Ʊ0TFb JR=vӴVYb"z f,V-TM5`LS|vyEf483IEV\";ǰFD bZMЄF4YEqfsv='Fcد1&JNQq眐C#Ğ>AE$Z;Gԡ10$~μ;.Mqdu(!65eSl6a ΰA]D3.AlwRETlUvKy\gO}w>G~W ,0b`IoS毮rdXyW]DŽM6k+g;}q~qD@ůL&z1 !tqhՀRqS5/54GtTU t1' NF#8>9z'i2"be&%_l IDATI>MuR{Zkk\oTH)<(\zYQѦg vQ$qoqrj14L2Vc^=8)[W9M107+?_JA`4>P.Xc&e [{PR>h{}si/Q}^kiHkQp&ay{mV6w{檥W,$t{]qW'Őh;;~^q-~g랫\Q7V-y*w:ǃN9;s:*1s;E%wHQ20ǷƑ#nxA7-%r?8_D:-Xӳ-h\]{ܻ{.|1#,זUf%\ 2Zy.v;2)1(ԃ*dyxj#W6+XD4uޜhQ,%-*"_z = A\ !"AZh{?zfw ӄǘ71\Nx숪lS6kg-إΛhF((s *W <ƧbS"-d5d;8Y(xgY3/̔ar.A/&m^E&kOh`xٴLmE=V-/O-W:l:q*): .M4z:+WWϏxՐx3S NO[xMA=çS~;'uӞ;G|?}z۷#''Gܺ@"|),©r^9sT4ObFgy>fk "(s%r5/NơB%AP5%XS$++fiCrju7tC!{lmK ŒES>C”bAm`︻Z0"*sBB;I}u/ "-EgtsCQ+o( ݖrbZ.l>r-3Ά~HyukfKgk*uTqf ȫk]^nѣx ]\|U(W:a} e4ł2tl%*W+޶K%2P]G{dݎngtb L\gΜ#U6w"DSf"gVE(æ#S7 sm&ԅըubJsQD{O,L847QKvi59"DŽ> gWsW/>Q P`7eBMTy9 CF!ÖHvFH-xݶ`3ԓxr[YMv[ V100Ιc)LR𼼧dr/g- [O"BP'#(5MWBK^r*UGg|hwvto/>zMGg4 U晢k(~`˚E/uI]?o5fZ,mf{޿F^zڀbX MئW6FP;ܢլv7\>O_65a)6_#xTOQT\EKvP*3Te@g53]iχ__:V+9Z}8ݧ9C}܈4Aitu5]pKc޷E ɉ'y_;b,uf5я̫w|x;jܑ$2Y+]uE9UmZKV[7 &f ږ\L9cac8y\ C6:,wW|!4g[$aiM<Ԑ!,d l3x@v<x6|Sb  Hg 1 c9[l&<u?U)̦UD &2 ?/5.P-̌B@SHYbPoy3Y+8Fj9bei,TubT.y_a3OKkҫ5(E! ! zo`sU~, QlZn.:4\[ExX2g1!F &`,pzva"Ҷk6ÉIk S{N[f^?Cb&Ӣt ԽQ` =gدʪmȥׯg? ) 6VƑyPVmzAO싃yNňD5H9#9DB۩ !%B\vIyxy&@ǁ?k~;wPl~I/4C7j?*mF0 ->C@4RG7r0FXuWHO+9É0`7m?{eA4w_.%]s*^qrw ~k \9ZJ@nư I+Q@ o?Q]}ԠCh`Za!<RHxV:]( }óE?y˧zv󄧛@3iU&MEqݏlTea@X7 w# ?s4DV5t {]{zHB;g8Q3!/P9kI-M:I\D)4QG 2 ۵=_3\~iR":553X*pW`W_c{ʏ(}Qڢ$H-^Mae ˀzPv]6 vTv*K*8h(H5rouX`OAʌ06lPoQx[p4[<-#4!"|G^eU V)J€ 7Jτ 0)\7q_MDU8SY~T!Lq+=HRdǩ3 ZVMCwv]OVFb<q kNf BZjDJ6=⟾y7϶ǤMz=po7kM Ÿ;nU@ -Lqd|lZ|S'uO[/ۂRq 9I|۩e T7C!5kVe .,|ƚn')d5.ƒ(k>7͊9o wU,s0NAt~V 2ڣm/VYB`(:\| I@sw^~KX+>~_W'Y@DsŤQŪ@\vyFFp?O9YLcjP`XF!2-5bV HOEdT}vx_*pӘJ&yp`>(@'T]G Vh* :OLĕWǑ'5 I \M A M.i1N3DtA"Ǵ {l?]{aa,G _ZQW1j} T֧`x}QJ*l {B*~l#2A2(|W^JL#yPq742Õsx`\(j>FRx1w޳'|mf7H)6}B@ɪX*ݤHQxk-g=5`1Г 0 JlI@Q,tƵ~v\VX/ުߢajOukz3-<[`Y*^w6zS KƐ->O41jX Pf|ısU:s`̀؀U:8jv4Ai2>n~/7ob3#oxisyv/S◃rN"XwcqjXOگY,";~{ML1{?_P^p l:4 6i${+0O#1%3mE51T7h#3^hSSgٌ:mbTɉ "h$(a^\M*sqBl5\@hG-Ԍ9* AUzX@J`t(vaZʮӀyfh|sd#sJNw|w?Yun{H mPN̿+ X|6-׸^BפATMrlOUh6wMkyF|LsJK P(&ACRcȳ-0 ȉش"E@;~ >{>lRH5h42Ty4b-T9`[4㢞>/<)Mt!Wuhd2lR*EzW~=\Ip~ׇ.ߡf\_Pq> V?l7NS K%儡 &ZLKQ]_Ӫ **Q۵sY:o㷞<1dHRbp`ެƓ\5Zly6ٺK BPIY.+cJ=~)<ѯVĮ1X^3dVE͆ʆzDզqqFdd{Q%$cu9Z @hn"$o ֣b4?Up"oon7lkڔLhN IDATMG|ڿG;^=Qi'%G<5BNIO2ڗTbz}S>w[0ԞijL—&]`Wy(>5f15u~ʹ,C;V+=j6)"LHF | lRA휶">峨 67ҕ.ں m[<˲^>,&`#·bqnk'rf{Ky-g % c#֎[Ģ}q Bׇ#$z͔Hr:k6e%M#騖:ϔq`>a8x"Of1.h@z_;+0MOM9ONu#(J.eHRw@\wÞx8ե uD Qr5 -?jڤaZ;b^8Ukr>VP(V,8q;K^Rd-~*k*icVS}<ɰV*:w+:5r܊foeᣟU 4R[b(yfxFF~~yǷ4(1Jr#mqn(?2׻~b_`C2_gCB̙y8i#i91quRcT4v7k zCVu''Mkܳ 93 G0ӄ3MRV=7)=;>ޞJ!gMti@:>0ck.ͬAyD΢A ;4_MyEYE1 )\ O.E1m z]pHk~(ĺg"vaXdֹ܂Y+zHZmhڎRY[bl)UH-U Q%hD#ao짘H-ѶK>m냝?X'`V5AN2* rjqgCLamW.-3SݬV#"*vx<IcP񆺘4x \+y^PƵTi#|9M6j=1Zؖ* x$nȤʤJ‡m$Ev]G>ns銑$M|wV'l1+^^i6p-Ik-B`W|&8g)i(3ϼȅ?g3_\1[J^Qq;,Rۖ~?O]iZlORKLyФ`>NfZw*i;U1laV䇈b 4ǣM M\ۜߓ}Hʲ8 hEaXʻoK}49fM4^z,r 0RY@-*AHƏEue]8k`za\7QIC{6 }d=oVEa#FO]lpƢe[^͕)%;idgLw׼1H[]#>>kkQc=Ļ8F oVk />bxWU5fQz<{9ONmZ6 ?z~ǣ2A'F Q*HbQa#ZXY=:%'"}{d+1n(Yg rzrw2aX 7ca̐ȇ}{ GmK*˷vbl?|8~W/yw{bDש/06[bpڊ)yՊW<}Gww;qgzE)<ȅ &ZʉgE3;]2A^}sɐGUd&87~J@mzVlZX @ hW%1&3 xk}%ϖOR!eOj,Ԭk 3*-b]]]Q{a[=\" ]^I*,\JȈ,-hnnxsfݓK@.2eqf9޽[f^0a|r_A) yQix χs޴=@6\…|-b$2 j])oG[~r{K\oX=x]u6&~E ~m}cfb=cthHФf`X|8Իt9Λfh2 ƀJ:^}z A HL7|mpNV(څ X˩x UhQWم)UtRJ˜5_0V!J,oe)_EHڦA4[ZjY.oap'TK(8ÁA8M.W3\5 [M&gm4GFQMļgzk2ȂG߼Sr] c| st=Xksw2(F(}%$ "ƞrx %/'zv]a`xO^ns nRdݵMC)aɌq]=Pmͭ-pFkEx#-gOq j4gG۞{Xo뤔p;r 1ؖjc8P-gcUM=t2v/k{N)Amg32nG)DlZ~B07+3'$Dbٹhe4 LíL.z._3`,[cjLTy(eJvH\j=ѕb,J !5HaMo.CǤ(=Ko`z$u4ѬPwt{ǴXf3V.R0;(lbyk!B (B[UN-:f_PBV\] E>YP6F4^%~L_?_5g @(,0k#bCZkIB8uW,sىMbn?9?~wM_jMhZ򪧌y(㌺-6ɰղ!PŸ4V 옔2 e~ǯxSPOدDbd>v;[DmOl݌9HG#+mbPRaqϏ#|{͆I܎=ڎF'ϰ(4y_Z2`u 3±N?ʣhn7;G-%5Y`"@$D B< +@[|EiJV^LM,"b5Gy vbJ{|[Ţcs.˘iW~l5q xI%Y7-| 013VovW9?sx^#e1Foqk<-IHuYWc0eW/_q;gfLfEky$01bBey0SJc5_KPOL(x.@zmR4Y MPxE!5Dg4`v܅cj #? ozŧ w̬[־xrG9I`\*Rb< ]0N]ڣRn9FV58v` N:]_ZYy jhx'vZI1 *efqLjR j,&X( ې/}}ލ(]T(W'w׉vw'W7l|ȓgOhS_7&ql%T%'nhਏm?0P$6h0ğ< v_5 ]|3wL#"zm1P `zu)L#yF+r]Hjt`SIe ei̶zv 8R fn鰷\IǑtw[5w 83iaV5b˜\}QF+7)f+nbvn1E< YPgJ`XFP1_dB2JM0" O^OƄb֕1,㑫\}8Nf^JEx7|fS._W}=ZߣL3n nãut|/?ox) -LtOpZsq*"gÀZ yk>[xx͝G4=ng!ki0i4r o[BLtg^vu(O }<imjm 0'. W*95еBF[ ^7:L}o$5b)%O7w;!ľ70dqy<;o|ɶ_7n3q`tM/-VHbΩ"V#dċX2L%GXY1vj>vpǁEȣ,2 κWrYkvS[=c') 6դ34QZGޓx241Eҩf-+vET~s'ypH93ۯ͖ҙ?t8~](q& x0i"u6LH쾙32d\%;3/.1Z?m5)Ñy#BbJ<3ݹ<V-q3.AA_li ] #oGū7<۬?q508( LOk U-z۪JNm׊q,&wjVDž51XF ʱcP" /t1.)ͻɿ_`q9O“dꮲr5[&҆S #P|a>RvwLyp.v /ug/mM_/=Wv9Mc1ﮯywumj*>lcY2e.hrJ xDf?ryŤ&]UrOw|<]2iǛv2!}2bDC0춡 V FH M"kD y=̮&'(C(`R omGI"AGѕ~u|Xƃ42![l1Bb"VtggvBRRhr+-Շyf[1SdR[+wߡjX}8IgL E*(f/J/r(kwֶ Tlba e !$glCEp{f.LG y&D3(|W-W55=N^vQ<-o_Юx3SxhM#?A @^PUua~%75ugH4(";x=*6gyf! k']Dq@KtQ%sޓG|{!َlH5ҵcϊ B_2VVmuÑ2Aut+&[DA}4lD/gB 6x=ڿD3fO&BDt($BFD4`ﲹf5'ubt-CP KpEr2+7>[WcQx-79ɯ C{㻿}9_|)lcL1y&?G~HJrIMkx7]nn(]K9#]<ϙww̻[=i"m6Эl]oDGgМ).hH3c5Պfհ=u:.PIV͢f&M 1QL>w;C?C +RoE\-UŞmrp PWeF;gz*ǹ3nM.R^Ůߴ]4˦WQ-ڮ IDAT{3Viln;hsCVٚ/!5ɯ'ղV} *gdF] &!^i˝[g6GPD i!֤UOi1(/(ΊZX.'~77/46 ZHGWe7Ƥ|=⻨qj IzҢvIJ {_DbP0+߸V%ElY,Bgyb>\}/Cf#ND@pMDl;h/m+'D5Rg)~$u})gضfeS] N:9+WDX:&Cg{O ]H ,X#Y+9s1E93IZL)au2hBLt=GvΡR?|VQ-Ab*qR7?| P+D4nmeC% 2 1Z3.\?wĿϿO暬 aZ垮tB02 =2R*|0Lwfp''2)[D"5Ӵr:u-Lkrj_JH:3s,ئ:T# K'0P:8R{V/~{튵HؔFb I/nL .b30Ol3/CZ/2"hYkͩ14.s7\XbʦU>T`J,6VkܪaHd n=8R5 u 3tc?#n rQY#Hq)i)K>o ,,+#kVXUJ~@>,R4ֈiI*(Gw{P蝣H#$h߾6$UT~IPLj<(VEUTEGp!?ϕ3,%yK)K,UY3}v*oK鎜kXi/ Y3+XRn~א*ǢsXZyc(r"~[)Qs T)9!aª%5= N8FtBTfs%5J켧SSjk$#H u^WZ-ĭeu??#|w϶VMVZ?e,݇7W@yӮ^٘yTe(!0AՈ'{ZXUzil E_4M"4P8 /%/@sBYL¬7 X(ljM ̈s5ԪebDɨLv /2K^,Mz(Bk5 Ǭ$ ZUŖg{o3s,ynfrTef~T\4M{ze_{0֚EV #*L8ϕL9Cʸ._jZrNc V+]QWJW|" HUFN$z~ S7t_}x{ )Ѿ\<+zPCyhg)|\$g!{zcW7T'gM *L*pJ5vUc6l&Sf^P@WQ2T*/Z$ q ^daUr )K9UH Vo?s=p87܄~x H;n[bf"%5JFuR$K>j3.>U|ϴڙK ;* ?)$pJ4% *DF3ހNj-܀H1&JFTI˩;o` s#G($= !&ٲB#-2]Q164oNRk$y?܌8??*ΑʨkvBx['${_inwچh5}/فڐdVjWQ_&?~`z|i}i[x T J6|4!*yRni #Zp'M)EbY\Z_RbV,BY+T@Ye4N ;$a+dXU98UKf>]E_5Whކ{cYolOh+b,V6SA 9/1eD;~EL02 "P+sLL2 t 9!FEBQiuQRL&%e @hl(%s\i\taevݑ]L4mC Y F$-r8N9{?g۶\ydn++O?tSδa'q5$ǎ0 ro+\UU/nJѼ~]V^. Ŵ?Ze qGͶpŬD#[#t]x,mZZs_<Wk90a.@^Nm+c3 ,CG? d좔) npS \x L#bѾyqi5w?1fFciO]srzFZa423L1PB `RTr|!w*KJ9☥b&i9gQ%OQ9%XBA.$ . J1VfTY39o\{륣 U o__&<U\܀ek :6ƉМ_WsV%,s ֊qw{_}Od6M2&\՘,NTPJcڙb0uUOpwO'oOQ!BՕ~9 7y,Ȧ; xrfDAUZi$tGZr 'mko4e]R?+5GEƫ>MCF Ȩ~r%h 䄶 n{*^J8iZ~$DŽ]mh.^WWUjä4_?5woYo4Kݎ]苴V#|@Tݐ̨B6Z eR))e2`TLY+ЋÂ!r~i0d3PF}bq5Vrˍ r2«7RaxdxaϢJ$)C9O~b?k+w&&K<34Ӂ5Pq2F8M:8Ѭ[9]U޽CUO0\s "[j E"UBM=r ^2Z-ägCCɏ^s5b CJkeʮ'#ft/jTUc(cAUY># 2ߑ9#Tnw2$Yln8v$mKs~p'zl)1jÏtSܦuL| 9==eHHX4m9XrZ@XVBԢ SDJ~#>gT,{.MͽhHRXJ6X A^|FR\fY)N74n8b).M^n %B(e}qɫ7y-;j aj#<+,ǗYº`l@^|(=0•W)EoZC|H{qT-'EU~PvoޢfSY!0nwפ ]Ab5U-fc\e:TIq 2?Hcl[V5vE4 &f Vb0ۿ.Sw)*>eg6 )$y1#f"c‚ ȣUHU:y$Ҩ$3Ѣd\5!lIG1%Bd s ͆K./V8kI /VV҉O7=?F雓SBNbbp^ Ͷj$']oP U٥t;49QcVs3/D2M"79Zr4!H;0a k6ƈv KU]\>on%0ufoRX/CGB)LUš(^/oJL?jJkk{1ԧgT''d0JS\65km[z%8`vw0~BiA~/et4Àz&mE0cd'lOv4.h$N) USW yQ'|&F1rd̓Y+Yvd)yV6͙݁Jk% B6ʢL y*s}ǻGUE]-K2C1n9;;͖en!ee+w-ZJ+}=t?椮Ы5*JV|aT""V%>/)1r& Ll}Ji+OIӾzWb]1Ĕ0M*Q֊6 $y ~BAm3h\*_(l2ݢyt8#*l.58~ QJiZȊ^^ )a*M?I+ ~딨_L3CJ]8NGN'v; ̐lcЄ$ BD ?_$#yzR8 2z ;J ?/Wk~QQ/Ed۪PBvHq/i|VQV3NθY2C~ƑQjx ?ُ=gÈQݺŎ#a0 fӽIh-Y !W mfg'/1\1%mwd´-abA/HG.9#UhkIUMZCJJ)+h^TxD$#V2E1J9_eLTMS@+PFJOV¶KǑ4P,)hl,PS_ol 'Bw7Q!?3bc^()'gZ$s[ 4S`}> IDATxkO F>'j%XL]G=|d5%|咞9 "%6XgCi^PE9Y*]R9;aW^ppTLv˛o8;?m*LU)bS~TXz~?{1e+L]1 ^#vڝQQ5JJ#V"_F±CY1U3W %Lb3ђ\}b%g/_ɁxX}75YRLIk Oq*Bl+d%p^ߵ@X|[Eq e &;0OLH@wvFucb~ՉLax/]l -=1l¸E ّ Svq"]5ޣr _? R_Zg N+&<xmw\J癰(q*?/lEϛ\~ (2xS"D^M U*`g&LX֧;ζ+ BUfYQbKK,ȍڇp?n}w84 I)TӢ ,}-L@iDYP'bkoVhJBH}{ȘvNF〲kК9ӾyiW'bߋ@ȅ4B1UÔN=I9  I޷y|SP^f(4Je4A![f]odso$@4\\|mnn( WZHǭV'ԧgb<8ޒWYrrƮT';teQVp+)U]$uCe!ȭVXWUϲmx$%(Oi!H}=W]\&%FcS(p/QH33`f2L$,"aFA6% lf֢T3( !01β=;YxDFcNY(y3<2Vkt^3Cӑ|?{OG@k 'u%E-ajћL=q8bj{B\eI,8mƸZ$2!TirVR*iWU覥}Y/DHu Ӵ͆DzŮ7ka~dH,`c1^BI/L5~ -RZKct.(,zGPJ9tH[׸v%~AfnwRɤ^ GwKŠdXϙѼ_kWx~#NKsd#ҌO/iqIƑ 4YVJ3Z1 / ^|j+U|. ^T֫Y_sf~Ȓ4s~Q-"j";4x!#(N(#=xtH%1:ޏ^]GW7ǎߏ.gBB%z[{=9>?$0衖ʜIXpnWhm/(6^>GG{9BjJ{± xUd--I%BiZL2D`IbQ3_)K2@FւӉ8=(;;yӴw7 ݁wq´k ZA=9QnCrҲض-Ǣ+0楴,~ǎ8<58Sm+Vrf{cӏбYiۖzfӮf Ir3`7: gXZT~pn@=3,d'ZX&_ͨo9zSyYi(Ƙ"!{w?1_0NϨ.<} B ئ]|8j{'۶$JlLVI^S1I ]"D{nOh?Z=14-] K@hVCa `*e4YU(U-^!L/1hf"0rwdPģ/bVkNQs "QeR4Pzmjkƛk^;r}'hj#JNAڹE=6-)9g9I43pxBR}t^FJcr$GϤ!|u543<)ND%R9o߽Dy_Jf9U @ž?1|]ƍqg~IP/6gAPZy NjG̓Y#Ȼ3"v1&=rLJ/[㞺Smv釉Y| 'xb_IP>DFq㽸$Ide*M#q1֡ ѵH qu(#ƺEyꇞ:=z-kb1rby$CcHETAZ\ULnL(N1|??PF&)B9Ũr!WUIRQv8L5I6F9͛whgoo?S|le,hЕíZڍl pHW-(f+4A◴ XWV_[K{>5k:D~G>יkd)"jCT2K8dsZFdžYbRŞ;.|wy/W, 5rYbY(1'QjmXy._gLB,Ӄ#{s˗#_{eN0xQMӖόVF `QQx0XY>|ŴmO OI6݁Fl&'B/Qi/!Fғ}ʙ׮dE #+ #x7ei&p8J4ptU [X:.='+.',iͨ !Gtup`ݰj[ ۓfE ` Ubf`M0s ?جgPo!Kb7=x1"TJj-܀Egb]}~䧇#?GOnH鑰b2ەy/"g)ە"tb8QcmezcD;E A#GVnВA\i"Zv%mvPU:F+"q">>`J;#~E]%H1e&eAp4] me$L}wW7W#0U,[v+{qĝHߟ3y*!WҎJX!Y |rT4d;SX:XЮȼ_'9q5,m4x{޾jjZkiע,2W_:z@aނ'?o$T b@d1t (c}xG'u?`*vM CF<*sTLO㷭C:gWcG?v?Ѿ=-NNq-i(]Jp,,IxIܪ:$_NN~sE vA4zADjwnet%'k)+Ĺ<S"S&u;±I@a%/ oЮ9GRT)A&N2FGⱓY*nE^vi05%lD95(OϠL1G?b` -i1IbG ,}4~\񚓔MN^(kP)C xOn쩪UӲ;9)H(~4r_jH\YԜ3[ O_3H'nwݑ E|ku%)U*b 01vl-0e STM/2NQڌEIzwkFG!1;'H;VnN#tljn[,s/RwW"qJ;rQx,kz~EB}ֺ$'BĐ%swB-i8$"'H1U I SB ;TQrcG:Vk)pOzť bc"OJOVդiCe:iN#- m9D;[1m+9MEgzO{b?0sTሇ'̮ZNF1HҋU%l\MJgYs0Ǒu]m׳gTLNC>LGObxþnئfm kkP8ǧ^nETfjA$c?]RY$FLfl)4Q|.w1fEswyYyɕ#'I0SU =Jr(*2S윔"DʾZ#iDk"t͡,v{K26L]W,,(} >1^}$0NNQMC^N㱔ւtoo鯯!6[ІX2Ղ94|E!b-V920 =Sw 4Ρ}q{jT}FK$@H|krqT7cO#źUY9F=1`̬:xv߲śP9Ko.e9ψ˰ι5x6 h3W|ϙ=r`s3o6| O]GzlάTFOmFnt⯊L/|xr-C #8*.Db*p^ڈC$( nwB5 ߿VR$6ܳXU5*% 4{w!f`̛vCuI!2=j~4d%83%$$/S!(j4(Ǟi #T[6aߓ;`+]o>~K lw$wPgJ'J3J?TZvPn˿pȅhc,__vG!D=*FN}ʐ&ɚXRdIL@OD? ΔWa8m/CG>s UӆFi WL:2\z,N!ԣ?n4z0VJij)qbӞB&*omZj|JeƪoR+}g]G % S92vkH([k.zq%rHuC@7[Wn Wre`H^GA6k1UMZE$"㔃/q%wԻ-4-{RAԗoߡV:tNONN?<՚4W_u#'sckZJV1`Ai"~lzơ'=9yV(ZRj'lFh2*)myd$g)Ģ"Y\KJr< HUT,"dv=Ĥ4$c0F1j1Gdm⍳lEE'*}uỎZ>%nv=B&%%S-'1։9im )a'W˘x X-y_vSFm 3b*y= #N)­VcG{tbG!Bv7)Tq╀%}YWPS*aXJP(4m 0H)\\s8 QZIc 3D5X g4cc7v]mvr#vO??=ʩ^? VKO93|xsM"4MK.\ŝrQj,~drl[K+\[@ ߇\r4ɏ2θb[E٘D_7>[+A&m+'+̞x(~{kDZq Y\#qdMXg[Uҋ+76d@+ÁnP uE?N UR‘aSꢟQH GK6Zq)u! 9W If%My.쇟rE\~eTsJ~@-$6 O%Ob7g60Z*SWVblQLia0.❬_ ukpxsRP_R dQ%Jd"i9O0-_ts 򇧧Q_z7ݴ ) 7`~'6ݎ ]'*-SlOO4r湶/Oغ+38єNœP3g'sb)DJ5P񖓠B@gy& )f]6FVCD1jTFdi% J뢬ìWMJ찔1|3Vk4m8cFQ*7{ % ޔM²]r X/r*J<,qNP+W 9IECK[@N,#e?"C`b|6F0 @T{:ڠLP$z/(]:ZF6՚ؓMw > z ^8TԴGon~?_?߿iWf6uZǴ-NT;Y( Za/h<ڱp t] +ұN% %t, S+kQyWS 箵wڈ3Hb֚lZYnG$nR@nT!iT?ҿ?!csrg`90XkV䘙)Q]z]{+YrV=$78\ fy-W7OTˮ#D>^ @:Y) ;T܂4m2mQvc5#^Nת&ϔrs匶Jr"Age9frcMi 1&lX h3R*'qIz'Ű!a,8cź*FlVaYk4=OeE[0;ÌF$'o|<@@ IDATXi Z+RQF)B@WƠr*/DM? g7;J?DY'ˇD~;TǣM#BF{/<}Wz+k4yO|l\|s CwOrÕU-LQ\J,J {^mU/7~]*e1$I ;a fe4c3DZ¶+{攑MkKk)1c!k1\F%UBv&DJ|b㯃SnN2*v ,`r1njN^mNhхV$9 A'#0 J$ f9I-* q IJ>ɡBD@D]73}ZBӬPUdiM*N^1@eQ`th>IOʨ%72TVƨͨꋟl;]~B/w;K,_ix՟_>1͖k\{-;mTS ]pGe\&QZG?9%no?}$Hs;[GsOm ~(Sҟɗ0P-SYjVȔ 1[%!%a7z/gyy9D?,c͜xi,''|.Aj$Da Snfkgf\Z0 r\(=CʨVVJJ~+b(Cq9W9*+Zf  ͡*6 LJ7 Z*d0= &˘'^Tkxx8$%VM^Ҝ}~Rʁ&b^-g@R4{jLH1\ ؈"4QwȂrVVgvWHՆQTzT%H,keƐٜmRz0NϹ~q衔=>%+ HhbX=R5%FҺk* ;?bܮS9h/p//Q6gÀx~7#xf6yi!W~R/eeyZ9Պ<]l\R!]W% abŠݹ8.1pX Ysr0T"D]UP匚juMb)g=/zr#t9"ڛC{, C0 m _}NR dbk@s"Gu2s)Iw$֮י;)CmaOd͏!h:eXӑ2q6k (I>ma бmY:A12F&$yBKm ׃g_J0>Q;u-t/6L)I.͊mBBGYqڽ.3\##vV!9|Xw 8 5ZCm/\_Ak^嗐 Fwltu7_}/ú94ỈF+9 1] zwUEPMv 7{v>gcf6Gy9QcKa)!ݠ0\_qeX_+Vi-]?M#TTR>FXLhz3q`6K9-p1UrK-R2D |ޤFR{o I1T"IW0J|39Zo#HZ.PcaҞUQzTdn4Po]k,y;T[1B{)&)N^;{'53Պ9s)(rz$QKZ86F5veE-¬+qOYz)4q":c9̗dJP*aE/t b*Fk29˵uE0$SA©< >H3dؤP>)ʔrL<fB5R`,WR.K0's+cxB@ DkN*x@y;I[9y!(C9=b /`GՌMF5U\-4 ~_/9EHXm~5}=E)0{b')Jψg`wVZ 27II6I264-jEA.R]l5lYTTI+J1$I0wO+@D* t4dkhP.+K95܃* D3 F s>N$+E iX؎9Oˤj,i9c.8,9`e#P8p%7 ٵ<4(djoq|3 }CEjԶP P|i!1i* zG\"n6//0\]`~͛|[~< ?;}lSp/G۟=F]M 8 FqDsh9{`YO2C(+n 1w ;xb 5;cW%pu'+1Hsuy`}?j֚FS/JAZ7Q]eʲY`;O̡M3l&77ʌ~9 W4g>AN Oz9Xhka \Gh2 wyn1v<aGOI}@r8:Q ]@E^m,Ss3*tXCy-N*d]w)ym 50P2(C~$ѯkWKgOh}:gF`7 صm1|>z1\]^s/|9_ icYV,OOQg}GQ8:uNNAzFi ]P4֡Ixo]AЌRem+n5dFVN@Sj,5b'7=W[p%%S/f 9s cR |nh,NL%Jj%܍s' U 7KKt`8R+GqiIhn~{9ӂ4a(2Z hFjR JGI5X [8^K!'Sb4#L!-d'`@E^ghI(`97cBkC7)m7 ?;~,iN@_?ndCSLjQVFPg(f3#/45)C$'ɫz)G $ݾ! !@ EJ}k¬j94"Vȩ(\b4j̕zFW2| \"ICbK~u=uJ!%u:)xRط )1\J}c FrC/u}ieU,E 6{JG,xOC+=VAdQJfi9%>F@xQ5$Ұ{q3)Hcq X|sK~|ـ}/q ~ mþLuR2QՈi5fУ7^=|?EOuOـPӴ0\^~op>ڟ;j\Ҍs#Z[ UV0k2: GPd2ɱ7,uySUYq4XGb5Ւ7a![Jn?}?P+%RHKՆjH Iz 2 sX~)Cw1 HO} "ƈkl)ɢT#j)~K꽗 a,U zy2!܊,鍔8mb S8(0S/ӢۚƞP1 9ƀi`i<+<s1PSLRrD!:#9]4'a۝j*$ ,bT%R[$Gb3JŮlP){ W?g?^ 1]ϥ}3qOw)(!mfr'_+wu^,z rT;:4h"O%SP'AoKmCFcwP=ؾmچJk_T ib, ; :i粘e-%c045'#?}OP40Oޡjw[hٙD 1 9J3NIRv멧¦(l+{ѺW $4eFCo(kQ,V_KGyr(5D m8ĩ6IO[ra93ňWAgfLQit)6 0(BDx=wıe"q(mܨ5㔩wc/xm+ޟm N#sߙNA91j @◾Z _0USx2>IMBBg#E 'z Yr+c5%chN;"6K v6xO/T(e\!5{-o4Hg6[c+e'7ha(M-=Z ͵aΞχ|?ȿUg3(t|mϝV0U cf"yi05pk`qfaEh1 & p) cY&'u50x b.) 0"HhTrFCegdT(¨ +9Q(I}ڰ9KIbsd@jxPqx|͛|}Ĩ.7x 3Ըk`1n['rb3lB99 {r>'Ջ_t'wcS%r&!·5`f'wy#dP2ZJB_#UcsF[Ζ&Id*.,"w ʲ^sAd%!$y6Ǿcs"kV#&Qr$@9'@1Hd{[D>/1 fKSBpޢTjrd%}jCz(fᝠ$$&oCFLZnCq.!h(^̂{Jf,ӨstJMKo{90# m'O[_ OfYwsiޟia?+fZp ;r(=:gX\S PjjEA`" F`KeC+GXx<~Q&m%vMw]Y2Tń#CSƛe:SENʚ|ۦy9@''dCV0R #@axGfa&H>xN`!Ym  ۑxAUa>2)4LϷ|Le>8$&% |OS\x>N)ƐǮkb,o֗pfu;G̡̿T>z'0M rZ1; 󷻀>{>>"pswj(`ݪ@P7s`70`k<::gi[n?&= ǝc:Mφ?np >c+vq76oᏧ26'?0spY[Fv)=4rpӁosa=h4n= LmbvSw?!O (w[i94~s?Di^40v6(iwwn{볰v/w=ZA3]cΆ^9gm_s5}nﶺga=H>cZ9?mv}`YZtPiTO3~XB};8i,pn3B%FXY c|Ia֧a}bĶO~aGIDAT,:::jݼIENDB`qupzilla-1.6.0/linux/hicolor/32x32/000077500000000000000000000000001226107126500167405ustar00rootroot00000000000000qupzilla-1.6.0/linux/hicolor/32x32/apps/000077500000000000000000000000001226107126500177035ustar00rootroot00000000000000qupzilla-1.6.0/linux/hicolor/32x32/apps/qupzilla.png000066400000000000000000000042731226107126500222600ustar00rootroot00000000000000PNG  IHDR szzsBIT|drIDATXۏdUk_9U]===i=;D $" !"y BQ!?xJxB$#ٲP%8=v3x#SkŽ "b}EA]mQ-wWk/ºP5j0M *߾0;ON_Ż4qm0`.ӳx3i– xL5?ۿ>UlTʧݧ/ XUȨ'wn"vs8r~/}<:zg@u/_Yp70Gbw4SFT@F ,233"H*r?1Qfe*ei> B|ݿ7i8~_).f"@DwqwQ17ATPIs3/EUq7qD])&# "QMPl&=[ /o~OK@U#)4N.*તqUfdw0̝ !IfMPqr s n\637?fDNU|45H:μ9eR^@↘#f !uO`ɫ{ 8-MhP<135pw4 !.|盛/,^ɚT""!A0+x.hqQ3CJ ynVsJwhcA|vx`EǺ$@&/-$ z P@N< '_L*ZU1sWD S%YE>Wݭ4A"8).A?fu6V)sV2kC8AJ 3LNǜ4q3 {'D[U06@qF@26r/zdfdɨ<f\[й}%%X󝃎Μu16O٩i9OVy׋gZvoɍ|Y<BE1AƑF\/lTfVGvwYv]Qdx3tU7/~ʀ D '8Z'p0jx@)4bgb8wֽc^;\0U DxUr8q~-'0htK{k._dg^Ep& Cqa >d@GRθ\ij1fw={K]ب*!n%~蝅‹3C1+Csiq28mPъ H)~C{ƔؙحϕJ=Dg\7TՈdʮrh:V 15OU O6ѮaԽUS 32Rx=]A#♔ӓ Ak;[<XfU肄ڡbdkhϸoL[#ex?y1xui<ǝj6ښ\ԢBXFS0\˳:;3sA3Q*p`p/Pdaw08+Fgd$Z`h*a83ndPՒ[h [i1W<&qwɪҬ(;{ +5c֢BN)W*GxFG#0:;QG%3;)J{׹{r\2wW3/8 'OmIK&"YYd6L)"\ӒY;grM݈8Wx-  Lubƻ?+!(B(5ЦŁ.ez.ə( 0g"dV<cfƜ^0&ȉ#jM;*M gy!' hf1qcٱLƙ5a2*&%9 9S-Gui*%9shF>D cf2ga]֑BĨPj8|٥+e$HQe❣{*?dmQںfa2a#D+8Uq_]+4"N0c% .)!XHj uM_f1b Q·Hk>2:4*>fp0F腱ٰlV[Oq* 'h0A\03H5~#b,!b{]n594B e'$rمN2!Zy-| }*"NiD) .=ZLoS03UMhZܝ/ztxPҬbw.=A~[DGB"[Nd6ʵ "8KV(3N00WfnӉ)nݠOVJ+po7nsoF6H%HUWgZPУ8)qx]Y |%6@&H BgN?4 ˋWǗǴN!rAY?~6ouM6-rYO`! -VĪ*bߑVKBp7knlaTo @BS$Gw]9Ě Ͻ#ˏUG";iA |6";Pĭ4kiOۇ|4lNק`E *Bp.O]B7rwvH*8U]R"uƈQvj{=Zv\EfIX(Ee=+Wg|o6?FQDcaDI5aI꺢-L:TyH%Z5GbUĊq{r˷O}gwqy6v"a3ٹXwnq Nܢ{p@Kc&iqAsq4-Y&W ROLE\Mes]rf S^k{K.?~sMK]a1o-;@QܝZ#U+iIak ƸZBa hYt*ũcys{[;YFrsF^E 1"lH]w,ͻT๷挫5֭H]Gϑa\.H]CgsR޿ruf~Xb>gz3Èk=z!V+BݜB!})%i9#m [ÃޟחVoOp3#}3W ! brNŐ4eUrrG,)iq-#fH$u ֥ĔsKdq[||_{XPVOk~nv_iV;;۞HUpR%S* o^D\8E\ s)_f+'E֭o߰.pO `ȮL@~60)?58=%IsJ8Nǣg=ğ>m{+ FIENDB`qupzilla-1.6.0/linux/hicolor/64x64/000077500000000000000000000000001226107126500167525ustar00rootroot00000000000000qupzilla-1.6.0/linux/hicolor/64x64/apps/000077500000000000000000000000001226107126500177155ustar00rootroot00000000000000qupzilla-1.6.0/linux/hicolor/64x64/apps/qupzilla.png000066400000000000000000000171001226107126500222630ustar00rootroot00000000000000PNG  IHDR@@iqsBIT|dIDATxieUk}ιӻozF`㶍@ EHP"H H8$" @QL" "f0s7iwk|;s^+y^UwoHs;g^y{yx#;w~iֿ{?ofL *IM/ ĹvӂsygS\YQF){ Yx4&eW=qW=RGcA 3mZ-R`FZ,UEѫz}_w6YO_o 131UDL"6H(DDVLqKjj9ϫZ'ILD4&yIm#sb"8'*fB) E\$1UI '>wJJ9MN4X($- cbue)ɗҔpUH۶QI Hj4a" ("If$UyRP{,%L=|4_ F˅$+":MsߴY% ,).4E\5 <"qBc$9b aDS`ޡf}AԄ8 PS(3T5 ;?ϞA< Nآ)aݭmZ? ӄ8Uw8Fǧ1}to||wQ7\ZF]> Vjxb}CSw =$F\Q䝏uҾ2Y2 8̨5vj~l <޺zMUSiey__,{UW^eZmhfSL7`ut"_W_<})V9^rR.Iq,Xj@kF[K:ohC9SueIj[Lō&|Ghےs(JQU33҄s{6Wf-?y퐯:;aA6` bI ^wbwځU JϮ#,7ZAD9m]%iuy&dE+'7V)$;dL7o!ɌE2f)瓆Oޝs?u}\t9Ɣr('*Q=~WZHrx4eyt+J*mSݡN@$QTIi xJq'YA[Gh,5ġkeZN=9ωYǿU32~A@ۖ?Ueo@k;wUBQz%x''j1Fں΋HbHQ2rS.qiX86E1! hpFY 'έtjM&g{1c >wˣCyx ?#> ?D:BMQ sv-{cL$oO"J&N_s֜Qx v+P5;Sڂc/OLL Ǩ,T9AQmmÃ$0HQ eKԶ(zǹ?a2RWvAQǹP5~PϦT Q'2XB8N:GOowfa˯Mbl%ue|Q̦zQ!!5 1r/+̌ LМ ]Ց=MVUP 3aeɏ;LMR~yJm\oњmgXF~ao3ܬet8P)C6\^|$ā[o z!hL8Ʉ @WW 4ݮ Or6])'F#/xǨ ϏMl-pB&OHFܼuiN|?gyKG#Ȏ:RX(8jMpiY NL!X>sB׭S`ղi0" ʂc.9ATJURIєXWr:;wwOg1_OK7oo.O}`6{G$"EQ+g{ םc=/LJ@}Co4&\%.G~jy_\rIlnL-r4k)Cs-AA(DMhT؛/2w ƋW_FT~yO<  fe%~m4/hZiU( EN'w\|1hq++6cDz!pag=x~~ ҫ3&s~~{Td6* *+ƅǛLwm^~ OڜgGސȎY/):=(qEK)D0VWLh3^kvfjT|fXјp~:ԐN2q &c95x rG1?W ;6:^eٔzeȉYR#EA\+<+XɘF)s8 ZK3q"@И1\gTÍB9W8t'[mf,ۖ*IM/1Qy#s Z28T7zfx dtɌfP|z.9S:37nTÄ/%(]^p4!Y%${0EeaYpf&E{ӄ٢6ȆA!4W_b1YvUPl1x`߽WUdX.xkUqfs88E8ͅN 3X$gyˎL0ߡ31qecTa ȵ+ls8o ,co̥/ !` 1Y$r65 I)cfJFFX$=f˂kWtI1 \* w0vmұ['j2&vbbۼs_4FBύEs;!ʒY !x._=piB" ܄Yі y^8 ^xi3V=M93[L6.Pn29Wf3.6ij~WHyBB@M e5c@J,hU0? Mx~ŗh 8gs !5 )'v^pUr 1{e/x-xeٲX(csϓ|Z$.WV^+aA3HEAjg_`*xpmU9oB _NzNhԸۤ'|[6ڳ0\Q{'ohY+c4)q>#-y>r\>&49.66 Oܺ\eC-q/ ZF>d΋wК(l3wr{yCN5I̸gOў"P='\_נͲXYF,sB> Tkp,2rh}S/S')Q`8*;?+AY`-G /ܸX.i.h5Io!`\n?S1G1^>gh.^B3x(!BW~tB)H&B3R?x8IJ{N/UTc=b`5V&GXR; Ғԍ7RRژc-^}/\k}RSbK3z"y} 5\Y ΣmK{x@9t^+W'g{}CuLjv|r>Q+L z"\n6Yc1?^˃>;4I#O:wC,ɌK9x5kM۠봳a8i/xCK(pforu-9O7ހv]tM5`6.Q3D`0⩼huD{NVG+)z>`%)Fl;)70).I_RSC{{rAI!fFЦɪqN!`) ?t~۟}ѐ6Њ?.NȉqF ԋs~Ofrmv6 [L_N(WhXݡ$hs׎ɽp>0EV7hqyh6<|2om\ ۀ[p<܋OTeSbєM 9 Q.U"9mPn%amݻ4GG ?ߣUR/4N]lFX]ݡ\Y!g1s&R]S ,v)cRS瑴:3i{Gt<[@RURxB&7htg+cgQ3ûmjpf2ؤXߠP(7Y޾Eu6d©r4iyƳkWe{tz{{/^bs̙wq1ǯ4fX7HYfHY:ڦt$Gە\WĔGb$6dmc~h8Yl_f!ԙKƖ0Z%Ka چtW꣟n1BnW.IQUdB2F3^Rcm=C|}#.y*sƹۿ>UlTʧݧ/ XUȨ'wn"vs8r~/}<:zg@u/_Yp70Gbw4SFT@F ,233"H*r?1Qfe*ei> B|ݿ7i8~_).f"@DwqwQ17ATPIs3/EUq7qD])&# "QMPl&=[ /o~OK@U#)4N.*તqUfdw0̝ !IfMPqr s n\637?fDNU|45H:μ9eR^@↘#f !uO`ɫ{ 8-MhP<135pw4 !.|盛/,^ɚT""!A0+x.hqQ3CJ ynVsJwhcA|vx`EǺ$@&/-$ z P@N< '_L*ZU1sWD S%YE>Wݭ4A"8).A?fu6V)sV2kC8AJ 3LNǜ4q3 {'D[U06@qF@26r/zdfdɨ<f\[й}%%X󝃎Μu16O٩i9OVy׋gZvoɍ|Y<BE1AƑF\/lTfVGvwYv]Qdx3tU7/~ʀ D '8Z'p0jx@)4bgb8wֽc^;\0U DxUr8q~-'0htK{k._dg^Ep& Cqa >d@GRθ\ij1fw={K]ب*!n%~蝅‹3C1+Csiq28mPъ H)~C{ƔؙحϕJ=Dg\7TՈdʮrh:V 15OU O6ѮaԽUS 32Rx=]A#♔ӓ Ak;[<XfU肄ڡbdkhϸoL[#ex?y1xui<ǝj6ښ\ԢBXFS0\˳:;3sA3Q*p`p/Pdaw08+Fgd$Z`h*a83ndPՒ[h [i1W<&qwɪҬ(;{ +5c֢BN)W*GxFG#0:;QG%3;)J{׹{r\2wW3/8 'OmIK&"YYd6L)"\ӒY;grM݈8Wx-  Lubƻ?+!(B(5ЦŁ.ez.ə( 0g"dV<cfƜ^0&ȉ#jM;*M gy!' hf1qcٱLƙ5a2*&%9 9S-Gui*%9shF>D cf2ga]֑BĨPj8|٥+e$HQe❣{*?dmQںfa2a#D+8Uq_]+4"N0c% .)!XHj uM_f1b Q·Hk>2:4*>fp0F腱ٰlV[Oq* 'h0A\03H5~#b,!b{]n594B e'$rمN2!Zy-| }*"NiD) .=ZLoS03UMhZܝ/ztxPҬbw.=A~[DGB"[Nd6ʵ "8KV(3N00WfnӉ)nݠOVJ+po7nsoF6H%HUWgZPУ8)qx]Y |%6@&H BgN?4 ˋWǗǴN!rAY?~6ouM6-rYO`! -VĪ*bߑVKBp7knlaTo @BS$Gw]9Ě Ͻ#ˏUG";iA |6";Pĭ4kiOۇ|4lNק`E *Bp.O]B7rwvH*8U]R"uƈQvj{=Zv\EfIX(Ee=+Wg|o6?FQDcaDI5aI꺢-L:TyH%Z5GbUĊq{r˷O}gwqy6v"a3ٹXwnq Nܢ{p@Kc&iqAsq4-Y&W ROLE\Mes]rf S^k{K.?~sMK]a1o-;@QܝZ#U+iIak ƸZBa hYt*ũcys{[;YFrsF^E 1"lH]w,ͻT๷挫5֭H]Gϑa\.H]CgsR޿ruf~Xb>gz3Èk=z!V+BݜB!})%i9#m [ÃޟחVoOp3#}3W ! brNŐ4eUrrG,)iq-#fH$u ֥ĔsKdq[||_{XPVOk~nv_iV;;۞HUpR%S* o^D\8E\ s)_f+'E֭o߰.pO `ȮL@~60)?58=%IsJ8Nǣg=ğ>m{+ FIENDB`qupzilla-1.6.0/other/000077500000000000000000000000001226107126500145025ustar00rootroot00000000000000qupzilla-1.6.0/other/linguist-set-language.png000066400000000000000000000703731226107126500214320ustar00rootroot00000000000000PNG  IHDR!* 4sBIT|d IDATxw\U׹ .lAp6Qj۲mg~_e״,K++sk-+Ss"s~TPϳǩ83>WiA;6 @x%JBBL^H҅- Ϥ(PTZΞ= 4y|k=<+s6Hhh0Q_O-u!G>[ TZ6 y1؃rMn-nv:m 0{바{4~>FmiŔk~SZ #Z%7%51H e%K&B8|RPmъ _ PX <2@i5jWP,`(=h48.%S(HBxޑ DJQAyH,8EQ"j Cմ+%yyT z?3j6(_h8F_"2Ъ%4m¤IFT'v\R巗Oi nz|mj'a<#iWZv!Ts>D_Yq!:3_~zYNswɏ]e& b:0x2]?+*@PXjHP: SҸ 6jͥ-`fuN/z RRQP %?3rL*2/Z B͕z,Ed`w*j;mB k5mgΞl^ ' \ U'\+튲r KU[8@`dd0ǡ6`nU`2#+2G6WExyסE[R*\(zQ\/ՖP*X2e7Gѹ{ޡ=ёQQxiNd埇]sCrU&QJ_p4pP$P~"}BQKú MIñCIHqfB+ؿ?b%q~.fL;l6a"B7a6Zd`.ƠSA(#3ҷ5-ӥ{'FEEVe,+qʇk2RR7GƘ>a]+b 8ٸ~/k?3j?2q!^We MCXl'DgsH@D$XKc(arz۰8Q{/vD#< 'Q]hbdQFuҖ$U+)#NKfK&ه1]tgWyWR~f;uKRNm_ [cw'BޙuQi6qɕ}EAVܴnTN+C % Kld 6YMdcRGR8Zd$T cܤ\$+$Wcx& }d|bP8;CRt&;;,{E"[wvt\U0ecBaXe[2C/3 Fi#߽;P}0w*ru[ cp/km԰U,ta r*9sDQeY3m(`<@FԍK}%<T8FW=Q\yG '08AV IFԧCY;c%''p]0π<^̃%<8B|xxYƍ˓=Q g2&PݼzԶ'?xm5ĺ 1q<_'˷j嗼d-o+'KfF+{غ9u(lp#}Oٗ5d~07&(UNaq9>5^KY(6U)ndzj} N aU1M{2jBu[OۉmvgۦNTvOήhSgWu r G|y̫8a lV (7&w3:;7(:EPО{,cH8s$ ܻ ~yck>4Nd5ׅ(w53Tu@ۋԓb*dcd9k1TĚ}+OW>-tɬ6Je:G_=I_/ңBT↩7_kS _ɅJs敯982 L ?WTr|p&" 7_j6@oC|vjtN[6]yy^WuIYj .;Y[ 2mSg n$J9h|&Bȧu:d?ȣw#8̜2 Ȥq =qkX -Fu~7|~3ya݅T 6aײ%kek'Sfs[P)n;ͮGY9pBva-ӫxX#k®C';s᧳Qjeg>ݶ 7umĤiryj wx=6:%2 j3o׳P|lFKzv>[ 4@?u ?wCj0@(2ů_汱sE8V\>JlI8T@3,((SY; l(8Hɱ=lOOeX3ңkn"U%n<ʸ4+r(7*3֌]8C쳸32ToE.$@BhȐ _Rث*-=0"obQm8FCC~Q%(<~/ʼi.;S5zX&)X9iUU lYmD+IkzOۊ(ls8|*U.gH?N^glߐ?IrԱr(xZ؛EQ@psH_O5*?2QqT$J.:%.\#ss}Cxtvr*EH. w!<]`_N-<̳ӎ f,@+H*(+5 Ov)7c H."{@e GHK+?eg$w\FYN&~Et'_|#NH\TƺGJE_T8߈XN+o=JU˰Aq445Ƕyt kW)^QiZΗ7W`z2.VRR; grdIn ,:>Fe^>h>E's7H&O |(I3_Y42Q\QH0*Y$TxwMᬻS).9JqO7Ԕc) +j{ie2c@qd s\&eQaw ]மw-;.=㥖< {-ywGrBŪv瑧Gs-: ٵ7 ;^z .1;QI4snRl.L\Ճ^ˡ t< y6\r6UcoӖP#ݔ]ȴ'Pr}9V͝[vzjrJ%:wXaq0*(fsسS = yi.ݠ'c /ODiF|Dt|$2nC/+ZMŘtgPDv";|TT3/+v g:* t*tNmVlT]3?RwzchFPtD@-U**AFChRhuh9:v2hZ4q|=S~ V<(:q}D\Ntʨ4Zܴgw;6[fjwzRĢݽwHG #Ko_f~q{:O)H;[lWnt#*mNRN}I-B|):)p6r3iiD$V!=?y%TʉBn @Z%뎻e_Xl.m6tr˱9\Hj5z/>-zs1IBQBNOK&cEs2@LBh<{/t1ڌА*5_X~-XhSBcŊ &qu QAnίwP B$ &% I"@ mP B$ &% I"@ mP B$ &% I"@ mP BPݎBBA8C(ٚDZ;ر(9%luo%>~vK# RʮnGX,mיk?MBl-,'ʅ. Psw03`U{pdK h[ ?9AYqߌxY|n-IWcOЗvf\:y&+؏~ȄoT'˸ [2] ۓwt(~fV yK2g跫0}b̰ wI̽;Uisχ(U@sD~fc|\vLW''j^|d9Pލ}NuAh)@:^J4׸|L;)'FN^(c߲<HIxjN,Sq* bٲ+$a%􊎤!ޚp /:@ED_.|EomK2>12/6QXe4ބFʫ0~Xf#eæcKUOsJ<9z23Icx2 -Qj XTgA6.~>}=jzƍ6Oq|n)ws|~nEK~\3q*j9kf_e[fU5?xt+V4̨w>gpה'yr 帎\ʚ7 YN(4E9@Y#f8n,s BvNk䧫bϏ k|w LyQ^&(%RГ`$;96Sj)%I^t?mcy+ztjQq:EΆSv/qwMJǙH|K1VEyN.v_{z֟†>: e\]jtZ?F=qvz{8^"*(7X2ŮY0fҢSFS75eSY?ʰR^2ߤ@ퟳnxr,bHҩ]u)]蕑M͛PުFnnA.֋o 2߾!=0v\wNzuGI7Κ$.QIn#yza~㌿mWF()/O&\5㹷2ބ=7՘WxE];g* k!Ͼ:*VgRtop<<+x}ܖ˵A S^ލ݌: \L)@f%$'^s=NWw܇W/P2i:kW󟢇?/;cﲹJ/TgGOpϽoOeOEg󕼻)2{]61Sq^@3g-~ϣ/OyǼZx45>'Vo7KXfH l:Bn}'FV5΂ iˇYC|b(="n{==VrP@D{_N_,#;=??ܚyɮ6, 'Ԥxb/! ?_7$dYd8|7Yֺ˕dnGyx_ĞjR=ɻi7΂ mќ_ ڟ~9wP SX L@}5{63_71)ohj%s*}Chf|~kt =;TFYOMMuA{kS"a 7Wfڂ mP-AAh"K[  B$ &% I"@ mP B$ &% Ib EQ]2˅$I*:DfRAZZ:즰BIZ$IBpZm) 4I;ƶm[2tQ{ㅿ7ArQ~u,!2uCPLd= :]_^5"Og>E28v2?-OEE;]ٶs/v%kWƏEQQA=۝?m<@+AXx,}}U=Gl_41QD'_Fo_p+?r5:ѱ C& yreWϔo+7wci ?e4}b8G>Ol@J4ͱ2יtex5%JAFOӘz?Rg=͒4'$ [ K^ON(Uy*^ySc ?ۇLs7:) (UAq,T*5*⺉7Ixr#j4\`LGLyşkcKV.[xiKE$>~£-awV>Jtr`vW񊍬=ٕaFh Ҷe΍Q07:cy߃…%Z3g~ d5]0ZKCۈwne2 ng7Sȳoɳ/O}0yz/tGkZ z=*թPRh$//~N L;^E} ~  1Ore|[*Q.`v٥GLF(*և:k 6JTYGQ;Dן,oMiÏ>˳?E2cg:iII| l 9?qvgs᎕BFy7/M"&?/jd}猿EW 1gg1kƫ?`U+裸$Y&8BU 5/.n,m}ܵϛoaЫh|\f m@h&EFk\r1B]rt]Q|{<5o_I@$#5GM@7*9v]|#l7|}=PIxQ\v|4~-ĈwQ(Ujы/^Me`DEח//(ӯ a9~fgF`D))ݷiuEyCV}16s=$2O\F2ƻrr#=Z$$5wci{ϧ;.zjw..dWT RXMUX|_A%T(0< o>wI_}KIW9Ԅy#95sbSΌ'(Ȋ /Tb?_@uJϼ1M|"n:>jFux%M6_~P2wHJ.,dGYoex5a;/AjM@T*q,ɲBnn6[L|BZmJI)).9BPTIH'((UH"@ YhuDEEVעRj%8Pp 8Q B$ &% I"@ mP B$ YP%#\(.?$I*:DfRAZZ:즰[L$u}x& AhdLډ4mʐÈB?$9Pd[yPLd= :N8p^hZ;$6'!>P]tfR(.*&"2BEλT~W+wPpEAV.~!IˑCwP-My0iۭAxPPPpQKۺrt,(¼[HKs$uCs`+-Ԧe˭l)Մ1&\2i ͦ(JwPK<\JI;DUG`d4Mq#ׂF?,VR2$ `At 粗wcm˷0[xws|BcnfA't!"4}o?ߝ\sKwYqR>{e)6ѵ/ FHw`i\+mycOB+;(**bĈmN (Ygԃk}jҳ&u ^! ޞ?vam究c,YJm# U;X$ RuۍNZ*X&1~mNΛ VyT"c\v MrV;EIqk'[#˚lu-qLaa!#F{8pн{wFAaa.^8Yw p4%MTx($@.œGDu'Y}z6>8TuweL6'0k&!QԼpd=ù9Ydzb"CcM勧'p-s2?n>O9ՓŖo2`*GHH5*XF? ~k>2SF'6NcxWrV>~ju$cLUuՉu?MpN>;59X:+SPƊ ̺c=:GpAL"W0鍔VL_ĝCocTl'~|u(}WFޛt Q>woJj_y`fVLIøTѦ#7gϞ I|v(zw HDZ3&GL:^u:7tgFVV={67t:ZP_)ӏvó&:—X0ߞȵ3U>*sr`v씠ڳ]/qd皭ŒKp~^Rq*K}_{8oףmKV~'_lҝ YyPG~YLv۹{7nX٩&sFW7 ڛz7x_G kC;Se5󟿎Mpa NJu*T*Np~~5!\Cބ>ێ|͡<1^|{_')Hn&['<}sovF8zV=)Kɍn +F>= Ur3e$>?5Tz:rǒ-?mxث̽̄L>&/B ṋyQ,bF5֯0?w*c0^\ҋOb[tK ]+(W;k{6MZw:fkϷ٬|<8< _56ZPzNdyv[>6/Dww[?X77a} ] >K"KuϤWm+7ḡ{uS VERX%Lj#rFe;X𝅁q߻c}AgEw-|kH)u.̣B[{ fgVzE>9m6;G޲UZzZJo*f]rӶqosq%SMvI\G|&L}ro7c,%c7棋wkɴ8s6=V(n\ڡ_>m]iuj?"l3 B3ir}Ԫө&[{eKٽ{7ݺukn޽˖m46^k -&g}n$1!e0~ C/$t3q!!ŌgaS|AxK6Io=NOw5<@QKНGAvtv-GA+\ZJ-`Rn TfNϧ.z@HɗA׉+|o ?BrreP_~'M5+*~ߘc6ΪOz̩1YQ~bePcIC?}t ח΃nbjT=sҥKϏKm25)&M6_~P2+; vzB0jᐭHTBx /32 xjwvvY m]䬘:ͯ(<(sг J2ɵ0㭫#M<U}UZf㛯b=SZcwq٫,ZWqF!z\[iF} DIq]vrܓO-SƎucί;{_.|/Z4G\2;Vm^Fg= 'X2 ~J;ᅯpW3:ȔWa:;-5g3)| 'K&sۏlox?BShI hg~5κ&Bi6]|k[RyоG7F F3G<˛1/Ghm;?o \tT^5Yh $IUPn]Iύlg']nxt EҒ]ZZPMׄcܗom$=a#ؤA^&I`&+;KXCwۧ(VlL&DfRuᯍۿTV{el6j q\ܱ:xQ.Jۛxp׷8,h: 6bYZJB՞"@ YSk44" mP B$ &% I"@ mP B$ &% I"@ mP B$ &% I"@ mP B$ &% I"@ mP B$ &#lЅAtNJq9q:\JKŸ2`>ۅ. Аs PTtWd-U9~`񌚼κQf9An{SAMs.L?w 8sؾ-;:z_ n褖*f\XO ! E.mWbWϓ@o^fWiX|CwB1GwQ\oOѡ".٭XDVm݋,'Ȟg=}eEC3{]zJd?)c<5/#B3{粫d~J $N|q=u۷dλ/A.bIBMH`$ zWLaa;r.-ʱO\BHbtyrdfǀ\e,rA [Xvڄxd|cd_>ʵ/lVolfه13 6IQ|ۄJW!")I6 .[QHlY'cf̾3ɬ̘|<΃{9|>|oO\QƼiyq 2x}Ejŧ9v>zGgcתλk^Bq.*,< >ȱәteGt'Zn~/.D[^I⦲r;~xJ7><ǜw7g^LGN^B!eOQ}blp0G7R9{^ϮN"(QMZ]yހg^BgSO]|V~2A/v`U&x9X'S(8g#@|J_YW{7LQq IDAT.TJ†V2*ِUW^Й1d'}ޤ]t]!ĕZP&ג>=k~e2YG;yxr:|yzs:~]{+Z`M;WxEDȱk#ҿپ>g :&ڕ^+cmk <SFօB\ )@eF8ֆ1+7x)`?atŨ&/ukwf+٭yh7׋I/be{l~}S.@)]lYƋ^fϵ(c-ʋռ0}( #>f7sW&DhUsu!1Jq%POL}CO%0z:L^(rl} 0R(i6~)aD ɓ<^guxmY87y ޡ87IGArW~$rHs6eHIJ荿/^.J򮣺B4 `kq:\BiRǏǢsIBPL5$DDTb2c9@-x!5xYI"]Gu!zPم׾[ކ:g[B!(Q7u Y˭.%B$J!S%)IB$@ !pJB8% PB!̃2iCEu8*|WEQu&tH4Maľ=j" QEMll+GD`4䩰G:TO$}6ً&Qf8z0׮CSU"7HT}{g/4tq$F#11-) mHhXdiM.\DD$99zKZPB\Mh otE'FTU-Rg҂rٱ:JAFFFChAN^+.#UނrxE&bhS#70?>̒^|ȠO>Z ??x j÷๸pn4 =-ŗ&m;ӣk;,f'.Qdhe)++,4-PB\1\2Öh//J֡us3\xBCff&}!..O>dff6t=@7ӄtV&)>ȼDGFfNrԳ{ۘD6IVt~ W1?%;NͣUR.m3FU-iVb?r{)4 `oYE|2+!&4̃ O3GaO7a5{{_H _I˚ǯ&2BH ,VLȢidbРA̚5 ^^g֬Y 4Tmz 'ww5CF>t bp>K[ʼ#X?>^ZPݗ{ZKY;+XϏ;3K$lM+ԞuۤKz䝌ƲU,x*5O+;봓G8M~[L~u^}*{shw*A-1Zb0mX>Om`;7x&.Y˺7b z+,qDftoοԇ-.c=l(t=ww,Y $Q9;o/$3ۛkHފ?BPk oX;@sf^``S#hWy괋.Qe(]SgXq[R$nny]D.fB=X՜.4Ǒ!kӋ=o2sgOoJp<͓30}7|˴MZy[0!҉9w*:'0aa3dec m ބ Q[aҍitZM-Ig Hx\ hV2$fZQJG3uG[ࢪ&'bτL8FsK)cm BSMUKי 1ǦN-Js(((d޼y<ϴTUgذa5D1p.>sDC{7u%`Doݧo7JY.mg^7iK2L7E]Ѵ}ưkp_!¾"| ` ֕ Бd]oz񴥒mGZg QZQw|sE,ZffcXhEզWߜBKÖFJ2/8x`2~Ky(n.S??=  VZ[4Dg%骾4s]"v?՛iř8-;%%ME;Ե=vey@GLE3#8ӗrӎ N[˻3^{u׾v ]84[˧L-=޼&nJZPgʠg%e<̷,~i.Mom6$Ai3;d nu/쉖CQLԌGwV̟G%o(4?;e;lDAWyWg^biÇ>́6c wHR& D<Hӧ /fn\vf/CK~ӛ'/=k̋_N!e 0(@wٵPͨiim5׊pVjo-[JXl)>>n{)'}'KF9f0=޴iӚ`\V(!.h"::G_;эe!Nh4^`zw Q_d6B$J!S%)IB$@ !pJ2I iCEu8(:K:$@ QKHLLbߞdfU B\)EMll+GD/ITJDo={$*hl6=TȨ(<Pv={,#%a4iNQmFB} 4 iE⒋$7''ꙴ7e`tE_7%?| }iA5/n-fhBTri6, 2228Wrqnvo>yuVLN V1O{Ǭu5M*_9ط߷Xm/daB&mfrBG]a ߐ[0_*K_2.՝ݛ޽{^s( Ht[t]t=^MQ}睿wu]UFмEsѸ= .6'5w7 ޝ=H;ht$,4iۙ]e1?q'uj%V ]<O@BB4{+=vE @+Yf||G $##>}EVV}q(yG@ظK:EX+DR[Op tqbaz;zڼS'9=ܜˌ?/壳Ƃ3| ' ǰ4 )(uh KU NAvZHV|r{7{],Hr.7LC\\ $$$G>}l99Qw_Џ53. ãqGE{jVf?zEݮ7s70@闾<ڏ_%a(>ȼDGFfNrν\q}SEGY8f whITd Lg|ʲYΣ}cg}⓭|c%bΈG`KnyYzm騀#7fZFӬí<~K㤚yOKlS4mE2~ɒc*WŔVQ?59~qu}1pOFu%qݛya4=?t(4쩿2̟=rՒt[xoxb| K;)4PsYDYi֝3(- :E1Ԋǽ- ؒdփ=@6ydV2^c$c+Qs<&Zގ۟[tmpM<5cm.}|4L& b֬Yzz=fbРAL&_ 00`grK^Es恒 {& [ww٠S{~gɢn)6 !{<ŭgЛfD&O~uv_m,n1K6-\B?ݟ&XfSs`פ 憠'mZS@7t̾w d7bSy>^YC|pw_&iœ.eЯ`=?`m8~jrNXǤnW[L~u^}*{shw*A-1Zb0mX>Om`;7x&.Y˺7b z+,qDfto??c*?kٌy,MO\m3 `Og玲;s;u뙚[߬a|p'7RIw=[6gcݝѣGӝ :ѣG~i[f榒7a>5 ?4gf*:N#ҡ&(.H֞|,O~9s_Fx/; :Gུ_'Dxv6>â,&{lv,ӻ\)L?֟7UL>_ҥ?~͌kX?" lj4.~;~qAvv$r1j+ͫ9]i#y)CA2y{d(2Ny'g.`Woiyfۋ )\*4ܕVE^++fϞmn>#Ʒ;9{U cmjG֞к5~#~{2x Vժ{1v 4jCUWʅ{mV'TǶwȣ,x8\z{ENhN٭fSvtccZU[W <~q>MPU̢xˉr[1g#:mR@}?:o?-P3sK)cm T4@+{3b֑M(=1hj:??Uog^J+$/Jʥ*63 TTl{*;VY.z)>]vv;ӧK^^~շPnt7{s`qeL0%B |Lބ+EdKWL EA9٫W>ؗeY}]})Or%y]rnhtc?wϭi;)M!tZ̮;c7OU?Ӵ}ưkp_!¾"| ` ֕ Бd]oz񴥒mGZg QZQƷ MbWs=on'_:?U)LK-O3(?r9;HGf+:]*K}݃*..bѢE<(l66ŢE(..6 <>j<Ȩs Q31E]I ,x͘o[4DTZ3Ydci*WOǹϼԫ Fy;B %}ysMŌ}E~;x8^si Tpiy?c৘h gͧ +GMESY\3zlWg#s~'HESo{)88SN0ifb;pky7oWWp:(JO!߮r Xv2uʷwV2 pd-Ct./oK#ygOAisrQr*_y֮*KFU$CG]$݂#2y&G[M/ x6sGXe)[}ooYݻi.m۱{nffsշP'wbsyhAsRޑOGlh( |_L鎷<wbb{ 'w', k&CXӅ?Uny`sVۯeUEt̔yŜp‹_La $88#!]S3]nq<mCA GUə@ă_KWi苿A-3m`.;Sg3,[,.L?6k&ŏ2́љB_]4k 'g["gUw Ue,}^k3s"?M)=ǿm|s Őwz(x[♐b6E犟w+hง5N4TValywWvUkzsu>>,[???Yl)>>5J)'}'K:F\w2?='ȴN9c8"NH$-@#i%ȂvT3TC0Wùf,^,]-lvyAFNri&,!x*H o3Ow`A_UTW?XYh!Iqq%W3U˕*=LXq.hVN& ǵN> [6h'3gyh*GiiWf'/$)9*ay/U8;UKХkwr+vYټ'__jOo_}߶6f- 4ă?iQ|< jIHEtX"bl_;Wu <+Yi;ɯs֯ᮅ[:X'kz}[,F!M0 3¼TU*&3VW?iTq5 (A/kvi38Ӱ>F̡eI-k_Y^!xAɀs?1U֕cQ*ǧm.5 PJAhۤ;< #=t9\u$j؈~>C+9ŕNb@Qss]i*4FsK/55^{ ~5oKfFz:M' P5t`ҙ7;a`&yKMQͩS6tq! pIGkGjj >>ޗ$HItz=زi3B@@:nŕMU5RغwZiX<͋%JZ DD4pd\ɋB4N7mڴ&88W"J `0&<<&t:F% N J 7p7ȟEf!pJB8% PB!(!NIB$J!S%)IQIDATB$@ !pJB8% PB!(!NIB$J!S%)IB$@ !pJB8% PB!(!NIB$J!S%)IB$@ !pJB8% PB!(!NIB$J!S%)BiPQ4.eKQtzz}_y( t :(ť'J'i$MfVVC鲤( foobc[8"X鶚qĔ J$%=zЦi8A~DZ$@ TJDo={$*^źl6=TȨ(􆊿N$`ۧ=1MNHMYmv5{)xX0_xIIp}^D7i\F#11-) mHhX  %5o${QJ. pRY4n\"""fU4%4oBjf>VJ‰i&zuh2jI䯄CU1HEq1qjUU]#'e@ؿtQkR O.B8% PB!t qKپ"e^N9 %*֭d$A:6p (!ii Gu(ĔΘ,HK=j1M墧_a.kFBB~i!IJi}6Q2 :?ʼnv)͆U5b9̛7^ϰaØ7o^CA=(!0']0j"0=<̵LF=Q.x: k#;ٺcdz*ST~apxژ0ף~?|||غu+#G~GG. }_Sx[sرM'"J@YSuK$})n&F}ɢhzߤ߇h2v<|Ѩ'Dҗs{yd,4iۙ]e1 jX:[b lPr>}:| ₯/7pCuîK6]ߒPFJNXK)SQtsi27L ].H Dtz\|K5~d%J|}O`00{*RvprPz Fq,b2Z˴zi6n8>JϘ1>3Ņ'rwV_#9UXH~q6G۹afrϋ;ޠﭳxgK]d%Dt Si˩ŧ uFOʹ"Y Rw݋ѨdԣK:Vy…;ys2\G,QuQM:sm3O4;M} McDi_|0' s-llju4?9}A!H[[{n!ux/y#Ug} 60g>̟?riܸqgZO*|0=@N/p1}fJޮiq* ?ըָ;G PB\!EcG0c9m6~hb9V~g٥A%nF=;RFVcR7 ǫM\ipvvM Nk$o}'v5Dfto/vnL\ug3o&_̸~^꯾L4M6BF={6??/QFSO=EϞ=.y`k<ʭ1!oet*9/oj_g9OJ5ѸX,,Xp&̛7NGDDr :nݺpT dqő}4 ~(vSW2ȓ u-'⭛pQ'ӫ)SL F=n.N|!*wQH[/f2܇iQikpU_!*øU'kQLj3ۗN* : vL+*t2)yO[ohVN& vFNr"E.m*zQMyַ/>ߓhU1u͵0 lڴիWзS"N;F͓&axؑZ8gӕ63{mp5 `kdN {ÁQ㻠~1F=1/lt_.| 5;5CApT ~v?aD-xxF]3gc+ ^&/r֍yml6tNJvmWs?":ipzZ)?okMæ݈U< (G0E[&-Q:^/G_?*gf׸|ymm6/TuK%y͆}Ͼ(J?Җjhá1#tE.U-250NuK%ӸΚ@UkxoIq1u.(!]5$u$@ 󆽨Թs%S\tzgA˃pU=SQ@ӑA/D/ݡ.!pRfooRROŹ쥦]e2!׃9D{_]YQqJNJۊ-.9jun>zbb_ruSy# sp<%16 ?< PB8)@DDcANvz0Dt:>޴iӚ`\+6KO~Z,q|R5Cl$aAXm q](ن :N]pqsA cG&cPSѪhB-v!Ιg@%@7"FmƃC6"MJGh12aq@ ` y8;۰91-d1"I@ t‡EY~!|R0:ioyQݻǔ-JcOH#":ζF*w37/=[[hQ qa^pv Ozcd8F`PƢEex<-&h_]@ꃨ@tr:var#5Def :mlF`4GbԑڊGQ1EЌ,M뤮.`HRa^A8 א$쟧D0G}t6u)5Ǧ,җ> Z:0uɡ6šII3u$t_/sgNGj/7_}>IQ;uuL^v+dOӯq[߸s8Թt7w"*&-9 .h>#fuH-JJv=;ŕWm5}|bJ^Ma1KWcV Ŧ-yܜx[[ꙡimh+rREGŧShtsO5oU?X66҆+a^$Tq峇BO}B[_)~UyۋS0<:|x(Ҳ02-&cڃNg48iELJ]ҷ86֓/XLbϞN IO8v⣸sk#)>vJUUx6Ppv{",-j\]4w[ IP_$t=ƢIBZEhS&AkD1G:c'.. I/o[C nCjHfzȣ(}.h%hj!ef夰Gj Ye^!mG0誧Fo*"KNʚDEGqѪ?8#zQ3Y&9y!^si 55&A8"}%!ֆV.CF?7g}\Ԯ~y:]͍̜=/:/", q1zCMݑ22Ϲ[0Dpj`Nŧbwf6uEZꆴZGԐ6S[wLb]2SSG y;ug{ڪq7 i+8>PQ?|VϟwGt**?[q> 4tpk;|ͤ ZYl'}*bnA#ɴ9m_4&ގ#PlOZ^YdeBV~ֹn$qSӱ //->5u?eQ:^DCCCI-kJڛ9SJ4 4N+rpI+X( _!ҦcQA't!6# S{g4{Y+oS˻`A6`M¼,~un3NS F?ֈ92}oST\Iؽu;%,MΚgnN). Z*x΅!tӫ18όe?[JzQmOՆFwK aOH!+a' LBlSǥ;ݜsR}e;H=s8gx.鈯,\%6T5ɉ`|P(uq׷`%Ϸ'2gOJ鈳 -r!}qA^a=HE ;9cu<ϭɓ?]t Kٻ鹣ϻ9UQBUW|}睐>ԄsWqAʼ.R g̭?WΧ9sGsm+Ittr|\,h;gyw[R+1gBFt%c8OM'UUӞeOaՉN$4r{܁~@UjyBn$'4:NֺH8OlM%ņ5n. i EןIx6e,JG8 wNsX*4;c(.Sc$f@;s <s_͋Vy&6ss) 3vNn63D;^6xDFdG)Z_W0dX{;^BZR?B+ӧPl`K]ʮ?alɩ$Duv0F{;>5,0;wu%6,tR-р$=Իuv#ʈ!+_Ͻ$ȃ0ytS5 \٤eK>2*i+9@۽kSr׎sօё,AsY)Z[CcIk`\{FOvAG{/z'$9ϗQ\aH@sn:kҹ!m)X̧[>o# '%1m7Ģu}Rd 5Ό8 l&xDf_W'.G`A 1D.0;8imDȾNc˿דاhf:ۚz7.GBl$-@ң>|4I  0=ǜFc ѶHmDUD( "H` ٷTBtnݻv$cj;@gZpf9v>$3ث{:f>gr"#x˪ŃJ;jkgrZ3I:7Mfeߪa)&%Kc< 䅭dě @EFg+nCd $"F_X! /'M]t{?=iz"0kհ4\--; #uƨAO Hx-HrǨƧמnrgP^Z7cPUڵ3t8+ +wh+b]lKQyeI|sEm7Dfy~okYs1cm;s%UKrfOpk=%9 |ʮ=K|kr8^l\.j,K8I'Sgޡm7B&$˨6e"uX0dNcE{AVzOT2GJ`sIъ4I2oqbΣ+$L"t,I͍넷}uƏxb*\V1Z_g(VgG Bn?#D?v9}!gvq;i JliE5WtMҲ\1Lnef˅~_lpmΖTm<*:'9I2wex2laqLnh7Ǧ#X'* pG]:|e%\m!sd<{($eP{ؓ(YS\YĥP p!حkWr"Y!mp^IE{T9$?Rv8K:o]]žހÑ>cHTeLu@j<-o}{| @a) ~U>PAh{G[ų3H^Gl,~sHfN :ۉ6''P0e:{㙻9=\^ZBv;P/ eyޖsNq8`O::T9D%"n3SF+_Uze`|%v7fPd7)yY N~zb+:ycMA-'F{A:OZ|NFDy;f xV/'"9Z\L|^@[{%dSm`۸2Ru27WG & $ʬ%ytV@c2lNq=a.|I^zi瘳t$_T[/ G̓Q'UFw2=3Ȗ6cdqyGz^ݕ×irkG욚MžtqX(lzQv͠kGLSZk`ݠh#IS߫|7#E@{ZI|pC3o!b׽:td(@rOIc!^5G:٫sH~NZSMҖĘ3 k~175#;nF-ʖga}&Ck=I]0*G(HDb˫vn:J[]@H0XNn~x;]\I+rzy-<`F[ʭ337PYlws<+J@E3L'w3NcIb ?.ݟ|Jg8ckI1{uXUK;bFT6wq Vw8͊-;պd'HYy1ѓshز;ܳ, )(UU,&dv}h;uޖVO8i\z[~R;/kn<\1{ёH\y<|w1 lWλ\S>F\zDM.%b##oRԑ,135jLu{h[fe'Y_K("`ҳFlz_5w>q ܇gpy1X,ÉWi9"M^h* ro 8ٽu;ΰJD^ lކϛ6W֣hTZ;Jtv;ؿ M?^r͏ğFM[UߵՄ5$o#-&J+m羪 Q䘴8ه1f&sfl=]u^ lFw|'~~ DSk}-5M&sf/{/# Aw B@|a3Yk\OU} Z (F9 싶Ixl@b{ 6~܍#,I2 `ϥ('{R9zbj$-t)!)O~!}ѡrʣH>4Qňͤ6;k1sy?X֠b׀Ҋzd\^YYFSg}i)uu6W[?o&I[ͻ1uɡ6b хE/&ZGjF9<-Zw ?-5%kedYPVAi7TIx*2&hC+ ffxl@ *N2@ vbz ɨ4X۩sgWhOK拣y"鏹B VA5X#/th'08j8p,der46 >2um~]2ud߶a:am)8I2&5As\m1hk.PT8q;+IBƢ!Yx`iz)̌&ΦG i2YE;"t#v,Mt1D$~ XҫgG$mŜ07~V: =NħjkɘFN  #Y{KumL=Y"1ʈq02.w (E #i4,6b"Bo8;vtl /O5h!QG >5GpLI؅ނI!9)AApTtJ „CDP.@ ~SU@ /{}@AUUa%@  Xz$@ D @ FF,=@ G1u3 j@XQS%tD`R;;2g 0/}+ᰂSU{Q$ec3o5ͽU)|p9$~?=d g19lW!BdSixٓ{=6K>*#4oOgGd;/$g};zW cqQК8"zlF JeA m=%Zt<ţ尛{:wէQͬ.uq(gg}6+Vׯ1ۿE9ddp` a16Q:a;o>!!F'0+Xi. WӥğwQӗ;/7vo3YEuXbs9qQt?l豟ڐey9I~1 ͖ IEꧾEK qw.4u@p!,,$g,?|t;h@0hE [I/M|O?%5HO;P?z!Xko{fǯU%]W_MbvvJwȩڟpL=L"'s{w7 S#cHvyYR}5| 􉳉 4O1}qsJ$O~t%*lo?:ӑ鬔IG2w=qͯ.eސ~%t,#ר:2t8g*ҹGO_olx_84#S$-3)w[gCe!O0C6Jw/S~"ulyf3hvRk]Eɩ@E éuF?'i y\{^Y@ ,Tg󞱐(_<}/}v W(])>ϟ_.s1U^9-?yw>_=ţ{3{?L0^_o< d"eRNk<8^0 mTP% (η/$2䥳,n>pϣ( 3o/4r N 1h*;,Sus7s9ߏsf5f2#caUpc̼k']71}FN.¦Oqƒb[a`Sa#=sʲq9Y~1:FN=RX~]{ֱ+&~~ oҵe6*KrmB-wm3WMX#~Nֽ4`ZBGmMo6i,شs\/FCcKFuWժȈf***&R&g#g+cHc_J 3 \{PSL^5qz| xG|623ӹs5l9ԀC; | dϻO/#=4Z?]N h<|Evg+0s̰~1 ?+ Sx?VDYޗxM'<8g>̰哯)f@ yᚤ${sL.KQ۹SiGWNA[[ۑ'Y_܄w {5C En`Tog7>("vWP\4LN7Q8>cM/ܸަ)}8ލSǗ/pM0\-NFg4{x_84}8 W)~y=lc_!sܺ'2ϭO9튅8u'6>R #L\H@ >)K/Hf p.?XoohF i).M$R3(.,ߜ2?~KwSIKyOa2뾻W0#9S7斈:6nusg5ksلfĎJ?idQmv-Z;03F< W2'#OyK3%E,{%p5ŘGk/鸴06dY}ϔFcti*KYCr,&c/֩5p j{̔TR /aSD%i-\scVW-LR*NH,8nկ'&)n*[z`I$Φ !W  )HmkFG1&4igum>tI$E?=3FYZSӔHzy"ɲ`6Z_i: UGg::fd㿾k#CMr-@ L=l- @0&\߷eVa@ |˜63'[]mʹ)q1<,G>yH+N,.NlxS@ >s4}tD}N]rpv@ @ ` G(TV @ _8.:QH @ ޺)$@ |s UU i>IIdzAs#D ize׎N_SYPEs#"P)@ښ>ݲAmՒ$vټv3pvw y#y~(D@ ~vI~AVV,Oߩ؎HsM93Gs#@ @ (*mjh:4ʹڊ$BL@ @ |Yd Yu@]s|#D w.NXr2]4p};e2/iס jϿ4#9"PB dUUŨ4~"9"##yttt9㸰vN3 gsosBi DQU W[ޮzi#1#5 'wn-YoK9 ~@"3#YbGg Kd2:e}N @aD$I:׿짫Re_uO>@`kz=_~g,%9^=C{] . }֢㪠]--1Yê*~w+Fk>`ut27G ϿrS,tttnwpE "tib婃O,{_N2Yhڗ ӭԴRUsDgzz iM[j7b2H6FVx3oѰ{-!O+:P0WQ1FdƢcNlxk'+Wnf&rE:-vVy`=F2C:r26c:MU^S ]͔o{{q(@ VfϞ/**b3,IֽbTUu^~1e03+.Kx1Fҷ޹j Vشi泥/{l:瑐s?GvJ/Nbֱ\| y9!ʝObʕ9χh"''?{tc{َi6G՛Ht$]Odm"CN?6}Mwf۫n 0h9K"%*ض]ϟA~^ɳPX|'X}OcYTVCT <f]ODd.*:nTy N_W^µ׬D`W.^UjS_::v4UOK ] V A|L"0sv, 6_:k5A#&&UU^N]]wjR:Ix嗈6VZ=c b>`f(Kt4 kuJ<^]D:5g5 ~- Y5]7O?j۳T '_;obߧdDGGOI$p.*}JXkx2>~!|V2~yʞ:UzgK@Q_CfditWs[-hin&.><6oތ^ru: gf׮]47^O*y[7 rlzHr%n3̉Û~: ae@ŚwφwsEhQ(oE'w!+3vBApHJ(P_㡬rN M\N ݷv ^ϻg6?=4bFCc hƫ$DY5kbꉍ_m'E6$O7C}|N wU^ɂآ#?bb,@p _:k wgM &@FIxuC1}իL4iED%QTG.򖓘}Q.|ڃ|9ac2s0jJ^z X}-FC˅CQi EB{Kcװ :Ҋϟ.ˍEb袹H+uZ o4?Ȼc޼yDEE=:X,mv/; #i,l͙}^qBv~6Z-dִ yYȬ"VGuGSz6غy5jpe h!aŃn;qI|n-+WYIIMg}U.-(A/"Ko?3tG.#4aF5<3u@kiql> ۍbw`{8SnvTT^yf 2>[o w|54jGq~Xl򺡻a;Sּ ,ٺJ;Dgs|?]D (Ldi$I~=Sׯnxg|`FA? {'駽v'Qѻ_˅uikmb/D}bd&2"8hΠ ?\Lң*yJo#@W I%vj׸~j8H=2x!}4˖{E OϮWK 9HxH: INl_W$&%J}}uu\z%gA7`y}d6t:qdeeo>~vurDH.^_؇Q6"Kr \\6!-:dK2O>mh ֮Nh4Ni84:=I04m!Rc=](F rZ{8y :@(jEc!4H1MϽ:,N7@l C0U3<[Vi)@ۣMMڌd|EۃbhdЬh+f1ѥQstE`b=ǡe^V>杘FG%ޮN7(R|>NO^` Yn݄'|ҥK蠲N[HKO?0rC]KN7YV[T AB¯iY uru ZF&{_Խ((BϑgΜ9SVz:ϡ6teE?V/H0jháqo: >T?o=aQ8S袋w =6M/G'Y ihj/[ICV[ 3ޙ.tEQ1<;px]Z.nJp8L(\.Q[]UBt;@u*׀^KgÊ>F1;K{*֣xUF'x?qIeݑ6׋뭛 ]hͯa"I{mftr<:t^~>#:t߼|g>;wWp=ܪBb ?d¸ \1 "##E 'ViXٴi(CNS  |ug@)] Հf`f,]X"'eM$] {!T6#YY:<>P)af\HTXM:F0OIQ9QT'b 2NU V(4<ե$X+X23 cz& Ȳ!7(:a4"5yumN;f˻Pot$uem:6-- $v{]6al]GdZATEỴCB+Rr7}ˆR A)?}w[U~ ȩ5ۍujsAdrxCOVm?w˅üSU ~~lƪ\=ӧx^T-h>4JJJիzg);b[A~/ٗd2[ebfe;cŋ`+q8] hfiIޭ0S㥬YXOMu.#PQ.f~ÈwbN$LÌ&{0*J]i}h2@/x}GLqp90mQh#UO\R&t&?bYxwzd[(~uOW# (F@ίIG-@AP4^9/{̱܌Ol+hѸ1_-{8p 6 ϡR<ffs@uj)ބ=؎e+":ERurw3.,erwľ!NDQ^Жg@U|5_MZ$Ea4$*0th^vf?be'yNkh~Fl 5sW`2e ߇FN=¢pg1񩄆(2^:/w.fQ\P­HdDX3tRb.gcIMhԓ)v GT{ vbMGܨwcGY^k|L*30޽?&Oayٔ%d $4ԎQUABS ǵ.hϞ=4Ϟ={o4e6:pӧ]»-:')ݏQE!jGO@jX/RaӦMYBgoR47e۝&i(όy`ҹ %$sUΘ ވlcS J8q'Σo܌*&pw28ɟF`Y蛞ް_kEԸCA !44;vrĉ/ޤ j& ;VTMC`XPT4z).bz`4W ?Hpp0UUUԉD@GN{i3pd^Ãd`6 ]H$.C$t Nqػ}3\, B{}9""Ivb XHl6([߯aX0 ۷o?#;%>x%E۩lrp{w'8:~wxnޠg#h.bKhJ(vt%@Bw!K`?_m+(Zh W1`@ Ned1ꄁ\w.IPd<ȁ9k(;I-PN0E/ͦ$qWWbFٸjj{.$j8PVKqv `6ŋb>#1gETTXY t^(t6xQ4)S35[,\pdfft 5ۓ+򰘢P\,uyp:k(.@,lٺ_~-[`2O 2!NI7s"v H=e9s>>6^+}wsD8B1t ݇CO`T(ɥ4̌h[Κgض#4=y ޣ{[G,vYEY`@’Ih4>Q1 Ջ^~_Ǩ3W  #1tU8"!w3g.cٺKzm=7WQn[9NUAlmG ,`w-¢0p@"##t'A t^(t6nSmq+ʈ5jTu9*FNlv*Vm+),_|/[ZVT5FqQ#̦U`4F*vgeИ<|{|GS3AW( V̱׳EX̸}&/@o$y7iXSz$,A6"zL&zx5c ׋hL"r/+m" ]Z<TVVɽ1\fΞ|6~ȑ#fɒ%|>"##̤ѣ;2ѧpB{!''EQ5jr=#CMY B$Yp=SzȬ#"~zNQ0M rg@޼MQT\ŐH:N %sfQ⒩I'lֱe.RSͦ6٣]Ah{01,IIJ/ozt}4EPd6= B҃Q5uUIDc@-IAS-6Z^ {Vl+ĭ3ci`]5]0>K23"hk!G Bg5M㬳bɒq:pddܸ]|mja~W 6')S5N٣i>?G{[j=_R_HG5$! nC.hL z轠~%kX‚AQPPn{r5EQld%x+{dFl"17tXf ]8C` ::{H~OqI 8"9A6e}yw2fuHXH%ҽ1hQq5p O>#GbPUU9s;p<}J]+?x޽{sicZz['f;)WnU6.:^-@] tި ^&IzYTVֲ֫b4*߹"3յGE{1&6l;=5fd2hai`Ǫ8pwv*Vi#<~l&IKBsɊڍWc=ĄK0vWQu- {ʜf΄&5!h(Ŭ.$*s{.9xܞ7v ΤvJdee5h衇#><] ƛwr5eժUlq|&O> f萡,~Z? ٟ2}_ D!IaaaN;}HN1bpF e(+.//G$ϧoZ_lwGK:ډ"X#kj/;LqA}bqT /s`%aRXzkbSQt~Lz,c0l(:][[U|}-LzT([P,҃T|rJ?ΤŶcͪ 6ڴbOh1dfI_ܺx̱'JU̟9ks/o94e$7`0ʭ7]\!}qVy} ˄BgS;+drqM7rg212iۼ^/ΞDMm [l9yff&ΞiP~4Mfr?>Vz_&#Cd;z%o&DUPpCvrEҠQJBpX۞\lZV6y kJIR VU,~"3/&c.Tk+OIӖ\ғGzSF_|Ivv6O~dYp'p䳛['Iؚf@l p:B۞L:M1`@,GFFˏd,ket 0dp~iQQǖYsRt<|m ơ&'L#)+ Çd*6 n{?w6Sl s`c6ztY1LGmp0 DFFH8}P$7=fddϮ6l/q |/..\~ .-z1 ]ڝ-Ьݿ- ԣMClf"M|?L\FƠt"fg:ʱIӯ:^K0e+T9}"LiyT\=:҂ZVa0Y@JL&k(yEb4]/#4Ee ,}Xm`৯D԰4\y_AޅXu*k==CRڕǠQx#~<ǖ%l&{lx/Cڗ"&PhmNPU~ 0A=rT*SLϿ`4RZaG$"#[5ٽk7NXbbbŖϦĂh$<Bn$b1=fCVNogEIIqi Be]w˗y݌"~v_b9 Irlv$p8oK==/sŸ#?xR$붳joM HxB: <{{INi5Ho͞z>ZӇ08ňIZHpDJֽl^S\T":Z?V`wc cHQnGXixjXR-jBC0!}]~Mu ==UGIZW=^0*fpJ O^= BwA w.^MSuCO-Sld SiGEhP7O0w^5+Ίe< #4;x$'šhIVT|^jzrfL$b@ 8‰xYM sK bBYQшc3Z ۻݮoꪪ&[jwOӚ6ІVdEOJr/*(.GaXZ!I2UU8k4 H͆ZG Kc79XNŀ#4pG6 @ˆ(ؿ] L!NDpLFcc(7Go$t]~1ASOlL vNAw2E.{w:z> aQDEE,ImfsNM仵y2-`b`0=V,-( BATTd`z`ћ P~(/!hUt]"!v{vw_6v Hvmf3f9$LAnMFғI a21IHdR64|~?&ܡ{h"#o E;|ФӰDD4 :MddaK.c_^1y;1sh7[ .jY(h5Xko{M2ǧo1uk'*7d;W]Y<} J!VySdU- ٲ=Ν;;tk޻GßoJ&;#=b%*6seS3)i UTn)s6ZWȌ$dȘ)A|C|LNH!.#f.@ wl'g)_;8,>u_3>Bϸ)\.y}1z k1. r ̹RGGXe(6NfP}‹ӦD-$WͿ2qW2摉\s),sB})5Qܻ\f[{>yG ,_0;3 ?>xw+{ƅ#aڵ*К/{vs_'^B>=֗qHB -p$IȚhĤ U76RR\Tgc#Q n[%GXS5[p]G+s? 䢻bN|~wJ}_6cS#"?i*^\K£[=Q@ 1VA(yJmŞ@d.ªe2.y%z}x/e g6h-c4ڲ ~1)'qkSVy_g`f߿*B3ii}G^aڴ ßo|TwϚBPt+~3:{?]~Ocon;*| ~T&κab~)BA c0=+F[p&} :|*]+8Gތd5/ xإ6ْ͜F2 D^>=oMѬGr*/mx4 {jMSӿo*Qu'۷mmqPm[TFzcm)!~JV΍WLdr+$o]bq+ߞ׹0C/;O$HFy 4k0ZU5!A@ 14Dz;?`t͘cUKLXtQzBuQG9KU"TMXax?@@xL4vԉq29 'kT/#.d?Hd4e9XBK$p@pX/.-wt_~M@ hNv-'kU_?/T1O@ BA'D $xp-Dlɥ)r<^9=nB@ !"2)CDU@ "@  @ @@ @ @ @ 'Zt ;vZZVL!CILJjv?@ Du1V]vբ]^n~߾|b'ArJ**k*UUb 4  w@ c1Z [Ժ[Yk IZt~?~UUQUMSqGKDTdII,+y1 |W :craBM,V<^O:NѶ2?]@ "I B-AO`0m_k}}@@ D51VBZe׭YQz=rsqա @ bzT(T&H}Tiy9IHJ&9%q@ ^b_go9dxз_rĤ@;G^0LM]݌ƨ~?HYcӆ`gaOؿwIɝ]o~v-owJA@ NKkNiifbǎ,_ɲ,_a;27P-cЩx|ze ܕ35;g>Jɍv+esm%{+eWšt-!"<ϏȲ€l< q;p?4Y0jo0)8T=,@ 8c.@kΜ9lݺlY~'ٌ' IQù}0l<Yl=jϊJY-ZW"*:կ6E(jۅBn0B}LDbBBC Ď䦣-]_kh9N֬YCXhh}+fO)Y yeH &0SR-HZf'3!~scQ;޵>&>&uTΕc5jcgDO_':Aq$onƩ(<>BOٷwr}zLY^mkKz>>4L=RMíi-/aDX"S<9vv.}4=컾_(!5 `b[q4 ٓ<|_xgJ\L/|_j^;1$gq΃Z6w߳p_KKK~/өG&ee kxy7<˃L8 cݻݮync$;=?Yrc:FO>+_ɧCX̻;牑@e*6FϹkQixwh{<{3~fCcѬ߀+naYմL;E{l[YF.^a|Ĥ]w2bpS~Wo{w/e ?j}Wُ~-aH@M?o sݴOLJ"Z˗͂?"C4Ptӳ41[ M rz***̼tƑ-ΌӚ-|o7yzU,7,s <2骇J"2H 䛸ŏxcncP%3Y'q@.{}1ydhsËgFnYvaǃQY=~|<J{m_oΟF";݌6:?廫(wG+y=ӾK$^M~wGb=>(Z[UQŧjh~/d {ӫq.c ٲE6{7@ ~wBԷy .-Zbu-6&Y#R v,G';V!__KsVcp(DMY-zW_]Bv>%UG\v5>M{:&%׵6QVu5#46}&7κVhPje]<+ =L.CzSς@ ;jP8hIѣY|yӧ44ޮ97S=t(AWX8PC V|j,MHR]ihHPza u1=P MjmISϭ⃛ew04X&jY(![76 Yj%NjoLQoĕ}?+6s=,@ 8bFem=ncѢE!2'On"Кޱ+ FR,nx'=@]1"6P*65J;vN[ڃZOӏWb~)9A\>j}TRQ顬:*PZ妤stzWtc!n @=55pJr%Ku>o]$Fr~mn|j+ o&jsixX|9Gl6OVcӑx| cN gc's{Ȼl&#k^cn{NVez) ZfY\si$D^g7h IׁW kߠϫ7zsSpۀe|me盏iLGNRFZf FvX4jYStͿ>\ns Q-./AG KIGY%Pz,zaf,oi 3ƏeweL4}o >idw`j~'_59yMFeeTŹ2Gai{wȑQPa?沈E.#QRʊlu-X<(q!ajwu57_cy|S_r9W5TUPUìFVZ>s}ǿ)ɥe 4.[q6"XpDܖyϣDtжPw< @pX;:/ӣNd*-ZThYvvXDTr_W2HHE^5.W52k[lkVG[ꣷGd?Rn!_w "ӉlnV6Ilo}aNV'6g>+C(\2ujӿ@U׿]@ ѣ))}8TXzW /6]@ !@ =)[Q3@ (~h񠒃u%{62Q8bRE d9ϔ3Ee @ ݰ{V(Į5#Ulə5PYj^&*L&94q@ v R`~ k!"NCt_Z٭BA%$UC{+R @p~Q ۰N@pb Qx ODE)lstؔxt`@&a NX֓yr&M%#H 'o,AG;w.$!Is@7Ug1_"ƭ{)vwPuNc29o)d fʃKTofHb{r3|YoDռ8k띸{@ dgdS׫!!ԡ)Q Cپ tIvҳ[HQFpfόf(;X̧P`;gx#|?b`(Tڣ%ygʵ_sg_EO!w^i/6/p}.xi@6g6V D@%vs>Lб5|+r OY5{*$Bc"|bQ2pٽoD-foBLjME anաPrxE`klZm#°FketZ$l2aΜ9(ϡ/ <hy/5JתYtFH#}X.Kk@W 22/f+)mZ]K;=u+7\wD g3aι?}& ֫_3d3n{}yy^Ϸ|ExF@ 81#׬gvl `I Iabc) Lz8fu 7ɘmFL@M3u@OY>n+pef/"^QPr]ܛ'ǣ71uF ^C`^x1c`x{m"^ZOʹC2>kߚ`Km >ѣG3*+c=mwQ-وe(E{)/sqa#5pcf+$luQ |s'^ƍ/gê*?r/p "ne*nfF-ZifiZ˒4E3w=WT}]7d_.pTDTnw^s9gfg|"&4⁳Gc)Ġ@ OkoRw~[ΉUѬ|9Ӻ7?Gz \#F{\LABX O*C=”CkϹyDV  IDAT vI\ I0JC ,R~\"r9(x]*9&aͷMJW!M2ajZ P?_kR9|σofeN<5mLۘB -7zm ‹Nm\Í&j #YN PϫU:\s4݂YK*ӧ-\pjTO0^WɖkJ˹W)HP(hDHGX!Wl[VT/8̄&s*'NS$j$t){*d:2Ne2iM;oذ,=b"ar(R[ sӣOOFg_Y6xbj13qgeA%zph@ U8+ëJydr MQ)0Aj(֌YS,ݞT\I< vԖp $=ABCC/ܼFR"@"c_8;VZuXE##ٛqf ڏ.n3Ӧ܋}c5{?d#qҟj -*{ɮ FF%M]C'YP4.ǿ@n0Fv4#`ꦯxT}{]<h-`J;b߶Րwrc=;n4 lҽ}< Z%% 36l`@ %VO=2o#h 7GKd'3}niت8ʱ YWįKq I6 DV5/L@`b&WgBW4|ĔgˤDRs9\S6.Dх[!]}i/}nn00ȅcc"+|/vhRCi<#wE;\,z&~J9&'f8ucN$A4D.qk)ZXUVfQ|}8oaOsM>#nO@կ?f >"ɐ#aDex@2qNԘ$2vt8)כ.C5'*:$a_}Lq~,#jʨrrUo @  ByST(Xl V $= 9Yܷsg&;\bZ!J:d(XBc rzF\gQX׫07HJ{wo<5E pCދJ"C}r4?dPRRE;wܳ۫83 eFl53o aZ'" sC|E ? N9N”s꧙ն +,yW᝴$`슛K(@ PP{&͜>D0 a.xXAw/^6Tt|H1jZׯ }=h 7ש /^-@)Wd-C{7D%]7ٳp֮] @2d[- wzAW OW U#odb>Ng[&MBn+[@ G(bɓ'3HWҿ.F2f zANf WtSzӗ^Ja<@ G(ԣX֮^ѭ#pHM!S+1bjYt܌?^j#0q9a@ 3Tk!U~\Kv7 ( c]vVv--('1kob񨂿Of=Ǻ T ×RZzK\>4jxV@ V( :L>17F,3^Dp͟P7b> {4 ,pI kV{L},Dq:9I;ЫR, goĔz/jL0`aC,X{4 (@`Pprr>#33QF1u`HM B9+ k z_󯞈ceo7=Zcsl*=kPǦ OH9'7Bݗ1^E4J1PZ7Ffaf~ ;8 U7^r?oՃDB&a @ xFXwqq!**?9A\gz2d0WvWָg߼*ߺ" sN@i/gLoD:iM }:/S.xc`s\r4A_9?rkGC쟬OEH[8',4o~+|H(P(~8 wL@& *qڅ_CtCjѻ'qC8?fD(w s4h1nݺY k~? b B_> ~:ADk9UqS򐸳:qr*DP|06M|'i'&QCg聍5my:=syFRGkw57bǾ3٤QhkJ;2e) lűlbj;hޑ&FuR2}φ_"ư# iبރq(OBdey@ PXv-k}aw n9q o؏*Uا6?|}O7MϢ_(+VG ;>(VFĮFg"qas?N.;[Gd6V P4{\;>kX0ma:hXVTpkJ1.mڀّcp5ڃ66cJc;BƗ_[Ѷ;Niض|4Ӈ\sq`V[+톫><'\ғF ,O3((XA)K SDT2j{,:ⴖ$iqKH{7Yt2֧uV&_cU=F\@ ; wuכ'\'5_oEdrMmB$p򬈧F 6|{^@Ur=lUO;_"Z Jhl@ao,ͧȩaW??GvTj ڳ 2{ӝ+ li]E6GE` umPҠ#kndo`ߚz$I Y \&)GS5MH¤79l} {%*\fg]`viXVfc{$1 !C0#PZ8.>Up)Ἣw+隲p«}䴚YF)j*T.ZOjxɐ$h0@ P֭{&545(dJj`v|DfM.BJJN\WT_o. F $C.;M滕iӑB6hYg^ׁ2♳7WQ^Yg #@ e blڰU2 wGM磏>V<;>M2/PΫ>Mf{V2 ˘^V٥ܘ'9_@ OH(\rKst'}{AHT"*,FRUžIg-I|WU|U>JxHߵRm\+.}@ B(<B:J`F\9F\ [a`6[@@ _5Vsh`"+*G\\PIœa]GU5'P)c:1X*T}1 i vnbm a1\Qj#YTY*BTck@ xB!44c0{_Oz7FTv򽎓uNxڽSipK9pxYҋ\ L؏2$C:nv$VW#Wt WGٝ܆ Oau>wuϨ1Ry'jOfE+qQ吙G"Ic-@ ϰ(KL5 g&Z:Q/I!})AV Kz?.N($dJQ2(GC:P=Q?!ֱ92s=||o5%jZ;xtJ'\hkBs z5pK*.@{@Bאl#2{|W9RY WfܨZAN8|ǎ̘1CH VIH9L G%fĊ_Ouxkxdy,:7/!eaB-EUdɜڰ tGx& IUҝUmI<j5?P0h cUDϪ<7zD#. W\Yc'_%K\"=zˋ.Ʉb_-`F/y@ xX6""e-0f w7\y7xr5^y.pr.tWlUh^bJl=?Y9q-lt6jwm’ItXNm)_5p\Tչn]NƲ_ٿc>A.]BGp! >:N|ޜ:CwZcNs[jg?`o@ aB!88i?4m)esl:[_|?nxKt[R;Sn͵, 6d5{;>ΉE9[| Zq) _Ӧ:ɻ7n <]\ GXo zF*Uj eost4#hyy+Y k]ޭMjUӏ>M${T33+dcyT{2O@ gBHH6@0!!!V@8@,Og,]0 ӱ+ MAи^P0$> ܒ _-y܈BH)Ayc*.ny^&]^j+ԍxGg]vK\x0B&OIpV )?/U>HvY*Ęѽ'IԢާx^#6.k2 쵸ȢhvuCB(̝;c7ZB`̝;׊,|:CLL 11`bo #p3 /RE8HݎVJ8ˁ+8}#wq4d3+.)}^O,~ٟ/UA=ҭ4WY):d$h1H:/fgGc[6?WcǞǭGժ%gccc#,7'b@sۊ651b| bwxE:vH7pHZNxujQ+~‘)K12kP~Ro%f%ܢ>j֡ LԌthXj5y\g *_L:T O~_F" IpԮY^͙I2SPyz$PQcfNs|5 bWI?Jٵx'?DSRoINU\čk7ȖYf̋"ir/_~ KjmFBת˂%Dp2{*u2`G&-5>}Osg"4+ ^mG~<5Ĭ*/W.(lwyo.fm2Z4x;pyy~eQמwbuH!trj}Z$-g.܈[y ӞP= @ m/10u Ȕ8TdՁJㆇaIhp+WۭWH犇jw &efn96BS quĽ>awžeII!8QrrQ.mݻUr0SM*~?1o>&ߵ6<522O&YYz;5pH =4,vhͧ5$J'~wîh7 2g'1䋤RU$f=e}bey\d2ʐ l48O5Х$o7 Øx ?aİ1T3qgeA%zp`tٷ݂f߲c9rk=>e)=*Le'SO@ Bffoڳg]ݻ3dZn-,Z*"If0dܹu:ufj*L($2ܑW,s9mU}ތvtuB9Y_[RNҍJ Qu,-kb~a -|.rKjHñ h'\I3w:ɄT6e|m_3nZNIUug,jFa:)⮔'d7xHyWZ}fM=L?=`koۄ;Pkcu ,HhXY\2S'46]HNXrhZcIâeˈگ3<2j't՛P*ݠnESI1mFhJpo`8/Qd~+1ExYhOZV?QߋXy3dҊ:? ԓ@ OٛI/wRb'.ݼܣ|3G!}/^:H ?~b2 ٨PI,=OIX*㥖'ʫã~Fn3ޞbTSnwuByl\C=;v$ZuԬIjF&۟y&7wwMd2$4h[t'!~% Ha⍷}7D]qs/{bB@r Gw/;)ˤ%):&{yP+)2ڔDRr,ػ{Q>:|"$X5>@5/E,ۈڵk 鐏*y?%wTp DEEѮ];+;F&G!ypfgi`MNT8;jcr6|HUT2fpM,UwUy2][cr^-aΆLB 0).Wq>6Tt,Czr;7b 7.-$n>Y68zQǰqijrM<=/s>zP&0tP&NǻK80eho8phMM(:x 7NC}.5kIn[yG7XQ?hw1= Pd3x=Suoؓo\f ՂkV2cE*1`?hX/@P:ɉ~qÙ:i0/e>lgPdcĂ@Z¢R)@n -zF.rrYY˲9n6{f߂WH \4ıimWg4ȑ#9r߮=^h@ P QQQ Ju= Ð!C,-#: =m$t[ =!H9Vb:U =g6= L(v6Ɠ㪐 @5[R'j\ZZFLf~śW@ ;3޽]<'aoРuf]b+4PA?D.Ί }$)S Pfq#%%tMݺ ={Y '&QCg{C7jrt"zPyEJ؋vصkaaawJq@ 'ֳKd׮]KHtҲ`.|Dāa?^T.}jI]|-=m@xV\…i\bJ)l?_du@m^gT)]z=v;uTa$ۜA-K'o5l=FСBy嗹Qdpv1c0@ $=Bҽg:w /.>BvXqC&2N,D*2`=bB dm_̑L37Up}`_=W痓ٙfy&s֜vZ uG&]f7ws׻*œ3t 0?&\7ӧ3ofZի7K|_Aq {L͢n @ xbX-^yfoǒ=x7Œ2$2ͬ1xn.Y/NrzR}05ls2 f@V0l,|.ǒn()*zxK78T"ƅX=u%sk" CS׻d)7ry$vd}\DDD\.'ccY1 ._D"##Bׂ\p;Oe֒x ']%U/=70?nǟ?b5#gd|xpa@ bur-`۟ٱyMj… 9j#@jb!o1% ORu^y7yk`$ENlFrPxy;9?5m,Ͻml Jy!v\0aE]), t 3`rkGj%^*$vxnbcݵR9]QW:zĺ\NXDYJ*Ogt|sjb$7sޛ{yޭy%i93ޟsy6(1aă>z/#{xl733jHn#XX Aҷ U# ֭#'=ҭE*7)8Wf,i]~P'$B?j U;`{9QƶL {^q1.\ݰW2Nl_?6s0NNŦ6ځ̥%#j3y?xIYQ(Mns2cGic]4 四ϋo|40&qtIuč?ޡ'{1q g∍ȝ;^Cʫi+ϟܹdks`rY®nbWb@ 1V{='9Ȇ+內x(@Vx[>R8zPŮ3ј)Q"'|#3vEGNXľsUQι/{gPG9jW;܊j?~RUGcR{#`i>FN27bhOrtjt#mξ6^)rI[`F:ob۸PJZOwIHӾcf x~ɷd#I̋@ϗ[ngy o| e[û,d"yCrjdݸ})~a{q sK,d,ȍL#^u8Sƽg9`FǙ:j:/mX^L: Saxwe4i{>R4t@ `#!CQQQ@fP(2%/4%TNwzXNvP,RuakQ8UNc'8 :̡6f[Y:i}Pc9ߐ4iK?*(҉2ishC'ʶkckcѐ|R)y_}ЏlʜA %Igr:@wg:‰ochu M5\_c_A5QݱcDZ\.=$CE=wR~r%_}*w"jdabʪqKrtҬXJ [r1qhQW\{%mzdP֭{&5-3sn.goFՕ@3Dž}kJhS1%K˜V? rOܔF23t-ݖ uR#ԫm.ԷsFtejlk`\Mdf93pX}8E+@ LB7M "fƲ䤤U阳.\vY&Qg\N. ޥ-{װJf*IX'FmӒ*(W:H6@h穼IY S:/,LSwDҌTpb݀8#73f.GuW9;AV6H @8(Ǐ A:@BlcȀb**^D,BBBNǮXϬn*؅A/1r:N޽ş}RquζY|93pJeYl!/)</46`ɜF֔ ]J"( ;̼LّɐK{JִJa|D¶Qbm }z2:8))|Q|?H9wVf\:w@•+WXt>W lߴك?oZe10?B?)KIȵ;w.ci3Wƨ)S;w/ڏ6'dY?2nEE:ajժǒ/ތ;w"Lzr/=E7S.`N?/ƹK*%QS@F%M]C'YAy{ co'H3\n7??Nշ'C|Б m{P[ y'g1vcM#-HX<;y7qd2aX 3 tG<çh:) WmӪ͘;Q-*[we/mSӹz,S %7.wٔjdGsEpxDDDЦg/"m{V=2{*|ϏkqmkIaW^¥hVAظ)Xv:kZM+Q;?E7+Xb‰9BDŽOjF(+3p(Nc|Z0 Pn݁}~ tE?`⧾H=*t+^8&ĩo;Qz!,TcWpqMތQQw;{OM>xU pm?3<2k$h>tj{nP̡w0z1o||5|MǮ`{qݙ1aq\ S;dVU~)}1ql8lGjF&',=q%FbU\c|J")9ݽuC5R{QC]D4gCIMJ!5n8*o54;j3Iʐxz)ިdjj^H?lu, sC|E ?4 N9N”s/fW?Ĩ]as| %{gW\Q&.Ɣ[V^K'je˜:i0/e>]?j`I 4 ~%g:. !~{]0ܹpu+jڷ[8{91ѬGƪI8/"44KYluLFBCC1ݱ/ EX;H(B~>у(]ƫh~GnD6ye /?nkҔ~an>!D@ N(ܢ\rDFFRBpP2WYGpH0-өn 91ŗ&'oce}]!ǹPWƚ W% Gb =Q_@HՆ~g!f =>zۑ$ Iؾ}#FHap3Gҧov k&wq9?==J "K!"DNd1 3c00c#d "cRƾ3D*&mΘ_^Ϲ{|SS+. 2PܤUH3{4/%˖W'FLZUDN?dzЊ7&)8e|qWU&om9ukp5RDoN`Z8EҕCl[5Q?FpX */ Z84iiZ%Vۏ`9BXX>^)$?(u*4 st\gk%^/.eo <}ضm6M_!P夓6BB "lw &'z֬T,(u+7:ľأI Kkwhf),:#G[͙Tq d&jS"㉋uQdj i }}4E=0<ߍ=~!\[2RˉpH$B$ѧOÅ(@LJ}l9]U3@lڰdet,ҢHV㎣W *$_\mSZܰ%}y7IqE, }05 5n]0ztN3euJ|=Kٳ\56M۶B@VX{h3IT$\GD63ᷢ&:&G&9 N 'mm ~]|R8e܎4Ѱ]$*dD-ȿE_Ķ} ]~g %gW|*=?G+*fdr IDATfyƨe\JC KQ-C5w.36n")=Y`P+ʙO[?rD~({,\!(-3DwJJDĺSAn>ҟ:|Gd H[5eC<0@O ߿_T2q$)הh"E7Hp=>8EIKŋ+8"o&yF{8PŮ:իT,: 2e%,, zÚ+<}GCC eK:x7F(BTi߈ 3sbٻ(}qy!c!uW,qoV+Q*'F,y$ϖ=R@@@@,zsi*ބtH+l` KzowA}/^o5!yY[QT'/ cѲP@ O,]tjBbJec p ܍^GZp/IWbmgxLOll, gLLȑPJeHQVq(yiPor42l\lYPB[&2/@\Η#߼}Jwm $+t*hАDzgGv__|3q edx'FLV]I"mT\,=VSx ? xqV$c\֢B%·tLjF}p\ 0zgBbMu#l,W^& 9s&938Sǎݺ#P(_> K6cn,gҳ _ \z'\ ί'UUeC0col$TGe))nތȘ=Z.260uW ]BMj;ͫ/_yheafL d4% Ҽx֫c>Dr$ZA]_@pSEk8WsӋ_ä́x89AoC&JcZԨB?>E"a;Ӷm[̷d]bخ4@F4I//^vc{ԕ:8{tclU7sKd Nߒ\t=~sj@CؤtpMAv"Ѻ#5\h1tweGʬd65Ы`$;Y4  $&6W$%=JYf{,X7ue Lm.iiit ٹs'ݻwOOOFU d-Tȑ#8\t42oX]iarVoV|1N d8u"z_')׶2#}=3&9o X "!փiSbp9_ fQrl_v;Ȥy'>a=)ToIQߩܽt e䱄 AY5:IҪm{~1UF/zbC΅t @lH'3b)ӯC=7$cƸ P1В=K~Bh+^\Z? cfSnOQ]*grvV7.de?n2@oYe>W/z#Z1GvBuz c|u&c*K` d^.{ay$}/_7O!l [,OZ3 OCK`$&.=εֹ[U@QGaLi>00Y8_J``PofkSѩ>. ,s 5Z9<}p,a76w*gqIwl YVK]n$"ұNCw;a< RHӚ5OKbrdr-$G&Utdx5 ,0Ԭˏlw T̒7p&;}8!&` LnFX (1|M3"-M$dX&;t+l=5( PyFol:¢P?~<*~SrxVZJUrgggs%g*#X0n(&$Ksg^4p]==22w+<:5z&R<%bFv^Dt>"8;֑3νXlUVX+W!o܄k̙Lbt6Ҿ]^5wE/8n˞í;nDD%a,\.U\2v?;i~8&WM`*2w˟l۶Ɵ}$W.rHF/Cױ'*\csP*(DKdIrCr*ɟ]ױ7],apL9ò18zz%j+Š40xYNڛ]y$ͭ{YZTe~JA٪Moxzd%6X[X$oiayRӐ~D_}*e^]!2Y^5ʨ%ӫ]0#h ۯa<\O4}fW+~m$!E~{zWKl swztF֭n֭[P]`tr"-,?G& A۫ / X[$gf"Uv,^<|H%`&yr/˨c36x"_.0Hvz6hGtKcz=idq>@aڵ(c|k1 kזBԳ9Ԟp.a757 ռu0~W=Kr>)jRE x_cS`PF #cF1`ۉ55^Cj?ϔ 8hxѽS=MRIڅ6>gʼc94⌫UᣴDAj)'bkMaN>}DD"CxxP1(ڵ VlI$ڸn+ys'oꡧP]%+LY/`fe4gxO5ݰ#l<--9ʶ :1ut@C3w DȈwtL#;͞HS_Ң>Oo2q\ބ>)Xu9nK=7\h;5mɔ)Sh׵+kz,gr؄6m2o<򻲥=Q7!5^6LZ.q!lzM/YBR!&&hst9xIH@llIC,=:Gy.@e[W+]SѪX wUx瘒S?}Fg*TH/8vUӹ4(hQp4칅܊LY|IqqulQ>eczY7QR%{/kko˷PJɿ=SC =ɽ(c'YB@ \ҜǼ \ ڊdGf|u+Pk7[5t0AJo.'*̦"BtL6ĺ}n/}\ L~9zWIꕄ a\bbXr%Oshh 6!#G_YS%TJb̉)qCTRBY,{ӸRUb.2 g5*e/c2{xvRⲒL!Pҥ ;v 55TvQ Q)h n`(TGߟ$`Ɉ21!G&C)boo_7YNfRnh].No-^=r1ݞrH?mkECroeHGy_ eI{vSY֧m{k&ʗDzk=:-;CSZQsd%r݉ݳZ`*,[ME P" r%(<< ///FIk|jtRfΜIjj*#GgLn=Աcxn]BѦrh_A88/Ic.ޑSe=V0xZ*LҾvꜻ;,O^N_ ί)G.c3_A^pq-!9>qd;l>l/KJ- SL#io0~A <9r))nތȘ=Z.ٙ9,VҼx֫c>D|^203fJVЯфʊ;rymGxq9Gos!z.Het=~s/Bx qa]s0jvaDFwm۶tV/};/M?O>CX|+:ޫ܍TT@0ky!?:91g're g-{ gGD_^.Z ŵZzL/VKIϋĆ4|2?b KeLΆm%*e|4p*\Gc8E m1:1A\zGXi<>̺ۈ!;3 ()g^Bw"Bo%ȿ '1R;wQv= ⷕkY8?}&do l -ys|gӠKJjRm'e0-e%{©ЭW=~"B çu6Z?(&7/ S ,mBZR@ROUZƒH% \dM(Y'RRȼw'J<A}_N6M9o߂7E*t(||||t.ӟSj9:?p04]{jG}׿ZRA5Td=#K#M@}У!Nm~қ9799=$z*wq/Al_xBa 1;8 hX`YKP2`l֋i'R}D"4*؊v#b&NXa:2 hZzD`qtQ~+ $dtT4,h'k+ݙ:U~_pGdiIdߧǛcW0BZVwURt!9jioN[QqbsX,p3DaCh7uMX0D9(Sΰly;^i=[e@:x:}7&#> ZFrB6ڦzE4kWt0&<0{면vRrHzD gX,-{RGQ9%Ҹ^K?!Tv-+N<*BnjY2>%V'T$b=%(77u041AGm1}}:4Q%.AxmoĥqWU&orĜ:յIGhlmFq$IT< CF^۲bb؜NXX#F(`.U fj/bfA@G$(uFOMrُc#/O.ژ1&~]+"L=I<Π1? iH+9KmNzu̼ކ_⾵q>\;ݧ vMaCF օ8&u;뻪I;-MG64@"#lfoN%n/IP˩jӚaT|jOeVTk-uB jFx6"99W.~M8GY!N$e3=Ԁ , %  qlG=|ߜXj%ch4j \5hvqFS-Kqb!<<{rq%wCZtr4y$G7pRɆ0DVVPs[Vu$j7H!)5 Yjꇹ0݆:˔g <{B+Dz4om6`8c:~?'IFP:.Lf;oK^ۯv9ƍAד w6eeA |MYh‘jZ@&M/?Gr 1/I|7E@v jAGyyh. 8Hl1yPzv%3{ ( ?"cN˒XѢo?ZZ $|@!,, VlI$ڸn+yDĺSAn>ҟ:|2yȹ;U;PlLԋ)SZS\]k#EdҊ_7L{Cf^. vhJ49oo+G Vǩ.OZ(-^\ys=P@@@@@@@@@C xxR!EiKzowA}/^o4÷lfL1zz xF &ؘ?0rM?ccIӰj3^ rz?JFC wYsLЩ˚ =yʢ*%N'} bO( l}||K7eczY7QR%{/kkoZ\yr1Jq1JZ m(d*4=7BO:qܹݻ燧PŪZxwHcqz\a5TNKhu6OHȑ#x{{:JHKnjٙ|ڙU9<{̬ (UŢ44Ģr$?U`R: slQ^1k~8{jJoyS,jŲwnDGѩ].9\ʅ1,ivEJ>}:~*~0 ! hף(Ԩ'?7!I<ɓcebBLR*W2s|>oJ yD+Wze}f(zfbx *y,֣ӲpxJ+jxᖬl2UiXؿ5Zѭ[nUQV"=[՟锕5UoՄZNflY7Qz3/렡,?{3ge(ivCBLL ;o_]}ks%9-WIR u022bҥp>[8uޭ[BsY:]IZO>.c3_:yٿO*OL7DN@۷Mw.SC?rV,G[ "fʉeٵaS _O~%17~gIW* bm eK(œHQ /I mG@@@?(ܹh%ȢP~+}fP 2G*J%JJ-O%6*)[71wNV 㢉yg9BPޘr.лy3"cbxzhLWвC!Kȸ޴iBm:ye<ϻ̘ޛifDPyCֺo>WX3N8:{Kە&uӨ3&e!_Kd1?c3"NgoI (#9Ç'RQ(#  3zc㱯V "ãPjRCv8;;5+Y%p#X0n(&$sg^4p]==2+£;xXmLn;M;!]hհʅ#GڛsZHae ~NCQ\ dO8u"zCu=r1V2#1N|_í,}W#ND7KFh=G -%dXotfW+#ׇYw19d~"qQE#"ҥr,Ά_¾(-%bw,= ԫ݅zmZG߫ ٛ3C@{KޜE-ߙ4! /S'$å74 GyH`ں?03kMq s#b)%zv]R\}̽Oۗ]#o~Kcj#zK=V/72fVvΣK ]KkQIծY * Ky/[!M?O?$h]ɘdz.=[}tk4> $0nK8;"&2Z6Y#Ss-+295N!F(ZpY,ҤL]i}.dѿh;@АsvBpp0M)w jmU@Az[r$$("⶧+ \SPİjsjM7'Nf9Y,vQV5𙶍Wq96={%9'aaa|Y'RRȼw'7v6ĥ.bɛ ,V ЦS}\5x&VڊnشsbCd`_\;06.2YNiI|I Š MR:( c@up8p$*x-&οO/1[^avr>|ul*b,4b첄C2gsN@ dXJ2T2/ǗGxvb#ν|hVDZ`16p3u]Y97 ]mё"lw B\}M{PUF]f# >:VQYOUNG=jsJJ99ӬF8pģEK%fxzzbZJIRJ4p@hDw|*c~{J _y}Q,SzH) UZP7({s,n{ Q[6vŽ} >3& j&fUU|Y^$DI5^nKKlݞa W 8z*`,=غ"w_#FN=0xL6 `@͈Ĵ3Jj*Luח gC1NR{$ƴfMSO-;r {7`/ςLȤ*'wm..R mYv-KO2u,>VF"Ҳ)荨@hkv O]/?f+^'K&Qq^c_ӃIA<,윂tӴi MN Žh끩pY9wHҬppq=,-g:pK.g@m|O`puzmQRy8GPA%Ma\"^##}@N$~_D, _9U(?›Xp [ZuUkV6O'䵒I/i.~4s03 #q <ҽNO8v_kIP#MI$GC1HL6?p@͜*M*YswT[ hZbH"!Cg29v59ֵĤ@-4,obN]?W76yeH>x;irCJӐ^L%||y_ҷdHE֓81*piC>fyBnI¬cm %44X&{r y|}Md!V"AjkV̄JUʗRj֊U#DjEQ!V$!%wd ~ޯW^89<93Ц2?w"b:P#Nc:ȢǺ 0b=\L wh?{p#5BTDԉKs=b~YGo;\{o6'c627DZ!@*u{6ㅟ߶yۯ[C a#2cժUL\UiF=dK QY"RQ\ ²X`֒0aa]\8Mrop Sy53`R{T(P(贺\*sHza,l9M〦X?D .GgqLӎy~aǎ/6[8cq乃.F5A N%lg;',biNK''#L bs7I2QEgލWYyLK"K ZyaNA]m`:j}D}7quŽ܆U}}};x֭[$B}ָ0 nO`3KS#|hg4:ca\Qy IDATL^-CѴ=z3aT>We)b _nZ3dϫQarZak|4 Æ{l_]́W7~Mj1' Wx`ڥ~d$˛`K1/LIĨ9/߮ {{Y^/KX[WJGMc,ՋIZP9jpbĭ*o`ʷOÉXw tEݍ'TFg*Ccd-C7TDX\!SO6T cG>mYIl8F|~ IÆM%Y~a -/ɐ|4+蝭t5)  _mP "JW;/&niY :Tja-_m> ʳХKIѥvHvD乙%ӬIn'@^$hLڗ-F@Fl,h Qfl?kg{FO JD?!FddzM#kq#fV# 9ֈ}-nD1Ii(SS^D"s:OIlo_[4<VXHsK/ yGG'ܯW?c~$=CnHEFKlbUOHBi1<2DZ,ʟyV@6^qX8c){#wg׫cҀ9b$'ZLlp{ys~JҦh[,GGMIX{;bzbiF~#OĖ3e)}b7iUsE+F݇DRuI_AkSg28vmy3հ`®&A )2٫x OGG!((ɓ@撟P $fU(x*Ć 68$غV}sk_bmce?u~VLEo.|30yGSN%?3AFF3o!d?̉' !,, =S!88___!srcmbՆnB6L<,Q?5kiۮƍ2I@@@@@@_VF{TNC}8BQ֡aLْ4'( c Ɩ;ITTsc|9PBwWGGBBB?թPiH%P+JE|%${Ʊ f[Oɴν$b9 QQQnY˥C0K##P*O6*:w\:ڷNXXup-:ݗ/A8ѣG{?yϛ ,ibktҳH-V(cطr"7}6]Q4 9NEf߅V.T^uY"tw֣ifۊl;mjQee׈OY?췝[ِO&HɍSup]H*#[STش&f6bgwWO޵Q&ݨNaI(L4  k"d2VXAJJ !$$0Ǐצ(x̒Po{z =uQEbۏɆm(*Kg+ JV?Ç7߅ X% ~HƌU橧/%CKm4M2pݶ7E@@@@tsc+:6wBZ~7t*Yh7Iʖ|((~|:ȵ[;̟GrKoG[ _sf "7ΎsfseEr8z(RRѼ<>vLNg֤)L CNrj OZ~J@y ?I=jSu?Yŷ;Ҹn-7{bՐL.ML#TI>9H`MfN^ʾiAbJˀ>s+Q#U1{G`Ga\c^̽oxē,ox4gԂ ڵ<v 4ɿ2+-ѤIt~=ѯ&NXIĘ!N#; Kf\7;HAA?Ғ*o7&{'EEy_mcOj۷~Smx׍-7g-~މD=T~40y3熰qa{WMW=:Tsvٹ6~!\HѼɋ#>hM㮳9&8f{3V"Ʋg ˮQ/W:Zу2 ,kU2IZASːGƏ os dCf5i7llWxt`1%l ɺ4Q!t_qǶhx c~?t%9X"aO_On|͏;p,|>S#3-Urٝ,sWlG-Q9}xF^mT"/Il3%NSgpeSTwY0ImvMIuwS@bAAo*Vi=39'Uz3*qu o 9&Eܟĉ*PY*V#=s^h_8!=hj#,,Kħy&L(# {.[}²3786Ahhՙ5VA}<'{QÛ`Hqiւ^|0l8[\x C=7{,'q%)W8qX z0zgN-7L2SUsQ)noH7.GFiOO7P-Z#Fo/wJ?>*PFJ(=c@Wvo8tg喱TyAl˟kZW2},V!GW6:as=)xNwXOLK[Pk6r#G8 aaaKٿb!ox, *q )? o=/&/x}֝a-f6'S/mV&j]A- FˌeJE-K5'O燫k<˕OC>x8'3),Ȯ~^ b N69>IeX*T 6?oIj4hфV_BQk؁Z |hlT݀z_o9{:w@s yR2I.԰-{-,ITbo p֔i&X:\f'ƨ)S_z<\6ͦ7q2gFP!ۋ2 m}Zq=Q3-o"޳6fI7HP꣓GϏ=f9hԴK׮zᤋfW8DEFL4G=y5Vx̭"癗~HߚXRb,XI΋CZr%b33 Dt:9ח\++x e?ݥfSKq݉8N6#u?E\KR=m&l,κ}!Ro|EE"Ģ\]I9 SWfܽq+apTn_Ɨv"5~|g`>|eJ8ĆrH;O ,yǻ"bZws^00W/sOuLĘIH>tO'0l(w1z*T'zA2}if+~ﬞX7-oCH뤀{(t~+Cdֶؖw^2ԏyfvIx `QڶĬ!pOD=Y<E2)*Eq&=Hč{ 9coG[ɠ?1~/j*&^QcVʘYXjU++-`ά%LZlyn O}d7BVC|@$Xţ89|~b3e9L:-dy¾B۪Txݳ!gM",a,DfF|kbuk:f^w6TrB,9:-i(K8Ľh!(teZYڂ3@OU(grF)IƨiʂtB!ʖC4h"վzRC|ZP'Ώ cҪ;LIwmhj*.Kp?7Hɞg' 2Dۉs~Ni$S><Ʈ|YtG c,*~'Ϣ0D#0}7* ;v]Z/ƮKDrCRL):Vxm08u*c7 r;t[q/2"װK iFOzЫUKEG5=R. 2b@6 t ɐ,fȑf/3a;Q]S 3tT@ԢwWgz\Lor|hƽk25YՑJ;CiX)Nrxx1qw Oj_ 5СR]7 BSO6T ~S߼_BҰ4v``jIs_JpK|TFOGỷl `v9,Ⴔ:GrT՜M壎S]=)VZ^x-}jLZ̽qfkDq 3Mݨk׆8B_j׮W¯a6̈́qȑK;c`{bދFTl9_ѭ "_Y8éܕYkѯi5kɷtơSzw/6L: ~Huc'Vr뇎y'eiמ/y9"$ڂSBY3홑4j{,W_ ނ+]y۸n5wJ|j`pk.t7j5깻 PJCϣ p1.aiNN Q&XYCʴf.\>ul-bs,;YER21sാyb"muL-O$!UT'<"IaóT`nz*i*tbcdV.12l#ĘvThHq4njɉ/_}#bCjvgøэh*b)h7Gb9>/-{/o`BBBغ2]kSg(chD%҆#W␕ð߅g`lea%:bOZ߈s{]ˊܞ eRd^fXxgdC2<O"N]U?>Iq}uֱ{nvJPP-ZrT\G@viBv{{܌3͗o|>3K.rTĉHH$gϞ8qB8 ޹#ХZ_ϝ?7=|֭{Uмrx|?,oɓ'ӾsgUJ?UK+ڶk ({ndc5KBh PʛGsɒ(3HNL$9- ly+|R%VSeۣc0Is32ԯ?Izm"nD$Gp*CTTsc4[9z7wwdBBBޟԨ4ѡVjvw.wԾ=(iye{'N/3w8 }OSGX cǎŭr0kBCJ'A|ռ^>hKf ۊvVy T&j@38&}a:hd"v[ژ]e`_v_@W5ew=|h1;Ѻ|?ze:\f; C,dgGL|]i.0ۓg%44h4{yQưoRǪJ[;M<>;Eʯs|Ր//f:@#{t:tlIED#.]^C[^j4TeŒSCW$Uœ֝$Qx ,9'֭i!e Bڭ(dfXѴG?w:k;edH$9wl8WpEήBk85\]qUܟ863w59Cpp0}5bQ@OdҤIHp"GDP'D"3[M\^%7oAE`f097>|͟E6oX)١Ev]lտ@UFL>|-Z IDAT #s!)ngC~:>mp"%WT1\W}ӐV%pdrk8 :գy(uG/DSd^fv,TZNmO5tҖF5&}e+-Bֲ,: ϱɓTwHC@PPP)DIL:YǽpT 'a؇4]ڵm:.j';t|m}iiooEwݷ޿ 12V~C<ؓPVHθ[H@dNu)J&9[ "cka)DfT[t3N:/LƊ+HIIޝ;?c7qqڴy?R)ɐioÅ6DxEXbۏɆm+Qo{8Ia Cdl?|}]8 5ZnPi]}t|)Z2h]z/:NcM@Ϟⷃ_aS)4.F|rpj5op/*}89g6PbZ# PfSkj"GѩSRYpf@=`Ҡ:Z\}`G~NE*΍d''3u׉;S6Ԩdό4JGOZؾkS}q2tFI{~/gERoP=z6~\}!+4IyecS)`kienA4kr-Hq\`v:x9\'YGϐVƴ~ȁ^}u> WNS.ݦ0,rɼ2nĥk#>wX|: GH ^̝t (˘.!tvB+rf@f]gt.+" Sκi=n{9EXҞ WNNkD>;w$Pv%a!sH*A=s!6bt_oܯ|E[aq)rtY .!,Wg1*$+rv o(cYV +ޱD@KJѭ|hlmZu ,^p3doB(tաC7 -K@enb@_ȼj+ɠI|7|ؗaT,96Ir4'ugߵ|;B)4ܡY;nGAOZn͞_iK)E}9} [gwA˾38F09 sCy)`FC\nRN8 Gl.=;Ј^x֭oLL̵Ur 3X߉7E^T"s~O:4 N z˦"Uj3xfkIްY\_&_+t5`umciߐ=Q|#{xSV]!5R8{scsz󧧏 KqgĨoS;ad?ӎvō]I}KQ!EIy/U81jD:ׯE_h;67=[qP>=iP#: 5ㆹj+P]Qs=)xyfPJ[>cūơ;+ʓh :-gsX_^Ӻ8SfH śeo{eqmͯ{x „ hѢM=y,Òȩ FˌeJM5UbhZu-JOM½hRyZׯL:IgFdscQ2{Ԣc2tyW`PmxC.ޑ_PҩG~~~ʉ'յD2h'Xqc< B%޳6fI7H㊌>>)(rժaz"Uk$gbe&ŲHeXe+ w㇝)匲I@m~ޒ*hТ >R*z02YioYLC 5 "V&&Q}5pssíZSڧP7}n7aG4Дr{]EB$ux.50K#EV|t#yQ7R,c.)Z#i}[`e[![G7FMY\m6=3rU m?^%UZ>}+Oq4>53#|W˃ʩs}y %|^^)HP^ZtGvI$ 8 zanuQ3\=6 6R;ln:ӿǠ_pJ84s@wu:CQ!!ygE aPeP\ŘA~#<ۑk=S4NtΑѐF6߯\1shг!垷ʻlwTBB@2gƈ.'[UwL=½Le0;CXɐߦv|(kI P$cbPrc29783b%+!,3Gdk&%G 0ƒ3`Jh?{p#5BT{o1Xhk^KΓxMV{܊Wn#Nc:He1( mA͵:P*z)[a)){3ɇ` .~rzwL&b0;/&DimAv<3wk:ԆT._%G%;-2~ vNTb͌}F #Q~yưpxBvz nq$SvI@@G7KSį!CZiNK2mȬ6#*tcdVK^g, !~3N䨪9Xr(1.J^#-o&-2n1' Wx`ڥ~d$˛` N13ϓt*s<{Ed t#nx2d]gl>Cؾ`1nQ9-s^UoCU%%ku%d"<5GbNQg Qޯ wsn8s§cݻuqI wasPPiG{z'c Z'Ҽggwy:JH$o Dž󯄓_w?hpk׎ըNRj/Cȑ#e`6 ͏XX))NIzdCNh52ڎw} !3JS'c2__ a wasYP+nYj vo;%8jS`nJ;XJ9$ zO/bcl]`[rWFVNTz}KE (\d)1c-/e+A51bi;40άrxM `DݾkH^dSaeHJ+d%Q.ŕy+풀|++B_:q!!!CrT0MȆPҩGݻw/ř *MCWH(w4j,awϜ{e+UەmCO aPNa,1VFғFRZ`풀@Y8 1ydcȖl~ !lG8Aa3q *ɻQqv<ǐ:вWo7ޡr3Gwxe+ ?NdW;>*[Y ,]xBTT[r(R~TS yJN*-ye.{8VL_BJ:H@@@@@@@L\|qKBXXm1L%; L}n_&w 4GW\)O3`h2$dc8d8CS};mjq*z}; 6ӑ>QXUBp7:pg+AI Lj2:V/:*PQJ^t̲9sXL!-{#߻ͻtg]^C*bn#zڛ]fqTnM.miT>k"-[It0zא~GϥW7+@I\mڭ[σ# {2p۞ fV857cɾqv3OAqr+/9GG؜j8;/8 )/{ʢDC |Л]gs.uNL-lIJko{_?$&59eYP7֪dd:_ji2twxA-ԣ0,Zt4WYvOb';;b9z軟 dYyȉ}".]ϦAþ%K*KacϿ"^ȖTDI7uCA)3Fdx? w-BS{q?2'h\m'{͞IrZϾƼ}$55{fsOD#?<<{&$H"A"KľVH[KRj(ګj-%j(Z[-ߠhD$d& ՐV'#9sύ{=., \_ޟqW7yX}hE9j9漽ĖLim;q);@J4)Ȫ 1%F%qdt[ءG~~~߰! %1&Oddfh 4쟠גEGҸTJ=vtЊoT9Ez/ `i苟ꓯeR^IF_)10P6Koik,> kVL8@5i& -84%LB!lΝ$&&i[RR{uB`` >^ ?Ä yq[EK7p$P,--rv9ÀjwGnd]?㒾~?306LM-UR2+:}ޤL8 K|Z&P yڅ嬼ߟw^y~ZXfM\fI#K{7Dcx5eBQt IǑ#G_]ͮ=w 6ٹQy)|GC8;&Mf}-"y၃ `Y&.\K'=7YwwԘe䉺MJ&J ҷyU8 )\^F|y9sKVU惭1*qZzS=&rasgެ)!KYY|˧h2o~twZ7ժՃ _aN[)K{5)ߡc7׋5ݨV䮶f\fٌ}[ W)%=i4αjTGWz _z3ʼQnAjըդ.{HV[oan̂ IDATb3 ԛ6MjF4݋9ҟN1/+Xvw߳s<ʔDZyiU֦ŀUCJ?|] %,ε*F./8.-LKG.Iz~gߨ7mu-sb %e}7o [_/BԷ~KZhŤɓyMjԨ_yuKyo|||^iPbk[mnd e0I\(i>m/kXE!a>ogO~gT't7@\ 3Ҹy? eqxzOeQOS[ByW!yvJ~-M6ee4nܘT)PXb~ݍ_oW]Xʚ8n8=pؒf&X@`87^~ķ#^,'L]{FTͩ Yz 2 ]Ж^ͩ?p'q:/'&Noӣ]6wY:]I-*ӨOlw2jOx kѠh>֠%9yzΠBB dIH ֭"FlcBz5笻퉫8M,Pb}:ԮUjBE.X 0*U37p"7Vs$dI<=0jMRWaIn>IY06ozJ)q,[YqƑ&ұnu<ڎfj%$M} OjUEӞANG=(A9Ϧ4oޜ&bCvM='̞m/8y昊G2RIљc[*ubS?;Wuk(aUq@^gs^tlCWoKwX~|!=ftF 3fš-J}ɔ?kBo%,g (ƁoҡZ7VPVШQj8`΋ vݱxp{z5 3k@5}™?,TFRě哯+I{^(q&aclU"w+lA -)%N| X4ƒeѻ^#lBɲXJXk2([^BFFNOyp\h:^qSy*xN)}HBQ`W $dZDUD^dHzTR[4f($'Š4CmcM ?3j?K\DI2TA(Xq4;9?KQ9J 3e1sϚ3]E_ƅ%M G7_J:=y}pC|||2sQ՚ȁ9e}֖ymGmg6I#DDl;oLj*[A!Փv/4r7MA#ۯyUR/~tIё]HcH/a 5; \ =ڬL,~|T)2HJ{N(1 &losx' e]o[mPs %,Ƶ*NZLȘ`*elcXG"4Iů3B!?- Sӂ$++\ϏE{q~{F$uy]thj`wŋ]/,_pm{QӼaR DIAOzR2+M*>ƣO& />QŸ>q:xG܎d^Z Eeb 4}gRM"ːI|L:U{F!D619Uτ\䯝"=Qڵk1Loei;m2f֝obx8?$'|P%д/59;,.}Ug=uX+סxdhM?M,3Xi#~lӌgw=&LXS J-'0iZ|a:jE/><ş12{Tߜ1;.?Tja,yW<I,?JA|2X,mwVx(xXk(a3s]6|m \ mże5(7QSoOOiY Ƶ{F!Z~'N䈳sE^0`0p/axyŁzޭ`Sq:v}p` sҼys:"On.O~߳s5k{`bbQ_8_On{vB!γ}pΞ;KB|±m%-`ܱ|3o2X4F %*\ # - p3 o&r'Ne {g_^euGt;ONKKԁDV~{?V^7*f++%!k.--[!^z`eex9]W3B&7 XӤ{ozMg(sfĹrOsrM'|B\eF/(^8XVg6NSg~c]sV! U!^w2Hرc9+ kvo1R JukgzUbp {u |޴Ha+%k4#$?z$#Z?Nvhc:hKQH^5r(xW3{،~R:9|Ƙg]o*d81 \YQ[joQ-ףL w]KSŔ1hpC[= d.O+ 6ZzT!BbPr v|6wo䯣YZCUXc8-8lKjߗֳC^>:.w n\Ơ7yk31*ٓXD ]B΄m vH1My'%[ٸ KJȢwTB!D!XmE:e˖s}n/_ū̽_tޙ8EʝHRu؛/\|OzYw5W\FfVr ңIcd@5U3Geq/k/ưz^!B*r_SN,Ւ-ԩK( Vl+OM/o8 xIȌzjU>شf%!{Fo&q[ν[$dz+ҳ'*Z8r/@Y\ PSҹ0=hhXnCNH mU!BڵkόȎW֮][̢`W38q ЌeMo5.dYL9NX,'L+KWٌY} 2̇='뀿lk;z-kOӑtf=*;ΨRHޫOaEǤf/ gѭ/J2H!B4GaΝLwTqHM;0`@3SR9k g{k؇FS f͘|,)pfnF혶x$5 AJn˸6YǛ&+٦ckיs&pCZ1%Mƭb`e)r\ۈK> Q;eW5hpk>j*-U!B&fW!1}2%0] uǏrĪ ܛQwxhTNP) nT/;B>ͮڇ C1=JV/YȻDG_Njc0ɕs55o2y[m\kO!u_׸\KTg77dɵ⳨ښ7J]dτꔧhAJ)\ :- ˭xgq+.7Ó2>[VxE7*㮾L~JhM9*xޝs&CtήwIJPT)JY[e5<̩5l ( _ˤ~8#9y !BPJø: kve?q(:7LsYm̀;|{9}Q ''w-錃ҟw`m{ҨJ|uzw5ԉCckdA Ɏݷy*d wx;`4Xb ~ QbSUGІaԷ+;;ײ͘r:ѩyj̹83~e!B"d0G8vz[Ȣ+@O9}9}qrC7ǫ%Ϸ/m_]}"?]•U8<^|y,٭;]tI:Z@)BQ@x7CsAC/?vZt>sɠ$m "s#aUmD}T9 \GOxta1lr|K)_Yj(G-GU[W2%BtNK+;?3,l„a51vQ?8k{A)3s:޾I2PNTC= 6MÛxjԊ%IudаbkrX$FUC'~;T| yp B@~pb%}R.g}PmUsIͻJ6È3v/c߿C~[a WM># cs̔O2SKdJΤ7)禋a½;vҥ{ytdPxV4cs۩J0n$I\ P LP,%E=v1o Q&FMӺOb{4IeSq{ ÇkhdiB13']l##֪#xlRx,3γ4!BÒ}lPjx-̀X¡ @rX8: 3%q6'=WǶ !b}4^M|wD>-};r8ͥ9>- NImЗ/۹n׆6UB_Gw1θX|5;~|;)%@aӆ)+Y?*ݞ7Zj?jҖ%|e@Q=єҾ wM筲:^μa BPuf՞qvh .`9s/:(J9m)C2'1Rxq&4 UbOJ\U˼B!">QXb~ݍ_oWHήk'|(J(kO$$_q"plI3GJ]ɟqn".R/g6F;ӽV./N~!L]C,uSS!{T&|A[Z/i˥3vFi[;>Ogd6=};ƿ$ =uErMiulL% Lk}*n9uD-dilDޭ$S-Se\HCL=M-SiNWq 9^q0z"n{sEvڛ)#nHu9WʗR1$5F#fp,w1@ EyY\?`)BQ@!00 C\𮟊6)>0hBZ de5Ni6Wⵢ.jY A!B vZ5tYjN[@j !B ^` sҼysպ$ҥ:B!ЯG5k3>^6CX?z5=G:dQ!B!(Уpo쁑X$L>p) >mPCM `ȑZ &&vk2 ޅJiB!W^iPP>QMefd  #m2cǎ Ofjqq'ex'HZl &JXB&yZV&vϡܩg֑!7(KZB!x=Aq8śaرV,h!*\\\ W3LjV: ˋMS֛i/)b&r'Nz^76Ռvбys !Ou`1YGV,>@9Wz[ d]!B VVV̟?ص<|5c $lbIpsoY@Ij5MO[1 MBiZF׋olaɅ 5YB!Ǭ9vnJ=}GÚ][Tgd|6^w/G? Ͱvswݽ ]p.?> 8uqBQ;е_cl=Ыb{8T ˮ{oFH}:&33LAfe K*7E)mcLٳ7^R`\5`èo&kb.tASۥbJ4Bí]{xPcm#*? RkѠL~B!/_{AAAx%~G.fQsh2J@aiZZ Dn ?г .g|ӟ S|K ߕ9rad}#4F%0S>nSK 7S"kmA_dH򊑌_u&񡼱4b!B -[dמ;u|,J-f &~~ HΜő,RDp~惌|s Yw5x#3+Luid<G9 dklSRzW+zʛH ~]B :u]-ܒN:`U)#:ـy[LG$8)V哞+wּ߬$D}̈́?!ܻNBfnk|khKȽes-\CMGLIäzMA.3tiV.c+}^|Y'S^B ֮]~fd7Fv…ǰvbO1hkf4,kexpa&Cb|wpjG*f?aZ._3"hNfkde>?q_e[^ыnl_{x3VwqFzmG2^}JǟyscW"SAѠ/A&ZPBK^z?^KjzX!B;wƁoҡZ7V$ Vjd–%aΪ4EfL[>78m'b0rngFR:aN%SEi=eNmyL9yCZ8f.+Hqm#ޫ_@OIW펖 Ϝ>AqHP<_X.%XW 쉋dHX B_<Vȫ IQ>v鏒x`dں$fFgjbϽyuF)T `F#}Ȯ>t QcPQmOUzoKL}+6#No=9C9Tlamd?KqKots^BH(r2w,2-2 H]k-Pq2_q J>85O2>}K q|bH7T;qeVkK  V^ݻ&8ۮB: :t( mz?dzT?Lsmª3ەk6; 4KPγ)=rƹ(נ 5,|fGbĊ3<2UL7;Dk u0šV]j[zJ>+9\([NB!@:z(ミ^^^Ra݊R T.$MRO`tTD//.SVNPL*R-hS* ׸:yܑ dX&C; ?Qm1QB!x =yʔ);wbOiżyFſ! kv?n͛ <v9=YLARs^uP4fh2"{XIy1ybj~ ۶ 7rB ofҟN9o 7ίǧ?~ Z^5 ܻyTyX$ g[#۶m{qz]p"%\iR7nΛS cTP'rH2 zғyR%u%/:Jt |iJEM۔{ĥPZ=uKs;^!BFB`` >QMefP6P6.J̔Dr?1K~Ӥv|=)|h.6n=zC=t$W5h -:#[6#ћTߜ1Ty(]prnŒkت_kk^>l/ZQ\y*{R kɄQHTtN "&8UZU\=Ro$#X5B!+U~~~Lc[JZeb(hFJT,r})F5a[B=3fQ؆"c}zj>#(Ӎh8q kGiiؽqy}c)RdRwFV#َngRwEtlbNi;[,M_3 ƕ>qK4vCm^赧*JaG8OboyMJT3[6ܟEM#$[;XڬK !BTj5˖-#<2cnW3B&굽 (E/_Hqi<7׮6>ɕs55or ɼέQT67uOsGd5f32g2\ۣ6)`D4ֹ.Rvĥ+$HB!(o8nѰfWsϔY|>ǟ s!ǣ8w1o389䎷?%h䒢.=Zautudp YVB!ߨ6>|o;41g4k׮(JAKsUǥɠ$m "s0ڈ8s޻kmd8k aH&'SKdJΤ7)cʌvLpb%ޖ&B!U7d)hggb/rSpvLZE(Y M\bOzYYwwԘedtMJ&J ҷmvYT`)vL}JeָTeU!Bo|||Xϛ-xBmc3oKT2X8H 'Ydr5$N֦b۶a5Du~J蹓J2G7qXیΓІ oK|$f!B+rTȫ IQ,<ŜDҵfm)axF9g| IY 6K70уf1G?~G?q[<*XeO3e1sϚ3]E_ƅ%M G7_J; U!B/ XTȞ\5ԥS緛vbWQ(]싷OkYS'gxx Ǖx@!AB! ]v- m,5m-~CTB! III/Ppp0йsg|}}i޼hj @zIRB!S̳fbƧbGGhXG,Y"5*B!zN=0.eM*}H9Rj ĆEoBYsYY!B + §U:, a@a [sر"COfjqq'eUm"%dשeEnbhס񣗆*B!^z0h >, Ƕsͼ`6Xpqq)\ 0JRH> 7[2nl`/ N/2ÈX:'u`ߧYjg볅&LګB!ꉂ0v?O@@_ w[>P0d`MO\6h͵Ge>5^ 72hܺ{\c,Μ̙39s폋YevU!B Y[[s1ܜx{q5׷ELl0^F经{ӮYݩѠ s.fwo;M2.s:ŲgT;Zח2Lx7O8̸^ÅW֡]wk)Q{W(q]M;&cnnIA_m& v/ B!NE^jk&;&tСEd\!A{5 !JQfj*YCVGezɸ30Ɣ=ޣZU;NeLD61INEÜ#^xMebN;rj4U]L7Thkjm <:w3i@uJH;AAH*B"b'((a,}^[ (1MKC{5l mo`K6-c=ˀz2PG dq'8.EV:X¯LM-Us&lg`Oz)t?iב*#]WsqR~3g.r3.W9_\N&Uʥ׻Z^FY6ҳRIYDFB Zlɮ=w 6hIYZLE 9#yut܉$PW `JV|v`=waQ_~e."1vbFQhM,I,-j,hT(XbK,QcE)"첻".%}}{Μ9sfS:=ꞣ9Ԡk{^fRS+Ly JK j8{ySrz/AHԶĭRmӹ:Ze"c@Sv^yg ZݼW!*$G"Ӊ=~QеkWE4gt";'j N &] &@FTj@ c0HN0? LEx$=hb$:E짯n5qr9`EB^R ^Է{MrhEra/\-Hk9!ëqۓ60knu_vP'Yyl^Mk:@ _9 Wߋ0b#\XzsrNcڤ =ùKtݛ hOcL1et5LgԤQcjo&NCRӪKG>5K _+a92vkA7lY}$kYwy?#ev&tR"A"V9M̯P*qmFp;z4ˢsDZ˿V&$r霎vscʑ(fĺ _͜Tػzv`ʒT/xmzVFXTL+{)5u8 ʤt֍\3FO޳Qpx@98j;uHȿwsq&D}d] Pڟ ==yJ![ackXbccM6R<<änst͙UvQ2/0#([.U 7gJaK-K9ot k[[lm0&,6ɍD+A;R՗&]ߡw8&^O2_%>z jAME"B)gBi4GAЫYuY< FqjUܹ˝[ j tת _チzSWƱ캄*JU Cw=ʍ[IHIԌ.3TҲUh(l1-WZ=/cUї{IpE^-a {|IG.3џC6rK rgg,fL0.?D\4qW6caG4C"އ̋!;.2D '/-t8Ȟ;r3\OQDehe-!Xz %=uCؿe oJf3;SRVUa9BUDqU ~c-38'9~@ IDATLmћPQ~,>Sl5tN[ LR(jq[1i*E2N]9>3c !%m,lW 7Q an(:t_|g(!Ѫ,CYȱss.0"Igt܈&ja%HxuƮpA%\#A&0_t\o`[VHPvFqn,HSvim̱"@bv*ϱR^FBȧ+UF*wʯ#IiZԶ{g=Ûgt@_YЍț.Uh^q9>%*࿡LS:wLxx8)))g(BVj >c% 1܁ut“g ɂ[jM..H1wϟTKر߉|r? RJ["1z2ݬ4|삜R:ɹb?Gn>aW4Ƨ:'b(nV./شdP+]0} nc>Q)wdF_6&NX_I@CYhC:XeY|6=(èKAp0-q#Zu?K*&Wy#d2E KKuGMg{;IuK )7LOķF+Gv UN6Z lUԔiWVFa]34ɊH»W qJb„ Ƹi@@Mm c9=ZhUz"Qda">`}DE[5c3(i$pdU;bU=DS1>}o$h9 v̞՞3#ws)u4eMPKne~!uuF3*/_A$onݺ%j(loCZw , ]Ac[85j#ɐJ?}_'0;kϐA$ʰq z-t7 6?6#{(g󲕧:>QHa_lbKUbla5&ee=nG'4q«+AL#1{S$loE,ur @ xU}E3|\-ػa_n0/AnA%'K8뗆޲[ a}@ :t(&}qk 7* UA}.{M:|J*lCǎi\"UJnzpO}{y'ɻ?}{FW@ tFZ5 ^ţh}#wޥ{ߦg߄Φv%@ B`ɒ%܉JЉ[,]o:UkQPrkeLcmCiVSN2)cןPGڴDo=h*6REi\j ׮q),Z޿2mܧ n*b,bhۦ Z3*C@  G߿ow A DeUDC&`Ө͂ٺŋ~YήꀃbuߦT-{tl kN.4ᅻ;*bق\ϥK `ý<;jh>37_AZuo/{p R#~Qo|Tyk+U_ RdF #30.@ ?uȍYƬ5PPzap<C'v*Ws,Ajl+Ň`۴paXLL@vr;ْj E%Gbec%&RЪRs軉(_ܘsHQӭ`1́M;CN~oBBh$ ɤ~o=srpq @ />Ʀm\WxV4g6PKcVKr]a\܀Gu_QWgcWA;/*WN9FO2K9,@E$Sf8J3.Y @:8 AAADKB ogZ9a d$"IOI&m2.͠cOnŐz+Wj4/ǧjTbda/od{Z:i@ QfQؓ3T7ʟY}+)xZfyF7ԣQH}6N<㝛ANIS4I/tyYX%Jʭ\:cCoz3h`q am @ oq/_ٓR}?~q9a2v78Փa\[ fAF1tƎK%2NB)}{ZͻIŜ\ 'ikHW4yWoqaB BoUW'ogX'a'yθݿ "@@YL(1npfJH$+ֆQ@bEs/=B;yda1(?#Yq$:.m -07ic:%gXfD0{ ^ X4ǿ1Y |TINƱW5a~C@ @)ԣܸD]tHxN)dnWZ$>)2.>O'{ݟ>G]XhШ@`(Z*R~#\RSD!ܹs[ֱoV}VqZ9l }ijT*gmMۑ=|ժW瑗F*:'Խ nԞoD0Q{fSÿ,Îgwyռ<~p~RCp Qgw_FLꥶmZE x^$F23Wx_%W6|̻fhF<Yy/*>?ϯ+A!ym^CoKxEunI*>9ڨ!mD{=ptgE֙}MS\~Ӥ_bl w>`ʔhڇbm3|Ƃ!D߇ *}_3i^W 9#n50r76(GJ,T {‰yV62gV\a-$-ǃ.W1k`*-dCI(?1֯x@՜2ckp'wHXUZre;?/E2o*Bg?ۨS4ΚuqkɊ>E7&Cϩ#5hͭ1!lZpΐW]fk64ޔr!CG^((XYYwqD~P:׳8Uk^GA_wFW)W:Q'L^8G/o%=u㫺h,7 T+kk ~=[bC͜8'Nź Vp9G2Ycb$A*ҮQ-TNVs[ři]_Z4}wc FK7X5jlԕOCϓh$/CsҲve|*բ+E i6#[۹uҟ,э@To؝^%;ćޟy:j,YEM(4/{zl'#>E.*frlb'V4gYiTDպ"S!":.Fo:S+5 ApٜJRϤoYL#gѕ_Y˘J~}41oPk*QQ03?gmo=zҞdȞjP*Т~>O+I[}s?, Y8r `G -*~u^gaLPtG f ~ ѐE:+ x*O߼/SV.g4Yw#o&M{^3hR~Iܒm]i^v߲.0of.aH;!xy_acc֭[4"( 󹬊C KrC%- g~Z[0n5V 6C1=jXISc_WDb{+~3,2%kbԱ:?! [㛆I }6q!wv_9!Hq]^5a11? Ïc6Ar'35Oƽ_k;`ϟ{bZ64! >b 3kgV]sɈI w%6V1LcjwqiHh8h<ʑ*|QGS,Ͳaq~yCL7+4hGNx.[~~K].}41[/FoF:SCt}_7f\Xd>RH UG\EXs|i1Yҿlܝ!y} eW)6&?nM{\/6 (IOTg,㿟Ĝ Uwe9biaԣ&=uݹiqCHGC.5.%%Oe!yY LG/sG"䣑c hn6%[,NP .m`E#Ae@{QY^b7-n=:] Rt4|GiDn2fF!txoT6؅!m $A*Zn%$OqulFqՐ_s[*4GAE, Ow-j\gŽ5})C;\ c{*U0?q⇜\nE :H7p)"B?,Z#LpYZ,_1VlRӬ?^$^UasjVpU?FUZM^jsU\UҮ4$f hLi]K?A7Ct]/ ͛7'b^RNxxx)@fTPAv)9LQy/L@Q2@M]7P,RZaN)$L%Rss%s5=mhWc3Kԓ%yYҥ\V^ Wl>gLރ}'ZXa9'6ll"a/6 r\Zr1s|drb,$Yn#8揈+dU29+0ki(eV\Ȭ:Sdr.S6EZKiJ.KG6%-mL ,m`Đ6HzY^u|=7QDFеkWE4gtڵz5HQx-Z)FNWsGL(]u'(pU&[wHV5]a DV7m, e%qN..50!+ E};#Վz{)lupPcXbxYz4?u̒LRDCbc2Q̞EVCvj:Jikwy!:W hQ&?&K/n͜yǿu됽?c)Z0Wz3dyJ.f{" $A?SXC sB5PWڌS31gJ>bSdhgq-ŧWsO`{]>IطǪ|ذY`:üùP=m0=[eF?YI̚ige!Y>? 5HT8. W8u5:*F3L!))/%Ui/ۗm͆^IJ XX^r~J'=u|,(^/~rbe)dqxB{ʨ?eȻmhR ڽ R4Xvp@_#/ U}jekJaƭe jROetj<;u-3Ze"w >jswpGR]XC?D]/QC\17} IDATvUK4+wJx[#Uw7w;.)KNüǽ[R>-frѸ>W}ECh]Orx goR =,èyHr[(y(|B {6b5cKv2`)T?0^P#01Nm\̖%4 C,ï|iU|,cx>j ,2' o3#9^F/|[_CS_*x}CvϾH Y]Gmg`VfɌH M[]i2YhXI/;{Mo9Ϡ)kmZr3.qO?L%>Խ{w& !n6ul ^6)T+ P43<,dĮ{.?mۆ3=~~ V1nN(yvૅ#֏:ͿEm7Rrk-HY^4LٲsWF`1-i4z% ޯXڎe4/r>+L4FϾ52z -bKvmԨL&C*_'0;?dpϮ ]Q}POB&Yaoc~kQn;WZ驨m0.=S(\P*cI̕R @daE-OIO9$FǐiJy'RF+J[H]ϧ9|Yf~ 2bHȒ`؁ u<Ɛ>@/K#Ejslu]hyG#5 [w Q62<Ǘ>ggE~(j(v>G(<,ߋ%Mi;.I}4=EUܹ't)s2zƾ< cfp6aM*ɼ H W#'8 呣,+Z }s: eꆆ07:/l yH-pEiO^ȱss.0eΗ^OԦeq#̫`l.ž0L|;u*Z_ @ xQܹsLQ+h5fu2E!siB@2:x K.%,, `J-F%@ /0ac>Bp[OpkܹsF@  zɆ?qf,'oTpvTtM#xRFRըThe2&=Ԯqk_&kCW%@ hG!,,&p3l8VgIS8G~ <$mb%ؔ󦼃)- 0=9tۦh]% g_dH:yQmg > ['}*4iپ,-ְ>^9sc#)GM"2V4!|L\oBBh$ ɤ~oPM"G!VOً@ O{aaalن[ϕqeGq?o牭d]@/Y<+Y-iGwqer;nj#oJ}`_wQ w~W/}a&'csLe&r4Yi Hpw;'m0Lb=@ urر(OO2#rHE h3g{/I؏^@ %Qy+,?.f>-n <g(To'$O+6߻4leւ_L[([6~9lT|⚇^$I-0z"/;1\-XJʭ\1!lzAbP1.AZHQhJBV@ ˎ9{r;Cz3yNl&cƾ_d4~4~P} ټL5c]D.پI @ x 0۹УY%Ҫ^2!XqSܤb>8x.6dqX)2.bq.Lg( &3{5D&1/Hџ> ϒ̓|Dؑ}q6@^܁Z{_׋M8YۙKĞZp41μ|T%ĸUpSHLGN' Y:!aK+R]-@ ѣGL{WeB.q( pτϜ![ack58b)aRP7fݐ&&w}ՇUXe_`FPS/bIIRdq[5Aorm[ k[[Lͬ0&,6 ol;K Dq`I~/.2:>. Bك_ ݝrОBiGA5%WّcƸbd&¬ޔ'9q,-M*ʋsJeiqg^СBݖ<8tee8sO3vL %Yf6*FW-@ ^G!55ć=Jhh([n[n(4d-K#pʩΐse>mFe\i?c 7[d a5\)K$N]JBSˇjNP*8F\[x명U`șwQj"vB2ʷ&GofCGl|O BDO);lk7I X-Nt+&q^e?7_W5phr1R KO#ʇLS2,^'v~|G_©O"[[_{Ȩ(o@v/\3o.@ ^ >}:S'}NNhoD{?}䓏h"Q)\P$\#A;&0_t\o`[VHPvFqn,Y3@J)yjn^# m9VĞ|G19Eo%%y[(ul%wP3=[f5׳+|ԤE$]w9`U[JJҥqpx@YY*z!T} k(ܹs[ֱoV}VqZ9l }ijT2<Ͼ9ܿIC13eb^똹6}R l֓$Ԛ%]\?0[}Tj_~ǎN@)7nRI)2]"秙^˿+&s$q?Mj|;#?yK{/2hvh[K4t*S MR@n,cl)o[!%%Fj$֭–Vr-D}(lݺ&p]OD8[СC dU.]FTr@}#ZԤFDž\uFOk,9>?WQ{qoj*Wr;YX31K*X+%z҅ý v aG{M^8Ԟ̾ k"__̞56>%pyM۶~B6Yc%io V݇2fH>n*s a0lEn1N:["8xCDzI =cȀl.5i;dŧQ֍]a|ح3# ^uRe+IwY)ZŕCp@`b>)Sqk̜ 䪮}*TP!fҼ:-7AYb*iKKUS"nK\.38;Ϲ0/ G0ʑRgd(Uɱ*. Lx{W0k=}O0FD}9>,jgQH_ F iӍ;w[}wz| )b2}Ne0nIдd==gFx\_vŢ! Zwsr1O=eiF&~~>䫊uc&|G 'uQ] Kw+w"8vn^%]O9:F%貚]f'ө7.S=,V3 u: V&%7{#ćRSSIMMeԨQL4ac.jNxx"(6јr.#y9~ i-]yhs=T(ywٶг&~3Ws /.FBNZձiաϳ0zueuO 췼=8]63¯篼npԶmcXיfoI[Եwl F-d2RTxNux c[8CY6ܾKR  xؙu\F!7Oo6#{(gYMGjWdӐK\c {1/#(Sq;:^],T Ze&8؛")%bed+d3KO]>oe7\K.@ ^kCWh{(666lݺ?O#<˪9>nQ_x&] O[6a/_uX,rP'doY?uVa$ЙHšF8ai{hgV(e$.lO>WZ;I B!R7:p 6~T1椐 X|!J r/gE+_vwߘ#3l-ϣ`*A*f\feƘWXQ{;3h8*Jt85/ASR'd 9H B!R@ٶcIST)йfA7jFUd3$<};ʘG!jtʗB綰;1Z+ ƴl4ٓ*o?B!OFЫW/>ϺիnK]%(+FFwTS,+WȾ[oکZWky#}̔ϵK1wO+)O1j8}膆4hqkEo9 oku+e9ab;Gv]@ڪB!x+Wr!)}?+W r`zW aqЉV}s{% t[0`863 .s?&XU3¢ :|wb,)_@XJ[B!{uVѧ].=ZҡiaZ(l񝸊#Z4qšT[0vT*?'amqbf-|.&bok3o65 9)- *K7h=on`>ʦv%D(˹UEZcB!7( zQ=D!ў÷TB!x,(888}xb "$$ОaեB!3O>F/%gܹRB!B <ԣh/ݡؤHVԢF,I&=z̖΅|]X6 B!=P4<ͱcgiW IDATI-m&׋*mpVt.>ͥT%mͦYcL5Fԉse륅 !B?P !j]a^L6ޞ`&A꥘|oĪqt[gt;ҪQ 9s҉M2DVp m@^oԐ(zlt9Pן^:ЬnyNveB!w`ooϢEMgK,^3Cz"g"Pqˡ55TD>Ӯ~%kRIiLͪrj?ϩ }u?Rg`'ѯQ} 1gHkjyxQn,]:&@O<<m:jH>ny68T{5bٲ=롂R$cpr7E٫@aG־8H7IKB!E`KWK ЧON޹\_d\wO,oQ(x{Uyrv{=rŢ1=g:T\eq>18NǺ&g!U64t/tV$/NכIn4-6rpn4^eEY,B!@!<]%[9SY8mޟ?6jH Lé\SA6Vެn+[5\ f,yvp;\ f `0^PB!(m"Cxyy:*;Wl./1s%BƸYhY Zl|C[׏z'KNerNhau@VK.x媀hc^ͩ3.ZRA $m䝏eU00d*oeJo^mMl~PA[MAt/dvw$[.gk6*>_@o%p{ZIyң$)#?/cťj^w|pKG|9k'.Z}+tZ-ZeB!EiN gjON%W5jԃ_LaG߰z"@{IP$[ͱ/9t Ӵ|v:#oWs'ӨO7G&;]5,{((, EQ;Rfeװm jr'Jߚ[850e=>@o^'JȒf!BX /=ِ7KaNǩ8Yõqdh-w=y3&]cJ5V &2.Tꄺ/]MDv+6E Z^## rW½% ؝蛆ڭ2vJi.wk> $arF `fڽ,͈CY?V)B!@!$$" 6f;KcwJ8c5޵q3'԰w/ 5UjXBzEN+)}==5oj,m,BB!@O>3A2֧5B!ONyϓ<Ȋ+wӦMu3̗B!^;k,fw"W|y8Cjc_FB!xG111Dl^oCIwP2uEYAMz=fKKTc$$`TFB!@҈N0xsYc **9A%7zĜԩĦPvАザv0s3F! ;t%mf]输. OIȹۖfLF^!Bx ){W&L'ش@IPZR90͟߇mb'glSk}q~ӐQBPpq-!6h0=۴aR=Wwo!f_㋑<ЃA{ӱy\"qA' X!B<4ΎO>zLƏ!#"zt\^ 9gÒK8oíY-4-b9뿈3`qt6}GɊv[Q="#y9sqk>o>}:b/}?ZkW2wRat[W,JB!(@:"""RL1-_m7?t%-|ӽPfF3*%g;O̘>&+MFRGɪ܃A>܆xI05e'#}>lJ 1A be۵jZEWjmK q\t|؛ɍK%l2xR B!+g8@`KWK  G|?wk>ғѝ܋E. T*%f~s<[% ;?aa7C4ڸMIs'h9(AE|l2WѕmIs+>,*RI')QҶGۂS:?mKn^40Aq+B!@!""tҲ`.x7JucN Up,aQ_ 3X ^rl7a6l-TVUk궲Uc` .ug 8P& QE!B l۱Ф?UT)uTŐ#@ӀJMugj_/(hcǣx +c7^dBѡ*_ kt<\,˕^)}XJ+B!ONЫW/>ϺիnK]%(+P+ '6l#KB2=qWNк\]CaA|]!\o>㗟踰(='KJ+)O,敇I3r2M JEaU,7k`Ϯ(Ǡ E݊@;W=DT^xgQ(AQ=65 (ꣲTTVR#/^3?3͉pϯQS~shod$VB!Rj$ ddCf,?6tعzVA]؉n D8TZq3ֱqr^uưb7왁R%ljjޖV9GB!x`殀 ~iT6TE8{8~j+;<|.;*{՜}M?*iY#dB! =z(՞ hOk' B$ y呗KFF#&B<ԣh/ݡؤHVԢF,I&=R%DZp|]X6JiB!@pN0 ͆ |4QQQƣI'9)| ek J9Cq>˧Os)UGI[cV2"SՌh*B!@!$$lAwya0m4{{M zի?ÌmT: xYխsϾx҉M2N!;>"_D+8r6u7jHhn)+7rg]<xn?5|YnJFF-iDFFʧT!qYh1?|ŋ3{pH_OLzr5НnQ27fpI0< 0eΎȟ8r>}Yfw9q5ϟTxWzhnJpГw>!2bhݻwӽGBFF&AAػw|JB!@:GGGa"78-_m+q(e7v_UO<<m:^zޘơChY<}Z3ۦI=.~43M0M}m92Za9^g ~0F,[Gs=T]z tCkT^K仍| hذ!L6]P~}>h|JB!@ **h0g4 O.XaӀ:ad 8fvco|~ArŢ1=g:T\96a#r2œAcǷ Xъgm+lڌXG6V c#".WdUD-P(Յ͡S IәVRbԞxωS9sI{cd.r){A>B!stRA vGtҿY|5UtYYtp`?76|dlMF'G ]CXm=5^g0r :x+_1u,l]ܧ] h$tJs+KN@ؒdѧ{uԚcߝO-qR<} Omi?~sN:B>B!@z]LY@\ɩj`ux8Fz),)_((HB8e8-] '+0wdt̾6}C1tHكl'ׯkةpQߌ|h{:}ʹYccj0}z{#a_p;ztE ޚ(!ϭ7/ӸhVVsh=Q|0N}:t7wQclZ5.Q>B!b;͝gb.VCѽ ~%&ߎFzZ=-+J*VsQͫ]غE*Y!P {9PV-%P=sꎴgֹs5%^CڮB!D I~Gмe%!B!2?lt@!+3CjI!B^!B!B!B!B2xq& B!S `2KfԐp$NE-\#ڜ R2hH!B'kJ+<}iulڃ yِ.Æӷ#Z boE׮mi\st>#ٙv[ޜ͡ pm8olpjM(iв]Qۣ>g}GXF{YMpvm<*Qi_&ͬ%%Q_#W|ȮP394w!1bN%%߻ar>' @YjՇ~\]:C *JKʻn'lYћ_{'v(!BDžyw.%r~7$5F`%2M'˖3z]wB;ڙ5N4> Y$f+w&5 _a}0L b?ɕν-@~gܻvϝ*b=ĿBy\!Bx)8CXDM^n p{qotmHۉQ}VNź~l1x[qL9$e[]NB% n&]pPkH2bI" x8|ۺ֓V]gI9FR"\^z=ۢx2摞o|6Gޞ^Wٰ(S1O[ 9ŭ ZI&gsH%3֡ e=0R|L=B!O̧հT,[8́cS~8]+s|o4ecZjjxΎYM rJ@[i־-#f%ʄ&=uCF޲ἾwR)36(_IocfL rɈ?EqW>a3Ve_Ŧ#!B9= kxcd0OÎԬߐZ} =2.02 (patched with foreach support) # normalize (Qt tool to normalize all signal/slots format) # function format_sources { astyle --indent=spaces=4 --style=1tbs \ --indent-labels --pad-oper --unpad-paren --pad-header \ --convert-tabs --indent-preprocessor --break-closing-brackets \ --align-pointer=type --align-reference=name \ `find -type f -name '*.cpp'` | grep 'Formatted' find . -name "*.orig" -print0 | xargs -0 rm -rf } function format_headers { astyle --indent=spaces=4 --style=linux \ --indent-labels --pad-oper --unpad-paren --pad-header \ --keep-one-line-statements --keep-one-line-blocks \ --indent-preprocessor --convert-tabs \ --align-pointer=type --align-reference=name \ `find -type f -name '*.h'` | grep 'Formatted' find . -name "*.orig" -print0 | xargs -0 rm -rf } cd ../src echo "Running astyle for *.cpp ..." format_sources echo "Running astyle for *.h ..." format_headers echo "Running normalize ..." normalize --modify . exit 0 qupzilla-1.6.0/scripts/cppcheck.sh000077500000000000000000000004671226107126500171760ustar00rootroot00000000000000#!/bin/bash # # cppcheck # function check_code { cppcheck \ -j 4 \ --enable=style,performance,portability,missingInclude \ --inline-suppr \ --force \ --verbose \ . > /dev/null } echo "cppcheck..." cd ../src/plugins check_code cd ../lib/ check_code cd ../main check_code exit 0 qupzilla-1.6.0/scripts/generate-qmake-plugins-translations.sh000077500000000000000000000006331226107126500244750ustar00rootroot00000000000000#!/bin/bash # # Generates list of all plugins translations for qmake .pro PLUGINS=`ls -d ../src/plugins/*/translations` for dir in $PLUGINS do echo -e "$dir\n" echo "TRANSLATIONS += \\" for translation in $dir/*.ts do [[ "$translation" == *empty.ts ]] && continue echo " `echo $translation | awk 'BEGIN{FS="/"}{printf "%s/%s",$5,$6}'` \\" done echo -e "\n\n" done qupzilla-1.6.0/scripts/getrevision.sh000077500000000000000000000005161226107126500177470ustar00rootroot00000000000000#!/bin/bash REV="" if [ -e "/usr/bin/git" ] && ([ -e ".git" ] || [ -e "../.git" ]); then REV=`git show-ref refs/heads/master | cut -d " " -f 1` elif [ -e "git_revision" ]; then REV=`cat git_revision` fi case $1 in long) echo $REV ;; short|*) echo $REV | cut -c 1-10 ;; esac exit 0 qupzilla-1.6.0/scripts/macdeploy.sh000077500000000000000000000016601226107126500173670ustar00rootroot00000000000000#!/bin/bash # # Usage: ./macdeploy.sh [] # # macdeployqt is usually located in QTDIR/bin/macdeployqt # If path to macdeployqt is not specified, using it from PATH COMMAND="macdeployqt" LIBRARY_NAME="libQupZilla.1.dylib" if [ -n "$1" ]; then COMMAND=$1 fi # cd to directory with bundle test -d bin || cd .. cd bin # copy libQupZilla into bundle cp $LIBRARY_NAME QupZilla.app/Contents/MacOS/ # copy all plugins into bundle test -d QupZilla.app/Contents/Resources/plugins || mkdir QupZilla.app/Contents/Resources/plugins cp plugins/*.dylib QupZilla.app/Contents/Resources/plugins/ # fix libQupZilla install_name_tool -change $LIBRARY_NAME @executable_path/$LIBRARY_NAME QupZilla.app/Contents/MacOS/QupZilla # fix plugins for plugin in QupZilla.app/Contents/Resources/plugins/*.dylib do install_name_tool -change $LIBRARY_NAME @executable_path/$LIBRARY_NAME $plugin done # run macdeployqt $COMMAND QupZilla.app qupzilla-1.6.0/scripts/make_ca_bundle.sh000077500000000000000000000003261226107126500203210ustar00rootroot00000000000000#!/bin/bash # It will probably work only for Debian based distros cat /usr/share/ca-certificates/*/*.crt > ../src/lib/data/data/ca-bundle.crt cat /etc/ssl/certs/*.pem >> ../src/lib/data/data/ca-bundle.crt exit 0 qupzilla-1.6.0/scripts/plugin_translations.sh000077500000000000000000000002641226107126500215100ustar00rootroot00000000000000#!/bin/bash cd ../src/plugins for pluginPro in */*.pro do #lupdate $pluginPro -no-obsolete lupdate $pluginPro -no-obsolete -ts $pluginPro/../translations/empty.ts done exit 0 qupzilla-1.6.0/scripts/run_tests.sh000077500000000000000000000002121226107126500174300ustar00rootroot00000000000000#!/bin/bash # run_tests.sh cd ../tests/autotests (qmake DEFINES+=NO_SYSTEM_DATAPATH && make) || exit 1 cd ../../bin ./autotests exit $? qupzilla-1.6.0/scripts/translations_update.sh000077500000000000000000000006361226107126500214770ustar00rootroot00000000000000#!/bin/bash ARGUMENTS="" if [ "$1" == "-no-obsolete" ]; then ARGUMENTS="-no-obsolete" fi ## circular inclusions workaround - we comment that buggy line sed -i 's/include(3rdparty/##temp/g' ../src/lib/lib.pro #lupdate $ARGUMENTS ../src/lib/lib.pro cd ../src/lib/ lupdate $ARGUMENTS lib.pro -ts ../../translations/empty.ts cd - ## uncomment it now sed -i 's/##temp/include(3rdparty/g' ../src/lib/lib.pro exit 0 qupzilla-1.6.0/src/000077500000000000000000000000001226107126500141505ustar00rootroot00000000000000qupzilla-1.6.0/src/defines.pri000066400000000000000000000105371226107126500163070ustar00rootroot00000000000000DESTDIR = $$PWD/../bin OBJECTS_DIR = $$PWD/../build MOC_DIR = $$PWD/../build RCC_DIR = $$PWD/../build UI_DIR = $$PWD/../build # workaround for #849: see https://bugreports.qt-project.org/browse/QTBUG-23196 mocinclude.CONFIG *= fix_target unix: VERSION = 1.6.0 # Please read BUILD information # #DEFINES *= NO_SYSTEM_DATAPATH #DEFINES *= USE_WEBGL #DEFINES *= KDE #DEFINES *= PORTABLE_BUILD win32-msvc* { DEFINES *= W7API LIBS += User32.lib Ole32.lib Shell32.lib ShlWapi.lib Gdi32.lib ComCtl32.lib } # Check for pkg-config availability !mac:unix:system(pkg-config --version > /dev/null) { isEqual(QT_MAJOR_VERSION, 5) { MODNAME = Qt5WebKitWidgets } else { MODNAME = QtWebKit } QTWEBKIT_VERSION = $$system(PKG_CONFIG_PATH="$$[QT_INSTALL_LIBS]/pkgconfig" pkg-config --modversion $$MODNAME) QTWEBKIT_VERSION_MAJOR = $$section(QTWEBKIT_VERSION, ".", 0, 0) QTWEBKIT_VERSION_MINOR = $$section(QTWEBKIT_VERSION, ".", 1, 1) isEqual(QT_MAJOR_VERSION, 5) { greaterThan(QTWEBKIT_VERSION_MAJOR, 4) { DEFINES *= USE_QTWEBKIT_2_2 USE_QTWEBKIT_2_3 } } else { # Qt 4 greaterThan(QTWEBKIT_VERSION_MAJOR, 3):greaterThan(QTWEBKIT_VERSION_MINOR, 8) { DEFINES *= USE_QTWEBKIT_2_2 } greaterThan(QTWEBKIT_VERSION_MAJOR, 3):greaterThan(QTWEBKIT_VERSION_MINOR, 9) { DEFINES *= USE_QTWEBKIT_2_3 } } } else { isEqual(QT_VERSION, 4.8.0)|greaterThan(QT_VERSION, 4.8.0) { DEFINES *= USE_QTWEBKIT_2_2 } isEqual(QT_MAJOR_VERSION, 5) { DEFINES *= USE_QTWEBKIT_2_2 USE_QTWEBKIT_2_3 } } DEFINES *= QT_NO_URL_CAST_FROM_STRING DEFINES *= QT_USE_QSTRINGBUILDER CONFIG(debug, debug|release): DEFINES *= QUPZILLA_DEBUG_BUILD d_no_system_datapath = $$(NO_SYSTEM_DATAPATH) d_use_webgl = $$(USE_WEBGL) d_w7api = $$(W7API) d_kde = $$(KDE) # Backwards compatibility d_kde_integration = $$(KDE_INTEGRATION) d_nox11 = $$(NO_X11) d_portable = $$(PORTABLE_BUILD) d_nonblock_dialogs = $$(NONBLOCK_JS_DIALOGS) d_use_qtwebkit_2_2 = $$(USE_QTWEBKIT_2_2) d_use_lib_path = $$(USE_LIBPATH) d_disable_dbus = $$(DISABLE_DBUS) equals(d_no_system_datapath, "true") { DEFINES *= NO_SYSTEM_DATAPATH } equals(d_use_webgl, "true") { DEFINES *= USE_WEBGL } win32-msvc* { equals(d_w7api, "true") { DEFINES *= W7API } } equals(d_kde, "true") { DEFINES *= KDE_INTEGRATION } equals(d_kde_integration, "true") { DEFINES *= KDE_INTEGRATION } equals(d_nox11, "true") { DEFINES *= NO_X11 } equals(d_portable, "true") { DEFINES *= PORTABLE_BUILD } equals(d_nonblock_dialogs, "true") { DEFINES *= NONBLOCK_JS_DIALOGS } equals(d_use_qtwebkit_2_2, "true") { DEFINES *= USE_QTWEBKIT_2_2 } equals(d_disable_dbus, "true") { DEFINES *= DISABLE_DBUS } !mac:unix { x86libpath = /usr/lib/i386-linux-gnu x64libpath = /usr/lib/x86_64-linux-gnu system_lib_path = /usr/lib contains(QMAKE_HOST.arch, x86):exists($$x86libpath) system_lib_path = $$x86libpath contains(QMAKE_HOST.arch, x86_64):exists($$x64libpath) system_lib_path = $$x64libpath d_prefix = $$(QUPZILLA_PREFIX) binary_folder = /usr/bin library_folder = $$system_lib_path data_folder = /usr/share/qupzilla launcher_folder = /usr/share/applications icon_folder = /usr/share/pixmaps hicolor_folder = /usr/share/icons/hicolor !equals(d_prefix, "") { binary_folder = "$$d_prefix"bin library_folder = "$$d_prefix"lib data_folder = "$$d_prefix"share/qupzilla launcher_folder = "$$d_prefix"share/applications icon_folder = "$$d_prefix"share/pixmaps hicolor_folder = "$$d_prefix"share/icons/hicolor } !equals(d_use_lib_path, ""):library_folder = $$d_use_lib_path DEFINES *= USE_LIBPATH=\\\"""$$library_folder/"\\\"" DEFINES *= USE_DATADIR=\\\"""$$data_folder/"\\\"" # Git revision rev = $$system(cd ../ && sh $$PWD/../scripts/getrevision.sh) !equals(rev, ""): DEFINES *= GIT_REVISION=\\\"""$$rev"\\\"" # Define QZ_WS_X11 even with Qt5 DEFINES *= QZ_WS_X11 } isEmpty(QMAKE_LRELEASE) { win32|os2:QMAKE_LRELEASE = $$[QT_INSTALL_BINS]\\lrelease.exe else:QMAKE_LRELEASE = $$[QT_INSTALL_BINS]/lrelease unix { !exists($$QMAKE_LRELEASE) { QMAKE_LRELEASE = lrelease-qt4 } } else { !exists($$QMAKE_LRELEASE) { QMAKE_LRELEASE = lrelease } } } isEmpty(QMAKE_LFLAGS_RPATH) { QMAKE_LFLAGS_RPATH = -Wl,-rpath, } qupzilla-1.6.0/src/install.pri000066400000000000000000000031411226107126500163310ustar00rootroot00000000000000mac { QMAKE_INFO_PLIST = $$PWD/main/Info.plist ICON = $$PWD/lib/data/icons/exeicons/qupzilla.icns bundle_target.files += $$PWD/../bin/locale bundle_target.files += $$PWD/../bin/themes bundle_target.files += $$PWD/../bin/plugins bundle_target.path = Contents/Resources QMAKE_BUNDLE_DATA += bundle_target } !mac:unix { target.path = $$binary_folder target1.files += $$PWD/../bin/locale target1.files += $$PWD/../bin/themes target1.path = $$data_folder target2.files = $$PWD/../linux/applications/qupzilla.desktop target2.path = $$launcher_folder target3.files = $$PWD/../linux/pixmaps/qupzilla.png target3.path = $$icon_folder ico16.files = $$PWD/../linux/hicolor/16x16/apps/qupzilla.png ico16.path = $$hicolor_folder/16x16/apps ico32.files = $$PWD/../linux/hicolor/32x32/apps/qupzilla.png ico32.path = $$hicolor_folder/32x32/apps ico48.files = $$PWD/../linux/hicolor/48x48/apps/qupzilla.png ico48.path = $$hicolor_folder/48x48/apps ico64.files = $$PWD/../linux/hicolor/64x64/apps/qupzilla.png ico64.path = $$hicolor_folder/64x64/apps ico128.files = $$PWD/../linux/hicolor/128x128/apps/qupzilla.png ico128.path = $$hicolor_folder/128x128/apps ico256.files = $$PWD/../linux/hicolor/256x256/apps/qupzilla.png ico256.path = $$hicolor_folder/256x256/apps bashcompletion.files = $$PWD/../linux/completion/qupzilla bashcompletion.path = /usr/share/bash-completion/completions INSTALLS += target target1 target2 target3 INSTALLS += ico16 ico32 ico48 ico64 ico128 ico256 INSTALLS += bashcompletion } qupzilla-1.6.0/src/lib/000077500000000000000000000000001226107126500147165ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/3rdparty/000077500000000000000000000000001226107126500164665ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/3rdparty/ecwin7.cpp000066400000000000000000000063301226107126500203700ustar00rootroot00000000000000/* EcWin7 - Support library for integrating Windows 7 taskbar features * into any Qt application * Copyright (C) 2010 Emanuele Colombo * * 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. */ #include "ecwin7.h" // Windows only definitions #ifdef W7TASKBAR DEFINE_GUID(CLSID_TaskbarList, 0x56fdf344, 0xfd6d, 0x11d0, 0x95, 0x8a, 0x0, 0x60, 0x97, 0xc9, 0xa0, 0x90); DEFINE_GUID(IID_ITaskbarList3, 0xea1afb91, 0x9e28, 0x4b86, 0x90, 0xE9, 0x9e, 0x9f, 0x8a, 0x5e, 0xef, 0xaf); // Constructor: variabiles initialization EcWin7::EcWin7() { mTaskbar = NULL; mOverlayIcon = NULL; } // Init taskbar communication void EcWin7::init(HWND wid) { mWindowId = wid; mTaskbarMessageId = RegisterWindowMessage(L"TaskbarButtonCreated"); } // Windows event handler callback function // (handles taskbar communication initial message) bool EcWin7::winEvent(MSG* message, long* result) { if (message->message == mTaskbarMessageId) { HRESULT hr = CoCreateInstance(CLSID_TaskbarList, 0, CLSCTX_INPROC_SERVER, IID_ITaskbarList3, reinterpret_cast(&(mTaskbar))); *result = hr; return true; } return false; } // Set progress bar current value void EcWin7::setProgressValue(int value, int max) { mTaskbar->SetProgressValue(mWindowId, value, max); } // Set progress bar current state (active, error, pause, ecc...) void EcWin7::setProgressState(ToolBarProgressState state) { mTaskbar->SetProgressState(mWindowId, (TBPFLAG)state); } // Set new overlay icon and corresponding description (for accessibility) // (call with iconName == "" and description == "" to remove any previous overlay icon) void EcWin7::setOverlayIcon(QString iconName, QString description) { HICON oldIcon = NULL; if (mOverlayIcon != NULL) { oldIcon = mOverlayIcon; } if (iconName.isEmpty()) { mTaskbar->SetOverlayIcon(mWindowId, NULL, NULL); mOverlayIcon = NULL; } else { mOverlayIcon = (HICON) LoadImage(GetModuleHandle(NULL), iconName.toStdWString().c_str(), IMAGE_ICON, 0, 0, NULL); mTaskbar->SetOverlayIcon(mWindowId, mOverlayIcon, description.toStdWString().c_str()); } if ((oldIcon != NULL) && (oldIcon != mOverlayIcon)) { DestroyIcon(oldIcon); } } #endif qupzilla-1.6.0/src/lib/3rdparty/ecwin7.h000066400000000000000000000040651226107126500200400ustar00rootroot00000000000000/* EcWin7 - Support library for integrating Windows 7 taskbar features * into any Qt application * Copyright (C) 2010 Emanuele Colombo * * 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. */ #ifndef ECWIN7_H #define ECWIN7_H #include "qz_namespace.h" #include #include // Windows only data definitions #ifdef W7TASKBAR #define NOMINMAX #include #include #define CMIC_MASK_ASYNCOK SEE_MASK_ASYNCOK #include #include #include "msvc2008.h" // ******************************************************************** // EcWin7 class - Windows 7 taskbar handling for Qt and MinGW class EcWin7 { public: // Initialization methods EcWin7(); void init(HWND wid); bool winEvent(MSG* message, long* result); // Overlay icon handling void setOverlayIcon(QString iconName, QString description); // Progress indicator handling enum ToolBarProgressState { NoProgress = 0, Indeterminate = 1, Normal = 2, Error = 4, Paused = 8 }; void setProgressValue(int value, int max); void setProgressState(ToolBarProgressState state); private: HWND mWindowId; UINT mTaskbarMessageId; ITaskbarList3* mTaskbar; HICON mOverlayIcon; }; // Windows only data definitions - END #endif // W7TASKBAR #endif // ECWIN7_H qupzilla-1.6.0/src/lib/3rdparty/fancytabwidget.cpp000066400000000000000000000543151226107126500221750ustar00rootroot00000000000000/************************************************************************** ** ** This file is part of Qt Creator ** ** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). ** ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** Commercial Usage ** ** Licensees holding valid Qt Commercial licenses may use this file in ** accordance with the Qt Commercial License Agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Nokia. ** ** GNU Lesser General Public License Usage ** ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** If you are unsure which license is appropriate for your use, please ** contact the sales department at http://qt.nokia.com/contact. ** **************************************************************************/ #include "fancytabwidget.h" #include "stylehelper.h" #include #include #include #include #include #include #include #include #include #include #include #include #include #include //#include using namespace Core; using namespace Internal; const int FancyTabBar::m_rounding = 22; const int FancyTabBar::m_textPadding = 4; void FancyTabProxyStyle::drawControl( ControlElement element, const QStyleOption* option, QPainter* p, const QWidget* widget) const { const QStyleOptionTabV3* v_opt = qstyleoption_cast(option); if (element != CE_TabBarTab || !v_opt) { QProxyStyle::drawControl(element, option, p, widget); return; } const QRect rect = v_opt->rect; const bool selected = v_opt->state & State_Selected; const bool vertical_tabs = v_opt->shape == QTabBar::RoundedWest; const QString text = v_opt->text; if (selected) { //background p->save(); QLinearGradient grad(rect.topLeft(), rect.topRight()); grad.setColorAt(0, QColor(255, 255, 255, 140)); grad.setColorAt(1, QColor(255, 255, 255, 210)); p->fillRect(rect.adjusted(0, 0, 0, -1), grad); p->restore(); //shadows p->setPen(QColor(0, 0, 0, 110)); p->drawLine(rect.topLeft() + QPoint(1, -1), rect.topRight() - QPoint(0, 1)); p->drawLine(rect.bottomLeft(), rect.bottomRight()); p->setPen(QColor(0, 0, 0, 40)); p->drawLine(rect.topLeft(), rect.bottomLeft()); //highlights p->setPen(QColor(255, 255, 255, 50)); p->drawLine(rect.topLeft() + QPoint(0, -2), rect.topRight() - QPoint(0, 2)); p->drawLine(rect.bottomLeft() + QPoint(0, 1), rect.bottomRight() + QPoint(0, 1)); p->setPen(QColor(255, 255, 255, 40)); p->drawLine(rect.topLeft() + QPoint(0, 0), rect.topRight()); p->drawLine(rect.topRight() + QPoint(0, 1), rect.bottomRight() - QPoint(0, 1)); p->drawLine(rect.bottomLeft() + QPoint(0, -1), rect.bottomRight() - QPoint(0, 1)); } QTransform m; if (vertical_tabs) { m = QTransform::fromTranslate(rect.left(), rect.bottom()); m.rotate(-90); } else { m = QTransform::fromTranslate(rect.left(), rect.top()); } const QRect draw_rect(QPoint(0, 0), m.mapRect(rect).size()); p->save(); p->setTransform(m); QRect icon_rect(QPoint(8, 0), v_opt->iconSize); QRect text_rect(icon_rect.topRight() + QPoint(4, 0), draw_rect.size()); text_rect.setRight(draw_rect.width()); icon_rect.translate(0, (draw_rect.height() - icon_rect.height()) / 2); QFont boldFont(p->font()); boldFont.setPointSizeF(Utils::StyleHelper::sidebarFontSize()); boldFont.setBold(true); p->setFont(boldFont); p->setPen(selected ? QColor(255, 255, 255, 160) : QColor(0, 0, 0, 110)); int textFlags = Qt::AlignHCenter | Qt::AlignVCenter; p->drawText(text_rect, textFlags, text); p->setPen(selected ? QColor(60, 60, 60) : Utils::StyleHelper::panelTextColor()); #if 0 if (widget) { const QString fader_key = "tab_" + text + "_fader"; const QString animation_key = "tab_" + text + "_animation"; const QString tab_hover = widget->property("tab_hover").toString(); int fader = widget->property(fader_key.toUtf8().constData()).toInt(); QPropertyAnimation* animation = widget->property(animation_key.toUtf8().constData()).value(); if (!animation) { QWidget* mut_widget = const_cast(widget); fader = 0; mut_widget->setProperty(fader_key.toUtf8().constData(), fader); animation = new QPropertyAnimation(mut_widget, fader_key.toUtf8(), mut_widget); connect(animation, SIGNAL(valueChanged(QVariant)), mut_widget, SLOT(update())); mut_widget->setProperty(animation_key.toUtf8().constData(), QVariant::fromValue(animation)); } if (text == tab_hover) { if (animation->state() != QAbstractAnimation::Running && fader != 40) { animation->stop(); animation->setDuration(80); animation->setEndValue(40); animation->start(); } } else { if (animation->state() != QAbstractAnimation::Running && fader != 0) { animation->stop(); animation->setDuration(160); animation->setEndValue(0); animation->start(); } } if (!selected) { p->save(); QLinearGradient grad(draw_rect.topLeft(), vertical_tabs ? draw_rect.bottomLeft() : draw_rect.topRight()); grad.setColorAt(0, Qt::transparent); grad.setColorAt(0.5, QColor(255, 255, 255, fader)); grad.setColorAt(1, Qt::transparent); p->fillRect(draw_rect, grad); p->setPen(QPen(grad, 1.0)); p->drawLine(draw_rect.topLeft(), vertical_tabs ? draw_rect.bottomLeft() : draw_rect.topRight()); p->drawLine(draw_rect.bottomRight(), vertical_tabs ? draw_rect.topRight() : draw_rect.bottomLeft()); p->restore(); } } #endif Utils::StyleHelper::drawIconWithShadow(v_opt->icon, icon_rect, p, QIcon::Normal); p->drawText(text_rect.translated(0, -1), textFlags, text); p->restore(); } void FancyTabProxyStyle::polish(QWidget* widget) { if (QString(widget->metaObject()->className()) == QLatin1String("QTabBar")) { widget->setMouseTracking(true); widget->installEventFilter(this); } QProxyStyle::polish(widget); } void FancyTabProxyStyle::polish(QApplication* app) { QProxyStyle::polish(app); } void FancyTabProxyStyle::polish(QPalette &palette) { QProxyStyle::polish(palette); } bool FancyTabProxyStyle::eventFilter(QObject* o, QEvent* e) { QTabBar* bar = qobject_cast(o); if (bar && (e->type() == QEvent::MouseMove || e->type() == QEvent::Leave)) { QMouseEvent* event = static_cast(e); const QString old_hovered_tab = bar->property("tab_hover").toString(); const QString hovered_tab = e->type() == QEvent::Leave ? QString() : bar->tabText(bar->tabAt(event->pos())); bar->setProperty("tab_hover", hovered_tab); if (old_hovered_tab != hovered_tab) { bar->update(); } } return false; } FancyTab::FancyTab(QWidget* tabbar) : QWidget(tabbar), tabbar(tabbar), m_fader(0) { // animator.setPropertyName("fader"); // animator.setTargetObject(this); setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Maximum); } void FancyTab::fadeIn() { // animator.stop(); // animator.setDuration(80); // animator.setEndValue(40); // animator.start(); } void FancyTab::fadeOut() { // animator.stop(); // animator.setDuration(160); // animator.setEndValue(0); // animator.start(); } void FancyTab::setFader(float value) { m_fader = value; tabbar->update(); } FancyTabBar::FancyTabBar(QWidget* parent) : QWidget(parent) { setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Expanding); //setStyle(new QWindowsStyle); setMinimumWidth(qMax(2 * m_rounding, 40)); setAttribute(Qt::WA_Hover, true); setFocusPolicy(Qt::NoFocus); setMouseTracking(true); // Needed for hover events m_triggerTimer.setSingleShot(true); QVBoxLayout* layout = new QVBoxLayout; layout->addSpacerItem(new QSpacerItem(0, 0, QSizePolicy::Fixed, QSizePolicy::Expanding)); layout->setSpacing(0); layout->setContentsMargins(0, 0, 0, 0); setLayout(layout); // We use a zerotimer to keep the sidebar responsive connect(&m_triggerTimer, SIGNAL(timeout()), this, SLOT(emitCurrentIndex())); } FancyTabBar::~FancyTabBar() { delete style(); } QSize FancyTab::sizeHint() const { QFont boldFont(font()); boldFont.setPointSizeF(Utils::StyleHelper::sidebarFontSize()); boldFont.setBold(true); QFontMetrics fm(boldFont); int spacing = 8; int width = 60 + spacing + 2; int iconHeight = 32; QSize ret(width, iconHeight + spacing + fm.height()); return ret; } QSize FancyTabBar::tabSizeHint(bool minimum) const { QFont boldFont(font()); boldFont.setPointSizeF(Utils::StyleHelper::sidebarFontSize()); boldFont.setBold(true); QFontMetrics fm(boldFont); int spacing = 8; int width = 60 + spacing + 2; int iconHeight = minimum ? 0 : 32; return QSize(width, iconHeight + spacing + fm.height()); } void FancyTabBar::paintEvent(QPaintEvent* event) { Q_UNUSED(event) QPainter p(this); for (int i = 0; i < count(); ++i) if (i != currentIndex()) { paintTab(&p, i); } // paint active tab last, since it overlaps the neighbors if (currentIndex() != -1) { paintTab(&p, currentIndex()); } } void FancyTab::enterEvent(QEvent*) { fadeIn(); } void FancyTab::leaveEvent(QEvent*) { fadeOut(); } QSize FancyTabBar::sizeHint() const { QSize sh = tabSizeHint(); return QSize(sh.width(), sh.height() * m_tabs.count()); } QSize FancyTabBar::minimumSizeHint() const { QSize sh = tabSizeHint(true); return QSize(sh.width(), sh.height() * m_tabs.count()); } QRect FancyTabBar::tabRect(int index) const { return m_tabs[index]->geometry(); } QString FancyTabBar::tabToolTip(int index) const { return m_tabs[index]->toolTip(); } void FancyTabBar::setTabToolTip(int index, const QString &toolTip) { m_tabs[index]->setToolTip(toolTip); } // This keeps the sidebar responsive since // we get a repaint before loading the // mode itself void FancyTabBar::emitCurrentIndex() { emit currentChanged(m_currentIndex); } void FancyTabBar::mousePressEvent(QMouseEvent* e) { e->accept(); for (int index = 0; index < m_tabs.count(); ++index) { if (tabRect(index).contains(e->pos())) { m_currentIndex = index; update(); m_triggerTimer.start(0); break; } } } void FancyTabBar::addTab(const QIcon &icon, const QString &label) { FancyTab* tab = new FancyTab(this); tab->icon = icon; tab->text = label; m_tabs.append(tab); qobject_cast(layout())->insertWidget(layout()->count() - 1, tab); } void FancyTabBar::addSpacer(int size) { qobject_cast(layout())->insertSpacerItem(layout()->count() - 1, new QSpacerItem(0, size, QSizePolicy::Fixed, QSizePolicy::Maximum)); } void FancyTabBar::paintTab(QPainter* painter, int tabIndex) const { if (!validIndex(tabIndex)) { qWarning("invalid index"); return; } painter->save(); QRect rect = tabRect(tabIndex); bool selected = (tabIndex == m_currentIndex); if (selected) { //background painter->save(); QLinearGradient grad(rect.topLeft(), rect.topRight()); grad.setColorAt(0, QColor(255, 255, 255, 140)); grad.setColorAt(1, QColor(255, 255, 255, 210)); painter->fillRect(rect.adjusted(0, 0, 0, -1), grad); painter->restore(); //shadows painter->setPen(QColor(0, 0, 0, 110)); painter->drawLine(rect.topLeft() + QPoint(1, -1), rect.topRight() - QPoint(0, 1)); painter->drawLine(rect.bottomLeft(), rect.bottomRight()); painter->setPen(QColor(0, 0, 0, 40)); painter->drawLine(rect.topLeft(), rect.bottomLeft()); //highlights painter->setPen(QColor(255, 255, 255, 50)); painter->drawLine(rect.topLeft() + QPoint(0, -2), rect.topRight() - QPoint(0, 2)); painter->drawLine(rect.bottomLeft() + QPoint(0, 1), rect.bottomRight() + QPoint(0, 1)); painter->setPen(QColor(255, 255, 255, 40)); painter->drawLine(rect.topLeft() + QPoint(0, 0), rect.topRight()); painter->drawLine(rect.topRight() + QPoint(0, 1), rect.bottomRight() - QPoint(0, 1)); painter->drawLine(rect.bottomLeft() + QPoint(0, -1), rect.bottomRight() - QPoint(0, 1)); } QString tabText(painter->fontMetrics().elidedText(this->tabText(tabIndex), Qt::ElideMiddle, width())); QRect tabTextRect(tabRect(tabIndex)); QRect tabIconRect(tabTextRect); tabIconRect.adjust(+4, +4, -4, -4); tabTextRect.translate(0, -2); QFont boldFont(painter->font()); boldFont.setPointSizeF(Utils::StyleHelper::sidebarFontSize()); boldFont.setBold(true); painter->setFont(boldFont); painter->setPen(selected ? QColor(255, 255, 255, 160) : QColor(0, 0, 0, 110)); int textFlags = Qt::AlignCenter | Qt::AlignBottom; painter->drawText(tabTextRect, textFlags, tabText); painter->setPen(selected ? QColor(60, 60, 60) : Utils::StyleHelper::panelTextColor()); #ifndef Q_OS_MAC if (!selected) { painter->save(); int fader = int(m_tabs[tabIndex]->fader()); QLinearGradient grad(rect.topLeft(), rect.topRight()); grad.setColorAt(0, Qt::transparent); grad.setColorAt(0.5, QColor(255, 255, 255, fader)); grad.setColorAt(1, Qt::transparent); painter->fillRect(rect, grad); painter->setPen(QPen(grad, 1.0)); painter->drawLine(rect.topLeft(), rect.topRight()); painter->drawLine(rect.bottomLeft(), rect.bottomRight()); painter->restore(); } #endif const int textHeight = painter->fontMetrics().height(); tabIconRect.adjust(0, 4, 0, -textHeight); Utils::StyleHelper::drawIconWithShadow(tabIcon(tabIndex), tabIconRect, painter, QIcon::Normal); painter->translate(0, -1); painter->drawText(tabTextRect, textFlags, tabText); painter->restore(); } void FancyTabBar::setCurrentIndex(int index) { m_currentIndex = index; update(); emit currentChanged(m_currentIndex); } ////// // FancyColorButton ////// class QT_QUPZILLA_EXPORT FancyColorButton : public QWidget { public: FancyColorButton(QWidget* parent) : m_parent(parent) { setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Preferred); } void mousePressEvent(QMouseEvent* ev) { if (ev->modifiers() & Qt::ShiftModifier) { Utils::StyleHelper::setBaseColor(QColorDialog::getColor(Utils::StyleHelper::requestedBaseColor(), m_parent)); } } private: QWidget* m_parent; }; ////// // FancyTabWidget ////// FancyTabWidget::FancyTabWidget(QWidget* parent) : QWidget(parent), mode_(Mode_None), tab_bar_(NULL), stack_(new QStackedLayout), side_widget_(new QWidget), side_layout_(new QVBoxLayout), top_layout_(new QVBoxLayout), use_background_(false), menu_(NULL), proxy_style_(new FancyTabProxyStyle) { side_layout_->setSpacing(0); side_layout_->setMargin(0); side_layout_->addSpacerItem(new QSpacerItem(0, 0, QSizePolicy::Fixed, QSizePolicy::Expanding)); side_widget_->setLayout(side_layout_); side_widget_->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Expanding); top_layout_->setMargin(0); top_layout_->setSpacing(0); top_layout_->addLayout(stack_); QHBoxLayout* main_layout = new QHBoxLayout; main_layout->setMargin(0); main_layout->setSpacing(1); main_layout->addWidget(side_widget_); main_layout->addLayout(top_layout_); setLayout(main_layout); } void FancyTabWidget::AddTab(QWidget* tab, const QIcon &icon, const QString &label) { stack_->addWidget(tab); items_ << Item(icon, label); } void FancyTabWidget::AddSpacer(int size) { items_ << Item(size); } void FancyTabWidget::SetBackgroundPixmap(const QPixmap &pixmap) { background_pixmap_ = pixmap; update(); } void FancyTabWidget::paintEvent(QPaintEvent*) { if (!use_background_) { return; } QPainter painter(this); QRect rect = side_widget_->rect().adjusted(0, 0, 1, 0); rect = style()->visualRect(layoutDirection(), geometry(), rect); Utils::StyleHelper::verticalGradient(&painter, rect, rect); if (!background_pixmap_.isNull()) { QRect pixmap_rect(background_pixmap_.rect()); pixmap_rect.moveTo(rect.topLeft()); while (pixmap_rect.top() < rect.bottom()) { QRect source_rect(pixmap_rect.intersected(rect)); source_rect.moveTo(0, 0); painter.drawPixmap(pixmap_rect.topLeft(), background_pixmap_, source_rect); pixmap_rect.moveTop(pixmap_rect.bottom() - 10); } } painter.setPen(Utils::StyleHelper::borderColor()); painter.drawLine(rect.topRight(), rect.bottomRight()); QColor light = Utils::StyleHelper::sidebarHighlight(); painter.setPen(light); painter.drawLine(rect.bottomLeft(), rect.bottomRight()); } int FancyTabWidget::current_index() const { return stack_->currentIndex(); } void FancyTabWidget::SetCurrentIndex(int index) { if (FancyTabBar* bar = qobject_cast(tab_bar_)) { bar->setCurrentIndex(index); } else if (QTabBar* bar = qobject_cast(tab_bar_)) { bar->setCurrentIndex(index); } else { stack_->setCurrentIndex(index); } } void FancyTabWidget::ShowWidget(int index) { stack_->setCurrentIndex(index); emit CurrentChanged(index); } void FancyTabWidget::AddBottomWidget(QWidget* widget) { top_layout_->addWidget(widget); } void FancyTabWidget::SetMode(Mode mode) { // Remove previous tab bar delete tab_bar_; tab_bar_ = NULL; use_background_ = false; // Create new tab bar switch (mode) { case Mode_None: default: qDebug() << "Unknown fancy tab mode" << mode; // fallthrough case Mode_LargeSidebar: { FancyTabBar* bar = new FancyTabBar(this); side_layout_->insertWidget(0, bar); tab_bar_ = bar; foreach (const Item &item, items_) { if (item.type_ == Item::Type_Spacer) { bar->addSpacer(item.spacer_size_); } else { bar->addTab(item.tab_icon_, item.tab_label_); } } bar->setCurrentIndex(stack_->currentIndex()); connect(bar, SIGNAL(currentChanged(int)), SLOT(ShowWidget(int))); use_background_ = true; break; } case Mode_Tabs: MakeTabBar(QTabBar::RoundedNorth, true, false, false); break; case Mode_IconOnlyTabs: MakeTabBar(QTabBar::RoundedNorth, false, true, false); break; case Mode_SmallSidebar: MakeTabBar(QTabBar::RoundedWest, true, true, true); use_background_ = true; break; case Mode_PlainSidebar: MakeTabBar(QTabBar::RoundedWest, true, true, false); break; } tab_bar_->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Preferred); mode_ = mode; emit ModeChanged(mode); update(); } void FancyTabWidget::contextMenuEvent(QContextMenuEvent* e) { Q_UNUSED(e) // if (!menu_) { // menu_ = new QMenu(this); // QSignalMapper* mapper = new QSignalMapper(this); // QActionGroup* group = new QActionGroup(this); // AddMenuItem(mapper, group, tr("Large sidebar"), Mode_LargeSidebar); // AddMenuItem(mapper, group, tr("Small sidebar"), Mode_SmallSidebar); // AddMenuItem(mapper, group, tr("Plain sidebar"), Mode_PlainSidebar); // AddMenuItem(mapper, group, tr("Tabs on top"), Mode_Tabs); // AddMenuItem(mapper, group, tr("Icons on top"), Mode_IconOnlyTabs); // menu_->addActions(group->actions()); // connect(mapper, SIGNAL(mapped(int)), SLOT(SetMode(int))); // } // menu_->popup(e->globalPos()); } void FancyTabWidget::AddMenuItem(QSignalMapper* mapper, QActionGroup* group, const QString &text, Mode mode) { QAction* action = group->addAction(text); action->setCheckable(true); mapper->setMapping(action, mode); connect(action, SIGNAL(triggered()), mapper, SLOT(map())); if (mode == mode_) { action->setChecked(true); } } void FancyTabWidget::MakeTabBar(QTabBar::Shape shape, bool text, bool icons, bool fancy) { QTabBar* bar = new QTabBar(this); bar->setShape(shape); bar->setDocumentMode(true); bar->setUsesScrollButtons(true); if (shape == QTabBar::RoundedWest) { bar->setIconSize(QSize(22, 22)); } if (fancy) { bar->setStyle(proxy_style_); } if (shape == QTabBar::RoundedNorth) { top_layout_->insertWidget(0, bar); } else { side_layout_->insertWidget(0, bar); } foreach (const Item &item, items_) { if (item.type_ != Item::Type_Tab) { continue; } QString label = item.tab_label_; if (shape == QTabBar::RoundedWest) { label = QFontMetrics(font()).elidedText(label, Qt::ElideMiddle, 100); } int tab_id = -1; if (icons && text) { tab_id = bar->addTab(item.tab_icon_, label); } else if (icons) { tab_id = bar->addTab(item.tab_icon_, QString()); } else if (text) { tab_id = bar->addTab(label); } bar->setTabToolTip(tab_id, item.tab_label_); } bar->setCurrentIndex(stack_->currentIndex()); connect(bar, SIGNAL(currentChanged(int)), SLOT(ShowWidget(int))); tab_bar_ = bar; } qupzilla-1.6.0/src/lib/3rdparty/fancytabwidget.h000066400000000000000000000136051226107126500216370ustar00rootroot00000000000000/************************************************************************** ** ** This file is part of Qt Creator ** ** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). ** ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** Commercial Usage ** ** Licensees holding valid Qt Commercial licenses may use this file in ** accordance with the Qt Commercial License Agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Nokia. ** ** GNU Lesser General Public License Usage ** ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** If you are unsure which license is appropriate for your use, please ** contact the sales department at http://qt.nokia.com/contact. ** **************************************************************************/ #ifndef FANCYTABWIDGET_H #define FANCYTABWIDGET_H #include "qz_namespace.h" #include #include #include #include #include class QActionGroup; class QMenu; class QPainter; class QSignalMapper; class QStackedLayout; class QStatusBar; class QVBoxLayout; namespace Core { namespace Internal { class QT_QUPZILLA_EXPORT FancyTabProxyStyle : public QProxyStyle { Q_OBJECT public: void drawControl(ControlElement element, const QStyleOption* option, QPainter* painter, const QWidget* widget) const; void polish(QWidget* widget); void polish(QApplication* app); void polish(QPalette &palette); protected: bool eventFilter(QObject* o, QEvent* e); }; class QT_QUPZILLA_EXPORT FancyTab : public QWidget { Q_OBJECT Q_PROPERTY(float fader READ fader WRITE setFader) public: FancyTab(QWidget* tabbar); float fader() { return m_fader; } void setFader(float value); QSize sizeHint() const; void fadeIn(); void fadeOut(); QIcon icon; QString text; protected: void enterEvent(QEvent*); void leaveEvent(QEvent*); private: QWidget* tabbar; float m_fader; }; class QT_QUPZILLA_EXPORT FancyTabBar : public QWidget { Q_OBJECT public: FancyTabBar(QWidget* parent = 0); ~FancyTabBar(); void paintEvent(QPaintEvent* event); void paintTab(QPainter* painter, int tabIndex) const; void mousePressEvent(QMouseEvent*); bool validIndex(int index) const { return index >= 0 && index < m_tabs.count(); } QSize sizeHint() const; QSize minimumSizeHint() const; void addTab(const QIcon &icon, const QString &label); void addSpacer(int size = 40); void removeTab(int index) { FancyTab* tab = m_tabs.takeAt(index); delete tab; } void setCurrentIndex(int index); int currentIndex() const { return m_currentIndex; } void setTabToolTip(int index, const QString &toolTip); QString tabToolTip(int index) const; QIcon tabIcon(int index) const {return m_tabs.at(index)->icon; } QString tabText(int index) const { return m_tabs.at(index)->text; } int count() const {return m_tabs.count(); } QRect tabRect(int index) const; signals: void currentChanged(int); public slots: void emitCurrentIndex(); private: static const int m_rounding; static const int m_textPadding; int m_currentIndex; QList m_tabs; QTimer m_triggerTimer; QSize tabSizeHint(bool minimum = false) const; }; class QT_QUPZILLA_EXPORT FancyTabWidget : public QWidget { Q_OBJECT Q_PROPERTY(QPixmap bgPixmap READ bgPixmap WRITE SetBackgroundPixmap) public: FancyTabWidget(QWidget* parent = 0); // Values are persisted - only add to the end enum Mode { Mode_None = 0, Mode_LargeSidebar = 1, Mode_SmallSidebar = 2, Mode_Tabs = 3, Mode_IconOnlyTabs = 4, Mode_PlainSidebar = 5, }; struct Item { Item(const QIcon &icon, const QString &label) : type_(Type_Tab), tab_label_(label), tab_icon_(icon), spacer_size_(0) {} Item(int size) : type_(Type_Spacer), spacer_size_(size) {} enum Type { Type_Tab, Type_Spacer, }; Type type_; QString tab_label_; QIcon tab_icon_; int spacer_size_; }; void AddTab(QWidget* tab, const QIcon &icon, const QString &label); void AddSpacer(int size = 40); void SetBackgroundPixmap(const QPixmap &pixmap); void AddBottomWidget(QWidget* widget); int current_index() const; Mode mode() const { return mode_; } QPixmap bgPixmap() { return background_pixmap_; } public slots: void SetCurrentIndex(int index); void SetMode(Mode mode); void SetMode(int mode) { SetMode(Mode(mode)); } signals: void CurrentChanged(int index); void ModeChanged(FancyTabWidget::Mode mode); protected: void paintEvent(QPaintEvent* event); void contextMenuEvent(QContextMenuEvent* e); private slots: void ShowWidget(int index); private: void MakeTabBar(QTabBar::Shape shape, bool text, bool icons, bool fancy); void AddMenuItem(QSignalMapper* mapper, QActionGroup* group, const QString &text, Mode mode); Mode mode_; QList items_; QWidget* tab_bar_; QStackedLayout* stack_; QPixmap background_pixmap_; QWidget* side_widget_; QVBoxLayout* side_layout_; QVBoxLayout* top_layout_; bool use_background_; QMenu* menu_; FancyTabProxyStyle* proxy_style_; }; } // namespace Internal } // namespace Core using Core::Internal::FancyTab; using Core::Internal::FancyTabBar; using Core::Internal::FancyTabWidget; #endif // FANCYTABWIDGET_H qupzilla-1.6.0/src/lib/3rdparty/lineedit.cpp000066400000000000000000000156231226107126500207760ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "lineedit.h" #include "qzsettings.h" #include #include #include #include #include SideWidget::SideWidget(QWidget* parent) : QWidget(parent) { } bool SideWidget::event(QEvent* event) { if (event->type() == QEvent::LayoutRequest) { emit sizeHintChanged(); } return QWidget::event(event); } LineEdit::LineEdit(QWidget* parent) : QLineEdit(parent) , m_leftLayout(0) , m_rightLayout(0) , m_leftMargin(-1) , m_ignoreMousePress(false) { init(); } LineEdit::LineEdit(const QString &contents, QWidget* parent) : QLineEdit(contents, parent) , m_leftWidget(0) , m_rightWidget(0) , m_leftLayout(0) , m_rightLayout(0) , m_leftMargin(0) { init(); } void LineEdit::setLeftMargin(int margin) { m_leftMargin = margin; } void LineEdit::init() { // We use setTextMargins() instead of padding property, and we should // uncomment following line or just update padding property of LineEdit's // subclasses in all themes and use same value for padding-left and padding-right, // with this new implementation padding-left and padding-right show padding from // edges of m_leftWidget and m_rightWidget. mainLayout = new QHBoxLayout(this); mainLayout->setContentsMargins(0, 0, 0, 0); mainLayout->setSpacing(0); m_leftWidget = new SideWidget(this); m_leftWidget->resize(0, 0); m_leftLayout = new QHBoxLayout(m_leftWidget); m_leftLayout->setContentsMargins(0, 0, 2, 0); if (isRightToLeft()) { m_leftLayout->setDirection(QBoxLayout::RightToLeft); } else { m_leftLayout->setDirection(QBoxLayout::LeftToRight); } m_leftLayout->setSizeConstraint(QLayout::SetFixedSize); m_rightWidget = new SideWidget(this); m_rightWidget->resize(0, 0); m_rightLayout = new QHBoxLayout(m_rightWidget); if (isRightToLeft()) { m_rightLayout->setDirection(QBoxLayout::RightToLeft); } else { m_rightLayout->setDirection(QBoxLayout::LeftToRight); } m_rightLayout->setContentsMargins(0, 0, 2, 0); QSpacerItem* horizontalSpacer = new QSpacerItem(0, 0, QSizePolicy::Expanding, QSizePolicy::Minimum); mainLayout->addWidget(m_leftWidget, 0, Qt::AlignVCenter | Qt::AlignLeft); mainLayout->addItem(horizontalSpacer); mainLayout->addWidget(m_rightWidget, 0, Qt::AlignVCenter | Qt::AlignRight); // by this we undo reversing of layout when direction is RTL. // TODO: don't do this and show reversed icon when needed mainLayout->setDirection(isRightToLeft() ? QBoxLayout::RightToLeft : QBoxLayout::LeftToRight); setWidgetSpacing(3); connect(m_leftWidget, SIGNAL(sizeHintChanged()), this, SLOT(updateTextMargins())); connect(m_rightWidget, SIGNAL(sizeHintChanged()), this, SLOT(updateTextMargins())); } bool LineEdit::event(QEvent* event) { if (event->type() == QEvent::LayoutDirectionChange) { // By this we undo reversing of layout when direction is RTL. if (isRightToLeft()) { mainLayout->setDirection(QBoxLayout::RightToLeft); m_leftLayout->setDirection(QBoxLayout::RightToLeft); m_rightLayout->setDirection(QBoxLayout::RightToLeft); } else { mainLayout->setDirection(QBoxLayout::LeftToRight); m_leftLayout->setDirection(QBoxLayout::LeftToRight); m_rightLayout->setDirection(QBoxLayout::LeftToRight); } } return QLineEdit::event(event); } void LineEdit::addWidget(QWidget* widget, WidgetPosition position) { if (!widget) { return; } if (position == LeftSide) { m_leftLayout->addWidget(widget); } else { m_rightLayout->addWidget(widget); } } void LineEdit::removeWidget(QWidget* widget) { if (!widget) { return; } m_leftLayout->removeWidget(widget); m_rightLayout->removeWidget(widget); widget->hide(); } void LineEdit::setWidgetSpacing(int spacing) { m_leftLayout->setSpacing(spacing); m_rightLayout->setSpacing(spacing); updateTextMargins(); } int LineEdit::widgetSpacing() const { return m_leftLayout->spacing(); } int LineEdit::textMargin(WidgetPosition position) const { int spacing = m_rightLayout->spacing(); int w = 0; if (position == LeftSide) { w = m_leftWidget->sizeHint().width(); } else { w = m_rightWidget->sizeHint().width(); } if (w == 0) { return 0; } return w + spacing * 2; } void LineEdit::updateTextMargins() { int left = m_leftMargin < 0 ? m_leftWidget->sizeHint().width() : m_leftMargin; int right = m_rightWidget->sizeHint().width(); int top = 0; int bottom = 0; setTextMargins(left, top, right, bottom); } void LineEdit::focusInEvent(QFocusEvent* event) { if (event->reason() == Qt::MouseFocusReason && qzSettings->selectAllOnClick) { m_ignoreMousePress = true; selectAll(); } QLineEdit::focusInEvent(event); } void LineEdit::mousePressEvent(QMouseEvent* event) { if (m_ignoreMousePress) { m_ignoreMousePress = false; return; } QLineEdit::mousePressEvent(event); } void LineEdit::mouseReleaseEvent(QMouseEvent* event) { // Workaround issue in QLineEdit::setDragEnabled(true) // It will incorrectly set cursor position at the end // of selection when clicking (and not dragging) into selected text if (!dragEnabled()) { QLineEdit::mouseReleaseEvent(event); return; } bool wasSelectedText = !selectedText().isEmpty(); QLineEdit::mouseReleaseEvent(event); bool isSelectedText = !selectedText().isEmpty(); if (wasSelectedText && !isSelectedText) { QMouseEvent ev(QEvent::MouseButtonPress, event->pos(), event->button(), event->buttons(), event->modifiers()); mousePressEvent(&ev); } } void LineEdit::mouseDoubleClickEvent(QMouseEvent* event) { if (event->button() == Qt::LeftButton && qzSettings->selectAllOnDoubleClick) { selectAll(); return; } QLineEdit::mouseDoubleClickEvent(event); } qupzilla-1.6.0/src/lib/3rdparty/lineedit.h000066400000000000000000000102231226107126500204320ustar00rootroot00000000000000#ifndef LINEEDIT_H #define LINEEDIT_H /** * Copyright (c) 2008 - 2009, Benjamin C. Meyer * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the Benjamin Meyer nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ /* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include #include "qz_namespace.h" class QHBoxLayout; /* LineEdit is a subclass of QLineEdit that provides an easy and simple way to add widgets on the left or right hand side of the text. The layout of the widgets on either side are handled by a QHBoxLayout. You can set the spacing around the widgets with setWidgetSpacing(). As widgets are added to the class they are inserted from the outside into the center of the widget. */ class SideWidget; class QT_QUPZILLA_EXPORT LineEdit : public QLineEdit { Q_OBJECT Q_PROPERTY(int leftMargin READ leftMargin WRITE setLeftMargin) public: enum WidgetPosition { LeftSide, RightSide }; LineEdit(QWidget* parent = 0); LineEdit(const QString &contents, QWidget* parent = 0); void addWidget(QWidget* widget, WidgetPosition position); void removeWidget(QWidget* widget); void setWidgetSpacing(int spacing); int widgetSpacing() const; int textMargin(WidgetPosition position) const; int leftMargin() { return m_leftMargin; } public slots: void setLeftMargin(int margin); void updateTextMargins(); protected: void focusInEvent(QFocusEvent* event); void mousePressEvent(QMouseEvent* event); void mouseReleaseEvent(QMouseEvent* event); void mouseDoubleClickEvent(QMouseEvent* event); bool event(QEvent* event); private: void init(); SideWidget* m_leftWidget; SideWidget* m_rightWidget; QHBoxLayout* m_leftLayout; QHBoxLayout* m_rightLayout; QHBoxLayout* mainLayout; int m_leftMargin; bool m_ignoreMousePress; }; class QT_QUPZILLA_EXPORT SideWidget : public QWidget { Q_OBJECT signals: void sizeHintChanged(); public: SideWidget(QWidget* parent = 0); protected: bool event(QEvent* event); }; #endif // LINEEDIT_H qupzilla-1.6.0/src/lib/3rdparty/msvc2008.h000066400000000000000000000236621226107126500201320ustar00rootroot00000000000000#ifndef MSVC2008_H #define MSVC2008_H //Neccessary declarations to use new Windows 7 API with Microsoft Visual C++ 2008 compiler //However, it is still needed to link against newer libraries from Visual C++ 2010 #if (_MSC_VER >= 1500 && _MSC_VER < 1600) //Microsoft Visual C++ 2008 #include "rpc.h" #include "rpcndr.h" #ifndef COM_NO_WINDOWS_H #include "windows.h" #include "ole2.h" #endif /*COM_NO_WINDOWS_H*/ #ifndef __objectarray_h__ #define __objectarray_h__ #pragma once /* Forward Declarations */ #ifndef __IObjectArray_FWD_DEFINED__ #define __IObjectArray_FWD_DEFINED__ typedef interface IObjectArray IObjectArray; #endif /* __IObjectArray_FWD_DEFINED__ */ #ifndef __IObjectCollection_FWD_DEFINED__ #define __IObjectCollection_FWD_DEFINED__ typedef interface IObjectCollection IObjectCollection; #endif /* __IObjectCollection_FWD_DEFINED__ */ /* header files for imported files */ #include "oaidl.h" #include "ocidl.h" #ifdef __cplusplus extern "C" { #endif /* **************************************************************************************************** IObjectArray **************************************************************************************************** */ #ifndef __IObjectArray_INTERFACE_DEFINED__ #define __IObjectArray_INTERFACE_DEFINED__ /* interface IObjectArray */ /* [unique][object][uuid][helpstring] */ EXTERN_C const IID IID_IObjectArray; MIDL_INTERFACE("92CA9DCD-5622-4bba-A805-5E9F541BD8C9") IObjectArray : public IUnknown { public: virtual HRESULT STDMETHODCALLTYPE GetCount( /* [out] */ __RPC__out UINT * pcObjects) = 0; virtual HRESULT STDMETHODCALLTYPE GetAt( /* [in] */ UINT uiIndex, /* [in] */ __RPC__in REFIID riid, /* [iid_is][out] */ __RPC__deref_out_opt void** ppv) = 0; }; #endif /* __IObjectArray_INTERFACE_DEFINED__ */ #ifndef __IObjectCollection_INTERFACE_DEFINED__ #define __IObjectCollection_INTERFACE_DEFINED__ /* interface IObjectCollection */ /* [unique][object][uuid] */ EXTERN_C const IID IID_IObjectCollection; MIDL_INTERFACE("5632b1a4-e38a-400a-928a-d4cd63230295") IObjectCollection : public IObjectArray { public: virtual HRESULT STDMETHODCALLTYPE AddObject( /* [in] */ __RPC__in_opt IUnknown * punk) = 0; virtual HRESULT STDMETHODCALLTYPE AddFromArray( /* [in] */ __RPC__in_opt IObjectArray * poaSource) = 0; virtual HRESULT STDMETHODCALLTYPE RemoveObjectAt( /* [in] */ UINT uiIndex) = 0; virtual HRESULT STDMETHODCALLTYPE Clear(void) = 0; }; #endif /* __IObjectCollection_INTERFACE_DEFINED__ */ /* Additional Prototypes for ALL interfaces */ /* end of Additional Prototypes */ #ifdef __cplusplus } #endif #endif /* **************************************************************************************************** ICustomDestinationList **************************************************************************************************** */ typedef interface ICustomDestinationList ICustomDestinationList; /* interface ICustomDestinationList */ /* [unique][object][uuid] */ typedef /* [v1_enum] */ enum KNOWNDESTCATEGORY { KDC_FREQUENT = 1, KDC_RECENT = (KDC_FREQUENT + 1) } KNOWNDESTCATEGORY; EXTERN_C const IID IID_ICustomDestinationList; MIDL_INTERFACE("6332debf-87b5-4670-90c0-5e57b408a49e") ICustomDestinationList : public IUnknown { public: virtual HRESULT STDMETHODCALLTYPE SetAppID( /* [string][in] */ __RPC__in_string LPCWSTR pszAppID) = 0; virtual HRESULT STDMETHODCALLTYPE BeginList( /* [out] */ __RPC__out UINT * pcMinSlots, /* [in] */ __RPC__in REFIID riid, /* [iid_is][out] */ __RPC__deref_out_opt void** ppv) = 0; virtual HRESULT STDMETHODCALLTYPE AppendCategory( /* [string][in] */ __RPC__in_string LPCWSTR pszCategory, /* [in] */ __RPC__in_opt IObjectArray * poa) = 0; virtual HRESULT STDMETHODCALLTYPE AppendKnownCategory( /* [in] */ KNOWNDESTCATEGORY category) = 0; virtual HRESULT STDMETHODCALLTYPE AddUserTasks( /* [in] */ __RPC__in_opt IObjectArray * poa) = 0; virtual HRESULT STDMETHODCALLTYPE CommitList(void) = 0; virtual HRESULT STDMETHODCALLTYPE GetRemovedDestinations( /* [in] */ __RPC__in REFIID riid, /* [iid_is][out] */ __RPC__deref_out_opt void** ppv) = 0; virtual HRESULT STDMETHODCALLTYPE DeleteList( /* [string][unique][in] */ __RPC__in_opt_string LPCWSTR pszAppID) = 0; virtual HRESULT STDMETHODCALLTYPE AbortList(void) = 0; }; /* **************************************************************************************************** CLSID_EnumerableObjectCollection + CLSID_DestinationList **************************************************************************************************** */ EXTERN_C const CLSID CLSID_EnumerableObjectCollection; #ifdef __cplusplus class DECLSPEC_UUID("2d3468c1-36a7-43b6-ac24-d3f02fd9607a") EnumerableObjectCollection; #endif EXTERN_C const CLSID CLSID_DestinationList; #ifdef __cplusplus class DECLSPEC_UUID("77f10cf0-3db5-4966-b520-b7c54fd35ed6") DestinationList; #endif /* **************************************************************************************************** ITaskbarList3 **************************************************************************************************** */ #define DEFINE_ENUM_FLAG_OPERATORS(ENUMTYPE) \ extern "C++" { \ inline ENUMTYPE operator | (ENUMTYPE a, ENUMTYPE b) { return ENUMTYPE(((int)a) | ((int)b)); } \ inline ENUMTYPE &operator |= (ENUMTYPE &a, ENUMTYPE b) { return (ENUMTYPE &)(((int &)a) |= ((int)b)); } \ inline ENUMTYPE operator & (ENUMTYPE a, ENUMTYPE b) { return ENUMTYPE(((int)a) & ((int)b)); } \ inline ENUMTYPE &operator &= (ENUMTYPE &a, ENUMTYPE b) { return (ENUMTYPE &)(((int &)a) &= ((int)b)); } \ inline ENUMTYPE operator ~ (ENUMTYPE a) { return ENUMTYPE(~((int)a)); } \ inline ENUMTYPE operator ^ (ENUMTYPE a, ENUMTYPE b) { return ENUMTYPE(((int)a) ^ ((int)b)); } \ inline ENUMTYPE &operator ^= (ENUMTYPE &a, ENUMTYPE b) { return (ENUMTYPE &)(((int &)a) ^= ((int)b)); } \ } #ifdef MIDL_PASS typedef IUnknown* HIMAGELIST; #endif typedef /* [v1_enum] */ enum THUMBBUTTONFLAGS { THBF_ENABLED = 0, THBF_DISABLED = 0x1, THBF_DISMISSONCLICK = 0x2, THBF_NOBACKGROUND = 0x4, THBF_HIDDEN = 0x8, THBF_NONINTERACTIVE = 0x10 } THUMBBUTTONFLAGS; DEFINE_ENUM_FLAG_OPERATORS(THUMBBUTTONFLAGS) typedef /* [v1_enum] */ enum THUMBBUTTONMASK { THB_BITMAP = 0x1, THB_ICON = 0x2, THB_TOOLTIP = 0x4, THB_FLAGS = 0x8 } THUMBBUTTONMASK; DEFINE_ENUM_FLAG_OPERATORS(THUMBBUTTONMASK) #include typedef struct THUMBBUTTON { THUMBBUTTONMASK dwMask; UINT iId; UINT iBitmap; HICON hIcon; WCHAR szTip[ 260 ]; THUMBBUTTONFLAGS dwFlags; } THUMBBUTTON; typedef struct THUMBBUTTON* LPTHUMBBUTTON; #include #define THBN_CLICKED 0x1800 extern RPC_IF_HANDLE __MIDL_itf_shobjidl_0000_0093_v0_0_c_ifspec; extern RPC_IF_HANDLE __MIDL_itf_shobjidl_0000_0093_v0_0_s_ifspec; /* interface ITaskbarList3 */ /* [object][uuid] */ typedef /* [v1_enum] */ enum TBPFLAG { TBPF_NOPROGRESS = 0, TBPF_INDETERMINATE = 0x1, TBPF_NORMAL = 0x2, TBPF_ERROR = 0x4, TBPF_PAUSED = 0x8 } TBPFLAG; DEFINE_ENUM_FLAG_OPERATORS(TBPFLAG) EXTERN_C const IID IID_ITaskbarList3; MIDL_INTERFACE("ea1afb91-9e28-4b86-90e9-9e9f8a5eefaf") ITaskbarList3 : public ITaskbarList2 { public: virtual HRESULT STDMETHODCALLTYPE SetProgressValue( /* [in] */ __RPC__in HWND hwnd, /* [in] */ ULONGLONG ullCompleted, /* [in] */ ULONGLONG ullTotal) = 0; virtual HRESULT STDMETHODCALLTYPE SetProgressState( /* [in] */ __RPC__in HWND hwnd, /* [in] */ TBPFLAG tbpFlags) = 0; virtual HRESULT STDMETHODCALLTYPE RegisterTab( /* [in] */ __RPC__in HWND hwndTab, /* [in] */ __RPC__in HWND hwndMDI) = 0; virtual HRESULT STDMETHODCALLTYPE UnregisterTab( /* [in] */ __RPC__in HWND hwndTab) = 0; virtual HRESULT STDMETHODCALLTYPE SetTabOrder( /* [in] */ __RPC__in HWND hwndTab, /* [in] */ __RPC__in HWND hwndInsertBefore) = 0; virtual HRESULT STDMETHODCALLTYPE SetTabActive( /* [in] */ __RPC__in HWND hwndTab, /* [in] */ __RPC__in HWND hwndMDI, /* [in] */ DWORD dwReserved) = 0; virtual HRESULT STDMETHODCALLTYPE ThumbBarAddButtons( /* [in] */ __RPC__in HWND hwnd, /* [in] */ UINT cButtons, /* [size_is][in] */ __RPC__in_ecount_full(cButtons) LPTHUMBBUTTON pButton) = 0; virtual HRESULT STDMETHODCALLTYPE ThumbBarUpdateButtons( /* [in] */ __RPC__in HWND hwnd, /* [in] */ UINT cButtons, /* [size_is][in] */ __RPC__in_ecount_full(cButtons) LPTHUMBBUTTON pButton) = 0; virtual HRESULT STDMETHODCALLTYPE ThumbBarSetImageList( /* [in] */ __RPC__in HWND hwnd, /* [in] */ __RPC__in_opt HIMAGELIST himl) = 0; virtual HRESULT STDMETHODCALLTYPE SetOverlayIcon( /* [in] */ __RPC__in HWND hwnd, /* [in] */ __RPC__in HICON hIcon, /* [string][unique][in] */ __RPC__in_opt_string LPCWSTR pszDescription) = 0; virtual HRESULT STDMETHODCALLTYPE SetThumbnailTooltip( /* [in] */ __RPC__in HWND hwnd, /* [string][unique][in] */ __RPC__in_opt_string LPCWSTR pszTip) = 0; virtual HRESULT STDMETHODCALLTYPE SetThumbnailClip( /* [in] */ __RPC__in HWND hwnd, /* [in] */ __RPC__in RECT * prcClip) = 0; }; #endif //_MSC_VER >= 1500 && _MSC_VER < 1600 #endif // MSVC2008_H qupzilla-1.6.0/src/lib/3rdparty/processinfo.cpp000066400000000000000000000072371226107126500215350ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "processinfo.h" #ifdef QZ_WS_X11 #include #include #include #include #include #include #include #include #include #endif ProcessInfo::ProcessInfo(const QString &name) : m_name(name) { } bool ProcessInfo::isRunning() const { #ifdef QZ_WS_X11 pid_t pid = GetPIDbyName(qPrintable(m_name)); // -1 = process not found // -2 = /proc fs access error return (pid != -1 && pid != -2); #else return false; #endif } #ifdef QZ_WS_X11 bool ProcessInfo::IsNumeric(const char* ccharptr_CharacterList) const { for (; *ccharptr_CharacterList; ccharptr_CharacterList++) { if (*ccharptr_CharacterList < '0' || *ccharptr_CharacterList > '9') { return false; } } return true; } pid_t ProcessInfo::GetPIDbyName(const char* cchrptr_ProcessName) const { char chrarry_CommandLinePath[100] ; char chrarry_NameOfProcess[300] ; char* chrptr_StringToCompare = NULL ; pid_t pid_ProcessIdentifier = (pid_t) - 1 ; struct dirent* de_DirEntity = NULL ; DIR* dir_proc = NULL ; dir_proc = opendir("/proc/") ; if (dir_proc == NULL) { perror("Couldn't open the /proc/ directory") ; return (pid_t) - 2 ; } // Loop while not NULL while ((de_DirEntity = readdir(dir_proc))) { if (de_DirEntity->d_type == DT_DIR) { if (IsNumeric(de_DirEntity->d_name)) { strcpy(chrarry_CommandLinePath, "/proc/") ; strcat(chrarry_CommandLinePath, de_DirEntity->d_name) ; strcat(chrarry_CommandLinePath, "/cmdline") ; FILE* fd_CmdLineFile = fopen(chrarry_CommandLinePath, "rt") ; // open the file for reading text if (fd_CmdLineFile) { fscanf(fd_CmdLineFile, "%20s", chrarry_NameOfProcess) ; // read from /proc//cmdline fclose(fd_CmdLineFile); // close the file prior to exiting the routine if (strrchr(chrarry_NameOfProcess, '/')) { chrptr_StringToCompare = strrchr(chrarry_NameOfProcess, '/') + 1 ; } else { chrptr_StringToCompare = chrarry_NameOfProcess ; } //printf("Process name: %s\n", chrarry_NameOfProcess); //printf("Pure Process name: %s\n", chrptr_StringToCompare ); if (!strcmp(chrptr_StringToCompare, cchrptr_ProcessName)) { pid_ProcessIdentifier = (pid_t) atoi(de_DirEntity->d_name) ; closedir(dir_proc) ; return pid_ProcessIdentifier ; } } } } } closedir(dir_proc) ; return pid_ProcessIdentifier ; } #endif qupzilla-1.6.0/src/lib/3rdparty/processinfo.h000066400000000000000000000025651226107126500212010ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef PROCESSINFO_H #define PROCESSINFO_H #include #include "qz_namespace.h" /* * Code used from http://ubuntuforums.org/showpost.php?p=6593782&postcount=5 * written by user WitchCraft */ class QT_QUPZILLA_EXPORT ProcessInfo { public: explicit ProcessInfo(const QString &name); bool isRunning() const; private: #ifdef QZ_WS_X11 bool IsNumeric(const char* ccharptr_CharacterList) const; pid_t GetPIDbyName(const char* cchrptr_ProcessName) const; #endif QString m_name; }; #endif // PROCESSINFO_H qupzilla-1.6.0/src/lib/3rdparty/qftp.cpp000066400000000000000000002270251226107126500201540ustar00rootroot00000000000000/**************************************************************************** ** ** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the QtNetwork module of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ //#define QFTPPI_DEBUG //#define QFTPDTP_DEBUG #include "qftp.h" #include "qabstractsocket.h" #ifndef QT_NO_FTP #include "qcoreapplication.h" #include "qtcpsocket.h" #include "qurlinfo.h" #include "qstringlist.h" #include "qregexp.h" #include "qtimer.h" #include "qfileinfo.h" #include "qhash.h" #include "qtcpserver.h" #include "qlocale.h" QT_BEGIN_NAMESPACE class QFtpPI; /* The QFtpDTP (DTP = Data Transfer Process) controls all client side data transfer between the client and server. */ class QFtpDTP : public QObject { Q_OBJECT public: enum ConnectState { CsHostFound, CsConnected, CsClosed, CsHostNotFound, CsConnectionRefused }; QFtpDTP(QFtpPI* p, QObject* parent = 0); void setData(QByteArray*); void setDevice(QIODevice*); void writeData(); void setBytesTotal(qint64 bytes); bool hasError() const; QString errorMessage() const; void clearError(); void connectToHost(const QString &host, quint16 port); int setupListener(const QHostAddress &address); void waitForConnection(); QTcpSocket::SocketState state() const; qint64 bytesAvailable() const; qint64 read(char* data, qint64 maxlen); QByteArray readAll(); void abortConnection(); static bool parseDir(const QByteArray &buffer, const QString &userName, QUrlInfo* info); signals: void listInfo(const QUrlInfo &); void readyRead(); void dataTransferProgress(qint64, qint64); void connectState(int); private slots: void socketConnected(); void socketReadyRead(); void socketError(QAbstractSocket::SocketError); void socketConnectionClosed(); void socketBytesWritten(qint64); void setupSocket(); void dataReadyRead(); private: void clearData(); QTcpSocket* socket; QTcpServer listener; QFtpPI* pi; QString err; qint64 bytesDone; qint64 bytesTotal; bool callWriteData; // If is_ba is true, ba is used; ba is never 0. // Otherwise dev is used; dev can be 0 or not. union { QByteArray* ba; QIODevice* dev; } data; bool is_ba; QByteArray bytesFromSocket; }; /********************************************************************** * * QFtpPI - Protocol Interpreter * *********************************************************************/ class QFtpPI : public QObject { Q_OBJECT public: QFtpPI(QObject* parent = 0); void connectToHost(const QString &host, quint16 port); bool sendCommands(const QStringList &cmds); bool sendCommand(const QString &cmd) { return sendCommands(QStringList(cmd)); } void clearPendingCommands(); void abort(); QString currentCommand() const { return currentCmd; } bool rawCommand; bool transferConnectionExtended; QFtpDTP dtp; // the PI has a DTP which is not the design of RFC 959, but it // makes the design simpler this way signals: void connectState(int); void finished(const QString &); void error(int, const QString &); void rawFtpReply(int, const QString &); private slots: void hostFound(); void connected(); void connectionClosed(); void delayedCloseFinished(); void readyRead(); void error(QAbstractSocket::SocketError); void dtpConnectState(int); private: // the states are modelled after the generalized state diagram of RFC 959, // page 58 enum State { Begin, Idle, Waiting, Success, Failure }; enum AbortState { None, AbortStarted, WaitForAbortToFinish }; bool processReply(); bool startNextCmd(); QTcpSocket commandSocket; QString replyText; char replyCode[3]; State state; AbortState abortState; QStringList pendingCommands; QString currentCmd; bool waitForDtpToConnect; bool waitForDtpToClose; QByteArray bytesFromSocket; friend class QFtpDTP; }; /********************************************************************** * * QFtpCommand implemenatation * *********************************************************************/ class QFtpCommand { public: QFtpCommand(QFtp::Command cmd, QStringList raw, const QByteArray &ba); QFtpCommand(QFtp::Command cmd, QStringList raw, QIODevice* dev = 0); ~QFtpCommand(); int id; QFtp::Command command; QStringList rawCmds; // If is_ba is true, ba is used; ba is never 0. // Otherwise dev is used; dev can be 0 or not. union { QByteArray* ba; QIODevice* dev; } data; bool is_ba; static QBasicAtomicInt idCounter; }; QBasicAtomicInt QFtpCommand::idCounter = Q_BASIC_ATOMIC_INITIALIZER(1); QFtpCommand::QFtpCommand(QFtp::Command cmd, QStringList raw, const QByteArray &ba) : command(cmd), rawCmds(raw), is_ba(true) { id = idCounter.fetchAndAddRelaxed(1); data.ba = new QByteArray(ba); } QFtpCommand::QFtpCommand(QFtp::Command cmd, QStringList raw, QIODevice* dev) : command(cmd), rawCmds(raw), is_ba(false) { id = idCounter.fetchAndAddRelaxed(1); data.dev = dev; } QFtpCommand::~QFtpCommand() { if (is_ba) { delete data.ba; } } /********************************************************************** * * QFtpDTP implemenatation * *********************************************************************/ QFtpDTP::QFtpDTP(QFtpPI* p, QObject* parent) : QObject(parent), socket(0), listener(this), pi(p), callWriteData(false) { clearData(); listener.setObjectName(QLatin1String("QFtpDTP active state server")); connect(&listener, SIGNAL(newConnection()), SLOT(setupSocket())); } void QFtpDTP::setData(QByteArray* ba) { is_ba = true; data.ba = ba; } void QFtpDTP::setDevice(QIODevice* dev) { is_ba = false; data.dev = dev; } void QFtpDTP::setBytesTotal(qint64 bytes) { bytesTotal = bytes; bytesDone = 0; emit dataTransferProgress(bytesDone, bytesTotal); } void QFtpDTP::connectToHost(const QString &host, quint16 port) { bytesFromSocket.clear(); if (socket) { delete socket; socket = 0; } socket = new QTcpSocket(this); #ifndef QT_NO_BEARERMANAGEMENT //copy network session down to the socket socket->setProperty("_q_networksession", property("_q_networksession")); #endif socket->setObjectName(QLatin1String("QFtpDTP Passive state socket")); connect(socket, SIGNAL(connected()), SLOT(socketConnected())); connect(socket, SIGNAL(readyRead()), SLOT(socketReadyRead())); connect(socket, SIGNAL(error(QAbstractSocket::SocketError)), SLOT(socketError(QAbstractSocket::SocketError))); connect(socket, SIGNAL(disconnected()), SLOT(socketConnectionClosed())); connect(socket, SIGNAL(bytesWritten(qint64)), SLOT(socketBytesWritten(qint64))); socket->connectToHost(host, port); } int QFtpDTP::setupListener(const QHostAddress &address) { #ifndef QT_NO_BEARERMANAGEMENT //copy network session down to the socket listener.setProperty("_q_networksession", property("_q_networksession")); #endif if (!listener.isListening() && !listener.listen(address, 0)) { return -1; } return listener.serverPort(); } void QFtpDTP::waitForConnection() { // This function is only interesting in Active transfer mode; it works // around a limitation in QFtp's design by blocking, waiting for an // incoming connection. For the default Passive mode, it does nothing. if (listener.isListening()) { listener.waitForNewConnection(); } } QTcpSocket::SocketState QFtpDTP::state() const { return socket ? socket->state() : QTcpSocket::UnconnectedState; } qint64 QFtpDTP::bytesAvailable() const { if (!socket || socket->state() != QTcpSocket::ConnectedState) { return (qint64) bytesFromSocket.size(); } return socket->bytesAvailable(); } qint64 QFtpDTP::read(char* data, qint64 maxlen) { qint64 read; if (socket && socket->state() == QTcpSocket::ConnectedState) { read = socket->read(data, maxlen); } else { read = qMin(maxlen, qint64(bytesFromSocket.size())); memcpy(data, bytesFromSocket.data(), read); bytesFromSocket.remove(0, read); } bytesDone += read; return read; } QByteArray QFtpDTP::readAll() { QByteArray tmp; if (socket && socket->state() == QTcpSocket::ConnectedState) { tmp = socket->readAll(); bytesDone += tmp.size(); } else { tmp = bytesFromSocket; bytesFromSocket.clear(); } return tmp; } void QFtpDTP::writeData() { if (!socket) { return; } if (is_ba) { #if defined(QFTPDTP_DEBUG) qDebug("QFtpDTP::writeData: write %d bytes", data.ba->size()); #endif if (data.ba->size() == 0) { emit dataTransferProgress(0, bytesTotal); } else { socket->write(data.ba->data(), data.ba->size()); } socket->close(); clearData(); } else if (data.dev) { callWriteData = false; const qint64 blockSize = 16 * 1024; char buf[16 * 1024]; qint64 read = data.dev->read(buf, blockSize); #if defined(QFTPDTP_DEBUG) qDebug("QFtpDTP::writeData: write() of size %lli bytes", read); #endif if (read > 0) { socket->write(buf, read); } else if (read == -1 || (!data.dev->isSequential() && data.dev->atEnd())) { // error or EOF if (bytesDone == 0 && socket->bytesToWrite() == 0) { emit dataTransferProgress(0, bytesTotal); } socket->close(); clearData(); } // do we continue uploading? callWriteData = data.dev != 0; } } void QFtpDTP::dataReadyRead() { writeData(); } inline bool QFtpDTP::hasError() const { return !err.isNull(); } inline QString QFtpDTP::errorMessage() const { return err; } inline void QFtpDTP::clearError() { err.clear(); } void QFtpDTP::abortConnection() { #if defined(QFTPDTP_DEBUG) qDebug("QFtpDTP::abortConnection, bytesAvailable == %lli", socket ? socket->bytesAvailable() : (qint64) 0); #endif callWriteData = false; clearData(); if (socket) { socket->abort(); } } static void _q_fixupDateTime(QDateTime* dateTime) { // Adjust for future tolerance. const int futureTolerance = 86400; if (dateTime->secsTo(QDateTime::currentDateTime()) < -futureTolerance) { QDate d = dateTime->date(); d.setDate(d.year() - 1, d.month(), d.day()); dateTime->setDate(d); } } static void _q_parseUnixDir(const QStringList &tokens, const QString &userName, QUrlInfo* info) { // Unix style, 7 + 1 entries // -rw-r--r-- 1 ftp ftp 17358091 Aug 10 2004 qt-x11-free-3.3.3.tar.gz // drwxr-xr-x 3 ftp ftp 4096 Apr 14 2000 compiled-examples // lrwxrwxrwx 1 ftp ftp 9 Oct 29 2005 qtscape -> qtmozilla if (tokens.size() != 8) { return; } char first = tokens.at(1).at(0).toLatin1(); if (first == 'd') { info->setDir(true); info->setFile(false); info->setSymLink(false); } else if (first == '-') { info->setDir(false); info->setFile(true); info->setSymLink(false); } else if (first == 'l') { info->setDir(true); info->setFile(false); info->setSymLink(true); } // Resolve filename QString name = tokens.at(7); if (info->isSymLink()) { int linkPos = name.indexOf(QLatin1String(" ->")); if (linkPos != -1) { name.resize(linkPos); } } info->setName(name); // Resolve owner & group info->setOwner(tokens.at(3)); info->setGroup(tokens.at(4)); // Resolve size info->setSize(tokens.at(5).toLongLong()); QStringList formats; formats << QLatin1String("MMM dd yyyy") << QLatin1String("MMM dd hh:mm") << QLatin1String("MMM d yyyy") << QLatin1String("MMM d hh:mm") << QLatin1String("MMM d yyyy") << QLatin1String("MMM dd yyyy"); QString dateString = tokens.at(6); dateString[0] = dateString[0].toUpper(); // Resolve the modification date by parsing all possible formats QDateTime dateTime; int n = 0; #ifndef QT_NO_DATESTRING do { dateTime = QLocale::c().toDateTime(dateString, formats.at(n++)); } while (n < formats.size() && (!dateTime.isValid())); #endif if (n == 2 || n == 4) { // Guess the year. dateTime.setDate(QDate(QDate::currentDate().year(), dateTime.date().month(), dateTime.date().day())); _q_fixupDateTime(&dateTime); } if (dateTime.isValid()) { info->setLastModified(dateTime); } // Resolve permissions int permissions = 0; QString p = tokens.at(2); permissions |= (p[0] == QLatin1Char('r') ? QUrlInfo::ReadOwner : 0); permissions |= (p[1] == QLatin1Char('w') ? QUrlInfo::WriteOwner : 0); permissions |= (p[2] == QLatin1Char('x') ? QUrlInfo::ExeOwner : 0); permissions |= (p[3] == QLatin1Char('r') ? QUrlInfo::ReadGroup : 0); permissions |= (p[4] == QLatin1Char('w') ? QUrlInfo::WriteGroup : 0); permissions |= (p[5] == QLatin1Char('x') ? QUrlInfo::ExeGroup : 0); permissions |= (p[6] == QLatin1Char('r') ? QUrlInfo::ReadOther : 0); permissions |= (p[7] == QLatin1Char('w') ? QUrlInfo::WriteOther : 0); permissions |= (p[8] == QLatin1Char('x') ? QUrlInfo::ExeOther : 0); info->setPermissions(permissions); bool isOwner = info->owner() == userName; info->setReadable((permissions & QUrlInfo::ReadOther) || ((permissions & QUrlInfo::ReadOwner) && isOwner)); info->setWritable((permissions & QUrlInfo::WriteOther) || ((permissions & QUrlInfo::WriteOwner) && isOwner)); } static void _q_parseDosDir(const QStringList &tokens, const QString &userName, QUrlInfo* info) { // DOS style, 3 + 1 entries // 01-16-02 11:14AM

epsgroup // 06-05-03 03:19PM 1973 readme.txt if (tokens.size() != 4) { return; } Q_UNUSED(userName); QString name = tokens.at(3); info->setName(name); info->setSymLink(name.toLower().endsWith(QLatin1String(".lnk"))); if (tokens.at(2) == QLatin1String("")) { info->setFile(false); info->setDir(true); } else { info->setFile(true); info->setDir(false); info->setSize(tokens.at(2).toLongLong()); } // Note: We cannot use QFileInfo; permissions are for the server-side // machine, and QFileInfo's behavior depends on the local platform. int permissions = QUrlInfo::ReadOwner | QUrlInfo::WriteOwner | QUrlInfo::ReadGroup | QUrlInfo::WriteGroup | QUrlInfo::ReadOther | QUrlInfo::WriteOther; QString ext; int extIndex = name.lastIndexOf(QLatin1Char('.')); if (extIndex != -1) { ext = name.mid(extIndex + 1); } if (ext == QLatin1String("exe") || ext == QLatin1String("bat") || ext == QLatin1String("com")) { permissions |= QUrlInfo::ExeOwner | QUrlInfo::ExeGroup | QUrlInfo::ExeOther; } info->setPermissions(permissions); info->setReadable(true); info->setWritable(info->isFile()); QDateTime dateTime; #ifndef QT_NO_DATESTRING dateTime = QLocale::c().toDateTime(tokens.at(1), QLatin1String("MM-dd-yy hh:mmAP")); if (dateTime.date().year() < 1971) { dateTime.setDate(QDate(dateTime.date().year() + 100, dateTime.date().month(), dateTime.date().day())); } #endif info->setLastModified(dateTime); } bool QFtpDTP::parseDir(const QByteArray &buffer, const QString &userName, QUrlInfo* info) { if (buffer.isEmpty()) { return false; } QString bufferStr = QString::fromLatin1(buffer).trimmed(); // Unix style FTP servers QRegExp unixPattern(QLatin1String("^([\\-dl])([a-zA-Z\\-]{9,9})\\s+\\d+\\s+(\\S*)\\s+" "(\\S*)\\s+(\\d+)\\s+(\\S+\\s+\\S+\\s+\\S+)\\s+(\\S.*)")); if (unixPattern.indexIn(bufferStr) == 0) { _q_parseUnixDir(unixPattern.capturedTexts(), userName, info); return true; } // DOS style FTP servers QRegExp dosPattern(QLatin1String("^(\\d\\d-\\d\\d-\\d\\d\\ \\ \\d\\d:\\d\\d[AP]M)\\s+" "(|\\d+)\\s+(\\S.*)$")); if (dosPattern.indexIn(bufferStr) == 0) { _q_parseDosDir(dosPattern.capturedTexts(), userName, info); return true; } // Unsupported return false; } void QFtpDTP::socketConnected() { bytesDone = 0; #if defined(QFTPDTP_DEBUG) qDebug("QFtpDTP::connectState(CsConnected)"); #endif emit connectState(QFtpDTP::CsConnected); } void QFtpDTP::socketReadyRead() { if (!socket) { return; } if (pi->currentCommand().isEmpty()) { socket->close(); #if defined(QFTPDTP_DEBUG) qDebug("QFtpDTP::connectState(CsClosed)"); #endif emit connectState(QFtpDTP::CsClosed); return; } if (pi->abortState == QFtpPI::AbortStarted) { // discard data socket->readAll(); return; } if (pi->currentCommand().startsWith(QLatin1String("LIST"))) { while (socket->canReadLine()) { QUrlInfo i; QByteArray line = socket->readLine(); #if defined(QFTPDTP_DEBUG) qDebug("QFtpDTP read (list): '%s'", line.constData()); #endif if (parseDir(line, QLatin1String(""), &i)) { emit listInfo(i); } else { // some FTP servers don't return a 550 if the file or directory // does not exist, but rather write a text to the data socket // -- try to catch these cases if (line.endsWith("No such file or directory\r\n")) { err = QString::fromLatin1(line); } } } } else { if (!is_ba && data.dev) { do { QByteArray ba; ba.resize(socket->bytesAvailable()); qint64 bytesRead = socket->read(ba.data(), ba.size()); if (bytesRead < 0) { // a read following a readyRead() signal will // never fail. return; } ba.resize(bytesRead); bytesDone += bytesRead; #if defined(QFTPDTP_DEBUG) qDebug("QFtpDTP read: %lli bytes (total %lli bytes)", bytesRead, bytesDone); #endif if (data.dev) { // make sure it wasn't deleted in the slot data.dev->write(ba); } emit dataTransferProgress(bytesDone, bytesTotal); // Need to loop; dataTransferProgress is often connected to // slots that update the GUI (e.g., progress bar values), and // if events are processed, more data may have arrived. } while (socket->bytesAvailable()); } else { #if defined(QFTPDTP_DEBUG) qDebug("QFtpDTP readyRead: %lli bytes available (total %lli bytes read)", bytesAvailable(), bytesDone); #endif emit dataTransferProgress(bytesDone + socket->bytesAvailable(), bytesTotal); emit readyRead(); } } } void QFtpDTP::socketError(QAbstractSocket::SocketError e) { if (e == QTcpSocket::HostNotFoundError) { #if defined(QFTPDTP_DEBUG) qDebug("QFtpDTP::connectState(CsHostNotFound)"); #endif emit connectState(QFtpDTP::CsHostNotFound); } else if (e == QTcpSocket::ConnectionRefusedError) { #if defined(QFTPDTP_DEBUG) qDebug("QFtpDTP::connectState(CsConnectionRefused)"); #endif emit connectState(QFtpDTP::CsConnectionRefused); } } void QFtpDTP::socketConnectionClosed() { if (!is_ba && data.dev) { clearData(); } bytesFromSocket = socket->readAll(); #if defined(QFTPDTP_DEBUG) qDebug("QFtpDTP::connectState(CsClosed)"); #endif emit connectState(QFtpDTP::CsClosed); } void QFtpDTP::socketBytesWritten(qint64 bytes) { bytesDone += bytes; #if defined(QFTPDTP_DEBUG) qDebug("QFtpDTP::bytesWritten(%lli)", bytesDone); #endif emit dataTransferProgress(bytesDone, bytesTotal); if (callWriteData) { writeData(); } } void QFtpDTP::setupSocket() { socket = listener.nextPendingConnection(); socket->setObjectName(QLatin1String("QFtpDTP Active state socket")); connect(socket, SIGNAL(connected()), SLOT(socketConnected())); connect(socket, SIGNAL(readyRead()), SLOT(socketReadyRead())); connect(socket, SIGNAL(error(QAbstractSocket::SocketError)), SLOT(socketError(QAbstractSocket::SocketError))); connect(socket, SIGNAL(disconnected()), SLOT(socketConnectionClosed())); connect(socket, SIGNAL(bytesWritten(qint64)), SLOT(socketBytesWritten(qint64))); listener.close(); } void QFtpDTP::clearData() { is_ba = false; data.dev = 0; } /********************************************************************** * * QFtpPI implemenatation * *********************************************************************/ QFtpPI::QFtpPI(QObject* parent) : QObject(parent), rawCommand(false), transferConnectionExtended(true), dtp(this), commandSocket(0), state(Begin), abortState(None), currentCmd(QString()), waitForDtpToConnect(false), waitForDtpToClose(false) { commandSocket.setObjectName(QLatin1String("QFtpPI_socket")); connect(&commandSocket, SIGNAL(hostFound()), SLOT(hostFound())); connect(&commandSocket, SIGNAL(connected()), SLOT(connected())); connect(&commandSocket, SIGNAL(disconnected()), SLOT(connectionClosed())); connect(&commandSocket, SIGNAL(readyRead()), SLOT(readyRead())); connect(&commandSocket, SIGNAL(error(QAbstractSocket::SocketError)), SLOT(error(QAbstractSocket::SocketError))); connect(&dtp, SIGNAL(connectState(int)), SLOT(dtpConnectState(int))); } void QFtpPI::connectToHost(const QString &host, quint16 port) { emit connectState(QFtp::HostLookup); #ifndef QT_NO_BEARERMANAGEMENT //copy network session down to the socket & DTP commandSocket.setProperty("_q_networksession", property("_q_networksession")); dtp.setProperty("_q_networksession", property("_q_networksession")); #endif commandSocket.connectToHost(host, port); } /* Sends the sequence of commands \a cmds to the FTP server. When the commands are all done the finished() signal is emitted. When an error occurs, the error() signal is emitted. If there are pending commands in the queue this functions returns false and the \a cmds are not added to the queue; otherwise it returns true. */ bool QFtpPI::sendCommands(const QStringList &cmds) { if (!pendingCommands.isEmpty()) { return false; } if (commandSocket.state() != QTcpSocket::ConnectedState || state != Idle) { emit error(QFtp::NotConnected, QFtp::tr("Not connected")); return true; // there are no pending commands } pendingCommands = cmds; startNextCmd(); return true; } void QFtpPI::clearPendingCommands() { pendingCommands.clear(); dtp.abortConnection(); currentCmd.clear(); state = Idle; } void QFtpPI::abort() { pendingCommands.clear(); if (abortState != None) // ABOR already sent { return; } abortState = AbortStarted; #if defined(QFTPPI_DEBUG) qDebug("QFtpPI send: ABOR"); #endif commandSocket.write("ABOR\r\n", 6); if (currentCmd.startsWith(QLatin1String("STOR "))) { dtp.abortConnection(); } } void QFtpPI::hostFound() { emit connectState(QFtp::Connecting); } void QFtpPI::connected() { state = Begin; #if defined(QFTPPI_DEBUG) // qDebug("QFtpPI state: %d [connected()]", state); #endif // try to improve performance by setting TCP_NODELAY commandSocket.setSocketOption(QAbstractSocket::LowDelayOption, 1); emit connectState(QFtp::Connected); } void QFtpPI::connectionClosed() { commandSocket.close(); emit connectState(QFtp::Unconnected); } void QFtpPI::delayedCloseFinished() { emit connectState(QFtp::Unconnected); } void QFtpPI::error(QAbstractSocket::SocketError e) { if (e == QTcpSocket::HostNotFoundError) { emit connectState(QFtp::Unconnected); emit error(QFtp::HostNotFound, QFtp::tr("Host %1 not found").arg(commandSocket.peerName())); } else if (e == QTcpSocket::ConnectionRefusedError) { emit connectState(QFtp::Unconnected); emit error(QFtp::ConnectionRefused, QFtp::tr("Connection refused to host %1").arg(commandSocket.peerName())); } else if (e == QTcpSocket::SocketTimeoutError) { emit connectState(QFtp::Unconnected); emit error(QFtp::ConnectionRefused, QFtp::tr("Connection timed out to host %1").arg(commandSocket.peerName())); } } void QFtpPI::readyRead() { if (waitForDtpToClose) { return; } while (commandSocket.canReadLine()) { // read line with respect to line continuation QString line = QString::fromLatin1(commandSocket.readLine()); if (replyText.isEmpty()) { if (line.length() < 3) { // protocol error return; } const int lowerLimit[3] = {1, 0, 0}; const int upperLimit[3] = {5, 5, 9}; for (int i = 0; i < 3; i++) { replyCode[i] = line[i].digitValue(); if (replyCode[i] < lowerLimit[i] || replyCode[i] > upperLimit[i]) { // protocol error return; } } } QString endOfMultiLine; endOfMultiLine[0] = '0' + replyCode[0]; endOfMultiLine[1] = '0' + replyCode[1]; endOfMultiLine[2] = '0' + replyCode[2]; endOfMultiLine[3] = QLatin1Char(' '); QString lineCont(endOfMultiLine); lineCont[3] = QLatin1Char('-'); QString lineLeft4 = line.left(4); while (lineLeft4 != endOfMultiLine) { if (lineLeft4 == lineCont) { replyText += line.mid(4); // strip 'xyz-' } else { replyText += line; } if (!commandSocket.canReadLine()) { return; } line = QString::fromLatin1(commandSocket.readLine()); lineLeft4 = line.left(4); } replyText += line.mid(4); // strip reply code 'xyz ' if (replyText.endsWith(QLatin1String("\r\n"))) { replyText.chop(2); } if (processReply()) { replyText = QLatin1String(""); } } } /* Process a reply from the FTP server. Returns true if the reply was processed or false if the reply has to be processed at a later point. */ bool QFtpPI::processReply() { #if defined(QFTPPI_DEBUG) // qDebug("QFtpPI state: %d [processReply() begin]", state); if (replyText.length() < 400) { qDebug("QFtpPI recv: %d %s", 100 * replyCode[0] + 10 * replyCode[1] + replyCode[2], replyText.toLatin1().constData()); } else { qDebug("QFtpPI recv: %d (text skipped)", 100 * replyCode[0] + 10 * replyCode[1] + replyCode[2]); } #endif int replyCodeInt = 100 * replyCode[0] + 10 * replyCode[1] + replyCode[2]; // process 226 replies ("Closing Data Connection") only when the data // connection is really closed to avoid short reads of the DTP if (replyCodeInt == 226 || (replyCodeInt == 250 && currentCmd.startsWith(QLatin1String("RETR")))) { if (dtp.state() != QTcpSocket::UnconnectedState) { waitForDtpToClose = true; return false; } } switch (abortState) { case AbortStarted: abortState = WaitForAbortToFinish; break; case WaitForAbortToFinish: abortState = None; return true; default: break; } // get new state static const State table[5] = { /* 1yz 2yz 3yz 4yz 5yz */ Waiting, Success, Idle, Failure, Failure }; switch (state) { case Begin: if (replyCode[0] == 1) { return true; } else if (replyCode[0] == 2) { state = Idle; emit finished(QFtp::tr("Connected to host %1").arg(commandSocket.peerName())); break; } // reply codes not starting with 1 or 2 are not handled. return true; case Waiting: if (static_cast(replyCode[0]) < 0 || replyCode[0] > 5) { state = Failure; } else #if defined(Q_OS_IRIX) && defined(Q_CC_GNU) { // work around a crash on 64 bit gcc IRIX State* t = (State*) table; state = t[replyCode[0] - 1]; } #else if (replyCodeInt == 202) { state = Failure; } else { state = table[replyCode[0] - 1]; } #endif break; default: // ignore unrequested message return true; } #if defined(QFTPPI_DEBUG) // qDebug("QFtpPI state: %d [processReply() intermediate]", state); #endif // special actions on certain replies emit rawFtpReply(replyCodeInt, replyText); if (rawCommand) { rawCommand = false; } else if (replyCodeInt == 227) { // 227 Entering Passive Mode (h1,h2,h3,h4,p1,p2) // rfc959 does not define this response precisely, and gives // both examples where the parenthesis are used, and where // they are missing. We need to scan for the address and host // info. QRegExp addrPortPattern(QLatin1String("(\\d+),(\\d+),(\\d+),(\\d+),(\\d+),(\\d+)")); if (addrPortPattern.indexIn(replyText) == -1) { #if defined(QFTPPI_DEBUG) qDebug("QFtp: bad 227 response -- address and port information missing"); #endif // this error should be reported } else { QStringList lst = addrPortPattern.capturedTexts(); QString host = lst[1] + QLatin1Char('.') + lst[2] + QLatin1Char('.') + lst[3] + QLatin1Char('.') + lst[4]; quint16 port = (lst[5].toUInt() << 8) + lst[6].toUInt(); waitForDtpToConnect = true; dtp.connectToHost(host, port); } } else if (replyCodeInt == 229) { // 229 Extended Passive mode OK (|||10982|) int portPos = replyText.indexOf(QLatin1Char('(')); if (portPos == -1) { #if defined(QFTPPI_DEBUG) qDebug("QFtp: bad 229 response -- port information missing"); #endif // this error should be reported } else { ++portPos; QChar delimiter = replyText.at(portPos); QStringList epsvParameters = replyText.mid(portPos).split(delimiter); waitForDtpToConnect = true; dtp.connectToHost(commandSocket.peerAddress().toString(), epsvParameters.at(3).toInt()); } } else if (replyCodeInt == 230) { if (currentCmd.startsWith(QLatin1String("USER ")) && pendingCommands.count() > 0 && pendingCommands.first().startsWith(QLatin1String("PASS "))) { // no need to send the PASS -- we are already logged in pendingCommands.pop_front(); } // 230 User logged in, proceed. emit connectState(QFtp::LoggedIn); } else if (replyCodeInt == 213) { // 213 File status. if (currentCmd.startsWith(QLatin1String("SIZE "))) { dtp.setBytesTotal(replyText.simplified().toLongLong()); } } else if (replyCode[0] == 1 && currentCmd.startsWith(QLatin1String("STOR "))) { dtp.waitForConnection(); dtp.writeData(); } // react on new state switch (state) { case Begin: // should never happen break; case Success: // success handling state = Idle; // no break! case Idle: if (dtp.hasError()) { emit error(QFtp::UnknownError, dtp.errorMessage()); dtp.clearError(); } startNextCmd(); break; case Waiting: // do nothing break; case Failure: // If the EPSV or EPRT commands fail, replace them with // the old PASV and PORT instead and try again. if (currentCmd.startsWith(QLatin1String("EPSV"))) { transferConnectionExtended = false; pendingCommands.prepend(QLatin1String("PASV\r\n")); } else if (currentCmd.startsWith(QLatin1String("EPRT"))) { transferConnectionExtended = false; pendingCommands.prepend(QLatin1String("PORT\r\n")); } else { emit error(QFtp::UnknownError, replyText); } if (state != Waiting) { state = Idle; startNextCmd(); } break; } #if defined(QFTPPI_DEBUG) // qDebug("QFtpPI state: %d [processReply() end]", state); #endif return true; } /* Starts next pending command. Returns false if there are no pending commands, otherwise it returns true. */ bool QFtpPI::startNextCmd() { if (waitForDtpToConnect) // don't process any new commands until we are connected { return true; } #if defined(QFTPPI_DEBUG) if (state != Idle) { qDebug("QFtpPI startNextCmd: Internal error! QFtpPI called in non-Idle state %d", state); } #endif if (pendingCommands.isEmpty()) { currentCmd.clear(); emit finished(replyText); return false; } currentCmd = pendingCommands.first(); // PORT and PASV are edited in-place, depending on whether we // should try the extended transfer connection commands EPRT and // EPSV. The PORT command also triggers setting up a listener, and // the address/port arguments are edited in. QHostAddress address = commandSocket.localAddress(); if (currentCmd.startsWith(QLatin1String("PORT"))) { if ((address.protocol() == QTcpSocket::IPv6Protocol) && transferConnectionExtended) { int port = dtp.setupListener(address); currentCmd = QLatin1String("EPRT |"); currentCmd += (address.protocol() == QTcpSocket::IPv4Protocol) ? QLatin1Char('1') : QLatin1Char('2'); currentCmd += QLatin1Char('|') + address.toString() + QLatin1Char('|') + QString::number(port); currentCmd += QLatin1Char('|'); } else if (address.protocol() == QTcpSocket::IPv4Protocol) { int port = dtp.setupListener(address); QString portArg; quint32 ip = address.toIPv4Address(); portArg += QString::number((ip & 0xff000000) >> 24); portArg += QLatin1Char(',') + QString::number((ip & 0xff0000) >> 16); portArg += QLatin1Char(',') + QString::number((ip & 0xff00) >> 8); portArg += QLatin1Char(',') + QString::number(ip & 0xff); portArg += QLatin1Char(',') + QString::number((port & 0xff00) >> 8); portArg += QLatin1Char(',') + QString::number(port & 0xff); currentCmd = QLatin1String("PORT "); currentCmd += portArg; } else { // No IPv6 connection can be set up with the PORT // command. return false; } currentCmd += QLatin1String("\r\n"); } else if (currentCmd.startsWith(QLatin1String("PASV"))) { if ((address.protocol() == QTcpSocket::IPv6Protocol) && transferConnectionExtended) { currentCmd = QLatin1String("EPSV\r\n"); } } pendingCommands.pop_front(); #if defined(QFTPPI_DEBUG) qDebug("QFtpPI send: %s", currentCmd.left(currentCmd.length() - 2).toLatin1().constData()); #endif state = Waiting; commandSocket.write(currentCmd.toLatin1()); return true; } void QFtpPI::dtpConnectState(int s) { switch (s) { case QFtpDTP::CsClosed: if (waitForDtpToClose) { // there is an unprocessed reply if (processReply()) { replyText = QLatin1String(""); } else { return; } } waitForDtpToClose = false; readyRead(); return; case QFtpDTP::CsConnected: waitForDtpToConnect = false; startNextCmd(); return; case QFtpDTP::CsHostNotFound: case QFtpDTP::CsConnectionRefused: emit error(QFtp::ConnectionRefused, QFtp::tr("Connection refused for data connection")); startNextCmd(); return; default: return; } } /********************************************************************** * * QFtpPrivate * *********************************************************************/ class QFtpPrivate { Q_DECLARE_PUBLIC(QFtp) public: inline QFtpPrivate(QFtp* owner) : close_waitForStateChange(false), state(QFtp::Unconnected), transferMode(QFtp::Passive), error(QFtp::NoError), q_ptr(owner) { } ~QFtpPrivate() { while (!pending.isEmpty()) { delete pending.takeFirst(); } } // private slots void _q_startNextCommand(); void _q_piFinished(const QString &); void _q_piError(int, const QString &); void _q_piConnectState(int); void _q_piFtpReply(int, const QString &); int addCommand(QFtpCommand* cmd); QFtpPI pi; QList pending; bool close_waitForStateChange; QFtp::State state; QFtp::TransferMode transferMode; QFtp::Error error; QString errorString; QString host; quint16 port; QString proxyHost; quint16 proxyPort; QFtp* q_ptr; }; int QFtpPrivate::addCommand(QFtpCommand* cmd) { pending.append(cmd); if (pending.count() == 1) { // don't emit the commandStarted() signal before the ID is returned QTimer::singleShot(0, q_func(), SLOT(_q_startNextCommand())); } return cmd->id; } /********************************************************************** * * QFtp implementation * *********************************************************************/ /*! \class QFtp \brief The QFtp class provides an implementation of the client side of FTP protocol. \ingroup network \inmodule QtNetwork This class provides a direct interface to FTP that allows you to have more control over the requests. However, for new applications, it is recommended to use QNetworkAccessManager and QNetworkReply, as those classes possess a simpler, yet more powerful API. The class works asynchronously, so there are no blocking functions. If an operation cannot be executed immediately, the function will still return straight away and the operation will be scheduled for later execution. The results of scheduled operations are reported via signals. This approach depends on the event loop being in operation. The operations that can be scheduled (they are called "commands" in the rest of the documentation) are the following: connectToHost(), login(), close(), list(), cd(), get(), put(), remove(), mkdir(), rmdir(), rename() and rawCommand(). All of these commands return a unique identifier that allows you to keep track of the command that is currently being executed. When the execution of a command starts, the commandStarted() signal with the command's identifier is emitted. When the command is finished, the commandFinished() signal is emitted with the command's identifier and a bool that indicates whether the command finished with an error. In some cases, you might want to execute a sequence of commands, e.g. if you want to connect and login to a FTP server. This is simply achieved: \snippet doc/src/snippets/code/src_network_access_qftp.cpp 0 In this case two FTP commands have been scheduled. When the last scheduled command has finished, a done() signal is emitted with a bool argument that tells you whether the sequence finished with an error. If an error occurs during the execution of one of the commands in a sequence of commands, all the pending commands (i.e. scheduled, but not yet executed commands) are cleared and no signals are emitted for them. Some commands, e.g. list(), emit additional signals to report their results. Example: If you want to download the INSTALL file from the Qt FTP server, you would write this: \snippet doc/src/snippets/code/src_network_access_qftp.cpp 1 For this example the following sequence of signals is emitted (with small variations, depending on network traffic, etc.): \snippet doc/src/snippets/code/src_network_access_qftp.cpp 2 The dataTransferProgress() signal in the above example is useful if you want to show a \link QProgressBar progress bar \endlink to inform the user about the progress of the download. The readyRead() signal tells you that there is data ready to be read. The amount of data can be queried then with the bytesAvailable() function and it can be read with the read() or readAll() function. If the login fails for the above example, the signals would look like this: \snippet doc/src/snippets/code/src_network_access_qftp.cpp 3 You can then get details about the error with the error() and errorString() functions. For file transfer, QFtp can use both active or passive mode, and it uses passive file transfer mode by default; see the documentation for setTransferMode() for more details about this. Call setProxy() to make QFtp connect via an FTP proxy server. The functions currentId() and currentCommand() provide more information about the currently executing command. The functions hasPendingCommands() and clearPendingCommands() allow you to query and clear the list of pending commands. If you are an experienced network programmer and want to have complete control you can use rawCommand() to execute arbitrary FTP commands. \warning The current version of QFtp doesn't fully support non-Unix FTP servers. \sa QNetworkAccessManager, QNetworkRequest, QNetworkReply, {FTP Example} */ /*! Constructs a QFtp object with the given \a parent. */ QFtp::QFtp(QObject* parent) : QObject(parent), d(new QFtpPrivate(this)) { d->errorString = tr("Unknown error"); connect(&d->pi, SIGNAL(connectState(int)), SLOT(_q_piConnectState(int))); connect(&d->pi, SIGNAL(finished(QString)), SLOT(_q_piFinished(QString))); connect(&d->pi, SIGNAL(error(int,QString)), SLOT(_q_piError(int,QString))); connect(&d->pi, SIGNAL(rawFtpReply(int,QString)), SLOT(_q_piFtpReply(int,QString))); connect(&d->pi.dtp, SIGNAL(readyRead()), SIGNAL(readyRead())); connect(&d->pi.dtp, SIGNAL(dataTransferProgress(qint64,qint64)), SIGNAL(dataTransferProgress(qint64,qint64))); connect(&d->pi.dtp, SIGNAL(listInfo(QUrlInfo)), SIGNAL(listInfo(QUrlInfo))); } /*! \enum QFtp::State This enum defines the connection state: \value Unconnected There is no connection to the host. \value HostLookup A host name lookup is in progress. \value Connecting An attempt to connect to the host is in progress. \value Connected Connection to the host has been achieved. \value LoggedIn Connection and user login have been achieved. \value Closing The connection is closing down, but it is not yet closed. (The state will be \c Unconnected when the connection is closed.) \sa stateChanged() state() */ /*! \enum QFtp::TransferMode FTP works with two socket connections; one for commands and another for transmitting data. While the command connection is always initiated by the client, the second connection can be initiated by either the client or the server. This enum defines whether the client (Passive mode) or the server (Active mode) should set up the data connection. \value Passive The client connects to the server to transmit its data. \value Active The server connects to the client to transmit its data. */ /*! \enum QFtp::TransferType This enum identifies the data transfer type used with get and put commands. \value Binary The data will be transferred in Binary mode. \value Ascii The data will be transferred in Ascii mode and new line characters will be converted to the local format. */ /*! \enum QFtp::Error This enum identifies the error that occurred. \value NoError No error occurred. \value HostNotFound The host name lookup failed. \value ConnectionRefused The server refused the connection. \value NotConnected Tried to send a command, but there is no connection to a server. \value UnknownError An error other than those specified above occurred. \sa error() */ /*! \enum QFtp::Command This enum is used as the return value for the currentCommand() function. This allows you to perform specific actions for particular commands, e.g. in a FTP client, you might want to clear the directory view when a list() command is started; in this case you can simply check in the slot connected to the start() signal if the currentCommand() is \c List. \value None No command is being executed. \value SetTransferMode set the \link TransferMode transfer\endlink mode. \value SetProxy switch proxying on or off. \value ConnectToHost connectToHost() is being executed. \value Login login() is being executed. \value Close close() is being executed. \value List list() is being executed. \value Cd cd() is being executed. \value Get get() is being executed. \value Put put() is being executed. \value Remove remove() is being executed. \value Mkdir mkdir() is being executed. \value Rmdir rmdir() is being executed. \value Rename rename() is being executed. \value RawCommand rawCommand() is being executed. \sa currentCommand() */ /*! \fn void QFtp::stateChanged(int state) This signal is emitted when the state of the connection changes. The argument \a state is the new state of the connection; it is one of the \l State values. It is usually emitted in response to a connectToHost() or close() command, but it can also be emitted "spontaneously", e.g. when the server closes the connection unexpectedly. \sa connectToHost() close() state() State */ /*! \fn void QFtp::listInfo(const QUrlInfo &i); This signal is emitted for each directory entry the list() command finds. The details of the entry are stored in \a i. \sa list() */ /*! \fn void QFtp::commandStarted(int id) This signal is emitted when processing the command identified by \a id starts. \sa commandFinished() done() */ /*! \fn void QFtp::commandFinished(int id, bool error) This signal is emitted when processing the command identified by \a id has finished. \a error is true if an error occurred during the processing; otherwise \a error is false. \sa commandStarted() done() error() errorString() */ /*! \fn void QFtp::done(bool error) This signal is emitted when the last pending command has finished; (it is emitted after the last command's commandFinished() signal). \a error is true if an error occurred during the processing; otherwise \a error is false. \sa commandFinished() error() errorString() */ /*! \fn void QFtp::readyRead() This signal is emitted in response to a get() command when there is new data to read. If you specify a device as the second argument in the get() command, this signal is \e not emitted; instead the data is written directly to the device. You can read the data with the readAll() or read() functions. This signal is useful if you want to process the data in chunks as soon as it becomes available. If you are only interested in the complete data, just connect to the commandFinished() signal and read the data then instead. \sa get() read() readAll() bytesAvailable() */ /*! \fn void QFtp::dataTransferProgress(qint64 done, qint64 total) This signal is emitted in response to a get() or put() request to indicate the current progress of the download or upload. \a done is the amount of data that has already been transferred and \a total is the total amount of data to be read or written. It is possible that the QFtp class is not able to determine the total amount of data that should be transferred, in which case \a total is 0. (If you connect this signal to a QProgressBar, the progress bar shows a busy indicator if the total is 0). \warning \a done and \a total are not necessarily the size in bytes, since for large files these values might need to be "scaled" to avoid overflow. \sa get(), put(), QProgressBar */ /*! \fn void QFtp::rawCommandReply(int replyCode, const QString &detail); This signal is emitted in response to the rawCommand() function. \a replyCode is the 3 digit reply code and \a detail is the text that follows the reply code. \sa rawCommand() */ /*! Connects to the FTP server \a host using port \a port. The stateChanged() signal is emitted when the state of the connecting process changes, e.g. to \c HostLookup, then \c Connecting, then \c Connected. The function does not block and returns immediately. The command is scheduled, and its execution is performed asynchronously. The function returns a unique identifier which is passed by commandStarted() and commandFinished(). When the command is started the commandStarted() signal is emitted. When it is finished the commandFinished() signal is emitted. \sa stateChanged() commandStarted() commandFinished() */ int QFtp::connectToHost(const QString &host, quint16 port) { QStringList cmds; cmds << host; cmds << QString::number((uint)port); int id = d->addCommand(new QFtpCommand(ConnectToHost, cmds)); d->pi.transferConnectionExtended = true; return id; } /*! Logs in to the FTP server with the username \a user and the password \a password. The stateChanged() signal is emitted when the state of the connecting process changes, e.g. to \c LoggedIn. The function does not block and returns immediately. The command is scheduled, and its execution is performed asynchronously. The function returns a unique identifier which is passed by commandStarted() and commandFinished(). When the command is started the commandStarted() signal is emitted. When it is finished the commandFinished() signal is emitted. \sa commandStarted() commandFinished() */ int QFtp::login(const QString &user, const QString &password) { QStringList cmds; cmds << (QLatin1String("USER ") + (user.isNull() ? QLatin1String("anonymous") : user) + QLatin1String("\r\n")); cmds << (QLatin1String("PASS ") + (password.isNull() ? QLatin1String("anonymous@") : password) + QLatin1String("\r\n")); return d->addCommand(new QFtpCommand(Login, cmds)); } /*! Closes the connection to the FTP server. The stateChanged() signal is emitted when the state of the connecting process changes, e.g. to \c Closing, then \c Unconnected. The function does not block and returns immediately. The command is scheduled, and its execution is performed asynchronously. The function returns a unique identifier which is passed by commandStarted() and commandFinished(). When the command is started the commandStarted() signal is emitted. When it is finished the commandFinished() signal is emitted. \sa stateChanged() commandStarted() commandFinished() */ int QFtp::close() { return d->addCommand(new QFtpCommand(Close, QStringList(QLatin1String("QUIT\r\n")))); } /*! Sets the current FTP transfer mode to \a mode. The default is QFtp::Passive. \sa QFtp::TransferMode */ int QFtp::setTransferMode(TransferMode mode) { int id = d->addCommand(new QFtpCommand(SetTransferMode, QStringList())); d->pi.transferConnectionExtended = true; d->transferMode = mode; return id; } /*! Enables use of the FTP proxy on host \a host and port \a port. Calling this function with \a host empty disables proxying. QFtp does not support FTP-over-HTTP proxy servers. Use QNetworkAccessManager for this. */ int QFtp::setProxy(const QString &host, quint16 port) { QStringList args; args << host << QString::number(port); return d->addCommand(new QFtpCommand(SetProxy, args)); } /*! Lists the contents of directory \a dir on the FTP server. If \a dir is empty, it lists the contents of the current directory. The listInfo() signal is emitted for each directory entry found. The function does not block and returns immediately. The command is scheduled, and its execution is performed asynchronously. The function returns a unique identifier which is passed by commandStarted() and commandFinished(). When the command is started the commandStarted() signal is emitted. When it is finished the commandFinished() signal is emitted. \sa listInfo() commandStarted() commandFinished() */ int QFtp::list(const QString &dir) { QStringList cmds; cmds << QLatin1String("TYPE A\r\n"); cmds << QLatin1String(d->transferMode == Passive ? "PASV\r\n" : "PORT\r\n"); if (dir.isEmpty()) { cmds << QLatin1String("LIST\r\n"); } else { cmds << (QLatin1String("LIST ") + dir + QLatin1String("\r\n")); } return d->addCommand(new QFtpCommand(List, cmds)); } /*! Changes the working directory of the server to \a dir. The function does not block and returns immediately. The command is scheduled, and its execution is performed asynchronously. The function returns a unique identifier which is passed by commandStarted() and commandFinished(). When the command is started the commandStarted() signal is emitted. When it is finished the commandFinished() signal is emitted. \sa commandStarted() commandFinished() */ int QFtp::cd(const QString &dir) { return d->addCommand(new QFtpCommand(Cd, QStringList(QLatin1String("CWD ") + dir + QLatin1String("\r\n")))); } /*! Downloads the file \a file from the server. If \a dev is 0, then the readyRead() signal is emitted when there is data available to read. You can then read the data with the read() or readAll() functions. If \a dev is not 0, the data is written directly to the device \a dev. Make sure that the \a dev pointer is valid for the duration of the operation (it is safe to delete it when the commandFinished() signal is emitted). In this case the readyRead() signal is \e not emitted and you cannot read data with the read() or readAll() functions. If you don't read the data immediately it becomes available, i.e. when the readyRead() signal is emitted, it is still available until the next command is started. For example, if you want to present the data to the user as soon as there is something available, connect to the readyRead() signal and read the data immediately. On the other hand, if you only want to work with the complete data, you can connect to the commandFinished() signal and read the data when the get() command is finished. The data is transferred as Binary or Ascii depending on the value of \a type. The function does not block and returns immediately. The command is scheduled, and its execution is performed asynchronously. The function returns a unique identifier which is passed by commandStarted() and commandFinished(). When the command is started the commandStarted() signal is emitted. When it is finished the commandFinished() signal is emitted. \sa readyRead() dataTransferProgress() commandStarted() commandFinished() */ int QFtp::get(const QString &file, QIODevice* dev, TransferType type) { QStringList cmds; if (type == Binary) { cmds << QLatin1String("TYPE I\r\n"); } else { cmds << QLatin1String("TYPE A\r\n"); } cmds << QLatin1String("SIZE ") + file + QLatin1String("\r\n"); cmds << QLatin1String(d->transferMode == Passive ? "PASV\r\n" : "PORT\r\n"); cmds << QLatin1String("RETR ") + file + QLatin1String("\r\n"); return d->addCommand(new QFtpCommand(Get, cmds, dev)); } /*! \overload Writes a copy of the given \a data to the file called \a file on the server. The progress of the upload is reported by the dataTransferProgress() signal. The data is transferred as Binary or Ascii depending on the value of \a type. The function does not block and returns immediately. The command is scheduled, and its execution is performed asynchronously. The function returns a unique identifier which is passed by commandStarted() and commandFinished(). When the command is started the commandStarted() signal is emitted. When it is finished the commandFinished() signal is emitted. Since this function takes a copy of the \a data, you can discard your own copy when this function returns. \sa dataTransferProgress() commandStarted() commandFinished() */ int QFtp::put(const QByteArray &data, const QString &file, TransferType type) { QStringList cmds; if (type == Binary) { cmds << QLatin1String("TYPE I\r\n"); } else { cmds << QLatin1String("TYPE A\r\n"); } cmds << QLatin1String(d->transferMode == Passive ? "PASV\r\n" : "PORT\r\n"); cmds << QLatin1String("ALLO ") + QString::number(data.size()) + QLatin1String("\r\n"); cmds << QLatin1String("STOR ") + file + QLatin1String("\r\n"); return d->addCommand(new QFtpCommand(Put, cmds, data)); } /*! Reads the data from the IO device \a dev, and writes it to the file called \a file on the server. The data is read in chunks from the IO device, so this overload allows you to transmit large amounts of data without the need to read all the data into memory at once. The data is transferred as Binary or Ascii depending on the value of \a type. Make sure that the \a dev pointer is valid for the duration of the operation (it is safe to delete it when the commandFinished() is emitted). */ int QFtp::put(QIODevice* dev, const QString &file, TransferType type) { QStringList cmds; if (type == Binary) { cmds << QLatin1String("TYPE I\r\n"); } else { cmds << QLatin1String("TYPE A\r\n"); } cmds << QLatin1String(d->transferMode == Passive ? "PASV\r\n" : "PORT\r\n"); if (!dev->isSequential()) { cmds << QLatin1String("ALLO ") + QString::number(dev->size()) + QLatin1String("\r\n"); } cmds << QLatin1String("STOR ") + file + QLatin1String("\r\n"); return d->addCommand(new QFtpCommand(Put, cmds, dev)); } /*! Deletes the file called \a file from the server. The function does not block and returns immediately. The command is scheduled, and its execution is performed asynchronously. The function returns a unique identifier which is passed by commandStarted() and commandFinished(). When the command is started the commandStarted() signal is emitted. When it is finished the commandFinished() signal is emitted. \sa commandStarted() commandFinished() */ int QFtp::remove(const QString &file) { return d->addCommand(new QFtpCommand(Remove, QStringList(QLatin1String("DELE ") + file + QLatin1String("\r\n")))); } /*! Creates a directory called \a dir on the server. The function does not block and returns immediately. The command is scheduled, and its execution is performed asynchronously. The function returns a unique identifier which is passed by commandStarted() and commandFinished(). When the command is started the commandStarted() signal is emitted. When it is finished the commandFinished() signal is emitted. \sa commandStarted() commandFinished() */ int QFtp::mkdir(const QString &dir) { return d->addCommand(new QFtpCommand(Mkdir, QStringList(QLatin1String("MKD ") + dir + QLatin1String("\r\n")))); } /*! Removes the directory called \a dir from the server. The function does not block and returns immediately. The command is scheduled, and its execution is performed asynchronously. The function returns a unique identifier which is passed by commandStarted() and commandFinished(). When the command is started the commandStarted() signal is emitted. When it is finished the commandFinished() signal is emitted. \sa commandStarted() commandFinished() */ int QFtp::rmdir(const QString &dir) { return d->addCommand(new QFtpCommand(Rmdir, QStringList(QLatin1String("RMD ") + dir + QLatin1String("\r\n")))); } /*! Renames the file called \a oldname to \a newname on the server. The function does not block and returns immediately. The command is scheduled, and its execution is performed asynchronously. The function returns a unique identifier which is passed by commandStarted() and commandFinished(). When the command is started the commandStarted() signal is emitted. When it is finished the commandFinished() signal is emitted. \sa commandStarted() commandFinished() */ int QFtp::rename(const QString &oldname, const QString &newname) { QStringList cmds; cmds << QLatin1String("RNFR ") + oldname + QLatin1String("\r\n"); cmds << QLatin1String("RNTO ") + newname + QLatin1String("\r\n"); return d->addCommand(new QFtpCommand(Rename, cmds)); } /*! Sends the raw FTP command \a command to the FTP server. This is useful for low-level FTP access. If the operation you wish to perform has an equivalent QFtp function, we recommend using the function instead of raw FTP commands since the functions are easier and safer. The function does not block and returns immediately. The command is scheduled, and its execution is performed asynchronously. The function returns a unique identifier which is passed by commandStarted() and commandFinished(). When the command is started the commandStarted() signal is emitted. When it is finished the commandFinished() signal is emitted. \sa rawCommandReply() commandStarted() commandFinished() */ int QFtp::rawCommand(const QString &command) { QString cmd = command.trimmed() + QLatin1String("\r\n"); return d->addCommand(new QFtpCommand(RawCommand, QStringList(cmd))); } /*! Returns the number of bytes that can be read from the data socket at the moment. \sa get() readyRead() read() readAll() */ qint64 QFtp::bytesAvailable() const { return d->pi.dtp.bytesAvailable(); } /*! \fn qint64 QFtp::readBlock(char *data, quint64 maxlen) Use read() instead. */ /*! Reads \a maxlen bytes from the data socket into \a data and returns the number of bytes read. Returns -1 if an error occurred. \sa get() readyRead() bytesAvailable() readAll() */ qint64 QFtp::read(char* data, qint64 maxlen) { return d->pi.dtp.read(data, maxlen); } /*! Reads all the bytes available from the data socket and returns them. \sa get() readyRead() bytesAvailable() read() */ QByteArray QFtp::readAll() { return d->pi.dtp.readAll(); } /*! Aborts the current command and deletes all scheduled commands. If there is an unfinished command (i.e. a command for which the commandStarted() signal has been emitted, but for which the commandFinished() signal has not been emitted), this function sends an \c ABORT command to the server. When the server replies that the command is aborted, the commandFinished() signal with the \c error argument set to \c true is emitted for the command. Due to timing issues, it is possible that the command had already finished before the abort request reached the server, in which case, the commandFinished() signal is emitted with the \c error argument set to \c false. For all other commands that are affected by the abort(), no signals are emitted. If you don't start further FTP commands directly after the abort(), there won't be any scheduled commands and the done() signal is emitted. \warning Some FTP servers, for example the BSD FTP daemon (version 0.3), wrongly return a positive reply even when an abort has occurred. For these servers the commandFinished() signal has its error flag set to \c false, even though the command did not complete successfully. \sa clearPendingCommands() */ void QFtp::abort() { if (d->pending.isEmpty()) { return; } clearPendingCommands(); d->pi.abort(); } /*! Returns the identifier of the FTP command that is being executed or 0 if there is no command being executed. \sa currentCommand() */ int QFtp::currentId() const { if (d->pending.isEmpty()) { return 0; } return d->pending.first()->id; } /*! Returns the command type of the FTP command being executed or \c None if there is no command being executed. \sa currentId() */ QFtp::Command QFtp::currentCommand() const { if (d->pending.isEmpty()) { return None; } return d->pending.first()->command; } /*! Returns the QIODevice pointer that is used by the FTP command to read data from or store data to. If there is no current FTP command being executed or if the command does not use an IO device, this function returns 0. This function can be used to delete the QIODevice in the slot connected to the commandFinished() signal. \sa get() put() */ QIODevice* QFtp::currentDevice() const { if (d->pending.isEmpty()) { return 0; } QFtpCommand* c = d->pending.first(); if (c->is_ba) { return 0; } return c->data.dev; } /*! Returns true if there are any commands scheduled that have not yet been executed; otherwise returns false. The command that is being executed is \e not considered as a scheduled command. \sa clearPendingCommands() currentId() currentCommand() */ bool QFtp::hasPendingCommands() const { return d->pending.count() > 1; } /*! Deletes all pending commands from the list of scheduled commands. This does not affect the command that is being executed. If you want to stop this as well, use abort(). \sa hasPendingCommands() abort() */ void QFtp::clearPendingCommands() { // delete all entires except the first one while (d->pending.count() > 1) { delete d->pending.takeLast(); } } /*! Returns the current state of the object. When the state changes, the stateChanged() signal is emitted. \sa State stateChanged() */ QFtp::State QFtp::state() const { return d->state; } /*! Returns the last error that occurred. This is useful to find out what went wrong when receiving a commandFinished() or a done() signal with the \c error argument set to \c true. If you start a new command, the error status is reset to \c NoError. */ QFtp::Error QFtp::error() const { return d->error; } /*! Returns a human-readable description of the last error that occurred. This is useful for presenting a error message to the user when receiving a commandFinished() or a done() signal with the \c error argument set to \c true. The error string is often (but not always) the reply from the server, so it is not always possible to translate the string. If the message comes from Qt, the string has already passed through tr(). */ QString QFtp::errorString() const { return d->errorString; } /*! \internal */ void QFtpPrivate::_q_startNextCommand() { Q_Q(QFtp); if (pending.isEmpty()) { return; } QFtpCommand* c = pending.first(); error = QFtp::NoError; errorString = QT_TRANSLATE_NOOP(QFtp, QLatin1String("Unknown error")); if (q->bytesAvailable()) { q->readAll(); // clear the data } emit q->commandStarted(c->id); // Proxy support, replace the Login argument in place, then fall // through. if (c->command == QFtp::Login && !proxyHost.isEmpty()) { QString loginString = c->rawCmds.first().trimmed(); loginString += QLatin1Char('@') + host; if (port && port != 21) { loginString += QLatin1Char(':') + QString::number(port); } loginString += QLatin1String("\r\n"); c->rawCmds[0] = loginString; } if (c->command == QFtp::SetTransferMode) { _q_piFinished(QLatin1String("Transfer mode set")); } else if (c->command == QFtp::SetProxy) { proxyHost = c->rawCmds[0]; proxyPort = c->rawCmds[1].toUInt(); c->rawCmds.clear(); _q_piFinished(QLatin1String("Proxy set to ") + proxyHost + QLatin1Char(':') + QString::number(proxyPort)); } else if (c->command == QFtp::ConnectToHost) { #ifndef QT_NO_BEARERMANAGEMENT //copy network session down to the PI pi.setProperty("_q_networksession", q->property("_q_networksession")); #endif if (!proxyHost.isEmpty()) { host = c->rawCmds[0]; port = c->rawCmds[1].toUInt(); pi.connectToHost(proxyHost, proxyPort); } else { pi.connectToHost(c->rawCmds[0], c->rawCmds[1].toUInt()); } } else { if (c->command == QFtp::Put) { if (c->is_ba) { pi.dtp.setData(c->data.ba); pi.dtp.setBytesTotal(c->data.ba->size()); } else if (c->data.dev && (c->data.dev->isOpen() || c->data.dev->open(QIODevice::ReadOnly))) { pi.dtp.setDevice(c->data.dev); if (c->data.dev->isSequential()) { pi.dtp.setBytesTotal(0); pi.dtp.connect(c->data.dev, SIGNAL(readyRead()), SLOT(dataReadyRead())); pi.dtp.connect(c->data.dev, SIGNAL(readChannelFinished()), SLOT(dataReadyRead())); } else { pi.dtp.setBytesTotal(c->data.dev->size()); } } } else if (c->command == QFtp::Get) { if (!c->is_ba && c->data.dev) { pi.dtp.setDevice(c->data.dev); } } else if (c->command == QFtp::Close) { state = QFtp::Closing; emit q->stateChanged(state); } pi.sendCommands(c->rawCmds); } } /*! \internal */ void QFtpPrivate::_q_piFinished(const QString &) { if (pending.isEmpty()) { return; } QFtpCommand* c = pending.first(); if (c->command == QFtp::Close) { // The order of in which the slots are called is arbitrary, so // disconnect the SIGNAL-SIGNAL temporary to make sure that we // don't get the commandFinished() signal before the stateChanged() // signal. if (state != QFtp::Unconnected) { close_waitForStateChange = true; return; } } emit q_func()->commandFinished(c->id, false); pending.removeFirst(); delete c; if (pending.isEmpty()) { emit q_func()->done(false); } else { _q_startNextCommand(); } } /*! \internal */ void QFtpPrivate::_q_piError(int errorCode, const QString &text) { Q_Q(QFtp); if (pending.isEmpty()) { qWarning("QFtpPrivate::_q_piError was called without pending command!"); return; } QFtpCommand* c = pending.first(); // non-fatal errors if (c->command == QFtp::Get && pi.currentCommand().startsWith(QLatin1String("SIZE "))) { pi.dtp.setBytesTotal(0); return; } else if (c->command == QFtp::Put && pi.currentCommand().startsWith(QLatin1String("ALLO "))) { return; } error = QFtp::Error(errorCode); switch (q->currentCommand()) { case QFtp::ConnectToHost: errorString = QString::fromLatin1(QT_TRANSLATE_NOOP("QFtp", "Connecting to host failed:\n%1")) .arg(text); break; case QFtp::Login: errorString = QString::fromLatin1(QT_TRANSLATE_NOOP("QFtp", "Login failed:\n%1")) .arg(text); break; case QFtp::List: errorString = QString::fromLatin1(QT_TRANSLATE_NOOP("QFtp", "Listing directory failed:\n%1")) .arg(text); break; case QFtp::Cd: errorString = QString::fromLatin1(QT_TRANSLATE_NOOP("QFtp", "Changing directory failed:\n%1")) .arg(text); break; case QFtp::Get: errorString = QString::fromLatin1(QT_TRANSLATE_NOOP("QFtp", "Downloading file failed:\n%1")) .arg(text); break; case QFtp::Put: errorString = QString::fromLatin1(QT_TRANSLATE_NOOP("QFtp", "Uploading file failed:\n%1")) .arg(text); break; case QFtp::Remove: errorString = QString::fromLatin1(QT_TRANSLATE_NOOP("QFtp", "Removing file failed:\n%1")) .arg(text); break; case QFtp::Mkdir: errorString = QString::fromLatin1(QT_TRANSLATE_NOOP("QFtp", "Creating directory failed:\n%1")) .arg(text); break; case QFtp::Rmdir: errorString = QString::fromLatin1(QT_TRANSLATE_NOOP("QFtp", "Removing directory failed:\n%1")) .arg(text); break; default: errorString = text; break; } pi.clearPendingCommands(); q->clearPendingCommands(); emit q->commandFinished(c->id, true); pending.removeFirst(); delete c; if (pending.isEmpty()) { emit q->done(true); } else { _q_startNextCommand(); } } /*! \internal */ void QFtpPrivate::_q_piConnectState(int connectState) { state = QFtp::State(connectState); emit q_func()->stateChanged(state); if (close_waitForStateChange) { close_waitForStateChange = false; _q_piFinished(QLatin1String(QT_TRANSLATE_NOOP("QFtp", "Connection closed"))); } } /*! \internal */ void QFtpPrivate::_q_piFtpReply(int code, const QString &text) { if (q_func()->currentCommand() == QFtp::RawCommand) { pi.rawCommand = true; emit q_func()->rawCommandReply(code, text); } } /*! Destructor. */ QFtp::~QFtp() { abort(); close(); } QT_END_NAMESPACE #include "qftp.moc" #include "moc_qftp.cpp" #endif // QT_NO_FTP qupzilla-1.6.0/src/lib/3rdparty/qftp.h000066400000000000000000000112051226107126500176100ustar00rootroot00000000000000/**************************************************************************** ** ** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the QtNetwork module of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef QFTP_H #define QFTP_H #include #include "qurlinfo.h" #include class QFtpPrivate; class QFtp : public QObject { Q_OBJECT public: explicit QFtp(QObject* parent = 0); virtual ~QFtp(); enum State { Unconnected, HostLookup, Connecting, Connected, LoggedIn, Closing }; enum Error { NoError, UnknownError, HostNotFound, ConnectionRefused, NotConnected }; enum Command { None, SetTransferMode, SetProxy, ConnectToHost, Login, Close, List, Cd, Get, Put, Remove, Mkdir, Rmdir, Rename, RawCommand }; enum TransferMode { Active, Passive }; enum TransferType { Binary, Ascii }; int setProxy(const QString &host, quint16 port); int connectToHost(const QString &host, quint16 port = 21); int login(const QString &user = QString(), const QString &password = QString()); int close(); int setTransferMode(TransferMode mode); int list(const QString &dir = QString()); int cd(const QString &dir); int get(const QString &file, QIODevice* dev = 0, TransferType type = Binary); int put(const QByteArray &data, const QString &file, TransferType type = Binary); int put(QIODevice* dev, const QString &file, TransferType type = Binary); int remove(const QString &file); int mkdir(const QString &dir); int rmdir(const QString &dir); int rename(const QString &oldname, const QString &newname); int rawCommand(const QString &command); qint64 bytesAvailable() const; qint64 read(char* data, qint64 maxlen); QByteArray readAll(); int currentId() const; QIODevice* currentDevice() const; Command currentCommand() const; bool hasPendingCommands() const; void clearPendingCommands(); State state() const; Error error() const; QString errorString() const; public Q_SLOTS: void abort(); Q_SIGNALS: void stateChanged(int); void listInfo(const QUrlInfo &); void readyRead(); void dataTransferProgress(qint64, qint64); void rawCommandReply(int, const QString &); void commandStarted(int); void commandFinished(int, bool); void done(bool); private: Q_DISABLE_COPY(QFtp) QScopedPointer d; Q_PRIVATE_SLOT(d, void _q_startNextCommand()) Q_PRIVATE_SLOT(d, void _q_piFinished(const QString &)) Q_PRIVATE_SLOT(d, void _q_piError(int, const QString &)) Q_PRIVATE_SLOT(d, void _q_piConnectState(int)) Q_PRIVATE_SLOT(d, void _q_piFtpReply(int, const QString &)) }; #endif // QFTP_H qupzilla-1.6.0/src/lib/3rdparty/qftp.pri000066400000000000000000000001261226107126500201530ustar00rootroot00000000000000HEADERS += $$PWD/qftp.h $$PWD/qurlinfo.h SOURCES += $$PWD/qftp.cpp $$PWD/qurlinfo.cpp qupzilla-1.6.0/src/lib/3rdparty/qtlocalpeer.cpp000066400000000000000000000154751226107126500215210ustar00rootroot00000000000000/**************************************************************************** ** ** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** This file is part of a Qt Solutions component. ** ** Commercial Usage ** Licensees holding valid Qt Commercial licenses may use this file in ** accordance with the Qt Solutions Commercial License Agreement provided ** with the Software or, alternatively, in accordance with the terms ** contained in a written agreement between you and Nokia. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Nokia gives you certain ** additional rights. These rights are described in the Nokia Qt LGPL ** Exception version 1.1, included in the file LGPL_EXCEPTION.txt in this ** package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** Please note Third Party Software included with Qt Solutions may impose ** additional restrictions and it is the user's responsibility to ensure ** that they have met the licensing requirements of the GPL, LGPL, or Qt ** Solutions Commercial license and the relevant license of the Third ** Party Software they are using. ** ** If you are unsure which license is appropriate for your use, please ** contact Nokia at qt-info@nokia.com. ** ****************************************************************************/ #include "qtlocalpeer.h" #include #include #if defined(Q_OS_WIN) #include #include typedef BOOL(WINAPI* PProcessIdToSessionId)(DWORD, DWORD*); static PProcessIdToSessionId pProcessIdToSessionId = 0; #endif #if defined(Q_OS_UNIX) #include #include #include #endif namespace QtLP_Private { #include "qtlockedfile.cpp" #if defined(Q_OS_WIN) #include "qtlockedfile_win.cpp" #else #include "qtlockedfile_unix.cpp" #endif } const char* QtLocalPeer::ack = "ack"; QtLocalPeer::QtLocalPeer(QObject* parent, const QString &appId) : QObject(parent), id(appId) { QString prefix = id; if (id.isEmpty()) { id = QCoreApplication::applicationFilePath(); #if defined(Q_OS_WIN) id = id.toLower(); #endif prefix = id.section(QLatin1Char('/'), -1); } prefix.remove(QRegExp("[^a-zA-Z]")); prefix.truncate(6); QByteArray idc = id.toUtf8(); quint16 idNum = qChecksum(idc.constData(), idc.size()); socketName = QLatin1String("qtsingleapp-") + prefix + QLatin1Char('-') + QString::number(idNum, 16); #if defined(Q_OS_WIN) if (!pProcessIdToSessionId) { QLibrary lib("kernel32"); pProcessIdToSessionId = (PProcessIdToSessionId)lib.resolve("ProcessIdToSessionId"); } if (pProcessIdToSessionId) { DWORD sessionId = 0; pProcessIdToSessionId(GetCurrentProcessId(), &sessionId); socketName += QLatin1Char('-') + QString::number(sessionId, 16); } #else socketName += QLatin1Char('-') + QString::number(::getuid(), 16); #endif server = new QLocalServer(this); QString lockName = QDir(QDir::tempPath()).absolutePath() + QLatin1Char('/') + socketName + QLatin1String("-lockfile"); lockFile.setFileName(lockName); lockFile.open(QIODevice::ReadWrite); } bool QtLocalPeer::isClient() { if (lockFile.isLocked()) { return false; } if (!lockFile.lock(QtLP_Private::QtLockedFile::WriteLock, false)) { return true; } bool res = server->listen(socketName); #if defined(Q_OS_UNIX) && (QT_VERSION >= QT_VERSION_CHECK(4,5,0)) // ### Workaround if (!res && server->serverError() == QAbstractSocket::AddressInUseError) { QFile::remove(QDir::cleanPath(QDir::tempPath()) + QLatin1Char('/') + socketName); res = server->listen(socketName); } #endif if (!res) { qWarning("QtSingleCoreApplication: listen on local socket failed, %s", qPrintable(server->errorString())); } QObject::connect(server, SIGNAL(newConnection()), SLOT(receiveConnection())); return false; } bool QtLocalPeer::sendMessage(const QString &message, int timeout) { if (!isClient()) { return false; } QLocalSocket socket; bool connOk = false; for (int i = 0; i < 2; i++) { // Try twice, in case the other instance is just starting up socket.connectToServer(socketName); connOk = socket.waitForConnected(timeout / 2); if (connOk || i) { break; } int ms = 250; #if defined(Q_OS_WIN) Sleep(DWORD(ms)); #else struct timespec ts = { ms / 1000, (ms % 1000) * 1000 * 1000 }; nanosleep(&ts, NULL); #endif } if (!connOk) { return false; } QByteArray uMsg(message.toUtf8()); QDataStream ds(&socket); ds.writeBytes(uMsg.constData(), uMsg.size()); bool res = socket.waitForBytesWritten(timeout); res &= socket.waitForReadyRead(timeout); // wait for ack res &= (socket.read(qstrlen(ack)) == ack); return res; } void QtLocalPeer::removeLockedFile() { lockFile.remove(); } void QtLocalPeer::receiveConnection() { QLocalSocket* socket = server->nextPendingConnection(); if (!socket) { return; } while (socket->bytesAvailable() < (int)sizeof(quint32)) { socket->waitForReadyRead(); } QDataStream ds(socket); QByteArray uMsg; quint32 remaining; ds >> remaining; uMsg.resize(remaining); int got = 0; char* uMsgBuf = uMsg.data(); do { got = ds.readRawData(uMsgBuf, remaining); remaining -= got; uMsgBuf += got; } while (remaining && got >= 0 && socket->waitForReadyRead(2000)); if (got < 0) { qWarning("QtLocalPeer: Message reception failed %s", qPrintable(socket->errorString())); delete socket; return; } QString message(QString::fromUtf8(uMsg)); socket->write(ack, qstrlen(ack)); socket->waitForBytesWritten(1000); delete socket; emit messageReceived(message); //### (might take a long time to return) } qupzilla-1.6.0/src/lib/3rdparty/qtlocalpeer.h000066400000000000000000000057111226107126500211560ustar00rootroot00000000000000/**************************************************************************** ** ** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** This file is part of a Qt Solutions component. ** ** Commercial Usage ** Licensees holding valid Qt Commercial licenses may use this file in ** accordance with the Qt Solutions Commercial License Agreement provided ** with the Software or, alternatively, in accordance with the terms ** contained in a written agreement between you and Nokia. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Nokia gives you certain ** additional rights. These rights are described in the Nokia Qt LGPL ** Exception version 1.1, included in the file LGPL_EXCEPTION.txt in this ** package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** Please note Third Party Software included with Qt Solutions may impose ** additional restrictions and it is the user's responsibility to ensure ** that they have met the licensing requirements of the GPL, LGPL, or Qt ** Solutions Commercial license and the relevant license of the Third ** Party Software they are using. ** ** If you are unsure which license is appropriate for your use, please ** contact Nokia at qt-info@nokia.com. ** ****************************************************************************/ #include #include #include #if defined(Q_OS_HAIKU) || defined(Q_OS_OS2) #include #endif namespace QtLP_Private { #include "qtlockedfile.h" } class QtLocalPeer : public QObject { Q_OBJECT public: QtLocalPeer(QObject* parent = 0, const QString &appId = QString()); bool isClient(); bool sendMessage(const QString &message, int timeout); QString applicationId() const { return id; } void removeLockedFile(); Q_SIGNALS: void messageReceived(const QString &message); protected Q_SLOTS: void receiveConnection(); protected: QString id; QString socketName; QLocalServer* server; QtLP_Private::QtLockedFile lockFile; private: static const char* ack; }; qupzilla-1.6.0/src/lib/3rdparty/qtlockedfile.cpp000066400000000000000000000143231226107126500216430ustar00rootroot00000000000000/**************************************************************************** ** ** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** This file is part of a Qt Solutions component. ** ** Commercial Usage ** Licensees holding valid Qt Commercial licenses may use this file in ** accordance with the Qt Solutions Commercial License Agreement provided ** with the Software or, alternatively, in accordance with the terms ** contained in a written agreement between you and Nokia. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Nokia gives you certain ** additional rights. These rights are described in the Nokia Qt LGPL ** Exception version 1.1, included in the file LGPL_EXCEPTION.txt in this ** package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** Please note Third Party Software included with Qt Solutions may impose ** additional restrictions and it is the user's responsibility to ensure ** that they have met the licensing requirements of the GPL, LGPL, or Qt ** Solutions Commercial license and the relevant license of the Third ** Party Software they are using. ** ** If you are unsure which license is appropriate for your use, please ** contact Nokia at qt-info@nokia.com. ** ****************************************************************************/ #include "qtlockedfile.h" /*! \class QtLockedFile \brief The QtLockedFile class extends QFile with advisory locking functions. A file may be locked in read or write mode. Multiple instances of \e QtLockedFile, created in multiple processes running on the same machine, may have a file locked in read mode. Exactly one instance may have it locked in write mode. A read and a write lock cannot exist simultaneously on the same file. The file locks are advisory. This means that nothing prevents another process from manipulating a locked file using QFile or file system functions offered by the OS. Serialization is only guaranteed if all processes that access the file use QLockedFile. Also, while holding a lock on a file, a process must not open the same file again (through any API), or locks can be unexpectedly lost. The lock provided by an instance of \e QtLockedFile is released whenever the program terminates. This is true even when the program crashes and no destructors are called. */ /*! \enum QtLockedFile::LockMode This enum describes the available lock modes. \value ReadLock A read lock. \value WriteLock A write lock. \value NoLock Neither a read lock nor a write lock. */ /*! Constructs an unlocked \e QtLockedFile object. This constructor behaves in the same way as \e QFile::QFile(). \sa QFile::QFile() */ QtLockedFile::QtLockedFile() : QFile() { #ifdef Q_OS_WIN wmutex = 0; rmutex = 0; #endif m_lock_mode = NoLock; } /*! Constructs an unlocked QtLockedFile object with file \a name. This constructor behaves in the same way as \e QFile::QFile(const QString&). \sa QFile::QFile() */ QtLockedFile::QtLockedFile(const QString &name) : QFile(name) { #ifdef Q_OS_WIN wmutex = 0; rmutex = 0; #endif m_lock_mode = NoLock; } /*! Opens the file in OpenMode \a mode. This is identical to QFile::open(), with the one exception that the Truncate mode flag is disallowed. Truncation would conflict with the advisory file locking, since the file would be modified before the write lock is obtained. If truncation is required, use resize(0) after obtaining the write lock. Returns true if successful; otherwise false. \sa QFile::open(), QFile::resize() */ bool QtLockedFile::open(OpenMode mode) { if (mode & QIODevice::Truncate) { qWarning("QtLockedFile::open(): Truncate mode not allowed."); return false; } return QFile::open(mode); } /*! Returns \e true if this object has a in read or write lock; otherwise returns \e false. \sa lockMode() */ bool QtLockedFile::isLocked() const { return m_lock_mode != NoLock; } /*! Returns the type of lock currently held by this object, or \e QtLockedFile::NoLock. \sa isLocked() */ QtLockedFile::LockMode QtLockedFile::lockMode() const { return m_lock_mode; } /*! \fn bool QtLockedFile::lock(LockMode mode, bool block = true) Obtains a lock of type \a mode. The file must be opened before it can be locked. If \a block is true, this function will block until the lock is aquired. If \a block is false, this function returns \e false immediately if the lock cannot be aquired. If this object already has a lock of type \a mode, this function returns \e true immediately. If this object has a lock of a different type than \a mode, the lock is first released and then a new lock is obtained. This function returns \e true if, after it executes, the file is locked by this object, and \e false otherwise. \sa unlock(), isLocked(), lockMode() */ /*! \fn bool QtLockedFile::unlock() Releases a lock. If the object has no lock, this function returns immediately. This function returns \e true if, after it executes, the file is not locked by this object, and \e false otherwise. \sa lock(), isLocked(), lockMode() */ /*! \fn QtLockedFile::~QtLockedFile() Destroys the \e QtLockedFile object. If any locks were held, they are released. */ qupzilla-1.6.0/src/lib/3rdparty/qtlockedfile.h000066400000000000000000000066531226107126500213170ustar00rootroot00000000000000/**************************************************************************** ** ** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** This file is part of a Qt Solutions component. ** ** Commercial Usage ** Licensees holding valid Qt Commercial licenses may use this file in ** accordance with the Qt Solutions Commercial License Agreement provided ** with the Software or, alternatively, in accordance with the terms ** contained in a written agreement between you and Nokia. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Nokia gives you certain ** additional rights. These rights are described in the Nokia Qt LGPL ** Exception version 1.1, included in the file LGPL_EXCEPTION.txt in this ** package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** Please note Third Party Software included with Qt Solutions may impose ** additional restrictions and it is the user's responsibility to ensure ** that they have met the licensing requirements of the GPL, LGPL, or Qt ** Solutions Commercial license and the relevant license of the Third ** Party Software they are using. ** ** If you are unsure which license is appropriate for your use, please ** contact Nokia at qt-info@nokia.com. ** ****************************************************************************/ #ifndef QTLOCKEDFILE_H #define QTLOCKEDFILE_H #include #ifdef Q_OS_WIN #include #endif #if defined(Q_WS_WIN) # if !defined(QT_QTLOCKEDFILE_EXPORT) && !defined(QT_QTLOCKEDFILE_IMPORT) # define QT_QTLOCKEDFILE_EXPORT # elif defined(QT_QTLOCKEDFILE_IMPORT) # if defined(QT_QTLOCKEDFILE_EXPORT) # undef QT_QTLOCKEDFILE_EXPORT # endif # define QT_QTLOCKEDFILE_EXPORT __declspec(dllimport) # elif defined(QT_QTLOCKEDFILE_EXPORT) # undef QT_QTLOCKEDFILE_EXPORT # define QT_QTLOCKEDFILE_EXPORT __declspec(dllexport) # endif #else # define QT_QTLOCKEDFILE_EXPORT #endif class QT_QTLOCKEDFILE_EXPORT QtLockedFile : public QFile { public: enum LockMode { NoLock = 0, ReadLock, WriteLock }; QtLockedFile(); QtLockedFile(const QString &name); ~QtLockedFile(); bool open(OpenMode mode); bool lock(LockMode mode, bool block = true); bool unlock(); bool isLocked() const; LockMode lockMode() const; private: #ifdef Q_OS_WIN Qt::HANDLE wmutex; Qt::HANDLE rmutex; QVector rmutexes; QString mutexname; Qt::HANDLE getMutexHandle(int idx, bool doCreate); bool waitMutex(Qt::HANDLE mutex, bool doBlock); #endif LockMode m_lock_mode; }; #endif qupzilla-1.6.0/src/lib/3rdparty/qtlockedfile_unix.cpp000066400000000000000000000072251226107126500227110ustar00rootroot00000000000000/**************************************************************************** ** ** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** This file is part of a Qt Solutions component. ** ** Commercial Usage ** Licensees holding valid Qt Commercial licenses may use this file in ** accordance with the Qt Solutions Commercial License Agreement provided ** with the Software or, alternatively, in accordance with the terms ** contained in a written agreement between you and Nokia. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Nokia gives you certain ** additional rights. These rights are described in the Nokia Qt LGPL ** Exception version 1.1, included in the file LGPL_EXCEPTION.txt in this ** package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** Please note Third Party Software included with Qt Solutions may impose ** additional restrictions and it is the user's responsibility to ensure ** that they have met the licensing requirements of the GPL, LGPL, or Qt ** Solutions Commercial license and the relevant license of the Third ** Party Software they are using. ** ** If you are unsure which license is appropriate for your use, please ** contact Nokia at qt-info@nokia.com. ** ****************************************************************************/ #include #include #include #include #include "qtlockedfile.h" bool QtLockedFile::lock(LockMode mode, bool block) { if (!isOpen()) { qWarning("QtLockedFile::lock(): file is not opened"); return false; } if (mode == NoLock) { return unlock(); } if (mode == m_lock_mode) { return true; } if (m_lock_mode != NoLock) { unlock(); } struct flock fl; fl.l_whence = SEEK_SET; fl.l_start = 0; fl.l_len = 0; fl.l_type = (mode == ReadLock) ? F_RDLCK : F_WRLCK; int cmd = block ? F_SETLKW : F_SETLK; int ret = fcntl(handle(), cmd, &fl); if (ret == -1) { if (errno != EINTR && errno != EAGAIN) { qWarning("QtLockedFile::lock(): fcntl: %s", strerror(errno)); } return false; } m_lock_mode = mode; return true; } bool QtLockedFile::unlock() { if (!isOpen()) { qWarning("QtLockedFile::unlock(): file is not opened"); return false; } if (!isLocked()) { return true; } struct flock fl; fl.l_whence = SEEK_SET; fl.l_start = 0; fl.l_len = 0; fl.l_type = F_UNLCK; int ret = fcntl(handle(), F_SETLKW, &fl); if (ret == -1) { qWarning("QtLockedFile::lock(): fcntl: %s", strerror(errno)); return false; } m_lock_mode = NoLock; return true; } QtLockedFile::~QtLockedFile() { if (isOpen()) { unlock(); } } qupzilla-1.6.0/src/lib/3rdparty/qtlockedfile_win.cpp000066400000000000000000000162141226107126500225210ustar00rootroot00000000000000/**************************************************************************** ** ** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** This file is part of a Qt Solutions component. ** ** Commercial Usage ** Licensees holding valid Qt Commercial licenses may use this file in ** accordance with the Qt Solutions Commercial License Agreement provided ** with the Software or, alternatively, in accordance with the terms ** contained in a written agreement between you and Nokia. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Nokia gives you certain ** additional rights. These rights are described in the Nokia Qt LGPL ** Exception version 1.1, included in the file LGPL_EXCEPTION.txt in this ** package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** Please note Third Party Software included with Qt Solutions may impose ** additional restrictions and it is the user's responsibility to ensure ** that they have met the licensing requirements of the GPL, LGPL, or Qt ** Solutions Commercial license and the relevant license of the Third ** Party Software they are using. ** ** If you are unsure which license is appropriate for your use, please ** contact Nokia at qt-info@nokia.com. ** ****************************************************************************/ #include "qtlockedfile.h" #include #include #define MUTEX_PREFIX "QtLockedFile mutex " // Maximum number of concurrent read locks. Must not be greater than MAXIMUM_WAIT_OBJECTS #define MAX_READERS MAXIMUM_WAIT_OBJECTS Qt::HANDLE QtLockedFile::getMutexHandle(int idx, bool doCreate) { if (mutexname.isEmpty()) { QFileInfo fi(*this); mutexname = QString::fromLatin1(MUTEX_PREFIX) + fi.absoluteFilePath().toLower(); } QString mname(mutexname); if (idx >= 0) { mname += QString::number(idx); } Qt::HANDLE mutex; if (doCreate) { #if (QT_VERSION < 0x050000) QT_WA( { mutex = CreateMutexW(NULL, FALSE, (TCHAR*)mname.utf16()); }, { mutex = CreateMutexA(NULL, FALSE, mname.toLocal8Bit().constData()); }); #else // QT_WA removed from Qt5: http://qt-project.org/forums/viewthread/22994/#107379 mutex = CreateMutexW(NULL, FALSE, (TCHAR*)mname.utf16()); #endif if (!mutex) { qErrnoWarning("QtLockedFile::lock(): CreateMutex failed"); return 0; } } else { #if (QT_VERSION < 0x050000) QT_WA( { mutex = OpenMutexW(SYNCHRONIZE | MUTEX_MODIFY_STATE, FALSE, (TCHAR*)mname.utf16()); }, { mutex = OpenMutexA(SYNCHRONIZE | MUTEX_MODIFY_STATE, FALSE, mname.toLocal8Bit().constData()); }); #else // QT_WA removed from Qt5: http://qt-project.org/forums/viewthread/22994/#107379 mutex = OpenMutexW(SYNCHRONIZE | MUTEX_MODIFY_STATE, FALSE, (TCHAR*)mname.utf16()); #endif if (!mutex) { if (GetLastError() != ERROR_FILE_NOT_FOUND) { qErrnoWarning("QtLockedFile::lock(): OpenMutex failed"); } return 0; } } return mutex; } bool QtLockedFile::waitMutex(Qt::HANDLE mutex, bool doBlock) { Q_ASSERT(mutex); DWORD res = WaitForSingleObject(mutex, doBlock ? INFINITE : 0); switch (res) { case WAIT_OBJECT_0: case WAIT_ABANDONED: return true; break; case WAIT_TIMEOUT: break; default: qErrnoWarning("QtLockedFile::lock(): WaitForSingleObject failed"); } return false; } bool QtLockedFile::lock(LockMode mode, bool block) { if (!isOpen()) { qWarning("QtLockedFile::lock(): file is not opened"); return false; } if (mode == NoLock) { return unlock(); } if (mode == m_lock_mode) { return true; } if (m_lock_mode != NoLock) { unlock(); } if (!wmutex && !(wmutex = getMutexHandle(-1, true))) { return false; } if (!waitMutex(wmutex, block)) { return false; } if (mode == ReadLock) { int idx = 0; for (; idx < MAX_READERS; idx++) { rmutex = getMutexHandle(idx, false); if (!rmutex || waitMutex(rmutex, false)) { break; } CloseHandle(rmutex); } bool ok = true; if (idx >= MAX_READERS) { qWarning("QtLockedFile::lock(): too many readers"); rmutex = 0; ok = false; } else if (!rmutex) { rmutex = getMutexHandle(idx, true); if (!rmutex || !waitMutex(rmutex, false)) { ok = false; } } if (!ok && rmutex) { CloseHandle(rmutex); rmutex = 0; } ReleaseMutex(wmutex); if (!ok) { return false; } } else { Q_ASSERT(rmutexes.isEmpty()); for (int i = 0; i < MAX_READERS; i++) { Qt::HANDLE mutex = getMutexHandle(i, false); if (mutex) { rmutexes.append(mutex); } } if (rmutexes.size()) { DWORD res = WaitForMultipleObjects(rmutexes.size(), rmutexes.constData(), TRUE, block ? INFINITE : 0); if (res != WAIT_OBJECT_0 && res != WAIT_ABANDONED) { if (res != WAIT_TIMEOUT) { qErrnoWarning("QtLockedFile::lock(): WaitForMultipleObjects failed"); } m_lock_mode = WriteLock; // trick unlock() to clean up - semiyucky unlock(); return false; } } } m_lock_mode = mode; return true; } bool QtLockedFile::unlock() { if (!isOpen()) { qWarning("QtLockedFile::unlock(): file is not opened"); return false; } if (!isLocked()) { return true; } if (m_lock_mode == ReadLock) { ReleaseMutex(rmutex); CloseHandle(rmutex); rmutex = 0; } else { foreach (Qt::HANDLE mutex, rmutexes) { ReleaseMutex(mutex); CloseHandle(mutex); } rmutexes.clear(); ReleaseMutex(wmutex); } m_lock_mode = QtLockedFile::NoLock; return true; } QtLockedFile::~QtLockedFile() { if (isOpen()) { unlock(); } if (wmutex) { CloseHandle(wmutex); } } qupzilla-1.6.0/src/lib/3rdparty/qtsingleapplication.cpp000066400000000000000000000242021226107126500232440ustar00rootroot00000000000000/**************************************************************************** ** ** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** This file is part of a Qt Solutions component. ** ** Commercial Usage ** Licensees holding valid Qt Commercial licenses may use this file in ** accordance with the Qt Solutions Commercial License Agreement provided ** with the Software or, alternatively, in accordance with the terms ** contained in a written agreement between you and Nokia. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Nokia gives you certain ** additional rights. These rights are described in the Nokia Qt LGPL ** Exception version 1.1, included in the file LGPL_EXCEPTION.txt in this ** package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** Please note Third Party Software included with Qt Solutions may impose ** additional restrictions and it is the user's responsibility to ensure ** that they have met the licensing requirements of the GPL, LGPL, or Qt ** Solutions Commercial license and the relevant license of the Third ** Party Software they are using. ** ** If you are unsure which license is appropriate for your use, please ** contact Nokia at qt-info@nokia.com. ** ****************************************************************************/ #include "qtsingleapplication.h" #include "qtlocalpeer.h" #include /*! \class QtSingleApplication qtsingleapplication.h \brief The QtSingleApplication class provides an API to detect and communicate with running instances of an application. This class allows you to create applications where only one instance should be running at a time. I.e., if the user tries to launch another instance, the already running instance will be activated instead. Another usecase is a client-server system, where the first started instance will assume the role of server, and the later instances will act as clients of that server. By default, the full path of the executable file is used to determine whether two processes are instances of the same application. You can also provide an explicit identifier string that will be compared instead. The application should create the QtSingleApplication object early in the startup phase, and call isRunning() or sendMessage() to find out if another instance of this application is already running. Startup parameters (e.g. the name of the file the user wanted this new instance to open) can be passed to the running instance in the sendMessage() function. If isRunning() or sendMessage() returns false, it means that no other instance is running, and this instance has assumed the role as the running instance. The application should continue with the initialization of the application user interface before entering the event loop with exec(), as normal. The messageReceived() signal will be emitted when the application receives messages from another instance of the same application. If isRunning() or sendMessage() returns true, another instance is already running, and the application should terminate or enter client mode. If a message is received it might be helpful to the user to raise the application so that it becomes visible. To facilitate this, QtSingleApplication provides the setActivationWindow() function and the activateWindow() slot. Here's an example that shows how to convert an existing application to use QtSingleApplication. It is very simple and does not make use of all QtSingleApplication's functionality (see the examples for that). \code // Original int main(int argc, char **argv) { QApplication app(argc, argv); MyMainWidget mmw; mmw.show(); return app.exec(); } // Single instance int main(int argc, char **argv) { QtSingleApplication app(argc, argv); if (app.isRunning()) return 0; MyMainWidget mmw; app.setActivationWindow(&mmw); mmw.show(); return app.exec(); } \endcode Once this QtSingleApplication instance is destroyed(for example, when the user quits), when the user next attempts to run the application this instance will not, of course, be encountered. The next instance to call isRunning() or sendMessage() will assume the role as the new running instance. For console (non-GUI) applications, QtSingleCoreApplication may be used instead of this class, to avoid the dependency on the QtGui library. \sa QtSingleCoreApplication */ void QtSingleApplication::sysInit(const QString &appId) { actWin = 0; peer = new QtLocalPeer(this, appId); connect(peer, SIGNAL(messageReceived(QString)), SIGNAL(messageReceived(QString))); } /*! Creates a QtSingleApplication object. The application identifier will be QCoreApplication::applicationFilePath(). \a argc, \a argv, and \a GUIenabled are passed on to the QAppliation constructor. If you are creating a console application (i.e. setting \a GUIenabled to false), you may consider using QtSingleCoreApplication instead. */ QtSingleApplication::QtSingleApplication(int &argc, char** argv, bool GUIenabled) : QApplication(argc, argv, GUIenabled) , peer(0) , actWin(0) { } /*! Creates a QtSingleApplication object with the application identifier \a appId. \a argc and \a argv are passed on to the QAppliation constructor. */ QtSingleApplication::QtSingleApplication(const QString &appId, int &argc, char** argv) : QApplication(argc, argv) , peer(0) , actWin(0) { sysInit(appId); } /*! Returns true if another instance of this application is running; otherwise false. This function does not find instances of this application that are being run by a different user (on Windows: that are running in another session). \sa sendMessage() */ bool QtSingleApplication::isRunning() { #ifdef Q_OS_HAIKU return false; #else return (peer && peer->isClient()); #endif } void QtSingleApplication::setAppId(const QString &id) { sysInit(id); } /*! Tries to send the text \a message to the currently running instance. The QtSingleApplication object in the running instance will emit the messageReceived() signal when it receives the message. This function returns true if the message has been sent to, and processed by, the current instance. If there is no instance currently running, or if the running instance fails to process the message within \a timeout milliseconds, this function return false. \sa isRunning(), messageReceived() */ bool QtSingleApplication::sendMessage(const QString &message, int timeout) { #ifdef Q_OS_HAIKU return false; #else return (peer && peer->sendMessage(message, timeout)); #endif } /*! Returns the application identifier. Two processes with the same identifier will be regarded as instances of the same application. */ QString QtSingleApplication::id() const { return (peer ? peer->applicationId() : QString()); } /*! Sets the activation window of this application to \a aw. The activation window is the widget that will be activated by activateWindow(). This is typically the application's main window. If \a activateOnMessage is true (the default), the window will be activated automatically every time a message is received, just prior to the messageReceived() signal being emitted. \sa activateWindow(), messageReceived() */ void QtSingleApplication::setActivationWindow(QWidget* aw, bool activateOnMessage) { actWin = aw; if (!peer) { return; } if (activateOnMessage) { connect(peer, SIGNAL(messageReceived(QString)), this, SLOT(activateWindow())); } else { disconnect(peer, SIGNAL(messageReceived(QString)), this, SLOT(activateWindow())); } } /*! Returns the applications activation window if one has been set by calling setActivationWindow(), otherwise returns 0. \sa setActivationWindow() */ QWidget* QtSingleApplication::activationWindow() const { return actWin; } void QtSingleApplication::removeLockFile() { peer->removeLockedFile(); } /*! De-minimizes, raises, and activates this application's activation window. This function does nothing if no activation window has been set. This is a convenience function to show the user that this application instance has been activated when he has tried to start another instance. This function should typically be called in response to the messageReceived() signal. By default, that will happen automatically, if an activation window has been set. \sa setActivationWindow(), messageReceived(), initialize() */ void QtSingleApplication::activateWindow() { if (actWin) { actWin->setWindowState(actWin->windowState() & ~Qt::WindowMinimized); actWin->raise(); actWin->activateWindow(); actWin->setFocus(); } } /*! \fn void QtSingleApplication::messageReceived(const QString& message) This signal is emitted when the current instance receives a \a message from another instance of this application. \sa sendMessage(), setActivationWindow(), activateWindow() */ /*! \fn void QtSingleApplication::initialize(bool dummy = true) \obsolete */ qupzilla-1.6.0/src/lib/3rdparty/qtsingleapplication.h000066400000000000000000000071711226107126500227170ustar00rootroot00000000000000/**************************************************************************** ** ** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** This file is part of a Qt Solutions component. ** ** Commercial Usage ** Licensees holding valid Qt Commercial licenses may use this file in ** accordance with the Qt Solutions Commercial License Agreement provided ** with the Software or, alternatively, in accordance with the terms ** contained in a written agreement between you and Nokia. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Nokia gives you certain ** additional rights. These rights are described in the Nokia Qt LGPL ** Exception version 1.1, included in the file LGPL_EXCEPTION.txt in this ** package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** Please note Third Party Software included with Qt Solutions may impose ** additional restrictions and it is the user's responsibility to ensure ** that they have met the licensing requirements of the GPL, LGPL, or Qt ** Solutions Commercial license and the relevant license of the Third ** Party Software they are using. ** ** If you are unsure which license is appropriate for your use, please ** contact Nokia at qt-info@nokia.com. ** ****************************************************************************/ #include class QtLocalPeer; #if defined(Q_OS_WIN) # if !defined(QT_QTSINGLEAPPLICATION_EXPORT) && !defined(QT_QTSINGLEAPPLICATION_IMPORT) # define QT_QTSINGLEAPPLICATION_EXPORT # elif defined(QT_QTSINGLEAPPLICATION_IMPORT) # if defined(QT_QTSINGLEAPPLICATION_EXPORT) # undef QT_QTSINGLEAPPLICATION_EXPORT # endif # define QT_QTSINGLEAPPLICATION_EXPORT __declspec(dllimport) # elif defined(QT_QTSINGLEAPPLICATION_EXPORT) # undef QT_QTSINGLEAPPLICATION_EXPORT # define QT_QTSINGLEAPPLICATION_EXPORT __declspec(dllexport) # endif #else # define QT_QTSINGLEAPPLICATION_EXPORT #endif class QT_QTSINGLEAPPLICATION_EXPORT QtSingleApplication : public QApplication { Q_OBJECT public: QtSingleApplication(int &argc, char** argv, bool GUIenabled = true); QtSingleApplication(const QString &id, int &argc, char** argv); bool isRunning(); void setAppId(const QString &id); QString id() const; void setActivationWindow(QWidget* aw, bool activateOnMessage = true); QWidget* activationWindow() const; // Obsolete: void initialize(bool dummy = true) { isRunning(); Q_UNUSED(dummy) } void removeLockFile(); public Q_SLOTS: bool sendMessage(const QString &message, int timeout = 5000); void activateWindow(); Q_SIGNALS: void messageReceived(const QString &message); private: void sysInit(const QString &appId = QString()); QtLocalPeer* peer; QWidget* actWin; }; qupzilla-1.6.0/src/lib/3rdparty/qtsingleapplication.pri000066400000000000000000000010051226107126500232500ustar00rootroot00000000000000INCLUDEPATH += $$PWD DEPENDPATH += $$PWD QT *= network qtsingleapplication-uselib:!qtsingleapplication-buildlib { LIBS += -L$$QTSINGLEAPPLICATION_LIBDIR -l$$QTSINGLEAPPLICATION_LIBNAME } else { SOURCES += $$PWD/qtsingleapplication.cpp $$PWD/qtlocalpeer.cpp HEADERS += $$PWD/qtsingleapplication.h $$PWD/qtlocalpeer.h } os2|win32 { contains(TEMPLATE, lib):contains(CONFIG, shared):DEFINES *= QT_QTSINGLEAPPLICATION_EXPORT else:qtsingleapplication-uselib:DEFINES *= QT_QTSINGLEAPPLICATION_IMPORT } qupzilla-1.6.0/src/lib/3rdparty/qtwin.cpp000066400000000000000000000341661226107126500203460ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ /**************************************************************************** ** ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). ** ** Use, modification and distribution is allowed without limitation, ** warranty, liability or support of any kind. ** ****************************************************************************/ #include "qtwin.h" #include #include #include #include #include "history.h" #include "mainapplication.h" #ifdef Q_OS_WIN #include // Blur behind data structures #define DWM_BB_ENABLE 0x00000001 // fEnable has been specified #define DWM_BB_BLURREGION 0x00000002 // hRgnBlur has been specified #define DWM_BB_TRANSITIONONMAXIMIZED 0x00000004 // fTransitionOnMaximized has been specified #define WM_DWMCOMPOSITIONCHANGED 0x031E // Composition changed window message typedef struct _DWM_BLURBEHIND { DWORD dwFlags; BOOL fEnable; HRGN hRgnBlur; BOOL fTransitionOnMaximized; } DWM_BLURBEHIND, *PDWM_BLURBEHIND; typedef struct _MARGINS { int cxLeftWidth; int cxRightWidth; int cyTopHeight; int cyBottomHeight; } MARGINS, *PMARGINS; typedef HRESULT(WINAPI* PtrDwmIsCompositionEnabled)(BOOL* pfEnabled); typedef HRESULT(WINAPI* PtrDwmExtendFrameIntoClientArea)(HWND hWnd, const MARGINS* pMarInset); typedef HRESULT(WINAPI* PtrDwmEnableBlurBehindWindow)(HWND hWnd, const DWM_BLURBEHIND* pBlurBehind); typedef HRESULT(WINAPI* PtrDwmGetColorizationColor)(DWORD* pcrColorization, BOOL* pfOpaqueBlend); static PtrDwmIsCompositionEnabled pDwmIsCompositionEnabled = 0; static PtrDwmEnableBlurBehindWindow pDwmEnableBlurBehindWindow = 0; static PtrDwmExtendFrameIntoClientArea pDwmExtendFrameIntoClientArea = 0; static PtrDwmGetColorizationColor pDwmGetColorizationColor = 0; QHash widgetsBlurState = QHash(); /* * Internal helper class that notifies windows if the * DWM compositing state changes and updates the widget * flags correspondingly. */ class QT_QUPZILLA_EXPORT WindowNotifier : public QWidget { public: WindowNotifier() { winId(); } void addWidget(QWidget* widget) { widgets.append(widget); } void removeWidget(QWidget* widget) { widgets.removeAll(widget); } #if (QT_VERSION < 0x050000) bool winEvent(MSG* message, long* result); #else bool nativeEvent(const QByteArray &eventType, void* _message, long* result); #endif private: QWidgetList widgets; }; static bool resolveLibs() { if (!pDwmIsCompositionEnabled) { QLibrary dwmLib(QString::fromLatin1("dwmapi")); pDwmIsCompositionEnabled = (PtrDwmIsCompositionEnabled)dwmLib.resolve("DwmIsCompositionEnabled"); pDwmExtendFrameIntoClientArea = (PtrDwmExtendFrameIntoClientArea)dwmLib.resolve("DwmExtendFrameIntoClientArea"); pDwmEnableBlurBehindWindow = (PtrDwmEnableBlurBehindWindow)dwmLib.resolve("DwmEnableBlurBehindWindow"); pDwmGetColorizationColor = (PtrDwmGetColorizationColor)dwmLib.resolve("DwmGetColorizationColor"); } return pDwmIsCompositionEnabled != 0; } #endif /*! * Chekcs and returns true if Windows version * currently running is Windows 7 * * This function is useful when you are using * Windows7 new TaskBar API * */ bool QtWin::isRunningWindows7() { #ifdef Q_OS_WIN return QSysInfo::windowsVersion() == QSysInfo::WV_WINDOWS7; #else return false; #endif } /*! * Checks and returns true if Windows DWM composition * is currently enabled on the system. * * To get live notification on the availability of * this feature, you will currently have to * reimplement winEvent() on your widget and listen * for the WM_DWMCOMPOSITIONCHANGED event to occur. * */ bool QtWin::isCompositionEnabled() { #ifdef Q_OS_WIN if (resolveLibs()) { HRESULT hr; BOOL isEnabled = false; hr = pDwmIsCompositionEnabled(&isEnabled); if (SUCCEEDED(hr)) { return isEnabled; } } #endif return false; } /*! * Enables Blur behind on a Widget. * * \a enable tells if the blur should be enabled or not */ bool QtWin::enableBlurBehindWindow(QWidget* widget, bool enable) { Q_UNUSED(enable); Q_UNUSED(widget); Q_ASSERT(widget); bool result = false; #ifdef Q_OS_WIN if (resolveLibs()) { DWM_BLURBEHIND bb = {0}; bb.fEnable = enable; bb.dwFlags = DWM_BB_ENABLE; bb.hRgnBlur = NULL; widget->setAttribute(Qt::WA_TranslucentBackground, enable); widget->setAttribute(Qt::WA_NoSystemBackground, enable); // Qt5: setting WA_TranslucentBackground without the following line hides the widget!! widget->setWindowOpacity(1); HRESULT hr = pDwmEnableBlurBehindWindow(hwndOfWidget(widget) , &bb); if (SUCCEEDED(hr)) { result = true; windowNotifier()->addWidget(widget); widgetsBlurState.insert(widget, true); } } #endif return result; } /*! * ExtendFrameIntoClientArea. * * This controls the rendering of the frame inside the window. * Note that passing margins of -1 (the default value) will completely * remove the frame from the window. * * \note you should not call enableBlurBehindWindow before calling * this functions * * \a enable tells if the blur should be enabled or not */ bool QtWin::extendFrameIntoClientArea(QWidget* widget, int left, int top, int right, int bottom) { Q_ASSERT(widget); Q_UNUSED(left); Q_UNUSED(top); Q_UNUSED(right); Q_UNUSED(bottom); Q_UNUSED(widget); bool result = false; #ifdef Q_OS_WIN if (resolveLibs()) { QLibrary dwmLib(QString::fromLatin1("dwmapi")); HRESULT hr; MARGINS m = {left, right, top, bottom}; hr = pDwmExtendFrameIntoClientArea(hwndOfWidget(widget), &m); if (SUCCEEDED(hr)) { result = true; windowNotifier()->addWidget(widget); widgetsBlurState.insert(widget, true); } widget->setAttribute(Qt::WA_TranslucentBackground, result); // Qt5: setting WA_TranslucentBackground without the following line hides the widget!! widget->setWindowOpacity(1); } #endif return result; } /*! * Returns the current colorizationColor for the window. * * \a enable tells if the blur should be enabled or not */ QColor QtWin::colorizationColor() { QColor resultColor = QApplication::palette().window().color(); #ifdef Q_OS_WIN if (resolveLibs()) { DWORD color = 0; BOOL opaque = FALSE; QLibrary dwmLib(QString::fromLatin1("dwmapi")); HRESULT hr; hr = pDwmGetColorizationColor(&color, &opaque); if (SUCCEEDED(hr)) { resultColor = QColor(color); } } #endif return resultColor; } #ifdef Q_OS_WIN HWND QtWin::hwndOfWidget(const QWidget* widget) { if (widget) { return reinterpret_cast(widget->winId()); } else { return 0; } } WindowNotifier* QtWin::windowNotifier() { static WindowNotifier* windowNotifierInstance = 0; if (!windowNotifierInstance) { windowNotifierInstance = new WindowNotifier; } return windowNotifierInstance; } /* Notify all enabled windows that the DWM state changed */ #if (QT_VERSION < 0x050000) bool WindowNotifier::winEvent(MSG* message, long* result) { #else bool WindowNotifier::nativeEvent(const QByteArray &eventType, void* _message, long* result) { Q_UNUSED(eventType) MSG* message = static_cast(_message); #endif if (message && message->message == WM_DWMCOMPOSITIONCHANGED) { bool compositionEnabled = QtWin::isCompositionEnabled(); foreach (QWidget* widget, widgets) { if (widget) { widget->setAttribute(Qt::WA_NoSystemBackground, compositionEnabled); bool isBlur = widgetsBlurState.value(widget, false); if (compositionEnabled && isBlur) { // hack for fixing black background when enabling composition QtWin::enableBlurBehindWindow(widget, false); QtWin::extendFrameIntoClientArea(widget); } widget->update(); } } } #if (QT_VERSION < 0x050000) return QWidget::winEvent(message, result); #else return QWidget::nativeEvent(eventType, _message, result); #endif } #ifdef W7API IShellLink* QtWin::CreateShellLink(const QString &title, const QString &description, const QString &app_path, const QString &app_args, const QString &icon_path, int app_index) { const wchar_t* _title = reinterpret_cast(title.utf16()); const wchar_t* _description = reinterpret_cast(description.utf16()); const wchar_t* _app_path = reinterpret_cast(app_path.utf16()); const wchar_t* _icon_path = reinterpret_cast(icon_path.utf16()); const wchar_t* _app_args = reinterpret_cast(app_args.utf16()); IShellLink* shell_link = NULL; IPropertyStore* prop_store = NULL; bool is_not_separator = (app_path.length() > 0); HRESULT hr = CoCreateInstance(CLSID_ShellLink, NULL, CLSCTX_INPROC_SERVER, IID_IShellLink, reinterpret_cast(&(shell_link))); if (SUCCEEDED(hr)) { if (is_not_separator) { shell_link->SetPath(_app_path); shell_link->SetArguments(_app_args); shell_link->SetIconLocation(_icon_path, app_index); shell_link->SetDescription(_description); } hr = shell_link->QueryInterface(IID_IPropertyStore, reinterpret_cast(&(prop_store))); if (SUCCEEDED(hr)) { PROPVARIANT pv; if (is_not_separator) { hr = InitPropVariantFromString(_title, &pv); if (SUCCEEDED(hr)) { hr = prop_store->SetValue(PKEY_Title, pv); } } else { hr = InitPropVariantFromBoolean(TRUE, &pv); if (SUCCEEDED(hr)) { hr = prop_store->SetValue(PKEY_AppUserModel_IsDestListSeparator, pv); } } //Save the changes we made to the property store prop_store->Commit(); prop_store->Release(); PropVariantClear(&pv); } } return shell_link; } void QtWin::populateFrequentSites(IObjectCollection* collection, const QString &appPath) { History* history = mApp->history(); QVector mostList = history->mostVisited(6); foreach (const HistoryEntry &entry, mostList) { collection->AddObject(CreateShellLink(entry.title, entry.url.toString(), appPath, QString(" " + entry.url.toEncoded()), appPath, 1)); } collection->AddObject(CreateShellLink("", "", "", "", "", 0)); //Spacer } void QtWin::AddTasksToList(ICustomDestinationList* destinationList) { IObjectArray* object_array; IObjectCollection* obj_collection; CoCreateInstance(CLSID_EnumerableObjectCollection, NULL, CLSCTX_INPROC, IID_IObjectCollection, reinterpret_cast(&(obj_collection))); obj_collection->QueryInterface(IID_IObjectArray, reinterpret_cast(&(object_array))); QString icons_source = qApp->applicationFilePath(); QString app_path = qApp->applicationFilePath(); populateFrequentSites(obj_collection, icons_source); obj_collection->AddObject(CreateShellLink(tr("Open new tab"), tr("Opens a new tab if browser is running"), app_path, "--new-tab", icons_source, 0)); obj_collection->AddObject(CreateShellLink(tr("Open new window"), tr("Opens a new window if browser is running"), app_path, "--new-window", icons_source, 0)); obj_collection->AddObject(CreateShellLink(tr("Open download manager"), tr("Opens a download manager if browser is running"), app_path, "--download-manager", icons_source, 0)); destinationList->AddUserTasks(object_array); object_array->Release(); obj_collection->Release(); } #endif //W7API #endif //Q_OS_WIN void QtWin::setupJumpList() { #ifdef W7API if (!isRunningWindows7()) { return; } UINT max_count = 0; IObjectArray* objectArray; ICustomDestinationList* destinationList; //create the custom jump list object CoCreateInstance(CLSID_DestinationList, NULL, CLSCTX_INPROC_SERVER, IID_ICustomDestinationList, reinterpret_cast(&(destinationList))); //initialize list destinationList->BeginList(&max_count, IID_IObjectArray, reinterpret_cast(&(objectArray))); AddTasksToList(destinationList); //commit list destinationList->CommitList(); objectArray->Release(); destinationList->Release(); #endif } qupzilla-1.6.0/src/lib/3rdparty/qtwin.h000066400000000000000000000060561226107126500200100ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ /**************************************************************************** ** ** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies). ** ** Use, modification and distribution is allowed without limitation, ** warranty, liability or support of any kind. ** ****************************************************************************/ #ifndef QTWIN_H #define QTWIN_H #include "qz_namespace.h" #include #include #include /** * This is a helper class for using the Desktop Window Manager * functionality on Windows 7 and Windows Vista. On other platforms * these functions will simply not do anything. */ #ifdef Q_OS_WIN // Qt5 compile issue: http://comments.gmane.org/gmane.comp.lib.qt.user/4711 #define NOMINMAX #ifdef W7API #include #include #include #include "msvc2008.h" DEFINE_PROPERTYKEY(PKEY_Title, 0xF29F85E0, 0x4FF9, 0x1068, 0xAB, 0x91, 0x08, 0x00, 0x2B, 0x27, 0xB3, 0xD9, 2); DEFINE_PROPERTYKEY(PKEY_AppUserModel_IsDestListSeparator, 0x9F4C2855, 0x9F79, 0x4B39, 0xA8, 0xD0, 0xE1, 0xD4, 0x2D, 0xE1, 0xD5, 0xF3, 6); #endif #endif class WindowNotifier; class QT_QUPZILLA_EXPORT QtWin : public QObject { Q_OBJECT public: static bool isRunningWindows7(); static bool enableBlurBehindWindow(QWidget* widget, bool enable = true); static bool extendFrameIntoClientArea(QWidget* widget, int left = -1, int top = -1, int right = -1, int bottom = -1); static bool isCompositionEnabled(); static QColor colorizationColor(); static void setupJumpList(); #ifdef Q_OS_WIN static HWND hwndOfWidget(const QWidget* widget); #endif private: static WindowNotifier* windowNotifier(); #ifdef W7API static void populateFrequentSites(IObjectCollection* collection, const QString &appPath); static void AddTasksToList(ICustomDestinationList* destinationList); static IShellLink* CreateShellLink(const QString &title, const QString &description, const QString &app_path, const QString &app_args, const QString &icon_path, int app_index); #endif }; #endif // QTWIN_H qupzilla-1.6.0/src/lib/3rdparty/qurlinfo.cpp000066400000000000000000000410631226107126500210350ustar00rootroot00000000000000/**************************************************************************** ** ** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the QtNetwork module of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "qurlinfo.h" #include "qurl.h" #include "qdir.h" #include QT_BEGIN_NAMESPACE class QUrlInfoPrivate { public: QUrlInfoPrivate() : permissions(0), size(0), isDir(false), isFile(true), isSymLink(false), isWritable(true), isReadable(true), isExecutable(false) {} QString name; int permissions; QString owner; QString group; qint64 size; QDateTime lastModified; QDateTime lastRead; bool isDir; bool isFile; bool isSymLink; bool isWritable; bool isReadable; bool isExecutable; }; /*! \class QUrlInfo \brief The QUrlInfo class stores information about URLs. \ingroup io \ingroup network \inmodule QtNetwork The information about a URL that can be retrieved includes name(), permissions(), owner(), group(), size(), lastModified(), lastRead(), isDir(), isFile(), isSymLink(), isWritable(), isReadable() and isExecutable(). You can create your own QUrlInfo objects passing in all the relevant information in the constructor, and you can modify a QUrlInfo; for each getter mentioned above there is an equivalent setter. Note that setting values does not affect the underlying resource that the QUrlInfo provides information about; for example if you call setWritable(true) on a read-only resource the only thing changed is the QUrlInfo object, not the resource. \sa QUrl, {FTP Example} */ /*! \enum QUrlInfo::PermissionSpec This enum is used by the permissions() function to report the permissions of a file. \value ReadOwner The file is readable by the owner of the file. \value WriteOwner The file is writable by the owner of the file. \value ExeOwner The file is executable by the owner of the file. \value ReadGroup The file is readable by the group. \value WriteGroup The file is writable by the group. \value ExeGroup The file is executable by the group. \value ReadOther The file is readable by anyone. \value WriteOther The file is writable by anyone. \value ExeOther The file is executable by anyone. */ /*! Constructs an invalid QUrlInfo object with default values. \sa isValid() */ QUrlInfo::QUrlInfo() { d = 0; } /*! Copy constructor, copies \a ui to this URL info object. */ QUrlInfo::QUrlInfo(const QUrlInfo &ui) { if (ui.d) { d = new QUrlInfoPrivate; *d = *ui.d; } else { d = 0; } } /*! Constructs a QUrlInfo object by specifying all the URL's information. The information that is passed is the \a name, file \a permissions, \a owner and \a group and the file's \a size. Also passed is the \a lastModified date/time and the \a lastRead date/time. Flags are also passed, specifically, \a isDir, \a isFile, \a isSymLink, \a isWritable, \a isReadable and \a isExecutable. */ QUrlInfo::QUrlInfo(const QString &name, int permissions, const QString &owner, const QString &group, qint64 size, const QDateTime &lastModified, const QDateTime &lastRead, bool isDir, bool isFile, bool isSymLink, bool isWritable, bool isReadable, bool isExecutable) { d = new QUrlInfoPrivate; d->name = name; d->permissions = permissions; d->owner = owner; d->group = group; d->size = size; d->lastModified = lastModified; d->lastRead = lastRead; d->isDir = isDir; d->isFile = isFile; d->isSymLink = isSymLink; d->isWritable = isWritable; d->isReadable = isReadable; d->isExecutable = isExecutable; } /*! Constructs a QUrlInfo object by specifying all the URL's information. The information that is passed is the \a url, file \a permissions, \a owner and \a group and the file's \a size. Also passed is the \a lastModified date/time and the \a lastRead date/time. Flags are also passed, specifically, \a isDir, \a isFile, \a isSymLink, \a isWritable, \a isReadable and \a isExecutable. */ QUrlInfo::QUrlInfo(const QUrl &url, int permissions, const QString &owner, const QString &group, qint64 size, const QDateTime &lastModified, const QDateTime &lastRead, bool isDir, bool isFile, bool isSymLink, bool isWritable, bool isReadable, bool isExecutable) { d = new QUrlInfoPrivate; d->name = QFileInfo(url.path()).fileName(); d->permissions = permissions; d->owner = owner; d->group = group; d->size = size; d->lastModified = lastModified; d->lastRead = lastRead; d->isDir = isDir; d->isFile = isFile; d->isSymLink = isSymLink; d->isWritable = isWritable; d->isReadable = isReadable; d->isExecutable = isExecutable; } /*! Sets the name of the URL to \a name. The name is the full text, for example, "http://qt.nokia.com/doc/qurlinfo.html". If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setName(const QString &name) { if (!d) { d = new QUrlInfoPrivate; } d->name = name; } /*! If \a b is true then the URL is set to be a directory; if \a b is false then the URL is set not to be a directory (which normally means it is a file). (Note that a URL can refer to both a file and a directory even though most file systems do not support this.) If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setDir(bool b) { if (!d) { d = new QUrlInfoPrivate; } d->isDir = b; } /*! If \a b is true then the URL is set to be a file; if \b is false then the URL is set not to be a file (which normally means it is a directory). (Note that a URL can refer to both a file and a directory even though most file systems do not support this.) If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setFile(bool b) { if (!d) { d = new QUrlInfoPrivate; } d->isFile = b; } /*! Specifies that the URL refers to a symbolic link if \a b is true and that it does not if \a b is false. If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setSymLink(bool b) { if (!d) { d = new QUrlInfoPrivate; } d->isSymLink = b; } /*! Specifies that the URL is writable if \a b is true and not writable if \a b is false. If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setWritable(bool b) { if (!d) { d = new QUrlInfoPrivate; } d->isWritable = b; } /*! Specifies that the URL is readable if \a b is true and not readable if \a b is false. If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setReadable(bool b) { if (!d) { d = new QUrlInfoPrivate; } d->isReadable = b; } /*! Specifies that the owner of the URL is called \a s. If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setOwner(const QString &s) { if (!d) { d = new QUrlInfoPrivate; } d->owner = s; } /*! Specifies that the owning group of the URL is called \a s. If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setGroup(const QString &s) { if (!d) { d = new QUrlInfoPrivate; } d->group = s; } /*! Specifies the \a size of the URL. If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setSize(qint64 size) { if (!d) { d = new QUrlInfoPrivate; } d->size = size; } /*! Specifies that the URL has access permissions \a p. If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setPermissions(int p) { if (!d) { d = new QUrlInfoPrivate; } d->permissions = p; } /*! Specifies that the object the URL refers to was last modified at \a dt. If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setLastModified(const QDateTime &dt) { if (!d) { d = new QUrlInfoPrivate; } d->lastModified = dt; } /*! \since 4.4 Specifies that the object the URL refers to was last read at \a dt. If you call this function for an invalid URL info, this function turns it into a valid one. \sa isValid() */ void QUrlInfo::setLastRead(const QDateTime &dt) { if (!d) { d = new QUrlInfoPrivate; } d->lastRead = dt; } /*! Destroys the URL info object. */ QUrlInfo::~QUrlInfo() { delete d; } /*! Assigns the values of \a ui to this QUrlInfo object. */ QUrlInfo &QUrlInfo::operator=(const QUrlInfo &ui) { if (this == &ui) { return *this; } if (ui.d) { if (!d) { d = new QUrlInfoPrivate; } *d = *ui.d; } else { delete d; d = 0; } return *this; } /*! Returns the file name of the URL. \sa isValid() */ QString QUrlInfo::name() const { if (!d) { return QString(); } return d->name; } /*! Returns the permissions of the URL. You can use the \c PermissionSpec flags to test for certain permissions. \sa isValid() */ int QUrlInfo::permissions() const { if (!d) { return 0; } return d->permissions; } /*! Returns the owner of the URL. \sa isValid() */ QString QUrlInfo::owner() const { if (!d) { return QString(); } return d->owner; } /*! Returns the group of the URL. \sa isValid() */ QString QUrlInfo::group() const { if (!d) { return QString(); } return d->group; } /*! Returns the size of the URL. \sa isValid() */ qint64 QUrlInfo::size() const { if (!d) { return 0; } return d->size; } /*! Returns the last modification date of the URL. \sa isValid() */ QDateTime QUrlInfo::lastModified() const { if (!d) { return QDateTime(); } return d->lastModified; } /*! Returns the date when the URL was last read. \sa isValid() */ QDateTime QUrlInfo::lastRead() const { if (!d) { return QDateTime(); } return d->lastRead; } /*! Returns true if the URL is a directory; otherwise returns false. \sa isValid() */ bool QUrlInfo::isDir() const { if (!d) { return false; } return d->isDir; } /*! Returns true if the URL is a file; otherwise returns false. \sa isValid() */ bool QUrlInfo::isFile() const { if (!d) { return false; } return d->isFile; } /*! Returns true if the URL is a symbolic link; otherwise returns false. \sa isValid() */ bool QUrlInfo::isSymLink() const { if (!d) { return false; } return d->isSymLink; } /*! Returns true if the URL is writable; otherwise returns false. \sa isValid() */ bool QUrlInfo::isWritable() const { if (!d) { return false; } return d->isWritable; } /*! Returns true if the URL is readable; otherwise returns false. \sa isValid() */ bool QUrlInfo::isReadable() const { if (!d) { return false; } return d->isReadable; } /*! Returns true if the URL is executable; otherwise returns false. \sa isValid() */ bool QUrlInfo::isExecutable() const { if (!d) { return false; } return d->isExecutable; } /*! Returns true if \a i1 is greater than \a i2; otherwise returns false. The objects are compared by the value, which is specified by \a sortBy. This must be one of QDir::Name, QDir::Time or QDir::Size. */ bool QUrlInfo::greaterThan(const QUrlInfo &i1, const QUrlInfo &i2, int sortBy) { switch (sortBy) { case QDir::Name: return i1.name() > i2.name(); case QDir::Time: return i1.lastModified() > i2.lastModified(); case QDir::Size: return i1.size() > i2.size(); default: return false; } } /*! Returns true if \a i1 is less than \a i2; otherwise returns false. The objects are compared by the value, which is specified by \a sortBy. This must be one of QDir::Name, QDir::Time or QDir::Size. */ bool QUrlInfo::lessThan(const QUrlInfo &i1, const QUrlInfo &i2, int sortBy) { return !greaterThan(i1, i2, sortBy); } /*! Returns true if \a i1 equals to \a i2; otherwise returns false. The objects are compared by the value, which is specified by \a sortBy. This must be one of QDir::Name, QDir::Time or QDir::Size. */ bool QUrlInfo::equal(const QUrlInfo &i1, const QUrlInfo &i2, int sortBy) { switch (sortBy) { case QDir::Name: return i1.name() == i2.name(); case QDir::Time: return i1.lastModified() == i2.lastModified(); case QDir::Size: return i1.size() == i2.size(); default: return false; } } /*! Returns true if this QUrlInfo is equal to \a other; otherwise returns false. \sa lessThan(), equal() */ bool QUrlInfo::operator==(const QUrlInfo &other) const { if (!d) { return other.d == 0; } if (!other.d) { return false; } return (d->name == other.d->name && d->permissions == other.d->permissions && d->owner == other.d->owner && d->group == other.d->group && d->size == other.d->size && d->lastModified == other.d->lastModified && d->lastRead == other.d->lastRead && d->isDir == other.d->isDir && d->isFile == other.d->isFile && d->isSymLink == other.d->isSymLink && d->isWritable == other.d->isWritable && d->isReadable == other.d->isReadable && d->isExecutable == other.d->isExecutable); } /*! \fn bool QUrlInfo::operator!=(const QUrlInfo &other) const \since 4.2 Returns true if this QUrlInfo is not equal to \a other; otherwise returns false. \sa lessThan(), equal() */ /*! Returns true if the URL info is valid; otherwise returns false. Valid means that the QUrlInfo contains real information. You should always check if the URL info is valid before relying on the values. */ bool QUrlInfo::isValid() const { return d != 0; } QT_END_NAMESPACE qupzilla-1.6.0/src/lib/3rdparty/qurlinfo.h000066400000000000000000000106661226107126500205070ustar00rootroot00000000000000/**************************************************************************** ** ** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of the QtNetwork module of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:LGPL$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Digia. For licensing terms and ** conditions see http://qt.digia.com/licensing. For further information ** use the contact form at http://qt.digia.com/contact-us. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Digia gives you certain additional ** rights. These rights are described in the Digia Qt LGPL Exception ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef QURLINFO_H #define QURLINFO_H #include #include #include QT_BEGIN_NAMESPACE class QUrl; class QUrlInfoPrivate; class QUrlInfo { public: enum PermissionSpec { ReadOwner = 00400, WriteOwner = 00200, ExeOwner = 00100, ReadGroup = 00040, WriteGroup = 00020, ExeGroup = 00010, ReadOther = 00004, WriteOther = 00002, ExeOther = 00001 }; QUrlInfo(); QUrlInfo(const QUrlInfo &ui); QUrlInfo(const QString &name, int permissions, const QString &owner, const QString &group, qint64 size, const QDateTime &lastModified, const QDateTime &lastRead, bool isDir, bool isFile, bool isSymLink, bool isWritable, bool isReadable, bool isExecutable); QUrlInfo(const QUrl &url, int permissions, const QString &owner, const QString &group, qint64 size, const QDateTime &lastModified, const QDateTime &lastRead, bool isDir, bool isFile, bool isSymLink, bool isWritable, bool isReadable, bool isExecutable); QUrlInfo &operator=(const QUrlInfo &ui); virtual ~QUrlInfo(); virtual void setName(const QString &name); virtual void setDir(bool b); virtual void setFile(bool b); virtual void setSymLink(bool b); virtual void setOwner(const QString &s); virtual void setGroup(const QString &s); virtual void setSize(qint64 size); virtual void setWritable(bool b); virtual void setReadable(bool b); virtual void setPermissions(int p); virtual void setLastModified(const QDateTime &dt); void setLastRead(const QDateTime &dt); bool isValid() const; QString name() const; int permissions() const; QString owner() const; QString group() const; qint64 size() const; QDateTime lastModified() const; QDateTime lastRead() const; bool isDir() const; bool isFile() const; bool isSymLink() const; bool isWritable() const; bool isReadable() const; bool isExecutable() const; static bool greaterThan(const QUrlInfo &i1, const QUrlInfo &i2, int sortBy); static bool lessThan(const QUrlInfo &i1, const QUrlInfo &i2, int sortBy); static bool equal(const QUrlInfo &i1, const QUrlInfo &i2, int sortBy); bool operator==(const QUrlInfo &i) const; inline bool operator!=(const QUrlInfo &i) const { return !operator==(i); } private: QUrlInfoPrivate* d; }; QT_END_NAMESPACE #endif // QURLINFO_H qupzilla-1.6.0/src/lib/3rdparty/squeezelabelv1.cpp000066400000000000000000000007701226107126500221260ustar00rootroot00000000000000#include "squeezelabelv1.h" SqueezeLabelV1::SqueezeLabelV1(QWidget* parent) : QLabel(parent) { } void SqueezeLabelV1::paintEvent(QPaintEvent* event) { if (m_SqueezedTextCache != text()) { m_SqueezedTextCache = text(); QFontMetrics fm = fontMetrics(); if (fm.width(m_SqueezedTextCache) > contentsRect().width()) { QString elided = fm.elidedText(text(), Qt::ElideMiddle, width()); setText(elided); } } QLabel::paintEvent(event); } qupzilla-1.6.0/src/lib/3rdparty/squeezelabelv1.h000066400000000000000000000037041226107126500215730ustar00rootroot00000000000000#ifndef SQUEEZELABELV1_H #define SQUEEZELABELV1_H #include "qz_namespace.h" /** * Copyright (c) 2009, Benjamin C. Meyer * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the Benjamin Meyer nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ #include /* A label that will squeeze the set text to fit within the size of the widget. The text will be elided in the middle. */ class QT_QUPZILLA_EXPORT SqueezeLabelV1 : public QLabel { Q_OBJECT public: SqueezeLabelV1(QWidget* parent = 0); protected: void paintEvent(QPaintEvent* event); private: QString m_SqueezedTextCache; }; #endif // SQUEEZELABELV1_H qupzilla-1.6.0/src/lib/3rdparty/squeezelabelv2.cpp000066400000000000000000000063021226107126500221240ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #include "squeezelabelv2.h" #include #include #include #include #include #include SqueezeLabelV2::SqueezeLabelV2(QWidget* parent) : QLabel(parent) { } SqueezeLabelV2::SqueezeLabelV2(const QString &string) : QLabel() { setText(string); } void SqueezeLabelV2::setText(const QString &txt) { m_originalText = txt; QFontMetrics fm = fontMetrics(); QString elided = fm.elidedText(m_originalText, Qt::ElideMiddle, width()); QLabel::setText(elided); } void SqueezeLabelV2::copy() { if (selectedText().length() == text().length()) { QApplication::clipboard()->setText(m_originalText); } else { QApplication::clipboard()->setText(selectedText()); } } void SqueezeLabelV2::contextMenuEvent(QContextMenuEvent* event) { if (!(textInteractionFlags() & Qt::TextSelectableByMouse) && !(textInteractionFlags() & Qt::TextSelectableByKeyboard)) { event->ignore(); return; } QMenu menu; QAction* act = menu.addAction(tr("Copy"), this, SLOT(copy())); act->setShortcut(QKeySequence("Ctrl+C")); act->setEnabled(hasSelectedText()); menu.exec(event->globalPos()); } void SqueezeLabelV2::keyPressEvent(QKeyEvent* event) { if (event->key() == Qt::Key_C && event->modifiers() == Qt::ControlModifier) { copy(); } } QString SqueezeLabelV2::originalText() { return m_originalText; } void SqueezeLabelV2::resizeEvent(QResizeEvent* event) { QLabel::resizeEvent(event); QFontMetrics fm = fontMetrics(); QString elided = fm.elidedText(m_originalText, Qt::ElideMiddle, width()); QLabel::setText(elided); } void SqueezeLabelV2::mousePressEvent(QMouseEvent* event) { if (event->buttons() & Qt::LeftButton) { m_dragStart = event->pos(); } QLabel::mousePressEvent(event); } void SqueezeLabelV2::mouseMoveEvent(QMouseEvent* event) { if (!(event->buttons() & Qt::LeftButton) || selectedText().length() != text().length()) { QLabel::mouseMoveEvent(event); return; } int manhattanLength = (event->pos() - m_dragStart).manhattanLength(); if (manhattanLength <= QApplication::startDragDistance()) { return; } QDrag* drag = new QDrag(this); QMimeData* mime = new QMimeData; mime->setText(m_originalText); drag->setMimeData(mime); drag->exec(); } qupzilla-1.6.0/src/lib/3rdparty/squeezelabelv2.h000066400000000000000000000030221226107126500215650ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SQUEEZELABELV2_H #define SQUEEZELABELV2_H #include "qz_namespace.h" #include class QT_QUPZILLA_EXPORT SqueezeLabelV2 : public QLabel { Q_OBJECT public: SqueezeLabelV2(QWidget* parent = 0); SqueezeLabelV2(const QString &string); QString originalText(); void setText(const QString &txt); private slots: void copy(); protected: void contextMenuEvent(QContextMenuEvent* event); void keyPressEvent(QKeyEvent* event); void resizeEvent(QResizeEvent* event); void mousePressEvent(QMouseEvent* event); void mouseMoveEvent(QMouseEvent* event); private: QString m_originalText; QPoint m_dragStart; }; #endif // SQUEEZELABELV2_H qupzilla-1.6.0/src/lib/3rdparty/stylehelper.cpp000066400000000000000000000175071226107126500215440ustar00rootroot00000000000000/************************************************************************** ** ** This file is part of Qt Creator ** ** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). ** ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** Commercial Usage ** ** Licensees holding valid Qt Commercial licenses may use this file in ** accordance with the Qt Commercial License Agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Nokia. ** ** GNU Lesser General Public License Usage ** ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** If you are unsure which license is appropriate for your use, please ** contact the sales department at http://qt.nokia.com/contact. ** **************************************************************************/ #include "stylehelper.h" #include #include #include #include #include #include #include #include // Clamps float color values within (0, 255) static int clamp(float x) { const int val = x > 255 ? 255 : static_cast(x); return val < 0 ? 0 : val; } namespace Utils { qreal StyleHelper::sidebarFontSize() { #if defined(Q_OS_MAC) return 10; #else return 7.5; #endif } QColor StyleHelper::panelTextColor(bool lightColored) { if (!lightColored) { return Qt::white; } else { return Qt::black; } } // Invalid by default, setBaseColor needs to be called at least once QColor StyleHelper::m_baseColor; QColor StyleHelper::m_requestedBaseColor; QColor StyleHelper::baseColor(bool lightColored) { if (!lightColored) { return m_baseColor; } else { return m_baseColor.lighter(230); } } QColor StyleHelper::highlightColor(bool lightColored) { QColor result = baseColor(lightColored); if (!lightColored) result.setHsv(result.hue(), clamp(result.saturation()), clamp(result.value() * 1.16)); else result.setHsv(result.hue(), clamp(result.saturation()), clamp(result.value() * 1.06)); return result; } QColor StyleHelper::shadowColor(bool lightColored) { QColor result = baseColor(lightColored); result.setHsv(result.hue(), clamp(result.saturation() * 1.1), clamp(result.value() * 0.70)); return result; } QColor StyleHelper::borderColor(bool lightColored) { QColor result = baseColor(lightColored); result.setHsv(result.hue(), result.saturation(), result.value() / 2); return result; } // We try to ensure that the actual color used are within // reasonalbe bounds while generating the actual baseColor // from the users request. void StyleHelper::setBaseColor(const QColor &newcolor) { m_requestedBaseColor = newcolor; QColor color; color.setHsv(newcolor.hue(), newcolor.saturation() * 0.7, 64 + newcolor.value() / 3); if (color.isValid() && color != m_baseColor) { m_baseColor = color; foreach (QWidget* w, QApplication::topLevelWidgets()) { w->update(); } } } static void verticalGradientHelper(QPainter* p, const QRect &spanRect, const QRect &rect, bool lightColored) { QColor highlight = StyleHelper::highlightColor(lightColored); QColor shadow = StyleHelper::shadowColor(lightColored); QLinearGradient grad(spanRect.topRight(), spanRect.topLeft()); grad.setColorAt(0, highlight.lighter(117)); grad.setColorAt(1, shadow.darker(109)); p->fillRect(rect, grad); QColor light(255, 255, 255, 80); p->setPen(light); p->drawLine(rect.topRight() - QPoint(1, 0), rect.bottomRight() - QPoint(1, 0)); QColor dark(0, 0, 0, 90); p->setPen(dark); p->drawLine(rect.topLeft(), rect.bottomLeft()); } void StyleHelper::verticalGradient(QPainter* painter, const QRect &spanRect, const QRect &clipRect, bool lightColored) { if (StyleHelper::usePixmapCache()) { QString key; QColor keyColor = baseColor(lightColored); key.sprintf("mh_vertical %d %d %d %d %d", spanRect.width(), spanRect.height(), clipRect.width(), clipRect.height(), keyColor.rgb());; QPixmap pixmap; if (!QPixmapCache::find(key, pixmap)) { pixmap = QPixmap(clipRect.size()); QPainter p(&pixmap); QRect rect(0, 0, clipRect.width(), clipRect.height()); verticalGradientHelper(&p, spanRect, rect, lightColored); p.end(); QPixmapCache::insert(key, pixmap); } painter->drawPixmap(clipRect.topLeft(), pixmap); } else { verticalGradientHelper(painter, spanRect, clipRect, lightColored); } } // Draws a cached pixmap with shadow void StyleHelper::drawIconWithShadow(const QIcon &icon, const QRect &rect, QPainter* p, QIcon::Mode iconMode, int radius, const QColor &color, const QPoint &offset) { QPixmap cache; QString pixmapName = QString("icon %0 %1 %2").arg(icon.cacheKey()).arg(iconMode).arg(rect.height()); if (!QPixmapCache::find(pixmapName, cache)) { QPixmap px = icon.pixmap(rect.size()); cache = QPixmap(px.size() + QSize(radius * 2, radius * 2)); cache.fill(Qt::transparent); QPainter cachePainter(&cache); if (iconMode == QIcon::Disabled) { QImage im = px.toImage().convertToFormat(QImage::Format_ARGB32); for (int y = 0; y < im.height(); ++y) { QRgb* scanLine = (QRgb*)im.scanLine(y); for (int x = 0; x < im.width(); ++x) { QRgb pixel = *scanLine; char intensity = qGray(pixel); *scanLine = qRgba(intensity, intensity, intensity, qAlpha(pixel)); ++scanLine; } } px = QPixmap::fromImage(im); } // Draw shadow QImage tmp(px.size() + QSize(radius * 2, radius * 2 + 1), QImage::Format_ARGB32_Premultiplied); tmp.fill(Qt::transparent); QPainter tmpPainter(&tmp); tmpPainter.setCompositionMode(QPainter::CompositionMode_Source); tmpPainter.drawPixmap(QPoint(radius, radius), px); tmpPainter.end(); // blur the alpha channel QImage blurred(tmp.size(), QImage::Format_ARGB32_Premultiplied); blurred.fill(Qt::transparent); QPainter blurPainter(&blurred); qt_blurImage(&blurPainter, tmp, radius, false, true); blurPainter.end(); tmp = blurred; // blacken the image... tmpPainter.begin(&tmp); tmpPainter.setCompositionMode(QPainter::CompositionMode_SourceIn); tmpPainter.fillRect(tmp.rect(), color); tmpPainter.end(); tmpPainter.begin(&tmp); tmpPainter.setCompositionMode(QPainter::CompositionMode_SourceIn); tmpPainter.fillRect(tmp.rect(), color); tmpPainter.end(); // draw the blurred drop shadow... cachePainter.drawImage(QRect(0, 0, cache.rect().width(), cache.rect().height()), tmp); // Draw the actual pixmap... cachePainter.drawPixmap(QPoint(radius, radius) + offset, px); QPixmapCache::insert(pixmapName, cache); } QRect targetRect = cache.rect(); targetRect.moveCenter(rect.center()); p->drawPixmap(targetRect.topLeft() - offset, cache); } } // namespace Utils qupzilla-1.6.0/src/lib/3rdparty/stylehelper.h000066400000000000000000000063011226107126500211770ustar00rootroot00000000000000/************************************************************************** ** ** This file is part of Qt Creator ** ** Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies). ** ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** Commercial Usage ** ** Licensees holding valid Qt Commercial licenses may use this file in ** accordance with the Qt Commercial License Agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and Nokia. ** ** GNU Lesser General Public License Usage ** ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** If you are unsure which license is appropriate for your use, please ** contact the sales department at http://qt.nokia.com/contact. ** **************************************************************************/ #ifndef STYLEHELPER_H #define STYLEHELPER_H #include "qz_namespace.h" #include #include QT_BEGIN_NAMESPACE class QPalette; class QPainter; class QRect; // Note, this is exported but in a private header as qtopengl depends on it. // We should consider adding this as a public helper function. void qt_blurImage(QPainter* p, QImage &blurImage, qreal radius, bool quality, bool alphaOnly, int transposed = 0); QT_END_NAMESPACE // Helper class holding all custom color values namespace Utils { class StyleHelper { public: static const unsigned int DEFAULT_BASE_COLOR = 0x666666; // Height of the project explorer navigation bar static qreal sidebarFontSize(); // This is our color table, all colors derive from baseColor static QColor requestedBaseColor() { return m_requestedBaseColor; } static QColor baseColor(bool lightColored = false); static QColor panelTextColor(bool lightColored = false); static QColor highlightColor(bool lightColored = false); static QColor shadowColor(bool lightColored = false); static QColor borderColor(bool lightColored = false); static QColor sidebarHighlight() { return QColor(255, 255, 255, 40); } static QColor sidebarShadow() { return QColor(0, 0, 0, 40); } // Sets the base color and makes sure all top level widgets are updated static void setBaseColor(const QColor &color); // Gradients used for panels static void verticalGradient(QPainter* painter, const QRect &spanRect, const QRect &clipRect, bool lightColored = false); static bool usePixmapCache() { return true; } static void drawIconWithShadow(const QIcon &icon, const QRect &rect, QPainter* p, QIcon::Mode iconMode, int radius = 3, const QColor &color = QColor(0, 0, 0, 130), const QPoint &offset = QPoint(1, -2)); private: static QColor m_baseColor; static QColor m_requestedBaseColor; }; } // namespace Utils using Utils::StyleHelper; #endif // STYLEHELPER_H qupzilla-1.6.0/src/lib/adblock/000077500000000000000000000000001226107126500163155ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/adblock/adblockaddsubscriptiondialog.cpp000066400000000000000000000104601226107126500247170ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "adblockaddsubscriptiondialog.h" #include "ui_adblockaddsubscriptiondialog.h" AdBlockAddSubscriptionDialog::AdBlockAddSubscriptionDialog(QWidget* parent) : QDialog(parent) , ui(new Ui::AdBlockAddSubscriptionDialog) { ui->setupUi(this); m_knownSubscriptions << Subscription("EasyList (English)", ADBLOCK_EASYLIST_URL) << Subscription("Fanboy's List (English)", "http://www.fanboy.co.nz/adblock/fanboy-adblock.txt") << Subscription("Adversity (English)", "http://adversity.googlecode.com/hg/Adversity.txt") << Subscription("BSI Lista Polska (Polish)", "http://www.bsi.info.pl/filtrABP.txt") << Subscription("Czech List (Czech)", "http://adblock.dajbych.net/adblock.txt") << Subscription("dutchblock (Dutch)", "http://groenewoudt.net/dutchblock/list.txt") << Subscription("Filtros Nauscopicos (Spanish)", "http://abp.mozilla-hispano.org/nauscopio/filtros.txt") << Subscription("hufilter (Hungarian)", "http://www.hufilter.hu/hufilter.txt") << Subscription("IsraelList (Hebrew)", "http://secure.fanboy.co.nz/israelilist/IsraelList.txt") << Subscription("Lista Basa (Polish)", "http://plok.studentlive.pl/abp.txt") << Subscription("NLBlock (Dutch)", "http://www.verzijlbergh.com/adblock/nlblock.txt") << Subscription("Peter Lowe's list (English)", "http://pgl.yoyo.org/adservers/serverlist.php?hostformat=adblockplus&mimetype=plaintext") << Subscription("PLgeneral (Polish)", "http://www.niecko.pl/adblock/adblock.txt") << Subscription("Schacks Adblock Plus liste (Danish)", "http://adblock.schack.dk/block.txt") << Subscription("Xfiles (Italian)", "http://mozilla.gfsolone.com/filtri.txt") << Subscription("EasyPrivacy (English)", "http://easylist-downloads.adblockplus.org/easyprivacy.txt") << Subscription("Antisocial (English)", "http://adversity.googlecode.com/hg/Antisocial.txt") << Subscription("RU Adlist (Russian)", "https://ruadlist.googlecode.com/hg/advblock.txt") << Subscription("ABPindo (Indonesian)", "https://indonesianadblockrules.googlecode.com/hg/subscriptions/abpindo.txt") << Subscription("ChinaList (Chinese)", "http://adblock-chinalist.googlecode.com/svn/trunk/adblock.txt"); foreach (const Subscription &subscription, m_knownSubscriptions) { ui->comboBox->addItem(subscription.title); } connect(ui->comboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(indexChanged(int))); indexChanged(0); } QString AdBlockAddSubscriptionDialog::title() const { return ui->title->text(); } QString AdBlockAddSubscriptionDialog::url() const { return ui->url->text(); } void AdBlockAddSubscriptionDialog::indexChanged(int index) { const Subscription subscription = m_knownSubscriptions.at(index); int pos = subscription.title.indexOf(QLatin1Char('(')); QString title = subscription.title; if (pos > 0) { title = title.left(pos).trimmed(); } ui->title->setText(title); ui->title->setCursorPosition(0); ui->url->setText(subscription.url); ui->url->setCursorPosition(0); } AdBlockAddSubscriptionDialog::~AdBlockAddSubscriptionDialog() { delete ui; } qupzilla-1.6.0/src/lib/adblock/adblockaddsubscriptiondialog.h000066400000000000000000000032711226107126500243660ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef ADBLOCKADDSUBSCRIPTIONDIALOG_H #define ADBLOCKADDSUBSCRIPTIONDIALOG_H #include #include #include "qz_namespace.h" namespace Ui { class AdBlockAddSubscriptionDialog; } class QT_QUPZILLA_EXPORT AdBlockAddSubscriptionDialog : public QDialog { Q_OBJECT public: explicit AdBlockAddSubscriptionDialog(QWidget* parent = 0); ~AdBlockAddSubscriptionDialog(); QString title() const; QString url() const; private slots: void indexChanged(int index); private: Ui::AdBlockAddSubscriptionDialog* ui; struct Subscription { QString title; QString url; Subscription() {} Subscription(const QString &t, const QString &u) { title = t; url = u; } }; QVector m_knownSubscriptions; }; #endif // ADBLOCKADDSUBSCRIPTIONDIALOG_H qupzilla-1.6.0/src/lib/adblock/adblockaddsubscriptiondialog.ui000066400000000000000000000044411226107126500245540ustar00rootroot00000000000000 AdBlockAddSubscriptionDialog 0 0 557 162 Add Subscription Title: Address: Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok Add new subscription to AdBlock: buttonBox accepted() AdBlockAddSubscriptionDialog accept() 248 254 157 274 buttonBox rejected() AdBlockAddSubscriptionDialog reject() 316 260 286 274 qupzilla-1.6.0/src/lib/adblock/adblockblockednetworkreply.cpp000066400000000000000000000064711226107126500244420ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ /** * Copyright (c) 2009, Benjamin C. Meyer * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the Benjamin Meyer nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ #include "adblockblockednetworkreply.h" #include "adblocksubscription.h" #include "adblockrule.h" #include #include AdBlockBlockedNetworkReply::AdBlockBlockedNetworkReply(const AdBlockSubscription* subscription, const AdBlockRule* rule, QObject* parent) : QNetworkReply(parent) { setOperation(QNetworkAccessManager::GetOperation); setError(QNetworkReply::ContentAccessDenied, QString("AdBlock: %1 (%2)").arg(subscription->title(), rule->filter())); QTimer::singleShot(0, this, SLOT(delayedFinished())); } void AdBlockBlockedNetworkReply::setRequest(const QNetworkRequest &request) { QNetworkReply::setRequest(request); setUrl(request.url()); } qint64 AdBlockBlockedNetworkReply::readData(char* data, qint64 maxSize) { Q_UNUSED(data); Q_UNUSED(maxSize); return -1; } void AdBlockBlockedNetworkReply::delayedFinished() { emit error(QNetworkReply::ContentAccessDenied); emit finished(); } qupzilla-1.6.0/src/lib/adblock/adblockblockednetworkreply.h000066400000000000000000000057361226107126500241120ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ /** * Copyright (c) 2009, Benjamin C. Meyer * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the Benjamin Meyer nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ #ifndef ADBLOCKBLOCKEDNETWORKREPLY_H #define ADBLOCKBLOCKEDNETWORKREPLY_H #include #include "qz_namespace.h" class AdBlockRule; class AdBlockSubscription; class QT_QUPZILLA_EXPORT AdBlockBlockedNetworkReply : public QNetworkReply { Q_OBJECT public: AdBlockBlockedNetworkReply(const AdBlockSubscription* subscription, const AdBlockRule* rule, QObject* parent = 0); void abort() {} void setRequest(const QNetworkRequest &request); protected: qint64 readData(char* data, qint64 maxSize); private slots: void delayedFinished(); }; #endif // ADBLOCKBLOCKEDNETWORKREPLY_H qupzilla-1.6.0/src/lib/adblock/adblockdialog.cpp000066400000000000000000000140751226107126500216070ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "adblockdialog.h" #include "adblockmanager.h" #include "adblocksubscription.h" #include "adblocktreewidget.h" #include "adblockaddsubscriptiondialog.h" #include "mainapplication.h" #include #include #include #include AdBlockDialog::AdBlockDialog(QWidget* parent) : QDialog(parent) , m_manager(AdBlockManager::instance()) , m_currentTreeWidget(0) , m_currentSubscription(0) , m_loaded(false) , m_useLimitedEasyList(false) { setAttribute(Qt::WA_DeleteOnClose); setupUi(this); #ifdef Q_OS_MAC tabWidget->setDocumentMode(false); #endif adblockCheckBox->setChecked(m_manager->isEnabled()); QMenu* menu = new QMenu(buttonMenu); m_actionAddRule = menu->addAction(tr("Add Rule"), this, SLOT(addRule())); m_actionRemoveRule = menu->addAction(tr("Remove Rule"), this, SLOT(removeRule())); menu->addSeparator(); m_actionAddSubscription = menu->addAction(tr("Add Subscription"), this, SLOT(addSubscription())); m_actionRemoveSubscription = menu->addAction(tr("Remove Subscription"), this, SLOT(removeSubscription())); menu->addAction(tr("Update Subscriptions"), m_manager, SLOT(updateAllSubscriptions())); menu->addSeparator(); menu->addAction(tr("Learn about writing rules..."), this, SLOT(learnAboutRules())); buttonMenu->setMenu(menu); connect(menu, SIGNAL(aboutToShow()), this, SLOT(aboutToShowMenu())); connect(adblockCheckBox, SIGNAL(toggled(bool)), this, SLOT(enableAdBlock(bool))); connect(search, SIGNAL(textChanged(QString)), this, SLOT(filterString(QString))); connect(tabWidget, SIGNAL(currentChanged(int)), this, SLOT(currentChanged(int))); connect(buttonBox, SIGNAL(accepted()), this, SLOT(close())); load(); buttonBox->setFocus(); } void AdBlockDialog::showRule(const AdBlockRule* rule) const { AdBlockSubscription* subscription = rule->subscription(); if (!subscription) { return; } for (int i = 0; i < tabWidget->count(); ++i) { AdBlockTreeWidget* treeWidget = qobject_cast(tabWidget->widget(i)); if (subscription == treeWidget->subscription()) { treeWidget->showRule(rule); tabWidget->setCurrentIndex(i); break; } } } void AdBlockDialog::addRule() { m_currentTreeWidget->addRule(); } void AdBlockDialog::removeRule() { m_currentTreeWidget->removeRule(); } void AdBlockDialog::addSubscription() { AdBlockAddSubscriptionDialog dialog(this); if (dialog.exec() != QDialog::Accepted) { return; } QString title = dialog.title(); QString url = dialog.url(); if (AdBlockSubscription* subscription = m_manager->addSubscription(title, url)) { AdBlockTreeWidget* tree = new AdBlockTreeWidget(subscription, tabWidget); int index = tabWidget->insertTab(tabWidget->count() - 1, tree, subscription->title()); tabWidget->setCurrentIndex(index); } } void AdBlockDialog::removeSubscription() { if (m_manager->removeSubscription(m_currentSubscription)) { delete m_currentTreeWidget; } } void AdBlockDialog::currentChanged(int index) { if (index != -1) { m_currentTreeWidget = qobject_cast(tabWidget->widget(index)); m_currentSubscription = m_currentTreeWidget->subscription(); bool isEasyList = m_currentSubscription->url() == QUrl(ADBLOCK_EASYLIST_URL); useLimitedEasyList->setVisible(isEasyList); } } void AdBlockDialog::filterString(const QString &string) { if (m_currentTreeWidget && adblockCheckBox->isChecked()) { m_currentTreeWidget->filterString(string); } } void AdBlockDialog::enableAdBlock(bool state) { m_manager->setEnabled(state); if (state) { load(); } } void AdBlockDialog::aboutToShowMenu() { bool subscriptionEditable = m_currentSubscription && m_currentSubscription->canEditRules(); bool subscriptionRemovable = m_currentSubscription && m_currentSubscription->canBeRemoved(); m_actionAddRule->setEnabled(subscriptionEditable); m_actionRemoveRule->setEnabled(subscriptionEditable); m_actionRemoveSubscription->setEnabled(subscriptionRemovable); } void AdBlockDialog::learnAboutRules() { mApp->addNewTab(QUrl("http://adblockplus.org/en/filters")); } void AdBlockDialog::loadSubscriptions() { for (int i = 0; i < tabWidget->count(); ++i) { AdBlockTreeWidget* treeWidget = qobject_cast(tabWidget->widget(i)); treeWidget->refresh(); } } void AdBlockDialog::load() { if (m_loaded || !adblockCheckBox->isChecked()) { return; } foreach (AdBlockSubscription* subscription, m_manager->subscriptions()) { AdBlockTreeWidget* tree = new AdBlockTreeWidget(subscription, tabWidget); tabWidget->addTab(tree, subscription->title()); } m_useLimitedEasyList = m_manager->useLimitedEasyList(); useLimitedEasyList->setChecked(m_useLimitedEasyList); m_loaded = true; QTimer::singleShot(50, this, SLOT(loadSubscriptions())); } void AdBlockDialog::closeEvent(QCloseEvent* ev) { if (useLimitedEasyList->isChecked() != m_useLimitedEasyList) { m_manager->setUseLimitedEasyList(useLimitedEasyList->isChecked()); } QDialog::closeEvent(ev); } qupzilla-1.6.0/src/lib/adblock/adblockdialog.h000066400000000000000000000037471226107126500212600ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef ADBLOCKDIALOG_H #define ADBLOCKDIALOG_H #include #include "qz_namespace.h" #include "ui_adblockdialog.h" class AdBlockSubscription; class AdBlockTreeWidget; class AdBlockManager; class AdBlockRule; class QT_QUPZILLA_EXPORT AdBlockDialog : public QDialog, public Ui_AdBlockDialog { Q_OBJECT public: explicit AdBlockDialog(QWidget* parent = 0); void showRule(const AdBlockRule* rule) const; private slots: void addRule(); void removeRule(); void addSubscription(); void removeSubscription(); void currentChanged(int index); void filterString(const QString &string); void enableAdBlock(bool state); void aboutToShowMenu(); void learnAboutRules(); void loadSubscriptions(); void load(); private: void closeEvent(QCloseEvent* ev); AdBlockManager* m_manager; AdBlockTreeWidget* m_currentTreeWidget; AdBlockSubscription* m_currentSubscription; QAction* m_actionAddRule; QAction* m_actionRemoveRule; QAction* m_actionAddSubscription; QAction* m_actionRemoveSubscription; bool m_loaded; bool m_useLimitedEasyList; }; #endif // ADBLOCKDIALOG_H qupzilla-1.6.0/src/lib/adblock/adblockdialog.ui000066400000000000000000000122011226107126500214270ustar00rootroot00000000000000 AdBlockDialog 0 0 546 462 AdBlock Configuration Enable AdBlock true Search... Qt::Horizontal QSizePolicy::Fixed 50 20 true 0 Options :/icons/other/adblock.png:/icons/other/adblock.png QToolButton::InstantPopup Qt::ToolButtonTextBesideIcon Qt::Horizontal 40 20 0 0 AdBlock -1 true Use only essential part of EasyList (for performance reasons) Qt::Horizontal QDialogButtonBox::Ok buttonBox accepted() AdBlockDialog accept() 75 495 157 274 buttonBox rejected() AdBlockDialog reject() 75 495 286 274 adblockCheckBox toggled(bool) adblockWidget setEnabled(bool) 106 39 349 74 qupzilla-1.6.0/src/lib/adblock/adblockicon.cpp000066400000000000000000000161131226107126500212730ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "adblockicon.h" #include "adblockrule.h" #include "adblockmanager.h" #include "adblocksubscription.h" #include "mainapplication.h" #include "qupzilla.h" #include "webpage.h" #include "tabbedwebview.h" #include "tabwidget.h" #include "desktopnotificationsfactory.h" #include #include AdBlockIcon::AdBlockIcon(QupZilla* mainClass, QWidget* parent) : ClickableLabel(parent) , p_QupZilla(mainClass) , m_menuAction(0) , m_flashTimer(0) , m_timerTicks(0) , m_enabled(false) { setCursor(Qt::PointingHandCursor); setToolTip(tr("AdBlock lets you block unwanted content on web pages")); connect(this, SIGNAL(clicked(QPoint)), this, SLOT(showMenu(QPoint))); } void AdBlockIcon::popupBlocked(const QString &ruleString, const QUrl &url) { int index = ruleString.lastIndexOf(QLatin1String(" (")); const QString subscriptionName = ruleString.left(index); const QString filter = ruleString.mid(index + 2, ruleString.size() - index - 3); AdBlockSubscription* subscription = AdBlockManager::instance()->subscriptionByName(subscriptionName); if (filter.isEmpty() || !subscription) { return; } AdBlockRule rule(filter, subscription); QPair pair; pair.first = rule; pair.second = url; m_blockedPopups.append(pair); mApp->desktopNotifications()->showNotification(QPixmap(":html/adblock_big.png"), tr("Blocked popup window"), tr("AdBlock blocked unwanted popup window.")); if (!m_flashTimer) { m_flashTimer = new QTimer(this); } if (m_flashTimer->isActive()) { stopAnimation(); } m_flashTimer->setInterval(500); m_flashTimer->start(); connect(m_flashTimer, SIGNAL(timeout()), this, SLOT(animateIcon())); } QAction* AdBlockIcon::menuAction() { if (!m_menuAction) { m_menuAction = new QAction(tr("AdBlock"), this); m_menuAction->setMenu(new QMenu); connect(m_menuAction->menu(), SIGNAL(aboutToShow()), this, SLOT(createMenu())); } m_menuAction->setIcon(QIcon(m_enabled ? ":icons/other/adblock.png" : ":icons/other/adblock-disabled.png")); return m_menuAction; } void AdBlockIcon::createMenu(QMenu* menu) { if (!menu) { menu = qobject_cast(sender()); if (!menu) { return; } } menu->clear(); AdBlockManager* manager = AdBlockManager::instance(); AdBlockCustomList* customList = manager->customList(); WebPage* page = p_QupZilla->weView()->page(); const QUrl pageUrl = page->url(); menu->addAction(tr("Show AdBlock &Settings"), manager, SLOT(showDialog())); menu->addSeparator(); if (!pageUrl.host().isEmpty() && m_enabled && manager->canRunOnScheme(pageUrl.scheme())) { const QString host = page->url().host().contains(QLatin1String("www.")) ? pageUrl.host().mid(4) : pageUrl.host(); const QString hostFilter = QString("@@||%1^$document").arg(host); const QString pageFilter = QString("@@|%1|$document").arg(pageUrl.toString()); QAction* act = menu->addAction(tr("Disable on %1").arg(host)); act->setCheckable(true); act->setChecked(customList->containsFilter(hostFilter)); act->setData(hostFilter); connect(act, SIGNAL(triggered()), this, SLOT(toggleCustomFilter())); act = menu->addAction(tr("Disable only on this page")); act->setCheckable(true); act->setChecked(customList->containsFilter(pageFilter)); act->setData(pageFilter); connect(act, SIGNAL(triggered()), this, SLOT(toggleCustomFilter())); menu->addSeparator(); } if (!m_blockedPopups.isEmpty()) { menu->addAction(tr("Blocked Popup Windows"))->setEnabled(false); for (int i = 0; i < m_blockedPopups.count(); i++) { const QPair &pair = m_blockedPopups.at(i); QString address = pair.second.toString().right(55); QString actionText = tr("%1 with (%2)").arg(address, pair.first.filter()).replace(QLatin1Char('&'), QLatin1String("&&")); QAction* action = menu->addAction(actionText, manager, SLOT(showRule())); action->setData(QVariant::fromValue((void*)&pair.first)); } } menu->addSeparator(); QVector entries = page->adBlockedEntries(); if (entries.isEmpty()) { menu->addAction(tr("No content blocked"))->setEnabled(false); } else { menu->addAction(tr("Blocked URL (AdBlock Rule) - click to edit rule"))->setEnabled(false); foreach (const WebPage::AdBlockedEntry &entry, entries) { QString address = entry.url.toString().right(55); QString actionText = tr("%1 with (%2)").arg(address, entry.rule->filter()).replace(QLatin1Char('&'), QLatin1String("&&")); QAction* action = menu->addAction(actionText, manager, SLOT(showRule())); action->setData(QVariant::fromValue((void*)entry.rule)); } } } void AdBlockIcon::showMenu(const QPoint &pos) { QMenu menu; createMenu(&menu); menu.exec(pos); } void AdBlockIcon::toggleCustomFilter() { QAction* action = qobject_cast(sender()); if (!action) { return; } const QString filter = action->data().toString(); AdBlockManager* manager = AdBlockManager::instance(); AdBlockCustomList* customList = manager->customList(); if (customList->containsFilter(filter)) { customList->removeFilter(filter); } else { AdBlockRule* rule = new AdBlockRule(filter, customList); customList->addRule(rule); } } void AdBlockIcon::animateIcon() { ++m_timerTicks; if (m_timerTicks > 10) { stopAnimation(); return; } if (pixmap()->isNull()) { setPixmap(QPixmap(":icons/other/adblock.png")); } else { setPixmap(QPixmap()); } } void AdBlockIcon::stopAnimation() { m_timerTicks = 0; m_flashTimer->stop(); disconnect(m_flashTimer, SIGNAL(timeout()), this, SLOT(animateIcon())); setEnabled(m_enabled); } void AdBlockIcon::setEnabled(bool enabled) { if (enabled) { setPixmap(QPixmap(":icons/other/adblock.png")); } else { setPixmap(QPixmap(":icons/other/adblock-disabled.png")); } m_enabled = enabled; } AdBlockIcon::~AdBlockIcon() { } qupzilla-1.6.0/src/lib/adblock/adblockicon.h000066400000000000000000000033201226107126500207340ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef ADBLOCKICON_H #define ADBLOCKICON_H #include "qz_namespace.h" #include "clickablelabel.h" #include "adblockrule.h" class QMenu; class QUrl; class QupZilla; class QT_QUPZILLA_EXPORT AdBlockIcon : public ClickableLabel { Q_OBJECT public: explicit AdBlockIcon(QupZilla* mainClass, QWidget* parent = 0); ~AdBlockIcon(); void popupBlocked(const QString &ruleString, const QUrl &url); QAction* menuAction(); signals: public slots: void setEnabled(bool enabled); void createMenu(QMenu* menu = 0); private slots: void showMenu(const QPoint &pos); void toggleCustomFilter(); void animateIcon(); void stopAnimation(); private: QupZilla* p_QupZilla; QAction* m_menuAction; QVector > m_blockedPopups; QTimer* m_flashTimer; int m_timerTicks; bool m_enabled; }; #endif // ADBLOCKICON_H qupzilla-1.6.0/src/lib/adblock/adblockmanager.cpp000066400000000000000000000274471226107126500217710ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "adblockmanager.h" #include "adblockdialog.h" #include "adblocksubscription.h" #include "adblockblockednetworkreply.h" #include "mainapplication.h" #include "webpage.h" #include "qztools.h" #include "networkmanager.h" #include "qupzilla.h" #include "settings.h" #include #include #include #include #include //#define ADBLOCK_DEBUG #ifdef ADBLOCK_DEBUG #include #endif AdBlockManager* AdBlockManager::s_adBlockManager = 0; AdBlockManager::AdBlockManager(QObject* parent) : QObject(parent) , m_loaded(false) , m_enabled(true) , m_useLimitedEasyList(true) { load(); } AdBlockManager* AdBlockManager::instance() { if (!s_adBlockManager) { s_adBlockManager = new AdBlockManager(mApp->networkManager()); } return s_adBlockManager; } void AdBlockManager::setEnabled(bool enabled) { if (m_enabled == enabled) { return; } m_enabled = enabled; mApp->sendMessages(Qz::AM_SetAdBlockIconEnabled, enabled); Settings settings; settings.beginGroup("AdBlock"); settings.setValue("enabled", m_enabled); settings.endGroup(); load(); } QList AdBlockManager::subscriptions() const { return m_subscriptions; } QNetworkReply* AdBlockManager::block(const QNetworkRequest &request) { #ifdef ADBLOCK_DEBUG QElapsedTimer timer; timer.start(); #endif const QString urlString = request.url().toEncoded().toLower(); const QString urlDomain = request.url().host().toLower(); const QString urlScheme = request.url().scheme().toLower(); if (!isEnabled() || !canRunOnScheme(urlScheme)) { return 0; } foreach (AdBlockSubscription* subscription, m_subscriptions) { const AdBlockRule* blockedRule = subscription->match(request, urlDomain, urlString); if (blockedRule) { QVariant v = request.attribute((QNetworkRequest::Attribute)(QNetworkRequest::User + 100)); WebPage* webPage = static_cast(v.value()); if (WebPage::isPointerSafeToUse(webPage)) { if (!canBeBlocked(webPage->url())) { return 0; } webPage->addAdBlockRule(blockedRule, request.url()); } AdBlockBlockedNetworkReply* reply = new AdBlockBlockedNetworkReply(subscription, blockedRule, this); reply->setRequest(request); #ifdef ADBLOCK_DEBUG qDebug() << "BLOCKED: " << timer.elapsed() << blockedRule->filter() << request.url(); #endif return reply; } } #ifdef ADBLOCK_DEBUG qDebug() << timer.elapsed() << request.url(); #endif return 0; } QStringList AdBlockManager::disabledRules() const { return m_disabledRules; } void AdBlockManager::addDisabledRule(const QString &filter) { m_disabledRules.append(filter); } void AdBlockManager::removeDisabledRule(const QString &filter) { m_disabledRules.removeOne(filter); } AdBlockSubscription* AdBlockManager::addSubscription(const QString &title, const QString &url) { if (title.isEmpty() || url.isEmpty()) { return 0; } QString fileName = QzTools::filterCharsFromFilename(title.toLower()) + ".txt"; QString filePath = QzTools::ensureUniqueFilename(mApp->currentProfilePath() + "adblock/" + fileName); QByteArray data = QString("Title: %1\nUrl: %2\n[Adblock Plus 1.1.1]").arg(title, url).toLatin1(); QFile file(filePath); if (!file.open(QFile::WriteOnly | QFile::Truncate)) { qWarning() << "AdBlockManager: Cannot write to file" << filePath; return 0; } file.write(data); file.close(); AdBlockSubscription* subscription = new AdBlockSubscription(title, this); subscription->setUrl(QUrl(url)); subscription->setFilePath(filePath); subscription->loadSubscription(m_disabledRules); m_subscriptions.insert(m_subscriptions.count() - 1, subscription); return subscription; } bool AdBlockManager::removeSubscription(AdBlockSubscription* subscription) { if (!m_subscriptions.contains(subscription) || !subscription->canBeRemoved()) { return false; } QFile(subscription->filePath()).remove(); m_subscriptions.removeOne(subscription); delete subscription; return true; } AdBlockCustomList* AdBlockManager::customList() const { foreach (AdBlockSubscription* subscription, m_subscriptions) { AdBlockCustomList* list = qobject_cast(subscription); if (list) { return list; } } return 0; } void AdBlockManager::load() { if (m_loaded) { return; } #ifdef ADBLOCK_DEBUG QElapsedTimer timer; timer.start(); #endif Settings settings; settings.beginGroup("AdBlock"); m_enabled = settings.value("enabled", m_enabled).toBool(); m_useLimitedEasyList = settings.value("useLimitedEasyList", m_useLimitedEasyList).toBool(); m_disabledRules = settings.value("disabledRules", QStringList()).toStringList(); QDateTime lastUpdate = settings.value("lastUpdate", QDateTime()).toDateTime(); settings.endGroup(); if (!m_enabled) { return; } QDir adblockDir(mApp->currentProfilePath() + "adblock"); // Create if neccessary if (!adblockDir.exists()) { QDir(mApp->currentProfilePath()).mkdir("adblock"); } foreach (const QString &fileName, adblockDir.entryList(QStringList("*.txt"), QDir::Files)) { if (fileName == QLatin1String("customlist.txt")) { continue; } const QString absolutePath = adblockDir.absoluteFilePath(fileName); QFile file(absolutePath); if (!file.open(QFile::ReadOnly)) { continue; } QTextStream textStream(&file); textStream.setCodec("UTF-8"); QString title = textStream.readLine(1024).remove(QLatin1String("Title: ")); QUrl url = QUrl(textStream.readLine(1024).remove(QLatin1String("Url: "))); if (title.isEmpty() || !url.isValid()) { qWarning() << "AdBlockManager: Invalid subscription file" << absolutePath; continue; } AdBlockSubscription* subscription = new AdBlockSubscription(title, this); subscription->setUrl(url); subscription->setFilePath(absolutePath); connect(subscription, SIGNAL(subscriptionUpdated()), mApp, SLOT(reloadUserStyleSheet())); m_subscriptions.append(subscription); } // Prepend EasyList if subscriptions are empty if (m_subscriptions.isEmpty()) { AdBlockSubscription* easyList = new AdBlockSubscription(tr("EasyList"), this); easyList->setUrl(QUrl(ADBLOCK_EASYLIST_URL)); easyList->setFilePath(mApp->currentProfilePath() + "adblock/easylist.txt"); connect(easyList, SIGNAL(subscriptionUpdated()), mApp, SLOT(reloadUserStyleSheet())); m_subscriptions.prepend(easyList); } // Append CustomList AdBlockCustomList* customList = new AdBlockCustomList(this); m_subscriptions.append(customList); connect(customList, SIGNAL(subscriptionEdited()), mApp, SLOT(reloadUserStyleSheet())); // Load all subscriptions foreach (AdBlockSubscription* subscription, m_subscriptions) { subscription->loadSubscription(m_disabledRules); } if (lastUpdate.addDays(5) < QDateTime::currentDateTime()) { QTimer::singleShot(1000 * 60, this, SLOT(updateAllSubscriptions())); } #ifdef ADBLOCK_DEBUG qDebug() << "AdBlock loaded in" << timer.elapsed(); #endif m_loaded = true; } void AdBlockManager::updateAllSubscriptions() { foreach (AdBlockSubscription* subscription, m_subscriptions) { subscription->updateSubscription(); } Settings settings; settings.beginGroup("AdBlock"); settings.setValue("lastUpdate", QDateTime::currentDateTime()); settings.endGroup(); } void AdBlockManager::save() { if (!m_loaded) { return; } foreach (AdBlockSubscription* subscription, m_subscriptions) { subscription->saveSubscription(); } Settings settings; settings.beginGroup("AdBlock"); settings.setValue("enabled", m_enabled); settings.setValue("useLimitedEasyList", m_useLimitedEasyList); settings.setValue("disabledRules", m_disabledRules); settings.endGroup(); } bool AdBlockManager::isEnabled() const { return m_enabled; } bool AdBlockManager::canRunOnScheme(const QString &scheme) const { return !(scheme == QLatin1String("file") || scheme == QLatin1String("qrc") || scheme == QLatin1String("qupzilla") || scheme == QLatin1String("data") || scheme == QLatin1String("abp")); } bool AdBlockManager::useLimitedEasyList() const { return m_useLimitedEasyList; } void AdBlockManager::setUseLimitedEasyList(bool useLimited) { m_useLimitedEasyList = useLimited; foreach (AdBlockSubscription* subscription, m_subscriptions) { if (subscription->url() == QUrl(ADBLOCK_EASYLIST_URL)) { subscription->updateSubscription(); } } } bool AdBlockManager::canBeBlocked(const QUrl &url) const { foreach (AdBlockSubscription* subscription, m_subscriptions) { if (subscription->adBlockDisabledForUrl(url)) { return false; } } return true; } QString AdBlockManager::elementHidingRules() const { if (!m_enabled) { return QString(); } QString rules; foreach (AdBlockSubscription* subscription, m_subscriptions) { rules.append(subscription->elementHidingRules()); } return rules; } QString AdBlockManager::elementHidingRulesForDomain(const QUrl &url) const { if (!isEnabled() || !canRunOnScheme(url.scheme())) { return QString(); } // Acid3 doesn't like the way element hiding rules are embedded into page if (url.host() == QLatin1String("acid3.acidtests.org")) { return QString(); } QString rules; foreach (AdBlockSubscription* subscription, m_subscriptions) { if (subscription->elemHideDisabledForUrl(url)) { return QString(); } rules.append(subscription->elementHidingRulesForDomain(url.host())); } // Remove last "," if (!rules.isEmpty()) { rules = rules.left(rules.size() - 1); } return rules; } AdBlockSubscription* AdBlockManager::subscriptionByName(const QString &name) const { foreach (AdBlockSubscription* subscription, m_subscriptions) { if (subscription->title() == name) { return subscription; } } return 0; } AdBlockDialog* AdBlockManager::showDialog() { if (!m_adBlockDialog) { m_adBlockDialog = new AdBlockDialog(mApp->getWindow()); } m_adBlockDialog.data()->show(); return m_adBlockDialog.data(); } void AdBlockManager::showRule() { if (QAction* action = qobject_cast(sender())) { const AdBlockRule* rule = static_cast(action->data().value()); if (rule) { showDialog()->showRule(rule); } } } AdBlockManager::~AdBlockManager() { qDeleteAll(m_subscriptions); } qupzilla-1.6.0/src/lib/adblock/adblockmanager.h000066400000000000000000000051031226107126500214170ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef ADBLOCKMANAGER_H #define ADBLOCKMANAGER_H #include #include #include #include "qz_namespace.h" class QUrl; class QNetworkReply; class QNetworkRequest; class AdBlockDialog; class AdBlockCustomList; class AdBlockSubscription; class QT_QUPZILLA_EXPORT AdBlockManager : public QObject { Q_OBJECT public: AdBlockManager(QObject* parent = 0); ~AdBlockManager(); static AdBlockManager* instance(); void load(); void save(); bool isEnabled() const; bool canRunOnScheme(const QString &scheme) const; bool useLimitedEasyList() const; void setUseLimitedEasyList(bool useLimited); QString elementHidingRules() const; QString elementHidingRulesForDomain(const QUrl &url) const; AdBlockSubscription* subscriptionByName(const QString &name) const; QList subscriptions() const; QNetworkReply* block(const QNetworkRequest &request); QStringList disabledRules() const; void addDisabledRule(const QString &filter); void removeDisabledRule(const QString &filter); AdBlockSubscription* addSubscription(const QString &title, const QString &url); bool removeSubscription(AdBlockSubscription* subscription); AdBlockCustomList* customList() const; public slots: void setEnabled(bool enabled); void showRule(); void updateAllSubscriptions(); AdBlockDialog* showDialog(); private: inline bool canBeBlocked(const QUrl &url) const; static AdBlockManager* s_adBlockManager; bool m_loaded; bool m_enabled; bool m_useLimitedEasyList; QList m_subscriptions; QStringList m_disabledRules; QPointer m_adBlockDialog; }; #endif // ADBLOCKMANAGER_H qupzilla-1.6.0/src/lib/adblock/adblockrule.cpp000066400000000000000000000454571226107126500213270ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ /** * Copyright (c) 2009, Zsombor Gegesy * Copyright (c) 2009, Benjamin C. Meyer * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the Benjamin Meyer nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ #include "adblockrule.h" #include "adblocksubscription.h" #include "qztools.h" #include "qzregexp.h" #include #include #include #include #include #include #include // Version for Qt < 4.8 has one issue, it will wrongly // count .co.uk (and others) as second-level domain static QString toSecondLevelDomain(const QUrl &url) { #if QT_VERSION >= 0x040800 const QString topLevelDomain = url.topLevelDomain(); const QString urlHost = url.host(); if (topLevelDomain.isEmpty() || urlHost.isEmpty()) { return QString(); } QString domain = urlHost.left(urlHost.size() - topLevelDomain.size()); if (domain.count(QLatin1Char('.')) == 0) { return urlHost; } while (domain.count(QLatin1Char('.')) != 0) { domain = domain.mid(domain.indexOf(QLatin1Char('.')) + 1); } return domain + topLevelDomain; #else QString domain = url.host(); if (domain.count(QLatin1Char('.')) == 0) { return QString(); } while (domain.count(QLatin1Char('.')) != 1) { domain = domain.mid(domain.indexOf(QLatin1Char('.')) + 1); } return domain; #endif } AdBlockRule::AdBlockRule(const QString &filter, AdBlockSubscription* subscription) : m_subscription(subscription) , m_type(StringContainsMatchRule) , m_caseSensitivity(Qt::CaseInsensitive) , m_isEnabled(true) , m_isException(false) , m_isInternalDisabled(false) , m_regExp(0) { setFilter(filter); } AdBlockSubscription* AdBlockRule::subscription() const { return m_subscription; } void AdBlockRule::setSubscription(AdBlockSubscription* subscription) { m_subscription = subscription; } QString AdBlockRule::filter() const { return m_filter; } void AdBlockRule::setFilter(const QString &filter) { m_filter = filter; parseFilter(); } bool AdBlockRule::isCssRule() const { return m_type == CssRule; } QString AdBlockRule::cssSelector() const { return m_cssSelector; } bool AdBlockRule::isDocument() const { return hasOption(DocumentOption); } bool AdBlockRule::isElemhide() const { return hasOption(ElementHideOption); } bool AdBlockRule::isDomainRestricted() const { return hasOption(DomainRestrictedOption); } bool AdBlockRule::isException() const { return m_isException; } bool AdBlockRule::isComment() const { return m_filter.startsWith(QLatin1Char('!')); } bool AdBlockRule::isEnabled() const { return m_isEnabled; } void AdBlockRule::setEnabled(bool enabled) { m_isEnabled = enabled; } bool AdBlockRule::isSlow() const { return m_regExp != 0; } bool AdBlockRule::isInternalDisabled() const { return m_isInternalDisabled; } bool AdBlockRule::urlMatch(const QUrl &url) const { if (!hasOption(DocumentOption) && !hasOption(ElementHideOption)) { return false; } const QString encodedUrl = url.toEncoded(); const QString domain = url.host(); return networkMatch(QNetworkRequest(url), domain, encodedUrl); } bool AdBlockRule::networkMatch(const QNetworkRequest &request, const QString &domain, const QString &encodedUrl) const { if (m_type == CssRule || !m_isEnabled || m_isInternalDisabled) { return false; } bool matched = false; if (m_type == StringContainsMatchRule) { matched = encodedUrl.contains(m_matchString, m_caseSensitivity); } else if (m_type == DomainMatchRule) { matched = isMatchingDomain(domain, m_matchString); } else if (m_type == StringEndsMatchRule) { matched = encodedUrl.endsWith(m_matchString, m_caseSensitivity); } else if (m_type == RegExpMatchRule) { if (!isMatchingRegExpStrings(encodedUrl)) { return false; } matched = (m_regExp->indexIn(encodedUrl) != -1); } if (matched) { // Check domain restrictions if (hasOption(DomainRestrictedOption) && !matchDomain(domain)) { return false; } // Check third-party restriction if (hasOption(ThirdPartyOption) && !matchThirdParty(request)) { return false; } // Check object restrictions if (hasOption(ObjectOption) && !matchObject(request)) { return false; } // Check subdocument restriction if (hasOption(SubdocumentOption) && !matchSubdocument(request)) { return false; } // Check xmlhttprequest restriction if (hasOption(XMLHttpRequestOption) && !matchXmlHttpRequest(request)) { return false; } // Check image restriction if (hasOption(ImageOption) && !matchImage(encodedUrl)) { return false; } } return matched; } bool AdBlockRule::matchDomain(const QString &domain) const { if (!m_isEnabled) { return false; } if (!hasOption(DomainRestrictedOption)) { return true; } if (m_blockedDomains.isEmpty()) { foreach (const QString &d, m_allowedDomains) { if (isMatchingDomain(domain, d)) { return true; } } } else if (m_allowedDomains.isEmpty()) { foreach (const QString &d, m_blockedDomains) { if (isMatchingDomain(domain, d)) { return false; } } return true; } else { foreach (const QString &d, m_blockedDomains) { if (isMatchingDomain(domain, d)) { return false; } } foreach (const QString &d, m_allowedDomains) { if (isMatchingDomain(domain, d)) { return true; } } } return false; } bool AdBlockRule::matchThirdParty(const QNetworkRequest &request) const { const QString referer = request.attribute(QNetworkRequest::Attribute(QNetworkRequest::User + 151), QString()).toString(); if (referer.isEmpty()) { return false; } // Third-party matching should be performed on second-level domains const QString refererHost = toSecondLevelDomain(QUrl(referer)); const QString host = toSecondLevelDomain(request.url()); bool match = refererHost != host; return hasException(ThirdPartyOption) ? !match : match; } bool AdBlockRule::matchObject(const QNetworkRequest &request) const { bool match = request.attribute(QNetworkRequest::Attribute(QNetworkRequest::User + 150)).toString() == QLatin1String("object"); return hasException(ObjectOption) ? !match : match; } bool AdBlockRule::matchSubdocument(const QNetworkRequest &request) const { QWebFrame* originatingFrame = static_cast(request.originatingObject()); if (!originatingFrame) { return false; } QWebPage* page = originatingFrame->page(); if (!page) { return false; } bool match = !(originatingFrame == page->mainFrame()); return hasException(SubdocumentOption) ? !match : match; } bool AdBlockRule::matchXmlHttpRequest(const QNetworkRequest &request) const { bool match = request.rawHeader("X-Requested-With") == QByteArray("XMLHttpRequest"); return hasException(XMLHttpRequestOption) ? !match : match; } bool AdBlockRule::matchImage(const QString &encodedUrl) const { bool match = encodedUrl.endsWith(QLatin1String(".png")) || encodedUrl.endsWith(QLatin1String(".jpg")) || encodedUrl.endsWith(QLatin1String(".gif")) || encodedUrl.endsWith(QLatin1String(".jpeg")); return hasException(ImageOption) ? !match : match; } void AdBlockRule::parseFilter() { QString parsedLine = m_filter; // Empty rule or just comment if (m_filter.trimmed().isEmpty() || m_filter.startsWith(QLatin1Char('!'))) { // We want to differentiate rule disabled by user and rule disabled in subscription file // m_isInternalDisabled is also used when rule is disabled due to all options not being supported m_isEnabled = false; m_isInternalDisabled = true; m_type = Invalid; return; } // CSS Element hiding rule if (parsedLine.contains(QLatin1String("##"))) { m_type = CssRule; int pos = parsedLine.indexOf(QLatin1String("##")); // Domain restricted rule if (!parsedLine.startsWith(QLatin1String("##"))) { QString domains = parsedLine.left(pos); parseDomains(domains, QLatin1Char(',')); } m_cssSelector = parsedLine.mid(pos + 2); // CSS rule cannot have more options -> stop parsing return; } // Exception always starts with @@ if (parsedLine.startsWith(QLatin1String("@@"))) { m_isException = true; parsedLine = parsedLine.mid(2); } // Parse all options following $ char int optionsIndex = parsedLine.indexOf(QLatin1Char('$')); if (optionsIndex >= 0) { QStringList options = parsedLine.mid(optionsIndex + 1).split(QLatin1Char(','), QString::SkipEmptyParts); int handledOptions = 0; foreach (const QString &option, options) { if (option.startsWith(QLatin1String("domain="))) { parseDomains(option.mid(7), QLatin1Char('|')); ++handledOptions; } else if (option == QLatin1String("match-case")) { m_caseSensitivity = Qt::CaseSensitive; ++handledOptions; } else if (option.endsWith(QLatin1String("third-party"))) { setOption(ThirdPartyOption); setException(ThirdPartyOption, option.startsWith(QLatin1Char('~'))); ++handledOptions; } else if (option.endsWith(QLatin1String("object"))) { setOption(ObjectOption); setException(ObjectOption, option.startsWith(QLatin1Char('~'))); ++handledOptions; } else if (option.endsWith(QLatin1String("subdocument"))) { setOption(SubdocumentOption); setException(SubdocumentOption, option.startsWith(QLatin1Char('~'))); ++handledOptions; } else if (option.endsWith(QLatin1String("xmlhttprequest"))) { setOption(XMLHttpRequestOption); setException(XMLHttpRequestOption, option.startsWith(QLatin1Char('~'))); ++handledOptions; } else if (option.endsWith(QLatin1String("image"))) { setOption(ImageOption); setException(ImageOption, option.startsWith(QLatin1Char('~'))); ++handledOptions; } else if (option == QLatin1String("document") && m_isException) { setOption(DocumentOption); ++handledOptions; } else if (option == QLatin1String("elemhide") && m_isException) { setOption(ElementHideOption); ++handledOptions; } else if (option == QLatin1String("collapse")) { // Hiding placeholders of blocked elements is enabled by default ++handledOptions; } } // If we don't handle all options, it's safer to just disable this rule if (handledOptions != options.count()) { m_isInternalDisabled = true; m_type = Invalid; return; } parsedLine = parsedLine.left(optionsIndex); } // Rule is classic regexp if (parsedLine.startsWith(QLatin1Char('/')) && parsedLine.endsWith(QLatin1Char('/'))) { parsedLine = parsedLine.mid(1); parsedLine = parsedLine.left(parsedLine.size() - 1); m_type = RegExpMatchRule; m_regExp = new QzRegExp(parsedLine, m_caseSensitivity); return; } // Remove starting and ending wildcards (*) if (parsedLine.startsWith(QLatin1Char('*'))) { parsedLine = parsedLine.mid(1); } if (parsedLine.endsWith(QLatin1Char('*'))) { parsedLine = parsedLine.left(parsedLine.size() - 1); } // We can use fast string matching for domain here if (parsedLine.startsWith(QLatin1String("||")) && parsedLine.endsWith(QLatin1Char('^')) && !parsedLine.contains(QzRegExp("[/:?=&\\*]"))) { parsedLine = parsedLine.mid(2); parsedLine = parsedLine.left(parsedLine.size() - 1); m_type = DomainMatchRule; m_matchString = parsedLine; return; } // If rule contains only | at end, we can also use string matching if (parsedLine.endsWith(QLatin1Char('|')) && !parsedLine.contains(QzRegExp("[\\^\\*]")) && parsedLine.count(QLatin1Char('|')) == 1) { parsedLine = parsedLine.left(parsedLine.size() - 1); m_type = StringEndsMatchRule; m_matchString = parsedLine; return; } // If we still find a wildcard (*) or separator (^) or (|) // we must modify parsedLine to comply with QzRegExp if (parsedLine.contains(QLatin1Char('*')) || parsedLine.contains(QLatin1Char('^')) || parsedLine.contains(QLatin1Char('|'))) { QString parsedRegExp = parsedLine; parsedRegExp.replace(QzRegExp(QLatin1String("\\*+")), QLatin1String("*")) // remove multiple wildcards .replace(QzRegExp(QLatin1String("\\^\\|$")), QLatin1String("^")) // remove anchors following separator placeholder .replace(QzRegExp(QLatin1String("^(\\*)")), QString()) // remove leading wildcards .replace(QzRegExp(QLatin1String("(\\*)$")), QString()) .replace(QzRegExp(QLatin1String("(\\W)")), QLatin1String("\\\\1")) // escape special symbols .replace(QzRegExp(QLatin1String("^\\\\\\|\\\\\\|")), QLatin1String("^[\\w\\-]+:\\/+(?!\\/)(?:[^\\/]+\\.)?")) // process extended anchor at expression start .replace(QzRegExp(QLatin1String("\\\\\\^")), QLatin1String("(?:[^\\w\\d\\-.%]|$)")) // process separator placeholders .replace(QzRegExp(QLatin1String("^\\\\\\|")), QLatin1String("^")) // process anchor at expression start .replace(QzRegExp(QLatin1String("\\\\\\|$")), QLatin1String("$")) // process anchor at expression end .replace(QzRegExp(QLatin1String("\\\\\\*")), QLatin1String(".*")); // replace wildcards by .* m_type = RegExpMatchRule; m_regExpStrings = parseRegExpFilter(parsedLine); m_regExp = new QzRegExp(parsedRegExp, m_caseSensitivity); return; } // We haven't found anything that needs use of regexp, yay! m_type = StringContainsMatchRule; m_matchString = parsedLine; } void AdBlockRule::parseDomains(const QString &domains, const QChar &separator) { QStringList domainsList = domains.split(separator, QString::SkipEmptyParts); foreach (const QString domain, domainsList) { if (domain.isEmpty()) { continue; } if (domain.startsWith(QLatin1Char('~'))) { m_blockedDomains.append(domain.mid(1)); } else { m_allowedDomains.append(domain); } } if (!m_blockedDomains.isEmpty() || !m_allowedDomains.isEmpty()) { setOption(DomainRestrictedOption); } } bool AdBlockRule::isMatchingDomain(const QString &domain, const QString &filter) const { return QzTools::matchDomain(filter, domain); } bool AdBlockRule::isMatchingRegExpStrings(const QString &url) const { foreach (const QString &string, m_regExpStrings) { if (!url.contains(string)) { return false; } } return true; } // Split regexp filter into strings that can be used with QString::contains // Don't use parts that contains only 1 char and duplicated parts QStringList AdBlockRule::parseRegExpFilter(const QString &parsedFilter) const { // Meta characters in AdBlock rules are | * ^ QStringList list = parsedFilter.split(QzRegExp("[|\\*\\^]"), QString::SkipEmptyParts); list.removeDuplicates(); for (int i = 0; i < list.length(); ++i) { const QString part = list.at(i); if (part.length() < 2) { list.removeAt(i); i--; } } return list; } bool AdBlockRule::hasOption(const AdBlockRule::RuleOption &opt) const { return (m_options & opt); } bool AdBlockRule::hasException(const AdBlockRule::RuleOption &opt) const { return (m_exceptions & opt); } void AdBlockRule::setOption(const AdBlockRule::RuleOption &opt) { m_options |= opt; } void AdBlockRule::setException(const AdBlockRule::RuleOption &opt, bool on) { if (on) { m_exceptions |= opt; } } AdBlockRule::~AdBlockRule() { delete m_regExp; } qupzilla-1.6.0/src/lib/adblock/adblockrule.h000066400000000000000000000125021226107126500207550ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ /** * Copyright (c) 2009, Benjamin C. Meyer * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the Benjamin Meyer nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ #ifndef ADBLOCKRULE_H #define ADBLOCKRULE_H #include #include #include "qz_namespace.h" #include "qzregexp.h" class QNetworkRequest; class QUrl; class AdBlockSubscription; class QT_QUPZILLA_EXPORT AdBlockRule { public: AdBlockRule(const QString &filter = QString(), AdBlockSubscription* subscription = 0); ~AdBlockRule(); AdBlockSubscription* subscription() const; void setSubscription(AdBlockSubscription* subscription); QString filter() const; void setFilter(const QString &filter); bool isCssRule() const; QString cssSelector() const; bool isDocument() const; bool isElemhide() const; bool isDomainRestricted() const; bool isException() const; bool isComment() const; bool isEnabled() const; void setEnabled(bool enabled); bool isSlow() const; bool isInternalDisabled() const; bool urlMatch(const QUrl &url) const; bool networkMatch(const QNetworkRequest &request, const QString &domain, const QString &encodedUrl) const; bool matchDomain(const QString &domain) const; bool matchThirdParty(const QNetworkRequest &request) const; bool matchObject(const QNetworkRequest &request) const; bool matchSubdocument(const QNetworkRequest &request) const; bool matchXmlHttpRequest(const QNetworkRequest &request) const; bool matchImage(const QString &encodedUrl) const; protected: bool isMatchingDomain(const QString &domain, const QString &filter) const; bool isMatchingRegExpStrings(const QString &url) const; QStringList parseRegExpFilter(const QString &parsedFilter) const; private: enum RuleType { CssRule = 0, DomainMatchRule = 1, RegExpMatchRule = 2, StringEndsMatchRule = 3, StringContainsMatchRule = 4, Invalid = 5 }; enum RuleOption { DomainRestrictedOption = 1, ThirdPartyOption = 2, ObjectOption = 4, SubdocumentOption = 8, XMLHttpRequestOption = 16, ImageOption = 32, // Exception only options DocumentOption = 64, ElementHideOption = 128 }; Q_DECLARE_FLAGS(RuleOptions, RuleOption) inline bool hasOption(const RuleOption &opt) const; inline bool hasException(const RuleOption &opt) const; inline void setOption(const RuleOption &opt); inline void setException(const RuleOption &opt, bool on); void parseFilter(); void parseDomains(const QString &domains, const QChar &separator); AdBlockSubscription* m_subscription; RuleType m_type; RuleOptions m_options; RuleOptions m_exceptions; QString m_filter; QString m_cssSelector; QString m_matchString; Qt::CaseSensitivity m_caseSensitivity; bool m_isEnabled; bool m_isException; bool m_isInternalDisabled; QzRegExp* m_regExp; QStringList m_regExpStrings; QStringList m_allowedDomains; QStringList m_blockedDomains; friend class AdBlockSearchTree; }; #endif // ADBLOCKRULE_H qupzilla-1.6.0/src/lib/adblock/adblocksearchtree.cpp000066400000000000000000000064321226107126500224730ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "adblocksearchtree.h" #include "adblockrule.h" #include AdBlockSearchTree::AdBlockSearchTree() : m_root(new Node) { } AdBlockSearchTree::~AdBlockSearchTree() { deleteNode(m_root); } void AdBlockSearchTree::clear() { deleteNode(m_root); m_root = new Node; } bool AdBlockSearchTree::add(const AdBlockRule* rule) { if (rule->m_type != AdBlockRule::StringContainsMatchRule) { return false; } const QString filter = rule->m_matchString; int len = filter.size(); if (len <= 0) { qDebug() << "AdBlockSearchTree: Inserting rule with filter len <= 0!"; return false; } Node* node = m_root; for (int i = 0; i < len; ++i) { const QChar c = filter.at(i); if (!node->children.contains(c)) { Node* n = new Node; n->c = c; node->children[c] = n; } node = node->children[c]; } node->rule = rule; return true; } const AdBlockRule* AdBlockSearchTree::find(const QNetworkRequest &request, const QString &domain, const QString &urlString) const { int len = urlString.size(); if (len <= 0) { return 0; } const QChar* string = urlString.constData(); for (int i = 0; i < len; ++i) { const AdBlockRule* rule = prefixSearch(request, domain, urlString, string++, len - i); if (rule) { return rule; } } return 0; } const AdBlockRule* AdBlockSearchTree::prefixSearch(const QNetworkRequest &request, const QString &domain, const QString &urlString, const QChar* string, int len) const { if (len <= 0) { return 0; } QChar c = string[0]; if (!m_root->children.contains(c)) { return 0; } Node* node = m_root->children[c]; for (int i = 1; i < len; ++i) { const QChar c = (++string)[0]; if (node->rule && node->rule->networkMatch(request, domain, urlString)) { return node->rule; } if (!node->children.contains(c)) { return 0; } node = node->children[c]; } if (node->rule && node->rule->networkMatch(request, domain, urlString)) { return node->rule; } return 0; } void AdBlockSearchTree::deleteNode(AdBlockSearchTree::Node* node) { if (!node) { return; } QHashIterator i(node->children); while (i.hasNext()) { i.next(); deleteNode(i.value()); } delete node; } qupzilla-1.6.0/src/lib/adblock/adblocksearchtree.h000066400000000000000000000033161226107126500221360ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef ADBLOCKSEARCHTREE_H #define ADBLOCKSEARCHTREE_H #include #include #include "qz_namespace.h" class QNetworkRequest; class AdBlockRule; class QT_QUPZILLA_EXPORT AdBlockSearchTree { public: explicit AdBlockSearchTree(); ~AdBlockSearchTree(); void clear(); bool add(const AdBlockRule* rule); const AdBlockRule* find(const QNetworkRequest &request, const QString &domain, const QString &urlString) const; private: struct Node { QChar c; const AdBlockRule* rule; QHash children; Node() : c(0) , rule(0) { } }; const AdBlockRule* prefixSearch(const QNetworkRequest &request, const QString &domain, const QString &urlString, const QChar* string, int len) const; void deleteNode(Node* node); Node* m_root; }; #endif // ADBLOCKSEARCHTREE_H qupzilla-1.6.0/src/lib/adblock/adblocksubscription.cpp000066400000000000000000000360551226107126500230760ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ /** * Copyright (c) 2009, Benjamin C. Meyer * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the Benjamin Meyer nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ #include "adblocksubscription.h" #include "adblockmanager.h" #include "adblocksearchtree.h" #include "mainapplication.h" #include "networkmanager.h" #include "qztools.h" #include "followredirectreply.h" #include #include #include #include AdBlockSubscription::AdBlockSubscription(const QString &title, QObject* parent) : QObject(parent) , m_reply(0) , m_title(title) , m_updated(false) { } QString AdBlockSubscription::title() const { return m_title; } QString AdBlockSubscription::filePath() const { return m_filePath; } void AdBlockSubscription::setFilePath(const QString &path) { m_filePath = path; } QUrl AdBlockSubscription::url() const { return m_url; } void AdBlockSubscription::setUrl(const QUrl &url) { m_url = url; } void AdBlockSubscription::loadSubscription(const QStringList &disabledRules) { QFile file(m_filePath); if (!file.exists()) { QTimer::singleShot(0, this, SLOT(updateSubscription())); return; } if (!file.open(QFile::ReadOnly)) { qWarning() << "AdBlockSubscription::" << __FUNCTION__ << "Unable to open adblock file for reading" << m_filePath; QTimer::singleShot(0, this, SLOT(updateSubscription())); return; } QTextStream textStream(&file); textStream.setCodec("UTF-8"); // Header is on 3rd line textStream.readLine(1024); textStream.readLine(1024); QString header = textStream.readLine(1024); if (!header.startsWith(QLatin1String("[Adblock")) || m_title.isEmpty()) { qWarning() << "AdBlockSubscription::" << __FUNCTION__ << "invalid format of adblock file" << m_filePath; QTimer::singleShot(0, this, SLOT(updateSubscription())); return; } m_rules.clear(); while (!textStream.atEnd()) { AdBlockRule* rule = new AdBlockRule(textStream.readLine(), this); if (disabledRules.contains(rule->filter())) { rule->setEnabled(false); } m_rules.append(rule); } populateCache(); // Initial update if (m_rules.isEmpty() && !m_updated) { QTimer::singleShot(0, this, SLOT(updateSubscription())); } } void AdBlockSubscription::saveSubscription() { } void AdBlockSubscription::updateSubscription() { if (m_reply || !m_url.isValid()) { return; } m_reply = new FollowRedirectReply(m_url, mApp->networkManager()); connect(m_reply, SIGNAL(finished()), this, SLOT(subscriptionDownloaded())); } void AdBlockSubscription::subscriptionDownloaded() { if (m_reply != qobject_cast(sender())) { return; } QByteArray response = QString::fromUtf8(m_reply->readAll()).toUtf8(); if (m_reply->error() == QNetworkReply::NoError && response.startsWith("[Adblock")) { // Prepend subscription info response.prepend(QString("Title: %1\nUrl: %2\n").arg(title(), url().toString()).toUtf8()); saveDownloadedData(response); loadSubscription(AdBlockManager::instance()->disabledRules()); emit subscriptionUpdated(); } m_reply->deleteLater(); m_reply = 0; } void AdBlockSubscription::saveDownloadedData(const QByteArray &data) { QFile file(m_filePath); if (!file.open(QFile::ReadWrite | QFile::Truncate)) { qWarning() << "AdBlockSubscription::" << __FUNCTION__ << "Unable to open adblock file for writing:" << m_filePath; return; } if (AdBlockManager::instance()->useLimitedEasyList() && m_url == QUrl(ADBLOCK_EASYLIST_URL)) { // Third-party advertisers rules are with start domain (||) placeholder which needs regexps // So we are ignoring it for keeping good performance // But we will use whitelist rules at the end of list QByteArray part1 = data.left(data.indexOf(QLatin1String("!-----------------------------Third-party adverts-----------------------------!"))); QByteArray part2 = data.mid(data.indexOf(QLatin1String("!---------------------------------Whitelists----------------------------------!"))); file.write(part1 + part2); file.close(); return; } file.write(data); file.close(); } const AdBlockRule* AdBlockSubscription::match(const QNetworkRequest &request, const QString &urlDomain, const QString &urlString) const { if (m_networkExceptionTree.find(request, urlDomain, urlString)) { return 0; } if (const AdBlockRule* rule = m_networkBlockTree.find(request, urlDomain, urlString)) { return rule; } int count = m_networkExceptionRules.count(); for (int i = 0; i < count; ++i) { const AdBlockRule* rule = m_networkExceptionRules.at(i); if (rule->networkMatch(request, urlDomain, urlString)) { return 0; } } count = m_networkBlockRules.count(); for (int i = 0; i < count; ++i) { const AdBlockRule* rule = m_networkBlockRules.at(i); if (rule->networkMatch(request, urlDomain, urlString)) { return rule; } } return 0; } bool AdBlockSubscription::adBlockDisabledForUrl(const QUrl &url) const { int count = m_documentRules.count(); for (int i = 0; i < count; ++i) { const AdBlockRule* rule = m_documentRules.at(i); if (rule->urlMatch(url)) { return true; } } return false; } bool AdBlockSubscription::elemHideDisabledForUrl(const QUrl &url) const { if (adBlockDisabledForUrl(url)) { return true; } int count = m_elemhideRules.count(); for (int i = 0; i < count; ++i) { const AdBlockRule* rule = m_elemhideRules.at(i); if (rule->urlMatch(url)) { return true; } } return false; } QString AdBlockSubscription::elementHidingRules() const { return m_elementHidingRules; } QString AdBlockSubscription::elementHidingRulesForDomain(const QString &domain) const { QString rules; int addedRulesCount = 0; int count = m_domainRestrictedCssRules.count(); for (int i = 0; i < count; ++i) { const AdBlockRule* rule = m_domainRestrictedCssRules.at(i); if (!rule->matchDomain(domain)) { continue; } if (Q_UNLIKELY(addedRulesCount == 1000)) { rules.append(rule->cssSelector()); rules.append("{display:none !important;}\n"); addedRulesCount = 0; } else { rules.append(rule->cssSelector() + QLatin1Char(',')); addedRulesCount++; } } if (addedRulesCount != 0) { rules = rules.left(rules.size() - 1); rules.append("{display:none !important;}\n"); } return rules; } const AdBlockRule* AdBlockSubscription::rule(int offset) const { if (!QzTools::vectorContainsIndex(m_rules, offset)) { return 0; } return m_rules[offset]; } QVector AdBlockSubscription::allRules() const { return m_rules; } const AdBlockRule* AdBlockSubscription::enableRule(int offset) { if (!QzTools::vectorContainsIndex(m_rules, offset)) { return 0; } AdBlockRule* rule = m_rules[offset]; rule->setEnabled(true); AdBlockManager::instance()->removeDisabledRule(rule->filter()); if (rule->isCssRule()) { populateCache(); mApp->reloadUserStyleSheet(); } return rule; } const AdBlockRule* AdBlockSubscription::disableRule(int offset) { if (!QzTools::vectorContainsIndex(m_rules, offset)) { return 0; } AdBlockRule* rule = m_rules[offset]; rule->setEnabled(false); AdBlockManager::instance()->addDisabledRule(rule->filter()); if (rule->isCssRule()) { populateCache(); mApp->reloadUserStyleSheet(); } return rule; } bool AdBlockSubscription::canEditRules() const { return false; } bool AdBlockSubscription::canBeRemoved() const { return true; } int AdBlockSubscription::addRule(AdBlockRule* rule) { Q_UNUSED(rule) return -1; } bool AdBlockSubscription::removeRule(int offset) { Q_UNUSED(offset) return false; } const AdBlockRule* AdBlockSubscription::replaceRule(AdBlockRule* rule, int offset) { Q_UNUSED(rule) Q_UNUSED(offset) return 0; } void AdBlockSubscription::populateCache() { m_networkExceptionTree.clear(); m_networkExceptionRules.clear(); m_networkBlockTree.clear(); m_networkBlockRules.clear(); m_domainRestrictedCssRules.clear(); m_elementHidingRules.clear(); m_documentRules.clear(); m_elemhideRules.clear(); // Apparently, excessive amount of selectors for one CSS rule is not what WebKit likes. // (In my testings, 4931 is the number that makes it crash) // So let's split it by 1000 selectors... int hidingRulesCount = 0; int count = m_rules.count(); for (int i = 0; i < count; ++i) { const AdBlockRule* rule = m_rules.at(i); // Don't add internally disabled rules to cache if (rule->isInternalDisabled()) { continue; } if (rule->isCssRule()) { // We will add only enabled css rules to cache, because there is no enabled/disabled // check on match. They are directly embedded to pages. if (!rule->isEnabled()) { continue; } if (rule->isDomainRestricted()) { m_domainRestrictedCssRules.append(rule); } else if (Q_UNLIKELY(hidingRulesCount == 1000)) { m_elementHidingRules.append(rule->cssSelector()); m_elementHidingRules.append("{display:none !important;} "); hidingRulesCount = 0; } else { m_elementHidingRules.append(rule->cssSelector() + QLatin1Char(',')); hidingRulesCount++; } } else if (rule->isDocument()) { m_documentRules.append(rule); } else if (rule->isElemhide()) { m_elemhideRules.append(rule); } else if (rule->isException()) { if (!m_networkExceptionTree.add(rule)) { m_networkExceptionRules.append(rule); } } else { if (!m_networkBlockTree.add(rule)) { m_networkBlockRules.append(rule); } } } if (hidingRulesCount != 0) { m_elementHidingRules = m_elementHidingRules.left(m_elementHidingRules.size() - 1); m_elementHidingRules.append("{display:none !important;} "); } } AdBlockSubscription::~AdBlockSubscription() { qDeleteAll(m_rules); } // AdBlockCustomList AdBlockCustomList::AdBlockCustomList(QObject* parent) : AdBlockSubscription(tr("Custom Rules"), parent) { setFilePath(mApp->currentProfilePath() + "adblock/customlist.txt"); } void AdBlockCustomList::saveSubscription() { QFile file(filePath()); if (!file.open(QFile::ReadWrite | QFile::Truncate)) { qWarning() << "AdBlockSubscription::" << __FUNCTION__ << "Unable to open adblock file for writing:" << filePath(); return; } QTextStream textStream(&file); textStream.setCodec("UTF-8"); textStream << "Title: " << title() << endl; textStream << "Url: " << url().toString() << endl; textStream << "[Adblock Plus 1.1.1]" << endl; foreach (const AdBlockRule* rule, m_rules) { textStream << rule->filter() << endl; } file.close(); } bool AdBlockCustomList::canEditRules() const { return true; } bool AdBlockCustomList::canBeRemoved() const { return false; } bool AdBlockCustomList::containsFilter(const QString &filter) const { foreach (const AdBlockRule* rule, m_rules) { if (rule->filter() == filter) { return true; } } return false; } bool AdBlockCustomList::removeFilter(const QString &filter) { for (int i = 0; i < m_rules.count(); ++i) { const AdBlockRule* rule = m_rules.at(i); if (rule->filter() == filter) { return removeRule(i); } } return false; } int AdBlockCustomList::addRule(AdBlockRule* rule) { m_rules.append(rule); populateCache(); emit subscriptionEdited(); return m_rules.count() - 1; } bool AdBlockCustomList::removeRule(int offset) { if (!QzTools::vectorContainsIndex(m_rules, offset)) { return false; } AdBlockRule* rule = m_rules.at(offset); const QString filter = rule->filter(); m_rules.remove(offset); populateCache(); emit subscriptionEdited(); AdBlockManager::instance()->removeDisabledRule(filter); delete rule; return true; } const AdBlockRule* AdBlockCustomList::replaceRule(AdBlockRule* rule, int offset) { if (!QzTools::vectorContainsIndex(m_rules, offset)) { return 0; } delete m_rules.at(offset); m_rules[offset] = rule; populateCache(); emit subscriptionEdited(); return m_rules[offset]; } qupzilla-1.6.0/src/lib/adblock/adblocksubscription.h000066400000000000000000000122051226107126500225320ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ /** * Copyright (c) 2009, Benjamin C. Meyer * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the Benjamin Meyer nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. */ #ifndef ADBLOCKSUBSCRIPTION_H #define ADBLOCKSUBSCRIPTION_H #include #include #include "qz_namespace.h" #include "adblockrule.h" #include "adblocksearchtree.h" class QNetworkRequest; class QNetworkReply; class QUrl; class FollowRedirectReply; class QT_QUPZILLA_EXPORT AdBlockSubscription : public QObject { Q_OBJECT public: explicit AdBlockSubscription(const QString &title, QObject* parent = 0); ~AdBlockSubscription(); QString title() const; QString filePath() const; void setFilePath(const QString &path); QUrl url() const; void setUrl(const QUrl &url); virtual void loadSubscription(const QStringList &disabledRules); virtual void saveSubscription(); const AdBlockRule* match(const QNetworkRequest &request, const QString &urlDomain, const QString &urlString) const; bool adBlockDisabledForUrl(const QUrl &url) const; bool elemHideDisabledForUrl(const QUrl &url) const; QString elementHidingRules() const; QString elementHidingRulesForDomain(const QString &domain) const; const AdBlockRule* rule(int offset) const; QVector allRules() const; const AdBlockRule* enableRule(int offset); const AdBlockRule* disableRule(int offset); virtual bool canEditRules() const; virtual bool canBeRemoved() const; virtual int addRule(AdBlockRule* rule); virtual bool removeRule(int offset); virtual const AdBlockRule* replaceRule(AdBlockRule* rule, int offset); public slots: void updateSubscription(); signals: void subscriptionUpdated(); protected slots: void subscriptionDownloaded(); protected: virtual void saveDownloadedData(const QByteArray &data); void populateCache(); FollowRedirectReply* m_reply; QVector m_rules; QString m_elementHidingRules; QVector m_networkExceptionRules; QVector m_networkBlockRules; QVector m_domainRestrictedCssRules; QVector m_documentRules; QVector m_elemhideRules; AdBlockSearchTree m_networkBlockTree; AdBlockSearchTree m_networkExceptionTree; private: QString m_title; QString m_filePath; QUrl m_url; bool m_updated; }; class AdBlockCustomList : public AdBlockSubscription { Q_OBJECT public: explicit AdBlockCustomList(QObject* parent = 0); void saveSubscription(); bool canEditRules() const; bool canBeRemoved() const; bool containsFilter(const QString &filter) const; bool removeFilter(const QString &filter); int addRule(AdBlockRule* rule); bool removeRule(int offset); const AdBlockRule* replaceRule(AdBlockRule* rule, int offset); signals: void subscriptionEdited(); }; #endif // ADBLOCKSUBSCRIPTION_H qupzilla-1.6.0/src/lib/adblock/adblocktreewidget.cpp000066400000000000000000000162361226107126500225140ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "adblocktreewidget.h" #include "adblocksubscription.h" #include #include #include #include #include AdBlockTreeWidget::AdBlockTreeWidget(AdBlockSubscription* subscription, QWidget* parent) : TreeWidget(parent) , m_subscription(subscription) , m_topItem(0) , m_itemChangingBlock(false) { setContextMenuPolicy(Qt::CustomContextMenu); setDefaultItemShowMode(TreeWidget::ItemsExpanded); setHeaderHidden(true); setAlternatingRowColors(true); connect(this, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(contextMenuRequested(QPoint))); connect(this, SIGNAL(itemChanged(QTreeWidgetItem*,int)), this, SLOT(itemChanged(QTreeWidgetItem*))); connect(m_subscription, SIGNAL(subscriptionUpdated()), this, SLOT(subscriptionUpdated())); } AdBlockSubscription* AdBlockTreeWidget::subscription() const { return m_subscription; } void AdBlockTreeWidget::showRule(const AdBlockRule* rule) { if (!m_topItem && rule) { m_ruleToBeSelected = rule->filter(); } else if (!m_ruleToBeSelected.isEmpty()) { QList items = findItems(m_ruleToBeSelected, Qt::MatchRecursive); if (!items.isEmpty()) { QTreeWidgetItem* item = items.at(0); setCurrentItem(item); scrollToItem(item, QAbstractItemView::PositionAtCenter); } m_ruleToBeSelected.clear(); } } void AdBlockTreeWidget::contextMenuRequested(const QPoint &pos) { if (!m_subscription->canEditRules()) { return; } QTreeWidgetItem* item = itemAt(pos); if (!item) { return; } QMenu menu; menu.addAction(tr("Add Rule"), this, SLOT(addRule())); menu.addSeparator(); QAction* deleteAction = menu.addAction(tr("Remove Rule"), this, SLOT(removeRule())); if (!item->parent()) { deleteAction->setDisabled(true); } menu.exec(viewport()->mapToGlobal(pos)); } void AdBlockTreeWidget::itemChanged(QTreeWidgetItem* item) { if (!item || m_itemChangingBlock) { return; } m_itemChangingBlock = true; int offset = item->data(0, Qt::UserRole + 10).toInt(); const AdBlockRule* oldRule = m_subscription->rule(offset); if (item->checkState(0) == Qt::Unchecked && oldRule->isEnabled()) { // Disable rule const AdBlockRule* rule = m_subscription->disableRule(offset); adjustItemFeatures(item, rule); } else if (item->checkState(0) == Qt::Checked && !oldRule->isEnabled()) { // Enable rule const AdBlockRule* rule = m_subscription->enableRule(offset); adjustItemFeatures(item, rule); } else if (m_subscription->canEditRules()) { // Custom rule has been changed AdBlockRule* newRule = new AdBlockRule(item->text(0), m_subscription); const AdBlockRule* rule = m_subscription->replaceRule(newRule, offset); adjustItemFeatures(item, rule); } m_itemChangingBlock = false; } void AdBlockTreeWidget::copyFilter() { QTreeWidgetItem* item = currentItem(); if (!item) { return; } QApplication::clipboard()->setText(item->text(0)); } void AdBlockTreeWidget::addRule() { if (!m_subscription->canEditRules()) { return; } QString newRule = QInputDialog::getText(this, tr("Add Custom Rule"), tr("Please write your rule here:")); if (newRule.isEmpty()) { return; } AdBlockRule* rule = new AdBlockRule(newRule, m_subscription); int offset = m_subscription->addRule(rule); QTreeWidgetItem* item = new QTreeWidgetItem(); item->setText(0, newRule); item->setData(0, Qt::UserRole + 10, offset); item->setFlags(item->flags() | Qt::ItemIsEditable); m_itemChangingBlock = true; m_topItem->addChild(item); m_itemChangingBlock = false; adjustItemFeatures(item, rule); } void AdBlockTreeWidget::removeRule() { QTreeWidgetItem* item = currentItem(); if (!item || !m_subscription->canEditRules() || item == m_topItem) { return; } int offset = item->data(0, Qt::UserRole + 10).toInt(); m_subscription->removeRule(offset); deleteItem(item); } void AdBlockTreeWidget::subscriptionUpdated() { refresh(); m_itemChangingBlock = true; m_topItem->setText(0, tr("%1 (recently updated)").arg(m_subscription->title())); m_itemChangingBlock = false; } void AdBlockTreeWidget::adjustItemFeatures(QTreeWidgetItem* item, const AdBlockRule* rule) { if (!rule->isEnabled()) { QFont font; font.setItalic(true); item->setForeground(0, QColor(Qt::gray)); if (!rule->isComment()) { item->setFlags(item->flags() | Qt::ItemIsUserCheckable); item->setCheckState(0, Qt::Unchecked); item->setFont(0, font); } return; } item->setFlags(item->flags() | Qt::ItemIsUserCheckable); item->setCheckState(0, Qt::Checked); if (rule->isCssRule()) { item->setForeground(0, QColor(Qt::darkBlue)); item->setFont(0, QFont()); } else if (rule->isException()) { item->setForeground(0, QColor(Qt::darkGreen)); item->setFont(0, QFont()); } else { item->setForeground(0, QColor()); item->setFont(0, QFont()); } } void AdBlockTreeWidget::keyPressEvent(QKeyEvent* event) { if (event->key() == Qt::Key_C && event->modifiers() & Qt::ControlModifier) { copyFilter(); } if (event->key() == Qt::Key_Delete) { removeRule(); } TreeWidget::keyPressEvent(event); } void AdBlockTreeWidget::refresh() { m_itemChangingBlock = true; clear(); QFont boldFont; boldFont.setBold(true); m_topItem = new QTreeWidgetItem(this); m_topItem->setText(0, m_subscription->title()); m_topItem->setFont(0, boldFont); addTopLevelItem(m_topItem); const QVector &allRules = m_subscription->allRules(); int index = 0; foreach (const AdBlockRule* rule, allRules) { QTreeWidgetItem* item = new QTreeWidgetItem(m_topItem); item->setText(0, rule->filter()); item->setData(0, Qt::UserRole + 10, index); if (m_subscription->canEditRules()) { item->setFlags(item->flags() | Qt::ItemIsEditable); } adjustItemFeatures(item, rule); ++index; } expandAll(); showRule(0); m_itemChangingBlock = false; } qupzilla-1.6.0/src/lib/adblock/adblocktreewidget.h000066400000000000000000000034711226107126500221560ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef ADBLOCKTREEWIDGET_H #define ADBLOCKTREEWIDGET_H #include #include "qz_namespace.h" #include "treewidget.h" class AdBlockSubscription; class AdBlockRule; class QT_QUPZILLA_EXPORT AdBlockTreeWidget : public TreeWidget { Q_OBJECT public: explicit AdBlockTreeWidget(AdBlockSubscription* subscription, QWidget* parent = 0); AdBlockSubscription* subscription() const; void showRule(const AdBlockRule* rule); void refresh(); public slots: void addRule(); void removeRule(); private slots: void contextMenuRequested(const QPoint &pos); void itemChanged(QTreeWidgetItem* item); void copyFilter(); void subscriptionUpdated(); private: void adjustItemFeatures(QTreeWidgetItem* item, const AdBlockRule* rule); void keyPressEvent(QKeyEvent* event); AdBlockSubscription* m_subscription; QTreeWidgetItem* m_topItem; QString m_ruleToBeSelected; bool m_itemChangingBlock; }; #endif // ADBLOCKTREEWIDGET_H qupzilla-1.6.0/src/lib/app/000077500000000000000000000000001226107126500154765ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/app/autosaver.cpp000066400000000000000000000023041226107126500202120ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "autosaver.h" #include "mainapplication.h" AutoSaver::AutoSaver(QObject* parent) : QObject(parent) { m_timer.start(1000 * 5, this); } void AutoSaver::timerEvent(QTimerEvent* event) { if (event->timerId() == m_timer.timerId() && mApp->isStateChanged()) { emit saveApp(); } else { QObject::timerEvent(event); } } qupzilla-1.6.0/src/lib/app/autosaver.h000066400000000000000000000023251226107126500176620ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef AUTOSAVER_H #define AUTOSAVER_H #include #include #include "qz_namespace.h" class QT_QUPZILLA_EXPORT AutoSaver : public QObject { Q_OBJECT public: explicit AutoSaver(QObject* parent = 0); signals: void saveApp(); public slots: private: void timerEvent(QTimerEvent* event); QBasicTimer m_timer; }; #endif // AUTOSAVER_H qupzilla-1.6.0/src/lib/app/commandlineoptions.cpp000066400000000000000000000166331226107126500221150ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "commandlineoptions.h" #include "qupzilla.h" #include #include CommandLineOptions::CommandLineOptions(int &argc) : m_argc(argc) { parseActions(); } CommandLineOptions::ActionPairList CommandLineOptions::getActions() { return m_actions; } void CommandLineOptions::showHelp() { using namespace std; const char* help = " Usage: qupzilla [options] URL \n" "\n" " QupZilla options:\n" " -h or --help print this message \n" " -a or --authors print QupZilla authors \n" " -v or --version print QupZilla version \n" "\n" " -p=PROFILE or --profile=PROFILE start with specified profile \n" " -ne or --no-extensions start without extensions\n" "\n" " Options to control running QupZilla:\n" " -nt or --new-tab open new tab\n" " -nw or --new-window open new window\n" " -pb or --private-browsing start private browsing\n" " -dm or --download-manager show download manager\n" " -nr or --no-remote open new instance\n" " -ct=URL or --current-tab=URL open URL in current tab\n" " -ow=URL or --open-window=URL open URL in new window\n" "\n" " QupZilla is a new, fast and secure web browser\n" " based on WebKit core (http://webkit.org) and\n" " written in Qt Framework (http://qt.nokia.com) \n\n" " For more information please visit wiki at \n" " https://github.com/QupZilla/qupzilla/wiki \n"; cout << help << " > " << QupZilla::WWWADDRESS.toUtf8().data() << endl; } void CommandLineOptions::parseActions() { using namespace std; const QStringList arguments = QCoreApplication::arguments(); if (arguments.isEmpty()) { return; } // Skip first argument (it should be program itself) for (int i = 1; i < arguments.count(); ++i) { QString arg = arguments.at(i); if (arg == QLatin1String("-h") || arg == QLatin1String("--help")) { showHelp(); ActionPair pair; pair.action = Qz::CL_ExitAction; m_actions.append(pair); break; } if (arg == QLatin1String("-a") || arg == QLatin1String("--authors")) { cout << "QupZilla authors: " << endl; cout << " David Rosca " << endl; ActionPair pair; pair.action = Qz::CL_ExitAction; m_actions.append(pair); break; } if (arg == QLatin1String("-v") || arg == QLatin1String("--version")) { cout << "QupZilla v" << QupZilla::VERSION.toUtf8().data() #ifdef GIT_REVISION << " rev " << GIT_REVISION << " " #endif << "(build " << QupZilla::BUILDTIME.toUtf8().data() << ")" << endl; ActionPair pair; pair.action = Qz::CL_ExitAction; m_actions.append(pair); break; } if (arg.startsWith(QLatin1String("-p=")) || arg.startsWith(QLatin1String("--profile="))) { int index = arg.indexOf(QLatin1Char('=')); if (index != -1) { const QString profileName = arg.mid(index + 1); cout << "QupZilla: Starting with profile '" << profileName.toUtf8().data() << "'" << endl; ActionPair pair; pair.action = Qz::CL_StartWithProfile; pair.text = profileName; m_actions.append(pair); } } if (arg.startsWith(QLatin1String("-ne")) || arg.startsWith(QLatin1String("--no-extensions"))) { ActionPair pair; pair.action = Qz::CL_StartWithoutAddons; m_actions.append(pair); } if (arg.startsWith(QLatin1String("-nt")) || arg.startsWith(QLatin1String("--new-tab"))) { ActionPair pair; pair.action = Qz::CL_NewTab; m_actions.append(pair); } if (arg.startsWith(QLatin1String("-nw")) || arg.startsWith(QLatin1String("--new-window"))) { ActionPair pair; pair.action = Qz::CL_NewWindow; m_actions.append(pair); } if (arg.startsWith(QLatin1String("-dm")) || arg.startsWith(QLatin1String("--download-manager"))) { ActionPair pair; pair.action = Qz::CL_ShowDownloadManager; m_actions.append(pair); } if (arg.startsWith(QLatin1String("-pb")) || arg.startsWith(QLatin1String("--private-browsing"))) { ActionPair pair; pair.action = Qz::CL_StartPrivateBrowsing; m_actions.append(pair); } if (arg.startsWith(QLatin1String("-nr")) || arg.startsWith(QLatin1String("--no-remote"))) { ActionPair pair; pair.action = Qz::CL_StartNewInstance; m_actions.append(pair); } if (arg.startsWith(QLatin1String("-ct")) || arg.startsWith(QLatin1String("--current-tab"))) { int index = arg.indexOf(QLatin1Char('=')); if (index != -1) { ActionPair pair; pair.action = Qz::CL_OpenUrlInCurrentTab; pair.text = arg.mid(index + 1); m_actions.append(pair); } } if (arg.startsWith(QLatin1String("-ow")) || arg.startsWith(QLatin1String("--open-window"))) { int index = arg.indexOf(QLatin1Char('=')); if (index != -1) { ActionPair pair; pair.action = Qz::CL_OpenUrlInNewWindow; pair.text = arg.mid(index + 1); m_actions.append(pair); } } } QString url = arguments.last(); QFileInfo fileInfo(url); if (fileInfo.exists()) { url = fileInfo.absoluteFilePath(); } if (m_argc > 1 && !url.isEmpty() && !url.startsWith(QLatin1Char('-')) && (url.contains(QLatin1Char('.')) || url.contains(QLatin1Char('/')) || url.contains(QLatin1Char('\\')))) { ActionPair pair; pair.action = Qz::CL_OpenUrl; pair.text = url; m_actions.append(pair); } } qupzilla-1.6.0/src/lib/app/commandlineoptions.h000066400000000000000000000030211226107126500215450ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef COMMANDLINEOPTIONS_H #define COMMANDLINEOPTIONS_H #include #include #include #include #include "qz_namespace.h" class QT_QUPZILLA_EXPORT CommandLineOptions { public: struct ActionPair { Qz::CommandLineAction action; QString text; }; typedef QVector ActionPairList; explicit CommandLineOptions(int &argc); ActionPairList getActions(); private: void showHelp(); void parseActions(); int m_argc; ActionPairList m_actions; }; // Hint to QVector to use std::realloc on item moving Q_DECLARE_TYPEINFO(CommandLineOptions::ActionPair, Q_MOVABLE_TYPE); #endif // COMMANDLINEOPTIONS_H qupzilla-1.6.0/src/lib/app/mainapplication.cpp000066400000000000000000001153471226107126500213650ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "mainapplication.h" #include "qupzilla.h" #include "tabwidget.h" #include "bookmarkstoolbar.h" #include "cookiemanager.h" #include "cookiejar.h" #include "browsinglibrary.h" #include "history.h" #include "networkmanager.h" #include "rssmanager.h" #include "updater.h" #include "autosaver.h" #include "pluginproxy.h" #include "bookmarksmodel.h" #include "downloadmanager.h" #include "autofill.h" #include "adblockmanager.h" #include "desktopnotificationsfactory.h" #include "iconprovider.h" #include "qtwin.h" #include "mainapplication.h" #include "webhistoryinterface.h" #include "qztools.h" #include "profileupdater.h" #include "searchenginesmanager.h" #include "databasewriter.h" #include "speeddial.h" #include "webpage.h" #include "settings.h" #include "qzsettings.h" #include "clearprivatedata.h" #include "commandlineoptions.h" #include "useragentmanager.h" #include "restoremanager.h" #include "proxystyle.h" #include "qzregexp.h" #include "checkboxdialog.h" #include "registerqappassociation.h" #include "html5permissions/html5permissionsmanager.h" #ifdef USE_HUNSPELL #include "qtwebkit/spellcheck/speller.h" #endif #ifdef Q_OS_MAC #include "macmenureceiver.h" #include #include #endif #include #include #include #include #include #include #include #include #if defined(PORTABLE_BUILD) && !defined(NO_SYSTEM_DATAPATH) #define NO_SYSTEM_DATAPATH #endif #if QT_VERSION < 0x050000 #include "qwebkitversion.h" #endif MainApplication::MainApplication(int &argc, char** argv) : QtSingleApplication(argc, argv) , m_cookiemanager(0) , m_browsingLibrary(0) , m_historymodel(0) , m_websettings(0) , m_networkmanager(0) , m_cookiejar(0) , m_rssmanager(0) , m_bookmarksModel(0) , m_downloadManager(0) , m_autofill(0) , m_networkCache(0) , m_desktopNotifications(0) , m_searchEnginesManager(0) , m_restoreManager(0) , m_proxyStyle(0) , m_html5permissions(0) #ifdef USE_HUNSPELL , m_speller(0) #endif , m_dbWriter(new DatabaseWriter(this)) , m_uaManager(new UserAgentManager) , m_isPrivateSession(false) , m_isClosing(false) , m_isStateChanged(false) , m_isRestoring(false) , m_startingAfterCrash(false) , m_databaseConnected(false) #ifdef Q_OS_WIN , m_registerQAppAssociation(0) #endif #ifdef Q_OS_MAC , m_macMenuReceiver(0) , m_macDockMenu(0) #endif { #if defined(QZ_WS_X11) && !defined(NO_SYSTEM_DATAPATH) DATADIR = USE_DATADIR; #else DATADIR = qApp->applicationDirPath() + "/"; #endif #ifdef Q_OS_MAC DATADIR.append(QLatin1String("../Resources/")); #endif #ifdef PORTABLE_BUILD PROFILEDIR = DATADIR + "profiles/"; #else bool confPathExists = QDir(QDir::homePath() + "/.config/qupzilla").exists(); bool homePathExists = QDir(QDir::homePath() + "/.qupzilla").exists(); if (homePathExists && !confPathExists) { PROFILEDIR = QDir::homePath() + "/.qupzilla/"; } else { PROFILEDIR = QDir::homePath() + "/.config/qupzilla/"; } #endif TRANSLATIONSDIR = DATADIR + "locale/"; THEMESDIR = DATADIR + "themes/"; setWindowIcon(QIcon(":icons/exeicons/qupzilla-window.png")); bool noAddons = false; bool newInstance = false; QUrl startUrl; QStringList messages; QString startProfile; if (argc > 1) { CommandLineOptions cmd(argc); foreach (const CommandLineOptions::ActionPair &pair, cmd.getActions()) { switch (pair.action) { case Qz::CL_StartWithoutAddons: noAddons = true; break; case Qz::CL_StartWithProfile: startProfile = pair.text; break; case Qz::CL_NewTab: messages.append(QLatin1String("ACTION:NewTab")); m_postLaunchActions.append(OpenNewTab); break; case Qz::CL_NewWindow: messages.append(QLatin1String("ACTION:NewWindow")); break; case Qz::CL_ShowDownloadManager: messages.append(QLatin1String("ACTION:ShowDownloadManager")); m_postLaunchActions.append(OpenDownloadManager); break; case Qz::CL_StartPrivateBrowsing: m_isPrivateSession = true; break; case Qz::CL_StartNewInstance: newInstance = true; break; case Qz::CL_OpenUrlInCurrentTab: startUrl = QUrl::fromUserInput(pair.text); messages.append("ACTION:OpenUrlInCurrentTab" + pair.text); break; case Qz::CL_OpenUrlInNewWindow: startUrl = QUrl::fromUserInput(pair.text); messages.append("ACTION:OpenUrlInNewWindow" + pair.text); break; case Qz::CL_OpenUrl: startUrl = QUrl::fromUserInput(pair.text); messages.append("URL:" + pair.text); break; case Qz::CL_ExitAction: m_isClosing = true; return; default: break; } } } // Don't start single application in private browsing if (!m_isPrivateSession) { QString appId = "QupZillaWebBrowser"; if (newInstance) { if (startProfile.isEmpty() || startProfile == QLatin1String("default")) { std::cout << "New instance cannot be started with default profile!" << std::endl; } else { appId.append(startProfile); } } setAppId(appId); } if (messages.isEmpty()) { messages.append(QLatin1String(" ")); } if (isRunning()) { foreach (const QString &message, messages) { sendMessage(message); } m_isClosing = true; return; } #ifdef Q_OS_MAC setQuitOnLastWindowClosed(false); #else setQuitOnLastWindowClosed(true); #endif setApplicationName("QupZilla"); setApplicationVersion(QupZilla::VERSION); setOrganizationDomain("qupzilla"); QDesktopServices::setUrlHandler("http", this, "addNewTab"); QDesktopServices::setUrlHandler("ftp", this, "addNewTab"); checkSettingsDir(); QSettings::setDefaultFormat(QSettings::IniFormat); if (startProfile.isEmpty()) { QSettings settings(PROFILEDIR + "profiles/profiles.ini", QSettings::IniFormat); if (settings.value("Profiles/startProfile", "default").toString().contains(QLatin1Char('/'))) { m_activeProfil = PROFILEDIR + "profiles/default/"; } else { m_activeProfil = PROFILEDIR + "profiles/" + settings.value("Profiles/startProfile", "default").toString() + "/"; } } else { m_activeProfil = PROFILEDIR + "profiles/" + startProfile + "/"; } ProfileUpdater u(m_activeProfil); u.checkProfile(); connectDatabase(); Settings::createSettings(m_activeProfil + "settings.ini"); translateApp(); QupZilla* qupzilla = new QupZilla(Qz::BW_FirstAppWindow, startUrl); m_mainWindows.prepend(qupzilla); connect(qupzilla, SIGNAL(message(Qz::AppMessageType,bool)), this, SLOT(sendMessages(Qz::AppMessageType,bool))); connect(qupzilla, SIGNAL(startingCompleted()), this, SLOT(restoreCursor())); loadSettings(); m_plugins = new PluginProxy; if (!noAddons) { m_plugins->loadPlugins(); } if (!m_isPrivateSession) { Settings settings; m_startingAfterCrash = settings.value("SessionRestore/isRunning", false).toBool(); bool checkUpdates = settings.value("Web-Browser-Settings/CheckUpdates", DEFAULT_CHECK_UPDATES).toBool(); int afterLaunch = settings.value("Web-URL-Settings/afterLaunch", 1).toInt(); settings.setValue("SessionRestore/isRunning", true); if (checkUpdates) { new Updater(qupzilla); } backupSavedSessions(); if (m_startingAfterCrash || afterLaunch == 3) { m_restoreManager = new RestoreManager(m_activeProfil + "session.dat"); if (!m_restoreManager->isValid()) { destroyRestoreManager(); } } } QTimer::singleShot(0, this, SLOT(postLaunch())); #ifdef Q_OS_WIN QTimer::singleShot(10 * 1000, this, SLOT(setupJumpList())); #endif } void MainApplication::postLaunch() { if (m_postLaunchActions.contains(OpenDownloadManager)) { downManager()->show(); } if (m_postLaunchActions.contains(OpenNewTab)) { getWindow()->tabWidget()->addView(QUrl(), Qz::NT_SelectedNewEmptyTab); } AutoSaver* saver = new AutoSaver(); connect(saver, SIGNAL(saveApp()), this, SLOT(saveStateSlot())); QSettings::setPath(QSettings::IniFormat, QSettings::UserScope, m_activeProfil); QWebHistoryInterface::setDefaultInterface(new WebHistoryInterface(this)); connect(this, SIGNAL(messageReceived(QString)), this, SLOT(receiveAppMessage(QString))); connect(this, SIGNAL(aboutToQuit()), this, SLOT(saveSettings())); #ifndef PORTABLE_BUILD Settings settings; bool alwaysCheckDefaultBrowser = settings.value("Web-Browser-Settings/CheckDefaultBrowser", DEFAULT_CHECK_DEFAULTBROWSER).toBool(); if (alwaysCheckDefaultBrowser) { alwaysCheckDefaultBrowser = checkDefaultWebBrowser(); settings.setValue("Web-Browser-Settings/CheckDefaultBrowser", alwaysCheckDefaultBrowser); } #endif } void MainApplication::loadSettings() { Settings settings; settings.beginGroup("Themes"); QString activeTheme = settings.value("activeTheme", DEFAULT_THEME_NAME).toString(); settings.endGroup(); loadTheme(activeTheme); // Create global QWebSettings object webSettings(); // Web browsing settings settings.beginGroup("Web-Browser-Settings"); if (!m_isPrivateSession) { m_websettings->enablePersistentStorage(m_activeProfil); m_websettings->setAttribute(QWebSettings::LocalStorageEnabled, settings.value("HTML5StorageEnabled", true).toBool()); } m_websettings->setAttribute(QWebSettings::DeveloperExtrasEnabled, true); m_websettings->setAttribute(QWebSettings::PluginsEnabled, settings.value("allowFlash", true).toBool()); m_websettings->setAttribute(QWebSettings::JavascriptEnabled, settings.value("allowJavaScript", true).toBool()); m_websettings->setAttribute(QWebSettings::JavascriptCanOpenWindows, settings.value("allowJavaScriptOpenWindow", false).toBool()); m_websettings->setAttribute(QWebSettings::JavaEnabled, settings.value("allowJava", true).toBool()); m_websettings->setAttribute(QWebSettings::DnsPrefetchEnabled, settings.value("DNS-Prefetch", false).toBool()); m_websettings->setAttribute(QWebSettings::JavascriptCanAccessClipboard, settings.value("allowJavaScriptAccessClipboard", true).toBool()); m_websettings->setAttribute(QWebSettings::LinksIncludedInFocusChain, settings.value("IncludeLinkInFocusChain", false).toBool()); m_websettings->setAttribute(QWebSettings::ZoomTextOnly, settings.value("zoomTextOnly", false).toBool()); m_websettings->setAttribute(QWebSettings::PrintElementBackgrounds, settings.value("PrintElementBackground", true).toBool()); m_websettings->setAttribute(QWebSettings::XSSAuditingEnabled, settings.value("XSSAuditing", false).toBool()); m_websettings->setMaximumPagesInCache(settings.value("maximumCachedPages", 3).toInt()); m_websettings->setDefaultTextEncoding(settings.value("DefaultEncoding", m_websettings->defaultTextEncoding()).toString()); m_websettings->setAttribute(QWebSettings::SpatialNavigationEnabled, settings.value("SpatialNavigation", false).toBool()); #if QTWEBKIT_FROM_2_3 m_websettings->setAttribute(QWebSettings::CaretBrowsingEnabled, settings.value("CaretBrowsing", false).toBool()); m_websettings->setAttribute(QWebSettings::ScrollAnimatorEnabled, settings.value("AnimateScrolling", true).toBool()); #endif #ifdef USE_WEBGL m_websettings->setAttribute(QWebSettings::WebGLEnabled, true); m_websettings->setAttribute(QWebSettings::AcceleratedCompositingEnabled, true); #endif #if QTWEBKIT_FROM_2_2 m_websettings->setAttribute(QWebSettings::HyperlinkAuditingEnabled, true); m_websettings->setAttribute(QWebSettings::JavascriptCanCloseWindows, settings.value("allowJavaScriptCloseWindow", false).toBool()); #endif setWheelScrollLines(settings.value("wheelScrollLines", wheelScrollLines()).toInt()); m_websettings->setUserStyleSheetUrl(userStyleSheet(settings.value("userStyleSheet", QString()).toString())); settings.endGroup(); settings.beginGroup("Browser-Fonts"); m_websettings->setFontFamily(QWebSettings::StandardFont, settings.value("StandardFont", m_websettings->fontFamily(QWebSettings::StandardFont)).toString()); m_websettings->setFontFamily(QWebSettings::CursiveFont, settings.value("CursiveFont", m_websettings->fontFamily(QWebSettings::CursiveFont)).toString()); m_websettings->setFontFamily(QWebSettings::FantasyFont, settings.value("FantasyFont", m_websettings->fontFamily(QWebSettings::FantasyFont)).toString()); m_websettings->setFontFamily(QWebSettings::FixedFont, settings.value("FixedFont", m_websettings->fontFamily(QWebSettings::FixedFont)).toString()); m_websettings->setFontFamily(QWebSettings::SansSerifFont, settings.value("SansSerifFont", m_websettings->fontFamily(QWebSettings::SansSerifFont)).toString()); m_websettings->setFontFamily(QWebSettings::SerifFont, settings.value("SerifFont", m_websettings->fontFamily(QWebSettings::SerifFont)).toString()); m_websettings->setFontSize(QWebSettings::DefaultFontSize, settings.value("DefaultFontSize", m_websettings->fontSize(QWebSettings::DefaultFontSize)).toInt()); m_websettings->setFontSize(QWebSettings::DefaultFixedFontSize, settings.value("FixedFontSize", m_websettings->fontSize(QWebSettings::DefaultFixedFontSize)).toInt()); m_websettings->setFontSize(QWebSettings::MinimumFontSize, settings.value("MinimumFontSize", m_websettings->fontSize(QWebSettings::MinimumFontSize)).toInt()); m_websettings->setFontSize(QWebSettings::MinimumLogicalFontSize, settings.value("MinimumLogicalFontSize", m_websettings->fontSize(QWebSettings::MinimumLogicalFontSize)).toInt()); settings.endGroup(); m_websettings->setWebGraphic(QWebSettings::DefaultFrameIconGraphic, qIconProvider->emptyWebIcon().pixmap(16, 16)); m_websettings->setWebGraphic(QWebSettings::MissingImageGraphic, QPixmap()); if (m_isPrivateSession) { m_websettings->setAttribute(QWebSettings::PrivateBrowsingEnabled, true); history()->setSaving(false); } if (m_downloadManager) { m_downloadManager->loadSettings(); } qzSettings->loadSettings(); m_uaManager->loadSettings(); } void MainApplication::reloadSettings() { loadSettings(); emit message(Qz::AM_ReloadSettings, true); } void MainApplication::restoreCursor() { QApplication::restoreOverrideCursor(); } void MainApplication::setupJumpList() { QtWin::setupJumpList(); } QupZilla* MainApplication::getWindow() { QupZilla* activeW = qobject_cast(activeWindow()); if (activeW) { return activeW; } for (int i = 0; i < m_mainWindows.count(); i++) { if (!m_mainWindows.at(i)) { continue; } return m_mainWindows.at(i).data(); } return 0; } void MainApplication::setStateChanged() { m_isStateChanged = true; sendMessages(Qz::AM_HistoryStateChanged, true); } bool MainApplication::isStateChanged() { if (m_isStateChanged) { m_isStateChanged = false; return true; } return false; } QList MainApplication::mainWindows() { QList list; for (int i = 0; i < m_mainWindows.count(); i++) { if (!m_mainWindows.at(i)) { continue; } list.append(m_mainWindows.at(i).data()); } return list; } bool MainApplication::isClosing() const { return m_isClosing; } bool MainApplication::isRestoring() const { return m_isRestoring; } bool MainApplication::isPrivateSession() const { return m_isPrivateSession; } bool MainApplication::isStartingAfterCrash() const { return m_startingAfterCrash; } int MainApplication::windowCount() const { return m_mainWindows.count(); } QString MainApplication::currentLanguageFile() const { return m_activeLanguage; } QString MainApplication::currentLanguage() const { QString lang = m_activeLanguage; if (lang.isEmpty()) { return "en_US"; } return lang.left(lang.length() - 3); } QString MainApplication::currentProfilePath() const { return m_activeProfil; } void MainApplication::sendMessages(Qz::AppMessageType mes, bool state) { emit message(mes, state); } void MainApplication::receiveAppMessage(QString message) { QWidget* actWin = getWindow(); QUrl actUrl; if (message.startsWith(QLatin1String("URL:"))) { const QUrl url = QUrl::fromUserInput(message.mid(4)); addNewTab(url); actWin = getWindow(); } else if (message.startsWith(QLatin1String("ACTION:"))) { const QString text = message.mid(7); if (text == QLatin1String("NewTab")) { addNewTab(); } else if (text == QLatin1String("NewWindow")) { actWin = makeNewWindow(Qz::BW_NewWindow); } else if (text == QLatin1String("ShowDownloadManager")) { downManager()->show(); actWin = downManager(); } else if (text.startsWith(QLatin1String("OpenUrlInCurrentTab"))) { actUrl = QUrl::fromUserInput(text.mid(19)); } else if (text.startsWith(QLatin1String("OpenUrlInNewWindow"))) { makeNewWindow(Qz::BW_NewWindow, QUrl::fromUserInput(text.mid(18))); return; } } if (!actWin) { if (!isClosing()) { // It can only occur if download manager window was still opened makeNewWindow(Qz::BW_NewWindow, actUrl); } return; } QupZilla* qz = qobject_cast(actWin); actWin->setWindowState(actWin->windowState() & ~Qt::WindowMinimized); actWin->raise(); actWin->activateWindow(); actWin->setFocus(); if (qz && !actUrl.isEmpty()) { qz->loadAddress(actUrl); } } void MainApplication::addNewTab(const QUrl &url) { if (!getWindow()) { return; } getWindow()->tabWidget()->addView(url, url.isEmpty() ? Qz::NT_SelectedNewEmptyTab : Qz::NT_SelectedTabAtTheEnd); } QupZilla* MainApplication::makeNewWindow(Qz::BrowserWindow type, const QUrl &startUrl) { if (m_mainWindows.count() == 0 && type != Qz::BW_MacFirstWindow) { type = Qz::BW_FirstAppWindow; } QupZilla* newWindow = new QupZilla(type, startUrl); m_mainWindows.prepend(newWindow); return newWindow; } #ifdef Q_OS_MAC extern void qt_mac_set_dock_menu(QMenu* menu); QMenu* MainApplication::macDockMenu() { if (!m_macDockMenu) { m_macDockMenu = new QMenu(0); qt_mac_set_dock_menu(m_macDockMenu); } return m_macDockMenu; } MacMenuReceiver* MainApplication::macMenuReceiver() { if (!m_macMenuReceiver) { m_macMenuReceiver = new MacMenuReceiver(this); } return m_macMenuReceiver; } bool MainApplication::event(QEvent* e) { switch (e->type()) { case QEvent::FileOpen: { QString fileName = static_cast(e)->file(); addNewTab(QUrl::fromLocalFile(fileName)); return true; } break; default: break; } return QtSingleApplication::event(e); } #endif void MainApplication::connectDatabase() { if (m_databaseConnected) { return; } QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE"); db.setDatabaseName(m_activeProfil + "browsedata.db"); if (!QFile::exists(m_activeProfil + "browsedata.db")) { QFile(":data/browsedata.db").copy(m_activeProfil + "browsedata.db"); QFile(m_activeProfil + "browsedata.db").setPermissions(QFile::ReadUser | QFile::WriteUser); db.setDatabaseName(m_activeProfil + "browsedata.db"); qWarning("Cannot find SQLite database file! Copying and using the defaults!"); } if (m_isPrivateSession) { db.setConnectOptions("QSQLITE_OPEN_READONLY"); } if (!db.open()) { qWarning("Cannot open SQLite database! Continuing without database...."); } m_databaseConnected = true; } void MainApplication::loadTheme(const QString &name) { // Themes are loaded from the following directories: // 1. Directory "themes" in user profile // 2. Directory "themes" in root profile directory // 3. System data path // > /usr/share/qupzilla/themes on Linux // > $EXECUTABLE_DIR/themes on Windows QStringList themePaths; themePaths << m_activeProfil + "themes/" << PROFILEDIR + "themes/" << THEMESDIR; foreach (const QString &path, themePaths) { const QString theme = path + name + "/"; if (QFile::exists(theme + "main.css")) { m_activeThemePath = theme; break; } } if (m_activeThemePath.isEmpty()) { qWarning("Cannot load theme '%s'!", qPrintable(name)); m_activeThemePath = THEMESDIR + DEFAULT_THEME_NAME + "/"; } QFile cssFile(m_activeThemePath + "main.css"); cssFile.open(QFile::ReadOnly); QString css = cssFile.readAll(); cssFile.close(); /* * #id[style=QtStyle] (QtStyle = QMacStyle, QWindowsVistaStyle, QGtkStyle, ...) * should be enough instead of loading special stylesheets */ #ifdef QZ_WS_X11 if (QFile(m_activeThemePath + "linux.css").exists()) { cssFile.setFileName(m_activeThemePath + "linux.css"); cssFile.open(QFile::ReadOnly); css.append(cssFile.readAll()); cssFile.close(); } #endif #ifdef Q_OS_MAC if (QFile(m_activeThemePath + "mac.css").exists()) { cssFile.setFileName(m_activeThemePath + "mac.css"); cssFile.open(QFile::ReadOnly); css.append(cssFile.readAll()); cssFile.close(); } #endif #if defined(Q_OS_WIN) || defined(Q_OS_OS2) if (QFile(m_activeThemePath + "windows.css").exists()) { cssFile.setFileName(m_activeThemePath + "windows.css"); cssFile.open(QFile::ReadOnly); css.append(cssFile.readAll()); cssFile.close(); } #endif // RTL Support // Loading 'rtl.css' when layout is right to left! if (isRightToLeft() && QFile(m_activeThemePath + "rtl.css").exists()) { cssFile.setFileName(m_activeThemePath + "rtl.css"); cssFile.open(QFile::ReadOnly); css.append(cssFile.readAll()); cssFile.close(); } QString relativePath = QDir::current().relativeFilePath(m_activeThemePath); css.replace(QzRegExp("url\\s*\\(\\s*([^\\*:\\);]+)\\s*\\)", Qt::CaseSensitive), QString("url(%1\\1)").arg(relativePath + "/")); setStyleSheet(css); } void MainApplication::translateApp() { Settings settings; QString file = settings.value("Language/language", QLocale::system().name()).toString(); if (!file.isEmpty() && !file.endsWith(QLatin1String(".qm"))) { file.append(".qm"); } QTranslator* app = new QTranslator(this); app->load(file, TRANSLATIONSDIR); QTranslator* sys = new QTranslator(this); sys->load("qt_" + file, TRANSLATIONSDIR); m_activeLanguage = file; installTranslator(app); installTranslator(sys); } void MainApplication::backupSavedSessions() { // session.dat - current // session.dat.old - first backup // session.dat.old1 - second backup const QString sessionFile = m_activeProfil + "session.dat"; if (!QFile::exists(sessionFile)) { return; } if (QFile::exists(sessionFile + ".old")) { QFile::remove(sessionFile + ".old1"); QFile::copy(sessionFile + ".old", sessionFile + ".old1"); } QFile::remove(sessionFile + ".old"); QFile::copy(sessionFile, sessionFile + ".old"); } void MainApplication::quitApplication() { if (m_downloadManager && !m_downloadManager->canClose()) { m_downloadManager->show(); return; } m_isClosing = true; m_networkmanager->disconnectObjects(); if (m_mainWindows.count() > 0) { saveStateSlot(); } // Saving settings in saveSettings() slot called from quit() so // everything gets saved also when quitting application in other // way than clicking Quit action in File menu or closing last window // // * this can occur on Mac OS (see #157) if (!m_isPrivateSession) { removeLockFile(); } quit(); } void MainApplication::saveSettings() { if (m_isPrivateSession) { return; } m_isClosing = true; m_networkmanager->disconnectObjects(); Settings settings; settings.beginGroup("SessionRestore"); settings.setValue("isRunning", false); settings.endGroup(); settings.beginGroup("Web-Browser-Settings"); bool deleteHistory = settings.value("deleteHistoryOnClose", false).toBool(); bool deleteHtml5Storage = settings.value("deleteHTML5StorageOnClose", false).toBool(); settings.endGroup(); if (deleteHistory) { m_historymodel->clearHistory(); } if (deleteHtml5Storage) { ClearPrivateData::clearLocalStorage(); } m_searchEnginesManager->saveSettings(); m_networkmanager->saveCertificates(); m_plugins->shutdown(); qIconProvider->saveIconsToDatabase(); clearTempPath(); qzSettings->saveSettings(); AdBlockManager::instance()->save(); QFile::remove(currentProfilePath() + "WebpageIcons.db"); Settings::syncSettings(); } BrowsingLibrary* MainApplication::browsingLibrary() { if (!m_browsingLibrary) { m_browsingLibrary = new BrowsingLibrary(getWindow()); } return m_browsingLibrary; } CookieManager* MainApplication::cookieManager() { if (!m_cookiemanager) { m_cookiemanager = new CookieManager(); } return m_cookiemanager; } History* MainApplication::history() { if (!m_historymodel) { m_historymodel = new History(this); } return m_historymodel; } QWebSettings* MainApplication::webSettings() { if (!m_websettings) { m_websettings = QWebSettings::globalSettings(); } return m_websettings; } NetworkManager* MainApplication::networkManager() { if (!m_networkmanager) { m_networkmanager = new NetworkManager(this); } return m_networkmanager; } CookieJar* MainApplication::cookieJar() { if (!m_cookiejar) { m_cookiejar = new CookieJar(getWindow()); m_cookiejar->restoreCookies(); } return m_cookiejar; } RSSManager* MainApplication::rssManager() { if (!m_rssmanager) { m_rssmanager = new RSSManager(getWindow()); } return m_rssmanager; } PluginProxy* MainApplication::plugins() { return m_plugins; } BookmarksModel* MainApplication::bookmarksModel() { if (!m_bookmarksModel) { m_bookmarksModel = new BookmarksModel(this); } return m_bookmarksModel; } DownloadManager* MainApplication::downManager() { if (!m_downloadManager) { m_downloadManager = new DownloadManager(); } return m_downloadManager; } AutoFill* MainApplication::autoFill() { if (!m_autofill) { m_autofill = new AutoFill(this); } return m_autofill; } SearchEnginesManager* MainApplication::searchEnginesManager() { if (!m_searchEnginesManager) { m_searchEnginesManager = new SearchEnginesManager(); } return m_searchEnginesManager; } QNetworkDiskCache* MainApplication::networkCache() { if (!m_networkCache) { Settings settings; const QString basePath = settings.value("Web-Browser-Settings/CachePath", QString("%1networkcache/").arg(m_activeProfil)).toString(); const QString cachePath = QString("%1/%2-Qt%3/").arg(basePath, qWebKitVersion(), qVersion()); m_networkCache = new QNetworkDiskCache(this); m_networkCache->setCacheDirectory(cachePath); } return m_networkCache; } DesktopNotificationsFactory* MainApplication::desktopNotifications() { if (!m_desktopNotifications) { m_desktopNotifications = new DesktopNotificationsFactory(this); } return m_desktopNotifications; } HTML5PermissionsManager* MainApplication::html5permissions() { if (!m_html5permissions) { m_html5permissions = new HTML5PermissionsManager(this); } return m_html5permissions; } #ifdef USE_HUNSPELL Speller* MainApplication::speller() { if (!m_speller) { m_speller = new Speller(this); } return m_speller; } #endif void MainApplication::startPrivateBrowsing() { QStringList args; foreach (const QString &arg, arguments()) { if (arg.startsWith(QLatin1Char('-')) && arg != QLatin1String("--private-browsing") && arg != QLatin1String("-pb")) { args.append(arg); } } args.append(QLatin1String("--private-browsing")); if (!QProcess::startDetached(applicationFilePath(), args)) { qWarning() << "MainApplication: Cannot start new browser process for private browsing!" << applicationFilePath() << args; } } void MainApplication::reloadUserStyleSheet() { Settings settings; settings.beginGroup("Web-Browser-Settings"); m_websettings->setUserStyleSheetUrl(userStyleSheet(settings.value("userStyleSheet", QString()).toString())); settings.endGroup(); } bool MainApplication::checkDefaultWebBrowser() { #ifdef Q_OS_WIN bool showAgain = true; if (!associationManager()->isDefaultForAllCapabilities()) { CheckBoxDialog dialog(QDialogButtonBox::Yes | QDialogButtonBox::No, getWindow()); dialog.setText(tr("QupZilla is not currently your default browser. Would you like to make it your default browser?")); dialog.setCheckBoxText(tr("Always perform this check when starting QupZilla.")); dialog.setDefaultCheckState(Qt::Checked); dialog.setWindowTitle(tr("Default Browser")); dialog.setIcon(qIconProvider->standardIcon(QStyle::SP_MessageBoxWarning)); if (dialog.exec() == QDialog::Accepted) { associationManager()->registerAllAssociation(); } showAgain = dialog.isChecked(); } return showAgain; #else return false; #endif } #ifdef Q_OS_WIN RegisterQAppAssociation* MainApplication::associationManager() { if (!m_registerQAppAssociation) { QString desc = tr("QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework."); QString fileIconPath = QApplication::applicationFilePath() + ",1"; QString appIconPath = QApplication::applicationFilePath() + ",0"; m_registerQAppAssociation = new RegisterQAppAssociation("QupZilla", QApplication::applicationFilePath(), appIconPath, desc, this); m_registerQAppAssociation->addCapability(".html", "QupZilla.HTML", "HTML File", fileIconPath, RegisterQAppAssociation::FileAssociation); m_registerQAppAssociation->addCapability(".htm", "QupZilla.HTM", "HTM File", fileIconPath, RegisterQAppAssociation::FileAssociation); m_registerQAppAssociation->addCapability("http", "QupZilla.HTTP", "URL:HyperText Transfer Protocol", appIconPath, RegisterQAppAssociation::UrlAssociation); m_registerQAppAssociation->addCapability("https", "QupZilla.HTTPS", "URL:HyperText Transfer Protocol with Privacy", appIconPath, RegisterQAppAssociation::UrlAssociation); m_registerQAppAssociation->addCapability("ftp", "QupZilla.FTP", "URL:File Transfer Protocol", appIconPath, RegisterQAppAssociation::UrlAssociation); } return m_registerQAppAssociation; } #endif QUrl MainApplication::userStyleSheet(const QString &filePath) const { QString userStyle; #ifndef QZ_WS_X11 // Don't grey out selection on losing focus (to prevent graying out found text) QString highlightColor; QString highlightedTextColor; #ifdef Q_OS_MAC highlightColor = QLatin1String("#b6d6fc"); highlightedTextColor = QLatin1String("#000"); #else QPalette pal = style()->standardPalette(); highlightColor = pal.color(QPalette::Highlight).name(); highlightedTextColor = pal.color(QPalette::HighlightedText).name(); #endif userStyle += QString("::selection {background: %1; color: %2;} ").arg(highlightColor, highlightedTextColor); #endif userStyle += AdBlockManager::instance()->elementHidingRules(); QFile file(filePath); if (!filePath.isEmpty() && file.open(QFile::ReadOnly)) { QString fileData = QString::fromUtf8(file.readAll()); fileData.remove(QLatin1Char('\n')); userStyle.append(fileData); file.close(); } const QString encodedStyle = userStyle.toLatin1().toBase64(); const QString dataString = QString("data:text/css;charset=utf-8;base64,%1").arg(encodedStyle); return QUrl(dataString); } void MainApplication::aboutToCloseWindow(QupZilla* window) { if (!window) { return; } if (m_mainWindows.count() == 1) { if (m_browsingLibrary) { m_browsingLibrary->close(); } if (m_cookiemanager) { m_cookiemanager->close(); } } m_mainWindows.removeOne(window); } bool MainApplication::saveStateSlot() { if (m_isPrivateSession || m_isRestoring || m_mainWindows.count() == 0 || m_restoreManager) { return false; } QFile file(m_activeProfil + "session.dat"); file.open(QIODevice::WriteOnly); QDataStream stream(&file); stream << Qz::sessionVersion; stream << m_mainWindows.count(); for (int i = 0; i < m_mainWindows.count(); i++) { QupZilla* qz = m_mainWindows.at(i).data(); if (!qz) { continue; } stream << qz->tabWidget()->saveState(); if (qz->isFullScreen()) { stream << QByteArray(); } else { stream << qz->saveState(); } } file.close(); QupZilla* qupzilla_ = getWindow(); if (qupzilla_ && m_mainWindows.count() == 1) { qupzilla_->tabWidget()->savePinnedTabs(); } // Saving cookies m_cookiejar->saveCookies(); return true; } bool MainApplication::restoreStateSlot(QupZilla* window, RestoreData recoveryData) { if (m_isPrivateSession || recoveryData.isEmpty()) { return false; } m_isRestoring = true; window->tabWidget()->closeRecoveryTab(); if (window->tabWidget()->normalTabsCount() > 1) { // This can only happen when recovering crashed session! // // Don't restore tabs in current window as user already opened // some new tabs. // Instead create new one and restore pinned tabs there QupZilla* newWin = makeNewWindow(Qz::BW_OtherRestoredWindow); newWin->restoreWindowState(recoveryData.first()); recoveryData.remove(0); } else { // QTabWidget::count() - count of tabs is not updated after closing // recovery tab ... // update: it seems with ComboTabBar QTabWidget::count() is updated, // we add pinnedTabCounts to currentTab! int tabCount = window->tabWidget()->pinnedTabsCount(); RestoreManager::WindowData data = recoveryData.first(); data.currentTab += tabCount; recoveryData.remove(0); window->restoreWindowState(data); } foreach (const RestoreManager::WindowData &data, recoveryData) { QupZilla* window = makeNewWindow(Qz::BW_OtherRestoredWindow); window->restoreWindowState(data); // for correct geometry calculation in QupZilla::setupUi() mApp->processEvents(); } destroyRestoreManager(); m_isRestoring = false; return true; } bool MainApplication::checkSettingsDir() { /* $HOMEDIR | .config/qupzilla/ | profiles/----------- | | default/ profiles.ini | browsedata.db */ if (QDir(PROFILEDIR).exists() && QFile(PROFILEDIR + "profiles/profiles.ini").exists()) { return true; } std::cout << "QupZilla: Creating new profile directory" << std::endl; QDir dir(PROFILEDIR); if (!dir.exists()) { dir.mkpath(PROFILEDIR); } dir.mkdir("profiles"); dir.cd("profiles"); //.config/qupzilla/profiles QFile(PROFILEDIR + "profiles/profiles.ini").remove(); QFile(":data/profiles.ini").copy(PROFILEDIR + "profiles/profiles.ini"); QFile(PROFILEDIR + "profiles/profiles.ini").setPermissions(QFile::ReadUser | QFile::WriteUser); dir.mkdir("default"); dir.cd("default"); //.config/qupzilla/profiles/default QFile(PROFILEDIR + "profiles/default/browsedata.db").remove(); QFile(":data/browsedata.db").copy(PROFILEDIR + "profiles/default/browsedata.db"); QFile(PROFILEDIR + "profiles/default/browsedata.db").setPermissions(QFile::ReadUser | QFile::WriteUser); QFile versionFile(PROFILEDIR + "profiles/default/version"); versionFile.open(QFile::WriteOnly); versionFile.write(QupZilla::VERSION.toUtf8()); versionFile.close(); return dir.isReadable(); } void MainApplication::destroyRestoreManager() { delete m_restoreManager; m_restoreManager = 0; } ProxyStyle* MainApplication::proxyStyle() const { return m_proxyStyle; } void MainApplication::setProxyStyle(ProxyStyle* style) { m_proxyStyle = style; QApplication::setStyle(style); } QString MainApplication::currentStyle() const { return m_proxyStyle->baseStyle()->objectName(); } void MainApplication::clearTempPath() { QString path = PROFILEDIR + "tmp/"; QDir dir(path); if (dir.exists()) { QzTools::removeDir(path); } } QString MainApplication::tempPath() const { QString path = PROFILEDIR + "tmp/"; QDir dir(path); if (!dir.exists()) { #ifdef QZ_WS_X11 // Symlink it to standard temporary path /tmp QDir().mkpath(QDir::tempPath() + "/qupzilla/tmp"); QFile::remove(PROFILEDIR + "tmp"); QFile::link(QDir::tempPath() + "/qupzilla/tmp/", PROFILEDIR + "tmp"); #else dir.mkdir(path); #endif } return path; } MainApplication::~MainApplication() { delete m_uaManager; #ifdef Q_OS_MAC delete m_macDockMenu; #endif } qupzilla-1.6.0/src/lib/app/mainapplication.h000066400000000000000000000135521226107126500210250ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef MAINAPPLICATION_H #define MAINAPPLICATION_H #define mApp MainApplication::getInstance() #include #include #include #include "restoremanager.h" #include "qtsingleapplication.h" #include "qz_namespace.h" class QWebSettings; class QNetworkDiskCache; class QupZilla; class CookieManager; class BrowsingLibrary; class History; class NetworkManager; class CookieJar; class RSSManager; class Updater; class PluginProxy; class BookmarksModel; class DownloadManager; class AutoFill; class DesktopNotificationsFactory; class IconProvider; class SearchEnginesManager; class DatabaseWriter; class UserAgentManager; class ProxyStyle; class RegisterQAppAssociation; class HTML5PermissionsManager; class Speller; #ifdef Q_OS_MAC class MacMenuReceiver; class QMenu; #endif class QT_QUPZILLA_EXPORT MainApplication : public QtSingleApplication { Q_OBJECT public: QString DATADIR; QString PROFILEDIR; QString TRANSLATIONSDIR; QString THEMESDIR; explicit MainApplication(int &argc, char** argv); ~MainApplication(); void connectDatabase(); void loadSettings(); void reloadSettings(); bool restoreStateSlot(QupZilla* window, RestoreData recoveryData); QupZilla* makeNewWindow(Qz::BrowserWindow type, const QUrl &startUrl = QUrl()); void aboutToCloseWindow(QupZilla* window); bool isStateChanged(); QList mainWindows(); static MainApplication* getInstance() { return static_cast(QCoreApplication::instance()); } bool isClosing() const; bool isRestoring() const; bool isPrivateSession() const; bool isStartingAfterCrash() const; int windowCount() const; QString currentLanguageFile() const; QString currentLanguage() const; QString currentProfilePath() const; bool checkSettingsDir(); void destroyRestoreManager(); void clearTempPath(); ProxyStyle* proxyStyle() const; void setProxyStyle(ProxyStyle* style); QString currentStyle() const; QString tempPath() const; QupZilla* getWindow(); CookieManager* cookieManager(); BrowsingLibrary* browsingLibrary(); History* history(); QWebSettings* webSettings(); NetworkManager* networkManager(); CookieJar* cookieJar(); RSSManager* rssManager(); PluginProxy* plugins(); BookmarksModel* bookmarksModel(); DownloadManager* downManager(); AutoFill* autoFill(); SearchEnginesManager* searchEnginesManager(); QNetworkDiskCache* networkCache(); DesktopNotificationsFactory* desktopNotifications(); HTML5PermissionsManager* html5permissions(); #ifdef USE_HUNSPELL Speller* speller(); #endif DatabaseWriter* dbWriter() { return m_dbWriter; } UserAgentManager* uaManager() { return m_uaManager; } RestoreManager* restoreManager() { return m_restoreManager; } #ifdef Q_OS_WIN RegisterQAppAssociation* associationManager(); #endif #ifdef Q_OS_MAC MacMenuReceiver* macMenuReceiver(); QMenu* macDockMenu(); bool event(QEvent* e); #endif public slots: bool saveStateSlot(); void quitApplication(); void sendMessages(Qz::AppMessageType mes, bool state); void receiveAppMessage(QString message); void setStateChanged(); void addNewTab(const QUrl &url = QUrl()); void startPrivateBrowsing(); void reloadUserStyleSheet(); bool checkDefaultWebBrowser(); signals: void message(Qz::AppMessageType mes, bool state); private slots: void postLaunch(); void setupJumpList(); void restoreCursor(); void saveSettings(); private: enum PostLaunchAction { OpenDownloadManager, OpenNewTab }; void loadTheme(const QString &name); void translateApp(); void restoreOtherWindows(); void backupSavedSessions(); QUrl userStyleSheet(const QString &filePath) const; CookieManager* m_cookiemanager; BrowsingLibrary* m_browsingLibrary; History* m_historymodel; QWebSettings* m_websettings; NetworkManager* m_networkmanager; CookieJar* m_cookiejar; RSSManager* m_rssmanager; PluginProxy* m_plugins; BookmarksModel* m_bookmarksModel; DownloadManager* m_downloadManager; AutoFill* m_autofill; QNetworkDiskCache* m_networkCache; DesktopNotificationsFactory* m_desktopNotifications; SearchEnginesManager* m_searchEnginesManager; RestoreManager* m_restoreManager; ProxyStyle* m_proxyStyle; HTML5PermissionsManager* m_html5permissions; #ifdef USE_HUNSPELL Speller* m_speller; #endif DatabaseWriter* m_dbWriter; UserAgentManager* m_uaManager; QList > m_mainWindows; QString m_activeProfil; QString m_activeLanguage; QString m_activeThemePath; bool m_isPrivateSession; bool m_isClosing; bool m_isStateChanged; bool m_isRestoring; bool m_startingAfterCrash; bool m_databaseConnected; QList m_postLaunchActions; #ifdef Q_OS_WIN RegisterQAppAssociation* m_registerQAppAssociation; #endif #ifdef Q_OS_MAC MacMenuReceiver* m_macMenuReceiver; QMenu* m_macDockMenu; #endif }; #endif // MAINAPPLICATION_H qupzilla-1.6.0/src/lib/app/profileupdater.cpp000066400000000000000000000133741226107126500212370ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "profileupdater.h" #include "qupzilla.h" #include "updater.h" #include "qztools.h" #include "mainapplication.h" #include #include #include #include ProfileUpdater::ProfileUpdater(const QString &profilePath) : m_profilePath(profilePath) { } void ProfileUpdater::checkProfile() { QDir profileDir(m_profilePath); if (!profileDir.exists()) { QDir newDir(profileDir.path().remove(profileDir.dirName())); newDir.mkdir(profileDir.dirName()); } QFile versionFile(m_profilePath + "version"); if (versionFile.exists()) { versionFile.open(QFile::ReadOnly); QString profileVersion = versionFile.readAll(); versionFile.close(); versionFile.remove(); updateProfile(QupZilla::VERSION, profileVersion.trimmed()); } else { copyDataToProfile(); } versionFile.open(QFile::WriteOnly); versionFile.write(QupZilla::VERSION.toUtf8()); versionFile.close(); } void ProfileUpdater::updateProfile(const QString ¤t, const QString &profile) { if (current == profile) { return; } Updater::Version prof(profile); if (prof == Updater::Version("1.0.0")) { update100(); return; } if (prof == Updater::Version("1.1.0") || prof == Updater::Version("1.1.5") || prof == Updater::Version("1.1.8")) { update118(); return; } if (prof == Updater::Version("1.2.0")) { update120(); return; } if (prof == Updater::Version("1.3.0") || prof == Updater::Version("1.3.1")) { update130(); return; } if (prof >= Updater::Version("1.4.0") && prof <= Updater::Version("1.5.0")) { update140(); return; } std::cout << "QupZilla: Incompatible profile version detected, overwriting profile data..." << std::endl; copyDataToProfile(); } void ProfileUpdater::copyDataToProfile() { QDir profileDir(m_profilePath); profileDir.mkdir("certificates"); QFile browseData(m_profilePath + "browsedata.db"); if (browseData.exists()) { const QString browseDataBackup = QzTools::ensureUniqueFilename(m_profilePath + "browsedata-backup.db"); const QString settingsBackup = QzTools::ensureUniqueFilename(m_profilePath + "settings-backup.ini"); browseData.copy(browseDataBackup); QFile(m_profilePath + "settings.ini").copy(settingsBackup); const QString text = "Incompatible profile version has been detected. To avoid losing your profile data, they were " "backed up in following directories:

" + browseDataBackup + "
" + settingsBackup + "
"; QMessageBox::warning(0, "QupZilla: Incompatible profile version", text); } browseData.remove(); QFile(":data/browsedata.db").copy(m_profilePath + "browsedata.db"); QFile(m_profilePath + "browsedata.db").setPermissions(QFile::ReadUser | QFile::WriteUser); } void ProfileUpdater::update100() { std::cout << "QupZilla: Upgrading profile version from 1.0.0..." << std::endl; mApp->connectDatabase(); QSqlQuery query; query.exec("ALTER TABLE autofill ADD COLUMN last_used NUMERIC"); query.exec("UPDATE autofill SET last_used=0"); update118(); } void ProfileUpdater::update118() { std::cout << "QupZilla: Upgrading profile version from 1.1.8..." << std::endl; mApp->connectDatabase(); QSqlQuery query; query.exec("ALTER TABLE folders ADD COLUMN parent TEXT"); update120(); } void ProfileUpdater::update120() { std::cout << "QupZilla: Upgrading profile version from 1.2.0..." << std::endl; mApp->connectDatabase(); QSqlDatabase db = QSqlDatabase::database(); db.transaction(); // This is actually just renaming bookmarks.toolbar_position to bookmarks.position QSqlQuery query; query.exec("ALTER TABLE bookmarks RENAME TO tmp_bookmarks"); query.exec("CREATE TABLE bookmarks (icon TEXT, folder TEXT, id INTEGER PRIMARY KEY, title VARCHAR(200), url VARCHAR(200), position NUMERIC)"); query.exec("INSERT INTO bookmarks(icon, folder, id, title, url, position)" "SELECT icon, folder, id, title, url, toolbar_position FROM tmp_bookmarks"); query.exec("DROP TABLE tmp_bookmarks"); query.exec("CREATE INDEX bookmarksTitle ON bookmarks(title ASC)"); query.exec("CREATE INDEX bookmarksUrl ON bookmarks(url ASC)"); db.commit(); update130(); } void ProfileUpdater::update130() { std::cout << "QupZilla: Upgrading profile version from 1.3.0..." << std::endl; mApp->connectDatabase(); QSqlQuery query; query.exec("ALTER TABLE bookmarks ADD COLUMN keyword TEXT"); update140(); } void ProfileUpdater::update140() { std::cout << "QupZilla: Upgrading profile version from 1.4.0..." << std::endl; mApp->connectDatabase(); QSqlQuery query; query.exec("ALTER TABLE search_engines ADD COLUMN postData TEXT"); } qupzilla-1.6.0/src/lib/app/profileupdater.h000066400000000000000000000025071226107126500207000ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef PROFILEUPDATER_H #define PROFILEUPDATER_H #include #include "qz_namespace.h" class ProfileUpdater { public: explicit ProfileUpdater(const QString &profilePath); void checkProfile(); private: void updateProfile(const QString ¤t, const QString &profile); void copyDataToProfile(); void update100(); void update118(); void update120(); void update130(); void update140(); QString m_profilePath; }; #endif // PROFILEUPDATER_H qupzilla-1.6.0/src/lib/app/proxystyle.cpp000066400000000000000000000036471226107126500204560ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "proxystyle.h" ProxyStyle::ProxyStyle() : QProxyStyle() , m_TabBarTabHSpace(-1) { } int ProxyStyle::styleHint(StyleHint hint, const QStyleOption* option, const QWidget* widget, QStyleHintReturn* returnData) const { switch (hint) { case QStyle::SH_Menu_Scrollable: return int(true); case QStyle::SH_ScrollBar_ContextMenu: return int(false); default: return QProxyStyle::styleHint(hint, option, widget, returnData); } } int ProxyStyle::pixelMetric(PixelMetric metric, const QStyleOption* option, const QWidget* widget) const { switch (metric) { case PM_TabBarTabHSpace: if (m_TabBarTabHSpace == -1) { m_TabBarTabHSpace = qMin(QProxyStyle::pixelMetric(PM_TabBarTabHSpace, option, widget), 14); if (name() == QLatin1String("oxygen")) { m_TabBarTabHSpace = 14; } } return m_TabBarTabHSpace; default: return QProxyStyle::pixelMetric(metric, option, widget); } } QString ProxyStyle::name() const { return baseStyle()->objectName(); } qupzilla-1.6.0/src/lib/app/proxystyle.h000066400000000000000000000025421226107126500201140ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef PROXYSTYLE_H #define PROXYSTYLE_H #include #include "qz_namespace.h" class QT_QUPZILLA_EXPORT ProxyStyle : public QProxyStyle { public: explicit ProxyStyle(); int styleHint(StyleHint hint, const QStyleOption* option = 0, const QWidget* widget = 0, QStyleHintReturn* returnData = 0) const; int pixelMetric(PixelMetric metric, const QStyleOption* option, const QWidget* widget) const; QString name() const; private: mutable int m_TabBarTabHSpace; }; #endif // PROXYSTYLE_H qupzilla-1.6.0/src/lib/app/qupzilla.cpp000066400000000000000000002405131226107126500200500ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "qupzilla.h" #include "tabwidget.h" #include "tabbar.h" #include "webpage.h" #include "tabbedwebview.h" #include "lineedit.h" #include "history.h" #include "locationbar.h" #include "searchtoolbar.h" #include "websearchbar.h" #include "pluginproxy.h" #include "sidebar.h" #include "downloadmanager.h" #include "cookiejar.h" #include "cookiemanager.h" #include "bookmarksmanager.h" #include "bookmarkstoolbar.h" #include "clearprivatedata.h" #include "sourceviewer.h" #include "siteinfo.h" #include "preferences.h" #include "networkmanager.h" #include "autofill.h" #include "networkmanagerproxy.h" #include "rssmanager.h" #include "mainapplication.h" #include "aboutdialog.h" #include "checkboxdialog.h" #include "adblockmanager.h" #include "clickablelabel.h" #include "docktitlebarwidget.h" #include "iconprovider.h" #include "progressbar.h" #include "adblockicon.h" #include "closedtabsmanager.h" #include "statusbarmessage.h" #include "browsinglibrary.h" #include "navigationbar.h" #include "pagescreen.h" #include "webinspectordockwidget.h" #include "bookmarksimportdialog.h" #include "qztools.h" #include "actioncopy.h" #include "reloadstopbutton.h" #include "enhancedmenu.h" #include "navigationcontainer.h" #include "settings.h" #include "qzsettings.h" #include "webtab.h" #include "speeddial.h" #include "menubar.h" #include "qtwin.h" #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #if QT_VERSION < 0x050000 #include "qwebkitversion.h" #endif #if defined(QZ_WS_X11) && !defined(NO_X11) #include #include #endif #ifndef Q_OS_MAC #define MENU_RECEIVER this #else #include "macmenureceiver.h" #define MENU_RECEIVER mApp->macMenuReceiver() #endif const QString QupZilla::VERSION = "1.6.0"; const QString QupZilla::BUILDTIME = __DATE__" "__TIME__; const QString QupZilla::AUTHOR = "David Rosca"; const QString QupZilla::COPYRIGHT = "2010-2013"; const QString QupZilla::WWWADDRESS = "http://www.qupzilla.com"; const QString QupZilla::WIKIADDRESS = "https://github.com/QupZilla/qupzilla/wiki"; const QString QupZilla::WEBKITVERSION = qWebKitVersion(); QupZilla::QupZilla(Qz::BrowserWindow type, QUrl startUrl) : QMainWindow(0) , m_historyMenuChanged(true) , m_bookmarksMenuChanged(true) , m_isClosing(false) , m_isStarting(false) , m_startingUrl(startUrl) , m_windowType(type) , m_startTab(0) , m_menuBookmarksAction(0) , m_actionPrivateBrowsing(0) , m_sideBarManager(new SideBarManager(this)) , m_statusBarMessage(new StatusBarMessage(this)) , m_usingTransparentBackground(false) , m_tabsOnTopState(-1) { setObjectName("mainwindow"); setAttribute(Qt::WA_DeleteOnClose); setWindowTitle(tr("QupZilla")); if (mApp->isPrivateSession()) { setProperty("private", QVariant(true)); } m_isStarting = true; #ifndef QZ_WS_X11 setUpdatesEnabled(false); #endif setupUi(); setupMenu(); m_hideNavigationTimer = new QTimer(this); m_hideNavigationTimer->setInterval(1000); m_hideNavigationTimer->setSingleShot(true); connect(m_hideNavigationTimer, SIGNAL(timeout()), this, SLOT(hideNavigationSlot())); connect(mApp, SIGNAL(message(Qz::AppMessageType,bool)), this, SLOT(receiveMessage(Qz::AppMessageType,bool))); QTimer::singleShot(0, this, SLOT(postLaunch())); if (mApp->isPrivateSession()) { QzTools::setWmClass("QupZilla Browser (Private Window)", this); } else { QzTools::setWmClass("QupZilla Browser", this); } } void QupZilla::openWithTab(WebTab* tab) { m_startTab = tab; } void QupZilla::postLaunch() { #ifdef QZ_WS_X11 setUpdatesEnabled(false); #endif loadSettings(); Settings settings; int afterLaunch = settings.value("Web-URL-Settings/afterLaunch", 1).toInt(); bool addTab = true; QUrl startUrl; switch (afterLaunch) { case 0: startUrl = QUrl(); break; case 2: startUrl = QUrl("qupzilla:speeddial"); break; case 1: case 3: startUrl = m_homepage; break; default: break; } switch (m_windowType) { case Qz::BW_FirstAppWindow: if (mApp->isStartingAfterCrash()) { addTab = true; startUrl = QUrl("qupzilla:restore"); } else if (afterLaunch == 3 && mApp->restoreManager()) { addTab = !mApp->restoreStateSlot(this, mApp->restoreManager()->restoreData()); } break; case Qz::BW_MacFirstWindow: #ifdef Q_OS_MAC QTimer::singleShot(0, this, SLOT(refreshStateOfAllActions())); #endif case Qz::BW_NewWindow: addTab = true; break; case Qz::BW_OtherRestoredWindow: addTab = false; break; } show(); if (!m_startingUrl.isEmpty()) { startUrl = m_startingUrl; addTab = true; } if (m_startTab) { addTab = false; m_tabWidget->addView(m_startTab); } if (addTab) { QNetworkRequest request(startUrl); request.setRawHeader("X-QupZilla-UserLoadAction", QByteArray("1")); m_tabWidget->addView(request, Qz::NT_CleanSelectedTabAtTheEnd); if (startUrl.isEmpty() || startUrl.toString() == QLatin1String("qupzilla:speeddial")) { locationBar()->setFocus(); } } if (m_tabWidget->getTabBar()->normalTabsCount() <= 0 && m_windowType != Qz::BW_OtherRestoredWindow) { // Something went really wrong .. add one tab QNetworkRequest request(m_homepage); request.setRawHeader("X-QupZilla-UserLoadAction", QByteArray("1")); m_tabWidget->addView(request, Qz::NT_SelectedTabAtTheEnd); } aboutToHideEditMenu(); #ifdef Q_OS_MAC // Fill menus even if user don't call them if (m_windowType == Qz::BW_FirstAppWindow) { aboutToShowBookmarksMenu(); aboutToShowHistoryMostMenu(); aboutToShowHistoryRecentMenu(); aboutToShowEncodingMenu(); } #endif mApp->plugins()->emitMainWindowCreated(this); emit startingCompleted(); m_isStarting = false; QMainWindow::setWindowTitle(m_lastWindowTitle); setUpdatesEnabled(true); raise(); activateWindow(); QTimer::singleShot(0, tabWidget()->getTabBar(), SLOT(ensureVisible())); } void QupZilla::setupUi() { int locationBarWidth; int websearchBarWidth; Settings settings; settings.beginGroup("Browser-View-Settings"); if (settings.value("WindowMaximised", false).toBool()) { resize(800, 550); setWindowState(Qt::WindowMaximized); } else { // Let the WM decides where to put new browser window if ((m_windowType != Qz::BW_FirstAppWindow && m_windowType != Qz::BW_MacFirstWindow) && mApp->getWindow()) { #ifdef Q_WS_WIN // Windows WM places every new window in the middle of screen .. for some reason QPoint p = mApp->getWindow()->geometry().topLeft(); p.setX(p.x() + 30); p.setY(p.y() + 30); if (!mApp->desktop()->availableGeometry(mApp->getWindow()).contains(p)) { p.setX(mApp->desktop()->availableGeometry(mApp->getWindow()).x() + 30); p.setY(mApp->desktop()->availableGeometry(mApp->getWindow()).y() + 30); } setGeometry(QRect(p, mApp->getWindow()->size())); #else resize(mApp->getWindow()->size()); #endif } else if (!restoreGeometry(settings.value("WindowGeometry").toByteArray())) { #ifdef Q_WS_WIN setGeometry(QRect(mApp->desktop()->availableGeometry(mApp->getWindow()).x() + 30, mApp->desktop()->availableGeometry(mApp->getWindow()).y() + 30, 800, 550)); #else resize(800, 550); #endif } } locationBarWidth = settings.value("LocationBarWidth", 480).toInt(); websearchBarWidth = settings.value("WebSearchBarWidth", 140).toInt(); settings.endGroup(); QWidget* widget = new QWidget(this); widget->setCursor(Qt::ArrowCursor); setCentralWidget(widget); m_mainLayout = new QVBoxLayout(widget); m_mainLayout->setContentsMargins(0, 0, 0, 0); m_mainLayout->setSpacing(0); m_mainSplitter = new QSplitter(this); m_mainSplitter->setObjectName("sidebar-splitter"); m_mainSplitter->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Expanding); m_tabWidget = new TabWidget(this); m_superMenu = new QMenu(this); m_navigationBar = new NavigationBar(this); m_navigationBar->setSplitterSizes(locationBarWidth, websearchBarWidth); m_bookmarksToolbar = new BookmarksToolbar(this); m_navigationContainer = new NavigationContainer(this); QVBoxLayout* l = new QVBoxLayout(m_navigationContainer); l->setContentsMargins(0, 0, 0, 0); l->setSpacing(0); l->addWidget(m_navigationBar); l->addWidget(m_bookmarksToolbar); m_navigationContainer->setLayout(l); m_mainSplitter->addWidget(m_tabWidget); triggerTabsOnTop(tabsOnTop()); m_mainLayout->addWidget(m_mainSplitter); m_mainSplitter->setCollapsible(0, false); statusBar()->setObjectName("mainwindow-statusbar"); statusBar()->setCursor(Qt::ArrowCursor); m_progressBar = new ProgressBar(statusBar()); m_privateBrowsing = new QLabel(this); m_privateBrowsing->setPixmap(QPixmap(":/icons/locationbar/privatebrowsing.png")); m_privateBrowsing->setVisible(false); m_privateBrowsing->setToolTip(tr("Private Browsing Enabled")); m_adblockIcon = new AdBlockIcon(this); m_ipLabel = new QLabel(this); m_ipLabel->setObjectName("statusbar-ip-label"); m_ipLabel->setToolTip(tr("IP Address of current page")); statusBar()->addPermanentWidget(m_progressBar); statusBar()->addPermanentWidget(m_ipLabel); statusBar()->addPermanentWidget(m_privateBrowsing); statusBar()->addPermanentWidget(m_adblockIcon); // Workaround for Oxygen tooltips not having transparent background QPalette pal = QToolTip::palette(); QColor col = pal.window().color(); col.setAlpha(0); pal.setColor(QPalette::Window, col); QToolTip::setPalette(pal); } void QupZilla::setupMenu() { #ifdef Q_OS_MAC if (menuBar()) { setupMacMenu(); setupOtherActions(); return; } else { mApp->macMenuReceiver()->setMenuBar(new QMenuBar(0)); } #else setMenuBar(new MenuBar(this)); #endif // Standard actions - needed on Mac to be placed correctly in "application" menu m_actionAbout = new QAction(QIcon::fromTheme("help-about"), tr("&About QupZilla"), 0); m_actionAbout->setMenuRole(QAction::AboutRole); connect(m_actionAbout, SIGNAL(triggered()), MENU_RECEIVER, SLOT(aboutQupZilla())); m_actionPreferences = new QAction(QIcon::fromTheme("preferences-desktop", QIcon(":/icons/faenza/settings.png")), tr("Pr&eferences"), 0); m_actionPreferences->setMenuRole(QAction::PreferencesRole); m_actionPreferences->setShortcut(QKeySequence(QKeySequence::Preferences)); connect(m_actionPreferences, SIGNAL(triggered()), MENU_RECEIVER, SLOT(showPreferences())); m_actionQuit = new QAction(QIcon::fromTheme("application-exit"), tr("Quit"), 0); m_actionQuit->setMenuRole(QAction::QuitRole); // QKeySequence::Quit returns an empty sequence on Windows and X11 when running desktop other than Gnome and Kde m_actionQuit->setShortcut(actionShortcut(QKeySequence::Quit, Qt::CTRL + Qt::Key_Q)); connect(m_actionQuit, SIGNAL(triggered()), MENU_RECEIVER, SLOT(quitApp())); /************* * File Menu * *************/ m_menuFile = new QMenu(tr("&File")); m_menuFile->addAction(QIcon::fromTheme("tab-new", QIcon(":/icons/menu/new-tab.png")), tr("New Tab"), MENU_RECEIVER, SLOT(addTab()))->setShortcut(QKeySequence("Ctrl+T")); m_menuFile->addAction(QIcon::fromTheme("window-new"), tr("&New Window"), MENU_RECEIVER, SLOT(newWindow()))->setShortcut(QKeySequence("Ctrl+N")); m_menuFile->addAction(QIcon::fromTheme("document-open-remote"), tr("Open Location"), MENU_RECEIVER, SLOT(openLocation()))->setShortcut(QKeySequence("Ctrl+L")); m_menuFile->addAction(QIcon::fromTheme("document-open"), tr("Open &File..."), MENU_RECEIVER, SLOT(openFile()))->setShortcut(QKeySequence("Ctrl+O")); m_menuFile->addAction(tr("Close Tab"), MENU_RECEIVER, SLOT(closeTab()))->setShortcut(QKeySequence("Ctrl+W")); m_actionCloseWindow = m_menuFile->addAction(QIcon::fromTheme("window-close"), tr("Close Window"), MENU_RECEIVER, SLOT(closeWindow())); m_actionCloseWindow->setShortcut(QKeySequence("Ctrl+Shift+W")); m_menuFile->addSeparator(); m_menuFile->addAction(QIcon::fromTheme("document-save"), tr("&Save Page As..."), MENU_RECEIVER, SLOT(savePage()))->setShortcut(QKeySequence("Ctrl+S")); m_menuFile->addAction(QIcon::fromTheme("image-loading"), tr("Save Page Screen"), MENU_RECEIVER, SLOT(savePageScreen()))->setShortcut(QKeySequence("Ctrl+Shift+S")); m_menuFile->addAction(QIcon::fromTheme("mail-message-new"), tr("Send Link..."), MENU_RECEIVER, SLOT(sendLink())); m_menuFile->addAction(QIcon::fromTheme("document-print"), tr("&Print..."), MENU_RECEIVER, SLOT(printPage()))->setShortcut(QKeySequence("Ctrl+P")); m_menuFile->addSeparator(); m_menuFile->addAction(tr("Import bookmarks..."), MENU_RECEIVER, SLOT(showBookmarkImport())); m_menuFile->addAction(m_actionQuit); #ifdef Q_OS_MAC // Add standard actions to File Menu (as it won't be ever cleared) and Mac menubar should move them to "application" menu m_menuFile->addAction(m_actionAbout); m_menuFile->addAction(m_actionPreferences); #endif connect(m_menuFile, SIGNAL(aboutToShow()), MENU_RECEIVER, SLOT(aboutToShowFileMenu())); connect(m_menuFile, SIGNAL(aboutToHide()), MENU_RECEIVER, SLOT(aboutToHideFileMenu())); /************* * Edit Menu * *************/ m_menuEdit = new QMenu(tr("&Edit")); m_menuEdit->addAction(QIcon::fromTheme("edit-undo"), tr("&Undo"), MENU_RECEIVER, SLOT(editUndo()))->setShortcut(QKeySequence("Ctrl+Z")); m_menuEdit->addAction(QIcon::fromTheme("edit-redo"), tr("&Redo"), MENU_RECEIVER, SLOT(editRedo()))->setShortcut(QKeySequence("Ctrl+Shift+Z")); m_menuEdit->addSeparator(); m_menuEdit->addAction(QIcon::fromTheme("edit-cut"), tr("&Cut"), MENU_RECEIVER, SLOT(editCut()))->setShortcut(QKeySequence("Ctrl+X")); m_menuEdit->addAction(QIcon::fromTheme("edit-copy"), tr("C&opy"), MENU_RECEIVER, SLOT(editCopy()))->setShortcut(QKeySequence("Ctrl+C")); m_menuEdit->addAction(QIcon::fromTheme("edit-paste"), tr("&Paste"), MENU_RECEIVER, SLOT(editPaste()))->setShortcut(QKeySequence("Ctrl+V")); m_menuEdit->addSeparator(); m_menuEdit->addAction(QIcon::fromTheme("edit-select-all"), tr("Select &All"), MENU_RECEIVER, SLOT(editSelectAll()))->setShortcut(QKeySequence("Ctrl+A")); m_menuEdit->addAction(QIcon::fromTheme("edit-find"), tr("&Find"), MENU_RECEIVER, SLOT(searchOnPage()))->setShortcut(QKeySequence("Ctrl+F")); m_menuEdit->addSeparator(); #ifdef QZ_WS_X11 m_menuEdit->addAction(m_actionPreferences); #endif connect(m_menuEdit, SIGNAL(aboutToShow()), MENU_RECEIVER, SLOT(aboutToShowEditMenu())); connect(m_menuEdit, SIGNAL(aboutToHide()), MENU_RECEIVER, SLOT(aboutToHideEditMenu())); /************* * View Menu * *************/ m_menuView = new QMenu(tr("&View")); m_actionShowToolbar = new QAction(tr("&Navigation Toolbar"), MENU_RECEIVER); m_actionShowToolbar->setCheckable(true); connect(m_actionShowToolbar, SIGNAL(triggered(bool)), MENU_RECEIVER, SLOT(showNavigationToolbar())); m_actionShowBookmarksToolbar = new QAction(tr("&Bookmarks Toolbar"), MENU_RECEIVER); m_actionShowBookmarksToolbar->setCheckable(true); connect(m_actionShowBookmarksToolbar, SIGNAL(triggered(bool)), MENU_RECEIVER, SLOT(showBookmarksToolbar())); m_actionShowStatusbar = new QAction(tr("Sta&tus Bar"), MENU_RECEIVER); m_actionShowStatusbar->setCheckable(true); connect(m_actionShowStatusbar, SIGNAL(triggered(bool)), MENU_RECEIVER, SLOT(showStatusbar())); #ifndef Q_OS_MAC m_actionShowMenubar = new QAction(tr("&Menu Bar"), this); m_actionShowMenubar->setCheckable(true); connect(m_actionShowMenubar, SIGNAL(triggered(bool)), MENU_RECEIVER, SLOT(showMenubar())); m_menuEncoding = new QMenu(this); #else m_menuEncoding = new QMenu(0); #endif m_actionTabsOnTop = new QAction(tr("&Tabs on Top"), MENU_RECEIVER); m_actionTabsOnTop->setCheckable(true); connect(m_actionTabsOnTop, SIGNAL(triggered(bool)), MENU_RECEIVER, SLOT(triggerTabsOnTop(bool))); m_actionShowFullScreen = new QAction(tr("&Fullscreen"), MENU_RECEIVER); m_actionShowFullScreen->setCheckable(true); #ifndef Q_OS_MAC m_actionShowFullScreen->setShortcut(QKeySequence("F11")); #else m_actionShowFullScreen->setShortcut(QKeySequence("Ctrl+F11")); #endif connect(m_actionShowFullScreen, SIGNAL(triggered(bool)), MENU_RECEIVER, SLOT(toggleFullScreen(bool))); m_actionStop = new QAction(qIconProvider->standardIcon(QStyle::SP_BrowserStop), tr("&Stop"), MENU_RECEIVER); connect(m_actionStop, SIGNAL(triggered()), MENU_RECEIVER, SLOT(stop())); m_actionStop->setShortcut(QKeySequence("Esc")); m_actionReload = new QAction(qIconProvider->standardIcon(QStyle::SP_BrowserReload), tr("&Reload"), MENU_RECEIVER); connect(m_actionReload, SIGNAL(triggered()), MENU_RECEIVER, SLOT(reload())); m_actionReload->setShortcut(QKeySequence("F5")); QAction* actionEncoding = new QAction(tr("Character &Encoding"), MENU_RECEIVER); actionEncoding->setMenu(m_menuEncoding); connect(m_menuEncoding, SIGNAL(aboutToShow()), MENU_RECEIVER, SLOT(aboutToShowEncodingMenu())); m_actionCaretBrowsing = new QAction(tr("Enable &Caret Browsing"), MENU_RECEIVER); m_actionCaretBrowsing->setVisible(false); m_actionCaretBrowsing->setCheckable(true); m_actionCaretBrowsing->setShortcut(QKeySequence("F7")); connect(m_actionCaretBrowsing, SIGNAL(triggered()), MENU_RECEIVER, SLOT(triggerCaretBrowsing())); #if QTWEBKIT_FROM_2_3 m_actionCaretBrowsing->setVisible(true); #endif m_toolbarsMenu = new QMenu(tr("Toolbars")); #ifndef Q_OS_MAC m_toolbarsMenu->addAction(m_actionShowMenubar); #endif m_toolbarsMenu->addAction(m_actionShowToolbar); m_toolbarsMenu->addAction(m_actionShowBookmarksToolbar); m_toolbarsMenu->addSeparator(); m_toolbarsMenu->addAction(m_actionTabsOnTop); QMenu* sidebarsMenu = new QMenu(tr("Sidebars")); m_sideBarManager->setSideBarMenu(sidebarsMenu); m_menuView->addMenu(m_toolbarsMenu); m_menuView->addMenu(sidebarsMenu); m_menuView->addAction(m_actionShowStatusbar); m_menuView->addSeparator(); m_menuView->addAction(m_actionStop); m_menuView->addAction(m_actionReload); m_menuView->addSeparator(); m_menuView->addAction(QIcon::fromTheme("zoom-in"), tr("Zoom &In"), MENU_RECEIVER, SLOT(zoomIn()))->setShortcut(QKeySequence("Ctrl++")); m_menuView->addAction(QIcon::fromTheme("zoom-out"), tr("Zoom &Out"), MENU_RECEIVER, SLOT(zoomOut()))->setShortcut(QKeySequence("Ctrl+-")); m_menuView->addAction(QIcon::fromTheme("zoom-original"), tr("Reset"), MENU_RECEIVER, SLOT(zoomReset()))->setShortcut(QKeySequence("Ctrl+0")); m_menuView->addSeparator(); m_menuView->addAction(m_actionCaretBrowsing); m_menuView->addAction(actionEncoding); m_menuView->addSeparator(); m_actionPageSource = m_menuView->addAction(QIcon::fromTheme("text-html"), tr("&Page Source"), MENU_RECEIVER, SLOT(showSource())); m_actionPageSource->setShortcut(QKeySequence("Ctrl+U")); m_actionPageSource->setEnabled(false); m_menuView->addAction(m_actionShowFullScreen); connect(m_menuView, SIGNAL(aboutToShow()), MENU_RECEIVER, SLOT(aboutToShowViewMenu())); connect(m_menuView, SIGNAL(aboutToHide()), MENU_RECEIVER, SLOT(aboutToHideViewMenu())); /**************** * History Menu * ****************/ m_menuHistory = new Menu(tr("Hi&story")); m_menuHistory->addAction(qIconProvider->standardIcon(QStyle::SP_ArrowBack), tr("&Back"), MENU_RECEIVER, SLOT(goBack()))->setShortcut(actionShortcut(QKeySequence::Back, Qt::ALT + Qt::Key_Left, QKeySequence::Forward, Qt::ALT + Qt::Key_Right)); m_menuHistory->addAction(qIconProvider->standardIcon(QStyle::SP_ArrowForward), tr("&Forward"), MENU_RECEIVER, SLOT(goNext()))->setShortcut(actionShortcut(QKeySequence::Forward, Qt::ALT + Qt::Key_Right, QKeySequence::Back, Qt::ALT + Qt::Key_Left)); m_menuHistory->addAction(qIconProvider->fromTheme("go-home"), tr("&Home"), MENU_RECEIVER, SLOT(goHome()))->setShortcut(QKeySequence("Alt+Home")); m_menuHistory->addAction(QIcon::fromTheme("view-history", QIcon(":/icons/menu/history.png")), tr("Show &All History"), MENU_RECEIVER, SLOT(showHistoryManager()))->setShortcut(QKeySequence("Ctrl+Shift+H")); m_menuHistory->addSeparator(); connect(m_menuHistory, SIGNAL(aboutToShow()), MENU_RECEIVER, SLOT(aboutToShowHistoryMenu())); connect(m_menuHistory, SIGNAL(aboutToHide()), MENU_RECEIVER, SLOT(aboutToHideHistoryMenu())); m_menuClosedTabs = new QMenu(tr("Closed Tabs")); connect(m_menuClosedTabs, SIGNAL(aboutToShow()), MENU_RECEIVER, SLOT(aboutToShowClosedTabsMenu())); m_menuHistoryRecent = new Menu(tr("Recently Visited"), m_menuHistory); connect(m_menuHistoryRecent, SIGNAL(aboutToShow()), MENU_RECEIVER, SLOT(aboutToShowHistoryRecentMenu())); m_menuHistoryMost = new Menu(tr("Most Visited"), m_menuHistory); connect(m_menuHistoryMost, SIGNAL(aboutToShow()), MENU_RECEIVER, SLOT(aboutToShowHistoryMostMenu())); m_menuHistory->addMenu(m_menuHistoryRecent); m_menuHistory->addMenu(m_menuHistoryMost); m_menuHistory->addMenu(m_menuClosedTabs); /****************** * Bookmarks Menu * ******************/ m_menuBookmarks = new Menu(tr("&Bookmarks")); m_menuBookmarks->addAction(QIcon::fromTheme("bookmark-new"), tr("Bookmark &This Page"), MENU_RECEIVER, SLOT(bookmarkPage()))->setShortcut(QKeySequence("Ctrl+D")); m_menuBookmarks->addAction(QIcon::fromTheme("bookmark-new-list"), tr("Bookmark &All Tabs"), MENU_RECEIVER, SLOT(bookmarkAllTabs())); m_menuBookmarks->addAction(qIconProvider->fromTheme("bookmarks-organize"), tr("Organize &Bookmarks"), MENU_RECEIVER, SLOT(showBookmarksManager()))->setShortcut(QKeySequence("Ctrl+Shift+O")); m_menuBookmarks->addSeparator(); connect(m_menuBookmarks, SIGNAL(aboutToShow()), MENU_RECEIVER, SLOT(aboutToShowBookmarksMenu())); connect(m_menuBookmarks, SIGNAL(menuMiddleClicked(Menu*)), MENU_RECEIVER, SLOT(loadFolderBookmarks(Menu*))); /************** * Tools Menu * **************/ m_menuTools = new QMenu(tr("&Tools")); m_menuTools->addAction(tr("&Web Search"), MENU_RECEIVER, SLOT(webSearch()))->setShortcut(QKeySequence("Ctrl+K")); m_actionPageInfo = m_menuTools->addAction(QIcon::fromTheme("dialog-information"), tr("Page &Info"), MENU_RECEIVER, SLOT(showPageInfo())); m_actionPageInfo->setShortcut(QKeySequence("Ctrl+I")); m_actionPageInfo->setEnabled(false); m_menuTools->addSeparator(); m_menuTools->addAction(tr("&Download Manager"), MENU_RECEIVER, SLOT(showDownloadManager()))->setShortcut(QKeySequence("Ctrl+Y")); m_menuTools->addAction(tr("&Cookies Manager"), MENU_RECEIVER, SLOT(showCookieManager())); m_menuTools->addAction(tr("&AdBlock"), AdBlockManager::instance(), SLOT(showDialog())); m_menuTools->addAction(QIcon(":/icons/menu/rss.png"), tr("RSS &Reader"), MENU_RECEIVER, SLOT(showRSSManager())); m_menuTools->addAction(tr("Web In&spector"), MENU_RECEIVER, SLOT(showWebInspector()))->setShortcut(QKeySequence("Ctrl+Shift+I")); m_menuTools->addAction(QIcon::fromTheme("edit-clear"), tr("Clear Recent &History"), MENU_RECEIVER, SLOT(showClearPrivateData()))->setShortcut(QKeySequence("Ctrl+Shift+Del")); m_actionPrivateBrowsing = new QAction(QIcon(":/icons/locationbar/privatebrowsing.png"), tr("New &Private Window"), MENU_RECEIVER); m_actionPrivateBrowsing->setShortcut(QKeySequence("Ctrl+Shift+P")); connect(m_actionPrivateBrowsing, SIGNAL(triggered(bool)), mApp, SLOT(startPrivateBrowsing())); m_menuTools->addAction(m_actionPrivateBrowsing); m_menuTools->addSeparator(); #if !defined(QZ_WS_X11) && !defined(Q_OS_MAC) m_menuTools->addAction(m_actionPreferences); #endif connect(m_menuTools, SIGNAL(aboutToShow()), MENU_RECEIVER, SLOT(aboutToShowToolsMenu())); connect(m_menuTools, SIGNAL(aboutToHide()), MENU_RECEIVER, SLOT(aboutToHideToolsMenu())); /************* * Help Menu * *************/ m_menuHelp = new QMenu(tr("&Help")); #ifndef Q_OS_MAC m_menuHelp->addAction(QIcon(":/icons/menu/qt.png"), tr("About &Qt"), qApp, SLOT(aboutQt())); m_menuHelp->addAction(m_actionAbout); m_menuHelp->addSeparator(); #endif QAction* infoAction = new QAction(QIcon::fromTheme("help-contents"), tr("Information about application"), m_menuHelp); infoAction->setData(QUrl("qupzilla:about")); infoAction->setShortcut(QKeySequence(QKeySequence::HelpContents)); connect(infoAction, SIGNAL(triggered()), MENU_RECEIVER, SLOT(loadActionUrlInNewTab())); m_menuHelp->addAction(infoAction); m_menuHelp->addAction(tr("Configuration Information"), MENU_RECEIVER, SLOT(loadActionUrlInNewTab()))->setData(QUrl("qupzilla:config")); m_menuHelp->addAction(tr("Report &Issue"), MENU_RECEIVER, SLOT(loadActionUrlInNewTab()))->setData(QUrl("qupzilla:reportbug")); /************ * Menu Bar * ************/ menuBar()->addMenu(m_menuFile); menuBar()->addMenu(m_menuEdit); menuBar()->addMenu(m_menuView); menuBar()->addMenu(m_menuHistory); menuBar()->addMenu(m_menuBookmarks); menuBar()->addMenu(m_menuTools); menuBar()->addMenu(m_menuHelp); /***************** * Other Actions * *****************/ setupOtherActions(); #ifndef Q_OS_MAC m_superMenu->addAction(m_menuFile->actions().at(0)); m_superMenu->addAction(m_menuFile->actions().at(1)); m_superMenu->addAction(m_actionPrivateBrowsing); m_superMenu->addAction(m_menuFile->actions().at(3)); m_superMenu->addSeparator(); m_superMenu->addAction(m_menuFile->actions().at(7)); m_superMenu->addAction(m_menuFile->actions().at(8)); m_superMenu->addAction(m_menuFile->actions().at(10)); m_superMenu->addSeparator(); m_superMenu->addAction(m_menuEdit->actions().at(7)); m_superMenu->addAction(m_menuEdit->actions().at(8)); m_superMenu->addSeparator(); m_superMenu->addAction(m_menuHistory->actions().at(3)); m_superMenu->addAction(m_menuBookmarks->actions().at(2)); m_superMenu->addSeparator(); m_superMenu->addAction(m_actionPreferences); m_superMenu->addSeparator(); m_superMenu->addMenu(m_menuView); m_superMenu->addMenu(m_menuHistory); m_superMenu->addMenu(m_menuBookmarks); m_superMenu->addMenu(m_menuTools); m_superMenu->addSeparator(); m_superMenu->addAction(m_actionAbout); m_superMenu->addAction(m_menuHelp->actions().at(3)); m_superMenu->addAction(m_menuHelp->actions().at(4)); m_superMenu->addAction(m_menuHelp->actions().at(5)); m_superMenu->addSeparator(); m_superMenu->addAction(m_actionQuit); #else ActionCopy* copyActionPrivateBrowsing = new ActionCopy(m_actionPrivateBrowsing); copyActionPrivateBrowsing->setText(copyActionPrivateBrowsing->text().remove(QLatin1Char('&'))); mApp->macDockMenu()->addAction(copyActionPrivateBrowsing); mApp->macDockMenu()->addAction(m_menuFile->actions().at(1)); mApp->macDockMenu()->addAction(m_menuFile->actions().at(0)); #endif } void QupZilla::setupOtherActions() { m_actionRestoreTab = new QAction(QIcon::fromTheme("user-trash"), tr("Restore &Closed Tab"), this); m_actionRestoreTab->setShortcut(QKeySequence("Ctrl+Shift+T")); connect(m_actionRestoreTab, SIGNAL(triggered()), MENU_RECEIVER, SLOT(restoreClosedTab())); addAction(m_actionRestoreTab); QShortcut* reloadByPassCacheAction = new QShortcut(QKeySequence("Ctrl+F5"), this); QShortcut* reloadByPassCacheAction2 = new QShortcut(QKeySequence("Ctrl+Shift+R"), this); connect(reloadByPassCacheAction, SIGNAL(activated()), MENU_RECEIVER, SLOT(reloadByPassCache())); connect(reloadByPassCacheAction2, SIGNAL(activated()), MENU_RECEIVER, SLOT(reloadByPassCache())); QShortcut* reloadAction = new QShortcut(QKeySequence("Ctrl+R"), this); connect(reloadAction, SIGNAL(activated()), MENU_RECEIVER, SLOT(reload())); QShortcut* openLocationAction = new QShortcut(QKeySequence("Alt+D"), this); connect(openLocationAction, SIGNAL(activated()), MENU_RECEIVER, SLOT(openLocation())); QShortcut* closeTabAction = new QShortcut(QKeySequence("Ctrl+F4"), this); connect(closeTabAction, SIGNAL(activated()), MENU_RECEIVER, SLOT(closeTab())); // Make shortcuts available even in fullscreen (menu hidden) QList actions = menuBar()->actions(); for (int i = 0; i < actions.size(); ++i) { QAction* action = actions.at(i); if (action->menu()) { actions += action->menu()->actions(); } addAction(action); } } QKeySequence QupZilla::actionShortcut(QKeySequence shortcut, QKeySequence fallBack, QKeySequence shortcutRTL, QKeySequence fallbackRTL) { if (isRightToLeft() && (!shortcutRTL.isEmpty() || !fallbackRTL.isEmpty())) { return (shortcutRTL.isEmpty() ? fallbackRTL : shortcutRTL); } else { return (shortcut.isEmpty() ? fallBack : shortcut); } } #ifdef Q_OS_MAC void QupZilla::setupMacMenu() { // menus m_menuFile = menuBar()->actions().at(0)->menu(); m_menuEdit = menuBar()->actions().at(1)->menu(); m_menuView = menuBar()->actions().at(2)->menu(); m_menuHistory = qobject_cast(menuBar()->actions().at(3)->menu()); m_menuBookmarks = qobject_cast(menuBar()->actions().at(4)->menu()); m_menuTools = menuBar()->actions().at(5)->menu(); m_menuHelp = menuBar()->actions().at(6)->menu(); m_toolbarsMenu = m_menuView->actions().at(0)->menu(); m_menuEncoding = m_menuView->actions().at(12)->menu(); m_menuHistoryRecent = qobject_cast(m_menuHistory->actions().at(5)->menu()); m_menuHistoryMost = qobject_cast(m_menuHistory->actions().at(6)->menu()); m_menuClosedTabs = m_menuHistory->actions().at(7)->menu(); // actions m_actionCloseWindow = m_menuFile->actions().at(5); m_actionQuit = m_menuFile->actions().at(13); m_actionAbout = m_menuFile->actions().at(14); m_actionPreferences = m_menuFile->actions().at(15); m_actionShowToolbar = m_menuView->actions().at(0)->menu()->actions().at(0); m_actionShowBookmarksToolbar = m_menuView->actions().at(0)->menu()->actions().at(1); m_actionTabsOnTop = m_menuView->actions().at(0)->menu()->actions().at(3); m_actionShowStatusbar = m_menuView->actions().at(2); m_actionStop = m_menuView->actions().at(4); m_actionReload = m_menuView->actions().at(5); m_actionCaretBrowsing = m_menuView->actions().at(11); m_actionPageSource = m_menuView->actions().at(14); m_actionShowFullScreen = m_menuView->actions().at(15); m_actionPageInfo = m_menuTools->actions().at(1); m_actionPrivateBrowsing = m_menuTools->actions().at(9); } void QupZilla::refreshStateOfAllActions() { mApp->macMenuReceiver()->aboutToShowFileMenu(m_menuFile); mApp->macMenuReceiver()->aboutToShowHistoryMenu(m_menuHistory); mApp->macMenuReceiver()->aboutToShowBookmarksMenu(m_menuBookmarks); mApp->macMenuReceiver()->aboutToShowViewMenu(m_menuView); mApp->macMenuReceiver()->aboutToShowEditMenu(m_menuEdit); mApp->macMenuReceiver()->aboutToShowToolsMenu(m_menuTools); } #endif void QupZilla::loadSettings() { Settings settings; //Url settings settings.beginGroup("Web-URL-Settings"); m_homepage = settings.value("homepage", "qupzilla:start").toUrl(); settings.endGroup(); QWebSettings* websettings = mApp->webSettings(); websettings->setAttribute(QWebSettings::JavascriptCanAccessClipboard, true); //Browser Window settings settings.beginGroup("Browser-View-Settings"); bool showStatusBar = settings.value("showStatusBar", true).toBool(); bool showReloadButton = settings.value("showReloadButton", true).toBool(); bool showHomeButton = settings.value("showHomeButton", true).toBool(); bool showBackForwardButtons = settings.value("showBackForwardButtons", true).toBool(); bool showAddTabButton = settings.value("showAddTabButton", false).toBool(); bool showWebSearchBar = settings.value("showWebSearchBar", true).toBool(); bool showBookmarksToolbar = settings.value("showBookmarksToolbar", true).toBool(); bool showNavigationToolbar = settings.value("showNavigationToolbar", true).toBool(); bool showMenuBar = settings.value("showMenubar", true).toBool(); bool makeTransparent = settings.value("useTransparentBackground", false).toBool(); m_sideBarWidth = settings.value("SideBarWidth", 250).toInt(); m_webViewWidth = settings.value("WebViewWidth", 2000).toInt(); const QString activeSideBar = settings.value("SideBar", "None").toString(); // Make sure both menubar and navigationbar are not hidden // Fixes #781 if (!showNavigationToolbar) { showMenuBar = true; settings.setValue("showMenubar", true); } settings.endGroup(); settings.beginGroup("Shortcuts"); m_useTabNumberShortcuts = settings.value("useTabNumberShortcuts", true).toBool(); m_useSpeedDialNumberShortcuts = settings.value("useSpeedDialNumberShortcuts", true).toBool(); settings.endGroup(); m_adblockIcon->setEnabled(settings.value("AdBlock/enabled", true).toBool()); statusBar()->setVisible(showStatusBar); m_bookmarksToolbar->setVisible(showBookmarksToolbar); m_navigationBar->setVisible(showNavigationToolbar); menuBar()->setVisible(showMenuBar); #ifndef Q_OS_MAC m_navigationBar->setSuperMenuVisible(!showMenuBar); #endif m_navigationBar->buttonReloadStop()->setVisible(showReloadButton); m_navigationBar->buttonHome()->setVisible(showHomeButton); m_navigationBar->buttonBack()->setVisible(showBackForwardButtons); m_navigationBar->buttonNext()->setVisible(showBackForwardButtons); m_navigationBar->searchLine()->setVisible(showWebSearchBar); m_navigationBar->buttonAddTab()->setVisible(showAddTabButton); m_sideBarManager->showSideBar(activeSideBar, false); // Private browsing m_privateBrowsing->setVisible(mApp->isPrivateSession()); #ifdef Q_OS_WIN if (m_usingTransparentBackground && !makeTransparent) { QtWin::extendFrameIntoClientArea(this, 0, 0, 0, 0); QtWin::enableBlurBehindWindow(this, false); m_tabWidget->getTabBar()->enableBluredBackground(false); m_usingTransparentBackground = false; } #endif if (!makeTransparent) { return; } // Transparency on X11 (no blur like on Windows) #ifdef QZ_WS_X11 setAttribute(Qt::WA_TranslucentBackground); setAttribute(Qt::WA_NoSystemBackground, false); QPalette pal = palette(); QColor bg = pal.window().color(); bg.setAlpha(180); pal.setColor(QPalette::Window, bg); setPalette(pal); ensurePolished(); // workaround Oxygen filling the background setAttribute(Qt::WA_StyledBackground, false); #endif #ifdef Q_OS_WIN if (QtWin::isCompositionEnabled()) { setContentsMargins(0, 0, 0, 0); m_usingTransparentBackground = true; if (!isFullScreen()) { m_tabWidget->getTabBar()->enableBluredBackground(true); QtWin::extendFrameIntoClientArea(this); } //install event filter menuBar()->installEventFilter(this); m_tabWidget->getTabBar()->installEventFilter(this); m_navigationBar->installEventFilter(this); m_bookmarksToolbar->installEventFilter(this); statusBar()->installEventFilter(this); m_navigationContainer->installEventFilter(this); } #endif } void QupZilla::goNext() { weView()->forward(); } void QupZilla::goBack() { weView()->back(); } QMenuBar* QupZilla::menuBar() const { #ifdef Q_OS_MAC return mApp->macMenuReceiver()->menuBar(); #else return QMainWindow::menuBar(); #endif } TabbedWebView* QupZilla::weView() const { return weView(m_tabWidget->currentIndex()); } TabbedWebView* QupZilla::weView(int index) const { WebTab* webTab = qobject_cast(m_tabWidget->widget(index)); if (!webTab) { return 0; } return webTab->view(); } LocationBar* QupZilla::locationBar() const { return qobject_cast(m_tabWidget->locationBars()->currentWidget()); } Qz::BrowserWindow QupZilla::windowType() const { return m_windowType; } void QupZilla::popupToolbarsMenu(const QPoint &pos) { aboutToShowViewMenu(); m_toolbarsMenu->exec(pos); aboutToHideViewMenu(); } bool QupZilla::isTransparentBackgroundAllowed() { return m_usingTransparentBackground && !isFullScreen(); } bool QupZilla::tabsOnTop() const { if (m_tabsOnTopState == -1) { m_tabsOnTopState = qzSettings->tabsOnTop ? 1 : 0; } return m_tabsOnTopState == 1; } void QupZilla::setWindowTitle(const QString &t) { QString title = t; if (mApp->isPrivateSession()) { title.append(tr(" (Private Browsing)")); } if (m_isStarting) { m_lastWindowTitle = title; return; } QMainWindow::setWindowTitle(title); } void QupZilla::receiveMessage(Qz::AppMessageType mes, bool state) { switch (mes) { case Qz::AM_SetAdBlockIconEnabled: m_adblockIcon->setEnabled(state); break; case Qz::AM_CheckPrivateBrowsing: m_privateBrowsing->setVisible(state); m_actionPrivateBrowsing->setChecked(state); weView()->titleChanged(); break; case Qz::AM_ReloadSettings: loadSettings(); m_tabWidget->loadSettings(); break; case Qz::AM_HistoryStateChanged: m_historyMenuChanged = true; break; case Qz::AM_BookmarksChanged: setBookmarksMenuChanged(true); break; default: qWarning("Unresolved message sent! This could never happen!"); break; } } void QupZilla::aboutToShowFileMenu() { #ifndef Q_OS_MAC m_actionCloseWindow->setEnabled(mApp->windowCount() > 1); #endif } void QupZilla::aboutToHideFileMenu() { m_actionCloseWindow->setEnabled(true); } void QupZilla::aboutToShowBookmarksMenu() { if (!bookmarksMenuChanged()) { if (menuBookmarksAction()) { menuBookmarksAction()->setVisible(m_bookmarksToolbar->isVisible()); } return; } setBookmarksMenuChanged(false); while (m_menuBookmarks->actions().count() != 4) { QAction* act = m_menuBookmarks->actions().at(4); if (act->menu()) { act->menu()->clear(); } m_menuBookmarks->removeAction(act); delete act; } QSqlQuery query; query.exec("SELECT title, url, icon FROM bookmarks WHERE folder='bookmarksMenu'"); while (query.next()) { QString title = query.value(0).toString(); const QUrl url = query.value(1).toUrl(); const QIcon icon = qIconProvider->iconFromImage(QImage::fromData(query.value(2).toByteArray())); if (title.length() > 40) { title.truncate(40); title += ".."; } Action* act = new Action(icon, title); act->setData(url); connect(act, SIGNAL(triggered()), MENU_RECEIVER, SLOT(loadActionUrl())); connect(act, SIGNAL(middleClicked()), MENU_RECEIVER, SLOT(loadActionUrlInNewNotSelectedTab())); m_menuBookmarks->addAction(act); } Menu* menuBookmarks = new Menu(_bookmarksToolbar, m_menuBookmarks); menuBookmarks->setIcon(QIcon(style()->standardIcon(QStyle::SP_DirOpenIcon))); query.exec("SELECT title, url, icon FROM bookmarks WHERE folder='bookmarksToolbar'"); while (query.next()) { QString title = query.value(0).toString(); const QUrl url = query.value(1).toUrl(); const QIcon icon = qIconProvider->iconFromImage(QImage::fromData(query.value(2).toByteArray())); if (title.length() > 40) { title.truncate(40); title += ".."; } Action* act = new Action(icon, title); act->setData(url); connect(act, SIGNAL(triggered()), MENU_RECEIVER, SLOT(loadActionUrl())); connect(act, SIGNAL(middleClicked()), MENU_RECEIVER, SLOT(loadActionUrlInNewNotSelectedTab())); menuBookmarks->addAction(act); } if (menuBookmarks->isEmpty()) { menuBookmarks->addAction(tr("Empty"))->setEnabled(false); } setMenuBookmarksAction(m_menuBookmarks->addMenu(menuBookmarks)); query.exec("SELECT name FROM folders"); while (query.next()) { const QString folderName = query.value(0).toString(); Menu* tempFolder = new Menu(folderName, m_menuBookmarks); tempFolder->setIcon(QIcon(style()->standardIcon(QStyle::SP_DirOpenIcon))); QSqlQuery query2; query2.prepare("SELECT title, url, icon FROM bookmarks WHERE folder=?"); query2.addBindValue(folderName); query2.exec(); while (query2.next()) { QString title = query2.value(0).toString(); const QUrl url = query2.value(1).toUrl(); const QIcon icon = qIconProvider->iconFromImage(QImage::fromData(query2.value(2).toByteArray())); if (title.length() > 40) { title.truncate(40); title += ".."; } Action* act = new Action(icon, title); act->setData(url); connect(act, SIGNAL(triggered()), MENU_RECEIVER, SLOT(loadActionUrl())); connect(act, SIGNAL(middleClicked()), MENU_RECEIVER, SLOT(loadActionUrlInNewNotSelectedTab())); tempFolder->addAction(act); } if (tempFolder->isEmpty()) { tempFolder->addAction(tr("Empty"))->setEnabled(false); } m_menuBookmarks->addMenu(tempFolder); } m_menuBookmarks->addSeparator(); query.exec("SELECT title, url, icon FROM bookmarks WHERE folder='unsorted'"); while (query.next()) { QString title = query.value(0).toString(); const QUrl url = query.value(1).toUrl(); const QIcon icon = qIconProvider->iconFromImage(QImage::fromData(query.value(2).toByteArray())); if (title.length() > 40) { title.truncate(40); title += ".."; } Action* act = new Action(icon, title); act->setData(url); connect(act, SIGNAL(triggered()), MENU_RECEIVER, SLOT(loadActionUrl())); connect(act, SIGNAL(middleClicked()), MENU_RECEIVER, SLOT(loadActionUrlInNewNotSelectedTab())); m_menuBookmarks->addAction(act); } menuBookmarksAction()->setVisible(m_bookmarksToolbar->isVisible()); } void QupZilla::aboutToShowHistoryMenu() { TabbedWebView* view = weView(); if (!view) { return; } m_menuHistory->actions().at(0)->setEnabled(view->history()->canGoBack()); m_menuHistory->actions().at(1)->setEnabled(view->history()->canGoForward()); } void QupZilla::aboutToHideHistoryMenu() { m_menuHistory->actions().at(0)->setEnabled(true); m_menuHistory->actions().at(1)->setEnabled(true); } void QupZilla::aboutToShowClosedTabsMenu() { m_menuClosedTabs->clear(); int i = 0; foreach (const ClosedTabsManager::Tab &tab, m_tabWidget->closedTabsManager()->allClosedTabs()) { QString title = tab.title; if (title.length() > 40) { title.truncate(40); title += ".."; } m_menuClosedTabs->addAction(_iconForUrl(tab.url), title, MENU_RECEIVER, SLOT(restoreClosedTab()))->setData(i); i++; } m_menuClosedTabs->addSeparator(); if (i == 0) { m_menuClosedTabs->addAction(tr("Empty"))->setEnabled(false); } else { m_menuClosedTabs->addAction(tr("Restore All Closed Tabs"), MENU_RECEIVER, SLOT(restoreAllClosedTabs())); m_menuClosedTabs->addAction(tr("Clear list"), MENU_RECEIVER, SLOT(clearClosedTabsList())); } } void QupZilla::aboutToShowHistoryRecentMenu() { m_menuHistoryRecent->clear(); QSqlQuery query; query.exec("SELECT title, url FROM history ORDER BY date DESC LIMIT 15"); while (query.next()) { const QUrl url = query.value(1).toUrl(); QString title = query.value(0).toString(); if (title.length() > 40) { title.truncate(40); title += ".."; } Action* act = new Action(_iconForUrl(url), title); act->setData(url); connect(act, SIGNAL(triggered()), MENU_RECEIVER, SLOT(loadActionUrl())); connect(act, SIGNAL(middleClicked()), MENU_RECEIVER, SLOT(loadActionUrlInNewNotSelectedTab())); m_menuHistoryRecent->addAction(act); } if (m_menuHistoryRecent->isEmpty()) { m_menuHistoryRecent->addAction(tr("Empty"))->setEnabled(false); } } void QupZilla::aboutToShowHistoryMostMenu() { m_menuHistoryMost->clear(); const QVector &mostList = mApp->history()->mostVisited(10); foreach (const HistoryEntry &entry, mostList) { QString title = entry.title; if (title.length() > 40) { title.truncate(40); title += ".."; } Action* act = new Action(_iconForUrl(entry.url), title); act->setData(entry.url); connect(act, SIGNAL(triggered()), MENU_RECEIVER, SLOT(loadActionUrl())); connect(act, SIGNAL(middleClicked()), MENU_RECEIVER, SLOT(loadActionUrlInNewNotSelectedTab())); m_menuHistoryMost->addAction(act); } if (m_menuHistoryMost->isEmpty()) { m_menuHistoryMost->addAction(tr("Empty"))->setEnabled(false); } } void QupZilla::aboutToShowViewMenu() { m_actionShowToolbar->setChecked(m_navigationBar->isVisible()); #ifndef Q_OS_MAC m_actionShowMenubar->setChecked(menuBar()->isVisible()); #else m_sideBarManager->setSideBarMenu(m_menuView->actions().at(1)->menu()); #endif m_actionShowStatusbar->setChecked(statusBar()->isVisible()); m_actionShowBookmarksToolbar->setChecked(m_bookmarksToolbar->isVisible()); m_actionTabsOnTop->setChecked(tabsOnTop()); m_actionPageSource->setEnabled(true); #if QTWEBKIT_FROM_2_3 m_actionCaretBrowsing->setChecked(mApp->webSettings()->testAttribute(QWebSettings::CaretBrowsingEnabled)); #endif } void QupZilla::aboutToHideViewMenu() { #ifndef Q_OS_MAC m_actionPageSource->setEnabled(false); #endif } void QupZilla::aboutToShowEditMenu() { WebView* view = weView(); m_menuEdit->actions().at(0)->setEnabled(view->pageAction(QWebPage::Undo)->isEnabled()); m_menuEdit->actions().at(1)->setEnabled(view->pageAction(QWebPage::Redo)->isEnabled()); // Separator m_menuEdit->actions().at(3)->setEnabled(view->pageAction(QWebPage::Cut)->isEnabled()); m_menuEdit->actions().at(4)->setEnabled(view->pageAction(QWebPage::Copy)->isEnabled()); m_menuEdit->actions().at(5)->setEnabled(view->pageAction(QWebPage::Paste)->isEnabled()); // Separator m_menuEdit->actions().at(7)->setEnabled(view->pageAction(QWebPage::SelectAll)->isEnabled()); } void QupZilla::aboutToHideEditMenu() { #ifndef Q_OS_MAC foreach (QAction* act, m_menuEdit->actions()) { act->setEnabled(false); } #endif m_menuEdit->actions().at(8)->setEnabled(true); m_actionPreferences->setEnabled(true); } void QupZilla::aboutToShowToolsMenu() { m_actionPageInfo->setEnabled(true); } void QupZilla::aboutToHideToolsMenu() { #ifndef Q_OS_MAC m_actionPageInfo->setEnabled(false); #endif } void QupZilla::aboutToShowEncodingMenu() { m_menuEncoding->clear(); QMenu* menuISO = new QMenu("ISO", this); QMenu* menuUTF = new QMenu("UTF", this); QMenu* menuWindows = new QMenu("Windows", this); QMenu* menuIscii = new QMenu("Iscii", this); QMenu* menuOther = new QMenu(tr("Other"), this); QList available = QTextCodec::availableCodecs(); qSort(available); const QString activeCodec = mApp->webSettings()->defaultTextEncoding(); foreach (const QByteArray &name, available) { QTextCodec* codec = QTextCodec::codecForName(name); if (codec && codec->aliases().contains(name)) { continue; } const QString nameString = QString::fromUtf8(name); QAction* action = new QAction(nameString, 0); action->setData(nameString); action->setCheckable(true); connect(action, SIGNAL(triggered()), MENU_RECEIVER, SLOT(changeEncoding())); if (activeCodec.compare(nameString, Qt::CaseInsensitive) == 0) { action->setChecked(true); } if (nameString.startsWith(QLatin1String("ISO"))) { menuISO->addAction(action); } else if (nameString.startsWith(QLatin1String("UTF"))) { menuUTF->addAction(action); } else if (nameString.startsWith(QLatin1String("windows"))) { menuWindows->addAction(action); } else if (nameString.startsWith(QLatin1String("Iscii"))) { menuIscii->addAction(action); } else if (nameString == QLatin1String("System")) { m_menuEncoding->addAction(action); } else { menuOther->addAction(action); } } m_menuEncoding->addSeparator(); if (!menuISO->isEmpty()) { m_menuEncoding->addMenu(menuISO); } if (!menuUTF->isEmpty()) { m_menuEncoding->addMenu(menuUTF); } if (!menuWindows->isEmpty()) { m_menuEncoding->addMenu(menuWindows); } if (!menuIscii->isEmpty()) { m_menuEncoding->addMenu(menuIscii); } if (!menuOther->isEmpty()) { m_menuEncoding->addMenu(menuOther); } } void QupZilla::changeEncoding(QObject* obj) { if (!obj) { obj = sender(); } if (QAction* action = qobject_cast(obj)) { const QString encoding = action->data().toString(); mApp->webSettings()->setDefaultTextEncoding(encoding); Settings settings; settings.setValue("Web-Browser-Settings/DefaultEncoding", encoding); reload(); } } void QupZilla::triggerCaretBrowsing() { #if QTWEBKIT_FROM_2_3 bool enable = !mApp->webSettings()->testAttribute(QWebSettings::CaretBrowsingEnabled); Settings settings; settings.beginGroup("Web-Browser-Settings"); settings.setValue("CaretBrowsing", enable); settings.endGroup(); mApp->webSettings()->setAttribute(QWebSettings::CaretBrowsingEnabled, enable); #endif } void QupZilla::bookmarkPage() { mApp->browsingLibrary()->bookmarksManager()->addBookmark(weView()); } void QupZilla::addBookmark(const QUrl &url, const QString &title, const QIcon &icon) { mApp->browsingLibrary()->bookmarksManager()->insertBookmark(url, title, icon); } void QupZilla::bookmarkAllTabs() { mApp->browsingLibrary()->bookmarksManager()->insertAllTabs(); } void QupZilla::newWindow() { mApp->makeNewWindow(Qz::BW_NewWindow); } void QupZilla::goHome() { loadAddress(m_homepage); } void QupZilla::editUndo() { weView()->triggerPageAction(QWebPage::Undo); } void QupZilla::editRedo() { weView()->triggerPageAction(QWebPage::Redo); } void QupZilla::editCut() { weView()->triggerPageAction(QWebPage::Cut); } void QupZilla::editCopy() { weView()->triggerPageAction(QWebPage::Copy); } void QupZilla::editPaste() { weView()->triggerPageAction(QWebPage::Paste); } void QupZilla::editSelectAll() { weView()->selectAll(); } void QupZilla::zoomIn() { weView()->zoomIn(); } void QupZilla::zoomOut() { weView()->zoomOut(); } void QupZilla::zoomReset() { weView()->zoomReset(); } void QupZilla::goHomeInNewTab() { m_tabWidget->addView(m_homepage, Qz::NT_SelectedTab); } void QupZilla::stop() { weView()->stop(); } void QupZilla::reload() { weView()->reload(); } void QupZilla::reloadByPassCache() { weView()->triggerPageAction(QWebPage::ReloadAndBypassCache); } void QupZilla::loadActionUrl(QObject* obj) { if (!obj) { obj = sender(); } if (QAction* action = qobject_cast(obj)) { loadAddress(action->data().toUrl()); } } void QupZilla::loadActionUrlInNewTab(QObject* obj) { if (!obj) { obj = sender(); } if (QAction* action = qobject_cast(obj)) { m_tabWidget->addView(action->data().toUrl(), Qz::NT_SelectedTabAtTheEnd); } } void QupZilla::loadActionUrlInNewNotSelectedTab(QObject* obj) { if (!obj) { obj = sender(); } if (QAction* action = qobject_cast(obj)) { m_tabWidget->addView(action->data().toUrl(), Qz::NT_NotSelectedTab); } } void QupZilla::loadFolderBookmarks(Menu* menu) { const QString folder = BookmarksModel::fromTranslatedFolder(menu->title()); if (folder.isEmpty()) { return; } foreach (const Bookmark &b, mApp->bookmarksModel()->folderBookmarks(folder)) { tabWidget()->addView(b.url, b.title, Qz::NT_NotSelectedTab); } } void QupZilla::loadAddress(const QUrl &url) { weView()->setFocus(); weView()->load(url); } void QupZilla::showCookieManager() { CookieManager* m = mApp->cookieManager(); m->refreshTable(); m->show(); m->raise(); } void QupZilla::showHistoryManager() { mApp->browsingLibrary()->showHistory(this); } void QupZilla::showRSSManager() { mApp->browsingLibrary()->showRSS(this); } void QupZilla::showBookmarksManager() { mApp->browsingLibrary()->showBookmarks(this); } void QupZilla::showClearPrivateData() { ClearPrivateData clear(this, this); clear.exec(); } void QupZilla::showDownloadManager() { mApp->downManager()->show(); } void QupZilla::showPreferences() { Preferences* prefs = new Preferences(this, this); prefs->show(); } void QupZilla::showSource(QWebFrame* frame, const QString &selectedHtml) { if (!frame) { frame = weView()->page()->mainFrame(); } SourceViewer* source = new SourceViewer(frame, selectedHtml); QzTools::centerWidgetToParent(source, this); source->show(); } void QupZilla::showPageInfo() { SiteInfo* info = new SiteInfo(weView(), this); info->setAttribute(Qt::WA_DeleteOnClose); info->show(); } void QupZilla::showBookmarksToolbar() { bool status = m_bookmarksToolbar->isVisible(); m_bookmarksToolbar->setVisible(!status); Settings settings; settings.setValue("Browser-View-Settings/showBookmarksToolbar", !status); } SideBar* QupZilla::addSideBar() { if (m_sideBar) { return m_sideBar.data(); } m_sideBar = new SideBar(m_sideBarManager, this); m_mainSplitter->insertWidget(0, m_sideBar.data()); m_mainSplitter->setCollapsible(0, false); m_mainSplitter->setSizes(QList() << m_sideBarWidth << m_webViewWidth); #ifdef Q_OS_WIN if (QtWin::isCompositionEnabled()) { applyBlurToMainWindow(); m_sideBar.data()->installEventFilter(this); } #endif return m_sideBar.data(); } void QupZilla::saveSideBarWidth() { // That +1 is important here, without it, the sidebar width would // decrease by 1 pixel every close m_sideBarWidth = m_mainSplitter->sizes().at(0) + 1; m_webViewWidth = width() - m_sideBarWidth; } void QupZilla::showNavigationToolbar() { if (!menuBar()->isVisible() && !m_actionShowToolbar->isChecked()) { showMenubar(); } bool status = m_navigationBar->isVisible(); m_navigationBar->setVisible(!status); Settings settings; settings.setValue("Browser-View-Settings/showNavigationToolbar", !status); } void QupZilla::showMenubar() { #ifndef Q_OS_MAC if (!m_navigationBar->isVisible() && !m_actionShowMenubar->isChecked()) { showNavigationToolbar(); } menuBar()->setVisible(!menuBar()->isVisible()); m_navigationBar->setSuperMenuVisible(!menuBar()->isVisible()); Settings settings; settings.setValue("Browser-View-Settings/showMenubar", menuBar()->isVisible()); #endif } void QupZilla::showStatusbar() { bool status = statusBar()->isVisible(); statusBar()->setVisible(!status); Settings settings; settings.setValue("Browser-View-Settings/showStatusbar", !status); } void QupZilla::showWebInspector(bool toggle) { if (m_webInspectorDock) { if (toggle) { m_webInspectorDock.data()->toggleVisibility(); } else { m_webInspectorDock.data()->show(); } return; } m_webInspectorDock = new WebInspectorDockWidget(this); connect(m_tabWidget, SIGNAL(currentChanged(int)), m_webInspectorDock.data(), SLOT(tabChanged())); addDockWidget(Qt::BottomDockWidgetArea, m_webInspectorDock.data()); #ifdef Q_OS_WIN if (QtWin::isCompositionEnabled()) { applyBlurToMainWindow(); m_webInspectorDock.data()->installEventFilter(this); } #endif } void QupZilla::showBookmarkImport() { BookmarksImportDialog* b = new BookmarksImportDialog(this); b->show(); } void QupZilla::triggerTabsOnTop(bool enable) { if (enable) { m_mainLayout->insertWidget(0, m_tabWidget->getTabBar()); m_mainLayout->insertWidget(1, m_navigationContainer); } else { m_mainLayout->insertWidget(0, m_navigationContainer); m_mainLayout->insertWidget(1, m_tabWidget->getTabBar()); } m_tabsOnTopState = enable ? 1 : 0; if (enable != qzSettings->tabsOnTop) { Settings settings; settings.setValue("Browser-Tabs-Settings/TabsOnTop", enable); qzSettings->tabsOnTop = enable; } #ifdef Q_OS_WIN // workaround for changing TabsOnTop state when sidebar is visible // TODO: we need a solution that changing TabsOnTop state // doesn't call applyBlurToMainWindow() from eventFilter() QTimer::singleShot(0, this, SLOT(applyBlurToMainWindow())); #endif } void QupZilla::refreshHistory() { m_navigationBar->refreshHistory(); } void QupZilla::currentTabChanged() { TabbedWebView* view = weView(); if (!view) { return; } setWindowTitle(tr("%1 - QupZilla").arg(view->title())); m_ipLabel->setText(view->getIp()); view->setFocus(); SearchToolBar* search = searchToolBar(); if (search) { search->setWebView(view); } updateLoadingActions(); // Setting correct tab order (LocationBar -> WebSearchBar -> WebView) setTabOrder(locationBar(), m_navigationBar->searchLine()); setTabOrder(m_navigationBar->searchLine(), view); } void QupZilla::updateLoadingActions() { TabbedWebView* view = weView(); if (!view) { return; } bool isLoading = view->isLoading(); m_ipLabel->setVisible(!isLoading); m_progressBar->setVisible(isLoading); m_actionStop->setEnabled(isLoading); m_actionReload->setEnabled(!isLoading); if (isLoading) { m_progressBar->setValue(view->loadingProgress()); m_navigationBar->showStopButton(); } else { m_navigationBar->showReloadButton(); } } void QupZilla::addDeleteOnCloseWidget(QWidget* widget) { if (!m_deleteOnCloseWidgets.contains(widget)) { m_deleteOnCloseWidgets.append(widget); } } void QupZilla::restoreWindowState(const RestoreManager::WindowData &d) { restoreState(d.windowState); m_tabWidget->restoreState(d.tabsState, d.currentTab); } void QupZilla::aboutQupZilla() { AboutDialog about(this); about.exec(); } void QupZilla::addTab() { m_tabWidget->addView(QUrl(), Qz::NT_SelectedNewEmptyTab, true); } void QupZilla::webSearch() { m_navigationBar->searchLine()->setFocus(); m_navigationBar->searchLine()->selectAll(); } void QupZilla::searchOnPage() { SearchToolBar* toolBar = searchToolBar(); if (!toolBar) { const int searchPos = 3; toolBar = new SearchToolBar(weView(), this); m_mainLayout->insertWidget(searchPos, toolBar); } toolBar->focusSearchLine(); #ifdef Q_OS_WIN if (QtWin::isCompositionEnabled()) { applyBlurToMainWindow(); toolBar->installEventFilter(this); } #endif } void QupZilla::openFile() { const QString fileTypes = QString("%1(*.html *.htm *.shtml *.shtm *.xhtml);;" "%2(*.png *.jpg *.jpeg *.bmp *.gif *.svg *.tiff);;" "%3(*.txt);;" "%4(*.*)").arg(tr("HTML files"), tr("Image files"), tr("Text files"), tr("All files")); const QString filePath = QzTools::getOpenFileName("MainWindow-openFile", this, tr("Open file..."), QDir::homePath(), fileTypes); if (!filePath.isEmpty()) { loadAddress(QUrl::fromLocalFile(filePath)); } } void QupZilla::openLocation() { locationBar()->setFocus(); locationBar()->selectAll(); } bool QupZilla::fullScreenNavigationVisible() const { return m_navigationContainer->isVisible(); } void QupZilla::showNavigationWithFullScreen() { if (m_hideNavigationTimer->isActive()) { m_hideNavigationTimer->stop(); } m_navigationContainer->show(); m_tabWidget->getTabBar()->updateVisibilityWithFullscreen(true); } void QupZilla::hideNavigationWithFullScreen() { if (!m_hideNavigationTimer->isActive()) { m_hideNavigationTimer->start(); } } void QupZilla::hideNavigationSlot() { TabbedWebView* view = weView(); bool mouseInView = view && view->underMouse(); if (isFullScreen() && mouseInView) { m_navigationContainer->hide(); m_tabWidget->getTabBar()->updateVisibilityWithFullscreen(false); } } bool QupZilla::event(QEvent* event) { switch (event->type()) { case QEvent::WindowStateChange: { QWindowStateChangeEvent* ev = static_cast(event); if (!(ev->oldState() & Qt::WindowFullScreen) && windowState() & Qt::WindowFullScreen) { // Enter fullscreen m_windowStates = ev->oldState(); m_menuBarVisible = menuBar()->isVisible(); m_statusBarVisible = statusBar()->isVisible(); menuBar()->hide(); statusBar()->hide(); m_navigationContainer->hide(); m_tabWidget->getTabBar()->hide(); #ifndef Q_OS_MAC m_navigationBar->setSuperMenuVisible(false); #endif m_hideNavigationTimer->stop(); m_actionShowFullScreen->setChecked(true); m_navigationBar->buttonExitFullscreen()->setVisible(true); emit setWebViewMouseTracking(true); #ifdef Q_OS_WIN if (m_usingTransparentBackground) { m_tabWidget->getTabBar()->enableBluredBackground(false); QtWin::extendFrameIntoClientArea(this, 0, 0, 0 , 0); QtWin::enableBlurBehindWindow(this, false); } #endif } else if (ev->oldState() & Qt::WindowFullScreen && !(windowState() & Qt::WindowFullScreen)) { // Leave fullscreen setWindowState(m_windowStates); menuBar()->setVisible(m_menuBarVisible); statusBar()->setVisible(m_statusBarVisible); m_navigationContainer->show(); m_tabWidget->getTabBar()->updateVisibilityWithFullscreen(true); m_tabWidget->getTabBar()->setVisible(true); #ifndef Q_OS_MAC m_navigationBar->setSuperMenuVisible(!m_menuBarVisible); #endif m_hideNavigationTimer->stop(); m_actionShowFullScreen->setChecked(false); m_navigationBar->buttonExitFullscreen()->setVisible(false); emit setWebViewMouseTracking(false); #ifdef Q_OS_WIN if (m_usingTransparentBackground) { m_tabWidget->getTabBar()->enableBluredBackground(true); applyBlurToMainWindow(true); } #endif } } default: break; } return QMainWindow::event(event); } void QupZilla::toggleFullScreen(bool make) { if (make) { showFullScreen(); } else { showNormal(); } } void QupZilla::savePage() { weView()->savePageAs(); } void QupZilla::sendLink() { weView()->sendPageByMail(); } void QupZilla::printPage(QWebFrame* frame) { QPrintPreviewDialog* dialog = new QPrintPreviewDialog(this); dialog->resize(800, 750); dialog->printer()->setCreator(tr("QupZilla %1 (%2)").arg(VERSION, WWWADDRESS)); if (!frame) { dialog->printer()->setDocName(QzTools::getFileNameFromUrl(weView()->url())); connect(dialog, SIGNAL(paintRequested(QPrinter*)), weView(), SLOT(print(QPrinter*))); } else { dialog->printer()->setDocName(QzTools::getFileNameFromUrl(frame->url())); connect(dialog, SIGNAL(paintRequested(QPrinter*)), frame, SLOT(print(QPrinter*))); } dialog->exec(); dialog->deleteLater(); } void QupZilla::savePageScreen() { PageScreen* p = new PageScreen(weView(), this); p->show(); } void QupZilla::resizeEvent(QResizeEvent* event) { m_bookmarksToolbar->setMaximumWidth(width()); QMainWindow::resizeEvent(event); } void QupZilla::keyPressEvent(QKeyEvent* event) { if (mApp->plugins()->processKeyPress(Qz::ON_QupZilla, this, event)) { return; } int number = -1; TabbedWebView* view = weView(); switch (event->key()) { case Qt::Key_Back: if (view) { weView()->back(); event->accept(); } break; case Qt::Key_Forward: if (view) { weView()->forward(); event->accept(); } break; case Qt::Key_Stop: if (view) { weView()->stop(); event->accept(); } break; case Qt::Key_Refresh: if (view) { weView()->reload(); event->accept(); } break; case Qt::Key_HomePage: goHome(); event->accept(); break; case Qt::Key_Favorites: showBookmarksManager(); event->accept(); break; case Qt::Key_Search: searchOnPage(); event->accept(); break; case Qt::Key_F6: case Qt::Key_OpenUrl: openLocation(); event->accept(); break; case Qt::Key_History: showHistoryManager(); event->accept(); break; case Qt::Key_AddFavorite: bookmarkPage(); event->accept(); break; case Qt::Key_News: showRSSManager(); event->accept(); break; case Qt::Key_Tools: showPreferences(); event->accept(); break; case Qt::Key_Tab: if (event->modifiers() == Qt::ControlModifier) { m_tabWidget->nextTab(); event->accept(); } break; case Qt::Key_Backtab: if (event->modifiers() == (Qt::ControlModifier + Qt::ShiftModifier)) { m_tabWidget->previousTab(); event->accept(); } break; case Qt::Key_PageDown: if (event->modifiers() == Qt::ControlModifier) { m_tabWidget->nextTab(); event->accept(); } break; case Qt::Key_PageUp: if (event->modifiers() == Qt::ControlModifier) { m_tabWidget->previousTab(); event->accept(); } break; case Qt::Key_Equal: if (view && event->modifiers() == Qt::ControlModifier) { weView()->zoomIn(); event->accept(); } break; case Qt::Key_I: if (event->modifiers() == Qt::ControlModifier) { showPageInfo(); event->accept(); } break; case Qt::Key_U: if (event->modifiers() == Qt::ControlModifier) { showSource(); event->accept(); } break; case Qt::Key_1: number = 1; break; case Qt::Key_2: number = 2; break; case Qt::Key_3: number = 3; break; case Qt::Key_4: number = 4; break; case Qt::Key_5: number = 5; break; case Qt::Key_6: number = 6; break; case Qt::Key_7: number = 7; break; case Qt::Key_8: number = 8; break; case Qt::Key_9: number = 9; break; default: break; } if (number != -1) { if (event->modifiers() & Qt::AltModifier && m_useTabNumberShortcuts) { if (number == 9) { number = m_tabWidget->count(); } m_tabWidget->setCurrentIndex(number - 1); return; } if (event->modifiers() & Qt::ControlModifier && m_useSpeedDialNumberShortcuts) { const QUrl url = mApp->plugins()->speedDial()->urlForShortcut(number - 1); if (url.isValid()) { loadAddress(url); return; } } } QMainWindow::keyPressEvent(event); } void QupZilla::keyReleaseEvent(QKeyEvent* event) { if (mApp->plugins()->processKeyRelease(Qz::ON_QupZilla, this, event)) { return; } QMainWindow::keyReleaseEvent(event); } void QupZilla::closeEvent(QCloseEvent* event) { if (mApp->isClosing()) { return; } Settings settings; int afterLaunch = settings.value("Web-URL-Settings/afterLaunch", 1).toInt(); bool askOnClose = settings.value("Browser-Tabs-Settings/AskOnClosing", true).toBool(); if (afterLaunch == 3 && mApp->windowCount() == 1) { askOnClose = false; } if (askOnClose && m_tabWidget->normalTabsCount() > 1) { CheckBoxDialog dialog(QDialogButtonBox::Yes | QDialogButtonBox::No, this); dialog.setText(tr("There are still %1 open tabs and your session won't be stored. \nAre you sure to quit QupZilla?").arg(m_tabWidget->count())); dialog.setCheckBoxText(tr("Don't ask again")); dialog.setWindowTitle(tr("There are still open tabs")); dialog.setIcon(qIconProvider->standardIcon(QStyle::SP_MessageBoxWarning)); if (dialog.exec() != QDialog::Accepted) { event->ignore(); return; } if (dialog.isChecked()) { settings.setValue("Browser-Tabs-Settings/AskOnClosing", false); } } m_isClosing = true; mApp->saveStateSlot(); #ifndef Q_OS_MAC if (mApp->windowCount() == 1) { if (quitApp()) { disconnectObjects(); event->accept(); } else { event->ignore(); } return; } #else QTimer::singleShot(0, this, SLOT(refreshStateOfAllActions())); #endif mApp->aboutToCloseWindow(this); disconnectObjects(); event->accept(); } SearchToolBar* QupZilla::searchToolBar() { SearchToolBar* toolBar = 0; const int searchPos = 3; if (m_mainLayout->count() == searchPos + 1) { toolBar = qobject_cast(m_mainLayout->itemAt(searchPos)->widget()); } return toolBar; } void QupZilla::disconnectObjects() { // Disconnecting all important widgets before deleting this window // so it cannot happen that slots will be invoked after the object // is deleted. // We have to do it this way, because ~QObject is deleting all child // objects with plain delete - not deleteLater(). // // Also using own disconnectObjects() method, not default disconnect() // because we need to retain connections to destroyed(QObject*) signal // in order to avoid crashes for example with setting stylesheets // (QStyleSheet backend is holding list of all widgets) m_tabWidget->disconnectObjects(); m_tabWidget->getTabBar()->disconnectObjects(); foreach (WebTab* tab, m_tabWidget->allTabs()) { tab->disconnectObjects(); tab->view()->disconnectObjects(); tab->view()->page()->disconnectObjects(); } foreach (const QPointer &pointer, m_deleteOnCloseWidgets) { if (pointer) { pointer.data()->deleteLater(); } } mApp->plugins()->emitMainWindowDeleted(this); } void QupZilla::closeWindow() { #ifdef Q_OS_MAC close(); #else if (mApp->windowCount() > 1) { close(); } #endif } bool QupZilla::quitApp() { if (m_sideBar) { saveSideBarWidth(); } if (!mApp->isPrivateSession()) { Settings settings; settings.beginGroup("Browser-View-Settings"); settings.setValue("WindowMaximised", windowState().testFlag(Qt::WindowMaximized)); settings.setValue("LocationBarWidth", m_navigationBar->splitter()->sizes().at(0)); settings.setValue("WebSearchBarWidth", m_navigationBar->splitter()->sizes().at(1)); settings.setValue("SideBarWidth", m_sideBarWidth); settings.setValue("WebViewWidth", m_webViewWidth); if (!isFullScreen()) { settings.setValue("WindowGeometry", saveGeometry()); } settings.endGroup(); } mApp->quitApplication(); return true; } void QupZilla::closeTab() { m_tabWidget->closeTab(); } void QupZilla::restoreClosedTab(QObject* obj) { if (!obj) { obj = sender(); } m_tabWidget->restoreClosedTab(obj); } void QupZilla::restoreAllClosedTabs() { m_tabWidget->restoreAllClosedTabs(); } void QupZilla::clearClosedTabsList() { m_tabWidget->clearClosedTabsList(); } bool QupZilla::bookmarksMenuChanged() { #ifdef Q_OS_MAC return mApp->macMenuReceiver()->bookmarksMenuChanged(); #else return m_bookmarksMenuChanged; #endif } void QupZilla::setBookmarksMenuChanged(bool changed) { #ifdef Q_OS_MAC mApp->macMenuReceiver()->setBookmarksMenuChanged(changed); #else m_bookmarksMenuChanged = changed; #endif } QAction* QupZilla::menuBookmarksAction() { #ifdef Q_OS_MAC return mApp->macMenuReceiver()->menuBookmarksAction(); #else return m_menuBookmarksAction; #endif } void QupZilla::setMenuBookmarksAction(QAction* action) { #ifdef Q_OS_MAC mApp->macMenuReceiver()->setMenuBookmarksAction(action); #else m_menuBookmarksAction = action; #endif } QByteArray QupZilla::saveState(int version) const { #if defined(QZ_WS_X11) && !defined(NO_X11) QByteArray data; QDataStream stream(&data, QIODevice::WriteOnly); stream << QMainWindow::saveState(version); stream << getCurrentVirtualDesktop(); return data; #else return QMainWindow::saveState(version); #endif } bool QupZilla::restoreState(const QByteArray &state, int version) { #if defined(QZ_WS_X11) && !defined(NO_X11) QByteArray windowState; int desktopId = -1; QDataStream stream(state); stream >> windowState; stream >> desktopId; moveToVirtualDesktop(desktopId); return QMainWindow::restoreState(windowState, version); #else return QMainWindow::restoreState(state, version); #endif } #if defined(QZ_WS_X11) && !defined(NO_X11) int QupZilla::getCurrentVirtualDesktop() const { Display* display = static_cast(QzTools::X11Display(this)); Atom actual_type; int actual_format; unsigned long nitems; unsigned long bytes; unsigned long* data; Atom net_wm_desktop = XInternAtom(display, "_NET_WM_DESKTOP", False); if (net_wm_desktop == None) { return -1; } int status = XGetWindowProperty(display, winId(), net_wm_desktop, 0, 1, False, XA_CARDINAL, &actual_type, &actual_format, &nitems, &bytes, (unsigned char**) &data); if (status != Success || data == NULL) { return -1; } int desktop = *data; XFree(data); return desktop; } void QupZilla::moveToVirtualDesktop(int desktopId) { // Don't move when window is already visible or it is first app window if (desktopId < 0 || isVisible() || m_windowType == Qz::BW_FirstAppWindow) { return; } Display* display = static_cast(QzTools::X11Display(this)); Atom net_wm_desktop = XInternAtom(display, "_NET_WM_DESKTOP", False); if (net_wm_desktop == None) { return; } // Fixes issue when the property wasn't set on some X servers // hmmm does it? //setVisible(true); XChangeProperty(display, winId(), net_wm_desktop, XA_CARDINAL, 32, PropModeReplace, (unsigned char*) &desktopId, 1L); } #endif #ifdef Q_OS_WIN #if (QT_VERSION < 0x050000) bool QupZilla::winEvent(MSG* message, long* result) { #else bool QupZilla::nativeEvent(const QByteArray &eventType, void* _message, long* result) { Q_UNUSED(eventType) MSG* message = static_cast(_message); #endif if (message && message->message == WM_DWMCOMPOSITIONCHANGED) { Settings settings; settings.beginGroup("Browser-View-Settings"); m_usingTransparentBackground = settings.value("useTransparentBackground", false).toBool(); settings.endGroup(); if (m_usingTransparentBackground && QtWin::isCompositionEnabled()) { setUpdatesEnabled(false); QtWin::extendFrameIntoClientArea(this, 0, 0, 0, 0); QTimer::singleShot(0, this, SLOT(applyBlurToMainWindow())); //install event filter menuBar()->installEventFilter(this); m_navigationBar->installEventFilter(this); m_bookmarksToolbar->installEventFilter(this); statusBar()->installEventFilter(this); if (m_sideBar) { m_sideBar.data()->installEventFilter(this); } SearchToolBar* search = searchToolBar(); if (search) { search->installEventFilter(this); } if (m_webInspectorDock) { m_webInspectorDock.data()->installEventFilter(this); } if (isVisible()) { hide(); show(); } setUpdatesEnabled(true); } else { m_usingTransparentBackground = false; } } #if (QT_VERSION < 0x050000) return QMainWindow::winEvent(message, result); #else return QMainWindow::nativeEvent(eventType, _message, result); #endif } void QupZilla::paintEvent(QPaintEvent* event) { if (isTransparentBackgroundAllowed()) { QPainter p(this); p.setCompositionMode(QPainter::CompositionMode_Clear); p.fillRect(event->rect(), QColor(0, 0, 0, 0)); } QMainWindow::paintEvent(event); } void QupZilla::applyBlurToMainWindow(bool force) { if (isClosing() || m_isStarting) { return; } if (!force && !isTransparentBackgroundAllowed()) { return; } int topMargin = 0; int bottomMargin = 1; int rightMargin = 1; int leftMargin = 1; if (m_sideBar) { if (isRightToLeft()) { rightMargin += m_sideBar.data()->width() + m_mainSplitter->handleWidth(); } else { leftMargin += m_sideBar.data()->width() + m_mainSplitter->handleWidth(); } } topMargin += menuBar()->isVisible() ? menuBar()->height() : 0; topMargin += m_navigationBar->isVisible() ? m_navigationBar->height() : 0; topMargin += m_bookmarksToolbar->isVisible() ? m_bookmarksToolbar->height() : 0; topMargin += m_tabWidget->getTabBar()->height(); SearchToolBar* search = searchToolBar(); if (search) { bottomMargin += search->height(); } bottomMargin += statusBar()->isVisible() ? statusBar()->height() : 0; if (m_webInspectorDock) { bottomMargin += m_webInspectorDock.data()->isVisible() ? m_webInspectorDock.data()->height() + m_webInspectorDock.data()->style()->pixelMetric(QStyle::PM_DockWidgetSeparatorExtent) : 0; } QtWin::extendFrameIntoClientArea(this, leftMargin, topMargin, rightMargin, bottomMargin); } bool QupZilla::eventFilter(QObject* object, QEvent* event) { switch (event->type()) { case QEvent::Hide: if (object == m_navigationContainer) { m_navigationBar->removeEventFilter(this); m_bookmarksToolbar->removeEventFilter(this); break; } case QEvent::Show: if (object == m_navigationContainer) { m_navigationBar->installEventFilter(this); m_bookmarksToolbar->installEventFilter(this); break; } case QEvent::Resize: case QEvent::DeferredDelete: if (object == m_navigationContainer) { break; } applyBlurToMainWindow(); break; default: break; } return QMainWindow::eventFilter(object, event); } #endif QupZilla::~QupZilla() { } qupzilla-1.6.0/src/lib/app/qupzilla.h000066400000000000000000000233071226107126500175150ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef QUPZILLA_H #define QUPZILLA_H #include #include #include "restoremanager.h" #include "qz_namespace.h" class QMenuBar; class QLabel; class QVBoxLayout; class QSplitter; class QWebFrame; class QTimer; class Menu; class TabWidget; class TabbedWebView; class LineEdit; class SearchToolBar; class BookmarksToolbar; class AutoFill; class MainApplication; class WebTab; class AdBlockIcon; class SideBar; class SideBarManager; class ProgressBar; class StatusBarMessage; class NavigationBar; class ClickableLabel; class WebInspectorDockWidget; class LocationBar; class QT_QUPZILLA_EXPORT QupZilla : public QMainWindow { Q_OBJECT public: static const QString VERSION; static const QString BUILDTIME; static const QString AUTHOR; static const QString COPYRIGHT; static const QString WWWADDRESS; static const QString WIKIADDRESS; static const QString WEBKITVERSION; explicit QupZilla(Qz::BrowserWindow type, QUrl startUrl = QUrl()); ~QupZilla(); void openWithTab(WebTab* tab); void loadSettings(); void saveSideBarWidth(); bool fullScreenNavigationVisible() const; void showNavigationWithFullScreen(); void hideNavigationWithFullScreen(); void currentTabChanged(); void updateLoadingActions(); void addBookmark(const QUrl &url, const QString &title, const QIcon &icon); void addDeleteOnCloseWidget(QWidget* widget); void restoreWindowState(const RestoreManager::WindowData &d); SideBar* addSideBar(); virtual QMenuBar* menuBar() const; QByteArray saveState(int version = 0) const; bool restoreState(const QByteArray &state, int version = 0); TabbedWebView* weView() const; TabbedWebView* weView(int index) const; LocationBar* locationBar() const; Qz::BrowserWindow windowType() const; TabWidget* tabWidget() { return m_tabWidget; } BookmarksToolbar* bookmarksToolbar() { return m_bookmarksToolbar; } StatusBarMessage* statusBarMessage() { return m_statusBarMessage; } NavigationBar* navigationBar() { return m_navigationBar; } SideBarManager* sideBarManager() { return m_sideBarManager; } ProgressBar* progressBar() { return m_progressBar; } QLabel* ipLabel() { return m_ipLabel; } AdBlockIcon* adBlockIcon() { return m_adblockIcon; } QAction* actionRestoreTab() { return m_actionRestoreTab; } QAction* actionReload() { return m_actionReload; } QMenu* menuHelp() { return m_menuHelp; } QMenu* superMenu() { return m_superMenu; } void popupToolbarsMenu(const QPoint &pos); bool isClosing() { return m_isClosing; } QUrl homepageUrl() { return m_homepage; } bool isTransparentBackgroundAllowed(); bool tabsOnTop() const; signals: void startingCompleted(); void message(Qz::AppMessageType mes, bool state); void setWebViewMouseTracking(bool state); public slots: void setWindowTitle(const QString &t); void showWebInspector(bool toggle = true); void showBookmarksToolbar(); void loadActionUrl(QObject* obj = 0); void loadActionUrlInNewTab(QObject* obj = 0); void loadActionUrlInNewNotSelectedTab(QObject* obj = 0); void loadFolderBookmarks(Menu* menu); void bookmarkPage(); void loadAddress(const QUrl &url); void showSource(QWebFrame* frame = 0, const QString &selectedHtml = QString()); void printPage(QWebFrame* frame = 0); void showPageInfo(); void receiveMessage(Qz::AppMessageType mes, bool state); private slots: void postLaunch(); void goNext(); void goBack(); void goHome(); void goHomeInNewTab(); void stop(); void reload(); void reloadByPassCache(); void aboutQupZilla(); void addTab(); void savePageScreen(); void aboutToShowFileMenu(); void aboutToHideFileMenu(); void aboutToShowHistoryMenu(); void aboutToHideHistoryMenu(); void aboutToShowClosedTabsMenu(); void aboutToShowBookmarksMenu(); void aboutToShowViewMenu(); void aboutToHideViewMenu(); void aboutToShowEditMenu(); void aboutToHideEditMenu(); void aboutToShowToolsMenu(); void aboutToHideToolsMenu(); void aboutToShowEncodingMenu(); void searchOnPage(); void showCookieManager(); void showHistoryManager(); void showBookmarksManager(); void showRSSManager(); void showDownloadManager(); void showMenubar(); void showNavigationToolbar(); void showStatusbar(); void showClearPrivateData(); void aboutToShowHistoryRecentMenu(); void aboutToShowHistoryMostMenu(); void showPreferences(); void showBookmarkImport(); void refreshHistory(); void bookmarkAllTabs(); void newWindow(); void openLocation(); void openFile(); void savePage(); void sendLink(); void webSearch(); // Edit menu actions void editUndo(); void editRedo(); void editCut(); void editCopy(); void editPaste(); void editSelectAll(); void zoomIn(); void zoomOut(); void zoomReset(); void toggleFullScreen(bool make); void changeEncoding(QObject* obj = 0); void triggerCaretBrowsing(); void triggerTabsOnTop(bool enable); void closeWindow(); bool quitApp(); void closeTab(); void restoreClosedTab(QObject* obj = 0); void restoreAllClosedTabs(); void clearClosedTabsList(); void hideNavigationSlot(); #ifdef Q_OS_MAC void refreshStateOfAllActions(); #endif #ifdef Q_OS_WIN void applyBlurToMainWindow(bool force = false); #endif private: bool event(QEvent* event); void resizeEvent(QResizeEvent* event); void keyPressEvent(QKeyEvent* event); void keyReleaseEvent(QKeyEvent* event); void closeEvent(QCloseEvent* event); SearchToolBar* searchToolBar(); void setupUi(); void setupMenu(); void setupOtherActions(); #ifdef Q_OS_MAC void setupMacMenu(); #endif void disconnectObjects(); #ifdef Q_OS_WIN #if (QT_VERSION < 0x050000) bool winEvent(MSG* message, long* result); #else bool nativeEvent(const QByteArray &eventType, void* _message, long* result); #endif void paintEvent(QPaintEvent* event); bool eventFilter(QObject* object, QEvent* event); #endif #if defined(QZ_WS_X11) && !defined(NO_X11) int getCurrentVirtualDesktop() const; void moveToVirtualDesktop(int desktopId); #endif bool bookmarksMenuChanged(); void setBookmarksMenuChanged(bool changed); QAction* menuBookmarksAction(); void setMenuBookmarksAction(QAction* action); QKeySequence actionShortcut(QKeySequence shortcut, QKeySequence fallBack = QKeySequence(), QKeySequence shortcutRTL = QKeySequence(), QKeySequence fallbackRTL = QKeySequence()); bool m_historyMenuChanged; bool m_bookmarksMenuChanged; bool m_isClosing; bool m_isStarting; QUrl m_startingUrl; QUrl m_homepage; Qz::BrowserWindow m_windowType; WebTab* m_startTab; QVBoxLayout* m_mainLayout; QSplitter* m_mainSplitter; QMenu* m_superMenu; QMenu* m_menuFile; QMenu* m_menuEdit; QMenu* m_menuTools; QMenu* m_menuHelp; QMenu* m_menuView; QMenu* m_toolbarsMenu; Menu* m_menuBookmarks; Menu* m_menuHistory; QMenu* m_menuClosedTabs; Menu* m_menuHistoryRecent; Menu* m_menuHistoryMost; QMenu* m_menuEncoding; QAction* m_menuBookmarksAction; QAction* m_actionAbout; QAction* m_actionPreferences; QAction* m_actionQuit; QAction* m_actionCloseWindow; QAction* m_actionShowToolbar; QAction* m_actionShowBookmarksToolbar; QAction* m_actionShowStatusbar; #ifndef Q_OS_MAC QAction* m_actionShowMenubar; #endif QAction* m_actionTabsOnTop; QAction* m_actionShowFullScreen; QAction* m_actionShowBookmarksSideBar; QAction* m_actionShowHistorySideBar; QAction* m_actionShowRssSideBar; QAction* m_actionPrivateBrowsing; QAction* m_actionStop; QAction* m_actionReload; QAction* m_actionCaretBrowsing; QAction* m_actionRestoreTab; QAction* m_actionPageInfo; QAction* m_actionPageSource; QLabel* m_privateBrowsing; AdBlockIcon* m_adblockIcon; QPointer m_webInspectorDock; QWidget* m_navigationContainer; BookmarksToolbar* m_bookmarksToolbar; TabWidget* m_tabWidget; QPointer m_sideBar; SideBarManager* m_sideBarManager; StatusBarMessage* m_statusBarMessage; NavigationBar* m_navigationBar; ProgressBar* m_progressBar; QLabel* m_ipLabel; QString m_lastWindowTitle; int m_sideBarWidth; int m_webViewWidth; bool m_usingTransparentBackground; // Shortcuts bool m_useTabNumberShortcuts; bool m_useSpeedDialNumberShortcuts; // Used for F11 FullScreen remember visibility of menubar and statusbar bool m_menuBarVisible; bool m_statusBarVisible; Qt::WindowStates m_windowStates; QTimer* m_hideNavigationTimer; QList > m_deleteOnCloseWidgets; mutable int m_tabsOnTopState; }; #endif // QUPZILLA_H qupzilla-1.6.0/src/lib/app/qz_namespace.h000066400000000000000000000074501226107126500203230ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef QZ_NAMESPACE_H #define QZ_NAMESPACE_H #include #ifdef QUPZILLA_SHAREDLIBRARY #define QT_QUPZILLA_EXPORT Q_DECL_EXPORT #else #define QT_QUPZILLA_EXPORT Q_DECL_IMPORT #endif #ifndef Q_UNLIKELY #define Q_UNLIKELY(x) x #endif #ifndef Q_LIKELY #define Q_LIKELY(x) x #endif namespace Qz { // Version of session.dat file #if QT_VERSION >= 0x050000 static const int sessionVersion = 0x0003 | 0x050000; #else static const int sessionVersion = 0x0003; #endif enum AppMessageType { AM_SetAdBlockIconEnabled, AM_CheckPrivateBrowsing, AM_ReloadSettings, AM_HistoryStateChanged, AM_BookmarksChanged }; enum BrowserWindow { BW_FirstAppWindow, BW_OtherRestoredWindow, BW_NewWindow, BW_MacFirstWindow }; enum CommandLineAction { CL_NoAction, CL_OpenUrl, CL_OpenUrlInCurrentTab, CL_OpenUrlInNewWindow, CL_StartWithProfile, CL_StartWithoutAddons, CL_NewTab, CL_NewWindow, CL_ShowDownloadManager, CL_StartPrivateBrowsing, CL_StartNewInstance, CL_ExitAction }; enum ObjectName { ON_WebView, ON_TabBar, ON_QupZilla }; enum NewTabPositionFlag { NT_SelectedTab = 1, NT_NotSelectedTab = 2, NT_CleanTab = 4, NT_TabAtTheEnd = 8, NT_NewEmptyTab = 16, NT_SelectedNewEmptyTab = NT_SelectedTab | NT_TabAtTheEnd | NT_NewEmptyTab, NT_SelectedTabAtTheEnd = NT_SelectedTab | NT_TabAtTheEnd, NT_NotSelectedTabAtTheEnd = NT_NotSelectedTab | NT_TabAtTheEnd, NT_CleanSelectedTabAtTheEnd = NT_SelectedTab | NT_TabAtTheEnd | NT_CleanTab, NT_CleanSelectedTab = NT_CleanTab | NT_SelectedTab, NT_CleanNotSelectedTab = NT_CleanTab | NT_NotSelectedTab }; Q_DECLARE_FLAGS(NewTabPositionFlags, NewTabPositionFlag) Q_DECLARE_OPERATORS_FOR_FLAGS(Qz::NewTabPositionFlags) } #define ADBLOCK_EASYLIST_URL "https://easylist-downloads.adblockplus.org/easylist.txt" #ifdef Q_OS_WIN #define DEFAULT_THEME_NAME "windows" #elif defined(QZ_WS_X11) #define DEFAULT_THEME_NAME "linux" #elif defined(Q_OS_MAC) #define DEFAULT_THEME_NAME "mac" #elif defined(Q_OS_OS2) #define DEFAULT_THEME_NAME "windows" #else #define DEFAULT_THEME_NAME "default" #endif #ifdef Q_OS_WIN #define DEFAULT_CHECK_UPDATES true #else #define DEFAULT_CHECK_UPDATES false #endif #define DEFAULT_CHECK_DEFAULTBROWSER false #ifdef Q_OS_WIN #define DEFAULT_DOWNLOAD_USE_NATIVE_DIALOG false #else #define DEFAULT_DOWNLOAD_USE_NATIVE_DIALOG true #endif #ifdef PORTABLE_BUILD #define DEFAULT_ENABLE_PLUGINS false #else #define DEFAULT_ENABLE_PLUGINS true #endif #define QTWEBKIT_FROM_2_2 \ (QT_VERSION >= 0x050000 || (QTWEBKIT_VERSION >= QTWEBKIT_VERSION_CHECK(2, 2, 0))) #define QTWEBKIT_TO_2_2 \ (QT_VERSION < 0x050000 && (QTWEBKIT_VERSION < QTWEBKIT_VERSION_CHECK(2, 2, 0))) #define QTWEBKIT_FROM_2_3 \ (QT_VERSION >= 0x050000 || (QTWEBKIT_VERSION >= QTWEBKIT_VERSION_CHECK(2, 3, 0))) #define QTWEBKIT_TO_2_3 \ (QT_VERSION < 0x050000 && (QTWEBKIT_VERSION < QTWEBKIT_VERSION_CHECK(2, 3, 0))) #endif // QZ_NAMESPACE_H qupzilla-1.6.0/src/lib/app/settings.cpp000066400000000000000000000040661226107126500200500ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "settings.h" #include "qzsettings.h" #include QSettings* Settings::s_settings = 0; QzSettings* Settings::s_qzSettings = 0; Settings::Settings() { if (!s_settings->group().isEmpty()) { qDebug("Settings: Creating object with opened group!"); s_settings->endGroup(); } } void Settings::createSettings(const QString &fileName) { s_settings = new QSettings(fileName, QSettings::IniFormat); s_qzSettings = new QzSettings(); } void Settings::syncSettings() { s_settings->sync(); } void Settings::setValue(const QString &key, const QVariant &defaultValue) { s_settings->setValue(key, defaultValue); } QVariant Settings::value(const QString &key, const QVariant &defaultValue) { return s_settings->value(key, defaultValue); } void Settings::beginGroup(const QString &prefix) { s_settings->beginGroup(prefix); } void Settings::endGroup() { s_settings->endGroup(); } QSettings* Settings::globalSettings() { return s_settings; } QzSettings* Settings::staticSettings() { return s_qzSettings; } Settings::~Settings() { if (!s_settings->group().isEmpty()) { qDebug("Settings: Deleting object with opened group!"); s_settings->endGroup(); } } qupzilla-1.6.0/src/lib/app/settings.h000066400000000000000000000031311226107126500175050ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SETTINGS_H #define SETTINGS_H #include #include #include "qz_namespace.h" class QSettings; class QzSettings; class QT_QUPZILLA_EXPORT Settings { public: explicit Settings(); ~Settings(); static void createSettings(const QString &fileName); static void syncSettings(); static QSettings* globalSettings(); static QzSettings* staticSettings(); void setValue(const QString &key, const QVariant &defaultValue = QVariant()); QVariant value(const QString &key, const QVariant &defaultValue = QVariant()); void beginGroup(const QString &prefix); void endGroup(); signals: public slots: private: static QSettings* s_settings; static QzSettings* s_qzSettings; }; #endif // SETTINGS_H qupzilla-1.6.0/src/lib/autofill/000077500000000000000000000000001226107126500165355ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/autofill/autofill.cpp000066400000000000000000000236321226107126500210660ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "autofill.h" #include "qupzilla.h" #include "webpage.h" #include "tabbedwebview.h" #include "popupwebview.h" #include "mainapplication.h" #include "autofillnotification.h" #include "pageformcompleter.h" #include "databasewriter.h" #include "settings.h" #include "passwordmanager.h" #include #include #include #include #if QT_VERSION >= 0x050000 #include #endif AutoFill::AutoFill(QObject* parent) : QObject(parent) , m_manager(new PasswordManager(this)) , m_isStoring(false) { loadSettings(); } PasswordManager* AutoFill::passwordManager() const { return m_manager; } void AutoFill::loadSettings() { Settings settings; settings.beginGroup("Web-Browser-Settings"); m_isStoring = settings.value("SavePasswordsOnSites", true).toBool(); settings.endGroup(); } bool AutoFill::isStored(const QUrl &url) { if (!isStoringEnabled(url)) { return false; } return !m_manager->getEntries(url).isEmpty(); } bool AutoFill::isStoringEnabled(const QUrl &url) { if (!m_isStoring) { return false; } QString server = url.host(); if (server.isEmpty()) { server = url.toString(); } QSqlQuery query; query.prepare("SELECT count(id) FROM autofill_exceptions WHERE server=?"); query.addBindValue(server); query.exec(); query.next(); return query.value(0).toInt() <= 0; } void AutoFill::blockStoringforUrl(const QUrl &url) { QString server = url.host(); if (server.isEmpty()) { server = url.toString(); } QSqlQuery query; query.prepare("INSERT INTO autofill_exceptions (server) VALUES (?)"); query.addBindValue(server); mApp->dbWriter()->executeQuery(query); } QVector AutoFill::getFormData(const QUrl &url) { return m_manager->getEntries(url); } QVector AutoFill::getAllFormData() { return m_manager->getAllEntries(); } void AutoFill::updateLastUsed(PasswordEntry &data) { m_manager->updateLastUsed(data); } // HTTP Authorization void AutoFill::addEntry(const QUrl &url, const QString &name, const QString &pass) { PasswordEntry entry; entry.host = PasswordManager::createHost(url); entry.username = name; entry.password = pass; m_manager->addEntry(entry); } // WEB Form void AutoFill::addEntry(const QUrl &url, const PageFormData &formData) { PasswordEntry entry; entry.host = PasswordManager::createHost(url); entry.username = formData.username; entry.password = formData.password; entry.data = formData.postData; m_manager->addEntry(entry); } // HTTP Authorization void AutoFill::updateEntry(const QUrl &url, const QString &name, const QString &pass) { PasswordEntry entry; entry.host = PasswordManager::createHost(url); entry.username = name; entry.password = pass; m_manager->updateEntry(entry); } // WEB Form bool AutoFill::updateEntry(const PasswordEntry &entry) { return m_manager->updateEntry(entry); } void AutoFill::removeEntry(const PasswordEntry &entry) { m_manager->removeEntry(entry); } void AutoFill::removeAllEntries() { m_manager->removeAllEntries(); } // If password was filled in the page, returns all saved passwords on this page QVector AutoFill::completePage(WebPage* page) { bool completed = false; QVector list; if (!page) { return list; } QUrl pageUrl = page->url(); if (!isStored(pageUrl)) { return list; } list = getFormData(pageUrl); if (!list.isEmpty()) { const PasswordEntry entry = list.first(); PageFormCompleter completer(page); completed = completer.completePage(entry.data); } if (!completed) { list.clear(); } return list; } void AutoFill::post(const QNetworkRequest &request, const QByteArray &outgoingData) { // Don't save in private browsing if (mApp->isPrivateSession()) { return; } QVariant v = request.attribute((QNetworkRequest::Attribute)(QNetworkRequest::User + 100)); WebPage* webPage = static_cast(v.value()); if (!WebPage::isPointerSafeToUse(webPage)) { return; } WebView* webView = qobject_cast(webPage->view()); if (!webView) { return; } const QUrl siteUrl = webPage->url(); if (!isStoringEnabled(siteUrl)) { return; } PageFormCompleter completer(webPage); const PageFormData formData = completer.extractFormData(outgoingData); if (!formData.isValid()) { return; } PasswordEntry updateData; if (isStored(siteUrl)) { const QVector &list = getFormData(siteUrl); foreach (const PasswordEntry &data, list) { if (data.username == formData.username) { updateData = data; updateLastUsed(updateData); if (data.password == formData.password) { updateData.password.clear(); return; } updateData.username = formData.username; updateData.password = formData.password; updateData.data = formData.postData; break; } } } AutoFillNotification* aWidget = new AutoFillNotification(siteUrl, formData, updateData); webView->addNotification(aWidget); } QByteArray AutoFill::exportPasswords() { QByteArray output; QXmlStreamWriter stream(&output); stream.setCodec("UTF-8"); stream.setAutoFormatting(true); stream.writeStartDocument(); stream.writeStartElement("passwords"); stream.writeAttribute("version", "1.0"); QVector entries = m_manager->getAllEntries(); foreach (const PasswordEntry &entry, entries) { stream.writeStartElement("entry"); stream.writeTextElement("server", entry.host); stream.writeTextElement("username", entry.username); stream.writeTextElement("password", entry.password); stream.writeTextElement("data", entry.data); stream.writeEndElement(); } QSqlQuery query; query.exec("SELECT server FROM autofill_exceptions"); while (query.next()) { stream.writeStartElement("exception"); stream.writeTextElement("server", query.value(0).toString()); stream.writeEndElement(); } stream.writeEndElement(); stream.writeEndDocument(); return output; } bool AutoFill::importPasswords(const QByteArray &data) { QSqlDatabase db = QSqlDatabase::database(); db.transaction(); QXmlStreamReader xml(data); while (!xml.atEnd()) { xml.readNext(); if (xml.isStartElement()) { if (xml.name() == QLatin1String("entry")) { PasswordEntry entry; while (xml.readNext()) { if (xml.name() == QLatin1String("server")) { entry.host = xml.readElementText(); } else if (xml.name() == QLatin1String("username")) { entry.username = xml.readElementText(); } else if (xml.name() == QLatin1String("password")) { entry.password = xml.readElementText(); } else if (xml.name() == QLatin1String("data")) { entry.data = xml.readElementText().toUtf8(); } if (xml.isEndElement() && xml.name() == QLatin1String("entry")) { break; } } if (entry.isValid()) { bool containsEntry = false; foreach (const PasswordEntry &e, m_manager->getEntries(QUrl(entry.host))) { if (e.username == entry.username) { containsEntry = true; break; } } if (!containsEntry) { m_manager->addEntry(entry); } } } else if (xml.name() == QLatin1String("exception")) { QString server; while (xml.readNext()) { if (xml.name() == QLatin1String("server")) { server = xml.readElementText(); } if (xml.isEndElement() && xml.name() == QLatin1String("exception")) { break; } } if (!server.isEmpty()) { QSqlQuery query; query.prepare("SELECT id FROM autofill_exceptions WHERE server=?"); query.addBindValue(server); query.exec(); if (!query.next()) { query.prepare("INSERT INTO autofill_exceptions (server) VALUES (?)"); query.addBindValue(server); query.exec(); } } } } } db.commit(); return !xml.hasError(); } qupzilla-1.6.0/src/lib/autofill/autofill.h000066400000000000000000000043101226107126500205230ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef AUTOFILLMODEL_H #define AUTOFILLMODEL_H #include #include "qz_namespace.h" class QUrl; class QWebElement; class QNetworkRequest; class QupZilla; class WebPage; class PasswordManager; struct PageFormData; struct PasswordEntry; class QT_QUPZILLA_EXPORT AutoFill : public QObject { Q_OBJECT public: explicit AutoFill(QObject* parent = 0); PasswordManager* passwordManager() const; void loadSettings(); bool isStored(const QUrl &url); bool isStoringEnabled(const QUrl &url); void blockStoringforUrl(const QUrl &url); QVector getFormData(const QUrl &url); QVector getAllFormData(); void updateLastUsed(PasswordEntry &data); void addEntry(const QUrl &url, const QString &name, const QString &pass); void addEntry(const QUrl &url, const PageFormData &formData); void updateEntry(const QUrl &url, const QString &name, const QString &pass); bool updateEntry(const PasswordEntry &entry); void removeEntry(const PasswordEntry &entry); void removeAllEntries(); void post(const QNetworkRequest &request, const QByteArray &outgoingData); QVector completePage(WebPage* page); QByteArray exportPasswords(); bool importPasswords(const QByteArray &data); private: PasswordManager* m_manager; bool m_isStoring; }; #endif // AUTOFILLMODEL_H qupzilla-1.6.0/src/lib/autofill/autofillicon.cpp000066400000000000000000000036301226107126500217330ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "autofillicon.h" #include "autofillwidget.h" #include AutoFillIcon::AutoFillIcon(QWidget* parent) : ClickableLabel(parent) , m_view(0) { setObjectName("locationbar-autofillicon"); setCursor(Qt::PointingHandCursor); setToolTip(AutoFillWidget::tr("Choose username to login")); setFocusPolicy(Qt::ClickFocus); connect(this, SIGNAL(clicked(QPoint)), this, SLOT(iconClicked())); } void AutoFillIcon::setWebView(WebView* view) { m_view = view; } void AutoFillIcon::setFormData(const QVector &data) { m_data = data; } void AutoFillIcon::iconClicked() { if (!m_view) { return; } AutoFillWidget* widget = new AutoFillWidget(m_view, this); widget->setFormData(m_data); widget->showAt(parentWidget()); } void AutoFillIcon::contextMenuEvent(QContextMenuEvent* ev) { // Prevent propagating to LocationBar ev->accept(); } void AutoFillIcon::mousePressEvent(QMouseEvent* ev) { ClickableLabel::mousePressEvent(ev); // Prevent propagating to LocationBar ev->accept(); } qupzilla-1.6.0/src/lib/autofill/autofillicon.h000066400000000000000000000026641226107126500214060ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef AUTOFILLICON_H #define AUTOFILLICON_H #include "qz_namespace.h" #include "clickablelabel.h" #include "passwordmanager.h" class WebView; class QT_QUPZILLA_EXPORT AutoFillIcon : public ClickableLabel { Q_OBJECT public: explicit AutoFillIcon(QWidget* parent = 0); void setWebView(WebView* view); void setFormData(const QVector &data); private slots: void iconClicked(); private: void contextMenuEvent(QContextMenuEvent* ev); void mousePressEvent(QMouseEvent* ev); WebView* m_view; QVector m_data; }; #endif // AUTOFILLICON_H qupzilla-1.6.0/src/lib/autofill/autofillnotification.cpp000066400000000000000000000055041226107126500234730ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "autofillnotification.h" #include "ui_autofillnotification.h" #include "autofill.h" #include "mainapplication.h" #include "animatedwidget.h" #include "iconprovider.h" AutoFillNotification::AutoFillNotification(const QUrl &url, const PageFormData &formData, const PasswordEntry &updateData) : AnimatedWidget(AnimatedWidget::Down, 300, 0) , ui(new Ui::AutoFillNotification) , m_url(url) , m_formData(formData) , m_updateData(updateData) { setAutoFillBackground(true); setAttribute(Qt::WA_DeleteOnClose); ui->setupUi(widget()); ui->closeButton->setIcon(qIconProvider->standardIcon(QStyle::SP_DialogCloseButton)); QString hostPart; QString userPart; if (!url.host().isEmpty()) { hostPart = tr("on %1").arg(url.host()); } if (!m_formData.username.isEmpty()) { userPart = tr("for %1").arg(m_formData.username); } if (m_updateData.isValid()) { ui->label->setText(tr("Do you want QupZilla to update saved password %1?").arg(userPart)); ui->remember->setVisible(false); ui->never->setVisible(false); } else { ui->label->setText(tr("Do you want QupZilla to remember the password %1 %2?").arg(userPart, hostPart)); ui->update->setVisible(false); } connect(ui->update, SIGNAL(clicked()), this, SLOT(update())); connect(ui->remember, SIGNAL(clicked()), this, SLOT(remember())); connect(ui->never, SIGNAL(clicked()), this, SLOT(never())); connect(ui->notnow, SIGNAL(clicked()), this, SLOT(hide())); connect(ui->closeButton, SIGNAL(clicked()), this, SLOT(hide())); startAnimation(); } void AutoFillNotification::update() { mApp->autoFill()->updateEntry(m_updateData); hide(); } void AutoFillNotification::never() { mApp->autoFill()->blockStoringforUrl(m_url); hide(); } void AutoFillNotification::remember() { mApp->autoFill()->addEntry(m_url, m_formData); hide(); } AutoFillNotification::~AutoFillNotification() { delete ui; } qupzilla-1.6.0/src/lib/autofill/autofillnotification.h000066400000000000000000000032231226107126500231340ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef AUTOFILLNOTIFICATION_H #define AUTOFILLNOTIFICATION_H #include #include "qz_namespace.h" #include "animatedwidget.h" #include "pageformcompleter.h" #include "passwordmanager.h" #include "autofill.h" namespace Ui { class AutoFillNotification; } class AnimatedWidget; class QT_QUPZILLA_EXPORT AutoFillNotification : public AnimatedWidget { Q_OBJECT public: explicit AutoFillNotification(const QUrl &url, const PageFormData &formData, const PasswordEntry &updateData); ~AutoFillNotification(); private slots: void update(); void remember(); void never(); private: Ui::AutoFillNotification* ui; QUrl m_url; PageFormData m_formData; PasswordEntry m_updateData; }; #endif // AUTOFILLNOTIFICATION_H qupzilla-1.6.0/src/lib/autofill/autofillnotification.ui000066400000000000000000000074211226107126500233260ustar00rootroot00000000000000 AutoFillNotification 0 0 897 40 0 0 3 5 4 5 4 0 0 :/icons/other/keys.png 0 0 Update 0 0 Qt::NoFocus Remember 0 0 Qt::NoFocus Never For This Site 0 0 Qt::NoFocus Not Now true MacToolButton QToolButton
mactoolbutton.h
qupzilla-1.6.0/src/lib/autofill/autofillwidget.cpp000066400000000000000000000046271226107126500222750ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "autofillwidget.h" #include "ui_autofillwidget.h" #include "pageformcompleter.h" #include "autofill.h" #include "qztools.h" #include "webview.h" #include "webpage.h" #include AutoFillWidget::AutoFillWidget(WebView* view, QWidget* parent) : LocationBarPopup(parent) , ui(new Ui::AutoFillWidget) , m_view(view) { ui->setupUi(this); } void AutoFillWidget::setFormData(const QVector &data) { m_data = data; for (int i = 0; i < data.count(); ++i) { const PasswordEntry d = data.at(i); if (d.username.isEmpty()) { continue; } QPushButton* button = new QPushButton(this); button->setText(tr("Login")); button->setToolTip(d.username); button->setProperty("data-index", i); QLabel* label = new QLabel(this); label->setText(tr("Login as %1").arg(d.username)); ui->gridLayout->addWidget(label, i, 0); ui->gridLayout->addWidget(button, i, 1); connect(button, SIGNAL(clicked()), this, SLOT(loginToPage())); } } void AutoFillWidget::loginToPage() { QPushButton* button = qobject_cast(sender()); if (!button || !m_view) { return; } bool ok; int index = button->property("data-index").toInt(&ok); if (ok && QzTools::vectorContainsIndex(m_data, index)) { const PasswordEntry entry = m_data.at(index); PageFormCompleter completer(m_view->page()); completer.completePage(entry.data); } close(); } AutoFillWidget::~AutoFillWidget() { delete ui; } qupzilla-1.6.0/src/lib/autofill/autofillwidget.h000066400000000000000000000027071226107126500217370ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef AUTOFILLWIDGET_H #define AUTOFILLWIDGET_H #include #include #include "qz_namespace.h" #include "locationbarpopup.h" namespace Ui { class AutoFillWidget; } class WebView; struct PasswordEntry; class QT_QUPZILLA_EXPORT AutoFillWidget : public LocationBarPopup { Q_OBJECT public: explicit AutoFillWidget(WebView* view, QWidget* parent = 0); ~AutoFillWidget(); void setFormData(const QVector &data); private slots: void loginToPage(); private: Ui::AutoFillWidget* ui; WebView* m_view; QVector m_data; }; #endif // AUTOFILLWIDGET_H qupzilla-1.6.0/src/lib/autofill/autofillwidget.ui000066400000000000000000000047231226107126500221250ustar00rootroot00000000000000 AutoFillWidget 0 0 211 54 0 QFrame::NoFrame 0 0 0 0 :/icons/other/keys.png 0 0 Choose username to login 10 6 0 Frame QFrame
frame.h
1
qupzilla-1.6.0/src/lib/autofill/pageformcompleter.cpp000066400000000000000000000170561226107126500227650ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "pageformcompleter.h" #include "qzregexp.h" #include #include #include #if QT_VERSION >= 0x050000 #include #endif #include PageFormCompleter::PageFormCompleter(QWebPage* page) : m_page(page) { } PageFormData PageFormCompleter::extractFormData(const QByteArray &postData) const { QString usernameValue; QString passwordValue; QByteArray data = convertWebKitFormBoundaryIfNecessary(postData); PageFormData formData = {QString(), QString(), data}; if (data.isEmpty() || !data.contains('=')) { return formData; } const QueryItems queryItems = createQueryItems(data); if (queryItems.isEmpty()) { return formData; } const QWebElementCollection allForms = getAllElementsFromPage("form"); // Find form that contains password value sent in data foreach (const QWebElement &formElement, allForms) { bool found = false; const QWebElementCollection inputs = formElement.findAll("input[type=\"password\"]"); foreach (QWebElement inputElement, inputs) { const QString passName = inputElement.attribute("name"); const QString passValue = inputElement.evaluateJavaScript("this.value").toString(); if (queryItemsContains(queryItems, passName, passValue)) { // Set passwordValue if not empty (to make it possible extract forms without username field) passwordValue = passValue; const QueryItem item = findUsername(formElement); if (queryItemsContains(queryItems, item.first, item.second)) { usernameValue = item.second; found = true; break; } } } if (found) { break; } } // It is necessary only to find password, as there may be form without username field if (passwordValue.isEmpty()) { return formData; } formData.username = usernameValue; formData.password = passwordValue; return formData; } // Returns if any data was actually filled in page bool PageFormCompleter::completePage(const QByteArray &data) const { bool completed = false; const QueryItems queryItems = createQueryItems(data); // Input types that are being completed QStringList inputTypes; inputTypes << "text" << "password" << "email"; // Find all input elements in the page const QWebElementCollection inputs = getAllElementsFromPage("input"); for (int i = 0; i < queryItems.count(); i++) { const QString key = queryItems.at(i).first; const QString value = queryItems.at(i).second; for (int i = 0; i < inputs.count(); i++) { QWebElement element = inputs.at(i); const QString typeAttr = element.attribute("type"); if (!inputTypes.contains(typeAttr) && !typeAttr.isEmpty()) { continue; } if (key == element.attribute("name")) { completed = true; element.setAttribute("value", value); } } } return completed; } bool PageFormCompleter::queryItemsContains(const QueryItems &queryItems, const QString &attributeName, const QString &attributeValue) const { if (attributeName.isEmpty() || attributeValue.isEmpty()) { return false; } for (int i = 0; i < queryItems.count(); i++) { const QueryItem item = queryItems.at(i); if (item.first == attributeName) { return item.second == attributeValue; } } return false; } QByteArray PageFormCompleter::convertWebKitFormBoundaryIfNecessary(const QByteArray &data) const { /* Sometimes, data are passed in this format: * * ------WebKitFormBoundary0bBp3bFMdGwqanMp * Content-Disposition: form-data; name="name-of-attribute" * * value-of-attribute * ------WebKitFormBoundary0bBp3bFMdGwqanMp-- * * So this function converts this format into name=value& format */ if (!data.contains(QByteArray("------WebKitFormBoundary"))) { return data; } QByteArray formatedData; QzRegExp rx("name=\"(.*)------WebKitFormBoundary"); rx.setMinimal(true); int pos = 0; while ((pos = rx.indexIn(data, pos)) != -1) { QString string = rx.cap(1); pos += rx.matchedLength(); int endOfAttributeName = string.indexOf(QLatin1Char('"')); if (endOfAttributeName == -1) { continue; } QString attrName = string.left(endOfAttributeName); QString attrValue = string.mid(endOfAttributeName + 1).trimmed().remove(QLatin1Char('\n')); if (attrName.isEmpty() || attrValue.isEmpty()) { continue; } formatedData.append(attrName + "=" + attrValue + "&"); } return formatedData; } PageFormCompleter::QueryItem PageFormCompleter::findUsername(const QWebElement &form) const { // Try to find username (or email) field in the form. QStringList selectors; selectors << "input[type=\"text\"][name*=\"user\"]" << "input[type=\"text\"][name*=\"name\"]" << "input[type=\"text\"]" << "input[type=\"email\"]" << "input:not([type=\"hidden\"][type=\"password\"])"; foreach (const QString &selector, selectors) { const QWebElementCollection inputs = form.findAll(selector); foreach (QWebElement element, inputs) { const QString name = element.attribute("name"); const QString value = element.evaluateJavaScript("this.value").toString(); if (!name.isEmpty() && !value.isEmpty()) { QueryItem item; item.first = name; item.second = value; return item; } } } return QueryItem(); } PageFormCompleter::QueryItems PageFormCompleter::createQueryItems(QByteArray data) const { // QUrlQuery/QUrl never encodes/decodes + and spaces data.replace('+', ' '); #if QT_VERSION >= 0x050000 QUrlQuery query; query.setQuery(data); QueryItems arguments = query.queryItems(QUrl::FullyDecoded); #else QueryItems arguments = QUrl::fromEncoded("http://foo.com/?" + data).queryItems(); #endif return arguments; } QWebElementCollection PageFormCompleter::getAllElementsFromPage(const QString &selector) const { QWebElementCollection list; if (!m_page) { return list; } QList frames; frames.append(m_page->mainFrame()); while (!frames.isEmpty()) { QWebFrame* frame = frames.takeFirst(); if (frame) { list.append(frame->findAllElements(selector)); frames += frame->childFrames(); } } return list; } qupzilla-1.6.0/src/lib/autofill/pageformcompleter.h000066400000000000000000000040051226107126500224200ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef PAGEFORMCOMPLETER_H #define PAGEFORMCOMPLETER_H #include #include #include #include "qz_namespace.h" class QWebPage; class QWebElement; class QWebElementCollection; struct PageFormData { QString username; QString password; QByteArray postData; bool isValid() const { return !password.isEmpty(); } }; class QT_QUPZILLA_EXPORT PageFormCompleter { public: explicit PageFormCompleter(QWebPage* page); PageFormData extractFormData(const QByteArray &postData) const; bool completePage(const QByteArray &data) const; private: typedef QPair QueryItem; typedef QList > QueryItems; bool queryItemsContains(const QueryItems &queryItems, const QString &attributeName, const QString &attributeValue) const; QByteArray convertWebKitFormBoundaryIfNecessary(const QByteArray &data) const; QueryItem findUsername(const QWebElement &form) const; QueryItems createQueryItems(QByteArray data) const; QWebElementCollection getAllElementsFromPage(const QString &selector) const; QWebPage* m_page; }; #endif // PAGEFORMCOMPLETER_H qupzilla-1.6.0/src/lib/autofill/passwordbackends/000077500000000000000000000000001226107126500220725ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/autofill/passwordbackends/databaseencryptedpasswordbackend.cpp000066400000000000000000000513761226107126500313670ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 S. Razi Alavizadeh * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "databaseencryptedpasswordbackend.h" #include "mainapplication.h" #include "autofill.h" #include "aesinterface.h" #include "qupzilla.h" #include "ui_masterpassworddialog.h" #include #include #include #include #include #define INTERNAL_SERVER_ID QLatin1String("qupzilla.internal") DatabaseEncryptedPasswordBackend::DatabaseEncryptedPasswordBackend() : PasswordBackend() , m_stateOfMasterPassword(UnKnownState) , m_askPasswordDialogVisible(false) , m_askMasterPassword(false) { QSqlDatabase db = QSqlDatabase::database(); if (!db.tables().contains(QLatin1String("autofill_encrypted"))) { db.exec("CREATE TABLE autofill_encrypted (data_encrypted TEXT, id INTEGER PRIMARY KEY," "password_encrypted TEXT, server TEXT, username_encrypted TEXT, last_used NUMERIC)"); db.exec("CREATE INDEX autofillEncryptedServer ON autofill_encrypted(server ASC)"); } } DatabaseEncryptedPasswordBackend::~DatabaseEncryptedPasswordBackend() { } QVector DatabaseEncryptedPasswordBackend::getEntries(const QUrl &url) { QVector list; AesInterface aesDecryptor; const QString host = PasswordManager::createHost(url); QSqlQuery query; query.prepare("SELECT id, username_encrypted, password_encrypted, data_encrypted FROM autofill_encrypted " "WHERE server=? ORDER BY last_used DESC"); query.addBindValue(host); query.exec(); if (query.next() && hasPermission()) { do { PasswordEntry data; data.id = query.value(0); data.host = host; data.username = query.value(1).toString(); data.password = query.value(2).toString(); data.data = query.value(3).toByteArray(); if (decryptPasswordEntry(data, &aesDecryptor)) { list.append(data); } } while (query.next()); } return list; } QVector DatabaseEncryptedPasswordBackend::getAllEntries() { QVector list; AesInterface aesDecryptor; QSqlQuery query; query.exec("SELECT id, server, username_encrypted, password_encrypted, data_encrypted FROM autofill_encrypted"); if (query.next() && hasPermission()) { do { PasswordEntry data; data.id = query.value(0); data.host = query.value(1).toString(); if (data.host == INTERNAL_SERVER_ID) { continue; } data.username = query.value(2).toString(); data.password = query.value(3).toString(); data.data = query.value(4).toByteArray(); if (decryptPasswordEntry(data, &aesDecryptor)) { list.append(data); } } while (query.next()); } return list; } void DatabaseEncryptedPasswordBackend::setActive(bool active) { if (active == isActive()) { return; } PasswordBackend::setActive(active); if (active) { setAskMasterPasswordState(isMasterPasswordSetted()); if (!isMasterPasswordSetted()) { // master-password is not setted this backend needs master-password showMasterPasswordDialog(); } } else { // maybe ask from user for decrypting data // remove password from memory m_masterPassword.clear(); setAskMasterPasswordState(isMasterPasswordSetted()); } } void DatabaseEncryptedPasswordBackend::addEntry(const PasswordEntry &entry) { // Data is empty only for HTTP/FTP authorization if (entry.data.isEmpty()) { // Multiple-usernames for HTTP/FTP authorization not supported QSqlQuery query; query.prepare("SELECT username_encrypted FROM autofill_encrypted WHERE server=?"); query.addBindValue(entry.host); query.exec(); if (query.next()) { return; } } PasswordEntry encryptedEntry = entry; AesInterface aesEncryptor; if (hasPermission() && encryptPasswordEntry(encryptedEntry, &aesEncryptor)) { QSqlQuery query; query.prepare("INSERT INTO autofill_encrypted (server, data_encrypted, username_encrypted, password_encrypted, last_used) " "VALUES (?,?,?,?,strftime('%s', 'now'))"); query.bindValue(0, encryptedEntry.host); query.bindValue(1, encryptedEntry.data); query.bindValue(2, encryptedEntry.username); query.bindValue(3, encryptedEntry.password); query.exec(); } } bool DatabaseEncryptedPasswordBackend::updateEntry(const PasswordEntry &entry) { AesInterface aesEncryptor; PasswordEntry encryptedEntry = entry; if (hasPermission() && encryptPasswordEntry(encryptedEntry, &aesEncryptor)) { QSqlQuery query; // Data is empty only for HTTP/FTP authorization if (entry.data.isEmpty()) { query.prepare("UPDATE autofill_encrypted SET username_encrypted=?, password_encrypted=? WHERE server=?"); query.bindValue(0, encryptedEntry.username); query.bindValue(1, encryptedEntry.password); query.bindValue(2, encryptedEntry.host); } else { query.prepare("UPDATE autofill_encrypted SET data_encrypted=?, username_encrypted=?, password_encrypted=? WHERE id=?"); query.addBindValue(encryptedEntry.data); query.addBindValue(encryptedEntry.username); query.addBindValue(encryptedEntry.password); query.addBindValue(encryptedEntry.id); } return query.exec(); } return false; } void DatabaseEncryptedPasswordBackend::updateLastUsed(PasswordEntry &entry) { QSqlQuery query; query.prepare("UPDATE autofill_encrypted SET last_used=strftime('%s', 'now') WHERE id=?"); query.addBindValue(entry.id); query.exec(); } void DatabaseEncryptedPasswordBackend::removeEntry(const PasswordEntry &entry) { if (!hasPermission()) { return; } QSqlQuery query; query.prepare("DELETE FROM autofill_encrypted WHERE id=?"); query.addBindValue(entry.id); query.exec(); m_stateOfMasterPassword = UnKnownState; if (someDataFromDatabase().isEmpty()) { updateSampleData(m_masterPassword); } } void DatabaseEncryptedPasswordBackend::removeAll() { if (!hasPermission()) { return; } QSqlQuery query; query.prepare("DELETE FROM autofill_encrypted"); query.exec(); m_stateOfMasterPassword = PasswordIsSetted; updateSampleData(m_masterPassword); } QString DatabaseEncryptedPasswordBackend::name() const { return AutoFill::tr("Database (encrypted)"); } bool DatabaseEncryptedPasswordBackend::hasSettings() const { return true; } void DatabaseEncryptedPasswordBackend::showSettings(QWidget* parent) { MasterPasswordDialog* masterPasswordDialog = new MasterPasswordDialog(this, parent); masterPasswordDialog->showSettingPage(); } bool DatabaseEncryptedPasswordBackend::isMasterPasswordSetted() { if (m_stateOfMasterPassword == UnKnownState) { m_stateOfMasterPassword = someDataFromDatabase().isEmpty() ? PasswordIsNotSetted : PasswordIsSetted; } return m_stateOfMasterPassword == PasswordIsSetted; } QByteArray DatabaseEncryptedPasswordBackend::masterPassword() const { return m_masterPassword; } bool DatabaseEncryptedPasswordBackend::hasPermission() { if (!m_askMasterPassword) { return true; } if (m_askPasswordDialogVisible) { return false; } m_askPasswordDialogVisible = true; QInputDialog dialog; dialog.setWindowModality(Qt::ApplicationModal); dialog.setWindowTitle(AutoFill::tr("Enter Master Password")); dialog.setLabelText(AutoFill::tr("Permission is required, please enter Master Password:")); dialog.setTextEchoMode(QLineEdit::Password); if (dialog.exec() == QDialog::Accepted && !dialog.textValue().isEmpty()) { QByteArray enteredPassword = AesInterface::passwordToHash(dialog.textValue()); if (!isPasswordVerified(enteredPassword)) { QMessageBox::information(mApp->getWindow(), AutoFill::tr("Warning!"), AutoFill::tr("Entered password is wrong!")); setAskMasterPasswordState(true); m_askPasswordDialogVisible = false; return false; } else { setAskMasterPasswordState(false); //TODO: start timer for reset ask state to true m_askPasswordDialogVisible = false; return true; } } m_askPasswordDialogVisible = false; return false; } bool DatabaseEncryptedPasswordBackend::isPasswordVerified(const QByteArray &password) { if (password.isEmpty()) { return false; } if (m_masterPassword == password) { return true; } else if (!m_masterPassword.isEmpty()) { return false; } else { // m_masterPassword is empty we need to check entered password with // decoding some data by it and then save it to m_masterPassword AesInterface aes; aes.decrypt(someDataFromDatabase(), password); if (aes.isOk()) { m_masterPassword = password; return true; } } return false; } bool DatabaseEncryptedPasswordBackend::decryptPasswordEntry(PasswordEntry &entry, AesInterface* aesInterface) { entry.username = QString::fromUtf8(aesInterface->decrypt(entry.username.toUtf8(), m_masterPassword)); entry.password = QString::fromUtf8(aesInterface->decrypt(entry.password.toUtf8(), m_masterPassword)); entry.data = aesInterface->decrypt(entry.data, m_masterPassword); return aesInterface->isOk(); } bool DatabaseEncryptedPasswordBackend::encryptPasswordEntry(PasswordEntry &entry, AesInterface* aesInterface) { entry.username = QString::fromUtf8(aesInterface->encrypt(entry.username.toUtf8(), m_masterPassword)); entry.password = QString::fromUtf8(aesInterface->encrypt(entry.password.toUtf8(), m_masterPassword)); entry.data = aesInterface->encrypt(entry.data, m_masterPassword); return aesInterface->isOk(); } void DatabaseEncryptedPasswordBackend::showMasterPasswordDialog() { MasterPasswordDialog* masterPasswordDialog = new MasterPasswordDialog(this, mApp->getWindow()); masterPasswordDialog->showSetMasterPasswordPage(); masterPasswordDialog->delayedExec(); } void DatabaseEncryptedPasswordBackend::tryToChangeMasterPassword(const QByteArray &newPassword) { if (m_masterPassword == newPassword) { return; } if (newPassword.isEmpty()) { removeMasterPassword(); return; } encryptDataBaseTableOnFly(m_masterPassword, newPassword); m_masterPassword = newPassword; updateSampleData(m_masterPassword); } void DatabaseEncryptedPasswordBackend::removeMasterPassword() { if (!m_masterPassword.isEmpty()) { encryptDataBaseTableOnFly(m_masterPassword, QByteArray()); m_masterPassword.clear(); updateSampleData(QByteArray()); } } void DatabaseEncryptedPasswordBackend::setAskMasterPasswordState(bool ask) { m_askMasterPassword = ask; } void DatabaseEncryptedPasswordBackend::encryptDataBaseTableOnFly(const QByteArray &decryptorPassword, const QByteArray &encryptorPassword) { if (encryptorPassword == decryptorPassword) { return; } QSqlQuery query; query.prepare("SELECT id, data_encrypted, password_encrypted, username_encrypted, server FROM autofill_encrypted"); query.exec(); AesInterface encryptor; AesInterface decryptor; while (query.next()) { QString server = query.value(4).toString(); if (server == INTERNAL_SERVER_ID) { continue; } int id = query.value(0).toInt(); QByteArray data = query.value(1).toString().toUtf8(); QByteArray password = query.value(2).toString().toUtf8(); QByteArray username = query.value(3).toString().toUtf8(); if (!decryptorPassword.isEmpty()) { data = decryptor.decrypt(data, decryptorPassword); password = decryptor.decrypt(password, decryptorPassword); username = decryptor.decrypt(username, decryptorPassword); } if (!encryptorPassword.isEmpty()) { data = encryptor.encrypt(data, encryptorPassword); password = encryptor.encrypt(password, encryptorPassword); username = encryptor.encrypt(username, encryptorPassword); } QSqlQuery updateQuery; updateQuery.prepare("UPDATE autofill_encrypted SET data_encrypted = ?, password_encrypted = ?, username_encrypted = ? WHERE id = ?"); updateQuery.addBindValue(data); updateQuery.addBindValue(password); updateQuery.addBindValue(username); updateQuery.addBindValue(id); updateQuery.exec(); } } QByteArray DatabaseEncryptedPasswordBackend::someDataFromDatabase() { if (m_stateOfMasterPassword != UnKnownState && !m_someDataStoredOnDataBase.isEmpty()) { return m_someDataStoredOnDataBase; } QSqlQuery query; query.prepare("SELECT password_encrypted, data_encrypted, username_encrypted FROM autofill_encrypted"); query.exec(); QByteArray someData; if (query.next()) { int i = 0; while (someData.isEmpty()) { if (i > 2) { if (query.next()) { i = 0; continue; } else { break; } } someData = query.value(i).toByteArray(); ++i; } } m_someDataStoredOnDataBase = someData; return m_someDataStoredOnDataBase; } void DatabaseEncryptedPasswordBackend::updateSampleData(const QByteArray &password) { QSqlQuery query; query.prepare("SELECT id FROM autofill_encrypted WHERE server = ?"); query.addBindValue(INTERNAL_SERVER_ID); query.exec(); if (!password.isEmpty()) { AesInterface aes; m_someDataStoredOnDataBase = aes.encrypt(AesInterface::createRandomData(16), password); if (query.next()) { query.prepare("UPDATE autofill_encrypted SET password_encrypted = ? WHERE server=?"); } else { query.prepare("INSERT INTO autofill_encrypted (password_encrypted, server) VALUES (?,?)"); } query.addBindValue(QString::fromUtf8(m_someDataStoredOnDataBase)); query.addBindValue(INTERNAL_SERVER_ID); query.exec(); m_stateOfMasterPassword = PasswordIsSetted; } else if (query.next()) { query.prepare("DELETE FROM autofill_encrypted WHERE server = ?"); query.addBindValue(INTERNAL_SERVER_ID); query.exec(); m_stateOfMasterPassword = PasswordIsNotSetted; m_someDataStoredOnDataBase.clear(); return; } } /****************************** * MasterPasswordDialog class * ******************************/ #include MasterPasswordDialog::MasterPasswordDialog(DatabaseEncryptedPasswordBackend* backend, QWidget* parent) : QDialog(parent, Qt::MSWindowsFixedSizeDialogHint) , ui(new Ui::MasterPasswordDialog) , m_backend(backend) { setAttribute(Qt::WA_DeleteOnClose, true); ui->setupUi(this); ui->currentPassword->setVisible(m_backend->isMasterPasswordSetted()); ui->labelCurrentPassword->setVisible(m_backend->isMasterPasswordSetted()); connect(ui->setMasterPassword, SIGNAL(clicked()), this, SLOT(showSetMasterPasswordPage())); connect(ui->clearMasterPassword, SIGNAL(clicked()), this, SLOT(clearMasterPasswordAndConvert())); connect(ui->buttonBox, SIGNAL(rejected()), this, SLOT(reject())); connect(ui->buttonBoxMasterPassword, SIGNAL(rejected()), this, SLOT(reject())); connect(ui->buttonBoxMasterPassword, SIGNAL(accepted()), this, SLOT(accept())); } MasterPasswordDialog::~MasterPasswordDialog() { delete ui; } void MasterPasswordDialog::delayedExec() { QTimer::singleShot(0, this, SLOT(exec())); } void MasterPasswordDialog::accept() { if (ui->stackedWidget->currentIndex() != 1) { QDialog::accept(); return; } QByteArray currentPassField = AesInterface::passwordToHash(ui->currentPassword->text()); if (m_backend->isMasterPasswordSetted() && !m_backend->isPasswordVerified(currentPassField)) { QMessageBox::information(this, tr("Warning!"), tr("You entered a wrong password!")); return; } if (ui->newPassword->text() != ui->confirmPassword->text()) { QMessageBox::information(this, tr("Warning!"), tr("New/Confirm password fields do not match!")); return; } if (ui->newPassword->text().isEmpty()) { if (!m_backend->isMasterPasswordSetted()) { return; } clearMasterPasswordAndConvert(false); } else { // for security reason we don't save master-password as plain in memory QByteArray newPassField = AesInterface::passwordToHash(ui->newPassword->text()); if (m_backend->masterPassword() != newPassField) { m_backend->tryToChangeMasterPassword(newPassField); } } QDialog::accept(); } void MasterPasswordDialog::reject() { QDialog::reject(); if (m_backend->isActive() && !m_backend->isMasterPasswordSetted()) { // master password not setted QMessageBox::information(this, AutoFill::tr("Warning!"), AutoFill::tr("This backend needs a master password to be set! " "QupZilla just switches to its default backend")); // active default backend mApp->autoFill()->passwordManager()->switchBackend("database"); return; } } void MasterPasswordDialog::showSettingPage() { ui->stackedWidget->setCurrentIndex(0); delayedExec(); } void MasterPasswordDialog::showSetMasterPasswordPage() { ui->stackedWidget->setCurrentIndex(1); } void MasterPasswordDialog::clearMasterPasswordAndConvert(bool forcedAskPass) { if (QMessageBox::information(this, tr("Warning!"), tr("Are you sure to clear master password and decrypt data?"), QMessageBox::Yes | QMessageBox::No) == QMessageBox::No) { reject(); return; } if (forcedAskPass) { m_backend->setAskMasterPasswordState(true); } if (m_backend->hasPermission()) { QVector list = m_backend->getAllEntries(); PasswordBackend* databaseBackend = mApp->autoFill()->passwordManager()->availableBackends().value("database"); if (!databaseBackend) { return; } QVector databaseList = databaseBackend->getAllEntries(); bool allDataMoved = true; foreach (const PasswordEntry &entry, list) { bool sameEntry = false; foreach (const PasswordEntry &dbEntry, databaseList) { sameEntry = samePasswordEntry(dbEntry, entry); if (sameEntry) { allDataMoved = false; break; } } if (!sameEntry) { databaseBackend->addEntry(entry); m_backend->removeEntry(entry); } } if (allDataMoved) { m_backend->removeAll(); m_backend->removeMasterPassword(); m_backend->setAskMasterPasswordState(false); mApp->autoFill()->passwordManager()->switchBackend("database"); } else { QMessageBox::information(this, tr("Warning!"), tr("Some data has not been decrypted. The master password was not cleared!")); mApp->autoFill()->passwordManager()->switchBackend("database"); } } reject(); } bool MasterPasswordDialog::samePasswordEntry(const PasswordEntry &entry1, const PasswordEntry &entry2) { // Multiple-usernames for HTTP/FTP authorization not supported if ((entry1.data.isEmpty() || entry2.data.isEmpty()) && entry1.host == entry2.host) { return true; } if (entry1.host != entry2.host || entry1.username != entry2.username) { return false; } return true; } qupzilla-1.6.0/src/lib/autofill/passwordbackends/databaseencryptedpasswordbackend.h000066400000000000000000000067721226107126500310340ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 S. Razi Alavizadeh * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef DATABASEENCRYPTEDPASSWORDBACKEND_H #define DATABASEENCRYPTEDPASSWORDBACKEND_H #include "passwordbackend.h" #include "qz_namespace.h" #include class AesInterface; class MasterPasswordDialog; class QT_QUPZILLA_EXPORT DatabaseEncryptedPasswordBackend : public PasswordBackend { public: enum MasterPasswordState { PasswordIsSetted, PasswordIsNotSetted, UnKnownState = -1 }; explicit DatabaseEncryptedPasswordBackend(); ~DatabaseEncryptedPasswordBackend(); QVector getEntries(const QUrl &url); QVector getAllEntries(); void setActive(bool active); void addEntry(const PasswordEntry &entry); bool updateEntry(const PasswordEntry &entry); void updateLastUsed(PasswordEntry &entry); void removeEntry(const PasswordEntry &entry); void removeAll(); QString name() const; bool hasSettings() const; void showSettings(QWidget* parent); bool isMasterPasswordSetted(); QByteArray masterPassword() const; bool hasPermission(); bool isPasswordVerified(const QByteArray &password); bool decryptPasswordEntry(PasswordEntry &entry, AesInterface* aesInterface); bool encryptPasswordEntry(PasswordEntry &entry, AesInterface* aesInterface); void tryToChangeMasterPassword(const QByteArray &newPassword); void removeMasterPassword(); void setAskMasterPasswordState(bool ask); void encryptDataBaseTableOnFly(const QByteArray &decryptorPassword, const QByteArray &encryptorPassword); void updateSampleData(const QByteArray &password); void showMasterPasswordDialog(); private: QByteArray someDataFromDatabase(); MasterPasswordState m_stateOfMasterPassword; QByteArray m_someDataStoredOnDataBase; bool m_askPasswordDialogVisible; bool m_askMasterPassword; QByteArray m_masterPassword; MasterPasswordDialog* m_masterPasswordDialog; }; namespace Ui { class MasterPasswordDialog; } class MasterPasswordDialog : public QDialog { Q_OBJECT public: explicit MasterPasswordDialog(DatabaseEncryptedPasswordBackend* backend, QWidget* parent = 0); ~MasterPasswordDialog(); void delayedExec(); public slots: void accept(); void reject(); void showSettingPage(); void showSetMasterPasswordPage(); void clearMasterPasswordAndConvert(bool forcedAskPass = true); bool samePasswordEntry(const PasswordEntry &entry1, const PasswordEntry &entry2); private: Ui::MasterPasswordDialog* ui; DatabaseEncryptedPasswordBackend* m_backend; }; #endif // DATABASEENCRYPTEDPASSWORDBACKEND_H qupzilla-1.6.0/src/lib/autofill/passwordbackends/databasepasswordbackend.cpp000066400000000000000000000105761226107126500274460ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "databasepasswordbackend.h" #include "mainapplication.h" #include "databasewriter.h" #include "autofill.h" #include #include DatabasePasswordBackend::DatabasePasswordBackend() : PasswordBackend() { } QString DatabasePasswordBackend::name() const { return AutoFill::tr("Database (plaintext)"); } QVector DatabasePasswordBackend::getEntries(const QUrl &url) { const QString host = PasswordManager::createHost(url); QSqlQuery query; query.prepare("SELECT id, username, password, data FROM autofill " "WHERE server=? ORDER BY last_used DESC"); query.addBindValue(host); query.exec(); QVector list; while (query.next()) { PasswordEntry data; data.id = query.value(0); data.host = host; data.username = query.value(1).toString(); data.password = query.value(2).toString(); data.data = query.value(3).toByteArray(); list.append(data); } return list; } QVector DatabasePasswordBackend::getAllEntries() { QVector list; QSqlQuery query; query.exec("SELECT id, server, username, password, data FROM autofill"); while (query.next()) { PasswordEntry data; data.id = query.value(0); data.host = query.value(1).toString(); data.username = query.value(2).toString(); data.password = query.value(3).toString(); data.data = query.value(4).toByteArray(); list.append(data); } return list; } void DatabasePasswordBackend::addEntry(const PasswordEntry &entry) { // Data is empty only for HTTP/FTP authorization if (entry.data.isEmpty()) { // Multiple-usernames for HTTP/FTP authorization not supported QSqlQuery query; query.prepare("SELECT username FROM autofill WHERE server=?"); query.addBindValue(entry.host); query.exec(); if (query.next()) { return; } } QSqlQuery query; query.prepare("INSERT INTO autofill (server, data, username, password, last_used) " "VALUES (?,?,?,?,strftime('%s', 'now'))"); query.bindValue(0, entry.host); query.bindValue(1, entry.data); query.bindValue(2, entry.username); query.bindValue(3, entry.password); query.exec(); } bool DatabasePasswordBackend::updateEntry(const PasswordEntry &entry) { QSqlQuery query; // Data is empty only for HTTP/FTP authorization if (entry.data.isEmpty()) { query.prepare("UPDATE autofill SET username=?, password=? WHERE server=?"); query.bindValue(0, entry.username); query.bindValue(1, entry.password); query.bindValue(2, entry.host); } else { query.prepare("UPDATE autofill SET data=?, username=?, password=? WHERE id=?"); query.addBindValue(entry.data); query.addBindValue(entry.username); query.addBindValue(entry.password); query.addBindValue(entry.id); } return query.exec(); } void DatabasePasswordBackend::updateLastUsed(PasswordEntry &entry) { QSqlQuery query; query.prepare("UPDATE autofill SET last_used=strftime('%s', 'now') WHERE id=?"); query.addBindValue(entry.id); query.exec(); } void DatabasePasswordBackend::removeEntry(const PasswordEntry &entry) { QSqlQuery query; query.prepare("DELETE FROM autofill WHERE id=?"); query.addBindValue(entry.id); query.exec(); } void DatabasePasswordBackend::removeAll() { QSqlQuery query; query.prepare("DELETE FROM autofill"); query.exec(); } qupzilla-1.6.0/src/lib/autofill/passwordbackends/databasepasswordbackend.h000066400000000000000000000027201226107126500271030ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef DATABASEPASSWORDBACKEND_H #define DATABASEPASSWORDBACKEND_H #include "passwordbackend.h" #include "qz_namespace.h" class QT_QUPZILLA_EXPORT DatabasePasswordBackend : public PasswordBackend { public: explicit DatabasePasswordBackend(); QString name() const; QVector getEntries(const QUrl &url); QVector getAllEntries(); void addEntry(const PasswordEntry &entry); bool updateEntry(const PasswordEntry &entry); void updateLastUsed(PasswordEntry &entry); void removeEntry(const PasswordEntry &entry); void removeAll(); }; #endif // DATABASEPASSWORDBACKEND_H qupzilla-1.6.0/src/lib/autofill/passwordbackends/masterpassworddialog.ui000066400000000000000000000107661226107126500267010ustar00rootroot00000000000000 MasterPasswordDialog 0 0 436 230 430 230 Encrypted DataBase Settings 0 Set/Change Master Password... This backend does not work without a master password. Clear Master Password... This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. QDialogButtonBox::Close The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. true Current Password: New Password: Confirm Password: QLineEdit::Password QLineEdit::Password QLineEdit::Password <b>Note:</b> The Master Password is not resettable. Do not forget it, please. true QDialogButtonBox::Cancel|QDialogButtonBox::Ok qupzilla-1.6.0/src/lib/autofill/passwordbackends/passwordbackend.cpp000066400000000000000000000023111226107126500257450ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "passwordbackend.h" PasswordBackend::PasswordBackend() : m_active(false) { } void PasswordBackend::setActive(bool active) { m_active = active; } bool PasswordBackend::isActive() const { return m_active; } bool PasswordBackend::hasSettings() const { return false; } void PasswordBackend::showSettings(QWidget* parent) { Q_UNUSED(parent) } qupzilla-1.6.0/src/lib/autofill/passwordbackends/passwordbackend.h000066400000000000000000000033331226107126500254170ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef PASSWORDBACKEND_H #define PASSWORDBACKEND_H #include "passwordmanager.h" #include "qz_namespace.h" class QWidget; class QT_QUPZILLA_EXPORT PasswordBackend { public: explicit PasswordBackend(); virtual ~PasswordBackend() { } virtual QString name() const = 0; virtual QVector getEntries(const QUrl &url) = 0; virtual QVector getAllEntries() = 0; virtual void addEntry(const PasswordEntry &entry) = 0; virtual bool updateEntry(const PasswordEntry &entry) = 0; virtual void updateLastUsed(PasswordEntry &entry) = 0; virtual void removeEntry(const PasswordEntry &entry) = 0; virtual void removeAll() = 0; virtual void setActive(bool active); bool isActive() const; virtual bool hasSettings() const; virtual void showSettings(QWidget* parent); private: bool m_active; }; #endif // PASSWORDBACKEND_H qupzilla-1.6.0/src/lib/autofill/passwordmanager.cpp000066400000000000000000000121061226107126500224360ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "passwordmanager.h" #include "passwordbackends/passwordbackend.h" #include "passwordbackends/databasepasswordbackend.h" #include "passwordbackends/databaseencryptedpasswordbackend.h" #include "settings.h" #include #include static const int passwordEntryVersion = 2; QDataStream &operator <<(QDataStream &stream, const PasswordEntry &entry) { stream << passwordEntryVersion; stream << entry.host; stream << entry.id; stream << entry.username; stream << entry.password; stream << entry.data; stream << entry.updated; return stream; } QDataStream &operator >>(QDataStream &stream, PasswordEntry &entry) { int version; stream >> version; if (version != passwordEntryVersion) { return stream; } stream >> entry.host; stream >> entry.id; stream >> entry.username; stream >> entry.password; stream >> entry.data; stream >> entry.updated; return stream; } PasswordManager::PasswordManager(QObject* parent) : QObject(parent) , m_loaded(false) , m_backend(0) , m_databaseBackend(new DatabasePasswordBackend) , m_databaseEncryptedBackend(new DatabaseEncryptedPasswordBackend) { m_backends["database"] = m_databaseBackend; m_backends["database-encrypted"] = m_databaseEncryptedBackend; } void PasswordManager::loadSettings() { Settings settings; settings.beginGroup("PasswordManager"); QString backendId = settings.value("Backend", "database").toString(); settings.endGroup(); m_backend = m_backends[m_backends.contains(backendId) ? backendId : "database"]; m_backend->setActive(true); } QVector PasswordManager::getEntries(const QUrl &url) { ensureLoaded(); return m_backend->getEntries(url); } QVector PasswordManager::getAllEntries() { ensureLoaded(); return m_backend->getAllEntries(); } void PasswordManager::addEntry(const PasswordEntry &entry) { ensureLoaded(); m_backend->addEntry(entry); } bool PasswordManager::updateEntry(const PasswordEntry &entry) { ensureLoaded(); return m_backend->updateEntry(entry); } void PasswordManager::updateLastUsed(PasswordEntry &entry) { ensureLoaded(); m_backend->updateLastUsed(entry); } void PasswordManager::removeEntry(const PasswordEntry &entry) { ensureLoaded(); m_backend->removeEntry(entry); } void PasswordManager::removeAllEntries() { ensureLoaded(); m_backend->removeAll(); } QHash PasswordManager::availableBackends() { ensureLoaded(); return m_backends; } PasswordBackend* PasswordManager::activeBackend() { ensureLoaded(); return m_backend; } void PasswordManager::switchBackend(const QString &backendID) { PasswordBackend* backend = m_backends.value(backendID); if (!backend) { return; } m_backend->setActive(false); m_backend = backend; m_backend->setActive(true); Settings settings; settings.beginGroup("PasswordManager"); settings.setValue("Backend", backendID); settings.endGroup(); emit passwordBackendChanged(); } bool PasswordManager::registerBackend(const QString &id, PasswordBackend* backend) { if (m_backends.contains(id)) { return false; } m_backends[id] = backend; return true; } void PasswordManager::unregisterBackend(PasswordBackend* backend) { const QString key = m_backends.key(backend); m_backends.remove(key); if (m_backend == backend) { m_backend = m_databaseBackend; } } QString PasswordManager::createHost(const QUrl &url) { QString host = url.host(); if (host.isEmpty()) { host = url.toString(); } return host; } QByteArray PasswordManager::urlEncodePassword(const QString &password) { // Exclude space to properly decode to + QByteArray encodedPass = QUrl::toPercentEncoding(password, " "); encodedPass.replace(' ', '+'); // space has to be encoded to + encodedPass.replace('~', "%7E"); // ~ is unreserved char, needs to be manually encoded return encodedPass; } void PasswordManager::ensureLoaded() { if (!m_loaded) { loadSettings(); m_loaded = true; } } PasswordManager::~PasswordManager() { delete m_databaseBackend; delete m_databaseEncryptedBackend; } qupzilla-1.6.0/src/lib/autofill/passwordmanager.h000066400000000000000000000061041226107126500221040ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef PASSWORDMANAGER_H #define PASSWORDMANAGER_H #include #include #include #include "qz_namespace.h" class PasswordBackend; class DatabasePasswordBackend; class DatabaseEncryptedPasswordBackend; struct QT_QUPZILLA_EXPORT PasswordEntry { QVariant id; QString host; QString username; QString password; QByteArray data; int updated; PasswordEntry() : updated(-1) { } bool isValid() const { return !password.isEmpty() && !host.isEmpty(); } bool operator==(const PasswordEntry &other) const { return id == other.id; } bool operator<(const PasswordEntry &other) const { return updated > other.updated; } friend QT_QUPZILLA_EXPORT QDataStream &operator<<(QDataStream &stream, const PasswordEntry &entry); friend QT_QUPZILLA_EXPORT QDataStream &operator>>(QDataStream &stream, PasswordEntry &entry); }; class QT_QUPZILLA_EXPORT PasswordManager : public QObject { Q_OBJECT public: explicit PasswordManager(QObject* parent = 0); ~PasswordManager(); void loadSettings(); QVector getEntries(const QUrl &url); QVector getAllEntries(); void addEntry(const PasswordEntry &entry); bool updateEntry(const PasswordEntry &entry); void updateLastUsed(PasswordEntry &entry); void removeEntry(const PasswordEntry &entry); void removeAllEntries(); QHash availableBackends(); PasswordBackend* activeBackend(); void switchBackend(const QString &backendID); bool registerBackend(const QString &id, PasswordBackend* backend); void unregisterBackend(PasswordBackend* backend); static QString createHost(const QUrl &url); static QByteArray urlEncodePassword(const QString &password); private: void ensureLoaded(); bool m_loaded; PasswordBackend* m_backend; DatabasePasswordBackend* m_databaseBackend; DatabaseEncryptedPasswordBackend* m_databaseEncryptedBackend; QHash m_backends; signals: void passwordBackendChanged(); }; // Hint to QVector to use std::realloc on item moving Q_DECLARE_TYPEINFO(PasswordEntry, Q_MOVABLE_TYPE); Q_DECLARE_METATYPE(PasswordEntry) #endif // PASSWORDMANAGER_H qupzilla-1.6.0/src/lib/bookmarks/000077500000000000000000000000001226107126500167065ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/bookmarks/bookmarkicon.cpp000066400000000000000000000070031226107126500220700ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "bookmarkicon.h" #include "bookmarksmodel.h" #include "bookmarkswidget.h" #include "mainapplication.h" #include "tabbedwebview.h" #include "locationbar.h" #include "pluginproxy.h" #include "speeddial.h" #include #include BookmarkIcon::BookmarkIcon(QWidget* parent) : ClickableLabel(parent) , m_bookmarksModel(0) , m_speedDial(mApp->plugins()->speedDial()) , m_view(0) { setObjectName("locationbar-bookmarkicon"); setCursor(Qt::PointingHandCursor); setToolTip(tr("Bookmark this Page")); setFocusPolicy(Qt::ClickFocus); m_bookmarksModel = mApp->bookmarksModel(); connect(m_bookmarksModel, SIGNAL(bookmarkAdded(BookmarksModel::Bookmark)), this, SLOT(bookmarkAdded(BookmarksModel::Bookmark))); connect(m_bookmarksModel, SIGNAL(bookmarkDeleted(BookmarksModel::Bookmark)), this, SLOT(bookmarkDeleted(BookmarksModel::Bookmark))); connect(m_speedDial, SIGNAL(pagesChanged()), this, SLOT(speedDialChanged())); connect(this, SIGNAL(clicked(QPoint)), this, SLOT(iconClicked())); } void BookmarkIcon::setWebView(WebView* view) { m_view = view; } void BookmarkIcon::checkBookmark(const QUrl &url, bool forceCheck) { if (!forceCheck && m_lastUrl == url) { return; } if (m_bookmarksModel->isBookmarked(url) || !m_speedDial->pageForUrl(url).url.isEmpty()) { setBookmarkSaved(); } else { setBookmarkDisabled(); } m_lastUrl = url; } void BookmarkIcon::bookmarkDeleted(const BookmarksModel::Bookmark &bookmark) { if (bookmark.url == m_lastUrl) { checkBookmark(m_lastUrl, true); } } void BookmarkIcon::bookmarkAdded(const BookmarksModel::Bookmark &bookmark) { if (bookmark.url == m_lastUrl) { checkBookmark(m_lastUrl, true); } } void BookmarkIcon::speedDialChanged() { checkBookmark(m_lastUrl, true); } void BookmarkIcon::iconClicked() { if (!m_view) { return; } BookmarksWidget* widget = new BookmarksWidget(m_view, parentWidget()); widget->showAt(parentWidget()); } void BookmarkIcon::setBookmarkSaved() { setProperty("bookmarked", QVariant(true)); style()->unpolish(this); style()->polish(this); setToolTip(tr("Edit this bookmark")); } void BookmarkIcon::setBookmarkDisabled() { setProperty("bookmarked", QVariant(false)); style()->unpolish(this); style()->polish(this); setToolTip(tr("Bookmark this Page")); } void BookmarkIcon::contextMenuEvent(QContextMenuEvent* ev) { // Prevent propagating to LocationBar ev->accept(); } void BookmarkIcon::mousePressEvent(QMouseEvent* ev) { ClickableLabel::mousePressEvent(ev); // Prevent propagating to LocationBar ev->accept(); } qupzilla-1.6.0/src/lib/bookmarks/bookmarkicon.h000066400000000000000000000033661226107126500215450ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef BOOKMARKICON_H #define BOOKMARKICON_H #include #include "clickablelabel.h" #include "bookmarksmodel.h" #include "qz_namespace.h" class SpeedDial; class WebView; class QT_QUPZILLA_EXPORT BookmarkIcon : public ClickableLabel { Q_OBJECT public: explicit BookmarkIcon(QWidget* parent = 0); void setWebView(WebView* view); void checkBookmark(const QUrl &url, bool forceCheck = false); private slots: void bookmarkAdded(const BookmarksModel::Bookmark &bookmark); void bookmarkDeleted(const BookmarksModel::Bookmark &bookmark); void speedDialChanged(); void iconClicked(); private: void contextMenuEvent(QContextMenuEvent* ev); void mousePressEvent(QMouseEvent* ev); void setBookmarkSaved(); void setBookmarkDisabled(); BookmarksModel* m_bookmarksModel; SpeedDial* m_speedDial; WebView* m_view; QUrl m_lastUrl; }; #endif // BOOKMARKICON_H qupzilla-1.6.0/src/lib/bookmarks/bookmarksmanager.cpp000066400000000000000000000636171226107126500227520ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "mainapplication.h" #include "bookmarksmanager.h" #include "ui_bookmarksmanager.h" #include "qupzilla.h" #include "tabbedwebview.h" #include "bookmarkstoolbar.h" #include "tabwidget.h" #include "bookmarksmodel.h" #include "iconprovider.h" #include "browsinglibrary.h" #include "qztools.h" #include "bookmarksimportdialog.h" #include "iconchooser.h" #include "webtab.h" #include "qzsettings.h" #include #include #include #include #include #include #include BookmarksManager::BookmarksManager(QupZilla* mainClass, QWidget* parent) : QWidget(parent) , m_isRefreshing(false) , ui(new Ui::BookmarksManager) , p_QupZilla(mainClass) , m_bookmarksModel(mApp->bookmarksModel()) { ui->setupUi(this); ui->bookmarksTree->setViewType(BookmarksTree::ManagerView); ui->bookmarksTree->setSelectionBehavior(QAbstractItemView::SelectRows); ui->bookmarksTree->setDragDropReceiver(true, m_bookmarksModel); ui->bookmarksTree->setMimeType(QLatin1String("application/qupzilla.treewidgetitem.bookmarks")); connect(ui->bookmarksTree, SIGNAL(itemChanged(QTreeWidgetItem*,int)), this, SLOT(itemChanged(QTreeWidgetItem*))); connect(ui->addFolder, SIGNAL(clicked()), this, SLOT(addFolder())); connect(ui->bookmarksTree, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(contextMenuRequested(QPoint))); connect(ui->bookmarksTree, SIGNAL(itemControlClicked(QTreeWidgetItem*)), this, SLOT(itemControlClicked(QTreeWidgetItem*))); connect(ui->bookmarksTree, SIGNAL(itemMiddleButtonClicked(QTreeWidgetItem*)), this, SLOT(itemControlClicked(QTreeWidgetItem*))); connect(ui->collapseAll, SIGNAL(clicked()), ui->bookmarksTree, SLOT(collapseAll())); connect(ui->expandAll, SIGNAL(clicked()), ui->bookmarksTree, SLOT(expandAll())); connect(m_bookmarksModel, SIGNAL(bookmarkAdded(BookmarksModel::Bookmark)), this, SLOT(addBookmark(BookmarksModel::Bookmark))); connect(m_bookmarksModel, SIGNAL(bookmarkDeleted(BookmarksModel::Bookmark)), this, SLOT(removeBookmark(BookmarksModel::Bookmark))); connect(m_bookmarksModel, SIGNAL(bookmarkEdited(BookmarksModel::Bookmark,BookmarksModel::Bookmark)), this, SLOT(bookmarkEdited(BookmarksModel::Bookmark,BookmarksModel::Bookmark))); connect(m_bookmarksModel, SIGNAL(subfolderAdded(QString)), this, SLOT(addSubfolder(QString))); connect(m_bookmarksModel, SIGNAL(folderAdded(QString)), this, SLOT(addFolder(QString))); connect(m_bookmarksModel, SIGNAL(folderDeleted(QString)), this, SLOT(removeFolder(QString))); connect(m_bookmarksModel, SIGNAL(folderRenamed(QString,QString)), this, SLOT(renameFolder(QString,QString))); connect(m_bookmarksModel, SIGNAL(folderParentChanged(QString,bool)), this, SLOT(changeFolderParent(QString,bool))); connect(m_bookmarksModel, SIGNAL(bookmarkParentChanged(QString,QByteArray,int,QUrl,QString,QString)), this, SLOT(changeBookmarkParent(QString,QByteArray,int,QUrl,QString,QString))); QMenu* menu = new QMenu; menu->addAction(tr("Import Bookmarks..."), this, SLOT(importBookmarks())); menu->addAction(tr("Export Bookmarks to HTML..."), this, SLOT(exportBookmarks())); ui->importExport->setMenu(menu); QShortcut* deleteAction = new QShortcut(QKeySequence("Del"), ui->bookmarksTree); connect(deleteAction, SIGNAL(activated()), this, SLOT(deleteItem())); ui->bookmarksTree->setDefaultItemShowMode(TreeWidget::ItemsExpanded); ui->bookmarksTree->sortByColumn(-1); } void BookmarksManager::importBookmarks() { BookmarksImportDialog* b = new BookmarksImportDialog(this); b->show(); } void BookmarksManager::exportBookmarks() { QString file = QzTools::getSaveFileName("BookmarksManager-Export", this, tr("Export to HTML..."), QDir::homePath() + "/bookmarks.html"); if (!file.isEmpty()) { m_bookmarksModel->exportToHtml(file); } } void BookmarksManager::search(const QString &string) { ui->bookmarksTree->filterString(string); } QupZilla* BookmarksManager::getQupZilla() { if (!p_QupZilla) { p_QupZilla = mApp->getWindow(); } return p_QupZilla.data(); } void BookmarksManager::setMainWindow(QupZilla* window) { if (window) { p_QupZilla = window; } } void BookmarksManager::addFolder(QWidget* parent, QString* folder, bool showInsertDialog, const QString &bookmarkTitle, WebView* view) { BookmarksTree* bookmarksTree = qobject_cast(sender()); QDialog dialog(parent ? parent : this); dialog.setWindowTitle(tr("Add new folder")); QBoxLayout* layout = new QBoxLayout(QBoxLayout::TopToBottom, &dialog); QLabel* labelParent = new QLabel(tr("Choose parent folder for new folder: "), &dialog); QComboBox* combo = new QComboBox(&dialog); combo->addItem(qIconProvider->fromTheme("bookmarks-organize"), tr("Bookmarks"), "NO_PARENT"); combo->addItem(style()->standardIcon(QStyle::SP_DirOpenIcon), _bookmarksToolbar, "bookmarksToolbar"); combo->setCurrentIndex(0); QLabel* labelFolder = new QLabel(tr("Choose name for new bookmark folder: "), &dialog); QLineEdit* edit = new QLineEdit(&dialog); QDialogButtonBox* box = new QDialogButtonBox(&dialog); box->addButton(QDialogButtonBox::Ok); box->addButton(QDialogButtonBox::Cancel); connect(box, SIGNAL(rejected()), &dialog, SLOT(reject())); connect(box, SIGNAL(accepted()), &dialog, SLOT(accept())); layout->addWidget(labelParent); layout->addWidget(combo); layout->addWidget(labelFolder); layout->addWidget(edit); layout->addWidget(box); dialog.exec(); if (dialog.result() == QDialog::Rejected) { return; } QString text = edit->text(); if (text.isEmpty()) { return; } bool created = false; if (combo->itemData(combo->currentIndex()).toString() == "bookmarksToolbar") { created = m_bookmarksModel->createSubfolder(text); } else { created = m_bookmarksModel->createFolder(text); } if (folder) { *folder = (created ? text : ""); } if (created && bookmarksTree && bookmarksTree->viewType() == BookmarksTree::ComboFolderView) { bookmarksTree->refreshTree(); } if (showInsertDialog) { insertBookmark(view->url(), bookmarkTitle, view->icon(), created ? text : ""); } } void BookmarksManager::addSubfolder() { QString text = QInputDialog::getText(this, tr("Add new subfolder"), tr("Choose name for new subfolder in bookmarks toolbar: ")); if (text.isEmpty()) { return; } m_bookmarksModel->createSubfolder(text); } void BookmarksManager::renameFolder() { QTreeWidgetItem* item = ui->bookmarksTree->currentItem(); if (!item) { return; } if (!item->text(1).isEmpty()) { return; } QString folder = item->text(0); if (folder == _bookmarksMenu || folder == _bookmarksToolbar) { return; } QString text = QInputDialog::getText(this, tr("Rename Folder"), tr("Choose name for folder: "), QLineEdit::Normal, folder); if (text.isEmpty()) { return; } m_bookmarksModel->renameFolder(folder, text); } void BookmarksManager::renameBookmark() { QTreeWidgetItem* item = ui->bookmarksTree->currentItem(); if (!item) { return; } ui->bookmarksTree->editItem(item, 0); } void BookmarksManager::changeIcon() { QTreeWidgetItem* item = ui->bookmarksTree->currentItem(); if (!item) { return; } int id = item->data(0, Qt::UserRole + 10).toInt(); QIcon icon; IconChooser chooser(this); icon = chooser.getIcon(); if (!icon.isNull()) { m_bookmarksModel->changeIcon(id, icon); } } void BookmarksManager::itemChanged(QTreeWidgetItem* item) { if (!item || m_isRefreshing || item->text(1).isEmpty()) { return; } QString name = item->text(0); QUrl url = QUrl::fromEncoded(item->text(1).toUtf8()); int id = item->data(0, Qt::UserRole + 10).toInt(); ui->bookmarksTree->deleteItem(item); m_bookmarksModel->editBookmark(id, name, url, QString()); } void BookmarksManager::itemControlClicked(QTreeWidgetItem* item) { if (!item || item->text(1).isEmpty()) { return; } const QUrl url = QUrl::fromEncoded(item->text(1).toUtf8()); getQupZilla()->tabWidget()->addView(url, item->text(0)); } void BookmarksManager::loadInNewTab() { QTreeWidgetItem* item = ui->bookmarksTree->currentItem(); QAction* action = qobject_cast(sender()); if (!item || !action) { return; } getQupZilla()->tabWidget()->addView(action->data().toUrl(), item->text(0), qzSettings->newTabPosition); } void BookmarksManager::deleteItem() { QTreeWidgetItem* item = ui->bookmarksTree->currentItem(); if (!item) { return; } QApplication::setOverrideCursor(Qt::WaitCursor); if (item->text(1).isEmpty()) { // Delete folder QString folder = item->text(0); m_bookmarksModel->removeFolder(folder); QApplication::restoreOverrideCursor(); return; } int id = item->data(0, Qt::UserRole + 10).toInt(); m_bookmarksModel->removeBookmark(id); QApplication::restoreOverrideCursor(); } void BookmarksManager::addBookmark(WebView* view) { insertBookmark(view->url(), view->title(), view->icon()); } void BookmarksManager::moveBookmark() { QTreeWidgetItem* item = ui->bookmarksTree->currentItem(); if (!item) { return; } if (QAction* action = qobject_cast(sender())) { int id = item->data(0, Qt::UserRole + 10).toInt(); m_bookmarksModel->editBookmark(id, item->text(0), QUrl(), action->data().toString()); } } void BookmarksManager::contextMenuRequested(const QPoint &position) { if (!ui->bookmarksTree->itemAt(position)) { return; } QUrl link = ui->bookmarksTree->itemAt(position)->data(0, Qt::UserRole + 11).toUrl(); if (link.isEmpty()) { QString folderName = ui->bookmarksTree->itemAt(position)->text(0); QMenu menu; if (folderName == _bookmarksToolbar) { menu.addAction(tr("Add Subfolder"), this, SLOT(addSubfolder())); menu.addSeparator(); } if (folderName != _bookmarksToolbar && folderName != _bookmarksMenu) { menu.addAction(tr("Rename folder"), this, SLOT(renameFolder())); menu.addAction(tr("Remove folder"), this, SLOT(deleteItem())); } if (menu.actions().count() == 0) { return; } //Prevent choosing first option with double rightclick QPoint pos = ui->bookmarksTree->viewport()->mapToGlobal(position); QPoint p(pos.x(), pos.y() + 1); menu.exec(p); return; } QMenu menu; menu.addAction(tr("Open link in current &tab"), getQupZilla(), SLOT(loadActionUrl()))->setData(link); menu.addAction(tr("Open link in &new tab"), this, SLOT(loadInNewTab()))->setData(link); menu.addSeparator(); QMenu moveMenu; moveMenu.setTitle(tr("Move bookmark to &folder")); moveMenu.addAction(QIcon(":icons/other/unsortedbookmarks.png"), _bookmarksUnsorted, this, SLOT(moveBookmark()))->setData("unsorted"); moveMenu.addAction(style()->standardIcon(QStyle::SP_DirOpenIcon), _bookmarksMenu, this, SLOT(moveBookmark()))->setData("bookmarksMenu"); moveMenu.addAction(style()->standardIcon(QStyle::SP_DirOpenIcon), _bookmarksToolbar, this, SLOT(moveBookmark()))->setData("bookmarksToolbar"); QSqlQuery query; query.exec("SELECT name FROM folders"); while (query.next()) { moveMenu.addAction(style()->standardIcon(QStyle::SP_DirIcon), query.value(0).toString(), this, SLOT(moveBookmark()))->setData(query.value(0).toString()); } menu.addMenu(&moveMenu); menu.addSeparator(); menu.addAction(tr("Change icon"), this, SLOT(changeIcon())); menu.addAction(tr("Rename bookmark"), this, SLOT(renameBookmark())); menu.addAction(tr("Remove bookmark"), this, SLOT(deleteItem())); //Prevent choosing first option with double rightclick QPoint pos = ui->bookmarksTree->viewport()->mapToGlobal(position); QPoint p(pos.x(), pos.y() + 1); menu.exec(p); } void BookmarksManager::refreshTable() { m_isRefreshing = true; ui->bookmarksTree->refreshTree(); m_isRefreshing = false; } void BookmarksManager::addBookmark(const BookmarksModel::Bookmark &bookmark) { m_isRefreshing = true; QString translatedFolder = BookmarksModel::toTranslatedFolder(bookmark.folder); QTreeWidgetItem* item = new QTreeWidgetItem(); item->setText(0, bookmark.title); item->setText(1, bookmark.url.toEncoded()); item->setData(0, Qt::UserRole + 10, bookmark.id); item->setData(0, Qt::UserRole + 11, bookmark.url); item->setIcon(0, qIconProvider->iconFromImage(bookmark.image)); item->setToolTip(0, bookmark.title); item->setToolTip(1, bookmark.url.toEncoded()); item->setFlags(item->flags() | Qt::ItemIsEditable | Qt::ItemIsDragEnabled | Qt::ItemIsDropEnabled); if (bookmark.inSubfolder) { QList list = ui->bookmarksTree->findItems(bookmark.folder, Qt::MatchExactly | Qt::MatchRecursive); if (list.count() != 0) { foreach (QTreeWidgetItem* it, list) { if (it->text(1).isEmpty()) { it->addChild(item); break; } } } } else if (bookmark.folder != QLatin1String("unsorted")) { ui->bookmarksTree->appendToParentItem(translatedFolder, item); } else { ui->bookmarksTree->addTopLevelItem(item); } m_isRefreshing = false; } void BookmarksManager::removeBookmark(const BookmarksModel::Bookmark &bookmark) { m_isRefreshing = true; if (bookmark.inSubfolder) { QList list = ui->bookmarksTree->findItems(bookmark.folder, Qt::MatchExactly | Qt::MatchRecursive); QTreeWidgetItem* subfolderItem = 0; if (list.count() != 0) { foreach (QTreeWidgetItem* it, list) { if (it->text(1).isEmpty()) { subfolderItem = it; break; } } } if (!subfolderItem) { return; } for (int i = 0; i < subfolderItem->childCount(); i++) { QTreeWidgetItem* item = subfolderItem->child(i); if (!item) { continue; } int id = item->data(0, Qt::UserRole + 10).toInt(); if (item->text(0) == bookmark.title && id == bookmark.id) { ui->bookmarksTree->deleteItem(item); return; } } } else if (bookmark.folder == QLatin1String("unsorted")) { QList list = ui->bookmarksTree->findItems(bookmark.title, Qt::MatchExactly); if (list.count() == 0) { return; } QTreeWidgetItem* item = list.at(0); int id = item->data(0, Qt::UserRole + 10).toInt(); if (id == bookmark.id) { ui->bookmarksTree->deleteItem(item); } } else { QList list = ui->bookmarksTree->findItems(BookmarksModel::toTranslatedFolder(bookmark.folder), Qt::MatchExactly); if (list.count() == 0) { return; } QTreeWidgetItem* parentItem = list.at(0); if (!parentItem) { return; } for (int i = 0; i < parentItem->childCount(); i++) { QTreeWidgetItem* item = parentItem->child(i); if (!item) { continue; } int id = item->data(0, Qt::UserRole + 10).toInt(); if (item->text(0) == bookmark.title && id == bookmark.id) { ui->bookmarksTree->deleteItem(item); return; } } } m_isRefreshing = false; } void BookmarksManager::bookmarkEdited(const BookmarksModel::Bookmark &before, const BookmarksModel::Bookmark &after) { removeBookmark(before); addBookmark(after); } void BookmarksManager::changeBookmarkParent(const QString &name, const QByteArray &, int id, const QUrl &, const QString &, const QString &newParent) { QList list = ui->bookmarksTree->findItems(name, Qt::MatchExactly | Qt::MatchRecursive); QTreeWidgetItem* item = 0; foreach (item, list) { if (id == item->data(0, Qt::UserRole + 10).toInt()) { break; } } if (!item || id != item->data(0, Qt::UserRole + 10).toInt()) { return; } item->parent() ? item->parent()->removeChild(item) : ui->bookmarksTree->invisibleRootItem()->removeChild(item); QTreeWidgetItem* parent = 0; if (newParent.isEmpty() || newParent == QLatin1String("unsorted")) { parent = ui->bookmarksTree->invisibleRootItem(); } if (!parent) { list = ui->bookmarksTree->findItems(newParent, Qt::MatchExactly | Qt::MatchRecursive); if (list.count() == 0) { return; } parent = list.at(0); if (!parent) { return; } } parent->addChild(item); } void BookmarksManager::changeFolderParent(const QString &name, bool isSubfolder) { QList list = ui->bookmarksTree->findItems(name, Qt::MatchExactly | Qt::MatchRecursive); if (list.count() == 0) { return; } QTreeWidgetItem* item = list.at(0); if (!item) { return; } item->parent() ? item->parent()->removeChild(item) : ui->bookmarksTree->invisibleRootItem()->removeChild(item); QTreeWidgetItem* parent = 0; if (isSubfolder) { list = ui->bookmarksTree->findItems(_bookmarksToolbar, Qt::MatchExactly); if (!list.isEmpty() && list.at(0)) { parent = list.at(0); } } else { parent = ui->bookmarksTree->invisibleRootItem(); } if (!parent) { return; } parent->addChild(item); } void BookmarksManager::addFolder(const QString &name) { m_isRefreshing = true; QTreeWidgetItem* item = new QTreeWidgetItem(ui->bookmarksTree); item->setText(0, name); item->setIcon(0, style()->standardIcon(QStyle::SP_DirIcon)); if (name != _bookmarksToolbar && name != _bookmarksMenu) { item->setFlags(item->flags() | Qt::ItemIsDragEnabled | Qt::ItemIsDropEnabled); } else { item->setFlags((item->flags() & ~Qt::ItemIsDragEnabled) | Qt::ItemIsDropEnabled); } m_isRefreshing = false; } void BookmarksManager::addSubfolder(const QString &name) { m_isRefreshing = true; QList list = ui->bookmarksTree->findItems(_bookmarksToolbar, Qt::MatchExactly); if (list.count() != 0) { QTreeWidgetItem* item = new QTreeWidgetItem(list.at(0)); item->setText(0, name); item->setIcon(0, style()->standardIcon(QStyle::SP_DirIcon)); item->setFlags(item->flags() | Qt::ItemIsDragEnabled | Qt::ItemIsDropEnabled); } m_isRefreshing = false; } void BookmarksManager::removeFolder(const QString &name) { QList list = ui->bookmarksTree->findItems(name, Qt::MatchExactly | Qt::MatchRecursive); if (list.count() == 0) { return; } QTreeWidgetItem* folderItem = 0; if (list.count() != 0) { foreach (QTreeWidgetItem* it, list) { if (it->text(1).isEmpty()) { folderItem = it; break; } } } if (!folderItem) { return; } ui->bookmarksTree->deleteItem(folderItem); } void BookmarksManager::renameFolder(const QString &before, const QString &after) { QList list = ui->bookmarksTree->findItems(before, Qt::MatchExactly | Qt::MatchRecursive); if (list.count() == 0) { return; } QTreeWidgetItem* folderItem = 0; if (list.count() != 0) { foreach (QTreeWidgetItem* it, list) { if (it->text(0) == before && it->text(1).isEmpty()) { folderItem = it; break; } } } if (!folderItem) { return; } folderItem->setText(0, after); } void BookmarksManager::insertBookmark(const QUrl &url, const QString &title, const QIcon &icon, const QString &folder) { if (url.isEmpty() || title.isEmpty()) { return; } QDialog* dialog = new QDialog(getQupZilla()); QBoxLayout* layout = new QBoxLayout(QBoxLayout::TopToBottom, dialog); QLabel* label = new QLabel(dialog); QLineEdit* edit = new QLineEdit(dialog); QComboBox* combo = new QComboBox(dialog); BookmarksTree* bookmarksTree = new BookmarksTree(dialog); connect(bookmarksTree, SIGNAL(requestNewFolder(QWidget*,QString*,bool,QString,WebView*)), this, SLOT(addFolder(QWidget*,QString*,bool,QString,WebView*))); bookmarksTree->setViewType(BookmarksTree::ComboFolderView); bookmarksTree->header()->hide(); bookmarksTree->setColumnCount(1); combo->setModel(bookmarksTree->model()); combo->setView(bookmarksTree); bookmarksTree->refreshTree(); QDialogButtonBox* box = new QDialogButtonBox(dialog); box->addButton(QDialogButtonBox::Ok); box->addButton(QDialogButtonBox::Cancel); connect(box, SIGNAL(rejected()), dialog, SLOT(reject())); connect(box, SIGNAL(accepted()), dialog, SLOT(accept())); layout->addWidget(label); layout->addWidget(edit); layout->addWidget(combo); if (m_bookmarksModel->isBookmarked(url)) { layout->addWidget(new QLabel(tr("Warning: You already have bookmarked this page!"))); } layout->addWidget(box); int index = combo->findText(BookmarksModel::toTranslatedFolder(folder.isEmpty() ? m_bookmarksModel->lastFolder() : folder)); // QComboBox::find() returns index related to the item's parent if (index == -1) { // subfolder QModelIndex rootIndex = combo->rootModelIndex(); combo->setRootModelIndex(combo->model()->index(combo->findText(_bookmarksToolbar), 0)); index = combo->findText(BookmarksModel::toTranslatedFolder(folder.isEmpty() ? m_bookmarksModel->lastFolder() : folder)); combo->setCurrentIndex(index); combo->setRootModelIndex(rootIndex); } else { combo->setCurrentIndex(index); } connect(combo, SIGNAL(currentIndexChanged(int)), bookmarksTree, SLOT(activeItemChange(int))); label->setText(tr("Choose name and location of this bookmark.")); edit->setText(title); edit->setCursorPosition(0); dialog->setWindowIcon(_iconForUrl(url)); dialog->setWindowTitle(tr("Add New Bookmark")); QSize size = dialog->size(); size.setWidth(350); dialog->resize(size); dialog->exec(); if (dialog->result() == QDialog::Rejected) { delete dialog; return; } if (edit->text().isEmpty()) { delete dialog; return; } m_bookmarksModel->saveBookmark(url, edit->text(), icon, BookmarksModel::fromTranslatedFolder(combo->currentText())); delete dialog; } void BookmarksManager::insertAllTabs() { QDialog* dialog = new QDialog(getQupZilla()); QBoxLayout* layout = new QBoxLayout(QBoxLayout::TopToBottom, dialog); QLabel* label = new QLabel(dialog); QComboBox* combo = new QComboBox(dialog); BookmarksTree* bookmarksTree = new BookmarksTree(dialog); connect(bookmarksTree, SIGNAL(requestNewFolder(QWidget*,QString*,bool,QString,WebView*)), this, SLOT(addFolder(QWidget*,QString*,bool,QString,WebView*))); bookmarksTree->setViewType(BookmarksTree::ComboFolderView); bookmarksTree->header()->hide(); bookmarksTree->setColumnCount(1); combo->setModel(bookmarksTree->model()); combo->setView(bookmarksTree); QDialogButtonBox* box = new QDialogButtonBox(dialog); box->addButton(QDialogButtonBox::Ok); box->addButton(QDialogButtonBox::Cancel); connect(box, SIGNAL(rejected()), dialog, SLOT(reject())); connect(box, SIGNAL(accepted()), dialog, SLOT(accept())); layout->addWidget(label); layout->addWidget(combo); layout->addWidget(box); bookmarksTree->refreshTree(); int index = combo->findText(BookmarksModel::toTranslatedFolder(m_bookmarksModel->lastFolder())); // QComboBox::find() returns index related to the item's parent if (index == -1) { // subfolder QModelIndex rootIndex = combo->rootModelIndex(); combo->setRootModelIndex(combo->model()->index(combo->findText(_bookmarksToolbar), 0)); index = combo->findText(BookmarksModel::toTranslatedFolder(m_bookmarksModel->lastFolder())); combo->setCurrentIndex(index); combo->setRootModelIndex(rootIndex); } else { combo->setCurrentIndex(index); } connect(combo, SIGNAL(currentIndexChanged(int)), bookmarksTree, SLOT(activeItemChange(int))); label->setText(tr("Choose folder for bookmarks:")); dialog->setWindowTitle(tr("Bookmark All Tabs")); QSize size = dialog->size(); size.setWidth(350); dialog->resize(size); dialog->exec(); if (dialog->result() == QDialog::Rejected) { return; } foreach (WebTab* tab, getQupZilla()->tabWidget()->allTabs(false)) { if (tab->url().isEmpty()) { continue; } m_bookmarksModel->saveBookmark(tab->url(), tab->title(), tab->icon(), BookmarksModel::fromTranslatedFolder(combo->currentText())); } delete dialog; } BookmarksManager::~BookmarksManager() { delete ui; } qupzilla-1.6.0/src/lib/bookmarks/bookmarksmanager.h000066400000000000000000000057501226107126500224110ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef BOOKMARKSMANAGER_H #define BOOKMARKSMANAGER_H #include #include #include "bookmarksmodel.h" #include "qz_namespace.h" namespace Ui { class BookmarksManager; } class QTreeWidgetItem; class WebView; class QupZilla; class BookmarksModel; class QT_QUPZILLA_EXPORT BookmarksManager : public QWidget { Q_OBJECT public: explicit BookmarksManager(QupZilla* mainClass, QWidget* parent = 0); ~BookmarksManager(); void addBookmark(WebView* view); void insertBookmark(const QUrl &url, const QString &title, const QIcon &icon, const QString &folder = QString()); void setMainWindow(QupZilla* window); void search(const QString &string); public slots: void refreshTable(); void insertAllTabs(); private slots: void deleteItem(); void itemChanged(QTreeWidgetItem* item); void addSubfolder(); void addFolder(QWidget* parent = 0, QString* folder = 0, bool showInsertDialog = false, const QString &bookmarkTitle = QString(), WebView* = 0); void renameFolder(); void contextMenuRequested(const QPoint &position); void loadInNewTab(); void itemControlClicked(QTreeWidgetItem* item); void moveBookmark(); void renameBookmark(); void changeIcon(); void importBookmarks(); void exportBookmarks(); void addFolder(const QString &name); void addSubfolder(const QString &name); void removeFolder(const QString &name); void renameFolder(const QString &before, const QString &after); void addBookmark(const BookmarksModel::Bookmark &bookmark); void removeBookmark(const BookmarksModel::Bookmark &bookmark); void bookmarkEdited(const BookmarksModel::Bookmark &before, const BookmarksModel::Bookmark &after); void changeBookmarkParent(const QString &name, const QByteArray &, int id, const QUrl &, const QString &, const QString &newParent); void changeFolderParent(const QString &name, bool isSubfolder); private: QupZilla* getQupZilla(); bool m_isRefreshing; Ui::BookmarksManager* ui; QPointer p_QupZilla; BookmarksModel* m_bookmarksModel; }; #endif // BOOKMARKSMANAGER_H qupzilla-1.6.0/src/lib/bookmarks/bookmarksmanager.ui000066400000000000000000000050551226107126500225750ustar00rootroot00000000000000 BookmarksManager 0 0 689 467 Bookmarks Add Folder Collapse All Qt::Horizontal 40 20 Qt::CustomContextMenu true QAbstractItemView::ContiguousSelection true 330 Title Url Expand All Import and Export QToolButton::InstantPopup BookmarksTree QTreeWidget
bookmarkstree.h
qupzilla-1.6.0/src/lib/bookmarks/bookmarksmodel.cpp000066400000000000000000000461651226107126500224370ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "bookmarksmodel.h" #include "tabbedwebview.h" #include "iconprovider.h" #include "databasewriter.h" #include "mainapplication.h" #include "settings.h" #include #include #include #include // SQLite DB -> table bookmarks + folders // Unique in bookmarks table is id // However from bookmark icon, it is not possible to add more than one bookmark // Only from Ctrl+D dialog it is possible BookmarksModel::BookmarksModel(QObject* parent) : QObject(parent) { loadSettings(); } void BookmarksModel::loadSettings() { Settings settings; settings.beginGroup("Bookmarks"); m_showMostVisited = settings.value("showMostVisited", true).toBool(); m_showOnlyIconsInToolbar = settings.value("showOnlyIconsInToolbar", false).toBool(); m_lastFolder = settings.value("LastFolder", "unsorted").toString(); settings.endGroup(); } void BookmarksModel::setShowingMostVisited(bool state) { Settings settings; settings.beginGroup("Bookmarks"); settings.setValue("showMostVisited", state); settings.endGroup(); m_showMostVisited = state; } void BookmarksModel::setShowingOnlyIconsInToolbar(bool state) { Settings settings; settings.beginGroup("Bookmarks"); settings.setValue("showOnlyIconsInToolbar", state); settings.endGroup(); m_showOnlyIconsInToolbar = state; } bool BookmarksModel::isFolder(const QString &name) { if (name == QLatin1String("bookmarksToolbar") || name == QLatin1String("bookmarksMenu") || name == QLatin1String("unsorted") || name == _bookmarksToolbar || name == _bookmarksMenu || name == _bookmarksUnsorted) { return true; } QSqlQuery query; query.prepare("SELECT name FROM folders WHERE name = ?"); query.bindValue(0, name); query.exec(); return query.next(); } void BookmarksModel::setLastFolder(const QString &folder) { Settings settings; settings.beginGroup("Bookmarks"); settings.setValue("lastFolder", folder); settings.endGroup(); m_lastFolder = folder; } bool BookmarksModel::isBookmarked(const QUrl &url) { QSqlQuery query; query.prepare("SELECT count(id) FROM bookmarks WHERE url=?"); query.bindValue(0, url.toString()); query.exec(); query.next(); return query.value(0).toInt() > 0; } // Bookmark search priority: // Bookmarks in menu > bookmarks in toolbar -> user folders and unsorted int BookmarksModel::bookmarkId(const QUrl &url) { QSqlQuery query; query.prepare("SELECT id FROM bookmarks WHERE url=? AND folder='bookmarksMenu' "); query.bindValue(0, url.toString()); query.exec(); if (query.next()) { return query.value(0).toInt(); } query.prepare("SELECT id FROM bookmarks WHERE url=? AND folder='bookmarksToolbar' "); query.bindValue(0, url.toString()); query.exec(); if (query.next()) { return query.value(0).toInt(); } query.prepare("SELECT id FROM bookmarks WHERE url=? "); query.bindValue(0, url.toString()); query.exec(); if (query.next()) { return query.value(0).toInt(); } return -1; } int BookmarksModel::bookmarkId(const QUrl &url, const QString &title, const QString &folder) { QSqlQuery query; query.prepare("SELECT id FROM bookmarks WHERE url=? AND title=? AND folder=? "); query.bindValue(0, url.toString()); query.bindValue(1, title); query.bindValue(2, folder); query.exec(); if (query.next()) { return query.value(0).toInt(); } return -1; } BookmarksModel::Bookmark BookmarksModel::getBookmark(int id) { Bookmark bookmark; QSqlQuery query; query.prepare("SELECT url, title, folder, icon FROM bookmarks WHERE id=?"); query.bindValue(0, id); query.exec(); if (query.next()) { bookmark.id = id; bookmark.url = query.value(0).toUrl(); bookmark.title = query.value(1).toString(); bookmark.folder = query.value(2).toString(); bookmark.image = QImage::fromData(query.value(3).toByteArray()); bookmark.inSubfolder = isSubfolder(bookmark.folder); } return bookmark; } bool BookmarksModel::saveBookmark(const QUrl &url, const QString &title, const QIcon &icon, const QString &folder) { if (url.isEmpty() || title.isEmpty() || folder.isEmpty()) { return false; } QImage image = icon.pixmap(16, 16).toImage(); if (image.isNull()) { image = qIconProvider->emptyWebImage(); } // createFolder() calls isFolder() createFolder(folder); QSqlQuery query; query.prepare("INSERT INTO bookmarks (url, title, folder, icon) VALUES (?,?,?,?)"); query.bindValue(0, url.toString()); query.bindValue(1, title); query.bindValue(2, folder); QByteArray ba; QBuffer buffer(&ba); buffer.open(QIODevice::WriteOnly); image.save(&buffer, "PNG"); query.bindValue(3, buffer.data()); query.exec(); Bookmark bookmark; bookmark.id = query.lastInsertId().toInt(); bookmark.url = url; bookmark.title = title; bookmark.folder = folder; bookmark.image = image; bookmark.inSubfolder = isSubfolder(bookmark.folder); setLastFolder(folder); emit bookmarkAdded(bookmark); mApp->sendMessages(Qz::AM_BookmarksChanged, true); return true; } bool BookmarksModel::saveBookmark(WebView* view, QString folder) { if (folder.isEmpty()) { folder = m_lastFolder; } return saveBookmark(view->url(), view->title(), view->icon(), folder); } void BookmarksModel::removeBookmark(int id) { QList list; list.append(id); return removeBookmark(list); } void BookmarksModel::removeBookmark(const QList list) { QSqlDatabase db = QSqlDatabase::database(); db.transaction(); foreach (int id, list) { QSqlQuery query; query.prepare("SELECT url, title, folder FROM bookmarks WHERE id = ?"); query.bindValue(0, id); query.exec(); if (!query.next()) { continue; } Bookmark bookmark; bookmark.id = id; bookmark.url = query.value(0).toUrl(); bookmark.title = query.value(1).toString(); bookmark.folder = query.value(2).toString(); bookmark.image = QImage::fromData(query.value(3).toByteArray()); bookmark.inSubfolder = isSubfolder(bookmark.folder); query.prepare("DELETE FROM bookmarks WHERE id=?"); query.addBindValue(id); query.exec(); if (!query.exec()) { continue; } emit bookmarkDeleted(bookmark); } db.commit(); mApp->sendMessages(Qz::AM_BookmarksChanged, true); } void BookmarksModel::removeBookmark(const QUrl &url) { removeBookmark(bookmarkId(url)); } void BookmarksModel::removeBookmark(WebView* view) { removeBookmark(bookmarkId(view->url())); } //bool BookmarksModel::editBookmark(int id, const QString &title, const QString &folder) //{ // QSqlQuery query; // query.prepare("UPDATE bookmarks SET title=?, folder=? WHERE id=?"); // query.bindValue(0, title); // query.bindValue(1, folder); // query.bindValue(2, id); // return query.exec(); //} //bool BookmarksModel::editBookmark(int id, const QUrl &url, const QString &title) //{ // QSqlQuery query; // query.prepare("UPDATE bookmarks SET title=?, url=? WHERE id=?"); // query.bindValue(0, title); // query.bindValue(1, url.toString()); // query.bindValue(2, id); // return query.exec(); //} bool BookmarksModel::editBookmark(int id, const QString &title, const QUrl &url, const QString &folder) { if (title.isEmpty() && url.isEmpty() && folder.isEmpty()) { return false; } QSqlQuery query; query.prepare("SELECT title, url, folder, icon FROM bookmarks WHERE id=?"); query.addBindValue(id); query.exec(); if (!query.next()) { return false; } Bookmark before; before.id = id; before.title = query.value(0).toString(); before.url = query.value(1).toUrl(); before.folder = query.value(2).toString(); before.image = QImage::fromData(query.value(3).toByteArray()); before.inSubfolder = isSubfolder(before.folder); Bookmark after; after.id = id; after.title = title.isEmpty() ? before.title : title; after.url = url.isEmpty() ? before.url : url; after.folder = folder.isEmpty() ? before.folder : folder; after.image = before.image; after.inSubfolder = isSubfolder(after.folder); query.prepare("UPDATE bookmarks SET title=?, url=?, folder=? WHERE id = ?"); query.bindValue(0, after.title); query.bindValue(1, after.url.toString()); query.bindValue(2, after.folder); query.bindValue(3, id); if (!query.exec()) { return false; } emit bookmarkEdited(before, after); mApp->sendMessages(Qz::AM_BookmarksChanged, true); return true; } bool BookmarksModel::changeIcon(int id, const QIcon &icon) { QSqlQuery query; query.prepare("SELECT title, url, folder, icon FROM bookmarks WHERE id=?"); query.addBindValue(id); query.exec(); if (!query.next()) { return false; } Bookmark before; before.id = id; before.title = query.value(0).toString(); before.url = query.value(1).toUrl(); before.folder = query.value(2).toString(); before.image = QImage::fromData(query.value(3).toByteArray()); before.inSubfolder = isSubfolder(before.folder); Bookmark after = before; after.image = icon.pixmap(16).toImage(); query.prepare("UPDATE bookmarks SET icon = ? WHERE id = ?"); QByteArray ba; QBuffer buffer(&ba); buffer.open(QIODevice::WriteOnly); after.image.save(&buffer, "PNG"); query.bindValue(0, buffer.data()); query.bindValue(1, id); if (!query.exec()) { return false; } emit bookmarkEdited(before, after); mApp->sendMessages(Qz::AM_BookmarksChanged, true); return true; } bool BookmarksModel::createFolder(const QString &name) { if (isFolder(name)) { return false; } QSqlQuery query; query.prepare("INSERT INTO folders (name, subfolder) VALUES (?, 'no')"); query.bindValue(0, name); if (!query.exec()) { return false; } emit folderAdded(name); mApp->sendMessages(Qz::AM_BookmarksChanged, true); return true; } void BookmarksModel::removeFolder(const QString &name) { if (name == _bookmarksMenu || name == _bookmarksToolbar) { return; } QSqlQuery query; query.prepare("SELECT id FROM bookmarks WHERE folder = ? "); query.bindValue(0, name); if (!query.exec()) { return; } QList list; while (query.next()) { list.append(query.value(0).toInt()); } removeBookmark(list); query.prepare("DELETE FROM folders WHERE name=?"); query.bindValue(0, name); query.exec(); if (name == m_lastFolder) { setLastFolder("unsorted"); } emit folderDeleted(name); mApp->sendMessages(Qz::AM_BookmarksChanged, true); } bool BookmarksModel::renameFolder(const QString &before, const QString &after) { QSqlQuery query; query.prepare("SELECT name FROM folders WHERE name = ?"); query.bindValue(0, after); query.exec(); if (query.next()) { return false; } query.prepare("UPDATE folders SET name=? WHERE name=?"); query.bindValue(0, after); query.bindValue(1, before); if (!query.exec()) { return false; } query.prepare("UPDATE bookmarks SET folder=? WHERE folder=?"); query.bindValue(0, after); query.bindValue(1, before); if (!query.exec()) { return false; } emit folderRenamed(before, after); return true; } void BookmarksModel::exportToHtml(const QString &fileName) { QFile file(fileName); if (!file.open(QFile::WriteOnly | QFile::Truncate)) { qWarning() << "BookmarksModel::exportHtml Cannot open file for writing!" << file.errorString(); } QTextStream out(&file); out << "" << endl; out << "" << endl; out << "" << endl; out << "Bookmarks" << endl; out << "

Bookmarks

" << endl; out << "

" << endl; QString indent = " "; QList > allFolders; QPair menu; menu.first = "bookmarksMenu"; menu.second = false; QPair toolbar; toolbar.first = "bookmarksToolbar"; toolbar.second = false; allFolders.append(menu); allFolders.append(toolbar); QSqlQuery query; query.exec("SELECT name, subfolder FROM folders"); while (query.next()) { QPair pair; pair.first = query.value(0).toString(); pair.second = query.value(1).toString() == QLatin1String("yes"); allFolders.append(pair); } for (int i = 0; i < allFolders.size(); ++i) { QPair pair = allFolders.at(i); out << indent << "

" << pair.first << "

" << endl; out << indent << "

" << endl; QSqlQuery q; q.prepare("SELECT title, url FROM bookmarks WHERE folder = ?"); q.addBindValue(pair.first); q.exec(); while (q.next()) { QString title = q.value(0).toString(); QString url = q.value(1).toString(); out << indent << indent << "

" << title << "" << endl; } out << indent << "

" << endl; } query.exec("SELECT title, url FROM bookmarks WHERE folder='' OR folder='unsorted'"); while (query.next()) { QString title = query.value(0).toString(); QString url = query.value(1).toString(); out << indent << "

" << title << "" << endl; } out << "

" << endl; } QVector BookmarksModel::folderBookmarks(const QString &name) { QVector list; QSqlQuery query; query.prepare("SELECT id, url, title, folder, icon FROM bookmarks WHERE folder=?"); query.addBindValue(name); query.exec(); while (query.next()) { Bookmark bookmark; bookmark.id = query.value(0).toInt(); bookmark.url = query.value(1).toUrl(); bookmark.title = query.value(2).toString(); bookmark.folder = query.value(3).toString(); bookmark.image = QImage::fromData(query.value(4).toByteArray()); bookmark.inSubfolder = isSubfolder(bookmark.folder); list.append(bookmark); } return list; } bool BookmarksModel::createSubfolder(const QString &name) { if (isFolder(name)) { return false; } QSqlQuery query; query.prepare("INSERT INTO folders (name, subfolder) VALUES (?, 'yes')"); query.bindValue(0, name); if (!query.exec()) { return false; } emit subfolderAdded(name); mApp->sendMessages(Qz::AM_BookmarksChanged, true); return true; } bool BookmarksModel::isSubfolder(const QString &name) { QSqlQuery query; query.prepare("SELECT subfolder FROM folders WHERE name = ?"); query.bindValue(0, name); query.exec(); if (!query.next()) { return false; } return query.value(0).toString() == QLatin1String("yes"); } bool BookmarksModel::bookmarksEqual(const Bookmark &one, const Bookmark &two) { if (one.id != two.id) { return false; } if (one.title != two.title) { return false; } if (one.folder != two.folder) { return false; } if (one.url != two.url) { return false; } return true; } QString BookmarksModel::toTranslatedFolder(const QString &name) { QString trFolder; if (name == QLatin1String("bookmarksMenu")) { trFolder = tr("Bookmarks In Menu"); } else if (name == QLatin1String("bookmarksToolbar")) { trFolder = tr("Bookmarks In ToolBar"); } else if (name == QLatin1String("unsorted")) { trFolder = tr("Unsorted Bookmarks"); } else { trFolder = name; } return trFolder; } QString BookmarksModel::fromTranslatedFolder(const QString &name) { QString folder; if (name == tr("Bookmarks In Menu")) { folder = "bookmarksMenu"; } else if (name == tr("Bookmarks In ToolBar")) { folder = "bookmarksToolbar"; } else if (name == tr("Unsorted Bookmarks")) { folder = "unsorted"; } else { folder = name; } return folder; } void BookmarksModel::changeBookmarkParent(int id, const QString &newParent, const QString &oldParent, bool* ok) { QSqlQuery query; query.prepare("SELECT title, url, icon FROM bookmarks WHERE id=?"); query.addBindValue(id); query.exec(); if (!query.next()) { if (ok) { *ok = false; } return; } QString title = query.value(0).toString(); QUrl url = query.value(1).toUrl(); QByteArray imageData = query.value(2).toByteArray(); query.prepare("UPDATE bookmarks SET folder = ? WHERE id = ?"); query.bindValue(0, BookmarksModel::fromTranslatedFolder(newParent)); query.bindValue(1, id); if (!query.exec()) { if (ok) { *ok = false; } return; } emit bookmarkParentChanged(title, imageData, id, url, oldParent, newParent); mApp->sendMessages(Qz::AM_BookmarksChanged, true); if (ok) { *ok = true; } } void BookmarksModel::changeFolderParent(const QString &name, bool isSubfolder, bool* ok) { if (name.isEmpty()) { return; } QSqlQuery query; query.prepare("UPDATE folders SET subfolder=? WHERE name=?"); query.bindValue(0, isSubfolder ? "yes" : "no"); query.bindValue(1, BookmarksModel::fromTranslatedFolder(name)); if (!query.exec()) { if (ok) { *ok = false; } return; } emit folderParentChanged(name, isSubfolder); mApp->sendMessages(Qz::AM_BookmarksChanged, true); if (ok) { *ok = true; } } void BookmarksModel::bookmarkDropedLink(const QUrl &url, const QString &title, const QVariant &imageVariant, const QString &folder, bool* ok) { QIcon icon = qIconProvider->iconFromImage(qvariant_cast(imageVariant)); bool result = saveBookmark(url, title, icon, BookmarksModel::fromTranslatedFolder(folder)); if (ok) { *ok = result; } } qupzilla-1.6.0/src/lib/bookmarks/bookmarksmodel.h000066400000000000000000000116201226107126500220700ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef BOOKMARKSMODEL_H #define BOOKMARKSMODEL_H #define _bookmarksToolbar BookmarksModel::toTranslatedFolder("bookmarksToolbar") #define _bookmarksMenu BookmarksModel::toTranslatedFolder("bookmarksMenu") #define _bookmarksUnsorted BookmarksModel::toTranslatedFolder("unsorted") #include #include #include #include #include "qz_namespace.h" class QIcon; class WebView; class QT_QUPZILLA_EXPORT BookmarksModel : public QObject { Q_OBJECT public: explicit BookmarksModel(QObject* parent = 0); struct Bookmark { int id; QString title; QString folder; QUrl url; QImage image; bool inSubfolder; Bookmark() { id = -1; inSubfolder = false; } bool operator==(const Bookmark &other) const { return (this->title == other.title && this->folder == other.folder && this->url == other.url && this->inSubfolder == other.inSubfolder); } }; void loadSettings(); bool isShowingMostVisited() { return m_showMostVisited; } void setShowingMostVisited(bool state); bool isShowingOnlyIconsInToolbar() { return m_showOnlyIconsInToolbar; } void setShowingOnlyIconsInToolbar(bool state); bool isFolder(const QString &name); QString lastFolder() { return m_lastFolder; } void setLastFolder(const QString &folder); bool isBookmarked(const QUrl &url); int bookmarkId(const QUrl &url); int bookmarkId(const QUrl &url, const QString &title, const QString &folder); Bookmark getBookmark(int id); bool saveBookmark(const QUrl &url, const QString &title, const QIcon &icon, const QString &folder = "unsorted"); bool saveBookmark(WebView* view, QString folder = QString()); void removeBookmark(const QUrl &url); void removeBookmark(WebView* view); void removeBookmark(int id); void removeBookmark(const QList list); bool editBookmark(int id, const QString &title = QString(), const QUrl &url = QUrl(), const QString &folder = QString()); bool changeIcon(int id, const QIcon &icon); bool createFolder(const QString &name); void removeFolder(const QString &name); QVector folderBookmarks(const QString &name); bool createSubfolder(const QString &name); bool isSubfolder(const QString &name); bool renameFolder(const QString &before, const QString &after); void exportToHtml(const QString &fileName); static bool bookmarksEqual(const Bookmark &one, const Bookmark &two); static QString toTranslatedFolder(const QString &name); static QString fromTranslatedFolder(const QString &name); signals: void bookmarkAdded(const BookmarksModel::Bookmark &bookmark); void bookmarkDeleted(const BookmarksModel::Bookmark &bookmark); void bookmarkEdited(const BookmarksModel::Bookmark &before, const BookmarksModel::Bookmark &after); void bookmarkParentChanged(const QString &name, const QByteArray &imageData, int id, const QUrl &url, const QString &oldParent, const QString &newParent); void folderAdded(const QString &title); void folderDeleted(const QString &title); void subfolderAdded(const QString &title); void folderRenamed(const QString &before, const QString &after); void folderParentChanged(const QString &name, bool isSubfolder); public slots: void bookmarkDropedLink(const QUrl &url, const QString &title, const QVariant &imageVariant, const QString &folder = QLatin1String("unsorted"), bool* ok = 0); void changeBookmarkParent(int id, const QString &newParent, const QString &oldParent, bool* ok = 0); void changeFolderParent(const QString &name, bool isSubfolder, bool* ok = 0); private: bool m_showMostVisited; bool m_showOnlyIconsInToolbar; QString m_lastFolder; }; typedef BookmarksModel::Bookmark Bookmark; // Hint to QVector to use std::realloc on item moving Q_DECLARE_TYPEINFO(Bookmark, Q_MOVABLE_TYPE); Q_DECLARE_METATYPE(Bookmark) #endif // BOOKMARKSMODEL_H qupzilla-1.6.0/src/lib/bookmarks/bookmarkstoolbar.cpp000066400000000000000000000552021226107126500227710ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "bookmarkstoolbar.h" #include "qupzilla.h" #include "mainapplication.h" #include "bookmarksmodel.h" #include "iconprovider.h" #include "history.h" #include "toolbutton.h" #include "databasewriter.h" #include "enhancedmenu.h" #include "tabwidget.h" #include #include #include #include #include #include #include #include #include BookmarksToolbar::BookmarksToolbar(QupZilla* mainClass, QWidget* parent) : QWidget(parent) , p_QupZilla(mainClass) , m_bookmarksModel(mApp->bookmarksModel()) , m_historyModel(mApp->history()) , m_toolButtonStyle(Qt::ToolButtonTextBesideIcon) { setObjectName("bookmarksbar"); m_layout = new QHBoxLayout(); m_layout->setMargin(3); m_layout->setSpacing(0); setLayout(m_layout); setAcceptDrops(true); setContextMenuPolicy(Qt::CustomContextMenu); connect(this, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(customContextMenuRequested(QPoint))); connect(m_bookmarksModel, SIGNAL(bookmarkAdded(BookmarksModel::Bookmark)), this, SLOT(addBookmark(BookmarksModel::Bookmark))); connect(m_bookmarksModel, SIGNAL(bookmarkDeleted(BookmarksModel::Bookmark)), this, SLOT(removeBookmark(BookmarksModel::Bookmark))); connect(m_bookmarksModel, SIGNAL(bookmarkEdited(BookmarksModel::Bookmark,BookmarksModel::Bookmark)), this, SLOT(bookmarkEdited(BookmarksModel::Bookmark,BookmarksModel::Bookmark))); connect(m_bookmarksModel, SIGNAL(subfolderAdded(QString)), this, SLOT(subfolderAdded(QString))); connect(m_bookmarksModel, SIGNAL(folderDeleted(QString)), this, SLOT(folderDeleted(QString))); connect(m_bookmarksModel, SIGNAL(folderRenamed(QString,QString)), this, SLOT(folderRenamed(QString,QString))); connect(m_bookmarksModel, SIGNAL(folderParentChanged(QString,bool)), this, SLOT(changeFolderParent(QString,bool))); connect(m_bookmarksModel, SIGNAL(bookmarkParentChanged(QString,QByteArray,int,QUrl,QString,QString)), this, SLOT(changeBookmarkParent(QString,QByteArray,int,QUrl,QString,QString))); setMaximumWidth(p_QupZilla->width()); refreshBookmarks(); showOnlyIconsChanged(); } void BookmarksToolbar::customContextMenuRequested(const QPoint &pos) { Q_UNUSED(pos) QMenu menu; menu.addAction(tr("&Bookmark Current Page"), p_QupZilla, SLOT(bookmarkPage())); menu.addAction(tr("Bookmark &All Tabs"), p_QupZilla, SLOT(bookmarkAllTabs())); menu.addAction(qIconProvider->fromTheme("bookmarks-organize"), tr("&Organize Bookmarks"), p_QupZilla, SLOT(showBookmarksManager())); menu.addSeparator(); QAction act(tr("Show Most &Visited"), this); act.setCheckable(true); act.setChecked(m_bookmarksModel->isShowingMostVisited()); connect(&act, SIGNAL(triggered()), this, SLOT(showMostVisited())); menu.addAction(&act); QAction act2(tr("Show Only Icons"), this); act2.setCheckable(true); act2.setChecked(m_bookmarksModel->isShowingOnlyIconsInToolbar()); connect(&act2, SIGNAL(triggered()), this, SLOT(toggleShowOnlyIcons())); menu.addAction(&act2); menu.addSeparator(); menu.addAction(tr("&Hide Toolbar"), this, SLOT(hidePanel())); //Prevent choosing first option with double rightclick QPoint position = mapToGlobal(pos); QPoint p(position.x(), position.y() + 1); menu.exec(p); } void BookmarksToolbar::showBookmarkContextMenu(const QPoint &pos) { Q_UNUSED(pos) ToolButton* button = qobject_cast(sender()); if (!button) { return; } QVariant buttonPointer = QVariant::fromValue((void*) button); QMenu menu; menu.addAction(tr("Open bookmark"), this, SLOT(loadClickedBookmark()))->setData(buttonPointer); menu.addAction(tr("Open bookmark in new tab"), this, SLOT(loadClickedBookmarkInNewTab()))->setData(buttonPointer); menu.addSeparator(); // in RTL layouts we should reverse Move Right/Left if (!isRightToLeft()) { menu.addAction(qIconProvider->fromTheme("go-next"), tr("Move right"), this, SLOT(moveRight()))->setData(buttonPointer); menu.addAction(qIconProvider->fromTheme("go-previous"), tr("Move left"), this, SLOT(moveLeft()))->setData(buttonPointer); } else { menu.addAction(qIconProvider->fromTheme("go-next"), tr("Move right"), this, SLOT(moveLeft()))->setData(buttonPointer); menu.addAction(qIconProvider->fromTheme("go-previous"), tr("Move left"), this, SLOT(moveRight()))->setData(buttonPointer); } menu.addAction(tr("Edit bookmark"), this, SLOT(editBookmark()))->setData(buttonPointer); menu.addSeparator(); menu.addAction(qIconProvider->fromTheme("list-remove"), tr("Remove bookmark"), this, SLOT(removeButton()))->setData(buttonPointer); //Prevent choosing first option with double rightclick QPoint position = button->mapToGlobal(pos); QPoint p(position.x(), position.y() + 1); menu.exec(p); } void BookmarksToolbar::moveRight() { QAction* act = qobject_cast (sender()); if (!act) { return; } ToolButton* button = static_cast(act->data().value()); int index = m_layout->indexOf(button); if (index == m_layout->count() - 1) { return; } ToolButton* buttonRight = qobject_cast (m_layout->itemAt(index + 1)->widget()); if (!buttonRight || buttonRight->menu()) { return; } Bookmark bookmark = button->data().value(); Bookmark bookmarkRight = buttonRight->data().value(); QSqlQuery query; query.prepare("UPDATE bookmarks SET position=? WHERE id=?"); query.addBindValue(index + 1); query.addBindValue(bookmark.id); mApp->dbWriter()->executeQuery(query); query.prepare("UPDATE bookmarks SET position=? WHERE id=?"); query.addBindValue(index); query.addBindValue(bookmarkRight.id); mApp->dbWriter()->executeQuery(query); QWidget* w = m_layout->takeAt(index)->widget(); m_layout->insertWidget(index + 1, w); } void BookmarksToolbar::moveLeft() { QAction* act = qobject_cast (sender()); if (!act) { return; } ToolButton* button = static_cast(act->data().value()); int index = m_layout->indexOf(button); if (index == 0) { return; } ToolButton* buttonLeft = qobject_cast (m_layout->itemAt(index - 1)->widget()); if (!buttonLeft) { return; } Bookmark bookmark = button->data().value(); Bookmark bookmarkLeft = buttonLeft->data().value(); QSqlQuery query; query.prepare("UPDATE bookmarks SET position=? WHERE id=?"); query.addBindValue(index - 1); query.addBindValue(bookmark.id); mApp->dbWriter()->executeQuery(query); query.prepare("UPDATE bookmarks SET position=? WHERE id=?"); query.addBindValue(index); query.addBindValue(bookmarkLeft.id); mApp->dbWriter()->executeQuery(query); QWidget* w = m_layout->takeAt(index)->widget(); m_layout->insertWidget(index - 1, w); } void BookmarksToolbar::editBookmark() { QAction* act = qobject_cast (sender()); if (!act) { return; } ToolButton* button = static_cast(act->data().value()); if (!button) { return; } Bookmark b = button->data().value(); QDialog* dialog = new QDialog(this); QFormLayout* layout = new QFormLayout(dialog); QLabel* label = new QLabel(dialog); QLineEdit* editUrl = new QLineEdit(dialog); QLineEdit* editTitle = new QLineEdit(dialog); QDialogButtonBox* box = new QDialogButtonBox(dialog); box->addButton(QDialogButtonBox::Ok); box->addButton(QDialogButtonBox::Cancel); connect(box, SIGNAL(rejected()), dialog, SLOT(reject())); connect(box, SIGNAL(accepted()), dialog, SLOT(accept())); label->setText(tr("Edit bookmark: ")); layout->addRow(label); layout->addRow(new QLabel(tr("Title: ")), editTitle); layout->addRow(new QLabel(tr("Url: ")), editUrl); layout->addRow(box); editUrl->setText(b.url.toString()); editTitle->setText(b.title); editUrl->setCursorPosition(0); editTitle->setCursorPosition(0); dialog->setWindowTitle(tr("Edit Bookmark")); dialog->setMinimumSize(400, 100); dialog->exec(); if (dialog->result() == QDialog::Rejected) { return; } QUrl url = QUrl::fromEncoded(editUrl->text().toUtf8()); QString title = editTitle->text(); if (url.isEmpty() || title.isEmpty()) { return; } m_bookmarksModel->editBookmark(b.id, title, url, b.folder); } void BookmarksToolbar::removeButton() { QAction* act = qobject_cast (sender()); if (!act) { return; } ToolButton* button = static_cast(act->data().value()); if (!button) { return; } Bookmark bookmark = button->data().value(); m_bookmarksModel->removeBookmark(bookmark.id); } void BookmarksToolbar::hidePanel() { p_QupZilla->showBookmarksToolbar(); } void BookmarksToolbar::toggleShowOnlyIcons() { m_bookmarksModel->setShowingOnlyIconsInToolbar(!m_bookmarksModel->isShowingOnlyIconsInToolbar()); showOnlyIconsChanged(); } void BookmarksToolbar::loadClickedBookmark() { ToolButton* button = 0; QAction* act = qobject_cast (sender()); if (act) { button = static_cast(act->data().value()); } if (!button) { button = qobject_cast(sender()); } if (!button) { return; } Bookmark bookmark = button->data().value(); p_QupZilla->loadAddress(bookmark.url); } void BookmarksToolbar::loadClickedBookmarkInNewTab() { ToolButton* button = 0; QAction* act = qobject_cast (sender()); if (act) { button = static_cast(act->data().value()); } if (!button) { button = qobject_cast(sender()); } if (!button) { return; } Bookmark bookmark = button->data().value(); p_QupZilla->tabWidget()->addView(bookmark.url, bookmark.title); } void BookmarksToolbar::loadFolderBookmarksInTabs() { ToolButton* b = qobject_cast(sender()); if (!b) { return; } QString folder = b->text(); if (folder.isEmpty()) { return; } foreach (const Bookmark &b, m_bookmarksModel->folderBookmarks(folder)) { p_QupZilla->tabWidget()->addView(b.url, b.title, Qz::NT_NotSelectedTab); } } void BookmarksToolbar::showMostVisited() { m_bookmarksModel->setShowingMostVisited(!m_bookmarksModel->isShowingMostVisited()); m_mostVis->setVisible(!m_mostVis->isVisible()); } int BookmarksToolbar::indexOfLastBookmark() { for (int i = m_layout->count() - 1; i >= 0; i--) { ToolButton* button = qobject_cast(m_layout->itemAt(i)->widget()); if (!button) { continue; } if (!button->menu()) { return i + 1; } } return 0; } void BookmarksToolbar::subfolderAdded(const QString &name) { ToolButton* b = new ToolButton(this); b->setPopupMode(QToolButton::InstantPopup); b->setToolButtonStyle(m_toolButtonStyle); b->setIcon(style()->standardIcon(QStyle::SP_DirIcon)); b->setText(name); connect(b, SIGNAL(middleMouseClicked()), this, SLOT(loadFolderBookmarksInTabs())); Menu* menu = new Menu(name); b->setMenu(menu); connect(menu, SIGNAL(aboutToShow()), this, SLOT(aboutToShowFolderMenu())); m_layout->insertWidget(m_layout->count() - 2, b); } void BookmarksToolbar::folderDeleted(const QString &name) { int index = indexOfLastBookmark(); for (int i = index; i < m_layout->count(); i++) { ToolButton* button = qobject_cast(m_layout->itemAt(i)->widget()); if (!button) { continue; } if (button->text() == name) { delete button; return; } } } void BookmarksToolbar::folderRenamed(const QString &before, const QString &after) { int index = indexOfLastBookmark(); for (int i = index; i < m_layout->count(); i++) { ToolButton* button = qobject_cast(m_layout->itemAt(i)->widget()); if (!button) { continue; } if (button->text() == before) { button->setText(after); button->menu()->setTitle(after); return; } } } void BookmarksToolbar::changeBookmarkParent(const QString &name, const QByteArray &imageData, int id, const QUrl &url, const QString &oldParent, const QString &newParent) { if (oldParent != _bookmarksToolbar && newParent != _bookmarksToolbar) { return; } bool itemIsAboutToRemove = (newParent != _bookmarksToolbar); Bookmark bookmark; bookmark.id = id; bookmark.url = url; bookmark.title = name; bookmark.folder = QLatin1String("bookmarksToolbar"); bookmark.image = QImage::fromData(imageData); bookmark.inSubfolder = false; if (itemIsAboutToRemove) { removeBookmark(bookmark); } else { addBookmark(bookmark); } } void BookmarksToolbar::changeFolderParent(const QString &name, bool isSubfolder) { if (!isSubfolder) { folderDeleted(name); } else { subfolderAdded(name); } } void BookmarksToolbar::addBookmark(const BookmarksModel::Bookmark &bookmark) { if (bookmark.folder != QLatin1String("bookmarksToolbar")) { return; } QString title = bookmark.title; if (title.length() > 15) { title.truncate(13); title += ".."; } QVariant v; v.setValue(bookmark); ToolButton* button = new ToolButton(this); button->setText(title); button->setData(v); button->setIcon(qIconProvider->iconFromImage(bookmark.image)); button->setToolButtonStyle(m_toolButtonStyle); button->setToolTip(bookmark.url.toEncoded()); button->setAutoRaise(true); button->setContextMenuPolicy(Qt::CustomContextMenu); connect(button, SIGNAL(clicked()), this, SLOT(loadClickedBookmark())); connect(button, SIGNAL(middleMouseClicked()), this, SLOT(loadClickedBookmarkInNewTab())); connect(button, SIGNAL(controlClicked()), this, SLOT(loadClickedBookmarkInNewTab())); connect(button, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(showBookmarkContextMenu(QPoint))); int indexForBookmark = indexOfLastBookmark(); m_layout->insertWidget(indexForBookmark, button); QSqlQuery query; query.prepare("UPDATE bookmarks SET position=? WHERE id=?"); query.addBindValue(indexForBookmark); query.addBindValue(bookmark.id); mApp->dbWriter()->executeQuery(query); } void BookmarksToolbar::removeBookmark(const BookmarksModel::Bookmark &bookmark) { for (int i = 0; i < m_layout->count(); i++) { ToolButton* button = qobject_cast(m_layout->itemAt(i)->widget()); if (!button) { continue; } Bookmark book = button->data().value(); if (book == bookmark) { delete button; return; } } } void BookmarksToolbar::bookmarkEdited(const BookmarksModel::Bookmark &before, const BookmarksModel::Bookmark &after) { if (before.folder == QLatin1String("bookmarksToolbar") && after.folder != QLatin1String("bookmarksToolbar")) { // Editing from toolbar folder to other folder -> Remove bookmark removeBookmark(before); } else if (before.folder != QLatin1String("bookmarksToolbar") && after.folder == QLatin1String("bookmarksToolbar")) { // Editing from other folder to toolbar folder -> Add bookmark addBookmark(after); } else { // Editing bookmark already in toolbar for (int i = 0; i < m_layout->count(); i++) { ToolButton* button = qobject_cast(m_layout->itemAt(i)->widget()); if (!button) { continue; } Bookmark book = button->data().value(); if (book == before) { QString title = after.title; if (title.length() > 15) { title.truncate(13); title += ".."; } QVariant v; v.setValue(after); button->setText(title); button->setData(v); button->setIcon(qIconProvider->iconFromImage(after.image)); button->setToolTip(after.url.toEncoded()); return; } } } } void BookmarksToolbar::refreshBookmarks() { QSqlQuery query; query.exec("SELECT id, title, url, icon FROM bookmarks WHERE folder='bookmarksToolbar' ORDER BY position"); while (query.next()) { Bookmark bookmark; bookmark.id = query.value(0).toInt(); bookmark.title = query.value(1).toString(); bookmark.url = query.value(2).toUrl(); bookmark.image = QImage::fromData(query.value(3).toByteArray()); bookmark.folder = "bookmarksToolbar"; QString title = bookmark.title; if (title.length() > 15) { title.truncate(13); title += ".."; } QVariant v; v.setValue(bookmark); ToolButton* button = new ToolButton(this); button->setText(title); button->setData(v); button->setIcon(qIconProvider->iconFromImage(bookmark.image)); button->setToolButtonStyle(m_toolButtonStyle); button->setToolTip(bookmark.url.toEncoded()); button->setAutoRaise(true); button->setContextMenuPolicy(Qt::CustomContextMenu); connect(button, SIGNAL(clicked()), this, SLOT(loadClickedBookmark())); connect(button, SIGNAL(middleMouseClicked()), this, SLOT(loadClickedBookmarkInNewTab())); connect(button, SIGNAL(controlClicked()), this, SLOT(loadClickedBookmarkInNewTab())); connect(button, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(showBookmarkContextMenu(QPoint))); m_layout->addWidget(button); } query.exec("SELECT name FROM folders WHERE subfolder='yes'"); while (query.next()) { ToolButton* b = new ToolButton(this); b->setPopupMode(QToolButton::InstantPopup); b->setToolButtonStyle(m_toolButtonStyle); b->setIcon(style()->standardIcon(QStyle::SP_DirIcon)); b->setText(query.value(0).toString()); connect(b, SIGNAL(middleMouseClicked()), this, SLOT(loadFolderBookmarksInTabs())); Menu* menu = new Menu(query.value(0).toString()); b->setMenu(menu); connect(menu, SIGNAL(aboutToShow()), this, SLOT(aboutToShowFolderMenu())); m_layout->addWidget(b); } m_mostVis = new ToolButton(this); m_mostVis->setPopupMode(QToolButton::InstantPopup); m_mostVis->setToolButtonStyle(m_toolButtonStyle); m_mostVis->setIcon(style()->standardIcon(QStyle::SP_DirIcon)); m_mostVis->setText(tr("Most visited")); m_mostVis->setToolTip(tr("Sites you visited the most")); m_menuMostVisited = new Menu(); m_mostVis->setMenu(m_menuMostVisited); connect(m_menuMostVisited, SIGNAL(aboutToShow()), this, SLOT(refreshMostVisited())); m_layout->addWidget(m_mostVis); m_layout->addStretch(); m_mostVis->setVisible(m_bookmarksModel->isShowingMostVisited()); } void BookmarksToolbar::aboutToShowFolderMenu() { QMenu* menu = qobject_cast (sender()); if (!menu) { return; } menu->clear(); QString folder = menu->title(); foreach (const Bookmark &b, m_bookmarksModel->folderBookmarks(folder)) { QString title = b.title; if (title.length() > 40) { title.truncate(40); title += ".."; } Action* act = new Action(qIconProvider->iconFromImage(b.image), title); act->setData(b.url); connect(act, SIGNAL(triggered()), p_QupZilla, SLOT(loadActionUrl())); connect(act, SIGNAL(middleClicked()), p_QupZilla, SLOT(loadActionUrlInNewNotSelectedTab())); menu->addAction(act); } if (menu->isEmpty()) { menu->addAction(tr("Empty"))->setEnabled(false); } } void BookmarksToolbar::dropEvent(QDropEvent* e) { const QMimeData* mime = e->mimeData(); if (!mime->hasUrls() || !mime->hasText()) { QWidget::dropEvent(e); return; } QString title = mime->text(); QUrl url = mime->urls().at(0); QIcon icon = qIconProvider->iconFromImage(qvariant_cast(mime->imageData())); m_bookmarksModel->saveBookmark(url, title, icon, "bookmarksToolbar"); } void BookmarksToolbar::dragEnterEvent(QDragEnterEvent* e) { const QMimeData* mime = e->mimeData(); if (mime->hasUrls() && mime->hasText()) { e->acceptProposedAction(); return; } QWidget::dragEnterEvent(e); } void BookmarksToolbar::showOnlyIconsChanged() { m_toolButtonStyle = m_bookmarksModel->isShowingOnlyIconsInToolbar() ? Qt::ToolButtonIconOnly : Qt::ToolButtonTextBesideIcon; for (int i = 0; i < m_layout->count(); ++i) { ToolButton* button = qobject_cast(m_layout->itemAt(i)->widget()); if (!button) { continue; } button->setToolButtonStyle(m_toolButtonStyle); } } void BookmarksToolbar::refreshMostVisited() { m_menuMostVisited->clear(); QVector mostList = m_historyModel->mostVisited(10); foreach (const HistoryEntry &entry, mostList) { QString title = entry.title; if (title.length() > 40) { title.truncate(40); title += ".."; } Action* act = new Action(_iconForUrl(entry.url), title); act->setData(entry.url); connect(act, SIGNAL(triggered()), p_QupZilla, SLOT(loadActionUrl())); connect(act, SIGNAL(middleClicked()), p_QupZilla, SLOT(loadActionUrlInNewNotSelectedTab())); m_menuMostVisited->addAction(act); } if (m_menuMostVisited->isEmpty()) { m_menuMostVisited->addAction(tr("Empty"))->setEnabled(false); } } qupzilla-1.6.0/src/lib/bookmarks/bookmarkstoolbar.h000066400000000000000000000054311226107126500224350ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef BOOKMARKSTOOLBAR_H #define BOOKMARKSTOOLBAR_H #include #include "qz_namespace.h" #include "bookmarksmodel.h" class QHBoxLayout; class QupZilla; class BookmarksModel; class History; class ToolButton; class Menu; class QT_QUPZILLA_EXPORT BookmarksToolbar : public QWidget { Q_OBJECT public: explicit BookmarksToolbar(QupZilla* mainClass, QWidget* parent = 0); signals: public slots: void refreshBookmarks(); void refreshMostVisited(); void showMostVisited(); private slots: void loadClickedBookmark(); void loadClickedBookmarkInNewTab(); void loadFolderBookmarksInTabs(); void aboutToShowFolderMenu(); void showBookmarkContextMenu(const QPoint &pos); void customContextMenuRequested(const QPoint &pos); void moveRight(); void moveLeft(); void editBookmark(); void removeButton(); void hidePanel(); void toggleShowOnlyIcons(); void addBookmark(const BookmarksModel::Bookmark &bookmark); void removeBookmark(const BookmarksModel::Bookmark &bookmark); void bookmarkEdited(const BookmarksModel::Bookmark &before, const BookmarksModel::Bookmark &after); void subfolderAdded(const QString &name); void folderDeleted(const QString &name); void folderRenamed(const QString &before, const QString &after); void changeBookmarkParent(const QString &name, const QByteArray &imageData, int id, const QUrl &url, const QString &oldParent, const QString &newParent); void changeFolderParent(const QString &name, bool isSubfolder); private: void dropEvent(QDropEvent* e); void dragEnterEvent(QDragEnterEvent* e); void showOnlyIconsChanged(); int indexOfLastBookmark(); QupZilla* p_QupZilla; BookmarksModel* m_bookmarksModel; History* m_historyModel; Menu* m_menuMostVisited; ToolButton* m_mostVis; QHBoxLayout* m_layout; Qt::ToolButtonStyle m_toolButtonStyle; }; #endif // BOOKMARKSTOOLBAR_H qupzilla-1.6.0/src/lib/bookmarks/bookmarkstree.cpp000066400000000000000000000222351226107126500222660ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2012 S. Razi Alavizadeh * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "bookmarkstree.h" #include "iconprovider.h" #include "bookmarksmodel.h" #include #include BookmarksTree::BookmarksTree(QWidget* parent) : TreeWidget(parent) , m_viewType(ManagerView) { } void BookmarksTree::setViewType(BookmarksTree::BookmarkView viewType) { if (viewType != m_viewType) { if (m_viewType == ComboFolderView) { setItemsExpandable(true); setRootIsDecorated(true); setIndentation(20); //QTreeView default indentation } else if (viewType == ComboFolderView) { setItemsExpandable(false); setRootIsDecorated(false); setIndentation(10); } m_viewType = viewType; } } void BookmarksTree::drawBranches(QPainter* painter, const QRect &rect, const QModelIndex &index) const { if (m_viewType == ComboFolderView) { return; } TreeWidget::drawBranches(painter, rect, index); } void BookmarksTree::refreshTree() { setUpdatesEnabled(false); clear(); QSqlQuery query; QTreeWidgetItem* rootItem = invisibleRootItem(); if (m_viewType == ExportFolderView) { rootItem = new QTreeWidgetItem(this); rootItem->setText(0, tr("Bookmarks")); rootItem->setIcon(0, qIconProvider->fromTheme("bookmarks-organize")); addTopLevelItem(rootItem); } if (m_viewType == ComboFolderView) { QTreeWidgetItem* newItem = new QTreeWidgetItem(rootItem); newItem->setText(0, _bookmarksUnsorted); newItem->setData(0, Qt::UserRole, "unsorted"); newItem->setIcon(0, QIcon(":/icons/other/unsortedbookmarks.png")); addTopLevelItem(newItem); } QTreeWidgetItem* newItem = new QTreeWidgetItem(rootItem); newItem->setText(0, _bookmarksMenu); newItem->setData(0, Qt::UserRole, "bookmarksMenu"); newItem->setIcon(0, style()->standardIcon(QStyle::SP_DirIcon)); if (m_viewType != ComboFolderView) { newItem->setFlags((newItem->flags() & ~Qt::ItemIsDragEnabled) | Qt::ItemIsDropEnabled); } addTopLevelItem(newItem); QTreeWidgetItem* bookmarksToolbar = 0; if (m_viewType != SideBarView) { bookmarksToolbar = new QTreeWidgetItem(rootItem); bookmarksToolbar->setText(0, _bookmarksToolbar); bookmarksToolbar->setData(0, Qt::UserRole, "bookmarksToolbar"); bookmarksToolbar->setIcon(0, style()->standardIcon(QStyle::SP_DirIcon)); if (m_viewType != ComboFolderView) { bookmarksToolbar->setFlags((bookmarksToolbar->flags() & ~Qt::ItemIsDragEnabled) | Qt::ItemIsDropEnabled); } addTopLevelItem(bookmarksToolbar); } query.exec("SELECT name FROM folders WHERE subfolder!='yes'"); while (query.next()) { newItem = new QTreeWidgetItem(rootItem); newItem->setText(0, query.value(0).toString()); newItem->setData(0, Qt::UserRole, query.value(0).toString()); newItem->setIcon(0, style()->standardIcon(QStyle::SP_DirIcon)); newItem->setFlags(newItem->flags() | Qt::ItemIsDropEnabled | Qt::ItemIsDragEnabled); addTopLevelItem(newItem); } if (m_viewType == ComboFolderView) { QTreeWidgetItem* newFolder = new QTreeWidgetItem(rootItem); newFolder->setText(0, tr("New Folder...")); newFolder->setData(0, Qt::UserRole + 12, "NEW_FOLDER"); newFolder->setIcon(0, style()->standardIcon(QStyle::SP_FileDialogNewFolder)); } if (m_viewType != ComboFolderView) { query.exec("SELECT title, url, id, folder, icon FROM bookmarks"); while (query.next()) { QString title = query.value(0).toString(); QUrl url = query.value(1).toUrl(); int id = query.value(2).toInt(); QString folder = query.value(3).toString(); QIcon icon = qIconProvider->iconFromImage(QImage::fromData(query.value(4).toByteArray())); QTreeWidgetItem* item; if (folder == QLatin1String("bookmarksMenu")) { folder = _bookmarksMenu; } if (folder == QLatin1String("bookmarksToolbar")) { folder = _bookmarksToolbar; } if (folder != QLatin1String("unsorted")) { QList findParent = findItems(folder, 0); if (findParent.count() != 1) { continue; } item = new QTreeWidgetItem(findParent.at(0)); } else { item = new QTreeWidgetItem(rootItem); } item->setText(0, title); item->setText(1, url.toEncoded()); if (m_viewType != SideBarView) { item->setToolTip(0, title); item->setToolTip(1, url.toEncoded()); // Qt::ItemIsEditable just Manager!! item->setFlags(item->flags() | Qt::ItemIsEditable | Qt::ItemIsDropEnabled | Qt::ItemIsDragEnabled); } else { item->setToolTip(0, url.toEncoded()); item->setFlags(item->flags() | Qt::ItemIsDropEnabled | Qt::ItemIsDragEnabled); } item->setData(0, Qt::UserRole + 10, id); item->setData(0, Qt::UserRole + 11, url); item->setIcon(0, icon); addTopLevelItem(item); } } if (m_viewType != SideBarView) { query.exec("SELECT name FROM folders WHERE subfolder='yes'"); while (query.next()) { newItem = new QTreeWidgetItem(bookmarksToolbar); newItem->setText(0, query.value(0).toString()); newItem->setIcon(0, style()->standardIcon(QStyle::SP_DirIcon)); if (m_viewType != ComboFolderView && m_viewType != ExportFolderView) { newItem->setFlags(newItem->flags() | Qt::ItemIsDragEnabled | Qt::ItemIsDropEnabled); QSqlQuery query2; query2.prepare("SELECT title, url, id, icon FROM bookmarks WHERE folder=?"); query2.addBindValue(query.value(0).toString()); query2.exec(); while (query2.next()) { QString title = query2.value(0).toString(); QUrl url = query2.value(1).toUrl(); int id = query2.value(2).toInt(); QIcon icon = qIconProvider->iconFromImage(QImage::fromData(query2.value(3).toByteArray())); QTreeWidgetItem* item = new QTreeWidgetItem(newItem); item->setText(0, title); item->setText(1, url.toEncoded()); item->setToolTip(0, title); item->setToolTip(1, url.toEncoded()); item->setData(0, Qt::UserRole + 10, id); item->setData(0, Qt::UserRole + 11, url); item->setIcon(0, icon); item->setFlags(item->flags() | Qt::ItemIsEditable | Qt::ItemIsDropEnabled | Qt::ItemIsDragEnabled); } } } } expandAll(); setUpdatesEnabled(true); } void BookmarksTree::activeItemChange(int index, QComboBox* combo, const QString &title, WebView* view) { if (!combo) { combo = qobject_cast(sender()); } if (!combo) { return; } QString data = combo->itemData(index, Qt::UserRole + 12).toString(); if (data == "NEW_FOLDER") { if (combo->parentWidget()->objectName() == "BookmarksWidget") { emit requestNewFolder(this, 0, true, title, view); } else { QString folder; emit requestNewFolder(this, &folder, false, QString(), 0); if (!folder.isEmpty()) { int ind = combo->findText(folder); // QComboBox::find() returns index related to the item's parent if (ind == -1) { QModelIndex rootIndex = combo->rootModelIndex(); combo->setRootModelIndex(combo->model()->index(combo->findText(_bookmarksToolbar), 0)); combo->setCurrentIndex(combo->findText(folder)); combo->setRootModelIndex(rootIndex); } else { combo->setCurrentIndex(ind); } } else { combo->setCurrentIndex(0); } } } } qupzilla-1.6.0/src/lib/bookmarks/bookmarkstree.h000066400000000000000000000036031226107126500217310ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2012 S. Razi Alavizadeh * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef BOOKMARKSTREE_H #define BOOKMARKSTREE_H #include "treewidget.h" #include "qz_namespace.h" class QComboBox; class WebView; class TreeWidget; class QT_QUPZILLA_EXPORT BookmarksTree : public TreeWidget { Q_OBJECT public: enum BookmarkView { SideBarView, ManagerView, ComboFolderView, // I should found a better name ;) ExportFolderView // reserved for export functionality! }; BookmarksTree(QWidget* parent = 0); BookmarksTree::BookmarkView viewType() {return m_viewType;} void setViewType(BookmarksTree::BookmarkView viewType); protected: void drawBranches(QPainter* painter, const QRect &rect, const QModelIndex &index) const; public slots: void refreshTree(); void activeItemChange(int index, QComboBox* combo = 0, const QString &title = QString(), WebView* = 0); private: BookmarkView m_viewType; signals: void requestNewFolder(QWidget*, QString*, bool, QString, WebView*); }; #endif // BOOKMARKSTREE_H qupzilla-1.6.0/src/lib/bookmarks/bookmarkswidget.cpp000066400000000000000000000124021226107126500226050ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "bookmarkswidget.h" #include "ui_bookmarkswidget.h" #include "bookmarksmodel.h" #include "mainapplication.h" #include "pluginproxy.h" #include "speeddial.h" #include "webview.h" #include "qupzilla.h" #include "bookmarkstree.h" #include "browsinglibrary.h" #include "bookmarksmanager.h" #include #include #include #define HIDE_DELAY 270 BookmarksWidget::BookmarksWidget(WebView* view, QWidget* parent) : LocationBarPopup(parent) , ui(new Ui::BookmarksWidget) , m_url(view->url()) , m_view(view) , m_bookmarksModel(mApp->bookmarksModel()) , m_speedDial(mApp->plugins()->speedDial()) , m_edited(false) { ui->setupUi(this); m_bookmarksTree = new BookmarksTree(this); m_bookmarksTree->setViewType(BookmarksTree::ComboFolderView); m_bookmarksTree->header()->hide(); m_bookmarksTree->setColumnCount(1); ui->folder->setModel(m_bookmarksTree->model()); ui->folder->setView(m_bookmarksTree); // The locationbar's direction is direction of its text, // it dynamically changes and so, it's not good choice for this widget. setLayoutDirection(QApplication::layoutDirection()); connect(ui->speeddialButton, SIGNAL(clicked(QPoint)), this, SLOT(toggleSpeedDial())); const SpeedDial::Page page = m_speedDial->pageForUrl(m_url); ui->speeddialButton->setText(page.url.isEmpty() ? tr("Add to Speed Dial") : tr("Remove from Speed Dial")); loadBookmark(); connect(ui->folder, SIGNAL(activated(int)), this, SLOT(comboItemActive(int))); connect(m_bookmarksTree, SIGNAL(requestNewFolder(QWidget*,QString*,bool,QString,WebView*)), mApp->browsingLibrary()->bookmarksManager(), SLOT(addFolder(QWidget*,QString*,bool,QString,WebView*))); } void BookmarksWidget::loadBookmark() { // Bookmark folders m_bookmarksTree->refreshTree(); m_bookmarkId = m_bookmarksModel->bookmarkId(m_url); if (m_bookmarkId > 0) { BookmarksModel::Bookmark bookmark = m_bookmarksModel->getBookmark(m_bookmarkId); ui->name->setText(bookmark.title); int index = ui->folder->findData(bookmark.folder); // QComboBox::findData() returns index related to the item's parent if (index == -1) { // subfolder QModelIndex rootIndex = ui->folder->rootModelIndex(); ui->folder->setRootModelIndex(ui->folder->model()->index(ui->folder->findText(_bookmarksToolbar), 0)); // subfolder's name and its stored data are the same index = ui->folder->findText(bookmark.folder); ui->folder->setCurrentIndex(index); ui->folder->setRootModelIndex(rootIndex); } else { ui->folder->setCurrentIndex(index); } ui->saveRemove->setText(tr("Remove")); connect(ui->name, SIGNAL(textEdited(QString)), SLOT(bookmarkEdited())); connect(ui->folder, SIGNAL(currentIndexChanged(int)), SLOT(bookmarkEdited())); } else { ui->name->setText(m_view->title()); ui->folder->setCurrentIndex(0); } ui->name->setCursorPosition(0); } void BookmarksWidget::toggleSpeedDial() { const SpeedDial::Page page = m_speedDial->pageForUrl(m_url); if (page.url.isEmpty()) { QString title = ui->name->text().isEmpty() ? m_view->title() : ui->name->text(); m_speedDial->addPage(m_url, title); } else { m_speedDial->removePage(page); } QTimer::singleShot(HIDE_DELAY, this, SLOT(close())); } void BookmarksWidget::bookmarkEdited() { if (m_edited) { return; } m_edited = true; ui->saveRemove->setText(tr("Save")); } void BookmarksWidget::comboItemActive(int index) { m_bookmarksTree->activeItemChange(index, ui->folder, ui->name->text(), m_view); } void BookmarksWidget::on_saveRemove_clicked(bool) { if (m_bookmarkId > 0) { if (m_edited) { m_bookmarksModel->editBookmark(m_bookmarkId, ui->name->text(), QUrl(), BookmarksModel::fromTranslatedFolder(ui->folder->currentText())); } else { m_bookmarksModel->removeBookmark(m_url); emit bookmarkDeleted(); } } else { m_bookmarksModel->saveBookmark(m_url, ui->name->text(), m_view->icon(), BookmarksModel::fromTranslatedFolder(ui->folder->currentText())); } QTimer::singleShot(HIDE_DELAY, this, SLOT(close())); } BookmarksWidget::~BookmarksWidget() { delete ui; } qupzilla-1.6.0/src/lib/bookmarks/bookmarkswidget.h000066400000000000000000000033421226107126500222550ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef BOOKMARKSWIDGET_H #define BOOKMARKSWIDGET_H #include #include #include "qz_namespace.h" #include "locationbarpopup.h" namespace Ui { class BookmarksWidget; } class WebView; class SpeedDial; class BookmarksModel; class BookmarksTree; class QT_QUPZILLA_EXPORT BookmarksWidget : public LocationBarPopup { Q_OBJECT public: explicit BookmarksWidget(WebView* view, QWidget* parent = 0); ~BookmarksWidget(); signals: void bookmarkDeleted(); private slots: void on_saveRemove_clicked(bool); void bookmarkEdited(); void comboItemActive(int index); void toggleSpeedDial(); private: void loadBookmark(); Ui::BookmarksWidget* ui; QUrl m_url; int m_bookmarkId; WebView* m_view; BookmarksModel* m_bookmarksModel; SpeedDial* m_speedDial; bool m_edited; BookmarksTree* m_bookmarksTree; }; #endif // BOOKMARKSWIDGET_H qupzilla-1.6.0/src/lib/bookmarks/bookmarkswidget.ui000066400000000000000000000057021226107126500224450ustar00rootroot00000000000000 BookmarksWidget 0 0 210 135 Qt::Horizontal 40 20 PointingHandCursor Add to Speed Dial true 0 0 Qt::Horizontal 40 20 0 0 Save Name: Folder: ClickableLabel QLabel

clickablelabel.h
qupzilla-1.6.0/src/lib/bookmarksimport/000077500000000000000000000000001226107126500201415ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/bookmarksimport/bookmarksimportdialog.cpp000066400000000000000000000277101226107126500252570ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "bookmarksimportdialog.h" #include "ui_bookmarksimportdialog.h" #include "firefoximporter.h" #include "chromeimporter.h" #include "operaimporter.h" #include "htmlimporter.h" #include "ieimporter.h" #include "mainapplication.h" #include "bookmarksimporticonfetcher.h" #include "iconprovider.h" #include "networkmanager.h" #include "qztools.h" #include #include #include #include BookmarksImportDialog::BookmarksImportDialog(QWidget* parent) : QDialog(parent) , ui(new Ui::BookmarksImportDialog) , m_currentPage(0) , m_fetcher(0) , m_fetcherThread(0) { setAttribute(Qt::WA_DeleteOnClose); ui->setupUi(this); ui->browserList->setCurrentRow(0); #ifndef Q_OS_WIN ui->browserList->setItemHidden(ui->browserList->item(IE), true); #endif connect(ui->nextButton, SIGNAL(clicked()), this, SLOT(nextPage())); connect(ui->chooseFile, SIGNAL(clicked()), this, SLOT(setFile())); connect(ui->cancelButton, SIGNAL(clicked()), this, SLOT(close())); connect(ui->stopButton, SIGNAL(clicked()), this, SLOT(stopDownloading())); } void BookmarksImportDialog::nextPage() { switch (m_currentPage) { case 0: if (!ui->browserList->currentItem()) { return; } m_browser = (Browser)(ui->browserList->currentRow()); setupBrowser(m_browser); ui->iconLabel->setPixmap(m_browserPixmap); ui->importingFromLabel->setText(tr("Importing from %1").arg(m_browserName)); ui->fileText1->setText(m_browserFileText); ui->fileText2->setText(m_browserFileText2); ui->standardDirLabel->setText("" + m_standardDir + ""); ui->nextButton->setEnabled(false); m_currentPage++; ui->stackedWidget->setCurrentIndex(m_currentPage); break; case 1: if (ui->fileLine->text().isEmpty()) { return; } if (exportedOK()) { m_currentPage++; ui->stackedWidget->setCurrentIndex(m_currentPage); if (!ui->fetchIcons->isChecked()) { addExportedBookmarks(); close(); return; } startFetchingIcons(); } break; case 2: addExportedBookmarks(); close(); break; default: break; } } void BookmarksImportDialog::startFetchingIcons() { ui->nextButton->setText(tr("Finish")); ui->nextButton->setEnabled(false); ui->progressBar->setValue(0); ui->progressBar->setMaximum(m_exportedBookmarks.count()); m_fetcherThread = new QThread(); m_fetcher = new BookmarksImportIconFetcher(); m_fetcher->moveToThread(m_fetcherThread); QIcon defaultIcon = qIconProvider->emptyWebIcon(); QIcon folderIcon = style()->standardIcon(QStyle::SP_DirIcon); QHash hash; foreach (const Bookmark &b, m_exportedBookmarks) { QTreeWidgetItem* item; QTreeWidgetItem* findParent = hash[b.folder]; if (findParent) { item = new QTreeWidgetItem(findParent); } else { QTreeWidgetItem* newParent = new QTreeWidgetItem(ui->treeWidget); newParent->setText(0, b.folder); newParent->setIcon(0, folderIcon); ui->treeWidget->addTopLevelItem(newParent); hash[b.folder] = newParent; item = new QTreeWidgetItem(newParent); } QVariant bookmarkVariant = QVariant::fromValue(b); item->setText(0, b.title); if (b.image.isNull()) { item->setIcon(0, defaultIcon); } else { item->setIcon(0, QIcon(QPixmap::fromImage(b.image))); } item->setText(1, b.url.toString()); item->setData(0, Qt::UserRole + 10, bookmarkVariant); ui->treeWidget->addTopLevelItem(item); m_fetcher->addEntry(b.url, item); } ui->treeWidget->expandAll(); connect(m_fetcher, SIGNAL(iconFetched(QImage,QTreeWidgetItem*)), this, SLOT(iconFetched(QImage,QTreeWidgetItem*))); connect(m_fetcher, SIGNAL(oneFinished()), this, SLOT(loadFinished())); m_fetcherThread->start(); m_fetcher->startFetching(); } void BookmarksImportDialog::stopDownloading() { ui->nextButton->setEnabled(true); ui->stopButton->hide(); ui->progressBar->setValue(ui->progressBar->maximum()); ui->fetchingLabel->setText(tr("Please press Finish to complete importing process.")); } void BookmarksImportDialog::loadFinished() { ui->progressBar->setValue(ui->progressBar->value() + 1); if (ui->progressBar->value() == ui->progressBar->maximum()) { ui->stopButton->hide(); ui->nextButton->setEnabled(true); ui->fetchingLabel->setText(tr("Please press Finish to complete importing process.")); } } void BookmarksImportDialog::iconFetched(const QImage &image, QTreeWidgetItem* item) { item->setIcon(0, QIcon(QPixmap::fromImage(image))); Bookmark b = item->data(0, Qt::UserRole + 10).value(); int index = m_exportedBookmarks.indexOf(b); if (index != -1) { m_exportedBookmarks[index].image = image; } } bool BookmarksImportDialog::exportedOK() { if (m_browser == Firefox) { FirefoxImporter firefox(this); firefox.setFile(ui->fileLine->text()); if (firefox.openDatabase()) { m_exportedBookmarks = firefox.exportBookmarks(); } if (firefox.error()) { QMessageBox::critical(this, tr("Error!"), firefox.errorString()); return false; } } else if (m_browser == Chrome) { ChromeImporter chrome(this); chrome.setFile(ui->fileLine->text()); if (chrome.openFile()) { m_exportedBookmarks = chrome.exportBookmarks(); } if (chrome.error()) { QMessageBox::critical(this, tr("Error!"), chrome.errorString()); return false; } } else if (m_browser == Opera) { OperaImporter opera(this); opera.setFile(ui->fileLine->text()); if (opera.openFile()) { m_exportedBookmarks = opera.exportBookmarks(); } if (opera.error()) { QMessageBox::critical(this, tr("Error!"), opera.errorString()); return false; } } else if (m_browser == Html) { HtmlImporter html(this); html.setFile(ui->fileLine->text()); if (html.openFile()) { m_exportedBookmarks = html.exportBookmarks(); } if (html.error()) { QMessageBox::critical(this, tr("Error!"), html.errorString()); return false; } } #ifdef Q_OS_WIN else if (m_browser == IE) { IeImporter ie(this); ie.setFile(ui->fileLine->text()); if (ie.openFile()) { m_exportedBookmarks = ie.exportBookmarks(); } if (ie.error()) { QMessageBox::critical(this, tr("Error!"), ie.errorString()); } } #endif if (m_exportedBookmarks.isEmpty()) { QMessageBox::critical(this, tr("Error!"), tr("The file doesn't contain any bookmark.")); return false; } return true; } void BookmarksImportDialog::setFile() { #ifdef Q_OS_WIN if (m_browser == IE) { QString path = QzTools::getExistingDirectory("BookmarksImport-Directory", this, tr("Choose directory...")); if (!path.isEmpty()) { ui->fileLine->setText(path); } } else #endif { QString path = QzTools::getOpenFileName("BookmarksImport-File", this, tr("Choose file..."), QDir::homePath(), m_browserBookmarkFile); if (!path.isEmpty()) { ui->fileLine->setText(path); } } ui->nextButton->setEnabled(!ui->fileLine->text().isEmpty()); } void BookmarksImportDialog::addExportedBookmarks() { QApplication::setOverrideCursor(Qt::WaitCursor); BookmarksModel* model = mApp->bookmarksModel(); QSqlDatabase db = QSqlDatabase::database(); db.transaction(); foreach (const Bookmark &b, m_exportedBookmarks) { model->saveBookmark(b.url, b.title, qIconProvider->iconFromImage(b.image), b.folder); } db.commit(); QApplication::restoreOverrideCursor(); } void BookmarksImportDialog::setupBrowser(Browser browser) { switch (browser) { case Firefox: m_browserPixmap = QPixmap(":icons/browsers/firefox.png"); m_browserName = "Mozilla Firefox"; m_browserBookmarkFile = "places.sqlite"; m_browserFileText = tr("Mozilla Firefox stores its bookmarks in places.sqlite SQLite database. " "This file is usually located in "); m_browserFileText2 = tr("Please choose this file to begin importing bookmarks."); m_standardDir = #ifdef Q_OS_WIN "%APPDATA%/Mozilla/"; #else "/home/user/.mozilla/firefox/profilename/"; #endif break; case Chrome: m_browserPixmap = QPixmap(":icons/browsers/chrome.png"); m_browserName = "Google Chrome"; m_browserBookmarkFile = "Bookmarks"; m_browserFileText = tr("Google Chrome stores its bookmarks in Bookmarks text file. " "This file is usually located in "); m_browserFileText2 = tr("Please choose this file to begin importing bookmarks."); m_standardDir = #ifdef Q_OS_WIN "%APPDATA%/Chrome/Default/"; #else "/home/user/.config/chrome/Default/"; #endif break; case Opera: m_browserPixmap = QPixmap(":icons/browsers/opera.png"); m_browserName = "Opera"; m_browserBookmarkFile = "bookmarks.adr"; m_browserFileText = tr("Opera stores its bookmarks in bookmarks.adr text file. " "This file is usually located in "); m_browserFileText2 = tr("Please choose this file to begin importing bookmarks."); m_standardDir = #ifdef Q_OS_WIN "%APPDATA%/Opera/"; #else "/home/user/.opera/"; #endif break; case Html: m_browserPixmap = QPixmap(":icons/browsers/html.png"); m_browserName = "Html Import"; m_browserBookmarkFile = "*.htm, *.html"; m_browserFileText = tr("You can import bookmarks from any browser that supports HTML exporting. " "This file has usually these suffixes"); m_browserFileText2 = tr("Please choose this file to begin importing bookmarks."); m_standardDir = ".html, .htm"; break; case IE: m_browserPixmap = QPixmap(":icons/browsers/internet-explorer.png"); m_browserName = "Internet Explorer"; m_browserFileText = tr("Internet Explorer stores its bookmarks in Favorites folder. " "This folder is usually located in "); m_browserFileText2 = tr("Please choose this folder to begin importing bookmarks."); m_standardDir = "C:\\Users\\username\\Favorites\\"; break; default: break; } } BookmarksImportDialog::~BookmarksImportDialog() { delete ui; if (m_fetcherThread) { m_fetcherThread->exit(); m_fetcherThread->wait(); m_fetcherThread->deleteLater(); m_fetcher->deleteLater(); } } qupzilla-1.6.0/src/lib/bookmarksimport/bookmarksimportdialog.h000066400000000000000000000041111226107126500247120ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef BOOKMARKSIMPORTDIALOG_H #define BOOKMARKSIMPORTDIALOG_H #include #include #include "qz_namespace.h" #include "bookmarksmodel.h" namespace Ui { class BookmarksImportDialog; } class QTreeWidgetItem; class QThread; class BookmarksImportIconFetcher; class QT_QUPZILLA_EXPORT BookmarksImportDialog : public QDialog { Q_OBJECT public: explicit BookmarksImportDialog(QWidget* parent = 0); ~BookmarksImportDialog(); private slots: void nextPage(); void setFile(); void stopDownloading(); void iconFetched(const QImage &image, QTreeWidgetItem* item); void loadFinished(); private: enum Browser { Firefox = 0, Chrome = 1, Opera = 2, IE = 3, Html = 4}; void setupBrowser(Browser browser); bool exportedOK(); void startFetchingIcons(); void addExportedBookmarks(); Ui::BookmarksImportDialog* ui; int m_currentPage; Browser m_browser; QString m_browserName; QString m_browserFileText; QString m_browserFileText2; QString m_standardDir; QPixmap m_browserPixmap; QString m_browserBookmarkFile; QVector m_exportedBookmarks; BookmarksImportIconFetcher* m_fetcher; QThread* m_fetcherThread; }; #endif // BOOKMARKSIMPORTDIALOG_H qupzilla-1.6.0/src/lib/bookmarksimport/bookmarksimportdialog.ui000066400000000000000000000266401226107126500251130ustar00rootroot00000000000000 BookmarksImportDialog 0 0 550 370 550 350 Import Bookmarks <b>Import Bookmarks</b> 0 48 48 Mozilla Firefox :/icons/browsers/firefox.png:/icons/browsers/firefox.png Google Chrome :/icons/browsers/chrome.png:/icons/browsers/chrome.png Opera :/icons/browsers/opera.png:/icons/browsers/opera.png Internet Explorer :/icons/browsers/internet-explorer.png:/icons/browsers/internet-explorer.png From File :/icons/browsers/html.png:/icons/browsers/html.png Choose browser from which you want to import bookmarks: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. true true Qt::Vertical 20 40 Qt::Vertical 20 40 false Choose... Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse 48 48 48 48 Qt::Vertical 20 40 Try to fetch icons for all bookmarks (may take a while) true 0 Qt::Horizontal 40 20 Fetching icons, please wait... Qt::Horizontal 40 20 Qt::Horizontal QSizePolicy::Fixed 40 20 24 :/icons/faenza/stop.png:/icons/faenza/stop.png 16 16 Qt::Horizontal QSizePolicy::Fixed 40 20 220 Title Url Qt::Horizontal 40 20 Next Cancel qupzilla-1.6.0/src/lib/bookmarksimport/bookmarksimporticonfetcher.cpp000066400000000000000000000047711226107126500263130ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "bookmarksimporticonfetcher.h" #include "iconfetcher.h" #include #include BookmarksImportIconFetcher::BookmarksImportIconFetcher(QObject* parent) : QObject(parent) { } void BookmarksImportIconFetcher::addEntry(const QUrl &url, QTreeWidgetItem* item) { Pair pair; pair.url = url; pair.item = item; m_pairs.append(pair); } void BookmarksImportIconFetcher::startFetching() { QTimer::singleShot(0, this, SLOT(slotStartFetching())); } void BookmarksImportIconFetcher::slotIconFetched(const QImage &image) { IconFetcher* fetcher = qobject_cast(sender()); if (!fetcher) { return; } QTreeWidgetItem* itemPointer = static_cast(fetcher->data().value()); emit iconFetched(image, itemPointer); } void BookmarksImportIconFetcher::slotFetcherFinished() { IconFetcher* fetcher = qobject_cast(sender()); if (!fetcher) { return; } m_fetchers.removeOne(fetcher); emit oneFinished(); } void BookmarksImportIconFetcher::slotStartFetching() { QNetworkAccessManager* manager = new QNetworkAccessManager(this); foreach (const Pair &pair, m_pairs) { QVariant itemPointer = QVariant::fromValue((void*) pair.item); IconFetcher* fetcher = new IconFetcher(this); fetcher->setNetworkAccessManager(manager); fetcher->setData(itemPointer); fetcher->fetchIcon(pair.url); connect(fetcher, SIGNAL(iconFetched(QImage)), this, SLOT(slotIconFetched(QImage))); connect(fetcher, SIGNAL(finished()), this, SLOT(slotFetcherFinished())); m_fetchers.append(fetcher); } } qupzilla-1.6.0/src/lib/bookmarksimport/bookmarksimporticonfetcher.h000066400000000000000000000035561226107126500257600ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef BOOKMARKSIMPORTICONFETCHER_H #define BOOKMARKSIMPORTICONFETCHER_H #include #include #include #include #include "qz_namespace.h" class QNetworkAccessManager; class QTreeWidgetItem; class QImage; class IconFetcher; class QT_QUPZILLA_EXPORT BookmarksImportIconFetcher : public QObject { Q_OBJECT public: struct Pair { QUrl url; QTreeWidgetItem* item; }; explicit BookmarksImportIconFetcher(QObject* parent = 0); void addEntry(const QUrl &url, QTreeWidgetItem* item); void startFetching(); signals: void iconFetched(const QImage &image, QTreeWidgetItem* item); void oneFinished(); private slots: void slotStartFetching(); void slotIconFetched(const QImage &image); void slotFetcherFinished(); private: QVector m_pairs; QList m_fetchers; }; // Hint to QVector to use std::realloc on item moving Q_DECLARE_TYPEINFO(BookmarksImportIconFetcher::Pair, Q_MOVABLE_TYPE); #endif // BOOKMARKSIMPORTICONFETCHER_H qupzilla-1.6.0/src/lib/bookmarksimport/chromeimporter.cpp000066400000000000000000000054641226107126500237150ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "chromeimporter.h" #include "qztools.h" #include "bookmarksimportdialog.h" #include #include #include #include "qzregexp.h" ChromeImporter::ChromeImporter(QObject* parent) : QObject(parent) , m_error(false) , m_errorString(BookmarksImportDialog::tr("No Error")) { } void ChromeImporter::setFile(const QString &path) { m_path = path; } bool ChromeImporter::openFile() { m_file.setFileName(m_path); if (!m_file.open(QFile::ReadOnly)) { m_error = true; m_errorString = BookmarksImportDialog::tr("Unable to open file."); return false; } return true; } QVector ChromeImporter::exportBookmarks() { QVector list; QString bookmarks = QString::fromUtf8(m_file.readAll()); m_file.close(); QStringList parsedBookmarks; QzRegExp rx("\\{(\\s*)\"date_added(.*)\"(\\s*)\\}", Qt::CaseSensitive); rx.setMinimal(true); int pos = 0; while ((pos = rx.indexIn(bookmarks, pos)) != -1) { parsedBookmarks << rx.cap(0); pos += rx.matchedLength(); } QScriptEngine* scriptEngine = new QScriptEngine(); foreach (QString parsedString, parsedBookmarks) { parsedString = "(" + parsedString + ")"; if (scriptEngine->canEvaluate(parsedString)) { QScriptValue object = scriptEngine->evaluate(parsedString); QString name = object.property("name").toString().trimmed(); QUrl url = QUrl::fromEncoded(object.property("url").toString().trimmed().toUtf8()); if (name.isEmpty() || url.isEmpty()) { continue; } BookmarksModel::Bookmark b; b.folder = "Chrome Import"; b.title = name; b.url = url; list.append(b); } else { m_error = true; m_errorString = BookmarksImportDialog::tr("Cannot evaluate JSON code."); } } return list; } qupzilla-1.6.0/src/lib/bookmarksimport/chromeimporter.h000066400000000000000000000026351226107126500233570ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef CHROMEIMPORTER_H #define CHROMEIMPORTER_H #include #include #include "qz_namespace.h" #include "bookmarksmodel.h" class QT_QUPZILLA_EXPORT ChromeImporter : public QObject { public: explicit ChromeImporter(QObject* parent = 0); void setFile(const QString &path); bool openFile(); QVector exportBookmarks(); bool error() { return m_error; } QString errorString() { return m_errorString; } private: QString m_path; QFile m_file; bool m_error; QString m_errorString; }; #endif // CHROMEIMPORTER_H qupzilla-1.6.0/src/lib/bookmarksimport/firefoximporter.cpp000066400000000000000000000052511226107126500240740ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "firefoximporter.h" #include "bookmarksimportdialog.h" #include #include FirefoxImporter::FirefoxImporter(QObject* parent) : QObject(parent) , m_error(false) , m_errorString(BookmarksImportDialog::tr("No Error")) { } void FirefoxImporter::setFile(const QString &path) { m_path = path; } bool FirefoxImporter::openDatabase() { db = QSqlDatabase::cloneDatabase(QSqlDatabase::database(), "import"); if (!QFile::exists(m_path)) { m_error = true; m_errorString = BookmarksImportDialog::tr("File does not exist."); return false; } db.setDatabaseName(m_path); bool open = db.open(); if (!open) { m_error = true; m_errorString = BookmarksImportDialog::tr("Unable to open database. Is Firefox running?"); return false; } return true; } QVector FirefoxImporter::exportBookmarks() { QVector list; QSqlQuery query(db); query.exec("SELECT title, fk FROM moz_bookmarks WHERE title != ''"); while (query.next()) { QString title = query.value(0).toString(); int placesId = query.value(1).toInt(); QSqlQuery query2(db); query2.exec("SELECT url FROM moz_places WHERE id=" + QString::number(placesId)); if (!query2.next()) { continue; } QUrl url = query2.value(0).toUrl(); if (title.isEmpty() || url.isEmpty() || url.scheme() == QLatin1String("place") || url.scheme() == QLatin1String("about")) { continue; } BookmarksModel::Bookmark b; b.folder = "Firefox Import"; b.title = title; b.url = url; list.append(b); } if (query.lastError().isValid()) { m_error = true; m_errorString = query.lastError().text(); } return list; } qupzilla-1.6.0/src/lib/bookmarksimport/firefoximporter.h000066400000000000000000000027211226107126500235400ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef FIREFOXIMPORTER_H #define FIREFOXIMPORTER_H #include #include #include #include "qz_namespace.h" #include "bookmarksmodel.h" class QT_QUPZILLA_EXPORT FirefoxImporter : public QObject { public: explicit FirefoxImporter(QObject* parent = 0); void setFile(const QString &path); bool openDatabase(); QVector exportBookmarks(); bool error() { return m_error; } QString errorString() { return m_errorString; } private: QString m_path; QSqlDatabase db; bool m_error; QString m_errorString; }; #endif // FIREFOXIMPORTER_H qupzilla-1.6.0/src/lib/bookmarksimport/htmlimporter.cpp000066400000000000000000000111761226107126500234010ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "htmlimporter.h" #include "bookmarksimportdialog.h" #include "qzregexp.h" HtmlImporter::HtmlImporter(QObject* parent) : QObject(parent) , m_error(false) , m_errorString(BookmarksImportDialog::tr("No Error")) { } void HtmlImporter::setFile(const QString &path) { m_path = path; } bool HtmlImporter::openFile() { m_file.setFileName(m_path); if (!m_file.open(QFile::ReadOnly)) { m_error = true; m_errorString = BookmarksImportDialog::tr("Unable to open file."); return false; } return true; } int qzMin(int a, int b) { if (a > -1 && b > -1) { return qMin(a, b); } if (a > -1) { return a; } else { return b; } } QVector HtmlImporter::exportBookmarks() { QVector list; QString bookmarks = QString::fromUtf8(m_file.readAll()); m_file.close(); // Converting tags to lower case -,- // For some reason Qt::CaseInsensitive is not everytime insensitive :-D bookmarks.replace(QLatin1String("

"))); int start = bookmarks.indexOf(QLatin1String("

")); QStringList folders("Html Import"); while (start > 0) { QString string = bookmarks.mid(start); int posOfFolder = string.indexOf(QLatin1String("

")); int posOfLink = string.indexOf(QLatin1String("

(.*)"); rx.setMinimal(true); rx.indexIn(string); // QString arguments = rx.cap(1); QString folderName = rx.cap(2).trimmed(); folders.append(folderName); start += posOfFolder + rx.cap(0).size(); } else if (nearest == posOfEndFolder) { // Next is end of folder if (!folders.isEmpty()) { folders.removeLast(); } start += posOfEndFolder + 8; } else { // Next is link QzRegExp rx("
(.*)"); rx.setMinimal(true); rx.indexIn(string); QString arguments = rx.cap(1); QString linkName = rx.cap(2).trimmed(); QzRegExp rx2("href=\"(.*)\""); rx2.setMinimal(true); rx2.indexIn(arguments); QUrl url = QUrl::fromEncoded(rx2.cap(1).trimmed().toUtf8()); start += posOfLink + rx.cap(0).size(); if (linkName.isEmpty() || url.isEmpty() || url.scheme() == QLatin1String("place") || url.scheme() == QLatin1String("about")) { continue; } BookmarksModel::Bookmark b; b.folder = folders.last(); b.title = linkName; b.url = url; list.append(b); } } return list; } qupzilla-1.6.0/src/lib/bookmarksimport/htmlimporter.h000066400000000000000000000026221226107126500230420ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef HTMLIMPORTER_H #define HTMLIMPORTER_H #include #include #include "qz_namespace.h" #include "bookmarksmodel.h" class QT_QUPZILLA_EXPORT HtmlImporter : public QObject { public: explicit HtmlImporter(QObject* parent = 0); void setFile(const QString &path); bool openFile(); QVector exportBookmarks(); bool error() { return m_error; } QString errorString() { return m_errorString; } private: QString m_path; QFile m_file; bool m_error; QString m_errorString; }; #endif // HTMLIMPORTER_H qupzilla-1.6.0/src/lib/bookmarksimport/ieimporter.cpp000066400000000000000000000043661226107126500230350ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 Mattias Cibien * * 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 3 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, see . * ============================================================ */ #include "ieimporter.h" #include "bookmarksimportdialog.h" #include #include IeImporter::IeImporter(QObject* parent) : QObject(parent) , m_error(false) , m_errorString(BookmarksImportDialog::tr("No Error")) { } void IeImporter::setFile(const QString &path) { m_path = path; } bool IeImporter::openFile() { QDir dir(m_path); if (!dir.exists()) { m_error = true; m_errorString = BookmarksImportDialog::tr("Directory does not exist."); return false; } QStringList filters; filters << "*.url"; urls = dir.entryInfoList(filters); if (urls.isEmpty()) { m_error = true; m_errorString = BookmarksImportDialog::tr("The directory does not contain any bookmarks."); return false; } return true; } QVector IeImporter::exportBookmarks() { QVector bookmarks; foreach (QFileInfo file, urls) { QSettings urlFile(file.absoluteFilePath(), QSettings::IniFormat, this); QUrl url = urlFile.value("InternetShortcut/URL").toUrl(); BookmarksModel::Bookmark bookmark; bookmark.folder = "Internet Explorer Import"; bookmark.title = file.baseName(); bookmark.url = url; bookmarks.append(bookmark); } return bookmarks; } qupzilla-1.6.0/src/lib/bookmarksimport/ieimporter.h000066400000000000000000000027341226107126500224770ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 Mattias Cibien * * 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 3 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, see . * ============================================================ */ #ifndef IEIMPORTER_H #define IEIMPORTER_H #include #include "qz_namespace.h" #include "bookmarksmodel.h" #include class IeImporter : public QObject { Q_OBJECT public: explicit IeImporter(QObject* parent = 0); void setFile(const QString &path); bool openFile(); QVector exportBookmarks(); bool error() { return m_error; } QString errorString() { return m_errorString; } private: bool m_error; QString m_errorString; QString m_path; QFileInfoList urls; }; #endif // IEIMPORTER_H qupzilla-1.6.0/src/lib/bookmarksimport/operaimporter.cpp000066400000000000000000000044451226107126500235440ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "operaimporter.h" #include "bookmarksimportdialog.h" #include "qzregexp.h" OperaImporter::OperaImporter(QObject* parent) : QObject(parent) , m_error(false) , m_errorString(BookmarksImportDialog::tr("No Error")) { } void OperaImporter::setFile(const QString &path) { m_path = path; } bool OperaImporter::openFile() { m_file.setFileName(m_path); if (!m_file.open(QFile::ReadOnly)) { m_error = true; m_errorString = BookmarksImportDialog::tr("Unable to open file."); return false; } return true; } QVector OperaImporter::exportBookmarks() { QVector list; QString bookmarks = QString::fromUtf8(m_file.readAll()); m_file.close(); QzRegExp rx("#URL(.*)CREATED", Qt::CaseSensitive); rx.setMinimal(true); int pos = 0; while ((pos = rx.indexIn(bookmarks, pos)) != -1) { QString string = rx.cap(1); pos += rx.matchedLength(); QzRegExp rx2("NAME=(.*)\\n"); rx2.setMinimal(true); rx2.indexIn(string); QString name = rx2.cap(1).trimmed(); rx2.setPattern("URL=(.*)\\n"); rx2.indexIn(string); QUrl url = QUrl::fromEncoded(rx2.cap(1).trimmed().toUtf8()); if (name.isEmpty() || url.isEmpty()) { continue; } BookmarksModel::Bookmark b; b.folder = "Opera Import"; b.title = name; b.url = url; list.append(b); } return list; } qupzilla-1.6.0/src/lib/bookmarksimport/operaimporter.h000066400000000000000000000026471226107126500232130ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef OPERAIMPORTER_H #define OPERAIMPORTER_H #include #include #include "qz_namespace.h" #include "bookmarksmodel.h" class QT_QUPZILLA_EXPORT OperaImporter : public QObject { public: explicit OperaImporter(QObject* parent = 0); void setFile(const QString &path); bool openFile(); QVector exportBookmarks(); bool error() { return m_error; } QString errorString() { return m_errorString; } private: QString m_path; QFile m_file; bool m_error; QString m_errorString; }; #endif // OPERAIMPORTER_H qupzilla-1.6.0/src/lib/cookies/000077500000000000000000000000001226107126500163525ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/cookies/cookiejar.cpp000066400000000000000000000152371226107126500210340ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "cookiejar.h" #include "qupzilla.h" #include "mainapplication.h" #include "settings.h" #include "qztools.h" #include #include #include #include #include // QTWEBKIT_VERSION_CHECK macro //#define COOKIE_DEBUG CookieJar::CookieJar(QupZilla* mainClass, QObject* parent) : QNetworkCookieJar(parent) , p_QupZilla(mainClass) { m_activeProfil = mApp->currentProfilePath(); loadSettings(); } void CookieJar::loadSettings() { Settings settings; settings.beginGroup("Cookie-Settings"); m_allowCookies = settings.value("allowCookies", true).toBool(); m_blockThirdParty = settings.value("allowCookiesFromVisitedDomainOnly", false).toBool(); m_filterTrackingCookie = settings.value("filterTrackingCookie", false).toBool(); m_deleteOnClose = settings.value("deleteCookiesOnClose", false).toBool(); m_whitelist = settings.value("whitelist", QStringList()).toStringList(); m_blacklist = settings.value("blacklist", QStringList()).toStringList(); settings.endGroup(); #if QTWEBKIT_FROM_2_3 mApp->webSettings()->setThirdPartyCookiePolicy(m_blockThirdParty ? QWebSettings::AlwaysBlockThirdPartyCookies : QWebSettings::AlwaysAllowThirdPartyCookies); #endif } void CookieJar::setAllowCookies(bool allow) { m_allowCookies = allow; } bool CookieJar::rejectCookie(const QString &domain, const QNetworkCookie &cookie) const { Q_UNUSED(domain) const QString cookieDomain = cookie.domain(); if (!m_allowCookies) { bool result = listMatchesDomain(m_whitelist, cookieDomain); if (!result) { #ifdef COOKIE_DEBUG qDebug() << "not in whitelist" << cookie; #endif return true; } } if (m_allowCookies) { bool result = listMatchesDomain(m_blacklist, cookieDomain); if (result) { #ifdef COOKIE_DEBUG qDebug() << "found in blacklist" << cookie; #endif return true; } } // This feature is now natively in QtWebKit 2.3 #if QTWEBKIT_TO_2_3 if (m_blockThirdParty) { bool result = matchDomain(cookieDomain, domain); if (!result) { #ifdef COOKIE_DEBUG qDebug() << "purged for domain mismatch" << cookie << cookieDomain << domain; #endif return true; } } #endif if (m_filterTrackingCookie && cookie.name().startsWith("__utm")) { #ifdef COOKIE_DEBUG qDebug() << "purged as tracking " << cookie; #endif return true; } return false; } bool CookieJar::setCookiesFromUrl(const QList &cookieList, const QUrl &url) { QList newList; foreach (QNetworkCookie cookie, cookieList) { // If cookie domain is empty, set it to url.host() if (cookie.domain().isEmpty()) { cookie.setDomain(url.host()); } if (!rejectCookie(url.host(), cookie)) { newList.append(cookie); } } return QNetworkCookieJar::setCookiesFromUrl(newList, url); } void CookieJar::saveCookies() { if (mApp->isPrivateSession()) { return; } QList allCookies; if (!m_deleteOnClose) { // If we are deleting cookies on close, let's just save empty cookie list allCookies = getAllCookies(); } else { // Do not delete whitelisted cookies QList cookies = getAllCookies(); int count = cookies.count(); for (int i = 0; i < count; i++) { const QNetworkCookie cookie = cookies.at(i); if (listMatchesDomain(m_whitelist, cookie.domain())) { allCookies.append(cookie); } } } QFile file(m_activeProfil + "cookies.dat"); file.open(QIODevice::WriteOnly); QDataStream stream(&file); int count = allCookies.count(); stream << count; for (int i = 0; i < count; i++) { const QNetworkCookie cookie = allCookies.at(i); if (cookie.isSessionCookie()) { continue; } stream << cookie.toRawForm(); } file.close(); } void CookieJar::restoreCookies() { if (!QFile::exists(m_activeProfil + "cookies.dat") || mApp->isPrivateSession()) { return; } QDateTime now = QDateTime::currentDateTime(); QList restoredCookies; QFile file(m_activeProfil + "cookies.dat"); file.open(QIODevice::ReadOnly); QDataStream stream(&file); int count; stream >> count; for (int i = 0; i < count; i++) { QByteArray rawForm; stream >> rawForm; const QList &cookieList = QNetworkCookie::parseCookies(rawForm); if (cookieList.isEmpty()) { continue; } const QNetworkCookie cookie = cookieList.at(0); if (cookie.expirationDate() < now) { continue; } restoredCookies.append(cookie); } file.close(); setAllCookies(restoredCookies); } void CookieJar::clearCookies() { setAllCookies(QList()); } QList CookieJar::getAllCookies() { return QNetworkCookieJar::allCookies(); } void CookieJar::setAllCookies(const QList &cookieList) { QNetworkCookieJar::setAllCookies(cookieList); } bool CookieJar::matchDomain(QString cookieDomain, QString siteDomain) { // According to RFC 6265 // Remove leading dot if (cookieDomain.startsWith(QLatin1Char('.'))) { cookieDomain = cookieDomain.mid(1); } if (siteDomain.startsWith(QLatin1Char('.'))) { siteDomain = siteDomain.mid(1); } return QzTools::matchDomain(cookieDomain, siteDomain); } bool CookieJar::listMatchesDomain(const QStringList &list, const QString &cookieDomain) { foreach (const QString &d, list) { if (matchDomain(d, cookieDomain)) { return true; } } return false; } qupzilla-1.6.0/src/lib/cookies/cookiejar.h000066400000000000000000000037121226107126500204740ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef COOKIEJAR_H #define COOKIEJAR_H #include "qz_namespace.h" #include #include #include class QupZilla; class QT_QUPZILLA_EXPORT CookieJar : public QNetworkCookieJar { public: explicit CookieJar(QupZilla* mainClass, QObject* parent = 0); void loadSettings(); bool setCookiesFromUrl(const QList &cookieList, const QUrl &url); QList getAllCookies(); void setAllCookies(const QList &cookieList); void saveCookies(); void restoreCookies(); void clearCookies(); void setAllowCookies(bool allow); static bool matchDomain(QString cookieDomain, QString siteDomain); static bool listMatchesDomain(const QStringList &list, const QString &cookieDomain); private: bool rejectCookie(const QString &domain, const QNetworkCookie &cookie) const; QupZilla* p_QupZilla; bool m_allowCookies; bool m_filterTrackingCookie; bool m_blockThirdParty; bool m_deleteOnClose; QStringList m_whitelist; QStringList m_blacklist; QString m_activeProfil; }; #endif // COOKIEJAR_H qupzilla-1.6.0/src/lib/cookies/cookiemanager.cpp000066400000000000000000000272201226107126500216650ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "cookiemanager.h" #include "ui_cookiemanager.h" #include "qupzilla.h" #include "cookiejar.h" #include "mainapplication.h" #include "qztools.h" #include "settings.h" #include #include #include #include #include #include #include CookieManager::CookieManager(QWidget* parent) : QWidget(parent) , ui(new Ui::CookieManager) , m_refreshCookieJar(true) { ui->setupUi(this); QzTools::centerWidgetOnScreen(this); if (isRightToLeft()) { ui->cookieTree->headerItem()->setTextAlignment(0, Qt::AlignRight | Qt::AlignVCenter); ui->cookieTree->headerItem()->setTextAlignment(1, Qt::AlignRight | Qt::AlignVCenter); ui->cookieTree->setLayoutDirection(Qt::LeftToRight); ui->whiteList->setLayoutDirection(Qt::LeftToRight); ui->blackList->setLayoutDirection(Qt::LeftToRight); } // Stored Cookies connect(ui->cookieTree, SIGNAL(currentItemChanged(QTreeWidgetItem*,QTreeWidgetItem*)), this, SLOT(currentItemChanged(QTreeWidgetItem*,QTreeWidgetItem*))); connect(ui->removeAll, SIGNAL(clicked()), this, SLOT(removeAll())); connect(ui->removeOne, SIGNAL(clicked()), this, SLOT(removeCookie())); connect(ui->close, SIGNAL(clicked(QAbstractButton*)), this, SLOT(close())); connect(ui->close2, SIGNAL(clicked(QAbstractButton*)), this, SLOT(close())); connect(ui->close3, SIGNAL(clicked(QAbstractButton*)), this, SLOT(close())); connect(ui->search, SIGNAL(textChanged(QString)), this, SLOT(filterString(QString))); // Cookie Filtering connect(ui->whiteAdd, SIGNAL(clicked()), this, SLOT(addWhitelist())); connect(ui->whiteRemove, SIGNAL(clicked()), this, SLOT(removeWhitelist())); connect(ui->blackAdd, SIGNAL(clicked()), this, SLOT(addBlacklist())); connect(ui->blackRemove, SIGNAL(clicked()), this, SLOT(removeBlacklist())); // Cookie Settings Settings settings; settings.beginGroup("Cookie-Settings"); ui->saveCookies->setChecked(settings.value("allowCookies", true).toBool()); if (!ui->saveCookies->isChecked()) { ui->deleteCookiesOnClose->setEnabled(false); } ui->deleteCookiesOnClose->setChecked(settings.value("deleteCookiesOnClose", false).toBool()); ui->matchExactly->setChecked(settings.value("allowCookiesFromVisitedDomainOnly", false).toBool()); ui->filterTracking->setChecked(settings.value("filterTrackingCookie", false).toBool()); settings.endGroup(); connect(ui->saveCookies, SIGNAL(toggled(bool)), this, SLOT(saveCookiesChanged(bool))); ui->search->setPlaceholderText(tr("Search")); ui->cookieTree->setDefaultItemShowMode(TreeWidget::ItemsCollapsed); ui->cookieTree->sortItems(0, Qt::AscendingOrder); ui->cookieTree->header()->setDefaultSectionSize(220); ui->cookieTree->setFocus(); QShortcut* removeShortcut = new QShortcut(QKeySequence("Del"), this); connect(removeShortcut, SIGNAL(activated()), this, SLOT(deletePressed())); QzTools::setWmClass("Cookies", this); } void CookieManager::removeAll() { QMessageBox::StandardButton button = QMessageBox::warning(this, tr("Confirmation"), tr("Are you sure to delete all cookies on your computer?"), QMessageBox::Yes | QMessageBox::No); if (button != QMessageBox::Yes) { return; } QList emptyList; mApp->cookieJar()->setAllCookies(emptyList); ui->cookieTree->clear(); } void CookieManager::removeCookie() { QTreeWidgetItem* current = ui->cookieTree->currentItem(); if (!current) { return; } QList allCookies = mApp->cookieJar()->getAllCookies(); if (current->text(1).isEmpty()) { //Remove whole cookie group const QString domain = current->data(0, Qt::UserRole + 10).toString(); foreach (const QNetworkCookie &cookie, allCookies) { if (cookie.domain() == domain || cookie.domain() == domain.mid(1)) { allCookies.removeOne(cookie); } } ui->cookieTree->deleteItem(current); } else { const QNetworkCookie cookie = qvariant_cast(current->data(0, Qt::UserRole + 10)); allCookies.removeOne(cookie); QTreeWidgetItem* parentItem = current->parent(); ui->cookieTree->deleteItem(current); if (parentItem->childCount() == 0) { ui->cookieTree->deleteItem(parentItem); } } mApp->cookieJar()->setAllCookies(allCookies); } void CookieManager::currentItemChanged(QTreeWidgetItem* current, QTreeWidgetItem* parent) { Q_UNUSED(parent); if (!current) { return; } if (current->text(1).isEmpty()) { ui->name->setText(tr("")); ui->value->setText(tr("")); ui->server->setText(tr("")); ui->path->setText(tr("")); ui->secure->setText(tr("")); ui->expiration->setText(tr("")); ui->removeOne->setText(tr("Remove cookies")); return; } const QNetworkCookie cookie = qvariant_cast(current->data(0, Qt::UserRole + 10)); ui->name->setText(cookie.name()); ui->value->setText(cookie.value()); ui->server->setText(cookie.domain()); ui->path->setText(cookie.path()); cookie.isSecure() ? ui->secure->setText(tr("Secure only")) : ui->secure->setText(tr("All connections")); cookie.isSessionCookie() ? ui->expiration->setText(tr("Session cookie")) : ui->expiration->setText(QDateTime(cookie.expirationDate()).toString("hh:mm:ss dddd d. MMMM yyyy")); ui->removeOne->setText(tr("Remove cookie")); } void CookieManager::refreshTable() { disconnect(ui->search, SIGNAL(textChanged(QString)), this, SLOT(filterString(QString))); ui->search->clear(); connect(ui->search, SIGNAL(textChanged(QString)), this, SLOT(filterString(QString))); QTimer::singleShot(0, this, SLOT(slotRefreshTable())); QTimer::singleShot(0, this, SLOT(slotRefreshFilters())); } void CookieManager::slotRefreshTable() { const QList &allCookies = mApp->cookieJar()->getAllCookies(); QApplication::setOverrideCursor(Qt::WaitCursor); ui->cookieTree->clear(); int counter = 0; QPointer guard = this; QHash hash; for (int i = 0; i < allCookies.count(); ++i) { const QNetworkCookie cookie = allCookies.at(i); QTreeWidgetItem* item; QString cookieDomain = cookie.domain(); if (cookieDomain.startsWith(QLatin1Char('.'))) { cookieDomain = cookieDomain.mid(1); } QTreeWidgetItem* findParent = hash[cookieDomain]; if (findParent) { item = new QTreeWidgetItem(findParent); } else { QTreeWidgetItem* newParent = new QTreeWidgetItem(ui->cookieTree); newParent->setText(0, cookieDomain); newParent->setIcon(0, style()->standardIcon(QStyle::SP_DirIcon)); newParent->setData(0, Qt::UserRole + 10, cookie.domain()); ui->cookieTree->addTopLevelItem(newParent); hash[cookieDomain] = newParent; item = new QTreeWidgetItem(newParent); } item->setText(0, "." + cookieDomain); item->setText(1, cookie.name()); item->setData(0, Qt::UserRole + 10, QVariant::fromValue(cookie)); ui->cookieTree->addTopLevelItem(item); ++counter; if (counter > 200) { QApplication::processEvents(); counter = 0; } if (!guard) { break; } } QApplication::restoreOverrideCursor(); } void CookieManager::slotRefreshFilters() { ui->whiteList->clear(); ui->blackList->clear(); Settings settings; settings.beginGroup("Cookie-Settings"); QStringList whiteList = settings.value("whitelist", QStringList()).toStringList(); QStringList blackList = settings.value("blacklist", QStringList()).toStringList(); settings.endGroup(); ui->whiteList->addItems(whiteList); ui->blackList->addItems(blackList); } void CookieManager::addWhitelist() { const QString server = QInputDialog::getText(this, tr("Add to whitelist"), tr("Server:")); if (server.isEmpty()) { return; } ui->whiteList->addItem(server); } void CookieManager::removeWhitelist() { delete ui->whiteList->currentItem(); } void CookieManager::addBlacklist() { const QString server = QInputDialog::getText(this, tr("Add to blacklist"), tr("Server:")); if (server.isEmpty()) { return; } ui->blackList->addItem(server); } void CookieManager::removeBlacklist() { delete ui->blackList->currentItem(); } void CookieManager::deletePressed() { if (ui->cookieTree->hasFocus()) { removeCookie(); } else if (ui->whiteList->hasFocus()) { removeWhitelist(); } else if (ui->blackList->hasFocus()) { removeBlacklist(); } } void CookieManager::saveCookiesChanged(bool state) { ui->deleteCookiesOnClose->setEnabled(state); } void CookieManager::filterString(const QString &string) { if (string.isEmpty()) { for (int i = 0; i < ui->cookieTree->topLevelItemCount(); ++i) { ui->cookieTree->topLevelItem(i)->setHidden(false); ui->cookieTree->topLevelItem(i)->setExpanded(ui->cookieTree->defaultItemShowMode() == TreeWidget::ItemsExpanded); } } else { for (int i = 0; i < ui->cookieTree->topLevelItemCount(); ++i) { QString text = "." + ui->cookieTree->topLevelItem(i)->text(0); ui->cookieTree->topLevelItem(i)->setHidden(!text.contains(string, Qt::CaseInsensitive)); ui->cookieTree->topLevelItem(i)->setExpanded(true); } } } void CookieManager::closeEvent(QCloseEvent* e) { QStringList whitelist; QStringList blacklist; for (int i = 0; i < ui->whiteList->count(); ++i) { whitelist.append(ui->whiteList->item(i)->text()); } for (int i = 0; i < ui->blackList->count(); ++i) { blacklist.append(ui->blackList->item(i)->text()); } Settings settings; settings.beginGroup("Cookie-Settings"); settings.setValue("allowCookies", ui->saveCookies->isChecked()); settings.setValue("deleteCookiesOnClose", ui->deleteCookiesOnClose->isChecked()); settings.setValue("allowCookiesFromVisitedDomainOnly", ui->matchExactly->isChecked()); settings.setValue("filterTrackingCookie", ui->filterTracking->isChecked()); settings.setValue("whitelist", whitelist); settings.setValue("blacklist", blacklist); settings.endGroup(); mApp->cookieJar()->loadSettings(); e->accept(); } void CookieManager::keyPressEvent(QKeyEvent* e) { if (e->key() == Qt::Key_Escape) { close(); } QWidget::keyPressEvent(e); } CookieManager::~CookieManager() { delete ui; } qupzilla-1.6.0/src/lib/cookies/cookiemanager.h000066400000000000000000000034221226107126500213300ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef COOKIEMANAGER_H #define COOKIEMANAGER_H #include #include "qz_namespace.h" namespace Ui { class CookieManager; } class QTreeWidgetItem; class QupZilla; class QT_QUPZILLA_EXPORT CookieManager : public QWidget { Q_OBJECT public: explicit CookieManager(QWidget* parent = 0); ~CookieManager(); void refreshTable(); private slots: void currentItemChanged(QTreeWidgetItem* current, QTreeWidgetItem* parent); void removeCookie(); void removeAll(); void slotRefreshTable(); void slotRefreshFilters(); void addWhitelist(); void removeWhitelist(); void addBlacklist(); void removeBlacklist(); void deletePressed(); void saveCookiesChanged(bool state); void filterString(const QString &string); private: void closeEvent(QCloseEvent* e); void keyPressEvent(QKeyEvent* e); Ui::CookieManager* ui; bool m_refreshCookieJar; }; #endif // COOKIEMANAGER_H qupzilla-1.6.0/src/lib/cookies/cookiemanager.ui000066400000000000000000000372571226107126500215330ustar00rootroot00000000000000 CookieManager 0 0 617 415 Cookies 4 0 Stored Cookies Find: These cookies are stored on your computer: true Server Cookie name QFrame::StyledPanel QFrame::Raised 0 0 0 6 3 0 0 Name: Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter Value: Server: Path: Secure: Expiration: <cookie not selected> Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse <cookie not selected> Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse <cookie not selected> Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse <cookie not selected> Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse <cookie not selected> Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse <cookie not selected> Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse QFrame::NoFrame QFrame::Raised 0 Remove all cookies Remove cookies 0 0 QDialogButtonBox::Close Cookie Filtering <b>Cookie whitelist</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) true Qt::Vertical 20 40 Add Remove <b>Cookie blacklist</b> Cookies from these servers will NEVER be accepted true Qt::Vertical 20 40 Add Remove QDialogButtonBox::Close Settings <b>Cookie Settings</b> Allow storing of cookies Qt::Horizontal QSizePolicy::Fixed 10 20 Qt::Horizontal QSizePolicy::Fixed 40 20 Delete cookies on close Qt::Horizontal 344 20 Match domain exactly Filter tracking cookies Qt::Vertical 20 40 <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! true QDialogButtonBox::Close TreeWidget QTreeWidget
treewidget.h
SqueezeLabelV2 QLabel
squeezelabelv2.h
qupzilla-1.6.0/src/lib/data/000077500000000000000000000000001226107126500156275ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/data/certs.qrc000066400000000000000000000002121226107126500174510ustar00rootroot00000000000000 data/bundle_version data/ca-bundle.crt qupzilla-1.6.0/src/lib/data/data.qrc000066400000000000000000000002101226107126500172400ustar00rootroot00000000000000 data/browsedata.db data/profiles.ini qupzilla-1.6.0/src/lib/data/data/000077500000000000000000000000001226107126500165405ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/data/data/browsedata.db000066400000000000000000000500001226107126500211750ustar00rootroot00000000000000SQLite format 3@ ,,-           __y33tableautofill_exceptionsautofill_exceptionsCREATE TABLE autofill_exceptions (id INTEGER PRIMARY KEY, server TEXT){tableautofillautofillCREATE TABLE autofill (data TEXT, id INTEGER PRIMARY KEY, password TEXT, server TEXT, username TEXT, last_used NUMERIC)W tableiconsiconsCREATE TABLE icons (icon TEXT, id INTEGER PRIMARY KEY, url TEXT)a)tablerssrssCREATE TABLE rss (icon TEXT, address TEXT, id INTEGER PRIMARY KEY, title TEXT) mtablehistoryhistoryCREATE TABLE history (title VARCHAR(200), count NUMERIC, id INTEGER PRIMARY KEY, date NUMERIC, url VARCHAR(256))p7tablefoldersfoldersCREATE TABLE folders (parent TEXT, id INTEGER PRIMARY KEY, name TEXT, subfolder TEXT) tablebookmarksbookmarksCREATE TABLE bookmarks (icon TEXT, folder TEXT, id INTEGER PRIMARY KEY, title VARCHAR(200), url VARCHAR(200), position NUMERIC) = eO!qindexhistoryUrlhistoryCREATE UNIQUE INDEX historyUrl ON history(url ASC)L))Stablesearch_enginessearch_engines CREATE TABLE search_engines (id INTEGER PRIMARY KEY, name TEXT, icon TEXT, url TEXT, shortcut TEXT, suggestionsUrl TEXT, suggestionsParameters TEXT, postData TEXT)U )sindexautofillServerautofill CREATE INDEX autofillServer ON autofill(server ASC)~ ;3indexautofillExceptionServerautofill_exceptions CREATE INDEX autofillExceptionServer ON autofill_exceptions(server ASC)N %kindexhistoryTitlehistoryCREATE INDEX historyTitle ON history(title ASC)V )sindexbookmarksTitlebookmarksCREATE INDEX bookmarksTitle ON bookmarks(title ASC)P %kindexbookmarksUrlbookmarksCREATE INDEX bookmarksUrl ON bookmarks(url ASC)GiindexiconsUrliconsCREATE UNIQUE INDEX iconsUrl ON icons(url ASC)     QupZilla QupZilla =http://www.qupzilla.com/=http://www.qupzilla.com/   vv0'=PNG  IHDRasBIT|d pHYs+IDAT8mOh\Uw}w23/LIM\dAHt%W.ĕ. ŝB)HʅZ$Vh% -iUCiM2vͼ7?B i>:g~6ruխ:seW.^{乯?/F^E$ Q~~eY-+),Y/kE!wVz?lZn^~""1"x=saV/y,PUc` 5aA)^h$#|! ƈW8>(/|*>{99s'+v %"Ge=:sJ 4qimT#U4D baɔt9gޯorjJ)z4^/zyu4J;誀%ei;愈;)HtF%AZYaH@G9xtn]bZnlL4D^dJ(2H,;)a[J`HZ~NcT@ҏ! oO8Âwt(ia U ]d#3c)jJd m ymEEE_#0f`Q+t7o9Rk`6M>?VO5h&/mٺx W =U&\-Z t^s/$CT˿[ aOhwfu\X:{}љr| 1\ӍՃ#pIENDB`bookmarksMenuQupZillahttp://www.qupzilla.com/ ss 0-=PNG  IHDRasBIT|d pHYs+IDAT8mOh\Uw}w23/LIM\dAHt%W.ĕ. ŝB)HʅZ$Vh% -iUCiM2vͼ7?B i>:g~6ruխ:seW.^{乯?/F^E$ Q~~eY-+),Y/kE!wVz?lZn^~""1"x=saV/y,PUc` 5aA)^h$#|! ƈW8>(/|*>{99s'+v %"Ge=:sJ 4qimT#U4D baɔt9gޯorjJ)z4^/zyu4J;誀%ei;愈;)HtF%AZYaH@G9xtn]bZnlL4D^dJ(2H,;)a[J`HZ~NcT@ҏ! oO8Âwt(ia U ]d#3c)jJd m ymEEE_#0f`Q+t7o9Rk`6M>?VO5h&/mٺx W =U&\-Z t^s/$CT˿[ aOhwfu\X:{}љr| 1\ӍՃ#pIENDB`bookmarksToolbarQupZillahttp://www.qupzilla.com/qupzilla-1.6.0/src/lib/data/data/bundle_version000066400000000000000000000000021226107126500214710ustar00rootroot000000000000006 qupzilla-1.6.0/src/lib/data/data/ca-bundle.crt000066400000000000000000017562731226107126500211310ustar00rootroot00000000000000-----BEGIN CERTIFICATE----- MIIHWTCCBUGgAwIBAgIDCkGKMA0GCSqGSIb3DQEBCwUAMHkxEDAOBgNVBAoTB1Jv b3QgQ0ExHjAcBgNVBAsTFWh0dHA6Ly93d3cuY2FjZXJ0Lm9yZzEiMCAGA1UEAxMZ Q0EgQ2VydCBTaWduaW5nIEF1dGhvcml0eTEhMB8GCSqGSIb3DQEJARYSc3VwcG9y dEBjYWNlcnQub3JnMB4XDTExMDUyMzE3NDgwMloXDTIxMDUyMDE3NDgwMlowVDEU MBIGA1UEChMLQ0FjZXJ0IEluYy4xHjAcBgNVBAsTFWh0dHA6Ly93d3cuQ0FjZXJ0 Lm9yZzEcMBoGA1UEAxMTQ0FjZXJ0IENsYXNzIDMgUm9vdDCCAiIwDQYJKoZIhvcN AQEBBQADggIPADCCAgoCggIBAKtJNRFIfNImflOUz0Op3SjXQiqL84d4GVh8D57a iX3h++tykA10oZZkq5+gJJlz2uJVdscXe/UErEa4w75/ZI0QbCTzYZzA8pD6Ueb1 aQFjww9W4kpCz+JEjCUoqMV5CX1GuYrz6fM0KQhF5Byfy5QEHIGoFLOYZcRD7E6C jQnRvapbjZLQ7N6QxX8KwuPr5jFaXnQ+lzNZ6MMDPWAzv/fRb0fEze5ig1JuLgia pNkVGJGmhZJHsK5I6223IeyFGmhyNav/8BBdwPSUp2rVO5J+TJAFfpPBLIukjmJ0 FXFuC3ED6q8VOJrU0gVyb4z5K+taciX5OUbjchs+BMNkJyIQKopPWKcDrb60LhPt XapI19V91Cp7XPpGBFDkzA5CW4zt2/LP/JaT4NsRNlRiNDiPDGCbO5dWOK3z0luL oFvqTpa4fNfVoIZwQNORKbeiPK31jLvPGpKK5DR7wNhsX+kKwsOnIJpa3yxdUly6 R9Wb7yQocDggL9V/KcCyQQNokszgnMyXS0XvOhAKq3A6mJVwrTWx6oUrpByAITGp rmB6gCZIALgBwJNjVSKRPFbnr9s6JfOPMVTqJouBWfmh0VMRxXudA/Z0EeBtsSw/ LIaRmXGapneLNGDRFLQsrJ2vjBDTn8Rq+G8T/HNZ92ZCdB6K4/jc0m+YnMtHmJVA BfvpAgMBAAGjggINMIICCTAdBgNVHQ4EFgQUdahxYEyIE/B42Yl3tW3Fid+8sXow gaMGA1UdIwSBmzCBmIAUFrUyG9TH8+DmjvO90rA67rI5GNGhfaR7MHkxEDAOBgNV BAoTB1Jvb3QgQ0ExHjAcBgNVBAsTFWh0dHA6Ly93d3cuY2FjZXJ0Lm9yZzEiMCAG A1UEAxMZQ0EgQ2VydCBTaWduaW5nIEF1dGhvcml0eTEhMB8GCSqGSIb3DQEJARYS c3VwcG9ydEBjYWNlcnQub3JnggEAMA8GA1UdEwEB/wQFMAMBAf8wXQYIKwYBBQUH AQEEUTBPMCMGCCsGAQUFBzABhhdodHRwOi8vb2NzcC5DQWNlcnQub3JnLzAoBggr BgEFBQcwAoYcaHR0cDovL3d3dy5DQWNlcnQub3JnL2NhLmNydDBKBgNVHSAEQzBB MD8GCCsGAQQBgZBKMDMwMQYIKwYBBQUHAgEWJWh0dHA6Ly93d3cuQ0FjZXJ0Lm9y Zy9pbmRleC5waHA/aWQ9MTAwNAYJYIZIAYb4QgEIBCcWJWh0dHA6Ly93d3cuQ0Fj ZXJ0Lm9yZy9pbmRleC5waHA/aWQ9MTAwUAYJYIZIAYb4QgENBEMWQVRvIGdldCB5 b3VyIG93biBjZXJ0aWZpY2F0ZSBmb3IgRlJFRSwgZ28gdG8gaHR0cDovL3d3dy5D QWNlcnQub3JnMA0GCSqGSIb3DQEBCwUAA4ICAQApKIWuRKm5r6R5E/CooyuXYPNc 7uMvwfbiZqARrjY3OnYVBFPqQvX56sAV2KaC2eRhrnILKVyQQ+hBsuF32wITRHhH Va9Y/MyY9kW50SD42CEH/m2qc9SzxgfpCYXMO/K2viwcJdVxjDm1Luq+GIG6sJO4 D+Pm1yaMMVpyA4RS5qb1MyJFCsgLDYq4Nm+QCaGrvdfVTi5xotSu+qdUK+s1jVq3 VIgv7nSf7UgWyg1I0JTTrKSi9iTfkuO960NAkW4cGI5WtIIS86mTn9S8nK2cde5a lxuV53QtHA+wLJef+6kzOXrnAzqSjiL2jA3k2X4Ndhj3AfnvlpaiVXPAPHG0HRpW Q7fDCo1y/OIQCQtBzoyUoPkD/XFzS4pXM+WOdH4VAQDmzEoc53+VGS3FpQyLu7Xt hbNc09+4ufLKxw0BFKxwWMWMjTPUnWajGlCVI/xI4AZDEtnNp4Y5LzZyo4AQ5OHz 0ctbGsDkgJp8E3MGT9ujayQKurMcvEp4u+XjdTilSKeiHq921F73OIZWWonO1sOn ebJSoMbxhbQljPI/lrMQ2Y1sVzufb4Y6GIIiNsiwkTjbKqGTqoQ/9SdlrnPVyNXT d+pLncdBu8fA46A/5H2kjXPmEkvfoXNzczqA6NXLji/L6hOn1kGLrPo8idck9U60 4GGSt/M3mMS+lqO3ig== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIHPTCCBSWgAwIBAgIBADANBgkqhkiG9w0BAQQFADB5MRAwDgYDVQQKEwdSb290 IENBMR4wHAYDVQQLExVodHRwOi8vd3d3LmNhY2VydC5vcmcxIjAgBgNVBAMTGUNB IENlcnQgU2lnbmluZyBBdXRob3JpdHkxITAfBgkqhkiG9w0BCQEWEnN1cHBvcnRA Y2FjZXJ0Lm9yZzAeFw0wMzAzMzAxMjI5NDlaFw0zMzAzMjkxMjI5NDlaMHkxEDAO BgNVBAoTB1Jvb3QgQ0ExHjAcBgNVBAsTFWh0dHA6Ly93d3cuY2FjZXJ0Lm9yZzEi MCAGA1UEAxMZQ0EgQ2VydCBTaWduaW5nIEF1dGhvcml0eTEhMB8GCSqGSIb3DQEJ ARYSc3VwcG9ydEBjYWNlcnQub3JnMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIIC CgKCAgEAziLA4kZ97DYoB1CW8qAzQIxL8TtmPzHlawI229Z89vGIj053NgVBlfkJ 8BLPRoZzYLdufujAWGSuzbCtRRcMY/pnCujW0r8+55jE8Ez64AO7NV1sId6eINm6 zWYyN3L69wj1x81YyY7nDl7qPv4coRQKFWyGhFtkZip6qUtTefWIonvuLwphK42y fk1WpRPs6tqSnqxEQR5YYGUFZvjARL3LlPdCfgv3ZWiYUQXw8wWRBB0bF4LsyFe7 w2t6iPGwcswlWyCR7BYCEo8y6RcYSNDHBS4CMEK4JZwFaz+qOqfrU0j36NK2B5jc G8Y0f3/JHIJ6BVgrCFvzOKKrF11myZjXnhCLotLddJr3cQxyYN/Nb5gznZY0dj4k epKwDpUeb+agRThHqtdB7Uq3EvbXG4OKDy7YCbZZ16oE/9KTfWgu3YtLq1i6L43q laegw1SJpfvbi1EinbLDvhG+LJGGi5Z4rSDTii8aP8bQUWWHIbEZAWV/RRyH9XzQ QUxPKZgh/TMfdQwEUfoZd9vUFBzugcMd9Zi3aQaRIt0AUMyBMawSB3s42mhb5ivU fslfrejrckzzAeVLIL+aplfKkQABi6F1ITe1Yw1nPkZPcCBnzsXWWdsC4PDSy826 YreQQejdIOQpvGQpQsgi3Hia/0PsmBsJUUtaWsJx8cTLc6nloQsCAwEAAaOCAc4w ggHKMB0GA1UdDgQWBBQWtTIb1Mfz4OaO873SsDrusjkY0TCBowYDVR0jBIGbMIGY gBQWtTIb1Mfz4OaO873SsDrusjkY0aF9pHsweTEQMA4GA1UEChMHUm9vdCBDQTEe MBwGA1UECxMVaHR0cDovL3d3dy5jYWNlcnQub3JnMSIwIAYDVQQDExlDQSBDZXJ0 IFNpZ25pbmcgQXV0aG9yaXR5MSEwHwYJKoZIhvcNAQkBFhJzdXBwb3J0QGNhY2Vy dC5vcmeCAQAwDwYDVR0TAQH/BAUwAwEB/zAyBgNVHR8EKzApMCegJaAjhiFodHRw czovL3d3dy5jYWNlcnQub3JnL3Jldm9rZS5jcmwwMAYJYIZIAYb4QgEEBCMWIWh0 dHBzOi8vd3d3LmNhY2VydC5vcmcvcmV2b2tlLmNybDA0BglghkgBhvhCAQgEJxYl aHR0cDovL3d3dy5jYWNlcnQub3JnL2luZGV4LnBocD9pZD0xMDBWBglghkgBhvhC AQ0ESRZHVG8gZ2V0IHlvdXIgb3duIGNlcnRpZmljYXRlIGZvciBGUkVFIGhlYWQg b3ZlciB0byBodHRwOi8vd3d3LmNhY2VydC5vcmcwDQYJKoZIhvcNAQEEBQADggIB ACjH7pyCArpcgBLKNQodgW+JapnM8mgPf6fhjViVPr3yBsOQWqy1YPaZQwGjiHCc nWKdpIevZ1gNMDY75q1I08t0AoZxPuIrA2jxNGJARjtT6ij0rPtmlVOKTV39O9lg 18p5aTuxZZKmxoGCXJzN600BiqXfEVWqFcofN8CCmHBh22p8lqOOLlQ+TyGpkO/c gr/c6EWtTZBzCDyUZbAEmXZ/4rzCahWqlwQ3JNgelE5tDlG+1sSPypZt90Pf6DBl Jzt7u0NDY8RD97LsaMzhGY4i+5jhe1o+ATc7iwiwovOVThrLm82asduycPAtStvY sONvRUgzEv/+PDIqVPfE94rwiCPCR/5kenHA0R6mY7AHfqQv0wGP3J8rtsYIqQ+T SCX8Ev2fQtzzxD72V7DX3WnRBnc0CkvSyqD/HMaMyRa+xMwyN2hzXwj7UfdJUzYF CpUCTPJ5GhD22Dp1nPMd8aINcGeGG7MW9S/lpOt5hvk9C8JzC6WZrG/8Z7jlLwum GCSNe9FINSkYQKyTYOGWhlC0elnYjyELn8+CkcY7v2vcB5G5l1YjqrZslMZIBjzk zk6q5PYvCdxTby78dOs6Y5nCpqyJvKeyRKANihDjbPIky/qbn3BHLt4Ui9SyIAmW omTxJBzcoTWcFbLUvFUufQb1nA5V9FrWk9p2rSVzTMVD -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFtTCCA52gAwIBAgIIYY3HhjsBggUwDQYJKoZIhvcNAQEFBQAwRDEWMBQGA1UE AwwNQUNFRElDT00gUm9vdDEMMAoGA1UECwwDUEtJMQ8wDQYDVQQKDAZFRElDT00x CzAJBgNVBAYTAkVTMB4XDTA4MDQxODE2MjQyMloXDTI4MDQxMzE2MjQyMlowRDEW MBQGA1UEAwwNQUNFRElDT00gUm9vdDEMMAoGA1UECwwDUEtJMQ8wDQYDVQQKDAZF RElDT00xCzAJBgNVBAYTAkVTMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC AgEA/5KV4WgGdrQsyFhIyv2AVClVYyT/kGWbEHV7w2rbYgIB8hiGtXxaOLHkWLn7 09gtn70yN78sFW2+tfQh0hOR2QetAQXW8713zl9CgQr5auODAKgrLlUTY4HKRxx7 XBZXehuDYAQ6PmXDzQHe3qTWDLqO3tkE7hdWIpuPY/1NFgu3e3eM+SW10W2ZEi5P Grjm6gSSrj0RuVFCPYewMYWveVqc/udOXpJPQ/yrOq2lEiZmueIM15jO1FillUAK t0SdE3QrwqXrIhWYENiLxQSfHY9g5QYbm8+5eaA9oiM/Qj9r+hwDezCNzmzAv+Yb X79nuIQZ1RXve8uQNjFiybwCq0Zfm/4aaJQ0PZCOrfbkHQl/Sog4P75n/TSW9R28 MHTLOO7VbKvU/PQAtwBbhTIWdjPp2KOZnQUAqhbm84F9b32qhm2tFXTTxKJxqvQU fecyuB+81fFOvW8XAjnXDpVCOscAPukmYxHqC9FK/xidstd7LzrZlvvoHpKuE1XI 2Sf23EgbsCTBheN3nZqk8wwRHQ3ItBTutYJXCb8gWH8vIiPYcMt5bMlL8qkqyPyH K9caUPgn6C9D4zq92Fdx/c6mUlv53U3t5fZvie27k5x2IXXwkkwp9y+cAS7+UEae ZAwUswdbxcJzbPEHXEUkFDWug/FqTYl6+rPYLWbwNof1K1MCAwEAAaOBqjCBpzAP BgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFKaz4SsrSbbXc6GqlPUB53NlTKxQ MA4GA1UdDwEB/wQEAwIBhjAdBgNVHQ4EFgQUprPhKytJttdzoaqU9QHnc2VMrFAw RAYDVR0gBD0wOzA5BgRVHSAAMDEwLwYIKwYBBQUHAgEWI2h0dHA6Ly9hY2VkaWNv bS5lZGljb21ncm91cC5jb20vZG9jMA0GCSqGSIb3DQEBBQUAA4ICAQDOLAtSUWIm fQwng4/F9tqgaHtPkl7qpHMyEVNEskTLnewPeUKzEKbHDZ3Ltvo/Onzqv4hTGzz3 gvoFNTPhNahXwOf9jU8/kzJPeGYDdwdY6ZXIfj7QeQCM8htRM5u8lOk6e25SLTKe I6RF+7YuE7CLGLHdztUdp0J/Vb77W7tH1PwkzQSulgUV1qzOMPPKC8W64iLgpq0i 5ALudBF/TP94HTXa5gI06xgSYXcGCRZj6hitoocf8seACQl1ThCojz2GuHURwCRi ipZ7SkXp7FnFvmuD5uHorLUwHv4FB4D54SMNUI8FmP8sX+g7tq3PgbUhh8oIKiMn MCArz+2UW6yyetLHKKGKC5tNSixthT8Jcjxn4tncB7rrZXtaAWPWkFtPF2Y9fwsZ o5NjEFIqnxQWWOLcpfShFosOkYuByptZ+thrkQdlVV9SH686+5DdaaVbnG0OLLb6 zqylfDJKZ0DcMDQj3dcEI2bw/FWAp/tmGYI1Z2JwOV5vx+qQQEQIHriy1tvuWacN GHk0vFQYXlPKNFHtRQrmjseCNj6nOGOpMCwXEGCSn1WHElkQwg9naRHMTh5+Spqt r0CodaxWkHS4oJyleW/c6RrIaQXpuvoDs3zk4E7Czp3otkYNbn5XOmeUwssfnHdK Z05phkOTOPu220+DkdRgfks+KzgHVZhepA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIGZjCCBE6gAwIBAgIPB35Sk3vgFeNX8GmMy+wMMA0GCSqGSIb3DQEBBQUAMHsx CzAJBgNVBAYTAkNPMUcwRQYDVQQKDD5Tb2NpZWRhZCBDYW1lcmFsIGRlIENlcnRp ZmljYWNpw7NuIERpZ2l0YWwgLSBDZXJ0aWPDoW1hcmEgUy5BLjEjMCEGA1UEAwwa QUMgUmHDrXogQ2VydGljw6FtYXJhIFMuQS4wHhcNMDYxMTI3MjA0NjI5WhcNMzAw NDAyMjE0MjAyWjB7MQswCQYDVQQGEwJDTzFHMEUGA1UECgw+U29jaWVkYWQgQ2Ft ZXJhbCBkZSBDZXJ0aWZpY2FjacOzbiBEaWdpdGFsIC0gQ2VydGljw6FtYXJhIFMu QS4xIzAhBgNVBAMMGkFDIFJhw616IENlcnRpY8OhbWFyYSBTLkEuMIICIjANBgkq hkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAq2uJo1PMSCMI+8PPUZYILrgIem08kBeG qentLhM0R7LQcNzJPNCNyu5LF6vQhbCnIwTLqKL85XXbQMpiiY9QngE9JlsYhBzL fDe3fezTf3MZsGqy2IiKLUV0qPezuMDU2s0iiXRNWhU5cxh0T7XrmafBHoi0wpOQ Y5fzp6cSsgkiBzPZkc0OnB8OIMfuuzONj8LSWKdf/WU34ojC2I+GdV75LaeHM/J4 Ny+LvB2GNzmxlPLYvEqcgxhaBvzz1NS6jBUJJfD5to0EfhcSM2tXSExP2yYe68yQ 54v5aHxwD6Mq0Do43zeX4lvegGHTgNiRg0JaTASJaBE8rF9ogEHMYELODVoqDA+b MMCm8Ibbq0nXl21Ii/kDwFJnmxL3wvIumGVC2daa49AZMQyth9VXAnow6IYm+48j ilSH5L887uvDdUhfHjlvgWJsxS3EF1QZtzeNnDeRyPYL1epjb4OsOMLzP96a++Ej YfDIJss2yKHzMI+ko6Kh3VOz3vCaMh+DkXkwwakfU5tTohVTP92dsxA7SH2JD/zt A/X7JWR1DhcZDY8AFmd5ekD8LVkH2ZD6mq093ICK5lw1omdMEWux+IBkAC1vImHF rEsm5VoQgpukg3s0956JkSCXjrdCx2bD0Omk1vUgjcTDlaxECp1bczwmPS9KvqfJ pxAe+59QafMCAwEAAaOB5jCB4zAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE AwIBBjAdBgNVHQ4EFgQU0QnQ6dfOeXRU+Tows/RtLAMDG2gwgaAGA1UdIASBmDCB lTCBkgYEVR0gADCBiTArBggrBgEFBQcCARYfaHR0cDovL3d3dy5jZXJ0aWNhbWFy YS5jb20vZHBjLzBaBggrBgEFBQcCAjBOGkxMaW1pdGFjaW9uZXMgZGUgZ2FyYW50 7WFzIGRlIGVzdGUgY2VydGlmaWNhZG8gc2UgcHVlZGVuIGVuY29udHJhciBlbiBs YSBEUEMuMA0GCSqGSIb3DQEBBQUAA4ICAQBclLW4RZFNjmEfAygPU3zmpFmps4p6 xbD/CHwso3EcIRNnoZUSQDWDg4902zNc8El2CoFS3UnUmjIz75uny3XlesuXEpBc unvFm9+7OSPI/5jOCk0iAUgHforA1SBClETvv3eiiWdIG0ADBaGJ7M9i4z0ldma/ Jre7Ir5v/zlXdLp6yQGVwZVR6Kss+LGGIOk/yzVb0hfpKv6DExdA7ohiZVvVO2Dp ezy4ydV/NgIlqmjCMRW3MGXrfx1IebHPOeJCgBbT9ZMj/EyXyVo3bHwi2ErN0o42 gzmRkBDI8ck1fj+404HGIGQatlDCIaR43NAvO2STdPCWkPHv+wlaNECW8DYSwaN0 jJN+Qd53i+yG2dIPPy3RzECiiWZIHiCznCNZc6lEc7wkeZBWN7PGKX6jD/EpOe9+ XCgycDWs2rjIdWb8m0w5R44bb5tNAlQiM+9hup4phO9OSzNHdpdqy35f/RWmnkJD W2ZaiogN9xa5P1FlK2Zqi9E4UqLWRhH6/JocdJ6PlwsCT2TG9WjTSy3/pDceiz+/ RL5hRqGEPQgnTIEgd4kI6mdAXmwIUV80WoyWaM3X94nCHNMyAK9Sy9NgWyo6R35r MDOhYil/SrnhLecUIw4OGEfhefwVVdCx/CVxY3UzHCMrr1zZ7Ud3YA47Dx7SwNxk BYn8eNZcLCZDqQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFuzCCA6OgAwIBAgIIVwoRl0LE48wwDQYJKoZIhvcNAQELBQAwazELMAkGA1UE BhMCSVQxDjAMBgNVBAcMBU1pbGFuMSMwIQYDVQQKDBpBY3RhbGlzIFMucC5BLi8w MzM1ODUyMDk2NzEnMCUGA1UEAwweQWN0YWxpcyBBdXRoZW50aWNhdGlvbiBSb290 IENBMB4XDTExMDkyMjExMjIwMloXDTMwMDkyMjExMjIwMlowazELMAkGA1UEBhMC SVQxDjAMBgNVBAcMBU1pbGFuMSMwIQYDVQQKDBpBY3RhbGlzIFMucC5BLi8wMzM1 ODUyMDk2NzEnMCUGA1UEAwweQWN0YWxpcyBBdXRoZW50aWNhdGlvbiBSb290IENB MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAp8bEpSmkLO/lGMWwUKNv UTufClrJwkg4CsIcoBh/kbWHuUA/3R1oHwiD1S0eiKD4j1aPbZkCkpAW1V8IbInX 4ay8IMKx4INRimlNAJZaby/ARH6jDuSRzVju3PvHHkVH3Se5CAGfpiEd9UEtL0z9 KK3giq0itFZljoZUj5NDKd45RnijMCO6zfB9E1fAXdKDa0hMxKufgFpbOr3JpyI/ gCczWw63igxdBzcIy2zSekciRDXFzMwujt0q7bd9Zg1fYVEiVRvjRuPjPdA1Yprb rxTIW6HMiRvhMCb8oJsfgadHHwTrozmSBp+Z07/T6k9QnBn+locePGX2oxgkg4YQ 51Q+qDp2JE+BIcXjDwL4k5RHILv+1A7TaLndxHqEguNTVHnd25zS8gebLra8Pu2F be8lEfKXGkJh90qX6IuxEAf6ZYGyojnP9zz/GPvG8VqLWeICrHuS0E4UT1lF9gxe KF+w6D9Fz8+vm2/7hNN3WpVvrJSEnu68wEqPSpP4RCHiMUVhUE4Q2OM1fEwZtN4F v6MGn8i1zeQf1xcGDXqVdFUNaBr8EBtiZJ1t4JWgw5QHVw0U5r0F+7if5t+L4sbn fpb2U8WANFAoWPASUHEXMLrmeGO89LKtmyuy/uE5jF66CyCU3nuDuP/jVo23Eek7 jPKxwV2dpAtMK9myGPW1n0sCAwEAAaNjMGEwHQYDVR0OBBYEFFLYiDrIn3hm7Ynz ezhwlMkCAjbQMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUUtiIOsifeGbt ifN7OHCUyQICNtAwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4ICAQAL e3KHwGCmSUyIWOYdiPcUZEim2FgKDk8TNd81HdTtBjHIgT5q1d07GjLukD0R0i70 jsNjLiNmsGe+b7bAEzlgqqI0JZN1Ut6nna0Oh4lScWoWPBkdg/iaKWW+9D+a2fDz WochcYBNy+A4mz+7+uAwTc+G02UQGRjRlwKxK3JCaKygvU5a2hi/a5iB0P2avl4V SM0RFbnAKVy06Ij3Pjaut2L9HmLecHgQHEhb2rykOLpn7VU+Xlff1ANATIGk0k9j pwlCCRT8AKnCgHNPLsBA2RF7SOp6AsDT6ygBJlh0wcBzIm2Tlf05fbsq4/aC4yyX X04fkZT6/iyj2HYauE2yOE+b+h1IYHkm4vP9qdCa6HCPSXrW5b0KDtst842/6+Ok fcvHlXHo2qN8xcL4dJIEG4aspCJTQLas/kx2z/uUMsA1n3Y/buWQbqCmJqK4LL7R K4X9p2jIugErsWx0Hbhzlefut8cl8ABMALJ+tguLHPPAUJ4lueAI3jZm/zel0btU ZCzJJ7VLkn5l/9Mt4blOvH+kQSGQQXemOR/qnuOf0GZvBeyqdn6/axag67XH/JJU LysRJyU3eExRarDzzFhdFPFqSBX/wge2sY0PjlxQRrM9vwGYT7JZVEc+NHt4bVaT LnPqZih4zR0Uv6CPLy64Lo7yFIrM6bV8+2ydDKXhlg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIENjCCAx6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBvMQswCQYDVQQGEwJTRTEU MBIGA1UEChMLQWRkVHJ1c3QgQUIxJjAkBgNVBAsTHUFkZFRydXN0IEV4dGVybmFs IFRUUCBOZXR3b3JrMSIwIAYDVQQDExlBZGRUcnVzdCBFeHRlcm5hbCBDQSBSb290 MB4XDTAwMDUzMDEwNDgzOFoXDTIwMDUzMDEwNDgzOFowbzELMAkGA1UEBhMCU0Ux FDASBgNVBAoTC0FkZFRydXN0IEFCMSYwJAYDVQQLEx1BZGRUcnVzdCBFeHRlcm5h bCBUVFAgTmV0d29yazEiMCAGA1UEAxMZQWRkVHJ1c3QgRXh0ZXJuYWwgQ0EgUm9v dDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALf3GjPm8gAELTngTlvt H7xsD821+iO2zt6bETOXpClMfZOfvUq8k+0DGuOPz+VtUFrWlymUWoCwSXrbLpX9 uMq/NzgtHj6RQa1wVsfwTz/oMp50ysiQVOnGXw94nZpAPA6sYapeFI+eh6FqUNzX mk6vBbOmcZSccbNQYArHE504B4YCqOmoaSYYkKtMsE8jqzpPhNjfzp/haW+710LX a0Tkx63ubUFfclpxCDezeWWkWaCUN/cALw3CknLa0Dhy2xSoRcRdKn23tNbE7qzN E0S3ySvdQwAl+mG5aWpYIxG3pzOPVnVZ9c0p10a3CitlttNCbxWyuHv77+ldU9U0 WicCAwEAAaOB3DCB2TAdBgNVHQ4EFgQUrb2YejS0Jvf6xCZU7wO94CTLVBowCwYD VR0PBAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wgZkGA1UdIwSBkTCBjoAUrb2YejS0 Jvf6xCZU7wO94CTLVBqhc6RxMG8xCzAJBgNVBAYTAlNFMRQwEgYDVQQKEwtBZGRU cnVzdCBBQjEmMCQGA1UECxMdQWRkVHJ1c3QgRXh0ZXJuYWwgVFRQIE5ldHdvcmsx IjAgBgNVBAMTGUFkZFRydXN0IEV4dGVybmFsIENBIFJvb3SCAQEwDQYJKoZIhvcN AQEFBQADggEBALCb4IUlwtYj4g+WBpKdQZic2YR5gdkeWxQHIzZlj7DYd7usQWxH YINRsPkyPef89iYTx4AWpb9a/IfPeHmJIZriTAcKhjW88t5RxNKWt9x+Tu5w/Rw5 6wwCURQtjr0W4MHfRnXnJK3s9EK0hZNwEGe6nQY1ShjTK3rMUUKhemPR5ruhxSvC Nr4TDea9Y355e6cJDUCrat2PisP29owaQgVR1EX1n6diIWgVIEM8med8vSTYqZEX c4g/VhsxOBi0cQ+azcgOno4uG+GMmIPLHzHxREzGBHNJdmAPx/i9F4BrLunMTA5a mnkPIAou1Z5jJh5VkpTYghdae9C8x49OhgQ= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEGDCCAwCgAwIBAgIBATANBgkqhkiG9w0BAQUFADBlMQswCQYDVQQGEwJTRTEU MBIGA1UEChMLQWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRUUCBOZXR3 b3JrMSEwHwYDVQQDExhBZGRUcnVzdCBDbGFzcyAxIENBIFJvb3QwHhcNMDAwNTMw MTAzODMxWhcNMjAwNTMwMTAzODMxWjBlMQswCQYDVQQGEwJTRTEUMBIGA1UEChML QWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRUUCBOZXR3b3JrMSEwHwYD VQQDExhBZGRUcnVzdCBDbGFzcyAxIENBIFJvb3QwggEiMA0GCSqGSIb3DQEBAQUA A4IBDwAwggEKAoIBAQCWltQhSWDia+hBBwzexODcEyPNwTXH+9ZOEQpnXvUGW2ul CDtbKRY654eyNAbFvAWlA3yCyykQruGIgb3WntP+LVbBFc7jJp0VLhD7Bo8wBN6n tGO0/7Gcrjyvd7ZWxbWroulpOj0OM3kyP3CCkplhbY0wCI9xP6ZIVxn4JdxLZlyl dI+Yrsj5wAYi56xz36Uu+1LcsRVlIPo1Zmne3yzxbrww2ywkEtvrNTVokMsAsJch PXQhI2U0K7t4WaPW4XY5mqRJjox0r26kmqPZm9I4XJuiGMx1I4S+6+JNM3GOGvDC +Mcdoq0Dlyz4zyXG9rgkMbFjXZJ/Y/AlyVMuH79NAgMBAAGjgdIwgc8wHQYDVR0O BBYEFJWxtPCUtr3H2tERCSG+wa9J/RB7MAsGA1UdDwQEAwIBBjAPBgNVHRMBAf8E BTADAQH/MIGPBgNVHSMEgYcwgYSAFJWxtPCUtr3H2tERCSG+wa9J/RB7oWmkZzBl MQswCQYDVQQGEwJTRTEUMBIGA1UEChMLQWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFk ZFRydXN0IFRUUCBOZXR3b3JrMSEwHwYDVQQDExhBZGRUcnVzdCBDbGFzcyAxIENB IFJvb3SCAQEwDQYJKoZIhvcNAQEFBQADggEBACxtZBsfzQ3duQH6lmM0MkhHma6X 7f1yFqZzR1r0693p9db7RcwpiURdv0Y5PejuvE1Uhh4dbOMXJ0PhiVYrqW9yTkkz 43J8KiOavD7/KCrto/8cI7pDVwlnTUtiBi34/2ydYB7YHEt9tTEv2dB8Xfjea4MY eDdXL+gzB2ffHsdrKpV2ro9Xo/D0UrSpUwjP4E/TelOL/bscVjby/rK25Xa71SJl pz/+0WatC7xrmYbvP33zGDLKe8bjq2RGlfgmadlVg3sslgf/WSxEo8bl6ancoWOA WiFeIc9TVPC6b4nbqKqVz4vjccweGyBECMB6tkD9xOQ14R0WHNC8K47Wcdk= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEFTCCAv2gAwIBAgIBATANBgkqhkiG9w0BAQUFADBkMQswCQYDVQQGEwJTRTEU MBIGA1UEChMLQWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRUUCBOZXR3 b3JrMSAwHgYDVQQDExdBZGRUcnVzdCBQdWJsaWMgQ0EgUm9vdDAeFw0wMDA1MzAx MDQxNTBaFw0yMDA1MzAxMDQxNTBaMGQxCzAJBgNVBAYTAlNFMRQwEgYDVQQKEwtB ZGRUcnVzdCBBQjEdMBsGA1UECxMUQWRkVHJ1c3QgVFRQIE5ldHdvcmsxIDAeBgNV BAMTF0FkZFRydXN0IFB1YmxpYyBDQSBSb290MIIBIjANBgkqhkiG9w0BAQEFAAOC AQ8AMIIBCgKCAQEA6Rowj4OIFMEg2Dybjxt+A3S72mnTRqX4jsIMEZBRpS9mVEBV 6tsfSlbunyNu9DnLoblv8n75XYcmYZ4c+OLspoH4IcUkzBEMP9smcnrHAZcHF/nX GCwwfQ56HmIexkvA/X1id9NEHif2P0tEs7c42TkfYNVRknMDtABp4/MUTu7R3AnP dzRGULD4EfL+OHn3Bzn+UZKXC1sIXzSGAa2Il+tmzV7R/9x98oTaunet3IAIx6eH 1lWfl2royBFkuucZKT8Rs3iQhCBSWxHveNCD9tVIkNAwHM+A+WD+eeSI8t0A65RF 62WUaUC6wNW0uLp9BBGo6zEFlpROWCGOn9Bg/QIDAQABo4HRMIHOMB0GA1UdDgQW BBSBPjfYkrAfd59ctKtzquf2NGAv+jALBgNVHQ8EBAMCAQYwDwYDVR0TAQH/BAUw AwEB/zCBjgYDVR0jBIGGMIGDgBSBPjfYkrAfd59ctKtzquf2NGAv+qFopGYwZDEL MAkGA1UEBhMCU0UxFDASBgNVBAoTC0FkZFRydXN0IEFCMR0wGwYDVQQLExRBZGRU cnVzdCBUVFAgTmV0d29yazEgMB4GA1UEAxMXQWRkVHJ1c3QgUHVibGljIENBIFJv b3SCAQEwDQYJKoZIhvcNAQEFBQADggEBAAP3FUr4JNojVhaTdt02KLmuG7jD8WS6 IBh4lSknVwW8fCr0uVFV2ocC3g8WFzH4qnkuCRO7r7IgGRLlk/lL+YPoRNWyQSW/ iHVv/xD8SlTQX/D67zZzfRs2RcYhbbQVuE7PnFylPVoAjgbjPGsye/Kf8Lb93/Ao GEjwxrzQvzSAlsJKsW2Ox5BF3i9nrEUEo3rcVZLJR2bYGozH7ZxOmuASu7VqTITh 4SINhwBk/ox9Yjllpu9CtoAlEmEBqCQTcAARJl/6NVDFSMwGR+gn2HCNX2TmoUQm XiLsks3/QppEIW1cxeMiHV9HEufOX1362KqxMy3ZdvJOOjMMK7MtkAY= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEHjCCAwagAwIBAgIBATANBgkqhkiG9w0BAQUFADBnMQswCQYDVQQGEwJTRTEU MBIGA1UEChMLQWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRUUCBOZXR3 b3JrMSMwIQYDVQQDExpBZGRUcnVzdCBRdWFsaWZpZWQgQ0EgUm9vdDAeFw0wMDA1 MzAxMDQ0NTBaFw0yMDA1MzAxMDQ0NTBaMGcxCzAJBgNVBAYTAlNFMRQwEgYDVQQK EwtBZGRUcnVzdCBBQjEdMBsGA1UECxMUQWRkVHJ1c3QgVFRQIE5ldHdvcmsxIzAh BgNVBAMTGkFkZFRydXN0IFF1YWxpZmllZCBDQSBSb290MIIBIjANBgkqhkiG9w0B AQEFAAOCAQ8AMIIBCgKCAQEA5B6a/twJWoekn0e+EV+vhDTbYjx5eLfpMLXsDBwq xBb/4Oxx64r1EW7tTw2R0hIYLUkVAcKkIhPHEWT/IhKauY5cLwjPcWqzZwFZ8V1G 87B4pfYOQnrjfxvM0PC3KP0q6p6zsLkEqv32x7SxuCqg+1jxGaBvcCV+PmlKfw8i 2O+tCBGaKZnhqkRFmhJePp1tUvznoD1oL/BLcHwTOK28FSXx1s6rosAx1i+f4P8U WfyEk9mHfExUE+uf0S0R+Bg6Ot4l2ffTQO2kBhLEO+GRwVY18BTcZTYJbqukB8c1 0cIDMzZbdSZtQvESa0NvS3GU+jQd7RNuyoB/mC9suWXY6QIDAQABo4HUMIHRMB0G A1UdDgQWBBQ5lYtii1zJ1IC6WA+XPxUIQ8yYpzALBgNVHQ8EBAMCAQYwDwYDVR0T AQH/BAUwAwEB/zCBkQYDVR0jBIGJMIGGgBQ5lYtii1zJ1IC6WA+XPxUIQ8yYp6Fr pGkwZzELMAkGA1UEBhMCU0UxFDASBgNVBAoTC0FkZFRydXN0IEFCMR0wGwYDVQQL ExRBZGRUcnVzdCBUVFAgTmV0d29yazEjMCEGA1UEAxMaQWRkVHJ1c3QgUXVhbGlm aWVkIENBIFJvb3SCAQEwDQYJKoZIhvcNAQEFBQADggEBABmrder4i2VhlRO6aQTv hsoToMeqT2QbPxj2qC0sVY8FtzDqQmodwCVRLae/DLPt7wh/bDxGGuoYQ992zPlm hpwsaPXpF/gxsxjE1kh9I0xowX67ARRvxdlu3rsEQmr49lx95dr6h+sNNVJn0J6X dgWTP5XHAeZpVTh/EGGZyeNfpso+gmNIquIISD6q8rKFYqa0p9m9N5xotS1WfbC3 P6CxB9bpT9zeRXEwMn8bLgn5v1Kh7sKAPgZcLlVAwRv1cEWw3F369nJad9Jjzc9Y iQBCYz95OdBEsIJuQRno3eDBiFrRHnGTHyQwdOUeqN48Jzd/g66ed8/wMLH/S5no xqE= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDTDCCAjSgAwIBAgIId3cGJyapsXwwDQYJKoZIhvcNAQELBQAwRDELMAkGA1UE BhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVz dCBDb21tZXJjaWFsMB4XDTEwMDEyOTE0MDYwNloXDTMwMTIzMTE0MDYwNlowRDEL MAkGA1UEBhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZp cm1UcnVzdCBDb21tZXJjaWFsMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC AQEA9htPZwcroRX1BiLLHwGy43NFBkRJLLtJJRTWzsO3qyxPxkEylFf6EqdbDuKP Hx6GGaeqtS25Xw2Kwq+FNXkyLbscYjfysVtKPcrNcV/pQr6U6Mje+SJIZMblq8Yr ba0F8PrVC8+a5fBQpIs7R6UjW3p6+DM/uO+Zl+MgwdYoic+U+7lF7eNAFxHUdPAL MeIrJmqbTFeurCA+ukV6BfO9m2kVrn1OIGPENXY6BwLJN/3HR+7o8XYdcxXyl6S1 yHp52UKqK39c/s4mT6NmgTWvRLpUHhwwMmWd5jyTXlBOeuM61G7MGvv50jeuJCqr VwMiKA1JdX+3KNp1v47j3A55MQIDAQABo0IwQDAdBgNVHQ4EFgQUnZPGU4teyq8/ nx4P5ZmVvCT2lI8wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJ KoZIhvcNAQELBQADggEBAFis9AQOzcAN/wr91LoWXym9e2iZWEnStB03TX8nfUYG XUPGhi4+c7ImfU+TqbbEKpqrIZcUsd6M06uJFdhrJNTxFq7YpFzUf1GO7RgBsZNj vbz4YYCanrHOQnDiqX0GJX0nof5v7LMeJNrjS1UaADs1tDvZ110w/YETifLCBivt Z8SOyUOyXGsViQK8YvxO8rUzqrJv0wqiUOP2O+guRMLbZjipM1ZI8W0bM40NjD9g N53Tym1+NH4Nn3J2ixufcv1SNUFFApYvHLKac0khsUlHRUe072o0EclNmsxZt9YC nlpOZbWUrhvfKbAW8b8Angc6F2S1BLUjIZkKlTuXfO8= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDTDCCAjSgAwIBAgIIfE8EORzUmS0wDQYJKoZIhvcNAQEFBQAwRDELMAkGA1UE BhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVz dCBOZXR3b3JraW5nMB4XDTEwMDEyOTE0MDgyNFoXDTMwMTIzMTE0MDgyNFowRDEL MAkGA1UEBhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZp cm1UcnVzdCBOZXR3b3JraW5nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC AQEAtITMMxcua5Rsa2FSoOujz3mUTOWUgJnLVWREZY9nZOIG41w3SfYvm4SEHi3y YJ0wTsyEheIszx6e/jarM3c1RNg1lho9Nuh6DtjVR6FqaYvZ/Ls6rnla1fTWcbua kCNrmreIdIcMHl+5ni36q1Mr3Lt2PpNMCAiMHqIjHNRqrSK6mQEubWXLviRmVSRL QESxG9fhwoXA3hA/Pe24/PHxI1Pcv2WXb9n5QHGNfb2V1M6+oF4nI979ptAmDgAp 6zxG8D1gvz9Q0twmQVGeFDdCBKNwV6gbh+0t+nvujArjqWaJGctB+d1ENmHP4ndG yH329JKBNv3bNPFyfvMMFr20FQIDAQABo0IwQDAdBgNVHQ4EFgQUBx/S55zawm6i QLSwelAQUHTEyL0wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJ KoZIhvcNAQEFBQADggEBAIlXshZ6qML91tmbmzTCnLQyFE2npN/svqe++EPbkTfO tDIuUFUaNU52Q3Eg75N3ThVwLofDwR1t3Mu1J9QsVtFSUzpE0nPIxBsFZVpikpzu QY0x2+c06lkh1QF612S4ZDnNye2v7UsDSKegmQGA3GWjNq5lWUhPgkvIZfFXHeVZ Lgo/bNjR9eUJtGxUAArgFU2HdW23WJZa3W3SAKD0m0i+wzekujbgfIeFlxoVot4u olu9rxj5kFDNcFn4J2dHy8egBzp90SxdbBk6ZrV9/ZFvgrG+CJPbFEfxojfHRZ48 x3evZKiT3/Zpg4Jg8klCNO1aAFSFHBY2kgxc+qatv9s= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFRjCCAy6gAwIBAgIIbYwURrGmCu4wDQYJKoZIhvcNAQEMBQAwQTELMAkGA1UE BhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MRwwGgYDVQQDDBNBZmZpcm1UcnVz dCBQcmVtaXVtMB4XDTEwMDEyOTE0MTAzNloXDTQwMTIzMTE0MTAzNlowQTELMAkG A1UEBhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MRwwGgYDVQQDDBNBZmZpcm1U cnVzdCBQcmVtaXVtMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAxBLf qV/+Qd3d9Z+K4/as4Tx4mrzY8H96oDMq3I0gW64tb+eT2TZwamjPjlGjhVtnBKAQ JG9dKILBl1fYSCkTtuG+kU3fhQxTGJoeJKJPj/CihQvL9Cl/0qRY7iZNyaqoe5rZ +jjeRFcV5fiMyNlI4g0WJx0eyIOFJbe6qlVBzAMiSy2RjYvmia9mx+n/K+k8rNrS s8PhaJyJ+HoAVt70VZVs+7pk3WKL3wt3MutizCaam7uqYoNMtAZ6MMgpv+0GTZe5 HMQxK9VfvFMSF5yZVylmd2EhMQcuJUmdGPLu8ytxjLW6OQdJd/zvLpKQBY0tL3d7 70O/Nbua2Plzpyzy0FfuKE4mX4+QaAkvuPjcBukumj5Rp9EixAqnOEhss/n/fauG V+O61oV4d7pD6kh/9ti+I20ev9E2bFhc8e6kGVQa9QPSdubhjL08s9NIS+LI+H+S qHZGnEJlPqQewQcDWkYtuJfzt9WyVSHvutxMAJf7FJUnM7/oQ0dG0giZFmA7mn7S 5u046uwBHjxIVkkJx0w3AJ6IDsBz4W9m6XJHMD4Q5QsDyZpCAGzFlH5hxIrff4Ia C1nEWTJ3s7xgaVY5/bQGeyzWZDbZvUjthB9+pSKPKrhC9IK31FOQeE4tGv2Bb0TX OwF0lkLgAOIua+rF7nKsu7/+6qqo+Nz2snmKtmcCAwEAAaNCMEAwHQYDVR0OBBYE FJ3AZ6YMItkm9UWrpmVSESfYRaxjMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/ BAQDAgEGMA0GCSqGSIb3DQEBDAUAA4ICAQCzV00QYk465KzquByvMiPIs0laUZx2 KI15qldGF9X1Uva3ROgIRL8YhNILgM3FEv0AVQVhh0HctSSePMTYyPtwni94loMg Nt58D2kTiKV1NpgIpsbfrM7jWNa3Pt668+s0QNiigfV4Py/VpfzZotReBA4Xrf5B 8OWycvpEgjNC6C1Y91aMYj+6QrCcDFx+LmUmXFNPALJ4fqENmS2NuB2OosSw/WDQ MKSOyARiqcTtNd56l+0OOF6SL5Nwpamcb6d9Ex1+xghIsV5n61EIJenmJWtSKZGc 0jlzCFfemQa0W50QBuHCAKi4HEoCChTQwUHK+4w1IX2COPKpVJEZNZOUbWo6xbLQ u4mGk+ibyQ86p3q4ofB4Rvr8Ny/lioTz3/4E2aFooC8k4gmVBtWVyuEklut89pMF u+1z6S3RdTnX5yTb2E5fQ4+e0BQ5v1VwSJlXMbSc7kqYA5YwH2AG7hsj/oFgIxpH YoWlzBk0gG+zrBrjn/B7SK3VAdlntqlyk+otZrWyuOQ9PLLvTIzq6we/qzWaVYa8 GKa1qF60g2xraUDTn9zxw2lrueFtCfTxqlB2Cnp9ehehVZZCmTEJ3WARjQUwfuaO RtGdFNrHF+QFlozEJLUbzxQHskD4o55BhrwE0GuWyCqANP2/7waj3VjFhT0+j/6e KeC2uAloGRwYQw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIB/jCCAYWgAwIBAgIIdJclisc/elQwCgYIKoZIzj0EAwMwRTELMAkGA1UEBhMC VVMxFDASBgNVBAoMC0FmZmlybVRydXN0MSAwHgYDVQQDDBdBZmZpcm1UcnVzdCBQ cmVtaXVtIEVDQzAeFw0xMDAxMjkxNDIwMjRaFw00MDEyMzExNDIwMjRaMEUxCzAJ BgNVBAYTAlVTMRQwEgYDVQQKDAtBZmZpcm1UcnVzdDEgMB4GA1UEAwwXQWZmaXJt VHJ1c3QgUHJlbWl1bSBFQ0MwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQNMF4bFZ0D 0KF5Nbc6PJJ6yhUczWLznCZcBz3lVPqj1swS6vQUX+iOGasvLkjmrBhDeKzQN8O9 ss0s5kfiGuZjuD0uL3jET9v0D6RoTFVya5UdThhClXjMNzyR4ptlKymjQjBAMB0G A1UdDgQWBBSaryl6wBE1NSZRMADDav5A1a7WPDAPBgNVHRMBAf8EBTADAQH/MA4G A1UdDwEB/wQEAwIBBjAKBggqhkjOPQQDAwNnADBkAjAXCfOHiFBar8jAQr9HX/Vs aobgxCd05DhT1wV/GzTjxi+zygk8N53X57hG8f2h4nECMEJZh0PUUd+60wkyWs6I flc9nF9Ca/UHLbXwgpP5WW+uZPpY5Yse42O+tYHNbwKMeQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDpDCCAoygAwIBAgIBATANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEc MBoGA1UEChMTQW1lcmljYSBPbmxpbmUgSW5jLjE2MDQGA1UEAxMtQW1lcmljYSBP bmxpbmUgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAxMB4XDTAyMDUyODA2 MDAwMFoXDTM3MTExOTIwNDMwMFowYzELMAkGA1UEBhMCVVMxHDAaBgNVBAoTE0Ft ZXJpY2EgT25saW5lIEluYy4xNjA0BgNVBAMTLUFtZXJpY2EgT25saW5lIFJvb3Qg Q2VydGlmaWNhdGlvbiBBdXRob3JpdHkgMTCCASIwDQYJKoZIhvcNAQEBBQADggEP ADCCAQoCggEBAKgv6KRpBgNHw+kqmP8ZonCaxlCyfqXfaE0bfA+2l2h9LaaLl+lk hsmj76CGv2BlnEtUiMJIxUo5vxTjWVXlGbR0yLQFOVwWpeKVBeASrlmLojNoWBym 1BW32J/X3HGrfpq/m44zDyL9Hy7nBzbvYjnF3cu6JRQj3gzGPTzOggjmZj7aUTsW OqMFf6Dch9Wc/HKpoH145LcxVR5lu9RhsCFg7RAycsWSJR74kEoYeEfffjA3PlAb 2xzTa5qGUwew76wGePiEmf4hjUyAtgyC9mZweRrTT6PP8c9GsEsPPt2IYriMqQko O3rHl+Ee5fSfwMCuJKDIodkP1nsmgmkyPacCAwEAAaNjMGEwDwYDVR0TAQH/BAUw AwEB/zAdBgNVHQ4EFgQUAK3Zo/Z59m50qX8zPYEX10zPM94wHwYDVR0jBBgwFoAU AK3Zo/Z59m50qX8zPYEX10zPM94wDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEB BQUAA4IBAQB8itEfGDeC4Liwo+1WlchiYZwFos3CYiZhzRAW18y0ZTTQEYqtqKkF Zu90821fnZmv9ov761KyBZiibyrFVL0lvV+uyIbqRizBs73B6UlwGBaXCBOMIOAb LjpHyx7kADCVW/RFo8AasAFOq73AI25jP4BKxQft3OJvx8Fi8eNy1gTIdGcL+oir oQHIb/AUr9KZzVGTfu0uOMe9zkZQPXLjeSWdm4grECDdpbgyn43gKd8hdIaC2y+C MMbHNYaz+ZZfRtsMRf3zUMNvxsNIrUam4SdHCh0Om7bCd39j8uB9Gr784N/Xx6ds sPmuujz9dLQR6FgNgLzTqIA6me11zEZ7 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFpDCCA4ygAwIBAgIBATANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEc MBoGA1UEChMTQW1lcmljYSBPbmxpbmUgSW5jLjE2MDQGA1UEAxMtQW1lcmljYSBP bmxpbmUgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAyMB4XDTAyMDUyODA2 MDAwMFoXDTM3MDkyOTE0MDgwMFowYzELMAkGA1UEBhMCVVMxHDAaBgNVBAoTE0Ft ZXJpY2EgT25saW5lIEluYy4xNjA0BgNVBAMTLUFtZXJpY2EgT25saW5lIFJvb3Qg Q2VydGlmaWNhdGlvbiBBdXRob3JpdHkgMjCCAiIwDQYJKoZIhvcNAQEBBQADggIP ADCCAgoCggIBAMxBRR3pPU0Q9oyxQcngXssNt79Hc9PwVU3dxgz6sWYFas14tNwC 206B89enfHG8dWOgXeMHDEjsJcQDIPT/DjsS/5uN4cbVG7RtIuOx238hZK+GvFci KtZHgVdEglZTvYYUAQv8f3SkWq7xuhG1m1hagLQ3eAkzfDJHA1zEpYNI9FdWboE2 JxhP7JsowtS013wMPgwr38oE18aO6lhOqKSlGBxsRZijQdEt0sdtjRnxrXm3gT+9 BoInLRBYBbV4Bbkv2wxrkJB+FFk4u5QkE+XRnRTf04JNRvCAOVIyD+OEsnpD8l7e Xz8d3eOyG6ChKiMDbi4BFYdcpnV1x5dhvt6G3NRI270qv0pV2uh9UPu0gBe4lL8B PeraunzgWGcXuVjgiIZGZ2ydEEdYMtA1fHkqkKJaEBEjNa0vzORKW6fIJ/KD3l67 Xnfn6KVuY8INXWHQjNJsWiEOyiijzirplcdIz5ZvHZIlyMbGwcEMBawmxNJ10uEq Z8A9W6Wa6897GqidFEXlD6CaZd4vKL3Ob5Rmg0gp2OpljK+T2WSfVVcmv2/LNzGZ o2C7HK2JNDJiuEMhBnIMoVxtRsX6Kc8w3onccVvdtjc+31D1uAclJuW8tf48ArO3 +L5DwYcRlJ4jbBeKuIonDFRH8KmzwICMoCfrHRnjB453cMor9H124HhnAgMBAAGj YzBhMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFE1FwWg4u3OpaaEg5+31IqEj FNeeMB8GA1UdIwQYMBaAFE1FwWg4u3OpaaEg5+31IqEjFNeeMA4GA1UdDwEB/wQE AwIBhjANBgkqhkiG9w0BAQUFAAOCAgEAZ2sGuV9FOypLM7PmG2tZTiLMubekJcmn xPBUlgtk87FYT15R/LKXeydlwuXK5w0MJXti4/qftIe3RUavg6WXSIylvfEWK5t2 LHo1YGwRgJfMqZJS5ivmae2p+DYtLHe/YUjRYwu5W1LtGLBDQiKmsXeu3mnFzccc obGlHBD7GL4acN3Bkku+KVqdPzW+5X1R+FXgJXUjhx5c3LqdsKyzadsXg8n33gy8 CNyRnqjQ1xU3c6U1uPx+xURABsPr+CKAXEfOAuMRn0T//ZoyzH1kUQ7rVyZ2OuMe IjzCpjbdGe+n/BLzJsBZMYVMnNjP36TMzCmT/5RtdlwTCJfy7aULTd3oyWgOZtMA DjMSW7yV5TKQqLPGbIOtd+6Lfn6xqavT4fG2wLHqiMDn05DpKJKUe2h7lyoKZy2F AjgQ5ANh1NolNscIWC2hp1GvMApJ9aZphwctREZ2jirlmjvXGKL8nDgQzMY70rUX Om/9riW99XJZZLF0KjhfGEzfz3EEWjbUvy+ZnOjZurGV5gJLIaFb1cFPj65pbVPb AZO1XB4Y3WRayhgoPmMEEf0cjQAPuDffZ4qdZqkCapH/E8ovXYO8h5Ns3CRRFgQl Zvqz2cK6Kb6aSDiCmfS/O0oxGfm/jiEzFMpPVF/7zvuPcX/9XhmgD0uRuMRUvAaw RY8mkaKO/qk= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDoDCCAoigAwIBAgIBMTANBgkqhkiG9w0BAQUFADBDMQswCQYDVQQGEwJKUDEc MBoGA1UEChMTSmFwYW5lc2UgR292ZXJubWVudDEWMBQGA1UECxMNQXBwbGljYXRp b25DQTAeFw0wNzEyMTIxNTAwMDBaFw0xNzEyMTIxNTAwMDBaMEMxCzAJBgNVBAYT AkpQMRwwGgYDVQQKExNKYXBhbmVzZSBHb3Zlcm5tZW50MRYwFAYDVQQLEw1BcHBs aWNhdGlvbkNBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAp23gdE6H j6UG3mii24aZS2QNcfAKBZuOquHMLtJqO8F6tJdhjYq+xpqcBrSGUeQ3DnR4fl+K f5Sk10cI/VBaVuRorChzoHvpfxiSQE8tnfWuREhzNgaeZCw7NCPbXCbkcXmP1G55 IrmTwcrNwVbtiGrXoDkhBFcsovW8R0FPXjQilbUfKW1eSvNNcr5BViCH/OlQR9cw FO5cjFW6WY2H/CPek9AEjP3vbb3QesmlOmpyM8ZKDQUXKi17safY1vC+9D/qDiht QWEjdnjDuGWk81quzMKq2edY3rZ+nYVunyoKb58DKTCXKB28t89UKU5RMfkntigm /qJj5kEW8DOYRwIDAQABo4GeMIGbMB0GA1UdDgQWBBRUWssmP3HMlEYNllPqa0jQ k/5CdTAOBgNVHQ8BAf8EBAMCAQYwWQYDVR0RBFIwUKROMEwxCzAJBgNVBAYTAkpQ MRgwFgYDVQQKDA/ml6XmnKzlm73mlL/lupwxIzAhBgNVBAsMGuOCouODl+ODquOC seODvOOCt+ODp+ODs0NBMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEFBQAD ggEBADlqRHZ3ODrso2dGD/mLBqj7apAxzn7s2tGJfHrrLgy9mTLnsCTWw//1sogJ hyzjVOGjprIIC8CFqMjSnHH2HZ9g/DgzE+Ge3Atf2hZQKXsvcJEPmbo0NI2VdMV+ eKlmXb3KIXdCEKxmJj3ekav9FfBv7WxfEPjzFvYDio+nEhEMy/0/ecGc/WLuo89U DNErXxc+4z6/wCs+CZv+iKZ+tJIX/COUgb1up8WMwusRRdv4QcmWdupwX3kSa+Sj B1oF7ydJzyGfikwJcGapJsErEU4z0g781mzSDjJkaP+tBXhfAx2o45CsJOAPQKdL rosot4LKGAfmt1t06SAZf7IbiVQ= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDzzCCAregAwIBAgIDAWweMA0GCSqGSIb3DQEBBQUAMIGNMQswCQYDVQQGEwJB VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRkwFwYDVQQLDBBBLVRydXN0LW5R dWFsLTAzMRkwFwYDVQQDDBBBLVRydXN0LW5RdWFsLTAzMB4XDTA1MDgxNzIyMDAw MFoXDTE1MDgxNzIyMDAwMFowgY0xCzAJBgNVBAYTAkFUMUgwRgYDVQQKDD9BLVRy dXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0ZW52 ZXJrZWhyIEdtYkgxGTAXBgNVBAsMEEEtVHJ1c3QtblF1YWwtMDMxGTAXBgNVBAMM EEEtVHJ1c3QtblF1YWwtMDMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB AQCtPWFuA/OQO8BBC4SAzewqo51ru27CQoT3URThoKgtUaNR8t4j8DRE/5TrzAUj lUC5B3ilJfYKvUWG6Nm9wASOhURh73+nyfrBJcyFLGM/BWBzSQXgYHiVEEvc+RFZ znF/QJuKqiTfC0Li21a8StKlDJu3Qz7dg9MmEALP6iPESU7l0+m0iKsMrmKS1GWH 2WrX9IWf5DMiJaXlyDO6w8dB3F/GaswADm0yqLaHNgBid5seHzTLkDx4iHQF63n1 k3Flyp3HaxgtPVxO59X4PzF9j4fsCiIvI+n+u33J4PTs63zEsMMtYrWacdaxaujs 2e3Vcuy+VwHOBVWf3tFgiBCzAgMBAAGjNjA0MA8GA1UdEwEB/wQFMAMBAf8wEQYD VR0OBAoECERqlWdVeRFPMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQUFAAOC AQEAVdRU0VlIXLOThaq/Yy/kgM40ozRiPvbY7meIMQQDbwvUB/tOdQ/TLtPAF8fG KOwGDREkDg6lXb+MshOWcdzUzg4NCmgybLlBMRmrsQd7TZjTXLDR8KdCoLXEjq/+ 8T/0709GAHbrAvv5ndJAlseIOrifEXnzgGWovR/TeIGgUUw3tKZdJXDRZslo+S4R FGjxVJgIrCaSD96JntT6s3kr0qN51OyLrIdTaEJMUVF0HhsnLuP1Hyl0Te2v9+GS mYHovjrHF1D2t8b8m7CKa9aIA5GPBnc6hQLdmNVDeD/GMBWsm2vLV7eJUYs66MmE DNuxUCAKGkq6ahq97BvIxYSazQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIGFDCCA/ygAwIBAgIIU+w77vuySF8wDQYJKoZIhvcNAQEFBQAwUTELMAkGA1UE BhMCRVMxQjBABgNVBAMMOUF1dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIEZpcm1h cHJvZmVzaW9uYWwgQ0lGIEE2MjYzNDA2ODAeFw0wOTA1MjAwODM4MTVaFw0zMDEy MzEwODM4MTVaMFExCzAJBgNVBAYTAkVTMUIwQAYDVQQDDDlBdXRvcmlkYWQgZGUg Q2VydGlmaWNhY2lvbiBGaXJtYXByb2Zlc2lvbmFsIENJRiBBNjI2MzQwNjgwggIi MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDKlmuO6vj78aI14H9M2uDDUtd9 thDIAl6zQyrET2qyyhxdKJp4ERppWVevtSBC5IsP5t9bpgOSL/UR5GLXMnE42QQM cas9UX4PB99jBVzpv5RvwSmCwLTaUbDBPLutN0pcyvFLNg4kq7/DhHf9qFD0sefG L9ItWY16Ck6WaVICqjaY7Pz6FIMMNx/Jkjd/14Et5cS54D40/mf0PmbR0/RAz15i NA9wBj4gGFrO93IbJWyTdBSTo3OxDqqHECNZXyAFGUftaI6SEspd/NYrspI8IM/h X68gvqB2f3bl7BqGYTM+53u0P6APjqK5am+5hyZvQWyIplD9amML9ZMWGxmPsu2b m8mQ9QEM3xk9Dz44I8kvjwzRAv4bVdZO0I08r0+k8/6vKtMFnXkIoctXMbScyJCy Z/QYFpM6/EfY0XiWMR+6KwxfXZmtY4laJCB22N/9q06mIqqdXuYnin1oKaPnirja EbsXLZmdEyRG98Xi2J+Of8ePdG1asuhy9azuJBCtLxTa/y2aRnFHvkLfuwHb9H/T KI8xWVvTyQKmtFLKbpf7Q8UIJm+K9Lv9nyiqDdVF8xM6HdjAeI9BZzwelGSuewvF 6NkBiDkal4ZkQdU7hwxu+g/GvUgUvzlN1J5Bto+WHWOWk9mVBngxaJ43BjuAiUVh OSPHG0SjFeUc+JIwuwIDAQABo4HvMIHsMBIGA1UdEwEB/wQIMAYBAf8CAQEwDgYD VR0PAQH/BAQDAgEGMB0GA1UdDgQWBBRlzeurNR4APn7VdMActHNHDhpkLzCBpgYD VR0gBIGeMIGbMIGYBgRVHSAAMIGPMC8GCCsGAQUFBwIBFiNodHRwOi8vd3d3LmZp cm1hcHJvZmVzaW9uYWwuY29tL2NwczBcBggrBgEFBQcCAjBQHk4AUABhAHMAZQBv ACAAZABlACAAbABhACAAQgBvAG4AYQBuAG8AdgBhACAANAA3ACAAQgBhAHIAYwBl AGwAbwBuAGEAIAAwADgAMAAxADcwDQYJKoZIhvcNAQEFBQADggIBABd9oPm03cXF 661LJLWhAqvdpYhKsg9VSytXjDvlMd3+xDLx51tkljYyGOylMnfX40S2wBEqgLk9 am58m9Ot/MPWo+ZkKXzR4Tgegiv/J2Wv+xYVxC5xhOW1//qkR71kMrv2JYSiJ0L1 ILDCExARzRAVukKQKtJE4ZYm6zFIEv0q2skGz3QeqUvVhyj5eTSSPi5E6PaPT481 PyWzOdxjKpBrIF/EUhJOlywqrJ2X3kjyo2bbwtKDlaZmp54lD+kLM5FlClrD2VQS 3a/DTg4fJl4N3LON7NWBcN7STyQF82xO9UxJZo3R/9ILJUFI/lGExkKvgATP0H5k SeTy36LssUzAKh3ntLFlosS88Zj0qnAHY7S42jtM+kAiMFsRpvAFDsYCA0irhpuF 3dvd6qJ2gHN99ZwExEWN57kci57q13XRcrHedUTnQn3iV2t93Jm8PYMo6oCTjcVM ZcFwgbg4/EMxsvYDNEeyrPsiBsse3RdHHF9mudMaotoRsaS8I8nkvof/uZS2+F0g StRf571oe2XyFR7SOqkt6dhrJKyXWERHrVkY8SFlcN7ONGCoQPHzPKTDKCOM/icz Q0CgFzzr6juwcqajuUpLXhZI9LK8yIySxZ2frHI2vDSANGupi5LAuBft7HZT9SQB jLMi6Et8Vcad+qMUu2WFbm5PEn4KPJ2V -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDdzCCAl+gAwIBAgIEAgAAuTANBgkqhkiG9w0BAQUFADBaMQswCQYDVQQGEwJJ RTESMBAGA1UEChMJQmFsdGltb3JlMRMwEQYDVQQLEwpDeWJlclRydXN0MSIwIAYD VQQDExlCYWx0aW1vcmUgQ3liZXJUcnVzdCBSb290MB4XDTAwMDUxMjE4NDYwMFoX DTI1MDUxMjIzNTkwMFowWjELMAkGA1UEBhMCSUUxEjAQBgNVBAoTCUJhbHRpbW9y ZTETMBEGA1UECxMKQ3liZXJUcnVzdDEiMCAGA1UEAxMZQmFsdGltb3JlIEN5YmVy VHJ1c3QgUm9vdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKMEuyKr mD1X6CZymrV51Cni4eiVgLGw41uOKymaZN+hXe2wCQVt2yguzmKiYv60iNoS6zjr IZ3AQSsBUnuId9Mcj8e6uYi1agnnc+gRQKfRzMpijS3ljwumUNKoUMMo6vWrJYeK mpYcqWe4PwzV9/lSEy/CG9VwcPCPwBLKBsua4dnKM3p31vjsufFoREJIE9LAwqSu XmD+tqYF/LTdB1kC1FkYmGP1pWPgkAx9XbIGevOF6uvUA65ehD5f/xXtabz5OTZy dc93Uk3zyZAsuT3lySNTPx8kmCFcB5kpvcY67Oduhjprl3RjM71oGDHweI12v/ye jl0qhqdNkNwnGjkCAwEAAaNFMEMwHQYDVR0OBBYEFOWdWTCCR1jMrPoIVDaGezq1 BE3wMBIGA1UdEwEB/wQIMAYBAf8CAQMwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3 DQEBBQUAA4IBAQCFDF2O5G9RaEIFoN27TyclhAO992T9Ldcw46QQF+vaKSm2eT92 9hkTI7gQCvlYpNRhcL0EYWoSihfVCr3FvDB81ukMJY2GQE/szKN+OMY3EU/t3Wgx jkzSswF07r51XgdIGn9w/xZchMB5hbgF/X++ZRGjD8ACtPhSNzkE1akxehi/oCr0 Epn3o0WC4zxe9Z2etciefC7IpJ5OCBRLbf1wbWsaY71k5h+3zvDyny67G7fyUIhz ksLi4xaNmjICq44Y3ekQEe5+NauQrz4wlHrQMz2nZQ/1/I6eYs9HRCwBXbsdtTLS R9I4LtD+gdwyah617jzV/OeBHRnDJELqYzmp -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDUzCCAjugAwIBAgIBATANBgkqhkiG9w0BAQUFADBLMQswCQYDVQQGEwJOTzEd MBsGA1UECgwUQnV5cGFzcyBBUy05ODMxNjMzMjcxHTAbBgNVBAMMFEJ1eXBhc3Mg Q2xhc3MgMiBDQSAxMB4XDTA2MTAxMzEwMjUwOVoXDTE2MTAxMzEwMjUwOVowSzEL MAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBhc3MgQVMtOTgzMTYzMzI3MR0wGwYD VQQDDBRCdXlwYXNzIENsYXNzIDIgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEP ADCCAQoCggEBAIs8B0XY9t/mx8q6jUPFR42wWsE425KEHK8T1A9vNkYgxC7McXA0 ojTTNy7Y3Tp3L8DrKehc0rWpkTSHIln+zNvnma+WwajHQN2lFYxuyHyXA8vmIPLX l18xoS830r7uvqmtqEyeIWZDO6i88wmjONVZJMHCR3axiFyCO7srpgTXjAePzdVB HfCuuCkslFJgNJQ72uA40Z0zPhX0kzLFANq1KWYOOngPIVJfAuWSeyXTkh4vFZ2B 5J2O6O+JzhRMVB0cgRJNcKi+EAUXfh/RuFdV7c27UsKwHnjCTTZoy1YmwVLBvXb3 WNVyfh9EdrsAiR0WnVE1703CVu9r4Iw7DekCAwEAAaNCMEAwDwYDVR0TAQH/BAUw AwEB/zAdBgNVHQ4EFgQUP42aWYv8e3uco684sDntkHGA1sgwDgYDVR0PAQH/BAQD AgEGMA0GCSqGSIb3DQEBBQUAA4IBAQAVGn4TirnoB6NLJzKyQJHyIdFkhb5jatLP gcIV1Xp+DCmsNx4cfHZSldq1fyOhKXdlyTKdqC5Wq2B2zha0jX94wNWZUYN/Xtm+ DKhQ7SLHrQVMdvvt7h5HZPb3J31cKA9FxVxiXqaakZG3Uxcu3K1gnZZkOb1naLKu BctN518fV4bVIJwo+28TOPX2EZL2fZleHwzoq0QkKXJAPTZSr4xYkHPB7GEseaHs h7U/2k3ZIQAw3pDaDtMaSKk+hQsUi4y8QZ5q9w5wwDX3OaJdZtB7WZ+oRxKaJyOk LY4ng5IgodcVf/EuGO70SH8vf/GhGLWhC5SgYiAynB321O+/TIho -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFWTCCA0GgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBOMQswCQYDVQQGEwJOTzEd MBsGA1UECgwUQnV5cGFzcyBBUy05ODMxNjMzMjcxIDAeBgNVBAMMF0J1eXBhc3Mg Q2xhc3MgMiBSb290IENBMB4XDTEwMTAyNjA4MzgwM1oXDTQwMTAyNjA4MzgwM1ow TjELMAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBhc3MgQVMtOTgzMTYzMzI3MSAw HgYDVQQDDBdCdXlwYXNzIENsYXNzIDIgUm9vdCBDQTCCAiIwDQYJKoZIhvcNAQEB BQADggIPADCCAgoCggIBANfHXvfBB9R3+0Mh9PT1aeTuMgHbo4Yf5FkNuud1g1Lr 6hxhFUi7HQfKjK6w3Jad6sNgkoaCKHOcVgb/S2TwDCo3SbXlzwx87vFKu3MwZfPV L4O2fuPn9Z6rYPnT8Z2SdIrkHJasW4DptfQxh6NR/Md+oW+OU3fUl8FVM5I+GC91 1K2GScuVr1QGbNgGE41b/+EmGVnAJLqBcXmQRFBoJJRfuLMR8SlBYaNByyM21cHx MlAQTn/0hpPshNOOvEu/XAFOBz3cFIqUCqTqc/sLUegTBxj6DvEr0VQVfTzh97QZ QmdiXnfgolXsttlpF9U6r0TtSsWe5HonfOV116rLJeffawrbD02TTqigzXsu8lkB arcNuAeBfos4GzjmCleZPe4h6KP1DBbdi+w0jpwqHAAVF41og9JwnxgIzRFo1clr Us3ERo/ctfPYV3Me6ZQ5BL/T3jjetFPsaRyifsSP5BtwrfKi+fv3FmRmaZ9JUaLi FRhnBkp/1Wy1TbMz4GHrXb7pmA8y1x1LPC5aAVKRCfLf6o3YBkBjqhHk/sM3nhRS P/TizPJhk9H9Z2vXUq6/aKtAQ6BXNVN48FP4YUIHZMbXb5tMOA1jrGKvNouicwoN 9SG9dKpN6nIDSdvHXx1iY8f93ZHsM+71bbRuMGjeyNYmsHVee7QHIJihdjK4TWxP AgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFMmAd+BikoL1Rpzz uvdMw964o605MA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAgEAU18h 9bqwOlI5LJKwbADJ784g7wbylp7ppHR/ehb8t/W2+xUbP6umwHJdELFx7rxP462s A20ucS6vxOOto70MEae0/0qyexAQH6dXQbLArvQsWdZHEIjzIVEpMMpghq9Gqx3t OluwlN5E40EIosHsHdb9T7bWR9AUC8rmyrV7d35BH16Dx7aMOZawP5aBQW9gkOLo +fsicdl9sz1Gv7SEr5AcD48Saq/v7h56rgJKihcrdv6sVIkkLE8/trKnToyokZf7 KcZ7XC25y2a2t6hbElGFtQl+Ynhw/qlqYLYdDnkM/crqJIByw5c/8nerQyIKx+u2 DISCLIBrQYoIwOula9+ZEsuK1V6ADJHgJgg2SMX6OBE1/yWDLfJ6v9r9jv6ly0Us H8SIU653DtmadsWOLB2jutXsMq7Aqqz30XpN69QH4kj3Io6wpJ9qzo6ysmD0oyLQ I+uUWnpp3Q+/QFesa1lQ2aOZ4W7+jQF5JyMV3pKdewlNWudLSDBaGOYKbeaP4NK7 5t98biGCwWg5TbSYWGZizEqQXsP6JwSxeRV0mcy+rSDeJmAc61ZRpqPq5KM/p/9h 3PFaTWwyI0PurKju7koSCTxdccK+efrCh2gdC/1cacwG0Jp9VJkqyTkaGa9LKkPz Y11aWOIv4x3kqdbQCtCev9eBCfHJxyYNrJgWVqA= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDUzCCAjugAwIBAgIBAjANBgkqhkiG9w0BAQUFADBLMQswCQYDVQQGEwJOTzEd MBsGA1UECgwUQnV5cGFzcyBBUy05ODMxNjMzMjcxHTAbBgNVBAMMFEJ1eXBhc3Mg Q2xhc3MgMyBDQSAxMB4XDTA1MDUwOTE0MTMwM1oXDTE1MDUwOTE0MTMwM1owSzEL MAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBhc3MgQVMtOTgzMTYzMzI3MR0wGwYD VQQDDBRCdXlwYXNzIENsYXNzIDMgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEP ADCCAQoCggEBAKSO13TZKWTeXx+HgJHqTjnmGcZEC4DVC69TB4sSveZn8AKxifZg isRbsELRwCGoy+Gb72RRtqfPFfV0gGgEkKBYouZ0plNTVUhjP5JW3SROjvi6K//z NIqeKNc0n6wv1g/xpC+9UrJJhW05NfBEMJNGJPO251P7vGGvqaMU+8IXF4Rs4HyI +MkcVyzwPX6UvCWThOiaAJpFBUJXgPROztmuOfbIUxAMZTpHe2DC1vqRycZxbL2R hzyRhkmr8w+gbCZ2Xhysm3HljbybIR6c1jh+JIAVMYKWsUnTYjdbiAwKYjT+p0h+ mbEwi5A3lRyoH6UsjfRVyNvdWQrCrXig9IsCAwEAAaNCMEAwDwYDVR0TAQH/BAUw AwEB/zAdBgNVHQ4EFgQUOBTmyPCppAP0Tj4io1vy1uCtQHQwDgYDVR0PAQH/BAQD AgEGMA0GCSqGSIb3DQEBBQUAA4IBAQABZ6OMySU9E2NdFm/soT4JXJEVKirZgCFP Bdy7pYmrEzMqnji3jG8CcmPHc3ceCQa6Oyh7pEfJYWsICCD8igWKH7y6xsL+z27s EzNxZy5p+qksP2bAEllNC1QCkoS72xLvg3BweMhT+t/Gxv/ciC8HwEmdMldg0/L2 mSlf56oBzKwzqBwKu5HEA6BvtjT5htOzdlSY9EqBs1OdTUDs5XcTRa9bqh/YL0yC e/4qxFi7T/ye/QNlGioOw6UgFpRreaaiErS7GqQjel/wroQk5PMr+4okoyeYZdow dXb8GZHo2+ubPzK/QJcHJrrM85SFSnonk8+QQtS4Wxam58tAA915 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFWTCCA0GgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBOMQswCQYDVQQGEwJOTzEd MBsGA1UECgwUQnV5cGFzcyBBUy05ODMxNjMzMjcxIDAeBgNVBAMMF0J1eXBhc3Mg Q2xhc3MgMyBSb290IENBMB4XDTEwMTAyNjA4Mjg1OFoXDTQwMTAyNjA4Mjg1OFow TjELMAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBhc3MgQVMtOTgzMTYzMzI3MSAw HgYDVQQDDBdCdXlwYXNzIENsYXNzIDMgUm9vdCBDQTCCAiIwDQYJKoZIhvcNAQEB BQADggIPADCCAgoCggIBAKXaCpUWUOOV8l6ddjEGMnqb8RB2uACatVI2zSRHsJ8Y ZLya9vrVediQYkwiL944PdbgqOkcLNt4EemOaFEVcsfzM4fkoF0LXOBXByow9c3E N3coTRiR5r/VUv1xLXA+58bEiuPwKAv0dpihi4dVsjoT/Lc+JzeOIuOoTyrvYLs9 tznDDgFHmV0ST9tD+leh7fmdvhFHJlsTmKtdFoqwNxxXnUX/iJY2v7vKB3tvh2PX 0DJq1l1sDPGzbjniazEuOQAnFN44wOwZZoYS6J1yFhNkUsepNxz9gjDthBgd9K5c /3ATAOux9TN6S9ZV+AWNS2mw9bMoNlwUxFFzTWsL8TQH2xc519woe2v1n/MuwU8X KhDzzMro6/1rqy6any2CbgTUUgGTLT2G/H783+9CHaZr77kgxve9oKeV/afmiSTY zIw0bOIjL9kSGiG5VZFvC5F5GQytQIgLcOJ60g7YaEi7ghM5EFjp2CoHxhLbWNvS O1UQRwUVZ2J+GGOmRj8JDlQyXr8NYnon74Do29lLBlo3WiXQCBJ31G8JUJc9yB3D 34xFMFbG02SrZvPAXpacw8Tvw3xrizp5f7NJzz3iiZ+gMEuFuZyUJHmPfWupRWgP K9Dx2hzLabjKSWJtyNBjYt1gD1iqj6G8BaVmos8bdrKEZLFMOVLAMLrwjEsCsLa3 AgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFEe4zf/lb+74suwv Tg75JbCOPGvDMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAgEAACAj QTUEkMJAYmDv4jVM1z+s4jSQuKFvdvoWFqRINyzpkMLyPPgKn9iB5btb2iUspKdV cSQy9sgL8rxq+JOssgfCX5/bzMiKqr5qb+FJEMwx14C7u8jYog5kV+qi9cKpMRXS IGrs/CIBKM+GuIAeqcwRpTzyFrNHnfzSgCHEy9BHcEGhyoMZCCxt8l13nIoUE9Q2 HJLw5QY33KbmkJs4j1xrG0aGQ0JfPgEHU1RdZX33inOhmlRaHylDFCfChQ+1iHsa O5S3HWCntZznKWlXWpuTekMwGwPXYshApqr8ZORK15FTAaggiG6cX0S5y2CBNOxv 033aSF/rtJC8LakcC6wc1aJoIIAE1vyxjy+7SjENSoYc6+I2KSb12tjE8nVhz36u dmNKekBlk4f4HoCMhuWG1o8O/FMsYOgWYRqiPkN7zTlgVGr18okmAWiDSKIz6MkE kbIRNBE+6tBDGR8Dk5AM/1E9V/RBbuHLoL7ryWPNbczk+DaqaJ3tvV2XcEQNtg41 3OEMXbugUZTLfhbrES+jkkXITHHZvMmZUldGL1DPvTVp9D0VzgalLA8+9oG6lLvD u79leNKGef9JOxqDDPDeeOzI8k1MGt6CKfjBWtrt7uYnXuhF0J0cUahoq0Tj0Itq 4/g7u9xN12TyUb7mqqta6THuBrxzvxNiCp/HuZc= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEDzCCAvegAwIBAgIBATANBgkqhkiG9w0BAQUFADBKMQswCQYDVQQGEwJTSzET MBEGA1UEBxMKQnJhdGlzbGF2YTETMBEGA1UEChMKRGlzaWcgYS5zLjERMA8GA1UE AxMIQ0EgRGlzaWcwHhcNMDYwMzIyMDEzOTM0WhcNMTYwMzIyMDEzOTM0WjBKMQsw CQYDVQQGEwJTSzETMBEGA1UEBxMKQnJhdGlzbGF2YTETMBEGA1UEChMKRGlzaWcg YS5zLjERMA8GA1UEAxMIQ0EgRGlzaWcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw ggEKAoIBAQCS9jHBfYj9mQGp2HvycXXxMcbzdWb6UShGhJd4NLxs/LxFWYgmGErE Nx+hSkS943EE9UQX4j/8SFhvXJ56CbpRNyIjZkMhsDxkovhqFQ4/61HhVKndBpnX mjxUizkDPw/Fzsbrg3ICqB9x8y34dQjbYkzo+s7552oftms1grrijxaSfQUMbEYD XcDtab86wYqg6I7ZuUUohwjstMoVvoLdtUSLLa2GDGhibYVW8qwUYzrG0ZmsNHhW S8+2rT+MitcE5eN4TPWGqvWP+j1scaMtymfraHtuM6kMgiioTGohQBUgDCZbg8Kp FhXAJIJdKxatymP2dACw30PEEGBWZ2NFAgMBAAGjgf8wgfwwDwYDVR0TAQH/BAUw AwEB/zAdBgNVHQ4EFgQUjbJJaJ1yCCW5wCf1UJNWSEZx+Y8wDgYDVR0PAQH/BAQD AgEGMDYGA1UdEQQvMC2BE2Nhb3BlcmF0b3JAZGlzaWcuc2uGFmh0dHA6Ly93d3cu ZGlzaWcuc2svY2EwZgYDVR0fBF8wXTAtoCugKYYnaHR0cDovL3d3dy5kaXNpZy5z ay9jYS9jcmwvY2FfZGlzaWcuY3JsMCygKqAohiZodHRwOi8vY2EuZGlzaWcuc2sv Y2EvY3JsL2NhX2Rpc2lnLmNybDAaBgNVHSAEEzARMA8GDSuBHpGT5goAAAABAQEw DQYJKoZIhvcNAQEFBQADggEBAF00dGFMrzvY/59tWDYcPQuBDRIrRhCA/ec8J9B6 yKm2fnQwM6M6int0wHl5QpNt/7EpFIKrIYwvF/k/Ji/1WcbvgAa3mkkp7M5+cTxq EEHA9tOasnxakZzArFvITV734VP/Q3f8nktnbNfzg9Gg4H8l37iYC5oyOGwwoPP/ CBUz91BKez6jPiCp3C9WgArtQVCwyfTssuMmRAAOb54GvCKWU3BlxFAKRmukLyeB EicTXxChds6KezfqwzlhA5WYOudsiCUI/HloDYd9Yvi0X/vF2Ey9WLw/Q1vUHgFN PGO+I++MzVpQuGhU+QqZMxEA4Z7CRneC9VkGjCFMhwnN5ag= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFaTCCA1GgAwIBAgIJAMMDmu5QkG4oMA0GCSqGSIb3DQEBBQUAMFIxCzAJBgNV BAYTAlNLMRMwEQYDVQQHEwpCcmF0aXNsYXZhMRMwEQYDVQQKEwpEaXNpZyBhLnMu MRkwFwYDVQQDExBDQSBEaXNpZyBSb290IFIxMB4XDTEyMDcxOTA5MDY1NloXDTQy MDcxOTA5MDY1NlowUjELMAkGA1UEBhMCU0sxEzARBgNVBAcTCkJyYXRpc2xhdmEx EzARBgNVBAoTCkRpc2lnIGEucy4xGTAXBgNVBAMTEENBIERpc2lnIFJvb3QgUjEw ggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCqw3j33Jijp1pedxiy3QRk D2P9m5YJgNXoqqXinCaUOuiZc4yd39ffg/N4T0Dhf9Kn0uXKE5Pn7cZ3Xza1lK/o OI7bm+V8u8yN63Vz4STN5qctGS7Y1oprFOsIYgrY3LMATcMjfF9DCCMyEtztDK3A fQ+lekLZWnDZv6fXARz2m6uOt0qGeKAeVjGu74IKgEH3G8muqzIm1Cxr7X1r5OJe IgpFy4QxTaz+29FHuvlglzmxZcfe+5nkCiKxLU3lSCZpq+Kq8/v8kiky6bM+TR8n oc2OuRf7JT7JbvN32g0S9l3HuzYQ1VTW8+DiR0jm3hTaYVKvJrT1cU/J19IG32PK /yHoWQbgCNWEFVP3Q+V8xaCJmGtzxmjOZd69fwX3se72V6FglcXM6pM6vpmumwKj rckWtc7dXpl4fho5frLABaTAgqWjR56M6ly2vGfb5ipN0gTco65F97yLnByn1tUD 3AjLLhbKXEAz6GfDLuemROoRRRw1ZS0eRWEkG4IupZ0zXWX4Qfkuy5Q/H6MMMSRE 7cderVC6xkGbrPAXZcD4XW9boAo0PO7X6oifmPmvTiT6l7Jkdtqr9O3jw2Dv1fkC yC2fg69naQanMVXVz0tv/wQFx1isXxYb5dKj6zHbHzMVTdDypVP1y+E9Tmgt2BLd qvLmTZtJ5cUoobqwWsagtQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud DwEB/wQEAwIBBjAdBgNVHQ4EFgQUiQq0OJMa5qvum5EY+fU8PjXQ04IwDQYJKoZI hvcNAQEFBQADggIBADKL9p1Kyb4U5YysOMo6CdQbzoaz3evUuii+Eq5FLAR0rBNR xVgYZk2C2tXck8An4b58n1KeElb21Zyp9HWc+jcSjxyT7Ff+Bw+r1RL3D65hXlaA SfX8MPWbTx9BLxyE04nH4toCdu0Jz2zBuByDHBb6lM19oMgY0sidbvW9adRtPTXo HqJPYNcHKfyyo6SdbhWSVhlMCrDpfNIZTUJG7L399ldb3Zh+pE3McgODWF3vkzpB emOqfDqo9ayk0d2iLbYq/J8BjuIQscTK5GfbVSUZP/3oNn6z4eGBrxEWi1CXYBmC AMBrTXO40RMHPuq2MU/wQppt4hF05ZSsjYSVPCGvxdpHyN85YmLLW1AL14FABZyb 7bq2ix4Eb5YgOe2kfSnbSM6C3NQCjR0EMVrHS/BsYVLXtFHCgWzN4funodKSds+x DzdYpPJScWc/DIh4gInByLUfkmO+p3qKViwaqKactV2zY9ATIKHrkWzQjX2v3wvk F7mGnjixlAxYjOBVqjtjbZqJYLhkKpLGN/R+Q0O3c+gB53+XD9fyexn9GtePyfqF a3qdnom2piiZk4hA9z7NUaPK6u95RyG1/jLix8NRb76AdPCkwzryT+lf3xkK8jsT Q6wxpLPn6/wY1gGp8yqPNg7rtLG8t0zJa7+h89n07eLw4+1knj0vllJPgFOL -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFaTCCA1GgAwIBAgIJAJK4iNuwisFjMA0GCSqGSIb3DQEBCwUAMFIxCzAJBgNV BAYTAlNLMRMwEQYDVQQHEwpCcmF0aXNsYXZhMRMwEQYDVQQKEwpEaXNpZyBhLnMu MRkwFwYDVQQDExBDQSBEaXNpZyBSb290IFIyMB4XDTEyMDcxOTA5MTUzMFoXDTQy MDcxOTA5MTUzMFowUjELMAkGA1UEBhMCU0sxEzARBgNVBAcTCkJyYXRpc2xhdmEx EzARBgNVBAoTCkRpc2lnIGEucy4xGTAXBgNVBAMTEENBIERpc2lnIFJvb3QgUjIw ggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCio8QACdaFXS1tFPbCw3Oe NcJxVX6B+6tGUODBfEl45qt5WDza/3wcn9iXAng+a0EE6UG9vgMsRfYvZNSrXaNH PWSb6WiaxswbP7q+sos0Ai6YVRn8jG+qX9pMzk0DIaPY0jSTVpbLTAwAFjxfGs3I x2ymrdMxp7zo5eFm1tL7A7RBZckQrg4FY8aAamkw/dLukO8NJ9+flXP04SXabBbe QTg06ov80egEFGEtQX6sx3dOy1FU+16SGBsEWmjGycT6txOgmLcRK7fWV8x8nhfR yyX+hk4kLlYMeE2eARKmK6cBZW58Yh2EhN/qwGu1pSqVg8NTEQxzHQuyRpDRQjrO QG6Vrf/GlK1ul4SOfW+eioANSW1z4nuSHsPzwfPrLgVv2RvPN3YEyLRa5Beny912 H9AZdugsBbPWnDTYltxhh5EF5EQIM8HauQhl1K6yNg3ruji6DOWbnuuNZt2Zz9aJ QfYEkoopKW1rOhzndX0CcQ7zwOe9yxndnWCywmZgtrEE7snmhrmaZkCo5xHtgUUD i/ZnWejBBhG93c+AAk9lQHhcR1DIm+YfgXvkRKhbhZri3lrVx/k6RGZL5DJUfORs nLMOPReisjQS1n6yqEm70XooQL6iFh/f5DcfEXP7kAplQ6INfPgGAVUzfbANuPT1 rqVCV3w2EYx7XsQDnYx5nQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud DwEB/wQEAwIBBjAdBgNVHQ4EFgQUtZn4r7CU9eMg1gqtzk5WpC5uQu0wDQYJKoZI hvcNAQELBQADggIBACYGXnDnZTPIgm7ZnBc6G3pmsgH2eDtpXi/q/075KMOYKmFM tCQSin1tERT3nLXK5ryeJ45MGcipvXrA1zYObYVybqjGom32+nNjf7xueQgcnYqf GopTpti72TVVsRHFqQOzVju5hJMiXn7B9hJSi+osZ7z+Nkz1uM/Rs0mSO9MpDpkb lvdhuDvEK7Z4bLQjb/D907JedR+Zlais9trhxTF7+9FGs9K8Z7RiVLoJ92Owk6Ka +elSLotgEqv89WBW7xBci8QaQtyDW2QOy7W81k/BfDxujRNt+3vrMNDcTa/F1bal TFtxyegxvug4BkihGuLq0t4SOVga/4AOgnXmt8kHbA7v/zjxmHHEt38OFdAlab0i nSvtBfZGR6ztwPDUO+Ls7pZbkBNOHlY667DvlruWIxG68kOGdGSVyCh13x01utI3 gzhTODY7z2zp+WsO0PsE6E9312UBeIYMej4hYvF/Y3EMyZ9E26gnonW+boE+18Dr G5gPcFw0sorMwIUY6256s/daoQe/qUKS82Ail+QUoQebTnbAjn39pCXHR+3/H3Os zMOl6W8KjptlwlCFtaOgUxLMVYdh84GuEEZhvUQhuMI9dM9+JDX6HAcOmz0iyu8x L4ysEr3vQCj8KWefshNPZiTEUxnpHikV7+ZtsH8tZ/3zbBt1RqPlShfppNcL -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIExTCCA62gAwIBAgIBADANBgkqhkiG9w0BAQUFADB9MQswCQYDVQQGEwJFVTEn MCUGA1UEChMeQUMgQ2FtZXJmaXJtYSBTQSBDSUYgQTgyNzQzMjg3MSMwIQYDVQQL ExpodHRwOi8vd3d3LmNoYW1iZXJzaWduLm9yZzEgMB4GA1UEAxMXR2xvYmFsIENo YW1iZXJzaWduIFJvb3QwHhcNMDMwOTMwMTYxNDE4WhcNMzcwOTMwMTYxNDE4WjB9 MQswCQYDVQQGEwJFVTEnMCUGA1UEChMeQUMgQ2FtZXJmaXJtYSBTQSBDSUYgQTgy NzQzMjg3MSMwIQYDVQQLExpodHRwOi8vd3d3LmNoYW1iZXJzaWduLm9yZzEgMB4G A1UEAxMXR2xvYmFsIENoYW1iZXJzaWduIFJvb3QwggEgMA0GCSqGSIb3DQEBAQUA A4IBDQAwggEIAoIBAQCicKLQn0KuWxfH2H3PFIP8T8mhtxOviteePgQKkotgVvq0 Mi+ITaFgCPS3CU6gSS9J1tPfnZdan5QEcOw/Wdm3zGaLmFIoCQLfxS+EjXqXd7/s QJ0lcqu1PzKY+7e3/HKE5TWH+VX6ox8Oby4o3Wmg2UIQxvi1RMLQQ3/bvOSiPGpV eAp3qdjqGTK3L/5cPxvusZjsyq16aUXjlg9V9ubtdepl6DJWk0aJqCWKZQbua795 B9Dxt6/tLE2Su8CoX6dnfQTyFQhwrJLWfQTSM/tMtgsL+xrJxI0DqX5c8lCrEqWh z0hQpe/SyBoT+rB/sYIcd2oPX9wLlY/vQ37mRQklAgEDo4IBUDCCAUwwEgYDVR0T AQH/BAgwBgEB/wIBDDA/BgNVHR8EODA2MDSgMqAwhi5odHRwOi8vY3JsLmNoYW1i ZXJzaWduLm9yZy9jaGFtYmVyc2lnbnJvb3QuY3JsMB0GA1UdDgQWBBRDnDafsJ4w TcbOX60Qq+UDpfqpFDAOBgNVHQ8BAf8EBAMCAQYwEQYJYIZIAYb4QgEBBAQDAgAH MCoGA1UdEQQjMCGBH2NoYW1iZXJzaWducm9vdEBjaGFtYmVyc2lnbi5vcmcwKgYD VR0SBCMwIYEfY2hhbWJlcnNpZ25yb290QGNoYW1iZXJzaWduLm9yZzBbBgNVHSAE VDBSMFAGCysGAQQBgYcuCgEBMEEwPwYIKwYBBQUHAgEWM2h0dHA6Ly9jcHMuY2hh bWJlcnNpZ24ub3JnL2Nwcy9jaGFtYmVyc2lnbnJvb3QuaHRtbDANBgkqhkiG9w0B AQUFAAOCAQEAPDtwkfkEVCeR4e3t/mh/YV3lQWVPMvEYBZRqHN4fcNs+ezICNLUM bKGKfKX0j//U2K0X1S0E0T9YgOKBWYi+wONGkyT+kL0mojAt6JcmVzWJdJYY9hXi ryQZVgICsroPFOrGimbBhkVVi76SvpykBMdJPJ7oKXqJ1/6v/2j1pReQvayZzKWG VwlnRtvWFsJG8eSpUPWP0ZIV018+xgBJOm5YstHRJw0lyDL4IBHNfTIzSJRUTN3c ecQwn+uOuFW114hcxWokPbLTBQNRxgfvzBRydD1ucs4YKIxKoHflCStFREest2d/ AYoFWpO+ocH/+OcOZ6RHSXZddZAa9SaP8A== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEvTCCA6WgAwIBAgIBADANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQGEwJFVTEn MCUGA1UEChMeQUMgQ2FtZXJmaXJtYSBTQSBDSUYgQTgyNzQzMjg3MSMwIQYDVQQL ExpodHRwOi8vd3d3LmNoYW1iZXJzaWduLm9yZzEiMCAGA1UEAxMZQ2hhbWJlcnMg b2YgQ29tbWVyY2UgUm9vdDAeFw0wMzA5MzAxNjEzNDNaFw0zNzA5MzAxNjEzNDRa MH8xCzAJBgNVBAYTAkVVMScwJQYDVQQKEx5BQyBDYW1lcmZpcm1hIFNBIENJRiBB ODI3NDMyODcxIzAhBgNVBAsTGmh0dHA6Ly93d3cuY2hhbWJlcnNpZ24ub3JnMSIw IAYDVQQDExlDaGFtYmVycyBvZiBDb21tZXJjZSBSb290MIIBIDANBgkqhkiG9w0B AQEFAAOCAQ0AMIIBCAKCAQEAtzZV5aVdGDDg2olUkfzIx1L4L1DZ77F1c2VHfRtb unXF/KGIJPov7coISjlUxFF6tdpg6jg8gbLL8bvZkSM/SAFwdakFKq0fcfPJVD0d BmpAPrMMhe5cG3nCYsS4No41XQEMIwRHNaqbYE6gZj3LJgqcQKH0XZi/caulAGgq 7YN6D6IUtdQis4CwPAxaUWktWBiP7Zme8a7ileb2R6jWDA+wWFjbw2Y3npuRVDM3 0pQcakjJyfKl2qUMI/cjDpwyVV5xnIQFUZot/eZOKjRa3spAN2cMVCFVd9oKDMyX roDclDZK9D7ONhMeU+SsTjoF7Nuucpw4i9A5O4kKPnf+dQIBA6OCAUQwggFAMBIG A1UdEwEB/wQIMAYBAf8CAQwwPAYDVR0fBDUwMzAxoC+gLYYraHR0cDovL2NybC5j aGFtYmVyc2lnbi5vcmcvY2hhbWJlcnNyb290LmNybDAdBgNVHQ4EFgQU45T1sU3p 26EpW1eLTXYGduHRooowDgYDVR0PAQH/BAQDAgEGMBEGCWCGSAGG+EIBAQQEAwIA BzAnBgNVHREEIDAegRxjaGFtYmVyc3Jvb3RAY2hhbWJlcnNpZ24ub3JnMCcGA1Ud EgQgMB6BHGNoYW1iZXJzcm9vdEBjaGFtYmVyc2lnbi5vcmcwWAYDVR0gBFEwTzBN BgsrBgEEAYGHLgoDATA+MDwGCCsGAQUFBwIBFjBodHRwOi8vY3BzLmNoYW1iZXJz aWduLm9yZy9jcHMvY2hhbWJlcnNyb290Lmh0bWwwDQYJKoZIhvcNAQEFBQADggEB AAxBl8IahsAifJ/7kPMa0QOx7xP5IV8EnNrJpY0nbJaHkb5BkAFyk+cefV/2icZd p0AJPaxJRUXcLo0waLIJuvvDL8y6C98/d3tGfToSJI6WjzwFCm/SlCgdbQzALogi 1djPHRPH8EjX1wWnz8dHnjs8NMiAT9QUu/wNUPf6s+xCX6ndbcj0dc97wXImsQEc XCz9ek60AcUFV7nnPKoF2YjpB0ZBzu9Bga5Y34OirsrXdx/nADydb47kMgkdTXg0 eDQ8lJsm7U9xxhl6vSAiSFr+S30Dt+dYvsYyTnQeaN2oaFuzPu5ifdmA6Ap1erfu tGWaIZDgqtCYvDi1czyL+Nw= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDqDCCApCgAwIBAgIJAP7c4wEPyUj/MA0GCSqGSIb3DQEBBQUAMDQxCzAJBgNV BAYTAkZSMRIwEAYDVQQKDAlEaGlteW90aXMxETAPBgNVBAMMCENlcnRpZ25hMB4X DTA3MDYyOTE1MTMwNVoXDTI3MDYyOTE1MTMwNVowNDELMAkGA1UEBhMCRlIxEjAQ BgNVBAoMCURoaW15b3RpczERMA8GA1UEAwwIQ2VydGlnbmEwggEiMA0GCSqGSIb3 DQEBAQUAA4IBDwAwggEKAoIBAQDIaPHJ1tazNHUmgh7stL7qXOEm7RFHYeGifBZ4 QCHkYJ5ayGPhxLGWkv8YbWkj4Sti993iNi+RB7lIzw7sebYs5zRLcAglozyHGxny gQcPOJAZ0xH+hrTy0V4eHpbNgGzOOzGTtvKg0KmVEn2lmsxryIRWijOp5yIVUxbw zBfsV1/pogqYCd7jX5xv3EjjhQsVWqa6n6xI4wmy9/Qy3l40vhx4XUJbzg4ij02Q 130yGLMLLGq/jj8UEYkgDncUtT2UCIf3JR7VsmAA7G8qKCVuKj4YYxclPz5EIBb2 JsglrgVKtOdjLPOMFlN+XPsRGgjBRmKfIrjxwo1p3Po6WAbfAgMBAAGjgbwwgbkw DwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUGu3+QTmQtCRZvgHyUtVF9lo53BEw ZAYDVR0jBF0wW4AUGu3+QTmQtCRZvgHyUtVF9lo53BGhOKQ2MDQxCzAJBgNVBAYT AkZSMRIwEAYDVQQKDAlEaGlteW90aXMxETAPBgNVBAMMCENlcnRpZ25hggkA/tzj AQ/JSP8wDgYDVR0PAQH/BAQDAgEGMBEGCWCGSAGG+EIBAQQEAwIABzANBgkqhkiG 9w0BAQUFAAOCAQEAhQMeknH2Qq/ho2Ge6/PAD/Kl1NqV5ta+aDY9fm4fTIrv0Q8h bV6lUmPOEvjvKtpv6zf+EwLHyzs+ImvaYS5/1HI93TDhHkxAGYwP15zRgzB7mFnc fca5DClMoTOi62c6ZYTTluLtdkVwj7Ur3vkj1kluPBS1xp81HlDQwY9qcEQCYsuu HWhBp6pX6FOqB9IG9tUUBguRA3UsbHK1YZWaDYu5Def131TN3ubY1gkIl2PlwS6w t0QmwCbAr1UwnjvVNioZBPRcHv/PLLf/0P2HQBHVESO7SMAhqaQoLf0V+LBOK/Qw WyH8EZE0vkHve52Xdf+XlcCWWC/qu0bXu+TZLg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFnDCCA4SgAwIBAgIBATANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJGUjET MBEGA1UEChMKQ2VydGlub21pczEXMBUGA1UECxMOMDAwMiA0MzM5OTg5MDMxJjAk BgNVBAMMHUNlcnRpbm9taXMgLSBBdXRvcml0w6kgUmFjaW5lMB4XDTA4MDkxNzA4 Mjg1OVoXDTI4MDkxNzA4Mjg1OVowYzELMAkGA1UEBhMCRlIxEzARBgNVBAoTCkNl cnRpbm9taXMxFzAVBgNVBAsTDjAwMDIgNDMzOTk4OTAzMSYwJAYDVQQDDB1DZXJ0 aW5vbWlzIC0gQXV0b3JpdMOpIFJhY2luZTCCAiIwDQYJKoZIhvcNAQEBBQADggIP ADCCAgoCggIBAJ2Fn4bT46/HsmtuM+Cet0I0VZ35gb5j2CN2DpdUzZlMGvE5x4jY F1AMnmHawE5V3udauHpOd4cN5bjr+p5eex7Ezyh0x5P1FMYiKAT5kcOrJ3NqDi5N 8y4oH3DfVS9O7cdxbwlyLu3VMpfQ8Vh30WC8Tl7bmoT2R2FFK/ZQpn9qcSdIhDWe rP5pqZ56XjUl+rSnSTV3lqc2W+HN3yNw2F1MpQiD8aYkOBOo7C+ooWfHpi2GR+6K /OybDnT0K0kCe5B1jPyZOQE51kqJ5Z52qz6WKDgmi92NjMD2AR5vpTESOH2VwnHu 7XSu5DaiQ3XV8QCb4uTXzEIDS3h65X27uK4uIJPT5GHfceF2Z5c/tt9qc1pkIuVC 28+BA5PY9OMQ4HL2AHCs8MF6DwV/zzRpRbWT5BnbUhYjBYkOjUjkJW+zeL9i9Qf6 lSTClrLooyPCXQP8w9PlfMl1I9f09bze5N/NgL+RiH2nE7Q5uiy6vdFrzPOlKO1E nn1So2+WLhl+HPNbxxaOu2B9d2ZHVIIAEWBsMsGoOBvrbpgT1u449fCfDu/+MYHB 0iSVL1N6aaLwD4ZFjliCK0wi1F6g530mJ0jfJUaNSih8hp75mxpZuWW/Bd22Ql09 5gBIgl4g9xGC3srYn+Y3RyYe63j3YcNBZFgCQfna4NH4+ej9Uji29YnfAgMBAAGj WzBZMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBQN jLZh2kS40RR9w759XkjwzspqsDAXBgNVHSAEEDAOMAwGCiqBegFWAgIAAQEwDQYJ KoZIhvcNAQEFBQADggIBACQ+YAZ+He86PtvqrxyaLAEL9MW12Ukx9F1BjYkMTv9s ov3/4gbIOZ/xWqndIlgVqIrTseYyCYIDbNc/CMf4uboAbbnW/FIyXaR/pDGUu7ZM OH8oMDX/nyNTt7buFHAAQCvaR6s0fl6nVjBhK4tDrP22iCj1a7Y+YEq6QpA0Z43q 619FVDsXrIvkxmUP7tCMXWY5zjKn2BCXwH40nJ+U8/aGH88bc62UeYdocMMzpXDn 2NU4lG9jeeu/Cg4I58UvD0KgKxRA/yHgBcUn4YQRE7rWhh1BCxMjidPJC+iKunqj o3M3NYB9Ergzd0A4wPpeMNLytqOx1qKVl4GbUu1pTP+A5FPbVFsDbVRfsbjvJL1v nxHDx2TCDyhihWZeGnuyt++uNckZM6i4J9szVb9o4XVIRFb7zdNIu0eJOqxp9YDG 5ERQL1TEqkPFMTFYvZbF6nVsmnWxTfj3l/+WFvKXTej28xH5On2KOG4Ey+HTRRWq pdEdnV1j6CTmNhTih60bWfVEm/vXd3wfAXBioSAaosUaKPQhA+4u2cGA6rnZgtZb dsLLO7XSAPCjDuGtbkD326C00EauFddEwk01+dIL8hf2rGbVJLJP0RyZwG71fet0 BLj5TXcJ17TPBzAJ8bgAVtkXFhYKK4bfjwEZGuW7gmP/vgt2Fl43N+bYdJeimUV5 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDkjCCAnqgAwIBAgIRAIW9S/PY2uNp9pTXX8OlRCMwDQYJKoZIhvcNAQEFBQAw PTELMAkGA1UEBhMCRlIxETAPBgNVBAoTCENlcnRwbHVzMRswGQYDVQQDExJDbGFz cyAyIFByaW1hcnkgQ0EwHhcNOTkwNzA3MTcwNTAwWhcNMTkwNzA2MjM1OTU5WjA9 MQswCQYDVQQGEwJGUjERMA8GA1UEChMIQ2VydHBsdXMxGzAZBgNVBAMTEkNsYXNz IDIgUHJpbWFyeSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANxQ ltAS+DXSCHh6tlJw/W/uz7kRy1134ezpfgSN1sxvc0NXYKwzCkTsA18cgCSR5aiR VhKC9+Ar9NuuYS6JEI1rbLqzAr3VNsVINyPi8Fo3UjMXEuLRYE2+L0ER4/YXJQyL kcAbmXuZVg2v7tK8R1fjeUl7NIknJITesezpWE7+Tt9avkGtrAjFGA7v0lPubNCd EgETjdyAYveVqUSISnFOYFWe2yMZeVYHDD9jC1yw4r5+FfyUM1hBOHTE4Y+L3yas H7WLO7dDWWuwJKZtkIvEcupdM5i3y95ee++U8Rs+yskhwcWYAqqi9lt3m/V+llU0 HGdpwPFC40es/CgcZlUCAwEAAaOBjDCBiTAPBgNVHRMECDAGAQH/AgEKMAsGA1Ud DwQEAwIBBjAdBgNVHQ4EFgQU43Mt38sOKAze3bOkynm4jrvoMIkwEQYJYIZIAYb4 QgEBBAQDAgEGMDcGA1UdHwQwMC4wLKAqoCiGJmh0dHA6Ly93d3cuY2VydHBsdXMu Y29tL0NSTC9jbGFzczIuY3JsMA0GCSqGSIb3DQEBBQUAA4IBAQCnVM+IRBnL39R/ AN9WM2K191EBkOvDP9GIROkkXe/nFL0gt5o8AP5tn9uQ3Nf0YtaLcF3n5QRIqWh8 yfFC82x/xXp8HVGIutIKPidd3i1RTtMTZGnkLuPT55sJmabglZvOGtd/vjzOUrMR FcEPF80Du5wlFbqidon8BvEY0JNLDnyCt6X09l/+7UCmnYR0ObncHoUW2ikbhiMA ybuJfm6AiB4vFLQDJKgybwOaRywwvlbGp0ICcBvqQNi6BQNwB6SW//1IMwrh3KWB kJtN3X3n57LNXMhqlfil9o3EXXgIvnsG1knPGTZQIy4I5p4FTUcY1Rbpsda2ENW7 l7+ijrRU -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDODCCAiCgAwIBAgIGIAYFFnACMA0GCSqGSIb3DQEBBQUAMDsxCzAJBgNVBAYT AlJPMREwDwYDVQQKEwhjZXJ0U0lHTjEZMBcGA1UECxMQY2VydFNJR04gUk9PVCBD QTAeFw0wNjA3MDQxNzIwMDRaFw0zMTA3MDQxNzIwMDRaMDsxCzAJBgNVBAYTAlJP MREwDwYDVQQKEwhjZXJ0U0lHTjEZMBcGA1UECxMQY2VydFNJR04gUk9PVCBDQTCC ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALczuX7IJUqOtdu0KBuqV5Do 0SLTZLrTk+jUrIZhQGpgV2hUhE28alQCBf/fm5oqrl0Hj0rDKH/v+yv6efHHrfAQ UySQi2bJqIirr1qjAOm+ukbuW3N7LBeCgV5iLKECZbO9xSsAfsT8AzNXDe3i+s5d RdY4zTW2ssHQnIFKquSyAVwdj1+ZxLGt24gh65AIgoDzMKND5pCCrlUoSe1b16kQ OA7+j0xbm0bqQfWwCHTD0IgztnzXdN/chNFDDnU5oSVAKOp4yw4sLjmdjItuFhwv JoIQ4uNllAoEwF73XVv4EOLQunpL+943AAAaWyjj0pxzPjKHmKHJUS/X3qwzs08C AwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAcYwHQYDVR0O BBYEFOCMm9slSbPxfIbWskKHC9BroNnkMA0GCSqGSIb3DQEBBQUAA4IBAQA+0hyJ LjX8+HXd5n9liPRyTMks1zJO890ZeUe9jjtbkw9QSSQTaxQGcu8J06Gh40CEyecY MnQ8SG4Pn0vU9x7Tk4ZkVJdjclDVVc/6IJMCopvDI5NOFlV2oHB5bc0hH88vLbwZ 44gx+FkagQnIl6Z0x2DEW8xXjrJ1/RsCCdtZb3KTafcxQdaIOL+Hsr0Wefmq5L6I Jd1hJyMctTEHBDa0GpC9oHRxUIltvBTjD4au8as+x6AJzKNI0eDbZOeStc+vckNw i/nDhDwTqn6Sm1dTk/pwwpEOMfmbZ13pljheX7NzTogVZ96edhBiIL5VaZVDADlN 9u6wWk5JRFRYX0KD -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDDDCCAfSgAwIBAgIDAQAgMA0GCSqGSIb3DQEBBQUAMD4xCzAJBgNVBAYTAlBM MRswGQYDVQQKExJVbml6ZXRvIFNwLiB6IG8uby4xEjAQBgNVBAMTCUNlcnR1bSBD QTAeFw0wMjA2MTExMDQ2MzlaFw0yNzA2MTExMDQ2MzlaMD4xCzAJBgNVBAYTAlBM MRswGQYDVQQKExJVbml6ZXRvIFNwLiB6IG8uby4xEjAQBgNVBAMTCUNlcnR1bSBD QTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM6xwS7TT3zNJc4YPk/E jG+AanPIW1H4m9LcuwBcsaD8dQPugfCI7iNS6eYVM42sLQnFdvkrOYCJ5JdLkKWo ePhzQ3ukYbDYWMzhbGZ+nPMJXlVjhNWo7/OxLjBos8Q82KxujZlakE403Daaj4GI ULdtlkIJ89eVgw1BS7Bqa/j8D35in2fE7SZfECYPCE/wpFcozo+47UX2bu4lXapu Ob7kky/ZR6By6/qmW6/KUz/iDsaWVhFu9+lmqSbYf5VT7QqFiLpPKaVCjF62/IUg AKpoC6EahQGcxEZjgoi2IrHu/qpGWX7PNSzVttpd90gzFFS269lvzs2I1qsb2pY7 HVkCAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEA uI3O7+cUus/usESSbLQ5PqKEbq24IXfS1HeCh+YgQYHu4vgRt2PRFze+GXYkHAQa TOs9qmdvLdTN/mUxcMUbpgIKumB7bVjCmkn+YzILa+M6wKyrO7Do0wlRjBCDxjTg xSvgGrZgFCdsMneMvLJymM/NzD+5yCRCFNZX/OYmQ6kd5YCQzgNUKD73P9P4Te1q CjqTE5s7FCMTY5w/0YcneeVMUeMBrYVdGjux1XMQpNPyvG5k9VpWkKjHDkx0Dy5x O/fIR/RpbxXyEV6DHpx8Uq79AtoSqFlnGNu8cN2bsWntgM6JQEhqDjXKKWYVIZQs 6GAqm4VKQPNriiTsBhYscw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDuzCCAqOgAwIBAgIDBETAMA0GCSqGSIb3DQEBBQUAMH4xCzAJBgNVBAYTAlBM MSIwIAYDVQQKExlVbml6ZXRvIFRlY2hub2xvZ2llcyBTLkEuMScwJQYDVQQLEx5D ZXJ0dW0gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxIjAgBgNVBAMTGUNlcnR1bSBU cnVzdGVkIE5ldHdvcmsgQ0EwHhcNMDgxMDIyMTIwNzM3WhcNMjkxMjMxMTIwNzM3 WjB+MQswCQYDVQQGEwJQTDEiMCAGA1UEChMZVW5pemV0byBUZWNobm9sb2dpZXMg Uy5BLjEnMCUGA1UECxMeQ2VydHVtIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MSIw IAYDVQQDExlDZXJ0dW0gVHJ1c3RlZCBOZXR3b3JrIENBMIIBIjANBgkqhkiG9w0B AQEFAAOCAQ8AMIIBCgKCAQEA4/t9o3K6wvDJFIf1awFO4W5AB7ptJ11/91sts1rH UV+rpDKmYYe2bg+G0jACl/jXaVehGDldamR5xgFZrDwxSjh80gTSSyjoIF87B6LM TXPb865Px1bVWqeWifrzq2jUI4ZZJ88JJ7ysbnKDHDBy3+Ci6dLhdHUZvSqeexVU BBvXQzmtVSjF4hq79MDkrjhJM8x2hZ85RdKknvISjFH4fOQtf/WsX+sWn7Et0brM kUJ3TCXJkDhv2/DM+44el1k+1WBO5gUo7Ul5E0u6SNsv+XLTOcr+H9g0cvW0QM8x AcPs3hEtF10fuFDRXhmnad4HMyjKUJX5p1TLVIZQRan5SQIDAQABo0IwQDAPBgNV HRMBAf8EBTADAQH/MB0GA1UdDgQWBBQIds3LB/8k9sXN7buQvOKEN0Z19zAOBgNV HQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQEFBQADggEBAKaorSLOAT2mo/9i0Eidi15y sHhE49wcrwn9I0j6vSrEuVUEtRCjjSfeC4Jj0O7eDDd5QVsisrCaQVymcODU0HfL I9MA4GxWL+FpDQ3Zqr8hgVDZBqWo/5U30Kr+4rP1mS1FhIrlQgnXdAIv94nYmem8 J9RHjboNRhx3zxSkHLmkMcScKHQDNP8zGSal6Q10tz6XxnboJ5ajZt3hrvJBW8qY VoNzcOSGGtIxQbovvi0TWnZvTuhOgQ4/WwMioBK+ZlgRSssDxLQqKi2WF+A5VLxI 03YnnZotBqbJ7DnSq9ufmgsnAjUpsUCV5/nonFWIGUbWtzT1fs45mtk48VH3Tyw= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDVTCCAj2gAwIBAgIESTMAATANBgkqhkiG9w0BAQUFADAyMQswCQYDVQQGEwJD TjEOMAwGA1UEChMFQ05OSUMxEzARBgNVBAMTCkNOTklDIFJPT1QwHhcNMDcwNDE2 MDcwOTE0WhcNMjcwNDE2MDcwOTE0WjAyMQswCQYDVQQGEwJDTjEOMAwGA1UEChMF Q05OSUMxEzARBgNVBAMTCkNOTklDIFJPT1QwggEiMA0GCSqGSIb3DQEBAQUAA4IB DwAwggEKAoIBAQDTNfc/c3et6FtzF8LRb+1VvG7q6KR5smzDo+/hn7E7SIX1mlwh IhAsxYLO2uOabjfhhyzcuQxauohV3/2q2x8x6gHx3zkBwRP9SFIhxFXf2tizVHa6 dLG3fdfA6PZZxU3Iva0fFNrfWEQlMhkqx35+jq44sDB7R3IJMfAw28Mbdim7aXZO V/kbZKKTVrdvmW7bCgScEeOAH8tjlBAKqeFkgjH5jCftppkA9nCTGPihNIaj3XrC GHn2emU1z5DrvTOTn1OrczvmmzQgLx3vqR1jGqCA2wMv+SYahtKNu6m+UjqHZ0gN v7Sg2Ca+I19zN38m5pIEo3/PIKe38zrKy5nLAgMBAAGjczBxMBEGCWCGSAGG+EIB AQQEAwIABzAfBgNVHSMEGDAWgBRl8jGtKvf33VKWCscCwQ7vptU7ETAPBgNVHRMB Af8EBTADAQH/MAsGA1UdDwQEAwIB/jAdBgNVHQ4EFgQUZfIxrSr3991SlgrHAsEO 76bVOxEwDQYJKoZIhvcNAQEFBQADggEBAEs17szkrr/Dbq2flTtLP1se31cpolnK OOK5Gv+e5m4y3R6u6jW39ZORTtpC4cMXYFDy0VwmuYK36m3knITnA3kXr5g9lNvH ugDnuL8BV8F3RTIMO/G0HAiw/VGgod2aHRM2mm23xzy54cXZF/qD1T0VoDy7Hgvi yJA/qIYM/PmLXoXLT1tLYhFHxUV8BS9BsZ4QaRuZluBVeftOhpm4lNqGOGqTo+fL buXf6iFViZx9fX+Y9QCJ7uOEwFyWtcVG6kbghVW2G8kS1sHNzYDzAgE8yGnLRUhj 2JTQ7IUOO04RZfSCjKY9ri4ilAnIXOo8gV0WKgOXFlUJ24pBgp5mmxE= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEMjCCAxqgAwIBAgIBATANBgkqhkiG9w0BAQUFADB7MQswCQYDVQQGEwJHQjEb MBkGA1UECAwSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3JkMRow GAYDVQQKDBFDb21vZG8gQ0EgTGltaXRlZDEhMB8GA1UEAwwYQUFBIENlcnRpZmlj YXRlIFNlcnZpY2VzMB4XDTA0MDEwMTAwMDAwMFoXDTI4MTIzMTIzNTk1OVowezEL MAkGA1UEBhMCR0IxGzAZBgNVBAgMEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UE BwwHU2FsZm9yZDEaMBgGA1UECgwRQ29tb2RvIENBIExpbWl0ZWQxITAfBgNVBAMM GEFBQSBDZXJ0aWZpY2F0ZSBTZXJ2aWNlczCCASIwDQYJKoZIhvcNAQEBBQADggEP ADCCAQoCggEBAL5AnfRu4ep2hxxNRUSOvkbIgwadwSr+GB+O5AL686tdUIoWMQua BtDFcCLNSS1UY8y2bmhGC1Pqy0wkwLxyTurxFa70VJoSCsN6sjNg4tqJVfMiWPPe 3M/vg4aijJRPn2jymJBGhCfHdr/jzDUsi14HZGWCwEiwqJH5YZ92IFCokcdmtet4 YgNW8IoaE+oxox6gmf049vYnMlhvB/VruPsUK6+3qszWY19zjNoFmag4qMsXeDZR rOme9Hg6jc8P2ULimAyrL58OAd7vn5lJ8S3frHRNG5i1R8XlKdH5kBjHYpy+g8cm ez6KJcfA3Z3mNWgQIJ2P2N7Sw4ScDV7oL8kCAwEAAaOBwDCBvTAdBgNVHQ4EFgQU oBEKIz6W8Qfs4q8p74Klf9AwpLQwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQF MAMBAf8wewYDVR0fBHQwcjA4oDagNIYyaHR0cDovL2NybC5jb21vZG9jYS5jb20v QUFBQ2VydGlmaWNhdGVTZXJ2aWNlcy5jcmwwNqA0oDKGMGh0dHA6Ly9jcmwuY29t b2RvLm5ldC9BQUFDZXJ0aWZpY2F0ZVNlcnZpY2VzLmNybDANBgkqhkiG9w0BAQUF AAOCAQEACFb8AvCb6P+k+tZ7xkSAzk/ExfYAWMymtrwUSWgEdujm7l3sAg9g1o1Q GE8mTgHj5rCl7r+8dFRBv/38ErjHT1r0iWAFf2C3BUrz9vHCv8S5dIa2LX1rzNLz Rt0vxuBqw8M0Ayx9lt1awg6nCpnBBYurDC/zXDrPbDdVCYfeU0BsWO/8tqtlbgT2 G9w84FoVxp7Z8VlIMCFlA2zs6SFz7JsDoeA3raAVGI/6ugLOpyypEBMs1OUIJqsi l2D4kF501KKaU73yqWjgom7C12yxow+ev+to51byrvLjKzg6CYG1a4XXvi3tPxq3 smPi9WIsgtRqAEFQ8TmDn5XpNpaYbg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEHTCCAwWgAwIBAgIQToEtioJl4AsC7j41AkblPTANBgkqhkiG9w0BAQUFADCB gTELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4G A1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxJzAlBgNV BAMTHkNPTU9ETyBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wNjEyMDEwMDAw MDBaFw0yOTEyMzEyMzU5NTlaMIGBMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRowGAYDVQQKExFDT01P RE8gQ0EgTGltaXRlZDEnMCUGA1UEAxMeQ09NT0RPIENlcnRpZmljYXRpb24gQXV0 aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0ECLi3LjkRv3 UcEbVASY06m/weaKXTuH+7uIzg3jLz8GlvCiKVCZrts7oVewdFFxze1CkU1B/qnI 2GqGd0S7WWaXUF601CxwRM/aN5VCaTwwxHGzUvAhTaHYujl8HJ6jJJ3ygxaYqhZ8 Q5sVW7euNJH+1GImGEaaP+vB+fGQV+useg2L23IwambV4EajcNxo2f8ESIl33rXp +2dtQem8Ob0y2WIC8bGoPW43nOIv4tOiJovGuFVDiOEjPqXSJDlqR6sA1KGzqSX+ DT+nHbrTUcELpNqsOO9VUCQFZUaTNE8tja3G1CEZ0o7KBWFxB3NH5YoZEr0ETc5O nKVIrLsm9wIDAQABo4GOMIGLMB0GA1UdDgQWBBQLWOWLxkwVN6RAqTCpIb5HNlpW /zAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zBJBgNVHR8EQjBAMD6g PKA6hjhodHRwOi8vY3JsLmNvbW9kb2NhLmNvbS9DT01PRE9DZXJ0aWZpY2F0aW9u QXV0aG9yaXR5LmNybDANBgkqhkiG9w0BAQUFAAOCAQEAPpiem/Yb6dc5t3iuHXIY SdOH5EOC6z/JqvWote9VfCFSZfnVDeFs9D6Mk3ORLgLETgdxb8CPOGEIqB6BCsAv IC9Bi5HcSEW88cbeunZrM8gALTFGTO3nnc+IlP8zwFboJIYmuNg4ON8qa90SzMc/ RxdMosIGlgnW2/4/PEZB31jiVg88O8EckzXZOFKs7sjsLjBOlDW0JB9LeGna8gI4 zJVSk/BwJVmcIGfE7vmLV2H0knZ9P4SNVbfo5azV8fUZVqZa+5Acr5Pr5RzUZ5dd BA6+C4OmF4O5MBKgxTMVBbkN+8cFduPYSo38NBejxiEovjBFMR7HeL5YYTisO+IB ZQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICiTCCAg+gAwIBAgIQH0evqmIAcFBUTAGem2OZKjAKBggqhkjOPQQDAzCBhTEL MAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UE BxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxKzApBgNVBAMT IkNPTU9ETyBFQ0MgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDgwMzA2MDAw MDAwWhcNMzgwMTE4MjM1OTU5WjCBhTELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdy ZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09N T0RPIENBIExpbWl0ZWQxKzApBgNVBAMTIkNPTU9ETyBFQ0MgQ2VydGlmaWNhdGlv biBBdXRob3JpdHkwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQDR3svdcmCFYX7deSR FtSrYpn1PlILBs5BAH+X4QokPB0BBO490o0JlwzgdeT6+3eKKvUDYEs2ixYjFq0J cfRK9ChQtP6IHG4/bC8vCVlbpVsLM5niwz2J+Wos77LTBumjQjBAMB0GA1UdDgQW BBR1cacZSBm8nZ3qQUfflMRId5nTeTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/ BAUwAwEB/zAKBggqhkjOPQQDAwNoADBlAjEA7wNbeqy3eApyt4jf/7VGFAkK+qDm fQjGGoe9GKhzvSbKYAydzpmfz1wPMOG+FDHqAjAU9JM8SaczepBGR7NjfRObTrdv GDeAU/7dIOA1mjbRxwG55tzd8/8dLDoWV9mSOdY= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEPzCCAyegAwIBAgIBATANBgkqhkiG9w0BAQUFADB+MQswCQYDVQQGEwJHQjEb MBkGA1UECAwSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3JkMRow GAYDVQQKDBFDb21vZG8gQ0EgTGltaXRlZDEkMCIGA1UEAwwbU2VjdXJlIENlcnRp ZmljYXRlIFNlcnZpY2VzMB4XDTA0MDEwMTAwMDAwMFoXDTI4MTIzMTIzNTk1OVow fjELMAkGA1UEBhMCR0IxGzAZBgNVBAgMEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4G A1UEBwwHU2FsZm9yZDEaMBgGA1UECgwRQ29tb2RvIENBIExpbWl0ZWQxJDAiBgNV BAMMG1NlY3VyZSBDZXJ0aWZpY2F0ZSBTZXJ2aWNlczCCASIwDQYJKoZIhvcNAQEB BQADggEPADCCAQoCggEBAMBxM4KK0HDrc4eCQNUd5MvJDkKQ+d40uaG6EfQlhfPM cm3ye5drswfxdySRXyWP9nQ95IDC+DwN879A6vfIUtFyb+/Iq0G4bi4XKpVpDM3S HpR7LZQdqnXXs5jLrLxkU0C8j6ysNstcrbvd4JQX7NFc0L/vpZXJkMWwrPsbQ996 CF23uPJAGysnnlDOXmWCiIxe004MeuoIkbY2qitC++rCoznl2yY4rYsK7hljxxwk 3wN42ubqwUcaCwtGCd0C/N7Lh1/XMGNooa7cMqG6vv5Eq2i2pRcV/b3Vp6ea5EQz 6YiO/O1R65NxTq0B50SOqy3LqP4BSUjwwN3HaNiS/j0CAwEAAaOBxzCBxDAdBgNV HQ4EFgQUPNiTiMLAggnMAZkGkyDpnnAJY08wDgYDVR0PAQH/BAQDAgEGMA8GA1Ud EwEB/wQFMAMBAf8wgYEGA1UdHwR6MHgwO6A5oDeGNWh0dHA6Ly9jcmwuY29tb2Rv Y2EuY29tL1NlY3VyZUNlcnRpZmljYXRlU2VydmljZXMuY3JsMDmgN6A1hjNodHRw Oi8vY3JsLmNvbW9kby5uZXQvU2VjdXJlQ2VydGlmaWNhdGVTZXJ2aWNlcy5jcmww DQYJKoZIhvcNAQEFBQADggEBAIcBbSMdflsXfcFhMs+P5/OKlFlm4J4oqF7Tt/Q0 5qo5spcWxYJvMqTpjOev/e/C6LlLqqP05tqNZSH7uoDrJiiFGv45jN5bBAS0VPmj Z55B+glSzAVIqMk/IQQezkhr/IXownuvf7fM+F86/TXGDe+X3EyrEeFryzHRbPtI gKvcnDe4IRRLDXE97IMzbtFuMhbsmMcWi1mmNKsFVy2T96oTy9IT4rcuO81rUBcJ aD61JlfutuC23bkpgHl9j6PwpCikFcSF9CfUa7/lXORlAnZUtOM3ZiTTGWHIUhDl izeauan5Hb/qmZJhlv8BzaFfDbxxvA6sCx1HRR3B7Hzs/Sk= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEQzCCAyugAwIBAgIBATANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQGEwJHQjEb MBkGA1UECAwSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3JkMRow GAYDVQQKDBFDb21vZG8gQ0EgTGltaXRlZDElMCMGA1UEAwwcVHJ1c3RlZCBDZXJ0 aWZpY2F0ZSBTZXJ2aWNlczAeFw0wNDAxMDEwMDAwMDBaFw0yODEyMzEyMzU5NTla MH8xCzAJBgNVBAYTAkdCMRswGQYDVQQIDBJHcmVhdGVyIE1hbmNoZXN0ZXIxEDAO BgNVBAcMB1NhbGZvcmQxGjAYBgNVBAoMEUNvbW9kbyBDQSBMaW1pdGVkMSUwIwYD VQQDDBxUcnVzdGVkIENlcnRpZmljYXRlIFNlcnZpY2VzMIIBIjANBgkqhkiG9w0B AQEFAAOCAQ8AMIIBCgKCAQEA33FvNlhTWvI2VFeAxHQIIO0Yfyod5jWaHiWsnOWW fnJSoBVC21ndZHoa0Lh73TkVvFVIxO06AOoxEbrycXQaZ7jPM8yoMa+j49d/vzMt TGo87IvDktJTdyR0nAducPy9C1t2ul/y/9c3S0pgePfw+spwtOpZqqPOSC+pw7IL fhdyFgymBwwbOM/JYrc/oJOlh0Hyt3BAd9i+FHzjqMB6juljatEPmsbS9Is6FARW 1O24zG71++IsWL1/T2sr92AkWCTOJu80kTrV44HQsvAEAtdbtz6SrGsSivnkBbA7 kUlcsutT6vifR4buv5XAwAaf0lteERv0xwQ1KdJVXOTt6wIDAQABo4HJMIHGMB0G A1UdDgQWBBTFe1i97doladL3WRaoszLAeydb9DAOBgNVHQ8BAf8EBAMCAQYwDwYD VR0TAQH/BAUwAwEB/zCBgwYDVR0fBHwwejA8oDqgOIY2aHR0cDovL2NybC5jb21v ZG9jYS5jb20vVHJ1c3RlZENlcnRpZmljYXRlU2VydmljZXMuY3JsMDqgOKA2hjRo dHRwOi8vY3JsLmNvbW9kby5uZXQvVHJ1c3RlZENlcnRpZmljYXRlU2VydmljZXMu Y3JsMA0GCSqGSIb3DQEBBQUAA4IBAQDIk4E7ibSvuIQSTI3S8NtwuleGFTQQuS9/ HrCoiWChisJ3DFBKmwCL2Iv0QeLQg4pKHBQGsKNoBXAxMKdTmw7pSqBYaWcOrp32 pSxBvzwGa+RZzG0Q8ZZvH9/0BAKkn0U+yNj6NkZEUD+Cl5EfKNsYEYwq5GWDVxIS jBc/lDb+XbDABHcTuPQV1T84zJQ6VdCsmPW6AF/ghhmBeC8owH7TzEIK9a5QoNE+ xqFx7D+gIIxmOom0jtTYsU0lR+4viMi14QVFwL4Ucd56/Y57fU0IlqUSc/Atyjcn dBInTMu2l+nZrghtWjlA3QVHdWpaIbOjGM9O9y5Xt5hwXsjEeLBi -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDkzCCAnugAwIBAgIQFBOWgxRVjOp7Y+X8NId3RDANBgkqhkiG9w0BAQUFADA0 MRMwEQYDVQQDEwpDb21TaWduIENBMRAwDgYDVQQKEwdDb21TaWduMQswCQYDVQQG EwJJTDAeFw0wNDAzMjQxMTMyMThaFw0yOTAzMTkxNTAyMThaMDQxEzARBgNVBAMT CkNvbVNpZ24gQ0ExEDAOBgNVBAoTB0NvbVNpZ24xCzAJBgNVBAYTAklMMIIBIjAN BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA8ORUaSvTx49qROR+WCf4C9DklBKK 8Rs4OC8fMZwG1Cyn3gsqrhqg455qv588x26i+YtkbDqthVVRVKU4VbirgwTyP2Q2 98CNQ0NqZtH3FyrV7zb6MBBC11PN+fozc0yz6YQgitZBJzXkOPqUm7h65HkfM/sb 2CEJKHxNGGleZIp6GZPKfuzzcuc3B1hZKKxC+cX/zT/npfo4sdAMx9lSGlPWgcxC ejVb7Us6eva1jsz/D3zkYDaHL63woSV9/9JLEYhwVKZBqGdTUkJe5DSe5L6j7Kpi Xd3DTKaCQeQzC6zJMw9kglcq/QytNuEMrkvF7zuZ2SOzW120V+x0cAwqTwIDAQAB o4GgMIGdMAwGA1UdEwQFMAMBAf8wPQYDVR0fBDYwNDAyoDCgLoYsaHR0cDovL2Zl ZGlyLmNvbXNpZ24uY28uaWwvY3JsL0NvbVNpZ25DQS5jcmwwDgYDVR0PAQH/BAQD AgGGMB8GA1UdIwQYMBaAFEsBmz5WGmU2dst7l6qSBe4y5ygxMB0GA1UdDgQWBBRL AZs+VhplNnbLe5eqkgXuMucoMTANBgkqhkiG9w0BAQUFAAOCAQEA0Nmlfv4pYEWd foPPbrxHbvUanlR2QnG0PFg/LUAlQvaBnPGJEMgOqnhPOAlXsDzACPw1jvFIUY0M cXS6hMTXcpuEfDhOZAYnKuGntewImbQKDdSFc8gS4TXt8QUxHXOZDOuWyt3T5oWq 8Ir7dcHyCTxlZWTzTNity4hp8+SDtwy9F1qWF8pb/627HOkthIDYIb6FUtnUdLlp hbpN7Sgy6/lhSuTENh4Z3G+EER+V9YMoGKgzkkMn3V0TBEVPh9VGzT2ouvDzuFYk Res3x+F2T3I5GN9+dHLHcy056mDmrRGiVod7w2ia/viMcKjfZTL0pECMocJEAw6U AGegcQCCSA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDqzCCApOgAwIBAgIRAMcoRwmzuGxFjB36JPU2TukwDQYJKoZIhvcNAQEFBQAw PDEbMBkGA1UEAxMSQ29tU2lnbiBTZWN1cmVkIENBMRAwDgYDVQQKEwdDb21TaWdu MQswCQYDVQQGEwJJTDAeFw0wNDAzMjQxMTM3MjBaFw0yOTAzMTYxNTA0NTZaMDwx GzAZBgNVBAMTEkNvbVNpZ24gU2VjdXJlZCBDQTEQMA4GA1UEChMHQ29tU2lnbjEL MAkGA1UEBhMCSUwwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDGtWhf HZQVw6QIVS3joFd67+l0Kru5fFdJGhFeTymHDEjWaueP1H5XJLkGieQcPOqs49oh gHMhCu95mGwfCP+hUH3ymBvJVG8+pSjsIQQPRbsHPaHA+iqYHU4Gk/v1iDurX8sW v+bznkqH7Rnqwp9D5PGBpX8QTz7RSmKtUxvLg/8HZaWSLWapW7ha9B20IZFKF3ue Mv5WJDmyVIRD9YTC2LxBkMyd1mja6YJQqTtoz7VdApRgFrFD2UNd3V2Hbuq7s8lr 9gOUCXDeFhF6K+h2j0kQmHe5Y1yLM5d19guMsqtb3nQgJT/j8xH5h2iGNXHDHYwt 6+UarA9z1YJZQIDTAgMBAAGjgacwgaQwDAYDVR0TBAUwAwEB/zBEBgNVHR8EPTA7 MDmgN6A1hjNodHRwOi8vZmVkaXIuY29tc2lnbi5jby5pbC9jcmwvQ29tU2lnblNl Y3VyZWRDQS5jcmwwDgYDVR0PAQH/BAQDAgGGMB8GA1UdIwQYMBaAFMFL7XC29z58 ADsAj8c+DkWfHl3sMB0GA1UdDgQWBBTBS+1wtvc+fAA7AI/HPg5Fnx5d7DANBgkq hkiG9w0BAQUFAAOCAQEAFs/ukhNQq3sUnjO2QiBq1BW9Cav8cujvR3qQrFHBZE7p iL1DRYHjZiM/EoZNGeQFsOY3wo3aBijJD4mkU6l1P7CW+6tMM1X5eCZGbxs2mPtC dsGCuY7e+0X5YxtiOzkGynd6qDwJz2w2PQ8KRUtpFhpFfTMDZflScZAmlaxMDPWL kz/MdXSFmLr/YnpNH4n+rr2UAJm/EaXc4HnFFgt9AmEd6oX5AhVP51qJThRv4zdL hfXBPGHg/QVBspJ/wx2g0K5SZGBrGMYmnNj1ZOQ2GmKfig8+/21OGVZOIJFsnzQz OjRXUDpvgV4GxvU+fE6OK85lBi5d0ipTdF7Tbieejw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDoTCCAomgAwIBAgILBAAAAAABD4WqLUgwDQYJKoZIhvcNAQEFBQAwOzEYMBYG A1UEChMPQ3liZXJ0cnVzdCwgSW5jMR8wHQYDVQQDExZDeWJlcnRydXN0IEdsb2Jh bCBSb290MB4XDTA2MTIxNTA4MDAwMFoXDTIxMTIxNTA4MDAwMFowOzEYMBYGA1UE ChMPQ3liZXJ0cnVzdCwgSW5jMR8wHQYDVQQDExZDeWJlcnRydXN0IEdsb2JhbCBS b290MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA+Mi8vRRQZhP/8NN5 7CPytxrHjoXxEnOmGaoQ25yiZXRadz5RfVb23CO21O1fWLE3TdVJDm71aofW0ozS J8bi/zafmGWgE07GKmSb1ZASzxQG9Dvj1Ci+6A74q05IlG2OlTEQXO2iLb3VOm2y HLtgwEZLAfVJrn5GitB0jaEMAs7u/OePuGtm839EAL9mJRQr3RAwHQeWP032a7iP t3sMpTjr3kfb1V05/Iin89cqdPHoWqI7n1C6poxFNcJQZZXcY4Lv3b93TZxiyWNz FtApD0mpSPCzqrdsxacwOUBdrsTiXSZT8M4cIwhhqJQZugRiQOwfOHB3EgZxpzAY XSUnpQIDAQABo4GlMIGiMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/ MB0GA1UdDgQWBBS2CHsNesysIEyGVjJez6tuhS1wVzA/BgNVHR8EODA2MDSgMqAw hi5odHRwOi8vd3d3Mi5wdWJsaWMtdHJ1c3QuY29tL2NybC9jdC9jdHJvb3QuY3Js MB8GA1UdIwQYMBaAFLYIew16zKwgTIZWMl7Pq26FLXBXMA0GCSqGSIb3DQEBBQUA A4IBAQBW7wojoFROlZfJ+InaRcHUowAl9B8Tq7ejhVhpwjCt2BWKLePJzYFa+HMj Wqd8BfP9IjsO0QbE2zZMcwSO5bAi5MXzLqXZI+O4Tkogp24CJJ8iYGd7ix1yCcUx XOl5n4BHPa2hCwcUPUf/A2kaDAtE52Mlp3+yybh2hO0j9n0Hq0V+09+zv+mKts2o omcrUtW3ZfA5TGOgkXmTUg9U3YO7n9GPp1Nzw8v/MOx8BLjYRB+TX3EJIrduPuoc A06dGiBh+4E37F78CkWr1+cXVdCg6mCbpvbjjFspwgZgFJ0tl0ypkxWdYcQBX0jW WL1WMRJOEcgh4LMRkWXbtKaIOM5V -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDnzCCAoegAwIBAgIBJjANBgkqhkiG9w0BAQUFADBxMQswCQYDVQQGEwJERTEc MBoGA1UEChMTRGV1dHNjaGUgVGVsZWtvbSBBRzEfMB0GA1UECxMWVC1UZWxlU2Vj IFRydXN0IENlbnRlcjEjMCEGA1UEAxMaRGV1dHNjaGUgVGVsZWtvbSBSb290IENB IDIwHhcNOTkwNzA5MTIxMTAwWhcNMTkwNzA5MjM1OTAwWjBxMQswCQYDVQQGEwJE RTEcMBoGA1UEChMTRGV1dHNjaGUgVGVsZWtvbSBBRzEfMB0GA1UECxMWVC1UZWxl U2VjIFRydXN0IENlbnRlcjEjMCEGA1UEAxMaRGV1dHNjaGUgVGVsZWtvbSBSb290 IENBIDIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCrC6M14IspFLEU ha88EOQ5bzVdSq7d6mGNlUn0b2SjGmBmpKlAIoTZ1KXleJMOaAGtuU1cOs7TuKhC QN/Po7qCWWqSG6wcmtoIKyUn+WkjR/Hg6yx6m/UTAtB+NHzCnjwAWav12gz1Mjwr rFDa1sPeg5TKqAyZMg4ISFZbavva4VhYAUlfckE8FQYBjl2tqriTtM2e66foai1S NNs671x1Udrb8zH57nGYMsRUFUQM+ZtV7a3fGAigo4aKSe5TBY8ZTNXeWHmb0moc QqvF1afPaA+W5OFhmHZhyJF81j4A4pFQh+GdCuatl9Idxjp9y7zaAzTVjlsB9WoH txa2bkp/AgMBAAGjQjBAMB0GA1UdDgQWBBQxw3kbuvVT1xfgiXotF2wKsyudMzAP BgNVHRMECDAGAQH/AgEFMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQUFAAOC AQEAlGRZrTlk5ynrE/5aw4sTV8gEJPB0d8Bg42f76Ymmg7+Wgnxu1MM9756Abrsp tJh6sTtU6zkXR34ajgv8HzFZMQSyzhfzLMdiNlXiItiJVbSYSKpk+tYcNthEeFpa IzpXl/V6ME+un2pMSyuOoAPjPuCp1NJ70rOo4nI8rZ7/gFnkm0W09juwzTkZmDLl 6iFhkOQxIY40sfcvNUqFENrnijchvllj4PKFiDFT1FQUhXB59C4Gdyd1Lx+4ivn+ xbrYNuSD7Odlt79jWvNGr4GUN9RBjNYj1h7P9WgbRGOiWrqnNVmh5XAFmw4jV5mU Cm26OWMohpLzGITY+9HPBVZkVw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDtzCCAp+gAwIBAgIQDOfg5RfYRv6P5WD8G/AwOTANBgkqhkiG9w0BAQUFADBl MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv b3QgQ0EwHhcNMDYxMTEwMDAwMDAwWhcNMzExMTEwMDAwMDAwWjBlMQswCQYDVQQG EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl cnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgQ0EwggEi MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtDhXO5EOAXLGH87dg+XESpa7c JpSIqvTO9SA5KFhgDPiA2qkVlTJhPLWxKISKityfCgyDF3qPkKyK53lTXDGEKvYP mDI2dsze3Tyoou9q+yHyUmHfnyDXH+Kx2f4YZNISW1/5WBg1vEfNoTb5a3/UsDg+ wRvDjDPZ2C8Y/igPs6eD1sNuRMBhNZYW/lmci3Zt1/GiSw0r/wty2p5g0I6QNcZ4 VYcgoc/lbQrISXwxmDNsIumH0DJaoroTghHtORedmTpyoeb6pNnVFzF1roV9Iq4/ AUaG9ih5yLHa5FcXxH4cDrC0kqZWs72yl+2qp/C3xag/lRbQ/6GW6whfGHdPAgMB AAGjYzBhMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQW BBRF66Kv9JLLgjEtUYunpyGd823IDzAfBgNVHSMEGDAWgBRF66Kv9JLLgjEtUYun pyGd823IDzANBgkqhkiG9w0BAQUFAAOCAQEAog683+Lt8ONyc3pklL/3cmbYMuRC dWKuh+vy1dneVrOfzM4UKLkNl2BcEkxY5NM9g0lFWJc1aRqoR+pWxnmrEthngYTf fwk8lOa4JiwgvT2zKIn3X/8i4peEH+ll74fg38FnSbNd67IJKusm7Xi+fT8r87cm NW1fiQG2SVufAQWbqz0lwcy2f8Lxb4bG+mRo64EtlOtCt/qMHt1i8b5QZ7dsvfPx H2sMNgcWfzd8qVttevESRmCD1ycEvkvOl77DZypoEd+A5wwzZr8TDRRu838fYxAe +o0bJW1sj6W3YQGx0qMmoRBxna3iw/nDmVG3KwcIzi7mULKn+gpFL6Lw8g== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDrzCCApegAwIBAgIQCDvgVpBCRrGhdWrJWZHHSjANBgkqhkiG9w0BAQUFADBh MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD QTAeFw0wNjExMTAwMDAwMDBaFw0zMTExMTAwMDAwMDBaMGExCzAJBgNVBAYTAlVT MRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j b20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IENBMIIBIjANBgkqhkiG 9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTTo1eqUKKPC3eQyaKl7hLOllsB CSDMAZOnTjC3U/dDxGkAV53ijSLdhwZAAIEJzs4bg7/fzTtxRuLWZscFs3YnFo97 nh6Vfe63SKMI2tavegw5BmV/Sl0fvBf4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fpt 43C/dxC//AH2hdmoRBBYMql1GNXRor5H4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT7P T19sdl6gSzeRntwi5m3OFBqOasv+zbMUZBfHWymeMr/y7vrTC0LUq7dBMtoM1O/4 gdW7jVg/tRvoSSiicNoxBN33shbyTApOB6jtSj1etX+jkMOvJwIDAQABo2MwYTAO BgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95QNVbR TLtm8KPiGxvDl7I90VUwHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUw DQYJKoZIhvcNAQEFBQADggEBAMucN6pIExIK+t1EnE9SsPTfrgT1eXkIoyQY/Esr hMAtudXH/vTBH1jLuG2cenTnmCmrEbXjcKChzUyImZOMkXDiqw8cvpOp/2PV5Adg 06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW0W5BjfIttep3Sp+dWOIrWcBAI+0tKIJF PnlUkiaY4IBIqDfv8NZ5YBberOgOzW6sRBc4L0na4UU+Krk2U886UAb3LujEV0ls YSEY1QSteDwsOoBrp+uvFRTp2InBuThs4pFsiv9kuXclVzDAGySj4dzp30d8tbQk CAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDxTCCAq2gAwIBAgIQAqxcJmoLQJuPC3nyrkYldzANBgkqhkiG9w0BAQUFADBs MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 d3cuZGlnaWNlcnQuY29tMSswKQYDVQQDEyJEaWdpQ2VydCBIaWdoIEFzc3VyYW5j ZSBFViBSb290IENBMB4XDTA2MTExMDAwMDAwMFoXDTMxMTExMDAwMDAwMFowbDEL MAkGA1UEBhMCVVMxFTATBgNVBAoTDERpZ2lDZXJ0IEluYzEZMBcGA1UECxMQd3d3 LmRpZ2ljZXJ0LmNvbTErMCkGA1UEAxMiRGlnaUNlcnQgSGlnaCBBc3N1cmFuY2Ug RVYgUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMbM5XPm +9S75S0tMqbf5YE/yc0lSbZxKsPVlDRnogocsF9ppkCxxLeyj9CYpKlBWTrT3JTW PNt0OKRKzE0lgvdKpVMSOO7zSW1xkX5jtqumX8OkhPhPYlG++MXs2ziS4wblCJEM xChBVfvLWokVfnHoNb9Ncgk9vjo4UFt3MRuNs8ckRZqnrG0AFFoEt7oT61EKmEFB Ik5lYYeBQVCmeVyJ3hlKV9Uu5l0cUyx+mM0aBhakaHPQNAQTXKFx01p8VdteZOE3 hzBWBOURtCmAEvF5OYiiAhF8J2a3iLd48soKqDirCmTCv2ZdlYTBoSUeh10aUAsg EsxBu24LUTi4S8sCAwEAAaNjMGEwDgYDVR0PAQH/BAQDAgGGMA8GA1UdEwEB/wQF MAMBAf8wHQYDVR0OBBYEFLE+w2kD+L9HAdSYJhoIAu9jZCvDMB8GA1UdIwQYMBaA FLE+w2kD+L9HAdSYJhoIAu9jZCvDMA0GCSqGSIb3DQEBBQUAA4IBAQAcGgaX3Nec nzyIZgYIVyHbIUf4KmeqvxgydkAQV8GK83rZEWWONfqe/EW1ntlMMUu4kehDLI6z eM7b41N5cdblIZQB2lWHmiRk9opmzN6cN82oNLFpmyPInngiK3BD41VHMWEZ71jF hS9OMPagMRYjyOfiZRYzy78aG6A9+MpeizGLYAiJLQwGXFK3xPkKmNEVX58Svnw2 Yzi9RKR/5CYrCsSXaQ3pjOLAEFe4yHYSkVXySGnYvCoCWw9E1CAx2/S6cCZdkGCe vEsXCS+0yx5DaMkHJ8HSXPfqIbloEpw8nL+e/IBcm2PN7EeqJSdnoDfzAIJ9VNep +OkuE6N36B9K -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDKTCCApKgAwIBAgIENnAVljANBgkqhkiG9w0BAQUFADBGMQswCQYDVQQGEwJV UzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMREwDwYDVQQL EwhEU1RDQSBFMTAeFw05ODEyMTAxODEwMjNaFw0xODEyMTAxODQwMjNaMEYxCzAJ BgNVBAYTAlVTMSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4x ETAPBgNVBAsTCERTVENBIEUxMIGdMA0GCSqGSIb3DQEBAQUAA4GLADCBhwKBgQCg bIGpzzQeJN3+hijM3oMv+V7UQtLodGBmE5gGHKlREmlvMVW5SXIACH7TpWJENySZ j9mDSI+ZbZUTu0M7LklOiDfBu1h//uG9+LthzfNHwJmm8fOR6Hh8AMthyUQncWlV Sn5JTe2io74CTADKAqjuAQIxZA9SLRN0dja1erQtcQIBA6OCASQwggEgMBEGCWCG SAGG+EIBAQQEAwIABzBoBgNVHR8EYTBfMF2gW6BZpFcwVTELMAkGA1UEBhMCVVMx JDAiBgNVBAoTG0RpZ2l0YWwgU2lnbmF0dXJlIFRydXN0IENvLjERMA8GA1UECxMI RFNUQ0EgRTExDTALBgNVBAMTBENSTDEwKwYDVR0QBCQwIoAPMTk5ODEyMTAxODEw MjNagQ8yMDE4MTIxMDE4MTAyM1owCwYDVR0PBAQDAgEGMB8GA1UdIwQYMBaAFGp5 fpFpRhgTCgJ3pVlbYJglDqL4MB0GA1UdDgQWBBRqeX6RaUYYEwoCd6VZW2CYJQ6i +DAMBgNVHRMEBTADAQH/MBkGCSqGSIb2fQdBAAQMMAobBFY0LjADAgSQMA0GCSqG SIb3DQEBBQUAA4GBACIS2Hod3IEGtgllsofIH160L+nEHvI8wbsEkBFKg05+k7lN QseSJqBcNJo4cvj9axY+IO6CizEqkzaFI4iKPANo08kJD038bKTaKHKTDomAsH3+ gG9lbRgzl4vCa4nuYD3Im+9/KzJic5PLPON74nZ4RbyhkwS7hp86W0N6w4pl -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDKTCCApKgAwIBAgIENm7TzjANBgkqhkiG9w0BAQUFADBGMQswCQYDVQQGEwJV UzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMREwDwYDVQQL EwhEU1RDQSBFMjAeFw05ODEyMDkxOTE3MjZaFw0xODEyMDkxOTQ3MjZaMEYxCzAJ BgNVBAYTAlVTMSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4x ETAPBgNVBAsTCERTVENBIEUyMIGdMA0GCSqGSIb3DQEBAQUAA4GLADCBhwKBgQC/ k48Xku8zExjrEH9OFr//Bo8qhbxe+SSmJIi2A7fBw18DW9Fvrn5C6mYjuGODVvso LeE4i7TuqAHhzhy2iCoiRoX7n6dwqUcUP87eZfCocfdPJmyMvMa1795JJ/9IKn3o TQPMx7JSxhcxEzu1TdvIxPbDDyQq2gyd55FbgM2UnQIBA6OCASQwggEgMBEGCWCG SAGG+EIBAQQEAwIABzBoBgNVHR8EYTBfMF2gW6BZpFcwVTELMAkGA1UEBhMCVVMx JDAiBgNVBAoTG0RpZ2l0YWwgU2lnbmF0dXJlIFRydXN0IENvLjERMA8GA1UECxMI RFNUQ0EgRTIxDTALBgNVBAMTBENSTDEwKwYDVR0QBCQwIoAPMTk5ODEyMDkxOTE3 MjZagQ8yMDE4MTIwOTE5MTcyNlowCwYDVR0PBAQDAgEGMB8GA1UdIwQYMBaAFB6C TShlgDzJQW6sNS5ay97u+DlbMB0GA1UdDgQWBBQegk0oZYA8yUFurDUuWsve7vg5 WzAMBgNVHRMEBTADAQH/MBkGCSqGSIb2fQdBAAQMMAobBFY0LjADAgSQMA0GCSqG SIb3DQEBBQUAA4GBAEeNg61i8tuwnkUiBbmi1gMOOHLnnvx75pO2mqWilMg0HZHR xdf0CiUPPXiBng+xZ8SQTGPdXqfiup/1902lMXucKS1M/mQ+7LZT/uqb7YLbdHVL B3luHtgZg3Pe9T7Qtd7nS2h9Qy4qIOF+oHhEngj1mPnHfxsb1gYgAlihw6ID -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIECTCCAvGgAwIBAgIQDV6ZCtadt3js2AdWO4YV2TANBgkqhkiG9w0BAQUFADBb MQswCQYDVQQGEwJVUzEgMB4GA1UEChMXRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3Qx ETAPBgNVBAsTCERTVCBBQ0VTMRcwFQYDVQQDEw5EU1QgQUNFUyBDQSBYNjAeFw0w MzExMjAyMTE5NThaFw0xNzExMjAyMTE5NThaMFsxCzAJBgNVBAYTAlVTMSAwHgYD VQQKExdEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdDERMA8GA1UECxMIRFNUIEFDRVMx FzAVBgNVBAMTDkRTVCBBQ0VTIENBIFg2MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A MIIBCgKCAQEAuT31LMmU3HWKlV1j6IR3dma5WZFcRt2SPp/5DgO0PWGSvSMmtWPu ktKe1jzIDZBfZIGxqAgNTNj50wUoUrQBJcWVHAx+PhCEdc/BGZFjz+iokYi5Q1K7 gLFViYsx+tC3dr5BPTCapCIlF3PoHuLTrCq9Wzgh1SpL11V94zpVvddtawJXa+ZH fAjIgrrep4c9oW24MFbCswKBXy314powGCi4ZtPLAZZv6opFVdbgnf9nKxcCpk4a ahELfrd755jWjHZvwTvbUJN+5dCOHze4vbrGn2zpfDPyMjwmR/onJALJfh1biEIT ajV8fTXpLmaRcpPVMibEdPVTo7NdmvYJywIDAQABo4HIMIHFMA8GA1UdEwEB/wQF MAMBAf8wDgYDVR0PAQH/BAQDAgHGMB8GA1UdEQQYMBaBFHBraS1vcHNAdHJ1c3Rk c3QuY29tMGIGA1UdIARbMFkwVwYKYIZIAWUDAgEBATBJMEcGCCsGAQUFBwIBFjto dHRwOi8vd3d3LnRydXN0ZHN0LmNvbS9jZXJ0aWZpY2F0ZXMvcG9saWN5L0FDRVMt aW5kZXguaHRtbDAdBgNVHQ4EFgQUCXIGThhDD+XWzMNqizF7eI+og7gwDQYJKoZI hvcNAQEFBQADggEBAKPYjtay284F5zLNAdMEA+V25FYrnJmQ6AgwbN99Pe7lv7Uk QIRJ4dEorsTCOlMwiPH1d25Ryvr/ma8kXxug/fKshMrfqfBfBC6tFr8hlxCBPeP/ h40y3JTlR4peahPJlJU90u7INJXQgNStMgiAVDzgvVJT11J8smk/f3rPanTK+gQq nExaBqXpIK1FZg9p8d2/6eMyi/rgwYZNcjwu2JN4Cir42NInPRmJX1p7ijvMDNpR rscL9yuwNwXsvFcj4jjSm2jzVhKIT0J8uDHEtdvkyCE06UgRNe76x5JXxZ805Mf2 9w4LTJxoeHtxMcfrHuBnQfO3oKfN5XozNmr6mis= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDSjCCAjKgAwIBAgIQRK+wgNajJ7qJMDmGLvhAazANBgkqhkiG9w0BAQUFADA/ MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT DkRTVCBSb290IENBIFgzMB4XDTAwMDkzMDIxMTIxOVoXDTIxMDkzMDE0MDExNVow PzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMRcwFQYDVQQD Ew5EU1QgUm9vdCBDQSBYMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB AN+v6ZdQCINXtMxiZfaQguzH0yxrMMpb7NnDfcdAwRgUi+DoM3ZJKuM/IUmTrE4O rz5Iy2Xu/NMhD2XSKtkyj4zl93ewEnu1lcCJo6m67XMuegwGMoOifooUMM0RoOEq OLl5CjH9UL2AZd+3UWODyOKIYepLYYHsUmu5ouJLGiifSKOeDNoJjj4XLh7dIN9b xiqKqy69cK3FCxolkHRyxXtqqzTWMIn/5WgTe1QLyNau7Fqckh49ZLOMxt+/yUFw 7BZy1SbsOFU5Q9D8/RhcQPGX69Wam40dutolucbY38EVAjqr2m7xPi71XAicPNaD aeQQmxkqtilX4+U9m5/wAl0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNV HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMSnsaR7LHH62+FLkHX/xBVghYkQMA0GCSqG SIb3DQEBBQUAA4IBAQCjGiybFwBcqR7uKGY3Or+Dxz9LwwmglSBd49lZRNI+DT69 ikugdB/OEIKcdBodfpga3csTS7MgROSR6cz8faXbauX+5v3gTt23ADq1cEmv8uXr AvHRAosZy5Q6XkjEGB5YGV8eAlrwDPGxrancWYaLbumR9YbK+rlmM6pZW87ipxZz R8srzJmwN0jP41ZL9c8PDHIyh8bwRLtTcm1D9SZImlJnt1ir/md2cXjbDaJWFBM5 JDGFoqgCWjBH4d1QB7wCCZAA62RjYJsWvIjJEubSfZGL+T0yjWW06XyxV3bqxbYo Ob8VZRzI9neWagqNdwvYkQsEjgfbKbYK7p2CNTUQ -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEQzCCAyugAwIBAgIDCYP0MA0GCSqGSIb3DQEBCwUAMFAxCzAJBgNVBAYTAkRF MRUwEwYDVQQKDAxELVRydXN0IEdtYkgxKjAoBgNVBAMMIUQtVFJVU1QgUm9vdCBD bGFzcyAzIENBIDIgRVYgMjAwOTAeFw0wOTExMDUwODUwNDZaFw0yOTExMDUwODUw NDZaMFAxCzAJBgNVBAYTAkRFMRUwEwYDVQQKDAxELVRydXN0IEdtYkgxKjAoBgNV BAMMIUQtVFJVU1QgUm9vdCBDbGFzcyAzIENBIDIgRVYgMjAwOTCCASIwDQYJKoZI hvcNAQEBBQADggEPADCCAQoCggEBAJnxhDRwui+3MKCOvXwEz75ivJn9gpfSegpn ljgJ9hBOlSJzmY3aFS3nBfwZcyK3jpgAvDw9rKFs+9Z5JUut8Mxk2og+KbgPCdM0 3TP1YtHhzRnp7hhPTFiu4h7WDFsVWtg6uMQYZB7jM7K1iXdODL/ZlGsTl28So/6Z qQTMFexgaDbtCHu39b+T7WYxg4zGcTSHThfqr4uRjRxWQa4iN1438h3Z0S0NL2lR p75mpoo6Kr3HGrHhFPC+Oh25z1uxav60sUYgovseO3Dvk5h9jHOW8sXvhXCtKSb8 HgQ+HKDYD8tSg2J87otTlZCpV6LqYQXY+U3EJ/pure3511H3a6UCAwEAAaOCASQw ggEgMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFNOUikxiEyoZLsyvcop9Ntea HNxnMA4GA1UdDwEB/wQEAwIBBjCB3QYDVR0fBIHVMIHSMIGHoIGEoIGBhn9sZGFw Oi8vZGlyZWN0b3J5LmQtdHJ1c3QubmV0L0NOPUQtVFJVU1QlMjBSb290JTIwQ2xh c3MlMjAzJTIwQ0ElMjAyJTIwRVYlMjAyMDA5LE89RC1UcnVzdCUyMEdtYkgsQz1E RT9jZXJ0aWZpY2F0ZXJldm9jYXRpb25saXN0MEagRKBChkBodHRwOi8vd3d3LmQt dHJ1c3QubmV0L2NybC9kLXRydXN0X3Jvb3RfY2xhc3NfM19jYV8yX2V2XzIwMDku Y3JsMA0GCSqGSIb3DQEBCwUAA4IBAQA07XtaPKSUiO8aEXUHL7P+PPoeUSbrh/Yp 3uDx1MYkCenBz1UbtDDZzhr+BlGmFaQt77JLvyAoJUnRpjZ3NOhk31KxEcdzes05 nsKtjHEh8lprr988TlWvsoRlFIm5d8sqMb7Po23Pb0iUMkZv53GMoKaEGTcH8gNF CSuGdXzfX2lXANtu2KZyIktQ1HWYVt+3GP9DQ1CuekR78HlR10M9p9OB0/DJT7na xpeG0ILD5EJt/rDiZE4OJudANCa1CInXCGNjOCd1HjPqbqjdn5lPdE2BiYBL3ZqX KVwvvoFBuYz/6n1gBp7N1z3TLqMVvKjmJuVvw9y4AyHqnxbxLFS1 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEMzCCAxugAwIBAgIDCYPzMA0GCSqGSIb3DQEBCwUAME0xCzAJBgNVBAYTAkRF MRUwEwYDVQQKDAxELVRydXN0IEdtYkgxJzAlBgNVBAMMHkQtVFJVU1QgUm9vdCBD bGFzcyAzIENBIDIgMjAwOTAeFw0wOTExMDUwODM1NThaFw0yOTExMDUwODM1NTha ME0xCzAJBgNVBAYTAkRFMRUwEwYDVQQKDAxELVRydXN0IEdtYkgxJzAlBgNVBAMM HkQtVFJVU1QgUm9vdCBDbGFzcyAzIENBIDIgMjAwOTCCASIwDQYJKoZIhvcNAQEB BQADggEPADCCAQoCggEBANOySs96R+91myP6Oi/WUEWJNTrGa9v+2wBoqOADER03 UAifTUpolDWzU9GUY6cgVq/eUXjsKj3zSEhQPgrfRlWLJ23DEE0NkVJD2IfgXU42 tSHKXzlABF9bfsyjxiupQB7ZNoTWSPOSHjRGICTBpFGOShrvUD9pXRl/RcPHAY9R ySPocq60vFYJfxLLHLGvKZAKyVXMD9O0Gu1HNVpK7ZxzBCHQqr0ME7UAyiZsxGsM lFqVlNpQmvH/pStmMaTJOKDfHR+4CS7zp+hnUquVH+BGPtikw8paxTGA6Eian5Rp /hnd2HN8gcqW3o7tszIFZYQ05ub9VxC1X3a/L7AQDcUCAwEAAaOCARowggEWMA8G A1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFP3aFMSfMN4hvR5COfyrYyNJ4PGEMA4G A1UdDwEB/wQEAwIBBjCB0wYDVR0fBIHLMIHIMIGAoH6gfIZ6bGRhcDovL2RpcmVj dG9yeS5kLXRydXN0Lm5ldC9DTj1ELVRSVVNUJTIwUm9vdCUyMENsYXNzJTIwMyUy MENBJTIwMiUyMDIwMDksTz1ELVRydXN0JTIwR21iSCxDPURFP2NlcnRpZmljYXRl cmV2b2NhdGlvbmxpc3QwQ6BBoD+GPWh0dHA6Ly93d3cuZC10cnVzdC5uZXQvY3Js L2QtdHJ1c3Rfcm9vdF9jbGFzc18zX2NhXzJfMjAwOS5jcmwwDQYJKoZIhvcNAQEL BQADggEBAH+X2zDI36ScfSF6gHDOFBJpiBSVYEQBrLLpME+bUMJm2H6NMLVwMeni acfzcNsgFYbQDfC+rAF1hM5+n02/t2A7nPPKHeJeaNijnZflQGDSNiH+0LS4F9p0 o3/U37CYAqxva2ssJSRyoWXuJVrl5jLn8t+rSfrzkGkj2wTZ51xY/GXUl77M/C4K zCUqNQT4YJEVdT1B/yMfGchs64JTBKbkTCJNjYy6zltz7GRUUG3RnFX7acM2w4y8 PIWmawomDeCTmGCufsYkl4phX5GOZpIJhzbNi5stPvZR1FDUWSi9g/LMKHtThm3Y Johw1+qRzT65ysCQblrGXnRl11z+o+I= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF5zCCA8+gAwIBAgIITK9zQhyOdAIwDQYJKoZIhvcNAQEFBQAwgYAxODA2BgNV BAMML0VCRyBFbGVrdHJvbmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sx c8SxMTcwNQYDVQQKDC5FQkcgQmlsacWfaW0gVGVrbm9sb2ppbGVyaSB2ZSBIaXpt ZXRsZXJpIEEuxZ4uMQswCQYDVQQGEwJUUjAeFw0wNjA4MTcwMDIxMDlaFw0xNjA4 MTQwMDMxMDlaMIGAMTgwNgYDVQQDDC9FQkcgRWxla3Ryb25payBTZXJ0aWZpa2Eg SGl6bWV0IFNhxJ9sYXnEsWPEsXPEsTE3MDUGA1UECgwuRUJHIEJpbGnFn2ltIFRl a25vbG9qaWxlcmkgdmUgSGl6bWV0bGVyaSBBLsWeLjELMAkGA1UEBhMCVFIwggIi MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDuoIRh0DpqZhAy2DE4f6en5f2h 4fuXd7hxlugTlkaDT7byX3JWbhNgpQGR4lvFzVcfd2NR/y8927k/qqk153nQ9dAk tiHq6yOU/im/+4mRDGSaBUorzAzu8T2bgmmkTPiab+ci2hC6X5L8GCcKqKpE+i4s tPtGmggDg3KriORqcsnlZR9uKg+ds+g75AxuetpX/dfreYteIAbTdgtsApWjluTL dlHRKJ2hGvxEok3MenaoDT2/F08iiFD9rrbskFBKW5+VQarKD7JK/oCZTqNGFav4 c0JqwmZ2sQomFd2TkuzbqV9UIlKRcF0T6kjsbgNs2d1s/OsNA/+mgxKb8amTD8Um TDGyY5lhcucqZJnSuOl14nypqZoaqsNW2xCaPINStnuWt6yHd6i58mcLlEOzrz5z +kI2sSXFCjEmN1ZnuqMLfdb3ic1nobc6HmZP9qBVFCVMLDMNpkGMvQQxahByCp0O Lna9XvNRiYuoP1Vzv9s6xiQFlpJIqkuNKgPlV5EQ9GooFW5Hd4RcUXSfGenmHmMW OeMRFeNYGkS9y8RsZteEBt8w9DeiQyJ50hBs37vmExH8nYQKE3vwO9D8owrXieqW fo1IhR5kX9tUoqzVegJ5a9KK8GfaZXINFHDk6Y54jzJ0fFfy1tb0Nokb+Clsi7n2 l9GkLqq+CxnCRelwXQIDAJ3Zo2MwYTAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB /wQEAwIBBjAdBgNVHQ4EFgQU587GT/wWZ5b6SqMHwQSny2re2kcwHwYDVR0jBBgw FoAU587GT/wWZ5b6SqMHwQSny2re2kcwDQYJKoZIhvcNAQEFBQADggIBAJuYml2+ 8ygjdsZs93/mQJ7ANtyVDR2tFcU22NU57/IeIl6zgrRdu0waypIN30ckHrMk2pGI 6YNw3ZPX6bqz3xZaPt7gyPvT/Wwp+BVGoGgmzJNSroIBk5DKd8pNSe/iWtkqvTDO TLKBtjDOWU/aWR1qeqRFsIImgYZ29fUQALjuswnoT4cCB64kXPBfrAowzIpAoHME wfuJJPaaHFy3PApnNgUIMbOv2AFoKuB4j3TeuFGkjGwgPaL7s9QJ/XvCgKqTbCmY Iai7FvOpEl90tYeY8pUm3zTvilORiF0alKM/fCL414i6poyWqD1SNGKfAB5UVUJn xk1Gj7sURT0KlhaOEKGXmdXTMIXM3rRyt7yKPBgpaP3ccQfuJDlq+u2lrDgv+R4Q DgZxGhBM/nV+/x5XOULK1+EVoVZVWRvRo68R2E7DpSvvkL/A7IITW43WciyTTo9q Kd+FPNMN4KIYEsxVL0e3p5sC/kH2iExt2qkBR4NkJ2IQgtYSe14DHzSpyZH+r11t hie3I6p1GMog57AP14kOpmciY/SDQSsGS7tY1dHXt7kQY9iJSrSq3RZj9W6+YKH4 7ejWkE8axsWgKdOnIaj1Wjz3x0miIZpKlVIglnKaZsv30oZDfCK+lvm9AahH3eU7 QPl1K5srRmSGjR70j/sHd9DqSaIcjVIUpgqT -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFVjCCBD6gAwIBAgIQ7is969Qh3hSoYqwE893EATANBgkqhkiG9w0BAQUFADCB 8zELMAkGA1UEBhMCRVMxOzA5BgNVBAoTMkFnZW5jaWEgQ2F0YWxhbmEgZGUgQ2Vy dGlmaWNhY2lvIChOSUYgUS0wODAxMTc2LUkpMSgwJgYDVQQLEx9TZXJ2ZWlzIFB1 YmxpY3MgZGUgQ2VydGlmaWNhY2lvMTUwMwYDVQQLEyxWZWdldSBodHRwczovL3d3 dy5jYXRjZXJ0Lm5ldC92ZXJhcnJlbCAoYykwMzE1MDMGA1UECxMsSmVyYXJxdWlh IEVudGl0YXRzIGRlIENlcnRpZmljYWNpbyBDYXRhbGFuZXMxDzANBgNVBAMTBkVD LUFDQzAeFw0wMzAxMDcyMzAwMDBaFw0zMTAxMDcyMjU5NTlaMIHzMQswCQYDVQQG EwJFUzE7MDkGA1UEChMyQWdlbmNpYSBDYXRhbGFuYSBkZSBDZXJ0aWZpY2FjaW8g KE5JRiBRLTA4MDExNzYtSSkxKDAmBgNVBAsTH1NlcnZlaXMgUHVibGljcyBkZSBD ZXJ0aWZpY2FjaW8xNTAzBgNVBAsTLFZlZ2V1IGh0dHBzOi8vd3d3LmNhdGNlcnQu bmV0L3ZlcmFycmVsIChjKTAzMTUwMwYDVQQLEyxKZXJhcnF1aWEgRW50aXRhdHMg ZGUgQ2VydGlmaWNhY2lvIENhdGFsYW5lczEPMA0GA1UEAxMGRUMtQUNDMIIBIjAN BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsyLHT+KXQpWIR4NA9h0X84NzJB5R 85iKw5K4/0CQBXCHYMkAqbWUZRkiFRfCQ2xmRJoNBD45b6VLeqpjt4pEndljkYRm 4CgPukLjbo73FCeTae6RDqNfDrHrZqJyTxIThmV6PttPB/SnCWDaOkKZx7J/sxaV HMf5NLWUhdWZXqBIoH7nF2W4onW4HvPlQn2v7fOKSGRdghST2MDk/7NQcvJ29rNd QlB50JQ+awwAvthrDk4q7D7SzIKiGGUzE3eeml0aE9jD2z3Il3rucO2n5nzbcc8t lGLfbdb1OL4/pYUKGbio2Al1QnDE6u/LDsg0qBIimAy4E5S2S+zw0JDnJwIDAQAB o4HjMIHgMB0GA1UdEQQWMBSBEmVjX2FjY0BjYXRjZXJ0Lm5ldDAPBgNVHRMBAf8E BTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUoMOLRKo3pUW/l4Ba0fF4 opvpXY0wfwYDVR0gBHgwdjB0BgsrBgEEAfV4AQMBCjBlMCwGCCsGAQUFBwIBFiBo dHRwczovL3d3dy5jYXRjZXJ0Lm5ldC92ZXJhcnJlbDA1BggrBgEFBQcCAjApGidW ZWdldSBodHRwczovL3d3dy5jYXRjZXJ0Lm5ldC92ZXJhcnJlbCAwDQYJKoZIhvcN AQEFBQADggEBAKBIW4IB9k1IuDlVNZyAelOZ1Vr/sXE7zDkJlF7W2u++AVtd0x7Y /X1PzaBB4DSTv8vihpw3kpBWHNzrKQXlxJ7HNd+KDM3FIUPpqojlNcAZQmNaAl6k SBg6hW/cnbw/nZzBh7h6YQjpdwt/cKt63dmXLGQehb+8dJahw3oS7AwaboMMPOhy Rp/7SNVel+axofjk70YllJyJ22k4vuxcDlbHZVHlUIiIv0LVKz3l+bqeLrPK9HOS Agu+TGbrIP65y7WZf+a2E/rKS03Z7lNGBjvGTq2TWoF+bCpLagVFjPIhpDGQh2xl nJ2lYJU6Un/10asIbvPuW/mIPX64b24D5EI= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEAzCCAuugAwIBAgIQVID5oHPtPwBMyonY43HmSjANBgkqhkiG9w0BAQUFADB1 MQswCQYDVQQGEwJFRTEiMCAGA1UECgwZQVMgU2VydGlmaXRzZWVyaW1pc2tlc2t1 czEoMCYGA1UEAwwfRUUgQ2VydGlmaWNhdGlvbiBDZW50cmUgUm9vdCBDQTEYMBYG CSqGSIb3DQEJARYJcGtpQHNrLmVlMCIYDzIwMTAxMDMwMTAxMDMwWhgPMjAzMDEy MTcyMzU5NTlaMHUxCzAJBgNVBAYTAkVFMSIwIAYDVQQKDBlBUyBTZXJ0aWZpdHNl ZXJpbWlza2Vza3VzMSgwJgYDVQQDDB9FRSBDZXJ0aWZpY2F0aW9uIENlbnRyZSBS b290IENBMRgwFgYJKoZIhvcNAQkBFglwa2lAc2suZWUwggEiMA0GCSqGSIb3DQEB AQUAA4IBDwAwggEKAoIBAQDIIMDs4MVLqwd4lfNE7vsLDP90jmG7sWLqI9iroWUy euuOF0+W2Ap7kaJjbMeMTC55v6kF/GlclY1i+blw7cNRfdCT5mzrMEvhvH2/UpvO bntl8jixwKIy72KyaOBhU8E2lf/slLo2rpwcpzIP5Xy0xm90/XsY6KxX7QYgSzIw WFv9zajmofxwvI6Sc9uXp3whrj3B9UiHbCe9nyV0gVWw93X2PaRka9ZP585ArQ/d MtO8ihJTmMmJ+xAdTX7Nfh9WDSFwhfYggx/2uh8Ej+p3iDXE/+pOoYtNP2MbRMNE 1CV2yreN1x5KZmTNXMWcg+HCCIia7E6j8T4cLNlsHaFLAgMBAAGjgYowgYcwDwYD VR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBLyWj7qVhy/ zQas8fElyalL1BSZMEUGA1UdJQQ+MDwGCCsGAQUFBwMCBggrBgEFBQcDAQYIKwYB BQUHAwMGCCsGAQUFBwMEBggrBgEFBQcDCAYIKwYBBQUHAwkwDQYJKoZIhvcNAQEF BQADggEBAHv25MANqhlHt01Xo/6tu7Fq1Q+e2+RjxY6hUFaTlrg4wCQiZrxTFGGV v9DHKpY5P30osxBAIWrEr7BSdxjhlthWXePdNl4dp1BUoMUq5KqMlIpPnTX/dqQG E5Gion0ARD9V04I8GtVbvFZMIi5GQ4okQC3zErg7cBqklrkar4dBGmoYDQZPxz5u uSlNDUmJEYcyW+ZLBMjkXOZ0c5RdFpgTlf7727FE5TpwrDdr5rMzcijJs1eg9gIW iAYLtqZLICjU3j2LrTcFU3T+bsy8QxdxXvnFzBqpYe73dgzzcvRyrc9yAjYHR8/v GVCJYMzpJJUPwssd8m92kMfMdcGWxZ0= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDtjCCAp6gAwIBAgIQRJmNPMADJ72cdpW56tustTANBgkqhkiG9w0BAQUFADB1 MQswCQYDVQQGEwJUUjEoMCYGA1UEChMfRWxla3Ryb25payBCaWxnaSBHdXZlbmxp Z2kgQS5TLjE8MDoGA1UEAxMzZS1HdXZlbiBLb2sgRWxla3Ryb25payBTZXJ0aWZp a2EgSGl6bWV0IFNhZ2xheWljaXNpMB4XDTA3MDEwNDExMzI0OFoXDTE3MDEwNDEx MzI0OFowdTELMAkGA1UEBhMCVFIxKDAmBgNVBAoTH0VsZWt0cm9uaWsgQmlsZ2kg R3V2ZW5saWdpIEEuUy4xPDA6BgNVBAMTM2UtR3V2ZW4gS29rIEVsZWt0cm9uaWsg U2VydGlmaWthIEhpem1ldCBTYWdsYXlpY2lzaTCCASIwDQYJKoZIhvcNAQEBBQAD ggEPADCCAQoCggEBAMMSIJ6wXgBljU5Gu4Bc6SwGl9XzcslwuedLZYDBS75+PNdU MZTe1RK6UxYC6lhj71vY8+0qGqpxSKPcEC1fX+tcS5yWCEIlKBHMilpiAVDV6wlT L/jDj/6z/P2douNffb7tC+Bg62nsM+3YjfsSSYMAyYuXjDtzKjKzEve5TfL0TW3H 5tYmNwjy2f1rXKPlSFxYvEK+A1qBuhw1DADT9SN+cTAIJjjcJRFHLfO6IxClv7wC 90Nex/6wN1CZew+TzuZDLMN+DfIcQ2Zgy2ExR4ejT669VmxMvLz4Bcpk9Ok0oSy1 c+HCPujIyTQlCFzz7abHlJ+tiEMl1+E5YP6sOVkCAwEAAaNCMEAwDgYDVR0PAQH/ BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ/uRLOU1fqRTy7ZVZoE VtstxNulMA0GCSqGSIb3DQEBBQUAA4IBAQB/X7lTW2M9dTLn+sR0GstG30ZpHFLP qk/CaOv/gKlR6D1id4k9CnU58W5dF4dvaAXBlGzZXd/aslnLpRCKysw5zZ/rTt5S /wzw9JKp8mxTq5vSR6AfdPebmvEvFZ96ZDAYBzwqD2fK/A+JYZ1lpTzlvBNbCNvj /+27BrtqBrF6T2XGgv0enIu1De5Iu7i9qgi0+6N8y5/NkHZchpZ4Vwpm+Vganf2X KWDeEaaQHBkc7gGWIjQ0LpH5t8Qn0Xvmv/uARFoW5evg1Ao4vOSR49XrXMGs3xtq fJ7lddK2l4fbzIcrQzqECK+rPNv3PGYxhrCdU3nt+CPeQuMtgvEP5fqX -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEKjCCAxKgAwIBAgIEOGPe+DANBgkqhkiG9w0BAQUFADCBtDEUMBIGA1UEChML RW50cnVzdC5uZXQxQDA+BgNVBAsUN3d3dy5lbnRydXN0Lm5ldC9DUFNfMjA0OCBp bmNvcnAuIGJ5IHJlZi4gKGxpbWl0cyBsaWFiLikxJTAjBgNVBAsTHChjKSAxOTk5 IEVudHJ1c3QubmV0IExpbWl0ZWQxMzAxBgNVBAMTKkVudHJ1c3QubmV0IENlcnRp ZmljYXRpb24gQXV0aG9yaXR5ICgyMDQ4KTAeFw05OTEyMjQxNzUwNTFaFw0yOTA3 MjQxNDE1MTJaMIG0MRQwEgYDVQQKEwtFbnRydXN0Lm5ldDFAMD4GA1UECxQ3d3d3 LmVudHJ1c3QubmV0L0NQU18yMDQ4IGluY29ycC4gYnkgcmVmLiAobGltaXRzIGxp YWIuKTElMCMGA1UECxMcKGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRlZDEzMDEG A1UEAxMqRW50cnVzdC5uZXQgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgKDIwNDgp MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArU1LqRKGsuqjIAcVFmQq K0vRvwtKTY7tgHalZ7d4QMBzQshowNtTK91euHaYNZOLGp18EzoOH1u3Hs/lJBQe sYGpjX24zGtLA/ECDNyrpUAkAH90lKGdCCmziAv1h3edVc3kw37XamSrhRSGlVuX MlBvPci6Zgzj/L24ScF2iUkZ/cCovYmjZy/Gn7xxGWC4LeksyZB2ZnuU4q941mVT XTzWnLLPKQP5L6RQstRIzgUyVYr9smRMDuSYB3Xbf9+5CFVghTAp+XtIpGmG4zU/ HoZdenoVve8AjhUiVBcAkCaTvA5JaJG/+EfTnZVCwQ5N328mz8MYIWJmQ3DW1cAH 4QIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNV HQ4EFgQUVeSB0RGAvtiJuQijMfmhJAkWuXAwDQYJKoZIhvcNAQEFBQADggEBADub j1abMOdTmXx6eadNl9cZlZD7Bh/KM3xGY4+WZiT6QBshJ8rmcnPyT/4xmf3IDExo U8aAghOY+rat2l098c5u9hURlIIM7j+VrxGrD9cv3h8Dj1csHsm7mhpElesYT6Yf zX1XEC+bBAlahLVu2B064dae0Wx5XnkcFMXj0EyTO2U87d89vqbllRrDtRnDvV5b u/8j72gZyxKTJ1wDLW8w0B62GqzeWvfRqqgnpv55gcR5mTNXuhKwqeBCbJPKVt7+ bYQLCIt+jerXmCHG8+c8eS9enNFMFY3h7CI3zJpDC5fcgJCNs2ebb0gIFVbPv/Er fF6adulZkMV8gzURZVE= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIE2DCCBEGgAwIBAgIEN0rSQzANBgkqhkiG9w0BAQUFADCBwzELMAkGA1UEBhMC VVMxFDASBgNVBAoTC0VudHJ1c3QubmV0MTswOQYDVQQLEzJ3d3cuZW50cnVzdC5u ZXQvQ1BTIGluY29ycC4gYnkgcmVmLiAobGltaXRzIGxpYWIuKTElMCMGA1UECxMc KGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRlZDE6MDgGA1UEAxMxRW50cnVzdC5u ZXQgU2VjdXJlIFNlcnZlciBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw05OTA1 MjUxNjA5NDBaFw0xOTA1MjUxNjM5NDBaMIHDMQswCQYDVQQGEwJVUzEUMBIGA1UE ChMLRW50cnVzdC5uZXQxOzA5BgNVBAsTMnd3dy5lbnRydXN0Lm5ldC9DUFMgaW5j b3JwLiBieSByZWYuIChsaW1pdHMgbGlhYi4pMSUwIwYDVQQLExwoYykgMTk5OSBF bnRydXN0Lm5ldCBMaW1pdGVkMTowOAYDVQQDEzFFbnRydXN0Lm5ldCBTZWN1cmUg U2VydmVyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGdMA0GCSqGSIb3DQEBAQUA A4GLADCBhwKBgQDNKIM0VBuJ8w+vN5Ex/68xYMmo6LIQaO2f55M28Qpku0f1BBc/ I0dNxScZgSYMVHINiC3ZH5oSn7yzcdOAGT9HZnuMNSjSuQrfJNqc1lB5gXpa0zf3 wkrYKZImZNHkmGw6AIr1NJtl+O3jEP/9uElY3KDegjlrgbEWGWG5VLbmQwIBA6OC AdcwggHTMBEGCWCGSAGG+EIBAQQEAwIABzCCARkGA1UdHwSCARAwggEMMIHeoIHb oIHYpIHVMIHSMQswCQYDVQQGEwJVUzEUMBIGA1UEChMLRW50cnVzdC5uZXQxOzA5 BgNVBAsTMnd3dy5lbnRydXN0Lm5ldC9DUFMgaW5jb3JwLiBieSByZWYuIChsaW1p dHMgbGlhYi4pMSUwIwYDVQQLExwoYykgMTk5OSBFbnRydXN0Lm5ldCBMaW1pdGVk MTowOAYDVQQDEzFFbnRydXN0Lm5ldCBTZWN1cmUgU2VydmVyIENlcnRpZmljYXRp b24gQXV0aG9yaXR5MQ0wCwYDVQQDEwRDUkwxMCmgJ6AlhiNodHRwOi8vd3d3LmVu dHJ1c3QubmV0L0NSTC9uZXQxLmNybDArBgNVHRAEJDAigA8xOTk5MDUyNTE2MDk0 MFqBDzIwMTkwNTI1MTYwOTQwWjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAU8Bdi E1U9s/8KAGv7UISX8+1i0BowHQYDVR0OBBYEFPAXYhNVPbP/CgBr+1CEl/PtYtAa MAwGA1UdEwQFMAMBAf8wGQYJKoZIhvZ9B0EABAwwChsEVjQuMAMCBJAwDQYJKoZI hvcNAQEFBQADgYEAkNwwAvpkdMKnCqV8IY00F6j7Rw7/JXyNEwr75Ji174z4xRAN 95K+8cPV1ZVqBLssziY2ZcgxxufuP+NXdYR6Ee9GTxj005i7qIcyunL2POI9n9cd 2cNgQ4xYDiKWL2KjLB+6rQXvqzJ4h6BUcxm1XAX5Uj5tLUUL9wqT6u0G+bI= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEkTCCA3mgAwIBAgIERWtQVDANBgkqhkiG9w0BAQUFADCBsDELMAkGA1UEBhMC VVMxFjAUBgNVBAoTDUVudHJ1c3QsIEluYy4xOTA3BgNVBAsTMHd3dy5lbnRydXN0 Lm5ldC9DUFMgaXMgaW5jb3Jwb3JhdGVkIGJ5IHJlZmVyZW5jZTEfMB0GA1UECxMW KGMpIDIwMDYgRW50cnVzdCwgSW5jLjEtMCsGA1UEAxMkRW50cnVzdCBSb290IENl cnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA2MTEyNzIwMjM0MloXDTI2MTEyNzIw NTM0MlowgbAxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1FbnRydXN0LCBJbmMuMTkw NwYDVQQLEzB3d3cuZW50cnVzdC5uZXQvQ1BTIGlzIGluY29ycG9yYXRlZCBieSBy ZWZlcmVuY2UxHzAdBgNVBAsTFihjKSAyMDA2IEVudHJ1c3QsIEluYy4xLTArBgNV BAMTJEVudHJ1c3QgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASIwDQYJ KoZIhvcNAQEBBQADggEPADCCAQoCggEBALaVtkNC+sZtKm9I35RMOVcF7sN5EUFo Nu3s/poBj6E4KPz3EEZmLk0eGrEaTsbRwJWIsMn/MYszA9u3g3s+IIRe7bJWKKf4 4LlAcTfFy0cOlypowCKVYhXbR9n10Cv/gkvJrT7eTNuQgFA/CYqEAOwwCj0Yzfv9 KlmaI5UXLEWeH25DeW0MXJj+SKfFI0dcXv1u5x609mhF0YaDW6KKjbHjKYD+JXGI rb68j6xSlkuqUY3kEzEZ6E5Nn9uss2rVvDlUccp6en+Q3X0dgNmBu1kmwhH+5pPi 94DkZfs0Nw4pgHBNrziGLp5/V6+eF67rHMsoIV+2HNjnogQi+dPa2MsCAwEAAaOB sDCBrTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zArBgNVHRAEJDAi gA8yMDA2MTEyNzIwMjM0MlqBDzIwMjYxMTI3MjA1MzQyWjAfBgNVHSMEGDAWgBRo kORnpKZTgMeGZqTx90tD+4S9bTAdBgNVHQ4EFgQUaJDkZ6SmU4DHhmak8fdLQ/uE vW0wHQYJKoZIhvZ9B0EABBAwDhsIVjcuMTo0LjADAgSQMA0GCSqGSIb3DQEBBQUA A4IBAQCT1DCw1wMgKtD5Y+iRDAUgqV8ZyntyTtSx29CW+1RaGSwMCPeyvIWonX9t O1KzKtvn1ISMY/YPyyYBkVBs9F8U4pN0wBOeMDpQ47RgxRzwIkSNcUesyBrJ6Zua AGAT/3B+XxFNSRuzFVJ7yVTav52Vr2ua2J7p8eRDjeIRRDq/r72DQnNSi6q7pynP 9WQcCk3RvKqsnyrQ/39/2n3qse0wJcGE2jTSW3iDVuycNsMm4hH2Z0kdkquM++v/ eu6FSqdQgPCnXEqULl8FmTxSQeDNtGPPAUO6nIPcj2A781q0tHuu2guQOHXvgR1m 0vdXcDazv/wor3ElhVsT/h5/WrQ8 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFsDCCA5igAwIBAgIQFci9ZUdcr7iXAF7kBtK8nTANBgkqhkiG9w0BAQUFADBe MQswCQYDVQQGEwJUVzEjMCEGA1UECgwaQ2h1bmdod2EgVGVsZWNvbSBDby4sIEx0 ZC4xKjAoBgNVBAsMIWVQS0kgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAe Fw0wNDEyMjAwMjMxMjdaFw0zNDEyMjAwMjMxMjdaMF4xCzAJBgNVBAYTAlRXMSMw IQYDVQQKDBpDaHVuZ2h3YSBUZWxlY29tIENvLiwgTHRkLjEqMCgGA1UECwwhZVBL SSBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIICIjANBgkqhkiG9w0BAQEF AAOCAg8AMIICCgKCAgEA4SUP7o3biDN1Z82tH306Tm2d0y8U82N0ywEhajfqhFAH SyZbCUNsIZ5qyNUD9WBpj8zwIuQf5/dqIjG3LBXy4P4AakP/h2XGtRrBp0xtInAh ijHyl3SJCRImHJ7K2RKilTza6We/CKBk49ZCt0Xvl/T29de1ShUCWH2YWEtgvM3X DZoTM1PRYfl61dd4s5oz9wCGzh1NlDivqOx4UXCKXBCDUSH3ET00hl7lSM2XgYI1 TBnsZfZrxQWh7kcT1rMhJ5QQCtkkO7q+RBNGMD+XPNjX12ruOzjjK9SXDrkb5wdJ fzcq+Xd4z1TtW0ado4AOkUPB1ltfFLqfpo0kR0BZv3I4sjZsN/+Z0V0OWQqraffA sgRFelQArr5T9rXn4fg8ozHSqf4hUmTFpmfwdQcGlBSBVcYn5AGPF8Fqcde+S/uU WH1+ETOxQvdibBjWzwloPn9s9h6PYq2lY9sJpx8iQkEeb5mKPtf5P0B6ebClAZLS nT0IFaUQAS2zMnaolQ2zepr7BxB4EW/hj8e6DyUadCrlHJhBmd8hh+iVBmoKs2pH dmX2Os+PYhcZewoozRrSgx4hxyy/vv9haLdnG7t4TY3OZ+XkwY63I2binZB1NJip NiuKmpS5nezMirH4JYlcWrYvjB9teSSnUmjDhDXiZo1jDiVN1Rmy5nk3pyKdVDEC AwEAAaNqMGgwHQYDVR0OBBYEFB4M97Zn8uGSJglFwFU5Lnc/QkqiMAwGA1UdEwQF MAMBAf8wOQYEZyoHAAQxMC8wLQIBADAJBgUrDgMCGgUAMAcGBWcqAwAABBRFsMLH ClZ87lt4DJX5GFPBphzYEDANBgkqhkiG9w0BAQUFAAOCAgEACbODU1kBPpVJufGB uvl2ICO1J2B01GqZNF5sAFPZn/KmsSQHRGoqxqWOeBLoR9lYGxMqXnmbnwoqZ6Yl PwZpVnPDimZI+ymBV3QGypzqKOg4ZyYr8dW1P2WT+DZdjo2NQCCHGervJ8A9tDkP JXtoUHRVnAxZfVo9QZQlUgjgRywVMRnVvwdVxrsStZf0X4OFunHB2WyBEXYKCrC/ gpf36j36+uwtqSiUO1bd0lEursC9CBWMd1I0ltabrNMdjmEPNXubrjlpC2JgQCA2 j6/7Nu4tCEoduL+bXPjqpRugc6bY+G7gMwRfaKonh+3ZwZCc7b3jajWvY9+rGNm6 5ulK6lCKD2GTHuItGeIwlDWSXQ62B68ZgI9HkFFLLk3dheLSClIKF5r8GrBQAuUB o2M3IUxExJtRmREOc5wGj1QupyheRDmHVi03vYVElOEMSyycw5KFNGHLD7ibSkNS /jQ6fbjpKdx2qcgw+BRxgMYeNkh0IkFch4LoGHGLQYlE535YW6i4jRPpp2zDR+2z Gp1iro2C6pSe3VkQw63d4k3jMdXH7OjysP6SHhYKGvzZ8/gntsm+HbRsZJB/9OTE W9c3rkIO3aQab3yIVMUWbuF6aC74Or8NpDyJO3inTmODBCEIZ43ygknQW/2xzQ+D hNQ+IIX3Sj0rnP0qCglN6oH4EZw= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDIDCCAomgAwIBAgIENd70zzANBgkqhkiG9w0BAQUFADBOMQswCQYDVQQGEwJV UzEQMA4GA1UEChMHRXF1aWZheDEtMCsGA1UECxMkRXF1aWZheCBTZWN1cmUgQ2Vy dGlmaWNhdGUgQXV0aG9yaXR5MB4XDTk4MDgyMjE2NDE1MVoXDTE4MDgyMjE2NDE1 MVowTjELMAkGA1UEBhMCVVMxEDAOBgNVBAoTB0VxdWlmYXgxLTArBgNVBAsTJEVx dWlmYXggU2VjdXJlIENlcnRpZmljYXRlIEF1dGhvcml0eTCBnzANBgkqhkiG9w0B AQEFAAOBjQAwgYkCgYEAwV2xWGcIYu6gmi0fCG2RFGiYCh7+2gRvE4RiIcPRfM6f BeC4AfBONOziipUEZKzxa1NfBbPLZ4C/QgKO/t0BCezhABRP/PvwDN1Dulsr4R+A cJkVV5MW8Q+XarfCaCMczE1ZMKxRHjuvK9buY0V7xdlfUNLjUA86iOe/FP3gx7kC AwEAAaOCAQkwggEFMHAGA1UdHwRpMGcwZaBjoGGkXzBdMQswCQYDVQQGEwJVUzEQ MA4GA1UEChMHRXF1aWZheDEtMCsGA1UECxMkRXF1aWZheCBTZWN1cmUgQ2VydGlm aWNhdGUgQXV0aG9yaXR5MQ0wCwYDVQQDEwRDUkwxMBoGA1UdEAQTMBGBDzIwMTgw ODIyMTY0MTUxWjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAUSOZo+SvSspXXR9gj IBBPM5iQn9QwHQYDVR0OBBYEFEjmaPkr0rKV10fYIyAQTzOYkJ/UMAwGA1UdEwQF MAMBAf8wGgYJKoZIhvZ9B0EABA0wCxsFVjMuMGMDAgbAMA0GCSqGSIb3DQEBBQUA A4GBAFjOKer89961zgK5F7WF0bnj4JXMJTENAKaSbn+2kmOeUJXRmm/kEd5jhW6Y 7qj/WsjTVbJmcVfewCHrPSqnI0kBBIZCe/zuf6IWUrVnZ9NA2zsmWLIodz2uFHdh 1voqZiegDfqnc1zqcPGUIWVEX/r87yloqaKHee9570+sB3c4 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICgjCCAeugAwIBAgIBBDANBgkqhkiG9w0BAQQFADBTMQswCQYDVQQGEwJVUzEc MBoGA1UEChMTRXF1aWZheCBTZWN1cmUgSW5jLjEmMCQGA1UEAxMdRXF1aWZheCBT ZWN1cmUgZUJ1c2luZXNzIENBLTEwHhcNOTkwNjIxMDQwMDAwWhcNMjAwNjIxMDQw MDAwWjBTMQswCQYDVQQGEwJVUzEcMBoGA1UEChMTRXF1aWZheCBTZWN1cmUgSW5j LjEmMCQGA1UEAxMdRXF1aWZheCBTZWN1cmUgZUJ1c2luZXNzIENBLTEwgZ8wDQYJ KoZIhvcNAQEBBQADgY0AMIGJAoGBAM4vGbwXt3fek6lfWg0XTzQaDJj0ItlZ1MRo RvC0NcWFAyDGr0WlIVFFQesWWDYyb+JQYmT5/VGcqiTZ9J2DKocKIdMSODRsjQBu WqDZQu4aIZX5UkxVWsUPOE9G+m34LjXWHXzr4vCwdYDIqROsvojvOm6rXyo4YgKw Env+j6YDAgMBAAGjZjBkMBEGCWCGSAGG+EIBAQQEAwIABzAPBgNVHRMBAf8EBTAD AQH/MB8GA1UdIwQYMBaAFEp4MlIR21kWNl7fwRQ2QGpHfEyhMB0GA1UdDgQWBBRK eDJSEdtZFjZe38EUNkBqR3xMoTANBgkqhkiG9w0BAQQFAAOBgQB1W6ibAxHm6VZM zfmpTMANmvPMZWnmJXbMWbfWVMMdzZmsGd20hdXgPfxiIKeES1hl8eL5lSE/9dR+ WB5Hh1Q+WKG1tfgq73HnvMP2sUlG4tega+VWeponmHxGYhTnyfxuAxJ5gDgdSIKN /Bf+KpYrtWKmpj29f5JZzVoqgrI3eQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICkDCCAfmgAwIBAgIBATANBgkqhkiG9w0BAQQFADBaMQswCQYDVQQGEwJVUzEc MBoGA1UEChMTRXF1aWZheCBTZWN1cmUgSW5jLjEtMCsGA1UEAxMkRXF1aWZheCBT ZWN1cmUgR2xvYmFsIGVCdXNpbmVzcyBDQS0xMB4XDTk5MDYyMTA0MDAwMFoXDTIw MDYyMTA0MDAwMFowWjELMAkGA1UEBhMCVVMxHDAaBgNVBAoTE0VxdWlmYXggU2Vj dXJlIEluYy4xLTArBgNVBAMTJEVxdWlmYXggU2VjdXJlIEdsb2JhbCBlQnVzaW5l c3MgQ0EtMTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAuucXkAJlsTRVPEnC UdXfp9E3j9HngXNBUmCbnaEXJnitx7HoJpQytd4zjTov2/KaelpzmKNc6fuKcxtc 58O/gGzNqfTWK8D3+ZmqY6KxRwIP1ORROhI8bIpaVIRw28HFkM9yRcuoWcDNM50/ o5brhTMhHD4ePmBudpxnhcXIw2ECAwEAAaNmMGQwEQYJYIZIAYb4QgEBBAQDAgAH MA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUvqigdHJQa0S3ySPY+6j/s1dr aGwwHQYDVR0OBBYEFL6ooHRyUGtEt8kj2Puo/7NXa2hsMA0GCSqGSIb3DQEBBAUA A4GBADDiAVGqx+pf2rnQZQ8w1j7aDRRJbpGTJxQx78T3LUX47Me/okENI7SS+RkA Z70Br83gcfxaz2TE4JaY0KNA4gGK7ycH8WUBikQtBmV1UsCGECAhX2xrD2yuCRyv 8qIYNMR1pHMc8Y3c7635s3a0kr/clRAevsvIO1qEYBlWlKlV -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEVzCCAz+gAwIBAgIBATANBgkqhkiG9w0BAQUFADCBnTELMAkGA1UEBhMCRVMx IjAgBgNVBAcTGUMvIE11bnRhbmVyIDI0NCBCYXJjZWxvbmExQjBABgNVBAMTOUF1 dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIEZpcm1hcHJvZmVzaW9uYWwgQ0lGIEE2 MjYzNDA2ODEmMCQGCSqGSIb3DQEJARYXY2FAZmlybWFwcm9mZXNpb25hbC5jb20w HhcNMDExMDI0MjIwMDAwWhcNMTMxMDI0MjIwMDAwWjCBnTELMAkGA1UEBhMCRVMx IjAgBgNVBAcTGUMvIE11bnRhbmVyIDI0NCBCYXJjZWxvbmExQjBABgNVBAMTOUF1 dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIEZpcm1hcHJvZmVzaW9uYWwgQ0lGIEE2 MjYzNDA2ODEmMCQGCSqGSIb3DQEJARYXY2FAZmlybWFwcm9mZXNpb25hbC5jb20w ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDnIwNvbyOlXnjOlSztlB5u Cp4Bx+ow0Syd3Tfom5h5VtP8c9/Qit5Vj1H5WuretXDE7aTt/6MNbg9kUDGvASdY rv5sp0ovFy3Tc9UTHI9ZpTQsHVQERc1ouKDAA6XPhUJHlShbz++AbOCQl4oBPB3z hxAwJkh91/zpnZFx/0GaqUC1N5wpIE8fUuOgfRNtVLcK3ulqTgesrBlf3H5idPay BQC6haD9HThuy1q7hryUZzM1gywfI834yJFxzJeL764P3CkDG8A563DtwW4O2GcL iam8NeTvtjS0pbbELaW+0MOUJEjb35bTALVmGotmBQ/dPz/LP6pemkr4tErvlTcb AgMBAAGjgZ8wgZwwKgYDVR0RBCMwIYYfaHR0cDovL3d3dy5maXJtYXByb2Zlc2lv bmFsLmNvbTASBgNVHRMBAf8ECDAGAQH/AgEBMCsGA1UdEAQkMCKADzIwMDExMDI0 MjIwMDAwWoEPMjAxMzEwMjQyMjAwMDBaMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4E FgQUMwugZtHq2s7eYpMEKFK1FH84aLcwDQYJKoZIhvcNAQEFBQADggEBAEdz/o0n VPD11HecJ3lXV7cVVuzH2Fi3AQL0M+2TUIiefEaxvT8Ub/GzR0iLjJcG1+p+o1wq u00vR+L4OQbJnC4xGgN49Lw4xiKLMzHwFgQEffl25EvXwOaD7FnMP97/T2u3Z36m hoEyIwOdyPdfwUpgpZKpsaSgYMN4h7Mi8yrrW6ntBas3D7Hi05V2Y1Z0jFhyGzfl ZKG+TQyTmAyX9odtsz/ny4Cm7YjHX1BiAuiZdBbQ5rQ58SfLyEDW44YQqSMSkuBp QWOnryULwMWSyx6Yo1q6xTMPoJcB3X/ge9YGVM+h4k0460tQtcsm9MracEpqoeJ5 quGnM/b9Sh/22WA= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDVDCCAjygAwIBAgIDAjRWMA0GCSqGSIb3DQEBBQUAMEIxCzAJBgNVBAYTAlVT MRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMRswGQYDVQQDExJHZW9UcnVzdCBHbG9i YWwgQ0EwHhcNMDIwNTIxMDQwMDAwWhcNMjIwNTIxMDQwMDAwWjBCMQswCQYDVQQG EwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEbMBkGA1UEAxMSR2VvVHJ1c3Qg R2xvYmFsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2swYYzD9 9BcjGlZ+W988bDjkcbd4kdS8odhM+KhDtgPpTSEHCIjaWC9mOSm9BXiLnTjoBbdq fnGk5sRgprDvgOSJKA+eJdbtg/OtppHHmMlCGDUUna2YRpIuT8rxh0PBFpVXLVDv iS2Aelet8u5fa9IAjbkU+BQVNdnARqN7csiRv8lVK83Qlz6cJmTM386DGXHKTubU 1XupGc1V3sjs0l44U+VcT4wt/lAjNvxm5suOpDkZALeVAjmRCw7+OC7RHQWa9k0+ bw8HHa8sHo9gOeL6NlMTOdReJivbPagUvTLrGAMoUgRx5aszPeE4uwc2hGKceeoW MPRfwCvocWvk+QIDAQABo1MwUTAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTA ephojYn7qwVkDBF9qn1luMrMTjAfBgNVHSMEGDAWgBTAephojYn7qwVkDBF9qn1l uMrMTjANBgkqhkiG9w0BAQUFAAOCAQEANeMpauUvXVSOKVCUn5kaFOSPeCpilKIn Z57QzxpeR+nBsqTP3UEaBU6bS+5Kb1VSsyShNwrrZHYqLizz/Tt1kL/6cdjHPTfS tQWVYrmm3ok9Nns4d0iXrKYgjy6myQzCsplFAMfOEVEiIuCl6rYVSAlk6l5PdPcF PseKUgzbFbS9bZvlxrFUaKnjaZC2mqUPuLk/IH2uSrW4nOQdtqvmlKXBx4Ot2/Un hw4EbNX/3aBd7YdStysVAq45pmp06drE57xNNB6pXE0zX5IJL4hmXXeXxx12E6nV 5fEWCRE11azbJHFwLJhWC9kXtNHjUStedejV0NxPNO3CBWaAocvmMw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDZjCCAk6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBEMQswCQYDVQQGEwJVUzEW MBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEdMBsGA1UEAxMUR2VvVHJ1c3QgR2xvYmFs IENBIDIwHhcNMDQwMzA0MDUwMDAwWhcNMTkwMzA0MDUwMDAwWjBEMQswCQYDVQQG EwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEdMBsGA1UEAxMUR2VvVHJ1c3Qg R2xvYmFsIENBIDIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDvPE1A PRDfO1MA4Wf+lGAVPoWI8YkNkMgoI5kF6CsgncbzYEbYwbLVjDHZ3CB5JIG/NTL8 Y2nbsSpr7iFY8gjpeMtvy/wWUsiRxP89c96xPqfCfWbB9X5SJBri1WeR0IIQ13hL TytCOb1kLUCgsBDTOEhGiKEMuzozKmKY+wCdE1l/bztyqu6mD4b5BWHqZ38MN5aL 5mkWRxHCJ1kDs6ZgwiFAVvqgx306E+PsV8ez1q6diYD3Aecs9pYrEw15LNnA5IZ7 S4wMcoKK+xfNAGw6EzywhIdLFnopsk/bHdQL82Y3vdj2V7teJHq4PIu5+pIaGoSe 2HSPqht/XvT+RSIhAgMBAAGjYzBhMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYE FHE4NvICMVNHK266ZUapEBVYIAUJMB8GA1UdIwQYMBaAFHE4NvICMVNHK266ZUap EBVYIAUJMA4GA1UdDwEB/wQEAwIBhjANBgkqhkiG9w0BAQUFAAOCAQEAA/e1K6td EPx7srJerJsOflN4WT5CBP51o62sgU7XAotexC3IUnbHLB/8gTKY0UvGkpMzNTEv /NgdRN3ggX+d6YvhZJFiCzkIjKx0nVnZellSlxG5FntvRdOW2TF9AjYPnDtuzywN A0ZF66D0f0hExghAzN4bcLUprbqLOzRldRtxIR0sFAqwlpW41uryZfspuk/qkZN0 abby/+Ea0AzRdoXLiiW9l14sbxWZJue2Kf8i7MkCx1YAzUm5s2x7UwQa4qjJqhIF I8LO57sEAszAR6LkxCkvW0VXiVHuPOtSCP8HNR6fNWpHSlaY0VqFH4z1Ir+rzoPz 4iIprn2DQKi6bA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDfDCCAmSgAwIBAgIQGKy1av1pthU6Y2yv2vrEoTANBgkqhkiG9w0BAQUFADBY MQswCQYDVQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjExMC8GA1UEAxMo R2VvVHJ1c3QgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wNjEx MjcwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMFgxCzAJBgNVBAYTAlVTMRYwFAYDVQQK Ew1HZW9UcnVzdCBJbmMuMTEwLwYDVQQDEyhHZW9UcnVzdCBQcmltYXJ5IENlcnRp ZmljYXRpb24gQXV0aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC AQEAvrgVe//UfH1nrYNke8hCUy3f9oQIIGHWAVlqnEQRr+92/ZV+zmEwu3qDXwK9 AWbK7hWNb6EwnL2hhZ6UOvNWiAAxz9juapYC2e0DjPt1befquFUWBRaa9OBesYjA ZIVcFU2Ix7e64HXprQU9nceJSOC7KMgD4TCTZF5SwFlwIjVXiIrxlQqD17wxcwE0 7e9GceBrAqg1cmuXm2bgyxx5X9gaBGgeRwLmnWDiNpcB3841kt++Z8dtd1k7j53W kBWUvEI0EME5+bEnPn7WinXFsq+W06Lem+SYvn3h6YGttm/81w7a4DSwDRp35+MI mO9Y+pyEtzavwt+s0vQQBnBxNQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4G A1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQULNVQQZcVi/CPNmFbSvtr2ZnJM5IwDQYJ KoZIhvcNAQEFBQADggEBAFpwfyzdtzRP9YZRqSa+S7iq8XEN3GHHoOo0Hnp3DwQ1 6CePbJC/kRYkRj5KTs4rFtULUh38H2eiAkUxT87z+gOneZ1TatnaYzr4gNfTmeGl 4b7UVXGYNTq+k+qurUKykG/g/CFNNWMziUnWm07Kx+dOCQD32sfvmWKZd7aVIl6K oKv0uHiYyjgZmclynnjNS6yvGaBzEi38wkG6gZHaFloxt/m0cYASSJlyc1pZU8Fj UjPtp8nSOQJw+uCxQmYpqptR7TBUIhRf2asdweSU8Pj1K/fqynhG1riR/aYNKxoU AT6A8EKglQdebc3MS6RFjasS6LPeWuWgfOgPIh1a6Vk= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICrjCCAjWgAwIBAgIQPLL0SAoA4v7rJDteYD7DazAKBggqhkjOPQQDAzCBmDEL MAkGA1UEBhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IEluYy4xOTA3BgNVBAsTMChj KSAyMDA3IEdlb1RydXN0IEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTE2 MDQGA1UEAxMtR2VvVHJ1c3QgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0 eSAtIEcyMB4XDTA3MTEwNTAwMDAwMFoXDTM4MDExODIzNTk1OVowgZgxCzAJBgNV BAYTAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTkwNwYDVQQLEzAoYykgMjAw NyBHZW9UcnVzdCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxNjA0BgNV BAMTLUdlb1RydXN0IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBH MjB2MBAGByqGSM49AgEGBSuBBAAiA2IABBWx6P0DFUPlrOuHNxFi79KDNlJ9RVcL So17VDs6bl8VAsBQps8lL33KSLjHUGMcKiEIfJo22Av+0SbFWDEwKCXzXV2juLal tJLtbCyf691DiaI8S0iRHVDsJt/WYC69IaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAO BgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBVfNVdRVfslsq0DafwBo/q+EVXVMAoG CCqGSM49BAMDA2cAMGQCMGSWWaboCd6LuvpaiIjwH5HTRqjySkwCY/tsXzjbLkGT qQ7mndwxHLKgpxgceeHHNgIwOlavmnRs9vuD4DPTCF+hnMJbn0bWtsuRBmOiBucz rD6ogRLQy7rQkgu2npaqBA+K -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID/jCCAuagAwIBAgIQFaxulBmyeUtB9iepwxgPHzANBgkqhkiG9w0BAQsFADCB mDELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IEluYy4xOTA3BgNVBAsT MChjKSAyMDA4IEdlb1RydXN0IEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25s eTE2MDQGA1UEAxMtR2VvVHJ1c3QgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhv cml0eSAtIEczMB4XDTA4MDQwMjAwMDAwMFoXDTM3MTIwMTIzNTk1OVowgZgxCzAJ BgNVBAYTAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTkwNwYDVQQLEzAoYykg MjAwOCBHZW9UcnVzdCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxNjA0 BgNVBAMTLUdlb1RydXN0IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkg LSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANziXmJYHTNXOTIz +uvLh4yn1ErdBojqZI4xmKU4kB6Yzy5jK/BGvESyiaHAKAxJcCGVn2TAppMSAmUm hsalifD614SgcK9PGpc/BkTVyetyEH3kMSj7HGHmKAdEc5IiaacDiGydY8hS2pgn 5whMcD60yRLBxWeDXTPzAxHsatBT4tG6NmCUgLthY2xbF37fQJQeqw3CIShwiP/W JmxsYAQlTlV+fe+/lEjetx3dcI0FX4ilm/LC7urRQEFtYjgdVgbFA0dRIBn8exAL DmKudlW/X3e+PkkBUz2YJQN2JFodtNuJ6nnltrM7P7pMKEF/BqxqjsHQ9gUdfeZC huOl1UcCAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYw HQYDVR0OBBYEFMR5yo6hTgMdHNxr2zFblD4/MH8tMA0GCSqGSIb3DQEBCwUAA4IB AQAtxRPPVoB7eni9n64smefv2t+UXglpp+duaIy9cr5HqQ6XErhK8WTTOd8lNNTB zU6B8A8ExCSzNJbGpqow32hhc9f5joWJ7w5elShKKiePEI4ufIbEAp7aDHdlDkQN kv39sxY2+hENHYwOB4lqKVb3cvTdFZx3NWZXqxNT2I7BQMXXExZacse3aQHEerGD AWh9jUGhlBjBJVz88P6DAod8DQ3PLghcSkANPuyBYeYk28rgDi0Hsj5W3I31QYUH SJsMC8tJP33st/3LjWeJGqvtux6jAAgIFyqCXDFdRootD4abdNlF+9RAsXqqaC2G spki4cErx5z481+oghLrGREt -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFaDCCA1CgAwIBAgIBATANBgkqhkiG9w0BAQUFADBFMQswCQYDVQQGEwJVUzEW MBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEeMBwGA1UEAxMVR2VvVHJ1c3QgVW5pdmVy c2FsIENBMB4XDTA0MDMwNDA1MDAwMFoXDTI5MDMwNDA1MDAwMFowRTELMAkGA1UE BhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IEluYy4xHjAcBgNVBAMTFUdlb1RydXN0 IFVuaXZlcnNhbCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAKYV VaCjxuAfjJ0hUNfBvitbtaSeodlyWL0AG0y/YckUHUWCq8YdgNY96xCcOq9tJPi8 cQGeBvV8Xx7BDlXKg5pZMK4ZyzBIle0iN430SppyZj6tlcDgFgDgEB8rMQ7XlFTT QjOgNB0eRXbdT8oYN+yFFXoZCPzVx5zw8qkuEKmS5j1YPakWaDwvdSEYfyh3peFh F7em6fgemdtzbvQKoiFs7tqqhZJmr/Z6a4LauiIINQ/PQvE1+mrufislzDoR5G2v c7J2Ha3QsnhnGqQ5HFELZ1aD/ThdDc7d8Lsrlh/eezJS/R27tQahsiFepdaVaH/w mZ7cRQg+59IJDTWU3YBOU5fXtQlEIGQWFwMCTFMNaN7VqnJNk22CDtucvc+081xd VHppCZbW2xHBjXWotM85yM48vCR85mLK4b19p71XZQvk/iXttmkQ3CgaRr0BHdCX teGYO8A3ZNY9lO4L4fUorgtWv3GLIylBjobFS1J72HGrH4oVpjuDWtdYAVHGTEHZ f9hBZ3KiKN9gg6meyHv8U3NyWfWTehd2Ds735VzZC1U0oqpbtWpU5xPKV+yXbfRe Bi9Fi1jUIxaS5BZuKGNZMN9QAZxjiRqf2xeUgnA3wySemkfWWspOqGmJch+RbNt+ nhutxx9z3SxPGWX9f5NAEC7S8O08ni4oPmkmM8V7AgMBAAGjYzBhMA8GA1UdEwEB /wQFMAMBAf8wHQYDVR0OBBYEFNq7LqqwDLiIJlF0XG0D08DYj3rWMB8GA1UdIwQY MBaAFNq7LqqwDLiIJlF0XG0D08DYj3rWMA4GA1UdDwEB/wQEAwIBhjANBgkqhkiG 9w0BAQUFAAOCAgEAMXjmx7XfuJRAyXHEqDXsRh3ChfMoWIawC/yOsjmPRFWrZIRc aanQmjg8+uUfNeVE44B5lGiku8SfPeE0zTBGi1QrlaXv9z+ZhP015s8xxtxqv6fX IwjhmF7DWgh2qaavdy+3YL1ERmrvl/9zlcGO6JP7/TG37FcREUWbMPEaiDnBTzyn ANXH/KttgCJwpQzgXQQpAvvLoJHRfNbDflDVnVi+QTjruXU8FdmbyUqDWcDaU/0z uzYYm4UPFd3uLax2k7nZAY1IEKj79TiG8dsKxr2EoyNB3tZ3b4XUhRxQ4K5RirqN Pnbiucon8l+f725ZDQbYKxek0nxru18UGkiPGkzns0ccjkxFKyDuSN/n3QmOGKja QI2SJhFTYXNd673nxE0pN2HrrDktZy4W1vUAg4WhzH92xH3kt0tm7wNFYGm2DFKW koRepqO1pD4r2czYG0eq8kTaT/kD6PAUyz/zg97QwVTjt+gKN02LIFkDMBmhLMi9 ER/frslKxfMnZmaGrGiR/9nmUxwPi1xpZQomyB40w11Re9epnAahNt3ViZS82eQt DF4JbAiXfKM9fJP/P6EUp8+1Xevb2xzEdt+Iub1FBZUbrvxGakyvSOPOrg/Sfuvm bJxPgWp6ZKy7PtXny3YuxadIwVyQD8vIP/rmMuGNG2+k5o7Y+SlIis5z/iw= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFbDCCA1SgAwIBAgIBATANBgkqhkiG9w0BAQUFADBHMQswCQYDVQQGEwJVUzEW MBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEgMB4GA1UEAxMXR2VvVHJ1c3QgVW5pdmVy c2FsIENBIDIwHhcNMDQwMzA0MDUwMDAwWhcNMjkwMzA0MDUwMDAwWjBHMQswCQYD VQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEgMB4GA1UEAxMXR2VvVHJ1 c3QgVW5pdmVyc2FsIENBIDIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoIC AQCzVFLByT7y2dyxUxpZKeexw0Uo5dfR7cXFS6GqdHtXr0om/Nj1XqduGdt0DE81 WzILAePb63p3NeqqWuDW6KFXlPCQo3RWlEQwAx5cTiuFJnSCegx2oG9NzkEtoBUG FF+3Qs17j1hhNNwqCPkuwwGmIkQcTAeC5lvO0Ep8BNMZcyfwqph/Lq9O64ceJHdq XbboW0W63MOhBW9Wjo8QJqVJwy7XQYci4E+GymC16qFjwAGXEHm9ADwSbSsVsaxL se4YuU6W3Nx2/zu+z18DwPw76L5GG//aQMJS9/7jOvdqdzXQ2o3rXhhqMcceujwb KNZrVMaqW9eiLBsZzKIC9ptZvTdrhrVtgrrY6slWvKk2WP0+GfPtDCapkzj4T8Fd IgbQl+rhrcZV4IErKIM6+vR7IVEAvlI4zs1meaj0gVbi0IMJR1FbUGrP20gaXT73 y/Zl92zxlfgCOzJWgjl6W70viRu/obTo/3+NjN8D8WBOWBFM66M/ECuDmgFz2ZRt hAAnZqzwcEAJQpKtT5MNYQlRJNiS1QuUYbKHsu3/mjX/hVTK7URDrBs8FmtISgoc QIgfksILAAX/8sgCSqSqqcyZlpwvWOB94b67B9xfBHJcMTTD7F8t4D1kkCLm0ey4 Lt1ZrtmhN79UNdxzMk+MBB4zsslG8dhcyFVQyWi9qLo2CQIDAQABo2MwYTAPBgNV HRMBAf8EBTADAQH/MB0GA1UdDgQWBBR281Xh+qQ2+/CfXGJx7Tz0RzgQKzAfBgNV HSMEGDAWgBR281Xh+qQ2+/CfXGJx7Tz0RzgQKzAOBgNVHQ8BAf8EBAMCAYYwDQYJ KoZIhvcNAQEFBQADggIBAGbBxiPz2eAubl/oz66wsCVNK/g7WJtAJDday6sWSf+z dXkzoS9tcBc0kf5nfo/sm+VegqlVHy/c1FEHEv6sFj4sNcZj/NwQ6w2jqtB8zNHQ L1EuxBRa3ugZ4T7GzKQp5y6EqgYweHZUcyiYWTjgAA1i00J9IZ+uPTqM1fp3DRgr Fg5fNuH8KrUwJM/gYwx7WBr+mbpCErGR9Hxo4sjoryzqyX6uuyo9DRXcNJW2GHSo ag/HtPQTxORb7QrSpJdMKu0vbBKJPfEncKpqA1Ihn0CoZ1Dy81of398j9tx4TuaY T1U6U+Pv8vSfx3zYWK8pIpe44L2RLrB27FcRz+8pRPPphXpgY+RdM4kX2TGq2tbz GDVyz4crL2MjhF2EjD9XoIj8mZEoJmmZ1I+XRL6O1UixpCgp8RW04eWe3fiPpm8m 1wk8OhwRDqZsN/etRIcsKMfYdIKz0G9KV7s1KSegi+ghp4dkNl3M2Basx7InQJJV OCiNUW7dFGdTbHFcJoRNdVq2fmBWqU2t+5sel/MN2dKXVHfaPRK34B7vCAas+YWH 6aLcr34YEoP9VhdBLtUpgn2Z9DH2canPLAEnpQW5qrJITirvn5NSUZU8UnOOVkwX QMAJKOSLakhT2+zNVVXxxvjpoixMptEmX36vWkzaH6byHCx+rgIW0lbQL1dTR+iS -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIHSTCCBTGgAwIBAgIJAMnN0+nVfSPOMA0GCSqGSIb3DQEBBQUAMIGsMQswCQYD VQQGEwJFVTFDMEEGA1UEBxM6TWFkcmlkIChzZWUgY3VycmVudCBhZGRyZXNzIGF0 IHd3dy5jYW1lcmZpcm1hLmNvbS9hZGRyZXNzKTESMBAGA1UEBRMJQTgyNzQzMjg3 MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMuQS4xJzAlBgNVBAMTHkdsb2JhbCBD aGFtYmVyc2lnbiBSb290IC0gMjAwODAeFw0wODA4MDExMjMxNDBaFw0zODA3MzEx MjMxNDBaMIGsMQswCQYDVQQGEwJFVTFDMEEGA1UEBxM6TWFkcmlkIChzZWUgY3Vy cmVudCBhZGRyZXNzIGF0IHd3dy5jYW1lcmZpcm1hLmNvbS9hZGRyZXNzKTESMBAG A1UEBRMJQTgyNzQzMjg3MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMuQS4xJzAl BgNVBAMTHkdsb2JhbCBDaGFtYmVyc2lnbiBSb290IC0gMjAwODCCAiIwDQYJKoZI hvcNAQEBBQADggIPADCCAgoCggIBAMDfVtPkOpt2RbQT2//BthmLN0EYlVJH6xed KYiONWwGMi5HYvNJBL99RDaxccy9Wglz1dmFRP+RVyXfXjaOcNFccUMd2drvXNL7 G706tcuto8xEpw2uIRU/uXpbknXYpBI4iRmKt4DS4jJvVpyR1ogQC7N0ZJJ0YPP2 zxhPYLIj0Mc7zmFLmY/CDNBAspjcDahOo7kKrmCgrUVSY7pmvWjg+b4aqIG7HkF4 ddPB/gBVsIdU6CeQNR1MM62X/JcumIS/LMmjv9GYERTtY/jKmIhYF5ntRQOXfjyG HoiMvvKRhI9lNNgATH23MRdaKXoKGCQwoze1eqkBfSbW+Q6OWfH9GzO1KTsXO0G2 Id3UwD2ln58fQ1DJu7xsepeY7s2MH/ucUa6LcL0nn3HAa6x9kGbo1106DbDVwo3V yJ2dwW3Q0L9R5OP4wzg2rtandeavhENdk5IMagfeOx2YItaswTXbo6Al/3K1dh3e beksZixShNBFks4c5eUzHdwHU1SjqoI7mjcv3N2gZOnm3b2u/GSFHTynyQbehP9r 6GsaPMWis0L7iwk+XwhSx2LE1AVxv8Rk5Pihg+g+EpuoHtQ2TS9x9o0o9oOpE9Jh wZG7SMA0j0GMS0zbaRL/UJScIINZc+18ofLx/d33SdNDWKBWY8o9PeU1VlnpDsog zCtLkykPAgMBAAGjggFqMIIBZjASBgNVHRMBAf8ECDAGAQH/AgEMMB0GA1UdDgQW BBS5CcqcHtvTbDprru1U8VuTBjUuXjCB4QYDVR0jBIHZMIHWgBS5CcqcHtvTbDpr ru1U8VuTBjUuXqGBsqSBrzCBrDELMAkGA1UEBhMCRVUxQzBBBgNVBAcTOk1hZHJp ZCAoc2VlIGN1cnJlbnQgYWRkcmVzcyBhdCB3d3cuY2FtZXJmaXJtYS5jb20vYWRk cmVzcykxEjAQBgNVBAUTCUE4Mjc0MzI4NzEbMBkGA1UEChMSQUMgQ2FtZXJmaXJt YSBTLkEuMScwJQYDVQQDEx5HbG9iYWwgQ2hhbWJlcnNpZ24gUm9vdCAtIDIwMDiC CQDJzdPp1X0jzjAOBgNVHQ8BAf8EBAMCAQYwPQYDVR0gBDYwNDAyBgRVHSAAMCow KAYIKwYBBQUHAgEWHGh0dHA6Ly9wb2xpY3kuY2FtZXJmaXJtYS5jb20wDQYJKoZI hvcNAQEFBQADggIBAICIf3DekijZBZRG/5BXqfEv3xoNa/p8DhxJJHkn2EaqbylZ UohwEurdPfWbU1Rv4WCiqAm57OtZfMY18dwY6fFn5a+6ReAJ3spED8IXDneRRXoz X1+WLGiLwUePmJs9wOzL9dWCkoQ10b42OFZyMVtHLaoXpGNR6woBrX/sdZ7LoR/x fxKxueRkf2fWIyr0uDldmOghp+G9PUIadJpwr2hsUF1Jz//7Dl3mLEfXgTpZALVz a2Mg9jFFCDkO9HB+QHBaP9BrQql0PSgvAm11cpUJjUhjxsYjV5KTXjXBjfkK9yyd Yhz2rXzdpjEetrHHfoUm+qRqtdpjMNHvkzeyZi99Bffnt0uYlDXA2TopwZ2yUDMd SqlapskD7+3056huirRXhOukP9DuqqqHW2Pok+JrqNS4cnhrG+055F3Lm6qH1U9O AP7Zap88MQ8oAgF9mOinsKJknnn4SPIVqczmyETrP3iZ8ntxPjzxmKfFGBI/5rso M0LpRQp8bfKGeS/Fghl9CYl8slR2iK7ewfPM4W7bMdaTrpmg7yVqc5iJWzouE4ge v8CSlDQb4ye3ix5vQv/n6TebUB0tovkC7stYWDpxvGjjqsGvHCgfotwjZT+B6q6Z 09gwzxMNTxXJhLynSC34MCN32EZLeW32jO06f2ARePTpm67VVMB0gNELQp/B -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDdTCCAl2gAwIBAgILBAAAAAABFUtaw5QwDQYJKoZIhvcNAQEFBQAwVzELMAkG A1UEBhMCQkUxGTAXBgNVBAoTEEdsb2JhbFNpZ24gbnYtc2ExEDAOBgNVBAsTB1Jv b3QgQ0ExGzAZBgNVBAMTEkdsb2JhbFNpZ24gUm9vdCBDQTAeFw05ODA5MDExMjAw MDBaFw0yODAxMjgxMjAwMDBaMFcxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9i YWxTaWduIG52LXNhMRAwDgYDVQQLEwdSb290IENBMRswGQYDVQQDExJHbG9iYWxT aWduIFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDaDuaZ jc6j40+Kfvvxi4Mla+pIH/EqsLmVEQS98GPR4mdmzxzdzxtIK+6NiY6arymAZavp xy0Sy6scTHAHoT0KMM0VjU/43dSMUBUc71DuxC73/OlS8pF94G3VNTCOXkNz8kHp 1Wrjsok6Vjk4bwY8iGlbKk3Fp1S4bInMm/k8yuX9ifUSPJJ4ltbcdG6TRGHRjcdG snUOhugZitVtbNV4FpWi6cgKOOvyJBNPc1STE4U6G7weNLWLBYy5d4ux2x8gkasJ U26Qzns3dLlwR5EiUWMWea6xrkEmCMgZK9FGqkjWZCrXgzT/LCrBbBlDSgeF59N8 9iFo7+ryUp9/k5DPAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8E BTADAQH/MB0GA1UdDgQWBBRge2YaRQ2XyolQL30EzTSo//z9SzANBgkqhkiG9w0B AQUFAAOCAQEA1nPnfE920I2/7LqivjTFKDK1fPxsnCwrvQmeU79rXqoRSLblCKOz yj1hTdNGCbM+w6DjY1Ub8rrvrTnhQ7k4o+YviiY776BQVvnGCv04zcQLcFGUl5gE 38NflNUVyRRBnMRddWQVDf9VMOyGj/8N7yy5Y0b2qvzfvGn9LhJIZJrglfCm7ymP AbEVtQwdpf5pLGkkeB6zpxxxYu7KyJesF12KwvhHhm4qxFYxldBniYUr+WymXUad DKqC5JlR3XC321Y9YeRq4VzW9v493kHMB65jUr9TU/Qr6cf9tveCX4XSQRjbgbME HMUfpIBvFSDJ3gyICh3WZlXi/EjJKSZp4A== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDujCCAqKgAwIBAgILBAAAAAABD4Ym5g0wDQYJKoZIhvcNAQEFBQAwTDEgMB4G A1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjIxEzARBgNVBAoTCkdsb2JhbFNp Z24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMDYxMjE1MDgwMDAwWhcNMjExMjE1 MDgwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMjETMBEG A1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjCCASIwDQYJKoZI hvcNAQEBBQADggEPADCCAQoCggEBAKbPJA6+Lm8omUVCxKs+IVSbC9N/hHD6ErPL v4dfxn+G07IwXNb9rfF73OX4YJYJkhD10FPe+3t+c4isUoh7SqbKSaZeqKeMWhG8 eoLrvozps6yWJQeXSpkqBy+0Hne/ig+1AnwblrjFuTosvNYSuetZfeLQBoZfXklq tTleiDTsvHgMCJiEbKjNS7SgfQx5TfC4LcshytVsW33hoCmEofnTlEnLJGKRILzd C9XZzPnqJworc5HGnRusyMvo4KD0L5CLTfuwNhv2GXqF4G3yYROIXJ/gkwpRl4pa zq+r1feqCapgvdzZX99yqWATXgAByUr6P6TqBwMhAo6CygPCm48CAwEAAaOBnDCB mTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUm+IH V2ccHsBqBt5ZtJot39wZhi4wNgYDVR0fBC8wLTAroCmgJ4YlaHR0cDovL2NybC5n bG9iYWxzaWduLm5ldC9yb290LXIyLmNybDAfBgNVHSMEGDAWgBSb4gdXZxwewGoG 3lm0mi3f3BmGLjANBgkqhkiG9w0BAQUFAAOCAQEAmYFThxxol4aR7OBKuEQLq4Gs J0/WwbgcQ3izDJr86iw8bmEbTUsp9Z8FHSbBuOmDAGJFtqkIk7mpM0sYmsL4h4hO 291xNBrBVNpGP+DTKqttVCL1OmLNIG+6KYnX3ZHu01yiPqFbQfXf5WRDLenVOavS ot+3i9DAgBkcRcAtjOj4LaR0VknFBbVPFd5uRHg5h6h+u/N5GJG79G+dwfCMNYxd AfvDbbnvRG15RjF+Cv6pgsH/76tuIMRQyV+dTZsXjAzlAcmgQWpzU/qlULRuJQ/7 TBj0/VLZjmmx6BEP3ojY+x1J96relc8geMJgEtslQIxq/H5COEBkEveegeGTLg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDXzCCAkegAwIBAgILBAAAAAABIVhTCKIwDQYJKoZIhvcNAQELBQAwTDEgMB4G A1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjMxEzARBgNVBAoTCkdsb2JhbFNp Z24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMDkwMzE4MTAwMDAwWhcNMjkwMzE4 MTAwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMzETMBEG A1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjCCASIwDQYJKoZI hvcNAQEBBQADggEPADCCAQoCggEBAMwldpB5BngiFvXAg7aEyiie/QV2EcWtiHL8 RgJDx7KKnQRfJMsuS+FggkbhUqsMgUdwbN1k0ev1LKMPgj0MK66X17YUhhB5uzsT gHeMCOFJ0mpiLx9e+pZo34knlTifBtc+ycsmWQ1z3rDI6SYOgxXG71uL0gRgykmm KPZpO/bLyCiR5Z2KYVc3rHQU3HTgOu5yLy6c+9C7v/U9AOEGM+iCK65TpjoWc4zd QQ4gOsC0p6Hpsk+QLjJg6VfLuQSSaGjlOCZgdbKfd/+RFO+uIEn8rUAVSNECMWEZ XriX7613t2Saer9fwRPvm2L7DWzgVGkWqQPabumDk3F2xmmFghcCAwEAAaNCMEAw DgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFI/wS3+o LkUkrk1Q+mOai97i3Ru8MA0GCSqGSIb3DQEBCwUAA4IBAQBLQNvAUKr+yAzv95ZU RUm7lgAJQayzE4aGKAczymvmdLm6AC2upArT9fHxD4q/c2dKg8dEe3jgr25sbwMp jjM5RcOO5LlXbKr8EpbsU8Yt5CRsuZRj+9xTaGdWPoO4zzUhw8lo/s7awlOqzJCK 6fBdRoyV3XpYKBovHd7NADdBj+1EbddTKJd+82cEHhXXipa0095MJ6RMG3NzdvQX mcIfeg7jLQitChws/zyrVQ4PkX4268NXSb7hLi18YIvDQVETI53O9zJrlAGomecs Mx86OyXShkDOOyyGeMlhLxS67ttVb9+E7gUJTb0o2HLO02JQZR7rkpeDMdmztcpH WD9f -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEADCCAuigAwIBAgIBADANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEh MB8GA1UEChMYVGhlIEdvIERhZGR5IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBE YWRkeSBDbGFzcyAyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA0MDYyOTE3 MDYyMFoXDTM0MDYyOTE3MDYyMFowYzELMAkGA1UEBhMCVVMxITAfBgNVBAoTGFRo ZSBHbyBEYWRkeSBHcm91cCwgSW5jLjExMC8GA1UECxMoR28gRGFkZHkgQ2xhc3Mg MiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASAwDQYJKoZIhvcNAQEBBQADggEN ADCCAQgCggEBAN6d1+pXGEmhW+vXX0iG6r7d/+TvZxz0ZWizV3GgXne77ZtJ6XCA PVYYYwhv2vLM0D9/AlQiVBDYsoHUwHU9S3/Hd8M+eKsaA7Ugay9qK7HFiH7Eux6w wdhFJ2+qN1j3hybX2C32qRe3H3I2TqYXP2WYktsqbl2i/ojgC95/5Y0V4evLOtXi EqITLdiOr18SPaAIBQi2XKVlOARFmR6jYGB0xUGlcmIbYsUfb18aQr4CUWWoriMY avx4A6lNf4DD+qta/KFApMoZFv6yyO9ecw3ud72a9nmYvLEHZ6IVDd2gWMZEewo+ YihfukEHU1jPEX44dMX4/7VpkI+EdOqXG68CAQOjgcAwgb0wHQYDVR0OBBYEFNLE sNKR1EwRcbNhyz2h/t2oatTjMIGNBgNVHSMEgYUwgYKAFNLEsNKR1EwRcbNhyz2h /t2oatTjoWekZTBjMQswCQYDVQQGEwJVUzEhMB8GA1UEChMYVGhlIEdvIERhZGR5 IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBEYWRkeSBDbGFzcyAyIENlcnRpZmlj YXRpb24gQXV0aG9yaXR5ggEAMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQAD ggEBADJL87LKPpH8EsahB4yOd6AzBhRckB4Y9wimPQoZ+YeAEW5p5JYXMP80kWNy OO7MHAGjHZQopDH2esRU1/blMVgDoszOYtuURXO1v0XJJLXVggKtI3lpjbi2Tc7P TMozI+gciKqdi0FuFskg5YmezTvacPd+mSYgFFQlq25zheabIZ0KbIIOqPjCDPoQ HmyW74cNxA9hi63ugyuV+I6ShHI56yDqg+2DzZduCLzrTia2cyvk0/ZM/iZx4mER dEr/VxqHD3VILs9RaRegAhJhldXRQLIQTO7ErBBDpqWeCtWVYpoNz4iCxTIM5Cuf ReYNnyicsbkqWletNw+vHX/bvZ8= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDxTCCAq2gAwIBAgIBADANBgkqhkiG9w0BAQsFADCBgzELMAkGA1UEBhMCVVMx EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxGjAYBgNVBAoT EUdvRGFkZHkuY29tLCBJbmMuMTEwLwYDVQQDEyhHbyBEYWRkeSBSb290IENlcnRp ZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5MDkwMTAwMDAwMFoXDTM3MTIzMTIz NTk1OVowgYMxCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6b25hMRMwEQYDVQQH EwpTY290dHNkYWxlMRowGAYDVQQKExFHb0RhZGR5LmNvbSwgSW5jLjExMC8GA1UE AxMoR28gRGFkZHkgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIw DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL9xYgjx+lk09xvJGKP3gElY6SKD E6bFIEMBO4Tx5oVJnyfq9oQbTqC023CYxzIBsQU+B07u9PpPL1kwIuerGVZr4oAH /PMWdYA5UXvl+TW2dE6pjYIT5LY/qQOD+qK+ihVqf94Lw7YZFAXK6sOoBJQ7Rnwy DfMAZiLIjWltNowRGLfTshxgtDj6AozO091GB94KPutdfMh8+7ArU6SSYmlRJQVh GkSBjCypQ5Yj36w6gZoOKcUcqeldHraenjAKOc7xiID7S13MMuyFYkMlNAJWJwGR tDtwKj9useiciAF9n9T521NtYJ2/LOdYq7hfRvzOxBsDPAnrSTFcaUaz4EcCAwEA AaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYE FDqahQcQZyi27/a9BUFuIMGU2g/eMA0GCSqGSIb3DQEBCwUAA4IBAQCZ21151fmX WWcDYfF+OwYxdS2hII5PZYe096acvNjpL9DbWu7PdIxztDhC2gV7+AJ1uP2lsdeu 9tfeE8tTEH6KRtGX+rcuKxGrkLAngPnon1rpN5+r5N9ss4UXnT3ZJE95kTXWXwTr gIOrmgIttRD02JDHBHNA7XIloKmf7J6raBKZV8aPEjoJpL1E/QYVN8Gb5DKj7Tjo 2GTzLH4U/ALqn83/B2gX2yKQOC16jdFU8WnjXzPKej17CuPKf1855eJ1usV2GDPO LPAvTK33sefOT6jEm0pUBsV/fdUID+Ic/n4XuKxe9tQWskMJDE32p2u0mYRlynqI 4uJEvlz36hz1 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICWjCCAcMCAgGlMA0GCSqGSIb3DQEBBAUAMHUxCzAJBgNVBAYTAlVTMRgwFgYD VQQKEw9HVEUgQ29ycG9yYXRpb24xJzAlBgNVBAsTHkdURSBDeWJlclRydXN0IFNv bHV0aW9ucywgSW5jLjEjMCEGA1UEAxMaR1RFIEN5YmVyVHJ1c3QgR2xvYmFsIFJv b3QwHhcNOTgwODEzMDAyOTAwWhcNMTgwODEzMjM1OTAwWjB1MQswCQYDVQQGEwJV UzEYMBYGA1UEChMPR1RFIENvcnBvcmF0aW9uMScwJQYDVQQLEx5HVEUgQ3liZXJU cnVzdCBTb2x1dGlvbnMsIEluYy4xIzAhBgNVBAMTGkdURSBDeWJlclRydXN0IEds b2JhbCBSb290MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCVD6C28FCc6HrH iM3dFw4usJTQGz0O9pTAipTHBsiQl8i4ZBp6fmw8U+E3KHNgf7KXUwefU/ltWJTS r41tiGeA5u2ylc9yMcqlHHK6XALnZELn+aks1joNrI1CqiQBOeacPwGFVw1Yh0X4 04Wqk2kmhXBIgD8SFcd5tB8FLztimQIDAQABMA0GCSqGSIb3DQEBBAUAA4GBAG3r GwnpXtlR22ciYaQqPEh346B8pt5zohQDhT37qw4wxYMWM4ETCJ57NE7fQMh017l9 3PR2VX2bY1QY6fDq81yx2YtCHrnAlU66+tXifPVoYb+O7AWXX1uw16OFNMQkpw0P lZPvy5TYnh+dXIVtx6quTx8itc2VrbqnzPmrC3p/ -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEMTCCAxmgAwIBAgIBADANBgkqhkiG9w0BAQUFADCBlTELMAkGA1UEBhMCR1Ix RDBCBgNVBAoTO0hlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1 dGlvbnMgQ2VydC4gQXV0aG9yaXR5MUAwPgYDVQQDEzdIZWxsZW5pYyBBY2FkZW1p YyBhbmQgUmVzZWFyY2ggSW5zdGl0dXRpb25zIFJvb3RDQSAyMDExMB4XDTExMTIw NjEzNDk1MloXDTMxMTIwMTEzNDk1MlowgZUxCzAJBgNVBAYTAkdSMUQwQgYDVQQK EztIZWxsZW5pYyBBY2FkZW1pYyBhbmQgUmVzZWFyY2ggSW5zdGl0dXRpb25zIENl cnQuIEF1dGhvcml0eTFAMD4GA1UEAxM3SGVsbGVuaWMgQWNhZGVtaWMgYW5kIFJl c2VhcmNoIEluc3RpdHV0aW9ucyBSb290Q0EgMjAxMTCCASIwDQYJKoZIhvcNAQEB BQADggEPADCCAQoCggEBAKlTAOMupvaO+mDYLZU++CwqVE7NuYRhlFhPjz2L5EPz dYmNUeTDN9KKiE15HrcS3UN4SoqS5tdI1Q+kOilENbgH9mgdVc04UfCMJDGFr4PJ fel3r+0ae50X+bOdOFAPplp5kYCvN66m0zH7tSYJnTxa71HFK9+WXesyHgLacEns bgzImjeN9/E2YEsmLIKe0HjzDQ9jpFEw4fkrJxIH2Oq9GGKYsFk3fb7u8yBRQlqD 75O6aRXxYp2fmTmCobd0LovUxQt7L/DICto9eQqakxylKHJzkUOap9FNhYS5qXSP FEDH3N6sQWRstBmbAmNtJGSPRLIl6s5ddAxjMlyNh+UCAwEAAaOBiTCBhjAPBgNV HRMBAf8EBTADAQH/MAsGA1UdDwQEAwIBBjAdBgNVHQ4EFgQUppFC/RNhSiOeCKQp 5dgTBCPuQSUwRwYDVR0eBEAwPqA8MAWCAy5ncjAFggMuZXUwBoIELmVkdTAGggQu b3JnMAWBAy5ncjAFgQMuZXUwBoEELmVkdTAGgQQub3JnMA0GCSqGSIb3DQEBBQUA A4IBAQAf73lB4XtuP7KMhjdCSk4cNx6NZrokgclPEg8hwAOXhiVtXdMiKahsog2p 6z0GW5k6x8zDmjR/qw7IThzh+uTczQ2+vyT+bOdrwg3IBp5OjWEopmr95fZi6hg8 TqBTnbI6nOulnJEWtk2C4AwFSKls9cz4y51JtPACpf1wA+2KIaWuE4ZJwzNzvoc7 dIsXRSZMFpGD/md9zU1jZ/rzAxKWeAaNsWftjj++n08C9bMJL/NMh98qy5V8Acys Nnq/onN694/BtZqhFLKPM58N7yLcZnuEvUUXBj08yrl3NI/K6s8/MT7jiOOASSXI l7WdmplNsDz4SgCbZN2fOUvRJ9e4 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDMDCCAhigAwIBAgICA+gwDQYJKoZIhvcNAQEFBQAwRzELMAkGA1UEBhMCSEsx FjAUBgNVBAoTDUhvbmdrb25nIFBvc3QxIDAeBgNVBAMTF0hvbmdrb25nIFBvc3Qg Um9vdCBDQSAxMB4XDTAzMDUxNTA1MTMxNFoXDTIzMDUxNTA0NTIyOVowRzELMAkG A1UEBhMCSEsxFjAUBgNVBAoTDUhvbmdrb25nIFBvc3QxIDAeBgNVBAMTF0hvbmdr b25nIFBvc3QgUm9vdCBDQSAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC AQEArP84tulmAknjorThkPlAj3n54r15/gK97iSSHSL22oVyaf7XPwnU3ZG1ApzQ jVrhVcNQhrkpJsLj2aDxaQMoIIBFIi1WpztUlVYiWR8o3x8gPW2iNr4joLFutbEn PzlTCeqrauh0ssJlXI6/fMN4hM2eFvz1Lk8gKgifd/PFHsSaUmYeSF7jEAaPIpjh ZY4bXSNmO7ilMlHIhqqhqZ5/dpTCpmy3QfDVyAY45tQM4vM7TG1QjMSDJ8EThFk9 nnV0ttgCXjqQesBCNnLsak3c78QA3xMYV18meMjWCnl3v/evt3a5pQuEF10Q6m/h q5URX208o1xNg1vysxmKgIsLhwIDAQABoyYwJDASBgNVHRMBAf8ECDAGAQH/AgED MA4GA1UdDwEB/wQEAwIBxjANBgkqhkiG9w0BAQUFAAOCAQEADkbVPK7ih9legYsC mEEIjEy82tvuJxuC52pF7BaLT4Wg87JwvVqWuspube5Gi27nKi6Wsxkz67SfqLI3 7piol7Yutmcn1KZJ/RyTZXaeQi/cImyaT/JaFTmxcdcrUehtHJjA2Sr0oYJ71clB oiMBdDhViw+5LmeiIAQ32pwL0xch4I+XeTRvhEgCIDMb5jREn5Fw9IBehEPCKdJs EhTkYY2sEJCehFC78JZvRZ+K88psT/oROhUVRsPNH4NbLUES7VBnQRM9IauUiqpO fMGx+6fWtScvl6tu4B3i0RwsH0Ti/L6RoZz71ilTc4afU9hDDl3WY4JxHYB0yvbi AmvZWg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIHTzCCBTegAwIBAgIJAKPaQn6ksa7aMA0GCSqGSIb3DQEBBQUAMIGuMQswCQYD VQQGEwJFVTFDMEEGA1UEBxM6TWFkcmlkIChzZWUgY3VycmVudCBhZGRyZXNzIGF0 IHd3dy5jYW1lcmZpcm1hLmNvbS9hZGRyZXNzKTESMBAGA1UEBRMJQTgyNzQzMjg3 MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMuQS4xKTAnBgNVBAMTIENoYW1iZXJz IG9mIENvbW1lcmNlIFJvb3QgLSAyMDA4MB4XDTA4MDgwMTEyMjk1MFoXDTM4MDcz MTEyMjk1MFowga4xCzAJBgNVBAYTAkVVMUMwQQYDVQQHEzpNYWRyaWQgKHNlZSBj dXJyZW50IGFkZHJlc3MgYXQgd3d3LmNhbWVyZmlybWEuY29tL2FkZHJlc3MpMRIw EAYDVQQFEwlBODI3NDMyODcxGzAZBgNVBAoTEkFDIENhbWVyZmlybWEgUy5BLjEp MCcGA1UEAxMgQ2hhbWJlcnMgb2YgQ29tbWVyY2UgUm9vdCAtIDIwMDgwggIiMA0G CSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCvAMtwNyuAWko6bHiUfaN/Gh/2NdW9 28sNRHI+JrKQUrpjOyhYb6WzbZSm891kDFX29ufyIiKAXuFixrYp4YFs8r/lfTJq VKAyGVn+H4vXPWCGhSRv4xGzdz4gljUha7MI2XAuZPeEklPWDrCQiorjh40G072Q DuKZoRuGDtqaCrsLYVAGUvGef3bsyw/QHg3PmTA9HMRFEFis1tPo1+XqxQEHd9ZR 5gN/ikilTWh1uem8nk4ZcfUyS5xtYBkL+8ydddy/Js2Pk3g5eXNeJQ7KXOt3EgfL ZEFHcpOrUMPrCXZkNNI5t3YRCQ12RcSprj1qr7V9ZS+UWBDsXHyvfuK2GNnQm05a Sd+pZgvMPMZ4fKecHePOjlO+Bd5gD2vlGts/4+EhySnB8esHnFIbAURRPHsl18Tl UlRdJQfKFiC4reRB7noI/plvg6aRArBsNlVq5331lubKgdaX8ZSD6e2wsWsSaR6s +12pxZjptFtYer49okQ6Y1nUCyXeG0+95QGezdIp1Z8XGQpvvwyQ0wlf2eOKNcx5 Wk0ZN5K3xMGtr/R5JJqyAQuxr1yW84Ay+1w9mPGgP0revq+ULtlVmhduYJ1jbLhj ya6BXBg14JC7vjxPNyK5fuvPnnchpj04gftI2jE9K+OJ9dC1vX7gUMQSibMjmhAx hduub+84Mxh2EQIDAQABo4IBbDCCAWgwEgYDVR0TAQH/BAgwBgEB/wIBDDAdBgNV HQ4EFgQU+SSsD7K1+HnA+mCIG8TZTQKeFxkwgeMGA1UdIwSB2zCB2IAU+SSsD7K1 +HnA+mCIG8TZTQKeFxmhgbSkgbEwga4xCzAJBgNVBAYTAkVVMUMwQQYDVQQHEzpN YWRyaWQgKHNlZSBjdXJyZW50IGFkZHJlc3MgYXQgd3d3LmNhbWVyZmlybWEuY29t L2FkZHJlc3MpMRIwEAYDVQQFEwlBODI3NDMyODcxGzAZBgNVBAoTEkFDIENhbWVy ZmlybWEgUy5BLjEpMCcGA1UEAxMgQ2hhbWJlcnMgb2YgQ29tbWVyY2UgUm9vdCAt IDIwMDiCCQCj2kJ+pLGu2jAOBgNVHQ8BAf8EBAMCAQYwPQYDVR0gBDYwNDAyBgRV HSAAMCowKAYIKwYBBQUHAgEWHGh0dHA6Ly9wb2xpY3kuY2FtZXJmaXJtYS5jb20w DQYJKoZIhvcNAQEFBQADggIBAJASryI1wqM58C7e6bXpeHxIvj99RZJe6dqxGfwW PJ+0W2aeaufDuV2I6A+tzyMP3iU6XsxPpcG1Lawk0lgH3qLPaYRgM+gQDROpI9CF 5Y57pp49chNyM/WqfcZjHwj0/gF/JM8rLFQJ3uIrbZLGOU8W6jx+ekbURWpGqOt1 glanq6B8aBMz9p0w8G8nOSQjKpD9kCk18pPfNKXG9/jvjA9iSnyu0/VU+I22mlaH FoI6M6taIgj3grrqLuBHmrS1RaMFO9ncLkVAO+rcf+g769HsJtg1pDDFOqxXnrN2 pSB7+R5KBWIBpih1YJeSDW4+TTdDDZIVnBgizVGZoCkaPF+KMjNbMMeJL0eYD6MD xvbxrN8y8NmBGuScvfaAFPDRLLmF9dijscilIeUcE5fuDr3fKanvNFNb0+RqE4QG tjICxFKuItLcsiFCGtpA8CnJ7AoMXOLQusxI0zcKzBIKinmwPQN/aUv0NCB9szTq jktk9T79syNnFQ0EuPAtwQlRPLJsFfClI9eDdOTlLsn+mCdCxqvGnrDQWzilm1De fhiYtUU79nm06PcaewaD+9CL2rvHvRirCG88gGtAPxkZumWK5r7VXNM21+9AUiRg OGcEMeyP84LG3rlV8zsxkVrctQgVrXYlCg17LofiDKYGvCYQbTed7N14jHyAxfDZ d0jQ -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID9zCCAt+gAwIBAgIESJ8AATANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMC Q04xMjAwBgNVBAoMKUNoaW5hIEludGVybmV0IE5ldHdvcmsgSW5mb3JtYXRpb24g Q2VudGVyMUcwRQYDVQQDDD5DaGluYSBJbnRlcm5ldCBOZXR3b3JrIEluZm9ybWF0 aW9uIENlbnRlciBFViBDZXJ0aWZpY2F0ZXMgUm9vdDAeFw0xMDA4MzEwNzExMjVa Fw0zMDA4MzEwNzExMjVaMIGKMQswCQYDVQQGEwJDTjEyMDAGA1UECgwpQ2hpbmEg SW50ZXJuZXQgTmV0d29yayBJbmZvcm1hdGlvbiBDZW50ZXIxRzBFBgNVBAMMPkNo aW5hIEludGVybmV0IE5ldHdvcmsgSW5mb3JtYXRpb24gQ2VudGVyIEVWIENlcnRp ZmljYXRlcyBSb290MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAm35z 7r07eKpkQ0H1UN+U8i6yjUqORlTSIRLIOTJCBumD1Z9S7eVnAztUwYyZmczpwA// DdmEEbK40ctb3B75aDFk4Zv6dOtouSCV98YPjUesWgbdYavi7NifFy2cyjw1l1Vx zUOFsUcW9SxTgHbP0wBkvUCZ3czY28Sf1hNfQYOL+Q2HklY0bBoQCxfVWhyXWIQ8 hBouXJE0bhlffxdpxWXvayHG1VA6v2G5BY3vbzQ6sm8UY78WO5upKv23KzhmBsUs 4qpnHkWnjQRmQvaPK++IIGmPMowUc9orhpFjIpryp9vOiYurXccUwVswah+xt54u gQEC7c+WXmPbqOY4twIDAQABo2MwYTAfBgNVHSMEGDAWgBR8cks5x8DbYqVPm6oY NJKiyoOCWTAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4E FgQUfHJLOcfA22KlT5uqGDSSosqDglkwDQYJKoZIhvcNAQEFBQADggEBACrDx0M3 j92tpLIM7twUbY8opJhJywyA6vPtI2Z1fcXTIWd50XPFtQO3WKwMVC/GVhMPMdoG 52U7HW8228gd+f2ABsqjPWYWqJ1MFn3AlUa1UeTiH9fqBk1jjZaM7+czV0I664zB echNdn3e9rG3geCg+aF4RhcaVpjwTj2rHO3sOdwHSPdj/gauwqRcalsyiMXHM4Ws ZkJHwlgkmeHlPuV1LI5D1l08eB6olYIpUNHRFrrvwb562bTYzB5MRuF3sTGrvSrI zo9uoV1/A3U05K2JRVRevq4opbs/eHnrc7MKDf2+yfdWrPa37S+bISnHOLaVxATy wy39FCqQmbkHzJ8= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEAjCCAuqgAwIBAgIFORFFEJQwDQYJKoZIhvcNAQEFBQAwgYUxCzAJBgNVBAYT AkZSMQ8wDQYDVQQIEwZGcmFuY2UxDjAMBgNVBAcTBVBhcmlzMRAwDgYDVQQKEwdQ TS9TR0ROMQ4wDAYDVQQLEwVEQ1NTSTEOMAwGA1UEAxMFSUdDL0ExIzAhBgkqhkiG 9w0BCQEWFGlnY2FAc2dkbi5wbS5nb3V2LmZyMB4XDTAyMTIxMzE0MjkyM1oXDTIw MTAxNzE0MjkyMlowgYUxCzAJBgNVBAYTAkZSMQ8wDQYDVQQIEwZGcmFuY2UxDjAM BgNVBAcTBVBhcmlzMRAwDgYDVQQKEwdQTS9TR0ROMQ4wDAYDVQQLEwVEQ1NTSTEO MAwGA1UEAxMFSUdDL0ExIzAhBgkqhkiG9w0BCQEWFGlnY2FAc2dkbi5wbS5nb3V2 LmZyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsh/R0GLFMzvABIaI s9z4iPf930Pfeo2aSVz2TqrMHLmh6yeJ8kbpO0px1R2OLc/mratjUMdUC24SyZA2 xtgv2pGqaMVy/hcKshd+ebUyiHDKcMCWSo7kVc0dJ5S/znIq7Fz5cyD+vfcuiWe4 u0dzEvfRNWk68gq5rv9GQkaiv6GFGvm/5P9JhfejcIYyHF2fYPepraX/z9E0+X1b F8bc1g4oa8Ld8fUzaJ1O/Id8NhLWo4DoQw1VYZTqZDdH6nfK0LJYBcNdfrGoRpAx Vs5wKpayMLh35nnAvSk7/ZR3TL0gzUEl4C7HG7vupARB0l2tEmqKm0f7yd1GQOGd PDPQtQIDAQABo3cwdTAPBgNVHRMBAf8EBTADAQH/MAsGA1UdDwQEAwIBRjAVBgNV HSAEDjAMMAoGCCqBegF5AQEBMB0GA1UdDgQWBBSjBS8YYFDCiQrdKyFP/45OqDAx NjAfBgNVHSMEGDAWgBSjBS8YYFDCiQrdKyFP/45OqDAxNjANBgkqhkiG9w0BAQUF AAOCAQEABdwm2Pp3FURo/C9mOnTgXeQp/wYHE4RKq89toB9RlPhJy3Q2FLwV3duJ L92PoF189RLrn544pEfMs5bZvpwlqwN+Mw+VgQ39FuCIvjfwbF3QMZsyK10XZZOY YLxuj7GoPB7ZHPOpJkL5ZB3C55L29B5aqhlSXa/oovdgoPaN8In1buAKBQGVyYsg Crpa/JosPL3Dt8ldeCUFP1YUmwza+zpI/pdpXsoQhvdOlgQITeywvl3cO45Pwf2a NjSaTFR+FwNIlQgRHAdvhQh+XU3Endv7rs6y0bO4g2wdsrN58dhwmX7wEwLOXt1R 0982gaEbeC9xs/FZTEYYKKuF0mBWWg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF8TCCA9mgAwIBAgIQALC3WhZIX7/hy/WL1xnmfTANBgkqhkiG9w0BAQsFADA4 MQswCQYDVQQGEwJFUzEUMBIGA1UECgwLSVpFTlBFIFMuQS4xEzARBgNVBAMMCkl6 ZW5wZS5jb20wHhcNMDcxMjEzMTMwODI4WhcNMzcxMjEzMDgyNzI1WjA4MQswCQYD VQQGEwJFUzEUMBIGA1UECgwLSVpFTlBFIFMuQS4xEzARBgNVBAMMCkl6ZW5wZS5j b20wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDJ03rKDx6sp4boFmVq scIbRTJxldn+EFvMr+eleQGPicPK8lVx93e+d5TzcqQsRNiekpsUOqHnJJAKClaO xdgmlOHZSOEtPtoKct2jmRXagaKH9HtuJneJWK3W6wyyQXpzbm3benhB6QiIEn6H LmYRY2xU+zydcsC8Lv/Ct90NduM61/e0aL6i9eOBbsFGb12N4E3GVFWJGjMxCrFX uaOKmMPsOzTFlUFpfnXCPCDFYbpRR6AgkJOhkEvzTnyFRVSa0QUmQbC1TR0zvsQD yCV8wXDbO/QJLVQnSKwv4cSsPsjLkkxTOTcj7NMB+eAJRE1NZMDhDVqHIrytG6P+ JrUV86f8hBnp7KGItERphIPzidF0BqnMC9bC3ieFUCbKF7jJeodWLBoBHmy+E60Q rLUk9TiRodZL2vG70t5HtfG8gfZZa88ZU+mNFctKy6lvROUbQc/hhqfK0GqfvEyN BjNaooXlkDWgYlwWTvDjovoDGrQscbNYLN57C9saD+veIR8GdwYDsMnvmfzAuU8L hij+0rnq49qlw0dpEuDb8PYZi+17cNcC1u2HGCgsBCRMd+RIihrGO5rUD8r6ddIB QFqNeb+Lz0vPqhbBleStTIo+F5HUsWLlguWABKQDfo2/2n+iD5dPDNMN+9fR5XJ+ HMh3/1uaD7euBUbl8agW7EekFwIDAQABo4H2MIHzMIGwBgNVHREEgagwgaWBD2lu Zm9AaXplbnBlLmNvbaSBkTCBjjFHMEUGA1UECgw+SVpFTlBFIFMuQS4gLSBDSUYg QTAxMzM3MjYwLVJNZXJjLlZpdG9yaWEtR2FzdGVpeiBUMTA1NSBGNjIgUzgxQzBB BgNVBAkMOkF2ZGEgZGVsIE1lZGl0ZXJyYW5lbyBFdG9yYmlkZWEgMTQgLSAwMTAx MCBWaXRvcmlhLUdhc3RlaXowDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC AQYwHQYDVR0OBBYEFB0cZQ6o8iV7tJHP5LGx5r1VdGwFMA0GCSqGSIb3DQEBCwUA A4ICAQB4pgwWSp9MiDrAyw6lFn2fuUhfGI8NYjb2zRlrrKvV9pF9rnHzP7MOeIWb laQnIUdCSnxIOvVFfLMMjlF4rJUT3sb9fbgakEyrkgPH7UIBzg/YsfqikuFgba56 awmqxinuaElnMIAkejEWOVt+8Rwu3WwJrfIxwYJOubv5vr8qhT/AQKM6WfxZSzwo JNu0FXWuDYi6LnPAvViH5ULy617uHjAimcs30cQhbIHsvm0m5hzkQiCeR7Csg1lw LDXWrzY0tM07+DKo7+N4ifuNRSzanLh+QBxh5z6ikixL8s36mLYp//Pye6kfLqCT VyvehQP5aTfLnnhqBbTFMXiJ7HqnheG5ezzevh55hM6fcA5ZwjUukCox2eRFekGk LhObNA5me0mrZJfQRsN5nXJQY6aYWwa9SG3YOYNw6DXwBdGqvOPbyALqfP2C2sJb UjWumDqtujWTI6cfSN01RpiyEGjkpTHCClguGYEQyVB1/OpaFs4R1+7vUIgtYf8/ QnMFlEPVjjxOAToZpR9GTnfQXeWBIiGH/pR9hNiTrdZoQ0iy2+tzJOeRf1SktoA+ naM8THLCV8Sg1Mw4J87VBp6iSNnpn86CcDaTmjvfliHjWbcM2pE38P1ZWrOZyGls QyYBNWNgVYkDOnXYukrZVP/u3oDYLdE41V4tC5h9Pmzb/CaIxw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIE5jCCA86gAwIBAgIEO45L/DANBgkqhkiG9w0BAQUFADBdMRgwFgYJKoZIhvcN AQkBFglwa2lAc2suZWUxCzAJBgNVBAYTAkVFMSIwIAYDVQQKExlBUyBTZXJ0aWZp dHNlZXJpbWlza2Vza3VzMRAwDgYDVQQDEwdKdXVyLVNLMB4XDTAxMDgzMDE0MjMw MVoXDTE2MDgyNjE0MjMwMVowXTEYMBYGCSqGSIb3DQEJARYJcGtpQHNrLmVlMQsw CQYDVQQGEwJFRTEiMCAGA1UEChMZQVMgU2VydGlmaXRzZWVyaW1pc2tlc2t1czEQ MA4GA1UEAxMHSnV1ci1TSzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB AIFxNj4zB9bjMI0TfncyRsvPGbJgMUaXhvSYRqTCZUXP00B841oiqBB4M8yIsdOB SvZiF3tfTQou0M+LI+5PAk676w7KvRhj6IAcjeEcjT3g/1tf6mTll+g/mX8MCgkz ABpTpyHhOEvWgxutr2TC+Rx6jGZITWYfGAriPrsfB2WThbkasLnE+w0R9vXW+RvH LCu3GFH+4Hv2qEivbDtPL+/40UceJlfwUR0zlv/vWT3aTdEVNMfqPxZIe5EcgEMP PbgFPtGzlc3Yyg/CQ2fbt5PgIoIuvvVoKIO5wTtpeyDaTpxt4brNj3pssAki14sL 2xzVWiZbDcDq5WDQn/413z8CAwEAAaOCAawwggGoMA8GA1UdEwEB/wQFMAMBAf8w ggEWBgNVHSAEggENMIIBCTCCAQUGCisGAQQBzh8BAQEwgfYwgdAGCCsGAQUFBwIC MIHDHoHAAFMAZQBlACAAcwBlAHIAdABpAGYAaQBrAGEAYQB0ACAAbwBuACAAdgDk AGwAagBhAHMAdABhAHQAdQBkACAAQQBTAC0AaQBzACAAUwBlAHIAdABpAGYAaQB0 AHMAZQBlAHIAaQBtAGkAcwBrAGUAcwBrAHUAcwAgAGEAbABhAG0ALQBTAEsAIABz AGUAcgB0AGkAZgBpAGsAYQBhAHQAaQBkAGUAIABrAGkAbgBuAGkAdABhAG0AaQBz AGUAawBzMCEGCCsGAQUFBwIBFhVodHRwOi8vd3d3LnNrLmVlL2Nwcy8wKwYDVR0f BCQwIjAgoB6gHIYaaHR0cDovL3d3dy5zay5lZS9qdXVyL2NybC8wHQYDVR0OBBYE FASqekej5ImvGs8KQKcYP2/v6X2+MB8GA1UdIwQYMBaAFASqekej5ImvGs8KQKcY P2/v6X2+MA4GA1UdDwEB/wQEAwIB5jANBgkqhkiG9w0BAQUFAAOCAQEAe8EYlFOi CfP+JmeaUOTDBS8rNXiRTHyoERF5TElZrMj3hWVcRrs7EKACr81Ptcw2Kuxd/u+g kcm2k298gFTsxwhwDY77guwqYHhpNjbRxZyLabVAyJRld/JXIWY7zoVAtjNjGr95 HvxcHdMdkxuLDF2FvZkwMhgJkVLpfKG6/2SSmuz+Ne6ML678IIbsSt4beDI3poHS na9aEhbKmVv8b20OxaAehsmR0FyYgl9jDIpaq9iVpszLita/ZEuOyoqysOkhMp6q qIWYNIE5ITuoOlIyPfZrN4YGWhWY3PARZv40ILcD9EEQfTmEeZZyY7aWAuVrua0Z TbvGRNs2yyqcjg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIHqDCCBpCgAwIBAgIRAMy4579OKRr9otxmpRwsDxEwDQYJKoZIhvcNAQEFBQAw cjELMAkGA1UEBhMCSFUxETAPBgNVBAcTCEJ1ZGFwZXN0MRYwFAYDVQQKEw1NaWNy b3NlYyBMdGQuMRQwEgYDVQQLEwtlLVN6aWdubyBDQTEiMCAGA1UEAxMZTWljcm9z ZWMgZS1Temlnbm8gUm9vdCBDQTAeFw0wNTA0MDYxMjI4NDRaFw0xNzA0MDYxMjI4 NDRaMHIxCzAJBgNVBAYTAkhVMREwDwYDVQQHEwhCdWRhcGVzdDEWMBQGA1UEChMN TWljcm9zZWMgTHRkLjEUMBIGA1UECxMLZS1Temlnbm8gQ0ExIjAgBgNVBAMTGU1p Y3Jvc2VjIGUtU3ppZ25vIFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw ggEKAoIBAQDtyADVgXvNOABHzNuEwSFpLHSQDCHZU4ftPkNEU6+r+ICbPHiN1I2u uO/TEdyB5s87lozWbxXGd36hL+BfkrYn13aaHUM86tnsL+4582pnS4uCzyL4ZVX+ LMsvfUh6PXX5qqAnu3jCBspRwn5mS6/NoqdNAoI/gqyFxuEPkEeZlApxcpMqyabA vjxWTHOSJ/FrtfX9/DAFYJLG65Z+AZHCabEeHXtTRbjcQR/Ji3HWVBTji1R4P770 Yjtb9aPs1ZJ04nQw7wHb4dSrmZsqa/i9phyGI0Jf7Enemotb9HI6QMVJPqW+jqpx 62z69Rrkav17fVVA71hu5tnVvCSrwe+3AgMBAAGjggQ3MIIEMzBnBggrBgEFBQcB AQRbMFkwKAYIKwYBBQUHMAGGHGh0dHBzOi8vcmNhLmUtc3ppZ25vLmh1L29jc3Aw LQYIKwYBBQUHMAKGIWh0dHA6Ly93d3cuZS1zemlnbm8uaHUvUm9vdENBLmNydDAP BgNVHRMBAf8EBTADAQH/MIIBcwYDVR0gBIIBajCCAWYwggFiBgwrBgEEAYGoGAIB AQEwggFQMCgGCCsGAQUFBwIBFhxodHRwOi8vd3d3LmUtc3ppZ25vLmh1L1NaU1ov MIIBIgYIKwYBBQUHAgIwggEUHoIBEABBACAAdABhAG4A+gBzAO0AdAB2AOEAbgB5 ACAA6QByAHQAZQBsAG0AZQB6AOkAcwDpAGgAZQB6ACAA6QBzACAAZQBsAGYAbwBn AGEAZADhAHMA4QBoAG8AegAgAGEAIABTAHoAbwBsAGcA4QBsAHQAYQB0APMAIABT AHoAbwBsAGcA4QBsAHQAYQB0AOEAcwBpACAAUwB6AGEAYgDhAGwAeQB6AGEAdABh ACAAcwB6AGUAcgBpAG4AdAAgAGsAZQBsAGwAIABlAGwAagDhAHIAbgBpADoAIABo AHQAdABwADoALwAvAHcAdwB3AC4AZQAtAHMAegBpAGcAbgBvAC4AaAB1AC8AUwBa AFMAWgAvMIHIBgNVHR8EgcAwgb0wgbqggbeggbSGIWh0dHA6Ly93d3cuZS1zemln bm8uaHUvUm9vdENBLmNybIaBjmxkYXA6Ly9sZGFwLmUtc3ppZ25vLmh1L0NOPU1p Y3Jvc2VjJTIwZS1Temlnbm8lMjBSb290JTIwQ0EsT1U9ZS1Temlnbm8lMjBDQSxP PU1pY3Jvc2VjJTIwTHRkLixMPUJ1ZGFwZXN0LEM9SFU/Y2VydGlmaWNhdGVSZXZv Y2F0aW9uTGlzdDtiaW5hcnkwDgYDVR0PAQH/BAQDAgEGMIGWBgNVHREEgY4wgYuB EGluZm9AZS1zemlnbm8uaHWkdzB1MSMwIQYDVQQDDBpNaWNyb3NlYyBlLVN6aWdu w7MgUm9vdCBDQTEWMBQGA1UECwwNZS1TemlnbsOzIEhTWjEWMBQGA1UEChMNTWlj cm9zZWMgS2Z0LjERMA8GA1UEBxMIQnVkYXBlc3QxCzAJBgNVBAYTAkhVMIGsBgNV HSMEgaQwgaGAFMegSXUWYYTbMUuE0vE3QJDvTtz3oXakdDByMQswCQYDVQQGEwJI VTERMA8GA1UEBxMIQnVkYXBlc3QxFjAUBgNVBAoTDU1pY3Jvc2VjIEx0ZC4xFDAS BgNVBAsTC2UtU3ppZ25vIENBMSIwIAYDVQQDExlNaWNyb3NlYyBlLVN6aWdubyBS b290IENBghEAzLjnv04pGv2i3GalHCwPETAdBgNVHQ4EFgQUx6BJdRZhhNsxS4TS 8TdAkO9O3PcwDQYJKoZIhvcNAQEFBQADggEBANMTnGZjWS7KXHAM/IO8VbH0jgds ZifOwTsgqRy7RlRw7lrMoHfqaEQn6/Ip3Xep1fvj1KcExJW4C+FEaGAHQzAxQmHl 7tnlJNUb3+FKG6qfx1/4ehHqE5MAyopYse7tDk2016g2JnzgOsHVV4Lxdbb9iV/a 86g4nzUGCM4ilb7N1fy+W955a9x6qWVmvrElWl/tftOsRm1M9DKHtCAE4Gx4sHfR hUZLphK3dehKyVZs15KrnfVJONJPU+NVkBHbmJbGSfI+9J8b4PeI3CVimUTYc78/ MPMMNz7UwiiAc7EBt51alhQBS6kRnSlqLtBdgcDPsiBDxwPgN05dCtxZICU= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIECjCCAvKgAwIBAgIJAMJ+QwRORz8ZMA0GCSqGSIb3DQEBCwUAMIGCMQswCQYD VQQGEwJIVTERMA8GA1UEBwwIQnVkYXBlc3QxFjAUBgNVBAoMDU1pY3Jvc2VjIEx0 ZC4xJzAlBgNVBAMMHk1pY3Jvc2VjIGUtU3ppZ25vIFJvb3QgQ0EgMjAwOTEfMB0G CSqGSIb3DQEJARYQaW5mb0BlLXN6aWduby5odTAeFw0wOTA2MTYxMTMwMThaFw0y OTEyMzAxMTMwMThaMIGCMQswCQYDVQQGEwJIVTERMA8GA1UEBwwIQnVkYXBlc3Qx FjAUBgNVBAoMDU1pY3Jvc2VjIEx0ZC4xJzAlBgNVBAMMHk1pY3Jvc2VjIGUtU3pp Z25vIFJvb3QgQ0EgMjAwOTEfMB0GCSqGSIb3DQEJARYQaW5mb0BlLXN6aWduby5o dTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOn4j/NjrdqG2KfgQvvP kd6mJviZpWNwrZuuyjNAfW2WbqEORO7hE52UQlKavXWFdCyoDh2Tthi3jCyoz/tc cbna7P7ofo/kLx2yqHWH2Leh5TvPmUpG0IMZfcChEhyVbUr02MelTTMuhTlAdX4U fIASmFDHQWe4oIBhVKZsTh/gnQ4H6cm6M+f+wFUoLAKApxn1ntxVUwOXewdI/5n7 N4okxFnMUBBjjqqpGrCEGob5X7uxUG6k0QrM1XF+H6cbfPVTbiJfyyvm1HxdrtbC xkzlBQHZ7Vf8wSN5/PrIJIOV87VqUQHQd9bpEqH5GoP7ghu5sJf0dgYzQ0mg/wu1 +rUCAwEAAaOBgDB+MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0G A1UdDgQWBBTLD8bfQkPMPcu1SCOhGnqmKrs0aDAfBgNVHSMEGDAWgBTLD8bfQkPM Pcu1SCOhGnqmKrs0aDAbBgNVHREEFDASgRBpbmZvQGUtc3ppZ25vLmh1MA0GCSqG SIb3DQEBCwUAA4IBAQDJ0Q5eLtXMs3w+y/w9/w0olZMEyL/azXm4Q5DwpL7v8u8h mLzU1F0G9u5C7DBsoKqpyvGvivo/C3NqPuouQH4frlRheesuCDfXI/OMn74dseGk ddug4lQUsbocKaQY9hK6ohQU4zE1yED/t+AFdlfBHFny+L/k7SViXITwfn4fs775 tyERzAMBVnCnEJIeGzSBHq2cGsMEPO0CYdYeBvNfOofyK/FFh+U9rNHHV4S9a67c 2Pm2G2JwCz02yULyMtd6YebS2z3PyKnJm9zbWETXbzivf3jTo60adbocwTZ8jx5t HMN1Rq41Bab2XD0h7lbwyYIiLXpUq3DDfSJlgnCW -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEFTCCAv2gAwIBAgIGSUEs5AAQMA0GCSqGSIb3DQEBCwUAMIGnMQswCQYDVQQG EwJIVTERMA8GA1UEBwwIQnVkYXBlc3QxFTATBgNVBAoMDE5ldExvY2sgS2Z0LjE3 MDUGA1UECwwuVGFuw7pzw610dsOhbnlraWFkw7NrIChDZXJ0aWZpY2F0aW9uIFNl cnZpY2VzKTE1MDMGA1UEAwwsTmV0TG9jayBBcmFueSAoQ2xhc3MgR29sZCkgRsWR dGFuw7pzw610dsOhbnkwHhcNMDgxMjExMTUwODIxWhcNMjgxMjA2MTUwODIxWjCB pzELMAkGA1UEBhMCSFUxETAPBgNVBAcMCEJ1ZGFwZXN0MRUwEwYDVQQKDAxOZXRM b2NrIEtmdC4xNzA1BgNVBAsMLlRhbsO6c8OtdHbDoW55a2lhZMOzayAoQ2VydGlm aWNhdGlvbiBTZXJ2aWNlcykxNTAzBgNVBAMMLE5ldExvY2sgQXJhbnkgKENsYXNz IEdvbGQpIEbFkXRhbsO6c8OtdHbDoW55MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A MIIBCgKCAQEAxCRec75LbRTDofTjl5Bu0jBFHjzuZ9lk4BqKf8owyoPjIMHj9DrT lF8afFttvzBPhCf2nx9JvMaZCpDyD/V/Q4Q3Y1GLeqVw/HpYzY6b7cNGbIRwXdrz AZAj/E4wqX7hJ2Pn7WQ8oLjJM2P+FpD/sLj916jAwJRDC7bVWaaeVtAkH3B5r9s5 VA1lddkVQZQBr17s9o3x/61k/iCa11zr/qYfCGSji3ZVrR47KGAuhyXoqq8fxmRG ILdwfzzeSNuWU7c5d+Qa4scWhHaXWy+7GRWF+GmF9ZmnqfI0p6m2pgP8b4Y9VHx2 BJtr+UBdADTHLpl1neWIA6pN+APSQnbAGwIDAKiLo0UwQzASBgNVHRMBAf8ECDAG AQH/AgEEMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUzPpnk/C2uNClwB7zU/2M U9+D15YwDQYJKoZIhvcNAQELBQADggEBAKt/7hwWqZw8UQCgwBEIBaeZ5m8BiFRh bvG5GK1Krf6BQCOUL/t1fC8oS2IkgYIL9WHxHG64YTjrgfpioTtaYtOUZcTh5m2C +C8lcLIhJsFyUR+MLMOEkMNaj7rP9KdlpeuY0fsFskZ1FSNqb4VjMIDw1Z4fKRzC bLBQWV2QWzuoDTDPv31/zvGdg73JRm4gpvlhUbohL3u+pRVjodSVh/GeufOJ8z2F uLjbvrW5KfnaNwUASZQDhETnv0Mxz3WLJdH0pmT1kvarBes96aULNmLazAZfNou2 XjG4Kvte9nHfRCaexOYNkbQudZWAUWpLMKawYqGT8ZvYzsRjdT9ZR7E= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFSzCCBLSgAwIBAgIBaTANBgkqhkiG9w0BAQQFADCBmTELMAkGA1UEBhMCSFUx ETAPBgNVBAcTCEJ1ZGFwZXN0MScwJQYDVQQKEx5OZXRMb2NrIEhhbG96YXRiaXp0 b25zYWdpIEtmdC4xGjAYBgNVBAsTEVRhbnVzaXR2YW55a2lhZG9rMTIwMAYDVQQD EylOZXRMb2NrIFV6bGV0aSAoQ2xhc3MgQikgVGFudXNpdHZhbnlraWFkbzAeFw05 OTAyMjUxNDEwMjJaFw0xOTAyMjAxNDEwMjJaMIGZMQswCQYDVQQGEwJIVTERMA8G A1UEBxMIQnVkYXBlc3QxJzAlBgNVBAoTHk5ldExvY2sgSGFsb3phdGJpenRvbnNh Z2kgS2Z0LjEaMBgGA1UECxMRVGFudXNpdHZhbnlraWFkb2sxMjAwBgNVBAMTKU5l dExvY2sgVXpsZXRpIChDbGFzcyBCKSBUYW51c2l0dmFueWtpYWRvMIGfMA0GCSqG SIb3DQEBAQUAA4GNADCBiQKBgQCx6gTsIKAjwo84YM/HRrPVG/77uZmeBNwcf4xK gZjupNTKihe5In+DCnVMm8Bp2GQ5o+2So/1bXHQawEfKOml2mrriRBf8TKPV/riX iK+IA4kfpPIEPsgHC+b5sy96YhQJRhTKZPWLgLViqNhr1nGTLbO/CVRY7QbrqHvc Q7GhaQIDAQABo4ICnzCCApswEgYDVR0TAQH/BAgwBgEB/wIBBDAOBgNVHQ8BAf8E BAMCAAYwEQYJYIZIAYb4QgEBBAQDAgAHMIICYAYJYIZIAYb4QgENBIICURaCAk1G SUdZRUxFTSEgRXplbiB0YW51c2l0dmFueSBhIE5ldExvY2sgS2Z0LiBBbHRhbGFu b3MgU3pvbGdhbHRhdGFzaSBGZWx0ZXRlbGVpYmVuIGxlaXJ0IGVsamFyYXNvayBh bGFwamFuIGtlc3p1bHQuIEEgaGl0ZWxlc2l0ZXMgZm9seWFtYXRhdCBhIE5ldExv Y2sgS2Z0LiB0ZXJtZWtmZWxlbG9zc2VnLWJpenRvc2l0YXNhIHZlZGkuIEEgZGln aXRhbGlzIGFsYWlyYXMgZWxmb2dhZGFzYW5hayBmZWx0ZXRlbGUgYXogZWxvaXJ0 IGVsbGVub3J6ZXNpIGVsamFyYXMgbWVndGV0ZWxlLiBBeiBlbGphcmFzIGxlaXJh c2EgbWVndGFsYWxoYXRvIGEgTmV0TG9jayBLZnQuIEludGVybmV0IGhvbmxhcGph biBhIGh0dHBzOi8vd3d3Lm5ldGxvY2submV0L2RvY3MgY2ltZW4gdmFneSBrZXJo ZXRvIGF6IGVsbGVub3J6ZXNAbmV0bG9jay5uZXQgZS1tYWlsIGNpbWVuLiBJTVBP UlRBTlQhIFRoZSBpc3N1YW5jZSBhbmQgdGhlIHVzZSBvZiB0aGlzIGNlcnRpZmlj YXRlIGlzIHN1YmplY3QgdG8gdGhlIE5ldExvY2sgQ1BTIGF2YWlsYWJsZSBhdCBo dHRwczovL3d3dy5uZXRsb2NrLm5ldC9kb2NzIG9yIGJ5IGUtbWFpbCBhdCBjcHNA bmV0bG9jay5uZXQuMA0GCSqGSIb3DQEBBAUAA4GBAATbrowXr/gOkDFOzT4JwG06 sPgzTEdM43WIEJessDgVkcYplswhwG08pXTP2IKlOcNl40JwuyKQ433bNXbhoLXa n3BukxowOR0w2y7jfLKRstE3Kfq51hdcR0/jHTjrn9V7lagonhVK0dHQKwCXoOKS NitjrFgBazMpUIaD8QFI -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFTzCCBLigAwIBAgIBaDANBgkqhkiG9w0BAQQFADCBmzELMAkGA1UEBhMCSFUx ETAPBgNVBAcTCEJ1ZGFwZXN0MScwJQYDVQQKEx5OZXRMb2NrIEhhbG96YXRiaXp0 b25zYWdpIEtmdC4xGjAYBgNVBAsTEVRhbnVzaXR2YW55a2lhZG9rMTQwMgYDVQQD EytOZXRMb2NrIEV4cHJlc3N6IChDbGFzcyBDKSBUYW51c2l0dmFueWtpYWRvMB4X DTk5MDIyNTE0MDgxMVoXDTE5MDIyMDE0MDgxMVowgZsxCzAJBgNVBAYTAkhVMREw DwYDVQQHEwhCdWRhcGVzdDEnMCUGA1UEChMeTmV0TG9jayBIYWxvemF0Yml6dG9u c2FnaSBLZnQuMRowGAYDVQQLExFUYW51c2l0dmFueWtpYWRvazE0MDIGA1UEAxMr TmV0TG9jayBFeHByZXNzeiAoQ2xhc3MgQykgVGFudXNpdHZhbnlraWFkbzCBnzAN BgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA6+ywbGGKIyWvYCDj2Z/8kwvbXY2wobNA OoLO/XXgeDIDhlqGlZHtU/qdQPzm6N3ZW3oDvV3zOwzDUXmbrVWg6dADEK8KuhRC 2VImESLH0iDMgqSaqf64gXadarfSNnU+sYYJ9m5tfk63euyucYT2BDMIJTLrdKwW RMbkQJMdf60CAwEAAaOCAp8wggKbMBIGA1UdEwEB/wQIMAYBAf8CAQQwDgYDVR0P AQH/BAQDAgAGMBEGCWCGSAGG+EIBAQQEAwIABzCCAmAGCWCGSAGG+EIBDQSCAlEW ggJNRklHWUVMRU0hIEV6ZW4gdGFudXNpdHZhbnkgYSBOZXRMb2NrIEtmdC4gQWx0 YWxhbm9zIFN6b2xnYWx0YXRhc2kgRmVsdGV0ZWxlaWJlbiBsZWlydCBlbGphcmFz b2sgYWxhcGphbiBrZXN6dWx0LiBBIGhpdGVsZXNpdGVzIGZvbHlhbWF0YXQgYSBO ZXRMb2NrIEtmdC4gdGVybWVrZmVsZWxvc3NlZy1iaXp0b3NpdGFzYSB2ZWRpLiBB IGRpZ2l0YWxpcyBhbGFpcmFzIGVsZm9nYWRhc2FuYWsgZmVsdGV0ZWxlIGF6IGVs b2lydCBlbGxlbm9yemVzaSBlbGphcmFzIG1lZ3RldGVsZS4gQXogZWxqYXJhcyBs ZWlyYXNhIG1lZ3RhbGFsaGF0byBhIE5ldExvY2sgS2Z0LiBJbnRlcm5ldCBob25s YXBqYW4gYSBodHRwczovL3d3dy5uZXRsb2NrLm5ldC9kb2NzIGNpbWVuIHZhZ3kg a2VyaGV0byBheiBlbGxlbm9yemVzQG5ldGxvY2submV0IGUtbWFpbCBjaW1lbi4g SU1QT1JUQU5UISBUaGUgaXNzdWFuY2UgYW5kIHRoZSB1c2Ugb2YgdGhpcyBjZXJ0 aWZpY2F0ZSBpcyBzdWJqZWN0IHRvIHRoZSBOZXRMb2NrIENQUyBhdmFpbGFibGUg YXQgaHR0cHM6Ly93d3cubmV0bG9jay5uZXQvZG9jcyBvciBieSBlLW1haWwgYXQg Y3BzQG5ldGxvY2submV0LjANBgkqhkiG9w0BAQQFAAOBgQAQrX/XDDKACtiG8XmY ta3UzbM2xJZIwVzNmtkFLp++UOv0JhQQLdRmF/iewSf98e3ke0ugbLWrmldwpu2g pO0u9f38vf5NNwgMvOOWgyL1SRt/Syu0VMGAfJlOHdCM7tCs5ZL6dVb+ZKATj7i4 Fp1hBWeAyNDYpQcCNJgEjTME1A== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIGfTCCBWWgAwIBAgICAQMwDQYJKoZIhvcNAQEEBQAwga8xCzAJBgNVBAYTAkhV MRAwDgYDVQQIEwdIdW5nYXJ5MREwDwYDVQQHEwhCdWRhcGVzdDEnMCUGA1UEChMe TmV0TG9jayBIYWxvemF0Yml6dG9uc2FnaSBLZnQuMRowGAYDVQQLExFUYW51c2l0 dmFueWtpYWRvazE2MDQGA1UEAxMtTmV0TG9jayBLb3pqZWd5em9pIChDbGFzcyBB KSBUYW51c2l0dmFueWtpYWRvMB4XDTk5MDIyNDIzMTQ0N1oXDTE5MDIxOTIzMTQ0 N1owga8xCzAJBgNVBAYTAkhVMRAwDgYDVQQIEwdIdW5nYXJ5MREwDwYDVQQHEwhC dWRhcGVzdDEnMCUGA1UEChMeTmV0TG9jayBIYWxvemF0Yml6dG9uc2FnaSBLZnQu MRowGAYDVQQLExFUYW51c2l0dmFueWtpYWRvazE2MDQGA1UEAxMtTmV0TG9jayBL b3pqZWd5em9pIChDbGFzcyBBKSBUYW51c2l0dmFueWtpYWRvMIIBIjANBgkqhkiG 9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvHSMD7tM9DceqQWC2ObhbHDqeLVu0ThEDaiD zl3S1tWBxdRL51uUcCbbO51qTGL3cfNk1mE7PetzozfZz+qMkjvN9wfcZnSX9EUi 3fRc4L9t875lM+QVOr/bmJBVOMTtplVjC7B4BPTjbsE/jvxReB+SnoPC/tmwqcm8 WgD/qaiYdPv2LD4VOQ22BFWoDpggQrOxJa1+mm9dU7GrDPzr4PN6s6iz/0b2Y6LY Oph7tqyF/7AlT3Rj5xMHpQqPBffAZG9+pyeAlt7ULoZgx2srXnN7F+eRP2QM2Esi NCubMvJIH5+hCoR64sKtlz2O1cH5VqNQ6ca0+pii7pXmKgOM3wIDAQABo4ICnzCC ApswDgYDVR0PAQH/BAQDAgAGMBIGA1UdEwEB/wQIMAYBAf8CAQQwEQYJYIZIAYb4 QgEBBAQDAgAHMIICYAYJYIZIAYb4QgENBIICURaCAk1GSUdZRUxFTSEgRXplbiB0 YW51c2l0dmFueSBhIE5ldExvY2sgS2Z0LiBBbHRhbGFub3MgU3pvbGdhbHRhdGFz aSBGZWx0ZXRlbGVpYmVuIGxlaXJ0IGVsamFyYXNvayBhbGFwamFuIGtlc3p1bHQu IEEgaGl0ZWxlc2l0ZXMgZm9seWFtYXRhdCBhIE5ldExvY2sgS2Z0LiB0ZXJtZWtm ZWxlbG9zc2VnLWJpenRvc2l0YXNhIHZlZGkuIEEgZGlnaXRhbGlzIGFsYWlyYXMg ZWxmb2dhZGFzYW5hayBmZWx0ZXRlbGUgYXogZWxvaXJ0IGVsbGVub3J6ZXNpIGVs amFyYXMgbWVndGV0ZWxlLiBBeiBlbGphcmFzIGxlaXJhc2EgbWVndGFsYWxoYXRv IGEgTmV0TG9jayBLZnQuIEludGVybmV0IGhvbmxhcGphbiBhIGh0dHBzOi8vd3d3 Lm5ldGxvY2submV0L2RvY3MgY2ltZW4gdmFneSBrZXJoZXRvIGF6IGVsbGVub3J6 ZXNAbmV0bG9jay5uZXQgZS1tYWlsIGNpbWVuLiBJTVBPUlRBTlQhIFRoZSBpc3N1 YW5jZSBhbmQgdGhlIHVzZSBvZiB0aGlzIGNlcnRpZmljYXRlIGlzIHN1YmplY3Qg dG8gdGhlIE5ldExvY2sgQ1BTIGF2YWlsYWJsZSBhdCBodHRwczovL3d3dy5uZXRs b2NrLm5ldC9kb2NzIG9yIGJ5IGUtbWFpbCBhdCBjcHNAbmV0bG9jay5uZXQuMA0G CSqGSIb3DQEBBAUAA4IBAQBIJEb3ulZv+sgoA0BO5TE5ayZrU3/b39/zcT0mwBQO xmd7I6gMc90Bu8bKbjc5VdXHjFYgDigKDtIqpLBJUsY4B/6+CgmM0ZjPytoUMaFP 0jn8DxEsQ8Pdq5PHVT5HfBgaANzze9jyf1JsIPQLX2lS9O74silg6+NJMSEN1rUQ QeJBCWziGppWS3cC9qCbmieH6FUpccKQn0V4GuEVZD3QDtigdp+uxdAu6tYPVuxk f1qbFFgBJ34TUMdrKuZoPL9coAob4Q566eKAw+np9v1sEZ7Q5SgnK1QyQhSCdeZK 8CtmdWOMovsEPoMOmzbwGOQmIMOM8CgHrTwXZoi1/baI -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIG0TCCBbmgAwIBAgIBezANBgkqhkiG9w0BAQUFADCByTELMAkGA1UEBhMCSFUx ETAPBgNVBAcTCEJ1ZGFwZXN0MScwJQYDVQQKEx5OZXRMb2NrIEhhbG96YXRiaXp0 b25zYWdpIEtmdC4xGjAYBgNVBAsTEVRhbnVzaXR2YW55a2lhZG9rMUIwQAYDVQQD EzlOZXRMb2NrIE1pbm9zaXRldHQgS296amVneXpvaSAoQ2xhc3MgUUEpIFRhbnVz aXR2YW55a2lhZG8xHjAcBgkqhkiG9w0BCQEWD2luZm9AbmV0bG9jay5odTAeFw0w MzAzMzAwMTQ3MTFaFw0yMjEyMTUwMTQ3MTFaMIHJMQswCQYDVQQGEwJIVTERMA8G A1UEBxMIQnVkYXBlc3QxJzAlBgNVBAoTHk5ldExvY2sgSGFsb3phdGJpenRvbnNh Z2kgS2Z0LjEaMBgGA1UECxMRVGFudXNpdHZhbnlraWFkb2sxQjBABgNVBAMTOU5l dExvY2sgTWlub3NpdGV0dCBLb3pqZWd5em9pIChDbGFzcyBRQSkgVGFudXNpdHZh bnlraWFkbzEeMBwGCSqGSIb3DQEJARYPaW5mb0BuZXRsb2NrLmh1MIIBIjANBgkq hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAx1Ilstg91IRVCacbvWy5FPSKAtt2/Goq eKvld/Bu4IwjZ9ulZJm53QE+b+8tmjwi8F3JV6BVQX/yQ15YglMxZc4e8ia6AFQe r7C8HORSjKAyr7c3sVNnaHRnUPYtLmTeriZ539+Zhqurf4XsoPuAzPS4DB6TRWO5 3Lhbm+1bOdRfYrCnjnxmOCyqsQhjF2d9zL2z8cM/z1A57dEZgxXbhxInlrfa6uWd vLrqOU+L73Sa58XQ0uqGURzk/mQIKAR5BevKxXEOC++r6uwSEaEYBTJp0QwsGj0l mT+1fMptsK6ZmfoIYOcZwvK9UdPM0wKswREMgM6r3JSda6M5UzrWhQIDAMV9o4IC wDCCArwwEgYDVR0TAQH/BAgwBgEB/wIBBDAOBgNVHQ8BAf8EBAMCAQYwggJ1Bglg hkgBhvhCAQ0EggJmFoICYkZJR1lFTEVNISBFemVuIHRhbnVzaXR2YW55IGEgTmV0 TG9jayBLZnQuIE1pbm9zaXRldHQgU3pvbGdhbHRhdGFzaSBTemFiYWx5emF0YWJh biBsZWlydCBlbGphcmFzb2sgYWxhcGphbiBrZXN6dWx0LiBBIG1pbm9zaXRldHQg ZWxla3Ryb25pa3VzIGFsYWlyYXMgam9naGF0YXMgZXJ2ZW55ZXN1bGVzZW5laywg dmFsYW1pbnQgZWxmb2dhZGFzYW5hayBmZWx0ZXRlbGUgYSBNaW5vc2l0ZXR0IFN6 b2xnYWx0YXRhc2kgU3phYmFseXphdGJhbiwgYXogQWx0YWxhbm9zIFN6ZXJ6b2Rl c2kgRmVsdGV0ZWxla2JlbiBlbG9pcnQgZWxsZW5vcnplc2kgZWxqYXJhcyBtZWd0 ZXRlbGUuIEEgZG9rdW1lbnR1bW9rIG1lZ3RhbGFsaGF0b2sgYSBodHRwczovL3d3 dy5uZXRsb2NrLmh1L2RvY3MvIGNpbWVuIHZhZ3kga2VyaGV0b2sgYXogaW5mb0Bu ZXRsb2NrLm5ldCBlLW1haWwgY2ltZW4uIFdBUk5JTkchIFRoZSBpc3N1YW5jZSBh bmQgdGhlIHVzZSBvZiB0aGlzIGNlcnRpZmljYXRlIGFyZSBzdWJqZWN0IHRvIHRo ZSBOZXRMb2NrIFF1YWxpZmllZCBDUFMgYXZhaWxhYmxlIGF0IGh0dHBzOi8vd3d3 Lm5ldGxvY2suaHUvZG9jcy8gb3IgYnkgZS1tYWlsIGF0IGluZm9AbmV0bG9jay5u ZXQwHQYDVR0OBBYEFAlqYhaSsFq7VQ7LdTI6MuWyIckoMA0GCSqGSIb3DQEBBQUA A4IBAQCRalCc23iBmz+LQuM7/KbD7kPgz/PigDVJRXYC4uMvBcXxKufAQTPGtpvQ MznNwNuhrWw3AkxYQTvyl5LGSKjN5Yo5iWH5Upfpvfb5lHTocQ68d4bDBsxafEp+ NFAwLvt/MpqNPfMgW/hqyobzMUwsWYACff44yTB1HLdV47yfuqhthCgFdbOLDcCR VCHnpgu0mfVRQdzNo0ci2ccBgcTcR08m6h/t280NmPSjnLRzMkqWmf68f8glWPhY 83ZmiVSkpj7EUFy6iRiCdUgh0k8T6GB+B3bbELVR5qq5aKrN9p2QdRLqOBrKROi3 macqaJVmlaut74nLYKkGEsaUR+ko -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID5jCCAs6gAwIBAgIQV8szb8JcFuZHFhfjkDFo4DANBgkqhkiG9w0BAQUFADBi MQswCQYDVQQGEwJVUzEhMB8GA1UEChMYTmV0d29yayBTb2x1dGlvbnMgTC5MLkMu MTAwLgYDVQQDEydOZXR3b3JrIFNvbHV0aW9ucyBDZXJ0aWZpY2F0ZSBBdXRob3Jp dHkwHhcNMDYxMjAxMDAwMDAwWhcNMjkxMjMxMjM1OTU5WjBiMQswCQYDVQQGEwJV UzEhMB8GA1UEChMYTmV0d29yayBTb2x1dGlvbnMgTC5MLkMuMTAwLgYDVQQDEydO ZXR3b3JrIFNvbHV0aW9ucyBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDkvH6SMG3G2I4rC7xGzuAnlt7e+foS0zwz c7MEL7xxjOWftiJgPl9dzgn/ggwbmlFQGiaJ3dVhXRncEg8tCqJDXRfQNJIg6nPP OCwGJgl6cvf6UDL4wpPTaaIjzkGxzOTVHzbRijr4jGPiFFlp7Q3Tf2vouAPlT2rl mGNpSAW+Lv8ztumXWWn4Zxmuk2GWRBXTcrA/vGp97Eh/jcOrqnErU2lBUzS1sLnF BgrEsEX1QV1uiUV7PTsmjHTC5dLRfbIR1PtYMiKagMnc/Qzpf14Dl847ABSHJ3A4 qY5usyd2mFHgBeMhqxrVhSI8KbWaFsWAqPS7azCPL0YCorEMIuDTAgMBAAGjgZcw gZQwHQYDVR0OBBYEFCEwyfsA106Y2oeqKtCnLrFAMadMMA4GA1UdDwEB/wQEAwIB BjAPBgNVHRMBAf8EBTADAQH/MFIGA1UdHwRLMEkwR6BFoEOGQWh0dHA6Ly9jcmwu bmV0c29sc3NsLmNvbS9OZXR3b3JrU29sdXRpb25zQ2VydGlmaWNhdGVBdXRob3Jp dHkuY3JsMA0GCSqGSIb3DQEBBQUAA4IBAQC7rkvnt1frf6ott3NHhWrB5KUd5Oc8 6fRZZXe1eltajSU24HqXLjjAV2CDmAaDn7l2em5Q4LqILPxFzBiwmZVRDuwduIj/ h1AcgsLj4DKAv6ALR8jDMe+ZZzKATxcheQxpXN5eNK4CtSbqUN9/GGUsyfJj4akH /nxxH2szJGoeBfcFaMBqEssuXmHLrijTfsK0ZpEmXzwuJF/LWA/rKOyvEZbz3Htv wKeI8lN3s2Berq4o2jUsbzRF0ybh3uxbTydrFny9RAQYgrOJeRcQcT16ohZO9QHN pGxlaKFJdlxDydi8NmdspZS11My5vWo1ViHe2MPr+8ukYEywVaCge1ey -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID8TCCAtmgAwIBAgIQQT1yx/RrH4FDffHSKFTfmjANBgkqhkiG9w0BAQUFADCB ijELMAkGA1UEBhMCQ0gxEDAOBgNVBAoTB1dJU2VLZXkxGzAZBgNVBAsTEkNvcHly aWdodCAoYykgMjAwNTEiMCAGA1UECxMZT0lTVEUgRm91bmRhdGlvbiBFbmRvcnNl ZDEoMCYGA1UEAxMfT0lTVEUgV0lTZUtleSBHbG9iYWwgUm9vdCBHQSBDQTAeFw0w NTEyMTExNjAzNDRaFw0zNzEyMTExNjA5NTFaMIGKMQswCQYDVQQGEwJDSDEQMA4G A1UEChMHV0lTZUtleTEbMBkGA1UECxMSQ29weXJpZ2h0IChjKSAyMDA1MSIwIAYD VQQLExlPSVNURSBGb3VuZGF0aW9uIEVuZG9yc2VkMSgwJgYDVQQDEx9PSVNURSBX SVNlS2V5IEdsb2JhbCBSb290IEdBIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A MIIBCgKCAQEAy0+zAJs9Nt350UlqaxBJH+zYK7LG+DKBKUOVTJoZIyEVRd7jyBxR VVuuk+g3/ytr6dTqvirdqFEr12bDYVxgAsj1znJ7O7jyTmUIms2kahnBAbtzptf2 w93NvKSLtZlhuAGio9RN1AU9ka34tAhxZK9w8RxrfvbDd50kc3vkDIzh2TbhmYsF mQvtRTEJysIA2/dyoJaqlYfQjse2YXMNdmaM3Bu0Y6Kff5MTMPGhJ9vZ/yxViJGg 4E8HsChWjBgbl0SOid3gF27nKu+POQoxhILYQBRJLnpB5Kf+42TMwVlxSywhp1t9 4B3RLoGbw9ho972WG6xwsRYUC9tguSYBBQIDAQABo1EwTzALBgNVHQ8EBAMCAYYw DwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUswN+rja8sHnR3JQmthG+IbJphpQw EAYJKwYBBAGCNxUBBAMCAQAwDQYJKoZIhvcNAQEFBQADggEBAEuh/wuHbrP5wUOx SPMowB0uyQlB+pQAHKSkq0lPjz0e701vvbyk9vImMMkQyh2I+3QZH4VFvbBsUfk2 ftv1TDI6QU9bR8/oCy22xBmddMVHxjtqD6wU2zz0c5ypBd8A3HR4+vg1YFkCExh8 vPtNsCBtQ7tgMHpnM1zFmdH4LTlSc/uMqpclXHLZCB6rTjzjgTGfA6b7wP4piFXa hNVQA7bihKOmNqoROgHhGEvWRGizPflTdISzRpFGlgC3gCy24eMQ4tui5yiPAZZi Fj4A4xylNoEYokxSdsARo27mHbrjWr42U8U+dY+GaSlYU7Wcu2+fXMUY7N0v4ZjJ /L7fCg0= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIJhjCCB26gAwIBAgIBCzANBgkqhkiG9w0BAQsFADCCAR4xPjA8BgNVBAMTNUF1 dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIFJhaXogZGVsIEVzdGFkbyBWZW5lem9s YW5vMQswCQYDVQQGEwJWRTEQMA4GA1UEBxMHQ2FyYWNhczEZMBcGA1UECBMQRGlz dHJpdG8gQ2FwaXRhbDE2MDQGA1UEChMtU2lzdGVtYSBOYWNpb25hbCBkZSBDZXJ0 aWZpY2FjaW9uIEVsZWN0cm9uaWNhMUMwQQYDVQQLEzpTdXBlcmludGVuZGVuY2lh IGRlIFNlcnZpY2lvcyBkZSBDZXJ0aWZpY2FjaW9uIEVsZWN0cm9uaWNhMSUwIwYJ KoZIhvcNAQkBFhZhY3JhaXpAc3VzY2VydGUuZ29iLnZlMB4XDTEwMTIyODE2NTEw MFoXDTIwMTIyNTIzNTk1OVowgdExJjAkBgkqhkiG9w0BCQEWF2NvbnRhY3RvQHBy b2NlcnQubmV0LnZlMQ8wDQYDVQQHEwZDaGFjYW8xEDAOBgNVBAgTB01pcmFuZGEx KjAoBgNVBAsTIVByb3ZlZWRvciBkZSBDZXJ0aWZpY2Fkb3MgUFJPQ0VSVDE2MDQG A1UEChMtU2lzdGVtYSBOYWNpb25hbCBkZSBDZXJ0aWZpY2FjaW9uIEVsZWN0cm9u aWNhMQswCQYDVQQGEwJWRTETMBEGA1UEAxMKUFNDUHJvY2VydDCCAiIwDQYJKoZI hvcNAQEBBQADggIPADCCAgoCggIBANW39KOUM6FGqVVhSQ2oh3NekS1wwQYalNo9 7BVCwfWMrmoX8Yqt/ICV6oNEolt6Vc5Pp6XVurgfoCfAUFM+jbnADrgV3NZs+J74 BCXfgI8Qhd19L3uA3VcAZCP4bsm+lU/hdezgfl6VzbHvvnpC2Mks0+saGiKLt38G ieU89RLAu9MLmV+QfI4tL3czkkohRqipCKzx9hEC2ZUWno0vluYC3XXCFCpa1sl9 JcLB/KpnheLsvtF8PPqv1W7/U0HU9TI4seJfxPmOEO8GqQKJ/+MMbpfg353bIdD0 PghpbNjU5Db4g7ayNo+c7zo3Fn2/omnXO1ty0K+qP1xmk6wKImG20qCZyFSTXai2 0b1dCl53lKItwIKOvMoDKjSuc/HUtQy9vmebVOvh+qBa7Dh+PsHMosdEMXXqP+UH 0quhJZb25uSgXTcYOWEAM11G1ADEtMo88aKjPvM6/2kwLkDd9p+cJsmWN63nOaK/ 6mnbVSKVUyqUtd+tFjiBdWbjxywbk5yqjKPK2Ww8F22c3HxT4CAnQzb5EuE8XL1m v6JpIzi4mWCZDlZTOpx+FIywBm/xhnaQr/2v/pDGj59/i5IjnOcVdo/Vi5QTcmn7 K2FjiO/mpF7moxdqWEfLcU8UC17IAggmosvpr2uKGcfLFFb14dq12fy/czja+eev bqQ34gcnAgMBAAGjggMXMIIDEzASBgNVHRMBAf8ECDAGAQH/AgEBMDcGA1UdEgQw MC6CD3N1c2NlcnRlLmdvYi52ZaAbBgVghl4CAqASDBBSSUYtRy0yMDAwNDAzNi0w MB0GA1UdDgQWBBRBDxk4qpl/Qguk1yeYVKIXTC1RVDCCAVAGA1UdIwSCAUcwggFD gBStuyIdxuDSAaj9dlBSk+2YwU2u06GCASakggEiMIIBHjE+MDwGA1UEAxM1QXV0 b3JpZGFkIGRlIENlcnRpZmljYWNpb24gUmFpeiBkZWwgRXN0YWRvIFZlbmV6b2xh bm8xCzAJBgNVBAYTAlZFMRAwDgYDVQQHEwdDYXJhY2FzMRkwFwYDVQQIExBEaXN0 cml0byBDYXBpdGFsMTYwNAYDVQQKEy1TaXN0ZW1hIE5hY2lvbmFsIGRlIENlcnRp ZmljYWNpb24gRWxlY3Ryb25pY2ExQzBBBgNVBAsTOlN1cGVyaW50ZW5kZW5jaWEg ZGUgU2VydmljaW9zIGRlIENlcnRpZmljYWNpb24gRWxlY3Ryb25pY2ExJTAjBgkq hkiG9w0BCQEWFmFjcmFpekBzdXNjZXJ0ZS5nb2IudmWCAQowDgYDVR0PAQH/BAQD AgEGME0GA1UdEQRGMESCDnByb2NlcnQubmV0LnZloBUGBWCGXgIBoAwMClBTQy0w MDAwMDKgGwYFYIZeAgKgEgwQUklGLUotMzE2MzUzNzMtNzB2BgNVHR8EbzBtMEag RKBChkBodHRwOi8vd3d3LnN1c2NlcnRlLmdvYi52ZS9sY3IvQ0VSVElGSUNBRE8t UkFJWi1TSEEzODRDUkxERVIuY3JsMCOgIaAfhh1sZGFwOi8vYWNyYWl6LnN1c2Nl cnRlLmdvYi52ZTA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAGGG2h0dHA6Ly9v Y3NwLnN1c2NlcnRlLmdvYi52ZTBBBgNVHSAEOjA4MDYGBmCGXgMBAjAsMCoGCCsG AQUFBwIBFh5odHRwOi8vd3d3LnN1c2NlcnRlLmdvYi52ZS9kcGMwDQYJKoZIhvcN AQELBQADggIBACtZ6yKZu4SqT96QxtGGcSOeSwORR3C7wJJg7ODU523G0+1ng3dS 1fLld6c2suNUvtm7CpsR72H0xpkzmfWvADmNg7+mvTV+LFwxNG9s2/NkAZiqlCxB 3RWGymspThbASfzXg0gTB1GEMVKIu4YXx2sviiCtxQuPcD4quxtxj7mkoP3Yldmv Wb8lK5jpY5MvYB7Eqvh39YtsL+1+LrVPQA3uvFd359m21D+VJzog1eWuq2w1n8Gh HVnchIHuTQfiSLaeS5UtQbHh6N5+LwUeaO6/u5BlOsju6rEYNxxik6SgMexxbJHm pHmJWhSnFFAFTKQAVzAswbVhltw+HoSvOULP5dAssSS830DD7X9jSr3hTxJkhpXz sOfIt+FTvZLm8wyWuevo5pLtp4EJFAv8lXrPj9Y0TzYS3F7RNHXGRoAvlQSMx4bE qCaJqD8Zm4G7UaRKhqsLEQ+xrmNTbSjq3TNWOByyrYDT13K9mmyZY+gAu0F2Bbdb mRiKw7gSXFbPVgx96OLP7bx0R/vu0xdOIk9W/1DzLuY5poLWccret9W6aAjtmcz9 opLLabid+Qqkpj5PkygqYWwHJgD/ll9ohri4zspV4KuxPX+Y1zMOWj3YeMLEYC/H YvBhkdI4sPaeVdtAgAUSM84dkpvRabP/v/GSCmE1P93+hvS84Bpxs2Km -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF0DCCBLigAwIBAgIEOrZQizANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQGEwJC TTEZMBcGA1UEChMQUXVvVmFkaXMgTGltaXRlZDElMCMGA1UECxMcUm9vdCBDZXJ0 aWZpY2F0aW9uIEF1dGhvcml0eTEuMCwGA1UEAxMlUXVvVmFkaXMgUm9vdCBDZXJ0 aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wMTAzMTkxODMzMzNaFw0yMTAzMTcxODMz MzNaMH8xCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBMaW1pdGVkMSUw IwYDVQQLExxSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MS4wLAYDVQQDEyVR dW9WYWRpcyBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIIBIjANBgkqhkiG 9w0BAQEFAAOCAQ8AMIIBCgKCAQEAv2G1lVO6V/z68mcLOhrfEYBklbTRvM16z/Yp li4kVEAkOPcahdxYTMukJ0KX0J+DisPkBgNbAKVRHnAEdOLB1Dqr1607BxgFjv2D rOpm2RgbaIr1VxqYuvXtdj182d6UajtLF8HVj71lODqV0D1VNk7feVcxKh7YWWVJ WCCYfqtffp/p1k3sg3Spx2zY7ilKhSoGFPlU5tPaZQeLYzcS19Dsw3sgQUSj7cug F+FxZc4dZjH3dgEZyH0DWLaVSR2mEiboxgx24ONmy+pdpibu5cxfvWenAScOospU xbF6lR1xHkopigPcakXBpBlebzbNw6Kwt/5cOOJSvPhEQ+aQuwIDAQABo4ICUjCC Ak4wPQYIKwYBBQUHAQEEMTAvMC0GCCsGAQUFBzABhiFodHRwczovL29jc3AucXVv dmFkaXNvZmZzaG9yZS5jb20wDwYDVR0TAQH/BAUwAwEB/zCCARoGA1UdIASCAREw ggENMIIBCQYJKwYBBAG+WAABMIH7MIHUBggrBgEFBQcCAjCBxxqBxFJlbGlhbmNl IG9uIHRoZSBRdW9WYWRpcyBSb290IENlcnRpZmljYXRlIGJ5IGFueSBwYXJ0eSBh c3N1bWVzIGFjY2VwdGFuY2Ugb2YgdGhlIHRoZW4gYXBwbGljYWJsZSBzdGFuZGFy ZCB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB1c2UsIGNlcnRpZmljYXRpb24gcHJh Y3RpY2VzLCBhbmQgdGhlIFF1b1ZhZGlzIENlcnRpZmljYXRlIFBvbGljeS4wIgYI KwYBBQUHAgEWFmh0dHA6Ly93d3cucXVvdmFkaXMuYm0wHQYDVR0OBBYEFItLbe3T KbkGGew5Oanwl4Rqy+/fMIGuBgNVHSMEgaYwgaOAFItLbe3TKbkGGew5Oanwl4Rq y+/foYGEpIGBMH8xCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBMaW1p dGVkMSUwIwYDVQQLExxSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MS4wLAYD VQQDEyVRdW9WYWRpcyBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5ggQ6tlCL MA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQUFAAOCAQEAitQUtf70mpKnGdSk fnIYj9lofFIk3WdvOXrEql494liwTXCYhGHoG+NpGA7O+0dQoE7/8CQfvbLO9Sf8 7C9TqnN7Az10buYWnuulLsS/VidQK2K6vkscPFVcQR0kvoIgR13VRH56FmjffU1R cHhXHTMe/QKZnAzNCgVPx7uOpHX6Sm2xgI4JVrmcGmD+XcHXetwReNDWXcG31a0y mQM6isxUJTkxgXsTIlG6Rmyhu576BGxJJnSP0nPrzDCi5upZIof4l/UO/erMkqQW xFIY6iHOsfHmhIHluqmGKPJDWl0Snawe2ajlCmqnf6CHKc/yiU3U7MXi5nrQNiOK SnQ2+Q== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFtzCCA5+gAwIBAgICBQkwDQYJKoZIhvcNAQEFBQAwRTELMAkGA1UEBhMCQk0x GTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMTElF1b1ZhZGlzIFJv b3QgQ0EgMjAeFw0wNjExMjQxODI3MDBaFw0zMTExMjQxODIzMzNaMEUxCzAJBgNV BAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBMaW1pdGVkMRswGQYDVQQDExJRdW9W YWRpcyBSb290IENBIDIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCa GMpLlA0ALa8DKYrwD4HIrkwZhR0In6spRIXzL4GtMh6QRr+jhiYaHv5+HBg6XJxg Fyo6dIMzMH1hVBHL7avg5tKifvVrbxi3Cgst/ek+7wrGsxDp3MJGF/hd/aTa/55J WpzmM+Yklvc/ulsrHHo1wtZn/qtmUIttKGAr79dgw8eTvI02kfN/+NsRE8Scd3bB rrcCaoF6qUWD4gXmuVbBlDePSHFjIuwXZQeVikvfj8ZaCuWw419eaxGrDPmF60Tp +ARz8un+XJiM9XOva7R+zdRcAitMOeGylZUtQofX1bOQQ7dsE/He3fbE+Ik/0XX1 ksOR1YqI0JDs3G3eicJlcZaLDQP9nL9bFqyS2+r+eXyt66/3FsvbzSUr5R/7mp/i Ucw6UwxI5g69ybR2BlLmEROFcmMDBOAENisgGQLodKcftslWZvB1JdxnwQ5hYIiz PtGo/KPaHbDRsSNU30R2be1B2MGyIrZTHN81Hdyhdyox5C315eXbyOD/5YDXC2Og /zOhD7osFRXql7PSorW+8oyWHhqPHWykYTe5hnMz15eWniN9gqRMgeKh0bpnX5UH oycR7hYQe7xFSkyyBNKr79X9DFHOUGoIMfmR2gyPZFwDwzqLID9ujWc9Otb+fVuI yV77zGHcizN300QyNQliBJIWENieJ0f7OyHj+OsdWwIDAQABo4GwMIGtMA8GA1Ud EwEB/wQFMAMBAf8wCwYDVR0PBAQDAgEGMB0GA1UdDgQWBBQahGK8SEwzJQTU7tD2 A8QZRtGUazBuBgNVHSMEZzBlgBQahGK8SEwzJQTU7tD2A8QZRtGUa6FJpEcwRTEL MAkGA1UEBhMCQk0xGTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMT ElF1b1ZhZGlzIFJvb3QgQ0EgMoICBQkwDQYJKoZIhvcNAQEFBQADggIBAD4KFk2f BluornFdLwUvZ+YTRYPENvbzwCYMDbVHZF34tHLJRqUDGCdViXh9duqWNIAXINzn g/iN/Ae42l9NLmeyhP3ZRPx3UIHmfLTJDQtyU/h2BwdBR5YM++CCJpNVjP4iH2Bl fF/nJrP3MpCYUNQ3cVX2kiF495V5+vgtJodmVjB3pjd4M1IQWK4/YY7yarHvGH5K WWPKjaJW1acvvFYfzznB4vsKqBUsfU16Y8Zsl0Q80m/DShcK+JDSV6IZUaUtl0Ha B0+pUNqQjZRG4T7wlP0QADj1O+hA4bRuVhogzG9Yje0uRY/W6ZM/57Es3zrWIozc hLsib9D45MY56QSIPMO661V6bYCZJPVsAfv4l7CUW+v90m/xd2gNNWQjrLhVoQPR TUIZ3Ph1WVaj+ahJefivDrkRoHy3au000LYmYjgahwz46P0u05B/B5EqHdZ+XIWD mbA4CD/pXvk1B+TJYm5Xf6dQlfe6yJvmjqIBxdZmv3lh8zwc4bmCXF2gw+nYSL0Z ohEUGW6yhhtoPkg3Goi3XZZenMfvJ2II4pEZXNLxId26F0KCl3GBUzGpn/Z9Yr9y 4aOTHcyKJloJONDO1w2AFrR4pTqHTI2KpdVGl/IsELm8VCLAAVBpQ570su9t+Oza 8eOx79+Rj1QqCyXBJhnEUhAFZdWCEOrCMc0u -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIGnTCCBIWgAwIBAgICBcYwDQYJKoZIhvcNAQEFBQAwRTELMAkGA1UEBhMCQk0x GTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMTElF1b1ZhZGlzIFJv b3QgQ0EgMzAeFw0wNjExMjQxOTExMjNaFw0zMTExMjQxOTA2NDRaMEUxCzAJBgNV BAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBMaW1pdGVkMRswGQYDVQQDExJRdW9W YWRpcyBSb290IENBIDMwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDM V0IWVJzmmNPTTe7+7cefQzlKZbPoFog02w1ZkXTPkrgEQK0CSzGrvI2RaNggDhoB 4hp7Thdd4oq3P5kazethq8Jlph+3t723j/z9cI8LoGe+AaJZz3HmDyl2/7FWeUUr H556VOijKTVopAFPD6QuN+8bv+OPEKhyq1hX51SGyMnzW9os2l2ObjyjPtr7guXd 8lyyBTNvijbO0BNO/79KDDRMpsMhvVAEVeuxu537RR5kFd5VAYwCdrXLoT9Cabwv vWhDFlaJKjdhkf2mrk7AyxRllDdLkgbvBNDInIjbC3uBr7E9KsRlOni27tyAsdLT mZw67mtaa7ONt9XOnMK+pUsvFrGeaDsGb659n/je7Mwpp5ijJUMv7/FfJuGITfhe btfZFG4ZM2mnO4SJk8RTVROhUXhA+LjJou57ulJCg54U7QVSWllWp5f8nT8KKdjc T5EOE7zelaTfi5m+rJsziO+1ga8bxiJTyPbH7pcUsMV8eFLI8M5ud2CEpukqdiDt WAEXMJPpGovgc2PZapKUSU60rUqFxKMiMPwJ7Wgic6aIDFUhWMXhOp8q3crhkODZ c6tsgLjoC2SToJyMGf+z0gzskSaHirOi4XCPLArlzW1oUevaPwV/izLmE1xr/l9A 4iLItLRkT9a6fUg+qGkM17uGcclzuD87nSVL2v9A6wIDAQABo4IBlTCCAZEwDwYD VR0TAQH/BAUwAwEB/zCB4QYDVR0gBIHZMIHWMIHTBgkrBgEEAb5YAAMwgcUwgZMG CCsGAQUFBwICMIGGGoGDQW55IHVzZSBvZiB0aGlzIENlcnRpZmljYXRlIGNvbnN0 aXR1dGVzIGFjY2VwdGFuY2Ugb2YgdGhlIFF1b1ZhZGlzIFJvb3QgQ0EgMyBDZXJ0 aWZpY2F0ZSBQb2xpY3kgLyBDZXJ0aWZpY2F0aW9uIFByYWN0aWNlIFN0YXRlbWVu dC4wLQYIKwYBBQUHAgEWIWh0dHA6Ly93d3cucXVvdmFkaXNnbG9iYWwuY29tL2Nw czALBgNVHQ8EBAMCAQYwHQYDVR0OBBYEFPLAE+CCQz777i9nMpY1XNu4ywLQMG4G A1UdIwRnMGWAFPLAE+CCQz777i9nMpY1XNu4ywLQoUmkRzBFMQswCQYDVQQGEwJC TTEZMBcGA1UEChMQUXVvVmFkaXMgTGltaXRlZDEbMBkGA1UEAxMSUXVvVmFkaXMg Um9vdCBDQSAzggIFxjANBgkqhkiG9w0BAQUFAAOCAgEAT62gLEz6wPJv92ZVqyM0 7ucp2sNbtrCD2dDQ4iH782CnO11gUyeim/YIIirnv6By5ZwkajGxkHon24QRiSem d1o417+shvzuXYO8BsbRd2sPbSQvS3pspweWyuOEn62Iix2rFo1bZhfZFvSLgNLd +LJ2w/w4E6oM3kJpK27zPOuAJ9v1pkQNn1pVWQvVDVJIxa6f8i+AxeoyUDUSly7B 4f/xI4hROJ/yZlZ25w9Rl6VSDE1JUZU2Pb+iSwwQHYaZTKrzchGT5Or2m9qoXadN t54CrnMAyNojA+j56hl0YgCUyyIgvpSnWbWCar6ZeXqp8kokUvd0/bpO5qgdAm6x DYBEwa7TIzdfu4V8K5Iu6H6li92Z4b8nby1dqnuH/grdS/yO9SbkbnBCbjPsMZ57 k8HkyWkaPcBrTiJt7qtYTcbQQcEr6k8Sh17rRdhs9ZgC06DYVYoGmRmioHfRMJ6s zHXug/WwYjnPbFfiTNKRCw51KBuav/0aQ/HKd/s7j2G4aSgWQgRecCocIdiP4b0j Wy10QJLZYxkNc91pvGJHvOB0K7Lrfb5BG7XARsWhIstfTsEokt4YutUqKLsRixeT mJlglFwjz1onl14LBQaTNx47aTbrqZ5hHY8y2o4M1nQ+ewkk2gF3R8Q7zTSMmfXK 4SVhM7JZG+Ju1zdXtg2pEto= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIGizCCBXOgAwIBAgIEO0XlaDANBgkqhkiG9w0BAQUFADBoMQswCQYDVQQGEwJF UzEfMB0GA1UEChMWR2VuZXJhbGl0YXQgVmFsZW5jaWFuYTEPMA0GA1UECxMGUEtJ R1ZBMScwJQYDVQQDEx5Sb290IENBIEdlbmVyYWxpdGF0IFZhbGVuY2lhbmEwHhcN MDEwNzA2MTYyMjQ3WhcNMjEwNzAxMTUyMjQ3WjBoMQswCQYDVQQGEwJFUzEfMB0G A1UEChMWR2VuZXJhbGl0YXQgVmFsZW5jaWFuYTEPMA0GA1UECxMGUEtJR1ZBMScw JQYDVQQDEx5Sb290IENBIEdlbmVyYWxpdGF0IFZhbGVuY2lhbmEwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDGKqtXETcvIorKA3Qdyu0togu8M1JAJke+ WmmmO3I2F0zo37i7L3bhQEZ0ZQKQUgi0/6iMweDHiVYQOTPvaLRfX9ptI6GJXiKj SgbwJ/BXufjpTjJ3Cj9BZPPrZe52/lSqfR0grvPXdMIKX/UIKFIIzFVd0g/bmoGl u6GzwZTNVOAydTGRGmKy3nXiz0+J2ZGQD0EbtFpKd71ng+CT516nDOeB0/RSrFOy A8dEJvt55cs0YFAQexvba9dHq198aMpunUEDEO5rmXteJajCq+TA81yc477OMUxk Hl6AovWDfgzWyoxVjr7gvkkHD6MkQXpYHYTqWBLI4bft75PelAgxAgMBAAGjggM7 MIIDNzAyBggrBgEFBQcBAQQmMCQwIgYIKwYBBQUHMAGGFmh0dHA6Ly9vY3NwLnBr aS5ndmEuZXMwEgYDVR0TAQH/BAgwBgEB/wIBAjCCAjQGA1UdIASCAiswggInMIIC IwYKKwYBBAG/VQIBADCCAhMwggHoBggrBgEFBQcCAjCCAdoeggHWAEEAdQB0AG8A cgBpAGQAYQBkACAAZABlACAAQwBlAHIAdABpAGYAaQBjAGEAYwBpAPMAbgAgAFIA YQDtAHoAIABkAGUAIABsAGEAIABHAGUAbgBlAHIAYQBsAGkAdABhAHQAIABWAGEA bABlAG4AYwBpAGEAbgBhAC4ADQAKAEwAYQAgAEQAZQBjAGwAYQByAGEAYwBpAPMA bgAgAGQAZQAgAFAAcgDhAGMAdABpAGMAYQBzACAAZABlACAAQwBlAHIAdABpAGYA aQBjAGEAYwBpAPMAbgAgAHEAdQBlACAAcgBpAGcAZQAgAGUAbAAgAGYAdQBuAGMA aQBvAG4AYQBtAGkAZQBuAHQAbwAgAGQAZQAgAGwAYQAgAHAAcgBlAHMAZQBuAHQA ZQAgAEEAdQB0AG8AcgBpAGQAYQBkACAAZABlACAAQwBlAHIAdABpAGYAaQBjAGEA YwBpAPMAbgAgAHMAZQAgAGUAbgBjAHUAZQBuAHQAcgBhACAAZQBuACAAbABhACAA ZABpAHIAZQBjAGMAaQDzAG4AIAB3AGUAYgAgAGgAdAB0AHAAOgAvAC8AdwB3AHcA LgBwAGsAaQAuAGcAdgBhAC4AZQBzAC8AYwBwAHMwJQYIKwYBBQUHAgEWGWh0dHA6 Ly93d3cucGtpLmd2YS5lcy9jcHMwHQYDVR0OBBYEFHs100DSHHgZZu90ECjcPk+y eAT8MIGVBgNVHSMEgY0wgYqAFHs100DSHHgZZu90ECjcPk+yeAT8oWykajBoMQsw CQYDVQQGEwJFUzEfMB0GA1UEChMWR2VuZXJhbGl0YXQgVmFsZW5jaWFuYTEPMA0G A1UECxMGUEtJR1ZBMScwJQYDVQQDEx5Sb290IENBIEdlbmVyYWxpdGF0IFZhbGVu Y2lhbmGCBDtF5WgwDQYJKoZIhvcNAQEFBQADggEBACRhTvW1yEICKrNcda3Fbcrn lD+laJWIwVTAEGmiEi8YPyVQqHxK6sYJ2fR1xkDar1CdPaUWu20xxsdzCkj+IHLt b8zog2EWRpABlUt9jppSCS/2bxzkoXHPjCpaF3ODR00PNvsETUlR4hTJZGH71BTg 9J63NI8KJr2XXPR5OkowGcytT6CYirQxlyric21+eLj4iIlPsSKRZEv1UN4D2+XF ducTZnV+ZfsBn5OHiJ35Rld8TWCvmHMTI6QgkYH60GFmuH3Rr9ZvHmw96RH9qfmC IoaZM3Fa6hlXPZHNqcCjbgcTpsnt+GijnsNacgmHKNHEc8RzGF9QdRYxn7fofMM= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIC5zCCAlACAQEwDQYJKoZIhvcNAQEFBQAwgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0 IFZhbGlkYXRpb24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAz BgNVBAsTLFZhbGlDZXJ0IENsYXNzIDMgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9y aXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG 9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMB4XDTk5MDYyNjAwMjIzM1oXDTE5MDYy NjAwMjIzM1owgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRpb24gTmV0d29y azEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENs YXNzIDMgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRw Oi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNl cnQuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDjmFGWHOjVsQaBalfD cnWTq8+epvzzFlLWLU2fNUSoLgRNB0mKOCn1dzfnt6td3zZxFJmP3MKS8edgkpfs 2Ejcv8ECIMYkpChMMFp2bbFc893enhBxoYjHW5tBbcqwuI4V7q0zK89HBFx1cQqY JJgpp0lZpd34t0NiYfPT4tBVPwIDAQABMA0GCSqGSIb3DQEBBQUAA4GBAFa7AliE Zwgs3x/be0kz9dNnnfS0ChCzycUs4pJqcXgn8nCDQtM+z6lU9PHYkhaM0QTLS6vJ n0WuPIqpsHEzXcjFV9+vqDWzf4mH6eglkrh/hXqu1rweN1gqZ8mRzyqBPu3GOd/A PhmcGcwTTYJBtYze4D1gCCAPRX5ron+jjBXu -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDYTCCAkmgAwIBAgIQCgEBAQAAAnwAAAAKAAAAAjANBgkqhkiG9w0BAQUFADA6 MRkwFwYDVQQKExBSU0EgU2VjdXJpdHkgSW5jMR0wGwYDVQQLExRSU0EgU2VjdXJp dHkgMjA0OCBWMzAeFw0wMTAyMjIyMDM5MjNaFw0yNjAyMjIyMDM5MjNaMDoxGTAX BgNVBAoTEFJTQSBTZWN1cml0eSBJbmMxHTAbBgNVBAsTFFJTQSBTZWN1cml0eSAy MDQ4IFYzMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAt49VcdKA3Xtp eafwGFAyPGJn9gqVB93mG/Oe2dJBVGutn3y+Gc37RqtBaB4Y6lXIL5F4iSj7Jylg /9+PjDvJSZu1pJTOAeo+tWN7fyb9Gd3AIb2E0S1PRsNO3Ng3OTsor8udGuorryGl wSMiuLgbWhOHV4PR8CDn6E8jQrAApX2J6elhc5SYcSa8LWrg903w8bYqODGBDSnh AMFRD0xS+ARaqn1y07iHKrtjEAMqs6FPDVpeRrc9DvV07Jmf+T0kgYim3WBU6JU2 PcYJk5qjEoAAVZkZR73QpXzDuvsf9/UP+Ky5tfQ3mBMY3oVbtwyCO4dvlTlYMNpu AWgXIszACwIDAQABo2MwYTAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIB BjAfBgNVHSMEGDAWgBQHw1EwpKrpRa41JPr/JCwz0LGdjDAdBgNVHQ4EFgQUB8NR MKSq6UWuNST6/yQsM9CxnYwwDQYJKoZIhvcNAQEFBQADggEBAF8+hnZuuDU8TjYc HnmYv/3VEhF5Ug7uMYm83X/50cYVIeiKAVQNOvtUudZj1LGqlk2iQk3UUx+LEN5/ Zb5gEydxiKRz44Rj0aRV4VCT5hsOedBnvEbIvz8XDZXmxpBp3ue0L96VfdASPz0+ f00/FGj1EVDVwfSQpQgdMWD/YIwjVAqv/qFuxdF6Kmh4zx6CCiC0H63lhbJqaHVO rSU3lIW+vaHU6rcMSzyd6BIA8F+sDeGscGNz9395nzIlQnQFgCi/vcEkllgVsRch 6YlL2weIZ/QVrXA+L02FO8K32/6YaCOJ4XQP3vTFhGMpG8zLB8kApKnXwiJPZ9d3 7CAFYd4= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDvDCCAqSgAwIBAgIQB1YipOjUiolN9BPI8PjqpTANBgkqhkiG9w0BAQUFADBK MQswCQYDVQQGEwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24x GTAXBgNVBAMTEFNlY3VyZSBHbG9iYWwgQ0EwHhcNMDYxMTA3MTk0MjI4WhcNMjkx MjMxMTk1MjA2WjBKMQswCQYDVQQGEwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3Qg Q29ycG9yYXRpb24xGTAXBgNVBAMTEFNlY3VyZSBHbG9iYWwgQ0EwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQCvNS7YrGxVaQZx5RNoJLNP2MwhR/jxYDiJ iQPpvepeRlMJ3Fz1Wuj3RSoC6zFh1ykzTM7HfAo3fg+6MpjhHZevj8fcyTiW89sa /FHtaMbQbqR8JNGuQsiWUGMu4P51/pinX0kuleM5M2SOHqRfkNJnPLLZ/kG5VacJ jnIFHovdRIWCQtBJwB1g8NEXLJXr9qXBkqPFwqcIYA1gBBCWeZ4WNOaptvolRTnI HmX5k/Wq8VLcmZg9pYYaDDUz+kulBAYVHDGA76oYa8J719rO+TMg1fW9ajMtgQT7 sFzUnKPiXB3jqUJ1XnvUd+85VLrJChgbEplJL4hL/VBi0XPnj3pDAgMBAAGjgZ0w gZowEwYJKwYBBAGCNxQCBAYeBABDAEEwCwYDVR0PBAQDAgGGMA8GA1UdEwEB/wQF MAMBAf8wHQYDVR0OBBYEFK9EBMJBfkiD2045AuzshHrmzsmkMDQGA1UdHwQtMCsw KaAnoCWGI2h0dHA6Ly9jcmwuc2VjdXJldHJ1c3QuY29tL1NHQ0EuY3JsMBAGCSsG AQQBgjcVAQQDAgEAMA0GCSqGSIb3DQEBBQUAA4IBAQBjGghAfaReUw132HquHw0L URYD7xh8yOOvaliTFGCRsoTciE6+OYo68+aCiV0BN7OrJKQVDpI1WkpEXk5X+nXO H0jOZvQ8QCaSmGwb7iRGDBezUqXbpZGRzzfTb+cnCDpOGR86p1hcF895P4vkp9Mm I50mD1hp/Ed+stCNi5O/KU9DaXR2Z0vPB4zmAve14bRDtUstFJ/53CYNv6ZHdAbY iNE6KTCEztI5gGIbqMdXSbxqVVFnFUq+NQfk1XWYN3kwFNspnWzFacxHVaIw98xc f8LDmBxrThaA63p4ZUWiABqvDA1VZDRIuJK58bRQKfJPIx/abKwfROHdI3hRW8cW -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDbTCCAlWgAwIBAgIBATANBgkqhkiG9w0BAQUFADBYMQswCQYDVQQGEwJKUDEr MCkGA1UEChMiSmFwYW4gQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcywgSW5jLjEcMBoG A1UEAxMTU2VjdXJlU2lnbiBSb290Q0ExMTAeFw0wOTA0MDgwNDU2NDdaFw0yOTA0 MDgwNDU2NDdaMFgxCzAJBgNVBAYTAkpQMSswKQYDVQQKEyJKYXBhbiBDZXJ0aWZp Y2F0aW9uIFNlcnZpY2VzLCBJbmMuMRwwGgYDVQQDExNTZWN1cmVTaWduIFJvb3RD QTExMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA/XeqpRyQBTvLTJsz i1oURaTnkBbR31fSIRCkF/3frNYfp+TbfPfs37gD2pRY/V1yfIw/XwFndBWW4wI8 h9uuywGOwvNmxoVF9ALGOrVisq/6nL+k5tSAMJjzDbaTj6nU2DbysPyKyiyhFTOV MdrAG/LuYpmGYz+/3ZMqg6h2uRMft85OQoWPIucuGvKVCbIFtUROd6EgvanyTgp9 UK31BQ1FT0Zx/Sg+U/sE2C3XZR1KG/rPO7AxmjVuyIsG0wCR8pQIZUyxNAYAeoni 8McDWc/V1uinMrPmmECGxc0nEovMe863ETxiYAcjPitAbpSACW22s293bzUIUPsC h8U+iQIDAQABo0IwQDAdBgNVHQ4EFgQUW/hNT7KlhtQ60vFjmqC+CfZXt94wDgYD VR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEB AKChOBZmLqdWHyGcBvod7bkixTgm2E5P7KN/ed5GIaGHd48HCJqypMWvDzKYC3xm KbabfSVSSUOrTC4rbnpwrxYO4wJs+0LmGJ1F2FXI6Dvd5+H0LgscNFxsWEr7jIhQ X5Ucv+2rIrVls4W6ng+4reV6G4pQOh29Dbx7VFALuUKvVaAYga1lme++5Jy/xIWr QbJUb9wlze144o4MjQlJ3WN7WmmWAiGovVJZ6X01y8hSyn+B/tlr0/cR7SXf+Of5 pPpyl4RTDaXQMhhRdlkUbA/r7F+AjHVDg8OFmP9Mni0N5HeDk061lgeLKBObjBmN QSdJQO7e5iNEOdyhIta6A/I= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDuDCCAqCgAwIBAgIQDPCOXAgWpa1Cf/DrJxhZ0DANBgkqhkiG9w0BAQUFADBI MQswCQYDVQQGEwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24x FzAVBgNVBAMTDlNlY3VyZVRydXN0IENBMB4XDTA2MTEwNzE5MzExOFoXDTI5MTIz MTE5NDA1NVowSDELMAkGA1UEBhMCVVMxIDAeBgNVBAoTF1NlY3VyZVRydXN0IENv cnBvcmF0aW9uMRcwFQYDVQQDEw5TZWN1cmVUcnVzdCBDQTCCASIwDQYJKoZIhvcN AQEBBQADggEPADCCAQoCggEBAKukgeWVzfX2FI7CT8rU4niVWJxB4Q2ZQCQXOZEz Zum+4YOvYlyJ0fwkW2Gz4BERQRwdbvC4u/jep4G6pkjGnx29vo6pQT64lO0pGtSO 0gMdA+9tDWccV9cGrcrI9f4Or2YlSASWC12juhbDCE/RRvgUXPLIXgGZbf2IzIao wW8xQmxSPmjL8xk037uHGFaAJsTQ3MBv396gwpEWoGQRS0S8Hvbn+mPeZqx2pHGj 7DaUaHp3pLHnDi+BeuK1cobvomuL8A/b01k/unK8RCSc43Oz969XL0Imnal0ugBS 8kvNU3xHCzaFDmapCJcWNFfBZveA4+1wVMeT4C4oFVmHursCAwEAAaOBnTCBmjAT BgkrBgEEAYI3FAIEBh4EAEMAQTALBgNVHQ8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB /zAdBgNVHQ4EFgQUQjK2FvoE/f5dS3rD/fdMQB1aQ68wNAYDVR0fBC0wKzApoCeg JYYjaHR0cDovL2NybC5zZWN1cmV0cnVzdC5jb20vU1RDQS5jcmwwEAYJKwYBBAGC NxUBBAMCAQAwDQYJKoZIhvcNAQEFBQADggEBADDtT0rhWDpSclu1pqNlGKa7UTt3 6Z3q059c4EVlew3KW+JwULKUBRSuSceNQQcSc5R+DCMh/bwQf2AQWnL1mA6s7Ll/ 3XpvXdMc9P+IBWlCqQVxyLesJugutIxq/3HcuLHfmbx8IVQr5Fiiu1cprp6poxkm D5kuCLDv/WnPmRoJjeOnnyvJNjR7JLN4TJUXpAYmHrZkUjZfYGfZnMUFdAvnZyPS CPyI6a6Lf+Ew9Dd+/cYy2i2eRDAwbO4H3tI0/NL/QPZL9GZGBlSm8jIKYyYwa5vR 3ItHuuG51WLQoqD0ZwV4KWMabwTW+MZMo5qxN7SN5ShLHZ4swrhovO0C7jE= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDfTCCAmWgAwIBAgIBADANBgkqhkiG9w0BAQUFADBgMQswCQYDVQQGEwJKUDEl MCMGA1UEChMcU0VDT00gVHJ1c3QgU3lzdGVtcyBDTy4sTFRELjEqMCgGA1UECxMh U2VjdXJpdHkgQ29tbXVuaWNhdGlvbiBFViBSb290Q0ExMB4XDTA3MDYwNjAyMTIz MloXDTM3MDYwNjAyMTIzMlowYDELMAkGA1UEBhMCSlAxJTAjBgNVBAoTHFNFQ09N IFRydXN0IFN5c3RlbXMgQ08uLExURC4xKjAoBgNVBAsTIVNlY3VyaXR5IENvbW11 bmljYXRpb24gRVYgUm9vdENBMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC ggEBALx/7FebJOD+nLpCeamIivqA4PUHKUPqjgo0No0c+qe1OXj/l3X3L+SqawSE RMqm4miO/VVQYg+kcQ7OBzgtQoVQrTyWb4vVog7P3kmJPdZkLjjlHmy1V4qe70gO zXppFodEtZDkBp2uoQSXWHnvIEqCa4wiv+wfD+mEce3xDuS4GBPMVjZd0ZoeUWs5 bmB2iDQL87PRsJ3KYeJkHcFGB7hj3R4zZbOOCVVSPbW9/wfrrWFVGCypaZhKqkDF MxRldAD5kd6vA0jFQFTcD4SQaCDFkpbcLuUCRarAX1T4bepJz11sS6/vmsJWXMY1 VkJqMF/Cq/biPT+zyRGPMUzXn0kCAwEAAaNCMEAwHQYDVR0OBBYEFDVK9U2vP9eC OKyrcWUXdYydVZPmMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MA0G CSqGSIb3DQEBBQUAA4IBAQCoh+ns+EBnXcPBZsdAS5f8hxOQWsTvoMpfi7ent/HW tWS3irO4G8za+6xmiEHO6Pzk2x6Ipu0nUBsCMCRGef4Eh3CXQHPRwMFXGZpppSeZ q51ihPZRwSzJIxXYKLerJRO1RuGGAv8mjMSIkh1W/hln8lXkgKNrnKt34VFxDSDb EJrbvXZ5B3eZKK2aXtqxT0QsNY6llsf9g/BYxnnWmHyojf6GPgcWkuF75x3sM3Z+ Qi5KhfmRiWiEA4Glm5q+4zfFVKtWOxgtQaQM+ELbmaDgcm+7XeEWT1MKZPlO9L9O VL14bIjqv5wTJMJwaaJ/D8g8rQjJsJhAoyrniIPtd490 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDWjCCAkKgAwIBAgIBADANBgkqhkiG9w0BAQUFADBQMQswCQYDVQQGEwJKUDEY MBYGA1UEChMPU0VDT00gVHJ1c3QubmV0MScwJQYDVQQLEx5TZWN1cml0eSBDb21t dW5pY2F0aW9uIFJvb3RDQTEwHhcNMDMwOTMwMDQyMDQ5WhcNMjMwOTMwMDQyMDQ5 WjBQMQswCQYDVQQGEwJKUDEYMBYGA1UEChMPU0VDT00gVHJ1c3QubmV0MScwJQYD VQQLEx5TZWN1cml0eSBDb21tdW5pY2F0aW9uIFJvb3RDQTEwggEiMA0GCSqGSIb3 DQEBAQUAA4IBDwAwggEKAoIBAQCzs/5/022x7xZ8V6UMbXaKL0u/ZPtM7orw8yl8 9f/uKuDp6bpbZCKamm8sOiZpUQWZJtzVHGpxxpp9Hp3dfGzGjGdnSj74cbAZJ6kJ DKaVv0uMDPpVmDvY6CKhS3E4eayXkmmziX7qIWgGmBSWh9JhNrxtJ1aeV+7AwFb9 Ms+k2Y7CI9eNqPPYJayX5HA49LY6tJ07lyZDo6G8SVlyTCMwhwFY9k6+HGhWZq/N QV3Is00qVUarH9oe4kA92819uZKAnDfdDJZkndwi92SL32HeFZRSFaB9UslLqCHJ xrHty8OVYNEP8Ktw+N/LTX7s1vqr2b1/VPKl6Xn62dZ2JChzAgMBAAGjPzA9MB0G A1UdDgQWBBSgc0mZaNyFW2XjmygvV5+9M7wHSDALBgNVHQ8EBAMCAQYwDwYDVR0T AQH/BAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAaECpqLvkT115swW1F7NgE+vG kl3g0dNq/vu+m22/xwVtWSDEHPC32oRYAmP6SBbvT6UL90qY8j+eG61Ha2POCEfr Uj94nK9NrvjVT8+amCoQQTlSxN3Zmw7vkwGusi7KaEIkQmywszo+zenaSMQVy+n5 Bw+SUEmK3TGXX8npN6o7WWWXlDLJs58+OmJYxUmtYg5xpTKqL8aJdkNAExNnPaJU JRDL8Try2frbSVa7pv6nQTXD4IhhyYjH3zYQIphZ6rBK+1YWc26sTfcioU+tHXot RSflMMFe8toTyyVCUZVHA4xsIcx0Qu1T/zOLjw9XARYvz6buyXAiFL39vmwLAw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDdzCCAl+gAwIBAgIBADANBgkqhkiG9w0BAQsFADBdMQswCQYDVQQGEwJKUDEl MCMGA1UEChMcU0VDT00gVHJ1c3QgU3lzdGVtcyBDTy4sTFRELjEnMCUGA1UECxMe U2VjdXJpdHkgQ29tbXVuaWNhdGlvbiBSb290Q0EyMB4XDTA5MDUyOTA1MDAzOVoX DTI5MDUyOTA1MDAzOVowXTELMAkGA1UEBhMCSlAxJTAjBgNVBAoTHFNFQ09NIFRy dXN0IFN5c3RlbXMgQ08uLExURC4xJzAlBgNVBAsTHlNlY3VyaXR5IENvbW11bmlj YXRpb24gUm9vdENBMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANAV OVKxUrO6xVmCxF1SrjpDZYBLx/KWvNs2l9amZIyoXvDjChz335c9S672XewhtUGr zbl+dp+++T42NKA7wfYxEUV0kz1XgMX5iZnK5atq1LXaQZAQwdbWQonCv/Q4EpVM VAX3NuRFg3sUZdbcDE3R3n4MqzvEFb46VqZab3ZpUql6ucjrappdUtAtCms1FgkQ hNBqyjoGADdH5H5XTz+L62e4iKrFvlNVspHEfbmwhRkGeC7bYRr6hfVKkaHnFtWO ojnflLhwHyg/i/xAXmODPIMqGplrz95Zajv8bxbXH/1KEOtOghY6rCcMU/Gt1SSw awNQwS08Ft1ENCcadfsCAwEAAaNCMEAwHQYDVR0OBBYEFAqFqXdlBZh8QIH4D5cs OPEK7DzPMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3 DQEBCwUAA4IBAQBMOqNErLlFsceTfsgLCkLfZOoc7llsCLqJX2rKSpWeeo8HxdpF coJxDjrSzG+ntKEju/Ykn8sX/oymzsLS28yN/HH8AynBbF0zX2S2ZTuJbxh2ePXc okgfGT+Ok+vx+hfuzU7jBBJV1uXk3fs+BXziHV7Gp7yXT2g69ekuCkO2r1dcYmh8 t/2jioSgrGK+KwmHNPBqAbubKVY8/gA3zyNs8U6qtnRGEmyR7jTV7JqR50S+kDFy 1UkC9gLl9B/rfNmWVan/7Ir5mUf/NVoCqgTLiluHcSmRvaS0eg29mvVXIwAHIRc/ SjnRBUkLp7Y3gaVdjKozXoEofKd9J+sAro03 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDIDCCAgigAwIBAgIBJDANBgkqhkiG9w0BAQUFADA5MQswCQYDVQQGEwJGSTEP MA0GA1UEChMGU29uZXJhMRkwFwYDVQQDExBTb25lcmEgQ2xhc3MxIENBMB4XDTAx MDQwNjEwNDkxM1oXDTIxMDQwNjEwNDkxM1owOTELMAkGA1UEBhMCRkkxDzANBgNV BAoTBlNvbmVyYTEZMBcGA1UEAxMQU29uZXJhIENsYXNzMSBDQTCCASIwDQYJKoZI hvcNAQEBBQADggEPADCCAQoCggEBALWJHytPZwp5/8Ue+H887dF+2rDNbS82rDTG 29lkFwhjMDMiikzujrsPDUJVyZ0upe/3p4zDq7mXy47vPxVnqIJyY1MPQYx9EJUk oVqlBvqSV536pQHydekfvFYmUk54GWVYVQNYwBSujHxVX3BbdyMGNpfzJLWaRpXk 3w0LBUXl0fIdgrvGE+D+qnr9aTCU89JFhfzyMlsy3uhsXR/LpCJ0sICOXZT3BgBL qdReLjVQCfOAl/QMF6452F/NM8EcyonCIvdFEu1eEpOdY6uCLrnrQkFEy0oaAIIN nvmLVz5MxxftLItyM19yejhW1ebZrgUaHXVFsculJRwSVzb9IjcCAwEAAaMzMDEw DwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQIR+IMi/ZTiFIwCwYDVR0PBAQDAgEG MA0GCSqGSIb3DQEBBQUAA4IBAQCLGrLJXWG04bkruVPRsoWdd44W7hE928Jj2VuX ZfsSZ9gqXLar5V7DtxYvyOirHYr9qxp81V9jz9yw3Xe5qObSIjiHBxTZ/75Wtf0H DjxVyhbMp6Z3N/vbXB9OWQaHowND9Rart4S9Tu+fMTfwRvFAttEMpWT4Y14h21VO TzF2nBBhjrZTOqMRvq9tfB69ri3iDGnHhVNoomG6xT60eVR4ngrHAr5i0RGCS2Uv kVrCqIexVmiUefkl98HVrhq4uz2PqYo4Ffdz0Fpg0YCw8NzVUM1O7pJIae2yIx4w zMiUyLb1O4Z/P6Yun/Y+LLWSlj7fLJOK/4GMDw9ZIRlXvVWa -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDIDCCAgigAwIBAgIBHTANBgkqhkiG9w0BAQUFADA5MQswCQYDVQQGEwJGSTEP MA0GA1UEChMGU29uZXJhMRkwFwYDVQQDExBTb25lcmEgQ2xhc3MyIENBMB4XDTAx MDQwNjA3Mjk0MFoXDTIxMDQwNjA3Mjk0MFowOTELMAkGA1UEBhMCRkkxDzANBgNV BAoTBlNvbmVyYTEZMBcGA1UEAxMQU29uZXJhIENsYXNzMiBDQTCCASIwDQYJKoZI hvcNAQEBBQADggEPADCCAQoCggEBAJAXSjWdyvANlsdE+hY3/Ei9vX+ALTU74W+o Z6m/AxxNjG8yR9VBaKQTBME1DJqEQ/xcHf+Js+gXGM2RX/uJ4+q/Tl18GybTdXnt 5oTjV+WtKcT0OijnpXuENmmz/V52vaMtmdOQTiMofRhj8VQ7Jp12W5dCsv+u8E7s 3TmVToMGf+dJQMjFAbJUWmYdPfz56TwKnoG4cPABi+QjVHzIrviQHgCWctRUz2Ej vOr7nQKV0ba5cTppCD8PtOFCx4j1P5iop7oc4HFx71hXgVB6XGt0Rg6DA5jDjqhu 8nYybieDwnPz3BjotJPqdURrBGAgcVeHnfO+oJAjPYok4doh28MCAwEAAaMzMDEw DwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQISqCqWITTXjwwCwYDVR0PBAQDAgEG MA0GCSqGSIb3DQEBBQUAA4IBAQBazof5FnIVV0sd2ZvnoiYw7JNn39Yt0jSv9zil zqsWuasvfDXLrNAPtEwr/IDva4yRXzZ299uzGxnq9LIR/WFxRL8oszodv7ND6J+/ 3DEIcbCdjdY0RzKQxmUk96BKfARzjzlvF4xytb1LyHr4e4PDKE6cCepnP7JnBBvD FNr450kkkdAdavphOe9r5yF1BgfYErQhIHBCcYHaPJo2vqZbDWpsmh+Re/n570K6 Tk6ezAyNlNzZRZxe7EJQY670XcSxEtzKO6gunRRaBXW37Ndj4ro1tgQIkejanZz2 ZrUYrAqmVCY0M9IbwdR/GjqOC6oybtv8TyWf2TLHllpwrN9M -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDujCCAqKgAwIBAgIEAJiWijANBgkqhkiG9w0BAQUFADBVMQswCQYDVQQGEwJO TDEeMBwGA1UEChMVU3RhYXQgZGVyIE5lZGVybGFuZGVuMSYwJAYDVQQDEx1TdGFh dCBkZXIgTmVkZXJsYW5kZW4gUm9vdCBDQTAeFw0wMjEyMTcwOTIzNDlaFw0xNTEy MTYwOTE1MzhaMFUxCzAJBgNVBAYTAk5MMR4wHAYDVQQKExVTdGFhdCBkZXIgTmVk ZXJsYW5kZW4xJjAkBgNVBAMTHVN0YWF0IGRlciBOZWRlcmxhbmRlbiBSb290IENB MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmNK1URF6gaYUmHFtvszn ExvWJw56s2oYHLZhWtVhCb/ekBPHZ+7d89rFDBKeNVU+LCeIQGv33N0iYfXCxw71 9tV2U02PjLwYdjeFnejKScfST5gTCaI+Ioicf9byEGW07l8Y1Rfj+MX94p2i71MO hXeiD+EwR+4A5zN9RGcaC1Hoi6CeUJhoNFIfLm0B8mBF8jHrqTFoKbt6QZ7GGX+U tFE5A3+y3qcym7RHjm+0Sq7lr7HcsBthvJly3uSJt3omXdozSVtSnA71iq3DuD3o BmrC1SoLbHuEvVYFy4ZlkuxEK7COudxwC0barbxjiDn622r+I/q85Ej0ZytqERAh SQIDAQABo4GRMIGOMAwGA1UdEwQFMAMBAf8wTwYDVR0gBEgwRjBEBgRVHSAAMDww OgYIKwYBBQUHAgEWLmh0dHA6Ly93d3cucGtpb3ZlcmhlaWQubmwvcG9saWNpZXMv cm9vdC1wb2xpY3kwDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBSofeu8Y6R0E3QA 7Jbg0zTBLL9s+DANBgkqhkiG9w0BAQUFAAOCAQEABYSHVXQ2YcG70dTGFagTtJ+k /rvuFbQvBgwp8qiSpGEN/KtcCFtREytNwiphyPgJWPwtArI5fZlmgb9uXJVFIGzm eafR2Bwp/MIgJ1HI8XxdNGdphREwxgDS1/PTfLbwMVcoEoJz6TMvplW0C5GUR5z6 u3pCMuiufi3IvKwUv9kP2Vv8wfl6leF9fpb8cbDCTMjfRTTJzg3ynGQI0DvDKcWy 7ZAEwbEpkcUwb8GpcjPM/l0WFywRaed+/sWDCN+83CI6LiBpIzlWYGeQiy52OfsR iJf2fL1LuCAWZwWN4jvBcj+UlTfHXbme2JOhF4//DGYVwSR8MnwDHTuhWEUykw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFyjCCA7KgAwIBAgIEAJiWjDANBgkqhkiG9w0BAQsFADBaMQswCQYDVQQGEwJO TDEeMBwGA1UECgwVU3RhYXQgZGVyIE5lZGVybGFuZGVuMSswKQYDVQQDDCJTdGFh dCBkZXIgTmVkZXJsYW5kZW4gUm9vdCBDQSAtIEcyMB4XDTA4MDMyNjExMTgxN1oX DTIwMDMyNTExMDMxMFowWjELMAkGA1UEBhMCTkwxHjAcBgNVBAoMFVN0YWF0IGRl ciBOZWRlcmxhbmRlbjErMCkGA1UEAwwiU3RhYXQgZGVyIE5lZGVybGFuZGVuIFJv b3QgQ0EgLSBHMjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMVZ5291 qj5LnLW4rJ4L5PnZyqtdj7U5EILXr1HgO+EASGrP2uEGQxGZqhQlEq0i6ABtQ8Sp uOUfiUtnvWFI7/3S4GCI5bkYYCjDdyutsDeqN95kWSpGV+RLufg3fNU254DBtvPU Z5uW6M7XxgpT0GtJlvOjCwV3SPcl5XCsMBQgJeN/dVrlSPhOewMHBPqCYYdu8DvE pMfQ9XQ+pV0aCPKbJdL2rAQmPlU6Yiile7Iwr/g3wtG61jj99O9JMDeZJiFIhQGp 5Rbn3JBV3w/oOM2ZNyFPXfUib2rFEhZgF1XyZWampzCROME4HYYEhLoaJXhena/M UGDWE4dS7WMfbWV9whUYdMrhfmQpjHLYFhN9C0lK8SgbIHRrxT3dsKpICT0ugpTN GmXZK4iambwYfp/ufWZ8Pr2UuIHOzZgweMFvZ9C+X+Bo7d7iscksWXiSqt8rYGPy 5V6548r6f1CGPqI0GAwJaCgRHOThuVw+R7oyPxjMW4T182t0xHJ04eOLoEq9jWYv 6q012iDTiIJh8BIitrzQ1aTsr1SIJSQ8p22xcik/Plemf1WvbibG/ufMQFxRRIEK eN5KzlW/HdXZt1bv8Hb/C3m1r737qWmRRpdogBQ2HbN/uymYNqUg+oJgYjOk7Na6 B6duxc8UpufWkjTYgfX8HV2qXB72o007uPc5AgMBAAGjgZcwgZQwDwYDVR0TAQH/ BAUwAwEB/zBSBgNVHSAESzBJMEcGBFUdIAAwPzA9BggrBgEFBQcCARYxaHR0cDov L3d3dy5wa2lvdmVyaGVpZC5ubC9wb2xpY2llcy9yb290LXBvbGljeS1HMjAOBgNV HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJFoMocVHYnitfGsNig0jQt8YojrMA0GCSqG SIb3DQEBCwUAA4ICAQCoQUpnKpKBglBu4dfYszk78wIVCVBR7y29JHuIhjv5tLyS CZa59sCrI2AGeYwRTlHSeYAz+51IvuxBQ4EffkdAHOV6CMqqi3WtFMTC6GY8ggen 5ieCWxjmD27ZUD6KQhgpxrRW/FYQoAUXvQwjf/ST7ZwaUb7dRUG/kSS0H4zpX897 IZmflZ85OkYcbPnNe5yQzSipx6lVu6xiNGI1E0sUOlWDuYaNkqbG9AclVMwWVxJK gnjIFNkXgiYtXSAfea7+1HAWFpWD2DU5/1JddRwWxRNVz0fMdWVSSt7wsKfkCpYL +63C4iWEst3kvX5ZbJvw8NjnyvLplzh+ib7M+zkXYT9y2zqR2GUBGR2tUKRXCnxL vJxxcypFURmFzI79R6d0lR2o0a9OF7FpJsKqeFdbxU2n5Z4FF5TKsl+gSRiNNOkm bEgeqmiSBeGCc1qb3AdbCG19ndeNIdn8FCCqwkXfP+cAslHkwvgFuXkajDTznlvk N1trSt8sV4pAWja63XVECDdCcAz+3F4hoKOKwJCcaNpQ5kUQR3i2TtJlycM33+FC Y7BXN0Ute4qcvwXqZVUz9zkQxSgqIXobisQk+T8VyJoVIPVVYpbtbZNQvOSqeK3Z ywplh6ZmwcSBo3c6WB4L7oOLnR7SUqTMHW+wmG2UMbX4cQrcufx9MmDm66+KAQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEDzCCAvegAwIBAgIBADANBgkqhkiG9w0BAQUFADBoMQswCQYDVQQGEwJVUzEl MCMGA1UEChMcU3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjEyMDAGA1UECxMp U3RhcmZpZWxkIENsYXNzIDIgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDQw NjI5MTczOTE2WhcNMzQwNjI5MTczOTE2WjBoMQswCQYDVQQGEwJVUzElMCMGA1UE ChMcU3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjEyMDAGA1UECxMpU3RhcmZp ZWxkIENsYXNzIDIgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggEgMA0GCSqGSIb3 DQEBAQUAA4IBDQAwggEIAoIBAQC3Msj+6XGmBIWtDBFk385N78gDGIc/oav7PKaf 8MOh2tTYbitTkPskpD6E8J7oX+zlJ0T1KKY/e97gKvDIr1MvnsoFAZMej2YcOadN +lq2cwQlZut3f+dZxkqZJRRU6ybH838Z1TBwj6+wRir/resp7defqgSHo9T5iaU0 X9tDkYI22WY8sbi5gv2cOj4QyDvvBmVmepsZGD3/cVE8MC5fvj13c7JdBmzDI1aa K4UmkhynArPkPw2vCHmCuDY96pzTNbO8acr1zJ3o/WSNF4Azbl5KXZnJHoe0nRrA 1W4TNSNe35tfPe/W93bC6j67eA0cQmdrBNj41tpvi/JEoAGrAgEDo4HFMIHCMB0G A1UdDgQWBBS/X7fRzt0fhvRbVazc1xDCDqmI5zCBkgYDVR0jBIGKMIGHgBS/X7fR zt0fhvRbVazc1xDCDqmI56FspGowaDELMAkGA1UEBhMCVVMxJTAjBgNVBAoTHFN0 YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xMjAwBgNVBAsTKVN0YXJmaWVsZCBD bGFzcyAyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5ggEAMAwGA1UdEwQFMAMBAf8w DQYJKoZIhvcNAQEFBQADggEBAAWdP4id0ckaVaGsafPzWdqbAYcaT1epoXkJKtv3 L7IezMdeatiDh6GX70k1PncGQVhiv45YuApnP+yz3SFmH8lU+nLMPUxA2IGvd56D eruix/U0F47ZEUD0/CwqTRV/p2JdLiXTAAsgGh1o+Re49L2L7ShZ3U0WixeDyLJl xy16paq8U4Zt3VekyvggQQto8PT7dL5WXXp59fkdheMtlb71cZBDzI0fmgAKhynp VSJYACPq4xJDKVtHCN2MQWplBqjlIapBtJUhlbl90TSrE9atvNziPTnNvT51cKEY WQPJIrSPnNVeKtelttQKbfi3QBFGmh95DmK/D5fs4C8fF5Q= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID3TCCAsWgAwIBAgIBADANBgkqhkiG9w0BAQsFADCBjzELMAkGA1UEBhMCVVMx EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoT HFN0YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xMjAwBgNVBAMTKVN0YXJmaWVs ZCBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5MDkwMTAwMDAw MFoXDTM3MTIzMTIzNTk1OVowgY8xCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6 b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxTdGFyZmllbGQgVGVj aG5vbG9naWVzLCBJbmMuMTIwMAYDVQQDEylTdGFyZmllbGQgUm9vdCBDZXJ0aWZp Y2F0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC ggEBAL3twQP89o/8ArFvW59I2Z154qK3A2FWGMNHttfKPTUuiUP3oWmb3ooa/RMg nLRJdzIpVv257IzdIvpy3Cdhl+72WoTsbhm5iSzchFvVdPtrX8WJpRBSiUZV9Lh1 HOZ/5FSuS/hVclcCGfgXcVnrHigHdMWdSL5stPSksPNkN3mSwOxGXn/hbVNMYq/N Hwtjuzqd+/x5AJhhdM8mgkBj87JyahkNmcrUDnXMN/uLicFZ8WJ/X7NfZTD4p7dN dloedl40wOiWVpmKs/B/pM293DIxfJHP4F8R+GuqSVzRmZTRouNjWwl2tVZi4Ut0 HZbUJtQIBFnQmA4O5t78w+wfkPECAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAO BgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFHwMMh+n2TB/xH1oo2Kooc6rB1snMA0G CSqGSIb3DQEBCwUAA4IBAQARWfolTwNvlJk7mh+ChTnUdgWUXuEok21iXQnCoKjU sHU48TRqneSfioYmUeYs0cYtbpUgSpIB7LiKZ3sx4mcujJUDJi5DnUox9g61DLu3 4jd/IroAow57UvtruzvE03lRTs2Q9GcHGcg8RnoNAX3FWOdt5oUwF5okxBDgBPfg 8n/Uqgr/Qh037ZTlZFkSIHc40zI+OIF1lnP6aI+xy84fxez6nH7PfrHxBy22/L/K pL/QlwVKvOoYKAKQvVR4CSFx09F9HdkWsKlhPdAKACL8x3vLCWRFCztAgfd9fDL1 mMpYjn0q7pBZc2T5NnReJaH1ZgUufzkVqSr7UIuOhWn0 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID7zCCAtegAwIBAgIBADANBgkqhkiG9w0BAQsFADCBmDELMAkGA1UEBhMCVVMx EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoT HFN0YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xOzA5BgNVBAMTMlN0YXJmaWVs ZCBTZXJ2aWNlcyBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5 MDkwMTAwMDAwMFoXDTM3MTIzMTIzNTk1OVowgZgxCzAJBgNVBAYTAlVTMRAwDgYD VQQIEwdBcml6b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxTdGFy ZmllbGQgVGVjaG5vbG9naWVzLCBJbmMuMTswOQYDVQQDEzJTdGFyZmllbGQgU2Vy dmljZXMgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQYJKoZI hvcNAQEBBQADggEPADCCAQoCggEBANUMOsQq+U7i9b4Zl1+OiFOxHz/Lz58gE20p OsgPfTz3a3Y4Y9k2YKibXlwAgLIvWX/2h/klQ4bnaRtSmpDhcePYLQ1Ob/bISdm2 8xpWriu2dBTrz/sm4xq6HZYuajtYlIlHVv8loJNwU4PahHQUw2eeBGg6345AWh1K Ts9DkTvnVtYAcMtS7nt9rjrnvDH5RfbCYM8TWQIrgMw0R9+53pBlbQLPLJGmpufe hRhJfGZOozptqbXuNC66DQO4M99H67FrjSXZm86B0UVGMpZwh94CDklDhbZsc7tk 6mFBrMnUVN+HL8cisibMn1lUaJ/8viovxFUcdUBgF4UCVTmLfwUCAwEAAaNCMEAw DwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJxfAN+q AdcwKziIorhtSpzyEZGDMA0GCSqGSIb3DQEBCwUAA4IBAQBLNqaEd2ndOxmfZyMI bw5hyf2E3F/YNoHN2BtBLZ9g3ccaaNnRbobhiCPPE95Dz+I0swSdHynVv/heyNXB ve6SbzJ08pGCL72CQnqtKrcgfU28elUSwhXqvfdqlS5sdJ/PHLTyxQGjhdByPq1z qwubdQxtRbeOlKyWN7Wg0I8VRw7j6IPdj/3vQQF3zCepYoUz8jcI73HPdwbeyBkd iEDPfUYd/x7H4c7/I9vG+o1VTqkC50cRRj70/b17KSa7qWFiNyi2LSr2EIZkyXCn 0q23KXB56jzaYyWf/Wi3MOxw+3WKt21gZ7IeyLnp2KhvAotnDU0mV3HaIPzBSlCN sSi6 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIHhzCCBW+gAwIBAgIBLTANBgkqhkiG9w0BAQsFADB9MQswCQYDVQQGEwJJTDEW MBQGA1UEChMNU3RhcnRDb20gTHRkLjErMCkGA1UECxMiU2VjdXJlIERpZ2l0YWwg Q2VydGlmaWNhdGUgU2lnbmluZzEpMCcGA1UEAxMgU3RhcnRDb20gQ2VydGlmaWNh dGlvbiBBdXRob3JpdHkwHhcNMDYwOTE3MTk0NjM3WhcNMzYwOTE3MTk0NjM2WjB9 MQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRkLjErMCkGA1UECxMi U2VjdXJlIERpZ2l0YWwgQ2VydGlmaWNhdGUgU2lnbmluZzEpMCcGA1UEAxMgU3Rh cnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUA A4ICDwAwggIKAoICAQDBiNsJvGxGfHiflXu1M5DycmLWwTYgIiRezul38kMKogZk pMyONvg45iPwbm2xPN1yo4UcodM9tDMr0y+v/uqwQVlntsQGfQqedIXWeUyAN3rf OQVSWff0G0ZDpNKFhdLDcfN1YjS6LIp/Ho/u7TTQEceWzVI9ujPW3U3eCztKS5/C Ji/6tRYccjV3yjxd5srhJosaNnZcAdt0FCX+7bWgiA/deMotHweXMAEtcnn6RtYT Kqi5pquDSR3l8u/d5AGOGAqPY1MWhWKpDhk6zLVmpsJrdAfkK+F2PrRt2PZE4XNi HzvEvqBTViVsUQn3qqvKv3b9bZvzndu/PWa8DFaqr5hIlTpL36dYUNk4dalb6kMM Av+Z6+hsTXBbKWWc3apdzK8BMewM69KN6Oqce+Zu9ydmDBpI125C4z/eIT574Q1w +2OqqGwaVLRcJXrJosmLFqa7LH4XXgVNWG4SHQHuEhANxjJ/GP/89PrNbpHoNkm+ Gkhpi8KWTRoSsmkXwQqQ1vp5Iki/untp+HDH+no32NgN0nZPV/+Qt+OR0t3vwmC3 Zzrd/qqc8NSLf3Iizsafl7b4r4qgEKjZ+xjGtrVcUjyJthkqcwEKDwOzEmDyei+B 26Nu/yYwl/WL3YlXtq09s68rxbd2AvCl1iuahhQqcvbjM4xdCUsT37uMdBNSSwID AQABo4ICEDCCAgwwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYD VR0OBBYEFE4L7xqkQFulF2mHMMo0aEPQQa7yMB8GA1UdIwQYMBaAFE4L7xqkQFul F2mHMMo0aEPQQa7yMIIBWgYDVR0gBIIBUTCCAU0wggFJBgsrBgEEAYG1NwEBATCC ATgwLgYIKwYBBQUHAgEWImh0dHA6Ly93d3cuc3RhcnRzc2wuY29tL3BvbGljeS5w ZGYwNAYIKwYBBQUHAgEWKGh0dHA6Ly93d3cuc3RhcnRzc2wuY29tL2ludGVybWVk aWF0ZS5wZGYwgc8GCCsGAQUFBwICMIHCMCcWIFN0YXJ0IENvbW1lcmNpYWwgKFN0 YXJ0Q29tKSBMdGQuMAMCAQEagZZMaW1pdGVkIExpYWJpbGl0eSwgcmVhZCB0aGUg c2VjdGlvbiAqTGVnYWwgTGltaXRhdGlvbnMqIG9mIHRoZSBTdGFydENvbSBDZXJ0 aWZpY2F0aW9uIEF1dGhvcml0eSBQb2xpY3kgYXZhaWxhYmxlIGF0IGh0dHA6Ly93 d3cuc3RhcnRzc2wuY29tL3BvbGljeS5wZGYwEQYJYIZIAYb4QgEBBAQDAgAHMDgG CWCGSAGG+EIBDQQrFilTdGFydENvbSBGcmVlIFNTTCBDZXJ0aWZpY2F0aW9uIEF1 dGhvcml0eTANBgkqhkiG9w0BAQsFAAOCAgEAjo/n3JR5fPGFf59Jb2vKXfuM/gTF wWLRfUKKvFO3lANmMD+x5wqnUCBVJX92ehQN6wQOQOY+2IirByeDqXWmN3PH/UvS Ta0XQMhGvjt/UfzDtgUx3M2FIk5xt/JxXrAaxrqTi3iSSoX4eA+D/i+tLPfkpLst 0OcNOrg+zvZ49q5HJMqjNTbOx8aHmNrs++myziebiMMEofYLWWivydsQD032ZGNc pRJvkrKTlMeIFw6Ttn5ii5B/q06f/ON1FE8qMt9bDeD1e5MNq6HPh+GlBEXoPBKl CcWw0bdT82AUuoVpaiF8H3VhFyAXe2w7QSlc4axa0c2Mm+tgHRns9+Ww2vl5GKVF P0lDV9LdJNUso/2RjSe15esUBppMeyG7Oq0wBhjA2MFrLH9ZXF2RsXAiV+uKa0hK 1Q8p7MZAwC+ITGgBF3f0JBlPvfrhsiAhS90a2Cl9qrjeVOwhVYBsHvUwyKMQ5bLm KhQxw4UtjJixhlpPiVktucf3HMiKf8CdBUrmQk9io20ppB+Fq9vlgcitKj1MXVuE JnHEhV5xJMqlG2zYYdMa4FTbzrqpMrUi9nNBCV24F10OD5mQ1kfabwo6YigUZ4LZ 8dCAWZvLMdibD4x3TrVoivJs9iQOLWxwxXPR3hTQcY+203sC9uO41Alua551hDnm fyWl8kgAwKQB2j8= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFYzCCA0ugAwIBAgIBOzANBgkqhkiG9w0BAQsFADBTMQswCQYDVQQGEwJJTDEW MBQGA1UEChMNU3RhcnRDb20gTHRkLjEsMCoGA1UEAxMjU3RhcnRDb20gQ2VydGlm aWNhdGlvbiBBdXRob3JpdHkgRzIwHhcNMTAwMTAxMDEwMDAxWhcNMzkxMjMxMjM1 OTAxWjBTMQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRkLjEsMCoG A1UEAxMjU3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgRzIwggIiMA0G CSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC2iTZbB7cgNr2Cu+EWIAOVeq8Oo1XJ JZlKxdBWQYeQTSFgpBSHO839sj60ZwNq7eEPS8CRhXBF4EKe3ikj1AENoBB5uNsD vfOpL9HG4A/LnooUCri99lZi8cVytjIl2bLzvWXFDSxu1ZJvGIsAQRSCb0AgJnoo D/Uefyf3lLE3PbfHkffiAez9lInhzG7TNtYKGXmu1zSCZf98Qru23QumNK9LYP5/ Q0kGi4xDuFby2X8hQxfqp0iVAXV16iulQ5XqFYSdCI0mblWbq9zSOdIxHWDirMxW RST1HFSr7obdljKF+ExP6JV2tgXdNiNnvP8V4so75qbsO+wmETRIjfaAKxojAuuK HDp2KntWFhxyKrOq42ClAJ8Em+JvHhRYW6Vsi1g8w7pOOlz34ZYrPu8HvKTlXcxN nw3h3Kq74W4a7I/htkxNeXJdFzULHdfBR9qWJODQcqhaX2YtENwvKhOuJv4KHBnM 0D4LnMgJLvlblnpHnOl68wVQdJVznjAJ85eCXuaPOQgeWeU1FEIT/wCc976qUM/i UUjXuG+v+E5+M5iSFGI6dWPPe/regjupuznixL0sAA7IF6wT700ljtizkC+p2il9 Ha90OrInwMEePnWjFqmveiJdnxMaz6eg6+OGCtP95paV1yPIN93EfKo2rJgaErHg TuixO/XWb/Ew1wIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE AwIBBjAdBgNVHQ4EFgQUS8W0QGutHLOlHGVuRjaJhwUMDrYwDQYJKoZIhvcNAQEL BQADggIBAHNXPyzVlTJ+N9uWkusZXn5T50HsEbZH77Xe7XRcxfGOSeD8bpkTzZ+K 2s06Ctg6Wgk/XzTQLwPSZh0avZyQN8gMjgdalEVGKua+etqhqaRpEpKwfTbURIfX UfEpY9Z1zRbkJ4kd+MIySP3bmdCPX1R0zKxnNBFi2QwKN4fRoxdIjtIXHfbX/dtl 6/2o1PXWT6RbdejF0mCy2wl+JYt7ulKSnj7oxXehPOBKc2thz4bcQ///If4jXSRK 9dNtD2IEBVeC2m6kMyV5Sy5UGYvMLD0w6dEG/+gyRr61M3Z3qAFdlsHB1b6uJcDJ HgoJIIihDsnzb02CVAAgp9KP5DlUFy6NHrgbuxu9mk47EDTcnIhT76IxW1hPkWLI wpqazRVdOKnWvvgTtZ8SafJQYqz7Fzf07rh1Z2AQ+4NQ+US1dZxAF7L+/XldblhY XzD8AK6vM8EOTmy6p6ahfzLbOOCxchcKK5HsamMm7YnUeMx0HgX4a/6ManY5Ka5l IxKVCCIcl85bBu4M4ru8H0ST9tg4RQUh7eStqxK2A6RCLi3ECToDZ2mEmuFZkIoo hdVddLHRDiBYmxOlsGOm7XtH/UVVMKTumtTm4ofvmMkyghEpIrwACjFeLQ/Ajulr so8uBtjRkcfGEvRM/TAXw8HaOFvjqermobp573PYtlNXLfbQ4ddI -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEezCCA2OgAwIBAgIQNxkY5lNUfBq1uMtZWts1tzANBgkqhkiG9w0BAQUFADCB rjELMAkGA1UEBhMCREUxIDAeBgNVBAgTF0JhZGVuLVd1ZXJ0dGVtYmVyZyAoQlcp MRIwEAYDVQQHEwlTdHV0dGdhcnQxKTAnBgNVBAoTIERldXRzY2hlciBTcGFya2Fz c2VuIFZlcmxhZyBHbWJIMT4wPAYDVQQDEzVTLVRSVVNUIEF1dGhlbnRpY2F0aW9u IGFuZCBFbmNyeXB0aW9uIFJvb3QgQ0EgMjAwNTpQTjAeFw0wNTA2MjIwMDAwMDBa Fw0zMDA2MjEyMzU5NTlaMIGuMQswCQYDVQQGEwJERTEgMB4GA1UECBMXQmFkZW4t V3VlcnR0ZW1iZXJnIChCVykxEjAQBgNVBAcTCVN0dXR0Z2FydDEpMCcGA1UEChMg RGV1dHNjaGVyIFNwYXJrYXNzZW4gVmVybGFnIEdtYkgxPjA8BgNVBAMTNVMtVFJV U1QgQXV0aGVudGljYXRpb24gYW5kIEVuY3J5cHRpb24gUm9vdCBDQSAyMDA1OlBO MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2bVKwdMz6tNGs9HiTNL1 toPQb9UY6ZOvJ44TzbUlNlA0EmQpoVXhOmCTnijJ4/Ob4QSwI7+Vio5bG0F/WsPo TUzVJBY+h0jUJ67m91MduwwA7z5hca2/OnpYH5Q9XIHV1W/fuJvS9eXLg3KSwlOy ggLrra1fFi2SU3bxibYs9cEv4KdKb6AwajLrmnQDaHgTncovmwsdvs91DSaXm8f1 XgqfeN+zvOyauu9VjxuapgdjKRdZYgkqeQd3peDRF2npW932kKvimAoA0SVtnteF hy+S8dF2g08LOlk3KC8zpxdQ1iALCvQm+Z845y2kuJuJja2tyWp9iRe79n+Ag3rm 7QIDAQABo4GSMIGPMBIGA1UdEwEB/wQIMAYBAf8CAQAwDgYDVR0PAQH/BAQDAgEG MCkGA1UdEQQiMCCkHjAcMRowGAYDVQQDExFTVFJvbmxpbmUxLTIwNDgtNTAdBgNV HQ4EFgQUD8oeXHngovMpttKFswtKtWXsa1IwHwYDVR0jBBgwFoAUD8oeXHngovMp ttKFswtKtWXsa1IwDQYJKoZIhvcNAQEFBQADggEBAK8B8O0ZPCjoTVy7pWMciDMD pwCHpB8gq9Yc4wYfl35UvbfRssnV2oDsF9eK9XvCAPbpEW+EoFolMeKJ+aQAPzFo LtU96G7m1R08P7K9n3frndOMusDXtk3sU5wPBG7qNWdX4wple5A64U8+wwCSersF iXOMy6ZNwPv2AtawB6MDwidAnwzkhYItr5pCHdDHjfhA7p0GVxzZotiAFP7hYy0y h9WUUpY6RsZxlj33mA6ykaqP2vROJAA5VeitF7nTNCtKqUDMFypVZUF0Qn71wK/I k63yGFs9iQzbRzkk+OBM8h+wPQrKBU6JIRrjKpms/H+h8Q8bHz2eBIPdltkdOpQ= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF2TCCA8GgAwIBAgIQXAuFXAvnWUHfV8w/f52oNjANBgkqhkiG9w0BAQUFADBk MQswCQYDVQQGEwJjaDERMA8GA1UEChMIU3dpc3Njb20xJTAjBgNVBAsTHERpZ2l0 YWwgQ2VydGlmaWNhdGUgU2VydmljZXMxGzAZBgNVBAMTElN3aXNzY29tIFJvb3Qg Q0EgMTAeFw0wNTA4MTgxMjA2MjBaFw0yNTA4MTgyMjA2MjBaMGQxCzAJBgNVBAYT AmNoMREwDwYDVQQKEwhTd2lzc2NvbTElMCMGA1UECxMcRGlnaXRhbCBDZXJ0aWZp Y2F0ZSBTZXJ2aWNlczEbMBkGA1UEAxMSU3dpc3Njb20gUm9vdCBDQSAxMIICIjAN BgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA0LmwqAzZuz8h+BvVM5OAFmUgdbI9 m2BtRsiMMW8Xw/qabFbtPMWRV8PNq5ZJkCoZSx6jbVfd8StiKHVFXqrWW/oLJdih FvkcxC7mlSpnzNApbjyFNDhhSbEAn9Y6cV9Nbc5fuankiX9qUvrKm/LcqfmdmUc/ TilftKaNXXsLmREDA/7n29uj/x2lzZAeAR81sH8A25Bvxn570e56eqeqDFdvpG3F EzuwpdntMhy0XmeLVNxzh+XTF3xmUHJd1BpYwdnP2IkCb6dJtDZd0KTeByy2dbco kdaXvij1mB7qWybJvbCXc9qukSbraMH5ORXWZ0sKbU/Lz7DkQnGMU3nn7uHbHaBu HYwadzVcFh4rUx80i9Fs/PJnB3r1re3WmquhsUvhzDdf/X/NTa64H5xD+SpYVUNF vJbNcA78yeNmuk6NO4HLFWR7uZToXTNShXEuT46iBhFRyePLoW4xCGQMwtI89Tbo 19AOeCMgkckkKmUpWyL3Ic6DXqTz3kvTaI9GdVyDCW4pa8RwjPWd1yAv/0bSKzjC L3UcPX7ape8eYIVpQtPM+GP+HkM5haa2Y0EQs3MevNP6yn0WR+Kn1dCjigoIlmJW bjTb2QK5MHXjBNLnj8KwEUAKrNVxAmKLMb7dxiNYMUJDLXT5xp6mig/p/r+D5kNX JLrvRjSq1xIBOO0CAwEAAaOBhjCBgzAOBgNVHQ8BAf8EBAMCAYYwHQYDVR0hBBYw FDASBgdghXQBUwABBgdghXQBUwABMBIGA1UdEwEB/wQIMAYBAf8CAQcwHwYDVR0j BBgwFoAUAyUv3m+CATpcLNwroWm1Z9SM0/0wHQYDVR0OBBYEFAMlL95vggE6XCzc K6FptWfUjNP9MA0GCSqGSIb3DQEBBQUAA4ICAQA1EMvspgQNDQ/NwNurqPKIlwzf ky9NfEBWMXrrpA9gzXrzvsMnjgM+pN0S734edAY8PzHyHHuRMSG08NBsl9Tpl7Ik Vh5WwzW9iAUPWxAaZOHHgjD5Mq2eUCzneAXQMbFamIp1TpBcahQq4FJHgmDmHtqB sfsUC1rxn9KVuj7QG9YVHaO+htXbD8BJZLsuUBlL0iT43R4HVtA4oJVwIHaM190e 3p9xxCPvgxNcoyQVTSlAPGrEqdi3pkSlDfTgnXceQHAm/NrZNuR55LU/vJtlvrsR ls/bxig5OgjOR1tTWsWZ/l2p3e9M1MalrQLmjAcSHm8D0W+go/MpvRLHUKKwf4ip mXeascClOS5cfGniLLDqN2qk4Vrh9VDlg++luyqI54zb/W1elxmofmZ1a3Hqv7HH b6D0jqTsNFFbjCYDcKF31QESVwA12yPeDooomf2xEG9L/zgtYE4snOtnta1J7ksf rK/7DZBaZmBwXarNeNQk7shBoJMBkpxqnvy5JMWzFYJ+vq6VK+uxwNrjAWALXmms hFZhvnEX/h0TD/7Gh0Xp/jKgGg0TpJRVcaUWi7rKibCyx/yP2FS1k2Kdzs9Z+z0Y zirLNRWCXf9UIltxUvu3yf5gmwBBZPCqKuy2QkPOiWaByIufOVQDJdMWNY6E0F/6 MBr1mmz0DlP5OlvRHA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF2TCCA8GgAwIBAgIQHp4o6Ejy5e/DfEoeWhhntjANBgkqhkiG9w0BAQsFADBk MQswCQYDVQQGEwJjaDERMA8GA1UEChMIU3dpc3Njb20xJTAjBgNVBAsTHERpZ2l0 YWwgQ2VydGlmaWNhdGUgU2VydmljZXMxGzAZBgNVBAMTElN3aXNzY29tIFJvb3Qg Q0EgMjAeFw0xMTA2MjQwODM4MTRaFw0zMTA2MjUwNzM4MTRaMGQxCzAJBgNVBAYT AmNoMREwDwYDVQQKEwhTd2lzc2NvbTElMCMGA1UECxMcRGlnaXRhbCBDZXJ0aWZp Y2F0ZSBTZXJ2aWNlczEbMBkGA1UEAxMSU3dpc3Njb20gUm9vdCBDQSAyMIICIjAN BgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAlUJOhJ1R5tMJ6HJaI2nbeHCOFvEr jw0DzpPMLgAIe6szjPTpQOYXTKueuEcUMncy3SgM3hhLX3af+Dk7/E6J2HzFZ++r 0rk0X2s682Q2zsKwzxNoysjL67XiPS4h3+os1OD5cJZM/2pYmLcX5BtS5X4HAB1f 2uY+lQS3aYg5oUFgJWFLlTloYhyxCwWJwDaCFCE/rtuh/bxvHGCGtlOUSbkrRsVP ACu/obvLP+DHVxxX6NZp+MEkUp2IVd3Chy50I9AU/SpHWrumnf2U5NGKpV+GY3aF y6//SSj8gO1MedK75MDvAe5QQQg1I3ArqRa0jG6F6bYRzzHdUyYb3y1aSgJA/MTA tukxGggo5WDDH8SQjhBiYEQN7Aq+VRhxLKX0srwVYv8c474d2h5Xszx+zYIdkeNL 6yxSNLCK/RJOlrDrcH+eOfdmQrGrrFLadkBXeyq96G4DsguAhYidDMfCd7Camlf0 uPoTXGiTOmekl9AbmbeGMktg2M7v0Ax/lZ9vh0+Hio5fCHyqW/xavqGRn1V9TrAL acywlKinh/LTSlDcX3KwFnUey7QYYpqwpzmqm59m2I2mbJYV4+by+PGDYmy7Velh k6M99bFXi08jsJvllGov34zflVEpYKELKeRcVVi3qPyZ7iVNTA6z00yPhOgpD/0Q VAKFyPnlw4vP5w8CAwEAAaOBhjCBgzAOBgNVHQ8BAf8EBAMCAYYwHQYDVR0hBBYw FDASBgdghXQBUwIBBgdghXQBUwIBMBIGA1UdEwEB/wQIMAYBAf8CAQcwHQYDVR0O BBYEFE0mICKJS9PVpAqhb97iEoHF8TwuMB8GA1UdIwQYMBaAFE0mICKJS9PVpAqh b97iEoHF8TwuMA0GCSqGSIb3DQEBCwUAA4ICAQAyCrKkG8t9voJXiblqf/P0wS4R fbgZPnm3qKhyN2abGu2sEzsOv2LwnN+ee6FTSA5BesogpxcbtnjsQJHzQq0Qw1zv /2BZf82Fo4s9SBwlAjxnffUy6S8w5X2lejjQ82YqZh6NM4OKb3xuqFp1mrjX2lhI REeoTPpMSQpKwhI3qEAMw8jh0FcNlzKVxzqfl9NX+Ave5XLzo9v/tdhZsnPdTSpx srpJ9csc1fV5yJmz/MFMdOO0vSk3FQQoHt5FRnDsr7p4DooqzgB53MBfGWcsa0vv aGgLQ+OswWIJ76bdZWGgr4RVSJFSHMYlkSrQwSIjYVmvRRGFHQEkNI/Ps/8XciAT woCqISxxOQ7Qj1zB09GOInJGTB2Wrk9xseEFKZZZ9LuedT3PDTcNYtsmjGOpI99n Bjx8Oto0QuFmtEYE3saWmA9LSHokMnWRn6z3aOkquVVlzl1h0ydw2Df+n7mvoC5W t6NlUe07qxS/TFED6F+KBZvuim6c779o+sjaC+NCydAXFJy3SuCvkychVSa1ZC+N 8f+mQAWFBVzKBxlcCxMoTFh/wqXvRdpg065lYZ1Tg3TCrvJcwhbtkj6EPnNgiLx2 9CzP0H1907he0ZESEOnN3col49XtmS++dYFLJPlFRpTJKSFTnCZFqhMX5OfNeOI5 wSsSnqaeG8XmDtkx2Q== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF4DCCA8igAwIBAgIRAPL6ZOJ0Y9ON/RAdBB92ylgwDQYJKoZIhvcNAQELBQAw ZzELMAkGA1UEBhMCY2gxETAPBgNVBAoTCFN3aXNzY29tMSUwIwYDVQQLExxEaWdp dGFsIENlcnRpZmljYXRlIFNlcnZpY2VzMR4wHAYDVQQDExVTd2lzc2NvbSBSb290 IEVWIENBIDIwHhcNMTEwNjI0MDk0NTA4WhcNMzEwNjI1MDg0NTA4WjBnMQswCQYD VQQGEwJjaDERMA8GA1UEChMIU3dpc3Njb20xJTAjBgNVBAsTHERpZ2l0YWwgQ2Vy dGlmaWNhdGUgU2VydmljZXMxHjAcBgNVBAMTFVN3aXNzY29tIFJvb3QgRVYgQ0Eg MjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMT3HS9X6lds93BdY7Bx UglgRCgzo3pOCvrY6myLURYaVa5UJsTMRQdBTxB5f3HSek4/OE6zAMaVylvNwSqD 1ycfMQ4jFrclyxy0uYAyXhqdk/HoPGAsp15XGVhRXrwsVgu42O+LgrQ8uMIkqBPH oCE2G3pXKSinLr9xJZDzRINpUKTk4RtiGZQJo/PDvO/0vezbE53PnUgJUmfANykR HvvSEaeFGHR55E+FFOtSN+KxRdjMDUN/rhPSays/p8LiqG12W0OfvrSdsyaGOx9/ 5fLoZigWJdBLlzin5M8J0TbDC77aO0RYjb7xnglrPvMyxyuHxuxenPaHZa0zKcQv idm5y8kDnftslFGXEBuGCxobP/YCfnvUxVFkKJ3106yDgYjTdLRZncHrYTNaRdHL OdAGalNgHa/2+2m8atwBz735j9m9W8E6X47aD0upm50qKGsaCnw8qyIL5XctcfaC NYGu+HuB5ur+rPQam3Rc6I8k9l2dRsQs0h4rIWqDJ2dVSqTjyDKXZpBy2uPUZC5f 46Fq9mDU5zXNysRojddxyNMkM3OxbPlq4SjbX8Y96L5V5jcb7STZDxmPX2MYWFCB UWVv8p9+agTnNCRxunZLWB4ZvRVgRaoMEkABnRDixzgHcgplwLa7JSnaFp6LNYth 7eVxV4O1PHGf40+/fh6Bn0GXAgMBAAGjgYYwgYMwDgYDVR0PAQH/BAQDAgGGMB0G A1UdIQQWMBQwEgYHYIV0AVMCAgYHYIV0AVMCAjASBgNVHRMBAf8ECDAGAQH/AgED MB0GA1UdDgQWBBRF2aWBbj2ITY1x0kbBbkUe88SAnTAfBgNVHSMEGDAWgBRF2aWB bj2ITY1x0kbBbkUe88SAnTANBgkqhkiG9w0BAQsFAAOCAgEAlDpzBp9SSzBc1P6x XCX5145v9Ydkn+0UjrgEjihLj6p7jjm02Vj2e6E1CqGdivdj5eu9OYLU43otb98T PLr+flaYC/NUn81ETm484T4VvwYmneTwkLbUwp4wLh/vx3rEUMfqe9pQy3omywC0 Wqu1kx+AiYQElY2NfwmTv9SoqORjbdlk5LgpWgi/UOGED1V7XwgiG/W9mR4U9s70 WBCCswo9GcG/W6uqmdjyMb3lOGbcWAXH7WMaLgqXfIeTK7KK4/HsGOV1timH59yL Gn602MnTihdsfSlEvoqq9X46Lmgxk7lq2prg2+kupYTNHAq4Sgj5nPFhJpiTt3tm 7JFe3VE/23MPrQRYCd0EApUKPtN236YQHoA96M2kZNEzx5LH4k5E4wnJTsJdhw4S nr8PyQUQ3nqjsTzyP6WqJ3mtMX0f/fwZacXduT98zca0wjAefm6S139hdlqP65VN vBFuIXxZN5nQBrz5Bm0yFqXZaajh3DyAHmBR3NdUIR7KYndP+tiPsys6DXhyyWhB WkdKwqPrGtcKqzwyVcgKEZzfdNbwQBUdyLmPtTbFr/giuMod89a2GQ+fYWVq6nTI fI/DT11lgh/ZDYnadXL77/FHZxOzyNEZiCcmmpl5fx7kLD977vHeTYuWl8PVP3wb I+2ksx0WckNLIOFZfsLorSa/ovc= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFujCCA6KgAwIBAgIJALtAHEP1Xk+wMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV BAYTAkNIMRUwEwYDVQQKEwxTd2lzc1NpZ24gQUcxHzAdBgNVBAMTFlN3aXNzU2ln biBHb2xkIENBIC0gRzIwHhcNMDYxMDI1MDgzMDM1WhcNMzYxMDI1MDgzMDM1WjBF MQswCQYDVQQGEwJDSDEVMBMGA1UEChMMU3dpc3NTaWduIEFHMR8wHQYDVQQDExZT d2lzc1NpZ24gR29sZCBDQSAtIEcyMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIIC CgKCAgEAr+TufoskDhJuqVAtFkQ7kpJcyrhdhJJCEyq8ZVeCQD5XJM1QiyUqt2/8 76LQwB8CJEoTlo8jE+YoWACjR8cGp4QjK7u9lit/VcyLwVcfDmJlD909Vopz2q5+ bbqBHH5CjCA12UNNhPqE21Is8w4ndwtrvxEvcnifLtg+5hg3Wipy+dpikJKVyh+c 6bM8K8vzARO/Ws/BtQpgvd21mWRTuKCWs2/iJneRjOBiEAKfNA+k1ZIzUd6+jbqE emA8atufK+ze3gE/bk3lUIbLtK/tREDFylqM2tIrfKjuvqblCqoOpd8FUrdVxyJd MmqXl2MT28nbeTZ7hTpKxVKJ+STnnXepgv9VHKVxaSvRAiTysybUa9oEVeXBCsdt MDeQKuSeFDNeFhdVxVu1yzSJkvGdJo+hB9TGsnhQ2wwMC3wLjEHXuendjIj3o02y MszYF9rNt85mndT9Xv+9lz4pded+p2JYryU0pUHHPbwNUMoDAw8IWh+Vc3hiv69y FGkOpeUDDniOJihC8AcLYiAQZzlG+qkDzAQ4embvIIO1jEpWjpEA/I5cgt6IoMPi aG59je883WX0XaxR7ySArqpWl2/5rX3aYT+YdzylkbYcjCbaZaIJbcHiVOO5ykxM gI93e2CaHt+28kgeDrpOVG2Y4OGiGqJ3UM/EY5LsRxmd6+ZrzsECAwEAAaOBrDCB qTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUWyV7 lqRlUX64OfPAeGZe6Drn8O4wHwYDVR0jBBgwFoAUWyV7lqRlUX64OfPAeGZe6Drn 8O4wRgYDVR0gBD8wPTA7BglghXQBWQECAQEwLjAsBggrBgEFBQcCARYgaHR0cDov L3JlcG9zaXRvcnkuc3dpc3NzaWduLmNvbS8wDQYJKoZIhvcNAQEFBQADggIBACe6 45R88a7A3hfm5djV9VSwg/S7zV4Fe0+fdWavPOhWfvxyeDgD2StiGwC5+OlgzczO UYrHUDFu4Up+GC9pWbY9ZIEr44OE5iKHjn3g7gKZYbge9LgriBIWhMIxkziWMaa5 O1M/wySTVltpkuzFwbs4AOPsF6m43Md8AYOfMke6UiI0HTJ6CVanfCU2qT1L2sCC bwq7EsiHSycR+R4tx5M/nttfJmtS2S6K8RTGRI0Vqbe/vd6mGu6uLftIdxf+u+yv GPUqUfA5hJeVbG4bwyvEdGB5JbAKJ9/fXtI5z0V9QkvfsywexcZdylU6oJxpmo/a 77KwPJ+HbBIrZXAVUjEaJM9vMSNQH4xPjyPDdEFjHFWoFN0+4FFQz/EbMFYOkrCC hdiDyyJkvC24JdVUorgG6q2SpCSgwYa1ShNqR88uC1aVVMvOmttqtKay20EIhid3 92qgQmwLOM7XdVAyksLfKzAiSNDVQTglXaTpXZ/GlHXQRf0wl0OPkKsKx4ZzYEpp Ld6leNcG2mqeSz53OiATIgHQv2ieY2BrNU0LbbqhPcCT4H8js1WtciVORvnSFu+w ZMEBnunKoGqYDs/YYPIvSbjkQuE4NRb0yG5P94FW6LqjviOvrv1vA+ACOzB2+htt Qc8Bsem4yWb02ybzOqR08kkkW8mw0FfB+j564ZfJ -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFwTCCA6mgAwIBAgIITrIAZwwDXU8wDQYJKoZIhvcNAQEFBQAwSTELMAkGA1UE BhMCQ0gxFTATBgNVBAoTDFN3aXNzU2lnbiBBRzEjMCEGA1UEAxMaU3dpc3NTaWdu IFBsYXRpbnVtIENBIC0gRzIwHhcNMDYxMDI1MDgzNjAwWhcNMzYxMDI1MDgzNjAw WjBJMQswCQYDVQQGEwJDSDEVMBMGA1UEChMMU3dpc3NTaWduIEFHMSMwIQYDVQQD ExpTd2lzc1NpZ24gUGxhdGludW0gQ0EgLSBHMjCCAiIwDQYJKoZIhvcNAQEBBQAD ggIPADCCAgoCggIBAMrfogLi2vj8Bxax3mCq3pZcZB/HL37PZ/pEQtZ2Y5Wu669y IIpFR4ZieIbWIDkm9K6j/SPnpZy1IiEZtzeTIsBQnIJ71NUERFzLtMKfkr4k2Htn IuJpX+UFeNSH2XFwMyVTtIc7KZAoNppVRDBopIOXfw0enHb/FZ1glwCNioUD7IC+ 6ixuEFGSzH7VozPY1kneWCqv9hbrS3uQMpe5up1Y8fhXSQQeol0GcN1x2/ndi5ob jM89o03Oy3z2u5yg+gnOI2Ky6Q0f4nIoj5+saCB9bzuohTEJfwvH6GXp43gOCWcw izSC+13gzJ2BbWLuCB4ELE6b7P6pT1/9aXjvCR+htL/68++QHkwFix7qepF6w9fl +zC8bBsQWJj3Gl/QKTIDE0ZNYWqFTFJ0LwYfexHihJfGmfNtf9dng34TaNhxKFrY zt3oEBSa/m0jh26OWnA81Y0JAKeqvLAxN23IhBQeW71FYyBrS3SMvds6DsHPWhaP pZjydomyExI7C3d3rLvlPClKknLKYRorXkzig3R3+jVIeoVNjZpTxN94ypeRSCtF KwH3HBqi7Ri6Cr2D+m+8jVeTO9TUps4e8aCxzqv9KyiaTxvXw3LbpMS/XUz13XuW ae5ogObnmLo2t/5u7Su9IPhlGdpVCX4l3P5hYnL5fhgC72O00Puv5TtjjGePAgMB AAGjgawwgakwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0O BBYEFFCvzAeHFUdvOMW0ZdHelarp35zMMB8GA1UdIwQYMBaAFFCvzAeHFUdvOMW0 ZdHelarp35zMMEYGA1UdIAQ/MD0wOwYJYIV0AVkBAQEBMC4wLAYIKwYBBQUHAgEW IGh0dHA6Ly9yZXBvc2l0b3J5LnN3aXNzc2lnbi5jb20vMA0GCSqGSIb3DQEBBQUA A4ICAQAIhab1Fgz8RBrBY+D5VUYI/HAcQiiWjrfFwUF1TglxeeVtlspLpYhg0DB0 uMoI3LQwnkAHFmtllXcBrqS3NQuB2nEVqXQXOHtYyvkv+8Bldo1bAbl93oI9ZLi+ FHSjClTTLJUYFzX1UWs/j6KWYTl4a0vlpqD4U99REJNi54Av4tHgvI42Rncz7Lj7 jposiU0xEQ8mngS7twSNC/K5/FqdOxa3L8iYq/6KUFkuozv8KV2LwUvJ4ooTHbG/ u0IdUt1O2BReEMYxB+9xJ/cbOQncguqLs5WGXv312l0xpuAxtpTmREl0xRbl9x8D YSjFyMsSoEJL+WuICI20MhjzdZ/EfwBPBZWcoxcCw7NTm6ogOSkrZvqdr16zktK1 puEa+S1BaYEUtLS17Yk9zvupnTVCRLEcFHOBzyoBNZox1S2PbYTfgE1X4z/FhHXa icYwu+uPyyIIoK6q8QNsOktNCaUOcsZWayFCTiMlFGiudgp8DAdwZPmaL/YFOSbG DI8Zf0NebvRbFS/bYV3mZy8/CJT5YLSYMdp08YSTcU1f+2BY0fvEwW2JorsgH51x kcsymxM9Pn2SUjWskpSi0xjCfMfqr3YFFt1nJ8J+HAciIfNAChs0B0QTwoRqjt8Z Wr9/6x3iGjjRXK9HkmuAtTClyY3YqzGBH9/CZjfTk6mFhnll0g== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFvTCCA6WgAwIBAgIITxvUL1S7L0swDQYJKoZIhvcNAQEFBQAwRzELMAkGA1UE BhMCQ0gxFTATBgNVBAoTDFN3aXNzU2lnbiBBRzEhMB8GA1UEAxMYU3dpc3NTaWdu IFNpbHZlciBDQSAtIEcyMB4XDTA2MTAyNTA4MzI0NloXDTM2MTAyNTA4MzI0Nlow RzELMAkGA1UEBhMCQ0gxFTATBgNVBAoTDFN3aXNzU2lnbiBBRzEhMB8GA1UEAxMY U3dpc3NTaWduIFNpbHZlciBDQSAtIEcyMIICIjANBgkqhkiG9w0BAQEFAAOCAg8A MIICCgKCAgEAxPGHf9N4Mfc4yfjDmUO8x/e8N+dOcbpLj6VzHVxumK4DV644N0Mv Fz0fyM5oEMF4rhkDKxD6LHmD9ui5aLlV8gREpzn5/ASLHvGiTSf5YXu6t+WiE7br YT7QbNHm+/pe7R20nqA1W6GSy/BJkv6FCgU+5tkL4k+73JU3/JHpMjUi0R86TieF nbAVlDLaYQ1HTWBCrpJH6INaUFjpiou5XaHc3ZlKHzZnu0jkg7Y360g6rw9njxcH 6ATK72oxh9TAtvmUcXtnZLi2kUpCe2UuMGoM9ZDulebyzYLs2aFK7PayS+VFheZt eJMELpyCbTapxDFkH4aDCyr0NQp4yVXPQbBH6TCfmb5hqAaEuSh6XzjZG6k4sIN/ c8HDO0gqgg8hm7jMqDXDhBuDsz6+pJVpATqJAHgE2cn0mRmrVn5bi4Y5FZGkECwJ MoBgs5PAKrYYC51+jUnyEEp/+dVGLxmSo5mnJqy7jDzmDrxHB9xzUfFwZC8I+bRH HTBsROopN4WSaGa8gzj+ezku01DwH/teYLappvonQfGbGHLy9YR0SslnxFSuSGTf jNFusB3hB48IHpmccelM2KX3RxIfdNFRnobzwqIjQAtz20um53MGjMGg6cFZrEb6 5i/4z3GcRm25xBWNOHkDRUjvxF3XCO6HOSKGsg0PWEP3calILv3q1h8CAwEAAaOB rDCBqTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU F6DNweRBtjpbO8tFnb0cwpj6hlgwHwYDVR0jBBgwFoAUF6DNweRBtjpbO8tFnb0c wpj6hlgwRgYDVR0gBD8wPTA7BglghXQBWQEDAQEwLjAsBggrBgEFBQcCARYgaHR0 cDovL3JlcG9zaXRvcnkuc3dpc3NzaWduLmNvbS8wDQYJKoZIhvcNAQEFBQADggIB AHPGgeAn0i0P4JUw4ppBf1AsX19iYamGamkYDHRJ1l2E6kFSGG9YrVBWIGrGvShp WJHckRE1qTodvBqlYJ7YH39FkWnZfrt4csEGDyrOj4VwYaygzQu4OSlWhDJOhrs9 xCrZ1x9y7v5RoSJBsXECYxqCsGKrXlcSH9/L3XWgwF15kIwb4FDm3jH+mHtwX6WQ 2K34ArZv02DdQEsixT2tOnqfGhpHkXkzuoLcMmkDlm4fS/Bx/uNncqCxv1yL5PqZ IseEuRuNI5c/7SXgz2W79WEE790eslpBIlqhn10s6FvJbakMDHiqYMZWjwFaDGi8 aRl5xB9+lwW/xekkUV7U1UtT7dkjWjYDZaPBA61BMPNGG4WQr2W11bHkFlt4dR2X em1ZqSqPe97Dh4kQmUlzeMg9vVE1dCrV8X5pGyq7O70luJpaPXJhkGaH7gzWTdQR dAtq/gsD/KNVV4n+SsuuWxcFyPKNIzFTONItaj+CuY0IavdeQXRuwxF+B6wpYJE/ OMpXEA29MC/HpeZBoNquBYeaoKRlbEwJDIm6uNO5wJOKMPqN5ZprFQFOZ6raYlY+ hAhm0sQ2fac+EPyI4NSA5QC9qvNOBqN6avlicuMJT+ubDgEj8Z+7fNzcbBGXJbLy tGMU0gYqZ4yD9c7qB9iaah7s5Aq7KkzrCWA5zspi2C5u -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFcjCCA1qgAwIBAgIQH51ZWtcvwgZEpYAIaeNe9jANBgkqhkiG9w0BAQUFADA/ MQswCQYDVQQGEwJUVzEwMC4GA1UECgwnR292ZXJubWVudCBSb290IENlcnRpZmlj YXRpb24gQXV0aG9yaXR5MB4XDTAyMTIwNTEzMjMzM1oXDTMyMTIwNTEzMjMzM1ow PzELMAkGA1UEBhMCVFcxMDAuBgNVBAoMJ0dvdmVybm1lbnQgUm9vdCBDZXJ0aWZp Y2F0aW9uIEF1dGhvcml0eTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB AJoluOzMonWoe/fOW1mKydGGEghU7Jzy50b2iPN86aXfTEc2pBsBHH8eV4qNw8XR IePaJD9IK/ufLqGU5ywck9G/GwGHU5nOp/UKIXZ3/6m3xnOUT0b3EEk3+qhZSV1q gQdW8or5BtD3cCJNtLdBuTK4sfCxw5w/cP1T3YGq2GN49thTbqGsaoQkclSGxtKy yhwOeYHWtXBiCAEuTk8O1RGvqa/lmr/czIdtJuTJV6L7lvnM4T9TjGxMfptTCAts F/tnyMKtsc2AtJfcdgEWFelq16TheEfOhtX7MfP6Mb40qij7cEwdScevLJ1tZqa2 jWR+tSBqnTuBto9AAGdLiYa4zGX+FVPpBMHWXx1E1wovJ5pGfaENda1UhhXcSTvx ls4Pm6Dso3pdvtUqdULle96ltqqvKKyskKw4t9VoNSZ63Pc78/1Fm9G7Q3hub/FC VGqY8A2tl+lSXunVanLeavcbYBT0peS2cWeqH+riTcFCQP5nRhc4L0c/cZyu5SHK YS1tB6iEfC3uUSXxY5Ce/eFXiGvviiNtsea9P63RPZYLhY3Naye7twWb7LuRqQoH EgKXTiCQ8P8NHuJBO9NAOueNXdpm5AKwB1KYXA6OM5zCppX7VRluTI6uSw+9wThN Xo+EHWbNxWCWtFJaBYmOlXqYwZE8lSOyDvR5tMl8wUohAgMBAAGjajBoMB0GA1Ud DgQWBBTMzO/MKWCkO7GStjz6MmKPrCUVOzAMBgNVHRMEBTADAQH/MDkGBGcqBwAE MTAvMC0CAQAwCQYFKw4DAhoFADAHBgVnKgMAAAQUA5vwIhP/lSg209yewDL7MTqK UWUwDQYJKoZIhvcNAQEFBQADggIBAECASvomyc5eMN1PhnR2WPWus4MzeKR6dBcZ TulStbngCnRiqmjKeKBMmo4sIy7VahIkv9Ro04rQ2JyftB8M3jh+Vzj8jeJPXgyf qzvS/3WXy6TjZwj/5cAWtUgBfen5Cv8b5Wppv3ghqMKnI6mGq3ZW6A4M9hPdKmaK ZEk9GhiHkASfQlK3T8v+R0F2Ne//AHY2RTKbxkaFXeIksB7jSJaYV0eUVXoPQbFE JPPB/hprv4j9wabak2BegUqZIJxIZhm1AHlUD7gsL0u8qV1bYH+Mh6XgUmMqvtg7 hUAV/h62ZT/FS9p+tXo1KaMuephgIqP0fSdOLeq0dDzpD6QzDxARvBMB1uUO07+1 EqLhRSPAzAhuYbeJq4PjJB7mXQfnHyA+z2fI56wwbSdLaG5LKlwCCDTb+HbkZ6Mm nD+iMsJKxYEYMRBWqoTvLQr/uB930r+lWKBi5NdLkXWNiYCYfm3LU05er/ayl4WX udpVBrkk7tfGOB5jGxI7leFYrPLfhNVfmS8NVVvmONsuP3LpSIXLuykTjx44Vbnz ssQwmSNOXfJIoRIM3BKQCZBUkQM8R+XVyWXgt0t97EfTsws+rZ7QdAAO671RrcDe LMDDav7v3Aun+kbfYNucpllQdSNpc5Oy+fwC00fmcc4QAu4njIT/rEUNE1yDMuAl pYYsfPQS -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEqjCCA5KgAwIBAgIOLmoAAQACH9dSISwRXDswDQYJKoZIhvcNAQEFBQAwdjEL MAkGA1UEBhMCREUxHDAaBgNVBAoTE1RDIFRydXN0Q2VudGVyIEdtYkgxIjAgBgNV BAsTGVRDIFRydXN0Q2VudGVyIENsYXNzIDIgQ0ExJTAjBgNVBAMTHFRDIFRydXN0 Q2VudGVyIENsYXNzIDIgQ0EgSUkwHhcNMDYwMTEyMTQzODQzWhcNMjUxMjMxMjI1 OTU5WjB2MQswCQYDVQQGEwJERTEcMBoGA1UEChMTVEMgVHJ1c3RDZW50ZXIgR21i SDEiMCAGA1UECxMZVEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMiBDQTElMCMGA1UEAxMc VEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMiBDQSBJSTCCASIwDQYJKoZIhvcNAQEBBQAD ggEPADCCAQoCggEBAKuAh5uO8MN8h9foJIIRszzdQ2Lu+MNF2ujhoF/RKrLqk2jf tMjWQ+nEdVl//OEd+DFwIxuInie5e/060smp6RQvkL4DUsFJzfb95AhmC1eKokKg uNV/aVyQMrKXDcpK3EY+AlWJU+MaWss2xgdW94zPEfRMuzBwBJWl9jmM/XOBCH2J XjIeIqkiRUuwZi4wzJ9l/fzLganx4Duvo4bRierERXlQXa7pIXSSTYtZgo+U4+lK 8edJsBTj9WLL1XK9H7nSn6DNqPoByNkN39r8R52zyFTfSUrxIan+GE7uSNQZu+99 5OKdy1u2bv/jzVrndIIFuoAlOMvkaZ6vQaoahPUCAwEAAaOCATQwggEwMA8GA1Ud EwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBTjq1RMgKHbVkO3 kUrL84J6E1wIqzCB7QYDVR0fBIHlMIHiMIHfoIHcoIHZhjVodHRwOi8vd3d3LnRy dXN0Y2VudGVyLmRlL2NybC92Mi90Y19jbGFzc18yX2NhX0lJLmNybIaBn2xkYXA6 Ly93d3cudHJ1c3RjZW50ZXIuZGUvQ049VEMlMjBUcnVzdENlbnRlciUyMENsYXNz JTIwMiUyMENBJTIwSUksTz1UQyUyMFRydXN0Q2VudGVyJTIwR21iSCxPVT1yb290 Y2VydHMsREM9dHJ1c3RjZW50ZXIsREM9ZGU/Y2VydGlmaWNhdGVSZXZvY2F0aW9u TGlzdD9iYXNlPzANBgkqhkiG9w0BAQUFAAOCAQEAjNfffu4bgBCzg/XbEeprS6iS GNn3Bzn1LL4GdXpoUxUc6krtXvwjshOg0wn/9vYua0Fxec3ibf2uWWuFHbhOIprt ZjluS5TmVfwLG4t3wVMTZonZKNaL80VKY7f9ewthXbhtvsPcW3nS7Yblok2+XnR8 au0WOB9/WIFaGusyiC2y8zl3gK9etmF1KdsjTYjKUCjLhdLTEKJZbtOTVAB6okaV hgWcqRmY5TFyDADiZ9lA4CQze28suVyrZZ0srHbqNZn1l7kPJOzHdiEoZa5X6AeI dUpWoNIFOqTmjZKILPPy4cHGYdtBxceb9w4aUUXCYWvcZCcXjFq32nQozZfkvQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEqjCCA5KgAwIBAgIOSkcAAQAC5aBd1j8AUb8wDQYJKoZIhvcNAQEFBQAwdjEL MAkGA1UEBhMCREUxHDAaBgNVBAoTE1RDIFRydXN0Q2VudGVyIEdtYkgxIjAgBgNV BAsTGVRDIFRydXN0Q2VudGVyIENsYXNzIDMgQ0ExJTAjBgNVBAMTHFRDIFRydXN0 Q2VudGVyIENsYXNzIDMgQ0EgSUkwHhcNMDYwMTEyMTQ0MTU3WhcNMjUxMjMxMjI1 OTU5WjB2MQswCQYDVQQGEwJERTEcMBoGA1UEChMTVEMgVHJ1c3RDZW50ZXIgR21i SDEiMCAGA1UECxMZVEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMyBDQTElMCMGA1UEAxMc VEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMyBDQSBJSTCCASIwDQYJKoZIhvcNAQEBBQAD ggEPADCCAQoCggEBALTgu1G7OVyLBMVMeRwjhjEQY0NVJz/GRcekPewJDRoeIMJW Ht4bNwcwIi9v8Qbxq63WyKthoy9DxLCyLfzDlml7forkzMA5EpBCYMnMNWju2l+Q Vl/NHE1bWEnrDgFPZPosPIlY2C8u4rBo6SI7dYnWRBpl8huXJh0obazovVkdKyT2 1oQDZogkAHhg8fir/gKya/si+zXmFtGt9i4S5Po1auUZuV3bOx4a+9P/FRQI2Alq ukWdFHlgfa9Aigdzs5OW03Q0jTo3Kd5c7PXuLjHCINy+8U9/I1LZW+Jk2ZyqBwi1 Rb3R0DHBq1SfqdLDYmAD8bs5SpJKPQq5ncWg/jcCAwEAAaOCATQwggEwMA8GA1Ud EwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBTUovyfs8PYA9NX XAek0CSnwPIA1DCB7QYDVR0fBIHlMIHiMIHfoIHcoIHZhjVodHRwOi8vd3d3LnRy dXN0Y2VudGVyLmRlL2NybC92Mi90Y19jbGFzc18zX2NhX0lJLmNybIaBn2xkYXA6 Ly93d3cudHJ1c3RjZW50ZXIuZGUvQ049VEMlMjBUcnVzdENlbnRlciUyMENsYXNz JTIwMyUyMENBJTIwSUksTz1UQyUyMFRydXN0Q2VudGVyJTIwR21iSCxPVT1yb290 Y2VydHMsREM9dHJ1c3RjZW50ZXIsREM9ZGU/Y2VydGlmaWNhdGVSZXZvY2F0aW9u TGlzdD9iYXNlPzANBgkqhkiG9w0BAQUFAAOCAQEANmDkcPcGIEPZIxpC8vijsrlN irTzwppVMXzEO2eatN9NDoqTSheLG43KieHPOh6sHfGcMrSOWXaiQYUlN6AT0PV8 TtXqluJucsG7Kv5sbviRmEb8yRtXW+rIGjs/sFGYPAfaLFkB2otE6OF0/ado3VS6 g0bsyEa1+K+XwDsJHI/OcpY9M1ZwvJbL2NV9IJqDnxrcOfHFcqMRA/07QlIp2+gB 95tejNaNhk4Z+rwcvsUhpYeeeC422wlxo3I0+GzjBgnyXlal092Y+tTmBvTwtiBj S+opvaqCZh77gaqnN60TGOaSw4HBM7uIHqHn4rS9MWwOUT1v+5ZWgOI2F9Hc5A== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID3TCCAsWgAwIBAgIOHaIAAQAC7LdggHiNtgYwDQYJKoZIhvcNAQEFBQAweTEL MAkGA1UEBhMCREUxHDAaBgNVBAoTE1RDIFRydXN0Q2VudGVyIEdtYkgxJDAiBgNV BAsTG1RDIFRydXN0Q2VudGVyIFVuaXZlcnNhbCBDQTEmMCQGA1UEAxMdVEMgVHJ1 c3RDZW50ZXIgVW5pdmVyc2FsIENBIEkwHhcNMDYwMzIyMTU1NDI4WhcNMjUxMjMx MjI1OTU5WjB5MQswCQYDVQQGEwJERTEcMBoGA1UEChMTVEMgVHJ1c3RDZW50ZXIg R21iSDEkMCIGA1UECxMbVEMgVHJ1c3RDZW50ZXIgVW5pdmVyc2FsIENBMSYwJAYD VQQDEx1UQyBUcnVzdENlbnRlciBVbml2ZXJzYWwgQ0EgSTCCASIwDQYJKoZIhvcN AQEBBQADggEPADCCAQoCggEBAKR3I5ZEr5D0MacQ9CaHnPM42Q9e3s9B6DGtxnSR JJZ4Hgmgm5qVSkr1YnwCqMqs+1oEdjneX/H5s7/zA1hV0qq34wQi0fiU2iIIAI3T fCZdzHd55yx4Oagmcw6iXSVphU9VDprvxrlE4Vc93x9UIuVvZaozhDrzznq+VZeu jRIPFDPiUHDDSYcTvFHe15gSWu86gzOSBnWLknwSaHtwag+1m7Z3W0hZneTvWq3z wZ7U10VOylY0Ibw+F1tvdwxIAUMpsN0/lm7mlaoMwCC2/T42J5zjXM9OgdwZu5GQ fezmlwQek8wiSdeXhrYTCjxDI3d+8NzmzSQfO4ObNDqDNOMCAwEAAaNjMGEwHwYD VR0jBBgwFoAUkqR1LKSevoFE63n8isWVpesQdXMwDwYDVR0TAQH/BAUwAwEB/zAO BgNVHQ8BAf8EBAMCAYYwHQYDVR0OBBYEFJKkdSyknr6BROt5/IrFlaXrEHVzMA0G CSqGSIb3DQEBBQUAA4IBAQAo0uCG1eb4e/CX3CJrO5UUVg8RMKWaTzqwOuAGy2X1 7caXJ/4l8lfmXpWMPmRgFVp/Lw0BxbFg/UU1z/CyvwbZ71q+s2IhtNerNXxTPqYn 8aEt2hojnczd7Dwtnic0XQ/CNnm8yUpiLe1r2X1BQ3y2qsrtYbE3ghUJGooWMNjs ydZHcnhLEEYUjl8Or+zHL6sQ17bxbuyGssLoDZJz3KL0Dzq/YSMQiZxIQG5wALPT ujdEWBF6AmqI8Dc08BnprNRlc/ZpjGSUOnmFKbAWKwyCPwacx/0QK54PLLae4xW/ 2TYcuiUaUj0a7CIMHOCkoj3w6DnPgcB77V0fb8XQC9eY -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEKzCCAxOgAwIBAgIEOsylTDANBgkqhkiG9w0BAQUFADBDMQswCQYDVQQGEwJE SzEVMBMGA1UEChMMVERDIEludGVybmV0MR0wGwYDVQQLExRUREMgSW50ZXJuZXQg Um9vdCBDQTAeFw0wMTA0MDUxNjMzMTdaFw0yMTA0MDUxNzAzMTdaMEMxCzAJBgNV BAYTAkRLMRUwEwYDVQQKEwxUREMgSW50ZXJuZXQxHTAbBgNVBAsTFFREQyBJbnRl cm5ldCBSb290IENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxLhA vJHVYx/XmaCLDEAedLdInUaMArLgJF/wGROnN4NrXceO+YQwzho7+vvOi20jxsNu Zp+Jpd/gQlBn+h9sHvTQBda/ytZO5GhgbEaqHF1j4QeGDmUApy6mcca8uYGoOn0a 0vnRrEvLznWv3Hv6gXPU/Lq9QYjUdLP5Xjg6PEOo0pVOd20TDJ2PeAG3WiAfAzc1 4izbSysseLlJ28TQx5yc5IogCSEWVmb/Bexb4/DPqyQkXsN/cHoSxNK1EKC2IeGN eGlVRGn1ypYcNIUXJXfi9i8nmHj9eQY6otZaQ8H/7AQ77hPv01ha/5Lr7K7a8jcD R0G2l8ktCkEiu7vmpwIDAQABo4IBJTCCASEwEQYJYIZIAYb4QgEBBAQDAgAHMGUG A1UdHwReMFwwWqBYoFakVDBSMQswCQYDVQQGEwJESzEVMBMGA1UEChMMVERDIElu dGVybmV0MR0wGwYDVQQLExRUREMgSW50ZXJuZXQgUm9vdCBDQTENMAsGA1UEAxME Q1JMMTArBgNVHRAEJDAigA8yMDAxMDQwNTE2MzMxN1qBDzIwMjEwNDA1MTcwMzE3 WjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAUbGQBx/2FbazI2p5QCIUItTxWqFAw HQYDVR0OBBYEFGxkAcf9hW2syNqeUAiFCLU8VqhQMAwGA1UdEwQFMAMBAf8wHQYJ KoZIhvZ9B0EABBAwDhsIVjUuMDo0LjADAgSQMA0GCSqGSIb3DQEBBQUAA4IBAQBO Q8zR3R0QGwZ/t6T609lN+yOfI1Rb5osvBCiLtSdtiaHsmGnc540mgwV5dOy0uaOX wTUA/RXaOYE6lTGQ3pfphqiZdwzlWqCE/xIWrG64jcN7ksKsLtB9KOy282A4aW8+ 2ARVPp7MVdK6/rtHBNcK2RYKNCn1WBPVT8+PVkuzHu7TmHnaCB4Mb7j4Fifvwm89 9qNLPg7kbWzbO0ESm70NRyN/PErQr8Cv9u8btRXE64PECV90i9kR+8JWsTz4cMo0 jUNAE4z9mQNUecYu6oah9jrUCbz0vGbMPVjQV0kK7iXiQe4T+Zs4NNEA9X7nlB38 aQNiuJkFBT1reBK9sG9l -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFGTCCBAGgAwIBAgIEPki9xDANBgkqhkiG9w0BAQUFADAxMQswCQYDVQQGEwJE SzEMMAoGA1UEChMDVERDMRQwEgYDVQQDEwtUREMgT0NFUyBDQTAeFw0wMzAyMTEw ODM5MzBaFw0zNzAyMTEwOTA5MzBaMDExCzAJBgNVBAYTAkRLMQwwCgYDVQQKEwNU REMxFDASBgNVBAMTC1REQyBPQ0VTIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A MIIBCgKCAQEArGL2YSCyz8DGhdfjeebM7fI5kqSXLmSjhFuHnEz9pPPEXyG9VhDr 2y5h7JNp46PMvZnDBfwGuMo2HP6QjklMxFaaL1a8z3sM8W9Hpg1DTeLpHTk0zY0s 2RKY+ePhwUp8hjjEqcRhiNJerxomTdXkoCJHhNlktxmW/OwZ5LKXJk5KTMuPJItU GBxIYXvViGjaXbXqzRowwYCDdlCqT9HU3Tjw7xb04QxQBr/q+3pJoSgrHPb8FTKj dGqPqcNiKXEx5TukYBdedObaE+3pHx8b0bJoc8YQNHVGEBDjkAB2QMuLt0MJIf+r TpPGWOmlgtt3xDqZsXKVSQTwtyv6e1mO3QIDAQABo4ICNzCCAjMwDwYDVR0TAQH/ BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwgewGA1UdIASB5DCB4TCB3gYIKoFQgSkB AQEwgdEwLwYIKwYBBQUHAgEWI2h0dHA6Ly93d3cuY2VydGlmaWthdC5kay9yZXBv c2l0b3J5MIGdBggrBgEFBQcCAjCBkDAKFgNUREMwAwIBARqBgUNlcnRpZmlrYXRl ciBmcmEgZGVubmUgQ0EgdWRzdGVkZXMgdW5kZXIgT0lEIDEuMi4yMDguMTY5LjEu MS4xLiBDZXJ0aWZpY2F0ZXMgZnJvbSB0aGlzIENBIGFyZSBpc3N1ZWQgdW5kZXIg T0lEIDEuMi4yMDguMTY5LjEuMS4xLjARBglghkgBhvhCAQEEBAMCAAcwgYEGA1Ud HwR6MHgwSKBGoESkQjBAMQswCQYDVQQGEwJESzEMMAoGA1UEChMDVERDMRQwEgYD VQQDEwtUREMgT0NFUyBDQTENMAsGA1UEAxMEQ1JMMTAsoCqgKIYmaHR0cDovL2Ny bC5vY2VzLmNlcnRpZmlrYXQuZGsvb2Nlcy5jcmwwKwYDVR0QBCQwIoAPMjAwMzAy MTEwODM5MzBagQ8yMDM3MDIxMTA5MDkzMFowHwYDVR0jBBgwFoAUYLWF7FZkfhIZ J2cdUBVLc647+RIwHQYDVR0OBBYEFGC1hexWZH4SGSdnHVAVS3OuO/kSMB0GCSqG SIb2fQdBAAQQMA4bCFY2LjA6NC4wAwIEkDANBgkqhkiG9w0BAQUFAAOCAQEACrom JkbTc6gJ82sLMJn9iuFXehHTuJTXCRBuo7E4A9G28kNBKWKnctj7fAXmMXAnVBhO inxO5dHKjHiIzxvTkIvmI/gLDjNDfZziChmPyQE+dF10yYscA+UYyAFMP8uXBV2Y caaYb7Z8vTd/vuGTJW1v8AqtFxjhA7wHKcitJuj4YfD9IQl+mo6paH1IYnK9AOoB mbgGglGBTvH1tJFUuSN6AJqfXY3gPGS5GhKSKseCRHI53OI8xthV9RVOyAUO28bQ YqbsFbS1AoLbrIyigfCbmTH1ICCoiGEKB5+U/NDXG8wuF/MEJ3Zn61SD/aSQfgY9 BKNDLdr8C2LqL19iUw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDJzCCApCgAwIBAgIBATANBgkqhkiG9w0BAQQFADCBzjELMAkGA1UEBhMCWkEx FTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYD VQQKExRUaGF3dGUgQ29uc3VsdGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlv biBTZXJ2aWNlcyBEaXZpc2lvbjEhMB8GA1UEAxMYVGhhd3RlIFByZW1pdW0gU2Vy dmVyIENBMSgwJgYJKoZIhvcNAQkBFhlwcmVtaXVtLXNlcnZlckB0aGF3dGUuY29t MB4XDTk2MDgwMTAwMDAwMFoXDTIwMTIzMTIzNTk1OVowgc4xCzAJBgNVBAYTAlpB MRUwEwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQBgNVBAcTCUNhcGUgVG93bjEdMBsG A1UEChMUVGhhd3RlIENvbnN1bHRpbmcgY2MxKDAmBgNVBAsTH0NlcnRpZmljYXRp b24gU2VydmljZXMgRGl2aXNpb24xITAfBgNVBAMTGFRoYXd0ZSBQcmVtaXVtIFNl cnZlciBDQTEoMCYGCSqGSIb3DQEJARYZcHJlbWl1bS1zZXJ2ZXJAdGhhd3RlLmNv bTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA0jY2aovXwlue2oFBYo847kkE VdbQ7xwblRZH7xhINTpS9CtqBo87L+pW46+GjZ4X9560ZXUCTe/LCaIhUdib0GfQ ug2SBhRz1JPLlyoAnFxODLz6FVL88kRu2hFKbgifLy3j+ao6hnO2RlNYyIkFvYMR uHM/qgeN9EJN50CdHDcCAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG 9w0BAQQFAAOBgQAmSCwWwlj66BZ0DKqqX1Q/8tfJeGBeXm43YyJ3Nn6yF8Q0ufUI hfzJATj/Tb7yFkJD57taRvvBxhEf8UqwKEbJw8RCfbz6q1lu1bdRiBHjpIUZa4JM pAwSremkrj/xw0llmozFyD4lt5SZu5IycQfwhl7tUCemDaYj+bvLpgcUQg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEIDCCAwigAwIBAgIQNE7VVyDV7exJ9C/ON9srbTANBgkqhkiG9w0BAQUFADCB qTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjEoMCYGA1UECxMf Q2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMvKGMpIDIw MDYgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxHzAdBgNV BAMTFnRoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EwHhcNMDYxMTE3MDAwMDAwWhcNMzYw NzE2MjM1OTU5WjCBqTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5j LjEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjE4MDYG A1UECxMvKGMpIDIwMDYgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNl IG9ubHkxHzAdBgNVBAMTFnRoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQCsoPD7gFnUnMekz52hWXMJEEUMDSxuaPFs W0hoSVk3/AszGcJ3f8wQLZU0HObrTQmnHNK4yZc2AreJ1CRfBsDMRJSUjQJib+ta 3RGNKJpchJAQeg29dGYvajig4tVUROsdB58Hum/u6f1OCyn1PoSgAfGcq/gcfomk 6KHYcWUNo1F77rzSImANuVud37r8UVsLr5iy6S7pBOhih94ryNdOwUxkHt3Ph1i6 Sk/KaAcdHJ1KxtUvkcx8cXIcxcBn6zL9yZJclNqFwJu/U30rCfSMnZEfl2pSy94J NqR32HuHUETVPm4pafs5SSYeCaWAe0At6+gnhcn+Yf1+5nyXHdWdAgMBAAGjQjBA MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBR7W0XP r87Lev0xkhpqtvNG61dIUDANBgkqhkiG9w0BAQUFAAOCAQEAeRHAS7ORtvzw6WfU DW5FvlXok9LOAz/t2iWwHVfLHjp2oEzsUHboZHIMpKnxuIvW1oeEuzLlQRHAd9mz YJ3rG9XRbkREqaYB7FViHXe4XI5ISXycO1cRrK1zN44veFyQaEfZYGDm/Ac9IiAX xPcW6cTYcvnIc3zfFi8VqT79aie2oetaupgf1eNNZAqdE8hhuvU5HIe6uL17In/2 /qxAeeWsEG89jxt5dovEN7MhGITlNgDrYyCZuen+MwS7QcjBAvlEYyCegc5C09Y/ LHbTY5xZ3Y+m4Q6gLkH3LpVHz7z9M/P2C2F+fpErgUfCJzDupxBdN49cOSvkBPB7 jVaMaA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICiDCCAg2gAwIBAgIQNfwmXNmET8k9Jj1Xm67XVjAKBggqhkjOPQQDAzCBhDEL MAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjE4MDYGA1UECxMvKGMp IDIwMDcgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxJDAi BgNVBAMTG3RoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EgLSBHMjAeFw0wNzExMDUwMDAw MDBaFw0zODAxMTgyMzU5NTlaMIGEMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMdGhh d3RlLCBJbmMuMTgwNgYDVQQLEy8oYykgMjAwNyB0aGF3dGUsIEluYy4gLSBGb3Ig YXV0aG9yaXplZCB1c2Ugb25seTEkMCIGA1UEAxMbdGhhd3RlIFByaW1hcnkgUm9v dCBDQSAtIEcyMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEotWcgnuVnfFSeIf+iha/ BebfowJPDQfGAFG6DAJSLSKkQjnE/o/qycG+1E3/n3qe4rF8mq2nhglzh9HnmuN6 papu+7qzcMBniKI11KOasf2twu8x+qi58/sIxpHR+ymVo0IwQDAPBgNVHRMBAf8E BTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUmtgAMADna3+FGO6Lts6K DPgR4bswCgYIKoZIzj0EAwMDaQAwZgIxAN344FdHW6fmCsO99YCKlzUNG4k8VIZ3 KMqh9HneteY4sPBlcIx/AlTCv//YoT7ZzwIxAMSNlPzcU9LcnXgWHxUzI1NS41ox XZ3Krr0TKUQNJ1uo52icEvdYPy5yAlejj6EULg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEKjCCAxKgAwIBAgIQYAGXt0an6rS0mtZLL/eQ+zANBgkqhkiG9w0BAQsFADCB rjELMAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjEoMCYGA1UECxMf Q2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMvKGMpIDIw MDggdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxJDAiBgNV BAMTG3RoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EgLSBHMzAeFw0wODA0MDIwMDAwMDBa Fw0zNzEyMDEyMzU5NTlaMIGuMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMdGhhd3Rl LCBJbmMuMSgwJgYDVQQLEx9DZXJ0aWZpY2F0aW9uIFNlcnZpY2VzIERpdmlzaW9u MTgwNgYDVQQLEy8oYykgMjAwOCB0aGF3dGUsIEluYy4gLSBGb3IgYXV0aG9yaXpl ZCB1c2Ugb25seTEkMCIGA1UEAxMbdGhhd3RlIFByaW1hcnkgUm9vdCBDQSAtIEcz MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsr8nLPvb2FvdeHsbnndm gcs+vHyu86YnmjSjaDFxODNi5PNxZnmxqWWjpYvVj2AtP0LMqmsywCPLLEHd5N/8 YZzic7IilRFDGF/Eth9XbAoFWCLINkw6fKXRz4aviKdEAhN0cXMKQlkC+BsUa0Lf b1+6a4KinVvnSr0eAXLbS3ToO39/fR8EtCab4LRarEc9VbjXsCZSKAExQGbY2SS9 9irY7CFJXJv2eul/VTV+lmuNk5Mny5K76qxAwJ/C+IDPXfRa3M50hqY+bAtTyr2S zhkGcuYMXDhpxwTWvGzOW/b3aJzcJRVIiKHpqfiYnODz1TEoYRFsZ5aNOZnLwkUk OQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNV HQ4EFgQUrWyqlGCc7eT/+j4KdCtjA/e2Wb8wDQYJKoZIhvcNAQELBQADggEBABpA 2JVlrAmSicY59BDlqQ5mU1143vokkbvnRFHfxhY0Cu9qRFHqKweKA3rD6z8KLFIW oCtDuSWQP3CpMyVtRRooOyfPqsMpQhvfO0zAMzRbQYi/aytlryjvsvXDqmbOe1bu t8jLZ8HJnBoYuMTDSQPxYA5QzUbF83d597YV4Djbxy8ooAw/dyZ02SUS2jHaGh7c KUGRIjxpp7sC8rZcJwOJ9Abqm+RyguOhCcHpABnTPtRwa7pxpqpYrvS76Wy274fM m7v/OeZWYdMKp8RcTGB7BXcmer/YB1IsYvdwY9k5vG8cwnncdimvzsUsZAReiDZu MdRAGmI0Nj81Aa6sY6A= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDEzCCAnygAwIBAgIBATANBgkqhkiG9w0BAQQFADCBxDELMAkGA1UEBhMCWkEx FTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYD VQQKExRUaGF3dGUgQ29uc3VsdGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlv biBTZXJ2aWNlcyBEaXZpc2lvbjEZMBcGA1UEAxMQVGhhd3RlIFNlcnZlciBDQTEm MCQGCSqGSIb3DQEJARYXc2VydmVyLWNlcnRzQHRoYXd0ZS5jb20wHhcNOTYwODAx MDAwMDAwWhcNMjAxMjMxMjM1OTU5WjCBxDELMAkGA1UEBhMCWkExFTATBgNVBAgT DFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYDVQQKExRUaGF3 dGUgQ29uc3VsdGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNl cyBEaXZpc2lvbjEZMBcGA1UEAxMQVGhhd3RlIFNlcnZlciBDQTEmMCQGCSqGSIb3 DQEJARYXc2VydmVyLWNlcnRzQHRoYXd0ZS5jb20wgZ8wDQYJKoZIhvcNAQEBBQAD gY0AMIGJAoGBANOkUG7I/1Zr5s9dtuoMaHVHoqrC2oQl/Kj0R1HahbUgdJSGHg91 yekIYfUGbTBuFRkC6VLAYttNmZ7iagxEOM3+vuNkCXDF/rFrKbYvScg71CcEJRCX L+eQbcAoQpnXTEPew/UhbVSfXcNY4cDk2VuwuNy0e982OsK1ZiIS1ocNAgMBAAGj EzARMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEEBQADgYEAB/pMaVz7lcxG 7oWDTSEwjsrZqG9JGubaUeNgcGyEYRGhGshIPllDfU+VPaGLtwtimHp1it2ITk6e QNuozDJ0uW8NxuOzRAvZim+aKZuZGCg70eNAKJpaPNW15yAbi8qkq43pUdniTCxZ qdq5snUb9kLy78fyGPmJvKP/iiMucEc= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDZzCCAk+gAwIBAgIQGx+ttiD5JNM2a/fH8YygWTANBgkqhkiG9w0BAQUFADBF MQswCQYDVQQGEwJHQjEYMBYGA1UEChMPVHJ1c3RpcyBMaW1pdGVkMRwwGgYDVQQL ExNUcnVzdGlzIEZQUyBSb290IENBMB4XDTAzMTIyMzEyMTQwNloXDTI0MDEyMTEx MzY1NFowRTELMAkGA1UEBhMCR0IxGDAWBgNVBAoTD1RydXN0aXMgTGltaXRlZDEc MBoGA1UECxMTVHJ1c3RpcyBGUFMgUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQAD ggEPADCCAQoCggEBAMVQe547NdDfxIzNjpvto8A2mfRC6qc+gIMPpqdZh8mQRUN+ AOqGeSoDvT03mYlmt+WKVoaTnGhLaASMk5MCPjDSNzoiYYkchU59j9WvezX2fihH iTHcDnlkH5nSW7r+f2C/revnPDgpai/lkQtV/+xvWNUtyd5MZnGPDNcE2gfmHhjj vSkCqPoc4Vu5g6hBSLwacY3nYuUtsuvffM/bq1rKMfFMIvMFE/eC+XN5DL7XSxzA 0RU8k0Fk0ea+IxciAIleH2ulrG6nS4zto3Lmr2NNL4XSFDWaLk6M6jKYKIahkQlB OrTh4/L68MkKokHdqeMDx4gVOxzUGpTXn2RZEm0CAwEAAaNTMFEwDwYDVR0TAQH/ BAUwAwEB/zAfBgNVHSMEGDAWgBS6+nEleYtXQSUhhgtx67JkDoshZzAdBgNVHQ4E FgQUuvpxJXmLV0ElIYYLceuyZA6LIWcwDQYJKoZIhvcNAQEFBQADggEBAH5Y//01 GX2cGE+esCu8jowU/yyg2kdbw++BLa8F6nRIW/M+TgfHbcWzk88iNVy2P3UnXwmW zaD+vkAMXBJV+JOCyinpXj9WV4s4NvdFGkwozZ5BuO1WTISkQMi4sKUraXAEasP4 1BIy+Q7DsdwyhEQsb8tGD+pmQQ9P8Vilpg0ND2HepZ5dfWWhPBfnqFVO76DH7cZE f1T1o+CP8HxVIo8ptoGj4W1OLBuAZ+ytIJ8MYmHVl/9D7S3B2l0pKoU/rGXuhg8F jZBf3+6f9L/uHfuY5H+QK4R4EA5sSVPvFVtlRkpdr7r7OnIdzfYliB6XzCGcKQEN ZetX2fNXlrtIzYE= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDwzCCAqugAwIBAgIBATANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UEBhMCREUx KzApBgNVBAoMIlQtU3lzdGVtcyBFbnRlcnByaXNlIFNlcnZpY2VzIEdtYkgxHzAd BgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBDZW50ZXIxJTAjBgNVBAMMHFQtVGVsZVNl YyBHbG9iYWxSb290IENsYXNzIDMwHhcNMDgxMDAxMTAyOTU2WhcNMzMxMDAxMjM1 OTU5WjCBgjELMAkGA1UEBhMCREUxKzApBgNVBAoMIlQtU3lzdGVtcyBFbnRlcnBy aXNlIFNlcnZpY2VzIEdtYkgxHzAdBgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBDZW50 ZXIxJTAjBgNVBAMMHFQtVGVsZVNlYyBHbG9iYWxSb290IENsYXNzIDMwggEiMA0G CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC9dZPwYiJvJK7genasfb3ZJNW4t/zN 8ELg63iIVl6bmlQdTQyK9tPPcPRStdiTBONGhnFBSivwKixVA9ZIw+A5OO3yXDw/ RLyTPWGrTs0NvvAgJ1gORH8EGoel15YUNpDQSXuhdfsaa3Ox+M6pCSzyU9XDFES4 hqX2iys52qMzVNn6chr3IhUciJFrf2blw2qAsCTz34ZFiP0Zf3WHHx+xGwpzJFu5 ZeAsVMhg02YXP+HMVDNzkQI6pn97djmiH5a2OK61yJN0HZ65tOVgnS9W0eDrXltM EnAMbEQgqxHY9Bn20pxSN+f6tsIxO0rUFJmtxxr1XV/6B7h8DR/Wgx6zAgMBAAGj QjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBS1 A/d2O2GCahKqGFPrAyGUv/7OyjANBgkqhkiG9w0BAQsFAAOCAQEAVj3vlNW92nOy WL6ukK2YJ5f+AbGwUgC4TeQbIXQbfsDuXmkqJa9c1h3a0nnJ85cp4IaH3gRZD/FZ 1GSFS5mvJQQeyUapl96Cshtwn5z2r3Ex3XsFpSzTucpH9sry9uetuUg/vBa3wW30 6gmv7PO15wWeph6KU1HWk4HMdJP2udqmJQV0eVp+QD6CSyYRMG7hP0HHRwA11fXT 91Q+gT3aSWqas+8QPebrb9HIIkfLzM8BMZLZGOMivgkeGj5asuRrDFR6fUNOuIml e9eiPZaGzPImNC1qkp2aGtAw4l1OBLBfiyB+d8E9lYLRRpo7PHi4b6HQDWSieB4p TpPDpFQUWw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFFzCCA/+gAwIBAgIBETANBgkqhkiG9w0BAQUFADCCASsxCzAJBgNVBAYTAlRS MRgwFgYDVQQHDA9HZWJ6ZSAtIEtvY2FlbGkxRzBFBgNVBAoMPlTDvHJraXllIEJp bGltc2VsIHZlIFRla25vbG9qaWsgQXJhxZ90xLFybWEgS3VydW11IC0gVMOcQsSw VEFLMUgwRgYDVQQLDD9VbHVzYWwgRWxla3Ryb25payB2ZSBLcmlwdG9sb2ppIEFy YcWfdMSxcm1hIEVuc3RpdMO8c8O8IC0gVUVLQUUxIzAhBgNVBAsMGkthbXUgU2Vy dGlmaWthc3lvbiBNZXJrZXppMUowSAYDVQQDDEFUw5xCxLBUQUsgVUVLQUUgS8O2 ayBTZXJ0aWZpa2EgSGl6bWV0IFNhxJ9sYXnEsWPEsXPEsSAtIFPDvHLDvG0gMzAe Fw0wNzA4MjQxMTM3MDdaFw0xNzA4MjExMTM3MDdaMIIBKzELMAkGA1UEBhMCVFIx GDAWBgNVBAcMD0dlYnplIC0gS29jYWVsaTFHMEUGA1UECgw+VMO8cmtpeWUgQmls aW1zZWwgdmUgVGVrbm9sb2ppayBBcmHFn3TEsXJtYSBLdXJ1bXUgLSBUw5xCxLBU QUsxSDBGBgNVBAsMP1VsdXNhbCBFbGVrdHJvbmlrIHZlIEtyaXB0b2xvamkgQXJh xZ90xLFybWEgRW5zdGl0w7xzw7wgLSBVRUtBRTEjMCEGA1UECwwaS2FtdSBTZXJ0 aWZpa2FzeW9uIE1lcmtlemkxSjBIBgNVBAMMQVTDnELEsFRBSyBVRUtBRSBLw7Zr IFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sxc8SxIC0gU8O8csO8bSAzMIIB IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAim1L/xCIOsP2fpTo6iBkcK4h gb46ezzb8R1Sf1n68yJMlaCQvEhOEav7t7WNeoMojCZG2E6VQIdhn8WebYGHV2yK O7Rm6sxA/OOqbLLLAdsyv9Lrhc+hDVXDWzhXcLh1xnnRFDDtG1hba+818qEhTsXO fJlfbLm4IpNQp81McGq+agV/E5wrHur+R84EpW+sky58K5+eeROR6Oqeyjh1jmKw lZMq5d/pXpduIF9fhHpEORlAHLpVK/swsoHvhOPc7Jg4OQOFCKlUAwUp8MmPi+oL hmUZEdPpCSPeaJMDyTYcIW7OjGbxmTDY17PDHfiBLqi9ggtm/oLL4eAagsNAgQID AQABo0IwQDAdBgNVHQ4EFgQUvYiHyY/2pAoLquvF/pEjnatKijIwDgYDVR0PAQH/ BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAB18+kmP NOm3JpIWmgV050vQbTlswyb2zrgxvMTfvCr4N5EY3ATIZJkrGG2AA1nJrvhY0D7t wyOfaTyGOBye79oneNGEN3GKPEs5z35FBtYt2IpNeBLWrcLTy9LQQfMmNkqblWwM 7uXRQydmwYj3erMgbOqwaSvHIOgMA8RBBZniP+Rr+KCGgceExh/VS4ESshYhLBOh gLJeDEoTniDYYkCrkOpkSi+sDQESeUWoL4cZaMjihccwsnX5OD+ywJO0a+IDRM5n oN+J1q2MdqMTw5RhK2vZbMEHCiIHhWyFJEapvj+LeISCfiQMnf2BN+MlqO02TpUs yZyQ2uypQjyttgI= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID+zCCAuOgAwIBAgIBATANBgkqhkiG9w0BAQUFADCBtzE/MD0GA1UEAww2VMOc UktUUlVTVCBFbGVrdHJvbmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sx c8SxMQswCQYDVQQGDAJUUjEPMA0GA1UEBwwGQU5LQVJBMVYwVAYDVQQKDE0oYykg MjAwNSBUw5xSS1RSVVNUIEJpbGdpIMSwbGV0acWfaW0gdmUgQmlsacWfaW0gR8O8 dmVubGnEn2kgSGl6bWV0bGVyaSBBLsWeLjAeFw0wNTA1MTMxMDI3MTdaFw0xNTAz MjIxMDI3MTdaMIG3MT8wPQYDVQQDDDZUw5xSS1RSVVNUIEVsZWt0cm9uaWsgU2Vy dGlmaWthIEhpem1ldCBTYcSfbGF5xLFjxLFzxLExCzAJBgNVBAYMAlRSMQ8wDQYD VQQHDAZBTktBUkExVjBUBgNVBAoMTShjKSAyMDA1IFTDnFJLVFJVU1QgQmlsZ2kg xLBsZXRpxZ9pbSB2ZSBCaWxpxZ9pbSBHw7x2ZW5sacSfaSBIaXptZXRsZXJpIEEu xZ4uMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAylIF1mMD2Bxf3dJ7 XfIMYGFbazt0K3gNfUW9InTojAPBxhEqPZW8qZSwu5GXyGl8hMW0kWxsE2qkVa2k heiVfrMArwDCBRj1cJ02i67L5BuBf5OI+2pVu32Fks66WJ/bMsW9Xe8iSi9BB35J YbOG7E6mQW6EvAPs9TscyB/C7qju6hJKjRTP8wrgUDn5CDX4EVmt5yLqS8oUBt5C urKZ8y1UiBAG6uEaPj1nH/vO+3yC6BFdSsG5FOpU2WabfIl9BJpiyelSPJ6c79L1 JuTm5Rh8i27fbMx4W09ysstcP4wFjdFMjK2Sx+F4f2VsSQZQLJ4ywtdKxnWKWU51 b0dewQIDAQABoxAwDjAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4IBAQAV 9VX/N5aAWSGk/KEVTCD21F/aAyT8z5Aa9CEKmu46sWrv7/hg0Uw2ZkUd82YCdAR7 kjCo3gp2D++Vbr3JN+YaDayJSFvMgzbC9UZcWYJWtNX+I7TYVBxEq8Sn5RTOPEFh fEPmzcSBCYsk+1Ql1haolgxnB2+zUEfjHCQo3SqYpGH+2+oSN7wBGjSFvW5P55Fy B0SFHljKVETd96y5y4khctuPwGkplyqjrhgjlxxBKot8KsF8kOipKMDTkcatKIdA aLX/7KfS0zgYnNN9aV3wxqUeJBujR/xpB2jn5Jq07Q+hh4cCzofSSE7hvP/L8XKS RGQDJereW26fyfJOrN3H -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEPDCCAySgAwIBAgIBATANBgkqhkiG9w0BAQUFADCBvjE/MD0GA1UEAww2VMOc UktUUlVTVCBFbGVrdHJvbmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sx c8SxMQswCQYDVQQGEwJUUjEPMA0GA1UEBwwGQW5rYXJhMV0wWwYDVQQKDFRUw5xS S1RSVVNUIEJpbGdpIMSwbGV0acWfaW0gdmUgQmlsacWfaW0gR8O8dmVubGnEn2kg SGl6bWV0bGVyaSBBLsWeLiAoYykgS2FzxLFtIDIwMDUwHhcNMDUxMTA3MTAwNzU3 WhcNMTUwOTE2MTAwNzU3WjCBvjE/MD0GA1UEAww2VMOcUktUUlVTVCBFbGVrdHJv bmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sxc8SxMQswCQYDVQQGEwJU UjEPMA0GA1UEBwwGQW5rYXJhMV0wWwYDVQQKDFRUw5xSS1RSVVNUIEJpbGdpIMSw bGV0acWfaW0gdmUgQmlsacWfaW0gR8O8dmVubGnEn2kgSGl6bWV0bGVyaSBBLsWe LiAoYykgS2FzxLFtIDIwMDUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB AQCpNn7DkUNMwxmYCMjHWHtPFoylzkkBH3MOrHUTpvqeLCDe2JAOCtFp0if7qnef J1Il4std2NiDUBd9irWCPwSOtNXwSadktx4uXyCcUHVPr+G1QRT0mJKIx+XlZEdh R3n9wFHxwZnn3M5q+6+1ATDcRhzviuyV79z/rxAc653YsKpqhRgNF8k+v/Gb0AmJ Qv2gQrSdiVFVKc8bcLyEVK3BEx+Y9C52YItdP5qtygy/p1Zbj3e41Z55SZI/4PGX JHpsmxcPbe9TmJEr5A++WXkHeLuXlfSfadRYhwqp48y2WBmfJiGxxFmNskF1wK1p zpwACPI2/z7woQ8arBT9pmAPAgMBAAGjQzBBMB0GA1UdDgQWBBTZN7NOBf3Zz58S Fq62iS/rJTqIHDAPBgNVHQ8BAf8EBQMDBwYAMA8GA1UdEwEB/wQFMAMBAf8wDQYJ KoZIhvcNAQEFBQADggEBAHJglrfJ3NgpXiOFX7KzLXb7iNcX/nttRbj2hWyfIvwq ECLsqrkw9qtY1jkQMZkpAL2JZkH7dN6RwRgLn7Vhy506vvWolKMiVW4XSf/SKfE4 Jl3vpao6+XF75tpYHdN0wgH6PmlYX63LaL4ULptswLbcoCb6dxriJNoaN+BnrdFz gw2lGh1uEpJ+hGIAF728JRhX8tepb1mIvDS3LoV4nZbcFMMsilKbloxSZj2GFotH uFEJjOp9zYhys2AzsfAKRO8P9Qk3iCQOLGsgOqL6EfJANZxEaGM7rDNvY7wsu/LS y3Z9fYjYHcgFHW68lKlmjHdxx/qR+i9Rnuk5UrbnBEI= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEPTCCAyWgAwIBAgIBATANBgkqhkiG9w0BAQUFADCBvzE/MD0GA1UEAww2VMOc UktUUlVTVCBFbGVrdHJvbmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sx c8SxMQswCQYDVQQGEwJUUjEPMA0GA1UEBwwGQW5rYXJhMV4wXAYDVQQKDFVUw5xS S1RSVVNUIEJpbGdpIMSwbGV0acWfaW0gdmUgQmlsacWfaW0gR8O8dmVubGnEn2kg SGl6bWV0bGVyaSBBLsWeLiAoYykgQXJhbMSxayAyMDA3MB4XDTA3MTIyNTE4Mzcx OVoXDTE3MTIyMjE4MzcxOVowgb8xPzA9BgNVBAMMNlTDnFJLVFJVU1QgRWxla3Ry b25payBTZXJ0aWZpa2EgSGl6bWV0IFNhxJ9sYXnEsWPEsXPEsTELMAkGA1UEBhMC VFIxDzANBgNVBAcMBkFua2FyYTFeMFwGA1UECgxVVMOcUktUUlVTVCBCaWxnaSDE sGxldGnFn2ltIHZlIEJpbGnFn2ltIEfDvHZlbmxpxJ9pIEhpem1ldGxlcmkgQS7F ni4gKGMpIEFyYWzEsWsgMjAwNzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC ggEBAKu3PgqMyKVYFeaK7yc9SrToJdPNM8Ig3BnuiD9NYvDdE3ePYakqtdTyuTFY KTsvP2qcb3N2Je40IIDu6rfwxArNK4aUyeNgsURSsloptJGXg9i3phQvKUmi8wUG +7RP2qFsmmaf8EMJyupyj+sA1zU511YXRxcw9L6/P8JorzZAwan0qafoEGsIiveG HtyaKhUG9qPw9ODHFNRRf8+0222vR5YXm3dx2KdxnSQM9pQ/hTEST7ruToK4uT6P IzdezKKqdfcYbwnTrqdUKDT74eA7YH2gvnmJhsifLfkKS8RQouf9eRbHegsYz85M 733WB2+Y8a+xwXrXgTW4qhe04MsCAwEAAaNCMEAwHQYDVR0OBBYEFCnFkKslrxHk Yb+j/4hhkeYO/pyBMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MA0G CSqGSIb3DQEBBQUAA4IBAQAQDdr4Ouwo0RSVgrESLFF6QSU2TJ/sPx+EnWVUXKgW AkD6bho3hO9ynYYKVZ1WKKxmLNA6VpM0ByWtCLCPyA8JWcqdmBzlVPi5RX9ql2+I aE1KBiY3iAIOtsbWcpnOa3faYjGkVh+uX4132l32iPwa2Z61gfAyuOOI0JzzaqC5 mxRZNTZPz/OOXl0XrRWV2N2y1RVuAE6zS89mlOTgzbUF2mNXi+WzqtvALhyQRNsa XRik7r4EW5nVcV9VZWRi1aKbBFmGyGJ353yCRWo9F7/snXUMrqNvWtMvmDb08PUZ qxFdyKbjKlhqQgnDvZImZjINXQhVdP+MmNAKpoRq0Tl9 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDezCCAmOgAwIBAgIBATANBgkqhkiG9w0BAQUFADBfMQswCQYDVQQGEwJUVzES MBAGA1UECgwJVEFJV0FOLUNBMRAwDgYDVQQLDAdSb290IENBMSowKAYDVQQDDCFU V0NBIFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDgwODI4MDcyNDMz WhcNMzAxMjMxMTU1OTU5WjBfMQswCQYDVQQGEwJUVzESMBAGA1UECgwJVEFJV0FO LUNBMRAwDgYDVQQLDAdSb290IENBMSowKAYDVQQDDCFUV0NBIFJvb3QgQ2VydGlm aWNhdGlvbiBBdXRob3JpdHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB AQCwfnK4pAOU5qfeCTiRShFAh6d8WWQUe7UREN3+v9XAu1bihSX0NXIP+FPQQeFE AcK0HMMxQhZHhTMidrIKbw/lJVBPhYa+v5guEGcevhEFhgWQxFnQfHgQsIBct+HH K3XLfJ+utdGdIzdjp9xCoi2SBBtQwXu4PhvJVgSLL1KbralW6cH/ralYhzC2gfeX RfwZVzsrb+RH9JlF/h3x+JejiB03HFyP4HYlmlD4oFT/RJB2I9IyxsOrBr/8+7/z rX2SYgJbKdM1o5OaQ2RgXbL6Mv87BK9NQGr5x+PvI/1ry+UPizgN7gr8/g+YnzAx 3WxSZfmLgb4i4RxYA7qRG4kHAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNV HRMBAf8EBTADAQH/MB0GA1UdDgQWBBRqOFsmjd6LWvJPelSDGRjjCDWmujANBgkq hkiG9w0BAQUFAAOCAQEAPNV3PdrfibqHDAhUaiBQkr6wQT25JmSDCi/oQMCXKCeC MErJk/9q56YAf4lCmtYR5VPOL8zy2gXE/uJQxDqGfczafhAJO5I1KlOy/usrBdls XebQ79NqZp4VKIV66IIArB6nCWlWQtNoURi+VJq/REG6Sb4gumlc7rh3zc5sH62D lhh9DrUUOYTxKOkto557HnpyWoOzeW/vtPzQCqVYT0bf+215WfKEIlKuD8z7fDvn aspHYcN6+NOSBB+4IIThNlQWx0DeO4pz3N/GCUzf7Nr/1FNCocnyYh0igzyXxfkZ YiesZSLX0zzG5Y6yU8xJzrww/nsOM5D77dIUkR8Hrw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEXjCCA0agAwIBAgIQRL4Mi1AAIbQR0ypoBqmtaTANBgkqhkiG9w0BAQUFADCB kzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2Ug Q2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExho dHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xGzAZBgNVBAMTElVUTiAtIERBVEFDb3Jw IFNHQzAeFw05OTA2MjQxODU3MjFaFw0xOTA2MjQxOTA2MzBaMIGTMQswCQYDVQQG EwJVUzELMAkGA1UECBMCVVQxFzAVBgNVBAcTDlNhbHQgTGFrZSBDaXR5MR4wHAYD VQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsxITAfBgNVBAsTGGh0dHA6Ly93d3cu dXNlcnRydXN0LmNvbTEbMBkGA1UEAxMSVVROIC0gREFUQUNvcnAgU0dDMIIBIjAN BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3+5YEKIrblXEjr8uRgnn4AgPLit6 E5Qbvfa2gI5lBZMAHryv4g+OGQ0SR+ysraP6LnD43m77VkIVni5c7yPeIbkFdicZ D0/Ww5y0vpQZY/KmEQrrU0icvvIpOxboGqBMpsn0GFlowHDyUwDAXlCCpVZvNvlK 4ESGoE1O1kduSUrLZ9emxAW5jh70/P/N5zbgnAVssjMiFdC04MwXwLLA9P4yPykq lXvY8qdOD1R8oQ2AswkDwf9c3V6aPryuvEeKaq5xyh+xKrhfQgUL7EYw0XILyulW bfXv33i+Ybqypa4ETLyorGkVl73v67SMvzX41MPRKA5cOp9wGDMgd8SirwIDAQAB o4GrMIGoMAsGA1UdDwQEAwIBxjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRT MtGzz3/64PGgXYVOktKeRR20TzA9BgNVHR8ENjA0MDKgMKAuhixodHRwOi8vY3Js LnVzZXJ0cnVzdC5jb20vVVROLURBVEFDb3JwU0dDLmNybDAqBgNVHSUEIzAhBggr BgEFBQcDAQYKKwYBBAGCNwoDAwYJYIZIAYb4QgQBMA0GCSqGSIb3DQEBBQUAA4IB AQAnNZcAiosovcYzMB4p/OL31ZjUQLtgyr+rFywJNn9Q+kHcrpY6CiM+iVnJowft Gzet/Hy+UUla3joKVAgWRcKZsYfNjGjgaQPpxE6YsjuMFrMOoAyYUJuTqXAJyCyj j98C5OBxOvG0I3KgqgHf35g+FFCgMSa9KOlaMCZ1+XtgHI3zzVAmbQQnmt/VDUVH KWss5nbZqSl9Mt3JNjy9rjXxEZ4du5A/EkdOjtd+D2JzHVImOBwYSf0wdJrE5SIv 2MCN7ZF6TACPcn9d2t0bi0Vr591pl6jFVkwPDPafepE39peC4N1xaf92P2BNPM/3 mfnGV/TJVTl4uix5yaaIK/QI -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEojCCA4qgAwIBAgIQRL4Mi1AAJLQR0zYlJWfJiTANBgkqhkiG9w0BAQUFADCB rjELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2Ug Q2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExho dHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xNjA0BgNVBAMTLVVUTi1VU0VSRmlyc3Qt Q2xpZW50IEF1dGhlbnRpY2F0aW9uIGFuZCBFbWFpbDAeFw05OTA3MDkxNzI4NTBa Fw0xOTA3MDkxNzM2NThaMIGuMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVVQxFzAV BgNVBAcTDlNhbHQgTGFrZSBDaXR5MR4wHAYDVQQKExVUaGUgVVNFUlRSVVNUIE5l dHdvcmsxITAfBgNVBAsTGGh0dHA6Ly93d3cudXNlcnRydXN0LmNvbTE2MDQGA1UE AxMtVVROLVVTRVJGaXJzdC1DbGllbnQgQXV0aGVudGljYXRpb24gYW5kIEVtYWls MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsjmFpPJ9q0E7YkY3rs3B YHW8OWX5ShpHornMSMxqmNVNNRm5pELlzkniii8efNIxB8dOtINknS4p1aJkxIW9 hVE1eaROaJB7HHqkkqgX8pgV8pPMyaQylbsMTzC9mKALi+VuG6JG+ni8om+rWV6l L8/K2m2qL+usobNqqrcuZzWLeeEeaYji5kbNoKXqvgvOdjp6Dpvq/NonWz1zHyLm SGHGTPNpsaguG7bUMSAsvIKKjqQOpdeJQ/wWWq8dcdcRWdq6hw2v+vPhwvCkxWeM 1tZUOt4KpLoDd7NlyP0e03RiqhjKaJMeoYV+9Udly/hNVyh00jT/MLbu9mIwFIws 6wIDAQABo4G5MIG2MAsGA1UdDwQEAwIBxjAPBgNVHRMBAf8EBTADAQH/MB0GA1Ud DgQWBBSJgmd9xJ0mcABLtFBIfN49rgRufTBYBgNVHR8EUTBPME2gS6BJhkdodHRw Oi8vY3JsLnVzZXJ0cnVzdC5jb20vVVROLVVTRVJGaXJzdC1DbGllbnRBdXRoZW50 aWNhdGlvbmFuZEVtYWlsLmNybDAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUH AwQwDQYJKoZIhvcNAQEFBQADggEBALFtYV2mGn98q0rkMPxTbyUkxsrt4jFcKw7u 7mFVbwQ+zznexRtJlOTrIEy05p5QLnLZjfWqo7NK2lYcYJeA3IKirUq9iiv/Cwm0 xtcgBEXkzYABurorbs6q15L+5K/r9CYdFip/bDCVNy8zEqx/3cfREYxRmLLQo5HQ rfafnoOTHh1CuEava2bwm3/q4wMC5QJRwarVNZ1yQAOJujEdxRBoUp7fooXFXAim eOZTT7Hot9MUnpOmw2TjrH5xzbyf6QMbzPvprDHBr3wVdAKZw7JHpsIyYdfHb0gk USeh1YdV8nuPmD0Wnu51tvjQjvLzxq4oW6fw8zYX/MMF08oDSlQ= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEdDCCA1ygAwIBAgIQRL4Mi1AAJLQR0zYq/mUK/TANBgkqhkiG9w0BAQUFADCB lzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2Ug Q2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExho dHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xHzAdBgNVBAMTFlVUTi1VU0VSRmlyc3Qt SGFyZHdhcmUwHhcNOTkwNzA5MTgxMDQyWhcNMTkwNzA5MTgxOTIyWjCBlzELMAkG A1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2UgQ2l0eTEe MBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExhodHRwOi8v d3d3LnVzZXJ0cnVzdC5jb20xHzAdBgNVBAMTFlVUTi1VU0VSRmlyc3QtSGFyZHdh cmUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCx98M4P7Sof885glFn 0G2f0v9Y8+efK+wNiVSZuTiZFvfgIXlIwrthdBKWHTxqctU8EGc6Oe0rE81m65UJ M6Rsl7HoxuzBdXmcRl6Nq9Bq/bkqVRcQVLMZ8Jr28bFdtqdt++BxF2uiiPsA3/4a MXcMmgF6sTLjKwEHOG7DpV4jvEWbe1DByTCP2+UretNb+zNAHqDVmBe8i4fDidNd oI6yqqr2jmmIBsX6iSHzCJ1pLgkzmykNRg+MzEk0sGlRvfkGzWitZky8PqxhvQqI DsjfPe58BEydCl5rkdbux+0ojatNh4lz0G6k0B4WixThdkQDf2Os5M1JnMWS9Ksy oUhbAgMBAAGjgbkwgbYwCwYDVR0PBAQDAgHGMA8GA1UdEwEB/wQFMAMBAf8wHQYD VR0OBBYEFKFyXyYbKJhDlV0HN9WFlp1L0sNFMEQGA1UdHwQ9MDswOaA3oDWGM2h0 dHA6Ly9jcmwudXNlcnRydXN0LmNvbS9VVE4tVVNFUkZpcnN0LUhhcmR3YXJlLmNy bDAxBgNVHSUEKjAoBggrBgEFBQcDAQYIKwYBBQUHAwUGCCsGAQUFBwMGBggrBgEF BQcDBzANBgkqhkiG9w0BAQUFAAOCAQEARxkP3nTGmZev/K0oXnWO6y1n7k57K9cM //bey1WiCuFMVGWTYGufEpytXoMs61quwOQt9ABjHbjAbPLPSbtNk28Gpgoiskli CE7/yMgUsogWXecB5BKV5UU0s4tpvc+0hY91UZ59Ojg6FEgSxvunOxqNDYJAB+gE CJChicsZUN/KHAG8HQQZexB2lzvukJDKxA4fFm517zP4029bHpbj4HR3dHuKom4t 3XbWOTCC8KucUvIqx69JXn7HaOWCgchqJ/kniCrVWFCVH/A7HFe7fRQ5YiuayZSS KqMiDP+JJn1fIytH1xUdqWqeUQ0qUZ6B+dQ7XnASfxAynB67nfhmqA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIC5zCCAlACAQEwDQYJKoZIhvcNAQEFBQAwgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0 IFZhbGlkYXRpb24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAz BgNVBAsTLFZhbGlDZXJ0IENsYXNzIDEgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9y aXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG 9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMB4XDTk5MDYyNTIyMjM0OFoXDTE5MDYy NTIyMjM0OFowgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRpb24gTmV0d29y azEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENs YXNzIDEgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRw Oi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNl cnQuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDYWYJ6ibiWuqYvaG9Y LqdUHAZu9OqNSLwxlBfw8068srg1knaw0KWlAdcAAxIiGQj4/xEjm84H9b9pGib+ TunRf50sQB1ZaG6m+FiwnRqP0z/x3BkGgagO4DrdyFNFCQbmD3DD+kCmDuJWBQ8Y TfwggtFzVXSNdnKgHZ0dwN0/cQIDAQABMA0GCSqGSIb3DQEBBQUAA4GBAFBoPUn0 LBwGlN+VYH+Wexf+T3GtZMjdd9LvWVXoP+iOBSoh8gfStadS/pyxtuJbdxdA6nLW I8sogTLDAHkY7FkXicnGah5xyf23dKUlRWnFSKsZ4UWKJWsZ7uW7EvV/96aNUcPw nXS3qT6gpf+2SQMT2iLM7XGCK5nPOrf1LXLI -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIC5zCCAlACAQEwDQYJKoZIhvcNAQEFBQAwgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0 IFZhbGlkYXRpb24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAz BgNVBAsTLFZhbGlDZXJ0IENsYXNzIDIgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9y aXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG 9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMB4XDTk5MDYyNjAwMTk1NFoXDTE5MDYy NjAwMTk1NFowgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRpb24gTmV0d29y azEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENs YXNzIDIgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRw Oi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNl cnQuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDOOnHK5avIWZJV16vY dA757tn2VUdZZUcOBVXc65g2PFxTXdMwzzjsvUGJ7SVCCSRrCl6zfN1SLUzm1NZ9 WlmpZdRJEy0kTRxQb7XBhVQ7/nHk01xC+YDgkRoKWzk2Z/M/VXwbP7RfZHM047QS v4dk+NoS/zcnwbNDu+97bi5p9wIDAQABMA0GCSqGSIb3DQEBBQUAA4GBADt/UG9v UJSZSWI4OB9L+KXIPqeCgfYrx+jFzug6EILLGACOTb2oWH+heQC1u+mNr0HZDzTu IYEZoDJJKPTEjlbVUjP9UNV+mWwD5MlM/Mtsq2azSiGM5bUMMj4QssxsodyamEwC W/POuZ6lcg5Ktz885hZo+L7tdEy8W9ViH0Pd -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICPDCCAaUCED9pHoGc8JpK83P/uUii5N0wDQYJKoZIhvcNAQEFBQAwXzELMAkG A1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFz cyAxIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTk2 MDEyOTAwMDAwMFoXDTI4MDgwMjIzNTk1OVowXzELMAkGA1UEBhMCVVMxFzAVBgNV BAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAxIFB1YmxpYyBQcmlt YXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGfMA0GCSqGSIb3DQEBAQUAA4GN ADCBiQKBgQDlGb9to1ZhLZlIcfZn3rmN67eehoAKkQ76OCWvRoiC5XOooJskXQ0f zGVuDLDQVoQYh5oGmxChc9+0WDlrbsH2FdWoqD+qEgaNMax/sDTXjzRniAnNFBHi TkVWaR94AoDa3EeRKbs2yWNcxeDXLYd7obcysHswuiovMaruo2fa2wIDAQABMA0G CSqGSIb3DQEBBQUAA4GBAFgVKTk8d6PaXCUDfGD67gmZPCcQcMgMCeazh88K4hiW NWLMv5sneYlfycQJ9M61Hd8qveXbhpxoJeUwfLaJFf5n0a3hUKw8fGJLj7qE1xIV Gx/KXQ/BUpQqEZnae88MNhPVNdwQGVnqlMEAv3WP2fr9dgTbYruQagPZRjXZ+Hxb -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDAjCCAmsCEEzH6qqYPnHTkxD4PTqJkZIwDQYJKoZIhvcNAQEFBQAwgcExCzAJ BgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xh c3MgMSBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcy MTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3Jp emVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMB4X DTk4MDUxODAwMDAwMFoXDTI4MDgwMTIzNTk1OVowgcExCzAJBgNVBAYTAlVTMRcw FQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xhc3MgMSBQdWJsaWMg UHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMTowOAYDVQQLEzEo YykgMTk5OCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5 MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMIGfMA0GCSqGSIb3DQEB AQUAA4GNADCBiQKBgQCq0Lq+Fi24g9TK0g+8djHKlNgdk4xWArzZbxpvUjZudVYK VdPfQ4chEWWKfo+9Id5rMj8bhDSVBZ1BNeuS65bdqlk/AVNtmU/t5eIqWpDBucSm Fc/IReumXY6cPvBkJHalzasab7bYe1FhbqZ/h8jit+U03EGI6glAvnOSPWvndQID AQABMA0GCSqGSIb3DQEBBQUAA4GBAKlPww3HZ74sy9mozS11534Vnjty637rXC0J h9ZrbWB85a7FkCMMXErQr7Fd88e2CtvgFZMN3QO8x3aKtd1Pw5sTdbgBwObJW2ul uIncrKTdcu1OofdPvAbT6shkdHvClUGcZXNY8ZCaPGqxmMnEh7zPRW1F4m4iP/68 DzFc6PLZ -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEGjCCAwICEQCLW3VWhFSFCwDPrzhIzrGkMA0GCSqGSIb3DQEBBQUAMIHKMQsw CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZl cmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWdu LCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlT aWduIENsYXNzIDEgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3Jp dHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQswCQYD VQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlT aWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJ bmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWdu IENsYXNzIDEgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkg LSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAN2E1Lm0+afY8wR4 nN493GwTFtl63SRRZsDHJlkNrAYIwpTRMx/wgzUfbhvI3qpuFU5UJ+/EbRrsC+MO 8ESlV8dAWB6jRx9x7GD2bZTIGDnt/kIYVt/kTEkQeE4BdjVjEjbdZrwBBDajVWjV ojYJrKshJlQGrT/KFOCsyq0GHZXi+J3x4GD/wn91K0zM2v6HmSHquv4+VNfSWXjb PG7PoBMAGrgnoeS+Z5bKoMWznN3JdZ7rMJpfo83ZrngZPyPpXNspva1VyBtUjGP2 6KbqxzcSXKMpHgLZ2x87tNcPVkeBFQRKr4Mn0cVYiMHd9qqnoxjaaKptEVHhv2Vr n5Z20T0CAwEAATANBgkqhkiG9w0BAQUFAAOCAQEAq2aN17O6x5q25lXQBfGfMY1a qtmqRiYPce2lrVNWYgFHKkTp/j90CxObufRNG7LRX7K20ohcs5/Ny9Sn2WCVhDr4 wTcdYcrnsMXlkdpUpqwxga6X3s0IrLjAl4B/bnKk52kTlWUfxJM8/XmPBNQ+T+r3 ns7NZ3xPZQL/kYVUc8f/NveGLezQXk//EZ9yBta4GvFMDSZl4kSAHsef493oCtrs pSCAaWihT37ha88HQfqDjrw43bAuEbFrskLMmrz5SCJ5ShkPshw+IHTZasO+8ih4 E1Z5T21Q6huwtVexN2ZYI/PcD98Kh8TvhgXVOBRgmaNL3gaWcSzy27YfpO8/7g== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDAzCCAmwCEQC5L2DMiJ+hekYJuFtwbIqvMA0GCSqGSIb3DQEBBQUAMIHBMQsw CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xPDA6BgNVBAsTM0Ns YXNzIDIgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBH MjE6MDgGA1UECxMxKGMpIDE5OTggVmVyaVNpZ24sIEluYy4gLSBGb3IgYXV0aG9y aXplZCB1c2Ugb25seTEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29yazAe Fw05ODA1MTgwMDAwMDBaFw0yODA4MDEyMzU5NTlaMIHBMQswCQYDVQQGEwJVUzEX MBUGA1UEChMOVmVyaVNpZ24sIEluYy4xPDA6BgNVBAsTM0NsYXNzIDIgUHVibGlj IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMjE6MDgGA1UECxMx KGMpIDE5OTggVmVyaVNpZ24sIEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25s eTEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29yazCBnzANBgkqhkiG9w0B AQEFAAOBjQAwgYkCgYEAp4gBIXQs5xoD8JjhlzwPIQjxnNuX6Zr8wgQGE75fUsjM HiwSViy4AWkszJkfrbCWrnkE8hM5wXuYuggs6MKEEyyqaekJ9MepAqRCwiNPStjw DqL7MWzJ5m+ZJwf15vRMeJ5t60aG+rmGyVTyssSv1EYcWskVMP8NbPUtDm3Of3cC AwEAATANBgkqhkiG9w0BAQUFAAOBgQByLvl/0fFx+8Se9sVeUYpAmLho+Jscg9ji nb3/7aHmZuovCfTK1+qlK5X2JGCGTUQug6XELaDTrnhpb3LabK4I8GOSN+a7xDAX rXfMSTWqz9iP0b63GJZHc2pUIjRkLbYWm1lbtFFZOrMLFPQS32eg9K0yZF6xRnIn jBJ7xUS0rg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEGTCCAwECEGFwy0mMX5hFKeewptlQW3owDQYJKoZIhvcNAQEFBQAwgcoxCzAJ BgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVy aVNpZ24gVHJ1c3QgTmV0d29yazE6MDgGA1UECxMxKGMpIDE5OTkgVmVyaVNpZ24s IEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTFFMEMGA1UEAxM8VmVyaVNp Z24gQ2xhc3MgMiBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0 eSAtIEczMB4XDTk5MTAwMTAwMDAwMFoXDTM2MDcxNjIzNTk1OVowgcoxCzAJBgNV BAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVyaVNp Z24gVHJ1c3QgTmV0d29yazE6MDgGA1UECxMxKGMpIDE5OTkgVmVyaVNpZ24sIElu Yy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTFFMEMGA1UEAxM8VmVyaVNpZ24g Q2xhc3MgMiBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAt IEczMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArwoNwtUs22e5LeWU J92lvuCwTY+zYVY81nzD9M0+hsuiiOLh2KRpxbXiv8GmR1BeRjmL1Za6tW8UvxDO JxOeBUebMXoT2B/Z0wI3i60sR/COgQanDTAM6/c8DyAd3HJG7qUCyFvDyVZpTMUY wZF7C9UTAJu878NIPkZgIIUq1ZC2zYugzDLdt/1AVbJQHFauzI13TccgTacxdu9o koqQHgiBVrKtaaNS0MscxCM9H5n+TOgWY47GCI72MfbS+uV23bUckqNJzc0BzWjN qWm6o+sdDZykIKbBoMXRRkwXbdKsZj+WjOCE1Db/IlnF+RFgqF8EffIa9iVCYQ/E Srg+iQIDAQABMA0GCSqGSIb3DQEBBQUAA4IBAQA0JhU8wI1NQ0kdvekhktdmnLfe xbjQ5F1fdiLAJvmEOjr5jLX77GDx6M4EsMjdpwOPMPOY36TmpDHf0xwLRtxyID+u 7gU8pDM/CzmscHhzS5kr3zDCVLCoO1Wh/hYozUK9dG6A2ydEp85EXdQbkJgNHkKU sQAsBNB0owIFImNjzYO1+8FtYmtpdf1dcEG59b98377BMnMiIYtYgXsVkXq642RI sH/7NiXaldDxJBQX3RiAa0YjOVT1jmIJBB2UkKab5iXiQkWquJCtvgiPqQtCGJTP cjnhsUPgKM+351psE2tJs//jGHyJizNdrDPXp/naOlXJWBD5qu9ats9LS98q -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICPDCCAaUCEDyRMcsf9tAbDpq40ES/Er4wDQYJKoZIhvcNAQEFBQAwXzELMAkG A1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFz cyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTk2 MDEyOTAwMDAwMFoXDTI4MDgwMjIzNTk1OVowXzELMAkGA1UEBhMCVVMxFzAVBgNV BAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAzIFB1YmxpYyBQcmlt YXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGfMA0GCSqGSIb3DQEBAQUAA4GN ADCBiQKBgQDJXFme8huKARS0EN8EQNvjV69qRUCPhAwL0TPZ2RHP7gJYHyX3KqhE BarsAx94f56TuZoAqiN91qyFomNFx3InzPRMxnVx0jnvT0Lwdd8KkMaOIG+YD/is I19wKTakyYbnsZogy1Olhec9vn2a/iRFM9x2Fe0PonFkTGUugWhFpwIDAQABMA0G CSqGSIb3DQEBBQUAA4GBABByUqkFFBkyCEHwxWsKzH4PIRnN5GfcX6kb5sroc50i 2JhucwNhkcV8sEVAbkSdjbCxlnRhLQ2pRdKkkirWmnWXbj9T/UWZYB2oK0z5XqcJ 2HUw19JlYD1n1khVdWk/kfVIC0dpImmClr7JyDiGSnoscxlIaU5rfGW/D/xwzoiQ -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDAjCCAmsCEH3Z/gfPqB63EHln+6eJNMYwDQYJKoZIhvcNAQEFBQAwgcExCzAJ BgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xh c3MgMyBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcy MTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3Jp emVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMB4X DTk4MDUxODAwMDAwMFoXDTI4MDgwMTIzNTk1OVowgcExCzAJBgNVBAYTAlVTMRcw FQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xhc3MgMyBQdWJsaWMg UHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMTowOAYDVQQLEzEo YykgMTk5OCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5 MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMIGfMA0GCSqGSIb3DQEB AQUAA4GNADCBiQKBgQDMXtERXVxp0KvTuWpMmR9ZmDCOFoUgRm1HP9SFIIThbbP4 pO0M8RcPO/mn+SXXwc+EY/J8Y8+iR/LGWzOOZEAEaMGAuWQcRXfH2G71lSk8UOg0 13gfqLptQ5GVj0VXXn7F+8qkBOvqlzdUMG+7AUcyM83cV5tkaWH4mx0ciU9cZwID AQABMA0GCSqGSIb3DQEBBQUAA4GBAFFNzb5cy5gZnBWyATl4Lk0PZ3BwmcYQWpSk U01UbSuvDV1Ai2TT1+7eVmGSX6bEHRBhNtMsJzzoKQm5EWR0zLVznxxIqbxhAe7i F6YM40AIOw7n60RzKprxaZLvcRTDOaxxp5EJb+RxBrO6WVcmeQD2+A2iMzAo1KpY oJ2daZH9 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEGjCCAwICEQCbfgZJoz5iudXukEhxKe9XMA0GCSqGSIb3DQEBBQUAMIHKMQsw CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZl cmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWdu LCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlT aWduIENsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3Jp dHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQswCQYD VQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlT aWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJ bmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWdu IENsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkg LSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMu6nFL8eB8aHm8b N3O9+MlrlBIwT/A2R/XQkQr1F8ilYcEWQE37imGQ5XYgwREGfassbqb1EUGO+i2t KmFZpGcmTNDovFJbcCAEWNF6yaRpvIMXZK0Fi7zQWM6NjPXr8EJJC52XJ2cybuGu kxUccLwgTS8Y3pKI6GyFVxEa6X7jJhFUokWWVYPKMIno3Nij7SqAP395ZVc+FSBm CC+Vk7+qRy+oRpfwEuL+wgorUeZ25rdGt+INpsyow0xZVYnm6FNcHOqd8GIWC6fJ Xwzw3sJ2zq/3avL6QaaiMxTJ5Xpj055iN9WFZZ4O5lMkdBteHRJTW8cs54NJOxWu imi5V5cCAwEAATANBgkqhkiG9w0BAQUFAAOCAQEAERSWwauSCPc/L8my/uRan2Te 2yFPhpk0djZX3dAVL8WtfxUfN2JzPtTnX84XA9s1+ivbrmAJXx5fj267Cz3qWhMe DGBvtcC1IyIuBwvLqXTLR7sdwdela8wv0kL9Sd2nic9TutoAWii/gt/4uhMdUIaC /Y4wjylGsB49Ndo4YhYYSq3mtlFs3q9i6wHQHiT+eo8SGhJouPtmmRQURVyu565p F4ErWjfJXir0xuKhXFSbplQAz/DxwceYMBo7Nhbbo27q/a2ywtrvAkcTisDxszGt TxzhT5yvDwyd93gN2PQ1VoDat20Xj50egWTh/sVFuq1ruQp6Tk9LhO5L8X3dEQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDhDCCAwqgAwIBAgIQL4D+I4wOIg9IZxIokYesszAKBggqhkjOPQQDAzCByjEL MAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZW ZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNyBWZXJpU2ln biwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJp U2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9y aXR5IC0gRzQwHhcNMDcxMTA1MDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCByjELMAkG A1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJp U2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNyBWZXJpU2lnbiwg SW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2ln biBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5 IC0gRzQwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASnVnp8Utpkmw4tXNherJI9/gHm GUo9FANL+mAnINmDiWn6VMaaGF5VKmTeBvaNSjutEDxlPZCIBIngMGGzrl0Bp3ve fLK+ymVhAIau2o970ImtTR1ZmkGxvEeA3J5iw/mjgbIwga8wDwYDVR0TAQH/BAUw AwEB/zAOBgNVHQ8BAf8EBAMCAQYwbQYIKwYBBQUHAQwEYTBfoV2gWzBZMFcwVRYJ aW1hZ2UvZ2lmMCEwHzAHBgUrDgMCGgQUj+XTGoasjY5rw8+AatRIGCx7GS4wJRYj aHR0cDovL2xvZ28udmVyaXNpZ24uY29tL3ZzbG9nby5naWYwHQYDVR0OBBYEFLMW kf3upm7ktS5Jj4d4gYDs5bG1MAoGCCqGSM49BAMDA2gAMGUCMGYhDBgmYFo4e1ZC 4Kf8NoRRkSAsdk1DPcQdhCPQrNZ8NQbOzWm9kA3bbEhCHQ6qQgIxAJw9SDkjOVga FRJZap7v1VmyHVIsmXHNxynfGyphe3HR3vPA5Q06Sqotp9iGKt0uEA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIE0zCCA7ugAwIBAgIQGNrRniZ96LtKIVjNzGs7SjANBgkqhkiG9w0BAQUFADCB yjELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQL ExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJp U2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxW ZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0 aG9yaXR5IC0gRzUwHhcNMDYxMTA4MDAwMDAwWhcNMzYwNzE2MjM1OTU5WjCByjEL MAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZW ZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJpU2ln biwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJp U2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9y aXR5IC0gRzUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCvJAgIKXo1 nmAMqudLO07cfLw8RRy7K+D+KQL5VwijZIUVJ/XxrcgxiV0i6CqqpkKzj/i5Vbex t0uz/o9+B1fs70PbZmIVYc9gDaTY3vjgw2IIPVQT60nKWVSFJuUrjxuf6/WhkcIz SdhDY2pSS9KP6HBRTdGJaXvHcPaz3BJ023tdS1bTlr8Vd6Gw9KIl8q8ckmcY5fQG BO+QueQA5N06tRn/Arr0PO7gi+s3i+z016zy9vA9r911kTMZHRxAy3QkGSGT2RT+ rCpSx4/VBEnkjWNHiDxpg8v+R70rfk/Fla4OndTRQ8Bnc+MUCH7lP59zuDMKz10/ NIeWiu5T6CUVAgMBAAGjgbIwga8wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8E BAMCAQYwbQYIKwYBBQUHAQwEYTBfoV2gWzBZMFcwVRYJaW1hZ2UvZ2lmMCEwHzAH BgUrDgMCGgQUj+XTGoasjY5rw8+AatRIGCx7GS4wJRYjaHR0cDovL2xvZ28udmVy aXNpZ24uY29tL3ZzbG9nby5naWYwHQYDVR0OBBYEFH/TZafC3ey78DAJ80M5+gKv MzEzMA0GCSqGSIb3DQEBBQUAA4IBAQCTJEowX2LP2BqYLz3q3JktvXf2pXkiOOzE p6B4Eq1iDkVwZMXnl2YtmAl+X6/WzChl8gGqCBpH3vn5fJJaCGkgDdk+bW48DW7Y 5gaRQBi5+MHt39tBquCWIMnNZBU4gcmU7qKEKQsTb47bDN0lAtukixlE0kF6BWlK WE9gyn6CagsCqiUXObXbf+eEZSqVir2G3l6BFoMtEMze/aiCKm0oHw0LxOXnGiYZ 4fQRbxC1lfznQgUy286dUV4otp6F01vvpX1FQHKOtw5rDgb7MzVIcbidJ4vEZV8N hnacRHr2lVz2XTIIM6RUthg/aFzyQkqFOFSDX9HoLPKsEdao7WNq -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEGjCCAwICEQDsoKeLbnVqAc/EfMwvlF7XMA0GCSqGSIb3DQEBBQUAMIHKMQsw CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZl cmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWdu LCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlT aWduIENsYXNzIDQgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3Jp dHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQswCQYD VQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlT aWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJ bmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWdu IENsYXNzIDQgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkg LSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAK3LpRFpxlmr8Y+1 GQ9Wzsy1HyDkniYlS+BzZYlZ3tCD5PUPtbut8XzoIfzk6AzufEUiGXaStBO3IFsJ +mGuqPKljYXCKtbeZjbSmwL0qJJgfJxptI8kHtCGUvYynEFYHiK9zUVilQhu0Gbd U6LM8BDcVHOLBKFGMzNcF0C5nk3T875Vg+ixiY5afJqWIpA7iCXy0lOIAgwLePLm NxdLMEYH5IBtptiWLugs+BGzOA1mppvqySNb247i8xOOGlktqgLw7KSHZtzBP/XY ufTsgsbSPZUd5cBPhMnZo0QoBmrXRazwa2rvTl/4EYIeOGM0ZlDUPpNz+jDDZq3/ ky2X7wMCAwEAATANBgkqhkiG9w0BAQUFAAOCAQEAj/ola09b5KROJ1WrIhVZPMq1 CtRK26vdoV9TxaBXOcLORyu+OshWv8LZJxA6sQU8wHcxuzrTBXttmhwwjIDLk5Mq g6sFUYICABFna/OIYUdfA5PVWw3g8dShMjWFsjrbsIKr0csKvE+MW8VLADsfKoKm fjaF3H48ZwC15DtS4KjrXRX5xm3wrR0OhbepmnMUWluPQSjA1egtTaRezarZ7c7c 2NU8Qh0XwRJdRTjDOPP8hS6DRkiy1yBfkjaP53kPmF6Z6PDQpLv1U70qzlmwr25/ bLvSHgCwIe34QWKCudiyxLtGUPMxxY8BqHTr9Xgn2uf3ZkPznoM+IKrDNWCRzg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEuTCCA6GgAwIBAgIQQBrEZCGzEyEDDrvkEhrFHTANBgkqhkiG9w0BAQsFADCB vTELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQL ExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwOCBWZXJp U2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MTgwNgYDVQQDEy9W ZXJpU2lnbiBVbml2ZXJzYWwgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAe Fw0wODA0MDIwMDAwMDBaFw0zNzEyMDEyMzU5NTlaMIG9MQswCQYDVQQGEwJVUzEX MBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0 IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAyMDA4IFZlcmlTaWduLCBJbmMuIC0gRm9y IGF1dGhvcml6ZWQgdXNlIG9ubHkxODA2BgNVBAMTL1ZlcmlTaWduIFVuaXZlcnNh bCBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEF AAOCAQ8AMIIBCgKCAQEAx2E3XrEBNNti1xWb/1hajCMj1mCOkdeQmIN65lgZOIzF 9uVkhbSicfvtvbnazU0AtMgtc6XHaXGVHzk8skQHnOgO+k1KxCHfKWGPMiJhgsWH H26MfF8WIFFE0XBPV+rjHOPMee5Y2A7Cs0WTwCznmhcrewA3ekEzeOEz4vMQGn+H LL729fdC4uW/h2KJXwBL38Xd5HVEMkE6HnFuacsLdUYI0crSK5XQz/u5QGtkjFdN /BMReYTtXlT2NJ8IAfMQJQYXStrxHXpma5hgZqTZ79IugvHw7wnqRMkVauIDbjPT rJ9VAMf2CGqUuV/c4DPxhGD5WycRtPwW8rtWaoAljQIDAQABo4GyMIGvMA8GA1Ud EwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMG0GCCsGAQUFBwEMBGEwX6FdoFsw WTBXMFUWCWltYWdlL2dpZjAhMB8wBwYFKw4DAhoEFI/l0xqGrI2Oa8PPgGrUSBgs exkuMCUWI2h0dHA6Ly9sb2dvLnZlcmlzaWduLmNvbS92c2xvZ28uZ2lmMB0GA1Ud DgQWBBS2d/ppSEefUxLVwuoHMnYH0ZcHGTANBgkqhkiG9w0BAQsFAAOCAQEASvj4 sAPmLGd75JR3Y8xuTPl9Dg3cyLk1uXBPY/ok+myDjEedO2Pzmvl2MpWRsXe8rJq+ seQxIcaBlVZaDrHC1LGmWazxY8u4TB1ZkErvkBYoH1quEPuBUDgMbMzxPcP1Y+Oz 4yHJJDnp/RVmRvQbEdBNc6N9Rvk97ahfYtTxP/jgdFcrGJ2BtMQo2pSXpXDrrB2+ BxHw1dvd5Yzw1TKwg+ZX4o+/vqGqvz0dtdQ46tewXDpPaj+PwGZsY6rp2aQW9IHR lRQOfc2VNNnSj3BzgXucfr2YYdhFh5iQxeuGMMY1v/D/w1WIg0vvBZIGcfK4mJO3 7M2CYfE45k+XmCpajQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDojCCAoqgAwIBAgIQE4Y1TR0/BvLB+WUF1ZAcYjANBgkqhkiG9w0BAQUFADBr MQswCQYDVQQGEwJVUzENMAsGA1UEChMEVklTQTEvMC0GA1UECxMmVmlzYSBJbnRl cm5hdGlvbmFsIFNlcnZpY2UgQXNzb2NpYXRpb24xHDAaBgNVBAMTE1Zpc2EgZUNv bW1lcmNlIFJvb3QwHhcNMDIwNjI2MDIxODM2WhcNMjIwNjI0MDAxNjEyWjBrMQsw CQYDVQQGEwJVUzENMAsGA1UEChMEVklTQTEvMC0GA1UECxMmVmlzYSBJbnRlcm5h dGlvbmFsIFNlcnZpY2UgQXNzb2NpYXRpb24xHDAaBgNVBAMTE1Zpc2EgZUNvbW1l cmNlIFJvb3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCvV95WHm6h 2mCxlCfLF9sHP4CFT8icttD0b0/Pmdjh28JIXDqsOTPHH2qLJj0rNfVIsZHBAk4E lpF7sDPwsRROEW+1QK8bRaVK7362rPKgH1g/EkZgPI2h4H3PVz4zHvtH8aoVlwdV ZqW1LS7YgFmypw23RuwhY/81q6UCzyr0TP579ZRdhE2o8mCP2w4lPJ9zcc+U30rq 299yOIzzlr3xF7zSujtFWsan9sYXiwGd/BmoKoMWuDpI/k4+oKsGGelT84ATB+0t vz8KPFUgOSwsAGl0lUq8ILKpeeUYiZGo3BxN77t+Nwtd/jmliFKMAGzsGHxBvfaL dXe6YJ2E5/4tAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQD AgEGMB0GA1UdDgQWBBQVOIMPPyw/cDMezUb+B4wg4NfDtzANBgkqhkiG9w0BAQUF AAOCAQEAX/FBfXxcCLkr4NWSR/pnXKUTwwMhmytMiUbPWU3J/qVAtmPN3XEolWcR zCSs00Rsca4BIGsDoo8Ytyk6feUWYFN4PMCvFYP3j1IzJL1kk5fui/fbGKhtcbP3 LBfQdCVp9/5rPJS+TUtBjE7ic9DjkCJzQ83z7+pzzkWKsKZJ/0x9nXGIxHYdkFsd 7v3M9+79YKWxehZx0RbQfBI8bGmX265fOZpwLwU8GUYEmSA20GBuYQa7FkKMcPcw ++DbZqMAAb3mLNqRX6BGi01qnD093QVG/na/oAo85ADmJ7f/hC3euiInlhBx6yLt 398znM/jra6O1I7mT1GvFpLgXPYHDw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID5TCCAs2gAwIBAgIEOeSXnjANBgkqhkiG9w0BAQUFADCBgjELMAkGA1UEBhMC VVMxFDASBgNVBAoTC1dlbGxzIEZhcmdvMSwwKgYDVQQLEyNXZWxscyBGYXJnbyBD ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEvMC0GA1UEAxMmV2VsbHMgRmFyZ28gUm9v dCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwHhcNMDAxMDExMTY0MTI4WhcNMjEwMTE0 MTY0MTI4WjCBgjELMAkGA1UEBhMCVVMxFDASBgNVBAoTC1dlbGxzIEZhcmdvMSww KgYDVQQLEyNXZWxscyBGYXJnbyBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEvMC0G A1UEAxMmV2VsbHMgRmFyZ28gUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwggEi MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDVqDM7Jvk0/82bfuUER84A4n13 5zHCLielTWi5MbqNQ1mXx3Oqfz1cQJ4F5aHiidlMuD+b+Qy0yGIZLEWukR5zcUHE SxP9cMIlrCL1dQu3U+SlK93OvRw6esP3E48mVJwWa2uv+9iWsWCaSOAlIiR5NM4O JgALTqv9i86C1y8IcGjBqAr5dE8Hq6T54oN+J3N0Prj5OEL8pahbSCOz6+MlsoCu ltQKnMJ4msZoGK43YjdeUXWoWGPAUe5AeH6orxqg4bB4nVCMe+ez/I4jsNtlAHCE AQgAFG5Uhpq6zPk3EPbg3oQtnaSFN9OH4xXQwReQfhkhahKpdv0SAulPIV4XAgMB AAGjYTBfMA8GA1UdEwEB/wQFMAMBAf8wTAYDVR0gBEUwQzBBBgtghkgBhvt7hwcB CzAyMDAGCCsGAQUFBwIBFiRodHRwOi8vd3d3LndlbGxzZmFyZ28uY29tL2NlcnRw b2xpY3kwDQYJKoZIhvcNAQEFBQADggEBANIn3ZwKdyu7IvICtUpKkfnRLb7kuxpo 7w6kAOnu5+/u9vnldKTC2FJYxHT7zmu1Oyl5GFrvm+0fazbuSCUlFLZWohDo7qd/ 0D+j0MNdJu4HzMPBJCGHHt8qElNvQRbn7a6U+oxy+hNH8Dx+rn0ROhPs7fpvcmR7 nX1/Jv16+yWt6j4pf0zjAFcysLPp7VMX2YuyFA4w6OXVE8Zkr8QA1dhYJPz1j+zx x32l2w8n0cbyQIjmH/ZhqPRCyLk306m+LFZ4wnKbWV01QIroTmMatukgalHizqSQ 33ZwmVxwQ023tqcZZE6St8WRPH9IFmV7Fv3L/PvZ1dZPIWU7Sn9Ho/s= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEvTCCA6WgAwIBAgIBATANBgkqhkiG9w0BAQUFADCBhTELMAkGA1UEBhMCVVMx IDAeBgNVBAoMF1dlbGxzIEZhcmdvIFdlbGxzU2VjdXJlMRwwGgYDVQQLDBNXZWxs cyBGYXJnbyBCYW5rIE5BMTYwNAYDVQQDDC1XZWxsc1NlY3VyZSBQdWJsaWMgUm9v dCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwHhcNMDcxMjEzMTcwNzU0WhcNMjIxMjE0 MDAwNzU0WjCBhTELMAkGA1UEBhMCVVMxIDAeBgNVBAoMF1dlbGxzIEZhcmdvIFdl bGxzU2VjdXJlMRwwGgYDVQQLDBNXZWxscyBGYXJnbyBCYW5rIE5BMTYwNAYDVQQD DC1XZWxsc1NlY3VyZSBQdWJsaWMgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkw ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDub7S9eeKPCCGeOARBJe+r WxxTkqxtnt3CxC5FlAM1iGd0V+PfjLindo8796jE2yljDpFoNoqXjopxaAkH5OjU Dk/41itMpBb570OYj7OeUt9tkTmPOL13i0Nj67eT/DBMHAGTthP796EfvyXhdDcs HqRePGj4S78NuR4uNuip5Kf4D8uCdXw1LSLWwr8L87T8bJVhHlfXBIEyg1J55oNj z7fLY4sR4r1e6/aN7ZVyKLSsEmLpSjPmgzKuBXWVvYSV2ypcm44uDLiBK0HmOFaf SZtsdvqKXfcBeYF8wYNABf5x/Qw/zE5gCQ5lRxAvAcAFP4/4s0HvWkJ+We/Slwxl AgMBAAGjggE0MIIBMDAPBgNVHRMBAf8EBTADAQH/MDkGA1UdHwQyMDAwLqAsoCqG KGh0dHA6Ly9jcmwucGtpLndlbGxzZmFyZ28uY29tL3dzcHJjYS5jcmwwDgYDVR0P AQH/BAQDAgHGMB0GA1UdDgQWBBQmlRkQ2eihl5H/3BnZtQQ+0nMKajCBsgYDVR0j BIGqMIGngBQmlRkQ2eihl5H/3BnZtQQ+0nMKaqGBi6SBiDCBhTELMAkGA1UEBhMC VVMxIDAeBgNVBAoMF1dlbGxzIEZhcmdvIFdlbGxzU2VjdXJlMRwwGgYDVQQLDBNX ZWxscyBGYXJnbyBCYW5rIE5BMTYwNAYDVQQDDC1XZWxsc1NlY3VyZSBQdWJsaWMg Um9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHmCAQEwDQYJKoZIhvcNAQEFBQADggEB ALkVsUSRzCPIK0134/iaeycNzXK7mQDKfGYZUMbVmO2rvwNa5U3lHshPcZeG1eMd /ZDJPHV3V3p9+N701NX3leZ0bh08rnyd2wIDBSxxSyU+B+NemvVmFymIGjifz6pB A4SXa5M4esowRBskRDPQ5NHcKDj0E0M1NSljqHyita04pO2t/caaH/+Xc/77szWn k4bGdpEA5qxRFsQnMlzbc9qlk1eOPm01JghZ1edE13YgY+esE2fDbbFwRnzVlhE9 iW9dqKHrjQrawx0zbKPqZxmamX9LPYNRKh3KL4YMon4QLSvUFpULB6ouFJJJtylv 2G0xffX8oRAHh84vWdw+WNs= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEMDCCAxigAwIBAgIQUJRs7Bjq1ZxN1ZfvdY+grTANBgkqhkiG9w0BAQUFADCB gjELMAkGA1UEBhMCVVMxHjAcBgNVBAsTFXd3dy54cmFtcHNlY3VyaXR5LmNvbTEk MCIGA1UEChMbWFJhbXAgU2VjdXJpdHkgU2VydmljZXMgSW5jMS0wKwYDVQQDEyRY UmFtcCBHbG9iYWwgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDQxMTAxMTcx NDA0WhcNMzUwMTAxMDUzNzE5WjCBgjELMAkGA1UEBhMCVVMxHjAcBgNVBAsTFXd3 dy54cmFtcHNlY3VyaXR5LmNvbTEkMCIGA1UEChMbWFJhbXAgU2VjdXJpdHkgU2Vy dmljZXMgSW5jMS0wKwYDVQQDEyRYUmFtcCBHbG9iYWwgQ2VydGlmaWNhdGlvbiBB dXRob3JpdHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCYJB69FbS6 38eMpSe2OAtp87ZOqCwuIR1cRN8hXX4jdP5efrRKt6atH67gBhbim1vZZ3RrXYCP KZ2GG9mcDZhtdhAoWORlsH9KmHmf4MMxfoArtYzAQDsRhtDLooY2YKTVMIJt2W7Q DxIEM5dfT2Fa8OT5kavnHTu86M/0ay00fOJIYRyO82FEzG+gSqmUsE3a56k0enI4 qEHMPJQRfevIpoy3hsvKMzvZPTeL+3o+hiznc9cKV6xkmxnr9A8ECIqsAxcZZPRa JSKNNCyy9mgdEm3Tih4U2sSPpuIjhdV6Db1q4Ons7Be7QhtnqiXtRYMh/MHJfNVi PvryxS3T/dRlAgMBAAGjgZ8wgZwwEwYJKwYBBAGCNxQCBAYeBABDAEEwCwYDVR0P BAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFMZPoj0GY4QJnM5i5ASs jVy16bYbMDYGA1UdHwQvMC0wK6ApoCeGJWh0dHA6Ly9jcmwueHJhbXBzZWN1cml0 eS5jb20vWEdDQS5jcmwwEAYJKwYBBAGCNxUBBAMCAQEwDQYJKoZIhvcNAQEFBQAD ggEBAJEVOQMBG2f7Shz5CmBbodpNl2L5JFMn14JkTpAuw0kbK5rc/Kh4ZzXxHfAR vbdI4xD2Dd8/0sm2qlWkSLoC295ZLhVbO50WfUfXN+pfTXYSNrsf16GBBEYgoyxt qZ4Bfj8pzgCT3/3JknOJiWSe5yvkHJEs0rnOfc5vMZnT5r7SHpDwCRR5XCOrTdLa IR9NmXmd4c8nnxCbHIgNsIpkQTG4DmyQJKSbXHGPurt+HBvbaoAPIbzp26a3QPSy i6mx5O+aGtA9aZnuqCij4Tyz8LIRnM98QObd50N9otg6tamN8jSZxNQQ4Qb9CYQQ O+7ETPTsJ3xCwnR8gooJybQDJbw= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIIDjCCBfagAwIBAgIJAOiOtsn4KhQoMA0GCSqGSIb3DQEBBQUAMIG8MQswCQYD VQQGEwJVUzEQMA4GA1UECBMHSW5kaWFuYTEVMBMGA1UEBxMMSW5kaWFuYXBvbGlz MSgwJgYDVQQKEx9Tb2Z0d2FyZSBpbiB0aGUgUHVibGljIEludGVyZXN0MRMwEQYD VQQLEwpob3N0bWFzdGVyMR4wHAYDVQQDExVDZXJ0aWZpY2F0ZSBBdXRob3JpdHkx JTAjBgkqhkiG9w0BCQEWFmhvc3RtYXN0ZXJAc3BpLWluYy5vcmcwHhcNMDgwNTEz MDgwNzU2WhcNMTgwNTExMDgwNzU2WjCBvDELMAkGA1UEBhMCVVMxEDAOBgNVBAgT B0luZGlhbmExFTATBgNVBAcTDEluZGlhbmFwb2xpczEoMCYGA1UEChMfU29mdHdh cmUgaW4gdGhlIFB1YmxpYyBJbnRlcmVzdDETMBEGA1UECxMKaG9zdG1hc3RlcjEe MBwGA1UEAxMVQ2VydGlmaWNhdGUgQXV0aG9yaXR5MSUwIwYJKoZIhvcNAQkBFhZo b3N0bWFzdGVyQHNwaS1pbmMub3JnMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIIC CgKCAgEA3DbmR0LCxFF1KYdAw9iOIQbSGE7r7yC9kDyFEBOMKVuUY/b0LfEGQpG5 GcRCaQi/izZF6igFM0lIoCdDkzWKQdh4s/Dvs24t3dHLfer0dSbTPpA67tfnLAS1 fOH1fMVO73e9XKKTM5LOfYFIz2u1IiwIg/3T1c87Lf21SZBb9q1NE8re06adU1Fx Y0b4ShZcmO4tbZoWoXaQ4mBDmdaJ1mwuepiyCwMs43pPx93jzONKao15Uvr0wa8u jyoIyxspgpJyQ7zOiKmqp4pRQ1WFmjcDeJPI8L20QcgHQprLNZd6ioFl3h1UCAHx ZFy3FxpRvB7DWYd2GBaY7r/2Z4GLBjXFS21ZGcfSxki+bhQog0oQnBv1b7ypjvVp /rLBVcznFMn5WxRTUQfqzj3kTygfPGEJ1zPSbqdu1McTCW9rXRTunYkbpWry9vjQ co7qch8vNGopCsUK7BxAhRL3pqXTT63AhYxMfHMgzFMY8bJYTAH1v+pk1Vw5xc5s zFNaVrpBDyXfa1C2x4qgvQLCxTtVpbJkIoRRKFauMe5e+wsWTUYFkYBE7axt8Feo +uthSKDLG7Mfjs3FIXcDhB78rKNDCGOM7fkn77SwXWfWT+3Qiz5dW8mRvZYChD3F TbxCP3T9PF2sXEg2XocxLxhsxGjuoYvJWdAY4wCAs1QnLpnwFVMCAwEAAaOCAg8w ggILMB0GA1UdDgQWBBQ0cdE41xU2g0dr1zdkQjuOjVKdqzCB8QYDVR0jBIHpMIHm gBQ0cdE41xU2g0dr1zdkQjuOjVKdq6GBwqSBvzCBvDELMAkGA1UEBhMCVVMxEDAO BgNVBAgTB0luZGlhbmExFTATBgNVBAcTDEluZGlhbmFwb2xpczEoMCYGA1UEChMf U29mdHdhcmUgaW4gdGhlIFB1YmxpYyBJbnRlcmVzdDETMBEGA1UECxMKaG9zdG1h c3RlcjEeMBwGA1UEAxMVQ2VydGlmaWNhdGUgQXV0aG9yaXR5MSUwIwYJKoZIhvcN AQkBFhZob3N0bWFzdGVyQHNwaS1pbmMub3JnggkA6I62yfgqFCgwDwYDVR0TAQH/ BAUwAwEB/zARBglghkgBhvhCAQEEBAMCAAcwCQYDVR0SBAIwADAuBglghkgBhvhC AQ0EIRYfU29mdHdhcmUgaW4gdGhlIFB1YmxpYyBJbnRlcmVzdDAwBglghkgBhvhC AQQEIxYhaHR0cHM6Ly9jYS5zcGktaW5jLm9yZy9jYS1jcmwucGVtMDIGCWCGSAGG +EIBAwQlFiNodHRwczovL2NhLnNwaS1pbmMub3JnL2NlcnQtY3JsLnBlbTAhBgNV HREEGjAYgRZob3N0bWFzdGVyQHNwaS1pbmMub3JnMA4GA1UdDwEB/wQEAwIBBjAN BgkqhkiG9w0BAQUFAAOCAgEAtM294LnqsgMrfjLp3nI/yUuCXp3ir1UJogxU6M8Y PCggHam7AwIvUjki+RfPrWeQswN/2BXja367m1YBrzXU2rnHZxeb1NUON7MgQS4M AcRb+WU+wmHo0vBqlXDDxm/VNaSsWXLhid+hoJ0kvSl56WEq2dMeyUakCHhBknIP qxR17QnwovBc78MKYiC3wihmrkwvLo9FYyaW8O4x5otVm6o6+YI5HYg84gd1GuEP sTC8cTLSOv76oYnzQyzWcsR5pxVIBcDYLXIC48s9Fmq6ybgREOJJhcyWR2AFJS7v dVkz9UcZFu/abF8HyKZQth3LZjQl/GaD68W2MEH4RkRiqMEMVObqTFoo5q7Gt/5/ O5aoLu7HaD7dAD0prypjq1/uSSotxdz70cbT0ZdWUoa2lOvUYFG3/B6bzAKb1B+P +UqPti4oOxfMxaYF49LTtcYDyeFIQpvLP+QX4P4NAZUJurgNceQJcHdC2E3hQqlg g9cXiUPS1N2nGLar1CQlh7XU4vwuImm9rWgs/3K1mKoGnOcqarihk3bOsPN/nOHg T7jYhkalMwIsJWE3KpLIrIF0aGOHM3a9BX9e1dUCbb2v/ypaqknsmHlHU5H2DjRa yaXG67Ljxay2oHA1u8hRadDytaIybrw/oDc5fHE2pgXfDBLkFqfF1stjo5VwP+YE o2A= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFtTCCA52gAwIBAgIIYY3HhjsBggUwDQYJKoZIhvcNAQEFBQAwRDEWMBQGA1UE AwwNQUNFRElDT00gUm9vdDEMMAoGA1UECwwDUEtJMQ8wDQYDVQQKDAZFRElDT00x CzAJBgNVBAYTAkVTMB4XDTA4MDQxODE2MjQyMloXDTI4MDQxMzE2MjQyMlowRDEW MBQGA1UEAwwNQUNFRElDT00gUm9vdDEMMAoGA1UECwwDUEtJMQ8wDQYDVQQKDAZF RElDT00xCzAJBgNVBAYTAkVTMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKC AgEA/5KV4WgGdrQsyFhIyv2AVClVYyT/kGWbEHV7w2rbYgIB8hiGtXxaOLHkWLn7 09gtn70yN78sFW2+tfQh0hOR2QetAQXW8713zl9CgQr5auODAKgrLlUTY4HKRxx7 XBZXehuDYAQ6PmXDzQHe3qTWDLqO3tkE7hdWIpuPY/1NFgu3e3eM+SW10W2ZEi5P Grjm6gSSrj0RuVFCPYewMYWveVqc/udOXpJPQ/yrOq2lEiZmueIM15jO1FillUAK t0SdE3QrwqXrIhWYENiLxQSfHY9g5QYbm8+5eaA9oiM/Qj9r+hwDezCNzmzAv+Yb X79nuIQZ1RXve8uQNjFiybwCq0Zfm/4aaJQ0PZCOrfbkHQl/Sog4P75n/TSW9R28 MHTLOO7VbKvU/PQAtwBbhTIWdjPp2KOZnQUAqhbm84F9b32qhm2tFXTTxKJxqvQU fecyuB+81fFOvW8XAjnXDpVCOscAPukmYxHqC9FK/xidstd7LzrZlvvoHpKuE1XI 2Sf23EgbsCTBheN3nZqk8wwRHQ3ItBTutYJXCb8gWH8vIiPYcMt5bMlL8qkqyPyH K9caUPgn6C9D4zq92Fdx/c6mUlv53U3t5fZvie27k5x2IXXwkkwp9y+cAS7+UEae ZAwUswdbxcJzbPEHXEUkFDWug/FqTYl6+rPYLWbwNof1K1MCAwEAAaOBqjCBpzAP BgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFKaz4SsrSbbXc6GqlPUB53NlTKxQ MA4GA1UdDwEB/wQEAwIBhjAdBgNVHQ4EFgQUprPhKytJttdzoaqU9QHnc2VMrFAw RAYDVR0gBD0wOzA5BgRVHSAAMDEwLwYIKwYBBQUHAgEWI2h0dHA6Ly9hY2VkaWNv bS5lZGljb21ncm91cC5jb20vZG9jMA0GCSqGSIb3DQEBBQUAA4ICAQDOLAtSUWIm fQwng4/F9tqgaHtPkl7qpHMyEVNEskTLnewPeUKzEKbHDZ3Ltvo/Onzqv4hTGzz3 gvoFNTPhNahXwOf9jU8/kzJPeGYDdwdY6ZXIfj7QeQCM8htRM5u8lOk6e25SLTKe I6RF+7YuE7CLGLHdztUdp0J/Vb77W7tH1PwkzQSulgUV1qzOMPPKC8W64iLgpq0i 5ALudBF/TP94HTXa5gI06xgSYXcGCRZj6hitoocf8seACQl1ThCojz2GuHURwCRi ipZ7SkXp7FnFvmuD5uHorLUwHv4FB4D54SMNUI8FmP8sX+g7tq3PgbUhh8oIKiMn MCArz+2UW6yyetLHKKGKC5tNSixthT8Jcjxn4tncB7rrZXtaAWPWkFtPF2Y9fwsZ o5NjEFIqnxQWWOLcpfShFosOkYuByptZ+thrkQdlVV9SH686+5DdaaVbnG0OLLb6 zqylfDJKZ0DcMDQj3dcEI2bw/FWAp/tmGYI1Z2JwOV5vx+qQQEQIHriy1tvuWacN GHk0vFQYXlPKNFHtRQrmjseCNj6nOGOpMCwXEGCSn1WHElkQwg9naRHMTh5+Spqt r0CodaxWkHS4oJyleW/c6RrIaQXpuvoDs3zk4E7Czp3otkYNbn5XOmeUwssfnHdK Z05phkOTOPu220+DkdRgfks+KzgHVZhepA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIGZjCCBE6gAwIBAgIPB35Sk3vgFeNX8GmMy+wMMA0GCSqGSIb3DQEBBQUAMHsx CzAJBgNVBAYTAkNPMUcwRQYDVQQKDD5Tb2NpZWRhZCBDYW1lcmFsIGRlIENlcnRp ZmljYWNpw7NuIERpZ2l0YWwgLSBDZXJ0aWPDoW1hcmEgUy5BLjEjMCEGA1UEAwwa QUMgUmHDrXogQ2VydGljw6FtYXJhIFMuQS4wHhcNMDYxMTI3MjA0NjI5WhcNMzAw NDAyMjE0MjAyWjB7MQswCQYDVQQGEwJDTzFHMEUGA1UECgw+U29jaWVkYWQgQ2Ft ZXJhbCBkZSBDZXJ0aWZpY2FjacOzbiBEaWdpdGFsIC0gQ2VydGljw6FtYXJhIFMu QS4xIzAhBgNVBAMMGkFDIFJhw616IENlcnRpY8OhbWFyYSBTLkEuMIICIjANBgkq hkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAq2uJo1PMSCMI+8PPUZYILrgIem08kBeG qentLhM0R7LQcNzJPNCNyu5LF6vQhbCnIwTLqKL85XXbQMpiiY9QngE9JlsYhBzL fDe3fezTf3MZsGqy2IiKLUV0qPezuMDU2s0iiXRNWhU5cxh0T7XrmafBHoi0wpOQ Y5fzp6cSsgkiBzPZkc0OnB8OIMfuuzONj8LSWKdf/WU34ojC2I+GdV75LaeHM/J4 Ny+LvB2GNzmxlPLYvEqcgxhaBvzz1NS6jBUJJfD5to0EfhcSM2tXSExP2yYe68yQ 54v5aHxwD6Mq0Do43zeX4lvegGHTgNiRg0JaTASJaBE8rF9ogEHMYELODVoqDA+b MMCm8Ibbq0nXl21Ii/kDwFJnmxL3wvIumGVC2daa49AZMQyth9VXAnow6IYm+48j ilSH5L887uvDdUhfHjlvgWJsxS3EF1QZtzeNnDeRyPYL1epjb4OsOMLzP96a++Ej YfDIJss2yKHzMI+ko6Kh3VOz3vCaMh+DkXkwwakfU5tTohVTP92dsxA7SH2JD/zt A/X7JWR1DhcZDY8AFmd5ekD8LVkH2ZD6mq093ICK5lw1omdMEWux+IBkAC1vImHF rEsm5VoQgpukg3s0956JkSCXjrdCx2bD0Omk1vUgjcTDlaxECp1bczwmPS9KvqfJ pxAe+59QafMCAwEAAaOB5jCB4zAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE AwIBBjAdBgNVHQ4EFgQU0QnQ6dfOeXRU+Tows/RtLAMDG2gwgaAGA1UdIASBmDCB lTCBkgYEVR0gADCBiTArBggrBgEFBQcCARYfaHR0cDovL3d3dy5jZXJ0aWNhbWFy YS5jb20vZHBjLzBaBggrBgEFBQcCAjBOGkxMaW1pdGFjaW9uZXMgZGUgZ2FyYW50 7WFzIGRlIGVzdGUgY2VydGlmaWNhZG8gc2UgcHVlZGVuIGVuY29udHJhciBlbiBs YSBEUEMuMA0GCSqGSIb3DQEBBQUAA4ICAQBclLW4RZFNjmEfAygPU3zmpFmps4p6 xbD/CHwso3EcIRNnoZUSQDWDg4902zNc8El2CoFS3UnUmjIz75uny3XlesuXEpBc unvFm9+7OSPI/5jOCk0iAUgHforA1SBClETvv3eiiWdIG0ADBaGJ7M9i4z0ldma/ Jre7Ir5v/zlXdLp6yQGVwZVR6Kss+LGGIOk/yzVb0hfpKv6DExdA7ohiZVvVO2Dp ezy4ydV/NgIlqmjCMRW3MGXrfx1IebHPOeJCgBbT9ZMj/EyXyVo3bHwi2ErN0o42 gzmRkBDI8ck1fj+404HGIGQatlDCIaR43NAvO2STdPCWkPHv+wlaNECW8DYSwaN0 jJN+Qd53i+yG2dIPPy3RzECiiWZIHiCznCNZc6lEc7wkeZBWN7PGKX6jD/EpOe9+ XCgycDWs2rjIdWb8m0w5R44bb5tNAlQiM+9hup4phO9OSzNHdpdqy35f/RWmnkJD W2ZaiogN9xa5P1FlK2Zqi9E4UqLWRhH6/JocdJ6PlwsCT2TG9WjTSy3/pDceiz+/ RL5hRqGEPQgnTIEgd4kI6mdAXmwIUV80WoyWaM3X94nCHNMyAK9Sy9NgWyo6R35r MDOhYil/SrnhLecUIw4OGEfhefwVVdCx/CVxY3UzHCMrr1zZ7Ud3YA47Dx7SwNxk BYn8eNZcLCZDqQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFuzCCA6OgAwIBAgIIVwoRl0LE48wwDQYJKoZIhvcNAQELBQAwazELMAkGA1UE BhMCSVQxDjAMBgNVBAcMBU1pbGFuMSMwIQYDVQQKDBpBY3RhbGlzIFMucC5BLi8w MzM1ODUyMDk2NzEnMCUGA1UEAwweQWN0YWxpcyBBdXRoZW50aWNhdGlvbiBSb290 IENBMB4XDTExMDkyMjExMjIwMloXDTMwMDkyMjExMjIwMlowazELMAkGA1UEBhMC SVQxDjAMBgNVBAcMBU1pbGFuMSMwIQYDVQQKDBpBY3RhbGlzIFMucC5BLi8wMzM1 ODUyMDk2NzEnMCUGA1UEAwweQWN0YWxpcyBBdXRoZW50aWNhdGlvbiBSb290IENB MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAp8bEpSmkLO/lGMWwUKNv UTufClrJwkg4CsIcoBh/kbWHuUA/3R1oHwiD1S0eiKD4j1aPbZkCkpAW1V8IbInX 4ay8IMKx4INRimlNAJZaby/ARH6jDuSRzVju3PvHHkVH3Se5CAGfpiEd9UEtL0z9 KK3giq0itFZljoZUj5NDKd45RnijMCO6zfB9E1fAXdKDa0hMxKufgFpbOr3JpyI/ gCczWw63igxdBzcIy2zSekciRDXFzMwujt0q7bd9Zg1fYVEiVRvjRuPjPdA1Yprb rxTIW6HMiRvhMCb8oJsfgadHHwTrozmSBp+Z07/T6k9QnBn+locePGX2oxgkg4YQ 51Q+qDp2JE+BIcXjDwL4k5RHILv+1A7TaLndxHqEguNTVHnd25zS8gebLra8Pu2F be8lEfKXGkJh90qX6IuxEAf6ZYGyojnP9zz/GPvG8VqLWeICrHuS0E4UT1lF9gxe KF+w6D9Fz8+vm2/7hNN3WpVvrJSEnu68wEqPSpP4RCHiMUVhUE4Q2OM1fEwZtN4F v6MGn8i1zeQf1xcGDXqVdFUNaBr8EBtiZJ1t4JWgw5QHVw0U5r0F+7if5t+L4sbn fpb2U8WANFAoWPASUHEXMLrmeGO89LKtmyuy/uE5jF66CyCU3nuDuP/jVo23Eek7 jPKxwV2dpAtMK9myGPW1n0sCAwEAAaNjMGEwHQYDVR0OBBYEFFLYiDrIn3hm7Ynz ezhwlMkCAjbQMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUUtiIOsifeGbt ifN7OHCUyQICNtAwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4ICAQAL e3KHwGCmSUyIWOYdiPcUZEim2FgKDk8TNd81HdTtBjHIgT5q1d07GjLukD0R0i70 jsNjLiNmsGe+b7bAEzlgqqI0JZN1Ut6nna0Oh4lScWoWPBkdg/iaKWW+9D+a2fDz WochcYBNy+A4mz+7+uAwTc+G02UQGRjRlwKxK3JCaKygvU5a2hi/a5iB0P2avl4V SM0RFbnAKVy06Ij3Pjaut2L9HmLecHgQHEhb2rykOLpn7VU+Xlff1ANATIGk0k9j pwlCCRT8AKnCgHNPLsBA2RF7SOp6AsDT6ygBJlh0wcBzIm2Tlf05fbsq4/aC4yyX X04fkZT6/iyj2HYauE2yOE+b+h1IYHkm4vP9qdCa6HCPSXrW5b0KDtst842/6+Ok fcvHlXHo2qN8xcL4dJIEG4aspCJTQLas/kx2z/uUMsA1n3Y/buWQbqCmJqK4LL7R K4X9p2jIugErsWx0Hbhzlefut8cl8ABMALJ+tguLHPPAUJ4lueAI3jZm/zel0btU ZCzJJ7VLkn5l/9Mt4blOvH+kQSGQQXemOR/qnuOf0GZvBeyqdn6/axag67XH/JJU LysRJyU3eExRarDzzFhdFPFqSBX/wge2sY0PjlxQRrM9vwGYT7JZVEc+NHt4bVaT LnPqZih4zR0Uv6CPLy64Lo7yFIrM6bV8+2ydDKXhlg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIENjCCAx6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBvMQswCQYDVQQGEwJTRTEU MBIGA1UEChMLQWRkVHJ1c3QgQUIxJjAkBgNVBAsTHUFkZFRydXN0IEV4dGVybmFs IFRUUCBOZXR3b3JrMSIwIAYDVQQDExlBZGRUcnVzdCBFeHRlcm5hbCBDQSBSb290 MB4XDTAwMDUzMDEwNDgzOFoXDTIwMDUzMDEwNDgzOFowbzELMAkGA1UEBhMCU0Ux FDASBgNVBAoTC0FkZFRydXN0IEFCMSYwJAYDVQQLEx1BZGRUcnVzdCBFeHRlcm5h bCBUVFAgTmV0d29yazEiMCAGA1UEAxMZQWRkVHJ1c3QgRXh0ZXJuYWwgQ0EgUm9v dDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALf3GjPm8gAELTngTlvt H7xsD821+iO2zt6bETOXpClMfZOfvUq8k+0DGuOPz+VtUFrWlymUWoCwSXrbLpX9 uMq/NzgtHj6RQa1wVsfwTz/oMp50ysiQVOnGXw94nZpAPA6sYapeFI+eh6FqUNzX mk6vBbOmcZSccbNQYArHE504B4YCqOmoaSYYkKtMsE8jqzpPhNjfzp/haW+710LX a0Tkx63ubUFfclpxCDezeWWkWaCUN/cALw3CknLa0Dhy2xSoRcRdKn23tNbE7qzN E0S3ySvdQwAl+mG5aWpYIxG3pzOPVnVZ9c0p10a3CitlttNCbxWyuHv77+ldU9U0 WicCAwEAAaOB3DCB2TAdBgNVHQ4EFgQUrb2YejS0Jvf6xCZU7wO94CTLVBowCwYD VR0PBAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wgZkGA1UdIwSBkTCBjoAUrb2YejS0 Jvf6xCZU7wO94CTLVBqhc6RxMG8xCzAJBgNVBAYTAlNFMRQwEgYDVQQKEwtBZGRU cnVzdCBBQjEmMCQGA1UECxMdQWRkVHJ1c3QgRXh0ZXJuYWwgVFRQIE5ldHdvcmsx IjAgBgNVBAMTGUFkZFRydXN0IEV4dGVybmFsIENBIFJvb3SCAQEwDQYJKoZIhvcN AQEFBQADggEBALCb4IUlwtYj4g+WBpKdQZic2YR5gdkeWxQHIzZlj7DYd7usQWxH YINRsPkyPef89iYTx4AWpb9a/IfPeHmJIZriTAcKhjW88t5RxNKWt9x+Tu5w/Rw5 6wwCURQtjr0W4MHfRnXnJK3s9EK0hZNwEGe6nQY1ShjTK3rMUUKhemPR5ruhxSvC Nr4TDea9Y355e6cJDUCrat2PisP29owaQgVR1EX1n6diIWgVIEM8med8vSTYqZEX c4g/VhsxOBi0cQ+azcgOno4uG+GMmIPLHzHxREzGBHNJdmAPx/i9F4BrLunMTA5a mnkPIAou1Z5jJh5VkpTYghdae9C8x49OhgQ= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEGDCCAwCgAwIBAgIBATANBgkqhkiG9w0BAQUFADBlMQswCQYDVQQGEwJTRTEU MBIGA1UEChMLQWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRUUCBOZXR3 b3JrMSEwHwYDVQQDExhBZGRUcnVzdCBDbGFzcyAxIENBIFJvb3QwHhcNMDAwNTMw MTAzODMxWhcNMjAwNTMwMTAzODMxWjBlMQswCQYDVQQGEwJTRTEUMBIGA1UEChML QWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRUUCBOZXR3b3JrMSEwHwYD VQQDExhBZGRUcnVzdCBDbGFzcyAxIENBIFJvb3QwggEiMA0GCSqGSIb3DQEBAQUA A4IBDwAwggEKAoIBAQCWltQhSWDia+hBBwzexODcEyPNwTXH+9ZOEQpnXvUGW2ul CDtbKRY654eyNAbFvAWlA3yCyykQruGIgb3WntP+LVbBFc7jJp0VLhD7Bo8wBN6n tGO0/7Gcrjyvd7ZWxbWroulpOj0OM3kyP3CCkplhbY0wCI9xP6ZIVxn4JdxLZlyl dI+Yrsj5wAYi56xz36Uu+1LcsRVlIPo1Zmne3yzxbrww2ywkEtvrNTVokMsAsJch PXQhI2U0K7t4WaPW4XY5mqRJjox0r26kmqPZm9I4XJuiGMx1I4S+6+JNM3GOGvDC +Mcdoq0Dlyz4zyXG9rgkMbFjXZJ/Y/AlyVMuH79NAgMBAAGjgdIwgc8wHQYDVR0O BBYEFJWxtPCUtr3H2tERCSG+wa9J/RB7MAsGA1UdDwQEAwIBBjAPBgNVHRMBAf8E BTADAQH/MIGPBgNVHSMEgYcwgYSAFJWxtPCUtr3H2tERCSG+wa9J/RB7oWmkZzBl MQswCQYDVQQGEwJTRTEUMBIGA1UEChMLQWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFk ZFRydXN0IFRUUCBOZXR3b3JrMSEwHwYDVQQDExhBZGRUcnVzdCBDbGFzcyAxIENB IFJvb3SCAQEwDQYJKoZIhvcNAQEFBQADggEBACxtZBsfzQ3duQH6lmM0MkhHma6X 7f1yFqZzR1r0693p9db7RcwpiURdv0Y5PejuvE1Uhh4dbOMXJ0PhiVYrqW9yTkkz 43J8KiOavD7/KCrto/8cI7pDVwlnTUtiBi34/2ydYB7YHEt9tTEv2dB8Xfjea4MY eDdXL+gzB2ffHsdrKpV2ro9Xo/D0UrSpUwjP4E/TelOL/bscVjby/rK25Xa71SJl pz/+0WatC7xrmYbvP33zGDLKe8bjq2RGlfgmadlVg3sslgf/WSxEo8bl6ancoWOA WiFeIc9TVPC6b4nbqKqVz4vjccweGyBECMB6tkD9xOQ14R0WHNC8K47Wcdk= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEFTCCAv2gAwIBAgIBATANBgkqhkiG9w0BAQUFADBkMQswCQYDVQQGEwJTRTEU MBIGA1UEChMLQWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRUUCBOZXR3 b3JrMSAwHgYDVQQDExdBZGRUcnVzdCBQdWJsaWMgQ0EgUm9vdDAeFw0wMDA1MzAx MDQxNTBaFw0yMDA1MzAxMDQxNTBaMGQxCzAJBgNVBAYTAlNFMRQwEgYDVQQKEwtB ZGRUcnVzdCBBQjEdMBsGA1UECxMUQWRkVHJ1c3QgVFRQIE5ldHdvcmsxIDAeBgNV BAMTF0FkZFRydXN0IFB1YmxpYyBDQSBSb290MIIBIjANBgkqhkiG9w0BAQEFAAOC AQ8AMIIBCgKCAQEA6Rowj4OIFMEg2Dybjxt+A3S72mnTRqX4jsIMEZBRpS9mVEBV 6tsfSlbunyNu9DnLoblv8n75XYcmYZ4c+OLspoH4IcUkzBEMP9smcnrHAZcHF/nX GCwwfQ56HmIexkvA/X1id9NEHif2P0tEs7c42TkfYNVRknMDtABp4/MUTu7R3AnP dzRGULD4EfL+OHn3Bzn+UZKXC1sIXzSGAa2Il+tmzV7R/9x98oTaunet3IAIx6eH 1lWfl2royBFkuucZKT8Rs3iQhCBSWxHveNCD9tVIkNAwHM+A+WD+eeSI8t0A65RF 62WUaUC6wNW0uLp9BBGo6zEFlpROWCGOn9Bg/QIDAQABo4HRMIHOMB0GA1UdDgQW BBSBPjfYkrAfd59ctKtzquf2NGAv+jALBgNVHQ8EBAMCAQYwDwYDVR0TAQH/BAUw AwEB/zCBjgYDVR0jBIGGMIGDgBSBPjfYkrAfd59ctKtzquf2NGAv+qFopGYwZDEL MAkGA1UEBhMCU0UxFDASBgNVBAoTC0FkZFRydXN0IEFCMR0wGwYDVQQLExRBZGRU cnVzdCBUVFAgTmV0d29yazEgMB4GA1UEAxMXQWRkVHJ1c3QgUHVibGljIENBIFJv b3SCAQEwDQYJKoZIhvcNAQEFBQADggEBAAP3FUr4JNojVhaTdt02KLmuG7jD8WS6 IBh4lSknVwW8fCr0uVFV2ocC3g8WFzH4qnkuCRO7r7IgGRLlk/lL+YPoRNWyQSW/ iHVv/xD8SlTQX/D67zZzfRs2RcYhbbQVuE7PnFylPVoAjgbjPGsye/Kf8Lb93/Ao GEjwxrzQvzSAlsJKsW2Ox5BF3i9nrEUEo3rcVZLJR2bYGozH7ZxOmuASu7VqTITh 4SINhwBk/ox9Yjllpu9CtoAlEmEBqCQTcAARJl/6NVDFSMwGR+gn2HCNX2TmoUQm XiLsks3/QppEIW1cxeMiHV9HEufOX1362KqxMy3ZdvJOOjMMK7MtkAY= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEHjCCAwagAwIBAgIBATANBgkqhkiG9w0BAQUFADBnMQswCQYDVQQGEwJTRTEU MBIGA1UEChMLQWRkVHJ1c3QgQUIxHTAbBgNVBAsTFEFkZFRydXN0IFRUUCBOZXR3 b3JrMSMwIQYDVQQDExpBZGRUcnVzdCBRdWFsaWZpZWQgQ0EgUm9vdDAeFw0wMDA1 MzAxMDQ0NTBaFw0yMDA1MzAxMDQ0NTBaMGcxCzAJBgNVBAYTAlNFMRQwEgYDVQQK EwtBZGRUcnVzdCBBQjEdMBsGA1UECxMUQWRkVHJ1c3QgVFRQIE5ldHdvcmsxIzAh BgNVBAMTGkFkZFRydXN0IFF1YWxpZmllZCBDQSBSb290MIIBIjANBgkqhkiG9w0B AQEFAAOCAQ8AMIIBCgKCAQEA5B6a/twJWoekn0e+EV+vhDTbYjx5eLfpMLXsDBwq xBb/4Oxx64r1EW7tTw2R0hIYLUkVAcKkIhPHEWT/IhKauY5cLwjPcWqzZwFZ8V1G 87B4pfYOQnrjfxvM0PC3KP0q6p6zsLkEqv32x7SxuCqg+1jxGaBvcCV+PmlKfw8i 2O+tCBGaKZnhqkRFmhJePp1tUvznoD1oL/BLcHwTOK28FSXx1s6rosAx1i+f4P8U WfyEk9mHfExUE+uf0S0R+Bg6Ot4l2ffTQO2kBhLEO+GRwVY18BTcZTYJbqukB8c1 0cIDMzZbdSZtQvESa0NvS3GU+jQd7RNuyoB/mC9suWXY6QIDAQABo4HUMIHRMB0G A1UdDgQWBBQ5lYtii1zJ1IC6WA+XPxUIQ8yYpzALBgNVHQ8EBAMCAQYwDwYDVR0T AQH/BAUwAwEB/zCBkQYDVR0jBIGJMIGGgBQ5lYtii1zJ1IC6WA+XPxUIQ8yYp6Fr pGkwZzELMAkGA1UEBhMCU0UxFDASBgNVBAoTC0FkZFRydXN0IEFCMR0wGwYDVQQL ExRBZGRUcnVzdCBUVFAgTmV0d29yazEjMCEGA1UEAxMaQWRkVHJ1c3QgUXVhbGlm aWVkIENBIFJvb3SCAQEwDQYJKoZIhvcNAQEFBQADggEBABmrder4i2VhlRO6aQTv hsoToMeqT2QbPxj2qC0sVY8FtzDqQmodwCVRLae/DLPt7wh/bDxGGuoYQ992zPlm hpwsaPXpF/gxsxjE1kh9I0xowX67ARRvxdlu3rsEQmr49lx95dr6h+sNNVJn0J6X dgWTP5XHAeZpVTh/EGGZyeNfpso+gmNIquIISD6q8rKFYqa0p9m9N5xotS1WfbC3 P6CxB9bpT9zeRXEwMn8bLgn5v1Kh7sKAPgZcLlVAwRv1cEWw3F369nJad9Jjzc9Y iQBCYz95OdBEsIJuQRno3eDBiFrRHnGTHyQwdOUeqN48Jzd/g66ed8/wMLH/S5no xqE= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDTDCCAjSgAwIBAgIId3cGJyapsXwwDQYJKoZIhvcNAQELBQAwRDELMAkGA1UE BhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVz dCBDb21tZXJjaWFsMB4XDTEwMDEyOTE0MDYwNloXDTMwMTIzMTE0MDYwNlowRDEL MAkGA1UEBhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZp cm1UcnVzdCBDb21tZXJjaWFsMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC AQEA9htPZwcroRX1BiLLHwGy43NFBkRJLLtJJRTWzsO3qyxPxkEylFf6EqdbDuKP Hx6GGaeqtS25Xw2Kwq+FNXkyLbscYjfysVtKPcrNcV/pQr6U6Mje+SJIZMblq8Yr ba0F8PrVC8+a5fBQpIs7R6UjW3p6+DM/uO+Zl+MgwdYoic+U+7lF7eNAFxHUdPAL MeIrJmqbTFeurCA+ukV6BfO9m2kVrn1OIGPENXY6BwLJN/3HR+7o8XYdcxXyl6S1 yHp52UKqK39c/s4mT6NmgTWvRLpUHhwwMmWd5jyTXlBOeuM61G7MGvv50jeuJCqr VwMiKA1JdX+3KNp1v47j3A55MQIDAQABo0IwQDAdBgNVHQ4EFgQUnZPGU4teyq8/ nx4P5ZmVvCT2lI8wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJ KoZIhvcNAQELBQADggEBAFis9AQOzcAN/wr91LoWXym9e2iZWEnStB03TX8nfUYG XUPGhi4+c7ImfU+TqbbEKpqrIZcUsd6M06uJFdhrJNTxFq7YpFzUf1GO7RgBsZNj vbz4YYCanrHOQnDiqX0GJX0nof5v7LMeJNrjS1UaADs1tDvZ110w/YETifLCBivt Z8SOyUOyXGsViQK8YvxO8rUzqrJv0wqiUOP2O+guRMLbZjipM1ZI8W0bM40NjD9g N53Tym1+NH4Nn3J2ixufcv1SNUFFApYvHLKac0khsUlHRUe072o0EclNmsxZt9YC nlpOZbWUrhvfKbAW8b8Angc6F2S1BLUjIZkKlTuXfO8= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDTDCCAjSgAwIBAgIIfE8EORzUmS0wDQYJKoZIhvcNAQEFBQAwRDELMAkGA1UE BhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZpcm1UcnVz dCBOZXR3b3JraW5nMB4XDTEwMDEyOTE0MDgyNFoXDTMwMTIzMTE0MDgyNFowRDEL MAkGA1UEBhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MR8wHQYDVQQDDBZBZmZp cm1UcnVzdCBOZXR3b3JraW5nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC AQEAtITMMxcua5Rsa2FSoOujz3mUTOWUgJnLVWREZY9nZOIG41w3SfYvm4SEHi3y YJ0wTsyEheIszx6e/jarM3c1RNg1lho9Nuh6DtjVR6FqaYvZ/Ls6rnla1fTWcbua kCNrmreIdIcMHl+5ni36q1Mr3Lt2PpNMCAiMHqIjHNRqrSK6mQEubWXLviRmVSRL QESxG9fhwoXA3hA/Pe24/PHxI1Pcv2WXb9n5QHGNfb2V1M6+oF4nI979ptAmDgAp 6zxG8D1gvz9Q0twmQVGeFDdCBKNwV6gbh+0t+nvujArjqWaJGctB+d1ENmHP4ndG yH329JKBNv3bNPFyfvMMFr20FQIDAQABo0IwQDAdBgNVHQ4EFgQUBx/S55zawm6i QLSwelAQUHTEyL0wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJ KoZIhvcNAQEFBQADggEBAIlXshZ6qML91tmbmzTCnLQyFE2npN/svqe++EPbkTfO tDIuUFUaNU52Q3Eg75N3ThVwLofDwR1t3Mu1J9QsVtFSUzpE0nPIxBsFZVpikpzu QY0x2+c06lkh1QF612S4ZDnNye2v7UsDSKegmQGA3GWjNq5lWUhPgkvIZfFXHeVZ Lgo/bNjR9eUJtGxUAArgFU2HdW23WJZa3W3SAKD0m0i+wzekujbgfIeFlxoVot4u olu9rxj5kFDNcFn4J2dHy8egBzp90SxdbBk6ZrV9/ZFvgrG+CJPbFEfxojfHRZ48 x3evZKiT3/Zpg4Jg8klCNO1aAFSFHBY2kgxc+qatv9s= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIB/jCCAYWgAwIBAgIIdJclisc/elQwCgYIKoZIzj0EAwMwRTELMAkGA1UEBhMC VVMxFDASBgNVBAoMC0FmZmlybVRydXN0MSAwHgYDVQQDDBdBZmZpcm1UcnVzdCBQ cmVtaXVtIEVDQzAeFw0xMDAxMjkxNDIwMjRaFw00MDEyMzExNDIwMjRaMEUxCzAJ BgNVBAYTAlVTMRQwEgYDVQQKDAtBZmZpcm1UcnVzdDEgMB4GA1UEAwwXQWZmaXJt VHJ1c3QgUHJlbWl1bSBFQ0MwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQNMF4bFZ0D 0KF5Nbc6PJJ6yhUczWLznCZcBz3lVPqj1swS6vQUX+iOGasvLkjmrBhDeKzQN8O9 ss0s5kfiGuZjuD0uL3jET9v0D6RoTFVya5UdThhClXjMNzyR4ptlKymjQjBAMB0G A1UdDgQWBBSaryl6wBE1NSZRMADDav5A1a7WPDAPBgNVHRMBAf8EBTADAQH/MA4G A1UdDwEB/wQEAwIBBjAKBggqhkjOPQQDAwNnADBkAjAXCfOHiFBar8jAQr9HX/Vs aobgxCd05DhT1wV/GzTjxi+zygk8N53X57hG8f2h4nECMEJZh0PUUd+60wkyWs6I flc9nF9Ca/UHLbXwgpP5WW+uZPpY5Yse42O+tYHNbwKMeQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFRjCCAy6gAwIBAgIIbYwURrGmCu4wDQYJKoZIhvcNAQEMBQAwQTELMAkGA1UE BhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MRwwGgYDVQQDDBNBZmZpcm1UcnVz dCBQcmVtaXVtMB4XDTEwMDEyOTE0MTAzNloXDTQwMTIzMTE0MTAzNlowQTELMAkG A1UEBhMCVVMxFDASBgNVBAoMC0FmZmlybVRydXN0MRwwGgYDVQQDDBNBZmZpcm1U cnVzdCBQcmVtaXVtMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAxBLf qV/+Qd3d9Z+K4/as4Tx4mrzY8H96oDMq3I0gW64tb+eT2TZwamjPjlGjhVtnBKAQ JG9dKILBl1fYSCkTtuG+kU3fhQxTGJoeJKJPj/CihQvL9Cl/0qRY7iZNyaqoe5rZ +jjeRFcV5fiMyNlI4g0WJx0eyIOFJbe6qlVBzAMiSy2RjYvmia9mx+n/K+k8rNrS s8PhaJyJ+HoAVt70VZVs+7pk3WKL3wt3MutizCaam7uqYoNMtAZ6MMgpv+0GTZe5 HMQxK9VfvFMSF5yZVylmd2EhMQcuJUmdGPLu8ytxjLW6OQdJd/zvLpKQBY0tL3d7 70O/Nbua2Plzpyzy0FfuKE4mX4+QaAkvuPjcBukumj5Rp9EixAqnOEhss/n/fauG V+O61oV4d7pD6kh/9ti+I20ev9E2bFhc8e6kGVQa9QPSdubhjL08s9NIS+LI+H+S qHZGnEJlPqQewQcDWkYtuJfzt9WyVSHvutxMAJf7FJUnM7/oQ0dG0giZFmA7mn7S 5u046uwBHjxIVkkJx0w3AJ6IDsBz4W9m6XJHMD4Q5QsDyZpCAGzFlH5hxIrff4Ia C1nEWTJ3s7xgaVY5/bQGeyzWZDbZvUjthB9+pSKPKrhC9IK31FOQeE4tGv2Bb0TX OwF0lkLgAOIua+rF7nKsu7/+6qqo+Nz2snmKtmcCAwEAAaNCMEAwHQYDVR0OBBYE FJ3AZ6YMItkm9UWrpmVSESfYRaxjMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/ BAQDAgEGMA0GCSqGSIb3DQEBDAUAA4ICAQCzV00QYk465KzquByvMiPIs0laUZx2 KI15qldGF9X1Uva3ROgIRL8YhNILgM3FEv0AVQVhh0HctSSePMTYyPtwni94loMg Nt58D2kTiKV1NpgIpsbfrM7jWNa3Pt668+s0QNiigfV4Py/VpfzZotReBA4Xrf5B 8OWycvpEgjNC6C1Y91aMYj+6QrCcDFx+LmUmXFNPALJ4fqENmS2NuB2OosSw/WDQ MKSOyARiqcTtNd56l+0OOF6SL5Nwpamcb6d9Ex1+xghIsV5n61EIJenmJWtSKZGc 0jlzCFfemQa0W50QBuHCAKi4HEoCChTQwUHK+4w1IX2COPKpVJEZNZOUbWo6xbLQ u4mGk+ibyQ86p3q4ofB4Rvr8Ny/lioTz3/4E2aFooC8k4gmVBtWVyuEklut89pMF u+1z6S3RdTnX5yTb2E5fQ4+e0BQ5v1VwSJlXMbSc7kqYA5YwH2AG7hsj/oFgIxpH YoWlzBk0gG+zrBrjn/B7SK3VAdlntqlyk+otZrWyuOQ9PLLvTIzq6we/qzWaVYa8 GKa1qF60g2xraUDTn9zxw2lrueFtCfTxqlB2Cnp9ehehVZZCmTEJ3WARjQUwfuaO RtGdFNrHF+QFlozEJLUbzxQHskD4o55BhrwE0GuWyCqANP2/7waj3VjFhT0+j/6e KeC2uAloGRwYQw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDpDCCAoygAwIBAgIBATANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEc MBoGA1UEChMTQW1lcmljYSBPbmxpbmUgSW5jLjE2MDQGA1UEAxMtQW1lcmljYSBP bmxpbmUgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAxMB4XDTAyMDUyODA2 MDAwMFoXDTM3MTExOTIwNDMwMFowYzELMAkGA1UEBhMCVVMxHDAaBgNVBAoTE0Ft ZXJpY2EgT25saW5lIEluYy4xNjA0BgNVBAMTLUFtZXJpY2EgT25saW5lIFJvb3Qg Q2VydGlmaWNhdGlvbiBBdXRob3JpdHkgMTCCASIwDQYJKoZIhvcNAQEBBQADggEP ADCCAQoCggEBAKgv6KRpBgNHw+kqmP8ZonCaxlCyfqXfaE0bfA+2l2h9LaaLl+lk hsmj76CGv2BlnEtUiMJIxUo5vxTjWVXlGbR0yLQFOVwWpeKVBeASrlmLojNoWBym 1BW32J/X3HGrfpq/m44zDyL9Hy7nBzbvYjnF3cu6JRQj3gzGPTzOggjmZj7aUTsW OqMFf6Dch9Wc/HKpoH145LcxVR5lu9RhsCFg7RAycsWSJR74kEoYeEfffjA3PlAb 2xzTa5qGUwew76wGePiEmf4hjUyAtgyC9mZweRrTT6PP8c9GsEsPPt2IYriMqQko O3rHl+Ee5fSfwMCuJKDIodkP1nsmgmkyPacCAwEAAaNjMGEwDwYDVR0TAQH/BAUw AwEB/zAdBgNVHQ4EFgQUAK3Zo/Z59m50qX8zPYEX10zPM94wHwYDVR0jBBgwFoAU AK3Zo/Z59m50qX8zPYEX10zPM94wDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEB BQUAA4IBAQB8itEfGDeC4Liwo+1WlchiYZwFos3CYiZhzRAW18y0ZTTQEYqtqKkF Zu90821fnZmv9ov761KyBZiibyrFVL0lvV+uyIbqRizBs73B6UlwGBaXCBOMIOAb LjpHyx7kADCVW/RFo8AasAFOq73AI25jP4BKxQft3OJvx8Fi8eNy1gTIdGcL+oir oQHIb/AUr9KZzVGTfu0uOMe9zkZQPXLjeSWdm4grECDdpbgyn43gKd8hdIaC2y+C MMbHNYaz+ZZfRtsMRf3zUMNvxsNIrUam4SdHCh0Om7bCd39j8uB9Gr784N/Xx6ds sPmuujz9dLQR6FgNgLzTqIA6me11zEZ7 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFpDCCA4ygAwIBAgIBATANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEc MBoGA1UEChMTQW1lcmljYSBPbmxpbmUgSW5jLjE2MDQGA1UEAxMtQW1lcmljYSBP bmxpbmUgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAyMB4XDTAyMDUyODA2 MDAwMFoXDTM3MDkyOTE0MDgwMFowYzELMAkGA1UEBhMCVVMxHDAaBgNVBAoTE0Ft ZXJpY2EgT25saW5lIEluYy4xNjA0BgNVBAMTLUFtZXJpY2EgT25saW5lIFJvb3Qg Q2VydGlmaWNhdGlvbiBBdXRob3JpdHkgMjCCAiIwDQYJKoZIhvcNAQEBBQADggIP ADCCAgoCggIBAMxBRR3pPU0Q9oyxQcngXssNt79Hc9PwVU3dxgz6sWYFas14tNwC 206B89enfHG8dWOgXeMHDEjsJcQDIPT/DjsS/5uN4cbVG7RtIuOx238hZK+GvFci KtZHgVdEglZTvYYUAQv8f3SkWq7xuhG1m1hagLQ3eAkzfDJHA1zEpYNI9FdWboE2 JxhP7JsowtS013wMPgwr38oE18aO6lhOqKSlGBxsRZijQdEt0sdtjRnxrXm3gT+9 BoInLRBYBbV4Bbkv2wxrkJB+FFk4u5QkE+XRnRTf04JNRvCAOVIyD+OEsnpD8l7e Xz8d3eOyG6ChKiMDbi4BFYdcpnV1x5dhvt6G3NRI270qv0pV2uh9UPu0gBe4lL8B PeraunzgWGcXuVjgiIZGZ2ydEEdYMtA1fHkqkKJaEBEjNa0vzORKW6fIJ/KD3l67 Xnfn6KVuY8INXWHQjNJsWiEOyiijzirplcdIz5ZvHZIlyMbGwcEMBawmxNJ10uEq Z8A9W6Wa6897GqidFEXlD6CaZd4vKL3Ob5Rmg0gp2OpljK+T2WSfVVcmv2/LNzGZ o2C7HK2JNDJiuEMhBnIMoVxtRsX6Kc8w3onccVvdtjc+31D1uAclJuW8tf48ArO3 +L5DwYcRlJ4jbBeKuIonDFRH8KmzwICMoCfrHRnjB453cMor9H124HhnAgMBAAGj YzBhMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFE1FwWg4u3OpaaEg5+31IqEj FNeeMB8GA1UdIwQYMBaAFE1FwWg4u3OpaaEg5+31IqEjFNeeMA4GA1UdDwEB/wQE AwIBhjANBgkqhkiG9w0BAQUFAAOCAgEAZ2sGuV9FOypLM7PmG2tZTiLMubekJcmn xPBUlgtk87FYT15R/LKXeydlwuXK5w0MJXti4/qftIe3RUavg6WXSIylvfEWK5t2 LHo1YGwRgJfMqZJS5ivmae2p+DYtLHe/YUjRYwu5W1LtGLBDQiKmsXeu3mnFzccc obGlHBD7GL4acN3Bkku+KVqdPzW+5X1R+FXgJXUjhx5c3LqdsKyzadsXg8n33gy8 CNyRnqjQ1xU3c6U1uPx+xURABsPr+CKAXEfOAuMRn0T//ZoyzH1kUQ7rVyZ2OuMe IjzCpjbdGe+n/BLzJsBZMYVMnNjP36TMzCmT/5RtdlwTCJfy7aULTd3oyWgOZtMA DjMSW7yV5TKQqLPGbIOtd+6Lfn6xqavT4fG2wLHqiMDn05DpKJKUe2h7lyoKZy2F AjgQ5ANh1NolNscIWC2hp1GvMApJ9aZphwctREZ2jirlmjvXGKL8nDgQzMY70rUX Om/9riW99XJZZLF0KjhfGEzfz3EEWjbUvy+ZnOjZurGV5gJLIaFb1cFPj65pbVPb AZO1XB4Y3WRayhgoPmMEEf0cjQAPuDffZ4qdZqkCapH/E8ovXYO8h5Ns3CRRFgQl Zvqz2cK6Kb6aSDiCmfS/O0oxGfm/jiEzFMpPVF/7zvuPcX/9XhmgD0uRuMRUvAaw RY8mkaKO/qk= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDoDCCAoigAwIBAgIBMTANBgkqhkiG9w0BAQUFADBDMQswCQYDVQQGEwJKUDEc MBoGA1UEChMTSmFwYW5lc2UgR292ZXJubWVudDEWMBQGA1UECxMNQXBwbGljYXRp b25DQTAeFw0wNzEyMTIxNTAwMDBaFw0xNzEyMTIxNTAwMDBaMEMxCzAJBgNVBAYT AkpQMRwwGgYDVQQKExNKYXBhbmVzZSBHb3Zlcm5tZW50MRYwFAYDVQQLEw1BcHBs aWNhdGlvbkNBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAp23gdE6H j6UG3mii24aZS2QNcfAKBZuOquHMLtJqO8F6tJdhjYq+xpqcBrSGUeQ3DnR4fl+K f5Sk10cI/VBaVuRorChzoHvpfxiSQE8tnfWuREhzNgaeZCw7NCPbXCbkcXmP1G55 IrmTwcrNwVbtiGrXoDkhBFcsovW8R0FPXjQilbUfKW1eSvNNcr5BViCH/OlQR9cw FO5cjFW6WY2H/CPek9AEjP3vbb3QesmlOmpyM8ZKDQUXKi17safY1vC+9D/qDiht QWEjdnjDuGWk81quzMKq2edY3rZ+nYVunyoKb58DKTCXKB28t89UKU5RMfkntigm /qJj5kEW8DOYRwIDAQABo4GeMIGbMB0GA1UdDgQWBBRUWssmP3HMlEYNllPqa0jQ k/5CdTAOBgNVHQ8BAf8EBAMCAQYwWQYDVR0RBFIwUKROMEwxCzAJBgNVBAYTAkpQ MRgwFgYDVQQKDA/ml6XmnKzlm73mlL/lupwxIzAhBgNVBAsMGuOCouODl+ODquOC seODvOOCt+ODp+ODs0NBMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEFBQAD ggEBADlqRHZ3ODrso2dGD/mLBqj7apAxzn7s2tGJfHrrLgy9mTLnsCTWw//1sogJ hyzjVOGjprIIC8CFqMjSnHH2HZ9g/DgzE+Ge3Atf2hZQKXsvcJEPmbo0NI2VdMV+ eKlmXb3KIXdCEKxmJj3ekav9FfBv7WxfEPjzFvYDio+nEhEMy/0/ecGc/WLuo89U DNErXxc+4z6/wCs+CZv+iKZ+tJIX/COUgb1up8WMwusRRdv4QcmWdupwX3kSa+Sj B1oF7ydJzyGfikwJcGapJsErEU4z0g781mzSDjJkaP+tBXhfAx2o45CsJOAPQKdL rosot4LKGAfmt1t06SAZf7IbiVQ= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDzzCCAregAwIBAgIDAWweMA0GCSqGSIb3DQEBBQUAMIGNMQswCQYDVQQGEwJB VDFIMEYGA1UECgw/QS1UcnVzdCBHZXMuIGYuIFNpY2hlcmhlaXRzc3lzdGVtZSBp bSBlbGVrdHIuIERhdGVudmVya2VociBHbWJIMRkwFwYDVQQLDBBBLVRydXN0LW5R dWFsLTAzMRkwFwYDVQQDDBBBLVRydXN0LW5RdWFsLTAzMB4XDTA1MDgxNzIyMDAw MFoXDTE1MDgxNzIyMDAwMFowgY0xCzAJBgNVBAYTAkFUMUgwRgYDVQQKDD9BLVRy dXN0IEdlcy4gZi4gU2ljaGVyaGVpdHNzeXN0ZW1lIGltIGVsZWt0ci4gRGF0ZW52 ZXJrZWhyIEdtYkgxGTAXBgNVBAsMEEEtVHJ1c3QtblF1YWwtMDMxGTAXBgNVBAMM EEEtVHJ1c3QtblF1YWwtMDMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB AQCtPWFuA/OQO8BBC4SAzewqo51ru27CQoT3URThoKgtUaNR8t4j8DRE/5TrzAUj lUC5B3ilJfYKvUWG6Nm9wASOhURh73+nyfrBJcyFLGM/BWBzSQXgYHiVEEvc+RFZ znF/QJuKqiTfC0Li21a8StKlDJu3Qz7dg9MmEALP6iPESU7l0+m0iKsMrmKS1GWH 2WrX9IWf5DMiJaXlyDO6w8dB3F/GaswADm0yqLaHNgBid5seHzTLkDx4iHQF63n1 k3Flyp3HaxgtPVxO59X4PzF9j4fsCiIvI+n+u33J4PTs63zEsMMtYrWacdaxaujs 2e3Vcuy+VwHOBVWf3tFgiBCzAgMBAAGjNjA0MA8GA1UdEwEB/wQFMAMBAf8wEQYD VR0OBAoECERqlWdVeRFPMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQUFAAOC AQEAVdRU0VlIXLOThaq/Yy/kgM40ozRiPvbY7meIMQQDbwvUB/tOdQ/TLtPAF8fG KOwGDREkDg6lXb+MshOWcdzUzg4NCmgybLlBMRmrsQd7TZjTXLDR8KdCoLXEjq/+ 8T/0709GAHbrAvv5ndJAlseIOrifEXnzgGWovR/TeIGgUUw3tKZdJXDRZslo+S4R FGjxVJgIrCaSD96JntT6s3kr0qN51OyLrIdTaEJMUVF0HhsnLuP1Hyl0Te2v9+GS mYHovjrHF1D2t8b8m7CKa9aIA5GPBnc6hQLdmNVDeD/GMBWsm2vLV7eJUYs66MmE DNuxUCAKGkq6ahq97BvIxYSazQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIGFDCCA/ygAwIBAgIIU+w77vuySF8wDQYJKoZIhvcNAQEFBQAwUTELMAkGA1UE BhMCRVMxQjBABgNVBAMMOUF1dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIEZpcm1h cHJvZmVzaW9uYWwgQ0lGIEE2MjYzNDA2ODAeFw0wOTA1MjAwODM4MTVaFw0zMDEy MzEwODM4MTVaMFExCzAJBgNVBAYTAkVTMUIwQAYDVQQDDDlBdXRvcmlkYWQgZGUg Q2VydGlmaWNhY2lvbiBGaXJtYXByb2Zlc2lvbmFsIENJRiBBNjI2MzQwNjgwggIi MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDKlmuO6vj78aI14H9M2uDDUtd9 thDIAl6zQyrET2qyyhxdKJp4ERppWVevtSBC5IsP5t9bpgOSL/UR5GLXMnE42QQM cas9UX4PB99jBVzpv5RvwSmCwLTaUbDBPLutN0pcyvFLNg4kq7/DhHf9qFD0sefG L9ItWY16Ck6WaVICqjaY7Pz6FIMMNx/Jkjd/14Et5cS54D40/mf0PmbR0/RAz15i NA9wBj4gGFrO93IbJWyTdBSTo3OxDqqHECNZXyAFGUftaI6SEspd/NYrspI8IM/h X68gvqB2f3bl7BqGYTM+53u0P6APjqK5am+5hyZvQWyIplD9amML9ZMWGxmPsu2b m8mQ9QEM3xk9Dz44I8kvjwzRAv4bVdZO0I08r0+k8/6vKtMFnXkIoctXMbScyJCy Z/QYFpM6/EfY0XiWMR+6KwxfXZmtY4laJCB22N/9q06mIqqdXuYnin1oKaPnirja EbsXLZmdEyRG98Xi2J+Of8ePdG1asuhy9azuJBCtLxTa/y2aRnFHvkLfuwHb9H/T KI8xWVvTyQKmtFLKbpf7Q8UIJm+K9Lv9nyiqDdVF8xM6HdjAeI9BZzwelGSuewvF 6NkBiDkal4ZkQdU7hwxu+g/GvUgUvzlN1J5Bto+WHWOWk9mVBngxaJ43BjuAiUVh OSPHG0SjFeUc+JIwuwIDAQABo4HvMIHsMBIGA1UdEwEB/wQIMAYBAf8CAQEwDgYD VR0PAQH/BAQDAgEGMB0GA1UdDgQWBBRlzeurNR4APn7VdMActHNHDhpkLzCBpgYD VR0gBIGeMIGbMIGYBgRVHSAAMIGPMC8GCCsGAQUFBwIBFiNodHRwOi8vd3d3LmZp cm1hcHJvZmVzaW9uYWwuY29tL2NwczBcBggrBgEFBQcCAjBQHk4AUABhAHMAZQBv ACAAZABlACAAbABhACAAQgBvAG4AYQBuAG8AdgBhACAANAA3ACAAQgBhAHIAYwBl AGwAbwBuAGEAIAAwADgAMAAxADcwDQYJKoZIhvcNAQEFBQADggIBABd9oPm03cXF 661LJLWhAqvdpYhKsg9VSytXjDvlMd3+xDLx51tkljYyGOylMnfX40S2wBEqgLk9 am58m9Ot/MPWo+ZkKXzR4Tgegiv/J2Wv+xYVxC5xhOW1//qkR71kMrv2JYSiJ0L1 ILDCExARzRAVukKQKtJE4ZYm6zFIEv0q2skGz3QeqUvVhyj5eTSSPi5E6PaPT481 PyWzOdxjKpBrIF/EUhJOlywqrJ2X3kjyo2bbwtKDlaZmp54lD+kLM5FlClrD2VQS 3a/DTg4fJl4N3LON7NWBcN7STyQF82xO9UxJZo3R/9ILJUFI/lGExkKvgATP0H5k SeTy36LssUzAKh3ntLFlosS88Zj0qnAHY7S42jtM+kAiMFsRpvAFDsYCA0irhpuF 3dvd6qJ2gHN99ZwExEWN57kci57q13XRcrHedUTnQn3iV2t93Jm8PYMo6oCTjcVM ZcFwgbg4/EMxsvYDNEeyrPsiBsse3RdHHF9mudMaotoRsaS8I8nkvof/uZS2+F0g StRf571oe2XyFR7SOqkt6dhrJKyXWERHrVkY8SFlcN7ONGCoQPHzPKTDKCOM/icz Q0CgFzzr6juwcqajuUpLXhZI9LK8yIySxZ2frHI2vDSANGupi5LAuBft7HZT9SQB jLMi6Et8Vcad+qMUu2WFbm5PEn4KPJ2V -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDdzCCAl+gAwIBAgIEAgAAuTANBgkqhkiG9w0BAQUFADBaMQswCQYDVQQGEwJJ RTESMBAGA1UEChMJQmFsdGltb3JlMRMwEQYDVQQLEwpDeWJlclRydXN0MSIwIAYD VQQDExlCYWx0aW1vcmUgQ3liZXJUcnVzdCBSb290MB4XDTAwMDUxMjE4NDYwMFoX DTI1MDUxMjIzNTkwMFowWjELMAkGA1UEBhMCSUUxEjAQBgNVBAoTCUJhbHRpbW9y ZTETMBEGA1UECxMKQ3liZXJUcnVzdDEiMCAGA1UEAxMZQmFsdGltb3JlIEN5YmVy VHJ1c3QgUm9vdDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKMEuyKr mD1X6CZymrV51Cni4eiVgLGw41uOKymaZN+hXe2wCQVt2yguzmKiYv60iNoS6zjr IZ3AQSsBUnuId9Mcj8e6uYi1agnnc+gRQKfRzMpijS3ljwumUNKoUMMo6vWrJYeK mpYcqWe4PwzV9/lSEy/CG9VwcPCPwBLKBsua4dnKM3p31vjsufFoREJIE9LAwqSu XmD+tqYF/LTdB1kC1FkYmGP1pWPgkAx9XbIGevOF6uvUA65ehD5f/xXtabz5OTZy dc93Uk3zyZAsuT3lySNTPx8kmCFcB5kpvcY67Oduhjprl3RjM71oGDHweI12v/ye jl0qhqdNkNwnGjkCAwEAAaNFMEMwHQYDVR0OBBYEFOWdWTCCR1jMrPoIVDaGezq1 BE3wMBIGA1UdEwEB/wQIMAYBAf8CAQMwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3 DQEBBQUAA4IBAQCFDF2O5G9RaEIFoN27TyclhAO992T9Ldcw46QQF+vaKSm2eT92 9hkTI7gQCvlYpNRhcL0EYWoSihfVCr3FvDB81ukMJY2GQE/szKN+OMY3EU/t3Wgx jkzSswF07r51XgdIGn9w/xZchMB5hbgF/X++ZRGjD8ACtPhSNzkE1akxehi/oCr0 Epn3o0WC4zxe9Z2etciefC7IpJ5OCBRLbf1wbWsaY71k5h+3zvDyny67G7fyUIhz ksLi4xaNmjICq44Y3ekQEe5+NauQrz4wlHrQMz2nZQ/1/I6eYs9HRCwBXbsdtTLS R9I4LtD+gdwyah617jzV/OeBHRnDJELqYzmp -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDUzCCAjugAwIBAgIBATANBgkqhkiG9w0BAQUFADBLMQswCQYDVQQGEwJOTzEd MBsGA1UECgwUQnV5cGFzcyBBUy05ODMxNjMzMjcxHTAbBgNVBAMMFEJ1eXBhc3Mg Q2xhc3MgMiBDQSAxMB4XDTA2MTAxMzEwMjUwOVoXDTE2MTAxMzEwMjUwOVowSzEL MAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBhc3MgQVMtOTgzMTYzMzI3MR0wGwYD VQQDDBRCdXlwYXNzIENsYXNzIDIgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEP ADCCAQoCggEBAIs8B0XY9t/mx8q6jUPFR42wWsE425KEHK8T1A9vNkYgxC7McXA0 ojTTNy7Y3Tp3L8DrKehc0rWpkTSHIln+zNvnma+WwajHQN2lFYxuyHyXA8vmIPLX l18xoS830r7uvqmtqEyeIWZDO6i88wmjONVZJMHCR3axiFyCO7srpgTXjAePzdVB HfCuuCkslFJgNJQ72uA40Z0zPhX0kzLFANq1KWYOOngPIVJfAuWSeyXTkh4vFZ2B 5J2O6O+JzhRMVB0cgRJNcKi+EAUXfh/RuFdV7c27UsKwHnjCTTZoy1YmwVLBvXb3 WNVyfh9EdrsAiR0WnVE1703CVu9r4Iw7DekCAwEAAaNCMEAwDwYDVR0TAQH/BAUw AwEB/zAdBgNVHQ4EFgQUP42aWYv8e3uco684sDntkHGA1sgwDgYDVR0PAQH/BAQD AgEGMA0GCSqGSIb3DQEBBQUAA4IBAQAVGn4TirnoB6NLJzKyQJHyIdFkhb5jatLP gcIV1Xp+DCmsNx4cfHZSldq1fyOhKXdlyTKdqC5Wq2B2zha0jX94wNWZUYN/Xtm+ DKhQ7SLHrQVMdvvt7h5HZPb3J31cKA9FxVxiXqaakZG3Uxcu3K1gnZZkOb1naLKu BctN518fV4bVIJwo+28TOPX2EZL2fZleHwzoq0QkKXJAPTZSr4xYkHPB7GEseaHs h7U/2k3ZIQAw3pDaDtMaSKk+hQsUi4y8QZ5q9w5wwDX3OaJdZtB7WZ+oRxKaJyOk LY4ng5IgodcVf/EuGO70SH8vf/GhGLWhC5SgYiAynB321O+/TIho -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFWTCCA0GgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBOMQswCQYDVQQGEwJOTzEd MBsGA1UECgwUQnV5cGFzcyBBUy05ODMxNjMzMjcxIDAeBgNVBAMMF0J1eXBhc3Mg Q2xhc3MgMiBSb290IENBMB4XDTEwMTAyNjA4MzgwM1oXDTQwMTAyNjA4MzgwM1ow TjELMAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBhc3MgQVMtOTgzMTYzMzI3MSAw HgYDVQQDDBdCdXlwYXNzIENsYXNzIDIgUm9vdCBDQTCCAiIwDQYJKoZIhvcNAQEB BQADggIPADCCAgoCggIBANfHXvfBB9R3+0Mh9PT1aeTuMgHbo4Yf5FkNuud1g1Lr 6hxhFUi7HQfKjK6w3Jad6sNgkoaCKHOcVgb/S2TwDCo3SbXlzwx87vFKu3MwZfPV L4O2fuPn9Z6rYPnT8Z2SdIrkHJasW4DptfQxh6NR/Md+oW+OU3fUl8FVM5I+GC91 1K2GScuVr1QGbNgGE41b/+EmGVnAJLqBcXmQRFBoJJRfuLMR8SlBYaNByyM21cHx MlAQTn/0hpPshNOOvEu/XAFOBz3cFIqUCqTqc/sLUegTBxj6DvEr0VQVfTzh97QZ QmdiXnfgolXsttlpF9U6r0TtSsWe5HonfOV116rLJeffawrbD02TTqigzXsu8lkB arcNuAeBfos4GzjmCleZPe4h6KP1DBbdi+w0jpwqHAAVF41og9JwnxgIzRFo1clr Us3ERo/ctfPYV3Me6ZQ5BL/T3jjetFPsaRyifsSP5BtwrfKi+fv3FmRmaZ9JUaLi FRhnBkp/1Wy1TbMz4GHrXb7pmA8y1x1LPC5aAVKRCfLf6o3YBkBjqhHk/sM3nhRS P/TizPJhk9H9Z2vXUq6/aKtAQ6BXNVN48FP4YUIHZMbXb5tMOA1jrGKvNouicwoN 9SG9dKpN6nIDSdvHXx1iY8f93ZHsM+71bbRuMGjeyNYmsHVee7QHIJihdjK4TWxP AgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFMmAd+BikoL1Rpzz uvdMw964o605MA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAgEAU18h 9bqwOlI5LJKwbADJ784g7wbylp7ppHR/ehb8t/W2+xUbP6umwHJdELFx7rxP462s A20ucS6vxOOto70MEae0/0qyexAQH6dXQbLArvQsWdZHEIjzIVEpMMpghq9Gqx3t OluwlN5E40EIosHsHdb9T7bWR9AUC8rmyrV7d35BH16Dx7aMOZawP5aBQW9gkOLo +fsicdl9sz1Gv7SEr5AcD48Saq/v7h56rgJKihcrdv6sVIkkLE8/trKnToyokZf7 KcZ7XC25y2a2t6hbElGFtQl+Ynhw/qlqYLYdDnkM/crqJIByw5c/8nerQyIKx+u2 DISCLIBrQYoIwOula9+ZEsuK1V6ADJHgJgg2SMX6OBE1/yWDLfJ6v9r9jv6ly0Us H8SIU653DtmadsWOLB2jutXsMq7Aqqz30XpN69QH4kj3Io6wpJ9qzo6ysmD0oyLQ I+uUWnpp3Q+/QFesa1lQ2aOZ4W7+jQF5JyMV3pKdewlNWudLSDBaGOYKbeaP4NK7 5t98biGCwWg5TbSYWGZizEqQXsP6JwSxeRV0mcy+rSDeJmAc61ZRpqPq5KM/p/9h 3PFaTWwyI0PurKju7koSCTxdccK+efrCh2gdC/1cacwG0Jp9VJkqyTkaGa9LKkPz Y11aWOIv4x3kqdbQCtCev9eBCfHJxyYNrJgWVqA= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDUzCCAjugAwIBAgIBAjANBgkqhkiG9w0BAQUFADBLMQswCQYDVQQGEwJOTzEd MBsGA1UECgwUQnV5cGFzcyBBUy05ODMxNjMzMjcxHTAbBgNVBAMMFEJ1eXBhc3Mg Q2xhc3MgMyBDQSAxMB4XDTA1MDUwOTE0MTMwM1oXDTE1MDUwOTE0MTMwM1owSzEL MAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBhc3MgQVMtOTgzMTYzMzI3MR0wGwYD VQQDDBRCdXlwYXNzIENsYXNzIDMgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEP ADCCAQoCggEBAKSO13TZKWTeXx+HgJHqTjnmGcZEC4DVC69TB4sSveZn8AKxifZg isRbsELRwCGoy+Gb72RRtqfPFfV0gGgEkKBYouZ0plNTVUhjP5JW3SROjvi6K//z NIqeKNc0n6wv1g/xpC+9UrJJhW05NfBEMJNGJPO251P7vGGvqaMU+8IXF4Rs4HyI +MkcVyzwPX6UvCWThOiaAJpFBUJXgPROztmuOfbIUxAMZTpHe2DC1vqRycZxbL2R hzyRhkmr8w+gbCZ2Xhysm3HljbybIR6c1jh+JIAVMYKWsUnTYjdbiAwKYjT+p0h+ mbEwi5A3lRyoH6UsjfRVyNvdWQrCrXig9IsCAwEAAaNCMEAwDwYDVR0TAQH/BAUw AwEB/zAdBgNVHQ4EFgQUOBTmyPCppAP0Tj4io1vy1uCtQHQwDgYDVR0PAQH/BAQD AgEGMA0GCSqGSIb3DQEBBQUAA4IBAQABZ6OMySU9E2NdFm/soT4JXJEVKirZgCFP Bdy7pYmrEzMqnji3jG8CcmPHc3ceCQa6Oyh7pEfJYWsICCD8igWKH7y6xsL+z27s EzNxZy5p+qksP2bAEllNC1QCkoS72xLvg3BweMhT+t/Gxv/ciC8HwEmdMldg0/L2 mSlf56oBzKwzqBwKu5HEA6BvtjT5htOzdlSY9EqBs1OdTUDs5XcTRa9bqh/YL0yC e/4qxFi7T/ye/QNlGioOw6UgFpRreaaiErS7GqQjel/wroQk5PMr+4okoyeYZdow dXb8GZHo2+ubPzK/QJcHJrrM85SFSnonk8+QQtS4Wxam58tAA915 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFWTCCA0GgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBOMQswCQYDVQQGEwJOTzEd MBsGA1UECgwUQnV5cGFzcyBBUy05ODMxNjMzMjcxIDAeBgNVBAMMF0J1eXBhc3Mg Q2xhc3MgMyBSb290IENBMB4XDTEwMTAyNjA4Mjg1OFoXDTQwMTAyNjA4Mjg1OFow TjELMAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBhc3MgQVMtOTgzMTYzMzI3MSAw HgYDVQQDDBdCdXlwYXNzIENsYXNzIDMgUm9vdCBDQTCCAiIwDQYJKoZIhvcNAQEB BQADggIPADCCAgoCggIBAKXaCpUWUOOV8l6ddjEGMnqb8RB2uACatVI2zSRHsJ8Y ZLya9vrVediQYkwiL944PdbgqOkcLNt4EemOaFEVcsfzM4fkoF0LXOBXByow9c3E N3coTRiR5r/VUv1xLXA+58bEiuPwKAv0dpihi4dVsjoT/Lc+JzeOIuOoTyrvYLs9 tznDDgFHmV0ST9tD+leh7fmdvhFHJlsTmKtdFoqwNxxXnUX/iJY2v7vKB3tvh2PX 0DJq1l1sDPGzbjniazEuOQAnFN44wOwZZoYS6J1yFhNkUsepNxz9gjDthBgd9K5c /3ATAOux9TN6S9ZV+AWNS2mw9bMoNlwUxFFzTWsL8TQH2xc519woe2v1n/MuwU8X KhDzzMro6/1rqy6any2CbgTUUgGTLT2G/H783+9CHaZr77kgxve9oKeV/afmiSTY zIw0bOIjL9kSGiG5VZFvC5F5GQytQIgLcOJ60g7YaEi7ghM5EFjp2CoHxhLbWNvS O1UQRwUVZ2J+GGOmRj8JDlQyXr8NYnon74Do29lLBlo3WiXQCBJ31G8JUJc9yB3D 34xFMFbG02SrZvPAXpacw8Tvw3xrizp5f7NJzz3iiZ+gMEuFuZyUJHmPfWupRWgP K9Dx2hzLabjKSWJtyNBjYt1gD1iqj6G8BaVmos8bdrKEZLFMOVLAMLrwjEsCsLa3 AgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFEe4zf/lb+74suwv Tg75JbCOPGvDMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAgEAACAj QTUEkMJAYmDv4jVM1z+s4jSQuKFvdvoWFqRINyzpkMLyPPgKn9iB5btb2iUspKdV cSQy9sgL8rxq+JOssgfCX5/bzMiKqr5qb+FJEMwx14C7u8jYog5kV+qi9cKpMRXS IGrs/CIBKM+GuIAeqcwRpTzyFrNHnfzSgCHEy9BHcEGhyoMZCCxt8l13nIoUE9Q2 HJLw5QY33KbmkJs4j1xrG0aGQ0JfPgEHU1RdZX33inOhmlRaHylDFCfChQ+1iHsa O5S3HWCntZznKWlXWpuTekMwGwPXYshApqr8ZORK15FTAaggiG6cX0S5y2CBNOxv 033aSF/rtJC8LakcC6wc1aJoIIAE1vyxjy+7SjENSoYc6+I2KSb12tjE8nVhz36u dmNKekBlk4f4HoCMhuWG1o8O/FMsYOgWYRqiPkN7zTlgVGr18okmAWiDSKIz6MkE kbIRNBE+6tBDGR8Dk5AM/1E9V/RBbuHLoL7ryWPNbczk+DaqaJ3tvV2XcEQNtg41 3OEMXbugUZTLfhbrES+jkkXITHHZvMmZUldGL1DPvTVp9D0VzgalLA8+9oG6lLvD u79leNKGef9JOxqDDPDeeOzI8k1MGt6CKfjBWtrt7uYnXuhF0J0cUahoq0Tj0Itq 4/g7u9xN12TyUb7mqqta6THuBrxzvxNiCp/HuZc= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIHWTCCBUGgAwIBAgIDCkGKMA0GCSqGSIb3DQEBCwUAMHkxEDAOBgNVBAoTB1Jv b3QgQ0ExHjAcBgNVBAsTFWh0dHA6Ly93d3cuY2FjZXJ0Lm9yZzEiMCAGA1UEAxMZ Q0EgQ2VydCBTaWduaW5nIEF1dGhvcml0eTEhMB8GCSqGSIb3DQEJARYSc3VwcG9y dEBjYWNlcnQub3JnMB4XDTExMDUyMzE3NDgwMloXDTIxMDUyMDE3NDgwMlowVDEU MBIGA1UEChMLQ0FjZXJ0IEluYy4xHjAcBgNVBAsTFWh0dHA6Ly93d3cuQ0FjZXJ0 Lm9yZzEcMBoGA1UEAxMTQ0FjZXJ0IENsYXNzIDMgUm9vdDCCAiIwDQYJKoZIhvcN AQEBBQADggIPADCCAgoCggIBAKtJNRFIfNImflOUz0Op3SjXQiqL84d4GVh8D57a iX3h++tykA10oZZkq5+gJJlz2uJVdscXe/UErEa4w75/ZI0QbCTzYZzA8pD6Ueb1 aQFjww9W4kpCz+JEjCUoqMV5CX1GuYrz6fM0KQhF5Byfy5QEHIGoFLOYZcRD7E6C jQnRvapbjZLQ7N6QxX8KwuPr5jFaXnQ+lzNZ6MMDPWAzv/fRb0fEze5ig1JuLgia pNkVGJGmhZJHsK5I6223IeyFGmhyNav/8BBdwPSUp2rVO5J+TJAFfpPBLIukjmJ0 FXFuC3ED6q8VOJrU0gVyb4z5K+taciX5OUbjchs+BMNkJyIQKopPWKcDrb60LhPt XapI19V91Cp7XPpGBFDkzA5CW4zt2/LP/JaT4NsRNlRiNDiPDGCbO5dWOK3z0luL oFvqTpa4fNfVoIZwQNORKbeiPK31jLvPGpKK5DR7wNhsX+kKwsOnIJpa3yxdUly6 R9Wb7yQocDggL9V/KcCyQQNokszgnMyXS0XvOhAKq3A6mJVwrTWx6oUrpByAITGp rmB6gCZIALgBwJNjVSKRPFbnr9s6JfOPMVTqJouBWfmh0VMRxXudA/Z0EeBtsSw/ LIaRmXGapneLNGDRFLQsrJ2vjBDTn8Rq+G8T/HNZ92ZCdB6K4/jc0m+YnMtHmJVA BfvpAgMBAAGjggINMIICCTAdBgNVHQ4EFgQUdahxYEyIE/B42Yl3tW3Fid+8sXow gaMGA1UdIwSBmzCBmIAUFrUyG9TH8+DmjvO90rA67rI5GNGhfaR7MHkxEDAOBgNV BAoTB1Jvb3QgQ0ExHjAcBgNVBAsTFWh0dHA6Ly93d3cuY2FjZXJ0Lm9yZzEiMCAG A1UEAxMZQ0EgQ2VydCBTaWduaW5nIEF1dGhvcml0eTEhMB8GCSqGSIb3DQEJARYS c3VwcG9ydEBjYWNlcnQub3JnggEAMA8GA1UdEwEB/wQFMAMBAf8wXQYIKwYBBQUH AQEEUTBPMCMGCCsGAQUFBzABhhdodHRwOi8vb2NzcC5DQWNlcnQub3JnLzAoBggr BgEFBQcwAoYcaHR0cDovL3d3dy5DQWNlcnQub3JnL2NhLmNydDBKBgNVHSAEQzBB MD8GCCsGAQQBgZBKMDMwMQYIKwYBBQUHAgEWJWh0dHA6Ly93d3cuQ0FjZXJ0Lm9y Zy9pbmRleC5waHA/aWQ9MTAwNAYJYIZIAYb4QgEIBCcWJWh0dHA6Ly93d3cuQ0Fj ZXJ0Lm9yZy9pbmRleC5waHA/aWQ9MTAwUAYJYIZIAYb4QgENBEMWQVRvIGdldCB5 b3VyIG93biBjZXJ0aWZpY2F0ZSBmb3IgRlJFRSwgZ28gdG8gaHR0cDovL3d3dy5D QWNlcnQub3JnMA0GCSqGSIb3DQEBCwUAA4ICAQApKIWuRKm5r6R5E/CooyuXYPNc 7uMvwfbiZqARrjY3OnYVBFPqQvX56sAV2KaC2eRhrnILKVyQQ+hBsuF32wITRHhH Va9Y/MyY9kW50SD42CEH/m2qc9SzxgfpCYXMO/K2viwcJdVxjDm1Luq+GIG6sJO4 D+Pm1yaMMVpyA4RS5qb1MyJFCsgLDYq4Nm+QCaGrvdfVTi5xotSu+qdUK+s1jVq3 VIgv7nSf7UgWyg1I0JTTrKSi9iTfkuO960NAkW4cGI5WtIIS86mTn9S8nK2cde5a lxuV53QtHA+wLJef+6kzOXrnAzqSjiL2jA3k2X4Ndhj3AfnvlpaiVXPAPHG0HRpW Q7fDCo1y/OIQCQtBzoyUoPkD/XFzS4pXM+WOdH4VAQDmzEoc53+VGS3FpQyLu7Xt hbNc09+4ufLKxw0BFKxwWMWMjTPUnWajGlCVI/xI4AZDEtnNp4Y5LzZyo4AQ5OHz 0ctbGsDkgJp8E3MGT9ujayQKurMcvEp4u+XjdTilSKeiHq921F73OIZWWonO1sOn ebJSoMbxhbQljPI/lrMQ2Y1sVzufb4Y6GIIiNsiwkTjbKqGTqoQ/9SdlrnPVyNXT d+pLncdBu8fA46A/5H2kjXPmEkvfoXNzczqA6NXLji/L6hOn1kGLrPo8idck9U60 4GGSt/M3mMS+lqO3ig== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIHPTCCBSWgAwIBAgIBADANBgkqhkiG9w0BAQQFADB5MRAwDgYDVQQKEwdSb290 IENBMR4wHAYDVQQLExVodHRwOi8vd3d3LmNhY2VydC5vcmcxIjAgBgNVBAMTGUNB IENlcnQgU2lnbmluZyBBdXRob3JpdHkxITAfBgkqhkiG9w0BCQEWEnN1cHBvcnRA Y2FjZXJ0Lm9yZzAeFw0wMzAzMzAxMjI5NDlaFw0zMzAzMjkxMjI5NDlaMHkxEDAO BgNVBAoTB1Jvb3QgQ0ExHjAcBgNVBAsTFWh0dHA6Ly93d3cuY2FjZXJ0Lm9yZzEi MCAGA1UEAxMZQ0EgQ2VydCBTaWduaW5nIEF1dGhvcml0eTEhMB8GCSqGSIb3DQEJ ARYSc3VwcG9ydEBjYWNlcnQub3JnMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIIC CgKCAgEAziLA4kZ97DYoB1CW8qAzQIxL8TtmPzHlawI229Z89vGIj053NgVBlfkJ 8BLPRoZzYLdufujAWGSuzbCtRRcMY/pnCujW0r8+55jE8Ez64AO7NV1sId6eINm6 zWYyN3L69wj1x81YyY7nDl7qPv4coRQKFWyGhFtkZip6qUtTefWIonvuLwphK42y fk1WpRPs6tqSnqxEQR5YYGUFZvjARL3LlPdCfgv3ZWiYUQXw8wWRBB0bF4LsyFe7 w2t6iPGwcswlWyCR7BYCEo8y6RcYSNDHBS4CMEK4JZwFaz+qOqfrU0j36NK2B5jc G8Y0f3/JHIJ6BVgrCFvzOKKrF11myZjXnhCLotLddJr3cQxyYN/Nb5gznZY0dj4k epKwDpUeb+agRThHqtdB7Uq3EvbXG4OKDy7YCbZZ16oE/9KTfWgu3YtLq1i6L43q laegw1SJpfvbi1EinbLDvhG+LJGGi5Z4rSDTii8aP8bQUWWHIbEZAWV/RRyH9XzQ QUxPKZgh/TMfdQwEUfoZd9vUFBzugcMd9Zi3aQaRIt0AUMyBMawSB3s42mhb5ivU fslfrejrckzzAeVLIL+aplfKkQABi6F1ITe1Yw1nPkZPcCBnzsXWWdsC4PDSy826 YreQQejdIOQpvGQpQsgi3Hia/0PsmBsJUUtaWsJx8cTLc6nloQsCAwEAAaOCAc4w ggHKMB0GA1UdDgQWBBQWtTIb1Mfz4OaO873SsDrusjkY0TCBowYDVR0jBIGbMIGY gBQWtTIb1Mfz4OaO873SsDrusjkY0aF9pHsweTEQMA4GA1UEChMHUm9vdCBDQTEe MBwGA1UECxMVaHR0cDovL3d3dy5jYWNlcnQub3JnMSIwIAYDVQQDExlDQSBDZXJ0 IFNpZ25pbmcgQXV0aG9yaXR5MSEwHwYJKoZIhvcNAQkBFhJzdXBwb3J0QGNhY2Vy dC5vcmeCAQAwDwYDVR0TAQH/BAUwAwEB/zAyBgNVHR8EKzApMCegJaAjhiFodHRw czovL3d3dy5jYWNlcnQub3JnL3Jldm9rZS5jcmwwMAYJYIZIAYb4QgEEBCMWIWh0 dHBzOi8vd3d3LmNhY2VydC5vcmcvcmV2b2tlLmNybDA0BglghkgBhvhCAQgEJxYl aHR0cDovL3d3dy5jYWNlcnQub3JnL2luZGV4LnBocD9pZD0xMDBWBglghkgBhvhC AQ0ESRZHVG8gZ2V0IHlvdXIgb3duIGNlcnRpZmljYXRlIGZvciBGUkVFIGhlYWQg b3ZlciB0byBodHRwOi8vd3d3LmNhY2VydC5vcmcwDQYJKoZIhvcNAQEEBQADggIB ACjH7pyCArpcgBLKNQodgW+JapnM8mgPf6fhjViVPr3yBsOQWqy1YPaZQwGjiHCc nWKdpIevZ1gNMDY75q1I08t0AoZxPuIrA2jxNGJARjtT6ij0rPtmlVOKTV39O9lg 18p5aTuxZZKmxoGCXJzN600BiqXfEVWqFcofN8CCmHBh22p8lqOOLlQ+TyGpkO/c gr/c6EWtTZBzCDyUZbAEmXZ/4rzCahWqlwQ3JNgelE5tDlG+1sSPypZt90Pf6DBl Jzt7u0NDY8RD97LsaMzhGY4i+5jhe1o+ATc7iwiwovOVThrLm82asduycPAtStvY sONvRUgzEv/+PDIqVPfE94rwiCPCR/5kenHA0R6mY7AHfqQv0wGP3J8rtsYIqQ+T SCX8Ev2fQtzzxD72V7DX3WnRBnc0CkvSyqD/HMaMyRa+xMwyN2hzXwj7UfdJUzYF CpUCTPJ5GhD22Dp1nPMd8aINcGeGG7MW9S/lpOt5hvk9C8JzC6WZrG/8Z7jlLwum GCSNe9FINSkYQKyTYOGWhlC0elnYjyELn8+CkcY7v2vcB5G5l1YjqrZslMZIBjzk zk6q5PYvCdxTby78dOs6Y5nCpqyJvKeyRKANihDjbPIky/qbn3BHLt4Ui9SyIAmW omTxJBzcoTWcFbLUvFUufQb1nA5V9FrWk9p2rSVzTMVD -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEDzCCAvegAwIBAgIBATANBgkqhkiG9w0BAQUFADBKMQswCQYDVQQGEwJTSzET MBEGA1UEBxMKQnJhdGlzbGF2YTETMBEGA1UEChMKRGlzaWcgYS5zLjERMA8GA1UE AxMIQ0EgRGlzaWcwHhcNMDYwMzIyMDEzOTM0WhcNMTYwMzIyMDEzOTM0WjBKMQsw CQYDVQQGEwJTSzETMBEGA1UEBxMKQnJhdGlzbGF2YTETMBEGA1UEChMKRGlzaWcg YS5zLjERMA8GA1UEAxMIQ0EgRGlzaWcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw ggEKAoIBAQCS9jHBfYj9mQGp2HvycXXxMcbzdWb6UShGhJd4NLxs/LxFWYgmGErE Nx+hSkS943EE9UQX4j/8SFhvXJ56CbpRNyIjZkMhsDxkovhqFQ4/61HhVKndBpnX mjxUizkDPw/Fzsbrg3ICqB9x8y34dQjbYkzo+s7552oftms1grrijxaSfQUMbEYD XcDtab86wYqg6I7ZuUUohwjstMoVvoLdtUSLLa2GDGhibYVW8qwUYzrG0ZmsNHhW S8+2rT+MitcE5eN4TPWGqvWP+j1scaMtymfraHtuM6kMgiioTGohQBUgDCZbg8Kp FhXAJIJdKxatymP2dACw30PEEGBWZ2NFAgMBAAGjgf8wgfwwDwYDVR0TAQH/BAUw AwEB/zAdBgNVHQ4EFgQUjbJJaJ1yCCW5wCf1UJNWSEZx+Y8wDgYDVR0PAQH/BAQD AgEGMDYGA1UdEQQvMC2BE2Nhb3BlcmF0b3JAZGlzaWcuc2uGFmh0dHA6Ly93d3cu ZGlzaWcuc2svY2EwZgYDVR0fBF8wXTAtoCugKYYnaHR0cDovL3d3dy5kaXNpZy5z ay9jYS9jcmwvY2FfZGlzaWcuY3JsMCygKqAohiZodHRwOi8vY2EuZGlzaWcuc2sv Y2EvY3JsL2NhX2Rpc2lnLmNybDAaBgNVHSAEEzARMA8GDSuBHpGT5goAAAABAQEw DQYJKoZIhvcNAQEFBQADggEBAF00dGFMrzvY/59tWDYcPQuBDRIrRhCA/ec8J9B6 yKm2fnQwM6M6int0wHl5QpNt/7EpFIKrIYwvF/k/Ji/1WcbvgAa3mkkp7M5+cTxq EEHA9tOasnxakZzArFvITV734VP/Q3f8nktnbNfzg9Gg4H8l37iYC5oyOGwwoPP/ CBUz91BKez6jPiCp3C9WgArtQVCwyfTssuMmRAAOb54GvCKWU3BlxFAKRmukLyeB EicTXxChds6KezfqwzlhA5WYOudsiCUI/HloDYd9Yvi0X/vF2Ey9WLw/Q1vUHgFN PGO+I++MzVpQuGhU+QqZMxEA4Z7CRneC9VkGjCFMhwnN5ag= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFaTCCA1GgAwIBAgIJAMMDmu5QkG4oMA0GCSqGSIb3DQEBBQUAMFIxCzAJBgNV BAYTAlNLMRMwEQYDVQQHEwpCcmF0aXNsYXZhMRMwEQYDVQQKEwpEaXNpZyBhLnMu MRkwFwYDVQQDExBDQSBEaXNpZyBSb290IFIxMB4XDTEyMDcxOTA5MDY1NloXDTQy MDcxOTA5MDY1NlowUjELMAkGA1UEBhMCU0sxEzARBgNVBAcTCkJyYXRpc2xhdmEx EzARBgNVBAoTCkRpc2lnIGEucy4xGTAXBgNVBAMTEENBIERpc2lnIFJvb3QgUjEw ggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCqw3j33Jijp1pedxiy3QRk D2P9m5YJgNXoqqXinCaUOuiZc4yd39ffg/N4T0Dhf9Kn0uXKE5Pn7cZ3Xza1lK/o OI7bm+V8u8yN63Vz4STN5qctGS7Y1oprFOsIYgrY3LMATcMjfF9DCCMyEtztDK3A fQ+lekLZWnDZv6fXARz2m6uOt0qGeKAeVjGu74IKgEH3G8muqzIm1Cxr7X1r5OJe IgpFy4QxTaz+29FHuvlglzmxZcfe+5nkCiKxLU3lSCZpq+Kq8/v8kiky6bM+TR8n oc2OuRf7JT7JbvN32g0S9l3HuzYQ1VTW8+DiR0jm3hTaYVKvJrT1cU/J19IG32PK /yHoWQbgCNWEFVP3Q+V8xaCJmGtzxmjOZd69fwX3se72V6FglcXM6pM6vpmumwKj rckWtc7dXpl4fho5frLABaTAgqWjR56M6ly2vGfb5ipN0gTco65F97yLnByn1tUD 3AjLLhbKXEAz6GfDLuemROoRRRw1ZS0eRWEkG4IupZ0zXWX4Qfkuy5Q/H6MMMSRE 7cderVC6xkGbrPAXZcD4XW9boAo0PO7X6oifmPmvTiT6l7Jkdtqr9O3jw2Dv1fkC yC2fg69naQanMVXVz0tv/wQFx1isXxYb5dKj6zHbHzMVTdDypVP1y+E9Tmgt2BLd qvLmTZtJ5cUoobqwWsagtQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud DwEB/wQEAwIBBjAdBgNVHQ4EFgQUiQq0OJMa5qvum5EY+fU8PjXQ04IwDQYJKoZI hvcNAQEFBQADggIBADKL9p1Kyb4U5YysOMo6CdQbzoaz3evUuii+Eq5FLAR0rBNR xVgYZk2C2tXck8An4b58n1KeElb21Zyp9HWc+jcSjxyT7Ff+Bw+r1RL3D65hXlaA SfX8MPWbTx9BLxyE04nH4toCdu0Jz2zBuByDHBb6lM19oMgY0sidbvW9adRtPTXo HqJPYNcHKfyyo6SdbhWSVhlMCrDpfNIZTUJG7L399ldb3Zh+pE3McgODWF3vkzpB emOqfDqo9ayk0d2iLbYq/J8BjuIQscTK5GfbVSUZP/3oNn6z4eGBrxEWi1CXYBmC AMBrTXO40RMHPuq2MU/wQppt4hF05ZSsjYSVPCGvxdpHyN85YmLLW1AL14FABZyb 7bq2ix4Eb5YgOe2kfSnbSM6C3NQCjR0EMVrHS/BsYVLXtFHCgWzN4funodKSds+x DzdYpPJScWc/DIh4gInByLUfkmO+p3qKViwaqKactV2zY9ATIKHrkWzQjX2v3wvk F7mGnjixlAxYjOBVqjtjbZqJYLhkKpLGN/R+Q0O3c+gB53+XD9fyexn9GtePyfqF a3qdnom2piiZk4hA9z7NUaPK6u95RyG1/jLix8NRb76AdPCkwzryT+lf3xkK8jsT Q6wxpLPn6/wY1gGp8yqPNg7rtLG8t0zJa7+h89n07eLw4+1knj0vllJPgFOL -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFaTCCA1GgAwIBAgIJAJK4iNuwisFjMA0GCSqGSIb3DQEBCwUAMFIxCzAJBgNV BAYTAlNLMRMwEQYDVQQHEwpCcmF0aXNsYXZhMRMwEQYDVQQKEwpEaXNpZyBhLnMu MRkwFwYDVQQDExBDQSBEaXNpZyBSb290IFIyMB4XDTEyMDcxOTA5MTUzMFoXDTQy MDcxOTA5MTUzMFowUjELMAkGA1UEBhMCU0sxEzARBgNVBAcTCkJyYXRpc2xhdmEx EzARBgNVBAoTCkRpc2lnIGEucy4xGTAXBgNVBAMTEENBIERpc2lnIFJvb3QgUjIw ggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCio8QACdaFXS1tFPbCw3Oe NcJxVX6B+6tGUODBfEl45qt5WDza/3wcn9iXAng+a0EE6UG9vgMsRfYvZNSrXaNH PWSb6WiaxswbP7q+sos0Ai6YVRn8jG+qX9pMzk0DIaPY0jSTVpbLTAwAFjxfGs3I x2ymrdMxp7zo5eFm1tL7A7RBZckQrg4FY8aAamkw/dLukO8NJ9+flXP04SXabBbe QTg06ov80egEFGEtQX6sx3dOy1FU+16SGBsEWmjGycT6txOgmLcRK7fWV8x8nhfR yyX+hk4kLlYMeE2eARKmK6cBZW58Yh2EhN/qwGu1pSqVg8NTEQxzHQuyRpDRQjrO QG6Vrf/GlK1ul4SOfW+eioANSW1z4nuSHsPzwfPrLgVv2RvPN3YEyLRa5Beny912 H9AZdugsBbPWnDTYltxhh5EF5EQIM8HauQhl1K6yNg3ruji6DOWbnuuNZt2Zz9aJ QfYEkoopKW1rOhzndX0CcQ7zwOe9yxndnWCywmZgtrEE7snmhrmaZkCo5xHtgUUD i/ZnWejBBhG93c+AAk9lQHhcR1DIm+YfgXvkRKhbhZri3lrVx/k6RGZL5DJUfORs nLMOPReisjQS1n6yqEm70XooQL6iFh/f5DcfEXP7kAplQ6INfPgGAVUzfbANuPT1 rqVCV3w2EYx7XsQDnYx5nQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud DwEB/wQEAwIBBjAdBgNVHQ4EFgQUtZn4r7CU9eMg1gqtzk5WpC5uQu0wDQYJKoZI hvcNAQELBQADggIBACYGXnDnZTPIgm7ZnBc6G3pmsgH2eDtpXi/q/075KMOYKmFM tCQSin1tERT3nLXK5ryeJ45MGcipvXrA1zYObYVybqjGom32+nNjf7xueQgcnYqf GopTpti72TVVsRHFqQOzVju5hJMiXn7B9hJSi+osZ7z+Nkz1uM/Rs0mSO9MpDpkb lvdhuDvEK7Z4bLQjb/D907JedR+Zlais9trhxTF7+9FGs9K8Z7RiVLoJ92Owk6Ka +elSLotgEqv89WBW7xBci8QaQtyDW2QOy7W81k/BfDxujRNt+3vrMNDcTa/F1bal TFtxyegxvug4BkihGuLq0t4SOVga/4AOgnXmt8kHbA7v/zjxmHHEt38OFdAlab0i nSvtBfZGR6ztwPDUO+Ls7pZbkBNOHlY667DvlruWIxG68kOGdGSVyCh13x01utI3 gzhTODY7z2zp+WsO0PsE6E9312UBeIYMej4hYvF/Y3EMyZ9E26gnonW+boE+18Dr G5gPcFw0sorMwIUY6256s/daoQe/qUKS82Ail+QUoQebTnbAjn39pCXHR+3/H3Os zMOl6W8KjptlwlCFtaOgUxLMVYdh84GuEEZhvUQhuMI9dM9+JDX6HAcOmz0iyu8x L4ysEr3vQCj8KWefshNPZiTEUxnpHikV7+ZtsH8tZ/3zbBt1RqPlShfppNcL -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIExTCCA62gAwIBAgIBADANBgkqhkiG9w0BAQUFADB9MQswCQYDVQQGEwJFVTEn MCUGA1UEChMeQUMgQ2FtZXJmaXJtYSBTQSBDSUYgQTgyNzQzMjg3MSMwIQYDVQQL ExpodHRwOi8vd3d3LmNoYW1iZXJzaWduLm9yZzEgMB4GA1UEAxMXR2xvYmFsIENo YW1iZXJzaWduIFJvb3QwHhcNMDMwOTMwMTYxNDE4WhcNMzcwOTMwMTYxNDE4WjB9 MQswCQYDVQQGEwJFVTEnMCUGA1UEChMeQUMgQ2FtZXJmaXJtYSBTQSBDSUYgQTgy NzQzMjg3MSMwIQYDVQQLExpodHRwOi8vd3d3LmNoYW1iZXJzaWduLm9yZzEgMB4G A1UEAxMXR2xvYmFsIENoYW1iZXJzaWduIFJvb3QwggEgMA0GCSqGSIb3DQEBAQUA A4IBDQAwggEIAoIBAQCicKLQn0KuWxfH2H3PFIP8T8mhtxOviteePgQKkotgVvq0 Mi+ITaFgCPS3CU6gSS9J1tPfnZdan5QEcOw/Wdm3zGaLmFIoCQLfxS+EjXqXd7/s QJ0lcqu1PzKY+7e3/HKE5TWH+VX6ox8Oby4o3Wmg2UIQxvi1RMLQQ3/bvOSiPGpV eAp3qdjqGTK3L/5cPxvusZjsyq16aUXjlg9V9ubtdepl6DJWk0aJqCWKZQbua795 B9Dxt6/tLE2Su8CoX6dnfQTyFQhwrJLWfQTSM/tMtgsL+xrJxI0DqX5c8lCrEqWh z0hQpe/SyBoT+rB/sYIcd2oPX9wLlY/vQ37mRQklAgEDo4IBUDCCAUwwEgYDVR0T AQH/BAgwBgEB/wIBDDA/BgNVHR8EODA2MDSgMqAwhi5odHRwOi8vY3JsLmNoYW1i ZXJzaWduLm9yZy9jaGFtYmVyc2lnbnJvb3QuY3JsMB0GA1UdDgQWBBRDnDafsJ4w TcbOX60Qq+UDpfqpFDAOBgNVHQ8BAf8EBAMCAQYwEQYJYIZIAYb4QgEBBAQDAgAH MCoGA1UdEQQjMCGBH2NoYW1iZXJzaWducm9vdEBjaGFtYmVyc2lnbi5vcmcwKgYD VR0SBCMwIYEfY2hhbWJlcnNpZ25yb290QGNoYW1iZXJzaWduLm9yZzBbBgNVHSAE VDBSMFAGCysGAQQBgYcuCgEBMEEwPwYIKwYBBQUHAgEWM2h0dHA6Ly9jcHMuY2hh bWJlcnNpZ24ub3JnL2Nwcy9jaGFtYmVyc2lnbnJvb3QuaHRtbDANBgkqhkiG9w0B AQUFAAOCAQEAPDtwkfkEVCeR4e3t/mh/YV3lQWVPMvEYBZRqHN4fcNs+ezICNLUM bKGKfKX0j//U2K0X1S0E0T9YgOKBWYi+wONGkyT+kL0mojAt6JcmVzWJdJYY9hXi ryQZVgICsroPFOrGimbBhkVVi76SvpykBMdJPJ7oKXqJ1/6v/2j1pReQvayZzKWG VwlnRtvWFsJG8eSpUPWP0ZIV018+xgBJOm5YstHRJw0lyDL4IBHNfTIzSJRUTN3c ecQwn+uOuFW114hcxWokPbLTBQNRxgfvzBRydD1ucs4YKIxKoHflCStFREest2d/ AYoFWpO+ocH/+OcOZ6RHSXZddZAa9SaP8A== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEvTCCA6WgAwIBAgIBADANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQGEwJFVTEn MCUGA1UEChMeQUMgQ2FtZXJmaXJtYSBTQSBDSUYgQTgyNzQzMjg3MSMwIQYDVQQL ExpodHRwOi8vd3d3LmNoYW1iZXJzaWduLm9yZzEiMCAGA1UEAxMZQ2hhbWJlcnMg b2YgQ29tbWVyY2UgUm9vdDAeFw0wMzA5MzAxNjEzNDNaFw0zNzA5MzAxNjEzNDRa MH8xCzAJBgNVBAYTAkVVMScwJQYDVQQKEx5BQyBDYW1lcmZpcm1hIFNBIENJRiBB ODI3NDMyODcxIzAhBgNVBAsTGmh0dHA6Ly93d3cuY2hhbWJlcnNpZ24ub3JnMSIw IAYDVQQDExlDaGFtYmVycyBvZiBDb21tZXJjZSBSb290MIIBIDANBgkqhkiG9w0B AQEFAAOCAQ0AMIIBCAKCAQEAtzZV5aVdGDDg2olUkfzIx1L4L1DZ77F1c2VHfRtb unXF/KGIJPov7coISjlUxFF6tdpg6jg8gbLL8bvZkSM/SAFwdakFKq0fcfPJVD0d BmpAPrMMhe5cG3nCYsS4No41XQEMIwRHNaqbYE6gZj3LJgqcQKH0XZi/caulAGgq 7YN6D6IUtdQis4CwPAxaUWktWBiP7Zme8a7ileb2R6jWDA+wWFjbw2Y3npuRVDM3 0pQcakjJyfKl2qUMI/cjDpwyVV5xnIQFUZot/eZOKjRa3spAN2cMVCFVd9oKDMyX roDclDZK9D7ONhMeU+SsTjoF7Nuucpw4i9A5O4kKPnf+dQIBA6OCAUQwggFAMBIG A1UdEwEB/wQIMAYBAf8CAQwwPAYDVR0fBDUwMzAxoC+gLYYraHR0cDovL2NybC5j aGFtYmVyc2lnbi5vcmcvY2hhbWJlcnNyb290LmNybDAdBgNVHQ4EFgQU45T1sU3p 26EpW1eLTXYGduHRooowDgYDVR0PAQH/BAQDAgEGMBEGCWCGSAGG+EIBAQQEAwIA BzAnBgNVHREEIDAegRxjaGFtYmVyc3Jvb3RAY2hhbWJlcnNpZ24ub3JnMCcGA1Ud EgQgMB6BHGNoYW1iZXJzcm9vdEBjaGFtYmVyc2lnbi5vcmcwWAYDVR0gBFEwTzBN BgsrBgEEAYGHLgoDATA+MDwGCCsGAQUFBwIBFjBodHRwOi8vY3BzLmNoYW1iZXJz aWduLm9yZy9jcHMvY2hhbWJlcnNyb290Lmh0bWwwDQYJKoZIhvcNAQEFBQADggEB AAxBl8IahsAifJ/7kPMa0QOx7xP5IV8EnNrJpY0nbJaHkb5BkAFyk+cefV/2icZd p0AJPaxJRUXcLo0waLIJuvvDL8y6C98/d3tGfToSJI6WjzwFCm/SlCgdbQzALogi 1djPHRPH8EjX1wWnz8dHnjs8NMiAT9QUu/wNUPf6s+xCX6ndbcj0dc97wXImsQEc XCz9ek60AcUFV7nnPKoF2YjpB0ZBzu9Bga5Y34OirsrXdx/nADydb47kMgkdTXg0 eDQ8lJsm7U9xxhl6vSAiSFr+S30Dt+dYvsYyTnQeaN2oaFuzPu5ifdmA6Ap1erfu tGWaIZDgqtCYvDi1czyL+Nw= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDqDCCApCgAwIBAgIJAP7c4wEPyUj/MA0GCSqGSIb3DQEBBQUAMDQxCzAJBgNV BAYTAkZSMRIwEAYDVQQKDAlEaGlteW90aXMxETAPBgNVBAMMCENlcnRpZ25hMB4X DTA3MDYyOTE1MTMwNVoXDTI3MDYyOTE1MTMwNVowNDELMAkGA1UEBhMCRlIxEjAQ BgNVBAoMCURoaW15b3RpczERMA8GA1UEAwwIQ2VydGlnbmEwggEiMA0GCSqGSIb3 DQEBAQUAA4IBDwAwggEKAoIBAQDIaPHJ1tazNHUmgh7stL7qXOEm7RFHYeGifBZ4 QCHkYJ5ayGPhxLGWkv8YbWkj4Sti993iNi+RB7lIzw7sebYs5zRLcAglozyHGxny gQcPOJAZ0xH+hrTy0V4eHpbNgGzOOzGTtvKg0KmVEn2lmsxryIRWijOp5yIVUxbw zBfsV1/pogqYCd7jX5xv3EjjhQsVWqa6n6xI4wmy9/Qy3l40vhx4XUJbzg4ij02Q 130yGLMLLGq/jj8UEYkgDncUtT2UCIf3JR7VsmAA7G8qKCVuKj4YYxclPz5EIBb2 JsglrgVKtOdjLPOMFlN+XPsRGgjBRmKfIrjxwo1p3Po6WAbfAgMBAAGjgbwwgbkw DwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUGu3+QTmQtCRZvgHyUtVF9lo53BEw ZAYDVR0jBF0wW4AUGu3+QTmQtCRZvgHyUtVF9lo53BGhOKQ2MDQxCzAJBgNVBAYT AkZSMRIwEAYDVQQKDAlEaGlteW90aXMxETAPBgNVBAMMCENlcnRpZ25hggkA/tzj AQ/JSP8wDgYDVR0PAQH/BAQDAgEGMBEGCWCGSAGG+EIBAQQEAwIABzANBgkqhkiG 9w0BAQUFAAOCAQEAhQMeknH2Qq/ho2Ge6/PAD/Kl1NqV5ta+aDY9fm4fTIrv0Q8h bV6lUmPOEvjvKtpv6zf+EwLHyzs+ImvaYS5/1HI93TDhHkxAGYwP15zRgzB7mFnc fca5DClMoTOi62c6ZYTTluLtdkVwj7Ur3vkj1kluPBS1xp81HlDQwY9qcEQCYsuu HWhBp6pX6FOqB9IG9tUUBguRA3UsbHK1YZWaDYu5Def131TN3ubY1gkIl2PlwS6w t0QmwCbAr1UwnjvVNioZBPRcHv/PLLf/0P2HQBHVESO7SMAhqaQoLf0V+LBOK/Qw WyH8EZE0vkHve52Xdf+XlcCWWC/qu0bXu+TZLg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFnDCCA4SgAwIBAgIBATANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJGUjET MBEGA1UEChMKQ2VydGlub21pczEXMBUGA1UECxMOMDAwMiA0MzM5OTg5MDMxJjAk BgNVBAMMHUNlcnRpbm9taXMgLSBBdXRvcml0w6kgUmFjaW5lMB4XDTA4MDkxNzA4 Mjg1OVoXDTI4MDkxNzA4Mjg1OVowYzELMAkGA1UEBhMCRlIxEzARBgNVBAoTCkNl cnRpbm9taXMxFzAVBgNVBAsTDjAwMDIgNDMzOTk4OTAzMSYwJAYDVQQDDB1DZXJ0 aW5vbWlzIC0gQXV0b3JpdMOpIFJhY2luZTCCAiIwDQYJKoZIhvcNAQEBBQADggIP ADCCAgoCggIBAJ2Fn4bT46/HsmtuM+Cet0I0VZ35gb5j2CN2DpdUzZlMGvE5x4jY F1AMnmHawE5V3udauHpOd4cN5bjr+p5eex7Ezyh0x5P1FMYiKAT5kcOrJ3NqDi5N 8y4oH3DfVS9O7cdxbwlyLu3VMpfQ8Vh30WC8Tl7bmoT2R2FFK/ZQpn9qcSdIhDWe rP5pqZ56XjUl+rSnSTV3lqc2W+HN3yNw2F1MpQiD8aYkOBOo7C+ooWfHpi2GR+6K /OybDnT0K0kCe5B1jPyZOQE51kqJ5Z52qz6WKDgmi92NjMD2AR5vpTESOH2VwnHu 7XSu5DaiQ3XV8QCb4uTXzEIDS3h65X27uK4uIJPT5GHfceF2Z5c/tt9qc1pkIuVC 28+BA5PY9OMQ4HL2AHCs8MF6DwV/zzRpRbWT5BnbUhYjBYkOjUjkJW+zeL9i9Qf6 lSTClrLooyPCXQP8w9PlfMl1I9f09bze5N/NgL+RiH2nE7Q5uiy6vdFrzPOlKO1E nn1So2+WLhl+HPNbxxaOu2B9d2ZHVIIAEWBsMsGoOBvrbpgT1u449fCfDu/+MYHB 0iSVL1N6aaLwD4ZFjliCK0wi1F6g530mJ0jfJUaNSih8hp75mxpZuWW/Bd22Ql09 5gBIgl4g9xGC3srYn+Y3RyYe63j3YcNBZFgCQfna4NH4+ej9Uji29YnfAgMBAAGj WzBZMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBQN jLZh2kS40RR9w759XkjwzspqsDAXBgNVHSAEEDAOMAwGCiqBegFWAgIAAQEwDQYJ KoZIhvcNAQEFBQADggIBACQ+YAZ+He86PtvqrxyaLAEL9MW12Ukx9F1BjYkMTv9s ov3/4gbIOZ/xWqndIlgVqIrTseYyCYIDbNc/CMf4uboAbbnW/FIyXaR/pDGUu7ZM OH8oMDX/nyNTt7buFHAAQCvaR6s0fl6nVjBhK4tDrP22iCj1a7Y+YEq6QpA0Z43q 619FVDsXrIvkxmUP7tCMXWY5zjKn2BCXwH40nJ+U8/aGH88bc62UeYdocMMzpXDn 2NU4lG9jeeu/Cg4I58UvD0KgKxRA/yHgBcUn4YQRE7rWhh1BCxMjidPJC+iKunqj o3M3NYB9Ergzd0A4wPpeMNLytqOx1qKVl4GbUu1pTP+A5FPbVFsDbVRfsbjvJL1v nxHDx2TCDyhihWZeGnuyt++uNckZM6i4J9szVb9o4XVIRFb7zdNIu0eJOqxp9YDG 5ERQL1TEqkPFMTFYvZbF6nVsmnWxTfj3l/+WFvKXTej28xH5On2KOG4Ey+HTRRWq pdEdnV1j6CTmNhTih60bWfVEm/vXd3wfAXBioSAaosUaKPQhA+4u2cGA6rnZgtZb dsLLO7XSAPCjDuGtbkD326C00EauFddEwk01+dIL8hf2rGbVJLJP0RyZwG71fet0 BLj5TXcJ17TPBzAJ8bgAVtkXFhYKK4bfjwEZGuW7gmP/vgt2Fl43N+bYdJeimUV5 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDkjCCAnqgAwIBAgIRAIW9S/PY2uNp9pTXX8OlRCMwDQYJKoZIhvcNAQEFBQAw PTELMAkGA1UEBhMCRlIxETAPBgNVBAoTCENlcnRwbHVzMRswGQYDVQQDExJDbGFz cyAyIFByaW1hcnkgQ0EwHhcNOTkwNzA3MTcwNTAwWhcNMTkwNzA2MjM1OTU5WjA9 MQswCQYDVQQGEwJGUjERMA8GA1UEChMIQ2VydHBsdXMxGzAZBgNVBAMTEkNsYXNz IDIgUHJpbWFyeSBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANxQ ltAS+DXSCHh6tlJw/W/uz7kRy1134ezpfgSN1sxvc0NXYKwzCkTsA18cgCSR5aiR VhKC9+Ar9NuuYS6JEI1rbLqzAr3VNsVINyPi8Fo3UjMXEuLRYE2+L0ER4/YXJQyL kcAbmXuZVg2v7tK8R1fjeUl7NIknJITesezpWE7+Tt9avkGtrAjFGA7v0lPubNCd EgETjdyAYveVqUSISnFOYFWe2yMZeVYHDD9jC1yw4r5+FfyUM1hBOHTE4Y+L3yas H7WLO7dDWWuwJKZtkIvEcupdM5i3y95ee++U8Rs+yskhwcWYAqqi9lt3m/V+llU0 HGdpwPFC40es/CgcZlUCAwEAAaOBjDCBiTAPBgNVHRMECDAGAQH/AgEKMAsGA1Ud DwQEAwIBBjAdBgNVHQ4EFgQU43Mt38sOKAze3bOkynm4jrvoMIkwEQYJYIZIAYb4 QgEBBAQDAgEGMDcGA1UdHwQwMC4wLKAqoCiGJmh0dHA6Ly93d3cuY2VydHBsdXMu Y29tL0NSTC9jbGFzczIuY3JsMA0GCSqGSIb3DQEBBQUAA4IBAQCnVM+IRBnL39R/ AN9WM2K191EBkOvDP9GIROkkXe/nFL0gt5o8AP5tn9uQ3Nf0YtaLcF3n5QRIqWh8 yfFC82x/xXp8HVGIutIKPidd3i1RTtMTZGnkLuPT55sJmabglZvOGtd/vjzOUrMR FcEPF80Du5wlFbqidon8BvEY0JNLDnyCt6X09l/+7UCmnYR0ObncHoUW2ikbhiMA ybuJfm6AiB4vFLQDJKgybwOaRywwvlbGp0ICcBvqQNi6BQNwB6SW//1IMwrh3KWB kJtN3X3n57LNXMhqlfil9o3EXXgIvnsG1knPGTZQIy4I5p4FTUcY1Rbpsda2ENW7 l7+ijrRU -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDODCCAiCgAwIBAgIGIAYFFnACMA0GCSqGSIb3DQEBBQUAMDsxCzAJBgNVBAYT AlJPMREwDwYDVQQKEwhjZXJ0U0lHTjEZMBcGA1UECxMQY2VydFNJR04gUk9PVCBD QTAeFw0wNjA3MDQxNzIwMDRaFw0zMTA3MDQxNzIwMDRaMDsxCzAJBgNVBAYTAlJP MREwDwYDVQQKEwhjZXJ0U0lHTjEZMBcGA1UECxMQY2VydFNJR04gUk9PVCBDQTCC ASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALczuX7IJUqOtdu0KBuqV5Do 0SLTZLrTk+jUrIZhQGpgV2hUhE28alQCBf/fm5oqrl0Hj0rDKH/v+yv6efHHrfAQ UySQi2bJqIirr1qjAOm+ukbuW3N7LBeCgV5iLKECZbO9xSsAfsT8AzNXDe3i+s5d RdY4zTW2ssHQnIFKquSyAVwdj1+ZxLGt24gh65AIgoDzMKND5pCCrlUoSe1b16kQ OA7+j0xbm0bqQfWwCHTD0IgztnzXdN/chNFDDnU5oSVAKOp4yw4sLjmdjItuFhwv JoIQ4uNllAoEwF73XVv4EOLQunpL+943AAAaWyjj0pxzPjKHmKHJUS/X3qwzs08C AwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAcYwHQYDVR0O BBYEFOCMm9slSbPxfIbWskKHC9BroNnkMA0GCSqGSIb3DQEBBQUAA4IBAQA+0hyJ LjX8+HXd5n9liPRyTMks1zJO890ZeUe9jjtbkw9QSSQTaxQGcu8J06Gh40CEyecY MnQ8SG4Pn0vU9x7Tk4ZkVJdjclDVVc/6IJMCopvDI5NOFlV2oHB5bc0hH88vLbwZ 44gx+FkagQnIl6Z0x2DEW8xXjrJ1/RsCCdtZb3KTafcxQdaIOL+Hsr0Wefmq5L6I Jd1hJyMctTEHBDa0GpC9oHRxUIltvBTjD4au8as+x6AJzKNI0eDbZOeStc+vckNw i/nDhDwTqn6Sm1dTk/pwwpEOMfmbZ13pljheX7NzTogVZ96edhBiIL5VaZVDADlN 9u6wWk5JRFRYX0KD -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDDDCCAfSgAwIBAgIDAQAgMA0GCSqGSIb3DQEBBQUAMD4xCzAJBgNVBAYTAlBM MRswGQYDVQQKExJVbml6ZXRvIFNwLiB6IG8uby4xEjAQBgNVBAMTCUNlcnR1bSBD QTAeFw0wMjA2MTExMDQ2MzlaFw0yNzA2MTExMDQ2MzlaMD4xCzAJBgNVBAYTAlBM MRswGQYDVQQKExJVbml6ZXRvIFNwLiB6IG8uby4xEjAQBgNVBAMTCUNlcnR1bSBD QTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAM6xwS7TT3zNJc4YPk/E jG+AanPIW1H4m9LcuwBcsaD8dQPugfCI7iNS6eYVM42sLQnFdvkrOYCJ5JdLkKWo ePhzQ3ukYbDYWMzhbGZ+nPMJXlVjhNWo7/OxLjBos8Q82KxujZlakE403Daaj4GI ULdtlkIJ89eVgw1BS7Bqa/j8D35in2fE7SZfECYPCE/wpFcozo+47UX2bu4lXapu Ob7kky/ZR6By6/qmW6/KUz/iDsaWVhFu9+lmqSbYf5VT7QqFiLpPKaVCjF62/IUg AKpoC6EahQGcxEZjgoi2IrHu/qpGWX7PNSzVttpd90gzFFS269lvzs2I1qsb2pY7 HVkCAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEA uI3O7+cUus/usESSbLQ5PqKEbq24IXfS1HeCh+YgQYHu4vgRt2PRFze+GXYkHAQa TOs9qmdvLdTN/mUxcMUbpgIKumB7bVjCmkn+YzILa+M6wKyrO7Do0wlRjBCDxjTg xSvgGrZgFCdsMneMvLJymM/NzD+5yCRCFNZX/OYmQ6kd5YCQzgNUKD73P9P4Te1q CjqTE5s7FCMTY5w/0YcneeVMUeMBrYVdGjux1XMQpNPyvG5k9VpWkKjHDkx0Dy5x O/fIR/RpbxXyEV6DHpx8Uq79AtoSqFlnGNu8cN2bsWntgM6JQEhqDjXKKWYVIZQs 6GAqm4VKQPNriiTsBhYscw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDuzCCAqOgAwIBAgIDBETAMA0GCSqGSIb3DQEBBQUAMH4xCzAJBgNVBAYTAlBM MSIwIAYDVQQKExlVbml6ZXRvIFRlY2hub2xvZ2llcyBTLkEuMScwJQYDVQQLEx5D ZXJ0dW0gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxIjAgBgNVBAMTGUNlcnR1bSBU cnVzdGVkIE5ldHdvcmsgQ0EwHhcNMDgxMDIyMTIwNzM3WhcNMjkxMjMxMTIwNzM3 WjB+MQswCQYDVQQGEwJQTDEiMCAGA1UEChMZVW5pemV0byBUZWNobm9sb2dpZXMg Uy5BLjEnMCUGA1UECxMeQ2VydHVtIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MSIw IAYDVQQDExlDZXJ0dW0gVHJ1c3RlZCBOZXR3b3JrIENBMIIBIjANBgkqhkiG9w0B AQEFAAOCAQ8AMIIBCgKCAQEA4/t9o3K6wvDJFIf1awFO4W5AB7ptJ11/91sts1rH UV+rpDKmYYe2bg+G0jACl/jXaVehGDldamR5xgFZrDwxSjh80gTSSyjoIF87B6LM TXPb865Px1bVWqeWifrzq2jUI4ZZJ88JJ7ysbnKDHDBy3+Ci6dLhdHUZvSqeexVU BBvXQzmtVSjF4hq79MDkrjhJM8x2hZ85RdKknvISjFH4fOQtf/WsX+sWn7Et0brM kUJ3TCXJkDhv2/DM+44el1k+1WBO5gUo7Ul5E0u6SNsv+XLTOcr+H9g0cvW0QM8x AcPs3hEtF10fuFDRXhmnad4HMyjKUJX5p1TLVIZQRan5SQIDAQABo0IwQDAPBgNV HRMBAf8EBTADAQH/MB0GA1UdDgQWBBQIds3LB/8k9sXN7buQvOKEN0Z19zAOBgNV HQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQEFBQADggEBAKaorSLOAT2mo/9i0Eidi15y sHhE49wcrwn9I0j6vSrEuVUEtRCjjSfeC4Jj0O7eDDd5QVsisrCaQVymcODU0HfL I9MA4GxWL+FpDQ3Zqr8hgVDZBqWo/5U30Kr+4rP1mS1FhIrlQgnXdAIv94nYmem8 J9RHjboNRhx3zxSkHLmkMcScKHQDNP8zGSal6Q10tz6XxnboJ5ajZt3hrvJBW8qY VoNzcOSGGtIxQbovvi0TWnZvTuhOgQ4/WwMioBK+ZlgRSssDxLQqKi2WF+A5VLxI 03YnnZotBqbJ7DnSq9ufmgsnAjUpsUCV5/nonFWIGUbWtzT1fs45mtk48VH3Tyw= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDVTCCAj2gAwIBAgIESTMAATANBgkqhkiG9w0BAQUFADAyMQswCQYDVQQGEwJD TjEOMAwGA1UEChMFQ05OSUMxEzARBgNVBAMTCkNOTklDIFJPT1QwHhcNMDcwNDE2 MDcwOTE0WhcNMjcwNDE2MDcwOTE0WjAyMQswCQYDVQQGEwJDTjEOMAwGA1UEChMF Q05OSUMxEzARBgNVBAMTCkNOTklDIFJPT1QwggEiMA0GCSqGSIb3DQEBAQUAA4IB DwAwggEKAoIBAQDTNfc/c3et6FtzF8LRb+1VvG7q6KR5smzDo+/hn7E7SIX1mlwh IhAsxYLO2uOabjfhhyzcuQxauohV3/2q2x8x6gHx3zkBwRP9SFIhxFXf2tizVHa6 dLG3fdfA6PZZxU3Iva0fFNrfWEQlMhkqx35+jq44sDB7R3IJMfAw28Mbdim7aXZO V/kbZKKTVrdvmW7bCgScEeOAH8tjlBAKqeFkgjH5jCftppkA9nCTGPihNIaj3XrC GHn2emU1z5DrvTOTn1OrczvmmzQgLx3vqR1jGqCA2wMv+SYahtKNu6m+UjqHZ0gN v7Sg2Ca+I19zN38m5pIEo3/PIKe38zrKy5nLAgMBAAGjczBxMBEGCWCGSAGG+EIB AQQEAwIABzAfBgNVHSMEGDAWgBRl8jGtKvf33VKWCscCwQ7vptU7ETAPBgNVHRMB Af8EBTADAQH/MAsGA1UdDwQEAwIB/jAdBgNVHQ4EFgQUZfIxrSr3991SlgrHAsEO 76bVOxEwDQYJKoZIhvcNAQEFBQADggEBAEs17szkrr/Dbq2flTtLP1se31cpolnK OOK5Gv+e5m4y3R6u6jW39ZORTtpC4cMXYFDy0VwmuYK36m3knITnA3kXr5g9lNvH ugDnuL8BV8F3RTIMO/G0HAiw/VGgod2aHRM2mm23xzy54cXZF/qD1T0VoDy7Hgvi yJA/qIYM/PmLXoXLT1tLYhFHxUV8BS9BsZ4QaRuZluBVeftOhpm4lNqGOGqTo+fL buXf6iFViZx9fX+Y9QCJ7uOEwFyWtcVG6kbghVW2G8kS1sHNzYDzAgE8yGnLRUhj 2JTQ7IUOO04RZfSCjKY9ri4ilAnIXOo8gV0WKgOXFlUJ24pBgp5mmxE= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEMjCCAxqgAwIBAgIBATANBgkqhkiG9w0BAQUFADB7MQswCQYDVQQGEwJHQjEb MBkGA1UECAwSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3JkMRow GAYDVQQKDBFDb21vZG8gQ0EgTGltaXRlZDEhMB8GA1UEAwwYQUFBIENlcnRpZmlj YXRlIFNlcnZpY2VzMB4XDTA0MDEwMTAwMDAwMFoXDTI4MTIzMTIzNTk1OVowezEL MAkGA1UEBhMCR0IxGzAZBgNVBAgMEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UE BwwHU2FsZm9yZDEaMBgGA1UECgwRQ29tb2RvIENBIExpbWl0ZWQxITAfBgNVBAMM GEFBQSBDZXJ0aWZpY2F0ZSBTZXJ2aWNlczCCASIwDQYJKoZIhvcNAQEBBQADggEP ADCCAQoCggEBAL5AnfRu4ep2hxxNRUSOvkbIgwadwSr+GB+O5AL686tdUIoWMQua BtDFcCLNSS1UY8y2bmhGC1Pqy0wkwLxyTurxFa70VJoSCsN6sjNg4tqJVfMiWPPe 3M/vg4aijJRPn2jymJBGhCfHdr/jzDUsi14HZGWCwEiwqJH5YZ92IFCokcdmtet4 YgNW8IoaE+oxox6gmf049vYnMlhvB/VruPsUK6+3qszWY19zjNoFmag4qMsXeDZR rOme9Hg6jc8P2ULimAyrL58OAd7vn5lJ8S3frHRNG5i1R8XlKdH5kBjHYpy+g8cm ez6KJcfA3Z3mNWgQIJ2P2N7Sw4ScDV7oL8kCAwEAAaOBwDCBvTAdBgNVHQ4EFgQU oBEKIz6W8Qfs4q8p74Klf9AwpLQwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQF MAMBAf8wewYDVR0fBHQwcjA4oDagNIYyaHR0cDovL2NybC5jb21vZG9jYS5jb20v QUFBQ2VydGlmaWNhdGVTZXJ2aWNlcy5jcmwwNqA0oDKGMGh0dHA6Ly9jcmwuY29t b2RvLm5ldC9BQUFDZXJ0aWZpY2F0ZVNlcnZpY2VzLmNybDANBgkqhkiG9w0BAQUF AAOCAQEACFb8AvCb6P+k+tZ7xkSAzk/ExfYAWMymtrwUSWgEdujm7l3sAg9g1o1Q GE8mTgHj5rCl7r+8dFRBv/38ErjHT1r0iWAFf2C3BUrz9vHCv8S5dIa2LX1rzNLz Rt0vxuBqw8M0Ayx9lt1awg6nCpnBBYurDC/zXDrPbDdVCYfeU0BsWO/8tqtlbgT2 G9w84FoVxp7Z8VlIMCFlA2zs6SFz7JsDoeA3raAVGI/6ugLOpyypEBMs1OUIJqsi l2D4kF501KKaU73yqWjgom7C12yxow+ev+to51byrvLjKzg6CYG1a4XXvi3tPxq3 smPi9WIsgtRqAEFQ8TmDn5XpNpaYbg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEHTCCAwWgAwIBAgIQToEtioJl4AsC7j41AkblPTANBgkqhkiG9w0BAQUFADCB gTELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4G A1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxJzAlBgNV BAMTHkNPTU9ETyBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wNjEyMDEwMDAw MDBaFw0yOTEyMzEyMzU5NTlaMIGBMQswCQYDVQQGEwJHQjEbMBkGA1UECBMSR3Jl YXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRowGAYDVQQKExFDT01P RE8gQ0EgTGltaXRlZDEnMCUGA1UEAxMeQ09NT0RPIENlcnRpZmljYXRpb24gQXV0 aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA0ECLi3LjkRv3 UcEbVASY06m/weaKXTuH+7uIzg3jLz8GlvCiKVCZrts7oVewdFFxze1CkU1B/qnI 2GqGd0S7WWaXUF601CxwRM/aN5VCaTwwxHGzUvAhTaHYujl8HJ6jJJ3ygxaYqhZ8 Q5sVW7euNJH+1GImGEaaP+vB+fGQV+useg2L23IwambV4EajcNxo2f8ESIl33rXp +2dtQem8Ob0y2WIC8bGoPW43nOIv4tOiJovGuFVDiOEjPqXSJDlqR6sA1KGzqSX+ DT+nHbrTUcELpNqsOO9VUCQFZUaTNE8tja3G1CEZ0o7KBWFxB3NH5YoZEr0ETc5O nKVIrLsm9wIDAQABo4GOMIGLMB0GA1UdDgQWBBQLWOWLxkwVN6RAqTCpIb5HNlpW /zAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zBJBgNVHR8EQjBAMD6g PKA6hjhodHRwOi8vY3JsLmNvbW9kb2NhLmNvbS9DT01PRE9DZXJ0aWZpY2F0aW9u QXV0aG9yaXR5LmNybDANBgkqhkiG9w0BAQUFAAOCAQEAPpiem/Yb6dc5t3iuHXIY SdOH5EOC6z/JqvWote9VfCFSZfnVDeFs9D6Mk3ORLgLETgdxb8CPOGEIqB6BCsAv IC9Bi5HcSEW88cbeunZrM8gALTFGTO3nnc+IlP8zwFboJIYmuNg4ON8qa90SzMc/ RxdMosIGlgnW2/4/PEZB31jiVg88O8EckzXZOFKs7sjsLjBOlDW0JB9LeGna8gI4 zJVSk/BwJVmcIGfE7vmLV2H0knZ9P4SNVbfo5azV8fUZVqZa+5Acr5Pr5RzUZ5dd BA6+C4OmF4O5MBKgxTMVBbkN+8cFduPYSo38NBejxiEovjBFMR7HeL5YYTisO+IB ZQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICiTCCAg+gAwIBAgIQH0evqmIAcFBUTAGem2OZKjAKBggqhkjOPQQDAzCBhTEL MAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UE BxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxKzApBgNVBAMT IkNPTU9ETyBFQ0MgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDgwMzA2MDAw MDAwWhcNMzgwMTE4MjM1OTU5WjCBhTELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdy ZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09N T0RPIENBIExpbWl0ZWQxKzApBgNVBAMTIkNPTU9ETyBFQ0MgQ2VydGlmaWNhdGlv biBBdXRob3JpdHkwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQDR3svdcmCFYX7deSR FtSrYpn1PlILBs5BAH+X4QokPB0BBO490o0JlwzgdeT6+3eKKvUDYEs2ixYjFq0J cfRK9ChQtP6IHG4/bC8vCVlbpVsLM5niwz2J+Wos77LTBumjQjBAMB0GA1UdDgQW BBR1cacZSBm8nZ3qQUfflMRId5nTeTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/ BAUwAwEB/zAKBggqhkjOPQQDAwNoADBlAjEA7wNbeqy3eApyt4jf/7VGFAkK+qDm fQjGGoe9GKhzvSbKYAydzpmfz1wPMOG+FDHqAjAU9JM8SaczepBGR7NjfRObTrdv GDeAU/7dIOA1mjbRxwG55tzd8/8dLDoWV9mSOdY= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEPzCCAyegAwIBAgIBATANBgkqhkiG9w0BAQUFADB+MQswCQYDVQQGEwJHQjEb MBkGA1UECAwSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3JkMRow GAYDVQQKDBFDb21vZG8gQ0EgTGltaXRlZDEkMCIGA1UEAwwbU2VjdXJlIENlcnRp ZmljYXRlIFNlcnZpY2VzMB4XDTA0MDEwMTAwMDAwMFoXDTI4MTIzMTIzNTk1OVow fjELMAkGA1UEBhMCR0IxGzAZBgNVBAgMEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4G A1UEBwwHU2FsZm9yZDEaMBgGA1UECgwRQ29tb2RvIENBIExpbWl0ZWQxJDAiBgNV BAMMG1NlY3VyZSBDZXJ0aWZpY2F0ZSBTZXJ2aWNlczCCASIwDQYJKoZIhvcNAQEB BQADggEPADCCAQoCggEBAMBxM4KK0HDrc4eCQNUd5MvJDkKQ+d40uaG6EfQlhfPM cm3ye5drswfxdySRXyWP9nQ95IDC+DwN879A6vfIUtFyb+/Iq0G4bi4XKpVpDM3S HpR7LZQdqnXXs5jLrLxkU0C8j6ysNstcrbvd4JQX7NFc0L/vpZXJkMWwrPsbQ996 CF23uPJAGysnnlDOXmWCiIxe004MeuoIkbY2qitC++rCoznl2yY4rYsK7hljxxwk 3wN42ubqwUcaCwtGCd0C/N7Lh1/XMGNooa7cMqG6vv5Eq2i2pRcV/b3Vp6ea5EQz 6YiO/O1R65NxTq0B50SOqy3LqP4BSUjwwN3HaNiS/j0CAwEAAaOBxzCBxDAdBgNV HQ4EFgQUPNiTiMLAggnMAZkGkyDpnnAJY08wDgYDVR0PAQH/BAQDAgEGMA8GA1Ud EwEB/wQFMAMBAf8wgYEGA1UdHwR6MHgwO6A5oDeGNWh0dHA6Ly9jcmwuY29tb2Rv Y2EuY29tL1NlY3VyZUNlcnRpZmljYXRlU2VydmljZXMuY3JsMDmgN6A1hjNodHRw Oi8vY3JsLmNvbW9kby5uZXQvU2VjdXJlQ2VydGlmaWNhdGVTZXJ2aWNlcy5jcmww DQYJKoZIhvcNAQEFBQADggEBAIcBbSMdflsXfcFhMs+P5/OKlFlm4J4oqF7Tt/Q0 5qo5spcWxYJvMqTpjOev/e/C6LlLqqP05tqNZSH7uoDrJiiFGv45jN5bBAS0VPmj Z55B+glSzAVIqMk/IQQezkhr/IXownuvf7fM+F86/TXGDe+X3EyrEeFryzHRbPtI gKvcnDe4IRRLDXE97IMzbtFuMhbsmMcWi1mmNKsFVy2T96oTy9IT4rcuO81rUBcJ aD61JlfutuC23bkpgHl9j6PwpCikFcSF9CfUa7/lXORlAnZUtOM3ZiTTGWHIUhDl izeauan5Hb/qmZJhlv8BzaFfDbxxvA6sCx1HRR3B7Hzs/Sk= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEQzCCAyugAwIBAgIBATANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQGEwJHQjEb MBkGA1UECAwSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHDAdTYWxmb3JkMRow GAYDVQQKDBFDb21vZG8gQ0EgTGltaXRlZDElMCMGA1UEAwwcVHJ1c3RlZCBDZXJ0 aWZpY2F0ZSBTZXJ2aWNlczAeFw0wNDAxMDEwMDAwMDBaFw0yODEyMzEyMzU5NTla MH8xCzAJBgNVBAYTAkdCMRswGQYDVQQIDBJHcmVhdGVyIE1hbmNoZXN0ZXIxEDAO BgNVBAcMB1NhbGZvcmQxGjAYBgNVBAoMEUNvbW9kbyBDQSBMaW1pdGVkMSUwIwYD VQQDDBxUcnVzdGVkIENlcnRpZmljYXRlIFNlcnZpY2VzMIIBIjANBgkqhkiG9w0B AQEFAAOCAQ8AMIIBCgKCAQEA33FvNlhTWvI2VFeAxHQIIO0Yfyod5jWaHiWsnOWW fnJSoBVC21ndZHoa0Lh73TkVvFVIxO06AOoxEbrycXQaZ7jPM8yoMa+j49d/vzMt TGo87IvDktJTdyR0nAducPy9C1t2ul/y/9c3S0pgePfw+spwtOpZqqPOSC+pw7IL fhdyFgymBwwbOM/JYrc/oJOlh0Hyt3BAd9i+FHzjqMB6juljatEPmsbS9Is6FARW 1O24zG71++IsWL1/T2sr92AkWCTOJu80kTrV44HQsvAEAtdbtz6SrGsSivnkBbA7 kUlcsutT6vifR4buv5XAwAaf0lteERv0xwQ1KdJVXOTt6wIDAQABo4HJMIHGMB0G A1UdDgQWBBTFe1i97doladL3WRaoszLAeydb9DAOBgNVHQ8BAf8EBAMCAQYwDwYD VR0TAQH/BAUwAwEB/zCBgwYDVR0fBHwwejA8oDqgOIY2aHR0cDovL2NybC5jb21v ZG9jYS5jb20vVHJ1c3RlZENlcnRpZmljYXRlU2VydmljZXMuY3JsMDqgOKA2hjRo dHRwOi8vY3JsLmNvbW9kby5uZXQvVHJ1c3RlZENlcnRpZmljYXRlU2VydmljZXMu Y3JsMA0GCSqGSIb3DQEBBQUAA4IBAQDIk4E7ibSvuIQSTI3S8NtwuleGFTQQuS9/ HrCoiWChisJ3DFBKmwCL2Iv0QeLQg4pKHBQGsKNoBXAxMKdTmw7pSqBYaWcOrp32 pSxBvzwGa+RZzG0Q8ZZvH9/0BAKkn0U+yNj6NkZEUD+Cl5EfKNsYEYwq5GWDVxIS jBc/lDb+XbDABHcTuPQV1T84zJQ6VdCsmPW6AF/ghhmBeC8owH7TzEIK9a5QoNE+ xqFx7D+gIIxmOom0jtTYsU0lR+4viMi14QVFwL4Ucd56/Y57fU0IlqUSc/Atyjcn dBInTMu2l+nZrghtWjlA3QVHdWpaIbOjGM9O9y5Xt5hwXsjEeLBi -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDkzCCAnugAwIBAgIQFBOWgxRVjOp7Y+X8NId3RDANBgkqhkiG9w0BAQUFADA0 MRMwEQYDVQQDEwpDb21TaWduIENBMRAwDgYDVQQKEwdDb21TaWduMQswCQYDVQQG EwJJTDAeFw0wNDAzMjQxMTMyMThaFw0yOTAzMTkxNTAyMThaMDQxEzARBgNVBAMT CkNvbVNpZ24gQ0ExEDAOBgNVBAoTB0NvbVNpZ24xCzAJBgNVBAYTAklMMIIBIjAN BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA8ORUaSvTx49qROR+WCf4C9DklBKK 8Rs4OC8fMZwG1Cyn3gsqrhqg455qv588x26i+YtkbDqthVVRVKU4VbirgwTyP2Q2 98CNQ0NqZtH3FyrV7zb6MBBC11PN+fozc0yz6YQgitZBJzXkOPqUm7h65HkfM/sb 2CEJKHxNGGleZIp6GZPKfuzzcuc3B1hZKKxC+cX/zT/npfo4sdAMx9lSGlPWgcxC ejVb7Us6eva1jsz/D3zkYDaHL63woSV9/9JLEYhwVKZBqGdTUkJe5DSe5L6j7Kpi Xd3DTKaCQeQzC6zJMw9kglcq/QytNuEMrkvF7zuZ2SOzW120V+x0cAwqTwIDAQAB o4GgMIGdMAwGA1UdEwQFMAMBAf8wPQYDVR0fBDYwNDAyoDCgLoYsaHR0cDovL2Zl ZGlyLmNvbXNpZ24uY28uaWwvY3JsL0NvbVNpZ25DQS5jcmwwDgYDVR0PAQH/BAQD AgGGMB8GA1UdIwQYMBaAFEsBmz5WGmU2dst7l6qSBe4y5ygxMB0GA1UdDgQWBBRL AZs+VhplNnbLe5eqkgXuMucoMTANBgkqhkiG9w0BAQUFAAOCAQEA0Nmlfv4pYEWd foPPbrxHbvUanlR2QnG0PFg/LUAlQvaBnPGJEMgOqnhPOAlXsDzACPw1jvFIUY0M cXS6hMTXcpuEfDhOZAYnKuGntewImbQKDdSFc8gS4TXt8QUxHXOZDOuWyt3T5oWq 8Ir7dcHyCTxlZWTzTNity4hp8+SDtwy9F1qWF8pb/627HOkthIDYIb6FUtnUdLlp hbpN7Sgy6/lhSuTENh4Z3G+EER+V9YMoGKgzkkMn3V0TBEVPh9VGzT2ouvDzuFYk Res3x+F2T3I5GN9+dHLHcy056mDmrRGiVod7w2ia/viMcKjfZTL0pECMocJEAw6U AGegcQCCSA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDqzCCApOgAwIBAgIRAMcoRwmzuGxFjB36JPU2TukwDQYJKoZIhvcNAQEFBQAw PDEbMBkGA1UEAxMSQ29tU2lnbiBTZWN1cmVkIENBMRAwDgYDVQQKEwdDb21TaWdu MQswCQYDVQQGEwJJTDAeFw0wNDAzMjQxMTM3MjBaFw0yOTAzMTYxNTA0NTZaMDwx GzAZBgNVBAMTEkNvbVNpZ24gU2VjdXJlZCBDQTEQMA4GA1UEChMHQ29tU2lnbjEL MAkGA1UEBhMCSUwwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDGtWhf HZQVw6QIVS3joFd67+l0Kru5fFdJGhFeTymHDEjWaueP1H5XJLkGieQcPOqs49oh gHMhCu95mGwfCP+hUH3ymBvJVG8+pSjsIQQPRbsHPaHA+iqYHU4Gk/v1iDurX8sW v+bznkqH7Rnqwp9D5PGBpX8QTz7RSmKtUxvLg/8HZaWSLWapW7ha9B20IZFKF3ue Mv5WJDmyVIRD9YTC2LxBkMyd1mja6YJQqTtoz7VdApRgFrFD2UNd3V2Hbuq7s8lr 9gOUCXDeFhF6K+h2j0kQmHe5Y1yLM5d19guMsqtb3nQgJT/j8xH5h2iGNXHDHYwt 6+UarA9z1YJZQIDTAgMBAAGjgacwgaQwDAYDVR0TBAUwAwEB/zBEBgNVHR8EPTA7 MDmgN6A1hjNodHRwOi8vZmVkaXIuY29tc2lnbi5jby5pbC9jcmwvQ29tU2lnblNl Y3VyZWRDQS5jcmwwDgYDVR0PAQH/BAQDAgGGMB8GA1UdIwQYMBaAFMFL7XC29z58 ADsAj8c+DkWfHl3sMB0GA1UdDgQWBBTBS+1wtvc+fAA7AI/HPg5Fnx5d7DANBgkq hkiG9w0BAQUFAAOCAQEAFs/ukhNQq3sUnjO2QiBq1BW9Cav8cujvR3qQrFHBZE7p iL1DRYHjZiM/EoZNGeQFsOY3wo3aBijJD4mkU6l1P7CW+6tMM1X5eCZGbxs2mPtC dsGCuY7e+0X5YxtiOzkGynd6qDwJz2w2PQ8KRUtpFhpFfTMDZflScZAmlaxMDPWL kz/MdXSFmLr/YnpNH4n+rr2UAJm/EaXc4HnFFgt9AmEd6oX5AhVP51qJThRv4zdL hfXBPGHg/QVBspJ/wx2g0K5SZGBrGMYmnNj1ZOQ2GmKfig8+/21OGVZOIJFsnzQz OjRXUDpvgV4GxvU+fE6OK85lBi5d0ipTdF7Tbieejw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDoTCCAomgAwIBAgILBAAAAAABD4WqLUgwDQYJKoZIhvcNAQEFBQAwOzEYMBYG A1UEChMPQ3liZXJ0cnVzdCwgSW5jMR8wHQYDVQQDExZDeWJlcnRydXN0IEdsb2Jh bCBSb290MB4XDTA2MTIxNTA4MDAwMFoXDTIxMTIxNTA4MDAwMFowOzEYMBYGA1UE ChMPQ3liZXJ0cnVzdCwgSW5jMR8wHQYDVQQDExZDeWJlcnRydXN0IEdsb2JhbCBS b290MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA+Mi8vRRQZhP/8NN5 7CPytxrHjoXxEnOmGaoQ25yiZXRadz5RfVb23CO21O1fWLE3TdVJDm71aofW0ozS J8bi/zafmGWgE07GKmSb1ZASzxQG9Dvj1Ci+6A74q05IlG2OlTEQXO2iLb3VOm2y HLtgwEZLAfVJrn5GitB0jaEMAs7u/OePuGtm839EAL9mJRQr3RAwHQeWP032a7iP t3sMpTjr3kfb1V05/Iin89cqdPHoWqI7n1C6poxFNcJQZZXcY4Lv3b93TZxiyWNz FtApD0mpSPCzqrdsxacwOUBdrsTiXSZT8M4cIwhhqJQZugRiQOwfOHB3EgZxpzAY XSUnpQIDAQABo4GlMIGiMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/ MB0GA1UdDgQWBBS2CHsNesysIEyGVjJez6tuhS1wVzA/BgNVHR8EODA2MDSgMqAw hi5odHRwOi8vd3d3Mi5wdWJsaWMtdHJ1c3QuY29tL2NybC9jdC9jdHJvb3QuY3Js MB8GA1UdIwQYMBaAFLYIew16zKwgTIZWMl7Pq26FLXBXMA0GCSqGSIb3DQEBBQUA A4IBAQBW7wojoFROlZfJ+InaRcHUowAl9B8Tq7ejhVhpwjCt2BWKLePJzYFa+HMj Wqd8BfP9IjsO0QbE2zZMcwSO5bAi5MXzLqXZI+O4Tkogp24CJJ8iYGd7ix1yCcUx XOl5n4BHPa2hCwcUPUf/A2kaDAtE52Mlp3+yybh2hO0j9n0Hq0V+09+zv+mKts2o omcrUtW3ZfA5TGOgkXmTUg9U3YO7n9GPp1Nzw8v/MOx8BLjYRB+TX3EJIrduPuoc A06dGiBh+4E37F78CkWr1+cXVdCg6mCbpvbjjFspwgZgFJ0tl0ypkxWdYcQBX0jW WL1WMRJOEcgh4LMRkWXbtKaIOM5V -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDnzCCAoegAwIBAgIBJjANBgkqhkiG9w0BAQUFADBxMQswCQYDVQQGEwJERTEc MBoGA1UEChMTRGV1dHNjaGUgVGVsZWtvbSBBRzEfMB0GA1UECxMWVC1UZWxlU2Vj IFRydXN0IENlbnRlcjEjMCEGA1UEAxMaRGV1dHNjaGUgVGVsZWtvbSBSb290IENB IDIwHhcNOTkwNzA5MTIxMTAwWhcNMTkwNzA5MjM1OTAwWjBxMQswCQYDVQQGEwJE RTEcMBoGA1UEChMTRGV1dHNjaGUgVGVsZWtvbSBBRzEfMB0GA1UECxMWVC1UZWxl U2VjIFRydXN0IENlbnRlcjEjMCEGA1UEAxMaRGV1dHNjaGUgVGVsZWtvbSBSb290 IENBIDIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCrC6M14IspFLEU ha88EOQ5bzVdSq7d6mGNlUn0b2SjGmBmpKlAIoTZ1KXleJMOaAGtuU1cOs7TuKhC QN/Po7qCWWqSG6wcmtoIKyUn+WkjR/Hg6yx6m/UTAtB+NHzCnjwAWav12gz1Mjwr rFDa1sPeg5TKqAyZMg4ISFZbavva4VhYAUlfckE8FQYBjl2tqriTtM2e66foai1S NNs671x1Udrb8zH57nGYMsRUFUQM+ZtV7a3fGAigo4aKSe5TBY8ZTNXeWHmb0moc QqvF1afPaA+W5OFhmHZhyJF81j4A4pFQh+GdCuatl9Idxjp9y7zaAzTVjlsB9WoH txa2bkp/AgMBAAGjQjBAMB0GA1UdDgQWBBQxw3kbuvVT1xfgiXotF2wKsyudMzAP BgNVHRMECDAGAQH/AgEFMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQUFAAOC AQEAlGRZrTlk5ynrE/5aw4sTV8gEJPB0d8Bg42f76Ymmg7+Wgnxu1MM9756Abrsp tJh6sTtU6zkXR34ajgv8HzFZMQSyzhfzLMdiNlXiItiJVbSYSKpk+tYcNthEeFpa IzpXl/V6ME+un2pMSyuOoAPjPuCp1NJ70rOo4nI8rZ7/gFnkm0W09juwzTkZmDLl 6iFhkOQxIY40sfcvNUqFENrnijchvllj4PKFiDFT1FQUhXB59C4Gdyd1Lx+4ivn+ xbrYNuSD7Odlt79jWvNGr4GUN9RBjNYj1h7P9WgbRGOiWrqnNVmh5XAFmw4jV5mU Cm26OWMohpLzGITY+9HPBVZkVw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDtzCCAp+gAwIBAgIQDOfg5RfYRv6P5WD8G/AwOTANBgkqhkiG9w0BAQUFADBl MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv b3QgQ0EwHhcNMDYxMTEwMDAwMDAwWhcNMzExMTEwMDAwMDAwWjBlMQswCQYDVQQG EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl cnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgQ0EwggEi MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtDhXO5EOAXLGH87dg+XESpa7c JpSIqvTO9SA5KFhgDPiA2qkVlTJhPLWxKISKityfCgyDF3qPkKyK53lTXDGEKvYP mDI2dsze3Tyoou9q+yHyUmHfnyDXH+Kx2f4YZNISW1/5WBg1vEfNoTb5a3/UsDg+ wRvDjDPZ2C8Y/igPs6eD1sNuRMBhNZYW/lmci3Zt1/GiSw0r/wty2p5g0I6QNcZ4 VYcgoc/lbQrISXwxmDNsIumH0DJaoroTghHtORedmTpyoeb6pNnVFzF1roV9Iq4/ AUaG9ih5yLHa5FcXxH4cDrC0kqZWs72yl+2qp/C3xag/lRbQ/6GW6whfGHdPAgMB AAGjYzBhMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQW BBRF66Kv9JLLgjEtUYunpyGd823IDzAfBgNVHSMEGDAWgBRF66Kv9JLLgjEtUYun pyGd823IDzANBgkqhkiG9w0BAQUFAAOCAQEAog683+Lt8ONyc3pklL/3cmbYMuRC dWKuh+vy1dneVrOfzM4UKLkNl2BcEkxY5NM9g0lFWJc1aRqoR+pWxnmrEthngYTf fwk8lOa4JiwgvT2zKIn3X/8i4peEH+ll74fg38FnSbNd67IJKusm7Xi+fT8r87cm NW1fiQG2SVufAQWbqz0lwcy2f8Lxb4bG+mRo64EtlOtCt/qMHt1i8b5QZ7dsvfPx H2sMNgcWfzd8qVttevESRmCD1ycEvkvOl77DZypoEd+A5wwzZr8TDRRu838fYxAe +o0bJW1sj6W3YQGx0qMmoRBxna3iw/nDmVG3KwcIzi7mULKn+gpFL6Lw8g== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDrzCCApegAwIBAgIQCDvgVpBCRrGhdWrJWZHHSjANBgkqhkiG9w0BAQUFADBh MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD QTAeFw0wNjExMTAwMDAwMDBaFw0zMTExMTAwMDAwMDBaMGExCzAJBgNVBAYTAlVT MRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j b20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IENBMIIBIjANBgkqhkiG 9w0BAQEFAAOCAQ8AMIIBCgKCAQEA4jvhEXLeqKTTo1eqUKKPC3eQyaKl7hLOllsB CSDMAZOnTjC3U/dDxGkAV53ijSLdhwZAAIEJzs4bg7/fzTtxRuLWZscFs3YnFo97 nh6Vfe63SKMI2tavegw5BmV/Sl0fvBf4q77uKNd0f3p4mVmFaG5cIzJLv07A6Fpt 43C/dxC//AH2hdmoRBBYMql1GNXRor5H4idq9Joz+EkIYIvUX7Q6hL+hqkpMfT7P T19sdl6gSzeRntwi5m3OFBqOasv+zbMUZBfHWymeMr/y7vrTC0LUq7dBMtoM1O/4 gdW7jVg/tRvoSSiicNoxBN33shbyTApOB6jtSj1etX+jkMOvJwIDAQABo2MwYTAO BgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUA95QNVbR TLtm8KPiGxvDl7I90VUwHwYDVR0jBBgwFoAUA95QNVbRTLtm8KPiGxvDl7I90VUw DQYJKoZIhvcNAQEFBQADggEBAMucN6pIExIK+t1EnE9SsPTfrgT1eXkIoyQY/Esr hMAtudXH/vTBH1jLuG2cenTnmCmrEbXjcKChzUyImZOMkXDiqw8cvpOp/2PV5Adg 06O/nVsJ8dWO41P0jmP6P6fbtGbfYmbW0W5BjfIttep3Sp+dWOIrWcBAI+0tKIJF PnlUkiaY4IBIqDfv8NZ5YBberOgOzW6sRBc4L0na4UU+Krk2U886UAb3LujEV0ls YSEY1QSteDwsOoBrp+uvFRTp2InBuThs4pFsiv9kuXclVzDAGySj4dzp30d8tbQk CAUw7C29C79Fv1C5qfPrmAESrciIxpg0X40KPMbp1ZWVbd4= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDxTCCAq2gAwIBAgIQAqxcJmoLQJuPC3nyrkYldzANBgkqhkiG9w0BAQUFADBs MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 d3cuZGlnaWNlcnQuY29tMSswKQYDVQQDEyJEaWdpQ2VydCBIaWdoIEFzc3VyYW5j ZSBFViBSb290IENBMB4XDTA2MTExMDAwMDAwMFoXDTMxMTExMDAwMDAwMFowbDEL MAkGA1UEBhMCVVMxFTATBgNVBAoTDERpZ2lDZXJ0IEluYzEZMBcGA1UECxMQd3d3 LmRpZ2ljZXJ0LmNvbTErMCkGA1UEAxMiRGlnaUNlcnQgSGlnaCBBc3N1cmFuY2Ug RVYgUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMbM5XPm +9S75S0tMqbf5YE/yc0lSbZxKsPVlDRnogocsF9ppkCxxLeyj9CYpKlBWTrT3JTW PNt0OKRKzE0lgvdKpVMSOO7zSW1xkX5jtqumX8OkhPhPYlG++MXs2ziS4wblCJEM xChBVfvLWokVfnHoNb9Ncgk9vjo4UFt3MRuNs8ckRZqnrG0AFFoEt7oT61EKmEFB Ik5lYYeBQVCmeVyJ3hlKV9Uu5l0cUyx+mM0aBhakaHPQNAQTXKFx01p8VdteZOE3 hzBWBOURtCmAEvF5OYiiAhF8J2a3iLd48soKqDirCmTCv2ZdlYTBoSUeh10aUAsg EsxBu24LUTi4S8sCAwEAAaNjMGEwDgYDVR0PAQH/BAQDAgGGMA8GA1UdEwEB/wQF MAMBAf8wHQYDVR0OBBYEFLE+w2kD+L9HAdSYJhoIAu9jZCvDMB8GA1UdIwQYMBaA FLE+w2kD+L9HAdSYJhoIAu9jZCvDMA0GCSqGSIb3DQEBBQUAA4IBAQAcGgaX3Nec nzyIZgYIVyHbIUf4KmeqvxgydkAQV8GK83rZEWWONfqe/EW1ntlMMUu4kehDLI6z eM7b41N5cdblIZQB2lWHmiRk9opmzN6cN82oNLFpmyPInngiK3BD41VHMWEZ71jF hS9OMPagMRYjyOfiZRYzy78aG6A9+MpeizGLYAiJLQwGXFK3xPkKmNEVX58Svnw2 Yzi9RKR/5CYrCsSXaQ3pjOLAEFe4yHYSkVXySGnYvCoCWw9E1CAx2/S6cCZdkGCe vEsXCS+0yx5DaMkHJ8HSXPfqIbloEpw8nL+e/IBcm2PN7EeqJSdnoDfzAIJ9VNep +OkuE6N36B9K -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDKTCCApKgAwIBAgIENnAVljANBgkqhkiG9w0BAQUFADBGMQswCQYDVQQGEwJV UzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMREwDwYDVQQL EwhEU1RDQSBFMTAeFw05ODEyMTAxODEwMjNaFw0xODEyMTAxODQwMjNaMEYxCzAJ BgNVBAYTAlVTMSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4x ETAPBgNVBAsTCERTVENBIEUxMIGdMA0GCSqGSIb3DQEBAQUAA4GLADCBhwKBgQCg bIGpzzQeJN3+hijM3oMv+V7UQtLodGBmE5gGHKlREmlvMVW5SXIACH7TpWJENySZ j9mDSI+ZbZUTu0M7LklOiDfBu1h//uG9+LthzfNHwJmm8fOR6Hh8AMthyUQncWlV Sn5JTe2io74CTADKAqjuAQIxZA9SLRN0dja1erQtcQIBA6OCASQwggEgMBEGCWCG SAGG+EIBAQQEAwIABzBoBgNVHR8EYTBfMF2gW6BZpFcwVTELMAkGA1UEBhMCVVMx JDAiBgNVBAoTG0RpZ2l0YWwgU2lnbmF0dXJlIFRydXN0IENvLjERMA8GA1UECxMI RFNUQ0EgRTExDTALBgNVBAMTBENSTDEwKwYDVR0QBCQwIoAPMTk5ODEyMTAxODEw MjNagQ8yMDE4MTIxMDE4MTAyM1owCwYDVR0PBAQDAgEGMB8GA1UdIwQYMBaAFGp5 fpFpRhgTCgJ3pVlbYJglDqL4MB0GA1UdDgQWBBRqeX6RaUYYEwoCd6VZW2CYJQ6i +DAMBgNVHRMEBTADAQH/MBkGCSqGSIb2fQdBAAQMMAobBFY0LjADAgSQMA0GCSqG SIb3DQEBBQUAA4GBACIS2Hod3IEGtgllsofIH160L+nEHvI8wbsEkBFKg05+k7lN QseSJqBcNJo4cvj9axY+IO6CizEqkzaFI4iKPANo08kJD038bKTaKHKTDomAsH3+ gG9lbRgzl4vCa4nuYD3Im+9/KzJic5PLPON74nZ4RbyhkwS7hp86W0N6w4pl -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDKTCCApKgAwIBAgIENm7TzjANBgkqhkiG9w0BAQUFADBGMQswCQYDVQQGEwJV UzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMREwDwYDVQQL EwhEU1RDQSBFMjAeFw05ODEyMDkxOTE3MjZaFw0xODEyMDkxOTQ3MjZaMEYxCzAJ BgNVBAYTAlVTMSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4x ETAPBgNVBAsTCERTVENBIEUyMIGdMA0GCSqGSIb3DQEBAQUAA4GLADCBhwKBgQC/ k48Xku8zExjrEH9OFr//Bo8qhbxe+SSmJIi2A7fBw18DW9Fvrn5C6mYjuGODVvso LeE4i7TuqAHhzhy2iCoiRoX7n6dwqUcUP87eZfCocfdPJmyMvMa1795JJ/9IKn3o TQPMx7JSxhcxEzu1TdvIxPbDDyQq2gyd55FbgM2UnQIBA6OCASQwggEgMBEGCWCG SAGG+EIBAQQEAwIABzBoBgNVHR8EYTBfMF2gW6BZpFcwVTELMAkGA1UEBhMCVVMx JDAiBgNVBAoTG0RpZ2l0YWwgU2lnbmF0dXJlIFRydXN0IENvLjERMA8GA1UECxMI RFNUQ0EgRTIxDTALBgNVBAMTBENSTDEwKwYDVR0QBCQwIoAPMTk5ODEyMDkxOTE3 MjZagQ8yMDE4MTIwOTE5MTcyNlowCwYDVR0PBAQDAgEGMB8GA1UdIwQYMBaAFB6C TShlgDzJQW6sNS5ay97u+DlbMB0GA1UdDgQWBBQegk0oZYA8yUFurDUuWsve7vg5 WzAMBgNVHRMEBTADAQH/MBkGCSqGSIb2fQdBAAQMMAobBFY0LjADAgSQMA0GCSqG SIb3DQEBBQUAA4GBAEeNg61i8tuwnkUiBbmi1gMOOHLnnvx75pO2mqWilMg0HZHR xdf0CiUPPXiBng+xZ8SQTGPdXqfiup/1902lMXucKS1M/mQ+7LZT/uqb7YLbdHVL B3luHtgZg3Pe9T7Qtd7nS2h9Qy4qIOF+oHhEngj1mPnHfxsb1gYgAlihw6ID -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIECTCCAvGgAwIBAgIQDV6ZCtadt3js2AdWO4YV2TANBgkqhkiG9w0BAQUFADBb MQswCQYDVQQGEwJVUzEgMB4GA1UEChMXRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3Qx ETAPBgNVBAsTCERTVCBBQ0VTMRcwFQYDVQQDEw5EU1QgQUNFUyBDQSBYNjAeFw0w MzExMjAyMTE5NThaFw0xNzExMjAyMTE5NThaMFsxCzAJBgNVBAYTAlVTMSAwHgYD VQQKExdEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdDERMA8GA1UECxMIRFNUIEFDRVMx FzAVBgNVBAMTDkRTVCBBQ0VTIENBIFg2MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A MIIBCgKCAQEAuT31LMmU3HWKlV1j6IR3dma5WZFcRt2SPp/5DgO0PWGSvSMmtWPu ktKe1jzIDZBfZIGxqAgNTNj50wUoUrQBJcWVHAx+PhCEdc/BGZFjz+iokYi5Q1K7 gLFViYsx+tC3dr5BPTCapCIlF3PoHuLTrCq9Wzgh1SpL11V94zpVvddtawJXa+ZH fAjIgrrep4c9oW24MFbCswKBXy314powGCi4ZtPLAZZv6opFVdbgnf9nKxcCpk4a ahELfrd755jWjHZvwTvbUJN+5dCOHze4vbrGn2zpfDPyMjwmR/onJALJfh1biEIT ajV8fTXpLmaRcpPVMibEdPVTo7NdmvYJywIDAQABo4HIMIHFMA8GA1UdEwEB/wQF MAMBAf8wDgYDVR0PAQH/BAQDAgHGMB8GA1UdEQQYMBaBFHBraS1vcHNAdHJ1c3Rk c3QuY29tMGIGA1UdIARbMFkwVwYKYIZIAWUDAgEBATBJMEcGCCsGAQUFBwIBFjto dHRwOi8vd3d3LnRydXN0ZHN0LmNvbS9jZXJ0aWZpY2F0ZXMvcG9saWN5L0FDRVMt aW5kZXguaHRtbDAdBgNVHQ4EFgQUCXIGThhDD+XWzMNqizF7eI+og7gwDQYJKoZI hvcNAQEFBQADggEBAKPYjtay284F5zLNAdMEA+V25FYrnJmQ6AgwbN99Pe7lv7Uk QIRJ4dEorsTCOlMwiPH1d25Ryvr/ma8kXxug/fKshMrfqfBfBC6tFr8hlxCBPeP/ h40y3JTlR4peahPJlJU90u7INJXQgNStMgiAVDzgvVJT11J8smk/f3rPanTK+gQq nExaBqXpIK1FZg9p8d2/6eMyi/rgwYZNcjwu2JN4Cir42NInPRmJX1p7ijvMDNpR rscL9yuwNwXsvFcj4jjSm2jzVhKIT0J8uDHEtdvkyCE06UgRNe76x5JXxZ805Mf2 9w4LTJxoeHtxMcfrHuBnQfO3oKfN5XozNmr6mis= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDSjCCAjKgAwIBAgIQRK+wgNajJ7qJMDmGLvhAazANBgkqhkiG9w0BAQUFADA/ MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT DkRTVCBSb290IENBIFgzMB4XDTAwMDkzMDIxMTIxOVoXDTIxMDkzMDE0MDExNVow PzEkMCIGA1UEChMbRGlnaXRhbCBTaWduYXR1cmUgVHJ1c3QgQ28uMRcwFQYDVQQD Ew5EU1QgUm9vdCBDQSBYMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB AN+v6ZdQCINXtMxiZfaQguzH0yxrMMpb7NnDfcdAwRgUi+DoM3ZJKuM/IUmTrE4O rz5Iy2Xu/NMhD2XSKtkyj4zl93ewEnu1lcCJo6m67XMuegwGMoOifooUMM0RoOEq OLl5CjH9UL2AZd+3UWODyOKIYepLYYHsUmu5ouJLGiifSKOeDNoJjj4XLh7dIN9b xiqKqy69cK3FCxolkHRyxXtqqzTWMIn/5WgTe1QLyNau7Fqckh49ZLOMxt+/yUFw 7BZy1SbsOFU5Q9D8/RhcQPGX69Wam40dutolucbY38EVAjqr2m7xPi71XAicPNaD aeQQmxkqtilX4+U9m5/wAl0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNV HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFMSnsaR7LHH62+FLkHX/xBVghYkQMA0GCSqG SIb3DQEBBQUAA4IBAQCjGiybFwBcqR7uKGY3Or+Dxz9LwwmglSBd49lZRNI+DT69 ikugdB/OEIKcdBodfpga3csTS7MgROSR6cz8faXbauX+5v3gTt23ADq1cEmv8uXr AvHRAosZy5Q6XkjEGB5YGV8eAlrwDPGxrancWYaLbumR9YbK+rlmM6pZW87ipxZz R8srzJmwN0jP41ZL9c8PDHIyh8bwRLtTcm1D9SZImlJnt1ir/md2cXjbDaJWFBM5 JDGFoqgCWjBH4d1QB7wCCZAA62RjYJsWvIjJEubSfZGL+T0yjWW06XyxV3bqxbYo Ob8VZRzI9neWagqNdwvYkQsEjgfbKbYK7p2CNTUQ -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEQzCCAyugAwIBAgIDCYP0MA0GCSqGSIb3DQEBCwUAMFAxCzAJBgNVBAYTAkRF MRUwEwYDVQQKDAxELVRydXN0IEdtYkgxKjAoBgNVBAMMIUQtVFJVU1QgUm9vdCBD bGFzcyAzIENBIDIgRVYgMjAwOTAeFw0wOTExMDUwODUwNDZaFw0yOTExMDUwODUw NDZaMFAxCzAJBgNVBAYTAkRFMRUwEwYDVQQKDAxELVRydXN0IEdtYkgxKjAoBgNV BAMMIUQtVFJVU1QgUm9vdCBDbGFzcyAzIENBIDIgRVYgMjAwOTCCASIwDQYJKoZI hvcNAQEBBQADggEPADCCAQoCggEBAJnxhDRwui+3MKCOvXwEz75ivJn9gpfSegpn ljgJ9hBOlSJzmY3aFS3nBfwZcyK3jpgAvDw9rKFs+9Z5JUut8Mxk2og+KbgPCdM0 3TP1YtHhzRnp7hhPTFiu4h7WDFsVWtg6uMQYZB7jM7K1iXdODL/ZlGsTl28So/6Z qQTMFexgaDbtCHu39b+T7WYxg4zGcTSHThfqr4uRjRxWQa4iN1438h3Z0S0NL2lR p75mpoo6Kr3HGrHhFPC+Oh25z1uxav60sUYgovseO3Dvk5h9jHOW8sXvhXCtKSb8 HgQ+HKDYD8tSg2J87otTlZCpV6LqYQXY+U3EJ/pure3511H3a6UCAwEAAaOCASQw ggEgMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFNOUikxiEyoZLsyvcop9Ntea HNxnMA4GA1UdDwEB/wQEAwIBBjCB3QYDVR0fBIHVMIHSMIGHoIGEoIGBhn9sZGFw Oi8vZGlyZWN0b3J5LmQtdHJ1c3QubmV0L0NOPUQtVFJVU1QlMjBSb290JTIwQ2xh c3MlMjAzJTIwQ0ElMjAyJTIwRVYlMjAyMDA5LE89RC1UcnVzdCUyMEdtYkgsQz1E RT9jZXJ0aWZpY2F0ZXJldm9jYXRpb25saXN0MEagRKBChkBodHRwOi8vd3d3LmQt dHJ1c3QubmV0L2NybC9kLXRydXN0X3Jvb3RfY2xhc3NfM19jYV8yX2V2XzIwMDku Y3JsMA0GCSqGSIb3DQEBCwUAA4IBAQA07XtaPKSUiO8aEXUHL7P+PPoeUSbrh/Yp 3uDx1MYkCenBz1UbtDDZzhr+BlGmFaQt77JLvyAoJUnRpjZ3NOhk31KxEcdzes05 nsKtjHEh8lprr988TlWvsoRlFIm5d8sqMb7Po23Pb0iUMkZv53GMoKaEGTcH8gNF CSuGdXzfX2lXANtu2KZyIktQ1HWYVt+3GP9DQ1CuekR78HlR10M9p9OB0/DJT7na xpeG0ILD5EJt/rDiZE4OJudANCa1CInXCGNjOCd1HjPqbqjdn5lPdE2BiYBL3ZqX KVwvvoFBuYz/6n1gBp7N1z3TLqMVvKjmJuVvw9y4AyHqnxbxLFS1 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEMzCCAxugAwIBAgIDCYPzMA0GCSqGSIb3DQEBCwUAME0xCzAJBgNVBAYTAkRF MRUwEwYDVQQKDAxELVRydXN0IEdtYkgxJzAlBgNVBAMMHkQtVFJVU1QgUm9vdCBD bGFzcyAzIENBIDIgMjAwOTAeFw0wOTExMDUwODM1NThaFw0yOTExMDUwODM1NTha ME0xCzAJBgNVBAYTAkRFMRUwEwYDVQQKDAxELVRydXN0IEdtYkgxJzAlBgNVBAMM HkQtVFJVU1QgUm9vdCBDbGFzcyAzIENBIDIgMjAwOTCCASIwDQYJKoZIhvcNAQEB BQADggEPADCCAQoCggEBANOySs96R+91myP6Oi/WUEWJNTrGa9v+2wBoqOADER03 UAifTUpolDWzU9GUY6cgVq/eUXjsKj3zSEhQPgrfRlWLJ23DEE0NkVJD2IfgXU42 tSHKXzlABF9bfsyjxiupQB7ZNoTWSPOSHjRGICTBpFGOShrvUD9pXRl/RcPHAY9R ySPocq60vFYJfxLLHLGvKZAKyVXMD9O0Gu1HNVpK7ZxzBCHQqr0ME7UAyiZsxGsM lFqVlNpQmvH/pStmMaTJOKDfHR+4CS7zp+hnUquVH+BGPtikw8paxTGA6Eian5Rp /hnd2HN8gcqW3o7tszIFZYQ05ub9VxC1X3a/L7AQDcUCAwEAAaOCARowggEWMA8G A1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFP3aFMSfMN4hvR5COfyrYyNJ4PGEMA4G A1UdDwEB/wQEAwIBBjCB0wYDVR0fBIHLMIHIMIGAoH6gfIZ6bGRhcDovL2RpcmVj dG9yeS5kLXRydXN0Lm5ldC9DTj1ELVRSVVNUJTIwUm9vdCUyMENsYXNzJTIwMyUy MENBJTIwMiUyMDIwMDksTz1ELVRydXN0JTIwR21iSCxDPURFP2NlcnRpZmljYXRl cmV2b2NhdGlvbmxpc3QwQ6BBoD+GPWh0dHA6Ly93d3cuZC10cnVzdC5uZXQvY3Js L2QtdHJ1c3Rfcm9vdF9jbGFzc18zX2NhXzJfMjAwOS5jcmwwDQYJKoZIhvcNAQEL BQADggEBAH+X2zDI36ScfSF6gHDOFBJpiBSVYEQBrLLpME+bUMJm2H6NMLVwMeni acfzcNsgFYbQDfC+rAF1hM5+n02/t2A7nPPKHeJeaNijnZflQGDSNiH+0LS4F9p0 o3/U37CYAqxva2ssJSRyoWXuJVrl5jLn8t+rSfrzkGkj2wTZ51xY/GXUl77M/C4K zCUqNQT4YJEVdT1B/yMfGchs64JTBKbkTCJNjYy6zltz7GRUUG3RnFX7acM2w4y8 PIWmawomDeCTmGCufsYkl4phX5GOZpIJhzbNi5stPvZR1FDUWSi9g/LMKHtThm3Y Johw1+qRzT65ysCQblrGXnRl11z+o+I= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF5zCCA8+gAwIBAgIITK9zQhyOdAIwDQYJKoZIhvcNAQEFBQAwgYAxODA2BgNV BAMML0VCRyBFbGVrdHJvbmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sx c8SxMTcwNQYDVQQKDC5FQkcgQmlsacWfaW0gVGVrbm9sb2ppbGVyaSB2ZSBIaXpt ZXRsZXJpIEEuxZ4uMQswCQYDVQQGEwJUUjAeFw0wNjA4MTcwMDIxMDlaFw0xNjA4 MTQwMDMxMDlaMIGAMTgwNgYDVQQDDC9FQkcgRWxla3Ryb25payBTZXJ0aWZpa2Eg SGl6bWV0IFNhxJ9sYXnEsWPEsXPEsTE3MDUGA1UECgwuRUJHIEJpbGnFn2ltIFRl a25vbG9qaWxlcmkgdmUgSGl6bWV0bGVyaSBBLsWeLjELMAkGA1UEBhMCVFIwggIi MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDuoIRh0DpqZhAy2DE4f6en5f2h 4fuXd7hxlugTlkaDT7byX3JWbhNgpQGR4lvFzVcfd2NR/y8927k/qqk153nQ9dAk tiHq6yOU/im/+4mRDGSaBUorzAzu8T2bgmmkTPiab+ci2hC6X5L8GCcKqKpE+i4s tPtGmggDg3KriORqcsnlZR9uKg+ds+g75AxuetpX/dfreYteIAbTdgtsApWjluTL dlHRKJ2hGvxEok3MenaoDT2/F08iiFD9rrbskFBKW5+VQarKD7JK/oCZTqNGFav4 c0JqwmZ2sQomFd2TkuzbqV9UIlKRcF0T6kjsbgNs2d1s/OsNA/+mgxKb8amTD8Um TDGyY5lhcucqZJnSuOl14nypqZoaqsNW2xCaPINStnuWt6yHd6i58mcLlEOzrz5z +kI2sSXFCjEmN1ZnuqMLfdb3ic1nobc6HmZP9qBVFCVMLDMNpkGMvQQxahByCp0O Lna9XvNRiYuoP1Vzv9s6xiQFlpJIqkuNKgPlV5EQ9GooFW5Hd4RcUXSfGenmHmMW OeMRFeNYGkS9y8RsZteEBt8w9DeiQyJ50hBs37vmExH8nYQKE3vwO9D8owrXieqW fo1IhR5kX9tUoqzVegJ5a9KK8GfaZXINFHDk6Y54jzJ0fFfy1tb0Nokb+Clsi7n2 l9GkLqq+CxnCRelwXQIDAJ3Zo2MwYTAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB /wQEAwIBBjAdBgNVHQ4EFgQU587GT/wWZ5b6SqMHwQSny2re2kcwHwYDVR0jBBgw FoAU587GT/wWZ5b6SqMHwQSny2re2kcwDQYJKoZIhvcNAQEFBQADggIBAJuYml2+ 8ygjdsZs93/mQJ7ANtyVDR2tFcU22NU57/IeIl6zgrRdu0waypIN30ckHrMk2pGI 6YNw3ZPX6bqz3xZaPt7gyPvT/Wwp+BVGoGgmzJNSroIBk5DKd8pNSe/iWtkqvTDO TLKBtjDOWU/aWR1qeqRFsIImgYZ29fUQALjuswnoT4cCB64kXPBfrAowzIpAoHME wfuJJPaaHFy3PApnNgUIMbOv2AFoKuB4j3TeuFGkjGwgPaL7s9QJ/XvCgKqTbCmY Iai7FvOpEl90tYeY8pUm3zTvilORiF0alKM/fCL414i6poyWqD1SNGKfAB5UVUJn xk1Gj7sURT0KlhaOEKGXmdXTMIXM3rRyt7yKPBgpaP3ccQfuJDlq+u2lrDgv+R4Q DgZxGhBM/nV+/x5XOULK1+EVoVZVWRvRo68R2E7DpSvvkL/A7IITW43WciyTTo9q Kd+FPNMN4KIYEsxVL0e3p5sC/kH2iExt2qkBR4NkJ2IQgtYSe14DHzSpyZH+r11t hie3I6p1GMog57AP14kOpmciY/SDQSsGS7tY1dHXt7kQY9iJSrSq3RZj9W6+YKH4 7ejWkE8axsWgKdOnIaj1Wjz3x0miIZpKlVIglnKaZsv30oZDfCK+lvm9AahH3eU7 QPl1K5srRmSGjR70j/sHd9DqSaIcjVIUpgqT -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFVjCCBD6gAwIBAgIQ7is969Qh3hSoYqwE893EATANBgkqhkiG9w0BAQUFADCB 8zELMAkGA1UEBhMCRVMxOzA5BgNVBAoTMkFnZW5jaWEgQ2F0YWxhbmEgZGUgQ2Vy dGlmaWNhY2lvIChOSUYgUS0wODAxMTc2LUkpMSgwJgYDVQQLEx9TZXJ2ZWlzIFB1 YmxpY3MgZGUgQ2VydGlmaWNhY2lvMTUwMwYDVQQLEyxWZWdldSBodHRwczovL3d3 dy5jYXRjZXJ0Lm5ldC92ZXJhcnJlbCAoYykwMzE1MDMGA1UECxMsSmVyYXJxdWlh IEVudGl0YXRzIGRlIENlcnRpZmljYWNpbyBDYXRhbGFuZXMxDzANBgNVBAMTBkVD LUFDQzAeFw0wMzAxMDcyMzAwMDBaFw0zMTAxMDcyMjU5NTlaMIHzMQswCQYDVQQG EwJFUzE7MDkGA1UEChMyQWdlbmNpYSBDYXRhbGFuYSBkZSBDZXJ0aWZpY2FjaW8g KE5JRiBRLTA4MDExNzYtSSkxKDAmBgNVBAsTH1NlcnZlaXMgUHVibGljcyBkZSBD ZXJ0aWZpY2FjaW8xNTAzBgNVBAsTLFZlZ2V1IGh0dHBzOi8vd3d3LmNhdGNlcnQu bmV0L3ZlcmFycmVsIChjKTAzMTUwMwYDVQQLEyxKZXJhcnF1aWEgRW50aXRhdHMg ZGUgQ2VydGlmaWNhY2lvIENhdGFsYW5lczEPMA0GA1UEAxMGRUMtQUNDMIIBIjAN BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsyLHT+KXQpWIR4NA9h0X84NzJB5R 85iKw5K4/0CQBXCHYMkAqbWUZRkiFRfCQ2xmRJoNBD45b6VLeqpjt4pEndljkYRm 4CgPukLjbo73FCeTae6RDqNfDrHrZqJyTxIThmV6PttPB/SnCWDaOkKZx7J/sxaV HMf5NLWUhdWZXqBIoH7nF2W4onW4HvPlQn2v7fOKSGRdghST2MDk/7NQcvJ29rNd QlB50JQ+awwAvthrDk4q7D7SzIKiGGUzE3eeml0aE9jD2z3Il3rucO2n5nzbcc8t lGLfbdb1OL4/pYUKGbio2Al1QnDE6u/LDsg0qBIimAy4E5S2S+zw0JDnJwIDAQAB o4HjMIHgMB0GA1UdEQQWMBSBEmVjX2FjY0BjYXRjZXJ0Lm5ldDAPBgNVHRMBAf8E BTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUoMOLRKo3pUW/l4Ba0fF4 opvpXY0wfwYDVR0gBHgwdjB0BgsrBgEEAfV4AQMBCjBlMCwGCCsGAQUFBwIBFiBo dHRwczovL3d3dy5jYXRjZXJ0Lm5ldC92ZXJhcnJlbDA1BggrBgEFBQcCAjApGidW ZWdldSBodHRwczovL3d3dy5jYXRjZXJ0Lm5ldC92ZXJhcnJlbCAwDQYJKoZIhvcN AQEFBQADggEBAKBIW4IB9k1IuDlVNZyAelOZ1Vr/sXE7zDkJlF7W2u++AVtd0x7Y /X1PzaBB4DSTv8vihpw3kpBWHNzrKQXlxJ7HNd+KDM3FIUPpqojlNcAZQmNaAl6k SBg6hW/cnbw/nZzBh7h6YQjpdwt/cKt63dmXLGQehb+8dJahw3oS7AwaboMMPOhy Rp/7SNVel+axofjk70YllJyJ22k4vuxcDlbHZVHlUIiIv0LVKz3l+bqeLrPK9HOS Agu+TGbrIP65y7WZf+a2E/rKS03Z7lNGBjvGTq2TWoF+bCpLagVFjPIhpDGQh2xl nJ2lYJU6Un/10asIbvPuW/mIPX64b24D5EI= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEAzCCAuugAwIBAgIQVID5oHPtPwBMyonY43HmSjANBgkqhkiG9w0BAQUFADB1 MQswCQYDVQQGEwJFRTEiMCAGA1UECgwZQVMgU2VydGlmaXRzZWVyaW1pc2tlc2t1 czEoMCYGA1UEAwwfRUUgQ2VydGlmaWNhdGlvbiBDZW50cmUgUm9vdCBDQTEYMBYG CSqGSIb3DQEJARYJcGtpQHNrLmVlMCIYDzIwMTAxMDMwMTAxMDMwWhgPMjAzMDEy MTcyMzU5NTlaMHUxCzAJBgNVBAYTAkVFMSIwIAYDVQQKDBlBUyBTZXJ0aWZpdHNl ZXJpbWlza2Vza3VzMSgwJgYDVQQDDB9FRSBDZXJ0aWZpY2F0aW9uIENlbnRyZSBS b290IENBMRgwFgYJKoZIhvcNAQkBFglwa2lAc2suZWUwggEiMA0GCSqGSIb3DQEB AQUAA4IBDwAwggEKAoIBAQDIIMDs4MVLqwd4lfNE7vsLDP90jmG7sWLqI9iroWUy euuOF0+W2Ap7kaJjbMeMTC55v6kF/GlclY1i+blw7cNRfdCT5mzrMEvhvH2/UpvO bntl8jixwKIy72KyaOBhU8E2lf/slLo2rpwcpzIP5Xy0xm90/XsY6KxX7QYgSzIw WFv9zajmofxwvI6Sc9uXp3whrj3B9UiHbCe9nyV0gVWw93X2PaRka9ZP585ArQ/d MtO8ihJTmMmJ+xAdTX7Nfh9WDSFwhfYggx/2uh8Ej+p3iDXE/+pOoYtNP2MbRMNE 1CV2yreN1x5KZmTNXMWcg+HCCIia7E6j8T4cLNlsHaFLAgMBAAGjgYowgYcwDwYD VR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBLyWj7qVhy/ zQas8fElyalL1BSZMEUGA1UdJQQ+MDwGCCsGAQUFBwMCBggrBgEFBQcDAQYIKwYB BQUHAwMGCCsGAQUFBwMEBggrBgEFBQcDCAYIKwYBBQUHAwkwDQYJKoZIhvcNAQEF BQADggEBAHv25MANqhlHt01Xo/6tu7Fq1Q+e2+RjxY6hUFaTlrg4wCQiZrxTFGGV v9DHKpY5P30osxBAIWrEr7BSdxjhlthWXePdNl4dp1BUoMUq5KqMlIpPnTX/dqQG E5Gion0ARD9V04I8GtVbvFZMIi5GQ4okQC3zErg7cBqklrkar4dBGmoYDQZPxz5u uSlNDUmJEYcyW+ZLBMjkXOZ0c5RdFpgTlf7727FE5TpwrDdr5rMzcijJs1eg9gIW iAYLtqZLICjU3j2LrTcFU3T+bsy8QxdxXvnFzBqpYe73dgzzcvRyrc9yAjYHR8/v GVCJYMzpJJUPwssd8m92kMfMdcGWxZ0= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDtjCCAp6gAwIBAgIQRJmNPMADJ72cdpW56tustTANBgkqhkiG9w0BAQUFADB1 MQswCQYDVQQGEwJUUjEoMCYGA1UEChMfRWxla3Ryb25payBCaWxnaSBHdXZlbmxp Z2kgQS5TLjE8MDoGA1UEAxMzZS1HdXZlbiBLb2sgRWxla3Ryb25payBTZXJ0aWZp a2EgSGl6bWV0IFNhZ2xheWljaXNpMB4XDTA3MDEwNDExMzI0OFoXDTE3MDEwNDEx MzI0OFowdTELMAkGA1UEBhMCVFIxKDAmBgNVBAoTH0VsZWt0cm9uaWsgQmlsZ2kg R3V2ZW5saWdpIEEuUy4xPDA6BgNVBAMTM2UtR3V2ZW4gS29rIEVsZWt0cm9uaWsg U2VydGlmaWthIEhpem1ldCBTYWdsYXlpY2lzaTCCASIwDQYJKoZIhvcNAQEBBQAD ggEPADCCAQoCggEBAMMSIJ6wXgBljU5Gu4Bc6SwGl9XzcslwuedLZYDBS75+PNdU MZTe1RK6UxYC6lhj71vY8+0qGqpxSKPcEC1fX+tcS5yWCEIlKBHMilpiAVDV6wlT L/jDj/6z/P2douNffb7tC+Bg62nsM+3YjfsSSYMAyYuXjDtzKjKzEve5TfL0TW3H 5tYmNwjy2f1rXKPlSFxYvEK+A1qBuhw1DADT9SN+cTAIJjjcJRFHLfO6IxClv7wC 90Nex/6wN1CZew+TzuZDLMN+DfIcQ2Zgy2ExR4ejT669VmxMvLz4Bcpk9Ok0oSy1 c+HCPujIyTQlCFzz7abHlJ+tiEMl1+E5YP6sOVkCAwEAAaNCMEAwDgYDVR0PAQH/ BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFJ/uRLOU1fqRTy7ZVZoE VtstxNulMA0GCSqGSIb3DQEBBQUAA4IBAQB/X7lTW2M9dTLn+sR0GstG30ZpHFLP qk/CaOv/gKlR6D1id4k9CnU58W5dF4dvaAXBlGzZXd/aslnLpRCKysw5zZ/rTt5S /wzw9JKp8mxTq5vSR6AfdPebmvEvFZ96ZDAYBzwqD2fK/A+JYZ1lpTzlvBNbCNvj /+27BrtqBrF6T2XGgv0enIu1De5Iu7i9qgi0+6N8y5/NkHZchpZ4Vwpm+Vganf2X KWDeEaaQHBkc7gGWIjQ0LpH5t8Qn0Xvmv/uARFoW5evg1Ao4vOSR49XrXMGs3xtq fJ7lddK2l4fbzIcrQzqECK+rPNv3PGYxhrCdU3nt+CPeQuMtgvEP5fqX -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEKjCCAxKgAwIBAgIEOGPe+DANBgkqhkiG9w0BAQUFADCBtDEUMBIGA1UEChML RW50cnVzdC5uZXQxQDA+BgNVBAsUN3d3dy5lbnRydXN0Lm5ldC9DUFNfMjA0OCBp bmNvcnAuIGJ5IHJlZi4gKGxpbWl0cyBsaWFiLikxJTAjBgNVBAsTHChjKSAxOTk5 IEVudHJ1c3QubmV0IExpbWl0ZWQxMzAxBgNVBAMTKkVudHJ1c3QubmV0IENlcnRp ZmljYXRpb24gQXV0aG9yaXR5ICgyMDQ4KTAeFw05OTEyMjQxNzUwNTFaFw0yOTA3 MjQxNDE1MTJaMIG0MRQwEgYDVQQKEwtFbnRydXN0Lm5ldDFAMD4GA1UECxQ3d3d3 LmVudHJ1c3QubmV0L0NQU18yMDQ4IGluY29ycC4gYnkgcmVmLiAobGltaXRzIGxp YWIuKTElMCMGA1UECxMcKGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRlZDEzMDEG A1UEAxMqRW50cnVzdC5uZXQgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgKDIwNDgp MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArU1LqRKGsuqjIAcVFmQq K0vRvwtKTY7tgHalZ7d4QMBzQshowNtTK91euHaYNZOLGp18EzoOH1u3Hs/lJBQe sYGpjX24zGtLA/ECDNyrpUAkAH90lKGdCCmziAv1h3edVc3kw37XamSrhRSGlVuX MlBvPci6Zgzj/L24ScF2iUkZ/cCovYmjZy/Gn7xxGWC4LeksyZB2ZnuU4q941mVT XTzWnLLPKQP5L6RQstRIzgUyVYr9smRMDuSYB3Xbf9+5CFVghTAp+XtIpGmG4zU/ HoZdenoVve8AjhUiVBcAkCaTvA5JaJG/+EfTnZVCwQ5N328mz8MYIWJmQ3DW1cAH 4QIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNV HQ4EFgQUVeSB0RGAvtiJuQijMfmhJAkWuXAwDQYJKoZIhvcNAQEFBQADggEBADub j1abMOdTmXx6eadNl9cZlZD7Bh/KM3xGY4+WZiT6QBshJ8rmcnPyT/4xmf3IDExo U8aAghOY+rat2l098c5u9hURlIIM7j+VrxGrD9cv3h8Dj1csHsm7mhpElesYT6Yf zX1XEC+bBAlahLVu2B064dae0Wx5XnkcFMXj0EyTO2U87d89vqbllRrDtRnDvV5b u/8j72gZyxKTJ1wDLW8w0B62GqzeWvfRqqgnpv55gcR5mTNXuhKwqeBCbJPKVt7+ bYQLCIt+jerXmCHG8+c8eS9enNFMFY3h7CI3zJpDC5fcgJCNs2ebb0gIFVbPv/Er fF6adulZkMV8gzURZVE= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIE2DCCBEGgAwIBAgIEN0rSQzANBgkqhkiG9w0BAQUFADCBwzELMAkGA1UEBhMC VVMxFDASBgNVBAoTC0VudHJ1c3QubmV0MTswOQYDVQQLEzJ3d3cuZW50cnVzdC5u ZXQvQ1BTIGluY29ycC4gYnkgcmVmLiAobGltaXRzIGxpYWIuKTElMCMGA1UECxMc KGMpIDE5OTkgRW50cnVzdC5uZXQgTGltaXRlZDE6MDgGA1UEAxMxRW50cnVzdC5u ZXQgU2VjdXJlIFNlcnZlciBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw05OTA1 MjUxNjA5NDBaFw0xOTA1MjUxNjM5NDBaMIHDMQswCQYDVQQGEwJVUzEUMBIGA1UE ChMLRW50cnVzdC5uZXQxOzA5BgNVBAsTMnd3dy5lbnRydXN0Lm5ldC9DUFMgaW5j b3JwLiBieSByZWYuIChsaW1pdHMgbGlhYi4pMSUwIwYDVQQLExwoYykgMTk5OSBF bnRydXN0Lm5ldCBMaW1pdGVkMTowOAYDVQQDEzFFbnRydXN0Lm5ldCBTZWN1cmUg U2VydmVyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGdMA0GCSqGSIb3DQEBAQUA A4GLADCBhwKBgQDNKIM0VBuJ8w+vN5Ex/68xYMmo6LIQaO2f55M28Qpku0f1BBc/ I0dNxScZgSYMVHINiC3ZH5oSn7yzcdOAGT9HZnuMNSjSuQrfJNqc1lB5gXpa0zf3 wkrYKZImZNHkmGw6AIr1NJtl+O3jEP/9uElY3KDegjlrgbEWGWG5VLbmQwIBA6OC AdcwggHTMBEGCWCGSAGG+EIBAQQEAwIABzCCARkGA1UdHwSCARAwggEMMIHeoIHb oIHYpIHVMIHSMQswCQYDVQQGEwJVUzEUMBIGA1UEChMLRW50cnVzdC5uZXQxOzA5 BgNVBAsTMnd3dy5lbnRydXN0Lm5ldC9DUFMgaW5jb3JwLiBieSByZWYuIChsaW1p dHMgbGlhYi4pMSUwIwYDVQQLExwoYykgMTk5OSBFbnRydXN0Lm5ldCBMaW1pdGVk MTowOAYDVQQDEzFFbnRydXN0Lm5ldCBTZWN1cmUgU2VydmVyIENlcnRpZmljYXRp b24gQXV0aG9yaXR5MQ0wCwYDVQQDEwRDUkwxMCmgJ6AlhiNodHRwOi8vd3d3LmVu dHJ1c3QubmV0L0NSTC9uZXQxLmNybDArBgNVHRAEJDAigA8xOTk5MDUyNTE2MDk0 MFqBDzIwMTkwNTI1MTYwOTQwWjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAU8Bdi E1U9s/8KAGv7UISX8+1i0BowHQYDVR0OBBYEFPAXYhNVPbP/CgBr+1CEl/PtYtAa MAwGA1UdEwQFMAMBAf8wGQYJKoZIhvZ9B0EABAwwChsEVjQuMAMCBJAwDQYJKoZI hvcNAQEFBQADgYEAkNwwAvpkdMKnCqV8IY00F6j7Rw7/JXyNEwr75Ji174z4xRAN 95K+8cPV1ZVqBLssziY2ZcgxxufuP+NXdYR6Ee9GTxj005i7qIcyunL2POI9n9cd 2cNgQ4xYDiKWL2KjLB+6rQXvqzJ4h6BUcxm1XAX5Uj5tLUUL9wqT6u0G+bI= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEkTCCA3mgAwIBAgIERWtQVDANBgkqhkiG9w0BAQUFADCBsDELMAkGA1UEBhMC VVMxFjAUBgNVBAoTDUVudHJ1c3QsIEluYy4xOTA3BgNVBAsTMHd3dy5lbnRydXN0 Lm5ldC9DUFMgaXMgaW5jb3Jwb3JhdGVkIGJ5IHJlZmVyZW5jZTEfMB0GA1UECxMW KGMpIDIwMDYgRW50cnVzdCwgSW5jLjEtMCsGA1UEAxMkRW50cnVzdCBSb290IENl cnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA2MTEyNzIwMjM0MloXDTI2MTEyNzIw NTM0MlowgbAxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1FbnRydXN0LCBJbmMuMTkw NwYDVQQLEzB3d3cuZW50cnVzdC5uZXQvQ1BTIGlzIGluY29ycG9yYXRlZCBieSBy ZWZlcmVuY2UxHzAdBgNVBAsTFihjKSAyMDA2IEVudHJ1c3QsIEluYy4xLTArBgNV BAMTJEVudHJ1c3QgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASIwDQYJ KoZIhvcNAQEBBQADggEPADCCAQoCggEBALaVtkNC+sZtKm9I35RMOVcF7sN5EUFo Nu3s/poBj6E4KPz3EEZmLk0eGrEaTsbRwJWIsMn/MYszA9u3g3s+IIRe7bJWKKf4 4LlAcTfFy0cOlypowCKVYhXbR9n10Cv/gkvJrT7eTNuQgFA/CYqEAOwwCj0Yzfv9 KlmaI5UXLEWeH25DeW0MXJj+SKfFI0dcXv1u5x609mhF0YaDW6KKjbHjKYD+JXGI rb68j6xSlkuqUY3kEzEZ6E5Nn9uss2rVvDlUccp6en+Q3X0dgNmBu1kmwhH+5pPi 94DkZfs0Nw4pgHBNrziGLp5/V6+eF67rHMsoIV+2HNjnogQi+dPa2MsCAwEAAaOB sDCBrTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zArBgNVHRAEJDAi gA8yMDA2MTEyNzIwMjM0MlqBDzIwMjYxMTI3MjA1MzQyWjAfBgNVHSMEGDAWgBRo kORnpKZTgMeGZqTx90tD+4S9bTAdBgNVHQ4EFgQUaJDkZ6SmU4DHhmak8fdLQ/uE vW0wHQYJKoZIhvZ9B0EABBAwDhsIVjcuMTo0LjADAgSQMA0GCSqGSIb3DQEBBQUA A4IBAQCT1DCw1wMgKtD5Y+iRDAUgqV8ZyntyTtSx29CW+1RaGSwMCPeyvIWonX9t O1KzKtvn1ISMY/YPyyYBkVBs9F8U4pN0wBOeMDpQ47RgxRzwIkSNcUesyBrJ6Zua AGAT/3B+XxFNSRuzFVJ7yVTav52Vr2ua2J7p8eRDjeIRRDq/r72DQnNSi6q7pynP 9WQcCk3RvKqsnyrQ/39/2n3qse0wJcGE2jTSW3iDVuycNsMm4hH2Z0kdkquM++v/ eu6FSqdQgPCnXEqULl8FmTxSQeDNtGPPAUO6nIPcj2A781q0tHuu2guQOHXvgR1m 0vdXcDazv/wor3ElhVsT/h5/WrQ8 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFsDCCA5igAwIBAgIQFci9ZUdcr7iXAF7kBtK8nTANBgkqhkiG9w0BAQUFADBe MQswCQYDVQQGEwJUVzEjMCEGA1UECgwaQ2h1bmdod2EgVGVsZWNvbSBDby4sIEx0 ZC4xKjAoBgNVBAsMIWVQS0kgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAe Fw0wNDEyMjAwMjMxMjdaFw0zNDEyMjAwMjMxMjdaMF4xCzAJBgNVBAYTAlRXMSMw IQYDVQQKDBpDaHVuZ2h3YSBUZWxlY29tIENvLiwgTHRkLjEqMCgGA1UECwwhZVBL SSBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIICIjANBgkqhkiG9w0BAQEF AAOCAg8AMIICCgKCAgEA4SUP7o3biDN1Z82tH306Tm2d0y8U82N0ywEhajfqhFAH SyZbCUNsIZ5qyNUD9WBpj8zwIuQf5/dqIjG3LBXy4P4AakP/h2XGtRrBp0xtInAh ijHyl3SJCRImHJ7K2RKilTza6We/CKBk49ZCt0Xvl/T29de1ShUCWH2YWEtgvM3X DZoTM1PRYfl61dd4s5oz9wCGzh1NlDivqOx4UXCKXBCDUSH3ET00hl7lSM2XgYI1 TBnsZfZrxQWh7kcT1rMhJ5QQCtkkO7q+RBNGMD+XPNjX12ruOzjjK9SXDrkb5wdJ fzcq+Xd4z1TtW0ado4AOkUPB1ltfFLqfpo0kR0BZv3I4sjZsN/+Z0V0OWQqraffA sgRFelQArr5T9rXn4fg8ozHSqf4hUmTFpmfwdQcGlBSBVcYn5AGPF8Fqcde+S/uU WH1+ETOxQvdibBjWzwloPn9s9h6PYq2lY9sJpx8iQkEeb5mKPtf5P0B6ebClAZLS nT0IFaUQAS2zMnaolQ2zepr7BxB4EW/hj8e6DyUadCrlHJhBmd8hh+iVBmoKs2pH dmX2Os+PYhcZewoozRrSgx4hxyy/vv9haLdnG7t4TY3OZ+XkwY63I2binZB1NJip NiuKmpS5nezMirH4JYlcWrYvjB9teSSnUmjDhDXiZo1jDiVN1Rmy5nk3pyKdVDEC AwEAAaNqMGgwHQYDVR0OBBYEFB4M97Zn8uGSJglFwFU5Lnc/QkqiMAwGA1UdEwQF MAMBAf8wOQYEZyoHAAQxMC8wLQIBADAJBgUrDgMCGgUAMAcGBWcqAwAABBRFsMLH ClZ87lt4DJX5GFPBphzYEDANBgkqhkiG9w0BAQUFAAOCAgEACbODU1kBPpVJufGB uvl2ICO1J2B01GqZNF5sAFPZn/KmsSQHRGoqxqWOeBLoR9lYGxMqXnmbnwoqZ6Yl PwZpVnPDimZI+ymBV3QGypzqKOg4ZyYr8dW1P2WT+DZdjo2NQCCHGervJ8A9tDkP JXtoUHRVnAxZfVo9QZQlUgjgRywVMRnVvwdVxrsStZf0X4OFunHB2WyBEXYKCrC/ gpf36j36+uwtqSiUO1bd0lEursC9CBWMd1I0ltabrNMdjmEPNXubrjlpC2JgQCA2 j6/7Nu4tCEoduL+bXPjqpRugc6bY+G7gMwRfaKonh+3ZwZCc7b3jajWvY9+rGNm6 5ulK6lCKD2GTHuItGeIwlDWSXQ62B68ZgI9HkFFLLk3dheLSClIKF5r8GrBQAuUB o2M3IUxExJtRmREOc5wGj1QupyheRDmHVi03vYVElOEMSyycw5KFNGHLD7ibSkNS /jQ6fbjpKdx2qcgw+BRxgMYeNkh0IkFch4LoGHGLQYlE535YW6i4jRPpp2zDR+2z Gp1iro2C6pSe3VkQw63d4k3jMdXH7OjysP6SHhYKGvzZ8/gntsm+HbRsZJB/9OTE W9c3rkIO3aQab3yIVMUWbuF6aC74Or8NpDyJO3inTmODBCEIZ43ygknQW/2xzQ+D hNQ+IIX3Sj0rnP0qCglN6oH4EZw= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDIDCCAomgAwIBAgIENd70zzANBgkqhkiG9w0BAQUFADBOMQswCQYDVQQGEwJV UzEQMA4GA1UEChMHRXF1aWZheDEtMCsGA1UECxMkRXF1aWZheCBTZWN1cmUgQ2Vy dGlmaWNhdGUgQXV0aG9yaXR5MB4XDTk4MDgyMjE2NDE1MVoXDTE4MDgyMjE2NDE1 MVowTjELMAkGA1UEBhMCVVMxEDAOBgNVBAoTB0VxdWlmYXgxLTArBgNVBAsTJEVx dWlmYXggU2VjdXJlIENlcnRpZmljYXRlIEF1dGhvcml0eTCBnzANBgkqhkiG9w0B AQEFAAOBjQAwgYkCgYEAwV2xWGcIYu6gmi0fCG2RFGiYCh7+2gRvE4RiIcPRfM6f BeC4AfBONOziipUEZKzxa1NfBbPLZ4C/QgKO/t0BCezhABRP/PvwDN1Dulsr4R+A cJkVV5MW8Q+XarfCaCMczE1ZMKxRHjuvK9buY0V7xdlfUNLjUA86iOe/FP3gx7kC AwEAAaOCAQkwggEFMHAGA1UdHwRpMGcwZaBjoGGkXzBdMQswCQYDVQQGEwJVUzEQ MA4GA1UEChMHRXF1aWZheDEtMCsGA1UECxMkRXF1aWZheCBTZWN1cmUgQ2VydGlm aWNhdGUgQXV0aG9yaXR5MQ0wCwYDVQQDEwRDUkwxMBoGA1UdEAQTMBGBDzIwMTgw ODIyMTY0MTUxWjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAUSOZo+SvSspXXR9gj IBBPM5iQn9QwHQYDVR0OBBYEFEjmaPkr0rKV10fYIyAQTzOYkJ/UMAwGA1UdEwQF MAMBAf8wGgYJKoZIhvZ9B0EABA0wCxsFVjMuMGMDAgbAMA0GCSqGSIb3DQEBBQUA A4GBAFjOKer89961zgK5F7WF0bnj4JXMJTENAKaSbn+2kmOeUJXRmm/kEd5jhW6Y 7qj/WsjTVbJmcVfewCHrPSqnI0kBBIZCe/zuf6IWUrVnZ9NA2zsmWLIodz2uFHdh 1voqZiegDfqnc1zqcPGUIWVEX/r87yloqaKHee9570+sB3c4 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICgjCCAeugAwIBAgIBBDANBgkqhkiG9w0BAQQFADBTMQswCQYDVQQGEwJVUzEc MBoGA1UEChMTRXF1aWZheCBTZWN1cmUgSW5jLjEmMCQGA1UEAxMdRXF1aWZheCBT ZWN1cmUgZUJ1c2luZXNzIENBLTEwHhcNOTkwNjIxMDQwMDAwWhcNMjAwNjIxMDQw MDAwWjBTMQswCQYDVQQGEwJVUzEcMBoGA1UEChMTRXF1aWZheCBTZWN1cmUgSW5j LjEmMCQGA1UEAxMdRXF1aWZheCBTZWN1cmUgZUJ1c2luZXNzIENBLTEwgZ8wDQYJ KoZIhvcNAQEBBQADgY0AMIGJAoGBAM4vGbwXt3fek6lfWg0XTzQaDJj0ItlZ1MRo RvC0NcWFAyDGr0WlIVFFQesWWDYyb+JQYmT5/VGcqiTZ9J2DKocKIdMSODRsjQBu WqDZQu4aIZX5UkxVWsUPOE9G+m34LjXWHXzr4vCwdYDIqROsvojvOm6rXyo4YgKw Env+j6YDAgMBAAGjZjBkMBEGCWCGSAGG+EIBAQQEAwIABzAPBgNVHRMBAf8EBTAD AQH/MB8GA1UdIwQYMBaAFEp4MlIR21kWNl7fwRQ2QGpHfEyhMB0GA1UdDgQWBBRK eDJSEdtZFjZe38EUNkBqR3xMoTANBgkqhkiG9w0BAQQFAAOBgQB1W6ibAxHm6VZM zfmpTMANmvPMZWnmJXbMWbfWVMMdzZmsGd20hdXgPfxiIKeES1hl8eL5lSE/9dR+ WB5Hh1Q+WKG1tfgq73HnvMP2sUlG4tega+VWeponmHxGYhTnyfxuAxJ5gDgdSIKN /Bf+KpYrtWKmpj29f5JZzVoqgrI3eQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICkDCCAfmgAwIBAgIBATANBgkqhkiG9w0BAQQFADBaMQswCQYDVQQGEwJVUzEc MBoGA1UEChMTRXF1aWZheCBTZWN1cmUgSW5jLjEtMCsGA1UEAxMkRXF1aWZheCBT ZWN1cmUgR2xvYmFsIGVCdXNpbmVzcyBDQS0xMB4XDTk5MDYyMTA0MDAwMFoXDTIw MDYyMTA0MDAwMFowWjELMAkGA1UEBhMCVVMxHDAaBgNVBAoTE0VxdWlmYXggU2Vj dXJlIEluYy4xLTArBgNVBAMTJEVxdWlmYXggU2VjdXJlIEdsb2JhbCBlQnVzaW5l c3MgQ0EtMTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAuucXkAJlsTRVPEnC UdXfp9E3j9HngXNBUmCbnaEXJnitx7HoJpQytd4zjTov2/KaelpzmKNc6fuKcxtc 58O/gGzNqfTWK8D3+ZmqY6KxRwIP1ORROhI8bIpaVIRw28HFkM9yRcuoWcDNM50/ o5brhTMhHD4ePmBudpxnhcXIw2ECAwEAAaNmMGQwEQYJYIZIAYb4QgEBBAQDAgAH MA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUvqigdHJQa0S3ySPY+6j/s1dr aGwwHQYDVR0OBBYEFL6ooHRyUGtEt8kj2Puo/7NXa2hsMA0GCSqGSIb3DQEBBAUA A4GBADDiAVGqx+pf2rnQZQ8w1j7aDRRJbpGTJxQx78T3LUX47Me/okENI7SS+RkA Z70Br83gcfxaz2TE4JaY0KNA4gGK7ycH8WUBikQtBmV1UsCGECAhX2xrD2yuCRyv 8qIYNMR1pHMc8Y3c7635s3a0kr/clRAevsvIO1qEYBlWlKlV -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEVzCCAz+gAwIBAgIBATANBgkqhkiG9w0BAQUFADCBnTELMAkGA1UEBhMCRVMx IjAgBgNVBAcTGUMvIE11bnRhbmVyIDI0NCBCYXJjZWxvbmExQjBABgNVBAMTOUF1 dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIEZpcm1hcHJvZmVzaW9uYWwgQ0lGIEE2 MjYzNDA2ODEmMCQGCSqGSIb3DQEJARYXY2FAZmlybWFwcm9mZXNpb25hbC5jb20w HhcNMDExMDI0MjIwMDAwWhcNMTMxMDI0MjIwMDAwWjCBnTELMAkGA1UEBhMCRVMx IjAgBgNVBAcTGUMvIE11bnRhbmVyIDI0NCBCYXJjZWxvbmExQjBABgNVBAMTOUF1 dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIEZpcm1hcHJvZmVzaW9uYWwgQ0lGIEE2 MjYzNDA2ODEmMCQGCSqGSIb3DQEJARYXY2FAZmlybWFwcm9mZXNpb25hbC5jb20w ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDnIwNvbyOlXnjOlSztlB5u Cp4Bx+ow0Syd3Tfom5h5VtP8c9/Qit5Vj1H5WuretXDE7aTt/6MNbg9kUDGvASdY rv5sp0ovFy3Tc9UTHI9ZpTQsHVQERc1ouKDAA6XPhUJHlShbz++AbOCQl4oBPB3z hxAwJkh91/zpnZFx/0GaqUC1N5wpIE8fUuOgfRNtVLcK3ulqTgesrBlf3H5idPay BQC6haD9HThuy1q7hryUZzM1gywfI834yJFxzJeL764P3CkDG8A563DtwW4O2GcL iam8NeTvtjS0pbbELaW+0MOUJEjb35bTALVmGotmBQ/dPz/LP6pemkr4tErvlTcb AgMBAAGjgZ8wgZwwKgYDVR0RBCMwIYYfaHR0cDovL3d3dy5maXJtYXByb2Zlc2lv bmFsLmNvbTASBgNVHRMBAf8ECDAGAQH/AgEBMCsGA1UdEAQkMCKADzIwMDExMDI0 MjIwMDAwWoEPMjAxMzEwMjQyMjAwMDBaMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4E FgQUMwugZtHq2s7eYpMEKFK1FH84aLcwDQYJKoZIhvcNAQEFBQADggEBAEdz/o0n VPD11HecJ3lXV7cVVuzH2Fi3AQL0M+2TUIiefEaxvT8Ub/GzR0iLjJcG1+p+o1wq u00vR+L4OQbJnC4xGgN49Lw4xiKLMzHwFgQEffl25EvXwOaD7FnMP97/T2u3Z36m hoEyIwOdyPdfwUpgpZKpsaSgYMN4h7Mi8yrrW6ntBas3D7Hi05V2Y1Z0jFhyGzfl ZKG+TQyTmAyX9odtsz/ny4Cm7YjHX1BiAuiZdBbQ5rQ58SfLyEDW44YQqSMSkuBp QWOnryULwMWSyx6Yo1q6xTMPoJcB3X/ge9YGVM+h4k0460tQtcsm9MracEpqoeJ5 quGnM/b9Sh/22WA= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDVDCCAjygAwIBAgIDAjRWMA0GCSqGSIb3DQEBBQUAMEIxCzAJBgNVBAYTAlVT MRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMRswGQYDVQQDExJHZW9UcnVzdCBHbG9i YWwgQ0EwHhcNMDIwNTIxMDQwMDAwWhcNMjIwNTIxMDQwMDAwWjBCMQswCQYDVQQG EwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEbMBkGA1UEAxMSR2VvVHJ1c3Qg R2xvYmFsIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2swYYzD9 9BcjGlZ+W988bDjkcbd4kdS8odhM+KhDtgPpTSEHCIjaWC9mOSm9BXiLnTjoBbdq fnGk5sRgprDvgOSJKA+eJdbtg/OtppHHmMlCGDUUna2YRpIuT8rxh0PBFpVXLVDv iS2Aelet8u5fa9IAjbkU+BQVNdnARqN7csiRv8lVK83Qlz6cJmTM386DGXHKTubU 1XupGc1V3sjs0l44U+VcT4wt/lAjNvxm5suOpDkZALeVAjmRCw7+OC7RHQWa9k0+ bw8HHa8sHo9gOeL6NlMTOdReJivbPagUvTLrGAMoUgRx5aszPeE4uwc2hGKceeoW MPRfwCvocWvk+QIDAQABo1MwUTAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTA ephojYn7qwVkDBF9qn1luMrMTjAfBgNVHSMEGDAWgBTAephojYn7qwVkDBF9qn1l uMrMTjANBgkqhkiG9w0BAQUFAAOCAQEANeMpauUvXVSOKVCUn5kaFOSPeCpilKIn Z57QzxpeR+nBsqTP3UEaBU6bS+5Kb1VSsyShNwrrZHYqLizz/Tt1kL/6cdjHPTfS tQWVYrmm3ok9Nns4d0iXrKYgjy6myQzCsplFAMfOEVEiIuCl6rYVSAlk6l5PdPcF PseKUgzbFbS9bZvlxrFUaKnjaZC2mqUPuLk/IH2uSrW4nOQdtqvmlKXBx4Ot2/Un hw4EbNX/3aBd7YdStysVAq45pmp06drE57xNNB6pXE0zX5IJL4hmXXeXxx12E6nV 5fEWCRE11azbJHFwLJhWC9kXtNHjUStedejV0NxPNO3CBWaAocvmMw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDZjCCAk6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBEMQswCQYDVQQGEwJVUzEW MBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEdMBsGA1UEAxMUR2VvVHJ1c3QgR2xvYmFs IENBIDIwHhcNMDQwMzA0MDUwMDAwWhcNMTkwMzA0MDUwMDAwWjBEMQswCQYDVQQG EwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEdMBsGA1UEAxMUR2VvVHJ1c3Qg R2xvYmFsIENBIDIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDvPE1A PRDfO1MA4Wf+lGAVPoWI8YkNkMgoI5kF6CsgncbzYEbYwbLVjDHZ3CB5JIG/NTL8 Y2nbsSpr7iFY8gjpeMtvy/wWUsiRxP89c96xPqfCfWbB9X5SJBri1WeR0IIQ13hL TytCOb1kLUCgsBDTOEhGiKEMuzozKmKY+wCdE1l/bztyqu6mD4b5BWHqZ38MN5aL 5mkWRxHCJ1kDs6ZgwiFAVvqgx306E+PsV8ez1q6diYD3Aecs9pYrEw15LNnA5IZ7 S4wMcoKK+xfNAGw6EzywhIdLFnopsk/bHdQL82Y3vdj2V7teJHq4PIu5+pIaGoSe 2HSPqht/XvT+RSIhAgMBAAGjYzBhMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYE FHE4NvICMVNHK266ZUapEBVYIAUJMB8GA1UdIwQYMBaAFHE4NvICMVNHK266ZUap EBVYIAUJMA4GA1UdDwEB/wQEAwIBhjANBgkqhkiG9w0BAQUFAAOCAQEAA/e1K6td EPx7srJerJsOflN4WT5CBP51o62sgU7XAotexC3IUnbHLB/8gTKY0UvGkpMzNTEv /NgdRN3ggX+d6YvhZJFiCzkIjKx0nVnZellSlxG5FntvRdOW2TF9AjYPnDtuzywN A0ZF66D0f0hExghAzN4bcLUprbqLOzRldRtxIR0sFAqwlpW41uryZfspuk/qkZN0 abby/+Ea0AzRdoXLiiW9l14sbxWZJue2Kf8i7MkCx1YAzUm5s2x7UwQa4qjJqhIF I8LO57sEAszAR6LkxCkvW0VXiVHuPOtSCP8HNR6fNWpHSlaY0VqFH4z1Ir+rzoPz 4iIprn2DQKi6bA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICrjCCAjWgAwIBAgIQPLL0SAoA4v7rJDteYD7DazAKBggqhkjOPQQDAzCBmDEL MAkGA1UEBhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IEluYy4xOTA3BgNVBAsTMChj KSAyMDA3IEdlb1RydXN0IEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTE2 MDQGA1UEAxMtR2VvVHJ1c3QgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0 eSAtIEcyMB4XDTA3MTEwNTAwMDAwMFoXDTM4MDExODIzNTk1OVowgZgxCzAJBgNV BAYTAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTkwNwYDVQQLEzAoYykgMjAw NyBHZW9UcnVzdCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxNjA0BgNV BAMTLUdlb1RydXN0IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBH MjB2MBAGByqGSM49AgEGBSuBBAAiA2IABBWx6P0DFUPlrOuHNxFi79KDNlJ9RVcL So17VDs6bl8VAsBQps8lL33KSLjHUGMcKiEIfJo22Av+0SbFWDEwKCXzXV2juLal tJLtbCyf691DiaI8S0iRHVDsJt/WYC69IaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAO BgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBVfNVdRVfslsq0DafwBo/q+EVXVMAoG CCqGSM49BAMDA2cAMGQCMGSWWaboCd6LuvpaiIjwH5HTRqjySkwCY/tsXzjbLkGT qQ7mndwxHLKgpxgceeHHNgIwOlavmnRs9vuD4DPTCF+hnMJbn0bWtsuRBmOiBucz rD6ogRLQy7rQkgu2npaqBA+K -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID/jCCAuagAwIBAgIQFaxulBmyeUtB9iepwxgPHzANBgkqhkiG9w0BAQsFADCB mDELMAkGA1UEBhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IEluYy4xOTA3BgNVBAsT MChjKSAyMDA4IEdlb1RydXN0IEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25s eTE2MDQGA1UEAxMtR2VvVHJ1c3QgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhv cml0eSAtIEczMB4XDTA4MDQwMjAwMDAwMFoXDTM3MTIwMTIzNTk1OVowgZgxCzAJ BgNVBAYTAlVTMRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMTkwNwYDVQQLEzAoYykg MjAwOCBHZW9UcnVzdCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxNjA0 BgNVBAMTLUdlb1RydXN0IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkg LSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANziXmJYHTNXOTIz +uvLh4yn1ErdBojqZI4xmKU4kB6Yzy5jK/BGvESyiaHAKAxJcCGVn2TAppMSAmUm hsalifD614SgcK9PGpc/BkTVyetyEH3kMSj7HGHmKAdEc5IiaacDiGydY8hS2pgn 5whMcD60yRLBxWeDXTPzAxHsatBT4tG6NmCUgLthY2xbF37fQJQeqw3CIShwiP/W JmxsYAQlTlV+fe+/lEjetx3dcI0FX4ilm/LC7urRQEFtYjgdVgbFA0dRIBn8exAL DmKudlW/X3e+PkkBUz2YJQN2JFodtNuJ6nnltrM7P7pMKEF/BqxqjsHQ9gUdfeZC huOl1UcCAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYw HQYDVR0OBBYEFMR5yo6hTgMdHNxr2zFblD4/MH8tMA0GCSqGSIb3DQEBCwUAA4IB AQAtxRPPVoB7eni9n64smefv2t+UXglpp+duaIy9cr5HqQ6XErhK8WTTOd8lNNTB zU6B8A8ExCSzNJbGpqow32hhc9f5joWJ7w5elShKKiePEI4ufIbEAp7aDHdlDkQN kv39sxY2+hENHYwOB4lqKVb3cvTdFZx3NWZXqxNT2I7BQMXXExZacse3aQHEerGD AWh9jUGhlBjBJVz88P6DAod8DQ3PLghcSkANPuyBYeYk28rgDi0Hsj5W3I31QYUH SJsMC8tJP33st/3LjWeJGqvtux6jAAgIFyqCXDFdRootD4abdNlF+9RAsXqqaC2G spki4cErx5z481+oghLrGREt -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDfDCCAmSgAwIBAgIQGKy1av1pthU6Y2yv2vrEoTANBgkqhkiG9w0BAQUFADBY MQswCQYDVQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjExMC8GA1UEAxMo R2VvVHJ1c3QgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wNjEx MjcwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMFgxCzAJBgNVBAYTAlVTMRYwFAYDVQQK Ew1HZW9UcnVzdCBJbmMuMTEwLwYDVQQDEyhHZW9UcnVzdCBQcmltYXJ5IENlcnRp ZmljYXRpb24gQXV0aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC AQEAvrgVe//UfH1nrYNke8hCUy3f9oQIIGHWAVlqnEQRr+92/ZV+zmEwu3qDXwK9 AWbK7hWNb6EwnL2hhZ6UOvNWiAAxz9juapYC2e0DjPt1befquFUWBRaa9OBesYjA ZIVcFU2Ix7e64HXprQU9nceJSOC7KMgD4TCTZF5SwFlwIjVXiIrxlQqD17wxcwE0 7e9GceBrAqg1cmuXm2bgyxx5X9gaBGgeRwLmnWDiNpcB3841kt++Z8dtd1k7j53W kBWUvEI0EME5+bEnPn7WinXFsq+W06Lem+SYvn3h6YGttm/81w7a4DSwDRp35+MI mO9Y+pyEtzavwt+s0vQQBnBxNQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4G A1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQULNVQQZcVi/CPNmFbSvtr2ZnJM5IwDQYJ KoZIhvcNAQEFBQADggEBAFpwfyzdtzRP9YZRqSa+S7iq8XEN3GHHoOo0Hnp3DwQ1 6CePbJC/kRYkRj5KTs4rFtULUh38H2eiAkUxT87z+gOneZ1TatnaYzr4gNfTmeGl 4b7UVXGYNTq+k+qurUKykG/g/CFNNWMziUnWm07Kx+dOCQD32sfvmWKZd7aVIl6K oKv0uHiYyjgZmclynnjNS6yvGaBzEi38wkG6gZHaFloxt/m0cYASSJlyc1pZU8Fj UjPtp8nSOQJw+uCxQmYpqptR7TBUIhRf2asdweSU8Pj1K/fqynhG1riR/aYNKxoU AT6A8EKglQdebc3MS6RFjasS6LPeWuWgfOgPIh1a6Vk= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFaDCCA1CgAwIBAgIBATANBgkqhkiG9w0BAQUFADBFMQswCQYDVQQGEwJVUzEW MBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEeMBwGA1UEAxMVR2VvVHJ1c3QgVW5pdmVy c2FsIENBMB4XDTA0MDMwNDA1MDAwMFoXDTI5MDMwNDA1MDAwMFowRTELMAkGA1UE BhMCVVMxFjAUBgNVBAoTDUdlb1RydXN0IEluYy4xHjAcBgNVBAMTFUdlb1RydXN0 IFVuaXZlcnNhbCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAKYV VaCjxuAfjJ0hUNfBvitbtaSeodlyWL0AG0y/YckUHUWCq8YdgNY96xCcOq9tJPi8 cQGeBvV8Xx7BDlXKg5pZMK4ZyzBIle0iN430SppyZj6tlcDgFgDgEB8rMQ7XlFTT QjOgNB0eRXbdT8oYN+yFFXoZCPzVx5zw8qkuEKmS5j1YPakWaDwvdSEYfyh3peFh F7em6fgemdtzbvQKoiFs7tqqhZJmr/Z6a4LauiIINQ/PQvE1+mrufislzDoR5G2v c7J2Ha3QsnhnGqQ5HFELZ1aD/ThdDc7d8Lsrlh/eezJS/R27tQahsiFepdaVaH/w mZ7cRQg+59IJDTWU3YBOU5fXtQlEIGQWFwMCTFMNaN7VqnJNk22CDtucvc+081xd VHppCZbW2xHBjXWotM85yM48vCR85mLK4b19p71XZQvk/iXttmkQ3CgaRr0BHdCX teGYO8A3ZNY9lO4L4fUorgtWv3GLIylBjobFS1J72HGrH4oVpjuDWtdYAVHGTEHZ f9hBZ3KiKN9gg6meyHv8U3NyWfWTehd2Ds735VzZC1U0oqpbtWpU5xPKV+yXbfRe Bi9Fi1jUIxaS5BZuKGNZMN9QAZxjiRqf2xeUgnA3wySemkfWWspOqGmJch+RbNt+ nhutxx9z3SxPGWX9f5NAEC7S8O08ni4oPmkmM8V7AgMBAAGjYzBhMA8GA1UdEwEB /wQFMAMBAf8wHQYDVR0OBBYEFNq7LqqwDLiIJlF0XG0D08DYj3rWMB8GA1UdIwQY MBaAFNq7LqqwDLiIJlF0XG0D08DYj3rWMA4GA1UdDwEB/wQEAwIBhjANBgkqhkiG 9w0BAQUFAAOCAgEAMXjmx7XfuJRAyXHEqDXsRh3ChfMoWIawC/yOsjmPRFWrZIRc aanQmjg8+uUfNeVE44B5lGiku8SfPeE0zTBGi1QrlaXv9z+ZhP015s8xxtxqv6fX IwjhmF7DWgh2qaavdy+3YL1ERmrvl/9zlcGO6JP7/TG37FcREUWbMPEaiDnBTzyn ANXH/KttgCJwpQzgXQQpAvvLoJHRfNbDflDVnVi+QTjruXU8FdmbyUqDWcDaU/0z uzYYm4UPFd3uLax2k7nZAY1IEKj79TiG8dsKxr2EoyNB3tZ3b4XUhRxQ4K5RirqN Pnbiucon8l+f725ZDQbYKxek0nxru18UGkiPGkzns0ccjkxFKyDuSN/n3QmOGKja QI2SJhFTYXNd673nxE0pN2HrrDktZy4W1vUAg4WhzH92xH3kt0tm7wNFYGm2DFKW koRepqO1pD4r2czYG0eq8kTaT/kD6PAUyz/zg97QwVTjt+gKN02LIFkDMBmhLMi9 ER/frslKxfMnZmaGrGiR/9nmUxwPi1xpZQomyB40w11Re9epnAahNt3ViZS82eQt DF4JbAiXfKM9fJP/P6EUp8+1Xevb2xzEdt+Iub1FBZUbrvxGakyvSOPOrg/Sfuvm bJxPgWp6ZKy7PtXny3YuxadIwVyQD8vIP/rmMuGNG2+k5o7Y+SlIis5z/iw= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFbDCCA1SgAwIBAgIBATANBgkqhkiG9w0BAQUFADBHMQswCQYDVQQGEwJVUzEW MBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEgMB4GA1UEAxMXR2VvVHJ1c3QgVW5pdmVy c2FsIENBIDIwHhcNMDQwMzA0MDUwMDAwWhcNMjkwMzA0MDUwMDAwWjBHMQswCQYD VQQGEwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEgMB4GA1UEAxMXR2VvVHJ1 c3QgVW5pdmVyc2FsIENBIDIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoIC AQCzVFLByT7y2dyxUxpZKeexw0Uo5dfR7cXFS6GqdHtXr0om/Nj1XqduGdt0DE81 WzILAePb63p3NeqqWuDW6KFXlPCQo3RWlEQwAx5cTiuFJnSCegx2oG9NzkEtoBUG FF+3Qs17j1hhNNwqCPkuwwGmIkQcTAeC5lvO0Ep8BNMZcyfwqph/Lq9O64ceJHdq XbboW0W63MOhBW9Wjo8QJqVJwy7XQYci4E+GymC16qFjwAGXEHm9ADwSbSsVsaxL se4YuU6W3Nx2/zu+z18DwPw76L5GG//aQMJS9/7jOvdqdzXQ2o3rXhhqMcceujwb KNZrVMaqW9eiLBsZzKIC9ptZvTdrhrVtgrrY6slWvKk2WP0+GfPtDCapkzj4T8Fd IgbQl+rhrcZV4IErKIM6+vR7IVEAvlI4zs1meaj0gVbi0IMJR1FbUGrP20gaXT73 y/Zl92zxlfgCOzJWgjl6W70viRu/obTo/3+NjN8D8WBOWBFM66M/ECuDmgFz2ZRt hAAnZqzwcEAJQpKtT5MNYQlRJNiS1QuUYbKHsu3/mjX/hVTK7URDrBs8FmtISgoc QIgfksILAAX/8sgCSqSqqcyZlpwvWOB94b67B9xfBHJcMTTD7F8t4D1kkCLm0ey4 Lt1ZrtmhN79UNdxzMk+MBB4zsslG8dhcyFVQyWi9qLo2CQIDAQABo2MwYTAPBgNV HRMBAf8EBTADAQH/MB0GA1UdDgQWBBR281Xh+qQ2+/CfXGJx7Tz0RzgQKzAfBgNV HSMEGDAWgBR281Xh+qQ2+/CfXGJx7Tz0RzgQKzAOBgNVHQ8BAf8EBAMCAYYwDQYJ KoZIhvcNAQEFBQADggIBAGbBxiPz2eAubl/oz66wsCVNK/g7WJtAJDday6sWSf+z dXkzoS9tcBc0kf5nfo/sm+VegqlVHy/c1FEHEv6sFj4sNcZj/NwQ6w2jqtB8zNHQ L1EuxBRa3ugZ4T7GzKQp5y6EqgYweHZUcyiYWTjgAA1i00J9IZ+uPTqM1fp3DRgr Fg5fNuH8KrUwJM/gYwx7WBr+mbpCErGR9Hxo4sjoryzqyX6uuyo9DRXcNJW2GHSo ag/HtPQTxORb7QrSpJdMKu0vbBKJPfEncKpqA1Ihn0CoZ1Dy81of398j9tx4TuaY T1U6U+Pv8vSfx3zYWK8pIpe44L2RLrB27FcRz+8pRPPphXpgY+RdM4kX2TGq2tbz GDVyz4crL2MjhF2EjD9XoIj8mZEoJmmZ1I+XRL6O1UixpCgp8RW04eWe3fiPpm8m 1wk8OhwRDqZsN/etRIcsKMfYdIKz0G9KV7s1KSegi+ghp4dkNl3M2Basx7InQJJV OCiNUW7dFGdTbHFcJoRNdVq2fmBWqU2t+5sel/MN2dKXVHfaPRK34B7vCAas+YWH 6aLcr34YEoP9VhdBLtUpgn2Z9DH2canPLAEnpQW5qrJITirvn5NSUZU8UnOOVkwX QMAJKOSLakhT2+zNVVXxxvjpoixMptEmX36vWkzaH6byHCx+rgIW0lbQL1dTR+iS -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIHSTCCBTGgAwIBAgIJAMnN0+nVfSPOMA0GCSqGSIb3DQEBBQUAMIGsMQswCQYD VQQGEwJFVTFDMEEGA1UEBxM6TWFkcmlkIChzZWUgY3VycmVudCBhZGRyZXNzIGF0 IHd3dy5jYW1lcmZpcm1hLmNvbS9hZGRyZXNzKTESMBAGA1UEBRMJQTgyNzQzMjg3 MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMuQS4xJzAlBgNVBAMTHkdsb2JhbCBD aGFtYmVyc2lnbiBSb290IC0gMjAwODAeFw0wODA4MDExMjMxNDBaFw0zODA3MzEx MjMxNDBaMIGsMQswCQYDVQQGEwJFVTFDMEEGA1UEBxM6TWFkcmlkIChzZWUgY3Vy cmVudCBhZGRyZXNzIGF0IHd3dy5jYW1lcmZpcm1hLmNvbS9hZGRyZXNzKTESMBAG A1UEBRMJQTgyNzQzMjg3MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMuQS4xJzAl BgNVBAMTHkdsb2JhbCBDaGFtYmVyc2lnbiBSb290IC0gMjAwODCCAiIwDQYJKoZI hvcNAQEBBQADggIPADCCAgoCggIBAMDfVtPkOpt2RbQT2//BthmLN0EYlVJH6xed KYiONWwGMi5HYvNJBL99RDaxccy9Wglz1dmFRP+RVyXfXjaOcNFccUMd2drvXNL7 G706tcuto8xEpw2uIRU/uXpbknXYpBI4iRmKt4DS4jJvVpyR1ogQC7N0ZJJ0YPP2 zxhPYLIj0Mc7zmFLmY/CDNBAspjcDahOo7kKrmCgrUVSY7pmvWjg+b4aqIG7HkF4 ddPB/gBVsIdU6CeQNR1MM62X/JcumIS/LMmjv9GYERTtY/jKmIhYF5ntRQOXfjyG HoiMvvKRhI9lNNgATH23MRdaKXoKGCQwoze1eqkBfSbW+Q6OWfH9GzO1KTsXO0G2 Id3UwD2ln58fQ1DJu7xsepeY7s2MH/ucUa6LcL0nn3HAa6x9kGbo1106DbDVwo3V yJ2dwW3Q0L9R5OP4wzg2rtandeavhENdk5IMagfeOx2YItaswTXbo6Al/3K1dh3e beksZixShNBFks4c5eUzHdwHU1SjqoI7mjcv3N2gZOnm3b2u/GSFHTynyQbehP9r 6GsaPMWis0L7iwk+XwhSx2LE1AVxv8Rk5Pihg+g+EpuoHtQ2TS9x9o0o9oOpE9Jh wZG7SMA0j0GMS0zbaRL/UJScIINZc+18ofLx/d33SdNDWKBWY8o9PeU1VlnpDsog zCtLkykPAgMBAAGjggFqMIIBZjASBgNVHRMBAf8ECDAGAQH/AgEMMB0GA1UdDgQW BBS5CcqcHtvTbDprru1U8VuTBjUuXjCB4QYDVR0jBIHZMIHWgBS5CcqcHtvTbDpr ru1U8VuTBjUuXqGBsqSBrzCBrDELMAkGA1UEBhMCRVUxQzBBBgNVBAcTOk1hZHJp ZCAoc2VlIGN1cnJlbnQgYWRkcmVzcyBhdCB3d3cuY2FtZXJmaXJtYS5jb20vYWRk cmVzcykxEjAQBgNVBAUTCUE4Mjc0MzI4NzEbMBkGA1UEChMSQUMgQ2FtZXJmaXJt YSBTLkEuMScwJQYDVQQDEx5HbG9iYWwgQ2hhbWJlcnNpZ24gUm9vdCAtIDIwMDiC CQDJzdPp1X0jzjAOBgNVHQ8BAf8EBAMCAQYwPQYDVR0gBDYwNDAyBgRVHSAAMCow KAYIKwYBBQUHAgEWHGh0dHA6Ly9wb2xpY3kuY2FtZXJmaXJtYS5jb20wDQYJKoZI hvcNAQEFBQADggIBAICIf3DekijZBZRG/5BXqfEv3xoNa/p8DhxJJHkn2EaqbylZ UohwEurdPfWbU1Rv4WCiqAm57OtZfMY18dwY6fFn5a+6ReAJ3spED8IXDneRRXoz X1+WLGiLwUePmJs9wOzL9dWCkoQ10b42OFZyMVtHLaoXpGNR6woBrX/sdZ7LoR/x fxKxueRkf2fWIyr0uDldmOghp+G9PUIadJpwr2hsUF1Jz//7Dl3mLEfXgTpZALVz a2Mg9jFFCDkO9HB+QHBaP9BrQql0PSgvAm11cpUJjUhjxsYjV5KTXjXBjfkK9yyd Yhz2rXzdpjEetrHHfoUm+qRqtdpjMNHvkzeyZi99Bffnt0uYlDXA2TopwZ2yUDMd SqlapskD7+3056huirRXhOukP9DuqqqHW2Pok+JrqNS4cnhrG+055F3Lm6qH1U9O AP7Zap88MQ8oAgF9mOinsKJknnn4SPIVqczmyETrP3iZ8ntxPjzxmKfFGBI/5rso M0LpRQp8bfKGeS/Fghl9CYl8slR2iK7ewfPM4W7bMdaTrpmg7yVqc5iJWzouE4ge v8CSlDQb4ye3ix5vQv/n6TebUB0tovkC7stYWDpxvGjjqsGvHCgfotwjZT+B6q6Z 09gwzxMNTxXJhLynSC34MCN32EZLeW32jO06f2ARePTpm67VVMB0gNELQp/B -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDdTCCAl2gAwIBAgILBAAAAAABFUtaw5QwDQYJKoZIhvcNAQEFBQAwVzELMAkG A1UEBhMCQkUxGTAXBgNVBAoTEEdsb2JhbFNpZ24gbnYtc2ExEDAOBgNVBAsTB1Jv b3QgQ0ExGzAZBgNVBAMTEkdsb2JhbFNpZ24gUm9vdCBDQTAeFw05ODA5MDExMjAw MDBaFw0yODAxMjgxMjAwMDBaMFcxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9i YWxTaWduIG52LXNhMRAwDgYDVQQLEwdSb290IENBMRswGQYDVQQDExJHbG9iYWxT aWduIFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDaDuaZ jc6j40+Kfvvxi4Mla+pIH/EqsLmVEQS98GPR4mdmzxzdzxtIK+6NiY6arymAZavp xy0Sy6scTHAHoT0KMM0VjU/43dSMUBUc71DuxC73/OlS8pF94G3VNTCOXkNz8kHp 1Wrjsok6Vjk4bwY8iGlbKk3Fp1S4bInMm/k8yuX9ifUSPJJ4ltbcdG6TRGHRjcdG snUOhugZitVtbNV4FpWi6cgKOOvyJBNPc1STE4U6G7weNLWLBYy5d4ux2x8gkasJ U26Qzns3dLlwR5EiUWMWea6xrkEmCMgZK9FGqkjWZCrXgzT/LCrBbBlDSgeF59N8 9iFo7+ryUp9/k5DPAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8E BTADAQH/MB0GA1UdDgQWBBRge2YaRQ2XyolQL30EzTSo//z9SzANBgkqhkiG9w0B AQUFAAOCAQEA1nPnfE920I2/7LqivjTFKDK1fPxsnCwrvQmeU79rXqoRSLblCKOz yj1hTdNGCbM+w6DjY1Ub8rrvrTnhQ7k4o+YviiY776BQVvnGCv04zcQLcFGUl5gE 38NflNUVyRRBnMRddWQVDf9VMOyGj/8N7yy5Y0b2qvzfvGn9LhJIZJrglfCm7ymP AbEVtQwdpf5pLGkkeB6zpxxxYu7KyJesF12KwvhHhm4qxFYxldBniYUr+WymXUad DKqC5JlR3XC321Y9YeRq4VzW9v493kHMB65jUr9TU/Qr6cf9tveCX4XSQRjbgbME HMUfpIBvFSDJ3gyICh3WZlXi/EjJKSZp4A== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDujCCAqKgAwIBAgILBAAAAAABD4Ym5g0wDQYJKoZIhvcNAQEFBQAwTDEgMB4G A1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjIxEzARBgNVBAoTCkdsb2JhbFNp Z24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMDYxMjE1MDgwMDAwWhcNMjExMjE1 MDgwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMjETMBEG A1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjCCASIwDQYJKoZI hvcNAQEBBQADggEPADCCAQoCggEBAKbPJA6+Lm8omUVCxKs+IVSbC9N/hHD6ErPL v4dfxn+G07IwXNb9rfF73OX4YJYJkhD10FPe+3t+c4isUoh7SqbKSaZeqKeMWhG8 eoLrvozps6yWJQeXSpkqBy+0Hne/ig+1AnwblrjFuTosvNYSuetZfeLQBoZfXklq tTleiDTsvHgMCJiEbKjNS7SgfQx5TfC4LcshytVsW33hoCmEofnTlEnLJGKRILzd C9XZzPnqJworc5HGnRusyMvo4KD0L5CLTfuwNhv2GXqF4G3yYROIXJ/gkwpRl4pa zq+r1feqCapgvdzZX99yqWATXgAByUr6P6TqBwMhAo6CygPCm48CAwEAAaOBnDCB mTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUm+IH V2ccHsBqBt5ZtJot39wZhi4wNgYDVR0fBC8wLTAroCmgJ4YlaHR0cDovL2NybC5n bG9iYWxzaWduLm5ldC9yb290LXIyLmNybDAfBgNVHSMEGDAWgBSb4gdXZxwewGoG 3lm0mi3f3BmGLjANBgkqhkiG9w0BAQUFAAOCAQEAmYFThxxol4aR7OBKuEQLq4Gs J0/WwbgcQ3izDJr86iw8bmEbTUsp9Z8FHSbBuOmDAGJFtqkIk7mpM0sYmsL4h4hO 291xNBrBVNpGP+DTKqttVCL1OmLNIG+6KYnX3ZHu01yiPqFbQfXf5WRDLenVOavS ot+3i9DAgBkcRcAtjOj4LaR0VknFBbVPFd5uRHg5h6h+u/N5GJG79G+dwfCMNYxd AfvDbbnvRG15RjF+Cv6pgsH/76tuIMRQyV+dTZsXjAzlAcmgQWpzU/qlULRuJQ/7 TBj0/VLZjmmx6BEP3ojY+x1J96relc8geMJgEtslQIxq/H5COEBkEveegeGTLg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDXzCCAkegAwIBAgILBAAAAAABIVhTCKIwDQYJKoZIhvcNAQELBQAwTDEgMB4G A1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjMxEzARBgNVBAoTCkdsb2JhbFNp Z24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMDkwMzE4MTAwMDAwWhcNMjkwMzE4 MTAwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMzETMBEG A1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjCCASIwDQYJKoZI hvcNAQEBBQADggEPADCCAQoCggEBAMwldpB5BngiFvXAg7aEyiie/QV2EcWtiHL8 RgJDx7KKnQRfJMsuS+FggkbhUqsMgUdwbN1k0ev1LKMPgj0MK66X17YUhhB5uzsT gHeMCOFJ0mpiLx9e+pZo34knlTifBtc+ycsmWQ1z3rDI6SYOgxXG71uL0gRgykmm KPZpO/bLyCiR5Z2KYVc3rHQU3HTgOu5yLy6c+9C7v/U9AOEGM+iCK65TpjoWc4zd QQ4gOsC0p6Hpsk+QLjJg6VfLuQSSaGjlOCZgdbKfd/+RFO+uIEn8rUAVSNECMWEZ XriX7613t2Saer9fwRPvm2L7DWzgVGkWqQPabumDk3F2xmmFghcCAwEAAaNCMEAw DgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFI/wS3+o LkUkrk1Q+mOai97i3Ru8MA0GCSqGSIb3DQEBCwUAA4IBAQBLQNvAUKr+yAzv95ZU RUm7lgAJQayzE4aGKAczymvmdLm6AC2upArT9fHxD4q/c2dKg8dEe3jgr25sbwMp jjM5RcOO5LlXbKr8EpbsU8Yt5CRsuZRj+9xTaGdWPoO4zzUhw8lo/s7awlOqzJCK 6fBdRoyV3XpYKBovHd7NADdBj+1EbddTKJd+82cEHhXXipa0095MJ6RMG3NzdvQX mcIfeg7jLQitChws/zyrVQ4PkX4268NXSb7hLi18YIvDQVETI53O9zJrlAGomecs Mx86OyXShkDOOyyGeMlhLxS67ttVb9+E7gUJTb0o2HLO02JQZR7rkpeDMdmztcpH WD9f -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEADCCAuigAwIBAgIBADANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEh MB8GA1UEChMYVGhlIEdvIERhZGR5IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBE YWRkeSBDbGFzcyAyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA0MDYyOTE3 MDYyMFoXDTM0MDYyOTE3MDYyMFowYzELMAkGA1UEBhMCVVMxITAfBgNVBAoTGFRo ZSBHbyBEYWRkeSBHcm91cCwgSW5jLjExMC8GA1UECxMoR28gRGFkZHkgQ2xhc3Mg MiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASAwDQYJKoZIhvcNAQEBBQADggEN ADCCAQgCggEBAN6d1+pXGEmhW+vXX0iG6r7d/+TvZxz0ZWizV3GgXne77ZtJ6XCA PVYYYwhv2vLM0D9/AlQiVBDYsoHUwHU9S3/Hd8M+eKsaA7Ugay9qK7HFiH7Eux6w wdhFJ2+qN1j3hybX2C32qRe3H3I2TqYXP2WYktsqbl2i/ojgC95/5Y0V4evLOtXi EqITLdiOr18SPaAIBQi2XKVlOARFmR6jYGB0xUGlcmIbYsUfb18aQr4CUWWoriMY avx4A6lNf4DD+qta/KFApMoZFv6yyO9ecw3ud72a9nmYvLEHZ6IVDd2gWMZEewo+ YihfukEHU1jPEX44dMX4/7VpkI+EdOqXG68CAQOjgcAwgb0wHQYDVR0OBBYEFNLE sNKR1EwRcbNhyz2h/t2oatTjMIGNBgNVHSMEgYUwgYKAFNLEsNKR1EwRcbNhyz2h /t2oatTjoWekZTBjMQswCQYDVQQGEwJVUzEhMB8GA1UEChMYVGhlIEdvIERhZGR5 IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBEYWRkeSBDbGFzcyAyIENlcnRpZmlj YXRpb24gQXV0aG9yaXR5ggEAMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQAD ggEBADJL87LKPpH8EsahB4yOd6AzBhRckB4Y9wimPQoZ+YeAEW5p5JYXMP80kWNy OO7MHAGjHZQopDH2esRU1/blMVgDoszOYtuURXO1v0XJJLXVggKtI3lpjbi2Tc7P TMozI+gciKqdi0FuFskg5YmezTvacPd+mSYgFFQlq25zheabIZ0KbIIOqPjCDPoQ HmyW74cNxA9hi63ugyuV+I6ShHI56yDqg+2DzZduCLzrTia2cyvk0/ZM/iZx4mER dEr/VxqHD3VILs9RaRegAhJhldXRQLIQTO7ErBBDpqWeCtWVYpoNz4iCxTIM5Cuf ReYNnyicsbkqWletNw+vHX/bvZ8= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDxTCCAq2gAwIBAgIBADANBgkqhkiG9w0BAQsFADCBgzELMAkGA1UEBhMCVVMx EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxGjAYBgNVBAoT EUdvRGFkZHkuY29tLCBJbmMuMTEwLwYDVQQDEyhHbyBEYWRkeSBSb290IENlcnRp ZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5MDkwMTAwMDAwMFoXDTM3MTIzMTIz NTk1OVowgYMxCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6b25hMRMwEQYDVQQH EwpTY290dHNkYWxlMRowGAYDVQQKExFHb0RhZGR5LmNvbSwgSW5jLjExMC8GA1UE AxMoR28gRGFkZHkgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIw DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL9xYgjx+lk09xvJGKP3gElY6SKD E6bFIEMBO4Tx5oVJnyfq9oQbTqC023CYxzIBsQU+B07u9PpPL1kwIuerGVZr4oAH /PMWdYA5UXvl+TW2dE6pjYIT5LY/qQOD+qK+ihVqf94Lw7YZFAXK6sOoBJQ7Rnwy DfMAZiLIjWltNowRGLfTshxgtDj6AozO091GB94KPutdfMh8+7ArU6SSYmlRJQVh GkSBjCypQ5Yj36w6gZoOKcUcqeldHraenjAKOc7xiID7S13MMuyFYkMlNAJWJwGR tDtwKj9useiciAF9n9T521NtYJ2/LOdYq7hfRvzOxBsDPAnrSTFcaUaz4EcCAwEA AaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYE FDqahQcQZyi27/a9BUFuIMGU2g/eMA0GCSqGSIb3DQEBCwUAA4IBAQCZ21151fmX WWcDYfF+OwYxdS2hII5PZYe096acvNjpL9DbWu7PdIxztDhC2gV7+AJ1uP2lsdeu 9tfeE8tTEH6KRtGX+rcuKxGrkLAngPnon1rpN5+r5N9ss4UXnT3ZJE95kTXWXwTr gIOrmgIttRD02JDHBHNA7XIloKmf7J6raBKZV8aPEjoJpL1E/QYVN8Gb5DKj7Tjo 2GTzLH4U/ALqn83/B2gX2yKQOC16jdFU8WnjXzPKej17CuPKf1855eJ1usV2GDPO LPAvTK33sefOT6jEm0pUBsV/fdUID+Ic/n4XuKxe9tQWskMJDE32p2u0mYRlynqI 4uJEvlz36hz1 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICWjCCAcMCAgGlMA0GCSqGSIb3DQEBBAUAMHUxCzAJBgNVBAYTAlVTMRgwFgYD VQQKEw9HVEUgQ29ycG9yYXRpb24xJzAlBgNVBAsTHkdURSBDeWJlclRydXN0IFNv bHV0aW9ucywgSW5jLjEjMCEGA1UEAxMaR1RFIEN5YmVyVHJ1c3QgR2xvYmFsIFJv b3QwHhcNOTgwODEzMDAyOTAwWhcNMTgwODEzMjM1OTAwWjB1MQswCQYDVQQGEwJV UzEYMBYGA1UEChMPR1RFIENvcnBvcmF0aW9uMScwJQYDVQQLEx5HVEUgQ3liZXJU cnVzdCBTb2x1dGlvbnMsIEluYy4xIzAhBgNVBAMTGkdURSBDeWJlclRydXN0IEds b2JhbCBSb290MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCVD6C28FCc6HrH iM3dFw4usJTQGz0O9pTAipTHBsiQl8i4ZBp6fmw8U+E3KHNgf7KXUwefU/ltWJTS r41tiGeA5u2ylc9yMcqlHHK6XALnZELn+aks1joNrI1CqiQBOeacPwGFVw1Yh0X4 04Wqk2kmhXBIgD8SFcd5tB8FLztimQIDAQABMA0GCSqGSIb3DQEBBAUAA4GBAG3r GwnpXtlR22ciYaQqPEh346B8pt5zohQDhT37qw4wxYMWM4ETCJ57NE7fQMh017l9 3PR2VX2bY1QY6fDq81yx2YtCHrnAlU66+tXifPVoYb+O7AWXX1uw16OFNMQkpw0P lZPvy5TYnh+dXIVtx6quTx8itc2VrbqnzPmrC3p/ -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEMTCCAxmgAwIBAgIBADANBgkqhkiG9w0BAQUFADCBlTELMAkGA1UEBhMCR1Ix RDBCBgNVBAoTO0hlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1 dGlvbnMgQ2VydC4gQXV0aG9yaXR5MUAwPgYDVQQDEzdIZWxsZW5pYyBBY2FkZW1p YyBhbmQgUmVzZWFyY2ggSW5zdGl0dXRpb25zIFJvb3RDQSAyMDExMB4XDTExMTIw NjEzNDk1MloXDTMxMTIwMTEzNDk1MlowgZUxCzAJBgNVBAYTAkdSMUQwQgYDVQQK EztIZWxsZW5pYyBBY2FkZW1pYyBhbmQgUmVzZWFyY2ggSW5zdGl0dXRpb25zIENl cnQuIEF1dGhvcml0eTFAMD4GA1UEAxM3SGVsbGVuaWMgQWNhZGVtaWMgYW5kIFJl c2VhcmNoIEluc3RpdHV0aW9ucyBSb290Q0EgMjAxMTCCASIwDQYJKoZIhvcNAQEB BQADggEPADCCAQoCggEBAKlTAOMupvaO+mDYLZU++CwqVE7NuYRhlFhPjz2L5EPz dYmNUeTDN9KKiE15HrcS3UN4SoqS5tdI1Q+kOilENbgH9mgdVc04UfCMJDGFr4PJ fel3r+0ae50X+bOdOFAPplp5kYCvN66m0zH7tSYJnTxa71HFK9+WXesyHgLacEns bgzImjeN9/E2YEsmLIKe0HjzDQ9jpFEw4fkrJxIH2Oq9GGKYsFk3fb7u8yBRQlqD 75O6aRXxYp2fmTmCobd0LovUxQt7L/DICto9eQqakxylKHJzkUOap9FNhYS5qXSP FEDH3N6sQWRstBmbAmNtJGSPRLIl6s5ddAxjMlyNh+UCAwEAAaOBiTCBhjAPBgNV HRMBAf8EBTADAQH/MAsGA1UdDwQEAwIBBjAdBgNVHQ4EFgQUppFC/RNhSiOeCKQp 5dgTBCPuQSUwRwYDVR0eBEAwPqA8MAWCAy5ncjAFggMuZXUwBoIELmVkdTAGggQu b3JnMAWBAy5ncjAFgQMuZXUwBoEELmVkdTAGgQQub3JnMA0GCSqGSIb3DQEBBQUA A4IBAQAf73lB4XtuP7KMhjdCSk4cNx6NZrokgclPEg8hwAOXhiVtXdMiKahsog2p 6z0GW5k6x8zDmjR/qw7IThzh+uTczQ2+vyT+bOdrwg3IBp5OjWEopmr95fZi6hg8 TqBTnbI6nOulnJEWtk2C4AwFSKls9cz4y51JtPACpf1wA+2KIaWuE4ZJwzNzvoc7 dIsXRSZMFpGD/md9zU1jZ/rzAxKWeAaNsWftjj++n08C9bMJL/NMh98qy5V8Acys Nnq/onN694/BtZqhFLKPM58N7yLcZnuEvUUXBj08yrl3NI/K6s8/MT7jiOOASSXI l7WdmplNsDz4SgCbZN2fOUvRJ9e4 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDMDCCAhigAwIBAgICA+gwDQYJKoZIhvcNAQEFBQAwRzELMAkGA1UEBhMCSEsx FjAUBgNVBAoTDUhvbmdrb25nIFBvc3QxIDAeBgNVBAMTF0hvbmdrb25nIFBvc3Qg Um9vdCBDQSAxMB4XDTAzMDUxNTA1MTMxNFoXDTIzMDUxNTA0NTIyOVowRzELMAkG A1UEBhMCSEsxFjAUBgNVBAoTDUhvbmdrb25nIFBvc3QxIDAeBgNVBAMTF0hvbmdr b25nIFBvc3QgUm9vdCBDQSAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC AQEArP84tulmAknjorThkPlAj3n54r15/gK97iSSHSL22oVyaf7XPwnU3ZG1ApzQ jVrhVcNQhrkpJsLj2aDxaQMoIIBFIi1WpztUlVYiWR8o3x8gPW2iNr4joLFutbEn PzlTCeqrauh0ssJlXI6/fMN4hM2eFvz1Lk8gKgifd/PFHsSaUmYeSF7jEAaPIpjh ZY4bXSNmO7ilMlHIhqqhqZ5/dpTCpmy3QfDVyAY45tQM4vM7TG1QjMSDJ8EThFk9 nnV0ttgCXjqQesBCNnLsak3c78QA3xMYV18meMjWCnl3v/evt3a5pQuEF10Q6m/h q5URX208o1xNg1vysxmKgIsLhwIDAQABoyYwJDASBgNVHRMBAf8ECDAGAQH/AgED MA4GA1UdDwEB/wQEAwIBxjANBgkqhkiG9w0BAQUFAAOCAQEADkbVPK7ih9legYsC mEEIjEy82tvuJxuC52pF7BaLT4Wg87JwvVqWuspube5Gi27nKi6Wsxkz67SfqLI3 7piol7Yutmcn1KZJ/RyTZXaeQi/cImyaT/JaFTmxcdcrUehtHJjA2Sr0oYJ71clB oiMBdDhViw+5LmeiIAQ32pwL0xch4I+XeTRvhEgCIDMb5jREn5Fw9IBehEPCKdJs EhTkYY2sEJCehFC78JZvRZ+K88psT/oROhUVRsPNH4NbLUES7VBnQRM9IauUiqpO fMGx+6fWtScvl6tu4B3i0RwsH0Ti/L6RoZz71ilTc4afU9hDDl3WY4JxHYB0yvbi AmvZWg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIHTzCCBTegAwIBAgIJAKPaQn6ksa7aMA0GCSqGSIb3DQEBBQUAMIGuMQswCQYD VQQGEwJFVTFDMEEGA1UEBxM6TWFkcmlkIChzZWUgY3VycmVudCBhZGRyZXNzIGF0 IHd3dy5jYW1lcmZpcm1hLmNvbS9hZGRyZXNzKTESMBAGA1UEBRMJQTgyNzQzMjg3 MRswGQYDVQQKExJBQyBDYW1lcmZpcm1hIFMuQS4xKTAnBgNVBAMTIENoYW1iZXJz IG9mIENvbW1lcmNlIFJvb3QgLSAyMDA4MB4XDTA4MDgwMTEyMjk1MFoXDTM4MDcz MTEyMjk1MFowga4xCzAJBgNVBAYTAkVVMUMwQQYDVQQHEzpNYWRyaWQgKHNlZSBj dXJyZW50IGFkZHJlc3MgYXQgd3d3LmNhbWVyZmlybWEuY29tL2FkZHJlc3MpMRIw EAYDVQQFEwlBODI3NDMyODcxGzAZBgNVBAoTEkFDIENhbWVyZmlybWEgUy5BLjEp MCcGA1UEAxMgQ2hhbWJlcnMgb2YgQ29tbWVyY2UgUm9vdCAtIDIwMDgwggIiMA0G CSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCvAMtwNyuAWko6bHiUfaN/Gh/2NdW9 28sNRHI+JrKQUrpjOyhYb6WzbZSm891kDFX29ufyIiKAXuFixrYp4YFs8r/lfTJq VKAyGVn+H4vXPWCGhSRv4xGzdz4gljUha7MI2XAuZPeEklPWDrCQiorjh40G072Q DuKZoRuGDtqaCrsLYVAGUvGef3bsyw/QHg3PmTA9HMRFEFis1tPo1+XqxQEHd9ZR 5gN/ikilTWh1uem8nk4ZcfUyS5xtYBkL+8ydddy/Js2Pk3g5eXNeJQ7KXOt3EgfL ZEFHcpOrUMPrCXZkNNI5t3YRCQ12RcSprj1qr7V9ZS+UWBDsXHyvfuK2GNnQm05a Sd+pZgvMPMZ4fKecHePOjlO+Bd5gD2vlGts/4+EhySnB8esHnFIbAURRPHsl18Tl UlRdJQfKFiC4reRB7noI/plvg6aRArBsNlVq5331lubKgdaX8ZSD6e2wsWsSaR6s +12pxZjptFtYer49okQ6Y1nUCyXeG0+95QGezdIp1Z8XGQpvvwyQ0wlf2eOKNcx5 Wk0ZN5K3xMGtr/R5JJqyAQuxr1yW84Ay+1w9mPGgP0revq+ULtlVmhduYJ1jbLhj ya6BXBg14JC7vjxPNyK5fuvPnnchpj04gftI2jE9K+OJ9dC1vX7gUMQSibMjmhAx hduub+84Mxh2EQIDAQABo4IBbDCCAWgwEgYDVR0TAQH/BAgwBgEB/wIBDDAdBgNV HQ4EFgQU+SSsD7K1+HnA+mCIG8TZTQKeFxkwgeMGA1UdIwSB2zCB2IAU+SSsD7K1 +HnA+mCIG8TZTQKeFxmhgbSkgbEwga4xCzAJBgNVBAYTAkVVMUMwQQYDVQQHEzpN YWRyaWQgKHNlZSBjdXJyZW50IGFkZHJlc3MgYXQgd3d3LmNhbWVyZmlybWEuY29t L2FkZHJlc3MpMRIwEAYDVQQFEwlBODI3NDMyODcxGzAZBgNVBAoTEkFDIENhbWVy ZmlybWEgUy5BLjEpMCcGA1UEAxMgQ2hhbWJlcnMgb2YgQ29tbWVyY2UgUm9vdCAt IDIwMDiCCQCj2kJ+pLGu2jAOBgNVHQ8BAf8EBAMCAQYwPQYDVR0gBDYwNDAyBgRV HSAAMCowKAYIKwYBBQUHAgEWHGh0dHA6Ly9wb2xpY3kuY2FtZXJmaXJtYS5jb20w DQYJKoZIhvcNAQEFBQADggIBAJASryI1wqM58C7e6bXpeHxIvj99RZJe6dqxGfwW PJ+0W2aeaufDuV2I6A+tzyMP3iU6XsxPpcG1Lawk0lgH3qLPaYRgM+gQDROpI9CF 5Y57pp49chNyM/WqfcZjHwj0/gF/JM8rLFQJ3uIrbZLGOU8W6jx+ekbURWpGqOt1 glanq6B8aBMz9p0w8G8nOSQjKpD9kCk18pPfNKXG9/jvjA9iSnyu0/VU+I22mlaH FoI6M6taIgj3grrqLuBHmrS1RaMFO9ncLkVAO+rcf+g769HsJtg1pDDFOqxXnrN2 pSB7+R5KBWIBpih1YJeSDW4+TTdDDZIVnBgizVGZoCkaPF+KMjNbMMeJL0eYD6MD xvbxrN8y8NmBGuScvfaAFPDRLLmF9dijscilIeUcE5fuDr3fKanvNFNb0+RqE4QG tjICxFKuItLcsiFCGtpA8CnJ7AoMXOLQusxI0zcKzBIKinmwPQN/aUv0NCB9szTq jktk9T79syNnFQ0EuPAtwQlRPLJsFfClI9eDdOTlLsn+mCdCxqvGnrDQWzilm1De fhiYtUU79nm06PcaewaD+9CL2rvHvRirCG88gGtAPxkZumWK5r7VXNM21+9AUiRg OGcEMeyP84LG3rlV8zsxkVrctQgVrXYlCg17LofiDKYGvCYQbTed7N14jHyAxfDZ d0jQ -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID9zCCAt+gAwIBAgIESJ8AATANBgkqhkiG9w0BAQUFADCBijELMAkGA1UEBhMC Q04xMjAwBgNVBAoMKUNoaW5hIEludGVybmV0IE5ldHdvcmsgSW5mb3JtYXRpb24g Q2VudGVyMUcwRQYDVQQDDD5DaGluYSBJbnRlcm5ldCBOZXR3b3JrIEluZm9ybWF0 aW9uIENlbnRlciBFViBDZXJ0aWZpY2F0ZXMgUm9vdDAeFw0xMDA4MzEwNzExMjVa Fw0zMDA4MzEwNzExMjVaMIGKMQswCQYDVQQGEwJDTjEyMDAGA1UECgwpQ2hpbmEg SW50ZXJuZXQgTmV0d29yayBJbmZvcm1hdGlvbiBDZW50ZXIxRzBFBgNVBAMMPkNo aW5hIEludGVybmV0IE5ldHdvcmsgSW5mb3JtYXRpb24gQ2VudGVyIEVWIENlcnRp ZmljYXRlcyBSb290MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAm35z 7r07eKpkQ0H1UN+U8i6yjUqORlTSIRLIOTJCBumD1Z9S7eVnAztUwYyZmczpwA// DdmEEbK40ctb3B75aDFk4Zv6dOtouSCV98YPjUesWgbdYavi7NifFy2cyjw1l1Vx zUOFsUcW9SxTgHbP0wBkvUCZ3czY28Sf1hNfQYOL+Q2HklY0bBoQCxfVWhyXWIQ8 hBouXJE0bhlffxdpxWXvayHG1VA6v2G5BY3vbzQ6sm8UY78WO5upKv23KzhmBsUs 4qpnHkWnjQRmQvaPK++IIGmPMowUc9orhpFjIpryp9vOiYurXccUwVswah+xt54u gQEC7c+WXmPbqOY4twIDAQABo2MwYTAfBgNVHSMEGDAWgBR8cks5x8DbYqVPm6oY NJKiyoOCWTAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4E FgQUfHJLOcfA22KlT5uqGDSSosqDglkwDQYJKoZIhvcNAQEFBQADggEBACrDx0M3 j92tpLIM7twUbY8opJhJywyA6vPtI2Z1fcXTIWd50XPFtQO3WKwMVC/GVhMPMdoG 52U7HW8228gd+f2ABsqjPWYWqJ1MFn3AlUa1UeTiH9fqBk1jjZaM7+czV0I664zB echNdn3e9rG3geCg+aF4RhcaVpjwTj2rHO3sOdwHSPdj/gauwqRcalsyiMXHM4Ws ZkJHwlgkmeHlPuV1LI5D1l08eB6olYIpUNHRFrrvwb562bTYzB5MRuF3sTGrvSrI zo9uoV1/A3U05K2JRVRevq4opbs/eHnrc7MKDf2+yfdWrPa37S+bISnHOLaVxATy wy39FCqQmbkHzJ8= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEAjCCAuqgAwIBAgIFORFFEJQwDQYJKoZIhvcNAQEFBQAwgYUxCzAJBgNVBAYT AkZSMQ8wDQYDVQQIEwZGcmFuY2UxDjAMBgNVBAcTBVBhcmlzMRAwDgYDVQQKEwdQ TS9TR0ROMQ4wDAYDVQQLEwVEQ1NTSTEOMAwGA1UEAxMFSUdDL0ExIzAhBgkqhkiG 9w0BCQEWFGlnY2FAc2dkbi5wbS5nb3V2LmZyMB4XDTAyMTIxMzE0MjkyM1oXDTIw MTAxNzE0MjkyMlowgYUxCzAJBgNVBAYTAkZSMQ8wDQYDVQQIEwZGcmFuY2UxDjAM BgNVBAcTBVBhcmlzMRAwDgYDVQQKEwdQTS9TR0ROMQ4wDAYDVQQLEwVEQ1NTSTEO MAwGA1UEAxMFSUdDL0ExIzAhBgkqhkiG9w0BCQEWFGlnY2FAc2dkbi5wbS5nb3V2 LmZyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsh/R0GLFMzvABIaI s9z4iPf930Pfeo2aSVz2TqrMHLmh6yeJ8kbpO0px1R2OLc/mratjUMdUC24SyZA2 xtgv2pGqaMVy/hcKshd+ebUyiHDKcMCWSo7kVc0dJ5S/znIq7Fz5cyD+vfcuiWe4 u0dzEvfRNWk68gq5rv9GQkaiv6GFGvm/5P9JhfejcIYyHF2fYPepraX/z9E0+X1b F8bc1g4oa8Ld8fUzaJ1O/Id8NhLWo4DoQw1VYZTqZDdH6nfK0LJYBcNdfrGoRpAx Vs5wKpayMLh35nnAvSk7/ZR3TL0gzUEl4C7HG7vupARB0l2tEmqKm0f7yd1GQOGd PDPQtQIDAQABo3cwdTAPBgNVHRMBAf8EBTADAQH/MAsGA1UdDwQEAwIBRjAVBgNV HSAEDjAMMAoGCCqBegF5AQEBMB0GA1UdDgQWBBSjBS8YYFDCiQrdKyFP/45OqDAx NjAfBgNVHSMEGDAWgBSjBS8YYFDCiQrdKyFP/45OqDAxNjANBgkqhkiG9w0BAQUF AAOCAQEABdwm2Pp3FURo/C9mOnTgXeQp/wYHE4RKq89toB9RlPhJy3Q2FLwV3duJ L92PoF189RLrn544pEfMs5bZvpwlqwN+Mw+VgQ39FuCIvjfwbF3QMZsyK10XZZOY YLxuj7GoPB7ZHPOpJkL5ZB3C55L29B5aqhlSXa/oovdgoPaN8In1buAKBQGVyYsg Crpa/JosPL3Dt8ldeCUFP1YUmwza+zpI/pdpXsoQhvdOlgQITeywvl3cO45Pwf2a NjSaTFR+FwNIlQgRHAdvhQh+XU3Endv7rs6y0bO4g2wdsrN58dhwmX7wEwLOXt1R 0982gaEbeC9xs/FZTEYYKKuF0mBWWg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF8TCCA9mgAwIBAgIQALC3WhZIX7/hy/WL1xnmfTANBgkqhkiG9w0BAQsFADA4 MQswCQYDVQQGEwJFUzEUMBIGA1UECgwLSVpFTlBFIFMuQS4xEzARBgNVBAMMCkl6 ZW5wZS5jb20wHhcNMDcxMjEzMTMwODI4WhcNMzcxMjEzMDgyNzI1WjA4MQswCQYD VQQGEwJFUzEUMBIGA1UECgwLSVpFTlBFIFMuQS4xEzARBgNVBAMMCkl6ZW5wZS5j b20wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDJ03rKDx6sp4boFmVq scIbRTJxldn+EFvMr+eleQGPicPK8lVx93e+d5TzcqQsRNiekpsUOqHnJJAKClaO xdgmlOHZSOEtPtoKct2jmRXagaKH9HtuJneJWK3W6wyyQXpzbm3benhB6QiIEn6H LmYRY2xU+zydcsC8Lv/Ct90NduM61/e0aL6i9eOBbsFGb12N4E3GVFWJGjMxCrFX uaOKmMPsOzTFlUFpfnXCPCDFYbpRR6AgkJOhkEvzTnyFRVSa0QUmQbC1TR0zvsQD yCV8wXDbO/QJLVQnSKwv4cSsPsjLkkxTOTcj7NMB+eAJRE1NZMDhDVqHIrytG6P+ JrUV86f8hBnp7KGItERphIPzidF0BqnMC9bC3ieFUCbKF7jJeodWLBoBHmy+E60Q rLUk9TiRodZL2vG70t5HtfG8gfZZa88ZU+mNFctKy6lvROUbQc/hhqfK0GqfvEyN BjNaooXlkDWgYlwWTvDjovoDGrQscbNYLN57C9saD+veIR8GdwYDsMnvmfzAuU8L hij+0rnq49qlw0dpEuDb8PYZi+17cNcC1u2HGCgsBCRMd+RIihrGO5rUD8r6ddIB QFqNeb+Lz0vPqhbBleStTIo+F5HUsWLlguWABKQDfo2/2n+iD5dPDNMN+9fR5XJ+ HMh3/1uaD7euBUbl8agW7EekFwIDAQABo4H2MIHzMIGwBgNVHREEgagwgaWBD2lu Zm9AaXplbnBlLmNvbaSBkTCBjjFHMEUGA1UECgw+SVpFTlBFIFMuQS4gLSBDSUYg QTAxMzM3MjYwLVJNZXJjLlZpdG9yaWEtR2FzdGVpeiBUMTA1NSBGNjIgUzgxQzBB BgNVBAkMOkF2ZGEgZGVsIE1lZGl0ZXJyYW5lbyBFdG9yYmlkZWEgMTQgLSAwMTAx MCBWaXRvcmlhLUdhc3RlaXowDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC AQYwHQYDVR0OBBYEFB0cZQ6o8iV7tJHP5LGx5r1VdGwFMA0GCSqGSIb3DQEBCwUA A4ICAQB4pgwWSp9MiDrAyw6lFn2fuUhfGI8NYjb2zRlrrKvV9pF9rnHzP7MOeIWb laQnIUdCSnxIOvVFfLMMjlF4rJUT3sb9fbgakEyrkgPH7UIBzg/YsfqikuFgba56 awmqxinuaElnMIAkejEWOVt+8Rwu3WwJrfIxwYJOubv5vr8qhT/AQKM6WfxZSzwo JNu0FXWuDYi6LnPAvViH5ULy617uHjAimcs30cQhbIHsvm0m5hzkQiCeR7Csg1lw LDXWrzY0tM07+DKo7+N4ifuNRSzanLh+QBxh5z6ikixL8s36mLYp//Pye6kfLqCT VyvehQP5aTfLnnhqBbTFMXiJ7HqnheG5ezzevh55hM6fcA5ZwjUukCox2eRFekGk LhObNA5me0mrZJfQRsN5nXJQY6aYWwa9SG3YOYNw6DXwBdGqvOPbyALqfP2C2sJb UjWumDqtujWTI6cfSN01RpiyEGjkpTHCClguGYEQyVB1/OpaFs4R1+7vUIgtYf8/ QnMFlEPVjjxOAToZpR9GTnfQXeWBIiGH/pR9hNiTrdZoQ0iy2+tzJOeRf1SktoA+ naM8THLCV8Sg1Mw4J87VBp6iSNnpn86CcDaTmjvfliHjWbcM2pE38P1ZWrOZyGls QyYBNWNgVYkDOnXYukrZVP/u3oDYLdE41V4tC5h9Pmzb/CaIxw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIE5jCCA86gAwIBAgIEO45L/DANBgkqhkiG9w0BAQUFADBdMRgwFgYJKoZIhvcN AQkBFglwa2lAc2suZWUxCzAJBgNVBAYTAkVFMSIwIAYDVQQKExlBUyBTZXJ0aWZp dHNlZXJpbWlza2Vza3VzMRAwDgYDVQQDEwdKdXVyLVNLMB4XDTAxMDgzMDE0MjMw MVoXDTE2MDgyNjE0MjMwMVowXTEYMBYGCSqGSIb3DQEJARYJcGtpQHNrLmVlMQsw CQYDVQQGEwJFRTEiMCAGA1UEChMZQVMgU2VydGlmaXRzZWVyaW1pc2tlc2t1czEQ MA4GA1UEAxMHSnV1ci1TSzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB AIFxNj4zB9bjMI0TfncyRsvPGbJgMUaXhvSYRqTCZUXP00B841oiqBB4M8yIsdOB SvZiF3tfTQou0M+LI+5PAk676w7KvRhj6IAcjeEcjT3g/1tf6mTll+g/mX8MCgkz ABpTpyHhOEvWgxutr2TC+Rx6jGZITWYfGAriPrsfB2WThbkasLnE+w0R9vXW+RvH LCu3GFH+4Hv2qEivbDtPL+/40UceJlfwUR0zlv/vWT3aTdEVNMfqPxZIe5EcgEMP PbgFPtGzlc3Yyg/CQ2fbt5PgIoIuvvVoKIO5wTtpeyDaTpxt4brNj3pssAki14sL 2xzVWiZbDcDq5WDQn/413z8CAwEAAaOCAawwggGoMA8GA1UdEwEB/wQFMAMBAf8w ggEWBgNVHSAEggENMIIBCTCCAQUGCisGAQQBzh8BAQEwgfYwgdAGCCsGAQUFBwIC MIHDHoHAAFMAZQBlACAAcwBlAHIAdABpAGYAaQBrAGEAYQB0ACAAbwBuACAAdgDk AGwAagBhAHMAdABhAHQAdQBkACAAQQBTAC0AaQBzACAAUwBlAHIAdABpAGYAaQB0 AHMAZQBlAHIAaQBtAGkAcwBrAGUAcwBrAHUAcwAgAGEAbABhAG0ALQBTAEsAIABz AGUAcgB0AGkAZgBpAGsAYQBhAHQAaQBkAGUAIABrAGkAbgBuAGkAdABhAG0AaQBz AGUAawBzMCEGCCsGAQUFBwIBFhVodHRwOi8vd3d3LnNrLmVlL2Nwcy8wKwYDVR0f BCQwIjAgoB6gHIYaaHR0cDovL3d3dy5zay5lZS9qdXVyL2NybC8wHQYDVR0OBBYE FASqekej5ImvGs8KQKcYP2/v6X2+MB8GA1UdIwQYMBaAFASqekej5ImvGs8KQKcY P2/v6X2+MA4GA1UdDwEB/wQEAwIB5jANBgkqhkiG9w0BAQUFAAOCAQEAe8EYlFOi CfP+JmeaUOTDBS8rNXiRTHyoERF5TElZrMj3hWVcRrs7EKACr81Ptcw2Kuxd/u+g kcm2k298gFTsxwhwDY77guwqYHhpNjbRxZyLabVAyJRld/JXIWY7zoVAtjNjGr95 HvxcHdMdkxuLDF2FvZkwMhgJkVLpfKG6/2SSmuz+Ne6ML678IIbsSt4beDI3poHS na9aEhbKmVv8b20OxaAehsmR0FyYgl9jDIpaq9iVpszLita/ZEuOyoqysOkhMp6q qIWYNIE5ITuoOlIyPfZrN4YGWhWY3PARZv40ILcD9EEQfTmEeZZyY7aWAuVrua0Z TbvGRNs2yyqcjg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIHqDCCBpCgAwIBAgIRAMy4579OKRr9otxmpRwsDxEwDQYJKoZIhvcNAQEFBQAw cjELMAkGA1UEBhMCSFUxETAPBgNVBAcTCEJ1ZGFwZXN0MRYwFAYDVQQKEw1NaWNy b3NlYyBMdGQuMRQwEgYDVQQLEwtlLVN6aWdubyBDQTEiMCAGA1UEAxMZTWljcm9z ZWMgZS1Temlnbm8gUm9vdCBDQTAeFw0wNTA0MDYxMjI4NDRaFw0xNzA0MDYxMjI4 NDRaMHIxCzAJBgNVBAYTAkhVMREwDwYDVQQHEwhCdWRhcGVzdDEWMBQGA1UEChMN TWljcm9zZWMgTHRkLjEUMBIGA1UECxMLZS1Temlnbm8gQ0ExIjAgBgNVBAMTGU1p Y3Jvc2VjIGUtU3ppZ25vIFJvb3QgQ0EwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw ggEKAoIBAQDtyADVgXvNOABHzNuEwSFpLHSQDCHZU4ftPkNEU6+r+ICbPHiN1I2u uO/TEdyB5s87lozWbxXGd36hL+BfkrYn13aaHUM86tnsL+4582pnS4uCzyL4ZVX+ LMsvfUh6PXX5qqAnu3jCBspRwn5mS6/NoqdNAoI/gqyFxuEPkEeZlApxcpMqyabA vjxWTHOSJ/FrtfX9/DAFYJLG65Z+AZHCabEeHXtTRbjcQR/Ji3HWVBTji1R4P770 Yjtb9aPs1ZJ04nQw7wHb4dSrmZsqa/i9phyGI0Jf7Enemotb9HI6QMVJPqW+jqpx 62z69Rrkav17fVVA71hu5tnVvCSrwe+3AgMBAAGjggQ3MIIEMzBnBggrBgEFBQcB AQRbMFkwKAYIKwYBBQUHMAGGHGh0dHBzOi8vcmNhLmUtc3ppZ25vLmh1L29jc3Aw LQYIKwYBBQUHMAKGIWh0dHA6Ly93d3cuZS1zemlnbm8uaHUvUm9vdENBLmNydDAP BgNVHRMBAf8EBTADAQH/MIIBcwYDVR0gBIIBajCCAWYwggFiBgwrBgEEAYGoGAIB AQEwggFQMCgGCCsGAQUFBwIBFhxodHRwOi8vd3d3LmUtc3ppZ25vLmh1L1NaU1ov MIIBIgYIKwYBBQUHAgIwggEUHoIBEABBACAAdABhAG4A+gBzAO0AdAB2AOEAbgB5 ACAA6QByAHQAZQBsAG0AZQB6AOkAcwDpAGgAZQB6ACAA6QBzACAAZQBsAGYAbwBn AGEAZADhAHMA4QBoAG8AegAgAGEAIABTAHoAbwBsAGcA4QBsAHQAYQB0APMAIABT AHoAbwBsAGcA4QBsAHQAYQB0AOEAcwBpACAAUwB6AGEAYgDhAGwAeQB6AGEAdABh ACAAcwB6AGUAcgBpAG4AdAAgAGsAZQBsAGwAIABlAGwAagDhAHIAbgBpADoAIABo AHQAdABwADoALwAvAHcAdwB3AC4AZQAtAHMAegBpAGcAbgBvAC4AaAB1AC8AUwBa AFMAWgAvMIHIBgNVHR8EgcAwgb0wgbqggbeggbSGIWh0dHA6Ly93d3cuZS1zemln bm8uaHUvUm9vdENBLmNybIaBjmxkYXA6Ly9sZGFwLmUtc3ppZ25vLmh1L0NOPU1p Y3Jvc2VjJTIwZS1Temlnbm8lMjBSb290JTIwQ0EsT1U9ZS1Temlnbm8lMjBDQSxP PU1pY3Jvc2VjJTIwTHRkLixMPUJ1ZGFwZXN0LEM9SFU/Y2VydGlmaWNhdGVSZXZv Y2F0aW9uTGlzdDtiaW5hcnkwDgYDVR0PAQH/BAQDAgEGMIGWBgNVHREEgY4wgYuB EGluZm9AZS1zemlnbm8uaHWkdzB1MSMwIQYDVQQDDBpNaWNyb3NlYyBlLVN6aWdu w7MgUm9vdCBDQTEWMBQGA1UECwwNZS1TemlnbsOzIEhTWjEWMBQGA1UEChMNTWlj cm9zZWMgS2Z0LjERMA8GA1UEBxMIQnVkYXBlc3QxCzAJBgNVBAYTAkhVMIGsBgNV HSMEgaQwgaGAFMegSXUWYYTbMUuE0vE3QJDvTtz3oXakdDByMQswCQYDVQQGEwJI VTERMA8GA1UEBxMIQnVkYXBlc3QxFjAUBgNVBAoTDU1pY3Jvc2VjIEx0ZC4xFDAS BgNVBAsTC2UtU3ppZ25vIENBMSIwIAYDVQQDExlNaWNyb3NlYyBlLVN6aWdubyBS b290IENBghEAzLjnv04pGv2i3GalHCwPETAdBgNVHQ4EFgQUx6BJdRZhhNsxS4TS 8TdAkO9O3PcwDQYJKoZIhvcNAQEFBQADggEBANMTnGZjWS7KXHAM/IO8VbH0jgds ZifOwTsgqRy7RlRw7lrMoHfqaEQn6/Ip3Xep1fvj1KcExJW4C+FEaGAHQzAxQmHl 7tnlJNUb3+FKG6qfx1/4ehHqE5MAyopYse7tDk2016g2JnzgOsHVV4Lxdbb9iV/a 86g4nzUGCM4ilb7N1fy+W955a9x6qWVmvrElWl/tftOsRm1M9DKHtCAE4Gx4sHfR hUZLphK3dehKyVZs15KrnfVJONJPU+NVkBHbmJbGSfI+9J8b4PeI3CVimUTYc78/ MPMMNz7UwiiAc7EBt51alhQBS6kRnSlqLtBdgcDPsiBDxwPgN05dCtxZICU= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIECjCCAvKgAwIBAgIJAMJ+QwRORz8ZMA0GCSqGSIb3DQEBCwUAMIGCMQswCQYD VQQGEwJIVTERMA8GA1UEBwwIQnVkYXBlc3QxFjAUBgNVBAoMDU1pY3Jvc2VjIEx0 ZC4xJzAlBgNVBAMMHk1pY3Jvc2VjIGUtU3ppZ25vIFJvb3QgQ0EgMjAwOTEfMB0G CSqGSIb3DQEJARYQaW5mb0BlLXN6aWduby5odTAeFw0wOTA2MTYxMTMwMThaFw0y OTEyMzAxMTMwMThaMIGCMQswCQYDVQQGEwJIVTERMA8GA1UEBwwIQnVkYXBlc3Qx FjAUBgNVBAoMDU1pY3Jvc2VjIEx0ZC4xJzAlBgNVBAMMHk1pY3Jvc2VjIGUtU3pp Z25vIFJvb3QgQ0EgMjAwOTEfMB0GCSqGSIb3DQEJARYQaW5mb0BlLXN6aWduby5o dTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOn4j/NjrdqG2KfgQvvP kd6mJviZpWNwrZuuyjNAfW2WbqEORO7hE52UQlKavXWFdCyoDh2Tthi3jCyoz/tc cbna7P7ofo/kLx2yqHWH2Leh5TvPmUpG0IMZfcChEhyVbUr02MelTTMuhTlAdX4U fIASmFDHQWe4oIBhVKZsTh/gnQ4H6cm6M+f+wFUoLAKApxn1ntxVUwOXewdI/5n7 N4okxFnMUBBjjqqpGrCEGob5X7uxUG6k0QrM1XF+H6cbfPVTbiJfyyvm1HxdrtbC xkzlBQHZ7Vf8wSN5/PrIJIOV87VqUQHQd9bpEqH5GoP7ghu5sJf0dgYzQ0mg/wu1 +rUCAwEAAaOBgDB+MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0G A1UdDgQWBBTLD8bfQkPMPcu1SCOhGnqmKrs0aDAfBgNVHSMEGDAWgBTLD8bfQkPM Pcu1SCOhGnqmKrs0aDAbBgNVHREEFDASgRBpbmZvQGUtc3ppZ25vLmh1MA0GCSqG SIb3DQEBCwUAA4IBAQDJ0Q5eLtXMs3w+y/w9/w0olZMEyL/azXm4Q5DwpL7v8u8h mLzU1F0G9u5C7DBsoKqpyvGvivo/C3NqPuouQH4frlRheesuCDfXI/OMn74dseGk ddug4lQUsbocKaQY9hK6ohQU4zE1yED/t+AFdlfBHFny+L/k7SViXITwfn4fs775 tyERzAMBVnCnEJIeGzSBHq2cGsMEPO0CYdYeBvNfOofyK/FFh+U9rNHHV4S9a67c 2Pm2G2JwCz02yULyMtd6YebS2z3PyKnJm9zbWETXbzivf3jTo60adbocwTZ8jx5t HMN1Rq41Bab2XD0h7lbwyYIiLXpUq3DDfSJlgnCW -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEFTCCAv2gAwIBAgIGSUEs5AAQMA0GCSqGSIb3DQEBCwUAMIGnMQswCQYDVQQG EwJIVTERMA8GA1UEBwwIQnVkYXBlc3QxFTATBgNVBAoMDE5ldExvY2sgS2Z0LjE3 MDUGA1UECwwuVGFuw7pzw610dsOhbnlraWFkw7NrIChDZXJ0aWZpY2F0aW9uIFNl cnZpY2VzKTE1MDMGA1UEAwwsTmV0TG9jayBBcmFueSAoQ2xhc3MgR29sZCkgRsWR dGFuw7pzw610dsOhbnkwHhcNMDgxMjExMTUwODIxWhcNMjgxMjA2MTUwODIxWjCB pzELMAkGA1UEBhMCSFUxETAPBgNVBAcMCEJ1ZGFwZXN0MRUwEwYDVQQKDAxOZXRM b2NrIEtmdC4xNzA1BgNVBAsMLlRhbsO6c8OtdHbDoW55a2lhZMOzayAoQ2VydGlm aWNhdGlvbiBTZXJ2aWNlcykxNTAzBgNVBAMMLE5ldExvY2sgQXJhbnkgKENsYXNz IEdvbGQpIEbFkXRhbsO6c8OtdHbDoW55MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A MIIBCgKCAQEAxCRec75LbRTDofTjl5Bu0jBFHjzuZ9lk4BqKf8owyoPjIMHj9DrT lF8afFttvzBPhCf2nx9JvMaZCpDyD/V/Q4Q3Y1GLeqVw/HpYzY6b7cNGbIRwXdrz AZAj/E4wqX7hJ2Pn7WQ8oLjJM2P+FpD/sLj916jAwJRDC7bVWaaeVtAkH3B5r9s5 VA1lddkVQZQBr17s9o3x/61k/iCa11zr/qYfCGSji3ZVrR47KGAuhyXoqq8fxmRG ILdwfzzeSNuWU7c5d+Qa4scWhHaXWy+7GRWF+GmF9ZmnqfI0p6m2pgP8b4Y9VHx2 BJtr+UBdADTHLpl1neWIA6pN+APSQnbAGwIDAKiLo0UwQzASBgNVHRMBAf8ECDAG AQH/AgEEMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUzPpnk/C2uNClwB7zU/2M U9+D15YwDQYJKoZIhvcNAQELBQADggEBAKt/7hwWqZw8UQCgwBEIBaeZ5m8BiFRh bvG5GK1Krf6BQCOUL/t1fC8oS2IkgYIL9WHxHG64YTjrgfpioTtaYtOUZcTh5m2C +C8lcLIhJsFyUR+MLMOEkMNaj7rP9KdlpeuY0fsFskZ1FSNqb4VjMIDw1Z4fKRzC bLBQWV2QWzuoDTDPv31/zvGdg73JRm4gpvlhUbohL3u+pRVjodSVh/GeufOJ8z2F uLjbvrW5KfnaNwUASZQDhETnv0Mxz3WLJdH0pmT1kvarBes96aULNmLazAZfNou2 XjG4Kvte9nHfRCaexOYNkbQudZWAUWpLMKawYqGT8ZvYzsRjdT9ZR7E= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFSzCCBLSgAwIBAgIBaTANBgkqhkiG9w0BAQQFADCBmTELMAkGA1UEBhMCSFUx ETAPBgNVBAcTCEJ1ZGFwZXN0MScwJQYDVQQKEx5OZXRMb2NrIEhhbG96YXRiaXp0 b25zYWdpIEtmdC4xGjAYBgNVBAsTEVRhbnVzaXR2YW55a2lhZG9rMTIwMAYDVQQD EylOZXRMb2NrIFV6bGV0aSAoQ2xhc3MgQikgVGFudXNpdHZhbnlraWFkbzAeFw05 OTAyMjUxNDEwMjJaFw0xOTAyMjAxNDEwMjJaMIGZMQswCQYDVQQGEwJIVTERMA8G A1UEBxMIQnVkYXBlc3QxJzAlBgNVBAoTHk5ldExvY2sgSGFsb3phdGJpenRvbnNh Z2kgS2Z0LjEaMBgGA1UECxMRVGFudXNpdHZhbnlraWFkb2sxMjAwBgNVBAMTKU5l dExvY2sgVXpsZXRpIChDbGFzcyBCKSBUYW51c2l0dmFueWtpYWRvMIGfMA0GCSqG SIb3DQEBAQUAA4GNADCBiQKBgQCx6gTsIKAjwo84YM/HRrPVG/77uZmeBNwcf4xK gZjupNTKihe5In+DCnVMm8Bp2GQ5o+2So/1bXHQawEfKOml2mrriRBf8TKPV/riX iK+IA4kfpPIEPsgHC+b5sy96YhQJRhTKZPWLgLViqNhr1nGTLbO/CVRY7QbrqHvc Q7GhaQIDAQABo4ICnzCCApswEgYDVR0TAQH/BAgwBgEB/wIBBDAOBgNVHQ8BAf8E BAMCAAYwEQYJYIZIAYb4QgEBBAQDAgAHMIICYAYJYIZIAYb4QgENBIICURaCAk1G SUdZRUxFTSEgRXplbiB0YW51c2l0dmFueSBhIE5ldExvY2sgS2Z0LiBBbHRhbGFu b3MgU3pvbGdhbHRhdGFzaSBGZWx0ZXRlbGVpYmVuIGxlaXJ0IGVsamFyYXNvayBh bGFwamFuIGtlc3p1bHQuIEEgaGl0ZWxlc2l0ZXMgZm9seWFtYXRhdCBhIE5ldExv Y2sgS2Z0LiB0ZXJtZWtmZWxlbG9zc2VnLWJpenRvc2l0YXNhIHZlZGkuIEEgZGln aXRhbGlzIGFsYWlyYXMgZWxmb2dhZGFzYW5hayBmZWx0ZXRlbGUgYXogZWxvaXJ0 IGVsbGVub3J6ZXNpIGVsamFyYXMgbWVndGV0ZWxlLiBBeiBlbGphcmFzIGxlaXJh c2EgbWVndGFsYWxoYXRvIGEgTmV0TG9jayBLZnQuIEludGVybmV0IGhvbmxhcGph biBhIGh0dHBzOi8vd3d3Lm5ldGxvY2submV0L2RvY3MgY2ltZW4gdmFneSBrZXJo ZXRvIGF6IGVsbGVub3J6ZXNAbmV0bG9jay5uZXQgZS1tYWlsIGNpbWVuLiBJTVBP UlRBTlQhIFRoZSBpc3N1YW5jZSBhbmQgdGhlIHVzZSBvZiB0aGlzIGNlcnRpZmlj YXRlIGlzIHN1YmplY3QgdG8gdGhlIE5ldExvY2sgQ1BTIGF2YWlsYWJsZSBhdCBo dHRwczovL3d3dy5uZXRsb2NrLm5ldC9kb2NzIG9yIGJ5IGUtbWFpbCBhdCBjcHNA bmV0bG9jay5uZXQuMA0GCSqGSIb3DQEBBAUAA4GBAATbrowXr/gOkDFOzT4JwG06 sPgzTEdM43WIEJessDgVkcYplswhwG08pXTP2IKlOcNl40JwuyKQ433bNXbhoLXa n3BukxowOR0w2y7jfLKRstE3Kfq51hdcR0/jHTjrn9V7lagonhVK0dHQKwCXoOKS NitjrFgBazMpUIaD8QFI -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFTzCCBLigAwIBAgIBaDANBgkqhkiG9w0BAQQFADCBmzELMAkGA1UEBhMCSFUx ETAPBgNVBAcTCEJ1ZGFwZXN0MScwJQYDVQQKEx5OZXRMb2NrIEhhbG96YXRiaXp0 b25zYWdpIEtmdC4xGjAYBgNVBAsTEVRhbnVzaXR2YW55a2lhZG9rMTQwMgYDVQQD EytOZXRMb2NrIEV4cHJlc3N6IChDbGFzcyBDKSBUYW51c2l0dmFueWtpYWRvMB4X DTk5MDIyNTE0MDgxMVoXDTE5MDIyMDE0MDgxMVowgZsxCzAJBgNVBAYTAkhVMREw DwYDVQQHEwhCdWRhcGVzdDEnMCUGA1UEChMeTmV0TG9jayBIYWxvemF0Yml6dG9u c2FnaSBLZnQuMRowGAYDVQQLExFUYW51c2l0dmFueWtpYWRvazE0MDIGA1UEAxMr TmV0TG9jayBFeHByZXNzeiAoQ2xhc3MgQykgVGFudXNpdHZhbnlraWFkbzCBnzAN BgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA6+ywbGGKIyWvYCDj2Z/8kwvbXY2wobNA OoLO/XXgeDIDhlqGlZHtU/qdQPzm6N3ZW3oDvV3zOwzDUXmbrVWg6dADEK8KuhRC 2VImESLH0iDMgqSaqf64gXadarfSNnU+sYYJ9m5tfk63euyucYT2BDMIJTLrdKwW RMbkQJMdf60CAwEAAaOCAp8wggKbMBIGA1UdEwEB/wQIMAYBAf8CAQQwDgYDVR0P AQH/BAQDAgAGMBEGCWCGSAGG+EIBAQQEAwIABzCCAmAGCWCGSAGG+EIBDQSCAlEW ggJNRklHWUVMRU0hIEV6ZW4gdGFudXNpdHZhbnkgYSBOZXRMb2NrIEtmdC4gQWx0 YWxhbm9zIFN6b2xnYWx0YXRhc2kgRmVsdGV0ZWxlaWJlbiBsZWlydCBlbGphcmFz b2sgYWxhcGphbiBrZXN6dWx0LiBBIGhpdGVsZXNpdGVzIGZvbHlhbWF0YXQgYSBO ZXRMb2NrIEtmdC4gdGVybWVrZmVsZWxvc3NlZy1iaXp0b3NpdGFzYSB2ZWRpLiBB IGRpZ2l0YWxpcyBhbGFpcmFzIGVsZm9nYWRhc2FuYWsgZmVsdGV0ZWxlIGF6IGVs b2lydCBlbGxlbm9yemVzaSBlbGphcmFzIG1lZ3RldGVsZS4gQXogZWxqYXJhcyBs ZWlyYXNhIG1lZ3RhbGFsaGF0byBhIE5ldExvY2sgS2Z0LiBJbnRlcm5ldCBob25s YXBqYW4gYSBodHRwczovL3d3dy5uZXRsb2NrLm5ldC9kb2NzIGNpbWVuIHZhZ3kg a2VyaGV0byBheiBlbGxlbm9yemVzQG5ldGxvY2submV0IGUtbWFpbCBjaW1lbi4g SU1QT1JUQU5UISBUaGUgaXNzdWFuY2UgYW5kIHRoZSB1c2Ugb2YgdGhpcyBjZXJ0 aWZpY2F0ZSBpcyBzdWJqZWN0IHRvIHRoZSBOZXRMb2NrIENQUyBhdmFpbGFibGUg YXQgaHR0cHM6Ly93d3cubmV0bG9jay5uZXQvZG9jcyBvciBieSBlLW1haWwgYXQg Y3BzQG5ldGxvY2submV0LjANBgkqhkiG9w0BAQQFAAOBgQAQrX/XDDKACtiG8XmY ta3UzbM2xJZIwVzNmtkFLp++UOv0JhQQLdRmF/iewSf98e3ke0ugbLWrmldwpu2g pO0u9f38vf5NNwgMvOOWgyL1SRt/Syu0VMGAfJlOHdCM7tCs5ZL6dVb+ZKATj7i4 Fp1hBWeAyNDYpQcCNJgEjTME1A== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIGfTCCBWWgAwIBAgICAQMwDQYJKoZIhvcNAQEEBQAwga8xCzAJBgNVBAYTAkhV MRAwDgYDVQQIEwdIdW5nYXJ5MREwDwYDVQQHEwhCdWRhcGVzdDEnMCUGA1UEChMe TmV0TG9jayBIYWxvemF0Yml6dG9uc2FnaSBLZnQuMRowGAYDVQQLExFUYW51c2l0 dmFueWtpYWRvazE2MDQGA1UEAxMtTmV0TG9jayBLb3pqZWd5em9pIChDbGFzcyBB KSBUYW51c2l0dmFueWtpYWRvMB4XDTk5MDIyNDIzMTQ0N1oXDTE5MDIxOTIzMTQ0 N1owga8xCzAJBgNVBAYTAkhVMRAwDgYDVQQIEwdIdW5nYXJ5MREwDwYDVQQHEwhC dWRhcGVzdDEnMCUGA1UEChMeTmV0TG9jayBIYWxvemF0Yml6dG9uc2FnaSBLZnQu MRowGAYDVQQLExFUYW51c2l0dmFueWtpYWRvazE2MDQGA1UEAxMtTmV0TG9jayBL b3pqZWd5em9pIChDbGFzcyBBKSBUYW51c2l0dmFueWtpYWRvMIIBIjANBgkqhkiG 9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvHSMD7tM9DceqQWC2ObhbHDqeLVu0ThEDaiD zl3S1tWBxdRL51uUcCbbO51qTGL3cfNk1mE7PetzozfZz+qMkjvN9wfcZnSX9EUi 3fRc4L9t875lM+QVOr/bmJBVOMTtplVjC7B4BPTjbsE/jvxReB+SnoPC/tmwqcm8 WgD/qaiYdPv2LD4VOQ22BFWoDpggQrOxJa1+mm9dU7GrDPzr4PN6s6iz/0b2Y6LY Oph7tqyF/7AlT3Rj5xMHpQqPBffAZG9+pyeAlt7ULoZgx2srXnN7F+eRP2QM2Esi NCubMvJIH5+hCoR64sKtlz2O1cH5VqNQ6ca0+pii7pXmKgOM3wIDAQABo4ICnzCC ApswDgYDVR0PAQH/BAQDAgAGMBIGA1UdEwEB/wQIMAYBAf8CAQQwEQYJYIZIAYb4 QgEBBAQDAgAHMIICYAYJYIZIAYb4QgENBIICURaCAk1GSUdZRUxFTSEgRXplbiB0 YW51c2l0dmFueSBhIE5ldExvY2sgS2Z0LiBBbHRhbGFub3MgU3pvbGdhbHRhdGFz aSBGZWx0ZXRlbGVpYmVuIGxlaXJ0IGVsamFyYXNvayBhbGFwamFuIGtlc3p1bHQu IEEgaGl0ZWxlc2l0ZXMgZm9seWFtYXRhdCBhIE5ldExvY2sgS2Z0LiB0ZXJtZWtm ZWxlbG9zc2VnLWJpenRvc2l0YXNhIHZlZGkuIEEgZGlnaXRhbGlzIGFsYWlyYXMg ZWxmb2dhZGFzYW5hayBmZWx0ZXRlbGUgYXogZWxvaXJ0IGVsbGVub3J6ZXNpIGVs amFyYXMgbWVndGV0ZWxlLiBBeiBlbGphcmFzIGxlaXJhc2EgbWVndGFsYWxoYXRv IGEgTmV0TG9jayBLZnQuIEludGVybmV0IGhvbmxhcGphbiBhIGh0dHBzOi8vd3d3 Lm5ldGxvY2submV0L2RvY3MgY2ltZW4gdmFneSBrZXJoZXRvIGF6IGVsbGVub3J6 ZXNAbmV0bG9jay5uZXQgZS1tYWlsIGNpbWVuLiBJTVBPUlRBTlQhIFRoZSBpc3N1 YW5jZSBhbmQgdGhlIHVzZSBvZiB0aGlzIGNlcnRpZmljYXRlIGlzIHN1YmplY3Qg dG8gdGhlIE5ldExvY2sgQ1BTIGF2YWlsYWJsZSBhdCBodHRwczovL3d3dy5uZXRs b2NrLm5ldC9kb2NzIG9yIGJ5IGUtbWFpbCBhdCBjcHNAbmV0bG9jay5uZXQuMA0G CSqGSIb3DQEBBAUAA4IBAQBIJEb3ulZv+sgoA0BO5TE5ayZrU3/b39/zcT0mwBQO xmd7I6gMc90Bu8bKbjc5VdXHjFYgDigKDtIqpLBJUsY4B/6+CgmM0ZjPytoUMaFP 0jn8DxEsQ8Pdq5PHVT5HfBgaANzze9jyf1JsIPQLX2lS9O74silg6+NJMSEN1rUQ QeJBCWziGppWS3cC9qCbmieH6FUpccKQn0V4GuEVZD3QDtigdp+uxdAu6tYPVuxk f1qbFFgBJ34TUMdrKuZoPL9coAob4Q566eKAw+np9v1sEZ7Q5SgnK1QyQhSCdeZK 8CtmdWOMovsEPoMOmzbwGOQmIMOM8CgHrTwXZoi1/baI -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIG0TCCBbmgAwIBAgIBezANBgkqhkiG9w0BAQUFADCByTELMAkGA1UEBhMCSFUx ETAPBgNVBAcTCEJ1ZGFwZXN0MScwJQYDVQQKEx5OZXRMb2NrIEhhbG96YXRiaXp0 b25zYWdpIEtmdC4xGjAYBgNVBAsTEVRhbnVzaXR2YW55a2lhZG9rMUIwQAYDVQQD EzlOZXRMb2NrIE1pbm9zaXRldHQgS296amVneXpvaSAoQ2xhc3MgUUEpIFRhbnVz aXR2YW55a2lhZG8xHjAcBgkqhkiG9w0BCQEWD2luZm9AbmV0bG9jay5odTAeFw0w MzAzMzAwMTQ3MTFaFw0yMjEyMTUwMTQ3MTFaMIHJMQswCQYDVQQGEwJIVTERMA8G A1UEBxMIQnVkYXBlc3QxJzAlBgNVBAoTHk5ldExvY2sgSGFsb3phdGJpenRvbnNh Z2kgS2Z0LjEaMBgGA1UECxMRVGFudXNpdHZhbnlraWFkb2sxQjBABgNVBAMTOU5l dExvY2sgTWlub3NpdGV0dCBLb3pqZWd5em9pIChDbGFzcyBRQSkgVGFudXNpdHZh bnlraWFkbzEeMBwGCSqGSIb3DQEJARYPaW5mb0BuZXRsb2NrLmh1MIIBIjANBgkq hkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAx1Ilstg91IRVCacbvWy5FPSKAtt2/Goq eKvld/Bu4IwjZ9ulZJm53QE+b+8tmjwi8F3JV6BVQX/yQ15YglMxZc4e8ia6AFQe r7C8HORSjKAyr7c3sVNnaHRnUPYtLmTeriZ539+Zhqurf4XsoPuAzPS4DB6TRWO5 3Lhbm+1bOdRfYrCnjnxmOCyqsQhjF2d9zL2z8cM/z1A57dEZgxXbhxInlrfa6uWd vLrqOU+L73Sa58XQ0uqGURzk/mQIKAR5BevKxXEOC++r6uwSEaEYBTJp0QwsGj0l mT+1fMptsK6ZmfoIYOcZwvK9UdPM0wKswREMgM6r3JSda6M5UzrWhQIDAMV9o4IC wDCCArwwEgYDVR0TAQH/BAgwBgEB/wIBBDAOBgNVHQ8BAf8EBAMCAQYwggJ1Bglg hkgBhvhCAQ0EggJmFoICYkZJR1lFTEVNISBFemVuIHRhbnVzaXR2YW55IGEgTmV0 TG9jayBLZnQuIE1pbm9zaXRldHQgU3pvbGdhbHRhdGFzaSBTemFiYWx5emF0YWJh biBsZWlydCBlbGphcmFzb2sgYWxhcGphbiBrZXN6dWx0LiBBIG1pbm9zaXRldHQg ZWxla3Ryb25pa3VzIGFsYWlyYXMgam9naGF0YXMgZXJ2ZW55ZXN1bGVzZW5laywg dmFsYW1pbnQgZWxmb2dhZGFzYW5hayBmZWx0ZXRlbGUgYSBNaW5vc2l0ZXR0IFN6 b2xnYWx0YXRhc2kgU3phYmFseXphdGJhbiwgYXogQWx0YWxhbm9zIFN6ZXJ6b2Rl c2kgRmVsdGV0ZWxla2JlbiBlbG9pcnQgZWxsZW5vcnplc2kgZWxqYXJhcyBtZWd0 ZXRlbGUuIEEgZG9rdW1lbnR1bW9rIG1lZ3RhbGFsaGF0b2sgYSBodHRwczovL3d3 dy5uZXRsb2NrLmh1L2RvY3MvIGNpbWVuIHZhZ3kga2VyaGV0b2sgYXogaW5mb0Bu ZXRsb2NrLm5ldCBlLW1haWwgY2ltZW4uIFdBUk5JTkchIFRoZSBpc3N1YW5jZSBh bmQgdGhlIHVzZSBvZiB0aGlzIGNlcnRpZmljYXRlIGFyZSBzdWJqZWN0IHRvIHRo ZSBOZXRMb2NrIFF1YWxpZmllZCBDUFMgYXZhaWxhYmxlIGF0IGh0dHBzOi8vd3d3 Lm5ldGxvY2suaHUvZG9jcy8gb3IgYnkgZS1tYWlsIGF0IGluZm9AbmV0bG9jay5u ZXQwHQYDVR0OBBYEFAlqYhaSsFq7VQ7LdTI6MuWyIckoMA0GCSqGSIb3DQEBBQUA A4IBAQCRalCc23iBmz+LQuM7/KbD7kPgz/PigDVJRXYC4uMvBcXxKufAQTPGtpvQ MznNwNuhrWw3AkxYQTvyl5LGSKjN5Yo5iWH5Upfpvfb5lHTocQ68d4bDBsxafEp+ NFAwLvt/MpqNPfMgW/hqyobzMUwsWYACff44yTB1HLdV47yfuqhthCgFdbOLDcCR VCHnpgu0mfVRQdzNo0ci2ccBgcTcR08m6h/t280NmPSjnLRzMkqWmf68f8glWPhY 83ZmiVSkpj7EUFy6iRiCdUgh0k8T6GB+B3bbELVR5qq5aKrN9p2QdRLqOBrKROi3 macqaJVmlaut74nLYKkGEsaUR+ko -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID5jCCAs6gAwIBAgIQV8szb8JcFuZHFhfjkDFo4DANBgkqhkiG9w0BAQUFADBi MQswCQYDVQQGEwJVUzEhMB8GA1UEChMYTmV0d29yayBTb2x1dGlvbnMgTC5MLkMu MTAwLgYDVQQDEydOZXR3b3JrIFNvbHV0aW9ucyBDZXJ0aWZpY2F0ZSBBdXRob3Jp dHkwHhcNMDYxMjAxMDAwMDAwWhcNMjkxMjMxMjM1OTU5WjBiMQswCQYDVQQGEwJV UzEhMB8GA1UEChMYTmV0d29yayBTb2x1dGlvbnMgTC5MLkMuMTAwLgYDVQQDEydO ZXR3b3JrIFNvbHV0aW9ucyBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDkvH6SMG3G2I4rC7xGzuAnlt7e+foS0zwz c7MEL7xxjOWftiJgPl9dzgn/ggwbmlFQGiaJ3dVhXRncEg8tCqJDXRfQNJIg6nPP OCwGJgl6cvf6UDL4wpPTaaIjzkGxzOTVHzbRijr4jGPiFFlp7Q3Tf2vouAPlT2rl mGNpSAW+Lv8ztumXWWn4Zxmuk2GWRBXTcrA/vGp97Eh/jcOrqnErU2lBUzS1sLnF BgrEsEX1QV1uiUV7PTsmjHTC5dLRfbIR1PtYMiKagMnc/Qzpf14Dl847ABSHJ3A4 qY5usyd2mFHgBeMhqxrVhSI8KbWaFsWAqPS7azCPL0YCorEMIuDTAgMBAAGjgZcw gZQwHQYDVR0OBBYEFCEwyfsA106Y2oeqKtCnLrFAMadMMA4GA1UdDwEB/wQEAwIB BjAPBgNVHRMBAf8EBTADAQH/MFIGA1UdHwRLMEkwR6BFoEOGQWh0dHA6Ly9jcmwu bmV0c29sc3NsLmNvbS9OZXR3b3JrU29sdXRpb25zQ2VydGlmaWNhdGVBdXRob3Jp dHkuY3JsMA0GCSqGSIb3DQEBBQUAA4IBAQC7rkvnt1frf6ott3NHhWrB5KUd5Oc8 6fRZZXe1eltajSU24HqXLjjAV2CDmAaDn7l2em5Q4LqILPxFzBiwmZVRDuwduIj/ h1AcgsLj4DKAv6ALR8jDMe+ZZzKATxcheQxpXN5eNK4CtSbqUN9/GGUsyfJj4akH /nxxH2szJGoeBfcFaMBqEssuXmHLrijTfsK0ZpEmXzwuJF/LWA/rKOyvEZbz3Htv wKeI8lN3s2Berq4o2jUsbzRF0ybh3uxbTydrFny9RAQYgrOJeRcQcT16ohZO9QHN pGxlaKFJdlxDydi8NmdspZS11My5vWo1ViHe2MPr+8ukYEywVaCge1ey -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID8TCCAtmgAwIBAgIQQT1yx/RrH4FDffHSKFTfmjANBgkqhkiG9w0BAQUFADCB ijELMAkGA1UEBhMCQ0gxEDAOBgNVBAoTB1dJU2VLZXkxGzAZBgNVBAsTEkNvcHly aWdodCAoYykgMjAwNTEiMCAGA1UECxMZT0lTVEUgRm91bmRhdGlvbiBFbmRvcnNl ZDEoMCYGA1UEAxMfT0lTVEUgV0lTZUtleSBHbG9iYWwgUm9vdCBHQSBDQTAeFw0w NTEyMTExNjAzNDRaFw0zNzEyMTExNjA5NTFaMIGKMQswCQYDVQQGEwJDSDEQMA4G A1UEChMHV0lTZUtleTEbMBkGA1UECxMSQ29weXJpZ2h0IChjKSAyMDA1MSIwIAYD VQQLExlPSVNURSBGb3VuZGF0aW9uIEVuZG9yc2VkMSgwJgYDVQQDEx9PSVNURSBX SVNlS2V5IEdsb2JhbCBSb290IEdBIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A MIIBCgKCAQEAy0+zAJs9Nt350UlqaxBJH+zYK7LG+DKBKUOVTJoZIyEVRd7jyBxR VVuuk+g3/ytr6dTqvirdqFEr12bDYVxgAsj1znJ7O7jyTmUIms2kahnBAbtzptf2 w93NvKSLtZlhuAGio9RN1AU9ka34tAhxZK9w8RxrfvbDd50kc3vkDIzh2TbhmYsF mQvtRTEJysIA2/dyoJaqlYfQjse2YXMNdmaM3Bu0Y6Kff5MTMPGhJ9vZ/yxViJGg 4E8HsChWjBgbl0SOid3gF27nKu+POQoxhILYQBRJLnpB5Kf+42TMwVlxSywhp1t9 4B3RLoGbw9ho972WG6xwsRYUC9tguSYBBQIDAQABo1EwTzALBgNVHQ8EBAMCAYYw DwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUswN+rja8sHnR3JQmthG+IbJphpQw EAYJKwYBBAGCNxUBBAMCAQAwDQYJKoZIhvcNAQEFBQADggEBAEuh/wuHbrP5wUOx SPMowB0uyQlB+pQAHKSkq0lPjz0e701vvbyk9vImMMkQyh2I+3QZH4VFvbBsUfk2 ftv1TDI6QU9bR8/oCy22xBmddMVHxjtqD6wU2zz0c5ypBd8A3HR4+vg1YFkCExh8 vPtNsCBtQ7tgMHpnM1zFmdH4LTlSc/uMqpclXHLZCB6rTjzjgTGfA6b7wP4piFXa hNVQA7bihKOmNqoROgHhGEvWRGizPflTdISzRpFGlgC3gCy24eMQ4tui5yiPAZZi Fj4A4xylNoEYokxSdsARo27mHbrjWr42U8U+dY+GaSlYU7Wcu2+fXMUY7N0v4ZjJ /L7fCg0= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIJhjCCB26gAwIBAgIBCzANBgkqhkiG9w0BAQsFADCCAR4xPjA8BgNVBAMTNUF1 dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIFJhaXogZGVsIEVzdGFkbyBWZW5lem9s YW5vMQswCQYDVQQGEwJWRTEQMA4GA1UEBxMHQ2FyYWNhczEZMBcGA1UECBMQRGlz dHJpdG8gQ2FwaXRhbDE2MDQGA1UEChMtU2lzdGVtYSBOYWNpb25hbCBkZSBDZXJ0 aWZpY2FjaW9uIEVsZWN0cm9uaWNhMUMwQQYDVQQLEzpTdXBlcmludGVuZGVuY2lh IGRlIFNlcnZpY2lvcyBkZSBDZXJ0aWZpY2FjaW9uIEVsZWN0cm9uaWNhMSUwIwYJ KoZIhvcNAQkBFhZhY3JhaXpAc3VzY2VydGUuZ29iLnZlMB4XDTEwMTIyODE2NTEw MFoXDTIwMTIyNTIzNTk1OVowgdExJjAkBgkqhkiG9w0BCQEWF2NvbnRhY3RvQHBy b2NlcnQubmV0LnZlMQ8wDQYDVQQHEwZDaGFjYW8xEDAOBgNVBAgTB01pcmFuZGEx KjAoBgNVBAsTIVByb3ZlZWRvciBkZSBDZXJ0aWZpY2Fkb3MgUFJPQ0VSVDE2MDQG A1UEChMtU2lzdGVtYSBOYWNpb25hbCBkZSBDZXJ0aWZpY2FjaW9uIEVsZWN0cm9u aWNhMQswCQYDVQQGEwJWRTETMBEGA1UEAxMKUFNDUHJvY2VydDCCAiIwDQYJKoZI hvcNAQEBBQADggIPADCCAgoCggIBANW39KOUM6FGqVVhSQ2oh3NekS1wwQYalNo9 7BVCwfWMrmoX8Yqt/ICV6oNEolt6Vc5Pp6XVurgfoCfAUFM+jbnADrgV3NZs+J74 BCXfgI8Qhd19L3uA3VcAZCP4bsm+lU/hdezgfl6VzbHvvnpC2Mks0+saGiKLt38G ieU89RLAu9MLmV+QfI4tL3czkkohRqipCKzx9hEC2ZUWno0vluYC3XXCFCpa1sl9 JcLB/KpnheLsvtF8PPqv1W7/U0HU9TI4seJfxPmOEO8GqQKJ/+MMbpfg353bIdD0 PghpbNjU5Db4g7ayNo+c7zo3Fn2/omnXO1ty0K+qP1xmk6wKImG20qCZyFSTXai2 0b1dCl53lKItwIKOvMoDKjSuc/HUtQy9vmebVOvh+qBa7Dh+PsHMosdEMXXqP+UH 0quhJZb25uSgXTcYOWEAM11G1ADEtMo88aKjPvM6/2kwLkDd9p+cJsmWN63nOaK/ 6mnbVSKVUyqUtd+tFjiBdWbjxywbk5yqjKPK2Ww8F22c3HxT4CAnQzb5EuE8XL1m v6JpIzi4mWCZDlZTOpx+FIywBm/xhnaQr/2v/pDGj59/i5IjnOcVdo/Vi5QTcmn7 K2FjiO/mpF7moxdqWEfLcU8UC17IAggmosvpr2uKGcfLFFb14dq12fy/czja+eev bqQ34gcnAgMBAAGjggMXMIIDEzASBgNVHRMBAf8ECDAGAQH/AgEBMDcGA1UdEgQw MC6CD3N1c2NlcnRlLmdvYi52ZaAbBgVghl4CAqASDBBSSUYtRy0yMDAwNDAzNi0w MB0GA1UdDgQWBBRBDxk4qpl/Qguk1yeYVKIXTC1RVDCCAVAGA1UdIwSCAUcwggFD gBStuyIdxuDSAaj9dlBSk+2YwU2u06GCASakggEiMIIBHjE+MDwGA1UEAxM1QXV0 b3JpZGFkIGRlIENlcnRpZmljYWNpb24gUmFpeiBkZWwgRXN0YWRvIFZlbmV6b2xh bm8xCzAJBgNVBAYTAlZFMRAwDgYDVQQHEwdDYXJhY2FzMRkwFwYDVQQIExBEaXN0 cml0byBDYXBpdGFsMTYwNAYDVQQKEy1TaXN0ZW1hIE5hY2lvbmFsIGRlIENlcnRp ZmljYWNpb24gRWxlY3Ryb25pY2ExQzBBBgNVBAsTOlN1cGVyaW50ZW5kZW5jaWEg ZGUgU2VydmljaW9zIGRlIENlcnRpZmljYWNpb24gRWxlY3Ryb25pY2ExJTAjBgkq hkiG9w0BCQEWFmFjcmFpekBzdXNjZXJ0ZS5nb2IudmWCAQowDgYDVR0PAQH/BAQD AgEGME0GA1UdEQRGMESCDnByb2NlcnQubmV0LnZloBUGBWCGXgIBoAwMClBTQy0w MDAwMDKgGwYFYIZeAgKgEgwQUklGLUotMzE2MzUzNzMtNzB2BgNVHR8EbzBtMEag RKBChkBodHRwOi8vd3d3LnN1c2NlcnRlLmdvYi52ZS9sY3IvQ0VSVElGSUNBRE8t UkFJWi1TSEEzODRDUkxERVIuY3JsMCOgIaAfhh1sZGFwOi8vYWNyYWl6LnN1c2Nl cnRlLmdvYi52ZTA3BggrBgEFBQcBAQQrMCkwJwYIKwYBBQUHMAGGG2h0dHA6Ly9v Y3NwLnN1c2NlcnRlLmdvYi52ZTBBBgNVHSAEOjA4MDYGBmCGXgMBAjAsMCoGCCsG AQUFBwIBFh5odHRwOi8vd3d3LnN1c2NlcnRlLmdvYi52ZS9kcGMwDQYJKoZIhvcN AQELBQADggIBACtZ6yKZu4SqT96QxtGGcSOeSwORR3C7wJJg7ODU523G0+1ng3dS 1fLld6c2suNUvtm7CpsR72H0xpkzmfWvADmNg7+mvTV+LFwxNG9s2/NkAZiqlCxB 3RWGymspThbASfzXg0gTB1GEMVKIu4YXx2sviiCtxQuPcD4quxtxj7mkoP3Yldmv Wb8lK5jpY5MvYB7Eqvh39YtsL+1+LrVPQA3uvFd359m21D+VJzog1eWuq2w1n8Gh HVnchIHuTQfiSLaeS5UtQbHh6N5+LwUeaO6/u5BlOsju6rEYNxxik6SgMexxbJHm pHmJWhSnFFAFTKQAVzAswbVhltw+HoSvOULP5dAssSS830DD7X9jSr3hTxJkhpXz sOfIt+FTvZLm8wyWuevo5pLtp4EJFAv8lXrPj9Y0TzYS3F7RNHXGRoAvlQSMx4bE qCaJqD8Zm4G7UaRKhqsLEQ+xrmNTbSjq3TNWOByyrYDT13K9mmyZY+gAu0F2Bbdb mRiKw7gSXFbPVgx96OLP7bx0R/vu0xdOIk9W/1DzLuY5poLWccret9W6aAjtmcz9 opLLabid+Qqkpj5PkygqYWwHJgD/ll9ohri4zspV4KuxPX+Y1zMOWj3YeMLEYC/H YvBhkdI4sPaeVdtAgAUSM84dkpvRabP/v/GSCmE1P93+hvS84Bpxs2Km -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF0DCCBLigAwIBAgIEOrZQizANBgkqhkiG9w0BAQUFADB/MQswCQYDVQQGEwJC TTEZMBcGA1UEChMQUXVvVmFkaXMgTGltaXRlZDElMCMGA1UECxMcUm9vdCBDZXJ0 aWZpY2F0aW9uIEF1dGhvcml0eTEuMCwGA1UEAxMlUXVvVmFkaXMgUm9vdCBDZXJ0 aWZpY2F0aW9uIEF1dGhvcml0eTAeFw0wMTAzMTkxODMzMzNaFw0yMTAzMTcxODMz MzNaMH8xCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBMaW1pdGVkMSUw IwYDVQQLExxSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MS4wLAYDVQQDEyVR dW9WYWRpcyBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIIBIjANBgkqhkiG 9w0BAQEFAAOCAQ8AMIIBCgKCAQEAv2G1lVO6V/z68mcLOhrfEYBklbTRvM16z/Yp li4kVEAkOPcahdxYTMukJ0KX0J+DisPkBgNbAKVRHnAEdOLB1Dqr1607BxgFjv2D rOpm2RgbaIr1VxqYuvXtdj182d6UajtLF8HVj71lODqV0D1VNk7feVcxKh7YWWVJ WCCYfqtffp/p1k3sg3Spx2zY7ilKhSoGFPlU5tPaZQeLYzcS19Dsw3sgQUSj7cug F+FxZc4dZjH3dgEZyH0DWLaVSR2mEiboxgx24ONmy+pdpibu5cxfvWenAScOospU xbF6lR1xHkopigPcakXBpBlebzbNw6Kwt/5cOOJSvPhEQ+aQuwIDAQABo4ICUjCC Ak4wPQYIKwYBBQUHAQEEMTAvMC0GCCsGAQUFBzABhiFodHRwczovL29jc3AucXVv dmFkaXNvZmZzaG9yZS5jb20wDwYDVR0TAQH/BAUwAwEB/zCCARoGA1UdIASCAREw ggENMIIBCQYJKwYBBAG+WAABMIH7MIHUBggrBgEFBQcCAjCBxxqBxFJlbGlhbmNl IG9uIHRoZSBRdW9WYWRpcyBSb290IENlcnRpZmljYXRlIGJ5IGFueSBwYXJ0eSBh c3N1bWVzIGFjY2VwdGFuY2Ugb2YgdGhlIHRoZW4gYXBwbGljYWJsZSBzdGFuZGFy ZCB0ZXJtcyBhbmQgY29uZGl0aW9ucyBvZiB1c2UsIGNlcnRpZmljYXRpb24gcHJh Y3RpY2VzLCBhbmQgdGhlIFF1b1ZhZGlzIENlcnRpZmljYXRlIFBvbGljeS4wIgYI KwYBBQUHAgEWFmh0dHA6Ly93d3cucXVvdmFkaXMuYm0wHQYDVR0OBBYEFItLbe3T KbkGGew5Oanwl4Rqy+/fMIGuBgNVHSMEgaYwgaOAFItLbe3TKbkGGew5Oanwl4Rq y+/foYGEpIGBMH8xCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBMaW1p dGVkMSUwIwYDVQQLExxSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MS4wLAYD VQQDEyVRdW9WYWRpcyBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5ggQ6tlCL MA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQUFAAOCAQEAitQUtf70mpKnGdSk fnIYj9lofFIk3WdvOXrEql494liwTXCYhGHoG+NpGA7O+0dQoE7/8CQfvbLO9Sf8 7C9TqnN7Az10buYWnuulLsS/VidQK2K6vkscPFVcQR0kvoIgR13VRH56FmjffU1R cHhXHTMe/QKZnAzNCgVPx7uOpHX6Sm2xgI4JVrmcGmD+XcHXetwReNDWXcG31a0y mQM6isxUJTkxgXsTIlG6Rmyhu576BGxJJnSP0nPrzDCi5upZIof4l/UO/erMkqQW xFIY6iHOsfHmhIHluqmGKPJDWl0Snawe2ajlCmqnf6CHKc/yiU3U7MXi5nrQNiOK SnQ2+Q== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFtzCCA5+gAwIBAgICBQkwDQYJKoZIhvcNAQEFBQAwRTELMAkGA1UEBhMCQk0x GTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMTElF1b1ZhZGlzIFJv b3QgQ0EgMjAeFw0wNjExMjQxODI3MDBaFw0zMTExMjQxODIzMzNaMEUxCzAJBgNV BAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBMaW1pdGVkMRswGQYDVQQDExJRdW9W YWRpcyBSb290IENBIDIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCa GMpLlA0ALa8DKYrwD4HIrkwZhR0In6spRIXzL4GtMh6QRr+jhiYaHv5+HBg6XJxg Fyo6dIMzMH1hVBHL7avg5tKifvVrbxi3Cgst/ek+7wrGsxDp3MJGF/hd/aTa/55J WpzmM+Yklvc/ulsrHHo1wtZn/qtmUIttKGAr79dgw8eTvI02kfN/+NsRE8Scd3bB rrcCaoF6qUWD4gXmuVbBlDePSHFjIuwXZQeVikvfj8ZaCuWw419eaxGrDPmF60Tp +ARz8un+XJiM9XOva7R+zdRcAitMOeGylZUtQofX1bOQQ7dsE/He3fbE+Ik/0XX1 ksOR1YqI0JDs3G3eicJlcZaLDQP9nL9bFqyS2+r+eXyt66/3FsvbzSUr5R/7mp/i Ucw6UwxI5g69ybR2BlLmEROFcmMDBOAENisgGQLodKcftslWZvB1JdxnwQ5hYIiz PtGo/KPaHbDRsSNU30R2be1B2MGyIrZTHN81Hdyhdyox5C315eXbyOD/5YDXC2Og /zOhD7osFRXql7PSorW+8oyWHhqPHWykYTe5hnMz15eWniN9gqRMgeKh0bpnX5UH oycR7hYQe7xFSkyyBNKr79X9DFHOUGoIMfmR2gyPZFwDwzqLID9ujWc9Otb+fVuI yV77zGHcizN300QyNQliBJIWENieJ0f7OyHj+OsdWwIDAQABo4GwMIGtMA8GA1Ud EwEB/wQFMAMBAf8wCwYDVR0PBAQDAgEGMB0GA1UdDgQWBBQahGK8SEwzJQTU7tD2 A8QZRtGUazBuBgNVHSMEZzBlgBQahGK8SEwzJQTU7tD2A8QZRtGUa6FJpEcwRTEL MAkGA1UEBhMCQk0xGTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMT ElF1b1ZhZGlzIFJvb3QgQ0EgMoICBQkwDQYJKoZIhvcNAQEFBQADggIBAD4KFk2f BluornFdLwUvZ+YTRYPENvbzwCYMDbVHZF34tHLJRqUDGCdViXh9duqWNIAXINzn g/iN/Ae42l9NLmeyhP3ZRPx3UIHmfLTJDQtyU/h2BwdBR5YM++CCJpNVjP4iH2Bl fF/nJrP3MpCYUNQ3cVX2kiF495V5+vgtJodmVjB3pjd4M1IQWK4/YY7yarHvGH5K WWPKjaJW1acvvFYfzznB4vsKqBUsfU16Y8Zsl0Q80m/DShcK+JDSV6IZUaUtl0Ha B0+pUNqQjZRG4T7wlP0QADj1O+hA4bRuVhogzG9Yje0uRY/W6ZM/57Es3zrWIozc hLsib9D45MY56QSIPMO661V6bYCZJPVsAfv4l7CUW+v90m/xd2gNNWQjrLhVoQPR TUIZ3Ph1WVaj+ahJefivDrkRoHy3au000LYmYjgahwz46P0u05B/B5EqHdZ+XIWD mbA4CD/pXvk1B+TJYm5Xf6dQlfe6yJvmjqIBxdZmv3lh8zwc4bmCXF2gw+nYSL0Z ohEUGW6yhhtoPkg3Goi3XZZenMfvJ2II4pEZXNLxId26F0KCl3GBUzGpn/Z9Yr9y 4aOTHcyKJloJONDO1w2AFrR4pTqHTI2KpdVGl/IsELm8VCLAAVBpQ570su9t+Oza 8eOx79+Rj1QqCyXBJhnEUhAFZdWCEOrCMc0u -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIGnTCCBIWgAwIBAgICBcYwDQYJKoZIhvcNAQEFBQAwRTELMAkGA1UEBhMCQk0x GTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxGzAZBgNVBAMTElF1b1ZhZGlzIFJv b3QgQ0EgMzAeFw0wNjExMjQxOTExMjNaFw0zMTExMjQxOTA2NDRaMEUxCzAJBgNV BAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBMaW1pdGVkMRswGQYDVQQDExJRdW9W YWRpcyBSb290IENBIDMwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDM V0IWVJzmmNPTTe7+7cefQzlKZbPoFog02w1ZkXTPkrgEQK0CSzGrvI2RaNggDhoB 4hp7Thdd4oq3P5kazethq8Jlph+3t723j/z9cI8LoGe+AaJZz3HmDyl2/7FWeUUr H556VOijKTVopAFPD6QuN+8bv+OPEKhyq1hX51SGyMnzW9os2l2ObjyjPtr7guXd 8lyyBTNvijbO0BNO/79KDDRMpsMhvVAEVeuxu537RR5kFd5VAYwCdrXLoT9Cabwv vWhDFlaJKjdhkf2mrk7AyxRllDdLkgbvBNDInIjbC3uBr7E9KsRlOni27tyAsdLT mZw67mtaa7ONt9XOnMK+pUsvFrGeaDsGb659n/je7Mwpp5ijJUMv7/FfJuGITfhe btfZFG4ZM2mnO4SJk8RTVROhUXhA+LjJou57ulJCg54U7QVSWllWp5f8nT8KKdjc T5EOE7zelaTfi5m+rJsziO+1ga8bxiJTyPbH7pcUsMV8eFLI8M5ud2CEpukqdiDt WAEXMJPpGovgc2PZapKUSU60rUqFxKMiMPwJ7Wgic6aIDFUhWMXhOp8q3crhkODZ c6tsgLjoC2SToJyMGf+z0gzskSaHirOi4XCPLArlzW1oUevaPwV/izLmE1xr/l9A 4iLItLRkT9a6fUg+qGkM17uGcclzuD87nSVL2v9A6wIDAQABo4IBlTCCAZEwDwYD VR0TAQH/BAUwAwEB/zCB4QYDVR0gBIHZMIHWMIHTBgkrBgEEAb5YAAMwgcUwgZMG CCsGAQUFBwICMIGGGoGDQW55IHVzZSBvZiB0aGlzIENlcnRpZmljYXRlIGNvbnN0 aXR1dGVzIGFjY2VwdGFuY2Ugb2YgdGhlIFF1b1ZhZGlzIFJvb3QgQ0EgMyBDZXJ0 aWZpY2F0ZSBQb2xpY3kgLyBDZXJ0aWZpY2F0aW9uIFByYWN0aWNlIFN0YXRlbWVu dC4wLQYIKwYBBQUHAgEWIWh0dHA6Ly93d3cucXVvdmFkaXNnbG9iYWwuY29tL2Nw czALBgNVHQ8EBAMCAQYwHQYDVR0OBBYEFPLAE+CCQz777i9nMpY1XNu4ywLQMG4G A1UdIwRnMGWAFPLAE+CCQz777i9nMpY1XNu4ywLQoUmkRzBFMQswCQYDVQQGEwJC TTEZMBcGA1UEChMQUXVvVmFkaXMgTGltaXRlZDEbMBkGA1UEAxMSUXVvVmFkaXMg Um9vdCBDQSAzggIFxjANBgkqhkiG9w0BAQUFAAOCAgEAT62gLEz6wPJv92ZVqyM0 7ucp2sNbtrCD2dDQ4iH782CnO11gUyeim/YIIirnv6By5ZwkajGxkHon24QRiSem d1o417+shvzuXYO8BsbRd2sPbSQvS3pspweWyuOEn62Iix2rFo1bZhfZFvSLgNLd +LJ2w/w4E6oM3kJpK27zPOuAJ9v1pkQNn1pVWQvVDVJIxa6f8i+AxeoyUDUSly7B 4f/xI4hROJ/yZlZ25w9Rl6VSDE1JUZU2Pb+iSwwQHYaZTKrzchGT5Or2m9qoXadN t54CrnMAyNojA+j56hl0YgCUyyIgvpSnWbWCar6ZeXqp8kokUvd0/bpO5qgdAm6x DYBEwa7TIzdfu4V8K5Iu6H6li92Z4b8nby1dqnuH/grdS/yO9SbkbnBCbjPsMZ57 k8HkyWkaPcBrTiJt7qtYTcbQQcEr6k8Sh17rRdhs9ZgC06DYVYoGmRmioHfRMJ6s zHXug/WwYjnPbFfiTNKRCw51KBuav/0aQ/HKd/s7j2G4aSgWQgRecCocIdiP4b0j Wy10QJLZYxkNc91pvGJHvOB0K7Lrfb5BG7XARsWhIstfTsEokt4YutUqKLsRixeT mJlglFwjz1onl14LBQaTNx47aTbrqZ5hHY8y2o4M1nQ+ewkk2gF3R8Q7zTSMmfXK 4SVhM7JZG+Ju1zdXtg2pEto= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIGizCCBXOgAwIBAgIEO0XlaDANBgkqhkiG9w0BAQUFADBoMQswCQYDVQQGEwJF UzEfMB0GA1UEChMWR2VuZXJhbGl0YXQgVmFsZW5jaWFuYTEPMA0GA1UECxMGUEtJ R1ZBMScwJQYDVQQDEx5Sb290IENBIEdlbmVyYWxpdGF0IFZhbGVuY2lhbmEwHhcN MDEwNzA2MTYyMjQ3WhcNMjEwNzAxMTUyMjQ3WjBoMQswCQYDVQQGEwJFUzEfMB0G A1UEChMWR2VuZXJhbGl0YXQgVmFsZW5jaWFuYTEPMA0GA1UECxMGUEtJR1ZBMScw JQYDVQQDEx5Sb290IENBIEdlbmVyYWxpdGF0IFZhbGVuY2lhbmEwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDGKqtXETcvIorKA3Qdyu0togu8M1JAJke+ WmmmO3I2F0zo37i7L3bhQEZ0ZQKQUgi0/6iMweDHiVYQOTPvaLRfX9ptI6GJXiKj SgbwJ/BXufjpTjJ3Cj9BZPPrZe52/lSqfR0grvPXdMIKX/UIKFIIzFVd0g/bmoGl u6GzwZTNVOAydTGRGmKy3nXiz0+J2ZGQD0EbtFpKd71ng+CT516nDOeB0/RSrFOy A8dEJvt55cs0YFAQexvba9dHq198aMpunUEDEO5rmXteJajCq+TA81yc477OMUxk Hl6AovWDfgzWyoxVjr7gvkkHD6MkQXpYHYTqWBLI4bft75PelAgxAgMBAAGjggM7 MIIDNzAyBggrBgEFBQcBAQQmMCQwIgYIKwYBBQUHMAGGFmh0dHA6Ly9vY3NwLnBr aS5ndmEuZXMwEgYDVR0TAQH/BAgwBgEB/wIBAjCCAjQGA1UdIASCAiswggInMIIC IwYKKwYBBAG/VQIBADCCAhMwggHoBggrBgEFBQcCAjCCAdoeggHWAEEAdQB0AG8A cgBpAGQAYQBkACAAZABlACAAQwBlAHIAdABpAGYAaQBjAGEAYwBpAPMAbgAgAFIA YQDtAHoAIABkAGUAIABsAGEAIABHAGUAbgBlAHIAYQBsAGkAdABhAHQAIABWAGEA bABlAG4AYwBpAGEAbgBhAC4ADQAKAEwAYQAgAEQAZQBjAGwAYQByAGEAYwBpAPMA bgAgAGQAZQAgAFAAcgDhAGMAdABpAGMAYQBzACAAZABlACAAQwBlAHIAdABpAGYA aQBjAGEAYwBpAPMAbgAgAHEAdQBlACAAcgBpAGcAZQAgAGUAbAAgAGYAdQBuAGMA aQBvAG4AYQBtAGkAZQBuAHQAbwAgAGQAZQAgAGwAYQAgAHAAcgBlAHMAZQBuAHQA ZQAgAEEAdQB0AG8AcgBpAGQAYQBkACAAZABlACAAQwBlAHIAdABpAGYAaQBjAGEA YwBpAPMAbgAgAHMAZQAgAGUAbgBjAHUAZQBuAHQAcgBhACAAZQBuACAAbABhACAA ZABpAHIAZQBjAGMAaQDzAG4AIAB3AGUAYgAgAGgAdAB0AHAAOgAvAC8AdwB3AHcA LgBwAGsAaQAuAGcAdgBhAC4AZQBzAC8AYwBwAHMwJQYIKwYBBQUHAgEWGWh0dHA6 Ly93d3cucGtpLmd2YS5lcy9jcHMwHQYDVR0OBBYEFHs100DSHHgZZu90ECjcPk+y eAT8MIGVBgNVHSMEgY0wgYqAFHs100DSHHgZZu90ECjcPk+yeAT8oWykajBoMQsw CQYDVQQGEwJFUzEfMB0GA1UEChMWR2VuZXJhbGl0YXQgVmFsZW5jaWFuYTEPMA0G A1UECxMGUEtJR1ZBMScwJQYDVQQDEx5Sb290IENBIEdlbmVyYWxpdGF0IFZhbGVu Y2lhbmGCBDtF5WgwDQYJKoZIhvcNAQEFBQADggEBACRhTvW1yEICKrNcda3Fbcrn lD+laJWIwVTAEGmiEi8YPyVQqHxK6sYJ2fR1xkDar1CdPaUWu20xxsdzCkj+IHLt b8zog2EWRpABlUt9jppSCS/2bxzkoXHPjCpaF3ODR00PNvsETUlR4hTJZGH71BTg 9J63NI8KJr2XXPR5OkowGcytT6CYirQxlyric21+eLj4iIlPsSKRZEv1UN4D2+XF ducTZnV+ZfsBn5OHiJ35Rld8TWCvmHMTI6QgkYH60GFmuH3Rr9ZvHmw96RH9qfmC IoaZM3Fa6hlXPZHNqcCjbgcTpsnt+GijnsNacgmHKNHEc8RzGF9QdRYxn7fofMM= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIC5zCCAlACAQEwDQYJKoZIhvcNAQEFBQAwgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0 IFZhbGlkYXRpb24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAz BgNVBAsTLFZhbGlDZXJ0IENsYXNzIDMgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9y aXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG 9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMB4XDTk5MDYyNjAwMjIzM1oXDTE5MDYy NjAwMjIzM1owgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRpb24gTmV0d29y azEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENs YXNzIDMgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRw Oi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNl cnQuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDjmFGWHOjVsQaBalfD cnWTq8+epvzzFlLWLU2fNUSoLgRNB0mKOCn1dzfnt6td3zZxFJmP3MKS8edgkpfs 2Ejcv8ECIMYkpChMMFp2bbFc893enhBxoYjHW5tBbcqwuI4V7q0zK89HBFx1cQqY JJgpp0lZpd34t0NiYfPT4tBVPwIDAQABMA0GCSqGSIb3DQEBBQUAA4GBAFa7AliE Zwgs3x/be0kz9dNnnfS0ChCzycUs4pJqcXgn8nCDQtM+z6lU9PHYkhaM0QTLS6vJ n0WuPIqpsHEzXcjFV9+vqDWzf4mH6eglkrh/hXqu1rweN1gqZ8mRzyqBPu3GOd/A PhmcGcwTTYJBtYze4D1gCCAPRX5ron+jjBXu -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDYTCCAkmgAwIBAgIQCgEBAQAAAnwAAAAKAAAAAjANBgkqhkiG9w0BAQUFADA6 MRkwFwYDVQQKExBSU0EgU2VjdXJpdHkgSW5jMR0wGwYDVQQLExRSU0EgU2VjdXJp dHkgMjA0OCBWMzAeFw0wMTAyMjIyMDM5MjNaFw0yNjAyMjIyMDM5MjNaMDoxGTAX BgNVBAoTEFJTQSBTZWN1cml0eSBJbmMxHTAbBgNVBAsTFFJTQSBTZWN1cml0eSAy MDQ4IFYzMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAt49VcdKA3Xtp eafwGFAyPGJn9gqVB93mG/Oe2dJBVGutn3y+Gc37RqtBaB4Y6lXIL5F4iSj7Jylg /9+PjDvJSZu1pJTOAeo+tWN7fyb9Gd3AIb2E0S1PRsNO3Ng3OTsor8udGuorryGl wSMiuLgbWhOHV4PR8CDn6E8jQrAApX2J6elhc5SYcSa8LWrg903w8bYqODGBDSnh AMFRD0xS+ARaqn1y07iHKrtjEAMqs6FPDVpeRrc9DvV07Jmf+T0kgYim3WBU6JU2 PcYJk5qjEoAAVZkZR73QpXzDuvsf9/UP+Ky5tfQ3mBMY3oVbtwyCO4dvlTlYMNpu AWgXIszACwIDAQABo2MwYTAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIB BjAfBgNVHSMEGDAWgBQHw1EwpKrpRa41JPr/JCwz0LGdjDAdBgNVHQ4EFgQUB8NR MKSq6UWuNST6/yQsM9CxnYwwDQYJKoZIhvcNAQEFBQADggEBAF8+hnZuuDU8TjYc HnmYv/3VEhF5Ug7uMYm83X/50cYVIeiKAVQNOvtUudZj1LGqlk2iQk3UUx+LEN5/ Zb5gEydxiKRz44Rj0aRV4VCT5hsOedBnvEbIvz8XDZXmxpBp3ue0L96VfdASPz0+ f00/FGj1EVDVwfSQpQgdMWD/YIwjVAqv/qFuxdF6Kmh4zx6CCiC0H63lhbJqaHVO rSU3lIW+vaHU6rcMSzyd6BIA8F+sDeGscGNz9395nzIlQnQFgCi/vcEkllgVsRch 6YlL2weIZ/QVrXA+L02FO8K32/6YaCOJ4XQP3vTFhGMpG8zLB8kApKnXwiJPZ9d3 7CAFYd4= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDvDCCAqSgAwIBAgIQB1YipOjUiolN9BPI8PjqpTANBgkqhkiG9w0BAQUFADBK MQswCQYDVQQGEwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24x GTAXBgNVBAMTEFNlY3VyZSBHbG9iYWwgQ0EwHhcNMDYxMTA3MTk0MjI4WhcNMjkx MjMxMTk1MjA2WjBKMQswCQYDVQQGEwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3Qg Q29ycG9yYXRpb24xGTAXBgNVBAMTEFNlY3VyZSBHbG9iYWwgQ0EwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQCvNS7YrGxVaQZx5RNoJLNP2MwhR/jxYDiJ iQPpvepeRlMJ3Fz1Wuj3RSoC6zFh1ykzTM7HfAo3fg+6MpjhHZevj8fcyTiW89sa /FHtaMbQbqR8JNGuQsiWUGMu4P51/pinX0kuleM5M2SOHqRfkNJnPLLZ/kG5VacJ jnIFHovdRIWCQtBJwB1g8NEXLJXr9qXBkqPFwqcIYA1gBBCWeZ4WNOaptvolRTnI HmX5k/Wq8VLcmZg9pYYaDDUz+kulBAYVHDGA76oYa8J719rO+TMg1fW9ajMtgQT7 sFzUnKPiXB3jqUJ1XnvUd+85VLrJChgbEplJL4hL/VBi0XPnj3pDAgMBAAGjgZ0w gZowEwYJKwYBBAGCNxQCBAYeBABDAEEwCwYDVR0PBAQDAgGGMA8GA1UdEwEB/wQF MAMBAf8wHQYDVR0OBBYEFK9EBMJBfkiD2045AuzshHrmzsmkMDQGA1UdHwQtMCsw KaAnoCWGI2h0dHA6Ly9jcmwuc2VjdXJldHJ1c3QuY29tL1NHQ0EuY3JsMBAGCSsG AQQBgjcVAQQDAgEAMA0GCSqGSIb3DQEBBQUAA4IBAQBjGghAfaReUw132HquHw0L URYD7xh8yOOvaliTFGCRsoTciE6+OYo68+aCiV0BN7OrJKQVDpI1WkpEXk5X+nXO H0jOZvQ8QCaSmGwb7iRGDBezUqXbpZGRzzfTb+cnCDpOGR86p1hcF895P4vkp9Mm I50mD1hp/Ed+stCNi5O/KU9DaXR2Z0vPB4zmAve14bRDtUstFJ/53CYNv6ZHdAbY iNE6KTCEztI5gGIbqMdXSbxqVVFnFUq+NQfk1XWYN3kwFNspnWzFacxHVaIw98xc f8LDmBxrThaA63p4ZUWiABqvDA1VZDRIuJK58bRQKfJPIx/abKwfROHdI3hRW8cW -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDbTCCAlWgAwIBAgIBATANBgkqhkiG9w0BAQUFADBYMQswCQYDVQQGEwJKUDEr MCkGA1UEChMiSmFwYW4gQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcywgSW5jLjEcMBoG A1UEAxMTU2VjdXJlU2lnbiBSb290Q0ExMTAeFw0wOTA0MDgwNDU2NDdaFw0yOTA0 MDgwNDU2NDdaMFgxCzAJBgNVBAYTAkpQMSswKQYDVQQKEyJKYXBhbiBDZXJ0aWZp Y2F0aW9uIFNlcnZpY2VzLCBJbmMuMRwwGgYDVQQDExNTZWN1cmVTaWduIFJvb3RD QTExMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA/XeqpRyQBTvLTJsz i1oURaTnkBbR31fSIRCkF/3frNYfp+TbfPfs37gD2pRY/V1yfIw/XwFndBWW4wI8 h9uuywGOwvNmxoVF9ALGOrVisq/6nL+k5tSAMJjzDbaTj6nU2DbysPyKyiyhFTOV MdrAG/LuYpmGYz+/3ZMqg6h2uRMft85OQoWPIucuGvKVCbIFtUROd6EgvanyTgp9 UK31BQ1FT0Zx/Sg+U/sE2C3XZR1KG/rPO7AxmjVuyIsG0wCR8pQIZUyxNAYAeoni 8McDWc/V1uinMrPmmECGxc0nEovMe863ETxiYAcjPitAbpSACW22s293bzUIUPsC h8U+iQIDAQABo0IwQDAdBgNVHQ4EFgQUW/hNT7KlhtQ60vFjmqC+CfZXt94wDgYD VR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEB AKChOBZmLqdWHyGcBvod7bkixTgm2E5P7KN/ed5GIaGHd48HCJqypMWvDzKYC3xm KbabfSVSSUOrTC4rbnpwrxYO4wJs+0LmGJ1F2FXI6Dvd5+H0LgscNFxsWEr7jIhQ X5Ucv+2rIrVls4W6ng+4reV6G4pQOh29Dbx7VFALuUKvVaAYga1lme++5Jy/xIWr QbJUb9wlze144o4MjQlJ3WN7WmmWAiGovVJZ6X01y8hSyn+B/tlr0/cR7SXf+Of5 pPpyl4RTDaXQMhhRdlkUbA/r7F+AjHVDg8OFmP9Mni0N5HeDk061lgeLKBObjBmN QSdJQO7e5iNEOdyhIta6A/I= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDuDCCAqCgAwIBAgIQDPCOXAgWpa1Cf/DrJxhZ0DANBgkqhkiG9w0BAQUFADBI MQswCQYDVQQGEwJVUzEgMB4GA1UEChMXU2VjdXJlVHJ1c3QgQ29ycG9yYXRpb24x FzAVBgNVBAMTDlNlY3VyZVRydXN0IENBMB4XDTA2MTEwNzE5MzExOFoXDTI5MTIz MTE5NDA1NVowSDELMAkGA1UEBhMCVVMxIDAeBgNVBAoTF1NlY3VyZVRydXN0IENv cnBvcmF0aW9uMRcwFQYDVQQDEw5TZWN1cmVUcnVzdCBDQTCCASIwDQYJKoZIhvcN AQEBBQADggEPADCCAQoCggEBAKukgeWVzfX2FI7CT8rU4niVWJxB4Q2ZQCQXOZEz Zum+4YOvYlyJ0fwkW2Gz4BERQRwdbvC4u/jep4G6pkjGnx29vo6pQT64lO0pGtSO 0gMdA+9tDWccV9cGrcrI9f4Or2YlSASWC12juhbDCE/RRvgUXPLIXgGZbf2IzIao wW8xQmxSPmjL8xk037uHGFaAJsTQ3MBv396gwpEWoGQRS0S8Hvbn+mPeZqx2pHGj 7DaUaHp3pLHnDi+BeuK1cobvomuL8A/b01k/unK8RCSc43Oz969XL0Imnal0ugBS 8kvNU3xHCzaFDmapCJcWNFfBZveA4+1wVMeT4C4oFVmHursCAwEAAaOBnTCBmjAT BgkrBgEEAYI3FAIEBh4EAEMAQTALBgNVHQ8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB /zAdBgNVHQ4EFgQUQjK2FvoE/f5dS3rD/fdMQB1aQ68wNAYDVR0fBC0wKzApoCeg JYYjaHR0cDovL2NybC5zZWN1cmV0cnVzdC5jb20vU1RDQS5jcmwwEAYJKwYBBAGC NxUBBAMCAQAwDQYJKoZIhvcNAQEFBQADggEBADDtT0rhWDpSclu1pqNlGKa7UTt3 6Z3q059c4EVlew3KW+JwULKUBRSuSceNQQcSc5R+DCMh/bwQf2AQWnL1mA6s7Ll/ 3XpvXdMc9P+IBWlCqQVxyLesJugutIxq/3HcuLHfmbx8IVQr5Fiiu1cprp6poxkm D5kuCLDv/WnPmRoJjeOnnyvJNjR7JLN4TJUXpAYmHrZkUjZfYGfZnMUFdAvnZyPS CPyI6a6Lf+Ew9Dd+/cYy2i2eRDAwbO4H3tI0/NL/QPZL9GZGBlSm8jIKYyYwa5vR 3ItHuuG51WLQoqD0ZwV4KWMabwTW+MZMo5qxN7SN5ShLHZ4swrhovO0C7jE= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDfTCCAmWgAwIBAgIBADANBgkqhkiG9w0BAQUFADBgMQswCQYDVQQGEwJKUDEl MCMGA1UEChMcU0VDT00gVHJ1c3QgU3lzdGVtcyBDTy4sTFRELjEqMCgGA1UECxMh U2VjdXJpdHkgQ29tbXVuaWNhdGlvbiBFViBSb290Q0ExMB4XDTA3MDYwNjAyMTIz MloXDTM3MDYwNjAyMTIzMlowYDELMAkGA1UEBhMCSlAxJTAjBgNVBAoTHFNFQ09N IFRydXN0IFN5c3RlbXMgQ08uLExURC4xKjAoBgNVBAsTIVNlY3VyaXR5IENvbW11 bmljYXRpb24gRVYgUm9vdENBMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC ggEBALx/7FebJOD+nLpCeamIivqA4PUHKUPqjgo0No0c+qe1OXj/l3X3L+SqawSE RMqm4miO/VVQYg+kcQ7OBzgtQoVQrTyWb4vVog7P3kmJPdZkLjjlHmy1V4qe70gO zXppFodEtZDkBp2uoQSXWHnvIEqCa4wiv+wfD+mEce3xDuS4GBPMVjZd0ZoeUWs5 bmB2iDQL87PRsJ3KYeJkHcFGB7hj3R4zZbOOCVVSPbW9/wfrrWFVGCypaZhKqkDF MxRldAD5kd6vA0jFQFTcD4SQaCDFkpbcLuUCRarAX1T4bepJz11sS6/vmsJWXMY1 VkJqMF/Cq/biPT+zyRGPMUzXn0kCAwEAAaNCMEAwHQYDVR0OBBYEFDVK9U2vP9eC OKyrcWUXdYydVZPmMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MA0G CSqGSIb3DQEBBQUAA4IBAQCoh+ns+EBnXcPBZsdAS5f8hxOQWsTvoMpfi7ent/HW tWS3irO4G8za+6xmiEHO6Pzk2x6Ipu0nUBsCMCRGef4Eh3CXQHPRwMFXGZpppSeZ q51ihPZRwSzJIxXYKLerJRO1RuGGAv8mjMSIkh1W/hln8lXkgKNrnKt34VFxDSDb EJrbvXZ5B3eZKK2aXtqxT0QsNY6llsf9g/BYxnnWmHyojf6GPgcWkuF75x3sM3Z+ Qi5KhfmRiWiEA4Glm5q+4zfFVKtWOxgtQaQM+ELbmaDgcm+7XeEWT1MKZPlO9L9O VL14bIjqv5wTJMJwaaJ/D8g8rQjJsJhAoyrniIPtd490 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDWjCCAkKgAwIBAgIBADANBgkqhkiG9w0BAQUFADBQMQswCQYDVQQGEwJKUDEY MBYGA1UEChMPU0VDT00gVHJ1c3QubmV0MScwJQYDVQQLEx5TZWN1cml0eSBDb21t dW5pY2F0aW9uIFJvb3RDQTEwHhcNMDMwOTMwMDQyMDQ5WhcNMjMwOTMwMDQyMDQ5 WjBQMQswCQYDVQQGEwJKUDEYMBYGA1UEChMPU0VDT00gVHJ1c3QubmV0MScwJQYD VQQLEx5TZWN1cml0eSBDb21tdW5pY2F0aW9uIFJvb3RDQTEwggEiMA0GCSqGSIb3 DQEBAQUAA4IBDwAwggEKAoIBAQCzs/5/022x7xZ8V6UMbXaKL0u/ZPtM7orw8yl8 9f/uKuDp6bpbZCKamm8sOiZpUQWZJtzVHGpxxpp9Hp3dfGzGjGdnSj74cbAZJ6kJ DKaVv0uMDPpVmDvY6CKhS3E4eayXkmmziX7qIWgGmBSWh9JhNrxtJ1aeV+7AwFb9 Ms+k2Y7CI9eNqPPYJayX5HA49LY6tJ07lyZDo6G8SVlyTCMwhwFY9k6+HGhWZq/N QV3Is00qVUarH9oe4kA92819uZKAnDfdDJZkndwi92SL32HeFZRSFaB9UslLqCHJ xrHty8OVYNEP8Ktw+N/LTX7s1vqr2b1/VPKl6Xn62dZ2JChzAgMBAAGjPzA9MB0G A1UdDgQWBBSgc0mZaNyFW2XjmygvV5+9M7wHSDALBgNVHQ8EBAMCAQYwDwYDVR0T AQH/BAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAaECpqLvkT115swW1F7NgE+vG kl3g0dNq/vu+m22/xwVtWSDEHPC32oRYAmP6SBbvT6UL90qY8j+eG61Ha2POCEfr Uj94nK9NrvjVT8+amCoQQTlSxN3Zmw7vkwGusi7KaEIkQmywszo+zenaSMQVy+n5 Bw+SUEmK3TGXX8npN6o7WWWXlDLJs58+OmJYxUmtYg5xpTKqL8aJdkNAExNnPaJU JRDL8Try2frbSVa7pv6nQTXD4IhhyYjH3zYQIphZ6rBK+1YWc26sTfcioU+tHXot RSflMMFe8toTyyVCUZVHA4xsIcx0Qu1T/zOLjw9XARYvz6buyXAiFL39vmwLAw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDdzCCAl+gAwIBAgIBADANBgkqhkiG9w0BAQsFADBdMQswCQYDVQQGEwJKUDEl MCMGA1UEChMcU0VDT00gVHJ1c3QgU3lzdGVtcyBDTy4sTFRELjEnMCUGA1UECxMe U2VjdXJpdHkgQ29tbXVuaWNhdGlvbiBSb290Q0EyMB4XDTA5MDUyOTA1MDAzOVoX DTI5MDUyOTA1MDAzOVowXTELMAkGA1UEBhMCSlAxJTAjBgNVBAoTHFNFQ09NIFRy dXN0IFN5c3RlbXMgQ08uLExURC4xJzAlBgNVBAsTHlNlY3VyaXR5IENvbW11bmlj YXRpb24gUm9vdENBMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANAV OVKxUrO6xVmCxF1SrjpDZYBLx/KWvNs2l9amZIyoXvDjChz335c9S672XewhtUGr zbl+dp+++T42NKA7wfYxEUV0kz1XgMX5iZnK5atq1LXaQZAQwdbWQonCv/Q4EpVM VAX3NuRFg3sUZdbcDE3R3n4MqzvEFb46VqZab3ZpUql6ucjrappdUtAtCms1FgkQ hNBqyjoGADdH5H5XTz+L62e4iKrFvlNVspHEfbmwhRkGeC7bYRr6hfVKkaHnFtWO ojnflLhwHyg/i/xAXmODPIMqGplrz95Zajv8bxbXH/1KEOtOghY6rCcMU/Gt1SSw awNQwS08Ft1ENCcadfsCAwEAAaNCMEAwHQYDVR0OBBYEFAqFqXdlBZh8QIH4D5cs OPEK7DzPMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3 DQEBCwUAA4IBAQBMOqNErLlFsceTfsgLCkLfZOoc7llsCLqJX2rKSpWeeo8HxdpF coJxDjrSzG+ntKEju/Ykn8sX/oymzsLS28yN/HH8AynBbF0zX2S2ZTuJbxh2ePXc okgfGT+Ok+vx+hfuzU7jBBJV1uXk3fs+BXziHV7Gp7yXT2g69ekuCkO2r1dcYmh8 t/2jioSgrGK+KwmHNPBqAbubKVY8/gA3zyNs8U6qtnRGEmyR7jTV7JqR50S+kDFy 1UkC9gLl9B/rfNmWVan/7Ir5mUf/NVoCqgTLiluHcSmRvaS0eg29mvVXIwAHIRc/ SjnRBUkLp7Y3gaVdjKozXoEofKd9J+sAro03 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDIDCCAgigAwIBAgIBJDANBgkqhkiG9w0BAQUFADA5MQswCQYDVQQGEwJGSTEP MA0GA1UEChMGU29uZXJhMRkwFwYDVQQDExBTb25lcmEgQ2xhc3MxIENBMB4XDTAx MDQwNjEwNDkxM1oXDTIxMDQwNjEwNDkxM1owOTELMAkGA1UEBhMCRkkxDzANBgNV BAoTBlNvbmVyYTEZMBcGA1UEAxMQU29uZXJhIENsYXNzMSBDQTCCASIwDQYJKoZI hvcNAQEBBQADggEPADCCAQoCggEBALWJHytPZwp5/8Ue+H887dF+2rDNbS82rDTG 29lkFwhjMDMiikzujrsPDUJVyZ0upe/3p4zDq7mXy47vPxVnqIJyY1MPQYx9EJUk oVqlBvqSV536pQHydekfvFYmUk54GWVYVQNYwBSujHxVX3BbdyMGNpfzJLWaRpXk 3w0LBUXl0fIdgrvGE+D+qnr9aTCU89JFhfzyMlsy3uhsXR/LpCJ0sICOXZT3BgBL qdReLjVQCfOAl/QMF6452F/NM8EcyonCIvdFEu1eEpOdY6uCLrnrQkFEy0oaAIIN nvmLVz5MxxftLItyM19yejhW1ebZrgUaHXVFsculJRwSVzb9IjcCAwEAAaMzMDEw DwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQIR+IMi/ZTiFIwCwYDVR0PBAQDAgEG MA0GCSqGSIb3DQEBBQUAA4IBAQCLGrLJXWG04bkruVPRsoWdd44W7hE928Jj2VuX ZfsSZ9gqXLar5V7DtxYvyOirHYr9qxp81V9jz9yw3Xe5qObSIjiHBxTZ/75Wtf0H DjxVyhbMp6Z3N/vbXB9OWQaHowND9Rart4S9Tu+fMTfwRvFAttEMpWT4Y14h21VO TzF2nBBhjrZTOqMRvq9tfB69ri3iDGnHhVNoomG6xT60eVR4ngrHAr5i0RGCS2Uv kVrCqIexVmiUefkl98HVrhq4uz2PqYo4Ffdz0Fpg0YCw8NzVUM1O7pJIae2yIx4w zMiUyLb1O4Z/P6Yun/Y+LLWSlj7fLJOK/4GMDw9ZIRlXvVWa -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDIDCCAgigAwIBAgIBHTANBgkqhkiG9w0BAQUFADA5MQswCQYDVQQGEwJGSTEP MA0GA1UEChMGU29uZXJhMRkwFwYDVQQDExBTb25lcmEgQ2xhc3MyIENBMB4XDTAx MDQwNjA3Mjk0MFoXDTIxMDQwNjA3Mjk0MFowOTELMAkGA1UEBhMCRkkxDzANBgNV BAoTBlNvbmVyYTEZMBcGA1UEAxMQU29uZXJhIENsYXNzMiBDQTCCASIwDQYJKoZI hvcNAQEBBQADggEPADCCAQoCggEBAJAXSjWdyvANlsdE+hY3/Ei9vX+ALTU74W+o Z6m/AxxNjG8yR9VBaKQTBME1DJqEQ/xcHf+Js+gXGM2RX/uJ4+q/Tl18GybTdXnt 5oTjV+WtKcT0OijnpXuENmmz/V52vaMtmdOQTiMofRhj8VQ7Jp12W5dCsv+u8E7s 3TmVToMGf+dJQMjFAbJUWmYdPfz56TwKnoG4cPABi+QjVHzIrviQHgCWctRUz2Ej vOr7nQKV0ba5cTppCD8PtOFCx4j1P5iop7oc4HFx71hXgVB6XGt0Rg6DA5jDjqhu 8nYybieDwnPz3BjotJPqdURrBGAgcVeHnfO+oJAjPYok4doh28MCAwEAAaMzMDEw DwYDVR0TAQH/BAUwAwEB/zARBgNVHQ4ECgQISqCqWITTXjwwCwYDVR0PBAQDAgEG MA0GCSqGSIb3DQEBBQUAA4IBAQBazof5FnIVV0sd2ZvnoiYw7JNn39Yt0jSv9zil zqsWuasvfDXLrNAPtEwr/IDva4yRXzZ299uzGxnq9LIR/WFxRL8oszodv7ND6J+/ 3DEIcbCdjdY0RzKQxmUk96BKfARzjzlvF4xytb1LyHr4e4PDKE6cCepnP7JnBBvD FNr450kkkdAdavphOe9r5yF1BgfYErQhIHBCcYHaPJo2vqZbDWpsmh+Re/n570K6 Tk6ezAyNlNzZRZxe7EJQY670XcSxEtzKO6gunRRaBXW37Ndj4ro1tgQIkejanZz2 ZrUYrAqmVCY0M9IbwdR/GjqOC6oybtv8TyWf2TLHllpwrN9M -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIIDjCCBfagAwIBAgIJAOiOtsn4KhQoMA0GCSqGSIb3DQEBBQUAMIG8MQswCQYD VQQGEwJVUzEQMA4GA1UECBMHSW5kaWFuYTEVMBMGA1UEBxMMSW5kaWFuYXBvbGlz MSgwJgYDVQQKEx9Tb2Z0d2FyZSBpbiB0aGUgUHVibGljIEludGVyZXN0MRMwEQYD VQQLEwpob3N0bWFzdGVyMR4wHAYDVQQDExVDZXJ0aWZpY2F0ZSBBdXRob3JpdHkx JTAjBgkqhkiG9w0BCQEWFmhvc3RtYXN0ZXJAc3BpLWluYy5vcmcwHhcNMDgwNTEz MDgwNzU2WhcNMTgwNTExMDgwNzU2WjCBvDELMAkGA1UEBhMCVVMxEDAOBgNVBAgT B0luZGlhbmExFTATBgNVBAcTDEluZGlhbmFwb2xpczEoMCYGA1UEChMfU29mdHdh cmUgaW4gdGhlIFB1YmxpYyBJbnRlcmVzdDETMBEGA1UECxMKaG9zdG1hc3RlcjEe MBwGA1UEAxMVQ2VydGlmaWNhdGUgQXV0aG9yaXR5MSUwIwYJKoZIhvcNAQkBFhZo b3N0bWFzdGVyQHNwaS1pbmMub3JnMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIIC CgKCAgEA3DbmR0LCxFF1KYdAw9iOIQbSGE7r7yC9kDyFEBOMKVuUY/b0LfEGQpG5 GcRCaQi/izZF6igFM0lIoCdDkzWKQdh4s/Dvs24t3dHLfer0dSbTPpA67tfnLAS1 fOH1fMVO73e9XKKTM5LOfYFIz2u1IiwIg/3T1c87Lf21SZBb9q1NE8re06adU1Fx Y0b4ShZcmO4tbZoWoXaQ4mBDmdaJ1mwuepiyCwMs43pPx93jzONKao15Uvr0wa8u jyoIyxspgpJyQ7zOiKmqp4pRQ1WFmjcDeJPI8L20QcgHQprLNZd6ioFl3h1UCAHx ZFy3FxpRvB7DWYd2GBaY7r/2Z4GLBjXFS21ZGcfSxki+bhQog0oQnBv1b7ypjvVp /rLBVcznFMn5WxRTUQfqzj3kTygfPGEJ1zPSbqdu1McTCW9rXRTunYkbpWry9vjQ co7qch8vNGopCsUK7BxAhRL3pqXTT63AhYxMfHMgzFMY8bJYTAH1v+pk1Vw5xc5s zFNaVrpBDyXfa1C2x4qgvQLCxTtVpbJkIoRRKFauMe5e+wsWTUYFkYBE7axt8Feo +uthSKDLG7Mfjs3FIXcDhB78rKNDCGOM7fkn77SwXWfWT+3Qiz5dW8mRvZYChD3F TbxCP3T9PF2sXEg2XocxLxhsxGjuoYvJWdAY4wCAs1QnLpnwFVMCAwEAAaOCAg8w ggILMB0GA1UdDgQWBBQ0cdE41xU2g0dr1zdkQjuOjVKdqzCB8QYDVR0jBIHpMIHm gBQ0cdE41xU2g0dr1zdkQjuOjVKdq6GBwqSBvzCBvDELMAkGA1UEBhMCVVMxEDAO BgNVBAgTB0luZGlhbmExFTATBgNVBAcTDEluZGlhbmFwb2xpczEoMCYGA1UEChMf U29mdHdhcmUgaW4gdGhlIFB1YmxpYyBJbnRlcmVzdDETMBEGA1UECxMKaG9zdG1h c3RlcjEeMBwGA1UEAxMVQ2VydGlmaWNhdGUgQXV0aG9yaXR5MSUwIwYJKoZIhvcN AQkBFhZob3N0bWFzdGVyQHNwaS1pbmMub3JnggkA6I62yfgqFCgwDwYDVR0TAQH/ BAUwAwEB/zARBglghkgBhvhCAQEEBAMCAAcwCQYDVR0SBAIwADAuBglghkgBhvhC AQ0EIRYfU29mdHdhcmUgaW4gdGhlIFB1YmxpYyBJbnRlcmVzdDAwBglghkgBhvhC AQQEIxYhaHR0cHM6Ly9jYS5zcGktaW5jLm9yZy9jYS1jcmwucGVtMDIGCWCGSAGG +EIBAwQlFiNodHRwczovL2NhLnNwaS1pbmMub3JnL2NlcnQtY3JsLnBlbTAhBgNV HREEGjAYgRZob3N0bWFzdGVyQHNwaS1pbmMub3JnMA4GA1UdDwEB/wQEAwIBBjAN BgkqhkiG9w0BAQUFAAOCAgEAtM294LnqsgMrfjLp3nI/yUuCXp3ir1UJogxU6M8Y PCggHam7AwIvUjki+RfPrWeQswN/2BXja367m1YBrzXU2rnHZxeb1NUON7MgQS4M AcRb+WU+wmHo0vBqlXDDxm/VNaSsWXLhid+hoJ0kvSl56WEq2dMeyUakCHhBknIP qxR17QnwovBc78MKYiC3wihmrkwvLo9FYyaW8O4x5otVm6o6+YI5HYg84gd1GuEP sTC8cTLSOv76oYnzQyzWcsR5pxVIBcDYLXIC48s9Fmq6ybgREOJJhcyWR2AFJS7v dVkz9UcZFu/abF8HyKZQth3LZjQl/GaD68W2MEH4RkRiqMEMVObqTFoo5q7Gt/5/ O5aoLu7HaD7dAD0prypjq1/uSSotxdz70cbT0ZdWUoa2lOvUYFG3/B6bzAKb1B+P +UqPti4oOxfMxaYF49LTtcYDyeFIQpvLP+QX4P4NAZUJurgNceQJcHdC2E3hQqlg g9cXiUPS1N2nGLar1CQlh7XU4vwuImm9rWgs/3K1mKoGnOcqarihk3bOsPN/nOHg T7jYhkalMwIsJWE3KpLIrIF0aGOHM3a9BX9e1dUCbb2v/ypaqknsmHlHU5H2DjRa yaXG67Ljxay2oHA1u8hRadDytaIybrw/oDc5fHE2pgXfDBLkFqfF1stjo5VwP+YE o2A= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICrDCCAZQCCQCnA08qBjTVpjANBgkqhkiG9w0BAQUFADAYMRYwFAYDVQQDEw1k ZWJpYW4uZGViaWFuMB4XDTEyMDUzMTEwNDQxNVoXDTIyMDUyOTEwNDQxNVowGDEW MBQGA1UEAxMNZGViaWFuLmRlYmlhbjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCC AQoCggEBANCVWQAVBT+r593v5TfGFGhuhUknjGaUQ4YrAsNEXnYKoxlLD4sBoyJN Y6KCK+JYG0whATTaM6wtLSzCI6lendJn4+Z5oEFek/H8fKqW2EeyI7QovRx8iSTf lB+ZJNY59C6atSqT2JGHLi8VvFv2aJwdpjZASkkaGgXcZB4jhhnlbTRUQm0UdcJV LMwfCVZEwqQko8kb2AG0rhJFXeTlzs0mwXNCNmwvHYG7F1PEnfnt3y99w2O0pgmD TYuTvFwsZDlBttXfQV6ggpKACIIaJmAJA9M75mGxN4FiQZIoVKFkaLuwNrUTETBw JKoi1Q27jo4bjtendh4WE+gtlkSGFu8CAwEAATANBgkqhkiG9w0BAQUFAAOCAQEA L0/Y9eUM/5x/4lQU2HTlqSlL14RS+blUF1LibbPR1MEcYinx2OrVkeUYx1vzNMFm TmyYAP4k0zguMhTccU9OODAPWFOIe8sC48aSi4jiGlJQ+8moh/OuxJx4YJGKyDTV tjpquwTQt3aNJ2hvRAdG+2Pno9hHfebtNyd+4b7XGkSILhXi/oElCNe55WRvT2or JQaIPlCsVWV4O8iaz+1ACtg2Ydg1e4YdDdbNDUEscy6y7YoxVQBirIE3yicoIkZc OPR5KZD/4RpS6X/6bS7UVI3hitQawZGwgz9UI4n7VtHUDsmTEAGmT3YIOG3o9F6S zHP268MRpf/qQjeIUkJaKQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFyjCCA7KgAwIBAgIEAJiWjDANBgkqhkiG9w0BAQsFADBaMQswCQYDVQQGEwJO TDEeMBwGA1UECgwVU3RhYXQgZGVyIE5lZGVybGFuZGVuMSswKQYDVQQDDCJTdGFh dCBkZXIgTmVkZXJsYW5kZW4gUm9vdCBDQSAtIEcyMB4XDTA4MDMyNjExMTgxN1oX DTIwMDMyNTExMDMxMFowWjELMAkGA1UEBhMCTkwxHjAcBgNVBAoMFVN0YWF0IGRl ciBOZWRlcmxhbmRlbjErMCkGA1UEAwwiU3RhYXQgZGVyIE5lZGVybGFuZGVuIFJv b3QgQ0EgLSBHMjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMVZ5291 qj5LnLW4rJ4L5PnZyqtdj7U5EILXr1HgO+EASGrP2uEGQxGZqhQlEq0i6ABtQ8Sp uOUfiUtnvWFI7/3S4GCI5bkYYCjDdyutsDeqN95kWSpGV+RLufg3fNU254DBtvPU Z5uW6M7XxgpT0GtJlvOjCwV3SPcl5XCsMBQgJeN/dVrlSPhOewMHBPqCYYdu8DvE pMfQ9XQ+pV0aCPKbJdL2rAQmPlU6Yiile7Iwr/g3wtG61jj99O9JMDeZJiFIhQGp 5Rbn3JBV3w/oOM2ZNyFPXfUib2rFEhZgF1XyZWampzCROME4HYYEhLoaJXhena/M UGDWE4dS7WMfbWV9whUYdMrhfmQpjHLYFhN9C0lK8SgbIHRrxT3dsKpICT0ugpTN GmXZK4iambwYfp/ufWZ8Pr2UuIHOzZgweMFvZ9C+X+Bo7d7iscksWXiSqt8rYGPy 5V6548r6f1CGPqI0GAwJaCgRHOThuVw+R7oyPxjMW4T182t0xHJ04eOLoEq9jWYv 6q012iDTiIJh8BIitrzQ1aTsr1SIJSQ8p22xcik/Plemf1WvbibG/ufMQFxRRIEK eN5KzlW/HdXZt1bv8Hb/C3m1r737qWmRRpdogBQ2HbN/uymYNqUg+oJgYjOk7Na6 B6duxc8UpufWkjTYgfX8HV2qXB72o007uPc5AgMBAAGjgZcwgZQwDwYDVR0TAQH/ BAUwAwEB/zBSBgNVHSAESzBJMEcGBFUdIAAwPzA9BggrBgEFBQcCARYxaHR0cDov L3d3dy5wa2lvdmVyaGVpZC5ubC9wb2xpY2llcy9yb290LXBvbGljeS1HMjAOBgNV HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJFoMocVHYnitfGsNig0jQt8YojrMA0GCSqG SIb3DQEBCwUAA4ICAQCoQUpnKpKBglBu4dfYszk78wIVCVBR7y29JHuIhjv5tLyS CZa59sCrI2AGeYwRTlHSeYAz+51IvuxBQ4EffkdAHOV6CMqqi3WtFMTC6GY8ggen 5ieCWxjmD27ZUD6KQhgpxrRW/FYQoAUXvQwjf/ST7ZwaUb7dRUG/kSS0H4zpX897 IZmflZ85OkYcbPnNe5yQzSipx6lVu6xiNGI1E0sUOlWDuYaNkqbG9AclVMwWVxJK gnjIFNkXgiYtXSAfea7+1HAWFpWD2DU5/1JddRwWxRNVz0fMdWVSSt7wsKfkCpYL +63C4iWEst3kvX5ZbJvw8NjnyvLplzh+ib7M+zkXYT9y2zqR2GUBGR2tUKRXCnxL vJxxcypFURmFzI79R6d0lR2o0a9OF7FpJsKqeFdbxU2n5Z4FF5TKsl+gSRiNNOkm bEgeqmiSBeGCc1qb3AdbCG19ndeNIdn8FCCqwkXfP+cAslHkwvgFuXkajDTznlvk N1trSt8sV4pAWja63XVECDdCcAz+3F4hoKOKwJCcaNpQ5kUQR3i2TtJlycM33+FC Y7BXN0Ute4qcvwXqZVUz9zkQxSgqIXobisQk+T8VyJoVIPVVYpbtbZNQvOSqeK3Z ywplh6ZmwcSBo3c6WB4L7oOLnR7SUqTMHW+wmG2UMbX4cQrcufx9MmDm66+KAQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDujCCAqKgAwIBAgIEAJiWijANBgkqhkiG9w0BAQUFADBVMQswCQYDVQQGEwJO TDEeMBwGA1UEChMVU3RhYXQgZGVyIE5lZGVybGFuZGVuMSYwJAYDVQQDEx1TdGFh dCBkZXIgTmVkZXJsYW5kZW4gUm9vdCBDQTAeFw0wMjEyMTcwOTIzNDlaFw0xNTEy MTYwOTE1MzhaMFUxCzAJBgNVBAYTAk5MMR4wHAYDVQQKExVTdGFhdCBkZXIgTmVk ZXJsYW5kZW4xJjAkBgNVBAMTHVN0YWF0IGRlciBOZWRlcmxhbmRlbiBSb290IENB MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmNK1URF6gaYUmHFtvszn ExvWJw56s2oYHLZhWtVhCb/ekBPHZ+7d89rFDBKeNVU+LCeIQGv33N0iYfXCxw71 9tV2U02PjLwYdjeFnejKScfST5gTCaI+Ioicf9byEGW07l8Y1Rfj+MX94p2i71MO hXeiD+EwR+4A5zN9RGcaC1Hoi6CeUJhoNFIfLm0B8mBF8jHrqTFoKbt6QZ7GGX+U tFE5A3+y3qcym7RHjm+0Sq7lr7HcsBthvJly3uSJt3omXdozSVtSnA71iq3DuD3o BmrC1SoLbHuEvVYFy4ZlkuxEK7COudxwC0barbxjiDn622r+I/q85Ej0ZytqERAh SQIDAQABo4GRMIGOMAwGA1UdEwQFMAMBAf8wTwYDVR0gBEgwRjBEBgRVHSAAMDww OgYIKwYBBQUHAgEWLmh0dHA6Ly93d3cucGtpb3ZlcmhlaWQubmwvcG9saWNpZXMv cm9vdC1wb2xpY3kwDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBSofeu8Y6R0E3QA 7Jbg0zTBLL9s+DANBgkqhkiG9w0BAQUFAAOCAQEABYSHVXQ2YcG70dTGFagTtJ+k /rvuFbQvBgwp8qiSpGEN/KtcCFtREytNwiphyPgJWPwtArI5fZlmgb9uXJVFIGzm eafR2Bwp/MIgJ1HI8XxdNGdphREwxgDS1/PTfLbwMVcoEoJz6TMvplW0C5GUR5z6 u3pCMuiufi3IvKwUv9kP2Vv8wfl6leF9fpb8cbDCTMjfRTTJzg3ynGQI0DvDKcWy 7ZAEwbEpkcUwb8GpcjPM/l0WFywRaed+/sWDCN+83CI6LiBpIzlWYGeQiy52OfsR iJf2fL1LuCAWZwWN4jvBcj+UlTfHXbme2JOhF4//DGYVwSR8MnwDHTuhWEUykw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEDzCCAvegAwIBAgIBADANBgkqhkiG9w0BAQUFADBoMQswCQYDVQQGEwJVUzEl MCMGA1UEChMcU3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjEyMDAGA1UECxMp U3RhcmZpZWxkIENsYXNzIDIgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDQw NjI5MTczOTE2WhcNMzQwNjI5MTczOTE2WjBoMQswCQYDVQQGEwJVUzElMCMGA1UE ChMcU3RhcmZpZWxkIFRlY2hub2xvZ2llcywgSW5jLjEyMDAGA1UECxMpU3RhcmZp ZWxkIENsYXNzIDIgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggEgMA0GCSqGSIb3 DQEBAQUAA4IBDQAwggEIAoIBAQC3Msj+6XGmBIWtDBFk385N78gDGIc/oav7PKaf 8MOh2tTYbitTkPskpD6E8J7oX+zlJ0T1KKY/e97gKvDIr1MvnsoFAZMej2YcOadN +lq2cwQlZut3f+dZxkqZJRRU6ybH838Z1TBwj6+wRir/resp7defqgSHo9T5iaU0 X9tDkYI22WY8sbi5gv2cOj4QyDvvBmVmepsZGD3/cVE8MC5fvj13c7JdBmzDI1aa K4UmkhynArPkPw2vCHmCuDY96pzTNbO8acr1zJ3o/WSNF4Azbl5KXZnJHoe0nRrA 1W4TNSNe35tfPe/W93bC6j67eA0cQmdrBNj41tpvi/JEoAGrAgEDo4HFMIHCMB0G A1UdDgQWBBS/X7fRzt0fhvRbVazc1xDCDqmI5zCBkgYDVR0jBIGKMIGHgBS/X7fR zt0fhvRbVazc1xDCDqmI56FspGowaDELMAkGA1UEBhMCVVMxJTAjBgNVBAoTHFN0 YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xMjAwBgNVBAsTKVN0YXJmaWVsZCBD bGFzcyAyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5ggEAMAwGA1UdEwQFMAMBAf8w DQYJKoZIhvcNAQEFBQADggEBAAWdP4id0ckaVaGsafPzWdqbAYcaT1epoXkJKtv3 L7IezMdeatiDh6GX70k1PncGQVhiv45YuApnP+yz3SFmH8lU+nLMPUxA2IGvd56D eruix/U0F47ZEUD0/CwqTRV/p2JdLiXTAAsgGh1o+Re49L2L7ShZ3U0WixeDyLJl xy16paq8U4Zt3VekyvggQQto8PT7dL5WXXp59fkdheMtlb71cZBDzI0fmgAKhynp VSJYACPq4xJDKVtHCN2MQWplBqjlIapBtJUhlbl90TSrE9atvNziPTnNvT51cKEY WQPJIrSPnNVeKtelttQKbfi3QBFGmh95DmK/D5fs4C8fF5Q= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID3TCCAsWgAwIBAgIBADANBgkqhkiG9w0BAQsFADCBjzELMAkGA1UEBhMCVVMx EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoT HFN0YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xMjAwBgNVBAMTKVN0YXJmaWVs ZCBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5MDkwMTAwMDAw MFoXDTM3MTIzMTIzNTk1OVowgY8xCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6 b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxTdGFyZmllbGQgVGVj aG5vbG9naWVzLCBJbmMuMTIwMAYDVQQDEylTdGFyZmllbGQgUm9vdCBDZXJ0aWZp Y2F0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC ggEBAL3twQP89o/8ArFvW59I2Z154qK3A2FWGMNHttfKPTUuiUP3oWmb3ooa/RMg nLRJdzIpVv257IzdIvpy3Cdhl+72WoTsbhm5iSzchFvVdPtrX8WJpRBSiUZV9Lh1 HOZ/5FSuS/hVclcCGfgXcVnrHigHdMWdSL5stPSksPNkN3mSwOxGXn/hbVNMYq/N Hwtjuzqd+/x5AJhhdM8mgkBj87JyahkNmcrUDnXMN/uLicFZ8WJ/X7NfZTD4p7dN dloedl40wOiWVpmKs/B/pM293DIxfJHP4F8R+GuqSVzRmZTRouNjWwl2tVZi4Ut0 HZbUJtQIBFnQmA4O5t78w+wfkPECAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAO BgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFHwMMh+n2TB/xH1oo2Kooc6rB1snMA0G CSqGSIb3DQEBCwUAA4IBAQARWfolTwNvlJk7mh+ChTnUdgWUXuEok21iXQnCoKjU sHU48TRqneSfioYmUeYs0cYtbpUgSpIB7LiKZ3sx4mcujJUDJi5DnUox9g61DLu3 4jd/IroAow57UvtruzvE03lRTs2Q9GcHGcg8RnoNAX3FWOdt5oUwF5okxBDgBPfg 8n/Uqgr/Qh037ZTlZFkSIHc40zI+OIF1lnP6aI+xy84fxez6nH7PfrHxBy22/L/K pL/QlwVKvOoYKAKQvVR4CSFx09F9HdkWsKlhPdAKACL8x3vLCWRFCztAgfd9fDL1 mMpYjn0q7pBZc2T5NnReJaH1ZgUufzkVqSr7UIuOhWn0 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID7zCCAtegAwIBAgIBADANBgkqhkiG9w0BAQsFADCBmDELMAkGA1UEBhMCVVMx EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoT HFN0YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xOzA5BgNVBAMTMlN0YXJmaWVs ZCBTZXJ2aWNlcyBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5 MDkwMTAwMDAwMFoXDTM3MTIzMTIzNTk1OVowgZgxCzAJBgNVBAYTAlVTMRAwDgYD VQQIEwdBcml6b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxTdGFy ZmllbGQgVGVjaG5vbG9naWVzLCBJbmMuMTswOQYDVQQDEzJTdGFyZmllbGQgU2Vy dmljZXMgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQYJKoZI hvcNAQEBBQADggEPADCCAQoCggEBANUMOsQq+U7i9b4Zl1+OiFOxHz/Lz58gE20p OsgPfTz3a3Y4Y9k2YKibXlwAgLIvWX/2h/klQ4bnaRtSmpDhcePYLQ1Ob/bISdm2 8xpWriu2dBTrz/sm4xq6HZYuajtYlIlHVv8loJNwU4PahHQUw2eeBGg6345AWh1K Ts9DkTvnVtYAcMtS7nt9rjrnvDH5RfbCYM8TWQIrgMw0R9+53pBlbQLPLJGmpufe hRhJfGZOozptqbXuNC66DQO4M99H67FrjSXZm86B0UVGMpZwh94CDklDhbZsc7tk 6mFBrMnUVN+HL8cisibMn1lUaJ/8viovxFUcdUBgF4UCVTmLfwUCAwEAAaNCMEAw DwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJxfAN+q AdcwKziIorhtSpzyEZGDMA0GCSqGSIb3DQEBCwUAA4IBAQBLNqaEd2ndOxmfZyMI bw5hyf2E3F/YNoHN2BtBLZ9g3ccaaNnRbobhiCPPE95Dz+I0swSdHynVv/heyNXB ve6SbzJ08pGCL72CQnqtKrcgfU28elUSwhXqvfdqlS5sdJ/PHLTyxQGjhdByPq1z qwubdQxtRbeOlKyWN7Wg0I8VRw7j6IPdj/3vQQF3zCepYoUz8jcI73HPdwbeyBkd iEDPfUYd/x7H4c7/I9vG+o1VTqkC50cRRj70/b17KSa7qWFiNyi2LSr2EIZkyXCn 0q23KXB56jzaYyWf/Wi3MOxw+3WKt21gZ7IeyLnp2KhvAotnDU0mV3HaIPzBSlCN sSi6 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFYzCCA0ugAwIBAgIBOzANBgkqhkiG9w0BAQsFADBTMQswCQYDVQQGEwJJTDEW MBQGA1UEChMNU3RhcnRDb20gTHRkLjEsMCoGA1UEAxMjU3RhcnRDb20gQ2VydGlm aWNhdGlvbiBBdXRob3JpdHkgRzIwHhcNMTAwMTAxMDEwMDAxWhcNMzkxMjMxMjM1 OTAxWjBTMQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRkLjEsMCoG A1UEAxMjU3RhcnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgRzIwggIiMA0G CSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC2iTZbB7cgNr2Cu+EWIAOVeq8Oo1XJ JZlKxdBWQYeQTSFgpBSHO839sj60ZwNq7eEPS8CRhXBF4EKe3ikj1AENoBB5uNsD vfOpL9HG4A/LnooUCri99lZi8cVytjIl2bLzvWXFDSxu1ZJvGIsAQRSCb0AgJnoo D/Uefyf3lLE3PbfHkffiAez9lInhzG7TNtYKGXmu1zSCZf98Qru23QumNK9LYP5/ Q0kGi4xDuFby2X8hQxfqp0iVAXV16iulQ5XqFYSdCI0mblWbq9zSOdIxHWDirMxW RST1HFSr7obdljKF+ExP6JV2tgXdNiNnvP8V4so75qbsO+wmETRIjfaAKxojAuuK HDp2KntWFhxyKrOq42ClAJ8Em+JvHhRYW6Vsi1g8w7pOOlz34ZYrPu8HvKTlXcxN nw3h3Kq74W4a7I/htkxNeXJdFzULHdfBR9qWJODQcqhaX2YtENwvKhOuJv4KHBnM 0D4LnMgJLvlblnpHnOl68wVQdJVznjAJ85eCXuaPOQgeWeU1FEIT/wCc976qUM/i UUjXuG+v+E5+M5iSFGI6dWPPe/regjupuznixL0sAA7IF6wT700ljtizkC+p2il9 Ha90OrInwMEePnWjFqmveiJdnxMaz6eg6+OGCtP95paV1yPIN93EfKo2rJgaErHg TuixO/XWb/Ew1wIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE AwIBBjAdBgNVHQ4EFgQUS8W0QGutHLOlHGVuRjaJhwUMDrYwDQYJKoZIhvcNAQEL BQADggIBAHNXPyzVlTJ+N9uWkusZXn5T50HsEbZH77Xe7XRcxfGOSeD8bpkTzZ+K 2s06Ctg6Wgk/XzTQLwPSZh0avZyQN8gMjgdalEVGKua+etqhqaRpEpKwfTbURIfX UfEpY9Z1zRbkJ4kd+MIySP3bmdCPX1R0zKxnNBFi2QwKN4fRoxdIjtIXHfbX/dtl 6/2o1PXWT6RbdejF0mCy2wl+JYt7ulKSnj7oxXehPOBKc2thz4bcQ///If4jXSRK 9dNtD2IEBVeC2m6kMyV5Sy5UGYvMLD0w6dEG/+gyRr61M3Z3qAFdlsHB1b6uJcDJ HgoJIIihDsnzb02CVAAgp9KP5DlUFy6NHrgbuxu9mk47EDTcnIhT76IxW1hPkWLI wpqazRVdOKnWvvgTtZ8SafJQYqz7Fzf07rh1Z2AQ+4NQ+US1dZxAF7L+/XldblhY XzD8AK6vM8EOTmy6p6ahfzLbOOCxchcKK5HsamMm7YnUeMx0HgX4a/6ManY5Ka5l IxKVCCIcl85bBu4M4ru8H0ST9tg4RQUh7eStqxK2A6RCLi3ECToDZ2mEmuFZkIoo hdVddLHRDiBYmxOlsGOm7XtH/UVVMKTumtTm4ofvmMkyghEpIrwACjFeLQ/Ajulr so8uBtjRkcfGEvRM/TAXw8HaOFvjqermobp573PYtlNXLfbQ4ddI -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIHhzCCBW+gAwIBAgIBLTANBgkqhkiG9w0BAQsFADB9MQswCQYDVQQGEwJJTDEW MBQGA1UEChMNU3RhcnRDb20gTHRkLjErMCkGA1UECxMiU2VjdXJlIERpZ2l0YWwg Q2VydGlmaWNhdGUgU2lnbmluZzEpMCcGA1UEAxMgU3RhcnRDb20gQ2VydGlmaWNh dGlvbiBBdXRob3JpdHkwHhcNMDYwOTE3MTk0NjM3WhcNMzYwOTE3MTk0NjM2WjB9 MQswCQYDVQQGEwJJTDEWMBQGA1UEChMNU3RhcnRDb20gTHRkLjErMCkGA1UECxMi U2VjdXJlIERpZ2l0YWwgQ2VydGlmaWNhdGUgU2lnbmluZzEpMCcGA1UEAxMgU3Rh cnRDb20gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUA A4ICDwAwggIKAoICAQDBiNsJvGxGfHiflXu1M5DycmLWwTYgIiRezul38kMKogZk pMyONvg45iPwbm2xPN1yo4UcodM9tDMr0y+v/uqwQVlntsQGfQqedIXWeUyAN3rf OQVSWff0G0ZDpNKFhdLDcfN1YjS6LIp/Ho/u7TTQEceWzVI9ujPW3U3eCztKS5/C Ji/6tRYccjV3yjxd5srhJosaNnZcAdt0FCX+7bWgiA/deMotHweXMAEtcnn6RtYT Kqi5pquDSR3l8u/d5AGOGAqPY1MWhWKpDhk6zLVmpsJrdAfkK+F2PrRt2PZE4XNi HzvEvqBTViVsUQn3qqvKv3b9bZvzndu/PWa8DFaqr5hIlTpL36dYUNk4dalb6kMM Av+Z6+hsTXBbKWWc3apdzK8BMewM69KN6Oqce+Zu9ydmDBpI125C4z/eIT574Q1w +2OqqGwaVLRcJXrJosmLFqa7LH4XXgVNWG4SHQHuEhANxjJ/GP/89PrNbpHoNkm+ Gkhpi8KWTRoSsmkXwQqQ1vp5Iki/untp+HDH+no32NgN0nZPV/+Qt+OR0t3vwmC3 Zzrd/qqc8NSLf3Iizsafl7b4r4qgEKjZ+xjGtrVcUjyJthkqcwEKDwOzEmDyei+B 26Nu/yYwl/WL3YlXtq09s68rxbd2AvCl1iuahhQqcvbjM4xdCUsT37uMdBNSSwID AQABo4ICEDCCAgwwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYD VR0OBBYEFE4L7xqkQFulF2mHMMo0aEPQQa7yMB8GA1UdIwQYMBaAFE4L7xqkQFul F2mHMMo0aEPQQa7yMIIBWgYDVR0gBIIBUTCCAU0wggFJBgsrBgEEAYG1NwEBATCC ATgwLgYIKwYBBQUHAgEWImh0dHA6Ly93d3cuc3RhcnRzc2wuY29tL3BvbGljeS5w ZGYwNAYIKwYBBQUHAgEWKGh0dHA6Ly93d3cuc3RhcnRzc2wuY29tL2ludGVybWVk aWF0ZS5wZGYwgc8GCCsGAQUFBwICMIHCMCcWIFN0YXJ0IENvbW1lcmNpYWwgKFN0 YXJ0Q29tKSBMdGQuMAMCAQEagZZMaW1pdGVkIExpYWJpbGl0eSwgcmVhZCB0aGUg c2VjdGlvbiAqTGVnYWwgTGltaXRhdGlvbnMqIG9mIHRoZSBTdGFydENvbSBDZXJ0 aWZpY2F0aW9uIEF1dGhvcml0eSBQb2xpY3kgYXZhaWxhYmxlIGF0IGh0dHA6Ly93 d3cuc3RhcnRzc2wuY29tL3BvbGljeS5wZGYwEQYJYIZIAYb4QgEBBAQDAgAHMDgG CWCGSAGG+EIBDQQrFilTdGFydENvbSBGcmVlIFNTTCBDZXJ0aWZpY2F0aW9uIEF1 dGhvcml0eTANBgkqhkiG9w0BAQsFAAOCAgEAjo/n3JR5fPGFf59Jb2vKXfuM/gTF wWLRfUKKvFO3lANmMD+x5wqnUCBVJX92ehQN6wQOQOY+2IirByeDqXWmN3PH/UvS Ta0XQMhGvjt/UfzDtgUx3M2FIk5xt/JxXrAaxrqTi3iSSoX4eA+D/i+tLPfkpLst 0OcNOrg+zvZ49q5HJMqjNTbOx8aHmNrs++myziebiMMEofYLWWivydsQD032ZGNc pRJvkrKTlMeIFw6Ttn5ii5B/q06f/ON1FE8qMt9bDeD1e5MNq6HPh+GlBEXoPBKl CcWw0bdT82AUuoVpaiF8H3VhFyAXe2w7QSlc4axa0c2Mm+tgHRns9+Ww2vl5GKVF P0lDV9LdJNUso/2RjSe15esUBppMeyG7Oq0wBhjA2MFrLH9ZXF2RsXAiV+uKa0hK 1Q8p7MZAwC+ITGgBF3f0JBlPvfrhsiAhS90a2Cl9qrjeVOwhVYBsHvUwyKMQ5bLm KhQxw4UtjJixhlpPiVktucf3HMiKf8CdBUrmQk9io20ppB+Fq9vlgcitKj1MXVuE JnHEhV5xJMqlG2zYYdMa4FTbzrqpMrUi9nNBCV24F10OD5mQ1kfabwo6YigUZ4LZ 8dCAWZvLMdibD4x3TrVoivJs9iQOLWxwxXPR3hTQcY+203sC9uO41Alua551hDnm fyWl8kgAwKQB2j8= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEezCCA2OgAwIBAgIQNxkY5lNUfBq1uMtZWts1tzANBgkqhkiG9w0BAQUFADCB rjELMAkGA1UEBhMCREUxIDAeBgNVBAgTF0JhZGVuLVd1ZXJ0dGVtYmVyZyAoQlcp MRIwEAYDVQQHEwlTdHV0dGdhcnQxKTAnBgNVBAoTIERldXRzY2hlciBTcGFya2Fz c2VuIFZlcmxhZyBHbWJIMT4wPAYDVQQDEzVTLVRSVVNUIEF1dGhlbnRpY2F0aW9u IGFuZCBFbmNyeXB0aW9uIFJvb3QgQ0EgMjAwNTpQTjAeFw0wNTA2MjIwMDAwMDBa Fw0zMDA2MjEyMzU5NTlaMIGuMQswCQYDVQQGEwJERTEgMB4GA1UECBMXQmFkZW4t V3VlcnR0ZW1iZXJnIChCVykxEjAQBgNVBAcTCVN0dXR0Z2FydDEpMCcGA1UEChMg RGV1dHNjaGVyIFNwYXJrYXNzZW4gVmVybGFnIEdtYkgxPjA8BgNVBAMTNVMtVFJV U1QgQXV0aGVudGljYXRpb24gYW5kIEVuY3J5cHRpb24gUm9vdCBDQSAyMDA1OlBO MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2bVKwdMz6tNGs9HiTNL1 toPQb9UY6ZOvJ44TzbUlNlA0EmQpoVXhOmCTnijJ4/Ob4QSwI7+Vio5bG0F/WsPo TUzVJBY+h0jUJ67m91MduwwA7z5hca2/OnpYH5Q9XIHV1W/fuJvS9eXLg3KSwlOy ggLrra1fFi2SU3bxibYs9cEv4KdKb6AwajLrmnQDaHgTncovmwsdvs91DSaXm8f1 XgqfeN+zvOyauu9VjxuapgdjKRdZYgkqeQd3peDRF2npW932kKvimAoA0SVtnteF hy+S8dF2g08LOlk3KC8zpxdQ1iALCvQm+Z845y2kuJuJja2tyWp9iRe79n+Ag3rm 7QIDAQABo4GSMIGPMBIGA1UdEwEB/wQIMAYBAf8CAQAwDgYDVR0PAQH/BAQDAgEG MCkGA1UdEQQiMCCkHjAcMRowGAYDVQQDExFTVFJvbmxpbmUxLTIwNDgtNTAdBgNV HQ4EFgQUD8oeXHngovMpttKFswtKtWXsa1IwHwYDVR0jBBgwFoAUD8oeXHngovMp ttKFswtKtWXsa1IwDQYJKoZIhvcNAQEFBQADggEBAK8B8O0ZPCjoTVy7pWMciDMD pwCHpB8gq9Yc4wYfl35UvbfRssnV2oDsF9eK9XvCAPbpEW+EoFolMeKJ+aQAPzFo LtU96G7m1R08P7K9n3frndOMusDXtk3sU5wPBG7qNWdX4wple5A64U8+wwCSersF iXOMy6ZNwPv2AtawB6MDwidAnwzkhYItr5pCHdDHjfhA7p0GVxzZotiAFP7hYy0y h9WUUpY6RsZxlj33mA6ykaqP2vROJAA5VeitF7nTNCtKqUDMFypVZUF0Qn71wK/I k63yGFs9iQzbRzkk+OBM8h+wPQrKBU6JIRrjKpms/H+h8Q8bHz2eBIPdltkdOpQ= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF2TCCA8GgAwIBAgIQXAuFXAvnWUHfV8w/f52oNjANBgkqhkiG9w0BAQUFADBk MQswCQYDVQQGEwJjaDERMA8GA1UEChMIU3dpc3Njb20xJTAjBgNVBAsTHERpZ2l0 YWwgQ2VydGlmaWNhdGUgU2VydmljZXMxGzAZBgNVBAMTElN3aXNzY29tIFJvb3Qg Q0EgMTAeFw0wNTA4MTgxMjA2MjBaFw0yNTA4MTgyMjA2MjBaMGQxCzAJBgNVBAYT AmNoMREwDwYDVQQKEwhTd2lzc2NvbTElMCMGA1UECxMcRGlnaXRhbCBDZXJ0aWZp Y2F0ZSBTZXJ2aWNlczEbMBkGA1UEAxMSU3dpc3Njb20gUm9vdCBDQSAxMIICIjAN BgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA0LmwqAzZuz8h+BvVM5OAFmUgdbI9 m2BtRsiMMW8Xw/qabFbtPMWRV8PNq5ZJkCoZSx6jbVfd8StiKHVFXqrWW/oLJdih FvkcxC7mlSpnzNApbjyFNDhhSbEAn9Y6cV9Nbc5fuankiX9qUvrKm/LcqfmdmUc/ TilftKaNXXsLmREDA/7n29uj/x2lzZAeAR81sH8A25Bvxn570e56eqeqDFdvpG3F EzuwpdntMhy0XmeLVNxzh+XTF3xmUHJd1BpYwdnP2IkCb6dJtDZd0KTeByy2dbco kdaXvij1mB7qWybJvbCXc9qukSbraMH5ORXWZ0sKbU/Lz7DkQnGMU3nn7uHbHaBu HYwadzVcFh4rUx80i9Fs/PJnB3r1re3WmquhsUvhzDdf/X/NTa64H5xD+SpYVUNF vJbNcA78yeNmuk6NO4HLFWR7uZToXTNShXEuT46iBhFRyePLoW4xCGQMwtI89Tbo 19AOeCMgkckkKmUpWyL3Ic6DXqTz3kvTaI9GdVyDCW4pa8RwjPWd1yAv/0bSKzjC L3UcPX7ape8eYIVpQtPM+GP+HkM5haa2Y0EQs3MevNP6yn0WR+Kn1dCjigoIlmJW bjTb2QK5MHXjBNLnj8KwEUAKrNVxAmKLMb7dxiNYMUJDLXT5xp6mig/p/r+D5kNX JLrvRjSq1xIBOO0CAwEAAaOBhjCBgzAOBgNVHQ8BAf8EBAMCAYYwHQYDVR0hBBYw FDASBgdghXQBUwABBgdghXQBUwABMBIGA1UdEwEB/wQIMAYBAf8CAQcwHwYDVR0j BBgwFoAUAyUv3m+CATpcLNwroWm1Z9SM0/0wHQYDVR0OBBYEFAMlL95vggE6XCzc K6FptWfUjNP9MA0GCSqGSIb3DQEBBQUAA4ICAQA1EMvspgQNDQ/NwNurqPKIlwzf ky9NfEBWMXrrpA9gzXrzvsMnjgM+pN0S734edAY8PzHyHHuRMSG08NBsl9Tpl7Ik Vh5WwzW9iAUPWxAaZOHHgjD5Mq2eUCzneAXQMbFamIp1TpBcahQq4FJHgmDmHtqB sfsUC1rxn9KVuj7QG9YVHaO+htXbD8BJZLsuUBlL0iT43R4HVtA4oJVwIHaM190e 3p9xxCPvgxNcoyQVTSlAPGrEqdi3pkSlDfTgnXceQHAm/NrZNuR55LU/vJtlvrsR ls/bxig5OgjOR1tTWsWZ/l2p3e9M1MalrQLmjAcSHm8D0W+go/MpvRLHUKKwf4ip mXeascClOS5cfGniLLDqN2qk4Vrh9VDlg++luyqI54zb/W1elxmofmZ1a3Hqv7HH b6D0jqTsNFFbjCYDcKF31QESVwA12yPeDooomf2xEG9L/zgtYE4snOtnta1J7ksf rK/7DZBaZmBwXarNeNQk7shBoJMBkpxqnvy5JMWzFYJ+vq6VK+uxwNrjAWALXmms hFZhvnEX/h0TD/7Gh0Xp/jKgGg0TpJRVcaUWi7rKibCyx/yP2FS1k2Kdzs9Z+z0Y zirLNRWCXf9UIltxUvu3yf5gmwBBZPCqKuy2QkPOiWaByIufOVQDJdMWNY6E0F/6 MBr1mmz0DlP5OlvRHA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF2TCCA8GgAwIBAgIQHp4o6Ejy5e/DfEoeWhhntjANBgkqhkiG9w0BAQsFADBk MQswCQYDVQQGEwJjaDERMA8GA1UEChMIU3dpc3Njb20xJTAjBgNVBAsTHERpZ2l0 YWwgQ2VydGlmaWNhdGUgU2VydmljZXMxGzAZBgNVBAMTElN3aXNzY29tIFJvb3Qg Q0EgMjAeFw0xMTA2MjQwODM4MTRaFw0zMTA2MjUwNzM4MTRaMGQxCzAJBgNVBAYT AmNoMREwDwYDVQQKEwhTd2lzc2NvbTElMCMGA1UECxMcRGlnaXRhbCBDZXJ0aWZp Y2F0ZSBTZXJ2aWNlczEbMBkGA1UEAxMSU3dpc3Njb20gUm9vdCBDQSAyMIICIjAN BgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAlUJOhJ1R5tMJ6HJaI2nbeHCOFvEr jw0DzpPMLgAIe6szjPTpQOYXTKueuEcUMncy3SgM3hhLX3af+Dk7/E6J2HzFZ++r 0rk0X2s682Q2zsKwzxNoysjL67XiPS4h3+os1OD5cJZM/2pYmLcX5BtS5X4HAB1f 2uY+lQS3aYg5oUFgJWFLlTloYhyxCwWJwDaCFCE/rtuh/bxvHGCGtlOUSbkrRsVP ACu/obvLP+DHVxxX6NZp+MEkUp2IVd3Chy50I9AU/SpHWrumnf2U5NGKpV+GY3aF y6//SSj8gO1MedK75MDvAe5QQQg1I3ArqRa0jG6F6bYRzzHdUyYb3y1aSgJA/MTA tukxGggo5WDDH8SQjhBiYEQN7Aq+VRhxLKX0srwVYv8c474d2h5Xszx+zYIdkeNL 6yxSNLCK/RJOlrDrcH+eOfdmQrGrrFLadkBXeyq96G4DsguAhYidDMfCd7Camlf0 uPoTXGiTOmekl9AbmbeGMktg2M7v0Ax/lZ9vh0+Hio5fCHyqW/xavqGRn1V9TrAL acywlKinh/LTSlDcX3KwFnUey7QYYpqwpzmqm59m2I2mbJYV4+by+PGDYmy7Velh k6M99bFXi08jsJvllGov34zflVEpYKELKeRcVVi3qPyZ7iVNTA6z00yPhOgpD/0Q VAKFyPnlw4vP5w8CAwEAAaOBhjCBgzAOBgNVHQ8BAf8EBAMCAYYwHQYDVR0hBBYw FDASBgdghXQBUwIBBgdghXQBUwIBMBIGA1UdEwEB/wQIMAYBAf8CAQcwHQYDVR0O BBYEFE0mICKJS9PVpAqhb97iEoHF8TwuMB8GA1UdIwQYMBaAFE0mICKJS9PVpAqh b97iEoHF8TwuMA0GCSqGSIb3DQEBCwUAA4ICAQAyCrKkG8t9voJXiblqf/P0wS4R fbgZPnm3qKhyN2abGu2sEzsOv2LwnN+ee6FTSA5BesogpxcbtnjsQJHzQq0Qw1zv /2BZf82Fo4s9SBwlAjxnffUy6S8w5X2lejjQ82YqZh6NM4OKb3xuqFp1mrjX2lhI REeoTPpMSQpKwhI3qEAMw8jh0FcNlzKVxzqfl9NX+Ave5XLzo9v/tdhZsnPdTSpx srpJ9csc1fV5yJmz/MFMdOO0vSk3FQQoHt5FRnDsr7p4DooqzgB53MBfGWcsa0vv aGgLQ+OswWIJ76bdZWGgr4RVSJFSHMYlkSrQwSIjYVmvRRGFHQEkNI/Ps/8XciAT woCqISxxOQ7Qj1zB09GOInJGTB2Wrk9xseEFKZZZ9LuedT3PDTcNYtsmjGOpI99n Bjx8Oto0QuFmtEYE3saWmA9LSHokMnWRn6z3aOkquVVlzl1h0ydw2Df+n7mvoC5W t6NlUe07qxS/TFED6F+KBZvuim6c779o+sjaC+NCydAXFJy3SuCvkychVSa1ZC+N 8f+mQAWFBVzKBxlcCxMoTFh/wqXvRdpg065lYZ1Tg3TCrvJcwhbtkj6EPnNgiLx2 9CzP0H1907he0ZESEOnN3col49XtmS++dYFLJPlFRpTJKSFTnCZFqhMX5OfNeOI5 wSsSnqaeG8XmDtkx2Q== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF4DCCA8igAwIBAgIRAPL6ZOJ0Y9ON/RAdBB92ylgwDQYJKoZIhvcNAQELBQAw ZzELMAkGA1UEBhMCY2gxETAPBgNVBAoTCFN3aXNzY29tMSUwIwYDVQQLExxEaWdp dGFsIENlcnRpZmljYXRlIFNlcnZpY2VzMR4wHAYDVQQDExVTd2lzc2NvbSBSb290 IEVWIENBIDIwHhcNMTEwNjI0MDk0NTA4WhcNMzEwNjI1MDg0NTA4WjBnMQswCQYD VQQGEwJjaDERMA8GA1UEChMIU3dpc3Njb20xJTAjBgNVBAsTHERpZ2l0YWwgQ2Vy dGlmaWNhdGUgU2VydmljZXMxHjAcBgNVBAMTFVN3aXNzY29tIFJvb3QgRVYgQ0Eg MjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMT3HS9X6lds93BdY7Bx UglgRCgzo3pOCvrY6myLURYaVa5UJsTMRQdBTxB5f3HSek4/OE6zAMaVylvNwSqD 1ycfMQ4jFrclyxy0uYAyXhqdk/HoPGAsp15XGVhRXrwsVgu42O+LgrQ8uMIkqBPH oCE2G3pXKSinLr9xJZDzRINpUKTk4RtiGZQJo/PDvO/0vezbE53PnUgJUmfANykR HvvSEaeFGHR55E+FFOtSN+KxRdjMDUN/rhPSays/p8LiqG12W0OfvrSdsyaGOx9/ 5fLoZigWJdBLlzin5M8J0TbDC77aO0RYjb7xnglrPvMyxyuHxuxenPaHZa0zKcQv idm5y8kDnftslFGXEBuGCxobP/YCfnvUxVFkKJ3106yDgYjTdLRZncHrYTNaRdHL OdAGalNgHa/2+2m8atwBz735j9m9W8E6X47aD0upm50qKGsaCnw8qyIL5XctcfaC NYGu+HuB5ur+rPQam3Rc6I8k9l2dRsQs0h4rIWqDJ2dVSqTjyDKXZpBy2uPUZC5f 46Fq9mDU5zXNysRojddxyNMkM3OxbPlq4SjbX8Y96L5V5jcb7STZDxmPX2MYWFCB UWVv8p9+agTnNCRxunZLWB4ZvRVgRaoMEkABnRDixzgHcgplwLa7JSnaFp6LNYth 7eVxV4O1PHGf40+/fh6Bn0GXAgMBAAGjgYYwgYMwDgYDVR0PAQH/BAQDAgGGMB0G A1UdIQQWMBQwEgYHYIV0AVMCAgYHYIV0AVMCAjASBgNVHRMBAf8ECDAGAQH/AgED MB0GA1UdDgQWBBRF2aWBbj2ITY1x0kbBbkUe88SAnTAfBgNVHSMEGDAWgBRF2aWB bj2ITY1x0kbBbkUe88SAnTANBgkqhkiG9w0BAQsFAAOCAgEAlDpzBp9SSzBc1P6x XCX5145v9Ydkn+0UjrgEjihLj6p7jjm02Vj2e6E1CqGdivdj5eu9OYLU43otb98T PLr+flaYC/NUn81ETm484T4VvwYmneTwkLbUwp4wLh/vx3rEUMfqe9pQy3omywC0 Wqu1kx+AiYQElY2NfwmTv9SoqORjbdlk5LgpWgi/UOGED1V7XwgiG/W9mR4U9s70 WBCCswo9GcG/W6uqmdjyMb3lOGbcWAXH7WMaLgqXfIeTK7KK4/HsGOV1timH59yL Gn602MnTihdsfSlEvoqq9X46Lmgxk7lq2prg2+kupYTNHAq4Sgj5nPFhJpiTt3tm 7JFe3VE/23MPrQRYCd0EApUKPtN236YQHoA96M2kZNEzx5LH4k5E4wnJTsJdhw4S nr8PyQUQ3nqjsTzyP6WqJ3mtMX0f/fwZacXduT98zca0wjAefm6S139hdlqP65VN vBFuIXxZN5nQBrz5Bm0yFqXZaajh3DyAHmBR3NdUIR7KYndP+tiPsys6DXhyyWhB WkdKwqPrGtcKqzwyVcgKEZzfdNbwQBUdyLmPtTbFr/giuMod89a2GQ+fYWVq6nTI fI/DT11lgh/ZDYnadXL77/FHZxOzyNEZiCcmmpl5fx7kLD977vHeTYuWl8PVP3wb I+2ksx0WckNLIOFZfsLorSa/ovc= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFujCCA6KgAwIBAgIJALtAHEP1Xk+wMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV BAYTAkNIMRUwEwYDVQQKEwxTd2lzc1NpZ24gQUcxHzAdBgNVBAMTFlN3aXNzU2ln biBHb2xkIENBIC0gRzIwHhcNMDYxMDI1MDgzMDM1WhcNMzYxMDI1MDgzMDM1WjBF MQswCQYDVQQGEwJDSDEVMBMGA1UEChMMU3dpc3NTaWduIEFHMR8wHQYDVQQDExZT d2lzc1NpZ24gR29sZCBDQSAtIEcyMIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIIC CgKCAgEAr+TufoskDhJuqVAtFkQ7kpJcyrhdhJJCEyq8ZVeCQD5XJM1QiyUqt2/8 76LQwB8CJEoTlo8jE+YoWACjR8cGp4QjK7u9lit/VcyLwVcfDmJlD909Vopz2q5+ bbqBHH5CjCA12UNNhPqE21Is8w4ndwtrvxEvcnifLtg+5hg3Wipy+dpikJKVyh+c 6bM8K8vzARO/Ws/BtQpgvd21mWRTuKCWs2/iJneRjOBiEAKfNA+k1ZIzUd6+jbqE emA8atufK+ze3gE/bk3lUIbLtK/tREDFylqM2tIrfKjuvqblCqoOpd8FUrdVxyJd MmqXl2MT28nbeTZ7hTpKxVKJ+STnnXepgv9VHKVxaSvRAiTysybUa9oEVeXBCsdt MDeQKuSeFDNeFhdVxVu1yzSJkvGdJo+hB9TGsnhQ2wwMC3wLjEHXuendjIj3o02y MszYF9rNt85mndT9Xv+9lz4pded+p2JYryU0pUHHPbwNUMoDAw8IWh+Vc3hiv69y FGkOpeUDDniOJihC8AcLYiAQZzlG+qkDzAQ4embvIIO1jEpWjpEA/I5cgt6IoMPi aG59je883WX0XaxR7ySArqpWl2/5rX3aYT+YdzylkbYcjCbaZaIJbcHiVOO5ykxM gI93e2CaHt+28kgeDrpOVG2Y4OGiGqJ3UM/EY5LsRxmd6+ZrzsECAwEAAaOBrDCB qTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUWyV7 lqRlUX64OfPAeGZe6Drn8O4wHwYDVR0jBBgwFoAUWyV7lqRlUX64OfPAeGZe6Drn 8O4wRgYDVR0gBD8wPTA7BglghXQBWQECAQEwLjAsBggrBgEFBQcCARYgaHR0cDov L3JlcG9zaXRvcnkuc3dpc3NzaWduLmNvbS8wDQYJKoZIhvcNAQEFBQADggIBACe6 45R88a7A3hfm5djV9VSwg/S7zV4Fe0+fdWavPOhWfvxyeDgD2StiGwC5+OlgzczO UYrHUDFu4Up+GC9pWbY9ZIEr44OE5iKHjn3g7gKZYbge9LgriBIWhMIxkziWMaa5 O1M/wySTVltpkuzFwbs4AOPsF6m43Md8AYOfMke6UiI0HTJ6CVanfCU2qT1L2sCC bwq7EsiHSycR+R4tx5M/nttfJmtS2S6K8RTGRI0Vqbe/vd6mGu6uLftIdxf+u+yv GPUqUfA5hJeVbG4bwyvEdGB5JbAKJ9/fXtI5z0V9QkvfsywexcZdylU6oJxpmo/a 77KwPJ+HbBIrZXAVUjEaJM9vMSNQH4xPjyPDdEFjHFWoFN0+4FFQz/EbMFYOkrCC hdiDyyJkvC24JdVUorgG6q2SpCSgwYa1ShNqR88uC1aVVMvOmttqtKay20EIhid3 92qgQmwLOM7XdVAyksLfKzAiSNDVQTglXaTpXZ/GlHXQRf0wl0OPkKsKx4ZzYEpp Ld6leNcG2mqeSz53OiATIgHQv2ieY2BrNU0LbbqhPcCT4H8js1WtciVORvnSFu+w ZMEBnunKoGqYDs/YYPIvSbjkQuE4NRb0yG5P94FW6LqjviOvrv1vA+ACOzB2+htt Qc8Bsem4yWb02ybzOqR08kkkW8mw0FfB+j564ZfJ -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFwTCCA6mgAwIBAgIITrIAZwwDXU8wDQYJKoZIhvcNAQEFBQAwSTELMAkGA1UE BhMCQ0gxFTATBgNVBAoTDFN3aXNzU2lnbiBBRzEjMCEGA1UEAxMaU3dpc3NTaWdu IFBsYXRpbnVtIENBIC0gRzIwHhcNMDYxMDI1MDgzNjAwWhcNMzYxMDI1MDgzNjAw WjBJMQswCQYDVQQGEwJDSDEVMBMGA1UEChMMU3dpc3NTaWduIEFHMSMwIQYDVQQD ExpTd2lzc1NpZ24gUGxhdGludW0gQ0EgLSBHMjCCAiIwDQYJKoZIhvcNAQEBBQAD ggIPADCCAgoCggIBAMrfogLi2vj8Bxax3mCq3pZcZB/HL37PZ/pEQtZ2Y5Wu669y IIpFR4ZieIbWIDkm9K6j/SPnpZy1IiEZtzeTIsBQnIJ71NUERFzLtMKfkr4k2Htn IuJpX+UFeNSH2XFwMyVTtIc7KZAoNppVRDBopIOXfw0enHb/FZ1glwCNioUD7IC+ 6ixuEFGSzH7VozPY1kneWCqv9hbrS3uQMpe5up1Y8fhXSQQeol0GcN1x2/ndi5ob jM89o03Oy3z2u5yg+gnOI2Ky6Q0f4nIoj5+saCB9bzuohTEJfwvH6GXp43gOCWcw izSC+13gzJ2BbWLuCB4ELE6b7P6pT1/9aXjvCR+htL/68++QHkwFix7qepF6w9fl +zC8bBsQWJj3Gl/QKTIDE0ZNYWqFTFJ0LwYfexHihJfGmfNtf9dng34TaNhxKFrY zt3oEBSa/m0jh26OWnA81Y0JAKeqvLAxN23IhBQeW71FYyBrS3SMvds6DsHPWhaP pZjydomyExI7C3d3rLvlPClKknLKYRorXkzig3R3+jVIeoVNjZpTxN94ypeRSCtF KwH3HBqi7Ri6Cr2D+m+8jVeTO9TUps4e8aCxzqv9KyiaTxvXw3LbpMS/XUz13XuW ae5ogObnmLo2t/5u7Su9IPhlGdpVCX4l3P5hYnL5fhgC72O00Puv5TtjjGePAgMB AAGjgawwgakwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0O BBYEFFCvzAeHFUdvOMW0ZdHelarp35zMMB8GA1UdIwQYMBaAFFCvzAeHFUdvOMW0 ZdHelarp35zMMEYGA1UdIAQ/MD0wOwYJYIV0AVkBAQEBMC4wLAYIKwYBBQUHAgEW IGh0dHA6Ly9yZXBvc2l0b3J5LnN3aXNzc2lnbi5jb20vMA0GCSqGSIb3DQEBBQUA A4ICAQAIhab1Fgz8RBrBY+D5VUYI/HAcQiiWjrfFwUF1TglxeeVtlspLpYhg0DB0 uMoI3LQwnkAHFmtllXcBrqS3NQuB2nEVqXQXOHtYyvkv+8Bldo1bAbl93oI9ZLi+ FHSjClTTLJUYFzX1UWs/j6KWYTl4a0vlpqD4U99REJNi54Av4tHgvI42Rncz7Lj7 jposiU0xEQ8mngS7twSNC/K5/FqdOxa3L8iYq/6KUFkuozv8KV2LwUvJ4ooTHbG/ u0IdUt1O2BReEMYxB+9xJ/cbOQncguqLs5WGXv312l0xpuAxtpTmREl0xRbl9x8D YSjFyMsSoEJL+WuICI20MhjzdZ/EfwBPBZWcoxcCw7NTm6ogOSkrZvqdr16zktK1 puEa+S1BaYEUtLS17Yk9zvupnTVCRLEcFHOBzyoBNZox1S2PbYTfgE1X4z/FhHXa icYwu+uPyyIIoK6q8QNsOktNCaUOcsZWayFCTiMlFGiudgp8DAdwZPmaL/YFOSbG DI8Zf0NebvRbFS/bYV3mZy8/CJT5YLSYMdp08YSTcU1f+2BY0fvEwW2JorsgH51x kcsymxM9Pn2SUjWskpSi0xjCfMfqr3YFFt1nJ8J+HAciIfNAChs0B0QTwoRqjt8Z Wr9/6x3iGjjRXK9HkmuAtTClyY3YqzGBH9/CZjfTk6mFhnll0g== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFvTCCA6WgAwIBAgIITxvUL1S7L0swDQYJKoZIhvcNAQEFBQAwRzELMAkGA1UE BhMCQ0gxFTATBgNVBAoTDFN3aXNzU2lnbiBBRzEhMB8GA1UEAxMYU3dpc3NTaWdu IFNpbHZlciBDQSAtIEcyMB4XDTA2MTAyNTA4MzI0NloXDTM2MTAyNTA4MzI0Nlow RzELMAkGA1UEBhMCQ0gxFTATBgNVBAoTDFN3aXNzU2lnbiBBRzEhMB8GA1UEAxMY U3dpc3NTaWduIFNpbHZlciBDQSAtIEcyMIICIjANBgkqhkiG9w0BAQEFAAOCAg8A MIICCgKCAgEAxPGHf9N4Mfc4yfjDmUO8x/e8N+dOcbpLj6VzHVxumK4DV644N0Mv Fz0fyM5oEMF4rhkDKxD6LHmD9ui5aLlV8gREpzn5/ASLHvGiTSf5YXu6t+WiE7br YT7QbNHm+/pe7R20nqA1W6GSy/BJkv6FCgU+5tkL4k+73JU3/JHpMjUi0R86TieF nbAVlDLaYQ1HTWBCrpJH6INaUFjpiou5XaHc3ZlKHzZnu0jkg7Y360g6rw9njxcH 6ATK72oxh9TAtvmUcXtnZLi2kUpCe2UuMGoM9ZDulebyzYLs2aFK7PayS+VFheZt eJMELpyCbTapxDFkH4aDCyr0NQp4yVXPQbBH6TCfmb5hqAaEuSh6XzjZG6k4sIN/ c8HDO0gqgg8hm7jMqDXDhBuDsz6+pJVpATqJAHgE2cn0mRmrVn5bi4Y5FZGkECwJ MoBgs5PAKrYYC51+jUnyEEp/+dVGLxmSo5mnJqy7jDzmDrxHB9xzUfFwZC8I+bRH HTBsROopN4WSaGa8gzj+ezku01DwH/teYLappvonQfGbGHLy9YR0SslnxFSuSGTf jNFusB3hB48IHpmccelM2KX3RxIfdNFRnobzwqIjQAtz20um53MGjMGg6cFZrEb6 5i/4z3GcRm25xBWNOHkDRUjvxF3XCO6HOSKGsg0PWEP3calILv3q1h8CAwEAAaOB rDCBqTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU F6DNweRBtjpbO8tFnb0cwpj6hlgwHwYDVR0jBBgwFoAUF6DNweRBtjpbO8tFnb0c wpj6hlgwRgYDVR0gBD8wPTA7BglghXQBWQEDAQEwLjAsBggrBgEFBQcCARYgaHR0 cDovL3JlcG9zaXRvcnkuc3dpc3NzaWduLmNvbS8wDQYJKoZIhvcNAQEFBQADggIB AHPGgeAn0i0P4JUw4ppBf1AsX19iYamGamkYDHRJ1l2E6kFSGG9YrVBWIGrGvShp WJHckRE1qTodvBqlYJ7YH39FkWnZfrt4csEGDyrOj4VwYaygzQu4OSlWhDJOhrs9 xCrZ1x9y7v5RoSJBsXECYxqCsGKrXlcSH9/L3XWgwF15kIwb4FDm3jH+mHtwX6WQ 2K34ArZv02DdQEsixT2tOnqfGhpHkXkzuoLcMmkDlm4fS/Bx/uNncqCxv1yL5PqZ IseEuRuNI5c/7SXgz2W79WEE790eslpBIlqhn10s6FvJbakMDHiqYMZWjwFaDGi8 aRl5xB9+lwW/xekkUV7U1UtT7dkjWjYDZaPBA61BMPNGG4WQr2W11bHkFlt4dR2X em1ZqSqPe97Dh4kQmUlzeMg9vVE1dCrV8X5pGyq7O70luJpaPXJhkGaH7gzWTdQR dAtq/gsD/KNVV4n+SsuuWxcFyPKNIzFTONItaj+CuY0IavdeQXRuwxF+B6wpYJE/ OMpXEA29MC/HpeZBoNquBYeaoKRlbEwJDIm6uNO5wJOKMPqN5ZprFQFOZ6raYlY+ hAhm0sQ2fac+EPyI4NSA5QC9qvNOBqN6avlicuMJT+ubDgEj8Z+7fNzcbBGXJbLy tGMU0gYqZ4yD9c7qB9iaah7s5Aq7KkzrCWA5zspi2C5u -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFcjCCA1qgAwIBAgIQH51ZWtcvwgZEpYAIaeNe9jANBgkqhkiG9w0BAQUFADA/ MQswCQYDVQQGEwJUVzEwMC4GA1UECgwnR292ZXJubWVudCBSb290IENlcnRpZmlj YXRpb24gQXV0aG9yaXR5MB4XDTAyMTIwNTEzMjMzM1oXDTMyMTIwNTEzMjMzM1ow PzELMAkGA1UEBhMCVFcxMDAuBgNVBAoMJ0dvdmVybm1lbnQgUm9vdCBDZXJ0aWZp Y2F0aW9uIEF1dGhvcml0eTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB AJoluOzMonWoe/fOW1mKydGGEghU7Jzy50b2iPN86aXfTEc2pBsBHH8eV4qNw8XR IePaJD9IK/ufLqGU5ywck9G/GwGHU5nOp/UKIXZ3/6m3xnOUT0b3EEk3+qhZSV1q gQdW8or5BtD3cCJNtLdBuTK4sfCxw5w/cP1T3YGq2GN49thTbqGsaoQkclSGxtKy yhwOeYHWtXBiCAEuTk8O1RGvqa/lmr/czIdtJuTJV6L7lvnM4T9TjGxMfptTCAts F/tnyMKtsc2AtJfcdgEWFelq16TheEfOhtX7MfP6Mb40qij7cEwdScevLJ1tZqa2 jWR+tSBqnTuBto9AAGdLiYa4zGX+FVPpBMHWXx1E1wovJ5pGfaENda1UhhXcSTvx ls4Pm6Dso3pdvtUqdULle96ltqqvKKyskKw4t9VoNSZ63Pc78/1Fm9G7Q3hub/FC VGqY8A2tl+lSXunVanLeavcbYBT0peS2cWeqH+riTcFCQP5nRhc4L0c/cZyu5SHK YS1tB6iEfC3uUSXxY5Ce/eFXiGvviiNtsea9P63RPZYLhY3Naye7twWb7LuRqQoH EgKXTiCQ8P8NHuJBO9NAOueNXdpm5AKwB1KYXA6OM5zCppX7VRluTI6uSw+9wThN Xo+EHWbNxWCWtFJaBYmOlXqYwZE8lSOyDvR5tMl8wUohAgMBAAGjajBoMB0GA1Ud DgQWBBTMzO/MKWCkO7GStjz6MmKPrCUVOzAMBgNVHRMEBTADAQH/MDkGBGcqBwAE MTAvMC0CAQAwCQYFKw4DAhoFADAHBgVnKgMAAAQUA5vwIhP/lSg209yewDL7MTqK UWUwDQYJKoZIhvcNAQEFBQADggIBAECASvomyc5eMN1PhnR2WPWus4MzeKR6dBcZ TulStbngCnRiqmjKeKBMmo4sIy7VahIkv9Ro04rQ2JyftB8M3jh+Vzj8jeJPXgyf qzvS/3WXy6TjZwj/5cAWtUgBfen5Cv8b5Wppv3ghqMKnI6mGq3ZW6A4M9hPdKmaK ZEk9GhiHkASfQlK3T8v+R0F2Ne//AHY2RTKbxkaFXeIksB7jSJaYV0eUVXoPQbFE JPPB/hprv4j9wabak2BegUqZIJxIZhm1AHlUD7gsL0u8qV1bYH+Mh6XgUmMqvtg7 hUAV/h62ZT/FS9p+tXo1KaMuephgIqP0fSdOLeq0dDzpD6QzDxARvBMB1uUO07+1 EqLhRSPAzAhuYbeJq4PjJB7mXQfnHyA+z2fI56wwbSdLaG5LKlwCCDTb+HbkZ6Mm nD+iMsJKxYEYMRBWqoTvLQr/uB930r+lWKBi5NdLkXWNiYCYfm3LU05er/ayl4WX udpVBrkk7tfGOB5jGxI7leFYrPLfhNVfmS8NVVvmONsuP3LpSIXLuykTjx44Vbnz ssQwmSNOXfJIoRIM3BKQCZBUkQM8R+XVyWXgt0t97EfTsws+rZ7QdAAO671RrcDe LMDDav7v3Aun+kbfYNucpllQdSNpc5Oy+fwC00fmcc4QAu4njIT/rEUNE1yDMuAl pYYsfPQS -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEqjCCA5KgAwIBAgIOLmoAAQACH9dSISwRXDswDQYJKoZIhvcNAQEFBQAwdjEL MAkGA1UEBhMCREUxHDAaBgNVBAoTE1RDIFRydXN0Q2VudGVyIEdtYkgxIjAgBgNV BAsTGVRDIFRydXN0Q2VudGVyIENsYXNzIDIgQ0ExJTAjBgNVBAMTHFRDIFRydXN0 Q2VudGVyIENsYXNzIDIgQ0EgSUkwHhcNMDYwMTEyMTQzODQzWhcNMjUxMjMxMjI1 OTU5WjB2MQswCQYDVQQGEwJERTEcMBoGA1UEChMTVEMgVHJ1c3RDZW50ZXIgR21i SDEiMCAGA1UECxMZVEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMiBDQTElMCMGA1UEAxMc VEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMiBDQSBJSTCCASIwDQYJKoZIhvcNAQEBBQAD ggEPADCCAQoCggEBAKuAh5uO8MN8h9foJIIRszzdQ2Lu+MNF2ujhoF/RKrLqk2jf tMjWQ+nEdVl//OEd+DFwIxuInie5e/060smp6RQvkL4DUsFJzfb95AhmC1eKokKg uNV/aVyQMrKXDcpK3EY+AlWJU+MaWss2xgdW94zPEfRMuzBwBJWl9jmM/XOBCH2J XjIeIqkiRUuwZi4wzJ9l/fzLganx4Duvo4bRierERXlQXa7pIXSSTYtZgo+U4+lK 8edJsBTj9WLL1XK9H7nSn6DNqPoByNkN39r8R52zyFTfSUrxIan+GE7uSNQZu+99 5OKdy1u2bv/jzVrndIIFuoAlOMvkaZ6vQaoahPUCAwEAAaOCATQwggEwMA8GA1Ud EwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBTjq1RMgKHbVkO3 kUrL84J6E1wIqzCB7QYDVR0fBIHlMIHiMIHfoIHcoIHZhjVodHRwOi8vd3d3LnRy dXN0Y2VudGVyLmRlL2NybC92Mi90Y19jbGFzc18yX2NhX0lJLmNybIaBn2xkYXA6 Ly93d3cudHJ1c3RjZW50ZXIuZGUvQ049VEMlMjBUcnVzdENlbnRlciUyMENsYXNz JTIwMiUyMENBJTIwSUksTz1UQyUyMFRydXN0Q2VudGVyJTIwR21iSCxPVT1yb290 Y2VydHMsREM9dHJ1c3RjZW50ZXIsREM9ZGU/Y2VydGlmaWNhdGVSZXZvY2F0aW9u TGlzdD9iYXNlPzANBgkqhkiG9w0BAQUFAAOCAQEAjNfffu4bgBCzg/XbEeprS6iS GNn3Bzn1LL4GdXpoUxUc6krtXvwjshOg0wn/9vYua0Fxec3ibf2uWWuFHbhOIprt ZjluS5TmVfwLG4t3wVMTZonZKNaL80VKY7f9ewthXbhtvsPcW3nS7Yblok2+XnR8 au0WOB9/WIFaGusyiC2y8zl3gK9etmF1KdsjTYjKUCjLhdLTEKJZbtOTVAB6okaV hgWcqRmY5TFyDADiZ9lA4CQze28suVyrZZ0srHbqNZn1l7kPJOzHdiEoZa5X6AeI dUpWoNIFOqTmjZKILPPy4cHGYdtBxceb9w4aUUXCYWvcZCcXjFq32nQozZfkvQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEqjCCA5KgAwIBAgIOSkcAAQAC5aBd1j8AUb8wDQYJKoZIhvcNAQEFBQAwdjEL MAkGA1UEBhMCREUxHDAaBgNVBAoTE1RDIFRydXN0Q2VudGVyIEdtYkgxIjAgBgNV BAsTGVRDIFRydXN0Q2VudGVyIENsYXNzIDMgQ0ExJTAjBgNVBAMTHFRDIFRydXN0 Q2VudGVyIENsYXNzIDMgQ0EgSUkwHhcNMDYwMTEyMTQ0MTU3WhcNMjUxMjMxMjI1 OTU5WjB2MQswCQYDVQQGEwJERTEcMBoGA1UEChMTVEMgVHJ1c3RDZW50ZXIgR21i SDEiMCAGA1UECxMZVEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMyBDQTElMCMGA1UEAxMc VEMgVHJ1c3RDZW50ZXIgQ2xhc3MgMyBDQSBJSTCCASIwDQYJKoZIhvcNAQEBBQAD ggEPADCCAQoCggEBALTgu1G7OVyLBMVMeRwjhjEQY0NVJz/GRcekPewJDRoeIMJW Ht4bNwcwIi9v8Qbxq63WyKthoy9DxLCyLfzDlml7forkzMA5EpBCYMnMNWju2l+Q Vl/NHE1bWEnrDgFPZPosPIlY2C8u4rBo6SI7dYnWRBpl8huXJh0obazovVkdKyT2 1oQDZogkAHhg8fir/gKya/si+zXmFtGt9i4S5Po1auUZuV3bOx4a+9P/FRQI2Alq ukWdFHlgfa9Aigdzs5OW03Q0jTo3Kd5c7PXuLjHCINy+8U9/I1LZW+Jk2ZyqBwi1 Rb3R0DHBq1SfqdLDYmAD8bs5SpJKPQq5ncWg/jcCAwEAAaOCATQwggEwMA8GA1Ud EwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBTUovyfs8PYA9NX XAek0CSnwPIA1DCB7QYDVR0fBIHlMIHiMIHfoIHcoIHZhjVodHRwOi8vd3d3LnRy dXN0Y2VudGVyLmRlL2NybC92Mi90Y19jbGFzc18zX2NhX0lJLmNybIaBn2xkYXA6 Ly93d3cudHJ1c3RjZW50ZXIuZGUvQ049VEMlMjBUcnVzdENlbnRlciUyMENsYXNz JTIwMyUyMENBJTIwSUksTz1UQyUyMFRydXN0Q2VudGVyJTIwR21iSCxPVT1yb290 Y2VydHMsREM9dHJ1c3RjZW50ZXIsREM9ZGU/Y2VydGlmaWNhdGVSZXZvY2F0aW9u TGlzdD9iYXNlPzANBgkqhkiG9w0BAQUFAAOCAQEANmDkcPcGIEPZIxpC8vijsrlN irTzwppVMXzEO2eatN9NDoqTSheLG43KieHPOh6sHfGcMrSOWXaiQYUlN6AT0PV8 TtXqluJucsG7Kv5sbviRmEb8yRtXW+rIGjs/sFGYPAfaLFkB2otE6OF0/ado3VS6 g0bsyEa1+K+XwDsJHI/OcpY9M1ZwvJbL2NV9IJqDnxrcOfHFcqMRA/07QlIp2+gB 95tejNaNhk4Z+rwcvsUhpYeeeC422wlxo3I0+GzjBgnyXlal092Y+tTmBvTwtiBj S+opvaqCZh77gaqnN60TGOaSw4HBM7uIHqHn4rS9MWwOUT1v+5ZWgOI2F9Hc5A== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID3TCCAsWgAwIBAgIOHaIAAQAC7LdggHiNtgYwDQYJKoZIhvcNAQEFBQAweTEL MAkGA1UEBhMCREUxHDAaBgNVBAoTE1RDIFRydXN0Q2VudGVyIEdtYkgxJDAiBgNV BAsTG1RDIFRydXN0Q2VudGVyIFVuaXZlcnNhbCBDQTEmMCQGA1UEAxMdVEMgVHJ1 c3RDZW50ZXIgVW5pdmVyc2FsIENBIEkwHhcNMDYwMzIyMTU1NDI4WhcNMjUxMjMx MjI1OTU5WjB5MQswCQYDVQQGEwJERTEcMBoGA1UEChMTVEMgVHJ1c3RDZW50ZXIg R21iSDEkMCIGA1UECxMbVEMgVHJ1c3RDZW50ZXIgVW5pdmVyc2FsIENBMSYwJAYD VQQDEx1UQyBUcnVzdENlbnRlciBVbml2ZXJzYWwgQ0EgSTCCASIwDQYJKoZIhvcN AQEBBQADggEPADCCAQoCggEBAKR3I5ZEr5D0MacQ9CaHnPM42Q9e3s9B6DGtxnSR JJZ4Hgmgm5qVSkr1YnwCqMqs+1oEdjneX/H5s7/zA1hV0qq34wQi0fiU2iIIAI3T fCZdzHd55yx4Oagmcw6iXSVphU9VDprvxrlE4Vc93x9UIuVvZaozhDrzznq+VZeu jRIPFDPiUHDDSYcTvFHe15gSWu86gzOSBnWLknwSaHtwag+1m7Z3W0hZneTvWq3z wZ7U10VOylY0Ibw+F1tvdwxIAUMpsN0/lm7mlaoMwCC2/T42J5zjXM9OgdwZu5GQ fezmlwQek8wiSdeXhrYTCjxDI3d+8NzmzSQfO4ObNDqDNOMCAwEAAaNjMGEwHwYD VR0jBBgwFoAUkqR1LKSevoFE63n8isWVpesQdXMwDwYDVR0TAQH/BAUwAwEB/zAO BgNVHQ8BAf8EBAMCAYYwHQYDVR0OBBYEFJKkdSyknr6BROt5/IrFlaXrEHVzMA0G CSqGSIb3DQEBBQUAA4IBAQAo0uCG1eb4e/CX3CJrO5UUVg8RMKWaTzqwOuAGy2X1 7caXJ/4l8lfmXpWMPmRgFVp/Lw0BxbFg/UU1z/CyvwbZ71q+s2IhtNerNXxTPqYn 8aEt2hojnczd7Dwtnic0XQ/CNnm8yUpiLe1r2X1BQ3y2qsrtYbE3ghUJGooWMNjs ydZHcnhLEEYUjl8Or+zHL6sQ17bxbuyGssLoDZJz3KL0Dzq/YSMQiZxIQG5wALPT ujdEWBF6AmqI8Dc08BnprNRlc/ZpjGSUOnmFKbAWKwyCPwacx/0QK54PLLae4xW/ 2TYcuiUaUj0a7CIMHOCkoj3w6DnPgcB77V0fb8XQC9eY -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEKzCCAxOgAwIBAgIEOsylTDANBgkqhkiG9w0BAQUFADBDMQswCQYDVQQGEwJE SzEVMBMGA1UEChMMVERDIEludGVybmV0MR0wGwYDVQQLExRUREMgSW50ZXJuZXQg Um9vdCBDQTAeFw0wMTA0MDUxNjMzMTdaFw0yMTA0MDUxNzAzMTdaMEMxCzAJBgNV BAYTAkRLMRUwEwYDVQQKEwxUREMgSW50ZXJuZXQxHTAbBgNVBAsTFFREQyBJbnRl cm5ldCBSb290IENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxLhA vJHVYx/XmaCLDEAedLdInUaMArLgJF/wGROnN4NrXceO+YQwzho7+vvOi20jxsNu Zp+Jpd/gQlBn+h9sHvTQBda/ytZO5GhgbEaqHF1j4QeGDmUApy6mcca8uYGoOn0a 0vnRrEvLznWv3Hv6gXPU/Lq9QYjUdLP5Xjg6PEOo0pVOd20TDJ2PeAG3WiAfAzc1 4izbSysseLlJ28TQx5yc5IogCSEWVmb/Bexb4/DPqyQkXsN/cHoSxNK1EKC2IeGN eGlVRGn1ypYcNIUXJXfi9i8nmHj9eQY6otZaQ8H/7AQ77hPv01ha/5Lr7K7a8jcD R0G2l8ktCkEiu7vmpwIDAQABo4IBJTCCASEwEQYJYIZIAYb4QgEBBAQDAgAHMGUG A1UdHwReMFwwWqBYoFakVDBSMQswCQYDVQQGEwJESzEVMBMGA1UEChMMVERDIElu dGVybmV0MR0wGwYDVQQLExRUREMgSW50ZXJuZXQgUm9vdCBDQTENMAsGA1UEAxME Q1JMMTArBgNVHRAEJDAigA8yMDAxMDQwNTE2MzMxN1qBDzIwMjEwNDA1MTcwMzE3 WjALBgNVHQ8EBAMCAQYwHwYDVR0jBBgwFoAUbGQBx/2FbazI2p5QCIUItTxWqFAw HQYDVR0OBBYEFGxkAcf9hW2syNqeUAiFCLU8VqhQMAwGA1UdEwQFMAMBAf8wHQYJ KoZIhvZ9B0EABBAwDhsIVjUuMDo0LjADAgSQMA0GCSqGSIb3DQEBBQUAA4IBAQBO Q8zR3R0QGwZ/t6T609lN+yOfI1Rb5osvBCiLtSdtiaHsmGnc540mgwV5dOy0uaOX wTUA/RXaOYE6lTGQ3pfphqiZdwzlWqCE/xIWrG64jcN7ksKsLtB9KOy282A4aW8+ 2ARVPp7MVdK6/rtHBNcK2RYKNCn1WBPVT8+PVkuzHu7TmHnaCB4Mb7j4Fifvwm89 9qNLPg7kbWzbO0ESm70NRyN/PErQr8Cv9u8btRXE64PECV90i9kR+8JWsTz4cMo0 jUNAE4z9mQNUecYu6oah9jrUCbz0vGbMPVjQV0kK7iXiQe4T+Zs4NNEA9X7nlB38 aQNiuJkFBT1reBK9sG9l -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFGTCCBAGgAwIBAgIEPki9xDANBgkqhkiG9w0BAQUFADAxMQswCQYDVQQGEwJE SzEMMAoGA1UEChMDVERDMRQwEgYDVQQDEwtUREMgT0NFUyBDQTAeFw0wMzAyMTEw ODM5MzBaFw0zNzAyMTEwOTA5MzBaMDExCzAJBgNVBAYTAkRLMQwwCgYDVQQKEwNU REMxFDASBgNVBAMTC1REQyBPQ0VTIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A MIIBCgKCAQEArGL2YSCyz8DGhdfjeebM7fI5kqSXLmSjhFuHnEz9pPPEXyG9VhDr 2y5h7JNp46PMvZnDBfwGuMo2HP6QjklMxFaaL1a8z3sM8W9Hpg1DTeLpHTk0zY0s 2RKY+ePhwUp8hjjEqcRhiNJerxomTdXkoCJHhNlktxmW/OwZ5LKXJk5KTMuPJItU GBxIYXvViGjaXbXqzRowwYCDdlCqT9HU3Tjw7xb04QxQBr/q+3pJoSgrHPb8FTKj dGqPqcNiKXEx5TukYBdedObaE+3pHx8b0bJoc8YQNHVGEBDjkAB2QMuLt0MJIf+r TpPGWOmlgtt3xDqZsXKVSQTwtyv6e1mO3QIDAQABo4ICNzCCAjMwDwYDVR0TAQH/ BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwgewGA1UdIASB5DCB4TCB3gYIKoFQgSkB AQEwgdEwLwYIKwYBBQUHAgEWI2h0dHA6Ly93d3cuY2VydGlmaWthdC5kay9yZXBv c2l0b3J5MIGdBggrBgEFBQcCAjCBkDAKFgNUREMwAwIBARqBgUNlcnRpZmlrYXRl ciBmcmEgZGVubmUgQ0EgdWRzdGVkZXMgdW5kZXIgT0lEIDEuMi4yMDguMTY5LjEu MS4xLiBDZXJ0aWZpY2F0ZXMgZnJvbSB0aGlzIENBIGFyZSBpc3N1ZWQgdW5kZXIg T0lEIDEuMi4yMDguMTY5LjEuMS4xLjARBglghkgBhvhCAQEEBAMCAAcwgYEGA1Ud HwR6MHgwSKBGoESkQjBAMQswCQYDVQQGEwJESzEMMAoGA1UEChMDVERDMRQwEgYD VQQDEwtUREMgT0NFUyBDQTENMAsGA1UEAxMEQ1JMMTAsoCqgKIYmaHR0cDovL2Ny bC5vY2VzLmNlcnRpZmlrYXQuZGsvb2Nlcy5jcmwwKwYDVR0QBCQwIoAPMjAwMzAy MTEwODM5MzBagQ8yMDM3MDIxMTA5MDkzMFowHwYDVR0jBBgwFoAUYLWF7FZkfhIZ J2cdUBVLc647+RIwHQYDVR0OBBYEFGC1hexWZH4SGSdnHVAVS3OuO/kSMB0GCSqG SIb2fQdBAAQQMA4bCFY2LjA6NC4wAwIEkDANBgkqhkiG9w0BAQUFAAOCAQEACrom JkbTc6gJ82sLMJn9iuFXehHTuJTXCRBuo7E4A9G28kNBKWKnctj7fAXmMXAnVBhO inxO5dHKjHiIzxvTkIvmI/gLDjNDfZziChmPyQE+dF10yYscA+UYyAFMP8uXBV2Y caaYb7Z8vTd/vuGTJW1v8AqtFxjhA7wHKcitJuj4YfD9IQl+mo6paH1IYnK9AOoB mbgGglGBTvH1tJFUuSN6AJqfXY3gPGS5GhKSKseCRHI53OI8xthV9RVOyAUO28bQ YqbsFbS1AoLbrIyigfCbmTH1ICCoiGEKB5+U/NDXG8wuF/MEJ3Zn61SD/aSQfgY9 BKNDLdr8C2LqL19iUw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDJzCCApCgAwIBAgIBATANBgkqhkiG9w0BAQQFADCBzjELMAkGA1UEBhMCWkEx FTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYD VQQKExRUaGF3dGUgQ29uc3VsdGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlv biBTZXJ2aWNlcyBEaXZpc2lvbjEhMB8GA1UEAxMYVGhhd3RlIFByZW1pdW0gU2Vy dmVyIENBMSgwJgYJKoZIhvcNAQkBFhlwcmVtaXVtLXNlcnZlckB0aGF3dGUuY29t MB4XDTk2MDgwMTAwMDAwMFoXDTIwMTIzMTIzNTk1OVowgc4xCzAJBgNVBAYTAlpB MRUwEwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQBgNVBAcTCUNhcGUgVG93bjEdMBsG A1UEChMUVGhhd3RlIENvbnN1bHRpbmcgY2MxKDAmBgNVBAsTH0NlcnRpZmljYXRp b24gU2VydmljZXMgRGl2aXNpb24xITAfBgNVBAMTGFRoYXd0ZSBQcmVtaXVtIFNl cnZlciBDQTEoMCYGCSqGSIb3DQEJARYZcHJlbWl1bS1zZXJ2ZXJAdGhhd3RlLmNv bTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA0jY2aovXwlue2oFBYo847kkE VdbQ7xwblRZH7xhINTpS9CtqBo87L+pW46+GjZ4X9560ZXUCTe/LCaIhUdib0GfQ ug2SBhRz1JPLlyoAnFxODLz6FVL88kRu2hFKbgifLy3j+ao6hnO2RlNYyIkFvYMR uHM/qgeN9EJN50CdHDcCAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG 9w0BAQQFAAOBgQAmSCwWwlj66BZ0DKqqX1Q/8tfJeGBeXm43YyJ3Nn6yF8Q0ufUI hfzJATj/Tb7yFkJD57taRvvBxhEf8UqwKEbJw8RCfbz6q1lu1bdRiBHjpIUZa4JM pAwSremkrj/xw0llmozFyD4lt5SZu5IycQfwhl7tUCemDaYj+bvLpgcUQg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICiDCCAg2gAwIBAgIQNfwmXNmET8k9Jj1Xm67XVjAKBggqhkjOPQQDAzCBhDEL MAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjE4MDYGA1UECxMvKGMp IDIwMDcgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxJDAi BgNVBAMTG3RoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EgLSBHMjAeFw0wNzExMDUwMDAw MDBaFw0zODAxMTgyMzU5NTlaMIGEMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMdGhh d3RlLCBJbmMuMTgwNgYDVQQLEy8oYykgMjAwNyB0aGF3dGUsIEluYy4gLSBGb3Ig YXV0aG9yaXplZCB1c2Ugb25seTEkMCIGA1UEAxMbdGhhd3RlIFByaW1hcnkgUm9v dCBDQSAtIEcyMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEotWcgnuVnfFSeIf+iha/ BebfowJPDQfGAFG6DAJSLSKkQjnE/o/qycG+1E3/n3qe4rF8mq2nhglzh9HnmuN6 papu+7qzcMBniKI11KOasf2twu8x+qi58/sIxpHR+ymVo0IwQDAPBgNVHRMBAf8E BTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUmtgAMADna3+FGO6Lts6K DPgR4bswCgYIKoZIzj0EAwMDaQAwZgIxAN344FdHW6fmCsO99YCKlzUNG4k8VIZ3 KMqh9HneteY4sPBlcIx/AlTCv//YoT7ZzwIxAMSNlPzcU9LcnXgWHxUzI1NS41ox XZ3Krr0TKUQNJ1uo52icEvdYPy5yAlejj6EULg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEKjCCAxKgAwIBAgIQYAGXt0an6rS0mtZLL/eQ+zANBgkqhkiG9w0BAQsFADCB rjELMAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjEoMCYGA1UECxMf Q2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMvKGMpIDIw MDggdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxJDAiBgNV BAMTG3RoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EgLSBHMzAeFw0wODA0MDIwMDAwMDBa Fw0zNzEyMDEyMzU5NTlaMIGuMQswCQYDVQQGEwJVUzEVMBMGA1UEChMMdGhhd3Rl LCBJbmMuMSgwJgYDVQQLEx9DZXJ0aWZpY2F0aW9uIFNlcnZpY2VzIERpdmlzaW9u MTgwNgYDVQQLEy8oYykgMjAwOCB0aGF3dGUsIEluYy4gLSBGb3IgYXV0aG9yaXpl ZCB1c2Ugb25seTEkMCIGA1UEAxMbdGhhd3RlIFByaW1hcnkgUm9vdCBDQSAtIEcz MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsr8nLPvb2FvdeHsbnndm gcs+vHyu86YnmjSjaDFxODNi5PNxZnmxqWWjpYvVj2AtP0LMqmsywCPLLEHd5N/8 YZzic7IilRFDGF/Eth9XbAoFWCLINkw6fKXRz4aviKdEAhN0cXMKQlkC+BsUa0Lf b1+6a4KinVvnSr0eAXLbS3ToO39/fR8EtCab4LRarEc9VbjXsCZSKAExQGbY2SS9 9irY7CFJXJv2eul/VTV+lmuNk5Mny5K76qxAwJ/C+IDPXfRa3M50hqY+bAtTyr2S zhkGcuYMXDhpxwTWvGzOW/b3aJzcJRVIiKHpqfiYnODz1TEoYRFsZ5aNOZnLwkUk OQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNV HQ4EFgQUrWyqlGCc7eT/+j4KdCtjA/e2Wb8wDQYJKoZIhvcNAQELBQADggEBABpA 2JVlrAmSicY59BDlqQ5mU1143vokkbvnRFHfxhY0Cu9qRFHqKweKA3rD6z8KLFIW oCtDuSWQP3CpMyVtRRooOyfPqsMpQhvfO0zAMzRbQYi/aytlryjvsvXDqmbOe1bu t8jLZ8HJnBoYuMTDSQPxYA5QzUbF83d597YV4Djbxy8ooAw/dyZ02SUS2jHaGh7c KUGRIjxpp7sC8rZcJwOJ9Abqm+RyguOhCcHpABnTPtRwa7pxpqpYrvS76Wy274fM m7v/OeZWYdMKp8RcTGB7BXcmer/YB1IsYvdwY9k5vG8cwnncdimvzsUsZAReiDZu MdRAGmI0Nj81Aa6sY6A= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEIDCCAwigAwIBAgIQNE7VVyDV7exJ9C/ON9srbTANBgkqhkiG9w0BAQUFADCB qTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5jLjEoMCYGA1UECxMf Q2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjE4MDYGA1UECxMvKGMpIDIw MDYgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxHzAdBgNV BAMTFnRoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EwHhcNMDYxMTE3MDAwMDAwWhcNMzYw NzE2MjM1OTU5WjCBqTELMAkGA1UEBhMCVVMxFTATBgNVBAoTDHRoYXd0ZSwgSW5j LjEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjE4MDYG A1UECxMvKGMpIDIwMDYgdGhhd3RlLCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNl IG9ubHkxHzAdBgNVBAMTFnRoYXd0ZSBQcmltYXJ5IFJvb3QgQ0EwggEiMA0GCSqG SIb3DQEBAQUAA4IBDwAwggEKAoIBAQCsoPD7gFnUnMekz52hWXMJEEUMDSxuaPFs W0hoSVk3/AszGcJ3f8wQLZU0HObrTQmnHNK4yZc2AreJ1CRfBsDMRJSUjQJib+ta 3RGNKJpchJAQeg29dGYvajig4tVUROsdB58Hum/u6f1OCyn1PoSgAfGcq/gcfomk 6KHYcWUNo1F77rzSImANuVud37r8UVsLr5iy6S7pBOhih94ryNdOwUxkHt3Ph1i6 Sk/KaAcdHJ1KxtUvkcx8cXIcxcBn6zL9yZJclNqFwJu/U30rCfSMnZEfl2pSy94J NqR32HuHUETVPm4pafs5SSYeCaWAe0At6+gnhcn+Yf1+5nyXHdWdAgMBAAGjQjBA MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBR7W0XP r87Lev0xkhpqtvNG61dIUDANBgkqhkiG9w0BAQUFAAOCAQEAeRHAS7ORtvzw6WfU DW5FvlXok9LOAz/t2iWwHVfLHjp2oEzsUHboZHIMpKnxuIvW1oeEuzLlQRHAd9mz YJ3rG9XRbkREqaYB7FViHXe4XI5ISXycO1cRrK1zN44veFyQaEfZYGDm/Ac9IiAX xPcW6cTYcvnIc3zfFi8VqT79aie2oetaupgf1eNNZAqdE8hhuvU5HIe6uL17In/2 /qxAeeWsEG89jxt5dovEN7MhGITlNgDrYyCZuen+MwS7QcjBAvlEYyCegc5C09Y/ LHbTY5xZ3Y+m4Q6gLkH3LpVHz7z9M/P2C2F+fpErgUfCJzDupxBdN49cOSvkBPB7 jVaMaA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDEzCCAnygAwIBAgIBATANBgkqhkiG9w0BAQQFADCBxDELMAkGA1UEBhMCWkEx FTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYD VQQKExRUaGF3dGUgQ29uc3VsdGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlv biBTZXJ2aWNlcyBEaXZpc2lvbjEZMBcGA1UEAxMQVGhhd3RlIFNlcnZlciBDQTEm MCQGCSqGSIb3DQEJARYXc2VydmVyLWNlcnRzQHRoYXd0ZS5jb20wHhcNOTYwODAx MDAwMDAwWhcNMjAxMjMxMjM1OTU5WjCBxDELMAkGA1UEBhMCWkExFTATBgNVBAgT DFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBUb3duMR0wGwYDVQQKExRUaGF3 dGUgQ29uc3VsdGluZyBjYzEoMCYGA1UECxMfQ2VydGlmaWNhdGlvbiBTZXJ2aWNl cyBEaXZpc2lvbjEZMBcGA1UEAxMQVGhhd3RlIFNlcnZlciBDQTEmMCQGCSqGSIb3 DQEJARYXc2VydmVyLWNlcnRzQHRoYXd0ZS5jb20wgZ8wDQYJKoZIhvcNAQEBBQAD gY0AMIGJAoGBANOkUG7I/1Zr5s9dtuoMaHVHoqrC2oQl/Kj0R1HahbUgdJSGHg91 yekIYfUGbTBuFRkC6VLAYttNmZ7iagxEOM3+vuNkCXDF/rFrKbYvScg71CcEJRCX L+eQbcAoQpnXTEPew/UhbVSfXcNY4cDk2VuwuNy0e982OsK1ZiIS1ocNAgMBAAGj EzARMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEEBQADgYEAB/pMaVz7lcxG 7oWDTSEwjsrZqG9JGubaUeNgcGyEYRGhGshIPllDfU+VPaGLtwtimHp1it2ITk6e QNuozDJ0uW8NxuOzRAvZim+aKZuZGCg70eNAKJpaPNW15yAbi8qkq43pUdniTCxZ qdq5snUb9kLy78fyGPmJvKP/iiMucEc= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDZzCCAk+gAwIBAgIQGx+ttiD5JNM2a/fH8YygWTANBgkqhkiG9w0BAQUFADBF MQswCQYDVQQGEwJHQjEYMBYGA1UEChMPVHJ1c3RpcyBMaW1pdGVkMRwwGgYDVQQL ExNUcnVzdGlzIEZQUyBSb290IENBMB4XDTAzMTIyMzEyMTQwNloXDTI0MDEyMTEx MzY1NFowRTELMAkGA1UEBhMCR0IxGDAWBgNVBAoTD1RydXN0aXMgTGltaXRlZDEc MBoGA1UECxMTVHJ1c3RpcyBGUFMgUm9vdCBDQTCCASIwDQYJKoZIhvcNAQEBBQAD ggEPADCCAQoCggEBAMVQe547NdDfxIzNjpvto8A2mfRC6qc+gIMPpqdZh8mQRUN+ AOqGeSoDvT03mYlmt+WKVoaTnGhLaASMk5MCPjDSNzoiYYkchU59j9WvezX2fihH iTHcDnlkH5nSW7r+f2C/revnPDgpai/lkQtV/+xvWNUtyd5MZnGPDNcE2gfmHhjj vSkCqPoc4Vu5g6hBSLwacY3nYuUtsuvffM/bq1rKMfFMIvMFE/eC+XN5DL7XSxzA 0RU8k0Fk0ea+IxciAIleH2ulrG6nS4zto3Lmr2NNL4XSFDWaLk6M6jKYKIahkQlB OrTh4/L68MkKokHdqeMDx4gVOxzUGpTXn2RZEm0CAwEAAaNTMFEwDwYDVR0TAQH/ BAUwAwEB/zAfBgNVHSMEGDAWgBS6+nEleYtXQSUhhgtx67JkDoshZzAdBgNVHQ4E FgQUuvpxJXmLV0ElIYYLceuyZA6LIWcwDQYJKoZIhvcNAQEFBQADggEBAH5Y//01 GX2cGE+esCu8jowU/yyg2kdbw++BLa8F6nRIW/M+TgfHbcWzk88iNVy2P3UnXwmW zaD+vkAMXBJV+JOCyinpXj9WV4s4NvdFGkwozZ5BuO1WTISkQMi4sKUraXAEasP4 1BIy+Q7DsdwyhEQsb8tGD+pmQQ9P8Vilpg0ND2HepZ5dfWWhPBfnqFVO76DH7cZE f1T1o+CP8HxVIo8ptoGj4W1OLBuAZ+ytIJ8MYmHVl/9D7S3B2l0pKoU/rGXuhg8F jZBf3+6f9L/uHfuY5H+QK4R4EA5sSVPvFVtlRkpdr7r7OnIdzfYliB6XzCGcKQEN ZetX2fNXlrtIzYE= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDwzCCAqugAwIBAgIBATANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UEBhMCREUx KzApBgNVBAoMIlQtU3lzdGVtcyBFbnRlcnByaXNlIFNlcnZpY2VzIEdtYkgxHzAd BgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBDZW50ZXIxJTAjBgNVBAMMHFQtVGVsZVNl YyBHbG9iYWxSb290IENsYXNzIDMwHhcNMDgxMDAxMTAyOTU2WhcNMzMxMDAxMjM1 OTU5WjCBgjELMAkGA1UEBhMCREUxKzApBgNVBAoMIlQtU3lzdGVtcyBFbnRlcnBy aXNlIFNlcnZpY2VzIEdtYkgxHzAdBgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBDZW50 ZXIxJTAjBgNVBAMMHFQtVGVsZVNlYyBHbG9iYWxSb290IENsYXNzIDMwggEiMA0G CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC9dZPwYiJvJK7genasfb3ZJNW4t/zN 8ELg63iIVl6bmlQdTQyK9tPPcPRStdiTBONGhnFBSivwKixVA9ZIw+A5OO3yXDw/ RLyTPWGrTs0NvvAgJ1gORH8EGoel15YUNpDQSXuhdfsaa3Ox+M6pCSzyU9XDFES4 hqX2iys52qMzVNn6chr3IhUciJFrf2blw2qAsCTz34ZFiP0Zf3WHHx+xGwpzJFu5 ZeAsVMhg02YXP+HMVDNzkQI6pn97djmiH5a2OK61yJN0HZ65tOVgnS9W0eDrXltM EnAMbEQgqxHY9Bn20pxSN+f6tsIxO0rUFJmtxxr1XV/6B7h8DR/Wgx6zAgMBAAGj QjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBS1 A/d2O2GCahKqGFPrAyGUv/7OyjANBgkqhkiG9w0BAQsFAAOCAQEAVj3vlNW92nOy WL6ukK2YJ5f+AbGwUgC4TeQbIXQbfsDuXmkqJa9c1h3a0nnJ85cp4IaH3gRZD/FZ 1GSFS5mvJQQeyUapl96Cshtwn5z2r3Ex3XsFpSzTucpH9sry9uetuUg/vBa3wW30 6gmv7PO15wWeph6KU1HWk4HMdJP2udqmJQV0eVp+QD6CSyYRMG7hP0HHRwA11fXT 91Q+gT3aSWqas+8QPebrb9HIIkfLzM8BMZLZGOMivgkeGj5asuRrDFR6fUNOuIml e9eiPZaGzPImNC1qkp2aGtAw4l1OBLBfiyB+d8E9lYLRRpo7PHi4b6HQDWSieB4p TpPDpFQUWw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFFzCCA/+gAwIBAgIBETANBgkqhkiG9w0BAQUFADCCASsxCzAJBgNVBAYTAlRS MRgwFgYDVQQHDA9HZWJ6ZSAtIEtvY2FlbGkxRzBFBgNVBAoMPlTDvHJraXllIEJp bGltc2VsIHZlIFRla25vbG9qaWsgQXJhxZ90xLFybWEgS3VydW11IC0gVMOcQsSw VEFLMUgwRgYDVQQLDD9VbHVzYWwgRWxla3Ryb25payB2ZSBLcmlwdG9sb2ppIEFy YcWfdMSxcm1hIEVuc3RpdMO8c8O8IC0gVUVLQUUxIzAhBgNVBAsMGkthbXUgU2Vy dGlmaWthc3lvbiBNZXJrZXppMUowSAYDVQQDDEFUw5xCxLBUQUsgVUVLQUUgS8O2 ayBTZXJ0aWZpa2EgSGl6bWV0IFNhxJ9sYXnEsWPEsXPEsSAtIFPDvHLDvG0gMzAe Fw0wNzA4MjQxMTM3MDdaFw0xNzA4MjExMTM3MDdaMIIBKzELMAkGA1UEBhMCVFIx GDAWBgNVBAcMD0dlYnplIC0gS29jYWVsaTFHMEUGA1UECgw+VMO8cmtpeWUgQmls aW1zZWwgdmUgVGVrbm9sb2ppayBBcmHFn3TEsXJtYSBLdXJ1bXUgLSBUw5xCxLBU QUsxSDBGBgNVBAsMP1VsdXNhbCBFbGVrdHJvbmlrIHZlIEtyaXB0b2xvamkgQXJh xZ90xLFybWEgRW5zdGl0w7xzw7wgLSBVRUtBRTEjMCEGA1UECwwaS2FtdSBTZXJ0 aWZpa2FzeW9uIE1lcmtlemkxSjBIBgNVBAMMQVTDnELEsFRBSyBVRUtBRSBLw7Zr IFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sxc8SxIC0gU8O8csO8bSAzMIIB IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAim1L/xCIOsP2fpTo6iBkcK4h gb46ezzb8R1Sf1n68yJMlaCQvEhOEav7t7WNeoMojCZG2E6VQIdhn8WebYGHV2yK O7Rm6sxA/OOqbLLLAdsyv9Lrhc+hDVXDWzhXcLh1xnnRFDDtG1hba+818qEhTsXO fJlfbLm4IpNQp81McGq+agV/E5wrHur+R84EpW+sky58K5+eeROR6Oqeyjh1jmKw lZMq5d/pXpduIF9fhHpEORlAHLpVK/swsoHvhOPc7Jg4OQOFCKlUAwUp8MmPi+oL hmUZEdPpCSPeaJMDyTYcIW7OjGbxmTDY17PDHfiBLqi9ggtm/oLL4eAagsNAgQID AQABo0IwQDAdBgNVHQ4EFgQUvYiHyY/2pAoLquvF/pEjnatKijIwDgYDVR0PAQH/ BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAB18+kmP NOm3JpIWmgV050vQbTlswyb2zrgxvMTfvCr4N5EY3ATIZJkrGG2AA1nJrvhY0D7t wyOfaTyGOBye79oneNGEN3GKPEs5z35FBtYt2IpNeBLWrcLTy9LQQfMmNkqblWwM 7uXRQydmwYj3erMgbOqwaSvHIOgMA8RBBZniP+Rr+KCGgceExh/VS4ESshYhLBOh gLJeDEoTniDYYkCrkOpkSi+sDQESeUWoL4cZaMjihccwsnX5OD+ywJO0a+IDRM5n oN+J1q2MdqMTw5RhK2vZbMEHCiIHhWyFJEapvj+LeISCfiQMnf2BN+MlqO02TpUs yZyQ2uypQjyttgI= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID+zCCAuOgAwIBAgIBATANBgkqhkiG9w0BAQUFADCBtzE/MD0GA1UEAww2VMOc UktUUlVTVCBFbGVrdHJvbmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sx c8SxMQswCQYDVQQGDAJUUjEPMA0GA1UEBwwGQU5LQVJBMVYwVAYDVQQKDE0oYykg MjAwNSBUw5xSS1RSVVNUIEJpbGdpIMSwbGV0acWfaW0gdmUgQmlsacWfaW0gR8O8 dmVubGnEn2kgSGl6bWV0bGVyaSBBLsWeLjAeFw0wNTA1MTMxMDI3MTdaFw0xNTAz MjIxMDI3MTdaMIG3MT8wPQYDVQQDDDZUw5xSS1RSVVNUIEVsZWt0cm9uaWsgU2Vy dGlmaWthIEhpem1ldCBTYcSfbGF5xLFjxLFzxLExCzAJBgNVBAYMAlRSMQ8wDQYD VQQHDAZBTktBUkExVjBUBgNVBAoMTShjKSAyMDA1IFTDnFJLVFJVU1QgQmlsZ2kg xLBsZXRpxZ9pbSB2ZSBCaWxpxZ9pbSBHw7x2ZW5sacSfaSBIaXptZXRsZXJpIEEu xZ4uMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAylIF1mMD2Bxf3dJ7 XfIMYGFbazt0K3gNfUW9InTojAPBxhEqPZW8qZSwu5GXyGl8hMW0kWxsE2qkVa2k heiVfrMArwDCBRj1cJ02i67L5BuBf5OI+2pVu32Fks66WJ/bMsW9Xe8iSi9BB35J YbOG7E6mQW6EvAPs9TscyB/C7qju6hJKjRTP8wrgUDn5CDX4EVmt5yLqS8oUBt5C urKZ8y1UiBAG6uEaPj1nH/vO+3yC6BFdSsG5FOpU2WabfIl9BJpiyelSPJ6c79L1 JuTm5Rh8i27fbMx4W09ysstcP4wFjdFMjK2Sx+F4f2VsSQZQLJ4ywtdKxnWKWU51 b0dewQIDAQABoxAwDjAMBgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4IBAQAV 9VX/N5aAWSGk/KEVTCD21F/aAyT8z5Aa9CEKmu46sWrv7/hg0Uw2ZkUd82YCdAR7 kjCo3gp2D++Vbr3JN+YaDayJSFvMgzbC9UZcWYJWtNX+I7TYVBxEq8Sn5RTOPEFh fEPmzcSBCYsk+1Ql1haolgxnB2+zUEfjHCQo3SqYpGH+2+oSN7wBGjSFvW5P55Fy B0SFHljKVETd96y5y4khctuPwGkplyqjrhgjlxxBKot8KsF8kOipKMDTkcatKIdA aLX/7KfS0zgYnNN9aV3wxqUeJBujR/xpB2jn5Jq07Q+hh4cCzofSSE7hvP/L8XKS RGQDJereW26fyfJOrN3H -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEPDCCAySgAwIBAgIBATANBgkqhkiG9w0BAQUFADCBvjE/MD0GA1UEAww2VMOc UktUUlVTVCBFbGVrdHJvbmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sx c8SxMQswCQYDVQQGEwJUUjEPMA0GA1UEBwwGQW5rYXJhMV0wWwYDVQQKDFRUw5xS S1RSVVNUIEJpbGdpIMSwbGV0acWfaW0gdmUgQmlsacWfaW0gR8O8dmVubGnEn2kg SGl6bWV0bGVyaSBBLsWeLiAoYykgS2FzxLFtIDIwMDUwHhcNMDUxMTA3MTAwNzU3 WhcNMTUwOTE2MTAwNzU3WjCBvjE/MD0GA1UEAww2VMOcUktUUlVTVCBFbGVrdHJv bmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sxc8SxMQswCQYDVQQGEwJU UjEPMA0GA1UEBwwGQW5rYXJhMV0wWwYDVQQKDFRUw5xSS1RSVVNUIEJpbGdpIMSw bGV0acWfaW0gdmUgQmlsacWfaW0gR8O8dmVubGnEn2kgSGl6bWV0bGVyaSBBLsWe LiAoYykgS2FzxLFtIDIwMDUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB AQCpNn7DkUNMwxmYCMjHWHtPFoylzkkBH3MOrHUTpvqeLCDe2JAOCtFp0if7qnef J1Il4std2NiDUBd9irWCPwSOtNXwSadktx4uXyCcUHVPr+G1QRT0mJKIx+XlZEdh R3n9wFHxwZnn3M5q+6+1ATDcRhzviuyV79z/rxAc653YsKpqhRgNF8k+v/Gb0AmJ Qv2gQrSdiVFVKc8bcLyEVK3BEx+Y9C52YItdP5qtygy/p1Zbj3e41Z55SZI/4PGX JHpsmxcPbe9TmJEr5A++WXkHeLuXlfSfadRYhwqp48y2WBmfJiGxxFmNskF1wK1p zpwACPI2/z7woQ8arBT9pmAPAgMBAAGjQzBBMB0GA1UdDgQWBBTZN7NOBf3Zz58S Fq62iS/rJTqIHDAPBgNVHQ8BAf8EBQMDBwYAMA8GA1UdEwEB/wQFMAMBAf8wDQYJ KoZIhvcNAQEFBQADggEBAHJglrfJ3NgpXiOFX7KzLXb7iNcX/nttRbj2hWyfIvwq ECLsqrkw9qtY1jkQMZkpAL2JZkH7dN6RwRgLn7Vhy506vvWolKMiVW4XSf/SKfE4 Jl3vpao6+XF75tpYHdN0wgH6PmlYX63LaL4ULptswLbcoCb6dxriJNoaN+BnrdFz gw2lGh1uEpJ+hGIAF728JRhX8tepb1mIvDS3LoV4nZbcFMMsilKbloxSZj2GFotH uFEJjOp9zYhys2AzsfAKRO8P9Qk3iCQOLGsgOqL6EfJANZxEaGM7rDNvY7wsu/LS y3Z9fYjYHcgFHW68lKlmjHdxx/qR+i9Rnuk5UrbnBEI= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEPTCCAyWgAwIBAgIBATANBgkqhkiG9w0BAQUFADCBvzE/MD0GA1UEAww2VMOc UktUUlVTVCBFbGVrdHJvbmlrIFNlcnRpZmlrYSBIaXptZXQgU2HEn2xhecSxY8Sx c8SxMQswCQYDVQQGEwJUUjEPMA0GA1UEBwwGQW5rYXJhMV4wXAYDVQQKDFVUw5xS S1RSVVNUIEJpbGdpIMSwbGV0acWfaW0gdmUgQmlsacWfaW0gR8O8dmVubGnEn2kg SGl6bWV0bGVyaSBBLsWeLiAoYykgQXJhbMSxayAyMDA3MB4XDTA3MTIyNTE4Mzcx OVoXDTE3MTIyMjE4MzcxOVowgb8xPzA9BgNVBAMMNlTDnFJLVFJVU1QgRWxla3Ry b25payBTZXJ0aWZpa2EgSGl6bWV0IFNhxJ9sYXnEsWPEsXPEsTELMAkGA1UEBhMC VFIxDzANBgNVBAcMBkFua2FyYTFeMFwGA1UECgxVVMOcUktUUlVTVCBCaWxnaSDE sGxldGnFn2ltIHZlIEJpbGnFn2ltIEfDvHZlbmxpxJ9pIEhpem1ldGxlcmkgQS7F ni4gKGMpIEFyYWzEsWsgMjAwNzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC ggEBAKu3PgqMyKVYFeaK7yc9SrToJdPNM8Ig3BnuiD9NYvDdE3ePYakqtdTyuTFY KTsvP2qcb3N2Je40IIDu6rfwxArNK4aUyeNgsURSsloptJGXg9i3phQvKUmi8wUG +7RP2qFsmmaf8EMJyupyj+sA1zU511YXRxcw9L6/P8JorzZAwan0qafoEGsIiveG HtyaKhUG9qPw9ODHFNRRf8+0222vR5YXm3dx2KdxnSQM9pQ/hTEST7ruToK4uT6P IzdezKKqdfcYbwnTrqdUKDT74eA7YH2gvnmJhsifLfkKS8RQouf9eRbHegsYz85M 733WB2+Y8a+xwXrXgTW4qhe04MsCAwEAAaNCMEAwHQYDVR0OBBYEFCnFkKslrxHk Yb+j/4hhkeYO/pyBMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MA0G CSqGSIb3DQEBBQUAA4IBAQAQDdr4Ouwo0RSVgrESLFF6QSU2TJ/sPx+EnWVUXKgW AkD6bho3hO9ynYYKVZ1WKKxmLNA6VpM0ByWtCLCPyA8JWcqdmBzlVPi5RX9ql2+I aE1KBiY3iAIOtsbWcpnOa3faYjGkVh+uX4132l32iPwa2Z61gfAyuOOI0JzzaqC5 mxRZNTZPz/OOXl0XrRWV2N2y1RVuAE6zS89mlOTgzbUF2mNXi+WzqtvALhyQRNsa XRik7r4EW5nVcV9VZWRi1aKbBFmGyGJ353yCRWo9F7/snXUMrqNvWtMvmDb08PUZ qxFdyKbjKlhqQgnDvZImZjINXQhVdP+MmNAKpoRq0Tl9 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDezCCAmOgAwIBAgIBATANBgkqhkiG9w0BAQUFADBfMQswCQYDVQQGEwJUVzES MBAGA1UECgwJVEFJV0FOLUNBMRAwDgYDVQQLDAdSb290IENBMSowKAYDVQQDDCFU V0NBIFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDgwODI4MDcyNDMz WhcNMzAxMjMxMTU1OTU5WjBfMQswCQYDVQQGEwJUVzESMBAGA1UECgwJVEFJV0FO LUNBMRAwDgYDVQQLDAdSb290IENBMSowKAYDVQQDDCFUV0NBIFJvb3QgQ2VydGlm aWNhdGlvbiBBdXRob3JpdHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB AQCwfnK4pAOU5qfeCTiRShFAh6d8WWQUe7UREN3+v9XAu1bihSX0NXIP+FPQQeFE AcK0HMMxQhZHhTMidrIKbw/lJVBPhYa+v5guEGcevhEFhgWQxFnQfHgQsIBct+HH K3XLfJ+utdGdIzdjp9xCoi2SBBtQwXu4PhvJVgSLL1KbralW6cH/ralYhzC2gfeX RfwZVzsrb+RH9JlF/h3x+JejiB03HFyP4HYlmlD4oFT/RJB2I9IyxsOrBr/8+7/z rX2SYgJbKdM1o5OaQ2RgXbL6Mv87BK9NQGr5x+PvI/1ry+UPizgN7gr8/g+YnzAx 3WxSZfmLgb4i4RxYA7qRG4kHAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNV HRMBAf8EBTADAQH/MB0GA1UdDgQWBBRqOFsmjd6LWvJPelSDGRjjCDWmujANBgkq hkiG9w0BAQUFAAOCAQEAPNV3PdrfibqHDAhUaiBQkr6wQT25JmSDCi/oQMCXKCeC MErJk/9q56YAf4lCmtYR5VPOL8zy2gXE/uJQxDqGfczafhAJO5I1KlOy/usrBdls XebQ79NqZp4VKIV66IIArB6nCWlWQtNoURi+VJq/REG6Sb4gumlc7rh3zc5sH62D lhh9DrUUOYTxKOkto557HnpyWoOzeW/vtPzQCqVYT0bf+215WfKEIlKuD8z7fDvn aspHYcN6+NOSBB+4IIThNlQWx0DeO4pz3N/GCUzf7Nr/1FNCocnyYh0igzyXxfkZ YiesZSLX0zzG5Y6yU8xJzrww/nsOM5D77dIUkR8Hrw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEXjCCA0agAwIBAgIQRL4Mi1AAIbQR0ypoBqmtaTANBgkqhkiG9w0BAQUFADCB kzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2Ug Q2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExho dHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xGzAZBgNVBAMTElVUTiAtIERBVEFDb3Jw IFNHQzAeFw05OTA2MjQxODU3MjFaFw0xOTA2MjQxOTA2MzBaMIGTMQswCQYDVQQG EwJVUzELMAkGA1UECBMCVVQxFzAVBgNVBAcTDlNhbHQgTGFrZSBDaXR5MR4wHAYD VQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsxITAfBgNVBAsTGGh0dHA6Ly93d3cu dXNlcnRydXN0LmNvbTEbMBkGA1UEAxMSVVROIC0gREFUQUNvcnAgU0dDMIIBIjAN BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3+5YEKIrblXEjr8uRgnn4AgPLit6 E5Qbvfa2gI5lBZMAHryv4g+OGQ0SR+ysraP6LnD43m77VkIVni5c7yPeIbkFdicZ D0/Ww5y0vpQZY/KmEQrrU0icvvIpOxboGqBMpsn0GFlowHDyUwDAXlCCpVZvNvlK 4ESGoE1O1kduSUrLZ9emxAW5jh70/P/N5zbgnAVssjMiFdC04MwXwLLA9P4yPykq lXvY8qdOD1R8oQ2AswkDwf9c3V6aPryuvEeKaq5xyh+xKrhfQgUL7EYw0XILyulW bfXv33i+Ybqypa4ETLyorGkVl73v67SMvzX41MPRKA5cOp9wGDMgd8SirwIDAQAB o4GrMIGoMAsGA1UdDwQEAwIBxjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBRT MtGzz3/64PGgXYVOktKeRR20TzA9BgNVHR8ENjA0MDKgMKAuhixodHRwOi8vY3Js LnVzZXJ0cnVzdC5jb20vVVROLURBVEFDb3JwU0dDLmNybDAqBgNVHSUEIzAhBggr BgEFBQcDAQYKKwYBBAGCNwoDAwYJYIZIAYb4QgQBMA0GCSqGSIb3DQEBBQUAA4IB AQAnNZcAiosovcYzMB4p/OL31ZjUQLtgyr+rFywJNn9Q+kHcrpY6CiM+iVnJowft Gzet/Hy+UUla3joKVAgWRcKZsYfNjGjgaQPpxE6YsjuMFrMOoAyYUJuTqXAJyCyj j98C5OBxOvG0I3KgqgHf35g+FFCgMSa9KOlaMCZ1+XtgHI3zzVAmbQQnmt/VDUVH KWss5nbZqSl9Mt3JNjy9rjXxEZ4du5A/EkdOjtd+D2JzHVImOBwYSf0wdJrE5SIv 2MCN7ZF6TACPcn9d2t0bi0Vr591pl6jFVkwPDPafepE39peC4N1xaf92P2BNPM/3 mfnGV/TJVTl4uix5yaaIK/QI -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEojCCA4qgAwIBAgIQRL4Mi1AAJLQR0zYlJWfJiTANBgkqhkiG9w0BAQUFADCB rjELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2Ug Q2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExho dHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xNjA0BgNVBAMTLVVUTi1VU0VSRmlyc3Qt Q2xpZW50IEF1dGhlbnRpY2F0aW9uIGFuZCBFbWFpbDAeFw05OTA3MDkxNzI4NTBa Fw0xOTA3MDkxNzM2NThaMIGuMQswCQYDVQQGEwJVUzELMAkGA1UECBMCVVQxFzAV BgNVBAcTDlNhbHQgTGFrZSBDaXR5MR4wHAYDVQQKExVUaGUgVVNFUlRSVVNUIE5l dHdvcmsxITAfBgNVBAsTGGh0dHA6Ly93d3cudXNlcnRydXN0LmNvbTE2MDQGA1UE AxMtVVROLVVTRVJGaXJzdC1DbGllbnQgQXV0aGVudGljYXRpb24gYW5kIEVtYWls MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsjmFpPJ9q0E7YkY3rs3B YHW8OWX5ShpHornMSMxqmNVNNRm5pELlzkniii8efNIxB8dOtINknS4p1aJkxIW9 hVE1eaROaJB7HHqkkqgX8pgV8pPMyaQylbsMTzC9mKALi+VuG6JG+ni8om+rWV6l L8/K2m2qL+usobNqqrcuZzWLeeEeaYji5kbNoKXqvgvOdjp6Dpvq/NonWz1zHyLm SGHGTPNpsaguG7bUMSAsvIKKjqQOpdeJQ/wWWq8dcdcRWdq6hw2v+vPhwvCkxWeM 1tZUOt4KpLoDd7NlyP0e03RiqhjKaJMeoYV+9Udly/hNVyh00jT/MLbu9mIwFIws 6wIDAQABo4G5MIG2MAsGA1UdDwQEAwIBxjAPBgNVHRMBAf8EBTADAQH/MB0GA1Ud DgQWBBSJgmd9xJ0mcABLtFBIfN49rgRufTBYBgNVHR8EUTBPME2gS6BJhkdodHRw Oi8vY3JsLnVzZXJ0cnVzdC5jb20vVVROLVVTRVJGaXJzdC1DbGllbnRBdXRoZW50 aWNhdGlvbmFuZEVtYWlsLmNybDAdBgNVHSUEFjAUBggrBgEFBQcDAgYIKwYBBQUH AwQwDQYJKoZIhvcNAQEFBQADggEBALFtYV2mGn98q0rkMPxTbyUkxsrt4jFcKw7u 7mFVbwQ+zznexRtJlOTrIEy05p5QLnLZjfWqo7NK2lYcYJeA3IKirUq9iiv/Cwm0 xtcgBEXkzYABurorbs6q15L+5K/r9CYdFip/bDCVNy8zEqx/3cfREYxRmLLQo5HQ rfafnoOTHh1CuEava2bwm3/q4wMC5QJRwarVNZ1yQAOJujEdxRBoUp7fooXFXAim eOZTT7Hot9MUnpOmw2TjrH5xzbyf6QMbzPvprDHBr3wVdAKZw7JHpsIyYdfHb0gk USeh1YdV8nuPmD0Wnu51tvjQjvLzxq4oW6fw8zYX/MMF08oDSlQ= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEdDCCA1ygAwIBAgIQRL4Mi1AAJLQR0zYq/mUK/TANBgkqhkiG9w0BAQUFADCB lzELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2Ug Q2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExho dHRwOi8vd3d3LnVzZXJ0cnVzdC5jb20xHzAdBgNVBAMTFlVUTi1VU0VSRmlyc3Qt SGFyZHdhcmUwHhcNOTkwNzA5MTgxMDQyWhcNMTkwNzA5MTgxOTIyWjCBlzELMAkG A1UEBhMCVVMxCzAJBgNVBAgTAlVUMRcwFQYDVQQHEw5TYWx0IExha2UgQ2l0eTEe MBwGA1UEChMVVGhlIFVTRVJUUlVTVCBOZXR3b3JrMSEwHwYDVQQLExhodHRwOi8v d3d3LnVzZXJ0cnVzdC5jb20xHzAdBgNVBAMTFlVUTi1VU0VSRmlyc3QtSGFyZHdh cmUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCx98M4P7Sof885glFn 0G2f0v9Y8+efK+wNiVSZuTiZFvfgIXlIwrthdBKWHTxqctU8EGc6Oe0rE81m65UJ M6Rsl7HoxuzBdXmcRl6Nq9Bq/bkqVRcQVLMZ8Jr28bFdtqdt++BxF2uiiPsA3/4a MXcMmgF6sTLjKwEHOG7DpV4jvEWbe1DByTCP2+UretNb+zNAHqDVmBe8i4fDidNd oI6yqqr2jmmIBsX6iSHzCJ1pLgkzmykNRg+MzEk0sGlRvfkGzWitZky8PqxhvQqI DsjfPe58BEydCl5rkdbux+0ojatNh4lz0G6k0B4WixThdkQDf2Os5M1JnMWS9Ksy oUhbAgMBAAGjgbkwgbYwCwYDVR0PBAQDAgHGMA8GA1UdEwEB/wQFMAMBAf8wHQYD VR0OBBYEFKFyXyYbKJhDlV0HN9WFlp1L0sNFMEQGA1UdHwQ9MDswOaA3oDWGM2h0 dHA6Ly9jcmwudXNlcnRydXN0LmNvbS9VVE4tVVNFUkZpcnN0LUhhcmR3YXJlLmNy bDAxBgNVHSUEKjAoBggrBgEFBQcDAQYIKwYBBQUHAwUGCCsGAQUFBwMGBggrBgEF BQcDBzANBgkqhkiG9w0BAQUFAAOCAQEARxkP3nTGmZev/K0oXnWO6y1n7k57K9cM //bey1WiCuFMVGWTYGufEpytXoMs61quwOQt9ABjHbjAbPLPSbtNk28Gpgoiskli CE7/yMgUsogWXecB5BKV5UU0s4tpvc+0hY91UZ59Ojg6FEgSxvunOxqNDYJAB+gE CJChicsZUN/KHAG8HQQZexB2lzvukJDKxA4fFm517zP4029bHpbj4HR3dHuKom4t 3XbWOTCC8KucUvIqx69JXn7HaOWCgchqJ/kniCrVWFCVH/A7HFe7fRQ5YiuayZSS KqMiDP+JJn1fIytH1xUdqWqeUQ0qUZ6B+dQ7XnASfxAynB67nfhmqA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIC5zCCAlACAQEwDQYJKoZIhvcNAQEFBQAwgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0 IFZhbGlkYXRpb24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAz BgNVBAsTLFZhbGlDZXJ0IENsYXNzIDEgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9y aXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG 9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMB4XDTk5MDYyNTIyMjM0OFoXDTE5MDYy NTIyMjM0OFowgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRpb24gTmV0d29y azEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENs YXNzIDEgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRw Oi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNl cnQuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDYWYJ6ibiWuqYvaG9Y LqdUHAZu9OqNSLwxlBfw8068srg1knaw0KWlAdcAAxIiGQj4/xEjm84H9b9pGib+ TunRf50sQB1ZaG6m+FiwnRqP0z/x3BkGgagO4DrdyFNFCQbmD3DD+kCmDuJWBQ8Y TfwggtFzVXSNdnKgHZ0dwN0/cQIDAQABMA0GCSqGSIb3DQEBBQUAA4GBAFBoPUn0 LBwGlN+VYH+Wexf+T3GtZMjdd9LvWVXoP+iOBSoh8gfStadS/pyxtuJbdxdA6nLW I8sogTLDAHkY7FkXicnGah5xyf23dKUlRWnFSKsZ4UWKJWsZ7uW7EvV/96aNUcPw nXS3qT6gpf+2SQMT2iLM7XGCK5nPOrf1LXLI -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIC5zCCAlACAQEwDQYJKoZIhvcNAQEFBQAwgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0 IFZhbGlkYXRpb24gTmV0d29yazEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAz BgNVBAsTLFZhbGlDZXJ0IENsYXNzIDIgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9y aXR5MSEwHwYDVQQDExhodHRwOi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG 9w0BCQEWEWluZm9AdmFsaWNlcnQuY29tMB4XDTk5MDYyNjAwMTk1NFoXDTE5MDYy NjAwMTk1NFowgbsxJDAiBgNVBAcTG1ZhbGlDZXJ0IFZhbGlkYXRpb24gTmV0d29y azEXMBUGA1UEChMOVmFsaUNlcnQsIEluYy4xNTAzBgNVBAsTLFZhbGlDZXJ0IENs YXNzIDIgUG9saWN5IFZhbGlkYXRpb24gQXV0aG9yaXR5MSEwHwYDVQQDExhodHRw Oi8vd3d3LnZhbGljZXJ0LmNvbS8xIDAeBgkqhkiG9w0BCQEWEWluZm9AdmFsaWNl cnQuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDOOnHK5avIWZJV16vY dA757tn2VUdZZUcOBVXc65g2PFxTXdMwzzjsvUGJ7SVCCSRrCl6zfN1SLUzm1NZ9 WlmpZdRJEy0kTRxQb7XBhVQ7/nHk01xC+YDgkRoKWzk2Z/M/VXwbP7RfZHM047QS v4dk+NoS/zcnwbNDu+97bi5p9wIDAQABMA0GCSqGSIb3DQEBBQUAA4GBADt/UG9v UJSZSWI4OB9L+KXIPqeCgfYrx+jFzug6EILLGACOTb2oWH+heQC1u+mNr0HZDzTu IYEZoDJJKPTEjlbVUjP9UNV+mWwD5MlM/Mtsq2azSiGM5bUMMj4QssxsodyamEwC W/POuZ6lcg5Ktz885hZo+L7tdEy8W9ViH0Pd -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDAjCCAmsCEEzH6qqYPnHTkxD4PTqJkZIwDQYJKoZIhvcNAQEFBQAwgcExCzAJ BgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xh c3MgMSBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcy MTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3Jp emVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMB4X DTk4MDUxODAwMDAwMFoXDTI4MDgwMTIzNTk1OVowgcExCzAJBgNVBAYTAlVTMRcw FQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xhc3MgMSBQdWJsaWMg UHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMTowOAYDVQQLEzEo YykgMTk5OCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5 MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMIGfMA0GCSqGSIb3DQEB AQUAA4GNADCBiQKBgQCq0Lq+Fi24g9TK0g+8djHKlNgdk4xWArzZbxpvUjZudVYK VdPfQ4chEWWKfo+9Id5rMj8bhDSVBZ1BNeuS65bdqlk/AVNtmU/t5eIqWpDBucSm Fc/IReumXY6cPvBkJHalzasab7bYe1FhbqZ/h8jit+U03EGI6glAvnOSPWvndQID AQABMA0GCSqGSIb3DQEBBQUAA4GBAKlPww3HZ74sy9mozS11534Vnjty637rXC0J h9ZrbWB85a7FkCMMXErQr7Fd88e2CtvgFZMN3QO8x3aKtd1Pw5sTdbgBwObJW2ul uIncrKTdcu1OofdPvAbT6shkdHvClUGcZXNY8ZCaPGqxmMnEh7zPRW1F4m4iP/68 DzFc6PLZ -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEGjCCAwICEQCLW3VWhFSFCwDPrzhIzrGkMA0GCSqGSIb3DQEBBQUAMIHKMQsw CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZl cmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWdu LCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlT aWduIENsYXNzIDEgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3Jp dHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQswCQYD VQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlT aWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJ bmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWdu IENsYXNzIDEgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkg LSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAN2E1Lm0+afY8wR4 nN493GwTFtl63SRRZsDHJlkNrAYIwpTRMx/wgzUfbhvI3qpuFU5UJ+/EbRrsC+MO 8ESlV8dAWB6jRx9x7GD2bZTIGDnt/kIYVt/kTEkQeE4BdjVjEjbdZrwBBDajVWjV ojYJrKshJlQGrT/KFOCsyq0GHZXi+J3x4GD/wn91K0zM2v6HmSHquv4+VNfSWXjb PG7PoBMAGrgnoeS+Z5bKoMWznN3JdZ7rMJpfo83ZrngZPyPpXNspva1VyBtUjGP2 6KbqxzcSXKMpHgLZ2x87tNcPVkeBFQRKr4Mn0cVYiMHd9qqnoxjaaKptEVHhv2Vr n5Z20T0CAwEAATANBgkqhkiG9w0BAQUFAAOCAQEAq2aN17O6x5q25lXQBfGfMY1a qtmqRiYPce2lrVNWYgFHKkTp/j90CxObufRNG7LRX7K20ohcs5/Ny9Sn2WCVhDr4 wTcdYcrnsMXlkdpUpqwxga6X3s0IrLjAl4B/bnKk52kTlWUfxJM8/XmPBNQ+T+r3 ns7NZ3xPZQL/kYVUc8f/NveGLezQXk//EZ9yBta4GvFMDSZl4kSAHsef493oCtrs pSCAaWihT37ha88HQfqDjrw43bAuEbFrskLMmrz5SCJ5ShkPshw+IHTZasO+8ih4 E1Z5T21Q6huwtVexN2ZYI/PcD98Kh8TvhgXVOBRgmaNL3gaWcSzy27YfpO8/7g== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICPDCCAaUCED9pHoGc8JpK83P/uUii5N0wDQYJKoZIhvcNAQEFBQAwXzELMAkG A1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFz cyAxIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTk2 MDEyOTAwMDAwMFoXDTI4MDgwMjIzNTk1OVowXzELMAkGA1UEBhMCVVMxFzAVBgNV BAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAxIFB1YmxpYyBQcmlt YXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGfMA0GCSqGSIb3DQEBAQUAA4GN ADCBiQKBgQDlGb9to1ZhLZlIcfZn3rmN67eehoAKkQ76OCWvRoiC5XOooJskXQ0f zGVuDLDQVoQYh5oGmxChc9+0WDlrbsH2FdWoqD+qEgaNMax/sDTXjzRniAnNFBHi TkVWaR94AoDa3EeRKbs2yWNcxeDXLYd7obcysHswuiovMaruo2fa2wIDAQABMA0G CSqGSIb3DQEBBQUAA4GBAFgVKTk8d6PaXCUDfGD67gmZPCcQcMgMCeazh88K4hiW NWLMv5sneYlfycQJ9M61Hd8qveXbhpxoJeUwfLaJFf5n0a3hUKw8fGJLj7qE1xIV Gx/KXQ/BUpQqEZnae88MNhPVNdwQGVnqlMEAv3WP2fr9dgTbYruQagPZRjXZ+Hxb -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDAzCCAmwCEQC5L2DMiJ+hekYJuFtwbIqvMA0GCSqGSIb3DQEBBQUAMIHBMQsw CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xPDA6BgNVBAsTM0Ns YXNzIDIgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBH MjE6MDgGA1UECxMxKGMpIDE5OTggVmVyaVNpZ24sIEluYy4gLSBGb3IgYXV0aG9y aXplZCB1c2Ugb25seTEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29yazAe Fw05ODA1MTgwMDAwMDBaFw0yODA4MDEyMzU5NTlaMIHBMQswCQYDVQQGEwJVUzEX MBUGA1UEChMOVmVyaVNpZ24sIEluYy4xPDA6BgNVBAsTM0NsYXNzIDIgUHVibGlj IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHMjE6MDgGA1UECxMx KGMpIDE5OTggVmVyaVNpZ24sIEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25s eTEfMB0GA1UECxMWVmVyaVNpZ24gVHJ1c3QgTmV0d29yazCBnzANBgkqhkiG9w0B AQEFAAOBjQAwgYkCgYEAp4gBIXQs5xoD8JjhlzwPIQjxnNuX6Zr8wgQGE75fUsjM HiwSViy4AWkszJkfrbCWrnkE8hM5wXuYuggs6MKEEyyqaekJ9MepAqRCwiNPStjw DqL7MWzJ5m+ZJwf15vRMeJ5t60aG+rmGyVTyssSv1EYcWskVMP8NbPUtDm3Of3cC AwEAATANBgkqhkiG9w0BAQUFAAOBgQByLvl/0fFx+8Se9sVeUYpAmLho+Jscg9ji nb3/7aHmZuovCfTK1+qlK5X2JGCGTUQug6XELaDTrnhpb3LabK4I8GOSN+a7xDAX rXfMSTWqz9iP0b63GJZHc2pUIjRkLbYWm1lbtFFZOrMLFPQS32eg9K0yZF6xRnIn jBJ7xUS0rg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEGTCCAwECEGFwy0mMX5hFKeewptlQW3owDQYJKoZIhvcNAQEFBQAwgcoxCzAJ BgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVy aVNpZ24gVHJ1c3QgTmV0d29yazE6MDgGA1UECxMxKGMpIDE5OTkgVmVyaVNpZ24s IEluYy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTFFMEMGA1UEAxM8VmVyaVNp Z24gQ2xhc3MgMiBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0 eSAtIEczMB4XDTk5MTAwMTAwMDAwMFoXDTM2MDcxNjIzNTk1OVowgcoxCzAJBgNV BAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVyaVNp Z24gVHJ1c3QgTmV0d29yazE6MDgGA1UECxMxKGMpIDE5OTkgVmVyaVNpZ24sIElu Yy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTFFMEMGA1UEAxM8VmVyaVNpZ24g Q2xhc3MgMiBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAt IEczMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArwoNwtUs22e5LeWU J92lvuCwTY+zYVY81nzD9M0+hsuiiOLh2KRpxbXiv8GmR1BeRjmL1Za6tW8UvxDO JxOeBUebMXoT2B/Z0wI3i60sR/COgQanDTAM6/c8DyAd3HJG7qUCyFvDyVZpTMUY wZF7C9UTAJu878NIPkZgIIUq1ZC2zYugzDLdt/1AVbJQHFauzI13TccgTacxdu9o koqQHgiBVrKtaaNS0MscxCM9H5n+TOgWY47GCI72MfbS+uV23bUckqNJzc0BzWjN qWm6o+sdDZykIKbBoMXRRkwXbdKsZj+WjOCE1Db/IlnF+RFgqF8EffIa9iVCYQ/E Srg+iQIDAQABMA0GCSqGSIb3DQEBBQUAA4IBAQA0JhU8wI1NQ0kdvekhktdmnLfe xbjQ5F1fdiLAJvmEOjr5jLX77GDx6M4EsMjdpwOPMPOY36TmpDHf0xwLRtxyID+u 7gU8pDM/CzmscHhzS5kr3zDCVLCoO1Wh/hYozUK9dG6A2ydEp85EXdQbkJgNHkKU sQAsBNB0owIFImNjzYO1+8FtYmtpdf1dcEG59b98377BMnMiIYtYgXsVkXq642RI sH/7NiXaldDxJBQX3RiAa0YjOVT1jmIJBB2UkKab5iXiQkWquJCtvgiPqQtCGJTP cjnhsUPgKM+351psE2tJs//jGHyJizNdrDPXp/naOlXJWBD5qu9ats9LS98q -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDAjCCAmsCEH3Z/gfPqB63EHln+6eJNMYwDQYJKoZIhvcNAQEFBQAwgcExCzAJ BgNVBAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xh c3MgMyBQdWJsaWMgUHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcy MTowOAYDVQQLEzEoYykgMTk5OCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3Jp emVkIHVzZSBvbmx5MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMB4X DTk4MDUxODAwMDAwMFoXDTI4MDgwMTIzNTk1OVowgcExCzAJBgNVBAYTAlVTMRcw FQYDVQQKEw5WZXJpU2lnbiwgSW5jLjE8MDoGA1UECxMzQ2xhc3MgMyBQdWJsaWMg UHJpbWFyeSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSAtIEcyMTowOAYDVQQLEzEo YykgMTk5OCBWZXJpU2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5 MR8wHQYDVQQLExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMIGfMA0GCSqGSIb3DQEB AQUAA4GNADCBiQKBgQDMXtERXVxp0KvTuWpMmR9ZmDCOFoUgRm1HP9SFIIThbbP4 pO0M8RcPO/mn+SXXwc+EY/J8Y8+iR/LGWzOOZEAEaMGAuWQcRXfH2G71lSk8UOg0 13gfqLptQ5GVj0VXXn7F+8qkBOvqlzdUMG+7AUcyM83cV5tkaWH4mx0ciU9cZwID AQABMA0GCSqGSIb3DQEBBQUAA4GBAFFNzb5cy5gZnBWyATl4Lk0PZ3BwmcYQWpSk U01UbSuvDV1Ai2TT1+7eVmGSX6bEHRBhNtMsJzzoKQm5EWR0zLVznxxIqbxhAe7i F6YM40AIOw7n60RzKprxaZLvcRTDOaxxp5EJb+RxBrO6WVcmeQD2+A2iMzAo1KpY oJ2daZH9 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEGjCCAwICEQCbfgZJoz5iudXukEhxKe9XMA0GCSqGSIb3DQEBBQUAMIHKMQsw CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZl cmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWdu LCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlT aWduIENsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3Jp dHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQswCQYD VQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlT aWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJ bmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWdu IENsYXNzIDMgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkg LSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMu6nFL8eB8aHm8b N3O9+MlrlBIwT/A2R/XQkQr1F8ilYcEWQE37imGQ5XYgwREGfassbqb1EUGO+i2t KmFZpGcmTNDovFJbcCAEWNF6yaRpvIMXZK0Fi7zQWM6NjPXr8EJJC52XJ2cybuGu kxUccLwgTS8Y3pKI6GyFVxEa6X7jJhFUokWWVYPKMIno3Nij7SqAP395ZVc+FSBm CC+Vk7+qRy+oRpfwEuL+wgorUeZ25rdGt+INpsyow0xZVYnm6FNcHOqd8GIWC6fJ Xwzw3sJ2zq/3avL6QaaiMxTJ5Xpj055iN9WFZZ4O5lMkdBteHRJTW8cs54NJOxWu imi5V5cCAwEAATANBgkqhkiG9w0BAQUFAAOCAQEAERSWwauSCPc/L8my/uRan2Te 2yFPhpk0djZX3dAVL8WtfxUfN2JzPtTnX84XA9s1+ivbrmAJXx5fj267Cz3qWhMe DGBvtcC1IyIuBwvLqXTLR7sdwdela8wv0kL9Sd2nic9TutoAWii/gt/4uhMdUIaC /Y4wjylGsB49Ndo4YhYYSq3mtlFs3q9i6wHQHiT+eo8SGhJouPtmmRQURVyu565p F4ErWjfJXir0xuKhXFSbplQAz/DxwceYMBo7Nhbbo27q/a2ywtrvAkcTisDxszGt TxzhT5yvDwyd93gN2PQ1VoDat20Xj50egWTh/sVFuq1ruQp6Tk9LhO5L8X3dEQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDhDCCAwqgAwIBAgIQL4D+I4wOIg9IZxIokYesszAKBggqhkjOPQQDAzCByjEL MAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZW ZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNyBWZXJpU2ln biwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJp U2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9y aXR5IC0gRzQwHhcNMDcxMTA1MDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCByjELMAkG A1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZWZXJp U2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNyBWZXJpU2lnbiwg SW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJpU2ln biBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5 IC0gRzQwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAASnVnp8Utpkmw4tXNherJI9/gHm GUo9FANL+mAnINmDiWn6VMaaGF5VKmTeBvaNSjutEDxlPZCIBIngMGGzrl0Bp3ve fLK+ymVhAIau2o970ImtTR1ZmkGxvEeA3J5iw/mjgbIwga8wDwYDVR0TAQH/BAUw AwEB/zAOBgNVHQ8BAf8EBAMCAQYwbQYIKwYBBQUHAQwEYTBfoV2gWzBZMFcwVRYJ aW1hZ2UvZ2lmMCEwHzAHBgUrDgMCGgQUj+XTGoasjY5rw8+AatRIGCx7GS4wJRYj aHR0cDovL2xvZ28udmVyaXNpZ24uY29tL3ZzbG9nby5naWYwHQYDVR0OBBYEFLMW kf3upm7ktS5Jj4d4gYDs5bG1MAoGCCqGSM49BAMDA2gAMGUCMGYhDBgmYFo4e1ZC 4Kf8NoRRkSAsdk1DPcQdhCPQrNZ8NQbOzWm9kA3bbEhCHQ6qQgIxAJw9SDkjOVga FRJZap7v1VmyHVIsmXHNxynfGyphe3HR3vPA5Q06Sqotp9iGKt0uEA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIE0zCCA7ugAwIBAgIQGNrRniZ96LtKIVjNzGs7SjANBgkqhkiG9w0BAQUFADCB yjELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQL ExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJp U2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxW ZXJpU2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0 aG9yaXR5IC0gRzUwHhcNMDYxMTA4MDAwMDAwWhcNMzYwNzE2MjM1OTU5WjCByjEL MAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQLExZW ZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwNiBWZXJpU2ln biwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MUUwQwYDVQQDEzxWZXJp U2lnbiBDbGFzcyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9y aXR5IC0gRzUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCvJAgIKXo1 nmAMqudLO07cfLw8RRy7K+D+KQL5VwijZIUVJ/XxrcgxiV0i6CqqpkKzj/i5Vbex t0uz/o9+B1fs70PbZmIVYc9gDaTY3vjgw2IIPVQT60nKWVSFJuUrjxuf6/WhkcIz SdhDY2pSS9KP6HBRTdGJaXvHcPaz3BJ023tdS1bTlr8Vd6Gw9KIl8q8ckmcY5fQG BO+QueQA5N06tRn/Arr0PO7gi+s3i+z016zy9vA9r911kTMZHRxAy3QkGSGT2RT+ rCpSx4/VBEnkjWNHiDxpg8v+R70rfk/Fla4OndTRQ8Bnc+MUCH7lP59zuDMKz10/ NIeWiu5T6CUVAgMBAAGjgbIwga8wDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8E BAMCAQYwbQYIKwYBBQUHAQwEYTBfoV2gWzBZMFcwVRYJaW1hZ2UvZ2lmMCEwHzAH BgUrDgMCGgQUj+XTGoasjY5rw8+AatRIGCx7GS4wJRYjaHR0cDovL2xvZ28udmVy aXNpZ24uY29tL3ZzbG9nby5naWYwHQYDVR0OBBYEFH/TZafC3ey78DAJ80M5+gKv MzEzMA0GCSqGSIb3DQEBBQUAA4IBAQCTJEowX2LP2BqYLz3q3JktvXf2pXkiOOzE p6B4Eq1iDkVwZMXnl2YtmAl+X6/WzChl8gGqCBpH3vn5fJJaCGkgDdk+bW48DW7Y 5gaRQBi5+MHt39tBquCWIMnNZBU4gcmU7qKEKQsTb47bDN0lAtukixlE0kF6BWlK WE9gyn6CagsCqiUXObXbf+eEZSqVir2G3l6BFoMtEMze/aiCKm0oHw0LxOXnGiYZ 4fQRbxC1lfznQgUy286dUV4otp6F01vvpX1FQHKOtw5rDgb7MzVIcbidJ4vEZV8N hnacRHr2lVz2XTIIM6RUthg/aFzyQkqFOFSDX9HoLPKsEdao7WNq -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICPDCCAaUCEDyRMcsf9tAbDpq40ES/Er4wDQYJKoZIhvcNAQEFBQAwXzELMAkG A1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFz cyAzIFB1YmxpYyBQcmltYXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTk2 MDEyOTAwMDAwMFoXDTI4MDgwMjIzNTk1OVowXzELMAkGA1UEBhMCVVMxFzAVBgNV BAoTDlZlcmlTaWduLCBJbmMuMTcwNQYDVQQLEy5DbGFzcyAzIFB1YmxpYyBQcmlt YXJ5IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIGfMA0GCSqGSIb3DQEBAQUAA4GN ADCBiQKBgQDJXFme8huKARS0EN8EQNvjV69qRUCPhAwL0TPZ2RHP7gJYHyX3KqhE BarsAx94f56TuZoAqiN91qyFomNFx3InzPRMxnVx0jnvT0Lwdd8KkMaOIG+YD/is I19wKTakyYbnsZogy1Olhec9vn2a/iRFM9x2Fe0PonFkTGUugWhFpwIDAQABMA0G CSqGSIb3DQEBBQUAA4GBABByUqkFFBkyCEHwxWsKzH4PIRnN5GfcX6kb5sroc50i 2JhucwNhkcV8sEVAbkSdjbCxlnRhLQ2pRdKkkirWmnWXbj9T/UWZYB2oK0z5XqcJ 2HUw19JlYD1n1khVdWk/kfVIC0dpImmClr7JyDiGSnoscxlIaU5rfGW/D/xwzoiQ -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEGjCCAwICEQDsoKeLbnVqAc/EfMwvlF7XMA0GCSqGSIb3DQEBBQUAMIHKMQsw CQYDVQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZl cmlTaWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWdu LCBJbmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlT aWduIENsYXNzIDQgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3Jp dHkgLSBHMzAeFw05OTEwMDEwMDAwMDBaFw0zNjA3MTYyMzU5NTlaMIHKMQswCQYD VQQGEwJVUzEXMBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlT aWduIFRydXN0IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAxOTk5IFZlcmlTaWduLCBJ bmMuIC0gRm9yIGF1dGhvcml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWdu IENsYXNzIDQgUHVibGljIFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkg LSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAK3LpRFpxlmr8Y+1 GQ9Wzsy1HyDkniYlS+BzZYlZ3tCD5PUPtbut8XzoIfzk6AzufEUiGXaStBO3IFsJ +mGuqPKljYXCKtbeZjbSmwL0qJJgfJxptI8kHtCGUvYynEFYHiK9zUVilQhu0Gbd U6LM8BDcVHOLBKFGMzNcF0C5nk3T875Vg+ixiY5afJqWIpA7iCXy0lOIAgwLePLm NxdLMEYH5IBtptiWLugs+BGzOA1mppvqySNb247i8xOOGlktqgLw7KSHZtzBP/XY ufTsgsbSPZUd5cBPhMnZo0QoBmrXRazwa2rvTl/4EYIeOGM0ZlDUPpNz+jDDZq3/ ky2X7wMCAwEAATANBgkqhkiG9w0BAQUFAAOCAQEAj/ola09b5KROJ1WrIhVZPMq1 CtRK26vdoV9TxaBXOcLORyu+OshWv8LZJxA6sQU8wHcxuzrTBXttmhwwjIDLk5Mq g6sFUYICABFna/OIYUdfA5PVWw3g8dShMjWFsjrbsIKr0csKvE+MW8VLADsfKoKm fjaF3H48ZwC15DtS4KjrXRX5xm3wrR0OhbepmnMUWluPQSjA1egtTaRezarZ7c7c 2NU8Qh0XwRJdRTjDOPP8hS6DRkiy1yBfkjaP53kPmF6Z6PDQpLv1U70qzlmwr25/ bLvSHgCwIe34QWKCudiyxLtGUPMxxY8BqHTr9Xgn2uf3ZkPznoM+IKrDNWCRzg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEuTCCA6GgAwIBAgIQQBrEZCGzEyEDDrvkEhrFHTANBgkqhkiG9w0BAQsFADCB vTELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDlZlcmlTaWduLCBJbmMuMR8wHQYDVQQL ExZWZXJpU2lnbiBUcnVzdCBOZXR3b3JrMTowOAYDVQQLEzEoYykgMjAwOCBWZXJp U2lnbiwgSW5jLiAtIEZvciBhdXRob3JpemVkIHVzZSBvbmx5MTgwNgYDVQQDEy9W ZXJpU2lnbiBVbml2ZXJzYWwgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAe Fw0wODA0MDIwMDAwMDBaFw0zNzEyMDEyMzU5NTlaMIG9MQswCQYDVQQGEwJVUzEX MBUGA1UEChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0 IE5ldHdvcmsxOjA4BgNVBAsTMShjKSAyMDA4IFZlcmlTaWduLCBJbmMuIC0gRm9y IGF1dGhvcml6ZWQgdXNlIG9ubHkxODA2BgNVBAMTL1ZlcmlTaWduIFVuaXZlcnNh bCBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIIBIjANBgkqhkiG9w0BAQEF AAOCAQ8AMIIBCgKCAQEAx2E3XrEBNNti1xWb/1hajCMj1mCOkdeQmIN65lgZOIzF 9uVkhbSicfvtvbnazU0AtMgtc6XHaXGVHzk8skQHnOgO+k1KxCHfKWGPMiJhgsWH H26MfF8WIFFE0XBPV+rjHOPMee5Y2A7Cs0WTwCznmhcrewA3ekEzeOEz4vMQGn+H LL729fdC4uW/h2KJXwBL38Xd5HVEMkE6HnFuacsLdUYI0crSK5XQz/u5QGtkjFdN /BMReYTtXlT2NJ8IAfMQJQYXStrxHXpma5hgZqTZ79IugvHw7wnqRMkVauIDbjPT rJ9VAMf2CGqUuV/c4DPxhGD5WycRtPwW8rtWaoAljQIDAQABo4GyMIGvMA8GA1Ud EwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMG0GCCsGAQUFBwEMBGEwX6FdoFsw WTBXMFUWCWltYWdlL2dpZjAhMB8wBwYFKw4DAhoEFI/l0xqGrI2Oa8PPgGrUSBgs exkuMCUWI2h0dHA6Ly9sb2dvLnZlcmlzaWduLmNvbS92c2xvZ28uZ2lmMB0GA1Ud DgQWBBS2d/ppSEefUxLVwuoHMnYH0ZcHGTANBgkqhkiG9w0BAQsFAAOCAQEASvj4 sAPmLGd75JR3Y8xuTPl9Dg3cyLk1uXBPY/ok+myDjEedO2Pzmvl2MpWRsXe8rJq+ seQxIcaBlVZaDrHC1LGmWazxY8u4TB1ZkErvkBYoH1quEPuBUDgMbMzxPcP1Y+Oz 4yHJJDnp/RVmRvQbEdBNc6N9Rvk97ahfYtTxP/jgdFcrGJ2BtMQo2pSXpXDrrB2+ BxHw1dvd5Yzw1TKwg+ZX4o+/vqGqvz0dtdQ46tewXDpPaj+PwGZsY6rp2aQW9IHR lRQOfc2VNNnSj3BzgXucfr2YYdhFh5iQxeuGMMY1v/D/w1WIg0vvBZIGcfK4mJO3 7M2CYfE45k+XmCpajQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDojCCAoqgAwIBAgIQE4Y1TR0/BvLB+WUF1ZAcYjANBgkqhkiG9w0BAQUFADBr MQswCQYDVQQGEwJVUzENMAsGA1UEChMEVklTQTEvMC0GA1UECxMmVmlzYSBJbnRl cm5hdGlvbmFsIFNlcnZpY2UgQXNzb2NpYXRpb24xHDAaBgNVBAMTE1Zpc2EgZUNv bW1lcmNlIFJvb3QwHhcNMDIwNjI2MDIxODM2WhcNMjIwNjI0MDAxNjEyWjBrMQsw CQYDVQQGEwJVUzENMAsGA1UEChMEVklTQTEvMC0GA1UECxMmVmlzYSBJbnRlcm5h dGlvbmFsIFNlcnZpY2UgQXNzb2NpYXRpb24xHDAaBgNVBAMTE1Zpc2EgZUNvbW1l cmNlIFJvb3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCvV95WHm6h 2mCxlCfLF9sHP4CFT8icttD0b0/Pmdjh28JIXDqsOTPHH2qLJj0rNfVIsZHBAk4E lpF7sDPwsRROEW+1QK8bRaVK7362rPKgH1g/EkZgPI2h4H3PVz4zHvtH8aoVlwdV ZqW1LS7YgFmypw23RuwhY/81q6UCzyr0TP579ZRdhE2o8mCP2w4lPJ9zcc+U30rq 299yOIzzlr3xF7zSujtFWsan9sYXiwGd/BmoKoMWuDpI/k4+oKsGGelT84ATB+0t vz8KPFUgOSwsAGl0lUq8ILKpeeUYiZGo3BxN77t+Nwtd/jmliFKMAGzsGHxBvfaL dXe6YJ2E5/4tAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQD AgEGMB0GA1UdDgQWBBQVOIMPPyw/cDMezUb+B4wg4NfDtzANBgkqhkiG9w0BAQUF AAOCAQEAX/FBfXxcCLkr4NWSR/pnXKUTwwMhmytMiUbPWU3J/qVAtmPN3XEolWcR zCSs00Rsca4BIGsDoo8Ytyk6feUWYFN4PMCvFYP3j1IzJL1kk5fui/fbGKhtcbP3 LBfQdCVp9/5rPJS+TUtBjE7ic9DjkCJzQ83z7+pzzkWKsKZJ/0x9nXGIxHYdkFsd 7v3M9+79YKWxehZx0RbQfBI8bGmX265fOZpwLwU8GUYEmSA20GBuYQa7FkKMcPcw ++DbZqMAAb3mLNqRX6BGi01qnD093QVG/na/oAo85ADmJ7f/hC3euiInlhBx6yLt 398znM/jra6O1I7mT1GvFpLgXPYHDw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID5TCCAs2gAwIBAgIEOeSXnjANBgkqhkiG9w0BAQUFADCBgjELMAkGA1UEBhMC VVMxFDASBgNVBAoTC1dlbGxzIEZhcmdvMSwwKgYDVQQLEyNXZWxscyBGYXJnbyBD ZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEvMC0GA1UEAxMmV2VsbHMgRmFyZ28gUm9v dCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwHhcNMDAxMDExMTY0MTI4WhcNMjEwMTE0 MTY0MTI4WjCBgjELMAkGA1UEBhMCVVMxFDASBgNVBAoTC1dlbGxzIEZhcmdvMSww KgYDVQQLEyNXZWxscyBGYXJnbyBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEvMC0G A1UEAxMmV2VsbHMgRmFyZ28gUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwggEi MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDVqDM7Jvk0/82bfuUER84A4n13 5zHCLielTWi5MbqNQ1mXx3Oqfz1cQJ4F5aHiidlMuD+b+Qy0yGIZLEWukR5zcUHE SxP9cMIlrCL1dQu3U+SlK93OvRw6esP3E48mVJwWa2uv+9iWsWCaSOAlIiR5NM4O JgALTqv9i86C1y8IcGjBqAr5dE8Hq6T54oN+J3N0Prj5OEL8pahbSCOz6+MlsoCu ltQKnMJ4msZoGK43YjdeUXWoWGPAUe5AeH6orxqg4bB4nVCMe+ez/I4jsNtlAHCE AQgAFG5Uhpq6zPk3EPbg3oQtnaSFN9OH4xXQwReQfhkhahKpdv0SAulPIV4XAgMB AAGjYTBfMA8GA1UdEwEB/wQFMAMBAf8wTAYDVR0gBEUwQzBBBgtghkgBhvt7hwcB CzAyMDAGCCsGAQUFBwIBFiRodHRwOi8vd3d3LndlbGxzZmFyZ28uY29tL2NlcnRw b2xpY3kwDQYJKoZIhvcNAQEFBQADggEBANIn3ZwKdyu7IvICtUpKkfnRLb7kuxpo 7w6kAOnu5+/u9vnldKTC2FJYxHT7zmu1Oyl5GFrvm+0fazbuSCUlFLZWohDo7qd/ 0D+j0MNdJu4HzMPBJCGHHt8qElNvQRbn7a6U+oxy+hNH8Dx+rn0ROhPs7fpvcmR7 nX1/Jv16+yWt6j4pf0zjAFcysLPp7VMX2YuyFA4w6OXVE8Zkr8QA1dhYJPz1j+zx x32l2w8n0cbyQIjmH/ZhqPRCyLk306m+LFZ4wnKbWV01QIroTmMatukgalHizqSQ 33ZwmVxwQ023tqcZZE6St8WRPH9IFmV7Fv3L/PvZ1dZPIWU7Sn9Ho/s= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEvTCCA6WgAwIBAgIBATANBgkqhkiG9w0BAQUFADCBhTELMAkGA1UEBhMCVVMx IDAeBgNVBAoMF1dlbGxzIEZhcmdvIFdlbGxzU2VjdXJlMRwwGgYDVQQLDBNXZWxs cyBGYXJnbyBCYW5rIE5BMTYwNAYDVQQDDC1XZWxsc1NlY3VyZSBQdWJsaWMgUm9v dCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkwHhcNMDcxMjEzMTcwNzU0WhcNMjIxMjE0 MDAwNzU0WjCBhTELMAkGA1UEBhMCVVMxIDAeBgNVBAoMF1dlbGxzIEZhcmdvIFdl bGxzU2VjdXJlMRwwGgYDVQQLDBNXZWxscyBGYXJnbyBCYW5rIE5BMTYwNAYDVQQD DC1XZWxsc1NlY3VyZSBQdWJsaWMgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkw ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDub7S9eeKPCCGeOARBJe+r WxxTkqxtnt3CxC5FlAM1iGd0V+PfjLindo8796jE2yljDpFoNoqXjopxaAkH5OjU Dk/41itMpBb570OYj7OeUt9tkTmPOL13i0Nj67eT/DBMHAGTthP796EfvyXhdDcs HqRePGj4S78NuR4uNuip5Kf4D8uCdXw1LSLWwr8L87T8bJVhHlfXBIEyg1J55oNj z7fLY4sR4r1e6/aN7ZVyKLSsEmLpSjPmgzKuBXWVvYSV2ypcm44uDLiBK0HmOFaf SZtsdvqKXfcBeYF8wYNABf5x/Qw/zE5gCQ5lRxAvAcAFP4/4s0HvWkJ+We/Slwxl AgMBAAGjggE0MIIBMDAPBgNVHRMBAf8EBTADAQH/MDkGA1UdHwQyMDAwLqAsoCqG KGh0dHA6Ly9jcmwucGtpLndlbGxzZmFyZ28uY29tL3dzcHJjYS5jcmwwDgYDVR0P AQH/BAQDAgHGMB0GA1UdDgQWBBQmlRkQ2eihl5H/3BnZtQQ+0nMKajCBsgYDVR0j BIGqMIGngBQmlRkQ2eihl5H/3BnZtQQ+0nMKaqGBi6SBiDCBhTELMAkGA1UEBhMC VVMxIDAeBgNVBAoMF1dlbGxzIEZhcmdvIFdlbGxzU2VjdXJlMRwwGgYDVQQLDBNX ZWxscyBGYXJnbyBCYW5rIE5BMTYwNAYDVQQDDC1XZWxsc1NlY3VyZSBQdWJsaWMg Um9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHmCAQEwDQYJKoZIhvcNAQEFBQADggEB ALkVsUSRzCPIK0134/iaeycNzXK7mQDKfGYZUMbVmO2rvwNa5U3lHshPcZeG1eMd /ZDJPHV3V3p9+N701NX3leZ0bh08rnyd2wIDBSxxSyU+B+NemvVmFymIGjifz6pB A4SXa5M4esowRBskRDPQ5NHcKDj0E0M1NSljqHyita04pO2t/caaH/+Xc/77szWn k4bGdpEA5qxRFsQnMlzbc9qlk1eOPm01JghZ1edE13YgY+esE2fDbbFwRnzVlhE9 iW9dqKHrjQrawx0zbKPqZxmamX9LPYNRKh3KL4YMon4QLSvUFpULB6ouFJJJtylv 2G0xffX8oRAHh84vWdw+WNs= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEMDCCAxigAwIBAgIQUJRs7Bjq1ZxN1ZfvdY+grTANBgkqhkiG9w0BAQUFADCB gjELMAkGA1UEBhMCVVMxHjAcBgNVBAsTFXd3dy54cmFtcHNlY3VyaXR5LmNvbTEk MCIGA1UEChMbWFJhbXAgU2VjdXJpdHkgU2VydmljZXMgSW5jMS0wKwYDVQQDEyRY UmFtcCBHbG9iYWwgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDQxMTAxMTcx NDA0WhcNMzUwMTAxMDUzNzE5WjCBgjELMAkGA1UEBhMCVVMxHjAcBgNVBAsTFXd3 dy54cmFtcHNlY3VyaXR5LmNvbTEkMCIGA1UEChMbWFJhbXAgU2VjdXJpdHkgU2Vy dmljZXMgSW5jMS0wKwYDVQQDEyRYUmFtcCBHbG9iYWwgQ2VydGlmaWNhdGlvbiBB dXRob3JpdHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCYJB69FbS6 38eMpSe2OAtp87ZOqCwuIR1cRN8hXX4jdP5efrRKt6atH67gBhbim1vZZ3RrXYCP KZ2GG9mcDZhtdhAoWORlsH9KmHmf4MMxfoArtYzAQDsRhtDLooY2YKTVMIJt2W7Q DxIEM5dfT2Fa8OT5kavnHTu86M/0ay00fOJIYRyO82FEzG+gSqmUsE3a56k0enI4 qEHMPJQRfevIpoy3hsvKMzvZPTeL+3o+hiznc9cKV6xkmxnr9A8ECIqsAxcZZPRa JSKNNCyy9mgdEm3Tih4U2sSPpuIjhdV6Db1q4Ons7Be7QhtnqiXtRYMh/MHJfNVi PvryxS3T/dRlAgMBAAGjgZ8wgZwwEwYJKwYBBAGCNxQCBAYeBABDAEEwCwYDVR0P BAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFMZPoj0GY4QJnM5i5ASs jVy16bYbMDYGA1UdHwQvMC0wK6ApoCeGJWh0dHA6Ly9jcmwueHJhbXBzZWN1cml0 eS5jb20vWEdDQS5jcmwwEAYJKwYBBAGCNxUBBAMCAQEwDQYJKoZIhvcNAQEFBQAD ggEBAJEVOQMBG2f7Shz5CmBbodpNl2L5JFMn14JkTpAuw0kbK5rc/Kh4ZzXxHfAR vbdI4xD2Dd8/0sm2qlWkSLoC295ZLhVbO50WfUfXN+pfTXYSNrsf16GBBEYgoyxt qZ4Bfj8pzgCT3/3JknOJiWSe5yvkHJEs0rnOfc5vMZnT5r7SHpDwCRR5XCOrTdLa IR9NmXmd4c8nnxCbHIgNsIpkQTG4DmyQJKSbXHGPurt+HBvbaoAPIbzp26a3QPSy i6mx5O+aGtA9aZnuqCij4Tyz8LIRnM98QObd50N9otg6tamN8jSZxNQQ4Qb9CYQQ O+7ETPTsJ3xCwnR8gooJybQDJbw= -----END CERTIFICATE----- qupzilla-1.6.0/src/lib/data/data/profiles.ini000066400000000000000000000000421226107126500210600ustar00rootroot00000000000000[Profiles] startProfile="default" qupzilla-1.6.0/src/lib/data/html.qrc000066400000000000000000000020041226107126500172760ustar00rootroot00000000000000 html/errorPage.html html/info.png html/adblock_big.png html/adblockPage.html html/about.html html/box-border.png html/copyright html/reportbug.html html/start.html html/box-border-small.png html/close.png html/edit.png html/speeddial.html html/jquery.js html/jquery-ui.js html/plus.png html/loading.gif html/reload.png html/qupzilla.ico html/broken-page.png html/setting.png html/config.html html/restore.html html/dirlist.html html/hdd-icon.png qupzilla-1.6.0/src/lib/data/html/000077500000000000000000000000001226107126500165735ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/data/html/about.html000066400000000000000000000024061226107126500205750ustar00rootroot00000000000000 %TITLE%

%ABOUT-QUPZILLA%

%INFORMATIONS-ABOUT-VERSION%

%VERSION-INFO%

%MAIN-DEVELOPER%

%MAIN-DEVELOPER-TEXT%

%CONTRIBUTORS%

%CONTRIBUTORS-TEXT%

%TRANSLATORS%

%TRANSLATORS-TEXT%

%COPYRIGHT%

%COPYRIGHT-INCLUDE%
qupzilla-1.6.0/src/lib/data/html/adblockPage.html000066400000000000000000000012371226107126500216600ustar00rootroot00000000000000 %TITLE%

AdBlock

%RULE%
qupzilla-1.6.0/src/lib/data/html/adblock_big.png000066400000000000000000000076721226107126500215350ustar00rootroot00000000000000PNG  IHDR00WtEXtSoftwareAdobe ImageReadyqe<fiTXtXML:com.adobe.xmp v IDATh޵Z pe~ݹ!@HHq,N%ac;BP ꊋBirYuKWQѢBTM'lE;A\R+L~9f&`WL{{"Jvm$ʬL$1)))0^XVV,G¨#[iϟF4HxܑT,a3/X DgH6MK&PiAyl aq ;NǦN,6ھH$ 4]h')SZ6}:EGSجYS4dƀX~NqǩxN; hp(67N*ˋ(0>}V.$?IAAD~~MR>/XH~$ef$΀s#3 $uNR^T{7GI|CΜ!G"R}} "^ r:zl_~1 SW) x_Nn8@*sD}@Ӻ!HmltGd'v"}$Q dZWq,{8=u3F˵͐n3b㩕zRjkxE7 -+,y>ܒ |F}$HWdG6pRI[]M**ĔĚntPfN{(J,.OQ8~bPHclUT] +55wn" ʤ^?;,y#M+)$$ptA5[UyjIa؊Ol|iT䃢G7ij"zu?@m9B|n?/<Q d= &̈.%"!C a殩I'@!@,EEQ 64 "ҥk$N JH1iU3<@ SD>^$1gz$?AgGkgĴcܼIL1%j %=#`INMI$^\̺¤uNEE㳈@#8ؘdS 7 H0Fw#^͑pI`p2YWƒ @+=oZ e8@ !M  n8G$&78\i]~]w4+FO3ߺq+&xq-Ve3uXWVں 3|V9"- kG*gѿ5YV *"%nYLow גc+N9eͫ3pŅ T? Po $B2'rf^șy`"!'2zzc@^t‚2!X/4Jٺ/jŨWA{ \zƄ<7:?[L3&QBUPX-VėWyxMN^zshAŋ |WΗNzXTḶ_,YBX%PPPP*G9("@aJ =&;6ZT&WdgOV=㜄ka</^kw@Az:O0%\ k󅅅/΃sq^X9@ &|rۑ#GH1>oH*׌$^BVƏ?$;r4#݀ms bWC}giog𱱱| :v&'˖-:tȈU{Q)ߨ{{<|,-*Yb =zN1lQ& GІsi8*k_ iMBy͛&FH YfH6mRxL#Opq 5Ԗ i  %>F)  ڕ+iʺuٳg i'-; $zc"K|JB T q4ѯ |Է2|NNN96:N$?4x ޲.ƒMqo+=B )F{.z g8|ttK~br"}S۾}D/"H@1X 6tE RhY` e!(bz.r Ȭ$۰mϞ=e Jpn.,TYxyF 69[3fp;\WGgKw'Yh]Zjddd<ڕ=$ycl3b"q_gaEwi<!O[ C]KIENDB`qupzilla-1.6.0/src/lib/data/html/box-border-small.png000066400000000000000000000046011226107126500224530ustar00rootroot00000000000000PNG  IHDRx׸ sRGB pHYs  tIME ;)PLTE,U'4&3'4'4&3'3'4'4&3'4'4&3'4'4&3'3'4'4&3'4'4&8'8'9&3'4'4&7'8&3'3'4'4 (:(;&7'8&3'4 (>'4'4 (< (=(:&6'7'7 (<(< (> (; (<&8'9&6'6(@(@(A (? )? (=(:(;(@)@ (<(9(:(?(?(@)@ (= (> (> '< (=(D)D (= (= (> (= (= (> )>(B)B (< (=*E(@(A(A)E*E(A)B(B(?(@(B)C)D*E(A)A)D(A)B)F*F)D)E*E*E(A)B)E*E*E(C)D)D)E*E*E)D)C)E*E(C)C)G(B(C(C)C)D*E)G*G*G*G*H)G)H*H)G)H*H)F)G*G]u^v_v}Ը~6tRNS  !!!!!"""""""#$$$$%%&&&&&(())*...03366999:::;;;AAGHJJLMRTXXY\\^_`ccccdeffhhmnnnoooops{{{-bKGD!;IDATOW9.;@l6Ab&"d +`5% mw;:]{* X½#캐ͅ%p4V-VNL-ř)C -qIbk.E`(Z02e(hk=#d_GͲU(!R 8$RQP8)Z) e APLQ8ݷC^k'=#:Zڢl/?~ǗWl?}К.?_om{yo0?{1Y>>K_6P\0$$P. VtNHK9.L \Lrz<_y=z3lcFUcxٟ?؟|ؼܚayx鋋֖]lO+zʏO]϶㍁-635ysEglL3eni'fFt̙9 +LљNх.q3+ts(*SI0a" I1˜9Fta, ϜĄ. ,1IN8a&3)&R2a"iL*f"3 bx6)&a:^TV;EglӉ9bx+0SLHdDs00E'WĈ.qLd1a&ʼnCp8 ]0B83]lLWt$B̙83EW tf&̢93p1EWLFL)0DLBf2Ftf ]1)93g'aDIfK̙^IFAt s]Ü ]ň9ЙN0.eD'3aBgP9[b.2gax f3DWXE'E 3 s&rs&&tNeDg 93] /t]1<c:3${Wn{Xvw~8Ñ=af7w^wanܿ{j\ ]V\a⿼ H+S.N"S.\.@\.ePHrT"B.N9 xr|䫧-nnrlxn_׷ځe֌l}_~u{oZw}6~oK ݲR+L EI !.)( "P]I$1T.ӅHEpo޽Ϻ<Ǐ~t٢pEH+(@*E%B02 VL"Kb)W[nwÇCrr-ZXhsXZ{?sYʽ֋'[v/ܟ{^(P(}QY?Qj^kK.vضm-7ۿ߾- 9mѫK粙y|҇l$cEcO ϟ8ό\,11 Yc1g]/힟}9c5gJsL_oUeu=WN[hKzҖ\kv܌Es=/sf6=#֮ q/BP<1^?Z_tbwMj?7m߹~550}6t\qmuIǨ́;Ot}lnJRVe,=ǥW,wڹ\,9,1e- }\](Vց6vߕ5![c-͓x^:עt iT4)|r 蠗«b:'Yֽ]}6,z/ߛpX3wD&9>]:fo*܉aq6j_o{To{UotK+;>ҹUޛڐ׭}͖簴JcRsQY e=dGW[:V_=ʵik(^I=F&HrWR&pgۆ ^.mۿmYEJM3Gt]﷟ ߛB?zyNǦ^_8~8|z=KK_q:P$$kMm|}\XXt/ڳg{~/31ψckxGں>i{rw|?ɯw}|kFV&~Ϋ2|x/;z{߼s5Yͼ@5dO/߿p#h4MoVFZYya5+;to>g'o#r*w ]+{ῼG?`i4YNvnӞs+cK޺|M O_c&FNo';Vz5Gy!7 d?O~+_y/>s?w}6<[+mjc~XkǔKMkcqq鞵܇lʹK}tt=UYou_|w,Y#MGz:fu{5]lo~Xhe:ie剐VZ.:HkN7P>/\Y=s/,ҍΠ_-б2[y'ɆW;jzyw؛:*-?o%_'kԱ25kX}Y VO^]z{wd}۟`kְ6!CL]zVz[w&lEf.敳y{M+_L7@vCDP+SHg*BwRmB0y0`^;?'d_0mXo!CVƺ2$$1I\ˁg/IaBj6I"GWGvv%>5!{5Bۃ` mdf"_xr'cl3:9֘]R}SK;NL5@`^إN^rvfkƞ= f4fSf#9j^+ca?#KlKO?ܩ=A0m {;p${81`^3 f3e^^0SlUϡ1LB3e|ٕRM+ c3@3U~טm5f}4fLcƔЊ,4kdctИFٔq՘}fc6#l)26`^zYavAc֔a/fWol Npg=l?|y2R0wL՘``v&fiv1{w+#uÔ0BZsqj~̝T?A0mjrpc`hEȿy17 f4ӴWN!20.$1yИZ 4fd{?T0I 08p6fyeDi?q]NdrsWTڼ2)c 0`ld1 0l&0 Ew].%!٦w $`Ncc6ƼB0 \>QckN0DL%/cM"]\T (?` 0;喛8W^FF1LZćd sVZ*uC0LĨ7eH'? 0*93e{ Y&!1]U0s1Y1/Dzˡ12Z$l7B> f#4j5Lr?=RfL|'1U&Nm &cZZiوb!1G&U3^T~*XZUV0AcD]G$Wט ^G2&R+y f1;M`1G!+C&1B0Lg*!WهdW5f6ZR (&3TjIoFN&~̆RPҘ柌K1$FQH6 )%1 sg\xeh1V5DhF21Lx,Q.gͿ^$hf,$ f]n?ɨ6+Û2JvR 0 &PZbM^fV5ꕑnك3@3XeƜrfi~ƹ2dk+Ð`IlC]nPcv -ic3@3D_+CژxeLu/FKb`&,k!ٛ8${+^B &VZ `ZlyHv]5rSKbjq f+#Ibes 4r) #Uc^= hl-Q~.2 P՘e?+c+7”Av9T5c'2csH4y1V`c F04SONLB|6f\%(c i?# '#0DkL_j.7$B"~o( L>fh 0֞3ќorMX14sQO`bFj!LDFf^Fؘ?l({eőҔaGU0Ach,Ϳ,CcZ gRR0ɚqzv9( fiʈ4fWDwÔJUc6(Qc&l̃1oh]I~FLn1L`L0PDL 0`6i1V-$|0yj̋$${蕁`hNI(tXCͿwۘh^/ i?12D6Mre f^qHvחF0̀ncd\! fS*-$Fd43Z%[$16I|3<4!&ҘW YjޔfFjxe񘍹WJbD>fi2֫d{$CƼBCHcv9.4!k̕\E?IԼ2gR9]CchFɾݛ2 &py`*\֏ (Qr0q_R`&FM>Vcv&Fw`h) #˅\?l8YSC l99E0 &?'Ӑlc`F^2L٘occ@Q0˕a"w9$1J64T|k&ɕa|̤j+cʈB?#Us1 Beɐ]. V21Lg,glF$_T0Ach5ȿcF0Lblo&ʏ0#IchG N2VDӘ1eL'~!٥ȿ>`c~jE-&Qcss`h](99Wahg+CV^J9`3,Ԓ)CR$`4xe5s.G#Ic^Rqv9-`-i?G+]`>5"?f`4Fo`~Nl|??j"3e$F2̀tWۦdʰuU)#K5f-Q>34j6(_xOD f T7DQO1׳!Z91K*Ys)`oc 6!W^sPF6D0{w}~L4ILmj]RͿ)Clb[cИ2Z%c]BM`W$FDJVZ'!j#L͌*&1*٘3e8eXI)JKژԽ2 &} LƼ$l!QӘ`NL2f`"+#*-&`*)cI9&ic9cv@ 0#wZdg68$$FP֘CƬd#3ZU1cv*ٷ1eL&\C1V`M?ic6"+ÈͿ`-$;1?\ijQ`"#ILcu!a`ew#`w0.`h%h59ʕAl/Dv(I`4|[Q(ym0QwͿ$^Ө fYOI`0 \P~~xeLE՘ٙ22 _DF!1(cּ2fi&d ^P6eL喃ƌ`j1V1{S1+`U}i(Q~s4$ L,`L JM0q^}6Α`cQ].̄dBS_-I_*Ɗ`hfʐQjS`2c!ٙ`*d2Sh̲Ԙ 0$FB06Z 2&ce)\rcժdDWṃLT5&3$F֔FcJIc6f+DL|yyeȚW`R̕`h(?lɐ`H~j! RH)1+`*MU}>f1$hl3@3ZɹCݏ.GlT\`n-Lkr3^% XHv]. 0q͑w9i+~̑)({e ѧB1S`Jy1g[SԘ`&tL2WF(-&~1L f]q\3eR`i?.LBߦM014٘e.jaܺR%3Ϗ\Őlg1L14S1Ǜhϻr˲RIEťH0)\O1Xv9`b"w95SiIbd)#!$C0L(28WIse1BՔdobCB$C H2L)`*%Sƥԫd{SFVcΌf!Ǭjؘ&QΏ9Mb$M&`Rј 0hZO|yi$94fI٘RQ1`'$`2p WJK0Z1laS~Pse~F Y`+`j^F1Xye2.01)ûcИZHv'F 01`mcdh]xw.wD3RNb4D]nN#Ƽ.$1]&w9Qo!V%$FlҐP/IbT`B@;meژ柋vL*~hTC&iicF0LBQ$} ac4fGOijaȒ`0i?7eD&*31Ǜ7`&$`c^>/wK6$FThHv'se8?fP%`柑sɖ0Ĩ)ʈ+UkB̡Js21L$<[?4fT/-%E!٭4%1!Z_\% 0Z#YZ*LqW@35Y Y.G>fɔDeSF\1X>Jv0^"\qVb>`c^*i4f4})$F&1/rhhc^Ǜ)H$S$"" 0 Fd#Zl6EɏmőQ3$L\>f#LQ>`"kiIhf4Q~.7T0~̱`FcBk؏Ys2hV%'d^%?I#d\& 04US8WF51L0ꕡ33@;\WK6$FDL)t}Hט8Mi)#F5)r3e]Nט}`*8D0$F)Cc.ؘ]ƌ345\#1f`2`hF3eY0Z) qK1V1)C&1rLL%1+,Lw,3&shtw0"L1r]nAcr!$JI1V9s(?cLfIܩ$7"Y-?g.0 wZrF1eZH6y=$15Di!ɒ`0r _LH6@+ }]1rq>+S$6f%V0ow92f(( 0qA~.W"${!re0j3ex,l7Ϳ1w914S,d4WX1eCKLd#桦1D+c+eI[H6 V+^Fʐ!Fؘ21436U}|C,4W.2Ql4f&1Jvk$Jt:32634ws2Qb/F`0 $Fdq/]|׽^*cFch+[;-iKGfi|{D127r6` g?w/23cO=KAc^SSfg{Pw;VGu?~o}d|嵗j6 2N}ح);^c _^S_~+_ӯƧ^Wn:VVZy"dVZ],fm䵝NkؙF_'B~sW~5+kV0^>Y2ypĕ ̙G߿q'_k|+_++O촲T+[8haLd̛Y_z 7r zLH++OcV^? .3Qf9ac6N`'3wjnGz/Mgְk{.6%m;ƾQ[wqiL cQǎ[==״uݽ:17~w5i缛^C\+XOa^JvܰF|d}:u}222lW~ge/[mo~ӖV3Fo:%|q).Z]'Fh ߶2 ,yԺ"?Y$BV`cZs39luN8}SӜi47:9Җgϼcg"v} vuHgyߙÏ?GW? &F|[V[aR[a~%E0/9V_|x+|Y=ٜ;[_ۗ???_{#nF^/Ytce wY`V53fym:|S[?N@ӠW݉?`t'<ѽG<~o}#};L^㒿gsߗNyX۴6_PoiΥ5XarjsypJյSߥ{wYOr䵦}6Ժrkvk}֑X?k|8cc[72o+0@gK^Y ww~ﴲs+LrD6sNnr.ۚωsݥ^V@yWgw}kz`guvGφw N]ײ\CѸ׽+-}Sk<[81cͥvt=KIOt=ךދݕrWvWv+ZWZkÕ~­hӵγ6g;9εh6UާvgR'kSy~&s"z||;{.}W/Z & Bٵ^[NAK<ؚ{f'\ʥNX=`blHnطe;'MsU7N~{UA~/qU#\~v3zUu5{3yc]SXOzKzmW9U^}Uo}ݛ˛Xof{5;VzS9>wSt5=Hdzt\U֟JTrX%$SV3Z~.z/l r5xbxmY5e/_lr9?x}Ϊض ;+{;so7켦xl|<"}_Ԯ1[|^jF)C9]:Njx5'1kZk'w){Ui-si֔Yh6voG֥^KtmɘR磰s=>(ܻDljk^^vq[xd;~}V^E0"{B`ow=Wd R.An˨6Elq8yli_ߢ~下O}1;~6=69oޝ˨,̕_iiKq\e,5܇l,yK6=NXU8g~ѽ$8uסeό)Ҝ)\_6nXcB㭜sZ%!/J Y*T e//ỉp6هl%KgúE'C3s?$Ef&?n6}Kags/]O4.;wI~o0i\?Z?Q(kFk>Py)]Gez];=)\Gsajχhc$imS2_&4Ҏў%My3xC//w|5"ӔƢ20A6}sBz l/Dx bbN7A;KNROR^(犮'r5jM:/\Ƥ3M6h2Z?yIQ}ƶԏזבuΕ{=+M>}^&Z{6j1v3}X|kY-=k-r y'+ω,A ?^ИڐOý9Ϲ<$Mz,}3yjcl &2F;o8]|}&ovҹOZ_r>FM~o{-cZ5VmM벰j@nSx6jk#rFY~Fse9k)m ܔk5c/JqYĎˍadȶS 糙VpN ĕf9pq?91ߙxfcUZƾ׮Udg|0mvl.ήO=K:|ZLsz-}Y_Zdr$eYI~m۪S9+*E'DךGOҟI>W~SK ^s6o;݃>6#>S^Y̲ҵf-75id9PWX\CF17ѵ?ƣ)T:О1Gls5|e~oӵM{yU?Sq*Nũ8TSq*Nũ8TSq*Nũ8TSq*Nũ814/S)ʪ~\s?\y!RUv_ɹLc?tMM.09y"yV!m;-O9_ǡJp`g.9wH|Pp)0ϋ2ϫ[7'VؤHY]ftS\CVfcݪ9s1یe^"KEey٬qxBAHYR,+4z͜UdnxUϢ~:LR@͜1<Ƌq͜U4SfIue٧(~;x՜=&>*-8b1O#bw &^B0ϳr\CΊ^h1 c\J6\49eaS";t;>>αM";Fܙ׫ /gyQTLSL`r9ŌbI58K)~{휃pzc~ / 9qۖ\]\KHbWٿsW.Ahp͇>噚jJәN]6v{zmΕk3<25( ;yU'*;LKk(AoF}ͭy`OY8S~ip«f,rP;S\X{CZp{ ?55vhqnWC}qeėea(d[%S7vbq¯i0nZVhfX:,dE۲L$w:&Q bAQ󀼂ٳp.!u&&vkQ# ?OHİMmI-k&4TWj%m4ͿFe>bhZpm fX twgyݏߣMM'?Fi8s=nL_A!VGӆ4-EMD$ĥ^:4%"Ċ"|\ =Bn>]}_H6,fqyn?TSq*Nũ8TSq*Nũ8TSq*Nũ8TSqq + fIçIENDB`qupzilla-1.6.0/src/lib/data/html/close.png000066400000000000000000000007531226107126500204130ustar00rootroot00000000000000PNG  IHDR(-SsBITO pHYs B(xtEXtSoftwarewww.inkscape.org<PLTE999666ùAAA111/// &&&%%%2tRNS "#&(.0112QVX^_bfnw~ IDAT0"M_N@pA]8DzHq{;M؈jؐuufvJbz\ ;R?}UUFya{QfGNq}1wd̐qU YIENDB`qupzilla-1.6.0/src/lib/data/html/config.html000066400000000000000000000054441226107126500207350ustar00rootroot00000000000000 %TITLE%

%CONFIG%

%INFORMATIONS-ABOUT-VERSION%

%VERSION-INFO%

%BROWSER-IDENTIFICATION%

%USER-AGENT%

%PATHS%

%PATHS-TEXT%

%BUILD-CONFIG%

%BUILD-CONFIG-TEXT%

%PLUGINS%

%PLUGINS-INFO%
%PL-NAME%%PL-VER%%PL-AUTH%%PL-DESC%

%PREFS%

%PREFS-INFO%
%OPTION%%VALUE%
%CONFIG-ABOUT%
qupzilla-1.6.0/src/lib/data/html/copyright000066400000000000000000000304051226107126500205300ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ ------------------------------------------------------------------------ AdBlock, LineEdit class and SqueezeLabel class: ------------------------------------------------------------------------ * Copyright (c) 2008 - 2009, Benjamin C. Meyer * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the Benjamin Meyer nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. ----------------------------------------------------------------------------- QtSingleApplication class: ----------------------------------------------------------------------------- ** ** Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** This file is part of a Qt Solutions component. ** ** Commercial Usage ** Licensees holding valid Qt Commercial licenses may use this file in ** accordance with the Qt Solutions Commercial License Agreement provided ** with the Software or, alternatively, in accordance with the terms ** contained in a written agreement between you and Nokia. ** ** GNU Lesser General Public License Usage ** Alternatively, this file may be used under the terms of the GNU Lesser ** General Public License version 2.1 as published by the Free Software ** Foundation and appearing in the file LICENSE.LGPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU Lesser General Public License version 2.1 requirements ** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. ** ** In addition, as a special exception, Nokia gives you certain ** additional rights. These rights are described in the Nokia Qt LGPL ** Exception version 1.1, included in the file LGPL_EXCEPTION.txt in this ** package. ** ** GNU General Public License Usage ** Alternatively, this file may be used under the terms of the GNU ** General Public License version 3.0 as published by the Free Software ** Foundation and appearing in the file LICENSE.GPL included in the ** packaging of this file. Please review the following information to ** ensure the GNU General Public License version 3.0 requirements will be ** met: http://www.gnu.org/copyleft/gpl.html. ** ** Please note Third Party Software included with Qt Solutions may impose ** additional restrictions and it is the user's responsibility to ensure ** that they have met the licensing requirements of the GPL, LGPL, or Qt ** Solutions Commercial license and the relevant license of the Third ** Party Software they are using. ** ** If you are unsure which license is appropriate for your use, please ** contact Nokia at qt-info@nokia.com. ** ----------------------------------------------------------------------------- HtmlHighlighter and PlainTextEditorWithLines classes: ----------------------------------------------------------------------------- /**************************************************************************** ** ** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:BSD$ ** You may use this file under the terms of the BSD license as follows: ** ** "Redistribution and use in source and binary forms, with or without ** modification, are permitted provided that the following conditions are ** met: ** * Redistributions of source code must retain the above copyright ** notice, this list of conditions and the following disclaimer. ** * Redistributions in binary form must reproduce the above copyright ** notice, this list of conditions and the following disclaimer in ** the documentation and/or other materials provided with the ** distribution. ** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor ** the names of its contributors may be used to endorse or promote ** products derived from this software without specific prior written ** permission. ** ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." ** $QT_END_LICENSE$ ** ****************************************************************************/ --------------------------------------------------------------------------- Click2Flash plugin: --------------------------------------------------------------------------- /* ============================================================ * * Copyright (C) 2009 by Benjamin C. Meyer * Copyright (C) 2010 by Matthieu Gicquel * * 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) version 3 or any later version * accepted by the membership of KDE e.V. (or its successor approved * by the membership of KDE e.V.), which shall act as a proxy * defined in Section 14 of version 3 of the license. * * 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, see . * * ============================================================ */ ----------------------------------------------------------------------------- EcWin7 class: ----------------------------------------------------------------------------- /* EcWin7 - Support library for integrating Windows 7 taskbar features * into any Qt application * Copyright (C) 2010 Emanuele Colombo * * 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. */ ----------------------------------------------------------------------------- OpenSearchReader + OpenSearchEngine class: ----------------------------------------------------------------------------- /* * Copyright 2009 Jakub Wieczorek * * 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., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA */ ----------------------------------------------------------------------------- CA certificates from Mozilla included in ca-bundle.crt: ----------------------------------------------------------------------------- # The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of # the License at http://www.mozilla.org/MPL/ # # Software distributed under the License is distributed on an "AS # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or # implied. See the License for the specific language governing # rights and limitations under the License. # # The Original Code is the Netscape security libraries. # # The Initial Developer of the Original Code is Netscape # Communications Corporation. Portions created by Netscape are # Copyright (C) 1994-2000 Netscape Communications Corporation. All # Rights Reserved. # # Contributor(s): # # Alternatively, the contents of this file may be used under the # terms of the GNU General Public License Version 2 or later (the # "GPL"), in which case the provisions of the GPL are applicable # instead of those above. If you wish to allow use of your # version of this file only under the terms of the GPL and not to # allow others to use your version of this file under the MPL, # indicate your decision by deleting the provisions above and # replace them with the notice and other provisions required by # the GPL. If you do not delete the provisions above, a recipient # may use your version of this file under either the MPL or the # GPL. ----------------------------------------------------------------------------- QtWin class from http://labs.qt.nokia.com/2009/09/15/using-blur-behind-on-windows/ ----------------------------------------------------------------------------- In application are used also some icons from Faenza icon set, which are licensed under the GNU/GPL license. More info at http://tiheum.deviantart.com/art/Faenza-Icons-173323228 ----------------------------------------------------------------------------- qupzilla-1.6.0/src/lib/data/html/dirlist.html000066400000000000000000000052041226107126500211340ustar00rootroot00000000000000 %TITLE%

%CLICKABLE-TITLE%

%UP-DIR-TEXT%

%T-BODY%
%NAME% %SIZE% %MODIFIED%
qupzilla-1.6.0/src/lib/data/html/edit.png000066400000000000000000000010351226107126500202250ustar00rootroot00000000000000PNG  IHDR(-SsBITO pHYs B(xtEXtSoftwarewww.inkscape.org<PLTEgggTTTLLL<< %TITLE%

%HEADING%

%HEADING2%

  • %LI-1%
  • %LI-2%
  • %LI-3%
qupzilla-1.6.0/src/lib/data/html/hdd-icon.png000066400000000000000000000012771226107126500207750ustar00rootroot00000000000000PNG  IHDRasBIT|d pHYsvv}ՂtEXtSoftwarewww.inkscape.org<H)cP%C HɄ(9cpϩȉ0.Kq?vZ{T3CD0{̰ɛ ]6XΙrJ5f3-u]=˾GD4%3)%v*zq=q>:Vma7\ s^) M]x#[|{O=UY{.+Qeٶ>>n\,P˽ ׯdz3z_2DjT8 }*jE۵@|E*gNޡJǕ>XKFU$Hͣ 69=ֻf A؎"IENDB`qupzilla-1.6.0/src/lib/data/html/info.png000066400000000000000000000047251226107126500202440ustar00rootroot00000000000000PNG  IHDR.-^OsRGB pHYs  tIMEaYbKGD UIDATXýX]l\Gwn"8(H MH H^T*W/ PCHȴi$nۍc]{g33c7mh>{99 !BZy}ZbYV$W~\-..wRk[QZ_b){ k۶xه3A}~)HEcaZr!junnnXmX~b%O;bGDAh.2IDn% RRLp!Qd`˥ I3 @+yJu-0h|*?3Q1 pD;6@ ChZV=!&||֙W$c%bl6)5e(` XJ 6B0ͥuxЇZ_pޝ\zOf0-eU)&VfċW1n`Z%;W68 Qq}–xS<*k.Ҧ1L";H7{}ֻ6YNcxni"7crADKkęZܩr G4\~I`<0RTT&!~Q䮺Xvk/IG Vp}_9 -0Rqۆ) t*^߼j=: 6kҪ՞l9hfm4TbuWIދ6?z6"D s!+p[Ղ@lqm], b^%"`AW^}iۼh|-x lAa:`Vi%u Ń\o`!:]ݽ;y&-GL+MU)RgƢ??wfrL:V V8Um*JK1=S+5SZu[R;- 7(t[Wp1DpEh ?E̸Jhζ: jɰ0dwb#U^2Nejwnu[fR{{&GV5̰ZL--Ms wU=vrf FKU__{KQ֔mR1΢(Jܩg> Xf7;2^=+3J߬)H()3ƥW؆Le16u,Ït$~žvP0Uх).|&%Ewޟ|vpב C0@l9p?*Q̶U "3P*,ǼozvDάn9=č3B3 [ :Bfc|K>s?u+# -檻N,fS4j!'V5A} Wo2r;;}wY@ÇN{9zx^嵿T'0/mʗ(y@J"00Mo/<fn2 EH?1@4( 綱Xlhhh#f*Mi/OEYKY]4ut:@۠2/6}}}L0Ct5IENDB`qupzilla-1.6.0/src/lib/data/html/jquery-ui.js000066400000000000000000001031501226107126500210630ustar00rootroot00000000000000/*! * jQuery UI 1.8.16 * * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) * Dual licensed under the MIT or GPL Version 2 licenses. * http://jquery.org/license * * http://docs.jquery.com/UI */ (function(c,j){function k(a,b){var d=a.nodeName.toLowerCase();if("area"===d){b=a.parentNode;d=b.name;if(!a.href||!d||b.nodeName.toLowerCase()!=="map")return false;a=c("img[usemap=#"+d+"]")[0];return!!a&&l(a)}return(/input|select|textarea|button|object/.test(d)?!a.disabled:"a"==d?a.href||b:b)&&l(a)}function l(a){return!c(a).parents().andSelf().filter(function(){return c.curCSS(this,"visibility")==="hidden"||c.expr.filters.hidden(this)}).length}c.ui=c.ui||{};if(!c.ui.version){c.extend(c.ui,{version:"1.8.16", keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});c.fn.extend({propAttr:c.fn.prop||c.fn.attr,_focus:c.fn.focus,focus:function(a,b){return typeof a==="number"?this.each(function(){var d= this;setTimeout(function(){c(d).focus();b&&b.call(d)},a)}):this._focus.apply(this,arguments)},scrollParent:function(){var a;a=c.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?this.parents().filter(function(){return/(relative|absolute|fixed)/.test(c.curCSS(this,"position",1))&&/(auto|scroll)/.test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0):this.parents().filter(function(){return/(auto|scroll)/.test(c.curCSS(this, "overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!a.length?c(document):a},zIndex:function(a){if(a!==j)return this.css("zIndex",a);if(this.length){a=c(this[0]);for(var b;a.length&&a[0]!==document;){b=a.css("position");if(b==="absolute"||b==="relative"||b==="fixed"){b=parseInt(a.css("zIndex"),10);if(!isNaN(b)&&b!==0)return b}a=a.parent()}}return 0},disableSelection:function(){return this.bind((c.support.selectstart?"selectstart": "mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});c.each(["Width","Height"],function(a,b){function d(f,g,m,n){c.each(e,function(){g-=parseFloat(c.curCSS(f,"padding"+this,true))||0;if(m)g-=parseFloat(c.curCSS(f,"border"+this+"Width",true))||0;if(n)g-=parseFloat(c.curCSS(f,"margin"+this,true))||0});return g}var e=b==="Width"?["Left","Right"]:["Top","Bottom"],h=b.toLowerCase(),i={innerWidth:c.fn.innerWidth,innerHeight:c.fn.innerHeight, outerWidth:c.fn.outerWidth,outerHeight:c.fn.outerHeight};c.fn["inner"+b]=function(f){if(f===j)return i["inner"+b].call(this);return this.each(function(){c(this).css(h,d(this,f)+"px")})};c.fn["outer"+b]=function(f,g){if(typeof f!=="number")return i["outer"+b].call(this,f);return this.each(function(){c(this).css(h,d(this,f,true,g)+"px")})}});c.extend(c.expr[":"],{data:function(a,b,d){return!!c.data(a,d[3])},focusable:function(a){return k(a,!isNaN(c.attr(a,"tabindex")))},tabbable:function(a){var b=c.attr(a, "tabindex"),d=isNaN(b);return(d||b>=0)&&k(a,!d)}});c(function(){var a=document.body,b=a.appendChild(b=document.createElement("div"));c.extend(b.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});c.support.minHeight=b.offsetHeight===100;c.support.selectstart="onselectstart"in b;a.removeChild(b).style.display="none"});c.extend(c.ui,{plugin:{add:function(a,b,d){a=c.ui[a].prototype;for(var e in d){a.plugins[e]=a.plugins[e]||[];a.plugins[e].push([b,d[e]])}},call:function(a,b,d){if((b=a.plugins[b])&& a.element[0].parentNode)for(var e=0;e0)return true;a[b]=1;d=a[b]>0;a[b]=0;return d},isOverAxis:function(a,b,d){return a>b&&a=9)&&!a.button)return this._mouseUp(a);if(this._mouseStarted){this._mouseDrag(a);return a.preventDefault()}if(this._mouseDistanceMet(a)&&this._mouseDelayMet(a))(this._mouseStarted=this._mouseStart(this._mouseDownEvent,a)!==false)?this._mouseDrag(a):this._mouseUp(a);return!this._mouseStarted},_mouseUp:function(a){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted= false;a.target==this._mouseDownEvent.target&&b.data(a.target,this.widgetName+".preventClickEvent",true);this._mouseStop(a)}return false},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return true}})})(jQuery); ;/* * jQuery UI Sortable 1.8.16 * * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) * Dual licensed under the MIT or GPL Version 2 licenses. * http://jquery.org/license * * http://docs.jquery.com/UI/Sortables * * Depends: * jquery.ui.core.js * jquery.ui.mouse.js * jquery.ui.widget.js */ (function(d){d.widget("ui.sortable",d.ui.mouse,{widgetEventPrefix:"sort",options:{appendTo:"parent",axis:false,connectWith:false,containment:false,cursor:"auto",cursorAt:false,dropOnEmpty:true,forcePlaceholderSize:false,forceHelperSize:false,grid:false,handle:false,helper:"original",items:"> *",opacity:false,placeholder:false,revert:false,scroll:true,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1E3},_create:function(){var a=this.options;this.containerCache={};this.element.addClass("ui-sortable"); this.refresh();this.floating=this.items.length?a.axis==="x"||/left|right/.test(this.items[0].item.css("float"))||/inline|table-cell/.test(this.items[0].item.css("display")):false;this.offset=this.element.offset();this._mouseInit()},destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled").removeData("sortable").unbind(".sortable");this._mouseDestroy();for(var a=this.items.length-1;a>=0;a--)this.items[a].item.removeData("sortable-item");return this},_setOption:function(a,b){if(a=== "disabled"){this.options[a]=b;this.widget()[b?"addClass":"removeClass"]("ui-sortable-disabled")}else d.Widget.prototype._setOption.apply(this,arguments)},_mouseCapture:function(a,b){if(this.reverting)return false;if(this.options.disabled||this.options.type=="static")return false;this._refreshItems(a);var c=null,e=this;d(a.target).parents().each(function(){if(d.data(this,"sortable-item")==e){c=d(this);return false}});if(d.data(a.target,"sortable-item")==e)c=d(a.target);if(!c)return false;if(this.options.handle&& !b){var f=false;d(this.options.handle,c).find("*").andSelf().each(function(){if(this==a.target)f=true});if(!f)return false}this.currentItem=c;this._removeCurrentsFromItems();return true},_mouseStart:function(a,b,c){b=this.options;var e=this;this.currentContainer=this;this.refreshPositions();this.helper=this._createHelper(a);this._cacheHelperProportions();this._cacheMargins();this.scrollParent=this.helper.scrollParent();this.offset=this.currentItem.offset();this.offset={top:this.offset.top-this.margins.top, left:this.offset.left-this.margins.left};this.helper.css("position","absolute");this.cssPosition=this.helper.css("position");d.extend(this.offset,{click:{left:a.pageX-this.offset.left,top:a.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this._generatePosition(a);this.originalPageX=a.pageX;this.originalPageY=a.pageY;b.cursorAt&&this._adjustOffsetFromHelper(b.cursorAt);this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]}; this.helper[0]!=this.currentItem[0]&&this.currentItem.hide();this._createPlaceholder();b.containment&&this._setContainment();if(b.cursor){if(d("body").css("cursor"))this._storedCursor=d("body").css("cursor");d("body").css("cursor",b.cursor)}if(b.opacity){if(this.helper.css("opacity"))this._storedOpacity=this.helper.css("opacity");this.helper.css("opacity",b.opacity)}if(b.zIndex){if(this.helper.css("zIndex"))this._storedZIndex=this.helper.css("zIndex");this.helper.css("zIndex",b.zIndex)}if(this.scrollParent[0]!= document&&this.scrollParent[0].tagName!="HTML")this.overflowOffset=this.scrollParent.offset();this._trigger("start",a,this._uiHash());this._preserveHelperProportions||this._cacheHelperProportions();if(!c)for(c=this.containers.length-1;c>=0;c--)this.containers[c]._trigger("activate",a,e._uiHash(this));if(d.ui.ddmanager)d.ui.ddmanager.current=this;d.ui.ddmanager&&!b.dropBehaviour&&d.ui.ddmanager.prepareOffsets(this,a);this.dragging=true;this.helper.addClass("ui-sortable-helper");this._mouseDrag(a); return true},_mouseDrag:function(a){this.position=this._generatePosition(a);this.positionAbs=this._convertPositionTo("absolute");if(!this.lastPositionAbs)this.lastPositionAbs=this.positionAbs;if(this.options.scroll){var b=this.options,c=false;if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"){if(this.overflowOffset.top+this.scrollParent[0].offsetHeight-a.pageY=0;b--){c=this.items[b];var e=c.item[0],f=this._intersectsWithPointer(c);if(f)if(e!=this.currentItem[0]&&this.placeholder[f==1?"next":"prev"]()[0]!=e&&!d.ui.contains(this.placeholder[0],e)&&(this.options.type=="semi-dynamic"?!d.ui.contains(this.element[0], e):true)){this.direction=f==1?"down":"up";if(this.options.tolerance=="pointer"||this._intersectsWithSides(c))this._rearrange(a,c);else break;this._trigger("change",a,this._uiHash());break}}this._contactContainers(a);d.ui.ddmanager&&d.ui.ddmanager.drag(this,a);this._trigger("sort",a,this._uiHash());this.lastPositionAbs=this.positionAbs;return false},_mouseStop:function(a,b){if(a){d.ui.ddmanager&&!this.options.dropBehaviour&&d.ui.ddmanager.drop(this,a);if(this.options.revert){var c=this;b=c.placeholder.offset(); c.reverting=true;d(this.helper).animate({left:b.left-this.offset.parent.left-c.margins.left+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft),top:b.top-this.offset.parent.top-c.margins.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)},parseInt(this.options.revert,10)||500,function(){c._clear(a)})}else this._clear(a,b);return false}},cancel:function(){var a=this;if(this.dragging){this._mouseUp({target:null});this.options.helper=="original"?this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"): this.currentItem.show();for(var b=this.containers.length-1;b>=0;b--){this.containers[b]._trigger("deactivate",null,a._uiHash(this));if(this.containers[b].containerCache.over){this.containers[b]._trigger("out",null,a._uiHash(this));this.containers[b].containerCache.over=0}}}if(this.placeholder){this.placeholder[0].parentNode&&this.placeholder[0].parentNode.removeChild(this.placeholder[0]);this.options.helper!="original"&&this.helper&&this.helper[0].parentNode&&this.helper.remove();d.extend(this,{helper:null, dragging:false,reverting:false,_noFinalSort:null});this.domPosition.prev?d(this.domPosition.prev).after(this.currentItem):d(this.domPosition.parent).prepend(this.currentItem)}return this},serialize:function(a){var b=this._getItemsAsjQuery(a&&a.connected),c=[];a=a||{};d(b).each(function(){var e=(d(a.item||this).attr(a.attribute||"id")||"").match(a.expression||/(.+)[-=_](.+)/);if(e)c.push((a.key||e[1]+"[]")+"="+(a.key&&a.expression?e[1]:e[2]))});!c.length&&a.key&&c.push(a.key+"=");return c.join("&")}, toArray:function(a){var b=this._getItemsAsjQuery(a&&a.connected),c=[];a=a||{};b.each(function(){c.push(d(a.item||this).attr(a.attribute||"id")||"")});return c},_intersectsWith:function(a){var b=this.positionAbs.left,c=b+this.helperProportions.width,e=this.positionAbs.top,f=e+this.helperProportions.height,g=a.left,h=g+a.width,i=a.top,k=i+a.height,j=this.offset.click.top,l=this.offset.click.left;j=e+j>i&&e+jg&&b+la[this.floating?"width":"height"]?j:g0?"down":"up")},_getDragHorizontalDirection:function(){var a=this.positionAbs.left-this.lastPositionAbs.left;return a!=0&&(a>0?"right":"left")},refresh:function(a){this._refreshItems(a);this.refreshPositions();return this},_connectWith:function(){var a=this.options;return a.connectWith.constructor==String?[a.connectWith]:a.connectWith},_getItemsAsjQuery:function(a){var b=[],c=[],e=this._connectWith(); if(e&&a)for(a=e.length-1;a>=0;a--)for(var f=d(e[a]),g=f.length-1;g>=0;g--){var h=d.data(f[g],"sortable");if(h&&h!=this&&!h.options.disabled)c.push([d.isFunction(h.options.items)?h.options.items.call(h.element):d(h.options.items,h.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),h])}c.push([d.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):d(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"), this]);for(a=c.length-1;a>=0;a--)c[a][0].each(function(){b.push(this)});return d(b)},_removeCurrentsFromItems:function(){for(var a=this.currentItem.find(":data(sortable-item)"),b=0;b=0;f--)for(var g=d(e[f]),h=g.length-1;h>=0;h--){var i=d.data(g[h],"sortable");if(i&&i!=this&&!i.options.disabled){c.push([d.isFunction(i.options.items)?i.options.items.call(i.element[0],a,{item:this.currentItem}):d(i.options.items,i.element),i]);this.containers.push(i)}}for(f=c.length-1;f>=0;f--){a=c[f][1];e=c[f][0];h=0;for(g=e.length;h=0;b--){var c=this.items[b];if(!(c.instance!=this.currentContainer&&this.currentContainer&&c.item[0]!=this.currentItem[0])){var e=this.options.toleranceElement?d(this.options.toleranceElement,c.item):c.item;if(!a){c.width=e.outerWidth();c.height=e.outerHeight()}e=e.offset();c.left=e.left;c.top=e.top}}if(this.options.custom&&this.options.custom.refreshContainers)this.options.custom.refreshContainers.call(this);else for(b= this.containers.length-1;b>=0;b--){e=this.containers[b].element.offset();this.containers[b].containerCache.left=e.left;this.containers[b].containerCache.top=e.top;this.containers[b].containerCache.width=this.containers[b].element.outerWidth();this.containers[b].containerCache.height=this.containers[b].element.outerHeight()}return this},_createPlaceholder:function(a){var b=a||this,c=b.options;if(!c.placeholder||c.placeholder.constructor==String){var e=c.placeholder;c.placeholder={element:function(){var f= d(document.createElement(b.currentItem[0].nodeName)).addClass(e||b.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper")[0];if(!e)f.style.visibility="hidden";return f},update:function(f,g){if(!(e&&!c.forcePlaceholderSize)){g.height()||g.height(b.currentItem.innerHeight()-parseInt(b.currentItem.css("paddingTop")||0,10)-parseInt(b.currentItem.css("paddingBottom")||0,10));g.width()||g.width(b.currentItem.innerWidth()-parseInt(b.currentItem.css("paddingLeft")||0,10)-parseInt(b.currentItem.css("paddingRight")|| 0,10))}}}}b.placeholder=d(c.placeholder.element.call(b.element,b.currentItem));b.currentItem.after(b.placeholder);c.placeholder.update(b,b.placeholder)},_contactContainers:function(a){for(var b=null,c=null,e=this.containers.length-1;e>=0;e--)if(!d.ui.contains(this.currentItem[0],this.containers[e].element[0]))if(this._intersectsWith(this.containers[e].containerCache)){if(!(b&&d.ui.contains(this.containers[e].element[0],b.element[0]))){b=this.containers[e];c=e}}else if(this.containers[e].containerCache.over){this.containers[e]._trigger("out", a,this._uiHash(this));this.containers[e].containerCache.over=0}if(b)if(this.containers.length===1){this.containers[c]._trigger("over",a,this._uiHash(this));this.containers[c].containerCache.over=1}else if(this.currentContainer!=this.containers[c]){b=1E4;e=null;for(var f=this.positionAbs[this.containers[c].floating?"left":"top"],g=this.items.length-1;g>=0;g--)if(d.ui.contains(this.containers[c].element[0],this.items[g].item[0])){var h=this.items[g][this.containers[c].floating?"left":"top"];if(Math.abs(h- f)this.containment[2])f=this.containment[2]+this.offset.click.left;if(a.pageY-this.offset.click.top>this.containment[3])g=this.containment[3]+this.offset.click.top}if(b.grid){g=this.originalPageY+Math.round((g- this.originalPageY)/b.grid[1])*b.grid[1];g=this.containment?!(g-this.offset.click.topthis.containment[3])?g:!(g-this.offset.click.topthis.containment[2])?f:!(f-this.offset.click.left=0;e--)if(d.ui.contains(this.containers[e].element[0],this.currentItem[0])&&!b){c.push(function(f){return function(g){f._trigger("receive",g,this._uiHash(this))}}.call(this,this.containers[e]));c.push(function(f){return function(g){f._trigger("update",g,this._uiHash(this))}}.call(this,this.containers[e]))}}for(e=this.containers.length-1;e>=0;e--){b||c.push(function(f){return function(g){f._trigger("deactivate",g,this._uiHash(this))}}.call(this, this.containers[e]));if(this.containers[e].containerCache.over){c.push(function(f){return function(g){f._trigger("out",g,this._uiHash(this))}}.call(this,this.containers[e]));this.containers[e].containerCache.over=0}}this._storedCursor&&d("body").css("cursor",this._storedCursor);this._storedOpacity&&this.helper.css("opacity",this._storedOpacity);if(this._storedZIndex)this.helper.css("zIndex",this._storedZIndex=="auto"?"":this._storedZIndex);this.dragging=false;if(this.cancelHelperRemoval){if(!b){this._trigger("beforeStop", a,this._uiHash());for(e=0;e").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"":"")+""),cm.close();d=cm.createElement(a),cm.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cl)}ck[a]=e}return ck[a]}function cu(a,b){var c={};f.each(cq.concat.apply([],cq.slice(0,b)),function(){c[this]=a});return c}function ct(){cr=b}function cs(){setTimeout(ct,0);return cr=f.now()}function cj(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ci(){try{return new a.XMLHttpRequest}catch(b){}}function cc(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){if(c!=="border")for(;g=0===c})}function S(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function K(){return!0}function J(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,n=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,p=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,q=/(?:^|:|,)(?:\s*\[)+/g,r=/(webkit)[ \/]([\w.]+)/,s=/(opera)(?:.*version)?[ \/]([\w.]+)/,t=/(msie) ([\w.]+)/,u=/(mozilla)(?:.*? rv:([\w.]+))?/,v=/-([a-z]|[0-9])/ig,w=/^-ms-/,x=function(a,b){return(b+"").toUpperCase()},y=d.userAgent,z,A,B,C=Object.prototype.toString,D=Object.prototype.hasOwnProperty,E=Array.prototype.push,F=Array.prototype.slice,G=String.prototype.trim,H=Array.prototype.indexOf,I={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=m.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return F.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?E.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),A.add(a);return this},eq:function(a){a=+a;return a===-1?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(F.apply(this,arguments),"slice",F.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:E,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;A.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").off("ready")}},bindReady:function(){if(!A){A=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",B,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",B),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&J()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return a==null?String(a):I[C.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!D.call(a,"constructor")&&!D.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||D.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw new Error(a)},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(n.test(b.replace(o,"@").replace(p,"]").replace(q,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(w,"ms-").replace(v,x)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
a",d=q.getElementsByTagName("*"),e=q.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=q.getElementsByTagName("input")[0],b={leadingWhitespace:q.firstChild.nodeType===3,tbody:!q.getElementsByTagName("tbody").length,htmlSerialize:!!q.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:q.className!=="t",enctype:!!c.createElement("form").enctype,html5Clone:c.createElement("nav").cloneNode(!0).outerHTML!=="<:nav>",submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,b.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,b.optDisabled=!h.disabled;try{delete q.test}catch(s){b.deleteExpando=!1}!q.addEventListener&&q.attachEvent&&q.fireEvent&&(q.attachEvent("onclick",function(){b.noCloneEvent=!1}),q.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),b.radioValue=i.value==="t",i.setAttribute("checked","checked"),q.appendChild(i),k=c.createDocumentFragment(),k.appendChild(q.lastChild),b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked,b.appendChecked=i.checked,k.removeChild(i),k.appendChild(q),q.innerHTML="",a.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",q.style.width="2px",q.appendChild(j),b.reliableMarginRight=(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(q.attachEvent)for(o in{submit:1,change:1,focusin:1})n="on"+o,p=n in q,p||(q.setAttribute(n,"return;"),p=typeof q[n]=="function"),b[o+"Bubbles"]=p;k.removeChild(q),k=g=h=j=q=i=null,f(function(){var a,d,e,g,h,i,j,k,m,n,o,r=c.getElementsByTagName("body")[0];!r||(j=1,k="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",m="visibility:hidden;border:0;",n="style='"+k+"border:5px solid #000;padding:0;'",o="
"+""+"
",a=c.createElement("div"),a.style.cssText=m+"width:0;height:0;position:static;top:0;margin-top:"+j+"px",r.insertBefore(a,r.firstChild),q=c.createElement("div"),a.appendChild(q),q.innerHTML="
t
",l=q.getElementsByTagName("td"),p=l[0].offsetHeight===0,l[0].style.display="",l[1].style.display="none",b.reliableHiddenOffsets=p&&l[0].offsetHeight===0,q.innerHTML="",q.style.width=q.style.paddingLeft="1px",f.boxModel=b.boxModel=q.offsetWidth===2,typeof q.style.zoom!="undefined"&&(q.style.display="inline",q.style.zoom=1,b.inlineBlockNeedsLayout=q.offsetWidth===2,q.style.display="",q.innerHTML="
",b.shrinkWrapBlocks=q.offsetWidth!==2),q.style.cssText=k+m,q.innerHTML=o,d=q.firstChild,e=d.firstChild,h=d.nextSibling.firstChild.firstChild,i={doesNotAddBorder:e.offsetTop!==5,doesAddBorderForTableAndCells:h.offsetTop===5},e.style.position="fixed",e.style.top="20px",i.fixedPosition=e.offsetTop===20||e.offsetTop===15,e.style.position=e.style.top="",d.style.overflow="hidden",d.style.position="relative",i.subtractsBorderForOverflowNotVisible=e.offsetTop===-5,i.doesNotIncludeMarginInBodyOffset=r.offsetTop!==j,r.removeChild(a),q=a=null,f.extend(b,i))});return b}();var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[j]:a[j]&&j,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[j]=n=++f.uuid:n=j),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[h]:h;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)||(b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,g=b.length;e-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];{if(!!arguments.length){e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}}}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!!a&&j!==3&&j!==8&&j!==2){if(e&&c in f.attrFn)return f(a)[c](d);if(typeof a.getAttribute=="undefined")return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g}},removeAttr:function(a,b){var c,d,e,g,h=0;if(b&&a.nodeType===1){d=b.toLowerCase().split(p),g=d.length;for(;h=0}})});var z=/^(?:textarea|input|select)$/i,A=/^([^\.]*)?(?:\.(.+))?$/,B=/\bhover(\.\S+)?\b/,C=/^key/,D=/^(?:mouse|contextmenu)|click/,E=/^(?:focusinfocus|focusoutblur)$/,F=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,G=function(a){var b=F.exec(a);b&&(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},H=function(a,b){var c=a.attributes||{};return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||(c.id||{}).value===b[2])&&(!b[3]||b[3].test((c["class"]||{}).value))},I=function(a){return f.event.special.hover?a:a.replace(B,"mouseenter$1 mouseleave$1")}; f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"";if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,m=E.test(s+h)?e:e.parentNode,n=null;for(;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;le&&i.push({elem:this,matches:d.slice(e)});for(j=0;j0?this.on(b,null,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),C.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),D.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h0)for(h=g;h=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(S(c[0])||S(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c);L.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!R[a]?f.unique(e):e,(this.length>1||N.test(d))&&M.test(a)&&(e=e.reverse());return this.pushStack(e,a,P.call(arguments).join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var V="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",W=/ jQuery\d+="(?:\d+|null)"/g,X=/^\s+/,Y=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Z=/<([\w:]+)/,$=/",""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},bh=U(c);bg.optgroup=bg.option,bg.tbody=bg.tfoot=bg.colgroup=bg.caption=bg.thead,bg.th=bg.td,f.support.htmlSerialize||(bg._default=[1,"div
","
"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=f.isFunction(a);return this.each(function(c){f(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,f.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function() {for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(Y,"<$1>");try{for(var c=0,d=this.length;c1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d,e,g,h=f.support.html5Clone||!bc.test("<"+a.nodeName)?a.cloneNode(!0):bo(a);if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bk(a,h),d=bl(a),e=bl(h);for(g=0;d[g];++g)e[g]&&bk(d[g],e[g])}if(b){bj(a,h);if(c){d=bl(a),e=bl(h);for(g=0;d[g];++g)bj(d[g],e[g])}}d=e=null;return h},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!_.test(k))k=b.createTextNode(k);else{k=k.replace(Y,"<$1>");var l=(Z.exec(k)||["",""])[1].toLowerCase(),m=bg[l]||bg._default,n=m[0],o=b.createElement("div");b===c?bh.appendChild(o):U(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=$.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]===""&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&X.test(k)&&o.insertBefore(b.createTextNode(X.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return br.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bq,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bq.test(g)?g.replace(bq,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bz(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bA=function(a,b){var c,d,e;b=b.replace(bs,"-$1").toLowerCase(),(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),c===""&&!f.contains(a.ownerDocument.documentElement,a)&&(c=f.style(a,b)));return c}),c.documentElement.currentStyle&&(bB=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bt.test(f)&&bu.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bz=bA||bB,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bD=/%20/g,bE=/\[\]$/,bF=/\r?\n/g,bG=/#.*$/,bH=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bI=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bJ=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bK=/^(?:GET|HEAD)$/,bL=/^\/\//,bM=/\?/,bN=/)<[^<]*)*<\/script>/gi,bO=/^(?:select|textarea)/i,bP=/\s+/,bQ=/([?&])_=[^&]*/,bR=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bS=f.fn.load,bT={},bU={},bV,bW,bX=["*/"]+["*"];try{bV=e.href}catch(bY){bV=c.createElement("a"),bV.href="",bV=bV.href}bW=bR.exec(bV.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bS)return bS.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
").append(c.replace(bN,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bO.test(this.nodeName)||bI.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bF,"\r\n")}}):{name:b.name,value:c.replace(bF,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.on(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?b_(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),b_(a,b);return a},ajaxSettings:{url:bV,isLocal:bJ.test(bW[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bX},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:bZ(bT),ajaxTransport:bZ(bU),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cb(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=cc(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bH.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bG,"").replace(bL,bW[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bP),d.crossDomain==null&&(r=bR.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bW[1]&&r[2]==bW[2]&&(r[3]||(r[1]==="http:"?80:443))==(bW[3]||(bW[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),b$(bT,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bK.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bM.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bQ,"$1_="+x);d.url=y+(y===d.url?(bM.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bX+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=b$(bU,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){if(s<2)w(-1,z);else throw z}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)ca(g,a[g],c,e);return d.join("&").replace(bD,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cd=f.now(),ce=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cd++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(ce.test(b.url)||e&&ce.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(ce,l),b.url===j&&(e&&(k=k.replace(ce,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var cf=a.ActiveXObject?function(){for(var a in ch)ch[a](0,1)}:!1,cg=0,ch;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ci()||cj()}:ci,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,cf&&delete ch[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++cg,cf&&(ch||(ch={},f(a).unload(cf)),ch[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var ck={},cl,cm,cn=/^(?:toggle|show|hide)$/,co=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cp,cq=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],cr;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cu("show",3),a,b,c);for(var g=0,h=this.length;g=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cx.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cx.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cy(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cy(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f,typeof define=="function"&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return f})})(window);qupzilla-1.6.0/src/lib/data/html/loading.gif000066400000000000000000000036041226107126500207020ustar00rootroot00000000000000GIF89a67xxxTTTHHH! NETSCAPE2.0!Created with ajaxload.info! ,67I8ͻ`(di%D΄MwD/ A \w,XF- @{Q` ]u&M@ċEo4q%s3u y,'jl$oP,G{=kCț$rt#% "τ#rɞ=! ,67I8ͻ`(dihAZ,k^ڈ ^jH3L- b$ &ѕ zhuAot' z!o6q#sFuf#jkmZaBcUWneg.@}M=2')dp"%|'&"˞'! ,67I8ͻ`(dih0 [ DMIJ8Đ<D +jIy$v4TUEO̚ĶrMHBDݛ)#__>0;a~ 5  h TCnqy)n |=?ol,?hxb(p_Z*gH?C~?zL5nR'g!#<@]&6aWj%_Z*gH?C~?z 5  <5 63R" 3j 6_A!5]!nn"5HgҔϢ߮<ޔg(! ,67I8ͻ`(dih0 [ DMIJ8Đ<D 4)ț5kgg5/; {#=S|N"D@+ <5 6~?q{ j6?g5A9lZR}L5gQK"N &!_!<3gk#ڶ̲'! ,67I8ͻ`(dih0 [ DMIJ8Đ<D~D-и`CWSD99{?J-!1};b[ig~ҵu0֒I#STVWXaLW5l5CO{TfiC=bs#/}8ɣɡCo<_vMO-͐ژ0(^eߝ}^\~1opgo tt)^/X-o|Xov\.&?CljD3/Ό&mL RcH!liMLj0XjqtJj$$ 4$I8;s <Zh)R&}I6Bn ~=iOgYϑG9ީOQeOJ)‚)Y7c0׳Ja)$Z*9Y4;3kFtprbXDjRD \`DÄH+B HZvQtE^a)(<ኂ(W~&0ejie%HplTxʣEqU"[Ti֨0Xcǧ.Smh𔋇Fdʘ'lׅзŕBxĤNḏS  $TSGZ[2nė k#g]:ۻhLfd$|ܛ{ 9c$֎Ӓ HL2{ck}WM)٢qE)AdBRӜS5T qQ\%iW4jg"6HQ\bKVtۺ[x-2`}?[-P-aRMލ{ԙ K{;w_Yxp u;~IENDB`qupzilla-1.6.0/src/lib/data/html/qupzilla.ico000066400000000000000000000042761226107126500211410ustar00rootroot00000000000000 ( @̰xajngצr~\¹ѸUxSRّ͇wĩ:"",)%""""",%""""#"",,,,,,,"",,,,,,0)) """,,,,"",,,,*****"",,,,*** 0,,,,**** *+&,,&***  ** ,,,&&* ...*& . . *00000 . ... 0000. . .  . . )") .     "' &. - ---" )". . ------" '-   --- )% $+, $ .%+  ' $*.#%%%%% + " .$/ ##%%%% + '  .//!###%% --'!!!###%#  " " '!!!###   ' ''!!!## )  ''!!  ' '''//!+ '  )11) "-1 )  +11  1(??qupzilla-1.6.0/src/lib/data/html/reload.png000066400000000000000000000007761226107126500205610ustar00rootroot00000000000000PNG  IHDR7sBITUF pHYs B(xtEXtSoftwarewww.inkscape.org<}IDAT(SmK` :u(!B 2.<!IaAY.l>k4%ѡ_O /u?(':N8B'kN6.= NR'h6w a:D-H 6wwg]6fܪ妻;]#E 0 cU4y3m бwʀBAtÑ/7>K6$ ֬qS|^ ΋ 6$ګfjZ_z F~YD?|To[<kk)ˈS0`Ptخ8D)gnw5zmXR>,Al$}Nlq%*04IENDB`qupzilla-1.6.0/src/lib/data/html/reportbug.html000066400000000000000000000041531226107126500214750ustar00rootroot00000000000000 %TITLE%

%REPORT-ISSUE%

%PLUGINS-TEXT%

%EMAIL%*:
%TYPE%:
%DESCRIPTION%:

* %E-MAIL-OPTIONAL%

qupzilla-1.6.0/src/lib/data/html/restore.html000066400000000000000000000025061226107126500211470ustar00rootroot00000000000000 %TITLE%

%OOPS%

%APOLOGIZE%

  • %TRY-REMOVING%
  • %START-NEW%
  • qupzilla-1.6.0/src/lib/data/html/setting.png000066400000000000000000000021771226107126500207650ustar00rootroot00000000000000PNG  IHDRw=sRGBbKGD pHYs^tIME 0sXIDATHǽkLuƟf;JɀzZʌ`^7.,,J624Ƅ @c_ARրQ8uB;bYl JV \eW! ns?Q***Le~UZkmO噶X+Y\Z9|>07?'::wYHz,ٚ988( RT21ZvsD0v¶MȮbpEq`XA[cE-$y$IbGPlEEvg11z0 X#v y6>y{,ˀeY ‚xƪƒ=EK2g , V^\\[VV|ם_( HSZjGׂeY>?dVXdddɐkAys:{`:v =&t #l@K07'LFCB~]ZX$BlL Z>|3ڪ"!)9 _JK8) zyљzZsvzz 4q2[yV}"x*rz׻JZŅ}z?8q|Í7}&Ch4'y{:ur$ ~WѨ`'Gbyorc `xA 1Gs~oo, v;}х/1 }6=΁fK?.Qi{IENDB`qupzilla-1.6.0/src/lib/data/html/speeddial.html000066400000000000000000000455261226107126500214270ustar00rootroot00000000000000 %SITE-TITLE%
    qupzilla-1.6.0/src/lib/data/html/start.html000066400000000000000000000023471226107126500206240ustar00rootroot00000000000000 %TITLE%
    %PRIVATE-BROWSING%

    %SEARCH-BY% | %ABOUT-QUPZILLA%

    qupzilla-1.6.0/src/lib/data/icons.qrc000066400000000000000000000074461226107126500174640ustar00rootroot00000000000000 icons/qupzilla.png icons/qupzillaupdate.png icons/preferences/applications-internet.png icons/preferences/applications-system.png icons/preferences/applications-webbrowsers.png icons/preferences/preferences-desktop.png icons/faenza/go-up.png icons/faenza/back.png icons/faenza/close.png icons/faenza/forward.png icons/faenza/home.png icons/faenza/reload.png icons/faenza/stop.png icons/preferences/extension.png icons/faenza/settings.png qupzilla.png icons/locationbar/privatebrowsing.png icons/locationbar/unknownpage.png icons/menu/history.png icons/menu/history_entry.png icons/menu/new-tab.png icons/menu/qt.png icons/menu/rss.png icons/other/about.png icons/other/feed.png icons/other/progress.gif icons/other/bigstar.png icons/other/unsortedbookmarks.png icons/locationbar/accept.png icons/locationbar/warning.png icons/other/keys.png icons/other/bigrss.png icons/preferences/applications-fonts.png icons/preferences/applications-graphics.png icons/preferences/document-properties.png icons/other/adblock.png icons/notifications/download.png icons/other/bighistory.png icons/menu/dot.png icons/preferences/style-default.png icons/faenza/user-bookmarks.png icons/other/adblock-disabled.png icons/menu/search-icon.png icons/menu/gear.png icons/browsers/firefox.png icons/browsers/chrome.png icons/browsers/opera.png icons/faenza/go-next.png icons/faenza/go-previous.png icons/faenza/list-remove.png icons/preferences/application-x-theme.png icons/preferences/dialog-password.png icons/preferences/dialog-question.png icons/preferences/mail-inbox.png icons/preferences/preferences-system-firewall.png icons/browsers/html.png icons/exeicons/qupzilla-window.png icons/preferences/text-x-sql.png icons/sites/akregator.png icons/sites/aol.png icons/sites/bloglines.png icons/sites/duck.png icons/sites/google.png icons/sites/liferea.png icons/sites/netvibes.png icons/sites/translate.png icons/sites/wikipedia.png icons/sites/yahoo.png icons/preferences/preferences-desktop-keyboard-shortcuts.png icons/menu/tab.png icons/other/geolocation.png icons/other/notification.png icons/browsers/internet-explorer.png icons/sites/startpage.png icons/sites/w3.png icons/faenza/expand.png icons/faenza/collapse.png qupzilla-1.6.0/src/lib/data/icons/000077500000000000000000000000001226107126500167425ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/data/icons/browsers/000077500000000000000000000000001226107126500206105ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/data/icons/browsers/chrome.png000066400000000000000000000073411226107126500226000ustar00rootroot00000000000000PNG  IHDR00WsRGBbKGD pHYs  tIME (aIDAThZi\uνuE3V$#1$AqbRBb;8N*I(Re?\Tll*JbW*!.\#a (T"-I3Yzfzy.}3aY^՛{;{:>37.in^޼Hu&QJκطJdReh99ᱯJY7]s{gk-||}.[uT "<{xca}'I~<8 5+q׾nZp)RGQ" WJHR  Yv;inVVBJ"R A  "$ }xyhVo NMɖG_|w>>2|^\?.Z\Z @J@DRe @$ E >D30Nd-9^S'{n:d& BD$=)jT}yUW-O("rN ׹,uq<;4&]D;+cqc&6Z@!*8$X 0#Z zI_h%&ށ+D*IS 37{lP&^wp#n bCki"")/z렗e|o[΃K( c  B ( "=+j^rm_FM D _ڂ\DT Uez3 @=wKGJ}"pB[F\Nhj"%Y"h%G1#Sy$R0m{ÞFW*đ^tӒWx kš]%Ǒ h: WLLdžP<[ł5 \$V*|pUm5 iTrP V9* "b3E4x0>yeFFd^|䯯#e:L?ֱkiDR1joQjHABḦ́rx`.3<*e+0k8Z\C~HO_VWNt\ҵ%6 }}l`$;0xG3UQp&F462N̙߼2I)ZX8Ri%*fPk@j? +2>l?نe ǥ4r*|7_ ?ov}iQZ)o@R_9v3𥾷ѩ> *JÚHRVxGX|@r^qGM UmiLrD?,KVFBh(6{NF; `@UħⓋu2]ۡ#j]q G{*]a/#R0K ¸t[ v Fi$dӈFGg_ﯾU|faY;wѩmСrCC gSaq %ܜǦBFpVgWk"84Bxk{*T~{dW+C?QN8 x/tDjj8M"FT5*?K맿V,u8f^5\zs-wuTERj8<- Ux!Lk*OHF0250ȯ]a3Q`URa6;N놞fqkMڤ~l,;#%Óپc'Wf|*GP Ns/gZ.7퉻,W~O[Dgٓr{hwV/LٱZH +MR'mXʁ;-gjq o?Mbw[/%\FzioSZtf6|yeX?&BŨ+V$b+ x,vZ O\vlnW#yU=F<Z@+P (pRADpLɅ[bv'|]݋wQ4l So;/}ifsm18lo|Yf#AFfu/\9_ 4cҰby`1"4vFs9eê \P5s9IokG9?7.z%,]X|͝lDʁQJPZ!( |[fS¸r`&it}|u6jt_iuq]nQa>0S Os4ĜR$ZDy8V,ωQǺ~EGvguٰ "'%O-y(DediJi{eh{.HgR50&m\јxsO3Ǧ0XNbpuЙYb L^04 C#k9- b_QL^eB_dDjEׁxáDiJ HNfitk0i%7)'m9򹓄c9PCg%N/5Oao3\"@2A #|=aUWCN=q$E{vUk $$Mʑ1inzw!EDH-XRtQȷܡ$ |<֥.0 (pB/(<s3867pB$ZS= b2q !Y Z9u.l&BTyݻU[JZBZ8DxkPc7% a "MN mR&mOb 6T=Ν=9&ģJt>'o83;Fj'yU42:C˂ 3.`yۅ)k%gR}Eqbd//Q|n(h}`ݝ]lF`݆ ckA 5^=O(M9#yF ݲ WkG8ºOh:-CT7H,e!uw olw{bJ/^LcfjozpbE)Oö-F|TaC ?(s$Tk˳E+)%uQV@CƐ Ci<:E48Og;FoC>J+s {Z=2u S 'l1<,*\{ꭌ-JP~#-A)+J[Y ĶTS>+G{]WK(5?|42\GR.Q׉xZ@ G}֬cU5^.I!LpN=!8b$pJPh ~ s)v[J?#uzeٶE G bFPBBPC\O":^4>!^h!p>ؤ#^(U-/W?A{(IrQ7>=X*u"J5 P!\QiAPzӂJ[lsVό(rL*{,=6zgz?TY<'zp"`B)Ѡ\*+;rzpArSvY1RN`i sc(fZ6IT!}ꦎY96 h-e"B0䉥(S6TG8:mGU;ӆܼՀhbJŇ~[2#`~}0VlX*}UuU(hešW|CT v#PFE k¯y5E|򇿙/>d:ID@6lfXUS[W*{*|⊢*Pzhj,i|y`~; *0 =BC@H cpJ9_Yer|>HZNe!ɝIKh.lJܟ|X!JWWYK:uʵܨɀnot[Xo{n~P4N%QpwBbeA@=by!p+T+߿R_𳉞S8XIENDB`qupzilla-1.6.0/src/lib/data/icons/browsers/html.png000066400000000000000000000073601226107126500222700ustar00rootroot00000000000000PNG  IHDR00WtEXtSoftwareAdobe ImageReadyqe<"iTXtXML:com.adobe.xmp Kf dIDATxZ[lffᆲ xmc$%@T*I Ғ$RUЗF@&*JRDJ@ꍤHT傒BQr1`;;ٙxY|YG}Μ9̬dY&InIe)"H)EEIY&hn>M@71O3^b @,dFSi71Od8GKfy---W Gl2MHEH5|] ȅ+#iK.5 3#̘CnFA1u]iRUj.j ޻DD9aa! BĘAL2`I0Է,L)bp>/Hk=Gc/4JzfvZp ΏH V F4↌$76ȏ L*bl5CbO^|Y_|u{91R-{Z?|C>4"[;wѷCqvwVλF_z[x<=LMLcDrAtǻ<=,=MD=ǻ&HQ]Fʔ2) U2P ?ª3%&˽ͫ+Vrī>US| eexG>U⪭z(&R*t"bd=L\/y&ͲHK}YCt2bpK.sMDdJiMZ >O)Ҏ%48+֢oot&J<nKof<$DUUtK'С?HlK6ë56$q4Kƕ 5ca+ֲI mu;&i)Y| $^iH@.  15!\FBKwMJV/ڎ ~b29/S|u^ ijTA </^,άj``甍|^64I$҆G<"1{ ]P zHA ̼eY~***R$N'Z{{5+ ph#R5b 1I4yR4&ʙyb1葚 Z|#1gk%9&[V |%)]|C.ռ@P08ti_0`lBP7KŠcg?%-y/\ ʄDM}C&ӽWJ%k(  Q/A5%a:,lX aE]HDcSb||\(gsYҚ!A:T;=H@^/X03HM.fqtVDDꔏRA!b4jwP4ⳑ_RRd0bZDM}?I^4j2=+Z~GcI83$/.ѹb̦ŒYBlbs-uuY?~qD]~?Wn\p- ;qE,A}&t,T4k[G! NLwO8cf^88k_ٽc7'8rA*U k1'}b V  KLK_Čsڡu&4ڄ41mmmy,k6i5Cueږa:Pq628#Mf&X.H Ԑ/mmiF:<&bR=#vwANNNNF^Ch\-~9n٦:K iG;B橁HwL3(uוubGE0٤006/J G!nN:L[}G:m0$ل,pT;ֆnyMwe4p^Ԗ2%n[l;K[#G㡇@8B䚋7=fӘ̉uG|!~ pQƍv%Ӄ;9>>g̙JV.+qyf! 6s\>Da"oD["faA 1p-3s.tvv}RKS4h+fr eт 쯫kZ]F1!M$A{gӧ @7ftLr%Etttb}'[cǺ^u8(̋͑{gK[vۦM粲h;{_sbtω'4;=F9N4Ӵ }qhy(ˉԚaݯ|xxPMn&tޤ\ o&\HşJӌMO}Fϼ{9?u=@p0HJKeBdϖwOLZI_apEvfkLdg-TCoGIENDB`qupzilla-1.6.0/src/lib/data/icons/browsers/internet-explorer.png000066400000000000000000000020441226107126500250040ustar00rootroot00000000000000PNG  IHDR00WIDATh_UU_0$aCL2H SPD!Q[)>SCCHH$R> ՃY`6"jֹ̝{9s{^븎z܄'S_1}lpR8V|Op cc.fl W0vXݧ8 V7_vT/F1;1U_^{C9w8sc,feJ Y)3 ދ'q$,X[`%?AMCic y$6 9)oHǕAD<E8lJ~Ӵ.c;n3Iz*zaNn싶6m/>MQ:ĦEDp^ S^N :]xYZ2Y*ei.5i3{9zWxI.5lPr&ⷔ)t ?$Avпː|#'s) ԰ӔdFafdqR]] CV({#BwTFYI-؅5[.c],=r*S(˅jd N Wf_i'R2Kd !oY8}bX`Py/ER~/+) ʯԺH:1"z&g'zw%߯|(s$eH&_Zɴ2 y(yFU8/*bn+Y>ʔi67(T߸ZT䏋S u f4tpMxMsU):f^:cdS mW:O?ZH>}"R|Ud1L4Z|D:L|עq_*Bs-jN #Q%qLFQyS ^P2^w[)aتR#S? :\ :j@iIENDB`qupzilla-1.6.0/src/lib/data/icons/browsers/opera.png000066400000000000000000000055501226107126500224310ustar00rootroot00000000000000PNG  IHDR00WsRGBbKGD pHYs  tIME (VI IDATh{u?g޽6]ۘW)q0?"ҒP$@P (&M QT@y$EDI n6Ov*zwf~sg3{ûkPGGofswoe7^ē^/6J.KofpG <_)_7)|)kh8L5R0L5`U? Bm4}m;Tc @ ީo%}j/n4LNf 7T4TT1M V@K)p׿HOe=9 [9|F`f)$.b kV3|&z6R+`xIo廥O~W7SC mFz>l& %g3l'>[}Y[gcJS D~'18(npDW_w==zxOFIFVl"YNN{GOK{-M578< ϭV"fhjT*"P>p5<|[$>m= ׍pxD({>߽'+>y/ ·NZwqɌ^8DdÆPG^:wK.Z~¡^[vTc+A).@x;wNO/&>8~sgl|iv1@dÆQٻ˟8RiIr6\y)ȑ!G`%)X Nh,hCϸqIfN ̢cӜXI5 m9sص\J2a2j)\-=?[2uN4vYx;rX.&" \pex.SSLG1D ZrEݲJsHӎ2|錄*0 IyWՉ~T{gFZ{ԡ,*AiRL}PARUH}'@)Z eE  X oS7!o9:OSNP.z &{,ݿ ߏ흂?9Xv=@X ֝ P/G`98hn[%?˷T[9IENDB`qupzilla-1.6.0/src/lib/data/icons/exeicons/000077500000000000000000000000001226107126500205575ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/data/icons/exeicons/page.ico000066400000000000000000000353561226107126500222030ustar00rootroot00000000000000 h6  00 %F(  ɯޯϾۻtttb]{،ۄن_`Toەn|ܤcgsҗҧխџյﰰ( @ 1BCCCCCCCCCCCCCCCCCCCCCB>Ӽ*۹кاyuoqd}zzhcfgr֡Ԧ~ljaahXڑيޡڥqfgacW\UߓۊVotz܏ݝܢޫfma\\Y\iمڮjdlzڍڏ٢ܜRcfaem[XTԐЍpr~{ԘmHboabiӕiɅoԟqob߄ڴˊ׾csߣًqۄҽeџŀٳМΗΌة͘٬ѿwƏ׾ ?(0` $1BCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCB1󯯭̴ӽ˹ǿӾѷɶºӾښއ~uӷzxtqrjmyslfbbifw{՛ߜwuqcbgoguד}кڃ݅skj`TcgcZٯixsߏcli[nrQ_\Y܅hRrjqzޑݖߣݣݦegjiWRW]\Zyވx҃qhӇp~ٍږٙٛڙ{hjpfZgcX]\Zgۮu\egpԅۈۉ՘אN^nc^dfn][_Y҆җ͌knzzxѐ[URalj]އ`QRАbˋ˅oѓlKoro^܀ߜڈ՗iv~־`۹|wtdmصԴտpֻXӽcۖՁ{pzҥϷUңٌʍs˒عիЗѦѼhq~յj|٦}лiϣՠ˵^μvұ(62F ,,+Y::9p???qupzilla-1.6.0/src/lib/data/icons/exeicons/page16.png000066400000000000000000000011451226107126500223510ustar00rootroot00000000000000PNG  IHDRasBIT|d pHYs  IDAT8MOQD]1`@Y3m 7܁qoRt 3s]L %҄'ss{;;QO$2jH!B4^Wk}bb'''v\~7 W$` %pz[ogfV:pЀWoC677{fEGtw V̛.\zwu;oKMG26c^v7_һW&YbTyaY\\|.s6` \Vfg[m~o)'k7X\\'.\zg O@|toE6 (SIossˍ.?jiF7<`oqw/l:WN8RJ2jS!Hgxm~ސV <ܤ@$/PDJJZeqYṬT|:,c.V~}~nu\HjL*B:=NJ`r98g9f, lu<0(r`R7<<.YU"Jꉽo=ys# o[ֆOx>qbqO3K~1Bs;utT !΀;)^bxi;@N g=!dB5(ǐY ɱQs7;yg+R^=r.k݌%c0q̞(Rn Nqɹ182WJ#*r CGq̠h  4 =U"(TȜhR2G9LQ`!BDQ8" C2'J|p65z1WJhRjZgWÝG4C/-aTqӷ e_/\jj)j>}rp'Z7O k ѥ5jEMeo&!? |ڬ&IENDB`qupzilla-1.6.0/src/lib/data/icons/exeicons/page48.png000066400000000000000000000053101226107126500223540ustar00rootroot00000000000000PNG  IHDR00WsBIT|d pHYs   jIDAThՙo\}?s^Fm$/a }H A`S@V/AҠ ISNֵLDQo˽sf~}س-+n/0سgΙ}QU~a~:D$xʕyUg>uP@0"xC׽o?篍4~Q{6֕+\g.\Q ZHdqiXN:W׿>BM#"s{.D;2xJ j*|vrr" {&} ACzfo{aiF/Kշ(.R=͋;2xg?%EXZZffz/]ox_O mJ@00ڔM̐Я3uΜ>ͳ/r7s! [BJN3 8D]זs~a|70 O?,C =c2 b2N3NLQTt_/>{l~@ia O<8 ~H˞Zi㯯5Y?^"Cq0^Ꮮ>ǷzW8ǿ7=Ye##&v*yi^|u` ~_ړWTE.K% -pj] ^⥹):6o~| 'ҽu^xy~;a62ʅLD0C["M&'+|Gs0F|nx+U{dNp8yrxw˯C*"lmm+_ֽD|0=!M1Fk ]=+vs.叟>xn:Ky^<(^#"^h|5E*bRzssxpΑ;V'xs?6:T\;3@`V*{*m8gw2o4Jpኂ((J+@#/ V[ ?ZǕKd?F bd% #0뫅z-2Ga,xSp>5z qޣGyl'^of?U/g6vWjq .24yp G9WHNyo1t*!8/lcc ֆ8Y1X&׻+/ F 〳Hv-=!RG3i?K-'#S-sт>xG cU7hV(<"K^Dsg51vƙAxno7MW97Qe b}O#(Hiepjbz#WrQvg;;,][ٳ$Iv*r*!J,r'mXR:# 8=~ 86 jr8TO"dt=:Ǘ,|C_aG8dHc:^8@0k>O@vի2ReY`p*޼gj i / lWUus !P\ѐ? ꙮIENDB`qupzilla-1.6.0/src/lib/data/icons/exeicons/page_os2.ico000066400000000000000000000302261226107126500227550ustar00rootroot00000000000000BA\CIN@0`CIN@00BA\dCIN @ @CIN!@ BA\CIN-@ CIN-@???̴ӽ˹ǿӾõѷɶºӾƻľښއ~uӷzxtqrjmyslfbbifw{՛ߜwuqcbgoguד}кڃ݅skj`TcgcZٯixsߏcli[nrQ_\Y܅hRrjqzޑݖߣݣݦegjiWRW]\Zyވx҃qhӇp~ٍږٙٛڙ{hjpfZgcX]\Zgۮu\egpԅۈۉ՘אN^nc^dfn][_Y҆җ͌knzzxѐ[URalj]އ`QRАbˋ˅oѓlKoro^܀ߜڈ՗iv~־`۹|wtdmصԴտpֻXӽcۖՁ{pzҥϷUңٌʍs˒عիЗѦѼhq~յ|٦}лiϣՠ˵^μvұͯ֯ޯ䯯꯯ﯯ򯯭,,+::9?Ӽ۹кûȽĹاyuoqd}zzhcfgr֡Ԧ~ljaahXڑيޡڥqfgacW\UߓۊVotz܏ݝܢޫfma\\Y\iمڮjdlzڍڏ٢ܜRcfaem[XTԐЍpr~{ԘmHboabiӕiɅoԟqob߄ڴˊ׾csߣًqۄҽeџŀٳМΗΌة͘騨٬ѿwƏ׾稨槧槧秧駧ޯϾۻtttb]{،ۄن_`Toەn|ܤcgsҗҧխџյ鰰误鮮qupzilla-1.6.0/src/lib/data/icons/exeicons/qupzilla-window.png000066400000000000000000002747001226107126500244450ustar00rootroot00000000000000PNG  IHDR\rfsBIT|d pHYs  ybIDATxY,Yv}kq;ߜkF @hh35a6#M&w]j  P( 5dUVy3Eka#N)56%&+sxx{o}_?׏~_?׏~E=xBT5okX3/B˒zzsfC7 8*TQ{9"UA̠lKD 3d!)k0DDN`f1 I @ n}oy=&pMQPɐ4BBDh1$)PU݃rWUQ&BE=s!Y9u (4g((pvb@P%D24'H΀g?7^wBS{l!Ta!2$ea>{fد_A~ !FP{)!9CS״g!&I#csˊ<b|%44_ 7_t_{n\EoM?ÓhU1:$ʯBNURe?$Ƕ|xj滗*H>PlB*U(3(]  l-(@/lI*`UGT=Dį\ůyT{PwwU*e@jOʽµm^D 0fC?׃r=ʾI *=]dc/4 RCꦮ (#~;gϖLdγܣza*ViEB? X$xgw!{7^yikMJÇ$ Y~SD~AJxWd"0&?!j Rm馪 & !I7E?yB`h~JJl3QP4' N2-&8@@8ߘMD)RΠubQ}S't9;T࿹.0켾uCDITJв`Q?߶m T={'`FR*6fL"b.t^ʪ7tQ$y*db!%~HBD$%(¬A4T/*Dp AEUuG3$ OOo+w? +)SnX)EzGôP/UJZ%lVƂ"@_9:he !|ږs{6#V 43,D.a&@쥿H=yny4?~yMjaV1m;?yzeH}=1;;Bxn#*DP4e@2(6SV6ef[9+D-Vez6|sao^nT%[DimKʐ1ACPbfUtO#Xos!iTB(}ϧ=%G+tBSC /b)Y+q-t Zf,$SB+ B*~p Rkv:rOJζyWzhהKgn9kE썏*^OAsT"~v)"mO[ZQ5+ڄ@FI^4a@ ef"OnHW~_m~R^m-R^6/EJPDMt$+TQm|GPbhdfnT9*9[m,&`1cݹURO5hPҐ,VDWj rFs< IT%2&$avM8 /bi}iNVOm]b7B{% P i9׃ LJ ~wio5+YQIN~oXS1uc6+`#b 9^JN L^%SM߼ᝧ*S!E^S: a"B;ڢ-4'9MU;͗IF~̴5㞝f$;sp%h*$?Rf?X e{e*4K=mO'*YidVH АiTļ z%PǪ_"d:" ~jk ; .J>+ĭھFSR.[@7Ԃ5q72;{NgFCL@vLT0ѻş18@SB4'"A̤PdOlhUI)yE>P}\lG~+C68"ŠF%rݶ|82* kosrJ [| 7)Bȧ<_?x]prq1\ -{WA"[1gL'G kgV{:0di}v(p/J>}&'7QB3[G|BM{Y0sTJ7yzz ug.X'䜑?)m[VT:'T!v<^7vOonq ~i}iH|q6/!4(},$^d\Mh+{:0⻧}H5^(q+GPy}4GڥjvZo5 j/VD,ڶwD tQӟѴIl|Y @*`8g~iЉn!k a^Kl?U*l勿Y~F'c3'_iL͚-|p 2:Vf\G?*Ccgq *fBP%"5%u[wɿ wWS r\-KezC2&J8rjՖ(F"r,LR6?6tg$i$T_v:猟jehJ "nb)P%%[('?\MBP!f4঩;23Q DZLq)U:g[嶣i^O =50 Q3diV=DTUg )*LX A+ЬUHZN8b*BƩI0lt*|%3,-\rk4JʄUܨj_!)8{aC]6tqBlE`!zҔ8}g5W0.yݚ&P%Г>@KkbL1x@q0tq[\@:h5qb=,gDeu#ԄHZ5 TYMCGg OIbbk/a ܶatc\T59Ev(,odgPADUdEjbemϪ$ >he'ggv(P+^A،4epl KD~-jsODFɥ"2:nnaD bg҄M2 l-~S4yQߣ+ɱTb8644 qB6c[Ȭf*xGQ*^:ޠ`0B]XyF{(A-1QmNF1#tpBmޚ,Qls|?nm9R* LFmD!jPjlT(`%qd{y6`bi;7SaŨB%M cV?z׍HţNDDʹĆ'$`z6wݢ˔rnJ}ɌTɦYŀd3yHqBN ꤪJkvaVj!_B5sA9M\)&١YK2ȟu@N^ƒ7 B5bG\aXMIK6 K,TSUr{-U?mh&$W8mCtxkZI¶9s'(L(4蠚*B3Ir+˔] L .7 7JNقl-`HX kC#9):cCP+_r]sF"R@`FV,f6,AA9 .AVpڴ^+4D(4 KCg!0!AfINAR$>s hnk7P쏨ZؘE0+ 00댭3IKPG1FW2+TMd-*c"ܴC1=U%۵EWfsjMҀ['Ex/~4)-'@E>C#B\/3ԝu60'"VאJXhi66 h4=lllXfPV*-bNh:vJa&4v]-MR}Pm&2p O.'4.>lKAL{"DXOhp"G,bKGK~DWE@y6x8i4m'ÈGcQAd M 9`-6Μy/Ƨ3P𧱡S-܌fd+)sV_IUBlSMSHՔY::~ET{3q/-ӉVZ3mmkmgBB &=Fg^Ƒ}:2S&;YLi%V "ͥ]4v)T49y0 yDZ ׵#ӎxoM:M\{;{mCja N8pag7Ђ 9%p@pu> D8M4`b ":"bgCB/l߅=ģqs@cwVMjO߽>]46ZL15Xt #, ZV/bMcF&F18h.4?f* 4;aI,|)d,~AȮ̩J)o:GWo+֜Zm~-HPe VIޓL$R2P)F Sk dw-82O1c}oU:;?jRu@8BD\Ŧlz侷M,(mbhd|֜(B I #(hHpD"h]4X mw8H)6)#"2i q!F Oxt!OG1:hc݃&@G'A9*% $ *pĉS'$ªȅHĬ3%E`E hI$:<@iLV*‚mXŪnbltxoK AlDmEՕP'+/S 3Nl:U1+'\n` ll1/:8E{he9VcH7 ([fNb-89`m4-ȉ 2 7! 襧][{>9vʢ)#Č@dQƔ$`Ʉ`*iiiw[˱W>_{-*fDf\_qm.{uzo?=ǣ~Y?⏿R`MWnwڪA p@IԠ aR Q,L^MɈ5U8XeMR 71N>7r)'?T CzImj4*{- ל#!-Bz'R8ߚrvj4aóŋq$Ā$EZ2஘LN.tAAX.m1\^@ 4:#2(ʍ8f E^}w:40batqdRY&t1d֢5e1uBWiE7ljrS 3g Vj _GU_0)BL,[DHm:\-(@DN'L>fQpj6qCzYe|4QeYHa< 7Ffp$3^')}O ,PyI* nR9l!< D@DShꄨCB~戛-᥃,8NД"JfeM_+r'U]Ls~"jw|C|9}>Xz1 )ӺO0 2c']Kf\6t"*0LEXA{hP{ 5hH l=8XK+8D5 Hs*qX4g!y"kZ3+dTq@lPΞ9# [ce 0r!iZ^-x (!bMVkT(R!O GKHUıE8\X$p !d UDFP2\^At °.t5+I$REZ}mvn臄O?0yYɥ5NŜbӴ7E@4tzSPؿ]v^mswN.0;O/ &tU6>8N7W-xbͿmefd}]rd3?+)݄1srUJ&8nLcV3I!V5YeHGCt$H'V_<#6݂lgՔn.c^%c:3&N,|ѿ2e7=ŸͮNVh~vA's4EԓF@ͤ,b']Ae]k^f5"I@mhJ \d-I0Z#$BP0YfG3,S [Ɨkm;u E hRr! 5#[OzwZsԻ,pxΘ@928sU(I6UeBt5#{W8͜]ld$g'n[qqBM V/{,0>Ir+ A2A[ t 2X)=}d{DDDsPP]J?(,vZTXʹ})ۉLQl3vF ԨY1ƭAqBfBl#t-86>2@'0@|H ɹfƓTsš֜a2RB8Mmixx ~x2lFz:f|';o=N/1(0zYl8L6⤋\xY'ٴ$ٍ$);go [1s`p^Bgi2l\پ^9XeQOQn /,pskx?|r]ɲÅw |p!яy0TTsl߻3[ŚY{ 8*-mkb~=eϯ~XS5'3-1KnDlz`=M#C]Qd"!|3rSw$%Bf@aR^JZ!@AXU:_z}"2Pk~jǁSgеq01~tF=8@6nIm}cBȂ_} ?qr䥛ldu!ns7 :[o^ϊw/6x|[];oƫK01b!*#B ŠBe9dp&Q\\]Tt #uϦpeADXƀ6Of ЬVP(f  NU%X%YEUyn0k!D1U\Q!"5n$ҀҌ!gcaEYlu^%Fpg#1޲*2"vqtUx6$m0"e<]x|\ |}7t95+s% :iA! 4'k՜Ex+NlɔPfolzi?w-e9д%B gTS`,1Q]RALhV_ Xmdre6+,4bޡ6=Lۖ[&~Kq@s`yʠ5Er2'yBhZ˸܈\AݍCŤCƑ%O3<3\ xr9fe/WpQU10&G;Gw?)h甦0)DUY U,slTMBw@D}L7>}}{wV-ڝbHx%g)Ip~9 ^Ѣm: -f嶵i *8/ȘlL8 H*дE899d4ɼӪa@2UHgS gTuRޫRlgl-Bwa@/f "9RR/ QՉHH3m,f!wz7C75XI^Cy D]qu0Sr،EUTI,qD4MC}OdƊJ܂8`$AQncC0ERdfzxֿ~}%F@ΓFm[]?ϸȴ3RSx=̝cx`Atz4[`\CNN|,YBR M@&R:/ h8OWU v̓)&FYtH?}XJgÈ3t/Fvԗm(tF7~! 桷,FQg&5{x5-Y5H@ R;MS?@T3lQgHSmR\-ժV%55571cP'`Pjs' -o.?JE-q̒!@ZҰsī~<hrVa@rLY,"apG"I曒F@N'/%``iDsq0w@S~5w:bQeq8߼φ{8"a~5ś H; XgxB- SBFٝ"Lɹ[!!sp_S lM-.ưgi>kdۂn,:K7c|%gK7p2:RHD`y}6ͱ}Ui.s ռ Sc.ji4isa*APFai7p(~߽.ͬ؎eU`"qz12Y.N]"1gfƪ&{ }R>Ä1],4az iMUIfQ=GB1CCD:iFvDa:ѧ;mk ʻKenuW"t^&3|3ܝcGoo 2aO? /g{ujwz.k*RB!@Π\i E\ ?PCy%Y ÈL8lc\&~To^g;=X@BDiL>]#a1v0$$bV:,ws 6Ǫ\UmJ %~II-1"Fc/ġ*Q.N%*9ƀj }́5є[*<7H`ATe%7 妩fͨE!+0l8 0x&Aw7.lTۀfbNJG>ug{^֢8bw!B/gc7GK}t%gꃶ짞+쩃'%PN6D0 flAq ]'q׮ڍi"&=^cDȢ%/;² S|9Ekw'XBp!<Dw!&M_ty,ڽbV9#'O m\xP"KT @pۆaXR.DL*\Bph( zeO@)C\XjЀ&*M '.$.6"(_T0@@Mf*Pd+Jެ݉(cߛ*6!O#Rhcɲ+MK1fk?}yvo )#gZqW:#O)ۏ9Y<{(Bv1z_M (@**"m]IۥVzR0#5'"Nڈ_wgS<OAAж]^F3MDXĆ̋QnlE%|j *)#׈˕M2AbxjM@,:N+ |t15>Z*Z'ooK7%ntua7WszI^ r))ʁm17" q<@yͯGaWP$& ñ."1*$-/=֯=<_g' | -1rM(F؞lQVT60 D*E܌Wx3=mR&gy<<]wI5u?oQ]^Js 996(.{XU#ſ0L(]y^^]v(wjvH% t*Ӑw=COG+GN.f&D܉ԶV+#o,hb*U0TD900?"f)eG3`& D =дIMwQɨdF(FS3 -,%e60Rs مHW!PSc{->u+m*\]ѺN'.2.;īmEhY-ɽ ~?MNW>ק?{vP&L@C\GO!~GF1:ftʪsA{z&(4X b":Kh`+T82"_N6[, eaY6LR"_ R)l.srw*>!t Bж(5a-4+7PNЦ%m[NFAg4"d (DOGDSj!DBhO'"LUl6mxyᳫ^Z5wSZ㤑.{3Zuj LD0#=؟Cug6_%jqG ]tzR 8U,ԧk^(q2P[5?u>yB!x& ]ElkZ c-JSet?4#hZlW6etR: ; ;ja:ł }2Ǩ&`J* t-62EZUPY)%"'tD74a % d",B>­N<;^<>w̓ZZ^oZ(S-]E Z`FҙV=ݩD!}PC%hve2 \vNO6n[T> n8'3kV`A_,)$ mba3pN"T-$&50+\ئ[ތog)pVI vɼ@M`[@,3?yclX@h;TCyc*n)΅*)VY! e'gDcvL8rb 0Qqac4//a1dr\nh{|t/po&f? /Uέg?ݙ; j[uіȺ2[y>q~gnf[aS\b2Z4lc\aP`|S[$O)Y}D-}c- w\#7e* W2j.:GF\iѓ65j\ŷԄ@RF{)Bh%qpT32ț,s29HRFx=̍Y,}|!)G1djx3q~?>,vPِ>W>zO. wqkagיE xikN 闯%Ҡn_.ef5ܣ ."`bl~_i ):p̊YV]//ŀӈYpḷ"S |8DAh3fh&TWٚ%XSBׁf J&ek d?Ae"f MI0Soc 'HU 6~ӂ?"APtCt`"ym˜qA!cBޝQچ5\@\SiotNĞ铃Qq6Y#Џ5x hD"Fo9~xz@yk&.#~p1bvpC:/F4-ռT;Lב]L71]B<:2ׇ%Fr?@>Fp=F`c#kҚ Ep{ߏp4ᘳO<|0K/lYӱXɌ;lj+GՓ c#x<&I. ` .(pc9G>'H ٌ7')**)-3Sy7QD`,r!K7 mʮ<U3gD|a& _WyG|%{>ϩe/G<V^,f[owqx-}=߾yJ .l"5.GٽyYQl|c벯~ji 5hMi üуÀ4aYf]+dק'1j4⤟BEJ5"xrNQBsPyRj 7 8X"0"HN&Gt6>Uj:01{ClN}u򨴔u"@C``0IMְX .z89jI_Xvm~@z:83| w^ov{=gUZgQQm#'FTWa7'QUnky_*X*%W(JFt. ‚vhH$:x](92shf`[7PSÈم׏؈`i>Dm "dqˍP/an9v)a"BƁqFѡͨA/ ! ,C.̩$a40сD.>6S sFe ׼YxbVqŏ*BZo˂^'?x 'X5;wlLn\˾ 'CƻQo2kQ[j$;Hi~_{=u.4{fl˙vt^}y9,62BP7!x ΡL<"FtÈƈ;"IBcwzH?bDcm'ke < Rrw)0qJ^P `12cJfa݀nr˦S@o@%mJ@l,{A0hlSu Z|nӫBnT\rE9Gg/~}Ư;9B pN彶YG$~'FE' a‚$q:Ҩ{[33L3$m~gǝJPpm\i9z–6Ӝtl&|L8kMWEqFQ&yOD)efcljܧctSJ&b 2[{H=I;Y5eB=` ?8X5WQYC} e2Jm/!C+@x2D^V`|>Z"%@{?xo>9BqwpwWXsmo `6y|yGƝ6ⳇ-9`wYj:uUWHܳwo8;}tݽBwp[0*!TЖь)5ϾXbpcJ.>Tz[\ ޜ:oZh~ٶح]W-3&B9[OSzu˅JR4`e ,,BdOFh`9`jܲCK3%sI K W:t!|" b7ڀۭ*qoz^?hi4w*Xs4bP'ZIO|f"q_4o GcKzA{:LGLlbT. PCw%Oii>9T4qj+~6^5Gj`@j]3 wՠ?R @"rjq')@I}6SB4SXRA)F[d(0&Wb`r ,f<32T@^iƒ>(ILMy!T<@Z$D'^acJI&{ uZK'yľj`NO@=ba7wf@8Hx"[*֑_o*"2HT!Cu.my֗a@BY]Z(s7,=Ui˭& On!ދ'NZJ x! `׻vM05{(fdz|CvDB8&<eO2I?e/,;,[;FR&N 3JdE["sמ\kO,fU;]?ޣk*k:RÄ7-B1O7X'QUUe9׶hAڋtVЎ?I#;}@A(j(VW/4ITI%&B<\3]!P$bLôsφurТ 8X-c ќ}Hk R,Z=#'@E 5 `S…LT8!}WJbw yi{p/,qԄa1יuZGug$.GzT^xuq 8LǑ W U5ag A/QU'/ F}N5l)ШuߦSǘ<  4@,p-De  Bc:qwb3] cnGyt$d8/y~bkJ@c".ġ5a-t켃D:N#Nӭdq^]2!XYX-:0@1ELs)DAnZC< " XK ~/j& `4je6R 5XD֗W-~>xzS_ќ'`'+@USO>p3ѐo/'1譆q xu" >j>GQ~mq)Ҡ[$eʐ1;]FsDu8.\ZG _`2f[x8d2̽:nFA.I݈_ėZt_ϖ1}#>4Fڀ+fípkE׍W:kd}ԍ`W,"=zlC>w)X>573gwmٌOň1! HFq-vrUT]4j@}i?Z]J~*8$lHbs 6((11ᔜ )p2${.; <1Z\^bZ.Uō&)Sm* b1Tbz ^S哥qǟ}ᾇ}~h]C£!A&Mҋhji``Ql8 .ӈWQ?ؠ-q\U]m{'%ցBMJ) ;v__3뻞Wh3[J@ 6{0ACv#WxX,.Qywq<ǒ4Y )r; v<"h('xrSPW\RuDy;=E;m>J*"$)"YD(s"y聱'jZk IjV(B|#״ V:(wR@kU(jV~U?N >h?}s?wbxxhϯeUEu!}󲧋!zx^$hd6 "4Hu_OIh?8gp(Ҷ [hW\0i>& vJ? 9\puEl#e᭝l}VS ӐF֛]|gE0~$ѻJ /u%~x9>zczm(D@&!ob!4]'#[URFҔ_V`sri@:JBwg^0 Tl%j >tS BP@T<1V"W^thHkـUp^k;>}b?4kaEI@Xפ4DH z2A@!lDq6 R(, o]Dh#!2aI>`ng-GŮ/g-=# iƎ0~ XuTaly X װw W|v 0Pk79 No>Ep;|X`,hm/S25feʙzd4|MdyL" `oQ, s?#ǃN MDҘtrAyTfgHĀqJ(eF@1eNEHѱu!~d WDf=s783LiJ{h3g<]QG1~(؈$ A>$t̸ L8ϒ"nDf= lCSI~QVzK ER^u *r-glc2M:?Q#_-J{Iz+xXˊmIJ鞁 \#<<%޽h3bӍ1SG =/X[4%gb%gfhɵle11RQ`Rfz1i$8FākNdM@<$Ph,V,iG4q4Oۖѕm̤DMC;9MODl$61 ޻FﴁlF&'C^<elS?4Fe<{p"<&EMc}WhAț2 @]NkW Ek$Өb.)N@J2Z OY)ƢeWx;+ (T@lh!鍙\wDʹW߳BvhP#9@OSKqhj'U-xtXcwћ7] ('p/ G+/ n`;+X8W{#b)vDۜBֱ3'5ˬ@hЋ` fZ[aζŜ(5w-t6=x);\z~\CW6P}r(bN `.Ƅ6C0n-Z'=p|ji}m'SNz]3"g0EWL`{ǽ-Y7)}lVC4ȣ('Gc2C9*pmRxfI{(w-4el2, AxiobA&ɘ&2 Va jbs|_`d6[ͧsSQ*_E3^}!m#^_68ɋxM΄Ek |fE%[@k ;};?/Wu*r݋/E,XUm1a'cY.G|Nxi`+|[Z6ToһkYrJ"u(IiN/b !d B42-A-l:7)b$ !F FHjC<&SF6xyN t4SRwÖE2܀`UԭT ؈[zpzdU>Qz"!k}{fY#Lr!" z*6@8|%B9 NT+iohN[+.ޭMKwxt]Ix <fyF9xl^@5hLL#6)(98$ RZD %qPrL'!dm2\,b}<=ޘr>QP3CR *8ĸ@Gb6% 91m5g<{"N, W{0`%=w-atو╥ o]g Іi1W\ UU7l[{OXě4DlmߜPUD8M{mÈ@F*63L)B{ T'D"JtqΫ~*gUԦGpd `$.`[(>{ c,x9Vqpsi1nbx5 Zch7d4}[-G$@ 2/bkP ShA$u!i4'+d$},v`bY_^86uɽƎYΛ񇚪>0 d\~~K]~Kr")ZVEKHUX*1N D-~m*5s4IrB&)F!(bMG/,B s˶LuKuĉYF_7Y .R^]NUẻ8 n/TR1yۑ6YqDo77V Mzrssuѕ6wѝ4q'LfIRLbMy3%}Bddabb7Hzܖc m`YhT"/#!O7#ޏ7E6˒&- Zb{BO q+>%@sz4R 5sfiv"0Y\ vN ml#D`hNZdiL*HXu4_}V_}f[$ŝnsf6=cE΂d?}t.2H^i:ȶMYlYt Kneœmva#W7:'V )DHWIt*Е{kcri),<ݹ[<0Bswȱjl1c2>\g3uAÄqCfQ4 VamrpEu-I=9Ȫh(VY^QʅEژR \5>i)`\%T+DP e5fj@&9CMNb@4qnZRHHؤQ# V_^r.\ ,hj&ٞۿjӵK|IhQv' .KQ!:a @?Mf+)pHt}`8nI_<@/6xiP,:E@q+~pm& uhHEht餞E3*w"RޝMEڻ2ojf: Y?{Q!^^E\ e*]ą6柳#N"㨉8j>݌nmf p V b0̟h#YV(Ψi:Pe^& bG]WRBK5GٚJ,U$#11iDtH?u=!]{0bLgzw\5]O{>N7ن]`]Ddj1g-7*ռ\lO [9HtN?0B߾L!\-TQ? _*m"F =cF=ZW;%7,33I@E}X]S@;.ѮZ$מ\7^g f6f']CF:g=5bxnlqhp4t:dZ'zYËQo,pl(2QpP7SqR硦`Udî Չ'K^ D˨ҫGTt+^WjMEELޮ(!$b]KwؕGdG[۠߮SNs" > g.7=* %UK\@97ݱs"4MįvNיNbD& ^6Wڀ;MYkjV̝MŶNޏ!.cxBi9(ӆ=Pܡ _ol;kg}wz7z1`&q/ͧEy>4Vt6dEh5%"HY3.nj'']a&O^ߞ,*,[dV+ r@"<c |]\ ňqY%bS(F @SAuHڢ*$PwmEB=_UY}p9֢58n0c)|/dDLq? mupX,a~AT{v#{pe,لIf)btpNty;vO-Cvl6#lq8`\ Apҍ|Bq8^xSj<:*B scńCzenEKWFB`BdF`R''E& fS\RO? w$T; p0O@0)|PsxуJ< w8;eŵP\egcƷN7GGxg |9o4-GZ0F5HV{( Rg.,'xh̛~yQ1ŋ$-]+ eDiDZn9+%d&u R;VH4DHYM‡}@6햴#PV`4yH)]y#'bبʓP଍( R;ڥ玹YcHI>=ţ|Fo^&)+fhOLGIKZmgj`BCLMRTELQ5ģ p9dzp>pG]@B$2ȣ/AfW"Y,:'9#e'l1xSz@ҀrL 5#ggӒD=Ft!ƪlxs?X)IOR;},x868BmK 1bPEK .|{ߤd^*‹9k~tgfsV[NPpW7-c֭ggG E3b BA:^̧U g#uS-DFp.XQnBT&/b6NL6UH9b&i=?uX"Qw83~-<^$|} mHME@`ɇ|-NRȀ2aHgØ.@X0Dd O0Z}Ex t b"@|jx!ENc*1E H@<}m[U}_\v?Cw3#.8l.D!g@9Xr/-kٽB۵ Y>(HQsTj̱nUIR =/ IJgHHEȢxo^f|~ x4 |!`xRAH P=S#_5 )PEr}=IwFfV5 o 5C gh}38pK՚Y]`|!5~xbH1Q䘸;Hy XLARJ% `.MUMru&?0ƁmU鏴q$%l9A6sْ J0qDN j[m[U~^k8W6=Uƻqa@n,m uћ)q=n#pcwZ<sa@/au"@WvaJ]Մ.&g3ݝ;iM<O6`SetȔ W1@\ A [(ύ=@G, Nx@ow3Y@P 7B@eӠfC eNgx5ھ 0%ѶAN`fQє;u5 '+ NW-=BEѬ7 x)(nD{!MZ=$gItq2czV?>L8^D/+e\;ng :q*?B uvQ"Uʠ3 "PvB3$eD-dx2NbMTFb2.:gk`8sMyVY%ͪOSw!=lDȪl?q]!133Z̥K!D&(GNB T亷鶾Q%sXoK@ӼRg;;n-$a%Ams_:6 d~:!"-\EI7':y1V3!-z5I3؏kv9)DG]Tr&fo؟6+ߦK3[hJZr(ۅA*!sʘđFsx@u-K &! ٚG#t]t1:!PO%EVDDVJ/E~O @Z7a/Fjjgu /L ? +u)Jx&'@!QdcQe8f|"㽑'b2rE_b.ԫK=cf D29hIq{5fIח JHNw-͈1'K|=xѺ&.͎ lt!t1f<i Ig]QqL$>Z(N~ʈj8ҋ`![LI!bk5ŲMݬj1QfϣO//?:W7#.&`0i&2??w sf0(DFBgEui;8sx޲ʘ~daЎ_`kFv*QEÄC|lğ'}tC)l 8i& F@4go//o8g0>0`+35w*;#uj郝3h& CҜMl118_I2˔ޓo j*qM͖o)rzF k$B+Qd&0|Җ;=w6֠'cƒb5FqG[,ADE{$h7Y-j9qnZh-III@f45nҚ?ĤPu%^\\i"^ٲ1=?]w=J #R  '@!J] sFԀ{%^t>T,{γ[l=GѣsiI)azǮh[BَMU#Dl*ɻpǣ=JEGvh_3 "nXK99;,k7bLcB)=fvK#8׿nf|]f;aO^s5'^·YPe*jՃB4RU[F\2soo/FB`6Y)!gkQ>mo^ 5a EPƐ: PWs <+IpDv8g-x&/pUD%rFr.k<]op-6MӂiJf cOVِ`X4&e!!+"*NوOg1rd#NBY@PN&2 R3R%V t.e"P0֖XN}x5W)!d$3 x;( eP8~,O% Y nn2z~ڱ$ʗ˒R_0sU O>)22޼|`S ѢwU^F+۞5)gY9/E9_&Q'UqL=8L@, LDžt_fbS$efH&r k-ZoodSUʋsʐ9=#MG@4XEx &Pěriɽ,_7#sƣ̀(9%i˖fìxRXkHIpLaO-KLY}};Ŕ3P(Tk %JMQlCK&6?efT 592w<ݗ>a0CȈsy*gsG^̦Jz< L;#Y—y4<~]% 9)7$h x\93TT9ZB+U7WmrP ]aO:11fMBL2Ԥ$c9t ^uv_o{fi?^I⾏l>xx|F(ɶg#UU]T<2ˎ{Jx?^<;ơ^iңߡhA x!Pt*q7AK.ˉ%%.i*2D[1Xi:QŦ(|쓻=۶;2#HopZ9 m̢r+t +q% ^<:,eL^mtGQh2C1TvѸC븋)?,n4s[}m_}z.* <"4 mLYnmK'%=6Dut񂆳zŕڌHflCb.&1)9@ ϰUfԬB|)bsR^'Ghkf/NSϏO"DbM>}9.%^D6͒0O?yD8<[U4=g9Gw=_z$ "{ Ħ7xF^ gr,4VkʼnKi5),͌6m̢yx@¶||H. ?1Gŗ:s.eٹDdڋ"T*r^9=Keb4`m2!5*ˆ*S\bl0s9{Ɗ/_D`+ yѰ65k6pĩ<˷pdw.4o W&Y@R"Ĉr<|s}wN]TlvmLp᝝TJ`Ц.H2iD̕zO%hQ}`hR^1c|2fQ2D>GW}.aMξNV8lNdIF27G'|1c:Z(92CirykX BQY, >Zxީ(љ"ew"mE t2=C*2g3OK=*Z9WkJ,1{ 㺩<10S-EFD )!j<2={VH;Js_q./I/%=]66-8dfES}C&OP/-I_lBbS frc wkOo&5d;܆ քW]K_[W}Obd9e= f ( n5a&4݇Ql;"8M1EZ)4}S.*ϓ:v= -fBYtʥ/g/rH|2+KdŶ)xbgD1XR !,F'tvVmba{J'{MH|V96:$NS&G?SHL=6 tmJR wZPB`1Bw!!`#R̾A 6trfn,ߋ >qv1Qi0U l"}V"F:a]8}e8D-?= B΢,󪳸BN+p}. Î%271~*-kkO7l PO`ީUmqN\Х7 T|⷗ q6bk!bpnM0bJ1Z碋xm<Z Ų)m~44CnϪڄϒifpYZBxcQ<9+S*o89:!iv!W\quw-]kLC X(KJ2`|f>'oF̮HF#eYFmq`="mN<6`bOp?C^[ɔȄ؟=G@3Cv. *F%/{c0?Pf4ZhS/|\}s?f9lq*/!|x&FǏv&UYғ+T"uW^>sM;ʀ`ɌC̡ӂn6w.! CtNb{TNRA 罌(#tξlO~{qX8)ر[,!d<득'd*9K3;TĄEY,Y4C:큶m黎~흽;onT^墡~_/DG''<=;''*4tΜ)F$G}9dJмRMMFJ2,ȹe&D6Վ ɤL n sה"TJe&ǻs4y'J^nM3R>Ng*ȋx'%)4&zc4lox*6VSJ{,'^"}jc߻HXsZ'OBbY隵E-ehyYLsk'r]Hh3i dL*c ,Ffgͭ"y_g?MzJ2(%f*<.? ifr9͟91@ڗqysǛ{s}57lm 5#Ԇpub7&AJK%^\ M]*Y VՊՒON9[i*T֗A/#+m;^`xU볫6Rg OjǟR9hfL=Sd<ė7 YzH^s%l# A**A^w x%,+Y,k4nyG (㹫kDJ S/<,ZPhqclvZx6Q %R+^;^:>W8jߩQepM1q.ʙ:]✝Y(e{v#781QJ*ݪSic(ל0Z%>T`MƆP Rȉ! l6[~9_|-Aݞ~o@wTꢼ-L Mz-Zھ}n1 r!N֜rzr²En9<~}JvG>ٴv] |l4da{KN؄_Ife!O:Ζ.cϭ_}b-5*+'yy')j)NR45Hv)ojCǶ ɾ2ӊY:e8-fG[,Q*V+BXXM^*ٔ,^~#SF1j9z=)MsbN4Lގ; ?8igNpYXrgB98~oZIdZg&y[,4E%,- +J_V7FʓM܎c)tx.1h􌗽+fW\Ġ6c9ApM<[.2]>{`rj߯==':Ŧ;1i:ڟ>N~+BMH?{Eڮgh-8J`4@rsYԍ^\q׵XJTU518bbCv<*?çc1/c1ش-JD6Ɣ?ٶc-:-)j>ZUԚk,k[x̒]"3t\>S1Eǁvd7Nq'(CL>; 8{(u%|/z]l&'􊅒Tb p#sP Hm S39LY 5yh̞Ty]OC}hLUg>,ón!*)-GoJfm!RVH焮^6A8HY"]چq^<nz'wҜͨɊ`0WۖYY%76 br@1_%8W{~qH쭬-1Ig&[:ϧidy…V]Lx3yG7!:$0e |Fa%kh <%bsld4NXFk0[ }`α}ϻl̘~fSe﯐~%tra32 B8%Os2C@o"4VU"b&͇ɅZ-1f27{j͗)1XdbF#:B4]mzs2A'=d+QaӲRX3TmJ<ǰxCtI83 BRl ` s" Yd2hm?<9& #:3Eȴx?pn{os85wd_|2>u}m+\$X'k w1Q+<vnB [I Qg=o\nZBOTls(GWTNIvU 2G)D%T,T-QP.a 3{s:AnuT9dΗ4 ס$t`6&kfDѷu֘Jgq–rZTUMZ<~Z2?a-`"uŢP|lC(ŀSUyli_:nT2@_2`ZRD7'#vKbxTUL:TB4Ќ(Ȳ73(wG1fMB _Eo3&pH{~#Yu{WmҙQ[lܶ= 'MUIJ S"LzN8t]/^`@2F>aEauva'n%#hPCXWvbbI2UmK@buA>oe{qI .T!)e )iʣumNU\ݔYØHQN}UzEL+*_2 ~-@A єx4_ Nr r" Wxv4bIl(r]]OG96sRrf| }mXTU: :G> 9dF`rSm}(XAKNr rW}b=Gx&p+F0%bIYϯC2;8y\Y=Ā=ʺԙ}-x{ޗǮbqBL"}Ӈ|W_lBh$`%79SLHn`b7j+ IPݓϚ$S:ybײEE]؞.uE"}ܑUvT=TssQg*`jd8`0~$OEG叾[_;x-r@I 8xm2FMm&s6`e#o.{5e8r݅Tܕ*z 1%dW+fbf ɡ#*qb2y)% O`YmN]W`U+W<9[ߝ-"UuhLy: HOMmzR5zxy[+P9i}}2I6q"eq%5|e՞vDx<%{%~~IgƦGۖp4uHy4V{qf\x N)Rpqzʾ'[N7bv ф-yYU7 JIjd";"UfWs,|kS$xqyRrj ZB?ErU5!&Wө7aLx,fD4WFɨϗY#&\X+IU$QgJfNߗ큿|so?ѧ9cdw{]Ǜv *D'*PaɑbOJo+"AoXr咒pᯒkc`S3~{fg#G1 MlN@;^bVN9m*V>όKgNTg˃pLГKb,*gK1q(J'D /-5{Z;E7 SX.a!vTUFP$Ǽ:|吷H!HB~Sb2%2ɔ YV-ƹ4͂Wڟ/mxvnjхH bheGu h!oo =Buh? ǩ|g:"\ERBU%'* } _Qc; g}>OA֕CT,9XJμ17)SzxYcN+w*U=O%uyĘ<_̎ o⊔͎YWʳ&^>B5&fʃ3LjGŒ|FY{dksT*cMUU~9V&`c }bՍTu39ۥNBT1:޽!`i7LGLnŠHN1}ڰ1.Osޕc>.cNSSA"\D}/%B'i #\#FY6ɆeղQUCE }s1:<ƛިv`vQ-M+%ސ ƽ)e.q:XrL&ث,}%+xY]!6ZQUjn!Y¨hJ(rUUU;b{@Qٻ)2F(FeDZ .潭ѡ 9zDb)%4 lS!| J㖫|Y`1l޶'CG^Lr %Q{5r(o$ZEkVt]/6-=I{s_4ghK& q ՙ'1I,6 /!C||0*5;2}Z,Eۂ&91N='6V }4^]=b8ۋϺm+2.3QC3 .\<2ObCm/4Qa}oziWnWo[NYevtf?v*^'d{__5v/vC~ME%L7"!\Z'KVMbМi,0cRyZ}|V*|reAfpJ;JVU|9)øvB%~H"\8B2g* K4S<z'}qERL&,h,6qKEK/d咟ܦV4׽%.AD4IxR+k8h?9_EW:T1㨔̕ +WqV{^vܱ5\;%DZOiűt]9CY4Ve(2K=}쇽 Ln.e1N)M2/KăĐ3SI<w=w'ӊ&g'>ALiMMtsC;i}m2D^դx&4uRũi-? &2I-9Eƻ.Ц&c`xas~N2|3iFmh*s)ٔ?sf I)5U\`|WM]YFp}if:YףLف0ַ ǵ,U.*`pHYkqũso|9~g=obOlCVЙ5O?,ADr>՞ϟKs+39 ^(w'YTdF~y[y'gueK3)ҹFL'|t'3I%!YD+^v)?K/! 2ReUU!hۮ>YSM@[< j$V13R4YJ-@9@Ce R#"Ή8EG+放TfѨr.Ri,ɠ2­^]`TzYǘF&[l՞+ l@IЍ9xtNW'N9q&%퍘2P7\2$<>* >#hJȇr/\xEW!S& L=70Phf#Z vKr%G$Q[=59eW7ԇ OόkGDF]4>?Dd`t54epa&ĔZ8+1:hdGI\ kq%&ύˡߝ%L\fY$ܕH ('5LM SV*RUƹjcdAW܀rI3t2$]55MuީykrױOFhfϦd $K|e$tLPHfyū=_xΩ"}ইfnf6ΙHhBsېMYJx9dM8 yRˈmB伂.Ug,m!mU;7R m4 kpqQ9~w\ 8zqV q{cd{h3a:*yujlSbzšYV, 9;܈)'{ '/ s$53A dn1r%2SUmyDب$rl}"D˼)6B[m]NJW9q!DsC@{+J@m>祸F{Aœ?:iЯ;G2nǥ&7~m[Ju\<@ה1M/6b, [TGlQt4c2yӌQ",]RWl>!eۃGMWݶ7rCQlgG9Tg=9 [dz ]qZYVDygg]aptՎ*u ]6`UX%#Z #3H$\*vK$ӅCF0"bda,3з3Vk#?ˢ۹:6".כ }XB3yzY%|]$(]f "U/c+2@_Z.ʳIXLsF@b X|/W,>Qgׇ7yohw} Joͦ29Zsl>OGq]dvn *sbi",K׵JM') m{EW!}hYP~ =.Wm܀0&$RQ2h&??+wq`lc c9ޤcÁZݦ VbI9G^8]PXcP ªlJlUvbXcl)*& $;oGvށk9.p'J6+`1i%2*OK82%rnnūl*_hbZʴ,3<4o2ZLpbH)`}?&ImiC%>'|j)h&<󎧪lCĐvZ,>GKXnAb(ގx;>4S*,|bG!JW,6)PLY9Olb쌜Gz:#,D>߿#8͓!n@e,6.m0v)&ϼN|w! x @d!fPs6ڟv%O+9N8OQjs0d׉d)YOw-uh.ӪF+\Eig÷2YmJQJ#67>f.E@rFN#RJ#2KϦeqdEμ|y>TucCb9tw (gl徣 bt9go-\L"K ;I9X.@RDU5Qz6gv";NJ}`o8</`)W0e–$%ԬjN~tB=85l@i/ڻB>>&+or m'Éc?JgX6Nm^06 *<͸ &wQxZzW.EKrr E$W}ß<k%A{EU.vjΪ!$ZFIRN M^w= *~lB}o;i{=7bLPp" L:b3Ne>&!N|f|\tL윊 ݩb%y͗㸤Ϳd|R΃S_i P+!RГM.K% p JDR)'D3nMj]>ЌSH$+D![9q:dI%JfelW#W)g"v NCUo\8w'VJ 6dn_f"dҾ[(tGGXs s0cN{CxGp%>~~CҐyv~k~sQhgȾisqìϗ2/MUGOeRcP!>z0ˊF~eRVcuAeq]LTfMؕBB}JPq.U[KfZ(U&Ϥ£X"fmEV-_>Qyi\u>٤}&ƈQbrM\/@8Good6+ga^s[Ц.$.Q)O'VђM&sN27lYĦt΂>FpXcK͸ycp1xVޫLveH$Z5 ǞdV_^'8D#V9 }wG͹u|lY^?zȗ7FӞ~|j߽xI׭pyd,$\{1fyAr YNh| m2 ٳazj<;MF=}J#F'-RG)ǴT+W'B$OcVm%*q>kS""es7,b|qJHup9ө שȁe0J*1J[T+2(f7uXhVα4GDp#/D_J:Cboy^.pEkKE1&濷 3<#3Mm2ڹ3yxR p }2sO췭܌~yn}Co"? Y-)궷k1__ѦŅ8_`HpaZ5K 0SHv IupZ+!]pv4hbXED/˙XiɃŊA$ 3STBv`9CkőK-2q S/$pٶk>z?^ZD5yU7bo-qlf8{JgE%*<$8|k] l{d#ėq|'Ӌ .?to(Oඏ,/. dwߓGxj[qR+^p.fvߙfP:;GLmC\>PdBQ%8,Gp3dCuW l'%̠|WqY 0]Rʷ},٘O6Fj ʢR=(swJ.*' :]Ԝ5^Ɣ59a{"m %Eک R|nC΃"b"SA^ɖ`ұ WҦ蓕H)(gR@EpDog 2w9/3 p(sOOo6#O[9NOC g"x/^S;;V+s8[q}KyO'-X> )qG*T曔oV*GfB4JYG90$43Sd}cΑ.'RqH&%h8F GbT2Rq)eCۖۑB 66mK^&:C+2 %*ޑI¡LOL8IS^KQ5ipo``AS2 qEFĭ +XmJQ6F »S&M&4,{^ĿIu }6cp/C|'7IVu5毹Ve!&vT/FKaJЉ;u)G L׌˔6[9\wű|e]wϗ|w+N\WoxyFh8})w>@1e9 yR>t隵7K?^p 󒫙P~d4`L;ɮ3<-|C0x#f]("ĕ/Yz~WbIR$.u!+BꢸcMNPU_K0R#YfjtE C0_TP߰*Z'_ 6k˪>F謫mi%N-Ό.L՚d,\›'=E `{w**<O#bNZklS}Y%{j3USѦuȵJ]>,y;:$2'U<ٚI ^cSKx#{?lߘF& )qj$hl"tsf]BjN )0Q)(pgMźrlc>pLC<)pR C0Q7`G,8G]Rըg=qgT)ľ#ɾxafe-DY0K UGI.I1vb1df)e^"%n|󕄾g ln)%2cD^[F,]“rfi𗒸.f}PLlNφ%2D:*.Ӧ /-<3M8\ IgRv i(uKc}#*ԾdIC{AuI#?Fx4wp~gsDz9w'܉,RU R~z{ÛCVgxy\lK僯ܾ"KwǏO+ S'%j7s2ʌ\Uip*r~V}50o? ЋwYX4 K4BLHIVe7JFj JY3!8@ WWE^dZ/Hv{Rqqyb@6pAtJrJ;1Cw)?_ыLIU?H=ю GV hX( ř֔>q;t6S U@eßlX)$3g1 0\ 㲺Y5W.@T,Epr?~\5\~-Yw U[W]䰋 UUs@ECGdp) "Moًr`EwΡNޱ$_j+PdI}? ?%d](RyT\m%@  faZTy}SըMF)h{2)v#~KǷ7d3f٨TfByhv,X7_MW^F]*JY bq,6e:6T$A|xU.Nπ{"z{?s2zЌ\$0 EFmf)'ˆpk|qu˝?%^1X iV;ad .c3 xH!C ,#_\]_|nYrs~1EFZr(\' EZ>oյikU偄:yA0-Abom i']~Zv/ʡ\[(Uh!Ho^ <dU_ρ 9twX&2n1#`f l1\(> % ͺL@?0oFܴoC!c $<f:okd!JpΈێVe mMVU+5. E2~=U J~*rΤ6]K"/Ҍ nF$bgG)CTk4^~㬶'd` E])ZMfw!GWJüV)@pm'>DnnI(t0*kF Q UU\qdoE \ϑT*|Z fX rێH}G }5Lj8GX+꺦_tvbAo+{3n$X^?>|Zh1Q eH7sos:$IG\Q R33teبsLycXh[4ͥj24~L2sC}D p< ›HŐeY`"]u2 X%Xlb.vךXLY]u2b=!j22#Ljc}L8|Gl{Y9:2+Yj>MГr[$hRb`BUE/KК3x℥™et`MiR 7˔(QK~|>l8];=='&|X%_6kbdlSsᔆpᴮ_=Ţ6rZz#=kKwd'n X`)|6Vt]K8;HCeNk\]y3A A7HDʰ{˥w lRN3ΝREc!"Uj0oe\:;퐥 Fϐt ݉Ȣ|-X1+Ύ3PbSc§'8hH!8Z}sY*o?SŞp u7ZrQaԈ4fT d iXgdҕJjjfUc%V0p0dtȂK;Kx=?z󚰽;O~|U|y0N}d9+r*̧22W(:}g׼.nSU)sו,͢|~baCUe4yJ(OJ-Gs}O1b!Z3KID+\}gF.k 3￸-WZ0%:1MI!h0I!qjSU)0$+Uc9=Qu,c328***CNS)ơ0&,bad kHiǗdH#Uc̦`6xi,Lj3'oBʠyYeIAm e:+JwEVcPa)YDX)\F wnQ˯>gN؃mN!wh|p3>2l!oQۣt*9@jvgxrkn68WFJ%9o$A 6wyipŸ%&bJW #]Yj[bےb -C3Q5+Λ@-ʤ4q֙W|xƞT6劙9S*1SM231Y5*vP 6c0m}Ö]Ip%BQHJfVM#Tˇ\Yy)`.l`˿f߈ 3+s"ڈ91v Ɗ X*Ė;ΪEױOGao-,:36ww|aS/䔟{W1B4fEӜܶUfrjMsKïfcG[x<13>B* i59brE?pN%;eڌd+{H!fQE8u&$1tA2sTD8-ʐ+74L25a&q}=@H|sh{I6Q^(^)PJЉ {a)`lB!,N] \g9Lĕox?8q$׼'6RC,rG ϧ(EE3w_}1욆Co xpZ.=UvH2 2& xo vi]犭j °B2D"8 R|)b{{ѪBz|3۽}$u}^yGYˈ|r85qpSvVhUږAnmUyNS7( ]$!˔o}2(cHtc#IYWC:2vcN1sgHGo9qy!y@#jχ΄ `LA:GlYv >) fQS}8yaA{R].!Vb|pXPG@~}dʐu>ؖ2sb Baf\YSGʶmk/yNub1ϔ%\2kRf"ber٫펯nDŽ_5;ҷL+ Hqmb)e^Ӡ@B 9#R еy=XSų/h JX*fÀ{ѺB3=/U%R᝷ooy4f۵ĐgZ ^Lr Ueb 6}pWJ%.sIT- i<)>z,l[ARfN յi]FX3f*E|US/olk^*Wh%pNe)Ç7٦UWµ.ظNAh,Hˆ>ܩ,+ A'>O2H6co?\bpbcC~aG!(vA!Ac2< gi8aƊ*;~-}]кxછ Kn\ɤ"S~L\{}szL1cbJJC &TPezrŝw(&Q& ȸNWx2;xWwŋ| =KRn uXН].| U)&HʓyjݯxM ,ob6,VhwR97BAeyju^n7_de ˪Bi- [ 4MPr]b fBؙWVNxbΊ %7R2X  +@1/.+:d3iSfNFzuYvf%N`wLilN9=w~vPV9H꽹F*s3>ʎT| kQ_ ]f0-v}AíG*oR"bf1HZ˧D{+rtnkMsju}nnOdeM"5ZEșB\\/u7eU+qM܏)Y&s8L6"F_s/nM0q@@D4b775&3^!~D,3K6\3b#cpqF29iNZ>{~{I\cfb&*\hTDrJfx3Kb҃"3ɤ 9f]f!kos13K]'6Ssq"y^kMr8goCb[PD N_Px s1UVxkԚ>iM0+qݓ[ R>eQSae˭ӗϱՒԎ&[PytĘp+!Vh̘m82 $)dq+a!p'nB~ qZOy-,(A*nGirZ $7]TeN9X`܅HL=Ex$S@ ^ZyR8,^ɪfi*shyp_\]gUZhg%@3},ERa,Q)\acϭ`֡'}kuw>|Z*5߬Y#eG׊vB w2S\뚤_Y-Zk%m&K/V teP9FHth k'S=X(–H1(Ù[p#~ q‰W.gNA#v!Z R4o>ϣtvxhBpk [X/?z|tywUs.J-0ET`X#ffXVSK'ry_fTrO|ibyX?}(%jjM=Ug~]Hv܀ٙhs|IIaGTޣum)F鰷-Xkr+`m7W'"ӧhJ_#L<7gY!][9ʙTm461OGmW-/Լ%91Z>/}WO|t{ãzaZ`vn&'0\yHLȅ9dP{M|uɟ} /fb5;ƣ1{2ՠyi!@h>D3Hö-CPRjDK")b2X~Sá-A=Z7TuYJf!R "cmҴ$y'DJI=0|g&A'NhT8Wv} +ri4ߨcPq<&99 uFj ӀlěMͅ|2oCVTEoa84"|nnB-ՄƌՎz_:~t@ꊥī[_]qs~C?y_gųo\%[/W1sR˔qJ)ٜ[d,P8]O9< ӔXc$3) P2Z+*Tsh<CD#u=I\ˊѯaHUO7PXH=qZgր(/@J[[!cC di凟,< !ˆn\j T>JMm^מS ePȄ#♍6mn-FЇEH4hۙ% M(eiZ:1Č9Hχ :F;*Y(+Υ{aESLqRVFQ5%) nz{js5&^.o|cBPɎwmO|}W/_pݖͲh|z.SxP?3?}zŕwg><=9>k΂qb&g qCLK ͞ZVmqc֣xHRuk +Z7EgSLᲨbլ$ty7-)ׄog `&), w>ȁ"J`WyD bX.?*VU\mǙDAU P&x);$̢TRyle,>BX;X3b .ADrpDTAr ɔK.ynߦ}_a;J:bd~sFJ.a.G?u)s>o SEB]xqPy aLUuU-R_R22%L*"pцȰ\<|W-Ъ6<6o?:3~`m?.H%BjMEL̢Ѽ>bLtl ꢰNUxb'q!șo>I6j4 22nOo=;o-7ޭϗ]~+b>7os^nr/G][Nz6ļS͡8t][JM<`=V%PJdU+˜dIح.8yy隈yb/fg'X'b$&ArȰNƾ_&CČZF^ośk]B>LΣuR.DR"w*>sRaf)Z迓KjlMVs9`CRĮضdACD+z#pΛhnĻo1Ke,Z|ZW۽ox^ޢf.`lcnl&}݈_c謕ѷ;=,ɓ Q |mV1ov VY0Ѡ}~F9ϑl & M rp+ E Bi%םOfU)<}J|׼;78 :%[TȮC{Ծ8UĎ6mO H$+G,Y]bb+=_攋 Y")`8DmX(uF@d7{ἵ!%h-ԞZעuC>1Wפx891\IEmfQ{\SM?1ZF48O|AGT]VnK ~2\kbrdlxUc!X껬t*sMfk'A4܋Ǘ7REcf>AUEGUzRUٹsT  /EH6~TڛmF( ¯;2ART~6̂C6uc lh~ϔ)Rh6 O+G9DUgv0TK]2.jwG)sY0ijnP ycdAmdid4O3xZ[8'mgީ|yW"/|8y'kNk4%h'҆ I[VA3kZڥO9:=4qfC82?:G N,י|(7Iы"w=tKXv$Uz#<.?C^5 `lf-nF,ZU'Kl6:s*<9)àYU5j:%%3Һ"i|Tήکmkv}(H5gFܶZf\jZr5?%el>V,8RoU- 8MߴD!d@Q4J? m^9-]H5%37A`f+²7C6J*i'PJ! U7P `P0մX{F:X]:%I<@8yg2$03q&%B=tNMd#} ԋ(8€gO;lw;JZJȬHZ7URU}A<&s~wSM"x ~|TXG wo}1>{[Zb~/sɼ:1WR7;Qv288ة I4gw|PW/;*FL\lCAdK!@FP<9rMkF=oaa9a56 * PGQ-`gzq!wKp 4RG1U`Bp-<߬/bsnj! BG:Izs7ZJN;c'm;q@`Ecce0ocDwB?XO~'Z“'^׉cx{B`j(R?r=aJ9#+iE[0 f,ég3<4{黿6M'A мfsI?/W qe,Eὅ(ם^U!1_?qP'z4*T:oumi{A`g~0@RJ: (pMq@9P#ab'HJQC|0nhpDnj& w#TT_H? MοkuM(  j"rc||r~ -|(DG(y *^q<0(ekUư1aK|aӹi,&*dD9z|/ B@ %Rɣ =0ΒEE4Z-[[;w( U1pygGx^t x-_^zgX9Bi<@Ġ^_~eTy餞TNY<srf]B F7x(=9p8 ՙ?W oOAOO y?cy kj.onPSK ^xz O@*: PkhbpiS_i=(-~=zcJ)$-0o[zBQ(i+HP"vurSu P(}|8 Cj;4u^Xݸ9Jkޮ9Sz{Ҝ@p! rM$"%dw^Ju]b&*iN94!@GJJVrZ[,'_nSw{V |ht#R6ɏikFxyWjJ8'E,'a'?ePE0iC'Z)t/CQ :%զE3zpFOzU8ML`J虳 z($qߦ#p8X(1Y]`xJ*k_ThZhzzN,&"2\H"` 7X_ѓ4h^jbaU^I̴򌗭~͝@sPy!P`(CO?©)J ʇ=$%͇I*)X}ᚖ8D}O$%o/HRR J(;<yjRKkBRO V; D"\Ӏc B{~7a(Rd.!vLk? I1iW`aY7EuQEn;-Y4`&4MBzb2RI-( +хa(C23)KHSLo xzIv\8H6+ Wle>k ۇҟzYrԳ|w> i;MA"aU{xmЪL]O=!*Jc=1mCˏ{矼?~؁TU]Xl dMUG3ϥT⎚k GU\_."&w]ڈ [HoXD 6俛[.R` ij0ىM9 ([ٱDžw}C1j .3v`4Г\7)YKEfL5$:Ig)~,4b5݀nT;Fa b"|i|{c}G'4-~mᯪJ6+u su  Eg|exT?pF$5"ΤU,Ś:M_u@D!We'aBW25Dܡ3W)PiAxbחuw>Bc'P~ WH8q-i\Ӂ!(ǃsrV@XyߣGõb n[u󺦅Dn]/ ;3 0ʱG9Qj~3-RlN6mUяd;%@EM\%?W‰3JF}oaW_bcEk5d0f3LYzs%@:>u\3zV8zR#TR:^L*`(֙?*gyɖ6}KOhT٦u#!#><; :1H "b3t8_g'J_߶-i"Vb04TΔ}m52!3^G(PlA"؃R:ٺՐ^3S@f2+z]iX7pMZrv{k#xWණH; ('"H@Af Oy>i;U&rቋ \6Hmj8XV/ΙtxS`V, QƄ_5Y`%.-cݕ]]CQZx>ï*D`Oϖ*cBK$:Ey Xp'B,}rj +pm\QlM\ eƘGl1[v[w;P~LrVx#;2%U`K0L]h~cޕ!&%4z‰ǨT5Κ"0cFDŽh7?߹@~FfhrZ(',xT^5(D XZmA#b -\|aGH6!~@Jr8ک# u{-qO@I x@zrX9D$9hZbX5[Up?_vc'1 "Ûݺ|J8qq<̗'jQbҶ@-n!$k5Q_rjvDX9`嬙XH.OY֎v_VݛSoޚ7:;m\L &RO$B53EE}nw?w Fq Lخ^K>[$e@1@1>ꝟt]btWc1bWx*z~Ϟ=e4ܞ[KJyd 1 `TeJ=}Q\^$lPr]~-|hWFT)sPBT\)*93k#"׷mr}98A4 0/$BQSm@=5Yyyn3 ͨ^ܙPAETJhJ1Htfb0*!=߁j~W14Tq;zW>"+r+_uPJљW?xt~?; _ cä_kmlRBJ`49!뛟7;UPSҁbpTP`’gVcs}x2{\>rL֪ADTo[l!(pPTuzxf09J`&fM)0+RH ,bs;חD)0#-~oG_{x62 `d["'o?-ګ7% Z,߼¸B?`žڟ"*hMݷ0Ծ@be`k~ ͩMIuє~=7?'ſsAp@s#҆Uza96⻦KΦ~l38š63*V̝5\plj ɖBEjj#DM! y4^w}㈫Qt!z*GNъPS zPm4ނ b_,N=oFb4NihhO׿z="{t 8]ŋ pZUל(SFUèTĦa\GyL%ȇ=W-~{5\v(GkL>gI w!XbNQH*-p pl,N&pI}ơHb3JO!6 hd0R:쑏H`* N#rUb7GM# {Xb 3any\4-4k3'c[sa0'˝nv Up&MBTh |:ߦ'ɋcB+7k*uáa~{ךLU eN>] D'Cs_l)Sm2 l om3~hưWA=3~m %iPqTTr #RAFzA)a{q@XoL$ eմۢt8XwPU,z@l* UPt!;t6L e5{빠[/fBt@\uA#a4 RJ`&ׁ4=I]8m'B$&u? ;b,.B $6#4̵oJriQWnS7wgeƐvPD?B>PUǣss~ROp"$[U"(Dp!8j֦h9z[a:b?"i=oy cնh^%2`8V*򫢌¤ Ytj%&.c;I*x׶#Q _An77ؾqǚÁmKt#s4{]Xlqjͬ}6Z'mB~1Y) gY CO@[ۈEqZ2]m6Xɮ9Cu Ju,>"]<~IGSpߜ+ha)& c D }S kYԸ37)0 x;dīgxK֫/ps Ol%vGo>{#7 =ʐ@29(BDs*/K;([NoU _FӡZ_n͐j(㈼CXVtCp={@c@2fα7g)%L=R4k_: iB޸ITTC8x86`&kLXTU+4+~ ~qƮg cRhW+t%# XᔐD4lw?=Li?O4G[¯TuT`;'Y2WR%+PP$%:A">كG%1i@>]G&%Q:] v4w{, E'S&> :t.E}}< Y5>DziL!ÀϠ]ص{ЫF߳]E3QJ|1\|(V_[Pvm1(ZWSN$ -K@}@XAJ6`IKt_ 7J^q%?4G</XmK;=zZ"ʤHuJ͛NSYRu0A(ۛFy:.|J ,m(0"RzZRPM|vE-zTA!4p 8G=8|dSI\b?jǯ=gTfR<}.xp#VaJ$[i ?/}0riѦKmIU­*aǵ-"iǐ#\l2V3`A M:EHM_u)3(M/#tHcjX\_T@|y}Z'T&Ae!(YCӁkl)p;>ܡf{A}"l.&#WdQGHFk7`)Xw ŧY_nZ6 ?\#.qqy668Ι? d=m lFxZC]m T>Ý1N_/jejڈl|OL Ldz_StبÑT(ų~3qUXT !!9{ڇX1b&5|2螿69Uhdy*2uvhUvJ1Z EоMB\ty=oJD<*&FQ"50D!e FiG#bD1Wa>$27Cy. "wȻ+p! K͕ߙk)%c'JPhpŏ w;ܦ2.]cv&$II~k8a:ݷ=*VcH(rƥCI'S-3OBp\:H,Q`B`-TWK4&Uh}@B +4ЃY@zb|VAr<נO8?(=/V-B'GN! ̑X*{P3]xWD&Sx Rh.=Qǫg\pH#RϟW> { U@*씯m묟VxOz_y{}?8/;agmSzZe{pM61X~k 1x틗v%p 8o|VL,u5jlmF65Up [kc3HΐR,DR Ťm$˜MDu1l896T""!yvݳPt|s \lHE4=@Ą^j_IRp-e"4%C$1#61B'z7ǂ"koRf{L)Q.Eۦr@c7 L:a"¹,]Q*:`CRMzvҥ' "RlP>PM˴@1V_B r WaERUs"A\׀D[}瘼sT}HUjB}.z(Yj_K4l\HXY0tV@=W=~k(M钖BDTĄjUL+$"i)̎RA  R@/چ&2 *趝B4Aˠ Pr2S=1L1FN] "RZyJ =TOgh))F*"7 8 =-ؠFT۷@!^^"ր-~UEX\^!n.oo0ܽ1+r vжf`R)x$ӢwGrooĀ$ZrBplLF7O^VPT{1uLOԹOtRRF,zڤq'J#٣O4QUNJk*Jt&ծ$_ 8w>[ !FU"Rf,ǔ1ѤvffWDך_$aƭtP~ဿ ~-naqҾG)R2@Uٯ#RkkHz%'-|)P=m:ux Ђ{=kSn;΄leU*`zVeAy{׶PIA1(4V:$u? 8T^'@Ɓi\^#^^CKA5=s/./,qGySXy :~eKT:MXbcj#Wo9&XT ?,#ĄD"G)xp=]?{b 5ɩd0dAO}7bUضSMv>zgo=>=o&*K1A2zcS*Ja7MIF+DT*"c)H`vAWK}s\^\`Xm#MD*&3PD#tփ<&GG|qaĒ8_,/rA>Br&7U%bGONZOC$)k RBx:BKA |CȲ2p*C#[>-l%oY(H 96@:gY,XI{} PXhb5ۜ$ xLߘ_,>Aƻ..L{֐Z \ӡBsqƇ{o^#-Uvo.K6* <*6dW<G#M'9x v=.6+xvmj[t Jtj~&3Ϲ΄DDOp fl~*> V;%Mbbۮmރs70lNӵE ~5qu} $_u_Bܥ]ِ_?w[ޔ6<߬nkwCXoaVN'Ըf(nqnG{fj$t t_*WHI^~[,J"6zlǎ U>_ .AƄ2&$[@|(s_"*S>y 6R;Tp%о c-K=~trӘh o`VG$%pKī+03Xi"|D@XI+9yS9&dbxERňD1z!b文-#0cZ3k"bp(&׵+c2Ey"0bbbJx3֫m,>OJ<;M-q~o0MQ)õi#R|< /6ZƄXՋab]tHJ.9A{(ŠD )I!.6h{iয়`J"F\_,0x28T߄rD:I 4X(T_~MvObff5?21McrTw~'Nߐjzb.мx koo{y{6=u|[,=P9FUõ5ihb̀T{c@(DhCt[cƎ?D~_I`=1s(lVRLqZ. WϟYbGJ˓xXkf<;a*N6c;4S&(j jRf$wG(B 0@?^B>+ԯV$} =rp5\g)[eM3ET.)ն  ~=l^4ڶ+@'4Xbnk9QGЛW*ay9957gpm2 :>< w\ï6y kZ)(㠦v¨BQj\UHJ+V[rϸŧ\R^##^$AY}ca/_]"2@1WVY&I_w}=ၾK|wռ4)XI8 y Y\3cUXb؄RڱB #~zLBJ4K#;;ή5~&UZD$0(:p9@SԞTkBU\j v8~)KAZwMpչfԬ}fVcI~;D'=3j)`lgԒ2@bo d=h_o^)l.Mpxk[Uj5Xr%>ybY;hB`-`_w4 H#"(8(ט?\FԨ":US±M۠],h-t8*LjS0M>z=M\C: )Bm]SW~,==?PAt&#z~ o_~#~v\y]0I' %lVhLaoV xĸQ>KeQX k? T긃((I) f`x/zCDW +ȯV8~ rZob>ej`Ra)ל)6JQ)?•{$Y6@3ITw$P4+ť/U5}5иD\Z(cC>1_,.lB:Rt}qZ!%"eb4-}#l?4QsU-xJ{mʈ9ĆЪQGnpCV_: ~D^T+HՅ,0`۷f/` 1(+iSi~eWס' UPSFϖHD}Td ]'oy2K->%;G|Z ٶڬV@f)=xfs2{T2Baqs  Z4PMD!(KcR@>s8ZU0 (r\= >%P3-ǃMMKnT0!ȻMƌLLdm! TiJw"-c01i$yWJ5;0Ay_LRߢy(ճ{ n{k6.V˕{` N 7 ٦"Ü"5sE`@FQ0M?_nJdQ#>r-^iM|PXLbb&fӈ"qL %l.:o}:(pcg锕ڭg\'I9'<~:(dc"'sӪ^AvBxLJ#YON;<{)0o?>­//USā7eEO?kvpLC ~@n!v%\*=B_1wJ6?s&-@0'1!pmxqsJwВ5>{^G ]C{[/n6bI(R@[\9p).{Ztd(Bt]adIԼ}=G-u "ċk4j5JD\¯7LӼ#WЇ_/k178Tl.R}RlF]TQzd,Tqee͉wM77R7}`RP5U`OG"HJ ɺFBl\^[~5ha8 l{!` 5 ܨumgj"1N@E?xgdڔ5ǣ9\s[ẅ@%sc}3%~Sߢp*- I )<>^t fiS8_YnBTFVnIY [^2% #ڕap@>\xl7 Èi>n[L'69rWe : X@o}iI`Cߧ{4c \hLڧ{l;4M#6 ^< (&=Cb)>AgYw2CzT~<~yhgeŌ #:%7Ne0 )( EpH_?AqώGTqy!{/"3%Yң@mAP8Ghs1i:7xvv?W[w0UKz,Շ73z+336[UQ/~QZYej!{@ rQld,(J.DDܴMCɖSƁ~2!-J!P94mP)<!`{CUrxqHҨeCnIrZ!s?s-RH2j?GC_P3~H4gβٛWTTְS"Ts"Cu I4Ac]ħ9ѧ8dAVGD72);>ni{ǃ&RlZHJJV N'3F39tƢO<uEhCF~SұJcF?ү=w&'YAiU`.E(kQ* ?8 MR*Q@Z3̕G)`UƑlGiqgcZyп~EpP qہiàỎ{󗈠GR8JP_jH`-4!R+nPU!^ïJ1{HptH?ވE*LLj!?a8Fj G CO"|9fԹ(#a[,ցn|Bn8ʇ=ׯXQE%i=&j&L=<@LRW'hk@dApMC%[`[:da_ϊ1uR*%{{{D3ؐV/K &80XqiV@"vYS%9Mkj m"hT7pX@ѓ]/z@XXu=q7=p仹{7 9%-PioF(==$ W}UEG~Dn4nZYRqۂc2߾X=@>Tea9)3|KjpR0R5L`;Л3'>`qD绿*źT0*F!Oٞ^yA䠡ׇ_>٦ zf{rIp< GR,_zښS;ü''þs;Z@t^Ǒ0Cs~q;W_J qᠻqW3 DZ_l1_,qFhMH.);w\4%k6pƜtm !\\XE`ɣR `vFUQRjqDqveԜMŴPQG4)!\\5y0@P:B~Ra6Ljpy {ݣ5;V9x eHE0޽Ee7# -E0jP-; qn< Ñ*=F;{׶BJmU"oBkLį(*8a(~D]D]b;|_q &F.LJ@KDO?TkY;`P7D?gxc"8F#EyY7`vaV8Vm9%v ^"\~PG|)IkpȇN>{_Cl0ӏ> \]#^=ų"?>6iR ~s x+~2=3ԒGfAWR!v^OF2mNJ_8p-fB9jƱmé&$Z "03oBĆ  ' ςU^?E |}_X0M L?w>UiU:|k g7@aPc_7;k<[]"j!׫\90Yܴ;n,r6Kfɹ}|3G磙(%=#WF.RNgV+k>pwknɵUSmҳT{n05ES*r #7R4/^N[h?#Z![bim$~"QsZJ%!hA덺3laoI_}=|LA1ȻGbkP p"=>HG1KpU %{7 B2!289Lnccy6`zDҜTz n6th):?h]?!::2 C`T︀o4b{ranp [sD"cB&S {#X8Cܠ{G> U9M&ƣ, (b߶P"pΙ_}"$`  qD>"Ϟ}>|@zO4mZ!^\k#mQq23b 74޿qjmДc|?ՒgKg[%gKMkq ֜.D\3>1agRڎ EH'f`1(V?+ܕ>e%"{':m1c-FHAE;++rYfUQ\fRS1i= 2ٗc'< -bnJBi;{p 6YF3n% %gJRtyd^X6"s#7֐l<>>`xscvgK֩)* λD~CU~q{'xxx@zx=͋pngo-Lѯ֖\AsFz|@9jW+K*n^C~_wLCژ3jHN5I d:ڹ& L,*:y 0]A)*ՂRffH)`bUK ~7mSA*t&"Ƅ„-lQ,buXi\ZlB)Icp#ql;  :!jC4p\UK8P1XT8U05_ҧ,_\ްjMk 'F GH? Иǚh= ȀuW.c8īks#ޮo[:{8[ KrZ]m]h@Q{ гMhMv(cBE!o|cO01KM&YUaxGV+S8I1ߥ)TDvלA- :y' ?>jXo6.FȭZr{MSK9<-JN!feGx+5g[# ;HN((βTs,y\kCb1v P&uz0Ak cJxc!Ef-Nө;m'W#[i먷͉j j%bB6po-Pi33bgj7\L()+j_c+OGsvR%_lp;f %Ƕ ܼ+hkh wAfCG±g_701Jœ){_Ғ3Ϩ} W6QZ!n./V@):vHw$)xZ96wʦZW$ m ֝LwP 8Fڑc?6v(`B5[A ,kJi Gj!&]fwmyIJAԅ"BR3~\ ZyɲTWt1 GlMU"U0lVmbP'?nB<,d Tuv,U])pER=%8n*na&'v(i@ n"Q^5Y$bvAHc&G2E>Wudrh R ]Lo_MP1 558@XEJ(" \^CJ `S#%2eV;hr-#L(#T(uN b J.5ro|+(|~50@(g#1 ïs7U $%gh be5єO:/N^ICpyE~B{?+?_1RѧHSpb! 5XOPD T#8p#Dz'nQ `AWk  HTt8BGPYf\ˤ?֕T O&5} QB Ld_3&8Vb[I!BAڑ suPb:Q9S}81iN* TU-)Q,;x!k ZT>61ҔEjYbhp o`aSZ"±}fB#4Ub"v}ʋ}0[M=@rl*|dT1_BD9*^8BM \tF7tL_EX.m@U>q94~K͇ׯ5m֝mbq}R`v"B%on0*Wv Qu2di i>#rUVVf :ҐMHLrQ-U-"V4W Y%tJ*XՈxj6p!eSX#vH~l]єF@՞+R6gtR&V2Vy ]Ř45Dh{;IfybY@ә¸SJV ĩRa2R.&R.9kvpfSJ>V+[}ͪꦘtkІF{%U m<؀JI!hM R7`2**3Q22goL57p]gcJ/ϺMmw\M8vjz b>z߾Az7>y!PqKÝuW$bkA4ܽEs0PpULcƛ-A =Г3ɔM(CO4Cr&K$y ".໕U)ɥETs :*hH16F}ymCmO*)yZx~jYl)I< *MȮe΀RJe2Ef<˄U-Z._"Kí{`;7a/(6#\9ġFl !Ss1,"d补| 6UHBK9Ff_mR[ l.'Ӓ Ŕz%Che5 u ɵkg]m,@7B N Hd 95)^}FĬmj@n䂋^lz|G=0__+_fo݂f3[#;kn$q݂Q"=>S~D6@@-8(CL(I-J&u5lYCmAd&s)je8h˒kI &[i]8O!, ^WJvrVjy'~4LݯgloWOQk#3O` "-W] k|j)Hs}nSX𖋑mL\%~3݊1d(spmgcR,u~r=O>UFǮh`6ZDw*%6aǡ@DLZ MYR: 떕JTN1C$!PYbcQCꍃvE٠y%g vg4><[#fmW^wI)msuՇ\4~tw-\V\CAH=Ƈ{0Xz Mvrܶ*ëO =J&i5B2QMl|@:1>ATqdz]|5.Z-in9`PZKa -͂6RfݼN9U!WUIe^EM:D,ʗD2 FkJ୘j"QO{UaLU!uuN½VV۰+@EM)> f=yo"+qiWuF6(gbbi)j'!թ8U`|\w P( &"]9jA i azcGzKK2.BݬjR# HIW(=pPMIshkt/^}86H-7c{ +_?:'S,w= 77ȏ  ][LƸi>@r-,tTZ8 `Sb9EmU^=uD'CV+^̮ b-X/ǣ@̌``2r&~nJMdo; ()MY5qegUpJ[h\uvrY~[! S,GkGHOܳϮeC߳Op d5iD68b5"o"N|<YzAUsO]d&^mgvS._ogjYI [V ߶땕ik#j4Evp͍h6@SUr8{`F\YIZ(YmL 2&r ˥)8]#L5V9y*V6YP==,RgFM#Q[^35ehA"TNZzl$h sz~Qr!0.aLQ!&A>UJQc@ź{JnH(URlPU}h9j%1M{T?p(Rj EY8Cb4\ }yRy&8ٗZR/5i_,mMydԵ ELrC{856 4Wp3W_`{?$ixo$(\j|s-Hn/s!pJথ-ĜhO<;;J ȚhT% X󎼧my,5Aj%y/'4v86$%R-v'&Bz' d;5L%.\NFx>++lW)$L 8Œr+"lwTj`4dO_7wU}1ի#Qkaij)mf2ƐD _,0XӶ(D)d &\ꝾJ!nZniq`N`Rș,ܬ$%Cr!)b\w[dD![,@>#В=I]XsH'|hף${_\{oaOZkH: $&1(L\ Ͽ?o̝#Qntm^#n.ņ|w 9򆛶:Tm6pJ?Pۛ R'ۊ uY+Xr?w7~BP gLU"2Zbm[ؤ6ZBC@$I~_4xi>q 1}XkSX''k_z:9΁ڔ 'O-r& ҲS*k~:JU䡷&yR&lJx &*ǃsOuVƴƤU)& u΂J~g9tĬqVSh[S''p4JEti?72RcJp>vNיAdl'˞EAO%5Mu= KI*96t?sߘ6W)EA6Sv4ZUX2&՜}@Xꆍ:U8$g0بNdnS e9k6b)S:6[(5}Tt~98Qsmg| s캦2 Z{aߙExCyt:*f`S)1 vUf HHyk?/7?ra;߾A9'X>&CZ!v-t)?Ⲧ`ygy1ہ%r1w]l,WZGkkA*ugPA 0Lur?)m$WߴU`cJ1ШAQ-&=Z $ #ssWʗ$UUk$;ý4Ygd_z|*̘ԀLd3Tk)6iO?1!kg&HSdRZR Llz{9\WYr79@sc-f."&E5S)V…`5SCPAbqta:pξ8B @J|MR#hA"Frբ^rwؗo?/k? Ðw[ГΈ>>| n6]t++Ci>8C iG2`knY7wm L)hsSQw)9^E,Ә}kF- @5܇_ CSޜ0TaS}L\Ybﭑ6lӨ*slbftκ$?U9s iEM0L2mPՐC8US&Pmx,F z*L=(6/lit|t>?4`Ap4mAS Rن悜I.BDGGdrf %E\,ᘀe={`,QD۬V<31{uM`˜2?~gu{/D* NHd'jvs߼vq}a$&x;_8=Bkv* ;CTodh[#AFEOlyoSHkQnⷫ-F̥ku躶jtC/J1 `FꈳCp&")'4K]yvOn?¤ ZsXǍ~ω\mW1ɄKQ"Ŭcr#\c{ <Esvk/ܓĀo:бA` FFcAk-mH(zEc&{W{R8ɪ@ bX"̖yv@Jؙ][l'ރۆIu4*…@c?ʟ_!(?q?!Ov}rޓkn6A7w`WWh68gĤpyE>挰Xo[\%|V H 1|RKxDcmg򺳳cr1T\r \+ϲ]bwh";]MF!UFƦs~ U(V[j8"w*kڕOߺf &N3y`N1t7##6[`?@ ɥ,mRxh'NXt%m GduV 2rd[:ZTit5bU]m1C@ mvu d,҇*Mmcf}vj_c ;Ix:5PP70${*@?9Gu^ְ*m?7^oCX.ѮC577)h6#`Z>JJD%}H k[7/xk DzCp9Fa&S7_W])V:vt+*~TDlrޚ8`R;\\\\S }֤T6f~2M5y\:ե]&[s5';뇱6va#6Uȧ?#9_Ժ_?'ط>fVhY$ QI%iHUnJKiM}VՉf$k{՚aAp8 KAdΪ4 ʳmG[oN#MbEVB.4DCZJF 6%p9R)ɅmSCOZ߶Fz -I]ډlf@.71r6=a;9 ,Hs4WLa$CacQsIyd.ƟOoO\_?3?>GeķWjb< D5Ƥx ȱPUx;6_#Ě֥dq@f=m &sQEɚG]g}I QA48MoAٖ;,΀L U#"T S@!!{=&NlY}cԏUbH 't=fc"dN GUr#?Z4LZ#A@h*HN>bOpq,u\:b7Re:@c2ٰD0_Hg3YR.\IRU T$DXJ1Mc@"?5<tC?Vq!|w`nhdr;皆$gH >6 r&֚nMZLO+)֪ ÅUBD{WdbMX4Î\E=L*Wyhl)9;?YQ+11 ʹ2l\We]md7κTL-} mcquMO(4L>bWGJsSbr]\6)RAޟ[ | 3 k'Y#R .*f𱹽AWX U1yQj %HYrJ\OGx"cٿ+|ϝ/?OBCo! &; 4vl"d ,CC`*;ϋj42f ͼV;cVmRUJǶQ850 -UQ1\A`g:8gAy 9'xVXXL&vp{콚̓3_fȒkg)pusrsũD)vDx;Hir6 {Wy o0k _>×/__|}ח/__|}ח/__|}==IENDB`qupzilla-1.6.0/src/lib/data/icons/exeicons/qupzilla.icns000066400000000000000000003532021226107126500233030ustar00rootroot00000000000000icnsւis32ɟ ܷɪ}ܪ̈́{Ov[ʫMMeve7e{%tOZZMvMOtc ֐OMZM{tec cveeZ~c++~+00wʫ̿[5ʻ{55755[O5 055[{{O5O5755 ހހ }kkk硱ڼ켼֬ʻȹûȹûûùÀû  ݁lrrr쬽޺̤ƀȽƹЀs8mkil32 ;7ÀłÀ1,$]ȱTgï^gʖʯ^ f ؾ^f篪^fᔟ\dƆ~wtݓy\c՜xsli澡siZ`iVijgn€eu{Y^se``cbks_^oӬnyXEËghg_\`ZY[iekik~|`+0ꥫaabYZTXXcwerlqN &ǥl`\SoVXWfjkuapR#(qaeWY`aaynN&)]sc_]^fl}A)-Iyqjhi^{7,/7{R-/2/J2.0//0|¿ĮV0./2/2Ci82/.44217Ƽm6542063045CrѴ]9554212.04575Ença:77422020-/243479DVwsT?633422/./ #.001025656676965140021/,!  "-/0./3221 411-00-00+  =>1.pj~u  v ~ w~vtwu|u}vj¦QIŚq<Iˀˡ~DNπ͠HRϡLVɡP ] 屟Vc٢[`̀ ¿㿪\dĽǷ^j ۼ̹_lĻͼakɺbXǽT û$zv"=@1 /q lwy  yyuzx}x~y m ˬTLӥx@NثGR٪LVڪP [ ӫU c \hᬭ`f¿ɵa j Ǿ¿d p¹ Ἶd sɾ hrοh^Z#ſžƽȽ&}$l8mk'++++++++++++++++++++'x~ dl iq*|- ,4788888888888888888874,  it32D 9atsutsttuvtstutvvrsttuxvutwtututututuuwwutu stuvsttuvutsu ttutrttuutb6 [ ۢP-Cځׂ ڀԀέ7-uˀ Ɂˀ Ȁ Y})¿^_: B-ļ Ⱦfļ3 mdŽC4 `ƽ2żȺؤ  &vGNWw 3kRP`ɾʛ𡢟p}ʽ(ԁO8U{,Ӹxdc}+˿l_bAÉ b>88JTZYXXYXW`ےy[YZZYYZX\`[_]p|}~\ #" "4/,)'()5쎇{_yE`_^^]]\XM9BB3ISWXWWTzXZXnyY\]^]Zz_`k~~ ]2-)'%$&6񡈊쎂pveNa`_^^]]YRA:vDPMSYXWXWWYXWUńT[Z^\]_`\^g}b!'&'&##1.,)((*5ፎq^^ba`_^ \VJKH=7:31+((+2s[oX{~}}~||{|{{||yn[ZODJZp}ꔁD+./242/011-,0JC=3+'),/1.[m__^~}~(wyYYep`x&.,+-.351++B71*+,.01345wwx}ʘWqH-.././0.,02/,0932.,-013672jĽĿ4_hƕ12/../1/112.*)/=73136766431.ȹų5ebP,/31/0/001541-=9><8752(-**d¿üǸ7̣UrƖ-/21//.0023351/1JGE:40/3/*-02.ʾIJ,۾«yZh@+,.321103750. MG>3110-,.0$MȺ+¿ӽ.-),+020/3662/1E<93.-,.-./22518ۮ̴8041*),--/2125421B>9-,/,&122343?˽:夺V310240+,.-.1384/.=D;31,)*/2154-250P˸ǹŀ,ו1343/132+*-.,0672.,?;6*)/10061.22.,*|̺ŵ9¥گ9:8233/.241,*-/1221AB62033.13//3/++498μ³(I4676125/+143/*.31+-=<9;62012/23-+/58676´®,]1446772/44-)/431340,2FB;0020121++2776641>ï̀0i7:6545863.25/'*0695100J?8521210+.4875452.,@ĸă6k%9<:43458651/31)&,9<40 F@;4253/,/6:6]2.261Fνz8/+98874357784./4.*05732I@9742//14897672,/46/.I» $n6:;/*87753435665/,262./1 F>?92124358&50,/360327H6мe357;>1+766556342341,097-+.IFB72245698951-.352626A18ŀ Āɸ&V45948=>4+687754322462.2871-LF?612238895/-,260644?7053wʁɁ/չB388782:?A5*58786231/2546244mKC;432477;6/.,46-642?=165;=\Ƕ=44689723;>?5,58684310.14871/1J@:74468;72.-56/751;9Bр8W3=<2679:622:><6,59572321.0:962/HC?:436:62/,57.67/7B4366@;;=<;]ՀԀ7߉==>9>7356:96029<<7,3825323214863)KHC925840.)18.79/5?7443=>>=>894:3737=<75949;Bw3Q'6:;:7;:=>0427<742179:8-350351288200KD>:40,/+06+3812==2954=9;;:49649=78Aq,أK791/8;:77;:A:/419:44117785*14/1436752.JBA90,/*05+04/1:;068389899269359>;;:<;\0۷rF295;9.49:94:99A51539832,25774+04/17:6430IG@3-0+.5+.3-.5=01657977;4/8626;<<9:?9468d ⽎L919$6895188;65978=1245972/.35642(.404<:213GC:.1*.7*,4..2;2-55694789.18456:;88<;:88294@U_)́hP-*>93689:5760376837939:+226971/-231',336:7-6>75-/6*)40-184*36466:4.65547:978;98;35;<;9 ;=dmK=B8<771=;6387:7872.462:6493*31784/--/1011'*5575%m#:<+.4+)1/+/57(056632578.074519988:99663557;673/04455274460,12692/-./-.21'+:61m=1/4+)/,)-28+-4535.4583.45325985;:7589078;::68;6;698;99;<1;;:813?62165;755.01424035245..1366//,--+/10(.6/ l,38,*0+&+07-,4435-0266-06130:684;865;44579;858<6;799:969:18<==8=75-=84/34:9562/02/23154246-12243/.+.+*.20)(& <0-1-&+/62)3\4-,148/-4501365389657;26479;668;49688:768;07?:=6=99*6:5,256<5540..1-23242144,00242.-).*',31' R'/40'+.64'1422/(.064.150//9241:8468;34587:456<463768648=07@9<49;8.0<4-.43961610--//140130-0.010/,)+((-/i-2*,-69*.5713+/1682/43..58425;958:9427899256<773779759>27>:>37::5,=6.+446:/3932-./23024046//0-321.*)-*'"g%+/4;.;;2,286=61::53132584885:80524741-(') e 2>3,48984,58;95378114:632<9499@65769;7679:653679858<27;;>81:<;25<5-.648:05;65020377596697152352.+$a*(/3534*-3342/03.-.521,161/259.01124.21320../032/05-/4654,3371,71*).124.-4300,/-.2/040230-1.0.*"  ")-&$**++((*)%&(,((%++()*.,'))+%*)*)(&''())''+''*-+,%**-*$,+%#%**+)&)+**'&)*'*)(++''&  =j}j= __FٗEy#! pawcDRkME  oTSmwmԢ.-®ٴ)2ܾҳ .Ѯ3ȳ,Żʪú҃,ʭ ׾#ͮ&ܩ$ϭ%ʸȩ#Ͱ*ү/̫ˬ݃-ͮ#ϱރԱطϭƧ жŨ*꽵¿Ǩۆ;ʺʫ  ̭ ӀՀB̽ҹѱ׀ 9Ѹұ! ӹȽа %ǽͻή иڹ½ʫ %)еͭ ׀"ݷɪ ɀԃܶр ή 5̬ ԀԀ рʫ Ձր/ȩ ҁԀՀЁ0ƽǪ̀πՁ׀ց%żή ЁՀ ր̭ Ԃԁր؃#мЀ а ΀ԁւ؀4¿ʬ ˂׀ׂπ߀ɧ΀׈0xaσӁׁ׀рπ҃ŪqihcY ҁ ׁׂ ߀ۀρσˆokkikolfZxst πׄ؁ǣ|~}yrd,~rjjivځ؅ڀ́Ƞosrqponh\/torqҼ؀,ȶȀ ɠkljhjnmg[,~ڃ:ˣnqsstyuob ʀ ҀԂՀЀͣhjmnmnmf\}~ʀ ӁՀɀѭ~ugӀȀք'Ҁ ӰyjӀʀ#ׂ ԭpysր̀Հ؀Ԁӂ я~pytw}̀ӂՁʴ؂ـ׀߁ Ї{l Հـ рӁՁفՁ ς}}p ݁܁ՀӀԀӁہ۶}m%ҀՁہ݀᫕sކӀԀй܀݀௝pށ݀ӀԀւŴހ݃܀ ϕs ݀Ղֈ˃ށw" ؁؀߀ᨖxփր ݰ{ ܻ݀ 麟{'¶ঘ!ο% ϗ#ʷݽ諜 !ҾѢ~ ͽºҠ)ѿꤘŰ ¿Ԁ ͨ ƺ#㭨̾ /Ʊ ǁ-޶%ȸ ŀ-迵㺽μ 򺳶ź€ɲ+Ǯʾѿ 8ĵɶº Կù'ø¼½ ż$ɼç ɸ -𿸻Ļʭ#÷ƺѱüķγż0ɼкٸ㹹չƿž3ʺʫ2ŵ˴һȾ´ѮȀ %۰ѾưùͿƿā'Ľ¶¨ո2νüåɺ)̼ͿǭƬ˽+ĿҺĵǧŹ+ɻĮůǵɻ'þΫˬŹʾ.ȹŧŲʹźõɿ'ǭĻëʻŧƸ.μũϯ¯̿-ȿµּȺêȼŴ0ԿȩҰƾȵͿ¾4ϼ¿ǼſұǺ̽3ƳϨűҸƻé³ƿý5ɸóŹˤȷÿþm;ĴΫöúɷýŲĿɼʽȹµǺomr̭̮ʞºĪȩþºĶǭƺιǽ»ĴѾƦ²Nm3ˮ̰ЪýŷľùŹĹǭſλɿ¹°̹ m˳ҳ¿ë©ȽĺŶſɹƻſŬ̿˻ʿźƮƹŶ~kEŰɲžȲǼȴüǫ̺ŹϺùî»+kˤ¾ɵ÷˴Ƶʶͭʶç͸ǿ÷¸hiЧʼʷĸƸıɼͮδŸνɮƸµŴt g̬ſįǺʼȽľͯҺäƯʸ¸ðne qʳ«Ƹ¯~[ b@BCDDEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEDDCB@>;73.)#   %)-146789:::;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::987641-)%    #')+,..///00000000000000000000000000000000000000000000000000000000000000000000000000///..,+)'#   !"#$$$%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%$$$#"!      ic08 jP ftypjp2 jp2 Ojp2hihdrcolr"cdefjp2cOQ2R \ PXX`XX`XX`XXXPPXdKakadu-v5.2.1  ֝&UwHBPt W<\Fl[ g#WsHR"iJsY+$qso13Zн!ˮCv |!iO:Ao(l,_ D:p$&}?r߮3qT= B&gD`0''ۑzfȱrI(,ӹS*7'e{x,m]19bR3M)f1h_ȼB,;~WE^>oCkHp4݈xXx $ `^=R8%KBʜk#@oNJ&9Q<В\Tbn4*L̊?~4K2 >՘/6ؒCp> &x: `2)b@VUa糥7,[ٟq9 dGe@"`4RaA^ R09:&hN J'G 6,ʴ ăӼ}qFz'o/2<:J32RwH> b䄎RG}' 5RMbmgadbEE0 sR0Ey˿ұ7MVr)!.-8Y\ikE\&JcdCbf2U9 %T)r73:KNyXxT\pӄ]7~T,OhQA$z7yF@EЛ:]qg0z- ?5JPGWqiGO^>{r.\{<-%^" I+$zTa ؁I IE-t\ sD>h&r&]A1\(cȡ]wkyg G*!y-jlJOMBd?H }n8YiJɊ Ji9->]DC1 &v`OJ(q\|κqPv/{z\q#~RE'fa\_wb[#]ӝ_/$$5gB#! \1,ll'H6?> 3)M:ŇsȲ<Nܔcn[J"[x[Xdl4Qo#횗uUD*mIs=>NO5&d]Zn+V՜e 2u{̒A+"9F6(\_2\O6E/?B% ?+-DNX ZIAy<w4@?]>)I0,5¸oiʤ< ?3ޒ|H+ګPxYOw!bA3/&L4cA9o(:=禍3#P]+ dJY{b'{Ū(@Ο*ͣ},}KuqCL?Kt͠JSߵKSxGA]#6:40E#߭:8ّҐ說j)+r1( 8-|::?VҴqV%Q T7gmQոuxpM /Kb}OC nCʽCgt%(rZjM򮱬(Qf(^-{5)nrY#PyF%(_غEL$sn%5qC6{PMV9(!-"i&>H&?ۮv>|@3Aj8F~GUOie_mHY|d+~!|/SK2%'8tcgu"3Zhsĕ-4i[t2>PRsu@v7bd-AnZRvF'It= ɻ$Oz%f,shI#t g`(S.@%ڋҿvy24(RTEp+řd!W#2kQ ˰2w`w9dcu#RMYD8pP|T~}J З}2!0+1v2Hy ]9R&{eafOV=/ͥHx'f`Et-hg/UMZS~2A0䧽 }wb'=»x[nI oZu= ťP]6%[\ČlMY$˓}&LÙe6kcJ Jd·T&04Z5';A aQ5֊ZBn*5{ *)(4Ԣ0`=gJ{+X x_tT>>N:0c_4%!w%01u0R7i^"~2`=.4Svh+XZS܈bdTf&# ,2ؔB`TX{zN~5MUvLbGA4U*|K|v,:V,LY`|.U5NqpH>l6ndCKТ{5uV7ˡ+rD w!b`R! x+SԒeJq ;plѺS{ZRCF'k/RVozq^% 9f߱[^hQۀ;9*_w$g^z7Nl_HSE4^)ͲMWS !y<y f&(OU܄?u˼fŸTQ-X(ᢑ=fq[6I a~'l9tIs; :nVmZ=HqhUB 9<ʃCF: ~]IqՓ5Ħ!+'Nh@J>za(LAUV0~;I&Ol2$'a܋J[5%j?a!=o .y'#9"3.C6`۬|zȨ%&9Pf (%+O?L=[w:Rk pFJU/ND N`S] a%|!ٴ׈ߏ̨ ,hWYB+ M{[JyEK+ɧlEwg:m"5Ê9)?:5?Q]8a֞1ʺY4IJ~Q A r؍0@.zT2N'wB{MŁeܵ2GP{^sbvGs3g>Jw70˜s"^1X# zúo]xUjp{Bцt6D<3L 8ɯq̼rq\Ee5/7mt֊7?UUn+AxGMKgJJ=_ ߘV$BtjXp.z,gܒo8")&iXJ %iQ?5OZ 2&AҦjec6y2Gmw:EPM, C_2иk2GqtXiv(Jھ[մ!$c]Ev'/>dEv/^??>lp`/ {ׅff8Pr &i/f$Y>ޟ!u'KVĀBm#2Ba mi04+$IױP=`'#``'B9BP բU&l)WbQ} 0tm\6'mXB$Z?l@.̺ǀ`TQwT b«"ݼGAgQ f7DeoN[8/ UT:5վ&SK < Dը=+݊ IJ3|f/RxCD 5 tZ&݊f9ńSy&E%P3S+b?{k-vƹ^ b+X>mPՔy/arK Qw%6{YbX0oZN{?%Fg %/ I-'j?e_jC^f#Ɓ܌y#]#\M8,IMVNhGx(*?Ps?ۯ`SU;Mw 1+[ݶ4 CH?_T1e[[37 WuȖPm%8ܒ3dčP80/[|?\l*Lɘwеb46әQ* f\tƶ1c$Bj Z1gwoЗOH&M?zJ|7}NX5l_ QAJ[rV#pAnK6ֆ۹*;Y*(MA[c hp6;42Vcb;TIz57lL0*V 7=-T$t_ͱc=aކ-LEO E.2gPu0bYGކܯ+^F^-4||9>ZsRj_8|Vsvw.ߎFo>j.6w-@ op.EGn|!w9bY$ WD&%5 x]#Cji:d?@קr"5'puK~_2e qIZ5ˮF.bkQf+I+nԃϷUYR*InȘB`yUBN9ey{gQT:-Qx F)Q{XЈb:X|/{‹ﮬ4g\wj-౫C8mY<]>euf}ZclTZo'9N6<+iM|<T|.4R:rԦd*)Z~Uh$ӎJ#eP l]*x@S5tTu;cfx!?ߨgKJh?Qw iP&MMD2I ]#DU+2q"bxiWzO_x5^%0..L`w0~gO몮zl^GA4kKXz=fk$BT$8N pW WPY8ۜK ah'gbѭ( y~FX{\n6LxzGzwO.EjRvO %.`zo,=dTY%``0D&`Fz b4rmeQy I{@NGLCR54jie@V\|XOݱsj _+vi<V!-`)y| 1fB>ƚڌ qV?jx0rΓ _wֲ=T-~ 6[Xh0EwxaHyv6ԟapG83yBEԋ:]C P,Ā\䟈K#2;hgb 0bҟ[dn%P4XJ#%Zhwv3ɾIv#gV]A32VJnЬ(]-N0}|U:;55=#gS|AyQq%Ehd}a[|gwzvJ,q/dQ3lQYUsJ{*0œ7l+z.:9Wbk(&7CL9.2MbklHxbR02YxYj#UO!lJ~ni=4O-,Fz ]6vc.Q y:/!V -^,&q!/V@аʸ{ ytsT<$Bx|UbYѓ<-y.SUݽ!^{g` RP<9 }sc8\)4`A7l{ "Z6LT+2GXyVs"=z ճ64sUI_IJna4۔CAZjA-osL!zտQaVӀVçI_~06C`U it^{+VWAtτj%aOP !;2)gRd'D"2b@(U8rJśXnL%JQ;R#[(.v}wՋ{7D \ע*>Z5ղ>c oژ9V% IǨM>|.A{[^@8޴*?4hUjQ) B4" d"(2̄1[ N*Q`2eשo԰L9kJ=a%ɔ0;.Ӧ)v. }C& d;z1@Ͻ^\-ڻglNm,CV{r!]܈w}hB^ ԣ1c-&L)O(Nv8͍ꫤWoC`1[SۡPW &B >4#t9pǦWQh Q3K~82e[^iC>|h'w41%0~> *!p|ZTj:}M^Xn֐ڃ Qsih^uZy8U51vc] v|*IkSotih0=wn綹 5Ya<f%#N9a 5Z J*[+bCOc`YJHJCj6zڇMcz'CW5.{5QV]":C<5Ѧт?c骦 gJݳ%=&9)7uޚ 2GHɻWX LPH&oy8Jr9FQDhp.%9 3HDZ0U>Y15=8+uVVevMŰJī&YqLc<^U4)r w.G⫖tgw۫|6T1#f mA>ut22 ,Q&/?3g9Um~틅6}GA3a*\r,1őMmZtMIAh'y!y̖zA)Wθ^`Y<]^mM/,pHAsL;L<Dz4 4X\_ BSi%狵02/aLmNM9,i3/BtAI:,4hZ'lbj!}ͭvRLOεՑsَ2U̟4}_G<E! k瞈Z#8c> =Uks&q_:,Ax~a+ݢ< +ɯQ?7 Gy<[U@n O'hasR?%4I-B hg͙q t͇HKk)+%8d5ĔX6=t?~jr$s Y+BX(bJϗa|M9 uvS2 9M$ULU~VUUNҺp J>XFp}ix`I8]kP<$TNMz88X{+`]@g02 >Vc8:NIkۤxܦMg elr{H'm]X37t!O?2yAdE+nzR H\=:Xƨ/`@FAc_ӤJɰ*>AbF?RH00!3r>C .Yx-1a}|i<3_x?uĥ2_ R;3 "l8f؈"XQZuJjfvutIdG*;v ^D 89iJ\,ly ~bFqDoI! ÿ5!U KY 53,U^OSFP0OڞH?ePzPkyKٽ {8\NJX>VqA|t2Dޣ([i-Md26C^/hU© ewnƳ*-}H9FZjAK_pyHK7='70 sV*t f^w?L}ULHIF4Pw\b39:ضxfW,𰺸gāLX? -5!Dچxm> WZ~Xuwmv]jI>(ʴ}`OݔGSPv'jv8 f@ T? ѡFآ.v7TgLz FgiSd_Ro4Du'yh9>0V.PQyM9Luv,;2GC( xrNXC xXb\y19A ?`Rvx2Q4ACj'ЃBiVJYLc'O=I9pfYJ]rkL}Ym8dēcG60oh~@G]ƀX o1`u2#̾f#lw20'xW(/vA)~V ʆ{'Bt 57&=՘;d瀥I Vfh4R)7O8G~u\JNʦ~(Z&lx~#|c3O*⼤c`pX[6=Vj'p XUt܍Ց͏W +є>&pvvVD{X{Cyj/rUi9Dr7i9dw 2$MHymmbFrW_*šֱ LN&3ƞۄQLNޢ,;e9Cr%2"嚠2@[Ҙk;K8JLSG"ݥІn:yD:}Iws| @6c'tWhUm+P`ݱf 4DU%({&ޕg{$ئOw+{6i/Q=hp)#J7\J-@|VDz͌^H^jӸ҄n@v:6(kfTtlPTi-IVX\|oZ1#Ӏka3zͲ+ixSV%?trxYo{}w2m$U ;qfX5f7rjXhgw򊁁N^'Q!!S@hzAik0h Y1 tyrd÷mTkN^^R΄nr.W^6 ?܆xC)!5HAI}"b?_ODg_$1EZy-/Ӂc]Xm7`ך<.jxj*>inˀݟpG0wTsP/N358C+*?v[ Ë;I(+;KI,.3(@˄ߝMb= ;4 ~+]-2&z869քu *ŷT'aIv5U3iB#ÏjC*^l LBH|c8vCb ` Cwl|0݂Yݰ.9?~nkJ?>\ޅ`;(4B_L<ޚ1%3bR 8K~եdb+Ԃ[ؿPwGj>X.Ba.վzh嘚KQXa> XuzUr!-e~k@Rˌyk/!DU\ŋSxAvGh[>se[6u 9WE~oq v0}`HWhIt;ZE!2DdQ\Th&ߜ3 iwkfs=\tHgG_'pޫp 4|{/;犸Q8=8ՊZ F tlu کH`ʘGH @diq}1H"gzn6bHR|+X ]+cyУ:,{Y =4+JهwbX_sE_&QDhA,޺tA(9ϊL.tKQ=)z:j[21-:=dI6B2ߓcNrLym/Uäe^ tƇWO@HMºo`c<0N̮Cf]^ɉIbJ"[؁tp6NH'Ɍ/GvSNϭ )G&8TTgpyG~hS4j-vB0 O[j3 oo5OXީ ,/;=E/G2; llIV fJfJ}\mc%HVB%g6f1 oKo2ww;KF,uCh(XIj6X-*bµ}ҕK,vp myg3"2[n:hITh0VApW7**e; K`^ӽq@rI_O _^$WCZth @b5Z\A :o 'VPK+lJnlϻI:wL鑃_: %'q{'}U+c+'NNx 6\u҄N}m7 ‡!}q%aĭI,öx;Ցbl{P/zD e$VzIjRk&f@4>_@@؆lwheoPnƚsudb˖LL]% ;DQ\ѻx:a팳x~W8J8}N 7ҖR+eLhRI;Ya6S): WS~vdR!G>Ig\sW"ZLJl~*'Nđ &=k\Z;FaTVaDf¬Λph/8_#y:sҔxl>G0`u`eLES&>&\PU|&# M<){|Z$`҈*^dK_LKs c4K[kvlTt-> j[$=^hiP_/KBG Hg擺NUx:U渮IU(W@=0 RAJsѽ J@lar܎fXL:R8_`4T"|8G71jILQKdTg q0IMeڢR%i&CJ7oҭy{o*_A/gĚzdn6'LZ>_xrbT+bma(&A-<;!(X1?5y>*I5BKPd0JڞYo>Fj\l \(DNp*Q)~GE1ڬZ],4;6Q DB]4L c;]h M/ZTc$)O hǐ&"2BUoIGxC$qz-,c&ՖmUC&ł(~aI>S۰c, r *N%)5(a~M=n:RG`P^4N6 ,VaGÙn 9??0{Z U"ʊZ4hu9mLwlx 3jF`b 5e=:C>WeAWkڲ|,pas@ ڍ0^= 8[%햨HX2pYF\Fo铀\k E='i5[y?3M JC8˅@B٪HS_\d̍V<92rˠ{С)LZ2n%Lb5X†gM8MR՟CbvX T[42[2h²|3{P(|,D$"ǭqәFgoYJC7KCUJ_X=s7[t k`GDl/¿cہ y]s8̓ Y8):tr[I*"~N)vPMƂ PG:-ɔXIճ4!X("x ve2RڗYA*jF5H&&ܳk{ep,Aza_Q~$_t#ǜfKt8q(*"~ t_``>Np%WAAT.o Z.jMa7(>b0"q,F-H+Q3qh+l7b P)Gܮ|nLJRW ~eQMn0/E| "K> ) 1pj5F9_,T3;4:}Xx@'`)$vw >EXq AMhhEYvGsʁ0ě6%"'钮7߷fحo=7$LeRxVv^Lk޼c}GC Bxб~X'W,Pg z`OWG5 uLY%_^gR"B$ 'lnzJMl_z1 SCKIDj3 kuЅYUz1B1*H JhRzģU?~5~З&HA$AŲ N6TY X]oPw7bNlEz.{vfبǽPZM%_,E6LɯX,漿`$BA`JWLwlkH):&͏;eI( j(NƲ+e=hQSt9.p97ĸt- d`V;O`M{&`=;JgXn峰 Hhsb6%s`!AxodR;JSgZOrڹS o#mAm> QrfOK/Ɏ'r%˵"2;ԭ_Wc\Ka\5IK-*ߎWSh_]@`1;A`orYiJ|y};H>|בiDGwH^K OAk iN fu1Յ)ʄ0W B)o0vBqxPvK< w:;^'3:Qj$R4ejM%(R'uj\ĎڗS: _-\)kdyW{9u T(X+!4ث)"YDvЯs1g JIxu)gV?n }rD֍/KdjUN ;iz4Z]%TƳ>#4]rJT8{ 2w㶣r(Yljyj_cwBUk*N&[RG6K(W kvS9bkuC(miDkgLN"FWT+.2%.Puܶ/n}_j^,l4`>Ԃ͸,z9$2L[d(a 7. B/u14WPys@m4Ԁ3R |fG?(Y!F>s:ILz7u)ǣ;,d'vT4)=EJ+ߝ 1%Xx;`EԈN' &)a·u$ zBD"I핋mP0Y .`٦2xOڨUAVD :lRzc ^kz-̝Ϝ38-kMzz?nj0_ ^$$ O.;ft]GtOaЩZ,=ɸPF>OGdqa䇵f;;|u<4+ELT8AF%I<'{5g67q@й_ۏ hDQD2&/<;P  ԯ=NjGFV6m? =0FYe {v:`\|aNbb.^cL!X#G+G{UEDioXa[pvE.Ӥ cgXa }YswHjRH 0]f֯S+4Sc7Z'箎J : @z wCЇױRQ?0{!ZR wB.I=b%zE%q+@v30`Ij]\%h w܃QAW2< "L̷Bn65?=|$A4nTN+_4R? ȴWj#'SxLzB}*brڊduH@} Ρi(+rxCM5-nooc%!H~" 6bI*6=h+&ٖ[2=ܬ'*XH4J)@0 )߆ZñÌÂN7R犱SH$:)ܵOi~*c/ L s^|M?;`{,Ek{"S %C_Lw;CE*U>wg{Y4jx^$K%XzrE0JZIyz-E< vI/7+@b5&Vj؋ĶFU+EKO΀Mq T!xv&T)J"2x"8\=2:Q:CW q8<XD?*״@N4A~H}^_VHowC}^& Nr?%tDW$R'F]3;'Lﮭ(2eJbTOCU4龍2|{Լ`\tg}r6uz]B}#gрHSW&24 gI$Q ~Z;q567n kz6 B/rj?dk!>UDlֶ+ѻ|Kӄm;7QQ=]u3Z}\7ԱBN3߲$· llAU F咞՚8|5$lV'7cVS"(k vmDH P u/m.,:O'8PRwƄey$PssSGnJ> nۮnΜ !2UhO#D 1Ap‹˯rؙE=:j =`!>t('U(87@ d\V(LBbez=~h!tFাu/6H5OW[/ o4%IiZfF瓨cCaDmCU"ŵMBIsPBj uj({&ϭ]2Ұ y5F7àlL Wzqr26{fwGmv!Ȯ"&4M@tQDr\qGQc%ұe$e`֦~ f}":a7IO`񠡌W"4UsAТ>c/E輍rpxpB*p0#۩:LP_My;z|nSڈ_[K1ҼE4ɇQ{զޥ<B}c@k%]שnn#v0 8k# j3UhvS/ dO1IG[!0w#Gc<@xT,*/|\}cbaR;r*~AG U{{O ϴgaCa}rӎVrD/#c)Fq~2v3!ў)*%&lR&R'_oD0ư0EN?zѯ%n_}xtDh1Bv<I)HL<lT_ڝuLб[!EFksUv{kАտ[ۑ=#ЕYV"~PwvqeQ/x}U&fvE&bqkXcn塜Gfǹ-mƴ> Z˷ GIlhXB ä O; k8G F+C0yC"堵iɶjAGpʳM9"bDp"S!ڹ ,癮?MX+,4 ;Z$oQ&X:=?vHIjɬ܂HU{VnEJ!Ћ+~RL|Pror @qM@J^ 6dְhNx5q@, %H_ܵUS BLCi/ͯli{;48~C7/{{][Q4-^-f6fr @WߘgX' Q;#hvX7EK2^15DI ## }Zwedl57u5Nh@D[t\6W )aZ*נB#)sg?Fo6!4]N3j(*(٩++:&`w(k7V!k)ϗ}}62VpxЉy,q9 3 t&m=0o:"-iq4ݽ'ZQ~ăX_pCGfzϧm0_JIv?Ba~.;1}Uȧ(sdޢ6MUNc2ɎƗOԨAH9 avj6p1009vX_9 \-`Ӧ;9VSF~<(&Z5nT8 pZ٭X)_:6JBmEϪb (L>d~I᜹ Hgw)U^!r/?`HenihR7j˱f+T%yDZCoXUmMPπjMf҂~w QY65=WJ\L=?:3<Y&*M @[St #Se.5Yet4g/GC_#f WxۀHGW9K!H\E^(?x>̡A]URI'ӻn?F-zHIK! ZfuC7N@5-reZn8R[Jcn( v8B<ȒC> GϞVoUkE& 4hOKijykuMmoH| fyΞ=ލ/|o\1 ֡O:/:V V.9Ȓew(.˥dxHYb3]gGFm.=B98ӾT 0.=%ϹҎHy~j|v>AgWG53Bw2!hY2b"wqfߺ bWM!R*x!ل$"L)vVs^gE_,!{e!&d#įr6Ǒy#{ }TXTܦ8?6lug}j@|YWÅw!}QT0EB.T| iʂ`쭍#函a/b/|\pO"}B`K˙<Ԋq!/NՓwL`!4yZ9^\턮͘EG/g$/xӍ+'={QZ= .~4Pm3>6q_ H5 8MCh 5;"h -x-c2$/H8,(p+^Hc#xk3v'x'1 ڗ(8!si aIb*zs֌o<^+dM潅8Mjw@)Bcu%l#wg ߽m~8q]G-h޶G._4FwF&smd/TG8l=vpJvbLŕ9QdwI~l_L7?5qd, r&4[m"k7ik} M"dP ZE}x:N^B{xkN/@M3-ٿb?ʢʐܱVs$"n)mNBYћEX5xB׫{B-%[k8"2bbj&g[l8KnH/vN0n_1(۪ n"Cgƞ;T:dTv9t,-\~@RٔW+eѾ)|b#sMBlyuת0$~à^VU(rSW.DDɋNR= 9EB]ţcl_>0孂{-{wZNItgwV% 3__ƈsYhߥoʹo9 o92bY4@!) <3v`|P{}alVF۴ފ[剳yDcMĂ@Q\I⫼R}2yn1a=M-q 7QN#(noEtHu']RFX(Mh`e(^Y"}.3Zkґ% \^o[.ۥ4&4~LhAIkƙQP!oWZֿbG.22JP3 i4ȿ&ќʿy|1fT"FWw` L Y\J7v(⌯/yHj0wN} Ww#q ؽ6ڐȼ)~b5=K)[J|&\XЗ:Zs)5=Circ<}*Wf~Z /,` φC\|j)W&W\\%OUmA6@6].7( ?Aae/˔  P*E+LeFZD `7;Bzb5R$B&yj MʾC(Qie5Xo_' 8?VQu#Z`2ToͨdkDW*%uPd?J i~tbt n{/T_-3a*u9͐ZN= J19'):u;"|K{]$SFw£.R8ʋ)I\ۧ#^@?@"T%<_.ܥ:̣oUc͏4xǧO Qbg0R7UxVD o+^&UfkL8Mz@ oYjmvkd!]n\҄\q&(D. А&[4o};!v-́bvJ􎞿ݙMq # Y>v%GY9h,GR.UHEeH^~ %͖a>l"N+LPǸV.jB(MAaӶ)lpX? N ;3נV\&ЖW^nq$d0{_.uB>rLeĜ.#B襘[/-x q] (?U5npWKq[ gUR`,Ͳ<?0'8Ic][Uxґ[9d?p#5C4ejTFZ<$v|!h#9W܃yu3jg_vhwp\:fJ fֻ$z>E6c@p?n<6g a6o},P*W׵t'8BׂkH,G<OJB>mKHj Q<ۛ^a!Kڒ$QAR`]O,APLGE,X_P1Sr ʦs{9P&Z2S|<^k,},ѥkK?V/RD"_ȩyB^*E1a)X C֒qQ^/\IBg\S*ı݊U@MFvn*a?@>8[6gXƄ0_[j1:l8I/q~%\e=,'Y*i GdE7q.*]rr̫5̪89ZC YtesMJeh5uoː̶*~b*vv /ۻO%Ƒg0|HGDLXay #m[[{'h ^kۋ;B,Ͷr ܒ XD|Fԑ&ʐż.+J#Z ]~N OwM%ܷM CܿڈC~1WZo^r֒( \4*eRDY`[JHFRNF=--L_S*hά: !Km+CW,|>װe]fVEš2թY $MsLufHq{t oV13VHsUs ~$G?X9'CQ\&KRm;:Ўek;&} .?GAC@gOq)Ww"C|Z |/&9u>x'Mw{Sj`FkE-sq$zycB#^QjWTHR=,xWG!)4Z)x+|9fqcaN^EW#Fo,8IR$[ns4tV+Tbicр Wi'uHNe)%\p)궺pߗ۸ߙmxsEiJVeށ\uvTQ9)̸BIV͒އA|@p՟2Z L`}&h j *Q!Ju-/?-b(!D]g #P{MO὏ccl'{ZV\D>v /WҭnzmcR~NeF$ BQPړ 3X.aϒ<]Yv@}i $^V'1RMT/G#!t .bͥ/]X߆Y.'ݕF ]qU`puB3e9ڣUo7ITB-b~)&̥4w/l lcUQcxzz<Q2Һ$:f\y ؀7u!\Emˬ"Rlm7 Ʈ6\mȻe2]ї]\֡^BlD–h88@ yw_ x-"3d#x!-lqvJN_;%IS >X S4 eQ3# cccuѷqR>HweHf&ݧ\!27TZ<1hb7~v2=h$FI`/$w{;X3@Dkm>3RWG/yk2%tǨ|܌$;Q)2XDT7A uzKm'.$")F)K'b_A km$O 2Maݘӳ,nS]^DA( bԘn,ɝiQ 2m & XKl ;bӋ6VL vt 1)H9s~ )1_1WV$M;֯jHrjo+Q4-1dԂwk=^>I$8:2 ZH y^=9:~-RT$h`v%fQ_fUq`7|u]d!x:i#en~}zGS%b~uq^%g#E-VreaVbt&2r۴VbVPkk9?'0< tr6P`z H6Et +U?mYXkI G >cl/|K}cv/tdhۿ~S ]hH6N`o "$o;+FYp0v^,>9y o,eP'7"!m DY]&hVh(Eev O"~wI8IB8n\IE wH ھ0zv.]qj g,e+F+~";R¦m7:ĺ5Z i&MdDjx VMvAQ}ƔL  UjLT7RC`>"ިiXIۛh5fOQ۩:ی.=hQk|;u.V1SqMN_2G=!buqȎMҗmW@,K~>m/A䧧gD6ʝ7 JcLѷ { P#c\.a ReP2c>j9ZšX'cYa1L9~`5DZ2X9"Y!MƇ6+o8 ׏MdlNu/O[$bJ̡gpJDD?6?|T-'E#qɆ>罰YD/0eCˢ;4LXO(l`Q `w¨BHYC,>T?5K&~~K&$c|a&sF~OV_-Ogxrz?RcY* e=t=3wbQbq{QI&ysA |CU;)B ~H_poX}YF/FOd P҇@W}vJ/_[ yN˦31u&\1 *B]K Kwx3tS{Y<(0%H\ mz,C&K3'WH($QQ>_LSfkOHF1i/N7 :%2 iH-qS򤢚2ME&⹈w)!1O Yx9`\ȾjEsOӀČJ˼TgAaM &_T#{z"WU>ZĨ@.Mt{;[O gnN5'*ߜ] X!#ctFҐ@8^u1 FOQigN/ya(ðeLJ+Wirx NyixgIeEЂY|E3L)gbRgUp qL0ɕ+H&xi+W 1u(ܥkB/4zZ{OW`xD;6b7+ t{+e{>]3Sjo5IلL q;q;T'=hA+qHr^0f0pFeqL8b]E/VcgD/J@!.R T2#(짙 EЪ5.uBSXc_pe:n<.p(wW?&Xkx8xF".{Q^UC gr8GT}M.A~2۽逸7{H:/rGNevu:"tԴB)̮c IECK!7"-&ƃU)چuiזVӆikT9 #,iPL'L0uؖ*a qH"`HY(6ؑ"wfZLW,j'wky`hIׄXNpv6+Y׵bA7jRw~nBo(%vFs\ oyT^V=_յ/ϺP`~y &@=}'moLmhO&R<EY Q]w7mީB",II snYT4A(tG>U1b pg|c"ʞ~n68@9Mݪ4'!G7=O_V9WBe^ܢ9X 6 T1֎ҽUfkJ_i,Թije2ߖ^=⤖ "80T l`>nӵ߫Pzi`ީWL =fGihHQ0:4e5UOϏfW,>D;ewݮMь-kpͯU\N#t-,骽BC7Qy^ Ĝ!^ _ĶKMNzkڜ6QbWc7>==LA:rzf?@g}kJ,_eYtԑ`@l~U+Yraf( [NA9|[|uXAx:I7FO|155h7(_ξN`"ώWI`m/NB 1fԒ +e؁rr"Q`HwO`D%o>4wJE8`{zx` 32`~'Őg`xF܂v'A:y?qr- pIT=Yjr cttaiqfE7e|ȐAJR 5H"c&9Nٸcuuĝ`#[(Ӑ"8m}P u@l~&')6yL܅;B )Kn^^|2+ gwJQ7"J?X&9Uc |Խzw)*(&wl莑Zne^N [V e .]1hgDqNwӡR[Qs۷3ñ#fSK,>Mʎ?h^noRˢwn@p,,I؊ҀMNz')j6aX6w!հƒN3r4|q,tr/_u" ]P!&+qB,gIH 4b'|॒R8yv?{:cy,dՆrŠcU*@fOU_,.ӹۭ( O8 DrEP#W|a~!h>sBɚ2)Ϻoa*^ ]4HJCףRNIBN(tͯk.P]КmOck$c{( hN\"_!źab{}`co+v= };yQڮ@UpִHd+lFʑunTe1UaR`ob-`z?ߣvvhڵL|G CW 7oZux@ 2D$z`MkoFLDw&nx`ӊ|ZnT^wmF650,RmWX=I._dvd dS"HBBF?;0#YC:e~1& L'#_' ??&]5cЈf9#A>(2됈fJ|w^4d5ET_9"h,53Vg8M$>! t hܥ!-f-җgsy>{e $kUeU|w1 $^2Bw91mkj7N5X4?71RXg;A2NB`>#çv+/bJgQ'g %+9zC<"+(zy:Xŋv 2Lj417ٍ'ZjpU#!pbY#;=&d[<_9QBaMPrmY-}+V)'N~NfMFqdq< %)QpYGW֧V yF2VaKz7a]O6sa46 > -,a햎>Vn"CoҌB`NpV.O%; emо%k7S܅b-BPzTcM- :6Ma(te(+Ͻlk@r9ɡ Z VǥuhCpkD*7)"3.yc'i/.g534J\TrŹ'NmfTbzݔ^c'qJPnq# w }iJN FRjk涁5so N[+KKB`꙽ꆱ%IE{%ޅ&AlG_43rB/^Ȭ|N/l!c;76Bj⹳('\3B,?5QW;j. CLxA>g0m6^(gjf΁_R>F52F|/*c䡐 8c&ϝUmQpS2.WY7H'4 t?QzM)&){;+ƯE [k-L&9K$}W9g-eiHά5Ώ$+7OƢPΊձG 'xmY{)F39_;#0e_MZƀMHO1qk=ffW 'kƑ$4:Rf ƒ;-KG{)ZmuJrc,+ sB[ B:N*Ȟ%~1@;A7%fο(j?I ,&_֝Bu @)tXY ' H$Lz3Tȫh]QN`ZjW?`ͽ5SVSyB=f](`Den릢|V'mJ5/ &s޴ή͝ɣu}H_exx{yy=h$ч\I&t{ƻ uT9DtKDUQWUi 2F4N0#y9ˍ*<ϗR(0WN6TT<bUkY? #v̨7XpȄ&vW+pG p MI ( M!܏z9~'*֠__x.8pq=曃Iq'Gբr}8'-/}yHN9s>5|[ 0|z4(WuU7 U'3vt+kk|'rL lߓB S<'Gܿm에mQSQCPR}C ƣVU/6, ^)t]R]c3h]X]yM&T A4Pj#6k~JN*ɛ2}:/mK^KvֺAkZrk/?tb4$9WSpq^,=J SAQ@9H(n_"T7|?a^afSH]h =ј|:í&12#IA}V4-|[v]]]G`7(ClZGkOȘ{o0?zX;lL9O\S~S^CF%zxVUyJQ=k=J[/xA'w=Z$T$ͱ?e.{gy@qbC-OVgB?Qጋ$ijֆK5B"[$Eta ${ٜhsJ:w(_d$F8^3xM`Kf_e@+88S^I}>< YΡ>h56~BВf|bˈF9B*1`*qenE)qx+oò|m<)v>ōR Z]uzeV.D8K]{})rhk< R- z\З*z)T],uf[5^?HH>CMRga,B?bu4ݪ1ۜz`&8' M̢O]>UAʻmұlӈ,f֙(?`V>W>F@9UIF}w /O 1Eb ;Snj(ɋnMiz W8cO%E!;ʨē0|W&-cʶL?S:퍳9DC~fʭ Sci1iqTdQ A  ur\6Mk#. @ =^ݤ#)^} |rW{Y+X>hA4.FA*CEt) Զmos,Hܻl2EmDžJ,lRy "q0o?Z?W^֟/'hVeg?oV/Lh#q|"Փ}^bc҃c_X:M̽\9 r:`^V u`cN}q&I[{myd?ٔM䫾zZ0\_pKH:ty <ٛ5nߚ6 (ozås{{`!9Ck9@ÆXHv-8+5Ԟe5 $Izf齛mQwNfu|>2OHyփ PM{{hSC梲9,_|#r}2#>G\P[sx5Ł4&oR#HlZ+]NjY FFZAQm +wBxTh@G!3D7N mwѦ( N/έWbY;Oo̾^kjwc3 x?-AsCT1Yk" P&4T,0"X;ʒbؼ"0o:)6WnŖw#`e]Jh1NEȍwni}>sQWZ\ ^KjY1 K6sY\!0yL贶7߿ll௧6Ѱ?jx=~bq(/ZPcRpB拉#v3σ ؖ^ .EBOY{lBr~%Jt!9ugdmDV$JH(S]u ~WGCRq0Ry)BT*¹TcqM^Rdv) єg Rżu y *@R-}_:l >ѶWw%8xG8)jYO{aF uME2WbuöK-=WGULb->6Ae8`&skG؇~k&yct"YM`Vu~ [3lAwFJ2LmWN3Qmy/ங_N4պŽy[طkJ;N2{%f3A2D?6eДTd$4dX@m%A<ױHVR"*Z.PDd-?js݋f#/iXV\}ܱ _vr";ҷ_$O~Z_Dldg[R}6>Ä}4|;F2j4G#d7Yﴤԫ]PlFcQdhL!` L.?)[HM~Û.|{-^EOvG4zx͛x齾5w]|m@0Œ]Jw/x yN?QOeR֝D=ˏA[yF7T|e&xZᒻ}f.UX]-m *Sd,P -쒛=@ܻkfy8FJ"]L3ǻҾ瑗9` c}s ^޲zCtgQ6?ҞbJ(<ݏn%Mc!t6ɳVyH-IG˔8 %HłRV9ۧY-͉&|[:&ƨl D&l8*Fͅb8h;eA\ LN sՆOnƢ7T?T&<O64KRW1Dz$*e(fl$RyN3Jn C9R+Ԁz/S>0Bf6񩷁"o-"6X}c^o j1HS°Q/&Yد %t-P=FutA06D#6CE~12z-#7WtՔ.|TZbl'Xl4͋zҚ@z gvQ̂/ĜTin;$iA˜n2+ET3_oG̽~;|y$` Ȇ5G_nij̢RC{9Gȣ O1D(սUy ĴN*WegIVyBa4 c{gܷ[.ޗ06Ԗ{ed=đ8C&/\6CH)s^]qlF)YE3eABL#|x6|F*|ܺfW&ͷ ;`ēP:=78Fray| #H 3u)J$:*v )+S+粓i'=HR;$,Pn7hn$7t/eaݞsuOWNƵӎA!(8]xl?[[jHO~y# ЊlQOB©o`wsn v)Y8Jz=(#?w}g< {m=֜95Ïa:l_8%iU~=7B>r$A!^@, DR2Eѹ*{u] )ݮaѭ: '`cY٪/I)?8,BbhLs. ԪV\=ֶޗ )ڦ=˨4.:]( x3^_ G WQа)`\K#Ӝ]8}sSH((K#r,X _|\sz/ lgc*Wnt;Km:iL@:n}m?/׽)yyNIiiYxc8 'n՛0ϱ(J .'jW:od;}摽"/XeOƝn%5~ZLg6)1Jln*,khN4*^VX{ 4­ {(hhU^A_hE##5xگ@e&4u}'Y=Z*7J @YhZݿxۦ}^ʅh#*)(rKz,njFC$q:B(jyadSKr.*Aq; VI9莥4vnUNhG9]/#2 ifxIEHr19=#mHf[ieb$r%&zЭe-{KMf!D8=bH~EP hRmCj1d(X7=sPN +Az`p*J{d_ W&".x\q; x/f&ph9AJF~yzT*ւb~E/G2Q4$ɼOx`=k p__*̽ c- GߙwkHB*#uM`xtϑ`"P8濣E=w gnH#6fO+R8 -f!hU(,EBv枖^fECS5X\q#@`e#s4 ;s|Q7$&zo;wR.m+AC#ȸ$]":O3ǖחȼg\1Ct\*?Cd[kR_]}f\Μ.RsP8b{|ѷ=V*MBt/{=TaggVfq+cE71^qHV؄\E§y)!l4)HzԄP@~&OEШӬ gyQ%Pz"-(w9l.ji;K;.PFBCwI"^B!]Gg354>S9kfACm98dH20&D{v]LlkpiKBS@$yBI Q%TPfZs eAM 2RDb22&C93M|w\GhK_4mCI5`e *##/I$]M7S\y'CЛ`)=ӄ $LVW ~%\L:eF%=7򿬩agore$of?y 'JF>W_UpٍPb4L*^D5 tkwL'n "Dk0Do٫Cf:.axC1R:N6#¦X.{˷JVJGZ$.G| |"FǭW,`Ҋj })3\ ,*IMcGDH[L6O6Pe2lrqh2Ri)~z&q"*aF_"bw l/ۡ8(!iMhpqGсYb+o$ej{"v -wh{2fQ"5v[J %?)P+owIT|e'P^To`QE7Xb6tHO3| 8;]r[e7#Ƨ)n92\1~ qۏ86^>w=2b/ zdG:q7b4g,N6 'ǟ7uAD0HMeF?@ƌ=P  Z/|Z4?R'9yպ_X?X, ?J9\Z9Kb ߺ ֿz^y^<7puanN[RA5`Ս hg5sh %vᶈ@@QR77ZSW'% f0 AÒ,%Yz`Ziojͦj=iwt9씵&|ǎ.:"E_fMKNA[G{jgSNYs*H]^Ko`&GƖR:5t H0XHՐM,krG/˞ur/NCK]2Nkb. )w9 U7w9C()Q%1+G@P-ڏ@;6L=,JQǺA>iBl>r}>:'{rqZo/sig'v` -{-]Xw=q+Hxr@H ;;3dU>h(?yh;-L1+iD)w u.0gcKPQb<1'΂d}vwسPƴ78k$A(֨{& J}M(B}E:[kKIN7cP'#nBGKm&ۘ+Bse@[';9P_Xg{H-1*e ,p u#vr"ւZBaݜwꎛϻz_fqlNQ1}D{HcxC< ȅ͋n5HӍyiz:~Q&<.ԁBa3vpS>&nvC0Q/0kX"uW+ma|/Q&:ϐ$1֚.]Â1՞"$͢Z={y0&MEq+XQ?)٥9shP*b\1#;j!"nȈ $9'p/LZ0+NLxUY[ɘ[bn(Z2PͲ lnvch6ha&zp)Yq(C'`LlV\"@lW ˠi !DwڎݵouZf(Ci!30~W='0Ci"p,[fPZ7HpNDiJ% OM2_+wx?H>_Sjo̝c3wTT{>tG(bX*\Ji_xL.5b+KcNz$ +I-Ac=ޣ55[$mT{UO|*nN1m}feηԄx[xb,5PrY9#Hĵaʽ,ոTALdN* 1iy]_R/ ٹLGj~+Aϱ;9n&Lq FJpp~--$ NdSvo?k3Lmj!Vg`{bă5')\>+q2>"̭/62Yb5`*gJ9;H ?J7xMT_w1WBh*[8!WּyC(?`]%V /&aU^&I@,yR6Ъ|%Er*,R=b6RK'3le\^kzF1!XiK:5UnVCO0VXF]>͸R_; k\Ԏxch!ao{ f. pg4х`Fѝ!XhDjs.߸0ϔ uxCf?ڨηDxڟ$Gtpqvx8b_'rt0w&-uCQFE>`o$&*9.smO`;}$q1FFs+7 t4IU J;MSmbz7nl/a7`Rd$IC)^CXA|I=ZZr?kUjQ?2Ʋ6Xi=rhZ kp$V܎ d̉H|&CòwRCMV21H}+&O&hk(wc ~ls,S*ih̔C+ (GZԲ-2hLe ԥc}hP ) r9lJƒ4?9R]J~E+TNJlYux]+`ׂUPdoy/sw>mXM>BKa4ۤ&` i.euZ]89]\nŸUدXC8؞2ĪNkzU(:RlSWHzyP3DTy'_pqp[}ʩP)4vA/6~zZʪ jES:eWC=r\7߻nL*M>ifmK^( d+xۣFEHpyrbIBxqBm #v j)].K9ijî\)S~ZNc*zYQaFRsG[Ny;ĖdxH-F]-.GC8>.D_5>%#n15F\;WgrEEc3e'%s XvՉ^Ex"ٝwB09 Φ40gW[n iu\ACbh I!7gYϖϡ2^S3CшE T#m"Saq("y2Iݒzg>B J.ZzWЕwIf&\RەSs5G+mEWԁ&ƻj`H ˓YI@fXE9VY6oyetgQqT/i2c g4[K*=< ENW85pKGL=M&ήzw0VJk/sGlf0-g/ߴ8Ds͛}VUrN۰P~+!θZȴ*裬r8注0f62ѭ4־H 9Z*%G@.N=AcES[gq-khA0x Lb~MKcBex;bG]3ZEc91&'=y&cEod2HS,.20{JHt)z=uG#(µ:Qn:%,]?V}6 /: %8xQ86Q}FE>L5Ț.+QF-[K)Z:|~g׼~?Evwrk ZO]M~SLM!WȔm\J6Qpu9kl9L3B4T4D RiENk1Fm=^`-L]lVV`iV3Yuqv > AAdSS"咕e 7M%-[MϨEqv9I3D~8SiV .3}O_35$ 眰I [>ߌ01xஹrx[hM *{W&2r4L YEM3#v^^VϔYAZHoӰHOXx0ҞZʿItEQ |EITȝ1&?&*W1b}ܻmyre ZQ|Uw~S5hsW潴 cYxc Q4"2Y(qleFq.mp4F3?k}+#<'ȸ33fjc"#NpF{5f:f ٬$F23++ϺSml 离vt w6} `y P"TޟȈK9x`Tmr/kifb!uB5 ZlU6H|BNM[\cd[ՙ[tgSȗC}PgT0 H&4Z->BLns2"ޗat}]>t{.UGCI[/B<:W|R>@* /*)w=L>{9jxG:uoj  `FrU vZzWMm 55h{iWv$t 2fln` j;oe \iJ 5r3 ,'>- wGHBBWݢhivb~ne({v/E3ǐ<}21;!kՋT17aU} x{:+>/4 WbknIIU\\GTWgA6U邟\!鄰/WS@=:N.WLEuc 34 D7#b?!|Lv.Bluհ ?*xou9*( ѮP5&TZR٩@ zYޔ۳ksL%e2FwG(hݰOج˯$b174!^ Gi,I-قB\aV? w$IZ=A3cTg3{6&7rD\d,>LV\^;S,9,C 04(^Q\bfkObhf%H&uDZ4fɨJb$iԂO? / qQ57Y̅4)%dIn-3 !obռ p>Եh6Eh.D"[H 8BpBYko&&+6^!s,?Y3'.+^z̠x:Mty4kqAZ7*Q="+zHJ"ﯘRr ?;|2a5"v0l M,|zmG(} Õç6zǵW>tiҺg{׳$ -&lcG}s:";^<^mi(nRaVtpJd4QDH o+[JGalH DOA/)x85h{YG{{zM ? _@yn e(1kBmvNnZQeՒ)V68܈6YSv ,E;Ӑ^g<a5nADHQ!lz6|3߻YX)|BLp-T"꼛H)0;AT s-W0U(HP*6ϼsJZRke$OȽĻΉĜsFBȉ(/,jFhYO=NG|6QY HO(9nnԙ|d[Dk~m/hP՝(X"]G\;xې,{|v~(qvn41Q^˾Q}3hi\M |jAccE8 m<\Bf?$;N6ۜv> -Ye4JLk\+8]>-8nCگ~4[\lNa$匨-`=2ШW0ƃ]v+E'fxkԂm㜕T )hHJ򹮞G!G7B)n!dv](B~ͳtW y7=p]DMnήf8bЃP y<ҦSNiOY?;]h.}S5OȌ^سI(E['oN8b\YOE}(s <_}njsH;TW8\]e:$h9 9IC%ԉ0p&L_h>ٺ8땖@(Q!v뀐:T~>fܩ)s&B}r/92fUߔ"67-~ !̌_{HA788jwr is CG@O%04K|FUO58i^2GyUo{yq@/MfR8f!jOH¶TQK()/a.N_i #T:,2=qfK]m'uJ!&,W)E-v!ZD1 J%LbRYn1~;|Oj=|F:Fc_q:7夶_ c'k+HN =/#@4ck4 'v6.G2$=Wa=qUpMX+= Q:ݪ׈}?~v8^1L`tkVD1gD쌉W~V .VQ~_f~ΌueD.v‡Heޭ΍Jm]0ellpU,I!|oiX}X&(-"ό3))f67xMC~@XUkT%+WHè#7jO{lXpD7˨g-]/;-q ĸ7c],^Ȉ38;4-,owC`2)&Y#47cW8/M|1%9\=3Z ؍##Ɓyu#E!6y!,z>9?=Sioi9AO1}?E% !EPWn ht 5]=Zr%vUԜe)u ?GhJ;~ma Nr?`ZcVmam~=*,CmaFrW$5ҊdEAW#*qJ/o0%gIL Cț qe E((r-ӌjYQ͹!QP#lH4Q T14n`#@0qgKR>r75(8|s)9rX`hMvr)1MM]CV +VdF8 )Uf5SP.ȒD0#>8B3 p L=Yĸ4F_Bñs\eؤl 0x-^|o3k.Z6p;cϓLO}?ϱ~@| W*YIq w.UvSx?(}>2(A4D }z=s0k;cx'HmZ9}J")z+icnV Bffqupzilla-1.6.0/src/lib/data/icons/exeicons/qupzilla.ico000066400000000000000000013226261226107126500231300ustar00rootroot00000000000000 (f h (    -00 %=@@ (Bnc(     #$%%&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&%%$#   %,27:<>??????????????????????????????????????????????????????????????????????????????????????><;72,%  %0;DLRVY[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[YVRLD;0%  ,:GT_k  j_TG:,  !0ARa52XSsl!~w%ys#w$rltn x%}v$z&x%yr#zt"}w$}v#tn vp!zs"}'{t#}v#smx%}'|v$ys"x${&)zt#|v#|u$x$~x$y%}w$wq }&|u#{%}v#{t"xq!zt"zt"}v#y$~x$ys!{u"}&{t"yr!}w$~'{%'ys!{t"z%}&}'vn {u#(ys"qksmzt"~w$x%z%yr"uo!~x%z%}v$~v$vp!xq"vp"vo!|u#}v$xq"~w%}v$yr"x%y&xr"un!|u$xq"oh YT96aRA0!   0CV }KGч)|$z"+0/./&*0020,-1-**01.++30,/070--.001+1-1/-*,,-00,-3+,0323+.122(23*%(-.00),2/-+*+*,/,.1-.0-*.+.-(|%tm @< |VC0  -AVga}#0·8-,5ʾ9ƺ8ƻ72*4ƺ7:ɽ8315Ǻ8001:54.ʾ:˿94¶67=;264÷7ɾ9:374;Ĺ85326¶6Ƚ9ĸ73ø7<15ʿ:̿:=:/ź8˿:<30<·7/,164ʾ95/¶6ʽ:43/2/2663ǻ855ɽ8Ĺ6/313ƺ640,%zsohVA- &:Q'% {s |"',7:).68ɼ48-,˾5Ȼ59601˾73/.8˿6ĸ51ĸ5<̿7ĸ6ɾ8;=2ƺ64ʿ9:=3÷54::ƻ6Ĺ63Ǻ6ǻ7:ɼ7÷59>1¶4=;>:0;9>.2<ø5+,÷4÷4Ǽ7;02:ƹ530001ķ4ʽ52̽6˿5386.Ķ2ö1064ɼ30+)*'tn" Q:& 1H~w",*(+˾/:4&Ÿ/54Ⱥ0Ǻ0(.ķ/570-ƹ3ƹ2-,291¶2189¶36̿6<1÷32ʾ6˿79ƹ4327:ƹ6Ÿ52ǻ6ȼ68ƻ5µ3̿7=0ĸ5=:<Ȼ51988*ɽ6:0),˿618˾5-561/+--µ1ɼ2.Ȼ22-ʽ24-,Ǻ/*12/ɼ/+).0)'|%H1 $:`vo ꎄ$,̾3)'+ο.7̽/&12ο1̿1,'-´.43-/Ϳ40..5ĸ2Ÿ2068ĸ4Ȼ4Ǻ5:ɼ52ƹ4Ĺ4ʾ68̿73µ38:3ƹ43ǻ6Ǽ5ɽ7Ź52ɼ6=.¶3?8;ĸ4˿6:90)9̿60*0ƹ3ķ2:0µ16-/+-..Ÿ1÷0ŷ/3µ.ǹ02ǹ/*Ⱥ/õ,/0/ɻ.Ƹ-'Ķ+)(-2/pj_:$  +C63-0(,0(%,Ϳ/5-*22Ϳ23++µ0˽36.+Ÿ2̾5/0/6¶3ƹ4ǻ497÷3ɾ6770Ź5ķ4ʽ78:÷4ǹ68937Ź6̿8˾79ǻ7¶4ɼ6;/÷4>8>ĸ5;̿79,.;ɻ5/+ƹ42892˾51.,./,Ÿ2Ź2ĸ13ķ0ö/33+ķ.ĸ.̾121ǹ-Ÿ-'Ŷ+µ*&*37.$86C+ 1Two!铉&ĸ31(µ,;/'&+16),42ʽ24+.Ķ156--˿511/7762:9Ǻ5÷4Ȼ690¶4ƹ5ʽ78;ĸ5ø49;ź5:Ź68ʾ89˿8ƺ68;.ƺ5;;>ǻ6<ɼ6Ÿ6,ǻ6<ķ4.02ĸ3<Ȼ5ǹ4ŷ3/./÷1-Ÿ3105ɽ1Ÿ0̾34,Ʒ/Ȼ0̿032Ÿ-ƹ.)õ,ķ+(*13.)/|&S15z//(0/&)ɻ/)(,45&.33̽2˽4,ǻ2Ǻ36ø3,1ɼ52209ɼ6ǻ5ʽ6:8¶3ɼ6˾7¶30ʾ7˿79:ǻ5Ÿ4˿78ƺ59÷5ʿ9ɼ7:9˿8:=08;<>89˿72-;:1/µ3÷4̿68Ȼ5ƹ41-.¶1µ1µ2Ǻ3-Ǻ34ö0Ϳ33,,Ƹ0ʽ145ƹ.ö,,*ƹ-(ŷ+/0))˾8Ĺ81x5!9?<-5´0&10'*2+*.63%õ0436ĸ1µ1ʼ368-.̿6¶3ĸ3/ʼ588¶3:7˾7ź5ɾ7ǻ60˿889;ɽ7˿8ʾ7ɽ6ȼ4˿1(ĸ)ƺ*.̿+,/0%69=::Ȼ6ȼ621?ɽ732ƹ5397ʾ6ź40,0ĸ3ö2ʾ41Ź16Ƹ3ʽ36-*ķ0ŷ0471-,,ö--Ķ,/2)$5<Ź84?<9!":c_ô32Ǻ3Ⱥ.*41%+4+,Ÿ09÷0(ʽ35̾45Ÿ3ʽ4ʽ59ĸ3-Ĺ3ȼ52ĸ3÷497ʽ7ʾ7˿6;ǻ68ʾ70Ƚ7;;52˿39>Itהޟ{UCE61ʽ1ƺ61ʾ8=ƺ633ɽ7ǻ68Ǻ6ɼ6ĸ4./ƺ4ƺ4ȼ5Ź42:ʼ4Ȼ38ö1(Ÿ1ŷ0574.+*µ-ƹ.ɻ/˽/0)$/5̿7:9b] ;"$;oi#7ƻ7-´,õ,'21&Ƹ/2*-̾29-,ʽ4ǻ3̿47Ź2˾568--622ĸ4899ø48:9Ǻ78.ȼ212IĻ^kޙscǻ/ 57ø41ɽ7ǻ69Ź5÷4ʽ61-3ʼ5ʽ5̿60̿66ö188(0Ÿ1476Ÿ0-+Ǻ/Ϳ1121(&01Ϳ39=8hb!<$$96jd!<$$71ʾ61ȼ6=:<<ʾ72ʽ84ƺ687bŢۇ3&ʾ7::˿7Ƚ6:8>;.¶30ʽ6:̿6ĸ21/597:-.6Ⱥ0ƹ/41Ǻ.˽58Ƚ74g` =$$<<=ɽ7ɼ65Ź1Wȩxʾ7˿1:8;9:>¶3ö32÷3971./5898*-5Ǻ1˽1320ʽ0ɻ3µ348nh#=$$6*17574ɻ1Ȼ1/.-ʽ168ǻ74f`=$$4/3÷,bʽDzԄ1Ĺ1Ƚ7ǻ7ź6ǻ60̿7=@7'08̿466¶1Ÿ1ƹ0..32ɻ3439nh#=$$ƺ92//00**.0/1sYϖ{pM$(+0010/0-04752`[=$$<^Y˧.7ƺ:ƺ7÷63000-(++sQwћ+,01/.,..023454c^=$$<\V˙*.02¶5ø755310'8úZ`X).1/.-..//1354`[=$$}zz{|Nk\'-+.--/.+,.12_Y=$$IZm{ނɡqK(+,,000/0111\W=$$^^^^]\\[\YRD1d6:KTWVUVUVWWWWWVO}ڄҿSWYYYYVaنV[[[[\XѼa]ax~Ѐρ΁στ΅΄١Џ̇̊ˊˋʋ͏Ąz#|t|u }v }t ~v w!~w vp!DA=$$;=$$<{x[њߢofԀdhfeedb^؄؂][_]]\Z[\^]XdY[[ZYZZZZZYZZZZ[\Tַe[^Yقp]bbcceeghhkxzz|}akڊ؞؞ٟםڜڛڞۡݥߧԗĿ}b[X5=$$<{yZӚߞۚwdl֍abbbb_b؉zZ^^^][[\___^[g߄Y\][Z[[[[[[[\Z[\^SٜU]XQg|NT^cbdedacf|֊ؕڞ܏bfwщ҉ЊԑޣߥҠxv[=$$9@`QW]^^\[^ffeddcbba`\pی\R]^^^]]^^^^`Wߏƙuk_^`eeekquu֗zwwxxՔ۞ڟߢߣҞxvY=$$<}{\נܥݤٟۡ؞ӔQO:W\4EW\^^[aihggffeddbaa[۟]]_`^`__`_`\rv[bceտYϸT̾wоprqԔtvvvxܝٟ۟۠ܢڢݥӟywZ=$$zͽwwڦ֦۩ݯحٯڰ۰ͤts]=$$<}{aըܫרڧݦ־_qՁѫ˻{Ϩ̑֜٥ܪܫܲڰʣsr]=$$<{w`ӧޮثܭܩ֛ۨηLޝܥץީ̤߭߯tr]=$$<{y`ըۮۭݬܫ߬֞ʰ?Ԇڗިا٨߯ӧxv^=$$<{z`Өٯ߰ܭܧӓ|׍ݫتޫ٫zy`=$$<{x`ѥߴذ۰ݯ߰ܩߨʹJޯؓܟ߬ګܭ֨zy_=$$ͶRӗՠѽaѐ߭߰حݰͤus]=$$<}{aԨ߳߮ޮܭƬ@§4ƭCǮ?è1nʅkޫް֭ܰݲԧwv]=$$<{x`ϥ߳ޯڭޮ٠sê@Ī:ī:ӛˉݞܫޭޮޱ׮۱޲ߴӧyw^=$$EKQV[_bfhjkmmnoooppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppooonmmkjhfb_[VQKE>81+$  &-4<CJQX^dhl #! *( -+-+-+/-.+*( (& +( .,/-.,.,/,0.0.0..,-*,) -*.,.,0,.,,) +) ,),),) ,).,1/0..+,*.,-+*( +( .,0.1.0./,,*,* .,0..,/,2/301..,,* .,.,.,.,/,.,.,.,.,0.0--+,) -,0.0..,.+0.0..,-+.+-+,*,* -*.,.,-* .,.,.,.-/-.,.+-* .+ .,0.1./,,* ,* -* .+/-1.1.0.0.2/20.-+) ,) 0-0./-0-0.1/0..++( ,) .,1/2./,,) *( *' *( +) ,* .,.,.,.,.-0.0..,,*,) ,)-*/-0.0..,.,.,/,-++) +) -*.,,),) ,),*.,/,.,-*,*.+.,0,.,-*,*.,.,.,/-/--*+( +)-+/,-*(& !  ~lhd^XQJC<4-&  !(08AHQX_fl(& @<TPd^qk!xr$un$pj"rl"wq$un#kffakesn"xr$vo$tm#vo#ys%ys%xr$vp$rk"oi!rl!tn"un#wq$vp$pj lgmh ni!oi pj!vp#}v&|u&sm"qk!uo#sm!lelftn#{t%|v&zt%wq$qk!oj vp"ys$vo#wp$}w'{(~w&uo#oi sm!vp#tn#un#vp#wq#wq#up#vp#xs$xr$ql"mhrm!zt%{u%tn"sl!yr$|u%vp#rl"sm!rl!qk!pj qk!tn#tn"qk sm!vp#vp#wq#xr$to"rl!ql rl uo"zt$}v%wq#pj pj rl!sm!wr$}v%}v%ys$zs$~w&x&vq#lgnhwq$zt%wq$wr$|v&}w'ys%rl!lemhvq$}w'~w&vp#oj kfjdkelgpj uo#vo#uo#vp$wq$xs$zs$vo$oi!mg oi!rl"xr%zu%yr$vp#un#vo#wp$rl"lgmgrl"rl"nh!mg oi qk!un#wp$vo#qk"pj!sm"wq$xq$un#qk"qk"uo#wq$wq$xr%vq$oi!kemh!sm#vo$tn#qk"jd c\SO@<)& lf_XQHA80(!  !(1:BKT\dk" B?SOhbpjyr"x%|&'&{${$&&z#xqvp~x"%'&}&(('&}%z${$|$}%&&}$~w"{u!}w"~x"x"}$)*&{$~%~%}v!zs!{$(*)'|$~x"}$&&&),+'~x"|#&|%|%&%%&&''{#|v {#((%{$&(&}$}#{#y"x!z"~$~$z"|#%&&'~%z#z"{"~$()&x"y"z#|$'*)''))%|u ~w!&(&'**(x"zrx"(*)~%}w!yrwqzt |u x"&&%&&''}%|u!{t!x#~%)(&~%~&&}%x"{u!x#z%~w#}v"~v"x#|$&&|%x#z$&(&{$y#|$&'('|${u!{t"y$}%{%~w#}v#~w$~w$ys#uo!qk[V>;kd\TKB:1(!   (1:DMV_hNJyq&|(xr!pjvo{$(+-.,**--(##',-,,..--+))*+,.*''''(-0/,*+)&',0/.+()+,,-250()++*,+-,,./*&(-.+*-/-+*)'&(+)&(+,--,*((+//+'()*.10./0/*&'-.,-11-'#*12.*%##$&),,+,-.-(%'*-0.**++(&'*)&'()+,+))+-/,)),---*&'*,*))++*'|%}v#ys"vo!gaC?h_VMD:1(   '0:DMWau96icz%,1-&{!$+024531362+')/34347653//01464/----0574142+*067531024448ɽ=90020221344574//4620475221/..22/0345521/03770-01278668850-/5645882++3Ĺ:84/+)().11113662-+.2774111/,,//--./143//14541113452-,/32..2320-*('|%zs"oh[V41taWMD:0'  %/8BMWaOJrlzr!%+692*(*046Ź8ɽ9ĸ75ø7Ƚ82*(-4Ǻ76¸6;˿:Ǽ8641025·7ǻ950////4̿:ǻ84560+0ȼ9;ʽ9Ź7413Ĺ876ʾ;@>62345546·7ù8Ⱦ9̿:ƻ9416¸842ƻ8<Ĺ86443104655·6ĺ7ƻ8ź86224ù7<˿;2/456̿;;Ǽ9ȼ:?=·6/.4ƻ8Ƚ9Ƚ9˽:;Ƽ82.0ƹ9=Ƚ:51.,+-25323·6ʿ:Ǽ92./3ķ7;Ĺ85442/-020/2126·75226ź8Ź8425ĸ7ƺ8ȼ960.0431026÷7442.,+)z"unpismUPaWMB8/%  #+6@KVa\Vrkyq {"',3;<·6.)-4ǻ6˾9;=ƺ7¶5::2*)0ȼ8̿9ɽ8˿9;;̿9÷64224·6:ɽ:4021/3;=ǻ84Ĺ85/1ź8<<:Ǽ745ʽ9ƺ97;A@˾:23÷8Ÿ855ĸ7ȼ9ʿ:<=;717ǻ:64˿:><ø85ķ7ø7415Ź86¶6Ƚ9:;ɽ:÷655÷7;>=4/4ø8ʿ:=<ʽ:<ǻ5*(.Ⱥ488:8ƹ4Ⱥ6;̿8.)+38̿7ƺ68;:8Ź61014̿9:µ6110/1Ǽ8=;25Ǻ9405:=<9Ź64ɼ9ȼ9Ǽ8:@@<33ɼ9ĸ64ĸ7Ƚ9ʾ:;<>=ź714ȼ8÷64ɽ9?=Ƚ9ù6Ǽ8Ƚ942÷6ɼ8ĸ6Ÿ6ɾ9<:̾9Ź7ĸ7÷6ƻ8;?=4/3ź6;@=˿:<ʿ83.++.1ƺ7ɽ7¶65:=;4//5:;9ķ553310341124ƺ6̿8ʾ7·33Ķ58:ʾ7448:98÷3//ǹ4Ϳ62.2887ʾ5ɾ5Ȼ420.+(&')(%zs!f`! _SH=2(  $.8DO[%# zq"'~#~"$&*,-ʼ19>;µ/&(/45686ǹ367ĸ2+(-Ȼ3˽4ķ2ɼ48:8̿51..1ƺ57Ȼ50..-.3:;Ĺ32ɽ7÷5.08<<:ʽ6ķ5Ź6ʿ888;><32˿7¶31ƺ6999:<=˿702ɽ7÷42ǻ6<;8ƻ6Ƚ7ʾ841ķ5ʽ7ƹ6ƺ5˿8998Ǻ7ĸ5÷5ƺ6;@=3/3ƻ5:?<9;A>4.3<;˾6:?<1)-9>:ʽ72,)).÷4ɼ5ö32·4:=70-/ɼ5;:ǻ5442/-.00.022ʽ55ƹ10ķ2̾564ø21ƺ3787Ƚ2-,ö15Ź2-/46533̿2Ȼ20/,*+,,-+%x!zt!mg! [OD8.$  )4?KWke猅(++(%(+-,Ÿ.4;=6,&)ķ045673ƹ032-()/Ǻ2Ǻ1Ķ/4987Ǻ3-+0ķ3̿5˿50---.07<61ĸ3ǻ50/ȼ5:::9Ÿ5¶47768<<21ʽ520ƺ577˿78:<801Ǻ6¶40ź5:<9ǻ6ȼ7ʽ8µ40ķ4ɼ6ƺ6ƺ5˿789ʿ8Ź5ķ4¶4Ź5<@<203ȼ7;><9;?<1.¶5<8ɽ69=9-(.;>8ƹ4/*))/ʾ6ʽ522ȼ5::ƹ3--ŷ27:8÷322/,,-...1Ÿ3ǻ3ʽ3ƹ0.0ʽ343ö..Ǻ24563-*.̾2Ȼ1,*ʻ044201̿1Ǻ/Ķ-,*)-12/*(%%&ohWK?4)  $.9ER oZUx"'+20,((*+Ÿ,/5;<4)#(̾05454Ÿ.ǹ/2Ȼ0*%)/ƹ0/ŷ1677̿4.,/µ1Ǻ3̿4Ÿ2/-,,.Ķ3:910Ȼ42/169:9Ÿ41˽58Ȼ4˾6<=ǻ40Ź411Ǻ5ȼ5ȼ5˿7˾7̿7:821ö541Ź5:<9Ÿ5Ÿ6ǻ631ķ4ʽ8ƺ6ƺ5˿78ʾ8Ǽ6Ź4÷42¶3;@;2/3ʾ7KXJE}$|#$*0̿6Ȼ2)%&)µ+Ǻ,;.3:8/&$*3322Ͽ1Ⱥ/ɼ02¶-&&*..-ǹ/374/,.0÷1˾34ƹ2-,...̿5:ɼ3/ŷ2Ǻ30.ȼ3898Ź32Ǻ4̿6ƹ4ɼ6:=6122ĸ3Ǻ5Ÿ4ź4˿6ʾ6ɽ699¶313¶41ƹ5;<933Ǻ5¶30ö3ȼ7ƺ6ƺ5Ƚ5ʾ7Ǽ6Ź5Ź4ö302:@;0-0˾7>@:8:<˾71269:98ɽ5/(*Ǽ5=9Ź42.*+,0˾4ǻ4/ķ29;ȼ3.-¶177µ1,00-)+./--.µ0ƹ1ɼ1ö/-Ķ/34ɻ0-.Ƹ/ɻ134Ÿ/)*ķ.˼0Ŷ-*Ƹ,.//1/ɺ.Ⱥ-˾/ǹ.(%(Ƹ+ŷ++**+,/1/-*EBXK>2(  !+7DQ,* (+'%)-Ȼ34ο/(&'*,ŷ,˽.497̾0'&ķ.32232ɼ022-(',õ/..ʼ178ʼ3.,-0Ⱥ37Ϳ5/.11.08812ɻ4µ20ƺ4998ʽ6ĸ5Ź5Ȼ4ƹ4ɼ68<:ö304Ȼ6Ÿ5·4ǻ5ʾ6ʾ7ʾ7:<ʾ74÷4ƹ5ö3ɼ6:<833ɽ6Ǻ54ĸ5ɽ6ȼ6ǻ6ʾ6ʾ7ɽ8ǻ7Ź5Ĺ423:?:0.0̿8A@98=<ɽ72˾7;;:;93+'.8<9Ź53-*,0ƹ4Ź32¶26<;¶2/ķ2ɽ46ʼ5.*.0-+//../ö0ƹ2Ǻ2÷10ŷ124̾2./Ⱥ1Ϳ234ɻ1*)-ʽ1ɻ0õ-Ⱥ/11210ɻ.Ⱥ/˾/ɻ.+()ǹ,Ⱥ-µ*&%)-÷1Ǻ562.(voQD7+!  $/;H]]X˛,1/)(*.12/)%&*´-Ÿ-Ϳ0476Ÿ/'(̿14223324̿3,(*/µ0/Ⱥ2696/,,-µ167ķ300µ20.ǻ48Ź32Ǻ5Ǻ42ĸ38:98ʽ6ĸ4Ź4ɾ6˿77:;ĸ4/3ȼ6÷4¶4ǻ5˽7˿989;:Ÿ5ķ4Ⱥ6Ⱥ7ʾ79;˿82µ37˾7÷6ǻ68˾8ʽ7899ȼ8ƹ6Ź534:>80/19A>˾79?=ƺ6¶5:=:8;;2((2;;Ϳ7ǻ63-)-Ÿ4ʽ6¶32ʽ5:=931ʽ56ƹ41/,---.÷1/+-µ1ƹ2ȼ4ƺ3¶1ĸ135̾30/ƹ0;2454-*-Ǻ0Ǻ0ĸ/ǹ023442˼.ƹ-ɼ/Ȼ.*')Ⱥ-˾.µ+(%&+ʽ158ɽ84.&w!RN[H;/$  (2?L(% {t (163*'(õ,00˼-&"%*-õ+˽.375+%*12322ʼ1Ϳ23ɼ1*),ö1ķ1µ0̿465Ǻ1.+*/Ⱥ36̿60-01-/773Ź5˿6ƺ41ȼ5::77Ÿ32Ƚ6˿7ɽ59;·4.1Ȼ6ķ5ö3Ÿ4Ⱥ6Ϳ887;;Ĺ4µ3ǹ5ƺ6Ƚ7:;83÷488Ź6ȼ78̿9˽8799ɽ7ȼ7Ź5339>̿8/.18>;ʾ6:?=ĸ5ĸ4:=8ƺ598/')Ǻ5>;ɻ5Ǻ42,*/÷3ǻ5138<:62µ2˼5Ϳ6ö2-.0-+-00,+/Ÿ2ɼ3Ǻ3µ0ö0ʽ243ŷ00/Ȼ0355ķ/+,Ÿ/Ȼ/ĸ-ĸ/Ϳ21132ʼ.Ƹ.Ǻ-Ǻ-*''ĵ*̾.ķ+'%&)˽.268˽70)%%'0-L?2(  *6BRYR$#*49Ϳ3*')ö-00Ʒ-'#%*+,̿1782)%+3542Ϳ2ɼ135ȼ2+*/Ǹ1´0ķ1566ǻ3,*-057÷2.0Ÿ30.Ϳ7;7Ǻ576229<98ȼ5¶3Ǻ5ƻ5÷3:<ƻ5.2Ÿ5ŷ5ķ4ƹ5Ȼ689˿7<<ƻ63ĸ5Ĺ5Ƚ8<=9·4Ǽ7;:ƺ6ǻ889˾88::˿8ʾ8ȼ7¶4Ź4:>˿8//19=:8=A=Ź6ƺ5<=9ķ4ʽ8ƺ6.).:@:ƹ5Ÿ50,-1231Ǻ4<=8Ÿ4Ÿ3Ⱥ4ɻ5Ǻ41./00.0Ÿ2/,/ƹ3Ȼ4ĸ100Ǻ364ȼ0ķ0Ƹ1Ǻ1̿365ö0+,ɺ0˼1Ǻ0ƺ/Ϳ13333̾0¶,ǹ.ɼ/+(*Ķ,ʼ-Ƹ,)((µ+/24550*'(.0`[QB6*  ",8F#! x'皐+&%+581+&'µ,Ϳ/1´,&#&*,õ.178;2'%-3434ʽ2Ǻ255¶0*+³/Ƹ2Ÿ2Ȼ46871-,-Ź37ȼ51032.39:ʾ6˿77Ÿ31˿7<;9˿7Ǻ5ö4229<8201ĸ5ǻ6Ȼ6Ȼ699˿7;<ʽ74÷4ĸ4ɽ7;=9÷4ʾ7;:ĸ5ĸ689ʾ8ɽ899˿99˿8ĸ5ƹ6<>8/.1:>:9?A<Ȼ7ʾ7<<8ƹ5ƺ73.-3=?:ķ440-/ķ3µ2226<;ʽ6¶3Ƹ4ʽ6ƹ400/..01ǻ3÷1-/Ǻ4̾6÷2-.÷266ʾ2ö/ĸ0ȼ2˽355ƹ1+*Ķ/ο2ʽ0ǻ0̿123440ķ.ö-Ǻ/µ,)*õ-̾/Ȼ-('+õ+ʼ-1230,((-252( uF8,"  #/;H?<.0/+',340)%')Ȼ.Ϳ0´,'&(+,µ-398Ķ.&%.4333ɼ2ɻ135/*.Ȼ2Ƚ4ĸ3˾577ȼ5/,,1ɼ5˾6ĸ312¶3/.ʽ5:8ȼ67ʽ63ƹ4:;98̾7µ33Ÿ3Ϳ789ʽ6/.÷4˿8ȼ7Ǽ699˿89;̿7¶4ö4Ÿ4ɼ6::ʽ7¶3˿7:ɾ7·3ĸ5ʿ79ɼ7Ȼ688ɾ798ƺ5ƹ6;?90.3;=99?@=˿78;:7ɽ6Ź50+/7>>̾8310-0ɻ6ƹ53÷38:9ɼ5ƹ5Ÿ4ɼ5Ź4/-..-/Ȼ3ɻ4002ȼ5Ȼ4/+/̿463ķ1µ0ɼ1̿3Ϳ34ɼ1+*-ǹ0Ȼ0ǻ0˾124562¶,ö,Ÿ-µ.+)+Ⱥ.ʼ.*()ǹ,̾-/01/*'(/ʾ8:701<9H;/#  $0=MYT-142)%*151)&%*ɼ/1Ķ.)'(+,÷/5:6,$(¶0̾3343ʼ2̾38˼4.-ķ0˾5Ȼ3Ǻ35871-,.ĸ3̿6ʼ532ȼ62,199ǻ6ɼ68ƺ429;998÷4ƺ5̾7ɼ7ĸ589/,49ɾ7ɼ69;8:<8÷4Ź5ȼ6ɽ69:Ȼ63:=ȼ8·6Ĺ7ɾ:ʿ;ȼ9̾9><:<<ʾ:˿;?B<20Ĺ6=>::@A=89:7˿7̿8ƺ5/+1;?<ȼ6211/2Ǻ7Ź5·3Ȼ5::ɽ6Ȼ5ʽ7ƹ4ƺ3Ĺ40,-/.0̿5Ǻ4/2ʽ5ʾ4¶1--ƹ365Ȼ2Ķ0Ź1̿354ʽ2,),ƹ0Ǻ1µ/Ǻ035784Ⱥ.,ķ-ö-,++Ķ,ƹ.µ,)(Ķ+Ϳ.031.*#&0;?;612ZUL=0$  &2?etm"՛+.5ɽ8õ2($+361)&'+̾12ʼ1+')-.ƹ1794+$)ķ04554Ϳ468Ǻ3-.˽4Ϳ5ƹ2̾599ƺ4.*-277ĸ43ȼ5Ź4/.ʼ697ʾ7;˿61ɼ6<::8ǻ6ʾ8˿7Ź6¶59;0,¶49˿8ɼ7:;9;<9ƹ5ʽ79ɾ9ʿ9;ǻ9÷698ƺ1,,Ź,Ǻ-ĸ,ʾ.21̿..0ʾ./570'+Ǽ5??;>B?:::9Ź5Ǽ7˿8Ǻ60,4?A;ź64322Ÿ5Ÿ534˿7<:Ȼ5Ƚ68ȼ5÷2¶31.,/1ķ4ȼ5÷31ƺ37˿50.ķ166ʼ5Ƹ3Ȼ2ʽ3564-'+ö0Ǻ1ö0Ķ0̾247961.´.õ.,,-ö-Ÿ/¶.,*õ,̽.0341*#"-:@>̿;733wq&b?2&  '3@(& x,餜.-1Ȼ68ƹ0'%*251*%%*Ϳ05˽1*),--Ⱥ17:3&$+Ʒ1444;3̾466ö1/Ÿ3˽4ʼ3ʽ47:9µ3+*0ʾ57ƺ412Ź42.08:8:73ĸ599ʽ6˿798ź54ø5;<1-ķ4̿8ȼ7ɾ7::9:;8ǻ6˾88ʾ655Ź2/32ĸ*$$µ%Ź'÷'Ȼ(+*ɼ(**˾)*/1ʽ) $Ǽ/7649=9ʿ89;83ĸ5ʽ7ķ4/.ɽ8@>˾8÷5÷421ø4˾7ƹ5248:8˾6ɽ5ʿ6Ⱦ6÷30.-,.¶3ǻ422ɼ4̿5ʽ420Ÿ178ʽ5ŷ3ķ2Ȼ2576.'(/Ǻ2/´/Ϳ257861µ.--,*+´-Ķ.µ--Ÿ-ƹ-ʻ./120("")5;;:9¶646/%# t@4'  (4A6242103ɼ56˾0)),583)$%*36ʼ1+)-´.µ04::ǹ1(&,ɻ35555̾455ķ22ɼ45˾5˾69<7.,.ø47711Ź4ʾ611Ϳ8;987ǻ6ƺ779ȼ57<:ĸ5ĸ6ɽ7:;5/2ȼ6ɽ89;;::9:ʿ9851.,ö%$5HVailprswvwwvssrrkZǻG;3*)/43ȼ5:=:ĸ6ź7ɼ74.2<@=Ȼ7ĸ5Ź432Ź48ǻ74ȼ798ɼ6̿8ʽ7ɽ6ȼ6÷40,,03ǻ4ʾ53·4̿67ö30Ķ39;8Ÿ3õ2ɼ4589µ1''/ɼ2Ÿ1´0ʽ367874Ź0.-++*-ö-ķ.ķ.ǹ/Ȼ/Ȼ.;/01Ϳ/)#"*1776:9ɽ9·79620A5(  (4B?<745320Ǻ22˽/,(ķ-682)$%-55Ÿ/*+-/ķ05;9/')06566Ȼ3˾46̾5Ÿ3ƹ256Ȼ47;81.,/Ƚ58ƺ423ȼ5ö33ȼ6:8799ʽ7Ĺ5ʾ7ʾ69=:ȼ68989ź501Ĺ6:<=<;5/,ɾ*ʾ-˾5ʾ?HQV]pڗ}i]\]WCŹ.Ǻ&)*Ĺ+Ĺ3Ǽ83/÷5>?;ɽ8Ĺ6323ƺ5˿7ȼ7ǻ69:ɽ6¶3Ǻ7ɼ7ɼ6ƺ530,.2ʽ6ɼ5Ǻ4ǻ5ɽ6ʽ5Ȼ610̿7<:Ϳ5ö2Ź36::Ǻ3*&,ɼ3Ȼ1ŷ0ɻ268874Ⱥ2/-,+*,õ.Ķ.Ǻ/̾0Ϳ1ɻ/Ⱥ/01ο0*$#)133;4ʽ59;>˿;:9:7B5(  )5BFC86¶6ĸ65/+õ-0ɻ.(&+382(#(Ƹ/43/**./Ȼ17;6-(+Ȼ25ʾ4ɽ5Ȼ3˾3675ĸ2ƹ36˾5689ǻ5/++276µ312ǻ5Ź5ĸ4898:;˿73Ź5ʾ7:<97:9Ȼ798305971/2247ƻ7Ź=øRnЪڃR̿;;:˾3Ź*·&!"Ⱥ1?>:ɾ8412ƹ6ɼ6ȼ6ɽ78:9Ĺ53÷4ɼ7ʽ6ĸ31.-1Ĺ4̿6ɻ5Ÿ4ʾ68ʽ51/ö38:6ĸ2¶2̿59=8,&*ǹ2˽3ķ0ɻ246886Ϳ2µ/-.,*-ƺ/Ǻ0ʼ0111212ͽ/)$$+1322̽3̿69=>ʿ;88?;B6)  *6BHD98ɼ9˿89¶3*)´-ʽ/õ,'%*591(&)ɻ043-(*-µ/˾2:<6,'-ȼ3Ȼ4ƹ3Ȼ4ɼ4̿599ʾ4¶2Ȼ47ʾ57:81*)/ʽ58˼61/Ĺ3ǻ5ö4Ȼ6:::;8Ĺ5ƹ5˾7::::9ƺ7¶5ʾ8:0&+21-.:Pp~Gķ' /73ȼ1ƻ41/49˿8Ź5ǻ699Ź53ĸ4Ǻ5ʽ7˿7ĸ4/,/¶4ɽ6ʽ6ɼ6ʽ677ƺ401˾697ǻ41ƹ28=<õ1()÷1̾3Ÿ2÷1477864Ǻ1.--,,ɼ023321143̾/'"$,341Ϳ0̾259=?<ù877?<B7*  *6BFB66̿;;:7÷0**-ɻ/õ-(%*58˽1*&*Ǻ03Ϳ1,)+-.5<<̾4*)0ɻ4ʽ4ʽ4Ǻ3ƹ3698Ȼ4Ÿ3̿6˿669:ȼ4-*-÷3993/1ö3÷4ȼ6:<:9:9ɼ6̿89:<=:¶53Ǻ55)#6Qiƿs~׊}iN6(ķ'+.0ȼ5;:Ź6ɽ79˿822ʽ78˿7ɽ73/.2˿6̿7Ⱥ6ʾ79:ʾ511ƺ477̾5ĸ3Ź37<>̿5++¶14Ǻ21ɽ37886̿3ƹ0¶/.,,.Ⱥ0Ϳ235532340(#&,351̾.ʼ/38=?=Ƚ8578A=B7*  *6CFB54ȼ:==95ƹ/++ķ.̾0Ķ/*&+57;2*(,ɻ25̿3.+,-ƹ2:>;ƹ3+.ƹ477ɽ5ķ2µ27:9ʽ6ʾ6768;:3..27:ʽ62/1ĸ5ʾ8:==:<<88:;?A;ǻ3Ĺ-ŷ(ǹ-=KVžl¿Րi]P¶6$ĸ(3:;ʾ999ƻ73¶49;9Ź61/2Ź688˽78<:ĸ42Ǻ5998ʾ6ȼ58>?9/,27˽4ö2ĸ279985Ÿ2´/..,-÷1̾455665551*&)ɻ0442̽.ɻ.1691,0686ķ302798˾6˿7ʾ7̿78;ɼ71/1ǻ699ø5/0÷5ʾ7˿7==:;<999;=931Ƚ6ø9HuݩnǻC˿76/ǻ+˿3:ɽ853˿7;;93+-4ɽ7879::ȼ63ö48;97˿68>A;1,0̿6˾6ö1¶0˽48:85Ǻ2ö00.+,õ0Ǻ2̿36766652,&);2531Ǻ-ǹ-/29=:8Ź6ź7¸799A>C7*  *6CGC744ƺ7:;963Ȼ/+*-Ȼ/-('.68ǻ1*).̾36̿4/+.ɻ47<89=;40444Luۙi<Ǻ'˿*0÷..Ź5>=:Ȼ60*.Ź6999::821Ȼ6;;988>D@ĺ3,/ǻ4ʼ531ɼ49;96Ķ1ö1Ÿ20,+/˾455666773+'+2641ķ-,ɼ/3588ɼ6ƻ6ǻ7ɽ8ǻ8:;B>C7*  *6CGC757ø6Ȼ688631ķ.*),Ķ/-('.68ɺ1)',4740-/ĸ26>C:./˾5:8Ź4006<;̿7˿7:8799ƹ522ǻ7:˿8302ȼ6ɽ68<<Ƚ6ƺ595)ʼ'@hΆƜֆYȼ. &̿2;;ɽ7/*,2ʾ68;:87ȼ6227::89=CCɽ7,,¶2Ÿ30.ķ39<96ķ21Ÿ2ķ2/--Ȼ15664587;1)'+153Ǻ/,+ɻ.2433ĸ3¶4ƺ5˿79Ƚ:::B>C7*  *6CGD87ø9ɾ8ʾ8ɼ554242Ÿ/,+-/,)(.68ǹ1*)ö17971--19CD910̿58ʾ631Ź49=;˿8::9;=;Ǽ613ɾ79Ǻ622÷5ʾ77;>9ĸ/.8RŽlĿ҃fJ/.7·7,(0898:<9ǻ6÷4÷5˿89;9999==;<=930ø59̿9÷514̿:=<63Ƚ9GgĞ¿bD1$$/Ź8;:99;;ʾ7ź5ȼ7:;98:?B;/,3ƹ42037:;9ɽ5Ÿ3ȼ4Ȼ41./Ÿ17:946<;5-*.474Ⱥ0-ķ/3551ɻ/Ǻ/Ⱥ2˾69::Ƚ7456>:C7*  *6CHD87ȼ::975ɼ1Ǻ/1575Ǻ0-+,.-(%*4:ʽ3+-Ȼ37:6/,.˿4;>?˿6.1ɽ672/1ȼ6?>:;=<;<;ɼ632ǻ6ʽ8ĸ66¸7ʾ6433ClÞŻߢS$(ɽ2˿8̿:;;:ʾ7ʾ6ʾ57;;9˿7=C?¶3-1Ÿ5200Ǻ5:;9Ϳ6Ǻ4Ÿ311//¶049:77;<5,(,486Ǹ0-ƹ.2452ɻ/ǹ.Ǻ/˽4878ɾ84256>;C7*  *6CGC77˿<<<96̿2ĸ/Ź/3795˽1´.-./+%%,7:˾3++Ķ1:=7/+/Ȼ5:A>ƺ4.2ɼ7Ÿ3002;A?:<>=<=;ɽ84ĸ4ʽ7˿9ƻ6ĸ1ǻ*(AsȜƵ˖ż^ƹ,Ÿ!Ÿ,ȼ49<:Ƚ8Ƚ67;<8ɽ8;?@911Ÿ4ö411ĸ37;:7Ƹ3µ21-./÷257988<;̾3*(,465ŷ1.˽144330̽0ʼ/ɼ/˾3̾6Ǻ5ø54459:B>C7*  *6CEB66ʾ:<>;74˽0Ƹ0ǹ048764÷0.//*&'.7;˽3+*¶3<;˿6.+0ʽ7>B<÷2/2Ź4ķ422ƺ6?B=;<=<>><Ȼ7ǻ59:+Ź'ƻCgɏ܏\ʾ4ʾ'099::<><Ȼ69?@932Ÿ5ƺ4¶334˿69;8Ȼ41//-.Ÿ26:989;;ǻ1'&-473Ÿ0¶0ʽ2452Ϳ12112ʼ0ɻ1ķ3233ø7ź9;;C@C7*  *6CEA53ĸ8::;742˽0Ÿ0Ȼ136983ǹ2õ20-+()/8:ƺ3+,µ289Ȼ4-,06?C<1-1ķ5¶4229@@;99;<=>;9419V‹ƺO4ƺ*ʾ2=?>;˾8ʾ8C7*  *6CEA514ź6˿788543˾3˾3Ϳ349:96Ⱥ5100.*+2::¶3,,289Ź4.-2:DC80.2ƻ7·53ķ5>836Jxɬͼÿ½ʺm<-5=@˿:ǻ7;?=ø5025÷5÷5ƹ5ɼ7::8ʾ6ǻ431/0÷49<;::=:Ÿ2*(/6:7ʽ3Ƹ2Ϳ563̾1Ȼ1ɻ1̾2ο22Ϳ2Ȼ1õ//1÷5˿9<<ɼ:::B>C7*  *6CEB63234Ÿ4˽443ο2Ϳ343ʼ25:;85ƹ20/.+(+3991*,¶3982-.3ɽ7/0355·5Ǽ68:9ȼ6ĸ310//18=<::<:0()07:7ʽ3ɼ366̾2ķ/Ÿ0Ⱥ2Ǻ1ɻ0ʼ1ɻ0÷.-+.÷4̿9:;;ǻ:::B>C7*  *6CGC745643Ĺ3˿4̿3ʽ2˾256558;;96Ǻ30.-,+,19:3,,¶2982//ź5?DA·5.1ƻ6Ǽ732ǻ6=?=:810N}ǭƯo?õ%ʼ/>@;413¶5¸6ù6ǽ89;:˿8Ź63002¶48=?>;<91()/8;8ɼ4˾5884Ÿ1ö0Ǻ2ǻ3Ĺ1ƺ1ƺ1¶/---Ź3:<:;;ȼ:98A=C7*  *6CGC757ø7531·1ǻ2ʽ2Ȼ1Ȼ2477679;:7÷1/---**09;3+*¶3̿8Ȼ72,.ɽ7@D?2-1ȼ6ź732˿9?>72=dʛƳېV23:6223¶5Ź5Ƚ79:9ȼ6ǻ5·41.0Ź59<>>?=80))1797̿55884ɻ2Ǻ1ɼ2Ǻ2¶0¶0ö0.--ö.Ȼ16::9:ɾ9565>:C7*  *6CGC75¸7ź6ǻ7ĸ41/ķ1ʼ2ɻ1ƺ1ƺ2ʽ366459;8̾41--.+)*0980*-4̾8ʼ60-19AC9/.2ȼ7Ź64ĸ7878Hy˶Űk9ø.-25ø5ƺ6ȼ6̿78˾8ǻ7ǻ5ǻ52/.÷4:;=>??7-'+ö3885̿45895ǹ2Ǻ13̿2ķ0.µ/.,-ɻ0235679ȼ75256>:C7*  *6CHD75ø8ɾ9ɾ8Ź5õ1/.õ/Ȼ1Ȼ1¶0/ƹ14556787ʼ40-,,+))/ƺ4˾62-/÷3˾7Ź50.2:@>Ź5-.3ƹ750ȼ+3UʍϹw·:&)3Ƚ8Ƚ8ȼ7˿8ɽ7Ź5ź6˿8ǻ5/.29==>@@8-&'1985ʽ44786ƺ30ķ0ʽ3ɼ1ŷ/.-,,ƹ/332ʽ2̾4˾6ĸ53249:A>C7*  *6CHE87Ǽ;;:ʽ6ɼ4Ƹ2//Ķ1ǹ3ƹ200Ȼ38777788̿62.,+,++.ǻ584./¶48ǻ61.2>BC:,%'089̿6ʽ46877ɼ4¶1µ0ķ2Ÿ2Ÿ1ƹ2¶0/.Ⱥ2564Ϳ2ɼ3Ÿ4321¶6ɽ:ĺ>=DAC7*  *6CFB78ȼ<;<8ɼ5ķ1¶0//ŷ1ɻ3ƹ21ö2̿6897̿6789ɼ51.-,-+,0ȼ5̿72,0ø5Ƚ85/.4?B;1+&&÷>uɵлؼcµ-&Ĺ2ø65·5ɽ8̿8ĸ512ɽ8;<=@B9+$)188ɼ6ƹ4̿676ɽ4ǻ4ö21¶2¶1¶111µ0Ŷ0˼2564˾1ƹ0./04Ĺ7<><;C?C7*  *6CB?33Ĺ8;<:̽5ǹ2¶001ƺ3ʼ4ʼ4ɼ5ƹ4Ÿ3ʽ5888̿6899ȼ620.,,,-05ƻ730134300÷6?D9$#HčӲwĸ7).4Ǽ8:Ź721Ǽ7;;<==ƺ7+&,ƹ488ʾ7ȼ6̿77ʽ5ɼ5ʽ5ȼ4Ÿ4¶2·32101Ķ1̼3676˽3/++.49==Ź976>:C7*  *6CB?1/4ȼ7;:7ǻ2/101ĸ3ɼ4ȼ4Ĺ3¶12ĸ4ʾ566̿6877Ƚ53.-,+,.04ȼ7¶5/.133/0ɼ8B9ķ)MҲф<%÷0:Ż732ø58;<>;3*'-ǻ58ʾ6ƺ4ɾ66ʽ5ǻ4ǻ3˾4̿5ɼ5¶22·2ø31/0Ÿ1;345ǹ1-+(-48<;ɼ7111:7C7*  *6CDA4014Ȼ7:95ƺ210/1ö2ķ3ĸ4ĸ422Ǽ57887787Ź410-**-/1¶5ɽ84//03310ʽ-2_ݼԑƺAö#÷-44ĸ6ɿ89<>=4)&-Ǻ6:ȼ63÷3ʾ6˾6ƹ4ö2Ǻ4ʿ6Ƚ5ĸ31ö2Ź3ź3ö2´1Ÿ2444Ƹ1-**-ǻ4998ĸ72-/096C7*  *6CEB73333ö365̾3ķ1/..-/111Ķ3Ǻ46776ʾ5ʽ5ɽ5Ǻ4ĸ3¶41-*),.04ƻ74.,13."&h߿ج®ɫޠȼF*ź6ɽ8˾8:=:1&$-Ĺ58Ȼ63µ4Ǻ5ƺ4¶31ö2ö3311ķ2ǹ2ǹ3ƹ3Ⱥ3Ⱥ2̿44ʽ2.)(+.̿38̾730../34<9C7*  *6CDA6566301Ǻ3ɼ3ɻ2ȹ1´1.,---03õ2ʽ5788ʾ7ƹ5ö4ö5Ǻ6̿7ǻ72-)),.06ƺ72--)%4sܪѠŗ¸޹۩ȽMŹ*ɽ0ʾ7:;ʿ80%#-ɽ79ǻ63ķ4ɻ6ɻ63012211Ķ2ɻ4˾5ʽ5ʼ4Ϳ565ĸ1-))-Ȼ14ο5Ź51,+-1599@=C7*  *6CC?436761//1Ǻ2ʽ4ƹ30.-++,/0ö3˾79:˾7ŷ434ķ5˿8ʾ8Ĺ63.**-13ĸ6¶63*7Єҡ˚Ӡڧ٦բʚͬ`˿6̿4;Ȼ8/&%.ʽ7;ʾ7ķ5Ÿ5ɽ7ɼ7ĸ522122µ3ǹ4˽6ʼ6˿7766ʼ41,),0˽3Ϳ3ŷ0.,,,03ǻ8ƻ:;;B@C7*  *6CC?2034ĸ5¶51..0Ź3ʽ5Ź41/-+)+.2ĸ588˽6ĸ444µ4µ5÷4Ź5·52/--01362#(z՞ĖƻĺĪa4ƹ0-(&.̿8;̿8ǻ6Ȼ6Ȼ6ƺ6ø542222¶4ɼ6Ϳ6˽6ɻ6Ϳ677Ƹ5/+*-ǹ25Ⱥ2-(%&+1÷6̿9;ɾ;;:B?C7*  *6CEA512234µ41..0÷2Ÿ320/-+*)-1Ƹ5ʽ6˾7Ƚ6÷4¶4ö43124320../0-#'oܣǒɽʿùֱ[&/˾8<:9ʾ7ƻ64224202·4˾77ʼ5ƹ4ɽ5Ϳ6ʼ41/+,0Ⱥ2ɻ30*$"#(/ƺ6<><Ĺ988@=C7*  *6CFC8455212210/011110.,((+/3Ǽ7˾9ȼ7ƺ6÷543134320.-( )ləĽ޵F&Ǻ7<<;;ɽ84311344ĸ5ɼ6̿7˾7Ȼ6ƻ6ƻ41.,-/Ȼ4̿5¶1,'$#&*0˼6<>?<666=:C7*  *6CEA65874.-.01/0/./2200,'')-1·6ǻ7ȼ7ĸ6653356322*+mһ޹ӫE)̿3Ϳ9˿9:;¶7332124Ĺ6˿8ɽ7Ÿ5Ƹ6ĸ53.+*.2ɼ5Ⱥ5/($$&(-µ06:<;Ż87456=:C7*  *6CA=226ź7ƻ82.,-0121..01132,)()+15÷5ǻ7ƺ7¶6455÷6541"(jߣLǻ-Ǻ1ɼ7ȼ8·7434333Ĺ5Ǻ6Ȼ7ƹ5ö4µ51.+-1Ÿ5Ǻ63-'$%(-/ɼ3479ƺ7÷744466>:C7*  *6C=9--24ź7ĸ61.-./0010/./332/+''+/2·5ǽ7ź6544÷5ø75&!ǿ`¿ߜE÷$÷/6412344÷5ƺ5ƹ5Ÿ5ķ540,+.3ɽ6ƹ51*%%(+.÷1ɼ3ʽ3Ȼ3ĸ332344455=9C7*  *6C<8+(,156·4321/./231/-/2430,*)+.04ƻ8Ĺ755ĸ7ĺ8-%ǿT̨ܕȼ=!.43345¶5ĸ5ƺ7ȼ7Ǻ641--05Ȼ6÷40,('+/2ǹ4˽5Ȼ31/.0236621297C7*  *6C?;.()+//12ø3ĸ40.--031.--/122.)((*,3¶7ȼ8Ƚ9Ĺ7.'O¿Хӊ0"15445·5ø5Ź6ø63/./2ö52/+*+,.1ö2ǻ4Ȼ52-,)+03531-0185C7*  *6CA=1-,+,++-0¶4Ź53/,.1431-+,044.((((,1ĸ7ʿ9ĸ1)ƻHܛȿs0*355÷5Ź6Ĺ653/.04ĸ63-'(,02÷5Ÿ4ö320+(),/1341..34;8C7*  *6C>;001/.*(').1·43/,-03ķ64-*+141.-,)),20)ķ<х̣\/-4Ź8ɽ8ʽ8ķ62//1331.)),143¶3µ30,)''+.21/001267>:C7*  *6C<9,+/12.($%'*.011/--3ƹ75/++.131/-**,lº٬ޢɿI$ķ/;:Ÿ61/1331.,+,-13ķ520.+'&*-,+-/0134699><C7*  *6C?;.*-/20.*'&%(*.10/.04÷6¶62.*+02431-QدڑBɼ(˾382/2551-,,//1341-*((),.--*,03·7ƹ8Ź9777>;C7*  *6CB?411/+,0.+)(&&(+.221/1553/*+0364.<ڳܵچɽ4#/12441/-./1243-*''(+..,**,055ķ8ķ8µ7434<9C7*  *6CA>21431-+*,./,)(*-.-13211242./36ø5*7̊Ǡc(&34310..23551-)'(-.------/4ǻ9ǻ:832144<8C7*  *6C?;0.2561,)(*-.-+**)+/21001122322.-iڹӡݮԕ>#/10/-.1343/+(*,+,,++,-011367642245<9C7*  *6C?<0.01541-*(*-.--,,,-..01211356+$ƼRěٚƽɞ˗ʜu0",001232/-*(),.,+*,./1222344556456=9C7*  *6CB?3/0121/.,+++**,-,+,--..021133(8ЏǍݤؽڢĿúY%'.2430+(&'(*+*+,+,/120..134444578>:C7*  *6CDA645551/-.0/-++,+)+./.--/0001'/pǒƱґG%,41.*('('),-,+-/0010/./145765577=:C7*  *6CEB88<·:941/.0010.-*)*--.///../.$CߢǴ֮ͺěw2(.,(&(+,)+.10-.1210-,01235877455<9C7*  *6CEB89=ǻ>ȼ=ƻ;¶620//0110/.*)*.01100.&0sڂschǭsrݥ¸X%#*'')-///123001120--/2247886333:7C7*  *6CC?55:Ƚ=@ɾ=ǻ9¶522/...130,)(),-012-"M߇sgPIwYUu̍,+*++,02211100..///.00477754234:7C7*  *6C>;//5¸9ɾ>ȼ<ǻ9ǻ7ƻ6Ź730/.010/0-('(,/.,:|ۂm\YF_wܳV$',.//1110/.-..--./021465644356<9C7*  *6C;8,)-06ĸ:ǻ:ƻ9ƺ8ƹ7Ź7÷763101132-*)()',ɿdxӇʉVKe{ә@#+-1220.-/.+,.0//0123211566455<9C7*  *6C;8,(*,02554ķ5ƺ6ƻ8Ź8533422010-)$":ˇڣѬhBWoļa+,-./10.../-,-...../0011457655;8C7*  *6C<8,*-..,-0136·7776774431130!%a۪ˮtKSj~ҐE$*/-0320/..0/../00./14554644396C7*  *6C:8+),--,,,+-/2433335·773143"9͓߂߂}߂{~ҶRWoi$%/021/..--..-../00.144431-./64C7*  *6C98*'(*,--*)*+,////0257565-5m߆߃߂߄߀z~spEYsЖL'*22.++---./0//-/001200.,+./64C7*  *6C;8,(((*)))),**+,-./013583(J۟z||~~}݁ǬUC[u{-"/0,+,./.-./000..,..-..//3396C7*  *6C>;0-,**('&'(())+,--.0/13/*Ƚ\~~~||rtxvw{}{zjLWewҒ9 +-,,,.0.,+,///-*)),.23433396C7*  *6CA=53320-*(&%&'),-...010+)B΅vnnjcix~~~~~~y}rgkljnuy|ތ~|MWu|ܬc*$.0.,,,+--,-,+++,/24553/1184C7*  *6CB>7788841-)'%$'')+./220&%Żc~n^UWVKPh}߇߆߄߄߃߂߀߀}}}}}||~}{{{|}}||}~~}}}}zrr|]TWX]djov~ߊ؅}Ŀ[Miњ8-/,***)*,+++*+-045441-,0174C7*  *6C?<3378;995/.+)'$$'+,010+5{lWTcrr`SZflxߐ߄ބ߃߁߀~|}}}}|{||z{z{|{z{{}}||{{yrfgtu[CBGNS\cmw~߆ߓʅ{chz߱O")**+,,++,-.0100/011210/3375C7*  *6C:7,,269:97321/,(&&&%*,(1ĺ]֛s[NhqTQ[pߒߐ߃߁~}~~~}}}}~}~|}}||||||{{{|{z{yyuodXV[VD98>FQYdovy|݄߉زuy>&),,-.-/35321////0122312275C7*  *6C52~&%+/24334331/.,)%#%$/~~ePX_JSjߓގވߋ߈߈߄߁߀~~~~}}~|}|{zzzzzzzyyyyzzzz{{|{{ywqg]QCFXc]O@>EOXbmzލދߍߖߒDzΎߦܬU!&/111015630-+,.000///.//63C7*  *6C52|&~#%'(*,/0121122/,)& y5Ǎt\KcqMPgߘޗߖތތމވ߉߈߇߇߄߂߁~}|{yvtsrponnnmnnnnnqpqrtuwxxvtl_SH?MzuO;8Jawߊވ߉ߊފߍߒ߹ƺʼ}ىߥe('0587420/00/-,---,,-,+.052C7*  *6C85)&&'&%&''(,/113322-#+\Оs]J[rKRg}ޕލ݉܂߈އ߆߄߀~{ywrpmjgfedcbcbbccbbcdddegijklkibWKBFqx;,Kt܂uz܄ׁ݉ݕР¿Σܑލގߟߧ˅K1057653/.01/-+***+,..-0164C7*  *6C96+)***&$"|~!#(**+.03/"Eʏߴݱݮ߫ycNP[KVg}ޝߝߜߚߔߒޑޏߐގ݈ߌޅޅ߅݃ނ߂߀ހހ|xvrlihecba`^__]]^^__]^]]^]]^]__^^]ZULA8FPYdq{~}~~vwׂс{Ѐߋߎގߏߏߑߑގܓݶܒޘߠޠޤ߮u;-2211/--,,)((')++-./-0163C7*  *6C86+)+--)'%##"$$#%(+0,Oڧݮ߮ߪߥ}l^S_fIN[mߟޜߜߜޚޙߙߘߗߐގޏގ܈݈݄݂އ݄ބ݂݁ނ߂߁~zvqkida___aaaa_``_^__`a`_____`____]\ZWPH=1<{υ}X^ltz|ߑϘƈ҃Ғ|܅ߍލߏߎޏݐ܎܌ߕޗߛߝߞޞߡߡݟݡߤߨߩ߫߫߫߭߭΅;)11/,*))(('&))+--...,./42C7*  *6C86*')+-,,+*)'%%#""#&$#[ݫޭޭ߫ަޝtZIQYWMFGScsߝޝߛߙޘݗܕޕݒޒߒߑލݎݍۈ܅ތ}݂݃ބރ߂߃݁~|xrlhd`______`aaa__`___^`a`_]]__``^_`^^\YOC915həšӻnL\ny}zЦɄիɰƊ݁ߌۉ݌ݍݍ܎܍ݏߗݔݗߙߜޜݜܝݟޟߠݟܜߦޢަިߩިުޫ͋B%*.+'&%%')((**,,+-++,./41C7*  *6C96+(+,,---,,-,+)&#~"|}=Ä߱ݯݭެުޥܜ~bNKG=;FUan{ޜޛޙߘޗޖޕݓݒݐ܏ݏޏݏޏތ݋ۊۆ܂߇|݀ރ߄ރށ}wojgda`_^^__a`____`^]__^^]_`_^]\^^__^aa_][VMC?AAKhۛʦi:Ker}{xҳɿίɚx݈݉݊݌یی܎ޑݐ܌܈ۈ܎ݖޗޗݘݘޚݚܛݝޞߠޞݛޢ۠ܣަާݨީ߭߭աg-%(%%%&')*))***+,,,+..42C7*  *6C96,),.-,,,,-...-,+-#\٫ݭݫެݫܧۡޣngf^RR\hq{ߛޛޙޘޗޗޖߖߔޒݒޑޏ܍܎܎ݎތފ݈݉ޅނ܂݂݀xrlfa_```aa``abb`^^^__^^`_^^^^^^^^^^^^^__`_[WRU`e_N.!G֔7&I`iq{zڿª˻˜ӽjsڅދ݌܍ݏސݎ܊ڇ܌ޓߖߖߖޗޘޚߛޛݜޞߟߟݜۚޤݡߤߨߩߪߪުݪݪݫ߱Ǐ9}$*'''(*++***+,-..-*--31C7*  *6C84+(**+))**,+++**.3(!g۪ݩܩڨ٣ڥ߆{x}kenv}ߒߖޙݚݚޙݗޗݗݕݓݒܑݑ܏ݏۍ܍܌܌܊ވ݈݈ކ~ކފzuogdb_^`a`aba___aa`^_^^_^^__]]]^]\^]^]]\^_^YSXaoz~t\<&ȿ9΁tK>JZ]X]lu{ĸ̾г̒ҋۊـ؅݋݌܋܍܎ސݐݒܑݒܓݖޖߗޘޚޙޛݜޝޞۜژߠܞݠߧݧܦܩܪ۩ڨۨۨޮК?&+'')*+-,*))+,-.--*,.31C7*  *6C52}'%()*)(()**)**+,/'-ǽpݫܩۧڤڦޜݒޑ߇wߒޕߗޙޙݙޘݖޕޕܓܒݑݑݏݎ܏ی݌݋݊܉܈݇ކއ܃݃ߏkaca`bbb``a`aba_^_``__^]^_^^^^^]^]]]]]^_^[XUWbu߃sW==Ľlʱ^LSi`UU[ʶ]UɴT_q}qxсۈߋދ܌܎ݏݏݑܑܑܒݕߖߖޗݘݘޙݚݚݜݝܛݜߢޠߤߥߥޥܤڥڥڧڨکڨڧ۩ޮ՞N#(-*,---..,***,../-*,-20C7*  *6C31z%~"&()&&%%((*++,($(Lˋ۩ܨ٢ؙۣۤۙݘܐߑކދݏܑޓޕܖܗޙߘޘޘܔݓޓݓݒݑܐ܎܎܍܋ތދމ܆ۅ݆އ߈ކzyߑdXaa`aba```^_a`_^_`_]]^^]^^]^]\\^]\\]][XVVX`v|eSEU͐Y'&2Ls}YEiǾpͷTR_ߣ̅xʏלَل܆݉݌݌܍ۍ܏ݑݑޒޔޔݔܕܖܖݘݙޚޛޛޝޜޠ۝ܟݣܤۤڢ٣ڤۦڥڧڦ٦ڨ۪ۧʿr:*//...,--***,-+,++(*+1.C7*  *6C52}&#%&%#~"#$&(**)*',¹pۨڨ٥ءء߱ܧלמڟۜٔۗߘېܔڕږەۖڗڗܗޗޖݖۓܑݒܐܐ܏܎܍ۋۋ܉܈܈܈ۅ݆݅܄wg`}ސv]\ba`_`a`^]^^__^^]]^]^\\\]]]]\\]]\[ZXUQWg|ވwi[OGQܒn1,ԼMz݃{ځۅۇۇۈ܈܉ۊ܋یٍڍۏېݑݒݔܕۖەەۖۗۘۚٗו߬ޫڞۜڝٟڠٟڠܢۢڣڤܥۦۥݦީ]$)/+**)('''()**+-,+-.30C7*  *6C85,*-.0..,*)&%%%% }7ۦәעܭ֛՜מ؞؞םלחڝݟؔٗ٘ٗٗڕړّْٓٓڑُڏڎڍییۊډڈۇڇ܊݉ڀtkdaabd`[sߓقd[^``^__^]^^]][\\\[]^]\Z[[\[ZUSSWg߁p_XWWXZ[[S]Džƥ˾ҺK@T^ZU_~Фľdʷ]i{ލވ|{ڀفقڄڅۇۆۇوڊۋڋڍڎڎۏېڒْړړڔڔؔוٗڗؔܡݡٙڜڟ؞ٞڟۡۡڢ٢ڢۤ٢ۤۧa(%(''(&''')(*++,++)*+1.C7*  *6C85,),-0//.-..-+*'+Sȋ٣їΖحݱםՙ֞֟ם؜֛֛Օךܢؕؗ٘ؖٔڔْْٓڒڐُ؎ٌَڌیۊډۈۉۉۈۄyleb`acbca[d܅ސqX]``^^^^\]^]\[]\\[\]]\[[\[WTPXh~߁qaURUZ\Z][SNwѽ̾˻tٿKP_[R\ޕï‰gVX[fwۃڅكۃۄۄ؅نهډڊڊڋڍڍڎُِْْؐړڔٕٕؔؔٗۙަ٘ٛڟٝٝ؟١ڡڡ١ء١٢٣߭ڨĸv<$#'''&&'&''(((*)('({).-C7*  *6C64*(*,-,-,,-/0.-)9ƼvӞԡӤֱٸث՚ՙ֛֚֚֚֝֝֜ӕԖ֖ۧ߰ۤՓוِؔؒؒؑؐڐََ؍؍؋يډ؈؈ډۉن~qe``abbbaaa_YpۀZ[`_^^]\]]\\[[\]\[[\\][ZWURTg߃l[TQTXY[[Z\ZITΘεpRX[TV؃ɚfTW[_gsۄڃف؃փ؅ڇ؈׈؈ىيٌٍ؍׍؎ّّٖؐٓٔٔ٘ؖ֐ܢؚחؚٛ؛ם֞מםמ֞֞՟ՠ٥ܪ˓W&$$##""##$$$%'(''*}+0-C7*  *6C20x&}$()+*+,*+,,--)@ˊգЏԘ֞՚֚֙֙֘֘ԕӔ٢ޮުחӎՑ֒בב֐֎؎ڎ؎؍؋ًًىهڈى܋لync`bccbbbaba`XeݍދfX]__^]\\][\[[[\[[[\]]ZTQWdw߇rZNRWXYZYZZYZUGiҷ۔YQYWUuղƐ^U`c`]dp|ق؄؃؃ك؅؆؇؈؇ىڋڍٍ׌؍ڐِّّْٖٓٔה֐ٚ߮ڠ֓֕יՙՙ՛՛՛֜՝ԝԝԞ՟ݪؤi&x|"|"z!x y!{!#$&'((**)(+,1.C7*  *6C0.xr#|u!}#%'&&&&''(),(@Г۳Бӓ՛Ԙ֘ח֗Ֆ֖ՓՓٝ߭ٙԍ֐֐֏א֏֎׍׌׌׋؊يى؇؇ډۊلuibbddcba`aaa`_\^xߓyVX__^]][\\\[[[[[ZWSSSSVbto_URUXZZZYYYZZXPPІZRXVXۂ̶VӹFU_a`_bl{كڅق؂׃چن؆؇وىًٌٌٍَِِّڑؑٓٓؑؐؕݧݧՓԒԖԗӗԘԙ՛Ԛԛ֜֜ԛԜݪۧk&z%%$$$%')))*,,,+(*+0.C7*  *6C1/ys${t ~w!y!{#~w!|t zqyr|u ~w z!$'#=ϘӝύӕԗԖ֖֕ՔՔԑԐؘ߫ٚՋ֎֐׎׍֍֍׋Պ֊׉ևׇ؇؈؈وրqc``bdc`_`_`_`^^^Zfޒۉ^UZ[\\[[\[ZZZ[Z[WI<:CUsߋu_URSYZXXXYZXZ[YTLaզ֢fQWYRR܆ǾiM̴OZa`_\`jxڃۄׁׂ؃؄م؆؈؉؉؊׋׋؍؎؏ُ؏֐ՐؑאՏԏ؜ݬ֗юӓҕҖԗ՗ӘҘә՚Ԛәҙڦ٤k()))()(&('(('('''){*.-C7*  *6C20~w&x"|#$%{#~w {sxpwpvouoxqzs xqtm:Ι۳΋ЌӖҖԖՔӓӔґӎזܨ߭֕ӈՎՏ׎֌֋׋ֈ։։։ՆՅ׈؊օzlb^abacc`__``^_^]^YZقݏoWTXZZXXZYYYZ\[UJBDGSmߊzdOMUYZZXXYXXZY[ZWQOxܿՊPMZ\SLsĽϾwf^]__^_fuځكׁցւ؃ׄ؇ׇ؇؉։Չ֊׌׍֋ՌӎҍԎӏҏЉԒެް֝ЍѐҔіӗԖҕҗӘԘԘәҘ٤٣n,'((((%##~$&%$%%%&~)y*.,C7*  *6C2/|u%y"%&('&%$$z!w {s voohohFϝ͐̆ҔѕєғҒђҐӎԒؠןΊ΂ӍӍԌՌՊ։։׈׉։Ԇֆ؈ֆwh__ddaabba___`^^_^^[Ti܇݀^QTWUTSVXWXY]ZG3ZcdcTLRXYYYYXXYXXYZZYVOQ܄}RQ[\XP]~Ӣo[\`aa^\eu؁؂ׂւՂՃքօֆևֈԇՈՊՋԊҊыҌҍЎюЈюۥ߰ءҐюѓѓѕҕєєҖӗіїЗססŹv9zz |"$$%~$~"$%'((*)*(*~,0.C7*  *6C1/ys%}w"~$%'&'&%'%%&| xq{&eدҢˈЎБВёАѐҎыҐפجϔ̄щҋҊщ҈ӈՈֈׇևՆׇփvf_^bca`_```_^^_^^]]]]TUueMMONMNQRTVXWRC5q:7PTTXXXWVXWWXWWYXXXVOPځҲqPSZZZYSc݁pO\y}ߏ֘bW]a```^^fuׂՁՁӁԂԃԅԅӆӆԈӈӉ҉ЈшщҋЋьыЋ֘ޫݩӔύБϐђѓϒϒϔϕΕЕϔԛ֟ÅQ'{#&&'&')*,--/.-*,.20C7*  *6C41y'|$&&(&%#~"$%((!y3ɿ߾Α̉АёБЏяЉ·Ԛϐ̀щӋшІцԈԇԇՈՇԃte_abb`a`a``__^]^^^\\[]VOaxkNAEIGHKNQRORZaZc^9?U[XWVWWWXWXXXWWVXYWPN}րKIY\[ZYSRSTUNG\݌ߑ{{TX^`_^____gtՀՁՁԀՁԂ҃҄ӄӄԇ҈҈҈ЈшъҋъыэΉюܩ߲ԗ͊ϐϏёёГϓϓϕϓєєԘלϒi1',+++*++.///.,),-1.C7*  *6C41z(&)*+)('&(()+$};͖ќʇ͍БАώЍ͂ܲͅש|τԋцф҅҇҅҆ӇЀsc]`cba```a`_^^^\^]]\[ZZVPL`oR56::=CGGEMiރlB05=HTYXVVVXXWYXXYXWXVXZWOM{ܿEJZ[YXYVQUZWPJPnۆfARفiU[^`_^^_`^^drփԁԁӁт҃҃Ђхццчччшҋ҉ҊҌψЉڤ߲֜ϋЎϏАёБВВВГєєӖ֛՚ɿw8)-++***)+,++*+(*|+0-C7*  *6C1.ys%x#')))))))))+&}BשԣʅϊЏЎόϋ~φ͍|хӇӅӆ҄~voh`]_bba`aa`a_]^_]\]^]\[YXUNDJ\Q8--.28lM>@?@GNTWYYXWVVWWUVUWXXXXXXXXXWVWSMW٤~ןƈMLXZ[ZZZXZZZYTXzݑuUV\\\\\\[\^_^VкVԽ\_]^jzӂррЀ҂҂тЃσ΃Ѕ҆цІφφτЈٟެӖ˄͈΋ΌΌ͍͌̌̍̍̎̏єӖźu4x|!&%%~$}$|$}$~$$%%~$}$~x#zt%vp&+)C7*  *6C2/|v'w$}'(('&&&&&&(!xEڰ٭ȁ~͇͇yʀˇu}nKct8?Xb_]]^^^]\\\]\[[\\ZXTOH<10Lf1*/I[a_^^^^]]]]\\[[\\[ZWSNE;0/Sg,)4=IORTVWVVVVVVUVUVVVVVVVWWVVVUKQЁcrӍRJWXWXYYZYYXYTRwݓqWWZ\\]]\^Y׿JϹWŊћvYZ`\`o||z}πς́̂̃̓̃Ѝڤآύɀ˅̉ˈʈʇˈɈȉȉȉ͎ϑpz,g`jdmglephtlskrkqirjtltmvovowqtnrl!nj#(& C7*  *6C/-up#xr!y#~%&&%~%}$~%&&(~!wJϑz˂̅̓{}ڣΉjcP?66>JW_`]]]]]\\\\\\[[[[ZYWTOH;.0IQ,07@IORVYYWVVWWVWWWVVWWWWWWWVVWSH^٭SyܙUHWXY[YXYYYXZVOdڈ؆bRZ]\\\\][ҽX̼yװnUY`]Zar}|{}~~π΁΁͂̓̈́˃~ω١٥ϏɀʃˇˇʈʇɆʇɈLjȉ͎ΐo}.lfslvovnyp{r{rzrzqzr}u!x"w#x#~y"|v ys$up&*(C7*  *6C/.uq$xs"y$|$~%}$~%}${#}$%%'z}sJВyȀʂ˃~uΈәԽ[־XXM@=GU]_^\\\\\[[[[[\ZY[[[ZXUPF918BXi9/29CMQUW[\ZYYYXXXYWYYXXXXXXXYYYSGeعdE|ކQMZYSUXZ[Z[ZZYRTvےrQW\[ZZXW`~şЙuZW\^^ZZgv|{|}}}}~ʁʁ}͇֞סΎɂʅɅȅDŽȄDŽɆdžƆʌ͏p/qkyr{t"yr|s }t!|t {s {s}t y#{#{$y#z#}x"zt&wp'+)C7*  *6C.,rl#un {t"~w"x"~v"{t!zs {t }u!w"w"~v#zrtlEݺ̊vɁ˂|r~޴تϸVζKӽY[VUXZ[\\\\]]]]]\\^^]]^^^^]XNFFMNB8Ikyb>,/66-3cދځ`\bcb`]zπZ`jijkkjjq}քՂՁՁԂӃӂЀπ΀~|tҜњ}w{||{~~~~ʅʅh4~&)(((('%%'''((}%y(yt),*C7*  *6C1/ys&|u#{%}%}$z"x ~uzrxpumskumtmtl 8ѦڛӇӃԆӀӄۛr[gjhiihggeedddfdcbcaYVbs[RWXUSPNNIE`rTOVYXZZYYYZYYYXWVWYYWXWWXXWXXYZWOKSYOOډQSZXSg֛͟~g)F܇ݑeZ_abbWRܑيZ\gfghjigivւ؄ׅՄքׅ؇ՆӅӄфхЃ|Ї٢֞ɂ{}{zyxϿxzz}Ɓ}],{sw y#x#z$y#~w"w"w"y#z$z${%{%|%~x#yt&uo'*(C7*  *6C/.vp$vpyrzryptlwp~uz!)2=GLMeݯۛ҂ӂԃz{ֈԄ~zZejiihhigefeededdd_VXo݋ވeSXZ]\YXWVVTMTzkPU[ZYXYYYZXXYYWVWYYXYXYYYYZXXXTQT[YKR}NUXTdڠ`,>|ޖs^]abc_Wqv`_eeghijhemzׂփԂՂׄօՅՅԄՆ։ֈՄ؎ަݥӍ΃̓˃ǁ~||z~j>phg` kengohtmtmqjqjqjunxq xq yr"xq!yr!wprl#oh$(& C7*  *6C,* oitm~w#~(,0:GSaſqІݖߘݒ۝ӀԃҀvԃؐru~_gkiihiihfgeddefd^W]x|^TY^^^\[[YXYYTMgހ[RXZZXXYYYWYYXWWWYZXYXXYXYZXXXXYZZYQP|e>TVMmܷݒ[E@CMi܌ۆfX`bbcbcdcbdefeghiiigir~ւԀԀԁՃԂԃԄԅևևԃ֌۠ަؕӈӉӊҊҋъχͅɁʃɂ´mFy(xqslnfibgag_hajckdoirm!sltm rlrkqinh!lf#'% C7*  *6C0.zt+5N`ľtˇӑԑՓ٘ݛړ֋Ԁ|p|ڕԂfzٍufijhiihhgffeedfc]Yeڃލp]X\__]^\[\[ZZZYRZzuQU][YZZZYYYZYXXXZZYYYYYYYZZYYXYYYYYRVτڿGJRLkطۚE&ATU\ڀoX^a`ab`YZaeffeghhhjgflwӀӂҀҀ҃ӃՅԅӂԊٜݦژՉԉ֌ՌՎՎՌՌҋЉψҋ·þs]I8w(qklelelfjcjcjcjdmgmhnhmgmg"jf$&% C7*  *6CCA+jtƇ֖ݢڟ؜֚Ԕшݬ٘ukoֈ۔v_hkiijgghgffddcdd`X\sݏߘڄhXY]`^^]^\[\[[[ZZXTd^PY\ZZZZZXZZYYXXZZYZYYZXYZYZZYYZXX\UJnɃMCR͈߭\WwZG;7?KV[\\^__]\[\afjihggggffffeedcddcaa`c`QbՊdUZ``^_`__]_``^__``___a^Ua|UV^cddceda\Zaϼmŵmc^ɷeouslxՖՕyrwxwwwvr{֕ۡڞٞןמڟ۠ۡۢڢ٣ݥܤѝǗIH7C7*  *6CPO;ƕϛڤߨܦ٤ؤ٣ڣڢ٠٠ڠڟٟ֙ғ߷ۛSMRI;6II,3AJRY\\^__^[\ahlkihhhgghggfgffeeedcbbd_SgtQV`b`aa`_`a````````abc[UrԠg\_bbcege]ɳJª>ɳZÏţĻɻ|srpjwӕӓvotvuuvusЀޚߡܠܡݡݡݢޢݣۣڣۥݦߨީߪߪި٤ΜŖIH6C7*  *6CNL:ʙաۥܦۦؤ֣֣ע٢١ؠ֟՞ӜҜЙ͓Μ`?IH55_X(-48dX)-;DOUZ\^_]Z]fmnkkjiiihihghfeggedddbccc`TYڞ_N[cb`a_`a``a_aba``ab`Wcޞʑe^cfb\WS_֐˫oekitԓӑtlppqrnk~٘ޢݠݠݡޢߣߥߦߩۧӡȚ¿FE5C7*  *6CMK:Șբڥݧۧڧئ֤գҠџўΝΜ̛͚ϜњЏްڌG.*3SE*0;DNV[\^][\dmnmllljijijhghgfggfdeecdcedYVߌܦbRbeddcbbaaaaabaaacc_XkݨԥoZ[b`ֿX̴OʲMӻW{ښβϼkaijzԓыplppoqmj΁ڜݣܟݠޡݡޣߤݨԢɜGF6C7*  *6CML:¿Șӡإۧ٦צեӣӢѠҠӠҞҝӞ֞٠ܠޚ܄D#&Dpc6+4>EPWZ\\Z[bkonnmlkkkkkkihiggihffhgedefd\V݄ֈPU^^abdedcccddbbbcc^^؂֦kUMR`mɸpijiι`aq|khՊԽϿu`em΃ӑ͂kkpnnmktӋ۝ݢݠޡޢݡܢޤߥ߫ݩ֣˝–HF6C7*  *6CML;ÿǘѠئ٧צԥҤӣբأۥܤܣݣޤb86DWnubB./8BKTZ[[[Z`kqqqponnmmlklkjkjjiihgihgfghg_V܀]GQTW\_adeefgffeffb\kДXPSI`՛ʲZTVV\_vݼɈc`pыюweinnmhkσۚߢߣߢߣߤؤ͝×HF7C7*  *6CMK:ŗΟ֤اائإڥܥަL%!2>805=FOVYZZX\iqrqpooooonllllkljihjiiihgffgg`W|׎lqrfYSRTY\]\`fgfeZSoЋFH[I\ϙ^W\__־R[ԨϏc\oҍӍtcfkjkԾdiҊߡߡߢߤߤߤߥؤ͝ÖHF6C7*  *6CLJ9ŘР٧ݪުߩޙߢ]*3A?>FNSWYZY\fsusrqppppoonmnmlljjkkjjjhhggghcWvީ֋{rg]WWXZ`ca]RJh|IFMDXܩӕ\[cdb־Ucڰ·`[nҋӍtceiihӾdqՒߤߣޡޡݢߤߦަަߧ٥͝ĖHG7C7*  *6CMK:¾ʚץߪߤۢ֜ל\CGYVGJTWYZ[ZcsxusrqrrrqoopnonlllkmmljjjkjhijgXrד~Ѐp]\^chfw˔ҼYԽNMC>XѢ~V]cbb[mܪްx\]sҌІncgjiտbi҇ݟߣޢۡڡۢܤߥަߧۦΞĘIH7C7*  *6COL;̜ڦޥۢڢ٢ؠ؞ؙܞvREPX[[\]jyysrrqsrsqppqopnmmnmnnkklmlkjklhWmޯxfwהܮܰܮ;ĭJǮIкTNڿHӽbϪi׾S^``a_h̓΃j]a{Ґ{cbghhԽ_oݢڡڣۣܣޥߦۦϠřIH8C7*  *6COM<–̜٤ߦܥ٤آ٢ۢܢޡڅRENY][apzwssssttsqrrrpqnnooopokea`ehklliWhڤʚĂr]aˏˈ־RW`___baտ_ֿ_a_b́ӓsӻZԿaeecտbzߥݥ٣٣ڥݦߧު֥̞˜HF7C7*  *6CON<ŗϝݧިݧަަާߧޥޝiOLU\hwywvuuvvussrsrpqpoqqqolfWHEO]innkVf΃׽Leܼͯı[ɲE[`[\``^ӾYԾZտ^տ]f΅ҏlԼXadԿaԽ^lڏݧܦݧާިݨܩݪެԤɝGF7C7*  *6CPO=șӠߨިܧާޘՉUپFUmzyxxvuvvttutrrqrqqrppneYV^ZHI_molYa۠Ӿ`Ŭ8ʷZյɽǴ\ϹSйRʳP̵Tӽ]_Կ^]^ӽ[Կ]rΈ}cԾ\acվ`һ\xߨݧܧڨ٨۩ܩޫ٦͞ØHG7C7*  *6CPO=șџި߬ܫݪߥݡڙܞ\Tl|}{yxvvwvwvusttutttsqp`Lii>Tkqob_ދyWgҿiƴbʼӼűPűQZ­WηX_Կ_Ӿ^Կ`ҼZԾ]̀юoҼ[Կ_aտbԾ`iՈߪ߫ܫܬ۬ݬڧϠřIH7C7*  *6CON<ė̝֥ݪ߭ެެޥ٢ڢޣрppy}{yyxywxvvuvuvvutrssaEgy;Pkqpj^sϟǯGŨ-ѻ]ϙԺҷʼ}ɽŠȺȲUӼW]Ӿ]ҽ_йYӽ^˂ЏiкXӾ`ԾaҼ]ҽ]xߛ߮ޭݭݫצ͟ØHG7C7*  *6CNM;–ɜԥ۪߮߮ަݥަߧߢzmv{{{zzxywvvwvxvutruwhMMuYBXorrn`f͠˻uůUɵ`ѪƴeͶOԾX^Ѽ[ϹXğ͇ӿeϹWѼ^л^йZd֋ޭ֥̟˜HF7C7*  *6CNM<˝ץݫߧߨߨܝޞԂnu||zzzzywxzxxutuuvwrdL;řΟبݬ߯ݭ߮ݣۚ׊{}ց}}}}z{zz{{yyywwyyvwvuwufn̍ϹU˲FӾc~}~yӾaҹRӻZ{ڢաҡССТΡΡԣݧޫңȜJI8C7*  *6COM=˜ʝԦܬܤۤݤߩޠԄՅ׋Մ~~ԀՁ~|||~~||{{{zyxzzyywwyud{~ηP˳Gk̇ÁċȈԽ^ҹOsݤۥ٥գѢϣϢӥצاڧު߬ӤɝJI9C7*  *6CNL<ʞبަݦܥߥ֙׿X[тܝܚ{msy{yyyӀ|xz{}}}~}|}|zz{{zzyxzulمֶm̴IϹSqɉɘʚ{ѸTԾ]ۍަڤإդԤӥҦҥӥا۪ޫ߬ӥʞJI9C7*  *6CON=ęТ߭߬ܧڥܦ΃д=ּMwٔޡ׎ӄӂӁӃՆҁ{x{|{vwy{~~~~||~||{{{zwp~֮ӿdʹGdzǍӴХлc˴MwޡܧئԦҥԦԦէը֨שۭޮ߬ԥʞJI9C7*  *6CQP>ʝ֥ݩڧܧڣp҈ߦ؎ֆڗޡۗ׈Ղ~zyx{}ր~~~}||}|zlwףӽYϷKpȆ˞О̵S̸Xϑۨߧݨ٨קק֧ӧҧҧӨժث٫ۭޯݬҤȝJI9C7*  *6CQQ@ˠեުܩܩߪؚۧߠڏzqw}׀ցׁׂ~}~znډҹOվ]w͗ؾۻyϹVڦצբۤݪة֩ԨԨҪӪիի׫ۭ߰٪ϣĜIH8C7*  *6CPO?ƝϢ٪߬ܫܫ߬ަףӞԘޟՃ~||ւׄՂՀ~~ttڦηPѹPvɁԩӘӾ]rޣأբգפ۪ۤ߫שԩөիլլԫ֫ڮݰޱ߯ש̢œHF8C7*  *6COM=™̡۬ޮܭ߭ۥ֣ԢۣӋܥޝ؈Հւփԁׂցց|muآмaȰFԾb͍خٮsgޥܥ٥ե֥إܦޮۭڭج֬լ֬خ۰ܱܰݲޱޯשͣÜHF9C7*  *6CON>śТޮ߯ޭ߮ۦ֥ԣ֣ާkrց}փԁ|xx{{ڒݾ˂ҺTɰB̵WsuɈΖ}iهݧۨئ֥դ٦ީޮ٬իի֬خٯ۱گܱܱڮթˣGF8C7*  *6CQP?ʟԦްܮ٧ԤӤڦޣٚӺMѸIޫ׈z{{׃ܒϿ|ʲH̲=̳BϻeĀͼo;yоyԿfփݨڦ֥զקܩ߯ݯڮٮ֬׮ٰ۰޲ݱܰԩȢFE8C7*  *6CQP@ˠԥ߮ޱ߱٨ӥҥاܥۥܞޝжE˭2tׄsy؉ƑĮJç1ǯHϿxƋξwο}~ߨڧק֧קکߪݮڭ٭گڰٰٰ۱گԩʢ¿FE8C7*  *6CQO?ȞҤܭ۪էԧةݩީئ٤ߧh˭3ԻSۥܚvvܔʷj:ȷqͤɓÅʍЕӚڣ߫ܫ۪٩۪߬޲ڱڲڱٯҨȢFE8C7*  *6CPO?ƝΣ٬ޱ۬ը֨ݬۨ٦ۧާןδDϵDъՂ|ߟ˞Ժ̗͢؛ݞڤ֥֤ݦݫ۫ܬ߯ߴܱٯϧšEE8C7*  *6CON>Ü̢ج۬׫֪ګܩ٧٧ݩҼ[ʰ9pֆݝةߠ٥գ٦ߩݬܬݮ߲߯۰ШơFD8C7*  *6COL>œۭͣܯ׬׫جޮޫک٩۩ߪnǭ5кUݩܖݬݠڦեاܩ֪ɢ¿FF8C7*  *6COM>ĜФݮܮ׬ثܮެ۪ک۪ݫݡҗܭ̅ȭ9ʯ<яۛՉԅ֋ܛޣܧߩܨ֦Ԧاޯ߰٬̤ÝHG9C7*  *6CON>ƝХݯ߰ح׭ܮ۫۫ޭإӞڞһYǫ1zܝ֋Ԃ֌ިުاէةެޮѦƞIH9C7*  *6CPO?ƝΤڮ۰خ׭ݯ߯ڬ۬߮ڦ٧ߨ֛͵HӾ_ڔՅޣޝߩ۪שתݫԨɠJI:C7*  *6COO>Ŝͣحٰׯ۰ݰܮݮۧܧޤݤψ͵H˂؎׍ޟߟުެתשةެըʠJJ:C7*  *6COM>Û͢جܲذ׮د޲ܮܯްުڨݨߨݨϷRɮ<ؠՉژݠܛު߫ޭګت٪ݭޭӦʟJI:C7*  *6COM>Ü͢٬޴ڱְְ۱ۯܯ۪٩߫ݨݨvĦ%տ`ٕؖ՞ٛެݬ߭۬٭ܮۭѥǝII9C7*  *6COM>Ĝͣתܴܰزٲ۲߲ۯ۪ܰ٪ޫޫީ٥˱=εFؓҞ͚֥ߪߪ߬ݬ߯ܮ߯ڭϥŞIH9C7*  *6COM>›ɡѨ֮ر۳ߴ߳۱۱ޱܬ۫߬߫߫sʰ>όޜ؞Ѣϣئުߪޮ߮߰߯ܰݰ٬ͥĞIG9C7*  *6CMK=ğΨׯܳ۲װ۱ޮܭ߫͵MηPޱڧФҥۨܪݫ߰߯ްޱܱ۲޲ثͤÜHG9C7*  *6CKJ<ğԫ߳ܲٲ޳߯ޯ߰ޭޭݥ֜ޭя˲At۩էקުݫ߲߬߰߯ߴ۲۲جͣÜHF9C7*  *6CLK=ˢۮܳڰݲޮܮޯ߮ݭߪ٨ףٝwлY۪ݗܨ֦רݫޭ߭߰߳ܳرܲ׫̣œHF9C7*  *6CNM>ÜϤޯܴ۲߳ݯݮ߮ޮڨاܩߧޣߪʀ֡ܬژکը֨߬߮߮߯޳۲۲޳٭̣œHG9C7*  *6COO>ƝХڭ߲ߴ۳ݴ߲ܯܯ߯۩بڨ߫ߨۢܧު۝ޣ߬٪Ԩש߭ݮܮݯܱ߯߯ذ۱ޮϤŝIH9C7*  *6CON>ŝͣիٯܳߵ߳޲߱߰ܫکݪ߫ڦݣzӿmВڠߪ߫߬٪ԩ֪ݮ߰ۮܯ߰ܲٳݴԧɠJI:C7*  *6CNM>ȡҩ۰߲ݱ޲۫ڪ߬߫ݪݩӾjʰIqטۡު۩ޫ߬ګժ֫߯߯ܯް߱޴۳۳޳߮ԧʡJI:C7*  *6CLL>ȡ׭߲߳ܲ߱ܬܬݬݫΎ̇ް߷|Ϻ]zުݫ۩ڬ׬ڭްޱ޵۲۱׫ϤƞIH9C7*  *6CML>Σް޳ܲ޳ޱݭܭ߯߭߭ޭݬڰϓrɲKƭ>ͷT˃ߵ޴}ι^пkӏ߫ܪެ߰ۮ٭حݰ߲۱ҨʡGF8C7*  *6CON?Ɲҥ޳ܳ޴߯ܮޮ߮ݭ۬њ˴SƬ=ƭ@ê;è5Ī5ɯ?ϹWv٥ј˳Mʰ@l՘߭ެۮ֭֬ݱ߲߳ߴ׬ɢFE8C7*  *6CQO?ɟӥݮݲݳߴݭޮ߮ݭ۬ޭι`%%©8īAƭCǮ@Ū4¥)*ɱGύݳɆ̷YDzIrݮެ߭߬ޭ߰٭լխ߲ܰ޲ܲ߳޲ܮͣ›HG8C7*  *6CPO?Ȟϥ٭޲߳߰߰ܭܭޮ֤߭˲Q+§3ŬBƭDɯEʱFȯBŪ8Ǭ;ιYύ՟thuؕޫڪٰ߲֮֮߬߭۰߳ݲ޲߳ܭХƝIH9C7*  *6CPO?ṣ̂իܱ߳߰߰ޯۭڬܭݭݭܪАҿgȰH¨;:Ī=Ƭ<Ƭ;ȰFлcΎ֥ỳݚܪګޭ߭ݭ߯ݱٯ֮֮ڰ߳ܲݲ߲ݲ޴ڬХǞIH9C7*  *6COM>œʢ׫߲߳߰ݯڮۮ߰ܮޫܥޢޝ̀ȲRè:ĩ:Ū7,ī;ΏܪӞ|όެ٪ܭܮޮ߲ڰׯծ۲޳ߴ߳޴ڭϤŜIH9C7*  *6CML>ÿʢ٬ݲ߲ްܰۯۮޫҏtѾ_˳OŪ=ĩ9z޶к^ɰAкYʂЖԘۥА̎ܨݬޭڬݮޯ߰߯ܮ߲ڱׯױ۳޳޲ߵ٭ΤĝIH9C7*  *6BNL>›Σݮ޲ޱ߲ݲ߲߲߰ݯݱޯެޜ҉}qϺbl֢x,"ç3Ʌ߶֤ɉuпdqܖݰޯ߭ݬۭ߮߮߱ܰܲٲزٱ޲ݱ֫ͤÝHG9B7*  *6BON?ƝҤ߳޲߲߳ܳ޳ݲݰݰ߮߭߫ޫА̸XϹaܴҚҽjϹ_θZǮB¦/ƫ9ȯCȰFӿmݴ߶ݰϔq͹^̷VͷWκ\|ݟޭ۪ެݭޯݯ߱޲ޱݴڳزٱ޲߳߳ժˣGF9B7*  )5BQO?ȟԥ޲޲߲ܲ߳ܲ߳߳ݲ޲߰߱ݭެަ՜ڭצ̶[é<§4,(Ƭ:ҾfʆɃzЖ޵اzɲLê?ŭGʳP͸Zs֏ݜ߮ګݬ۬ݯޯ޲ܰݳ۲ٱذ޲߲׫ʣGF9B6)  (4BQO@ɟѥۮߴ߳߳ܲ޴ܲݲ޳߲ܲۯ߱߮ݭ߭߮դˊp˵SʱGлbДܰ۫ܮ߷Вաw̶WɱMʴXпl΃ؖ߭ܬܬޭݮ߰ۮ߯ܲ۱޳۱ذذ޲߲ݱܭͤœHG9B5(  (4APO?ǞΤٮߴ۲ݳݲߴ޳߳۱ޱޯ٪֢ϐpɄ͐Ȇѽkκ_w֔ܣީޮݮ߰ްܴݴ޳ܲٲٲ޲ߴݯЦŞIH9A5(  '3@ON?ŝͣ׬ݱݴڲ߳ߴܲݲ۱ڰްްܫ٦ݧҜȃuмfʳWɲTʴXѽbjl{ۛ߮߯߮ްޱ߲ܲݲ߲޳۲ٲܲ׬ϦǠIH:@4'  &2?NM>Üˢիܱݴزݳݳܳ۲ݱޯتکާ߫ߵ{DZO6+.Ī9ŭDƯJ̸X{߲߯߰ܳ޳޳ڲڲ޳جͤĞIG9?3&  $0=NM>ɢӪݱݲװ۲߳߳ݲݳ޳ٲܳݰݯݬ֪ܬܪܧثȅѽiʲP5&$+ʳFn΅͉Ւ߭ݯܯݱ޴ڲݲݲܱ۱ݲ۬ͤÝIH:=1$  #/;NM>œʢجܲذ۲޳ݳݲݳ۳ܳްܯް߯٬׫ܬޫݩ۰ڬˌ˵Yé@*#Ƭ:ҽZnt{ڏޭޭޯݰݰޱ޲߳ݲڱݲ߳ݳܱ߳ڱܱҧȠJI:;0#  ",8MK=Ğͤڮܱدܲݲܲ޴ݳܲݳݳ۰ݰݮ֬ܯޮߧқϖ{ȴJưIdzQϽ_~ۭޱް߱ޱ޳ܲڱ޲߲ܱ߳߳۰ݲթͣJJ:8-"  *6IH:ɠХ׭ݲ۳ְܰߴܲݲݳ۳۳ݳ߳ݱۮ֫ߩިܥاأߥޞܣݨݭݮݴ߲߲ܲܲ޲ݲ۱ޯթΤED66+  (2@?3{Τ֬޲ڱְڱ߳޳޲޲۲޳߳ܲ޳ݱ٭׬ުۤݣެ߭ݭܭ߯߯޴ݲܱ߳߳۰۱߲߲߳٭Ҩ;:/w2)  $/10'jΥحر԰ذܱݲ޲۱ݲ޲޳ߴޱޯ׬٭߰߯ڥڤ֢פݩߩޮܮްܯߵ۲߲ܲޱ۰ڰܱ߲߱߱حЧ-,#f/%  !+SyѦۯ֯Ѯز޳ݳߴ۲ܲ߳ݳ޴߳ڮ֭ۯޯޭݭ٪٪ޭްܱ޳۱۱߲߳ܲܲޱ߳ܯөyP+!  (4~|cըܮ߲֯ѭدݲݲܳܳ޳߳ܲ޴֭׮ޱ߯߰ݯۮڭ߯ޯ޴߳ߴ޲ڱ۲߱۰۱ݰ֫zw`3(  $.XVEիٮ߳ޱ֯Үڱݲܱܲݳ޳ݳݳ޳߳ܲծ۰ްݮۯۮ߰ܯܱ߳ٱܲ޲۱۰ݰجSQB.$  )..%`׮߲֯Ѯذ޲ܱ߲ݱܲߴ޲ܳݳݳ޳ذ֯߳ޱ߰߰ܯݰ۰߳ܲرܲ޳ܱܲܯ+*"\)  $0iٮְѮذ߳۱޲ݱܱߴ޲ڱܲܲܲ޴ׯװݱ߱߱ݰݱ߲گݱ߳߳޳۱رڱ޲۱۱ܱٮf/$  (HG8uӧԮѭذڰܲݲܲݲܱܲ۱ٱܱ޳߳ܲذݲݱް߰ްݰ޲ܰڰ޲߳޳ڰدݱ߱ܰ۱۳ݱΤCA5p(  # 5wرӯٰݱ޲ܲ۲޳޳ݳݳܲܲߴߴر۲߱ݲ޲޳߳߳ݲ߲ܲr2#  %A@4kͦݷԲڳ߲߱۱ܲ޲޲ܲݲܲܲ߳޲޴޴ֱܳ޲ݲ޳߲߳ߴߴ۱ܱѥ=<0f%  'xv_ܸܵ߱ܰޱޱݲ۱ܱݲ۱ݲݲܱ߳޳ݲ޴ݴ߳۳ձݴ޲޳ݱ߳޳޳߳ݳ޳ݲ޲ڱ۱ur['   ?޳߲޲ܲ޳ߴ۲۱ܱ۱ݱ߲߲ߴܴߴٲٳߵ߳޳޴ݴߴݲݲ߲߳ܲܲ;   !32'T߹޲۱ݳݳݳݲ۱ܱ޳߳ݳߴڳٲ޵߲߳޳ܴߵ߳ߴ۲ݱܲܲ߳¿+*"P!  !=<1cģݳݳ޳ݳߴ޳ݳݳײٲ޴޴޴ݲ޳ܲݳϦ=<0_!  ED8hЩ߶سݵߵߵݵݴ֨ED6c  A@3^ʠ޸Ǟ>=0Z  ..$J*)!F  0~{cܯݮ|{a.  88-P|蚘y55)N  BB4Xpȡɢыq??3V  )(!@baOtvسײݷs[[Hn''>  2990NNNAa]]MoggUykkY~kkY}kkX~jjW~kkX~kkY~jjZ~kkZ~kkY~kkY~kkX~kkX~kkY~kkY~kkY~kkY~kkZ~kkZ~jjY~kkY~kkY~jjZ~kk[~jj[~jjZ~kkY~kkX~kkX~jjY~kkY~kkY~kkY~jjY~kkY~kkZ~kkY~jjY~kkY~kkY~jjZ~kk[~kkZ~kjY~kkX~kkW~kkX~kjY~kkY~kkY~kkY~jjY~kkZ~kk[~kk\~kk[~jj[~jj[~jjZ~jjY~kkY~kkY~kk[~jj[~jjY~jjY~kkZ~kkZ~kkY~jjY~kkZ~kkZ~jjZ~kkZ~kkZ~kkY~kkY~jjY~jjY~kkY~kkY~jjY~kkY~jjZ~kkZ~kkY~kkY~jjY~jjY~kkY~kkY~kkY~kkY~kkY~kkY~jjY~kkY~jjY~kkY~jjY~kkY~kkY~jjY~jjZ~kkZ~jjZ~jjZ~kkZ~jj[~kk\~kk[~kk[~kkY~kkY~kkY~kkY~kkY~kkY~jjZ~kkZ~jjY~jjY~jjZ~kkZ~kkY~kkY~kkX~kkX~kkY~kkY~kkY~kkY~kkZ~kkY~jjY~jjX~kkY~jjY~jjY~kkY~kkY~kkY~kkZ~kkZ~kkZ~jjZ~kkY~kkY~kkY~kkX~kkY~jjY~jjZ~kkZ~jjY~jjY~kkY~kkZ~kkZ~kkY~jjY~kkY~jjY~kkY~jjZ~kkZ~kkY~jjX~kkW~jjX~kkY~kkY~kkY~jjY~jjZ~jjZ~jjZ~kkY~kkY~kkZ}jjZ|ffWx[[MoMM@a88.M1      ?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????( @ /56666666666666666666650 J30 e_mfoinhkeohrkqjqjqjoipjpjtmqjqjjdnhmgjdmgqjnghb2/ N A=%ö.ķ//001ȼ5ĸ4ø4ĸ4÷4ĸ4ķ4˿7ĸ4÷3/µ2/.¶0ö0ö.-%GC8*+,Ķ.Ǻ1ǻ20Ź3ʾ5ȼ5ź9ɾE[fcXCź6÷3ĸ30ķ1ƺ1ƹ0ɻ/ö,ŷ,0AG0--ŷ0Ȼ3ʽ4Ź3÷3FHIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIHF?-!V'% GCVRSNYSWRVQTOWRXSXSZUXSXSYSYSWRUQYSWRXS\VYSZUWRUPSNYSUPXSSNTOWRXSWRTOKG'$ W% TNIŝ(.2/021/21¶5ĸ6344342434ǻ7353./310.022///%PK ^'C@()˾/Ⱥ.˽0-ǹ1/µ01ö25ʾ5Ź4Ź4ɽ6Ǻ5ǻ6ƺ5ɽ6ƹ4ʾ79ʾ6¶3ǻ4.Ǻ4ƹ30-/ƹ0Ȼ1ķ.ǹ.˾.´+)+NI/ F(µ,*+ƹ.ö/ʼ1ķ0ǻ3/2ɼ5ʽ5ʽ6ƺ4ĸ47ɽ6ʾ9BFD=;̿6÷4ƺ51ȼ5Ÿ3.1¶1ȼ2ö/ƹ01´,´+Ǹ,ö./ R  a1õ-´,,ö.ŷ0Ƹ1ɼ3̿511ƺ477ɾ6·9VƿlڔލmGź5ƺ5Ȼ62µ2ƺ3ʽ4˽303Ƹ/Ÿ.ɻ.ö+˾1Ź7me3Ȼ0,´..Ⱥ2˾5ǻ4̿6˾6÷4÷4;Iuޥ]ƻ:3˿6ʾ69ö1ʼ4Ȼ3ķ03ǹ/ɼ.3Ÿ7re43˽1-/ķ2Ȼ4ȼ4ǻ5;:ǼJƃj?9Ǻ5Ź4Ǻ3ƹ25ɻ1ʼ1̿0Ȼ15re2Ȼ13ʽ3.02ȼ63;m״ߔIø4ǻ5ƺ46Ź2ʽ3ʼ1ķ/Ǻ16re3Ÿ1ķ2˾5÷2.12ǻ9ƈVĹ5ȼ62Ǻ3ǻ3ö0Ƹ005re00./÷32.AءڱӯȮ`242ö2ö2,.3r e.//-.2=Ԙ߳ļۺX330.,/3r e++-0..˹ߥǽI1..+.3re0,+-/ǽVÿزы2-+-13r e120-9՗ۼݼݲӞ׈R,-.03r e),.1ɿgɯےҖ3--./r e.,)9Ґ|߄ށ|ywvwuljj٥غݫY---/r e'*)Hۦyޛޖޑޏߎ݁woiecbd`Ou}ד׍ݍݢݝߛ߫߮y3**,r e%'(¸lܬޞݓܔۏۊۅ}jb_]]\\`ijhwؙ֞؊܏ܓܗݞߧܣۦ͏>))*r e''%˔٨֝ڠٍؕؑ؆zfje][ZZ`gg^ϑ^њƞ}؀نًِٔڞ؞ן՝J&&(r ez"$(ݷҔ՘ՒՊՄrc_beVWZac[Woָcב۾{f{օ։Ԍ֖ԗҖӚV%&(r e~x#$:Вۭ۪|e`^\WPRQXTVWVՀرf^h}j]exсхъӕώϑe(&'r ezs!{#?ԝئt\]][TKKPVVVVׅۦԉXXe__new~ˀЏʅȇ_wpwoxpr etmzr=޴Ґ҇cba`ePPOVXWXZsێrϏhehϊao|~Ί~Xzr xqxr r e]ľyʈՉ{hddobYYcZXXXXYryٻhfdnei{рՆӱ́wO3zs%r eΗqf^gn]\]^fd[ZZZ[Xevwhfju҃}yҎۙߡϕr eϚߤޟh]X^_]bcaatp\]]\xժϧtllvyvۣٗr e˙أԞ޵H[fhgeb}|a`_ۋ̈́aЏИ~ṕڜޣעr e̜ߧiWepolieuׁٍ~ԘbrzkՎߣߦڦr eџߦ}usqiel͙Ӳ}ӿakpئr eϟ~zwroprҽd͈ڢݪr eԣޠۗք{؇~ʂڨڪ߯ܫreӥߧܙ̔ʆޟۯթreҦ߭ߪݩߧۭr eΤ߲ܭ߬ݯr eͤݩޫܮr eѦݫ޵۬ޮڭreѦ߯нdpۣޱڭr dѦݣ٧ڬܱۨܦߧۭ߳q  _ΤӕԒޤ߲ݮl =ǞޱޯӨ I~c߲߲߱߱nG߳$#S 4hhS˷ӹԹԹԹԹԹԹԹԹԹԹԹԹԹԹԹԹԹԹԺԹԹԹԹԹԹԹԹԹԹԹԹԹӶrr\ 6 ' 4 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 4) (@ @  !4AILMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMLIA4!.M 1. A>@<A=C@B>B?@<@<D@@<EAA>D@EBB?C@C@C@D@B?@=B?C@A>C@B>GCD@C@FC@<D@<9B?D@@<D@C?@<?<B?B>B>D@?;@=0- M./aIEМ-)33+25/2-301237025132.14022714410*13.3.-/1320/0.%GCa/ "Vke䛑&ķ/4.5ķ1-̿4Ȼ3201ɼ529ǻ5:3Ź59¶3ƺ5˿84ǻ6ʾ7Ǻ6ɽ78;4937.0ƺ5ö3˾52./Ÿ2Ȼ3Ź1Ϳ3.Ķ/2Ķ/**f`V" 3LH*Ƹ.'0ƹ-˽/Ϳ1,-4-Ǻ2.ƺ3µ26Ǻ47¶3ĸ4˿7ȼ6Ȼ6ȼ6ƹ5ɽ6ɽ7Ÿ4ƺ59:ʾ68,7-µ27ö20--ö0Ǻ0ƹ0ο2,ƹ.0Ȼ-)),1DA3M(ö/*+(1,ʽ1Ϳ2.Ȼ2Ź3/227ɼ58Ź4Ź4¶4˿77Ǽ6ʾ7ɽ7ʾ89˾8ĸ58<8Ź52ʽ60ĸ37ķ3.010ɽ2˽2.ǹ03Ȼ.+µ+Ķ+/..L w1-ο/)ƹ/+4+3˾4ƹ27.ƺ41˾6ʽ67ʾ7ɾ7396˿6} J77.g99/i88/i88/i88/i88/i88/i88/i88/i88/i880i88/i88/i880i880i88/i88/i88/i88/i88/i88/i88/i88/i88/i88/i88/i880i880i88/i88/i88/i88/i88/i88/i88/i88/i88/i88/i880i88/i88/i88/i88/i88/i99/i66.fI ?qupzilla-1.6.0/src/lib/data/icons/exeicons/qupzilla_os2.ico000066400000000000000000001612261226107126500237070ustar00rootroot00000000000000BA\CIN@@@CIN@@@BA\dCIN@ @CIN@ BA\CIN@ CIN@ƽJGCM?4?B?>=3<@@B=9=?8Ⱦ8:B?<Ƚ7;D>9>AG;;>>=@;9@<@<99;9=?;9?>7;BAD<8@AD8:F;4Ĺ4=ɽ8:ʾ89><<@;=A=ĺ7==>?===Ǿ=ƾAV`Ļ@<>KF4:AA=>ø5ǻ7??A>;=@<9@<@<98:9=?<8@?7;CAD;8@ADǼ6>;Ⱦ8:ǻ7;>:=?;?@;Ǽ9=<>>=>;7ɿ:QfLǼ40ĸ7?M>/:A?>F@ʿ9<<=A>ɽ9>;3˿8Ĺ5˿7<:8Ÿ502<ʾ9Ÿ4:[`M>Ĺ4>=//÷1:@,-8:87-/̿67=˾70ƹ591/ö5=Ǽ7ø63><Ǻ8:=@ƺ6ø6¶6;<>ø6ø6÷6=<:÷5Ź7ɽ9:;ǻ8ȼ8Aɾ93=?>>1<<@/3Aķ6+.˾8ö6<:/9<ĸ62/23ƹ57Ÿ3Ϳ68Ÿ4990ƹ3ǹ3ŷ2974ƹ1-0Ȼ6·54;?LOACɾ93<7*+˽0:9'.84Ϳ2ɼ2(.ƹ288/15ĸ3./97¶328=ƺ6ʽ78>˾74ĸ5̿8˿9;Ȼ74¶6<:Ǻ7·5Ĺ6ȼ89ʿ9ƹ6÷5@ʽ82>><94<;8,̿8=1+0˿7ö4<ö31:ƹ52-./1˽4ķ1ƹ35Ķ0Ȼ27Ķ/.ɻ1µ-231Ϳ1*+Ⱥ1019ABǽ8ĺ62ɾ9CŸ5/7;/'+̾1:4)3645/*µ1Ȼ3:Ȼ3-Ǻ481138ö4¶4Ƚ6<˾8ƺ6ʾ8<84Ƚ7ǻ79;:ķ5Ȼ7=9ķ5ȼ7Ȼ7˾8:˿9ƺ6¶5>ź61A==˿89==2+<;1-ƹ5Ÿ59=37Ȼ5/0/0/ȼ4ǻ3ƹ36Ǻ2ƹ16˽2,ɼ1ǹ0252˽0µ-+ʼ.*)ʽ4>@45Ƽ7;5ĸ6?/*3Ƹ.%,ʼ1:Ǻ1*5656..Ǻ479/.7ƹ42179˾8Ǻ6;;ȼ7ȼ7;93ɽ8ƹ6:<<Ź7ɽ8<:ʽ8;ʿ9:<;ȼ8Ź6>52?=A˿9=<:00?˾910Ź6ƺ6>:Ǻ5820/¶3/¶3ɼ5ķ37̿5¶276.ƹ1ɼ1364ɼ0ĸ.*ʼ/´,(̾/9;04DFA?118,*2-',4;-,6655.ö2ɽ6:˾6-µ3733÷4<9Ȼ69=:ö5ɽ8<45ʾ9:<=ƺ7ź7=:;:ɽ8::;:ɽ9?¶64>=C<=;ĸ7/9?÷615÷69=Ȼ6̿8µ401ƹ4µ33ɽ6067ƹ368./4476Ǻ0Ÿ/-Ⱥ0ŷ.+˼/53*2BBA:;<-Ķ-7+)3ŷ/*.7:).868˽51̾68:108Ȼ7Ǻ61899ɽ8=;ʽ8ʽ8;Ź62;;<=ʾ9ʾ9;ɽ98Ƚ2Ĺ-ǻ.01006,2??B<;;÷6/@=42ƹ7Ź7<:ʾ8ʾ83.2ɼ6ĸ48338Ȼ569/-Ǻ3ɼ39:˾2µ/.ö/ƹ0,˽062&0BA==>;ǻ88+ɺ08,)5Ǻ1-0:7(µ2978ƺ3ǻ58;8.ź68ĸ5÷55<;ɼ8::<ƻ8<ʾ93;<==;6,ķ )<˿EINONNOǺ>ƹ-%(2;;ǻ855A;5·6ʾ8Ź7<::ǻ60/ǻ6ƺ68ɼ6Ź5;ɼ5ʽ6:µ2,Ÿ2ƹ28;5/..ǹ1ƹ0ʽ153&*;>>ABC@ƻ72Ϳ2-̾19++8ö1-Ȼ3=ʽ4+687:ʽ6̿79<2/9ĸ5ƹ6ƺ7;<;Ǽ8;>:;:384110ǻ@ɿeօb1/ƺ)"ʾ4Aȼ84ǻ7:<:ƺ79÷5/58˿882::ĸ4=7*ŷ3ʽ48<7¶1..Ⱥ23342'+66:CBAAB?ø4,ɻ0*ȹ09+.7/-Ϳ5?2.Ϳ7ʽ69;ʽ68<8,ƹ7;4ƹ6:><9;>=Ź67!Ǻ'I^yĺN8%,5;˿9;ķ7˾9;229:<ĸ5ƹ6;ƹ5;?.2ʽ66<9Ȼ3//47663&,637@@;;<=:=4˾,ƺ7g¾üݬՅȾK˾,)4ȼ9Ź6>ǻ80ǻ7:<:÷5<8;Bø42̿7ǻ5;:Ȼ50-ƺ37894*ŷ0612=>˿:=>>=;;8Ǻ0-ö0*ɻ28,µ181µ3>?1:̿83=<:<:4ʿ::3Ǽ8=>8/-TȆоԽj28=00<=;59=;E9/Ǻ5¶4<;Ȼ5Ÿ40ŷ289;5+ʼ27Ƹ0̾178ƺ7<@@A@<856Ǻ1./+ǹ38-7<02D>39ĸ6˾8>;=?:3:·6ĸ7/¶539?̿7Ȼ52µ3:9=8+˾37ķ0363Ȼ5;=;:AA?:ɼ25:˾40/(÷3:07;1ĸ4B:3ʽ72;A>>>ȼ7ǻ8ʾ9Ĺ-*WǛɼ¼l*˽'9=˿9=<9Ÿ4129;=9+˾48Ⱥ2573ʼ27:ǻ8:;=>@=5ɻ27;7ķ3/+̿6:.9:.Ȼ7Eɾ83÷65BA;Aɼ85ƹ6Ź6<<÷5/1;=>8)ɻ38Ȼ366454ö35;@A=;Ǽ897559=9÷3/,9:.9˿8/=E35ø7ɽ9A<<34pȿ׿C)˿7@;3÷7ǻ8;<Ǽ721<@@7+Ⱥ5;665ʼ343µ03;@@@>=Ĺ84ɽ5468:=92.-ɼ79/ɽ8÷60AB2ø76;?,Iʢúɴp+555ǽ9;<ȼ823;AAȼ6+ɽ5<895ǻ3ǻ3Ź2/÷09=>;:@?<Ź6µ2Ȼ3Ȼ4ʾ579<̿70-+ƺ6ź60ɼ854C;0ĸ8ö.-j뻼Űø0$Ƚ9:˿9˿9ö52=BCµ4)˾7;8:Ϳ6ɽ4˿40/ʽ268ɽ9÷7<=@A@9Ÿ2¶2ɼ4Ÿ47::<ʾ70--Ź7ƺ81ɽ946D·7$µ,ńʷʾG÷#ƻ8Ȼ9ʿ:4̿:AE·6)ƹ6;89̿7÷4ĸ3Ź4ķ2̿58524?0*ɽ8̿9ǻ7ǻ6Ÿ6ƺ6Ÿ5ɻ6ɻ5̾670,ķ3;ĸ7245<<ƺ93¶3̾6Ź40.0Ǻ7<:÷6ɽ9;4,0Ż:7FߩۦإȜº¾ӵv):/)̿9;ʽ9ɼ844Ķ5˽8::ʽ6//Ϳ5Ǻ40/ĸ7@@<ȼ:6¶622ȼ6µ4/,/ʼ8;Ǽ8ø66Ź7303!:˕Ηɚ½y'<>ʾ9Ÿ764Ĺ6999ö4/3ʼ6,%-;A?>>>Ĺ921222µ42+,4:ɽ957749޹ݹc!?=745Ÿ7:˿95/0ɼ72''/:?<Ƚ:ɽ:46ʾ:÷71133245-*2ǻ9ɽ:¶7Ź:)0޾gö"657ĸ7̿9ɼ92/4ƺ7.(,Ȼ47ǻ87ø8Ǽ9Ǽ82/04ĸ5÷50240251*-6<ź3¶-޿žɾO"7ø7ȼ:ƺ83263--3˾7ö3-06544661,+351352/52,,2"ٓȫѩ·9,<ǻ83361,2ȼ8ĸ6/+-243Ż9Ƚ:5530+)-223÷84/362Ǿgʽ-Ĺ4455//5¶60,-./16˿<<<Ż9Ĺ95/-.++0256316+C򿽷x 5314µ64,+.0/1÷7ź:8ø7ù76574--//-.22472+ιǿƧЪѠȼB%254.*-/.044577ƺ9ǻ:>ʿ<8301//-.1134"sɿӼƨڜ(11+),//243159ù9Ⱦ;ɿ;ACBŹ:2122/+.24'4juˤre*+024343/26·:ø:7767ʾ>@ʾ:72331-+/$͂׃p_cߵ+&243110123688·9¸911258ʾ9ʽ:76630BݪͻێIyr1321/012246Ĺ:ĺ:ù900/..1577876#Ɉ~ѽKxᱬ8+32/02012564221/,+*,-/137*ùJ~ڇĹHw1.10031//1355Ż>·<6.)()-131$͂pca{khozNv߮/'0....-.36655:<Ǽ>Ź=5.*(+/-@f[|dZs~~~~zksY7F\qߓƤtid--.211245455+,267740*&żm|MWV~|{{yyyz{|~u]D^pM@VyԠ֜'/64661011332-,)''+035,)˖qIaT}wsmigdddddefillbFCUY[ZZZZ[XSܳQU]\mYhUac_e}هׄօՈ։ՊԊԌԎҍ֘ޫґҔӕҖҘӗۣ˿~(%+*-/11//+,,*)),żx٩͆ҐЈԕ΁ԇՉӈ~r`bccbaa_`_^SX\-,;Ebh4?W[YZZZZZZVWٽ[Z\ZSYM_tIߊ|Waab_c}ׅԂӄӅԇӈԊՌԍԎݩ֗ҏӓԔӔӖלϑ7'-++--,--'(('&~%({čݴ{ю̓؝ץxԆuYLadabb`__^^ZO;Cig7NmaTSV[ZYZZZZZYPṃؒ[Y\]]]WہoEWa_`b_Ye~փԂӄՅԇӈԉӊ҈ܣٟЇҐґґђ՘͎5$*)()**+++**('()zˆՠ̂̀ך|qeXPeaaa_`^_^WG+dw2=MY[ZXXXZZZZZYR]ܨdS\\\\ViۈZ]^_`\\d]jՂӂӂӄӄ҅҇шτٛ٠·ύЎΎ͎ѓʋ0zrw#x#w#y#z$|$}$~$)))(()*|ċ{̓~إeK[LXc__^]]]\[UA$v"ݔߛЩխߡުڧܮۯۮ۫ɮ5ٛߝ٨۰߯ܨڜllyڪܬݳ޳߫Խ[׉ݭ۬߶۳߳ݭ͂ԽWۗ՛ް޶޴ϸMޞӣݫݵٝכmة޴ݫܪޡ٢׫޵ߴޭ߭ߣ֞vݡج߲ߵߴpӔϐp߭ٯߵޯȀ(Ĩ4ũ/ʰ>ЍߵιWu֯ܯл^)Ī:Ȯ<ηRӖ՞wݛݬ߳װݰt̳I+֞zٟ٥Ќ߰ߴرؘs٩җѻ_ǭ:ݯإϑ̇xևٳ۝~̴QɰAx՛՞лaʳOi֊ݮڳߵߴݲȂ˵Tzu֏ߵܴ޴ܴܴޯݲ{è8(ιSrܓ޵޴ߴܴߵۯѾdª9ӿWאݞݴ޴ڳ޵ݰ߬ݪߵ޴ײߵ޵ߵ۱أݩ޴ֲܴߴߵٱްߵ޵ݳֱߴߵܴ޴ݳ߲ݴߵݳհ޴޵ݴ۴޴ݴԲݳ޴޴ڴݴ߶ԡֳ޴ݳݵ߶ߴ޴ݩ٣سߵڴ޵‹~{ܴ޵ڥozڢp̒ϙ՜ƉF@>:A=<==A>>?:<<>?>>Ƚ8>>::>>=>ʿ>XFǻ5˾56̿6Ź474ǻ7̿9<̿9:̿:ʾ9˾99<>:÷64:Ź61ʽ68Ǻ460ĸ4D8ɻ3*ɻ0̾2Ƹ2ɼ42ĸ489ƹ63Ϳ+ƹ'ɼ)ƹ(ʼ),Ķ05ɼ8ʽ60¶2Ϳ4Ÿ03Ǻ/õ+ɼ2<@Ź1Ķ/ö1ɻ4˽69Ź6¶6:0ɻ)źAhp˿AŸ%ʽ-5ƺ79ɼ5̾5̿4ɻ2ɺ/3A@7/1̿69˿8?ƹ,˾+b¨_#4>ȼ6̿7̿56̾26<>7823ʾ8ʽ9'NϸBö&ȼ998̿5ο4Ȼ4>=Ȼ5Ȼ4;22!vȿaö"Ƚ9Ǻ67Ⱥ3Ÿ4˿:Ƚ:÷513Ȼ9͈ɰık"ź9ƺ710;4/24yлƾþY'301·7ɾ<2.'Fű.*04Ż:544"סښʏȁ14840"UfnԿ鿬8*24/,Ċzv}shd`fMxހٝȾl!.1/))֟ޗޗߒ܁we^^\bikxցȥؙߍތݖϒ!)-,D֗؟גُw^gcT^fhOז}ݥ̅f܊ڍْ۟ڟԛ+&-,z]ӓۓd\aRdcXZYIܯ֙@nzSkԆ҆ՔԕӖ;#+xiaWܭڥOda[e_M]XZߗ[_]|onЁΈ̊ʆ~v'ib~w!PX̔ޟ۔rfqpP^a[[[^pTjmhՂ؈،ЍU1}w#VVsh\chhP`_Pߠٜp͆bn|~{ԑߧ֘ItLajj\ߋJRV״W͈͋vЄݝt@pun`߇ۅ|۱iqφgݘzprfl۽dž־Xtه~nyԾeܚެۏȋהݱ߫ӗݣՐpԝߡҐדޝ渾ÉG69ʾ8<<*Ÿ˾,ʾ8ʾ:Ǽ6:ɽ3Cʽ2+Ϳ4ĸ6Ķ´¹M|zRĵǺ7̾2Ʒ+5<Ǻ3Ÿ1ǹ\ٽٯWŷͿ549Ȼ8Ÿ3π¿|ŷ4÷57wطԻ_8*2~ߪ縦&/fw_bZ~ٝȸ[me¼׏TWXHւӔyjՋ峱_un%oUbTBnڐVJt㚼ksn@Rcyf*҈a~ޗqGsɂԾeތ҂޲ߡݟ٨ݫqupzilla-1.6.0/src/lib/data/icons/faenza/000077500000000000000000000000001226107126500202065ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/data/icons/faenza/back.png000066400000000000000000000010251226107126500216120ustar00rootroot00000000000000PNG  IHDRJ~sbKGD) pHYs oy vpAgxLIDAT8c`J?FLQ&ʙD$1`?{.L9,ʙD 2/E* c62; J haD7$l8wo 2p ,fO5++/T6,,pVI'fx?+v/VB?#} RXx`Pq93|ǀ1l#%L0/([KB5q2*o9}ٿ1ŌxWpi_ ir4%tEXtdate:create2010-11-19T10:47:21+01:00m%tEXtdate:modify2010-11-19T10:47:21+01:00p{tEXtSoftwarewww.inkscape.org<IENDB`qupzilla-1.6.0/src/lib/data/icons/faenza/close.png000066400000000000000000000012651226107126500220250ustar00rootroot00000000000000PNG  IHDRJ~sbKGD) pHYs oy vpAgxLIDAT8RMKQ=Oq2E4bhզ$D֦?Т`)[hӲ5CAAI&9~m1hۼs9s<gcAtU%SB* M)!F*G*hG6g& *rxt+nA6"OgKQ?~Tz5cbإY[],()\L k|vn̼//DCA%[hކkZYc;(h* ^Jϸ{vjeՌ!~3Y`>9b[5>{XlM;.=ё2Kߒ|mͱZhvK?o&rQf§UӱT9ydXW\Ii FJy*Ȭ_OK=6)Aۮ3s^b$%tEXtdate:create2010-11-19T10:48:35+01:00+m%tEXtdate:modify2010-11-19T10:48:35+01:00vtEXtSoftwarewww.inkscape.org<IENDB`qupzilla-1.6.0/src/lib/data/icons/faenza/collapse.png000066400000000000000000000011671226107126500225230ustar00rootroot00000000000000PNG  IHDRasBIT|d pHYs B(xtEXtSoftwarewww.inkscape.org<IDAT8ORa&F!p8$*BWmZ4Mh= CpDA4tv/E W` }MDx!` D$F4MFD$."\;"2;K& qR9 gJp)ÍKVo4[S."wE.\ VD2"ݍ+\d2 fJqa50jMrVt?90zMD{%///G KKKZ&=;;ER1mv [y[VPx&8$}x*ZRi[a5`FFѶmf?WVV:AlGg I[]paaឤN"Zg8&`$]j'333$ݴ09c(6Ip8]Vz;ΥFҤyGuغ[_l6;Afg|-F \.wg< ZlIENDB`qupzilla-1.6.0/src/lib/data/icons/faenza/forward.png000066400000000000000000000010421226107126500223550ustar00rootroot00000000000000PNG  IHDRJ~sbKGD) pHYs oy vpAgxL*IDAT8吻JEllHE`ZQ++X v IA Y:YwWw#gP**FXQQQCsT6.lTBiM)9(`\,!@ZJ7ry\Zs==$9hLDE6 tMrME(M*dbPh>MpVP!vFԭ- zt]u2qJ>㺠"d񝣷%tEXtdate:create2010-11-19T10:47:20+01:00%tEXtdate:modify2010-11-19T10:47:20+01:00petEXtSoftwarewww.inkscape.org<IENDB`qupzilla-1.6.0/src/lib/data/icons/faenza/go-next.png000066400000000000000000000004761226107126500223040ustar00rootroot00000000000000PNG  IHDR7sBITUF pHYs B(xtEXtSoftwarewww.inkscape.org<IDAT(cπFU _?>,{g© юW*yPH^ԹF:a# ςPp6 yf/Pa=pZ4j]Yd/[ge ; Q ix ztW 4a)&)`%&i&lTSΦi3Li_AHڛ@ӛ2~F{@A RE#\0 IENDB`qupzilla-1.6.0/src/lib/data/icons/faenza/go-up.png000066400000000000000000000007041226107126500217440ustar00rootroot00000000000000PNG  IHDR(-SsBITO pHYs B(xtEXtSoftwarewww.inkscape.org<PLTEᯯKKK$$$ ,tRNS $'())+03T>[B(%,5*  "M1  "3!*9$2 :%A)I. "tRNS "&(225QZZZZffwy-IDATC@w{N$xA 7U"5w%\v]qk%p"3a$\Gz9:BZ|KN"[-ImNB ( B   !$~#!00:    $)#!$$&%)/--0044678hltRNS #+-.../7:>DLNOOPRRSTUYZZ[\]]aestsFcbKGDgJNIDAT(c`0211beaagAcRu pPbBgɴ`A3 G 0)(+23t*++â^YYY-mVY3ݾ&"LYعڞjg}W}}U<;v}',&$INA&DPKOKKCHBKTǭUC÷9ʨ jEg /3_gg{vg;̹)=u&|l===)02[* &YYcBSaZFqׄ RH(k:yI'Zɲ{p8ZDqKhiHp3i:Lꈓyq%tEXtdate:create2010-11-19T10:48:14+01:00,y%tEXtdate:modify2010-11-19T10:48:14+01:00]$tEXtSoftwarewww.inkscape.org<IENDB`qupzilla-1.6.0/src/lib/data/icons/faenza/user-bookmarks.png000066400000000000000000000011241226107126500236560ustar00rootroot00000000000000PNG  IHDRasBIT|d pHYs B(xtEXtSoftwarewww.inkscape.org<IDAT8kSQ7}ĘPkmEŔ兂P*NB".. .PUDjjhb}{Y?wGwƞW٭7{JLLKgNJ&[͟m [oWg..Pý{޳Zь`:NVaw蔩_Y)ߌ2aaߘ ,m%X\S֗Wm/@T-X MT4 (q#l}0p v+J`UQat>vgU%%p'Ǧ#T<OI#&'24GO: +; l{o"88RV$:8fT9`dq`;@\w\޹B`Eq]; \ VQ>KfVS ]VIENDB`qupzilla-1.6.0/src/lib/data/icons/locationbar/000077500000000000000000000000001226107126500212375ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/data/icons/locationbar/accept.png000066400000000000000000000022621226107126500232060ustar00rootroot00000000000000PNG  IHDR szzsBIT|d pHYs B4tEXtSoftwareAdobe FireworksON0IDATXݗkhUnBhM"jZ%Q!1UM*PMDm}A(Z-;bmMB5I܇I$;pݝ{ːW`W~ lܦvc\chzH^QKݽ|ֳ)-*Bɋ䫴T +ltw:"! Mpnm:u_uM5%Nq^L1 7fV_n/Xgr%gQ{侨,HHS{rwW?f஠u ,@! 6i|ޒ]UR߽ 򁷓ϸﵕUg;V*|v% Ŕy+Q-/_.243ǣ"pt%ѝa{RPwu3SJ^#gxxZh8~Oiu@AJ8Dۃ5} ƚ~) %A)d BPY-OlKOH>8shK}j},,`;n~߲XioeiA ۱cp`[k['1R9cO7i7#1L@h}r&)0@M_!%i;_'"_ъw-L0<19$* WcYB[c==Z~@N<,  rdpFϬBYʂ;q$~:.c <˟P &"Ƨɟ" ^~5_ $6IENDB`qupzilla-1.6.0/src/lib/data/icons/locationbar/privatebrowsing.png000066400000000000000000000017031226107126500251730ustar00rootroot00000000000000PNG  IHDRa pHYs  /iCCPPhotoshop ICC profilexڭJPGmE!7 .1iKjI5ɥ6\?:>oPq|7A"dp3uncF5Aϗa˙Gi -oE3i]l>L)u ;ڂH[Wk6;V>1axap] =6+7Z"Qrw\Z5*VFf`UTݞJ=%bY դ'[x `npͺ-//P=gAMA cHRMz%%m_l<XxIDATxڔkA?fvo6gvibB1 XRU*Z? h)R (DO ûΌ$aby?Ff&N"4h&1![)\ TRޭ_ڞ[1:߾I=IeN<{`l(,hM1йp?m~Fz2&N,6NG|8 hx=RlIENDB`qupzilla-1.6.0/src/lib/data/icons/locationbar/unknownpage.png000066400000000000000000000006161226107126500243040ustar00rootroot00000000000000PNG  IHDR(-StEXtSoftwareAdobe ImageReadyqe<PLTE赿 tRNS#3IDATjQ}K4/J%5"F9y~6| p}y.n)mm\]i#OL A!B@!()I"qlo .葝%IENDB`qupzilla-1.6.0/src/lib/data/icons/locationbar/warning.png000066400000000000000000000025641226107126500234210ustar00rootroot00000000000000PNG  IHDR szzsBIT|d pHYs B4tEXtSoftwareAdobe FireworksONIDATX[Ue۷sqFg +/aԅB/EE$E*# "F)], ed3Qgs.{[==q:{L=ІfZer.9~4wEr5~ V(#o|?m eDHx-^5ʰI7k~mWnTITzTVlC$'Pw4SA$X/{^wk /E[à "$U:=Ar7qz}a&>5Ϥ|Qm\)kcJAMA]G6Wof THeI̜ $'\:7-MP;\\WQߙ]zoO<ԂZASxΨV_帖t&EC_A*6'f nv1HX"圑)T6t4 Of>zgGdtl;ꢯ[S{+(P{3\,VM-4u.d nkAU+ky 8&)La@&b8ES k[4hf&Y&uT}pL kҫ;k uc8 kPW<4I*VC2m;Z56j#p3*:|pP94mRԖ; }9Ykn: ɱ(_e=@]Ka¯{}G>a⋇AoC^)*2zZ9f2MиTq$3CK_͖( 7Mtٝ<>!x>!fcfnc]HpN ]6[Y9 c[5F1=2S.y/ nY/$Ƿ=[Hi>kDh|;v*+YԋAr݂_V-6lZRXU֠n^xЦmY|v0Hܧ̋{lNK/2gT| ѻ|a@'*JFVVe uU @ oR,č++f?%o3[M::Rs?<ٱCEdePKU"~.^fyH3q-pm-Jı6vP3"Lfyg:ΙT05<%ˤIENDB`qupzilla-1.6.0/src/lib/data/icons/menu/000077500000000000000000000000001226107126500177065ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/data/icons/menu/dot.png000066400000000000000000000007031226107126500212020ustar00rootroot00000000000000PNG  IHDR(-SsRGB pHYs  tIME YPLTE---000ooozzz~~~utRNSbKGD,qIDATWe PTшL2LK0pTl\)pB d!dp 6}=C,K>B:lj1ahDB5YBr3-$0r?Tgk,jAas_RIENDB`qupzilla-1.6.0/src/lib/data/icons/menu/gear.png000066400000000000000000000014641226107126500213370ustar00rootroot00000000000000PNG  IHDRaIDATxuS[Ha=^fggmw̕4Q*U, NQQAD/]}!* "FeB VZYZm/=A|||i~yeS%[W]ّ@靆o [Et%=/GM(c&#׵aSRA3ʟ*Ɯ' |('i'a-s7z gXLeR;ݑH+^F{+>kΩT1?AT hbgIENDB`qupzilla-1.6.0/src/lib/data/icons/menu/history.png000066400000000000000000000015361226107126500221220ustar00rootroot00000000000000PNG  IHDRatEXtSoftwareAdobe ImageReadyqe<IDATxLSORaq_&  M qM@MpNm_][DmM6GWuE(23B{y=߯bnn ɚ`!`#WBjr4M0čhng|T*qpp-R&Hz,*#O̬BWWWLt| @Iʔ߯}=Ketvv6S$*:!8fqyANr GX].D0ri$7LAѡE"xt1.Gu/Cj`A5D$AtANO1==ĸ\pZ VٸBc("zNp}Q(Jpw#{z1ݖ:@0[Qq˂ yHE-.BˠI 85%22+e*]-e 3`%LMh?bu y P1tw_911~TjUUmiiiBވ)<{ݻy(ʛT*fS,Jyyy좽+ }l)G0NdBedIENDB`qupzilla-1.6.0/src/lib/data/icons/menu/new-tab.png000066400000000000000000000007101226107126500217470ustar00rootroot00000000000000PNG  IHDR(-SgAMA7tEXtSoftwareAdobe ImageReadyqe<PLTEۉ",1SF\6ejQ3ٔa&䷑K1tRNSN!~IDAT]0ˡb{NFvvg* HLc |CA`| bdzTCFr?#YmA|4J-Q'[8'#rDb$PY @=IENDB`qupzilla-1.6.0/src/lib/data/icons/menu/qt.png000066400000000000000000000013501226107126500210370ustar00rootroot00000000000000PNG  IHDRasRGBbKGD pHYs  tIME  /hIDAT8mKHTQ߽wu> Epam(" PZLS7>z,BDAf)L!DHJq|̝{w}s~vaX?|t_Ym_O 0L%\l=X[pXC (:2 ݱh(*>b&zXFBU=Kl'pXG܉Xӂ!&4["6|i=نX 4wЬĮ$9_}#h,{g!ZŽCd<.qR|gSּu)/`.drnb^,~; Xk,P%dA23s޿@O頪ئ7L d@S|ڥ4  nO]Ty0/CL%[z7ƆS eɟL=sfõ(UnnOrӏj*Uz34 ۶Oio pB$o|R $Vt% BU2İ0/gi_=UJ|Dp7È/RǢ +wͲ>@i9.#Ģ_W+IENDB`qupzilla-1.6.0/src/lib/data/icons/menu/rss.png000066400000000000000000000013371226107126500212270ustar00rootroot00000000000000PNG  IHDRatEXtSoftwareAdobe ImageReadyqe<IDATxڤRMHTQ>^' IgRcMA-.MD+-E Q- ۸hSeAPm`-7?M/ԧ{޾; {ss=L)E3X0 `b݄]h~8ɯ_H̽#)!ȟ8`ٝdN-{IofR a]jQ$81%&%;;`'9}FRzcot[ PCQ[|C>F&;S$a:Lʘ ė1""9D&F6bE:Z^H 8&5;A̝J5r8nwwYy`Qe$ٵi4"6 8@9Zr8*Bvhh̥SQ xLĶ%=y'!zEVz@Y  s `32Ivcdl7#k=*.{s"e炾杌ݲE.E.\$W@sV۱֔V5oFCy 3(b9¯GO{ f¦/Z4X/aV{9M% wIENDB`qupzilla-1.6.0/src/lib/data/icons/menu/search-icon.png000066400000000000000000000016471226107126500226170ustar00rootroot00000000000000PNG  IHDRagAMA7tEXtSoftwareAdobe ImageReadyqe<9IDATxڤS]L[U{^h" -9D&=f:Y&q1þ0g܃!&$,[0qDDQcBmWJ{q=;v^|<ܛsc g#tLAn2 ޛ ߗ`cL韑mãn zvwuAjyd/h‹׎{MOdt`%譿g8k{mm rׂi_@)ޠj`D8-NFc+Y),MxYBM9E#72UdngJqj^f{]y6Ue o1m %4 & ;Q|0GBOatp̫3xV<ZɗQ̍,"  "ElU?BfZ7ꔼ.i̠i q y0Yͺ⧹^8* u<>ݕHYF*RZ'LVGS^[[ S Ypp거$UQ_# .[0QvQHSkfOB]UhjT}!z?GVy@̤'w?{':qO{NIENDB`qupzilla-1.6.0/src/lib/data/icons/menu/tab.png000066400000000000000000000005031226107126500211600ustar00rootroot00000000000000PNG  IHDR(-SgAMA7tEXtSoftwareAdobe ImageReadyqe<BPLTEۉы鑓騪tRNSeIDAT] !EG60U]BH MR RG!/G81T؞Æ`sW CtN@m髥V؟&hS WIENDB`qupzilla-1.6.0/src/lib/data/icons/notifications/000077500000000000000000000000001226107126500216135ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/data/icons/notifications/download.png000066400000000000000000000035761226107126500241430ustar00rootroot00000000000000PNG  IHDR00WsBIT|d pHYsu85tEXtSoftwarewww.inkscape.org<IDAThYYoW>%gAMARDը JOA<[Jy@<c*!DF JQhٜNʼn]|a2%c+}xܳݹc١Wvz l6dT33g |?11lff&677X\\---ŖcDB`uudXYYqc0==N Xr7555_$I/ #&J,h}}]`ccC`ss2n+gn^5JOHxuuuykkH y_qjkdc y- \38Unۯ0y`!\:Dz<f8g ;\RP5k<#kc\YlZ_kW6&-vxHʨufqo25i ZbtJC.iK0|: =Ph*D3Kf9wsYh4JHQ81"@%H9 ] .(2dXnt8 GNTVV{2EQDcxnh.K9uT*%p ^șܢ#oi"}";1ʲ H%zvC!C40Obm l}I9x+ K+ ?uaW3Kb 5)uR|T̽ @:RzeDx%]UHUUɝ#;r ʧѽܿo%ً\=5K1A7qÆQaszu➽2+a1~)?@DŽ6Je>|Sfݽ~EyE/U(WQm:LUUUٗ$sjМjkkRE&1^Qފ0SO KA j8u577ӡC" I#H0,7 Ntj3ihoã݀!p\p4~ڵ0'ھTwww\30Faݹ|rgccufuѮ֮ӧOw2CUekȑ#rŋ ye 0n3n1n3p|8xgapW?ec}cIENDB`qupzilla-1.6.0/src/lib/data/icons/other/000077500000000000000000000000001226107126500200635ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/data/icons/other/about.png000066400000000000000000000236441226107126500217140ustar00rootroot00000000000000PNG  IHDRhgAMA7tEXtSoftwareAdobe ImageReadyqe<PLTEe+>K_Ќlޒ˺PgwzIy>&IDATx {րVFmՙ[kBi9sN3jȻIꛭf( jCN_6F69߇7_9ˁUы_c6Cx]j7E}VJ;X}$W}o+ ~?y>dIaS|&QjAƢFc7L|/C_0,d[p-Po;[ ꈅaޠry:-,c˖?LO߮H_W[tRryde<\qWU~#t f0eD#;B})4`yGo3,}[MpCm S}XN! M|G0y0V}f9/ (ϖ 9[iM~{UdyUV[ҋ!5vS'ky:4kP"0etsKu@RA@|PPoo`n#o$e ͇bT.{)DK K`X\|z(;a"th>ANH0͖q]? (_S>Hji'HB<,(|D)(~g9+!y Qh6_S~n ,;Ii VX;PE;V_˲r<1+!6;?/BYT^-`2g鿈KH*s6OǹOUda6Øuy 9OY?~apnw5\lDZy}a/itR vCS|_v6.;l|muصuۢ}];i*Fo7Qo۩&JݗL[4dLMjF9~chT̻.|-JM;WvXn/]ofuPO:5қ\#vp rЧ+g֩]tr1mʛ5Xom:a3*H?â|e+qm.3_O*[n{Y-Zk+u>v!*G؏..K#o|Y7Gdt-$kܴ ^;TWs<6le㚾]#a䛦WQw+iƼŷa=8kţJǕpA*fZ?e\ryءa,O^4<4t~SWBf&wk!蚿= 7%.ջJ%~ݿYTKz`so ݟ+eU=` [m'=Kyhz9n^x?w6ah2g7v_G !PTot)~<Zn|o.繏 ]X8U7zvizJg2y'R~Q.Ï_T:G7;uqJ?\&7_om:MҠW`sv4~j8@{t6yVGSZٷ5I9^y< wg:٬_W(}Ȗ @ewOnS~r^vV76wzןz՞J57>QvNl@-௺i4x]{ILf܏!}6C߿4Yg݃=_ςCR;>xY?`z2KТ'h~Swz63H崄qn6~nr 3{ Hvwa5}+}]z7G6.!ʯwMoBn Ό?wz)"uTtT~u9sFUlg/\:F>lJ-A&u^蓦>>_«߱nqZǺ`;S?B>,aԣz6m%9 (~I S+[_Qo!͋eG"_f%8u{hn/8H2Izs-ܢ ikw륎uc6̛VᾇB>ޟuocOոɳq5ޖȜgM%}WK-[Lo{E9W@?H/Oc=ʓڳgfw%}v^0ܬWxgoO>}O:ul-K*x.ZQDKֆ˹XxX$ߎzN^%Dut##l{}_cX~kB?,=}wꆇ0fWnצ_me.5Wl8S'sˤwL5=RӎZfƯ4†q ?[Og iߞ,K$if9Λ lL3%}}{'l0ܧ/e~2nAbV;rQgղ~=X*݆KZ6 ,u:I'ao7dLĞFN^N/>YXs*^R6=A$Ǣ6M8hiz -dF+)jduG_6^*߾ey7g o?Dv~f3-7 zfHThD| [oAO~ 7? Mvn4jmc~l~h8δ3ҺϛwB L>M\sd'-o OplE>1,\-6] R2^:{mfz6хP$-Z8OصޙИ[(b]yqs 8h#<1n#בtϛmqboo{a ~Bx\(`7$xYDo&ޤ[ Ч'/Y,;~_ϣKEz,ܥd˄i#TbW08zoOHyO[Q^ᪿdڙv9TMxh~vҗ-r0={v·U OOg;{>vV7 ykZqzZ~1i{)Yljv9&{<ľ'[yiu ùs(nJr/ƞ0t3tߠ/żt9zA}TBV}oՎ u(J{཈bjvһMz,gX ;QΓ}L/jUwQl:Ub-h~rPzqqc`>|wcp RAݼxsgHmϡ'lCn /z\B_霩-֠W0-q颗%ֳLS\]RѦ7[ YATQxM:5A;ƿ}}cqP_b94"h'ѧK|u/M '(Мo8nчa}ize/ZѦoF`<ׂ$h(q5K =϶ _P5Ƒ8޾s޳뇰qEɑ=Ó E7"\,\=/)Ԑlļ z5ڷG?/uRͥ'o_Tq?Д y:4/%G#P{Mr`Gzyz>&O쇺*߼4,ڛVo˾+pu/{gH?[v3k/&l}CoLk-K| #baMOa.H~gMEd8 Zq4H?^M^/*> = \_h" g.CzT{yڤjDmtaaRh~Y`os4+ =>(A5b.:Zm8fm~$) r^@ ,]R˥!]{m+PVҠC'َsDzĨ*Is~ܢڞ?x]AN~=ƠW8Fi-܁"gV~lc[!YcF^w>Hv1SEܲP3.󃃢&y8űlv"h~ekGBP#{,94jj =-ĞpFp pɈ:czA\'Ep2bzI?&zFaZ4ka+ &QvirXG w;}T|E`#ST7HB)v -9moѻXOq*!N |Fo6x=h+dKP=2]J^'c?!cO)pՇ:}ߝ%>" ǻ=|;+_¹v)ĩ__毕r*-L4X)za7?ᇥy?==t,;q]&WV<̛.&OLXކ~uKnAq> 1MzD*.hMN F{u>DWK*HৎW2ސ6~#\l>8c,7c'"1UY݄ /N+wB1v54xJnjL|-yg$X9؉<O(#Ja2PGlWD2_QO[/\|^M/Uo#IJ"!һAX.o=IW4qw+'U+(i7%yzgR>7s8LYڕ;~_x2c;ZҞZi&D_^߆=Fzb,Pw^*gA,plXpT3>&_gE}B=>z>-k>OC7>n,B^_VfԻPO|Fż%IE?8"H^|Jzɵ,7җVVzn"0ɹS><ʍ"`qTV08.F&2 &.nmTkz$+-h)4 &c9y>6ޫW`e5aH=}:]_LU*[yT A A!Ǔ ;r$R~R2NUD^>+ȗ1ݗOzJ嚜R/-.vԖT>"4kx6<*|u ?[>mzA!Gځab従6ˡIv]twK(k߉sz@2*~'m«17uza u^d+q-j_u[Q9s~n UO{5(lI!r+K6нW[4ڬFZ $#P".ՠX5czmYw*">ʭhކ2&YX[c̼DCm9|Ct͘۩JgG/wb58fm۪,G_8th:[^A,K\hGjpՃ¹I @>蝜:n[ϻkSs?;r"B}q2spP9]WTف;UxugSCHQu !$O|ae<nA|#F[qRGJt,iLB0t0OHeWqx-~yë}j VbLSȟ + vC箳ȸ%'~ 0W&瀑nxcۜjX+6z)?6s(gTmNGGJۻf{>G2uwm.%x}=>qbI A|&WhM(_uo5lk&p7ٵЉpG:G$=F: jևHM$[–[*jzAшؕxA$~ #4]W~DY\h2ĖDp+U,])<䂋usޢ%=lZIbda~:%ʘ_⺣mry僦xwd$W3\EѣHF^X1'Mz8(?TU߱G] 5Qݯ in 0ݰȻyGt,AS6O(ǮacrzLR$*pbe]R)tWcݕ\Fts kg=rD N)ccίvjpV}vM[_Ǘ=w"v)4T} /z`,͔=oz)G F_H`Q|cNR>=4#Yu\[ Sxn]e{ubUB> "=ǿ9è߂/2s"~j"2ߠsцơF/J Sk$ѵy|k ,P>5z cp|x'Kӡ_Rh+ko|} Ezc!='Ohh?YE/`- 8O!iq=f`,45LjTbK"?YYZўچɹ y+y@Zjnox~fM1'^N]a؈_wj'[/bIENDB`qupzilla-1.6.0/src/lib/data/icons/other/adblock-disabled.png000066400000000000000000000007221226107126500237360ustar00rootroot00000000000000PNG  IHDR7bKGD̿ pHYs  tIME 2y/TcIDAT(υ1HT{tIJ)nSSt 5T MMEVf% gz5~Ïo&i?)JkNDi+ajw^tLSq#R+PiPm˜^Qпhvf^ے!;mB랺R=MǂBM).J !uuP/s6JH9l@$Qw3ǔ,4bǾ HIɌRANj.oDYCWO՝1[ߒtٰI^vV~7ߊ1j^^3y7CYtv pIENDB`qupzilla-1.6.0/src/lib/data/icons/other/adblock.png000066400000000000000000000013731226107126500221740ustar00rootroot00000000000000PNG  IHDRaIDAT8ky?8Ώ61aX )ŠRyAX%Q|@>4ݍe/i;s]4y>?H,Յ68Wy~eޝ:$0u۶mj7oS2I-l8Nl>?+BR*Eztr7r&p&C|j*js^:R-.ɝ`yyd]WRa RL̨pqIENDB`qupzilla-1.6.0/src/lib/data/icons/other/bighistory.png000066400000000000000000000055731226107126500227660ustar00rootroot00000000000000PNG  IHDR }JbtEXtSoftwareAdobe ImageReadyqe< IDATX}ytU?o $D@0/ VP2R$j~UDEتt5TDFHL!!#/{{:wsx{+/{aJ&Uӏ~9=o@rwkB,2ۯV?1ӻVĎ^lzVIVki+G|OO.Dn}yʃ־yURT)ƶ IA}An i9o/).(֯ޗL؟  O#ceF@, bM\]]ȝJ@' ˇG*0 /zaJZy@ RCIHbNYļ'ՇJ9w^<3wLep,sN/lALdֶLYR^>p s;sWNjNYL<Ģ$έX|TLbܲ|_|s'~5"/khM4]&Ɣ$R @D0Dެtpyj}Ȱ 1MmNJԘ>3ڣ4j9 Sڪ[Z:<4*2cn%cy-]$UviFߞGڊjg54>"\ p6Џ[<=@'1 XQ1g'n7b!|"Hia(fLMp#OwG ʖx2rU)c ?m-`FW1O[&o䭥=ŻKƗ "X<Iy|LΞOk>(7pȉ0#{B!}|)ٳ}O.>MmKB IOx[ɓ'|T @ThÔ6qvm& ]y/&i>dȷbc8 ~%d}N @0wF ub%R&n afb ZnD{Cv~]UCGsy>hCwQ!Kp=4̲ wF*U`f4]CY_׌9fHN7tb3'+Nsn 'sA:ǚlwD֍]w_՗C)V~,W44t RXs F^}h]2ÝU)Z3.~%\<68J+ȈcmSKؖIym~IU 7䅨~BVȔ!+]wi9ϧqʦsu b^9w_"˿:2ĸJ^ ~?!8?ikg}M}|mBu`A=BDVVOO˦41'FH!<秎j][V~ ], bKWx tLjҚUQkg249|mQ/zÌCMjښV-4?M ͆0iSSݕc_J%F70q,Kz+ϓvBY(_!"ݸ48TSVVEb |}i7%&)>,FkhI̱1>uxwo]Ww"& Cqo`625ztWtlTˍ_w>ώq>‘'[yY{q7p252y|,ۘ^R|%Rk6)=orc~kX Z 3|ZOcF 'H ݩw :.\ Sbh] 7rC h{u".8D־l>^~Z#5ŨQ8h=C-l1(H kx+׹TDF\Q9]jFۢFv7́ƄiEcx2Waܘ>SDy6Jja\Uqt-ײI+k4ZB7ӾKv6OK}FFuu0֊lБ aĉQ\S %**Pցac*i?g-'τk HZEZVUiP}X!͵ݰ(qBՉgZ BuZkWDbJz*Rjjj"Wvj. jXIENDB`qupzilla-1.6.0/src/lib/data/icons/other/bigrss.png000066400000000000000000000035251226107126500220670ustar00rootroot00000000000000PNG  IHDR00WsBIT|d pHYs11(RtEXtSoftwarewww.inkscape.org<IDATh[lߙ8YЀ6$ EET(JPE՗!$Q[TPHETEETPZSb.i rXmos9<̬gv37Z jF:>3sΜrEkR|ί.W,ED'VHR$RA0|b#;YQ,"M, wܴ{lyD٥3K!S9rERO^}"0'vŵ޺o>KpNӯ"aRh6qS)C{֧W-{`D`ZRNHtc _ř%_gt%8sS*3,<̵D$7ӶD|5`?},䐬G}@Iu0wҳ*V,ed; p/Uf28 $XeT"dB ewЎ 4zSK@dSKDD^V`WVx]V%"H |fTHk=P6џ ޣ6XBmH@4D싎bjY Hx !Dt"vhK*VUtd$H"5Z `[(]0L;ITUoU8g'Ga` %x-ȶJ`7`>(!6Ll'Z{/A y8Vv]z (О<HTXv 'p)Dy2 }[@0 ~ 3`{ ZW1iz~& *Ws`t>bm{k z7P8敖8ڀ2\#n,@O̓PuW†`Z  zcP:FJYIpu6Z06x˾jg^WCz㞍p/ϻat q>γ GX18x#}?t{ۧZb>u]0pP 7L%Jm;?\{aﳰG=MnÉ=>-pWUS Zk|<w} so0 [)AmC  GkSa ?󥠚0hb胗S]0w<v_޺O %\,J:S!Y!Q׍Νgkv= )& 0;]z[cՑ̈] ȅar ,aDW.W`{[\S:Z |z E8c]>ȅl{!IrWK`p{z}mskw6 rTBNo퐾ڿ/OV 7Vuvh@K`b'ul~8H6墏 4>WQq]ad?o8NV >9!GJ !gS J5>]:(̌ާڶtN>{ELy:mlSvK*$P(Y*UKF<2RlXuѿ~<=8BwیQdr(HKGJ%Jfn[c$3X>IfKʓ͒+h_hD+gyodx">P`hjcҲ͊9=Wx@%\Z)չ$m-{z왏sv\j\53:s.|Vz棵v6| xv8j4a'! z+ tN$6?8x+ mdO# $RZ<5{c4R)A{~X8K#+u-w&6?&,P:Apغḿk.F;-6R/D:l|/N]Έ+iHp|#v 1l2f4YPq4tQ l\2^J.M9T'һԿjէw'\׈J*iaITZ֠c"h{[nEq !*s%J3f.1:})D/Y~>aNi 0X:ˮj,k$"6>FjJ(;hƔ28:$"h A6XK뒈[dUm7`%po8C> +]:BKmY˲T2`݀)d=1^1A+f?ϷslN#HvcV[~j@co,zMAݎ4! ,2n@ u1Oeˣ! km }';^?7]7?O$DZ1WO}ʀa?~׻%_<Or[~ٴ"}5x-熠K{K/DB*IENDB`qupzilla-1.6.0/src/lib/data/icons/other/feed.png000066400000000000000000000013021226107126500214700ustar00rootroot00000000000000PNG  IHDR(-StEXtSoftwareAdobe ImageReadyqe<bPLTEttttttt{!!"pvw $&opqstuvx{} #$&&()++M-2Otwx{ %(*+,N0`9R=x!]lG%-+2287:ABIIMQ(.-10/247DGM\‘ɝ5;dAťpβгҷֶ9qtRNS"Rw-3IDATWc`D bXbR3RcXALQ֚~L ǢҒD+5s0OBN3#77C7+#BAi.`\#EV1Gv';P _fJ;Pkti}8od$ Rq| Bf;BEEttut]X. K tq L c9<9-94і'v*)IENDB`qupzilla-1.6.0/src/lib/data/icons/other/geolocation.png000066400000000000000000000025171226107126500231010ustar00rootroot00000000000000PNG  IHDRw=sBIT|d pHYs  IDATHǥYlU2K;ӽl"$DJ0P| "F 4FDAID#<"  *Pd)PhK[Жtf}L e1w{9 gJiahMVOtO$UL$L2m䏅DbG:>Dt{0oB{A8?JK$,TH9~nF;[?f N0M29GnqHg?^x'yp.s]ɓ^ߋcj-lmR~hG4e;'u'7 @8[ 췓}1\-pm-=|pﵿmN/~N'kIENDB`qupzilla-1.6.0/src/lib/data/icons/other/keys.png000066400000000000000000000041231226107126500215440ustar00rootroot00000000000000PNG  IHDR szzsBIT|d pHYs  IDATXõWiL\oYcl̀XӤcRTJԟjjMZUr(r먕a `c, 0` 3lf=)c jy{;sϽCɲ ۏ95Ou:Z/I4(R)R$I>~8D P2~9y&^pu/ٝ?g,eed4C"XPOD$6ÑCf!}(jx m o"HLlAϣ TԐ702nX0zFnBW|CX#UK+)GJ%y~iyi ^2Kc{ ዖBKK^n~Ϸvឝ,(M&>Z1s ۜ v;_(R  2dpqT*$5uf~30;783;BKzw?Y{@Q T8's}ggJeD"*S1 :N1Ku/T-%BFag @D  ,-,¬c6,3}`=``0*fιԔlΦ9TCd3L)UkTP4-}%vt>`24&ncc:6/hh84[uYW#d6Z")wJ0"rjuDK6 ơYA E( E'IӤFJ ɏqG<S6% b(UV84-fY $)qOC46A^JS5rnN.`# $,˂ B,@`q^C*Į$l;Uɩ >EPR\DB3rq2Z v>{ag @'0Gu^Z`UAivh:/y4XC;cW $\b,Ggp'*V(jpG,N4[dNdFFM/hhh}\ jDIQ@8\qlttc9׾=Bx0<<,\+rcC#e0ݹ[ZڲX <ټB K2v}㥳GkuE)Qپ۷wm6Xq-HKm=K\̈́2x<$6%rFᛁ}TS]=. Om SHU2C侚ˈOJ/wu}rfuu ~^u AC2d8,Tbi&Dn]3*p:M%=x:͈PpJ}ϵ>ۼqChZgڿ<ê bk@r%6L<*_p΄uXx=Ԣ']/ZG'F/(xpw=[7? ;:Rb㑑+L p{8$d*Rl.ٔ7`S)5ܹ=5VʴS~d~/O_ܓٝIoeGkOVa)\z@T:c\,**jmmyDRL(oigh+H%@hBAzSIsm5&=_o eIENDB`qupzilla-1.6.0/src/lib/data/icons/other/notification.png000066400000000000000000000026421226107126500232630ustar00rootroot00000000000000PNG  IHDRw=iIDATHǕVklU>w;mhр#A%$Db5AT D3j(bA !*b!>ffggfsoۍ %I̽|99q`K$+CKn _Y4˾j:_OdKD`kMM ˽>/[f%.tuw:va_v ZD˼-V,YQr`P(:q E58it/%*Sba"iiǣROw=p%\C!{"5{L#=Ҍ, Zy͋JSVH4B;>CD ;+F &03 8<݄!'14,< "PF`! !(Edited with LunaPic: http://lunapic.com/,;WX []<U Y-\$_&JOSHTJ^*\GP2 #7HKQ:6L=FF'MijNA:bIT@?R/D924I ::/E`ӃA&V,ZJCaTT9Ij! !(Edited with LunaPic: http://lunapic.com/, i^,CK jl8^ghQCRk "dNJnj2H0T.-435GЄ`eC6:f:=σG5AT770/6@C(CBA;@/܆F r Z@! !(Edited with LunaPic: http://lunapic.com/,?(N!lG9'g[jNJA#HlF=B]ON*#F`8"p A/`9"07qE "T=36n F o)! !(Edited with LunaPic: http://lunapic.com/,aoe&? +qe4H2D< @33 %F8<;J @@ce[l>8TBjuaB7KAǐ0Cv^ ur6b?ՅY)3T3+'s 6F0:.ntn830֭! !(Edited with LunaPic: http://lunapic.com/,0@9(+ATA8cJq >`GT6:"VVA6@>/B4eb= oRTD3>hF^M'0F7BLd63Ӑ]jl7ۅ&NG+TTc1SOJvwn\-Yr;"0:TD AB8Q"6/37;(I@0=:GJ73QfA6D,<3e34.1&2*^Z\3#*N DK$+C9 \T6Jc -:gY(DZe u,AKXqoPt2Q=FAl!+ OjLM^aG1N\@ÕA;qupzilla-1.6.0/src/lib/data/icons/other/unsortedbookmarks.png000066400000000000000000000007411226107126500243470ustar00rootroot00000000000000PNG  IHDRaIDATxnAFږ Q..l$W&5BM /@-t@GX Aq"{(_4;[̹f`_ӓS|&Nn;(b2nuޛ5pwF./$fbxՒJ<@eiyfXiHB!H Z ̌X(r d5D ZR𵁕3P5yIyh M23| \ J4k3Q9 "6u".ƌF#>tR$`v5Y# 2M:`ϠLAH8?OE :BUb7BxʺQlK"k|H?ԡݝ:`@ՁGPl`O&("tR|x`ka@m?2p t7IIENDB`qupzilla-1.6.0/src/lib/data/icons/preferences/000077500000000000000000000000001226107126500212435ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/data/icons/preferences/application-x-theme.png000066400000000000000000000030321226107126500256170ustar00rootroot00000000000000PNG  IHDR szzsBIT|d pHYs|4ktEXtSoftwarewww.inkscape.org<IDATXŗlEǧ"`D AI$*$ C!ŒA!%slgbd2Fml+뺶oֲѯzR%zw}>}k 1'GrIor\H$ф"gܝnG( ?R"gܝcn=r{CP9nM !D@%'=rQ(^yqм 3k'#Qחe,p15#ۨ?ȋ}-{AϬͥ> Z1ؕHБ4p3/oӀ@5 H֟xWW+3QwZ- ;5  )H +0Warj.c52LM}YhLC{Vj 9~?d۰Δbp)lwo[Ilݗt ᓒ VۼPˉNvĻ:SagQ["}[is;#=0b||y)xK'0Z-WWHՖb0N۴m21J28CFn{f#Z&GX?[B^C^D_E_EaFbGcJdJfKfMiNhOkRnUqWoXrXsZu[s\p\r\s]s]t_w`wc}i}mrsu}}£åɨɭɰѴϵϵϵѼ׾*tRNS '3:=?@BCEFGIJKNOQSTVmoD IDATju+@AExx}t wzt "Gғ a̹|?[YAG0ڷ\컓?%_$7c *S𠆢`&qјBo\4)DG#~Tm`V.|~~Wb7/;$͒؁آxKU(qN}ĉ(ĩ0gODLлB. ~޻ OmqF{|67O*na22>!IPC o֨_f+q; dٵ)OwV͒h(`zg@3.>;hx~sy#"if{ǗE2ߺa?OG4``VҾb& 0Cg a)qhxf` σ1CKQ à*ICG[!.CL\,#@U IENDB`qupzilla-1.6.0/src/lib/data/icons/preferences/applications-graphics.png000066400000000000000000000042271226107126500262420ustar00rootroot00000000000000PNG  IHDR szzsBIT|d pHYs|4ktEXtSoftwarewww.inkscape.org<IDATXŗɏ\Wvn 8DI Al!?6AA& HAQNe!YNr*cKK[y#%.?`o3b8۵2G|sڦWl=ȷƄ&dq\esYYvOHG:˃޴KvQvxx&dmQ>"$ewWAB c K@B-.sկq]ӕS,"y©kUpq~d5VLbH;2ޒ1:wNasQ uVI*sb ղD4^wG;%8b W.DۿR(\;UpB(<}~{ 1BZwQb8k 8iBP`!n7p詑Q6+*b'%|`:m@LbZ,\E+ny!0 ʚefT.~8:#]~'>o$D{t + L˯d:?PV-~nHEHhJ[$-؊Qs;VzG4R#|M{";?e_f֕D<ܭT?c973_b?NIENDB`qupzilla-1.6.0/src/lib/data/icons/preferences/applications-internet.png000066400000000000000000000036451226107126500262750ustar00rootroot00000000000000PNG  IHDR szzsBIT|d pHYs|4ktEXtSoftwarewww.inkscape.org<"IDATXŗMl\W羏7$&mFI+@!Z $v{%RwlXbPjTBMRGSljcxf{޽x'.*f7w9snlf?W|H~-TfD'yQ :*B쎿1G"PP>ε~!"1q,",ͭ]zƠ + 'bazb K_\$XVʨ N4Uz?-;/Yb*)>)2Ŝ[j9>u0|06ͤݼ#CС&X[#Z.GMhٌ?}מekPJgBJP:bx @*Ȇ@9j Vķ/.S\?S;~Y4Z`DP;PX> 3\`AAEۍ>K,vWR*(+J fVB`?`Pqu} g2J8QExLc(oxUcEN*aM`փՅg2Ê R|Plt҈~>p "DƸkA(ݒfkL`)ƽaQ3+Nc&ۄ9Y"-vb/y_-c3S_7}Ɨ mஙix`Cyh}@nf5zW,΃#IENDB`qupzilla-1.6.0/src/lib/data/icons/preferences/applications-system.png000066400000000000000000000021051226107126500257570ustar00rootroot00000000000000PNG  IHDR ssBITUF pHYs|4ktEXtSoftwarewww.inkscape.org<IDAT͋Ww{#·I imb -) qQtQp'.DR$ZFӴ:I3tf}}3'O+:%ß?{7R\!,]8\o㛧O5Vfsi{#ƠjO,Z1[s3m#'9궫n Mmw9:j%Uh)gMjS=YHEm5 akfTUjD[4$N i4Bm{VSUI (7;1yE5'DFTg32qË&ZUuNEd"SNzز5+⸫;9ռg5օG =iwՋ=u<3n .$2((9#>Q8䠃^goaKdVR$ aVSV}?KCC}5s"2RQTYaւ ,tF yڶ.9 1љbjvEg|wUMh:,L zco{GrmkZQL"-yz64E%Hh:U՛޵uYclY* 1SUr]Qeˮ`q7GgB^oZF矪z8W8n'!EUs^qGqDl=ᤃFhDF*M˞vXi‏;bΚE*v%]EMcN[ldkc˪už(0%wٜ猬dUkd^u^#$Ed!UK F$zSþ lTo~_"0ڲbNvZ/ɞY߸ofc?vFU94;LYj dYhWoĻQżOzaoZFEf V|Iv)]BIENDB`qupzilla-1.6.0/src/lib/data/icons/preferences/applications-webbrowsers.png000066400000000000000000000044651226107126500270120ustar00rootroot00000000000000PNG  IHDR szzsBIT|d pHYs|4ktEXtSoftwarewww.inkscape.org<IDATXõ[\e{NOiO[zzQ  D%D}#Q"Fx&jƀb(&D!)HOZ͜3={aO=C'__*y?`M>lذl޼٫V&JI{A;??I ޱeWlaTus'gtz9.-e0hq衷~("Qo>>.:dd(G3tf5E !F;'rL68]]TS ]koȔxdŬbc !^̲B GNͳqUJHOTA@>`E ` :M7)Nbr0s6#S J!C;rf -rxjR6C)ю,CnG&V *Oxv2h3Z-bģl%Eho_`U5O!0z1qk-kevu( ,A1+LY s[Ō,a&Q ΁g aƣU>s%xtcεBh8UefS2`rluUusp0DQUDҗŒa(Q 9ŶU%֍ vrH} 6౉d}*щ&N4@ST%:БLZTU.}.&5NηrZ&c#U @SRou|cZzû1BSZT㪊S8^ľIsH9РL[8oצqL3ylQ=8fR.% Bb$IIJ*(n•>W_r)|gצ\qo8S3X֏it,3>)3y{)GZ q#x\cW^$|rfj s\`!ٳcE=Ñ&k]6,29ec)Cjk@ʅӵK4-v"iW13?̊o"w?|N^{yWofZªcyl"8uyo||s|_;Ȫ-~Tς0q.NB2DQ "K(F #\>/ xa5fe,a)kS7"Рqi0T^VTE xic=gTDop*4[1q$Vz06sEUXh'`ltvpְX'r VnϢ ֥cL/Шb%g  =z $; 4SP~noXTVtH@**gd/ǎ  :j_krMfxو O0 2"gd(wi;חyJo _UlL<ijkx `pRUѢ&cmU2Bd$IENDB`qupzilla-1.6.0/src/lib/data/icons/preferences/dialog-password.png000066400000000000000000000022751226107126500250560ustar00rootroot00000000000000PNG  IHDR DsBITO pHYs|4ktEXtSoftwarewww.inkscape.org<PLTEBBBҟDDDGGGIIIJJJKKKLLLNOOOOPQQQRRRUUUWWW```bbbcceeegggjkppppqqqvxxxyyyy{{{|||~~~ܐߕᙙԦ*tRNS '3:=?@BCEFGIJKNOQSTVmo?ЕIDATˎLQ{ݺ4vS"!%06 \05 %baǁRKO3҉mװ1<eWwbĮOf{Ŀ 48XdqC۫B,[ d"{-5(5./"DBvl}MlP84;x4ncC$kїiJ 4H3iБ EB+xjou*omPDFj\x?]uI?rn|9t٣ [$0DTG1IQZ8ڄA  vEnvHD‰K%R_׍H(UȅiyG|i7ƓC By͵rdv5fL6:C;9"!9?-J" CB2H:"[#%iX F!& x8ft,ݒO2<,ov@o;MnIENDB`qupzilla-1.6.0/src/lib/data/icons/preferences/dialog-question.png000066400000000000000000000034451226107126500250630ustar00rootroot00000000000000PNG  IHDR szzsBIT|d pHYs|4ktEXtSoftwarewww.inkscape.org<IDATXŗ[l\W9s=ml:4i$%Q["h+T-B T!R!T!@JUT+@)Tm"h QvIIƞsZo l}&wm|ZE[NpX:wyʡ=0bnPjdOȭ}xUDC %=XՁH{fjnO49*S|$q9Rˆ0 Za'i&zx8C0MOnqLTd؆<:2vuٹ"sE.rbrsN$O@ @x{Ŝsi ʋ:_}3v]ux4\l['fWC T ƀ$S'xMX6Vs64Ҡԭck4sK Ô+'84CoWK P;Ibqv݅t/v=ρ5~]}(s_,\'ZgΫWūWK<F5 WX?}cypF6:;:^^Ƿ dRYފ](7ej 7g. BaڻQrhHDD)-3~X+ 9Y߇磋su153:{ƆzxE$j%w%I$69~ÍG\_N:ho#l3T4Cx=J9n$ ^ "N^ޱu7=}.PO}q_AǫGkb@b˴r)6Y[Jב0Wè+Q+ǷΰX{4U>+qLw{ғ/q^[(q AԎFBjE\7;Mo?xn:p/LѺ04AL{?ob<{ʜ-Wn{cJg)[UTĪBBrCr f.< |{ˊS~{mj&-5`*e9rr?W z%Ԍ7>:̂뢥g#rh[@S: gBLw49;5K6B9L^¹ W8esbv̅hx3 X@0A'Hbl2܌X~z+f 360-}0+*V5")e)k|z3FsMuM|jVQ*p H6` X灿r%"Q[f<IENDB`qupzilla-1.6.0/src/lib/data/icons/preferences/document-properties.png000066400000000000000000000015501226107126500257620ustar00rootroot00000000000000PNG  IHDR DsBITO pHYs|4ktEXtSoftwarewww.inkscape.org<>PLTE   !!!$$$&&&jjj...:::BBBSSSzzzaaa}}}ޮNjuctRNS '4:=?@BCEFGIJKNOQSTVo}-IDAT8˅NAE &2w.1q "0<\8@pWɭIgB$OP[rtDŷIb93K*$-}r `||w_ ;T=t4Oh?<]r̳LwGv 6 }Sd(-=`1GbWP{<^p՝29C\2yfU{&94Ê40p%Bѐj2c_H )B:Utˆzc)h>$Uj]A)W6)8Q3L %PPHp He6N?]6ڍ&׽ A"jy4Pg"%n HIENDB`qupzilla-1.6.0/src/lib/data/icons/preferences/mail-inbox.png000066400000000000000000000024211226107126500240070ustar00rootroot00000000000000PNG  IHDR szzsBIT|d pHYs|4ktEXtSoftwarewww.inkscape.org<IDATXŗ[oUk_̜І>!DlϡMA|e+!!B4H L H,"ƚjO[{9s>3si{P +Y9}_kL "^%@K "ݾ}/shgggR`1ZkDtΑ)Y$ I1QΝkDcdYyaM#oV'l4M &^Vǁ `5wRZk,c7`h$VX]+Xș(;Ps=hE$sx/#SK3Z֒a_*GB)UL-vҧ#-$aI(@r$MSpel`}C5,ˈ㘱1/J0DkMe cŎb?0bww]g Qa!"6<#*>|[GuB7r8UF9UC@!z߶kN!?UC&Dac59'8r|hm3H0/s "ԤB?He}rphV(oÞ -XחX|vN%'77ӹgZ"x@RA 5k-5}'}<c <~Pa.af9~Ok-Ui^Dʹl=:~wSꦅ1h:_&qԩg!ZG>x\Oh}DӛC{J%gYyo=1FEfjJr:DK=X<88v>Myy}9 @9֪*IwkWĚ&(J(p;m< yneZK^gk|Lj⹜qL6M<σNEk=4c 󬭭88.\ p k~~~qcAD ˲"㼶ͱ:4ٳg7i)h48}tob'^y,cyy/2==_:tNZ*F{beeG+J蕙b$It0=)՞ܼyf|7n|<q!"u 1,??9IiZV ;blIENDB`qupzilla-1.6.0/src/lib/data/icons/preferences/preferences-desktop-keyboard-shortcuts.png000066400000000000000000000026771226107126500315670ustar00rootroot00000000000000PNG  IHDR szzsBIT|d pHYs|4ktEXtSoftwarewww.inkscape.org<zOf_Q1Nfq>000|ЀN zOP8֬yc ֐<{aHV^Gcfuws-DZu0\E1O2::JP`ss0 1!hooZ2q 5σF -cX͛7\x(bpdEf8CZkrTGFu]0l7)%f{Oe@$%0ư7JdVU21|\g'RJr2_:¢ ɀD)R)5un_!KJ, _B/\`٤c"z QvJy-Yhtttpu=x@p \Nh5E~WQ>OfOZP dar)/]:~x64MHj }}}iVD{x ՈR8w33YY}T9ߔr/gM |P|ݽ'K64Q[^^tԩhJR F5z{{OtvvfqZ&ˎl6/qm~!RiÇS?^?.C@Ͽc3TD<=dmyMyIENDB`qupzilla-1.6.0/src/lib/data/icons/preferences/preferences-desktop.png000066400000000000000000000025301226107126500257210ustar00rootroot00000000000000PNG  IHDR DsBITO pHYs|4ktEXtSoftwarewww.inkscape.org<1PLTE;;;???ܐDDDEEEFFFIIIKKKNNNPPPSSSUUUXXXYYYZZZ\\\]]]^^^aaacccfffhhhiiikkkmmmnnnpppsssyyyzzz|||~~~ttлWnK 0tRNS '3:=?@BCEFGIJKNOQSTVooprl]IDAT1kdeΗLhcB+a[XlgmcoX,lV mVaHD7 L2sqqtg /ƠO^~Yb& D~~POwY/CY\O?eq}-atP}tk3gXPqhGm_>69+DE@W3Z4Ta._pl빨+ eD/Y6<$ZH$&e[d3)ɌFo9J#eOf԰ZElX8r0PdOhBnɓgIDQПLo>ycDKtg@'%eBs9ڞ&$;.؆6L# \&˽O/9~\6>pJB,/Ͼ`$AĶ@}!EllyBMA'IENDB`qupzilla-1.6.0/src/lib/data/icons/preferences/preferences-system-firewall.png000066400000000000000000000041351226107126500274020ustar00rootroot00000000000000PNG  IHDR szzsBIT|d pHYs|4ktEXtSoftwarewww.inkscape.org<IDATXŗK[U=OIh!#o0lz?^{{ 8 BHz?F3=UuofzQ-ay%\Q]q#9'O+>H{ G=*@DF/~|{x!kϱ6*fczfQUTQnc6y״*"JD8v}_ޭ 0ayfnOVO\p&p=ZK-7"rz$X={:QA!Fp.(N%o*!$`M MU%N2^?T;^Qݻ[U>C!uC;*'ُ0y_DĂL67aw}"xmX#.<"+Y@1{ y.ds(N.,&B}X/Fl yA|@e᠀DPP5'm moFbNđ\ *Ê%~N1w# h1 75ԉK]w IǗXY"‘>GER{Dq$/\^",1)y 4cçQ '^Ǻ9R^eOx 24z??}lx.j mn}&y޲gdtF[t@,i`waw8|o mϨ9U<k0[@jA L,,0e9yqJ)\wn(44kLEIm!|1ac{.T53f@ZV*t!ّ N8=ʐD!M#z(wǧsAp Ǟ>+7i#pM |^*p6ԥAg(^GUU߯#bFkՋOHr>} 莮`n>Ǘ)e^v{$t*E 7,qՁЦ3*k3! QOtn`Ak䤌Lh% $aHף"D9#WN[#܇!F}Wȋg#{uD(HTTCT0q%&){ t/[@[dt/?>Ńfw{H")֗X=Y7$gM1'7 l,s)D\ڭ{aqA"8Å>ٛ%AGK9%$UD.g78P?ҡ5VUZ Y;|ܝlBZ8RDI4Z3*%A5bdK`w0/7W?.E"YO|χoO"b*"R/N+﹀ED7M`IENDB`qupzilla-1.6.0/src/lib/data/icons/preferences/style-default.png000066400000000000000000000013411226107126500245320ustar00rootroot00000000000000PNG  IHDRשsBITO pHYs B(xtEXtSoftwarewww.inkscape.org<PLTEXXX$&():BiKCNrPQjWxWPY{ZTawbZd\idlsmao-qE@WXkcn}-%.NHt3|?aJ VtRNS  !"+f{!@  IDAT(SuJQEnb bXۈ?`)" ib;s-6YcS Vl=w%n9FqtmEo4u1uJL5wD2JLpϮd+!A_+>4E*ӊr'( K@hE7 e(c1285< sMor 3̦r}G(ERc@UT18wr~2<.? ?M0H򡞥_%_ڗ|IENDB`qupzilla-1.6.0/src/lib/data/icons/preferences/text-x-sql.png000066400000000000000000000016451226107126500240050ustar00rootroot00000000000000PNG  IHDR szzsBIT|d pHYs|4ktEXtSoftwarewww.inkscape.org<"IDATXŗn8EIIviҦ~')3ݺSqRĈcJ-l*c'YA,^wߣ$B@"Iuz<}vvGe`27ϫhB%fᜓ?c> |RʪO|p@Ąp!9$"_DT@x oS S`#S^G]+`2RGySRʽ !ȲNi$@6MCUUXkJ),C)oT .ZIȲރ^cZ~{fu]%J)>Nk'ܵ n}Жu%֊cNlS 315,^^=0 ʟz }Ԅ1TU L&...vusܻMeFBJR 5NNkjI#*Z @Q7jre^ ʲ=Xkz[jRQMk-eYIp3EQo3ڦ6NX^ @NE.96M k)%N#RxYbmmU{i馑bI kO 0`V___;??ʌ1페nJOW.}fhIJ]W_E֜׊dB؉#{IENDB`qupzilla-1.6.0/src/lib/data/icons/qupzilla.png000066400000000000000000000015501226107126500213120ustar00rootroot00000000000000PNG  IHDR DgAMA7tEXtSoftwareAdobe ImageReadyqe<PLTE\grӹ⺼UxjnSwa:R~x 2tRNS PIDAT8mٶ EAHp q ?ׅw>.e*P7y>g;wAZߤ0\y[kpn_ Yo[r?pLA/tc,L8642XyUU<oX|!.M,vuy>oGR = @9p]E $X:ď^\ fcI {Gz]$/(BQ d0c ;Q/!gN({V B1,P4M W0܅ fPE\k[+ȅI))F9\)UQD9)[˲(Y0R{F)yx~vd8grp\Kk9OMliP7iM܀2C tyd56gLR ?xdd5@>'6-.ɪ@9۾/&9*g`LV#0,ϣwqLCtrd cUIENDB`qupzilla-1.6.0/src/lib/data/icons/qupzillaupdate.png000066400000000000000000000016031226107126500225140ustar00rootroot00000000000000PNG  IHDR DgAMA7tEXtSoftwareAdobe ImageReadyqe<PLTEZp'ώh`ス\~t㱏aurhTt3>k`C2&Nݍ籆W}2tRNS P5IDAT8Oe 񕀯,15SQ3?wǺ{)"yR zڗS炙(eWvgC/5G@qdS) WfYa$y'#AǑ v#{XX Ό?>6è6V.)j"I9ߎ\i C9}Z8np:!JDJ'IS!.dϿ {@J@.MH`MNAIENDB`qupzilla-1.6.0/src/lib/data/icons/sites/000077500000000000000000000000001226107126500200715ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/data/icons/sites/akregator.png000066400000000000000000000012571226107126500225630ustar00rootroot00000000000000PNG  IHDRasBIT|d pHYs B(xtEXtSoftwarewww.inkscape.org<,IDATxڥ1ha].Z Mj"*-i$PNn&8tn.]$KViC)&MK{FsVJ7<<%"EUm" ć.O?}mgY'at1A.b^:^y_N3#P>E<>^*+z -[A+ h Yg }b5B!am~Vo =:T Pz |(›[O™yJ=2@.>˰t*h(6ׁ7 n<_ۛO0==2gc9X7 IG r@ܐ:wċEq;Vb$31&[*Pܲ ԥ^\fI6ʻגfY[[ѭf^. N6s/KchS$6[vt'N: ZJkd2D"m{*JjF8Nd29^z>_||.*AIENDB`qupzilla-1.6.0/src/lib/data/icons/sites/aol.png000066400000000000000000000005461226107126500213570ustar00rootroot00000000000000PNG  IHDRa-IDAT8J@l*a@XZ'Ff ɃVi}7XE")lEa$x-cḪ;?9;K 8]/yON<^̺Iǀl1VnX)>PcDD3HXDߛOQQ%QڡRC)%Z_SJuSRhqa9z,(ZY:IVWU՞u$X[ohK;p6T, \}x;cn<~cF7Np$orl^IENDB`qupzilla-1.6.0/src/lib/data/icons/sites/bloglines.png000066400000000000000000000004011226107126500225500ustar00rootroot00000000000000PNG  IHDR(-SQPLTELr"Wz#W{%Y|'[~0a1b2c5e8g@nOy^l{ʲѵӷԽ׿kIDATWU .Vf7<0,["굍L:. sw!Y\atxy}  :nD`tRNS&p~IDATW=O0 , ފ[QqɦEG\rǘis!m2 rA 5;CN#XR/;u\S*ٲPbVWgBC|f@(bOIà%ttoA A?6Bg•(~2IR안aIENDB`qupzilla-1.6.0/src/lib/data/icons/sites/google.png000066400000000000000000000006331226107126500220550ustar00rootroot00000000000000PNG  IHDR(-SPLTEBBBBBBDFFGNOQVWYijnnqwyzX5tRNSIJIDATB`ѐhJDh!?@I P1 `p z'}4oMp:ڃe!4g;HjZl =S̨IENDB`qupzilla-1.6.0/src/lib/data/icons/sites/liferea.png000066400000000000000000000012141226107126500222040ustar00rootroot00000000000000PNG  IHDR(-SsBITO pHYs B(xtEXtSoftwarewww.inkscape.org<#PLTEː!; ˎNJ< 7 5 @ F KQW]dkqxTĈˏ!]cfjpy3v}E.;eLI{@M#{~%4=﵂l~d!m"(ɩSnɖҶԹ$U;ΗМعغ˂ڸݻzݮwtRNSENXIDATMi;QзMqo3h0b/R!EKezh<|eÁbGpuEMW't3z+o{OkmLxnyH.nrcfqcrG|[78bfiʲ !/y!Y2pU~cv U߫ʌ-4-` -)BR].8IENDB`qupzilla-1.6.0/src/lib/data/icons/sites/netvibes.png000066400000000000000000000004221226107126500224140ustar00rootroot00000000000000PNG  IHDR(-S]PLTE    #$'&+ 499:;< DMVWar7'A3=NQtRNS@fcIDATW]!0C_sC!@}̖j_VlFv ebf A`L0 h@f7Q+I%^vɩIENDB`qupzilla-1.6.0/src/lib/data/icons/sites/startpage.png000066400000000000000000000013641226107126500225750ustar00rootroot00000000000000PNG  IHDRaIDAT8]Khu?ߗT6fIZj+ۍq!\ԅ;tEM A T8EEhf]3wuνΑ=G]Й DThVH]FA (Vcص#P-I;20r!)Mp[N&Y>,z]!AEv1zˮO&42׮AY1i<ڧqVZ7bW,X dpupJS /ނJ\r4FMּ2 }Ǥ`M> zќ G#Erϻ6EpkNmُ3MT}/F_cLmrbľTg۹(pdh<J1Q>>2vɾC'|p_ӗ#%A r۞y T.G8T:rI(y/ȍζ뺌n:x}GkNX<"y6)W&|Z%!tydrs?!>,^_: IENDB`qupzilla-1.6.0/src/lib/data/icons/sites/translate.png000066400000000000000000000005131226107126500225730ustar00rootroot00000000000000PNG  IHDR(-S`PLTEXds *0ELW^bZipy|sϊ훝ϺQNtRNS@fIDATJAezx "hbfڗgUqF/@=ghBaƬ2ziQ3F87 u5zxŊRnFx+#E#&5RgVIu߿s(TRSHt\HɘIENDB`qupzilla-1.6.0/src/lib/data/icons/sites/w3.png000066400000000000000000000011211226107126500211230ustar00rootroot00000000000000PNG  IHDRaIDAT8MHTyɬcp( 5--DqѪE. "+2E-BS!4-i'ut73m1&M݅s{zHID€4) UF]k^~NʙL˭ثN#f. \{<سD/F9r2Ʃ٠X,̈Td[b/쪕 zfYZ qW?wjK(38gle= ]#>lnQv-Q]6*J rӶL3cS @02nv_9x[L\hGU\`F%OT5tdO/(ἝD"‘cPfM"85;َ$R6 2W%8jDP8XGX{6<| P^sE xf8{4'Jܝ>x5'fb^DD IlUMG_ߚ.#iIENDB`qupzilla-1.6.0/src/lib/data/icons/sites/wikipedia.png000066400000000000000000000005031226107126500225430ustar00rootroot00000000000000PNG  IHDR7sRGB pHYs  tIME (;bKGD̿IDAT+`7(]"U b2RSܨ$"ʈ%fSbaL2K'n1|?>$ 6*mɊi;6[n^!,b^CxEݙRV:&0 JBݱa٭n_=YTe}^e&5出01!E- n$Fk*sBjˉ$(Gp$+ q˧SM~AUIENDB`qupzilla-1.6.0/src/lib/data/icons/sites/yahoo.png000066400000000000000000000003451226107126500217200ustar00rootroot00000000000000PNG  IHDRR0PLTEjnvz".BRb|Ξ޾[F9tRNS@fcIDAT[c`Vt103p8/2lll˾EBl /Aavb Ͻ]h4KPPPxs@.-hR4FlYb%(h  !JA%k1vy E%8G Mqض5T>Sܸg'N`~7~?rm$(9QUcEcϭu I("{A`DQEQ0".Jh* ⃧.叼9f@~k$U1ֈƘ5bIqPZ|(A!D2I@BT߉.""&_[AE0&%F 1'? t;9iTh1 )!Ρ"3%|GYWl%U9`3[}1rymF11"0֡)egECl&I"q{О8`D(dcaDY!gcQc1@Ruo3(,?SFpaW+U-[LaV)btr`%LQMEnȢ*RۂD@0eE jJ"| ?}}d,"E|J#9z%?y w's|šl)k(ET y,#}WE)FRJh: zR561* ت ( b"qlݏGh^WG]䵭W%"¯u=^~cE(LSIA {pj,iYH}lGDNJ7cI3T>7ӎWl8gφ7!Q(bdK]dxopWJ΀ZB 2oτ MLCޚz0& Ya_ƞ QU+v '/3>^0jY^<}i %H=@R|8Mi/[?.32( !`[%0)n6 X(= |jUN︒ &EzM۱{0a48kc5/"fNstF]&"?|ȱ51KI'<.kߟm,Ecx_BTJE4BYglCsgr^pu4A٩J1̓R\H@i|'; cv\&&5 |RJkӎ%;Jmw,$XW t1gJ !.cr.$D֭%ϙ+ƲZ9""p.K,Ӏ]F o,< pF(P5+V8ZCӲ1R 'x1o|loosas׏;6뒈DUتl6x+F@60s7 jK?R{[@#VjF=ع[oν{L'v@h귾EK[[W^DU;YD/ko?$PP#ePz=tYJd Axv/fk߉B =Qy Єq97F]p` BG j-jRbl#Fei#4@5o 1öĀ2pvX$,$UӏǀpJShCyTFk3r xkPcHERzǞsD2̓|$q1Y+-,M̥^II!X+TΐRA)CνsY!Lz"0j~]D| 6QW`T0(GXu#~qcaOzT0Q*+8mq~" k6H@ o᩵uzRZ s T0JIf,NB@8X(a_ϲn JA@p*Z }ce {,quɘe¡A9`T0FCOQ*ZoWȗ9~/ra1cR 8&'jZ Jnb8ď2ٓ{Zn!{}RXBZ\WWJ@­?VRۗ8ʤY"0rY쪝WܘN^k0elB޹ w9c4,  FG*#X*cDd),:Q~+Y5*$z+tO)_a ݼs7iU#Lo@)K|6Q[Rug+B("leKRKMmYP(Exkom Q'lKhexiuĦ|O\~WGɥj& pORB@moTDk +KTW!ݢ2ToWYLYR#OѰh1=,s>Jf+{فN@BIVJp~.>͈t1}Fvq>cCv7޻ݘ{ض^W'5;`#y߻lDPT)-we 9n3cZ6W1wxepB`w> 11DѦ $PĢ sٹ3v},&a M$Ci)v )Y㽝[/Ji!λm iHKtULLͲJYQ Okosxhh5$hUBiYRZԖB3d1c8هO{bo ΏF8tQ;")hpuT˟n0K quMj[ɘb0M{+VJrʲH72BB6pF9ޅXVF(ƀ&3hzRC#BRuH;>­:~:b7/G+ .ʚiPde-@Ix[Z O}>`y6]瑢N]|.nu`]-+lA n!#qT\ǛMÿ7'zO?xʐg.Co@H^:#9+ap|. SV#)LY8<:O{t*p-)L0cC4F(˥ 9k 1jğx{u.^BVHnA_t/^ L&EKBjP=اXߤ=<@;],98? )cLYDhα9\z|s\ G`>g'Dzd2{fNT1!R)Z kOГH;6wsCE\,  R3f+!y*hYn-q6$4 |N9ю,Ύ1>)Α%th ;Ql$3i5b/|ETC]`ÌúsuE>h!G)!)G!TI1!eIض߭T=|Ԉ",%| ],gSU]#իϟcH=G@(ZsvQyDc-W1EGlrI(&%89&&z{smD=tۈyy ?;xO+{\UIZNU1z\[~%N&yX}R>$uP?u:׀@[ pX# * * 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 3 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, see . * ============================================================ */ #include "desktopnotification.h" #include "ui_desktopnotification.h" #include #include DesktopNotification::DesktopNotification(bool setPosition) : QWidget(0) , ui(new Ui::DesktopNotification) , m_settingPosition(setPosition) , m_timeout(6000) , m_timer(new QTimer(this)) { ui->setupUi(this); setAttribute(Qt::WA_DeleteOnClose); Qt::WindowFlags flags = Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint | Qt::X11BypassWindowManagerHint; setWindowFlags(flags); setAttribute(Qt::WA_TranslucentBackground); setWindowOpacity(0.9); m_timer->setSingleShot(true); connect(m_timer, SIGNAL(timeout()), this, SLOT(close())); if (m_settingPosition) { setCursor(Qt::OpenHandCursor); } } void DesktopNotification::show() { ui->icon->setPixmap(m_icon); ui->heading->setText(m_heading); ui->text->setText(m_text); if (!m_settingPosition) { m_timer->stop(); m_timer->setInterval(m_timeout); m_timer->start(); } QWidget::show(); } void DesktopNotification::enterEvent(QEvent*) { if (!m_settingPosition) { setWindowOpacity(0.5); } } void DesktopNotification::leaveEvent(QEvent*) { if (!m_settingPosition) { setWindowOpacity(0.9); } } void DesktopNotification::mousePressEvent(QMouseEvent* e) { if (!m_settingPosition) { close(); return; } if (e->button() == Qt::LeftButton) { m_dragPosition = e->globalPos() - frameGeometry().topLeft(); e->accept(); } } void DesktopNotification::mouseMoveEvent(QMouseEvent* e) { if (e->buttons() & Qt::LeftButton) { move(e->globalPos() - m_dragPosition); e->accept(); } } DesktopNotification::~DesktopNotification() { delete ui; } qupzilla-1.6.0/src/lib/desktopnotifications/desktopnotification.h000066400000000000000000000034721226107126500254200ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef DESKTOPNOTIFICATION_H #define DESKTOPNOTIFICATION_H #include "qz_namespace.h" #include #include namespace Ui { class DesktopNotification; } class QT_QUPZILLA_EXPORT DesktopNotification : public QWidget { Q_OBJECT public: explicit DesktopNotification(bool setPosition = false); void setPixmap(const QPixmap &icon) { m_icon = icon; } void setHeading(const QString &heading) { m_heading = heading; } void setText(const QString &text) { m_text = text; } void setTimeout(int timeout) { m_timeout = timeout; } void show(); ~DesktopNotification(); private: void enterEvent(QEvent* e); void leaveEvent(QEvent* e); void mousePressEvent(QMouseEvent* e); void mouseMoveEvent(QMouseEvent* e); Ui::DesktopNotification* ui; bool m_settingPosition; QPoint m_dragPosition; QPixmap m_icon; QString m_heading; QString m_text; int m_timeout; QTimer* m_timer; }; #endif // DESKTOPNOTIFICATION_H qupzilla-1.6.0/src/lib/desktopnotifications/desktopnotification.ui000066400000000000000000000052101226107126500255760ustar00rootroot00000000000000 DesktopNotification 0 0 356 74 0 QFrame::StyledPanel QFrame::Raised 48 48 0 Qt::Vertical 20 40 0 0 Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop Qt::Vertical 20 40 qupzilla-1.6.0/src/lib/desktopnotifications/desktopnotificationsfactory.cpp000066400000000000000000000107261226107126500275260ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "desktopnotificationsfactory.h" #include "desktopnotification.h" #include "mainapplication.h" #include "settings.h" #include #include #include #if defined(QZ_WS_X11) && !defined(DISABLE_DBUS) #include #endif DesktopNotificationsFactory::DesktopNotificationsFactory(QObject* parent) : QObject(parent) , m_uint(0) { loadSettings(); } void DesktopNotificationsFactory::loadSettings() { Settings settings; settings.beginGroup("Notifications"); m_enabled = settings.value("Enabled", true).toBool(); m_timeout = settings.value("Timeout", 6000).toInt(); #ifdef QZ_WS_X11 m_notifType = settings.value("UseNativeDesktop", true).toBool() ? DesktopNative : PopupWidget; #else m_notifType = PopupWidget; #endif m_position = settings.value("Position", QPoint(10, 10)).toPoint(); settings.endGroup(); } bool DesktopNotificationsFactory::supportsNativeNotifications() const { #if defined(QZ_WS_X11) && !defined(DISABLE_DBUS) return true; #else return false; #endif } void DesktopNotificationsFactory::showNotification(const QPixmap &icon, const QString &heading, const QString &text) { if (!m_enabled) { return; } switch (m_notifType) { case PopupWidget: if (!m_desktopNotif) { m_desktopNotif = new DesktopNotification(); } m_desktopNotif.data()->setPixmap(icon); m_desktopNotif.data()->setHeading(heading); m_desktopNotif.data()->setText(text); m_desktopNotif.data()->setTimeout(m_timeout); m_desktopNotif.data()->move(m_position); m_desktopNotif.data()->show(); break; case DesktopNative: #if defined(QZ_WS_X11) && !defined(DISABLE_DBUS) QFile tmp(mApp->tempPath() + "/qupzilla_notif.png"); tmp.open(QFile::WriteOnly); icon.save(tmp.fileName()); QDBusInterface dbus("org.freedesktop.Notifications", "/org/freedesktop/Notifications", "org.freedesktop.Notifications", QDBusConnection::sessionBus()); QVariantList args; args.append(QLatin1String("qupzilla")); args.append(m_uint); args.append(tmp.fileName()); args.append(heading); args.append(text); args.append(QStringList()); args.append(QVariantMap()); args.append(m_timeout); dbus.callWithCallback("Notify", args, this, SLOT(updateLastId(QDBusMessage)), SLOT(error(QDBusError))); #endif break; } } void DesktopNotificationsFactory::nativeNotificationPreview() { #if defined(QZ_WS_X11) && !defined(DISABLE_DBUS) QFile tmp(mApp->tempPath() + "/qupzilla_notif.png"); tmp.open(QFile::WriteOnly); QPixmap(":icons/preferences/dialog-question.png").save(tmp.fileName()); QDBusInterface dbus("org.freedesktop.Notifications", "/org/freedesktop/Notifications", "org.freedesktop.Notifications", QDBusConnection::sessionBus()); QVariantList args; args.append(QLatin1String("qupzilla")); args.append(m_uint); args.append(tmp.fileName()); args.append(QObject::tr("Native System Notification")); args.append(QString()); args.append(QStringList()); args.append(QVariantMap()); args.append(m_timeout); dbus.callWithCallback("Notify", args, this, SLOT(updateLastId(QDBusMessage)), SLOT(error(QDBusError))); #endif } #if defined(QZ_WS_X11) && !defined(DISABLE_DBUS) void DesktopNotificationsFactory::updateLastId(const QDBusMessage &msg) { QVariantList list = msg.arguments(); if (list.count() > 0) { m_uint = list.at(0).toInt(); } } void DesktopNotificationsFactory::error(const QDBusError &error) { qWarning() << "QDBusError:" << error.message(); } #endif qupzilla-1.6.0/src/lib/desktopnotifications/desktopnotificationsfactory.h000066400000000000000000000035311226107126500271670ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef DESKTOPNOTIFICATIONSFACTORY_H #define DESKTOPNOTIFICATIONSFACTORY_H #include "qz_namespace.h" #include #include #include class QPixmap; class QDBusMessage; class QDBusError; class DesktopNotification; class QT_QUPZILLA_EXPORT DesktopNotificationsFactory : public QObject { Q_OBJECT public: enum Type { DesktopNative, PopupWidget }; explicit DesktopNotificationsFactory(QObject* parent = 0); void loadSettings(); bool supportsNativeNotifications() const; void showNotification(const QPixmap &icon, const QString &heading, const QString &text); void nativeNotificationPreview(); private slots: #if defined(QZ_WS_X11) && !defined(DISABLE_DBUS) void updateLastId(const QDBusMessage &msg); void error(const QDBusError &error); #endif private: bool m_enabled; int m_timeout; Type m_notifType; QPoint m_position; QPointer m_desktopNotif; quint32 m_uint; }; #endif // DESKTOPNOTIFICATIONSFACTORY_H qupzilla-1.6.0/src/lib/downloads/000077500000000000000000000000001226107126500167105ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/downloads/downloadfilehelper.cpp000066400000000000000000000265051226107126500232730ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "downloadfilehelper.h" #include "webpage.h" #include "tabbedwebview.h" #include "downloadoptionsdialog.h" #include "mainapplication.h" #include "qupzilla.h" #include "downloaditem.h" #include "downloadmanager.h" #include "qztools.h" #include "settings.h" #include "qzregexp.h" #include #include #include #include #include #include #if QT_VERSION >= 0x050000 #include #else #include #endif DownloadFileHelper::DownloadFileHelper(const QString &lastDownloadPath, const QString &downloadPath, bool useNativeDialog) : QObject() , m_lastDownloadOption(DownloadManager::SaveFile) , m_lastDownloadPath(lastDownloadPath) , m_downloadPath(downloadPath) , m_useNativeDialog(useNativeDialog) , m_timer(0) , m_reply(0) , m_openFileChoosed(false) , m_listWidget(0) , m_iconProvider(new QFileIconProvider) , m_manager(0) { } ////////////////////////////////////////////////////// //// Getting where to download requested file //// in 3 functions, as we are using non blocking //// dialogs ( this is important to make secure downloading //// on Windows working properly ) ////////////////////////////////////////////////////// void DownloadFileHelper::handleUnsupportedContent(QNetworkReply* reply, const DownloadManager::DownloadInfo &info) { m_timer = new QTime(); m_timer->start(); m_h_fileName = info.suggestedFileName.isEmpty() ? getFileName(reply) : info.suggestedFileName; m_reply = reply; QFileInfo fileInfo(m_h_fileName); QTemporaryFile tempFile(mApp->tempPath() + "/XXXXXX." + fileInfo.suffix()); tempFile.open(); tempFile.write(m_reply->peek(1024 * 1024)); QFileInfo tempInfo(tempFile.fileName()); m_fileIcon = m_iconProvider->icon(tempInfo).pixmap(30, 30); QString mimeType = m_iconProvider->type(tempInfo); m_fileSize = m_reply->header(QNetworkRequest::ContentLengthHeader).toLongLong(); if (m_fileSize > 0) { mimeType.append(QString(" (%1)").arg(QzTools::fileSizeToString(m_fileSize))); } // Close Empty Tab if (info.page) { WebView* view = qobject_cast(info.page->view()); if (!info.page->url().isEmpty()) { m_downloadPage = info.page->url(); } else if (info.page->history()->canGoBack()) { m_downloadPage = info.page->history()->backItem().url(); } else if (view && info.page->history()->count() == 0) { view->closeView(); } } if (info.askWhatToDo && m_downloadPath.isEmpty()) { DownloadOptionsDialog* dialog = new DownloadOptionsDialog(m_h_fileName, m_fileIcon, mimeType, reply->url(), mApp->activeWindow()); dialog->showExternalManagerOption(m_manager->useExternalManager()); dialog->setLastDownloadOption(m_lastDownloadOption); dialog->show(); connect(dialog, SIGNAL(dialogFinished(int)), this, SLOT(optionsDialogAccepted(int))); } else if (info.forceChoosingPath) { optionsDialogAccepted(4); } else if (m_manager->useExternalManager()) { optionsDialogAccepted(3); } else { optionsDialogAccepted(2); } } QString DownloadFileHelper::parseContentDisposition(const QByteArray &header) { QString path; if (header.isEmpty()) { return path; } QString value; if (QzTools::isUtf8(header.constData())) { value = QString::fromUtf8(header); } else { value = QString::fromLatin1(header); } // We try to use UTF-8 encoded filename first if present if (value.contains(QzRegExp("[ ;]{1,}filename*\\*\\s*=\\s*UTF-8''", Qt::CaseInsensitive))) { QzRegExp reg("filename\\s*\\*\\s*=\\s*UTF-8''([^;]*)", Qt::CaseInsensitive); reg.indexIn(value); path = QUrl::fromPercentEncoding(reg.cap(1).toUtf8()).trimmed(); } else if (value.contains(QzRegExp("[ ;]{1,}filename\\s*=", Qt::CaseInsensitive))) { QzRegExp reg("[ ;]{1,}filename\\s*=(.*)", Qt::CaseInsensitive); reg.indexIn(value); path = reg.cap(1).trimmed(); // Parse filename in quotes (to support semicolon inside filename) if (path.startsWith(QLatin1Char('"')) && path.count(QLatin1Char('"')) > 1) { int pos = path.indexOf(QLatin1Char('"'), 1); while (pos != -1) { if (path[pos - 1] != QLatin1Char('\\')) { // We also need to strip starting quote path = path.left(pos).mid(1); break; } pos = path.indexOf(QLatin1Char('"'), pos + 1); } } else { QzRegExp reg("([^;]*)", Qt::CaseInsensitive); reg.indexIn(path); path = reg.cap(1).trimmed(); } if (path.startsWith(QLatin1Char('"')) && path.endsWith(QLatin1Char('"'))) { path = path.mid(1, path.length() - 2); } } return path; } void DownloadFileHelper::optionsDialogAccepted(int finish) { bool forceChoosingPath = false; m_openFileChoosed = false; switch (finish) { case 0: // Cancelled delete m_timer; m_reply->abort(); m_reply->deleteLater(); return; case 1: // Open m_openFileChoosed = true; m_lastDownloadOption = DownloadManager::OpenFile; break; case 2: // Save m_lastDownloadOption = DownloadManager::SaveFile; break; case 3: // External manager m_manager->startExternalManager(m_reply->url()); m_reply->abort(); m_reply->deleteLater(); return; case 4: // Force opening save file dialog m_lastDownloadOption = DownloadManager::SaveFile; forceChoosingPath = true; break; default: qWarning() << "DownloadFileHelper::optionsDialogAccepted invalid return value!"; delete m_timer; m_reply->abort(); m_reply->deleteLater(); return; } m_manager->setLastDownloadOption(m_lastDownloadOption); if (!m_openFileChoosed) { if (m_downloadPath.isEmpty() || forceChoosingPath) { if (m_useNativeDialog) { fileNameChoosed(QFileDialog::getSaveFileName(mApp->getWindow(), tr("Save file as..."), m_lastDownloadPath + m_h_fileName)); } else { QFileDialog* dialog = new QFileDialog(mApp->getWindow()); dialog->setAttribute(Qt::WA_DeleteOnClose); dialog->setWindowTitle(tr("Save file as...")); dialog->setAcceptMode(QFileDialog::AcceptSave); dialog->setDirectory(m_lastDownloadPath); dialog->selectFile(m_h_fileName); QList urls; urls << #if QT_VERSION >= 0x050000 QUrl::fromLocalFile(QStandardPaths::writableLocation(QStandardPaths::HomeLocation)) << QUrl::fromLocalFile(QStandardPaths::writableLocation(QStandardPaths::DesktopLocation)) << QUrl::fromLocalFile(QStandardPaths::writableLocation(QStandardPaths::DocumentsLocation)) << QUrl::fromLocalFile(QStandardPaths::writableLocation(QStandardPaths::PicturesLocation)) << QUrl::fromLocalFile(QStandardPaths::writableLocation(QStandardPaths::MusicLocation)) << QUrl::fromLocalFile(QStandardPaths::writableLocation(QStandardPaths::MoviesLocation)); #else QUrl::fromLocalFile(QDesktopServices::storageLocation(QDesktopServices::HomeLocation)) << QUrl::fromLocalFile(QDesktopServices::storageLocation(QDesktopServices::DesktopLocation)) << QUrl::fromLocalFile(QDesktopServices::storageLocation(QDesktopServices::DocumentsLocation)) << QUrl::fromLocalFile(QDesktopServices::storageLocation(QDesktopServices::PicturesLocation)) << QUrl::fromLocalFile(QDesktopServices::storageLocation(QDesktopServices::MusicLocation)) << QUrl::fromLocalFile(QDesktopServices::storageLocation(QDesktopServices::MoviesLocation)); #endif dialog->setSidebarUrls(urls); dialog->show(); connect(dialog, SIGNAL(fileSelected(QString)), this, SLOT(fileNameChoosed(QString))); } } else { fileNameChoosed(m_downloadPath + m_h_fileName, true); } } else { fileNameChoosed(mApp->tempPath() + "/" + m_h_fileName, true); } } void DownloadFileHelper::fileNameChoosed(const QString &name, bool fileNameAutoGenerated) { m_userFileName = name.trimmed(); if (m_userFileName.isEmpty()) { m_reply->abort(); m_reply->deleteLater(); delete m_timer; return; } int pos = m_userFileName.lastIndexOf(QLatin1Char('/')); if (pos != -1) { int size = m_userFileName.size(); m_path = m_userFileName.left(pos + 1); m_fileName = m_userFileName.right(size - pos - 1); } if (fileNameAutoGenerated) { m_fileName = QzTools::ensureUniqueFilename(m_fileName); } if (!m_path.contains(mApp->tempPath())) { m_lastDownloadPath = m_path; } Settings settings; settings.beginGroup("DownloadManager"); settings.setValue("lastDownloadPath", m_lastDownloadPath); settings.endGroup(); m_manager->setLastDownloadPath(m_lastDownloadPath); QListWidgetItem* item = new QListWidgetItem(m_listWidget); DownloadItem* downItem = new DownloadItem(item, m_reply, m_path, m_fileName, m_fileIcon, m_timer, m_openFileChoosed, m_downloadPage, m_manager); downItem->setTotalSize(m_fileSize); emit itemCreated(item, downItem); } ////////////////////////////////////////////////////// //// End here ////////////////////////////////////////////////////// QString DownloadFileHelper::getFileName(QNetworkReply* reply) { QString path = parseContentDisposition(reply->rawHeader("Content-Disposition")); if (path.isEmpty()) { path = reply->url().path(); } QFileInfo info(path); QString baseName = info.completeBaseName(); QString endName = info.suffix(); if (baseName.isEmpty()) { baseName = tr("NoNameDownload"); } if (!endName.isEmpty()) { endName.prepend(QLatin1Char('.')); } QString name = baseName + endName; if (name.contains(QLatin1Char('"'))) { name.remove(QLatin1String("\";")); } return QzTools::filterCharsFromFilename(name); } DownloadFileHelper::~DownloadFileHelper() { delete m_iconProvider; } qupzilla-1.6.0/src/lib/downloads/downloadfilehelper.h000066400000000000000000000050401226107126500227270ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef DOWNLOADFILEHELPER_H #define DOWNLOADFILEHELPER_H #include #include #include #include "qz_namespace.h" #include "downloadmanager.h" class QFileIconProvider; class QListWidget; class DownloadItem; class DownloadManager; class WebPage; class QT_QUPZILLA_EXPORT DownloadFileHelper : public QObject { Q_OBJECT public: explicit DownloadFileHelper(const QString &lastDownloadPath, const QString &downloadPath, bool useNativeDialog); ~DownloadFileHelper(); void setListWidget(QListWidget* tw) { m_listWidget = tw; } void setDownloadManager(DownloadManager* m) { m_manager = m; } void setLastDownloadOption(const DownloadManager::DownloadOption &option) { m_lastDownloadOption = option; } void handleUnsupportedContent(QNetworkReply* reply, const DownloadManager::DownloadInfo &info); static QString parseContentDisposition(const QByteArray &header); signals: void itemCreated(QListWidgetItem* item, DownloadItem* downItem); private slots: void optionsDialogAccepted(int finish = -1); void fileNameChoosed(const QString &name, bool fileNameAutoGenerated = false); private: QString getFileName(QNetworkReply* reply); DownloadManager::DownloadOption m_lastDownloadOption; QString m_lastDownloadPath; QString m_downloadPath; bool m_useNativeDialog; QTime* m_timer; QString m_path; QString m_fileName; QString m_userFileName; QString m_h_fileName; QNetworkReply* m_reply; QPixmap m_fileIcon; QUrl m_downloadPage; qint64 m_fileSize; bool m_openFileChoosed; QListWidget* m_listWidget; QFileIconProvider* m_iconProvider; DownloadManager* m_manager; }; #endif // DOWNLOADFILEHELPER_H qupzilla-1.6.0/src/lib/downloads/downloaditem.cpp000066400000000000000000000342171226107126500221110ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "downloaditem.h" #include "ui_downloaditem.h" #include "mainapplication.h" #include "qupzilla.h" #include "tabwidget.h" #include "webpage.h" #include "downloadmanager.h" #include "iconprovider.h" #include "networkmanager.h" #include "qztools.h" #include "schemehandlers/ftpschemehandler.h" #include #include #include #include #include #include #include #include #ifdef Q_OS_WIN #include "Shlwapi.h" #endif //#define DOWNMANAGER_DEBUG DownloadItem::DownloadItem(QListWidgetItem* item, QNetworkReply* reply, const QString &path, const QString &fileName, const QPixmap &fileIcon, QTime* timer, bool openAfterFinishedDownload, const QUrl &downloadPage, DownloadManager* manager) : QWidget() , ui(new Ui::DownloadItem) , m_item(item) , m_reply(reply) , m_ftpDownloader(0) , m_path(path) , m_fileName(fileName) , m_downTimer(timer) , m_downUrl(reply->url()) , m_downloadPage(downloadPage) , m_downloading(false) , m_openAfterFinish(openAfterFinishedDownload) , m_downloadStopped(false) , m_received(0) , m_total(0) { #ifdef DOWNMANAGER_DEBUG qDebug() << __FUNCTION__ << item << reply << path << fileName; #endif QString fullPath = path + fileName; if (QFile::exists(fullPath)) { QFile::remove(fullPath); } m_outputFile.setFileName(fullPath); ui->setupUi(this); setMaximumWidth(525); ui->button->setPixmap(qIconProvider->standardIcon(QStyle::SP_BrowserStop).pixmap(20, 20)); ui->fileName->setText(m_fileName); ui->downloadInfo->setText(tr("Remaining time unavailable")); ui->fileIcon->setPixmap(fileIcon); setContextMenuPolicy(Qt::CustomContextMenu); connect(this, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(customContextMenuRequested(QPoint))); connect(ui->button, SIGNAL(clicked(QPoint)), this, SLOT(stop())); connect(manager, SIGNAL(resized(QSize)), this, SLOT(parentResized(QSize))); startDownloading(); } void DownloadItem::setTotalSize(qint64 total) { if (total > 0) { m_total = total; } } void DownloadItem::startDownloading() { QUrl locationHeader = m_reply->header(QNetworkRequest::LocationHeader).toUrl(); bool hasFtpUrlInHeader = locationHeader.isValid() && (locationHeader.scheme() == "ftp"); if (m_reply->url().scheme() == "ftp" || hasFtpUrlInHeader) { QUrl url = hasFtpUrlInHeader ? locationHeader : m_reply->url(); m_reply->abort(); m_reply->deleteLater(); m_reply = 0; startDownloadingFromFtp(url); return; } else if (locationHeader.isValid()) { m_reply->abort(); m_reply->deleteLater(); m_reply = mApp->networkManager()->get(QNetworkRequest(locationHeader)); } m_reply->setParent(this); connect(m_reply, SIGNAL(finished()), this, SLOT(finished())); connect(m_reply, SIGNAL(readyRead()), this, SLOT(readyRead())); connect(m_reply, SIGNAL(downloadProgress(qint64,qint64)), this, SLOT(downloadProgress(qint64,qint64))); connect(m_reply, SIGNAL(error(QNetworkReply::NetworkError)), this, SLOT(error())); connect(m_reply, SIGNAL(metaDataChanged()), this, SLOT(metaDataChanged())); m_downloading = true; m_timer.start(1000, this); readyRead(); QTimer::singleShot(200, this, SLOT(updateDownload())); if (m_reply->error() != QNetworkReply::NoError) { stop(false); error(); } } void DownloadItem::startDownloadingFromFtp(const QUrl &url) { if (!m_outputFile.isOpen() && !m_outputFile.open(QIODevice::WriteOnly)) { stop(false); ui->downloadInfo->setText(tr("Error: Cannot write to file!")); return; } m_ftpDownloader = new FtpDownloader(this); connect(m_ftpDownloader, SIGNAL(finished()), this, SLOT(finished())); connect(m_ftpDownloader, SIGNAL(dataTransferProgress(qint64,qint64)), this, SLOT(downloadProgress(qint64,qint64))); connect(m_ftpDownloader, SIGNAL(errorOccured(QFtp::Error)), this, SLOT(error())); connect(m_ftpDownloader, SIGNAL(ftpAuthenticationRequierd(QUrl,QAuthenticator*)), mApp->networkManager(), SLOT(ftpAuthentication(QUrl,QAuthenticator*))); m_ftpDownloader->download(url, &m_outputFile); m_downloading = true; m_timer.start(1000, this); QTimer::singleShot(200, this, SLOT(updateDownload())); if (m_ftpDownloader->error() != QFtp::NoError) { error(); } } void DownloadItem::parentResized(const QSize &size) { if (size.width() < 200) { return; } setMaximumWidth(size.width()); } void DownloadItem::metaDataChanged() { QUrl locationHeader = m_reply->header(QNetworkRequest::LocationHeader).toUrl(); if (locationHeader.isValid()) { m_reply->close(); m_reply->deleteLater(); m_reply = mApp->networkManager()->get(QNetworkRequest(locationHeader)); startDownloading(); } } void DownloadItem::finished() { #ifdef DOWNMANAGER_DEBUG qDebug() << __FUNCTION__ << m_reply; #endif m_timer.stop(); QString host = m_reply ? m_reply->url().host() : m_ftpDownloader->url().host(); ui->downloadInfo->setText(tr("Done - %1").arg(host)); ui->progressBar->hide(); ui->button->hide(); ui->frame->hide(); m_outputFile.close(); if (m_reply) { m_reply->deleteLater(); } else { m_ftpDownloader->deleteLater(); } m_item->setSizeHint(sizeHint()); #if QT_VERSION == 0x040700 // Workaround ui->button->show(); ui->button->hide(); #endif m_downloading = false; if (m_openAfterFinish) { openFile(); } emit downloadFinished(true); } void DownloadItem::downloadProgress(qint64 received, qint64 total) { #ifdef DOWNMANAGER_DEBUG qDebug() << __FUNCTION__ << received << total; #endif qint64 currentValue = 0; qint64 totalValue = 0; if (total > 0) { currentValue = received * 100 / total; totalValue = 100; } ui->progressBar->setValue(currentValue); ui->progressBar->setMaximum(totalValue); m_currSpeed = received * 1000.0 / m_downTimer->elapsed(); m_received = received; m_total = total; } void DownloadItem::timerEvent(QTimerEvent* event) { if (event->timerId() == m_timer.timerId()) { updateDownloadInfo(m_currSpeed, m_received, m_total); } else { QWidget::timerEvent(event); } } int DownloadItem::progress() { return ui->progressBar->value(); } bool DownloadItem::isCancelled() { return ui->downloadInfo->text().startsWith(tr("Cancelled")); } QString DownloadItem::remaingTimeToString(QTime time) { if (time < QTime(0, 0, 10)) { return tr("few seconds"); } else if (time < QTime(0, 1)) { return tr("%n seconds", "", time.second()); } else if (time < QTime(1, 0)) { return tr("%n minutes", "", time.minute()); } else { return tr("%n hours", "", time.hour()); } } QString DownloadItem::currentSpeedToString(double speed) { if (speed < 0) { return tr("Unknown speed"); } speed /= 1024; // kB if (speed < 1000) { return QString::number(speed, 'f', 0) + QLatin1String(" ") + tr("kB/s"); } speed /= 1024; //MB if (speed < 1000) { return QString::number(speed, 'f', 2) + QLatin1String(" ") + tr("MB/s"); } speed /= 1024; //GB return QString::number(speed, 'f', 2) + QLatin1String(" ") + tr("GB/s"); } void DownloadItem::updateDownloadInfo(double currSpeed, qint64 received, qint64 total) { #ifdef DOWNMANAGER_DEBUG qDebug() << __FUNCTION__ << currSpeed << received << total; #endif // QString QString QString QString // | m_remTime | |m_currSize| |m_fileSize| |m_speed| // Remaining 26 minutes - 339MB of 693 MB (350kB/s) int estimatedTime = ((total - received) / 1024) / (currSpeed / 1024); QString speed = currentSpeedToString(currSpeed); // We have QString speed now QTime time; time = time.addSecs(estimatedTime); QString remTime = remaingTimeToString(time); m_remTime = time; QString currSize = QzTools::fileSizeToString(received); QString fileSize = QzTools::fileSizeToString(total); if (fileSize == tr("Unknown size")) { ui->downloadInfo->setText(tr("%2 - unknown size (%3)").arg(currSize, speed)); } else { ui->downloadInfo->setText(tr("Remaining %1 - %2 of %3 (%4)").arg(remTime, currSize, fileSize, speed)); } } void DownloadItem::stop(bool askForDeleteFile) { #ifdef DOWNMANAGER_DEBUG qDebug() << __FUNCTION__; #endif if (m_downloadStopped) { return; } m_downloadStopped = true; QString host; if (m_reply) { host = m_reply->url().host(); } else if (m_ftpDownloader) { host = m_ftpDownloader->url().host(); } m_openAfterFinish = false; m_timer.stop(); if (m_reply) { m_reply->abort(); } else if (m_ftpDownloader) { m_ftpDownloader->abort(); m_ftpDownloader->close(); } QString outputfile = QFileInfo(m_outputFile).absoluteFilePath(); m_outputFile.close(); ui->downloadInfo->setText(tr("Cancelled - %1").arg(host)); ui->progressBar->hide(); ui->button->hide(); m_item->setSizeHint(sizeHint()); #if QT_VERSION == 0x040700 // Workaround ui->button->show(); ui->button->hide(); #endif m_downloading = false; emit downloadFinished(false); if (askForDeleteFile) { QMessageBox::StandardButton button = QMessageBox::question(m_item->listWidget()->parentWidget(), tr("Delete file"), tr("Do you want to also delete dowloaded file?"), QMessageBox::Yes | QMessageBox::No); if (button == QMessageBox::Yes) { QFile::remove(outputfile); } } } void DownloadItem::mouseDoubleClickEvent(QMouseEvent* e) { openFile(); e->accept(); } void DownloadItem::customContextMenuRequested(const QPoint &pos) { QMenu menu; menu.addAction(QIcon::fromTheme("document-open"), tr("Open File"), this, SLOT(openFile())); menu.addAction(tr("Open Folder"), this, SLOT(openFolder())); menu.addSeparator(); menu.addAction(tr("Go to Download Page"), this, SLOT(goToDownloadPage()))->setEnabled(!m_downloadPage.isEmpty()); menu.addAction(QIcon::fromTheme("edit-copy"), tr("Copy Download Link"), this, SLOT(copyDownloadLink())); menu.addSeparator(); menu.addAction(qIconProvider->standardIcon(QStyle::SP_BrowserStop), tr("Cancel downloading"), this, SLOT(stop()))->setEnabled(m_downloading); menu.addAction(QIcon::fromTheme("list-remove"), tr("Remove"), this, SLOT(clear()))->setEnabled(!m_downloading); if (m_downloading || ui->downloadInfo->text().startsWith(tr("Cancelled")) || ui->downloadInfo->text().startsWith(tr("Error"))) { menu.actions().at(0)->setEnabled(false); } menu.exec(mapToGlobal(pos)); } void DownloadItem::goToDownloadPage() { QupZilla* qz = mApp->getWindow(); if (qz) { qz->tabWidget()->addView(m_downloadPage, Qz::NT_SelectedTab); } else { mApp->makeNewWindow(Qz::BW_NewWindow, m_downloadPage); } } void DownloadItem::copyDownloadLink() { QApplication::clipboard()->setText(m_downUrl.toString()); } void DownloadItem::clear() { emit deleteItem(this); } void DownloadItem::openFile() { if (m_downloading) { return; } QFileInfo info(m_path + m_fileName); if (info.exists()) { QDesktopServices::openUrl(QUrl::fromLocalFile(info.absoluteFilePath())); } else { QMessageBox::warning(m_item->listWidget()->parentWidget(), tr("Not found"), tr("Sorry, the file \n %1 \n was not found!").arg(info.absoluteFilePath())); } } void DownloadItem::openFolder() { #ifdef Q_OS_WIN QString winFileName = m_path + m_fileName; winFileName.replace(QLatin1Char('/'), "\\"); QString shExArg = "/e,/select,\"" + winFileName + "\""; ShellExecute(NULL, NULL, TEXT("explorer.exe"), shExArg.toStdWString().c_str(), NULL, SW_SHOW); #else QDesktopServices::openUrl(QUrl::fromLocalFile(m_path)); #endif } void DownloadItem::readyRead() { #ifdef DOWNMANAGER_DEBUG qDebug() << __FUNCTION__ ; #endif if (!m_outputFile.isOpen() && !m_outputFile.open(QIODevice::WriteOnly)) { stop(false); ui->downloadInfo->setText(tr("Error: Cannot write to file!")); return; } m_outputFile.write(m_reply->readAll()); } void DownloadItem::error() { #ifdef DOWNMANAGER_DEBUG qDebug() << __FUNCTION__ << (m_reply ? m_reply->error() : m_ftpDownloader->error()); #endif if (m_reply && m_reply->error() != QNetworkReply::NoError) { ui->downloadInfo->setText(tr("Error: ") + m_reply->errorString()); } else if (m_ftpDownloader && m_ftpDownloader->error() != QFtp::NoError) { stop(false); ui->downloadInfo->setText(tr("Error: ") + m_ftpDownloader->errorString()); } } void DownloadItem::updateDownload() { #ifdef DOWNMANAGER_DEBUG qDebug() << __FUNCTION__ ; #endif // after caling stop() (from readyRead()) m_reply will be a dangling pointer, // thus it should be checked after m_outputFile.isOpen() if (ui->progressBar->maximum() == 0 && m_outputFile.isOpen() && ((m_reply && m_reply->isFinished()) || (m_ftpDownloader && m_ftpDownloader->isFinished()))) { downloadProgress(0, 0); finished(); } } DownloadItem::~DownloadItem() { delete ui; delete m_item; delete m_downTimer; } qupzilla-1.6.0/src/lib/downloads/downloaditem.h000066400000000000000000000060551226107126500215550ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef DOWNLOADITEM_H #define DOWNLOADITEM_H #include #include #include #include #include #include #include "qz_namespace.h" namespace Ui { class DownloadItem; } class QListWidgetItem; class DownloadManager; class FtpDownloader; class QT_QUPZILLA_EXPORT DownloadItem : public QWidget { Q_OBJECT public: explicit DownloadItem(QListWidgetItem* item, QNetworkReply* reply, const QString &path, const QString &fileName, const QPixmap &fileIcon, QTime* timer, bool openAfterFinishedDownload, const QUrl &downloadPage, DownloadManager* manager); bool isDownloading() { return m_downloading; } bool isCancelled(); QTime remainingTime() { return m_remTime; } double currentSpeed() { return m_currSpeed; } int progress(); ~DownloadItem(); void setTotalSize(qint64 total); static QString remaingTimeToString(QTime time); static QString currentSpeedToString(double speed); signals: void deleteItem(DownloadItem*); void downloadFinished(bool success); private slots: void parentResized(const QSize &size); void finished(); void metaDataChanged(); void downloadProgress(qint64 received, qint64 total); void stop(bool askForDeleteFile = true); void openFile(); void openFolder(); void readyRead(); void error(); void updateDownload(); void customContextMenuRequested(const QPoint &pos); void clear(); void goToDownloadPage(); void copyDownloadLink(); private: void startDownloading(); void startDownloadingFromFtp(const QUrl &url); void timerEvent(QTimerEvent* event); void updateDownloadInfo(double currSpeed, qint64 received, qint64 total); void mouseDoubleClickEvent(QMouseEvent* e); Ui::DownloadItem* ui; QListWidgetItem* m_item; QNetworkReply* m_reply; FtpDownloader* m_ftpDownloader; QString m_path; QString m_fileName; QTime* m_downTimer; QTime m_remTime; QBasicTimer m_timer; QFile m_outputFile; QUrl m_downUrl; QUrl m_downloadPage; bool m_downloading; bool m_openAfterFinish; bool m_downloadStopped; double m_currSpeed; qint64 m_received; qint64 m_total; }; #endif // DOWNLOADITEM_H qupzilla-1.6.0/src/lib/downloads/downloaditem.ui000066400000000000000000000050271226107126500217410ustar00rootroot00000000000000 DownloadItem 0 0 480 73 2 2 30 50 Qt::AlignCenter A Clockwork Orange.avi Remaining 26 minutes - 339MB of 693 MB (350kB/s) 16777215 20 0 0 0 false ClickableLabel QLabel
    clickablelabel.h
    SqueezeLabelV2 QLabel
    squeezelabelv2.h
    qupzilla-1.6.0/src/lib/downloads/downloadmanager.cpp000066400000000000000000000243561226107126500225700ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "downloadmanager.h" #include "ui_downloadmanager.h" #include "qupzilla.h" #include "mainapplication.h" #include "downloadoptionsdialog.h" #include "downloaditem.h" #include "ecwin7.h" #include "networkmanager.h" #include "qtwin.h" #include "desktopnotificationsfactory.h" #include "qztools.h" #include "webpage.h" #include "downloadfilehelper.h" #include "settings.h" #include #include #include DownloadManager::DownloadManager(QWidget* parent) : QWidget(parent) , ui(new Ui::DownloadManager) , m_isClosing(false) { setWindowFlags(windowFlags() ^ Qt::WindowMaximizeButtonHint); ui->setupUi(this); #ifdef Q_OS_WIN if (QtWin::isCompositionEnabled()) { QtWin::extendFrameIntoClientArea(this); } #endif ui->clearButton->setIcon(QIcon::fromTheme("edit-clear")); QzTools::centerWidgetOnScreen(this); m_networkManager = mApp->networkManager(); connect(ui->clearButton, SIGNAL(clicked()), this, SLOT(clearList())); loadSettings(); QzTools::setWmClass("Download Manager", this); #ifdef W7TASKBAR if (QtWin::isRunningWindows7()) { win7.init(QtWin::hwndOfWidget(this)); } #endif } void DownloadManager::loadSettings() { Settings settings; settings.beginGroup("DownloadManager"); m_downloadPath = settings.value("defaultDownloadPath", QString()).toString(); m_lastDownloadPath = settings.value("lastDownloadPath", QDir::homePath().append(QLatin1Char('/'))).toString(); m_closeOnFinish = settings.value("CloseManagerOnFinish", false).toBool(); m_useNativeDialog = settings.value("useNativeDialog", DEFAULT_DOWNLOAD_USE_NATIVE_DIALOG).toBool(); m_useExternalManager = settings.value("UseExternalManager", false).toBool(); m_externalExecutable = settings.value("ExternalManagerExecutable", QString()).toString(); m_externalArguments = settings.value("ExternalManagerArguments", QString()).toString(); settings.endGroup(); if (!m_externalArguments.contains(QLatin1String("%d"))) { m_externalArguments.append(QLatin1String(" %d")); } } void DownloadManager::show() { m_timer.start(1000 * 2, this); QWidget::show(); raise(); activateWindow(); } void DownloadManager::resizeEvent(QResizeEvent* e) { QWidget::resizeEvent(e); emit resized(size()); } void DownloadManager::keyPressEvent(QKeyEvent* e) { if (e->key() == Qt::Key_Escape) { close(); } QWidget::keyPressEvent(e); } void DownloadManager::startExternalManager(const QUrl &url) { QString arguments = m_externalArguments; arguments.replace(QLatin1String("%d"), url.toEncoded()); QzTools::startExternalProcess(m_externalExecutable, arguments); m_lastDownloadOption = ExternalManager; } #ifdef W7TASKBAR #if (QT_VERSION < 0x050000) bool DownloadManager::winEvent(MSG* message, long* result) { #else bool DownloadManager::nativeEvent(const QByteArray &eventType, void* _message, long* result) { Q_UNUSED(eventType) MSG* message = static_cast(_message); #endif return win7.winEvent(message, result); } #endif void DownloadManager::timerEvent(QTimerEvent* e) { QVector remTimes; QVector progresses; QVector speeds; if (e->timerId() == m_timer.timerId()) { if (!ui->list->count()) { ui->speedLabel->clear(); setWindowTitle(tr("Download Manager")); return; } for (int i = 0; i < ui->list->count(); i++) { DownloadItem* downItem = qobject_cast(ui->list->itemWidget(ui->list->item(i))); if (!downItem || (downItem && downItem->isCancelled()) || !downItem->isDownloading()) { continue; } progresses.append(downItem->progress()); remTimes.append(downItem->remainingTime()); speeds.append(downItem->currentSpeed()); } if (remTimes.isEmpty()) { return; } QTime remaining; foreach (const QTime &time, remTimes) { if (time > remaining) { remaining = time; } } int progress = 0; foreach (int prog, progresses) { progress += prog; } progress = progress / progresses.count(); double speed = 0.00; foreach (double spee, speeds) { speed += spee; } ui->speedLabel->setText(tr("%1% of %2 files (%3) %4 remaining").arg(QString::number(progress), QString::number(progresses.count()), DownloadItem::currentSpeedToString(speed), DownloadItem::remaingTimeToString(remaining))); setWindowTitle(tr("%1% - Download Manager").arg(progress)); #ifdef W7TASKBAR if (QtWin::isRunningWindows7()) { win7.setProgressValue(progress, 100); win7.setProgressState(win7.Normal); } #endif } else { QWidget::timerEvent(e); } } void DownloadManager::clearList() { QList items; for (int i = 0; i < ui->list->count(); i++) { DownloadItem* downItem = qobject_cast(ui->list->itemWidget(ui->list->item(i))); if (!downItem) { continue; } if (downItem->isDownloading()) { continue; } items.append(downItem); } qDeleteAll(items); } void DownloadManager::download(const QNetworkRequest &request, const DownloadInfo &info) { if (!info.page) { return; } // Clearing web page info from request QNetworkRequest req = request; req.setAttribute((QNetworkRequest::Attribute)(QNetworkRequest::User + 100), 0); handleUnsupportedContent(m_networkManager->get(req), info); } void DownloadManager::handleUnsupportedContent(QNetworkReply* reply, const DownloadInfo &info) { if (!info.page || reply->url().scheme() == QLatin1String("qupzilla")) { return; } // if (fromPageDownload && m_useExternalManager) { // startExternalManager(reply->url()); // reply->abort(); // reply->deleteLater(); // return; // } reply->setProperty("downReply", QVariant(true)); DownloadFileHelper* h = new DownloadFileHelper(m_lastDownloadPath, m_downloadPath, m_useNativeDialog); connect(h, SIGNAL(itemCreated(QListWidgetItem*,DownloadItem*)), this, SLOT(itemCreated(QListWidgetItem*,DownloadItem*))); h->setLastDownloadOption(m_lastDownloadOption); h->setDownloadManager(this); h->setListWidget(ui->list); h->handleUnsupportedContent(reply, info); } void DownloadManager::itemCreated(QListWidgetItem* item, DownloadItem* downItem) { connect(downItem, SIGNAL(deleteItem(DownloadItem*)), this, SLOT(deleteItem(DownloadItem*))); connect(downItem, SIGNAL(downloadFinished(bool)), this, SLOT(downloadFinished(bool))); ui->list->setItemWidget(item, downItem); item->setSizeHint(downItem->sizeHint()); downItem->show(); show(); raise(); activateWindow(); } void DownloadManager::downloadFinished(bool success) { bool downloadingAllFilesFinished = true; for (int i = 0; i < ui->list->count(); i++) { DownloadItem* downItem = qobject_cast(ui->list->itemWidget(ui->list->item(i))); if (!downItem || (downItem && downItem->isCancelled()) || !downItem->isDownloading()) { continue; } downloadingAllFilesFinished = false; } if (downloadingAllFilesFinished) { if (success && qApp->activeWindow() != this) { mApp->desktopNotifications()->showNotification(QIcon::fromTheme("mail-inbox", QIcon(":icons/notifications/download.png")).pixmap(48), tr("Download Finished"), tr("All files have been successfully downloaded.")); if (!m_closeOnFinish) { raise(); activateWindow(); } } ui->speedLabel->clear(); setWindowTitle(tr("Download Manager")); #ifdef W7TASKBAR if (QtWin::isRunningWindows7()) { win7.setProgressValue(0, 100); win7.setProgressState(win7.NoProgress); } #endif if (m_closeOnFinish) { close(); } } } void DownloadManager::deleteItem(DownloadItem* item) { if (item && !item->isDownloading()) { delete item; } } bool DownloadManager::canClose() { if (m_isClosing) { return true; } bool isDownloading = false; for (int i = 0; i < ui->list->count(); i++) { DownloadItem* downItem = qobject_cast(ui->list->itemWidget(ui->list->item(i))); if (!downItem) { continue; } if (downItem->isDownloading()) { isDownloading = true; break; } } return !isDownloading; } bool DownloadManager::useExternalManager() const { return m_useExternalManager; } void DownloadManager::closeEvent(QCloseEvent* e) { if (mApp->windowCount() == 0) { // No main windows -> we are going to quit if (!canClose()) { QMessageBox::StandardButton button = QMessageBox::warning(this, tr("Warning"), tr("Are you sure to quit? All uncompleted downloads will be cancelled!"), QMessageBox::Yes | QMessageBox::No); if (button != QMessageBox::Yes) { e->ignore(); return; } m_isClosing = true; } mApp->quitApplication(); } e->accept(); } DownloadManager::~DownloadManager() { delete ui; } qupzilla-1.6.0/src/lib/downloads/downloadmanager.h000066400000000000000000000063421226107126500222300ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef DOWNLOADMANAGER_H #define DOWNLOADMANAGER_H #include #include "qz_namespace.h" #include "ecwin7.h" namespace Ui { class DownloadManager; } class QNetworkReply; class QNetworkRequest; class QListWidgetItem; class QUrl; class DownloadItem; class EcWin7; class NetworkManager; class WebPage; class QT_QUPZILLA_EXPORT DownloadManager : public QWidget { Q_OBJECT public: enum DownloadOption { OpenFile, SaveFile, ExternalManager }; struct DownloadInfo { WebPage* page; QString suggestedFileName; bool askWhatToDo; bool forceChoosingPath; DownloadInfo(WebPage* p = 0) { page = p; suggestedFileName = QString(); askWhatToDo = true; forceChoosingPath = false; } }; explicit DownloadManager(QWidget* parent = 0); ~DownloadManager(); void loadSettings(); void download(const QNetworkRequest &request, const DownloadInfo &info); void handleUnsupportedContent(QNetworkReply* reply, const DownloadInfo &info); bool canClose(); bool useExternalManager() const; void startExternalManager(const QUrl &url); void setLastDownloadPath(const QString &lastPath) { m_lastDownloadPath = lastPath; } void setLastDownloadOption(const DownloadOption &option) { m_lastDownloadOption = option; } public slots: void show(); #ifdef W7TASKBAR protected: #if (QT_VERSION < 0x050000) virtual bool winEvent(MSG* message, long* result); #else virtual bool nativeEvent(const QByteArray &eventType, void* _message, long* result); #endif #endif private slots: void clearList(); void deleteItem(DownloadItem* item); void itemCreated(QListWidgetItem* item, DownloadItem* downItem); void downloadFinished(bool success); signals: void resized(QSize); private: #ifdef W7TASKBAR EcWin7 win7; #endif void timerEvent(QTimerEvent* e); void closeEvent(QCloseEvent* e); void resizeEvent(QResizeEvent* e); void keyPressEvent(QKeyEvent* e); Ui::DownloadManager* ui; NetworkManager* m_networkManager; QBasicTimer m_timer; QString m_lastDownloadPath; QString m_downloadPath; bool m_useNativeDialog; bool m_isClosing; bool m_closeOnFinish; bool m_useExternalManager; QString m_externalExecutable; QString m_externalArguments; DownloadOption m_lastDownloadOption; }; #endif // DOWNLOADMANAGER_H qupzilla-1.6.0/src/lib/downloads/downloadmanager.ui000066400000000000000000000057571226107126500224270ustar00rootroot00000000000000 DownloadManager 0 0 525 315 300 0 Download Manager 0 0 Qt::ScrollBarAlwaysOff true QAbstractItemView::ScrollPerPixel Qt::Horizontal Qt::Horizontal QSizePolicy::Fixed 2 20 0 0 Clear Qt::Horizontal 40 20 Qt::Horizontal QSizePolicy::Minimum 40 20 qupzilla-1.6.0/src/lib/downloads/downloadoptionsdialog.cpp000066400000000000000000000066601226107126500240270ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "downloadoptionsdialog.h" #include "ui_downloadoptionsdialog.h" #include DownloadOptionsDialog::DownloadOptionsDialog(const QString &fileName, const QPixmap &fileIcon, const QString &mimeType, const QUrl &url, QWidget* parent) : QDialog(parent) , ui(new Ui::DownloadOptionsDialog) , m_url(url) , m_signalEmited(false) { ui->setupUi(this); ui->fileName->setText("" + fileName + ""); ui->fileIcon->setPixmap(fileIcon); ui->fileType->setText(mimeType); ui->fromServer->setText(url.host()); setWindowTitle(tr("Opening %1").arg(fileName)); setFixedHeight(sizeHint().height()); ui->buttonBox->setFocus(); connect(ui->copyDownloadLink, SIGNAL(clicked(QPoint)), this, SLOT(copyDownloadLink())); connect(this, SIGNAL(finished(int)), this, SLOT(emitDialogFinished(int))); } void DownloadOptionsDialog::showExternalManagerOption(bool show) { ui->radioExternal->setVisible(show); } void DownloadOptionsDialog::showFromLine(bool show) { ui->fromFrame->setVisible(show); } void DownloadOptionsDialog::setLastDownloadOption(const DownloadManager::DownloadOption &option) { switch (option) { case DownloadManager::ExternalManager: if (!ui->radioExternal->isHidden()) { ui->radioExternal->setChecked(true); break; } case DownloadManager::OpenFile: ui->radioOpen->setChecked(true); break; case DownloadManager::SaveFile: ui->radioSave->setChecked(true); break; default: break; } } int DownloadOptionsDialog::exec() { int status = QDialog::exec(); if (status != 0) { if (ui->radioOpen->isChecked()) { status = 1; } else if (ui->radioSave->isChecked()) { status = 2; } else if (ui->radioExternal->isChecked()) { status = 3; } } return status; } void DownloadOptionsDialog::copyDownloadLink() { QApplication::clipboard()->setText(m_url.toString()); ui->copyDownloadLink->setText(tr("Download link copied.")); } void DownloadOptionsDialog::emitDialogFinished(int status) { if (status != 0) { if (ui->radioOpen->isChecked()) { status = 1; } else if (ui->radioSave->isChecked()) { status = 2; } else if (ui->radioExternal->isChecked()) { status = 3; } } m_signalEmited = true; emit dialogFinished(status); } DownloadOptionsDialog::~DownloadOptionsDialog() { if (!m_signalEmited) { emit dialogFinished(-1); } delete ui; } qupzilla-1.6.0/src/lib/downloads/downloadoptionsdialog.h000066400000000000000000000033371226107126500234720ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef DOWNLOADOPTIONSDIALOG_H #define DOWNLOADOPTIONSDIALOG_H #include #include #include "qz_namespace.h" #include "downloadmanager.h" namespace Ui { class DownloadOptionsDialog; } class QT_QUPZILLA_EXPORT DownloadOptionsDialog : public QDialog { Q_OBJECT public: explicit DownloadOptionsDialog(const QString &fileName, const QPixmap &fileIcon, const QString &mimeType, const QUrl &url, QWidget* parent = 0); ~DownloadOptionsDialog(); void showExternalManagerOption(bool show); void showFromLine(bool show); void setLastDownloadOption(const DownloadManager::DownloadOption &option); int exec(); private slots: void copyDownloadLink(); void emitDialogFinished(int status); signals: void dialogFinished(int); private: Ui::DownloadOptionsDialog* ui; QUrl m_url; bool m_signalEmited; }; #endif // DOWNLOADOPTIONSDIALOG_H qupzilla-1.6.0/src/lib/downloads/downloadoptionsdialog.ui000066400000000000000000000151251226107126500236560ustar00rootroot00000000000000 DownloadOptionsDialog 0 0 410 267 410 0 410 16777215 Opening 0 0 which is a: Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse What should QupZilla do with this file? Qt::Horizontal QSizePolicy::Fixed 20 20 Open... Save File true Download with External Manager 0 0 0 from: 0 0 Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse PointingHandCursor Copy download link true Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok You have chosen to open 0 0 Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse SqueezeLabelV2 QLabel
    squeezelabelv2.h
    ClickableLabel QLabel
    clickablelabel.h
    buttonBox accepted() DownloadOptionsDialog accept() 248 254 157 274 buttonBox rejected() DownloadOptionsDialog reject() 316 260 286 274
    qupzilla-1.6.0/src/lib/history/000077500000000000000000000000001226107126500164175ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/history/history.cpp000066400000000000000000000165301226107126500206310ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "history.h" #include "historymodel.h" #include "tabbedwebview.h" #include "qupzilla.h" #include "iconprovider.h" #include "settings.h" #include #include History::History(QObject* parent) : QObject(parent) , m_isSaving(true) , m_model(0) { loadSettings(); } HistoryModel* History::model() { if (!m_model) { m_model = new HistoryModel(this); } return m_model; } void History::loadSettings() { Settings settings; settings.beginGroup("Web-Browser-Settings"); m_isSaving = settings.value("allowHistory", true).toBool(); settings.endGroup(); } // AddHistoryEntry void History::addHistoryEntry(WebView* view) { if (!m_isSaving || view->loadingError()) { return; } const QUrl url = view->url(); const QString title = view->title(); addHistoryEntry(url, title); } void History::addHistoryEntry(const QUrl &url, QString title) { if (!m_isSaving) { return; } if (url.scheme() == QLatin1String("qupzilla") || url.scheme() == QLatin1String("about") || url.scheme() == QLatin1String("data") || url.isEmpty()) { return; } if (title.isEmpty()) { title = tr("No Named Page"); } QSqlQuery query; query.prepare("SELECT id, count, date, title FROM history WHERE url=?"); query.bindValue(0, url); query.exec(); if (!query.next()) { query.prepare("INSERT INTO history (count, date, url, title) VALUES (1,?,?,?)"); query.bindValue(0, QDateTime::currentMSecsSinceEpoch()); query.bindValue(1, url); query.bindValue(2, title); query.exec(); int id = query.lastInsertId().toInt(); HistoryEntry entry; entry.id = id; entry.count = 1; entry.date = QDateTime::currentDateTime(); entry.url = url; entry.urlString = url.toEncoded(); entry.title = title; emit historyEntryAdded(entry); } else { int id = query.value(0).toInt(); int count = query.value(1).toInt(); QDateTime date = QDateTime::fromMSecsSinceEpoch(query.value(2).toLongLong()); QString oldTitle = query.value(3).toString(); query.prepare("UPDATE history SET count = count + 1, date=?, title=? WHERE url=?"); query.bindValue(0, QDateTime::currentMSecsSinceEpoch()); query.bindValue(1, title); query.bindValue(2, url); query.exec(); HistoryEntry before; before.id = id; before.count = count; before.date = date; before.url = url; before.urlString = url.toEncoded(); before.title = oldTitle; HistoryEntry after = before; after.count = count + 1; after.date = QDateTime::currentDateTime(); after.title = title; emit historyEntryEdited(before, after); } } // DeleteHistoryEntry void History::deleteHistoryEntry(int index) { QList list; list.append(index); deleteHistoryEntry(list); } void History::deleteHistoryEntry(const QList &list) { QSqlDatabase db = QSqlDatabase::database(); db.transaction(); foreach (int index, list) { QSqlQuery query; query.prepare("SELECT count, date, url, title FROM history WHERE id=?"); query.addBindValue(index); query.exec(); query.next(); HistoryEntry entry; entry.id = index; entry.count = query.value(0).toInt(); entry.date = QDateTime::fromMSecsSinceEpoch(query.value(1).toLongLong()); entry.url = query.value(2).toUrl(); entry.urlString = entry.url.toEncoded(); entry.title = query.value(3).toString(); query.prepare("DELETE FROM history WHERE id=?"); query.addBindValue(index); query.exec(); query.prepare("DELETE FROM icons WHERE url=?"); query.addBindValue(entry.url.toEncoded(QUrl::RemoveFragment)); query.exec(); emit historyEntryDeleted(entry); } db.commit(); } void History::deleteHistoryEntry(const QString &url, const QString &title) { QSqlQuery query; query.prepare("SELECT id FROM history WHERE url=? AND title=?"); query.bindValue(0, url); query.bindValue(1, title); query.exec(); if (query.next()) { int id = query.value(0).toInt(); deleteHistoryEntry(id); } } QList History::indexesFromTimeRange(qint64 start, qint64 end) { QList list; if (start < 0 || end < 0) { return list; } QSqlQuery query; query.prepare("SELECT id FROM history WHERE date BETWEEN ? AND ?"); query.addBindValue(end); query.addBindValue(start); query.exec(); while (query.next()) { list.append(query.value(0).toInt()); } return list; } bool History::urlIsStored(const QString &url) { QSqlQuery query; query.prepare("SELECT id FROM history WHERE url=?"); query.bindValue(0, url); query.exec(); return query.next(); } QVector History::mostVisited(int count) { QVector list; QSqlQuery query; query.exec(QString("SELECT count, date, id, title, url FROM history ORDER BY count DESC LIMIT %1").arg(count)); while (query.next()) { HistoryEntry entry; entry.count = query.value(0).toInt(); entry.date = query.value(1).toDateTime(); entry.id = query.value(2).toInt(); entry.title = query.value(3).toString(); entry.url = query.value(4).toUrl(); list.append(entry); } return list; } bool History::optimizeHistory() { QSqlQuery query; return query.exec("VACUUM"); } bool History::clearHistory() { QSqlQuery query; if (query.exec("DELETE FROM history")) { emit resetHistory(); return true; } return false; } void History::setSaving(bool state) { m_isSaving = state; } bool History::isSaving() { return m_isSaving; } QString History::titleCaseLocalizedMonth(int month) { switch (month) { case 1: return tr("January"); case 2: return tr("February"); case 3: return tr("March"); case 4: return tr("April"); case 5: return tr("May"); case 6: return tr("June"); case 7: return tr("July"); case 8: return tr("August"); case 9: return tr("September"); case 10: return tr("October"); case 11: return tr("November"); case 12: return tr("December"); default: qWarning("Month number out of range!"); return QString(); } } qupzilla-1.6.0/src/lib/history/history.h000066400000000000000000000046311226107126500202750ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef HISTORY_H #define HISTORY_H #include #include #include #include #include "qz_namespace.h" class QIcon; class QupZilla; class WebView; class HistoryModel; class QT_QUPZILLA_EXPORT History : public QObject { Q_OBJECT public: History(QObject* parent); struct HistoryEntry { int id; int count; QDateTime date; QUrl url; QString urlString; QString title; }; static QString titleCaseLocalizedMonth(int month); HistoryModel* model(); void addHistoryEntry(WebView* view); void addHistoryEntry(const QUrl &url, QString title); void deleteHistoryEntry(int index); void deleteHistoryEntry(const QList &list); void deleteHistoryEntry(const QString &url, const QString &title); QList indexesFromTimeRange(qint64 start, qint64 end); bool urlIsStored(const QString &url); QVector mostVisited(int count); bool clearHistory(); bool optimizeHistory(); bool isSaving(); void setSaving(bool state); void loadSettings(); signals: void historyEntryAdded(const HistoryEntry &entry); void historyEntryDeleted(const HistoryEntry &entry); void historyEntryEdited(const HistoryEntry &before, const HistoryEntry &after); void resetHistory(); private: bool m_isSaving; QupZilla* p_QupZilla; HistoryModel* m_model; }; typedef History::HistoryEntry HistoryEntry; // Hint to QVector to use std::realloc on item moving Q_DECLARE_TYPEINFO(HistoryEntry, Q_MOVABLE_TYPE); #endif // HISTORY_H qupzilla-1.6.0/src/lib/history/historyitem.cpp000066400000000000000000000070431226107126500215070ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "historyitem.h" #include "qztools.h" HistoryItem::HistoryItem(HistoryItem* parent) : canFetchMore(false) , m_parent(parent) , m_iconLoaded(false) , m_startTimestamp(0) , m_endTimestamp(0) { if (m_parent) { m_parent->appendChild(this); } } void HistoryItem::changeParent(HistoryItem* parent) { if (m_parent) { m_parent->removeChild(this); } m_parent = parent; if (m_parent) { m_parent->prependChild(this); } } HistoryItem* HistoryItem::parent() const { return m_parent; } void HistoryItem::prependChild(HistoryItem* child) { if (m_children.contains(child)) { m_children.removeAll(child); } child->m_parent = this; m_children.prepend(child); } void HistoryItem::appendChild(HistoryItem* child) { if (m_children.contains(child)) { m_children.removeAll(child); } child->m_parent = this; m_children.append(child); } void HistoryItem::insertChild(int row, HistoryItem* child) { if (m_children.contains(child)) { m_children.removeAll(child); } if (m_children.count() >= row) { child->m_parent = this; m_children.insert(row, child); } } void HistoryItem::removeChild(int row) { if (QzTools::listContainsIndex(m_children, row)) { removeChild(m_children.at(row)); } } void HistoryItem::removeChild(HistoryItem* child) { m_children.removeOne(child); } HistoryItem* HistoryItem::child(int row) const { if (QzTools::listContainsIndex(m_children, row)) { return m_children.at(row); } return 0; } int HistoryItem::childCount() const { return m_children.count(); } int HistoryItem::row() { return m_parent ? m_parent->indexOfChild(this) : 0; } int HistoryItem::indexOfChild(HistoryItem* child) { return m_children.indexOf(child); } bool HistoryItem::isTopLevel() const { return (m_startTimestamp != 0); } bool HistoryItem::iconLoaded() const { return m_iconLoaded; } QIcon HistoryItem::icon() const { return m_icon; } void HistoryItem::setIcon(const QIcon &icon) { m_icon = icon; m_iconLoaded = true; } void HistoryItem::refreshIcon() { m_iconLoaded = false; } void HistoryItem::setStartTimestamp(qint64 start) { m_startTimestamp = start; } qint64 HistoryItem::startTimestamp() const { if (m_startTimestamp == -1) { return QDateTime::currentDateTime().toMSecsSinceEpoch(); } return m_startTimestamp; } void HistoryItem::setEndTimestamp(qint64 end) { m_endTimestamp = end; } qint64 HistoryItem::endTimestamp() const { return m_endTimestamp; } HistoryItem::~HistoryItem() { if (m_parent) { m_parent->removeChild(this); } qDeleteAll(m_children); } qupzilla-1.6.0/src/lib/history/historyitem.h000066400000000000000000000040271226107126500211530ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef HISTORYITEM_H #define HISTORYITEM_H #include #include "qz_namespace.h" #include "history.h" class QT_QUPZILLA_EXPORT HistoryItem { public: explicit HistoryItem(HistoryItem* parent = 0); ~HistoryItem(); void changeParent(HistoryItem* parent); HistoryItem* parent() const; HistoryItem* child(int row) const; int childCount() const; void prependChild(HistoryItem* child); void appendChild(HistoryItem* child); void insertChild(int row, HistoryItem* child); void removeChild(int row); void removeChild(HistoryItem* child); int row(); int indexOfChild(HistoryItem* child); bool isTopLevel() const; bool iconLoaded() const; QIcon icon() const; void setIcon(const QIcon &icon); void refreshIcon(); void setStartTimestamp(qint64 start); qint64 startTimestamp() const; void setEndTimestamp(qint64 end); qint64 endTimestamp() const; HistoryEntry historyEntry; QString title; bool canFetchMore; private: HistoryItem* m_parent; QList m_children; QIcon m_icon; bool m_iconLoaded; qint64 m_startTimestamp; qint64 m_endTimestamp; }; #endif // HISTORYITEM_H qupzilla-1.6.0/src/lib/history/historymanager.cpp000066400000000000000000000056551226107126500221720ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "historymanager.h" #include "ui_historymanager.h" #include "qupzilla.h" #include "mainapplication.h" #include "history.h" #include "browsinglibrary.h" #include "tabwidget.h" #include "tabbedwebview.h" #include "historymodel.h" #include "headerview.h" #include "qzsettings.h" #include HistoryManager::HistoryManager(QupZilla* mainClass, QWidget* parent) : QWidget(parent) , ui(new Ui::HistoryManager) , p_QupZilla(mainClass) { ui->setupUi(this); connect(ui->historyTree, SIGNAL(openLink(QUrl,HistoryView::OpenBehavior)), this, SLOT(openLink(QUrl,HistoryView::OpenBehavior))); connect(ui->deleteB, SIGNAL(clicked()), ui->historyTree, SLOT(removeItems())); connect(ui->clearAll, SIGNAL(clicked()), this, SLOT(clearHistory())); ui->historyTree->setFocus(); } QupZilla* HistoryManager::getQupZilla() { if (!p_QupZilla) { p_QupZilla = mApp->getWindow(); } return p_QupZilla.data(); } void HistoryManager::setMainWindow(QupZilla* window) { if (window) { p_QupZilla = window; } } void HistoryManager::restoreState(const QByteArray &state) { ui->historyTree->header()->restoreState(state); } QByteArray HistoryManager::saveState() { return ui->historyTree->header()->saveState(); } void HistoryManager::clearHistory() { QMessageBox::StandardButton button = QMessageBox::warning(this, tr("Confirmation"), tr("Are you sure to delete all history?"), QMessageBox::Yes | QMessageBox::No); if (button != QMessageBox::Yes) { return; } mApp->history()->clearHistory(); mApp->history()->optimizeHistory(); } void HistoryManager::search(const QString &searchText) { ui->historyTree->filterModel()->setFilterFixedString(searchText); } void HistoryManager::openLink(const QUrl &url, HistoryView::OpenBehavior openIn) { if (openIn == HistoryView::OpenInNewTab) { getQupZilla()->tabWidget()->addView(url, qzSettings->newTabPosition); } else { getQupZilla()->weView()->load(url); } } HistoryManager::~HistoryManager() { delete ui; } qupzilla-1.6.0/src/lib/history/historymanager.h000066400000000000000000000032211226107126500216220ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef HISTORYMANAGER_H #define HISTORYMANAGER_H #include #include #include "qz_namespace.h" #include "historyview.h" namespace Ui { class HistoryManager; } class QTreeWidgetItem; class QupZilla; class QT_QUPZILLA_EXPORT HistoryManager : public QWidget { Q_OBJECT public: explicit HistoryManager(QupZilla* mainClass, QWidget* parent = 0); ~HistoryManager(); void setMainWindow(QupZilla* window); void restoreState(const QByteArray &state); QByteArray saveState(); public slots: void search(const QString &searchText); private slots: void openLink(const QUrl &url, HistoryView::OpenBehavior openIn); void clearHistory(); private: QupZilla* getQupZilla(); Ui::HistoryManager* ui; QPointer p_QupZilla; }; #endif // HISTORYMANAGER_H qupzilla-1.6.0/src/lib/history/historymanager.ui000066400000000000000000000027441226107126500220210ustar00rootroot00000000000000 HistoryManager 0 0 735 547 History Delete Clear All History Qt::Horizontal 40 20 true HistoryView QTreeView
    historyview.h
    qupzilla-1.6.0/src/lib/history/historymodel.cpp000066400000000000000000000361061226107126500216530ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "historymodel.h" #include "historyitem.h" #include "iconprovider.h" #include #include #include #include static QString dateTimeToString(const QDateTime &dateTime) { const QDateTime current = QDateTime::currentDateTime(); if (current.date() == dateTime.date()) { return dateTime.time().toString("h:mm"); } return dateTime.toString("d.M.yyyy h:mm"); } HistoryModel::HistoryModel(History* history) : QAbstractItemModel(history) , m_rootItem(new HistoryItem(0)) , m_todayItem(0) , m_history(history) { init(); connect(m_history, SIGNAL(resetHistory()), this, SLOT(resetHistory())); connect(m_history, SIGNAL(historyEntryAdded(HistoryEntry)), this, SLOT(historyEntryAdded(HistoryEntry))); connect(m_history, SIGNAL(historyEntryDeleted(HistoryEntry)), this, SLOT(historyEntryDeleted(HistoryEntry))); connect(m_history, SIGNAL(historyEntryEdited(HistoryEntry,HistoryEntry)), this, SLOT(historyEntryEdited(HistoryEntry,HistoryEntry))); } QVariant HistoryModel::headerData(int section, Qt::Orientation orientation, int role) const { if (orientation == Qt::Horizontal && role == Qt::DisplayRole) { switch (section) { case 0: return tr("Title"); case 1: return tr("Address"); case 2: return tr("Visit Date"); case 3: return tr("Visit Count"); } } return QAbstractItemModel::headerData(section, orientation, role); } QVariant HistoryModel::data(const QModelIndex &index, int role) const { HistoryItem* item = itemFromIndex(index); if (index.row() < 0 || !item) { return QVariant(); } if (item->isTopLevel()) { switch (role) { case IsTopLevelRole: return true; case TimestampStartRole: return item->startTimestamp(); case TimestampEndRole: return item->endTimestamp(); case Qt::DisplayRole: case Qt::EditRole: return index.column() == 0 ? item->title : QVariant(); case Qt::DecorationRole: return index.column() == 0 ? QIcon(":/icons/menu/history_entry.png") : QVariant(); } return QVariant(); } const HistoryEntry entry = item->historyEntry; switch (role) { case IdRole: return entry.id; case TitleRole: return entry.title; case UrlRole: return entry.url; case UrlStringRole: return entry.urlString; case IconRole: return item->icon(); case IconLoadedRole: return item->iconLoaded(); case IsTopLevelRole: return false; case TimestampStartRole: return -1; case TimestampEndRole: return -1; case Qt::ToolTipRole: if (index.column() == 0) { return QString("%1\n%2").arg(entry.title, entry.urlString); } case Qt::DisplayRole: case Qt::EditRole: switch (index.column()) { case 0: return entry.title; case 1: return entry.urlString; case 2: return dateTimeToString(entry.date); case 3: return entry.count; } break; case Qt::DecorationRole: if (index.column() == 0) { return item->icon().isNull() ? qIconProvider->emptyWebIcon() : item->icon(); } } return QVariant(); } bool HistoryModel::setData(const QModelIndex &index, const QVariant &value, int role) { HistoryItem* item = itemFromIndex(index); if (index.row() < 0 || !item || item->isTopLevel()) { return false; } if (role == IconRole) { item->setIcon(value.value()); emit dataChanged(index, index); return true; } return false; } QModelIndex HistoryModel::index(int row, int column, const QModelIndex &parent) const { if (!hasIndex(row, column, parent)) { return QModelIndex(); } HistoryItem* parentItem = itemFromIndex(parent); HistoryItem* childItem = parentItem->child(row); return childItem ? createIndex(row, column, childItem) : QModelIndex(); } QModelIndex HistoryModel::parent(const QModelIndex &index) const { if (!index.isValid()) { return QModelIndex(); } HistoryItem* childItem = itemFromIndex(index); HistoryItem* parentItem = childItem->parent(); if (!parentItem || parentItem == m_rootItem) { return QModelIndex(); } return createIndex(parentItem->row(), 0, parentItem); } Qt::ItemFlags HistoryModel::flags(const QModelIndex &index) const { if (!index.isValid()) { return 0; } return Qt::ItemIsEnabled | Qt::ItemIsSelectable; } int HistoryModel::rowCount(const QModelIndex &parent) const { if (parent.column() > 0) { return 0; } HistoryItem* parentItem = itemFromIndex(parent); return parentItem->childCount(); } int HistoryModel::columnCount(const QModelIndex &parent) const { Q_UNUSED(parent) return 4; } bool HistoryModel::hasChildren(const QModelIndex &parent) const { if (!parent.isValid()) { return true; } HistoryItem* item = itemFromIndex(parent); return item ? item->isTopLevel() : false; } HistoryItem* HistoryModel::itemFromIndex(const QModelIndex &index) const { if (index.isValid()) { HistoryItem* item = static_cast(index.internalPointer()); if (item) { return item; } } return m_rootItem; } void HistoryModel::removeTopLevelIndexes(const QList &indexes) { foreach (const QPersistentModelIndex &index, indexes) { if (index.parent().isValid()) { continue; } int row = index.row(); HistoryItem* item = m_rootItem->child(row); if (!item) { return; } beginRemoveRows(QModelIndex(), row, row); delete item; endRemoveRows(); if (item == m_todayItem) { m_todayItem = 0; } } } void HistoryModel::resetHistory() { beginResetModel(); delete m_rootItem; m_todayItem = 0; m_rootItem = new HistoryItem(0); init(); endResetModel(); } bool HistoryModel::canFetchMore(const QModelIndex &parent) const { HistoryItem* parentItem = itemFromIndex(parent); return parentItem ? parentItem->canFetchMore : false; } void HistoryModel::fetchMore(const QModelIndex &parent) { HistoryItem* parentItem = itemFromIndex(parent); if (!parent.isValid() || !parentItem) { return; } parentItem->canFetchMore = false; QList idList; for (int i = 0; i < parentItem->childCount(); ++i) { idList.append(parentItem->child(i)->historyEntry.id); } QSqlQuery query; query.prepare("SELECT id, count, title, url, date FROM history WHERE date BETWEEN ? AND ? ORDER BY date DESC"); query.addBindValue(parentItem->endTimestamp()); query.addBindValue(parentItem->startTimestamp()); query.exec(); QVector list; while (query.next()) { HistoryEntry entry; entry.id = query.value(0).toInt(); entry.count = query.value(1).toInt(); entry.title = query.value(2).toString(); entry.url = query.value(3).toUrl(); entry.date = QDateTime::fromMSecsSinceEpoch(query.value(4).toLongLong()); entry.urlString = entry.url.toEncoded(); if (!idList.contains(entry.id)) { list.append(entry); } } if (list.isEmpty()) { return; } beginInsertRows(parent, 0, list.size() - 1); foreach (const HistoryEntry &entry, list) { HistoryItem* newItem = new HistoryItem(parentItem); newItem->historyEntry = entry; } endInsertRows(); } void HistoryModel::historyEntryAdded(const HistoryEntry &entry) { if (!m_todayItem) { beginInsertRows(QModelIndex(), 0, 0); m_todayItem = new HistoryItem(0); m_todayItem->setStartTimestamp(-1); m_todayItem->setEndTimestamp(QDateTime(QDate::currentDate()).toMSecsSinceEpoch()); m_todayItem->title = tr("Today"); m_rootItem->prependChild(m_todayItem); endInsertRows(); } beginInsertRows(createIndex(0, 0, m_todayItem), 0, 0); HistoryItem* item = new HistoryItem(); item->historyEntry = entry; m_todayItem->prependChild(item); endInsertRows(); } void HistoryModel::historyEntryDeleted(const HistoryEntry &entry) { HistoryItem* item = findHistoryItem(entry); if (!item) { return; } HistoryItem* parentItem = item->parent(); int row = item->row(); beginRemoveRows(createIndex(parentItem->row(), 0, parentItem), row, row); delete item; endRemoveRows(); checkEmptyParentItem(parentItem); } void HistoryModel::historyEntryEdited(const HistoryEntry &before, const HistoryEntry &after) { #if 0 HistoryItem* item = findHistoryItem(before); if (item) { HistoryItem* parentItem = item->parent(); const QModelIndex sourceParent = createIndex(parentItem->row(), 0, parentItem); const QModelIndex destinationParent = createIndex(m_todayItem->row(), 0, m_todayItem); int row = item->row(); beginMoveRows(sourceParent, row, row, destinationParent, 0); item->historyEntry = after; item->refreshIcon(); item->changeParent(m_todayItem); endMoveRows(); // This line sometimes throw "std::bad_alloc" ... I don't know why ?! checkEmptyParentItem(parentItem); } else { historyEntryAdded(after); } #endif historyEntryDeleted(before); historyEntryAdded(after); } HistoryItem* HistoryModel::findHistoryItem(const HistoryEntry &entry) { HistoryItem* parentItem = 0; qint64 timestamp = entry.date.toMSecsSinceEpoch(); for (int i = 0; i < m_rootItem->childCount(); ++i) { HistoryItem* item = m_rootItem->child(i); if (item->endTimestamp() < timestamp) { parentItem = item; break; } } if (!parentItem) { return 0; } for (int i = 0; i < parentItem->childCount(); ++i) { HistoryItem* item = parentItem->child(i); if (item->historyEntry.id == entry.id) { return item; } } return 0; } void HistoryModel::checkEmptyParentItem(HistoryItem* item) { if (item->childCount() == 0 && item->isTopLevel()) { int row = item->row(); beginRemoveRows(QModelIndex(), row, row); delete item; endRemoveRows(); if (item == m_todayItem) { m_todayItem = 0; } } } void HistoryModel::init() { QSqlQuery query; query.exec("SELECT MIN(date) FROM history"); if (!query.next()) { return; } const qint64 minTimestamp = query.value(0).toLongLong(); if (minTimestamp <= 0) { return; } const QDate today = QDate::currentDate(); const QDate week = today.addDays(1 - today.dayOfWeek()); const QDate month = QDate(today.year(), today.month(), 1); const qint64 currentTimestamp = QDateTime::currentMSecsSinceEpoch(); qint64 timestamp = currentTimestamp; while (timestamp > minTimestamp) { QDate timestampDate = QDateTime::fromMSecsSinceEpoch(timestamp).date(); qint64 endTimestamp; QString itemName; if (timestampDate == today) { endTimestamp = QDateTime(today).toMSecsSinceEpoch(); itemName = tr("Today"); } else if (timestampDate >= week) { endTimestamp = QDateTime(week).toMSecsSinceEpoch(); itemName = tr("This Week"); } else if (timestampDate.month() == month.month() && timestampDate.year() == month.year()) { endTimestamp = QDateTime(month).toMSecsSinceEpoch(); itemName = tr("This Month"); } else { QDate startDate(timestampDate.year(), timestampDate.month(), timestampDate.daysInMonth()); QDate endDate(startDate.year(), startDate.month(), 1); timestamp = QDateTime(startDate, QTime(23, 59, 59)).toMSecsSinceEpoch(); endTimestamp = QDateTime(endDate).toMSecsSinceEpoch(); itemName = QString("%1 %2").arg(History::titleCaseLocalizedMonth(timestampDate.month()), QString::number(timestampDate.year())); } QSqlQuery query; query.prepare("SELECT id FROM history WHERE date BETWEEN ? AND ? LIMIT 1"); query.addBindValue(endTimestamp); query.addBindValue(timestamp); query.exec(); if (query.next()) { HistoryItem* item = new HistoryItem(m_rootItem); item->setStartTimestamp(timestamp == currentTimestamp ? -1 : timestamp); item->setEndTimestamp(endTimestamp); item->title = itemName; item->canFetchMore = true; if (timestamp == currentTimestamp) { m_todayItem = item; } } timestamp = endTimestamp - 1; } } HistoryFilterModel::HistoryFilterModel(QAbstractItemModel* parent) : QSortFilterProxyModel(parent) { setSourceModel(parent); setFilterCaseSensitivity(Qt::CaseInsensitive); m_filterTimer = new QTimer(this); m_filterTimer->setSingleShot(true); m_filterTimer->setInterval(500); connect(m_filterTimer, SIGNAL(timeout()), this, SLOT(startFiltering())); } void HistoryFilterModel::setFilterFixedString(const QString &pattern) { m_pattern = pattern; m_filterTimer->stop(); m_filterTimer->start(); } void HistoryFilterModel::startFiltering() { if (m_pattern.isEmpty()) { emit collapseAllItems(); QSortFilterProxyModel::setFilterFixedString(m_pattern); return; } QApplication::setOverrideCursor(Qt::WaitCursor); // Expand all items also calls fetchmore emit expandAllItems(); QSortFilterProxyModel::setFilterFixedString(m_pattern); QApplication::restoreOverrideCursor(); } bool HistoryFilterModel::filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const { const QModelIndex index = sourceModel()->index(sourceRow, 0, sourceParent); if (index.data(HistoryModel::IsTopLevelRole).toBool()) { return true; } return (index.data(HistoryModel::UrlStringRole).toString().contains(m_pattern, Qt::CaseInsensitive) || index.data(HistoryModel::TitleRole).toString().contains(m_pattern, Qt::CaseInsensitive)); } qupzilla-1.6.0/src/lib/history/historymodel.h000066400000000000000000000066651226107126500213270ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef HISTORYMODEL_H #define HISTORYMODEL_H #include #include #include "qz_namespace.h" #include "history.h" class QTimer; class History; class HistoryItem; class QT_QUPZILLA_EXPORT HistoryModel : public QAbstractItemModel { Q_OBJECT public: enum Roles { IdRole = Qt::UserRole + 1, TitleRole = Qt::UserRole + 2, UrlRole = Qt::UserRole + 3, UrlStringRole = Qt::UserRole + 4, IconRole = Qt::UserRole + 5, IconLoadedRole = Qt::UserRole + 6, IsTopLevelRole = Qt::UserRole + 7, TimestampStartRole = Qt::UserRole + 8, TimestampEndRole = Qt::UserRole + 9, MaxRole = TimestampEndRole }; explicit HistoryModel(History* history); QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const; QVariant data(const QModelIndex &index, int role) const; bool setData(const QModelIndex &index, const QVariant &value, int role); QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const; QModelIndex parent(const QModelIndex &child) const; Qt::ItemFlags flags(const QModelIndex &index) const; int rowCount(const QModelIndex &parent = QModelIndex()) const; int columnCount(const QModelIndex &parent = QModelIndex()) const; bool canFetchMore(const QModelIndex &parent) const; void fetchMore(const QModelIndex &parent); bool hasChildren(const QModelIndex &parent) const; HistoryItem* itemFromIndex(const QModelIndex &index) const; void removeTopLevelIndexes(const QList &indexes); signals: private slots: void resetHistory(); void historyEntryAdded(const HistoryEntry &entry); void historyEntryDeleted(const HistoryEntry &entry); void historyEntryEdited(const HistoryEntry &before, const HistoryEntry &after); private: HistoryItem* findHistoryItem(const HistoryEntry &entry); void checkEmptyParentItem(HistoryItem* item); void init(); HistoryItem* m_rootItem; HistoryItem* m_todayItem; History* m_history; }; class QT_QUPZILLA_EXPORT HistoryFilterModel : public QSortFilterProxyModel { Q_OBJECT public: explicit HistoryFilterModel(QAbstractItemModel* parent); public slots: void setFilterFixedString(const QString &pattern); signals: void expandAllItems(); void collapseAllItems(); protected: bool filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const; private slots: void startFiltering(); private: QString m_pattern; QTimer* m_filterTimer; }; #endif // HISTORYMODEL_H qupzilla-1.6.0/src/lib/history/historyview.cpp000066400000000000000000000141541226107126500215240ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "historyview.h" #include "historymodel.h" #include "historyitem.h" #include "headerview.h" #include "mainapplication.h" #include "iconprovider.h" #include #include #include #include HistoryView::HistoryView(QWidget* parent) : QTreeView(parent) , m_history(mApp->history()) , m_filterModel(new HistoryFilterModel(m_history->model())) { setModel(m_filterModel); setAllColumnsShowFocus(true); setUniformRowHeights(true); setSelectionMode(QAbstractItemView::ExtendedSelection); m_header = new HeaderView(this); setHeader(m_header); m_header->setDefaultSectionSizes(QList() << 0.4 << 0.35 << 0.10 << 0.08); m_header->setSectionHidden(4, true); connect(this, SIGNAL(activated(QModelIndex)), this, SLOT(itemActivated(QModelIndex))); connect(this, SIGNAL(pressed(QModelIndex)), this, SLOT(itemPressed(QModelIndex))); connect(m_filterModel, SIGNAL(expandAllItems()), this, SLOT(expandAll())); connect(m_filterModel, SIGNAL(collapseAllItems()), this, SLOT(collapseAll())); } HeaderView* HistoryView::header() const { return m_header; } HistoryFilterModel* HistoryView::filterModel() const { return m_filterModel; } void HistoryView::removeItems() { QList list; QApplication::setOverrideCursor(Qt::WaitCursor); QList topLevelIndexes; foreach (const QModelIndex &index, selectedIndexes()) { if (index.column() > 0) { continue; } if (index.data(HistoryModel::IsTopLevelRole).toBool()) { qint64 start = index.data(HistoryModel::TimestampStartRole).toLongLong(); qint64 end = index.data(HistoryModel::TimestampEndRole).toLongLong(); list.append(m_history->indexesFromTimeRange(start, end)); topLevelIndexes.append(index); } else { int id = index.data(HistoryModel::IdRole).toInt(); if (!list.contains(id)) { list.append(id); } } } m_history->deleteHistoryEntry(list); m_history->model()->removeTopLevelIndexes(topLevelIndexes); QApplication::restoreOverrideCursor(); } void HistoryView::itemActivated(const QModelIndex &index) { if (!index.isValid() || index.data(HistoryModel::IsTopLevelRole).toBool()) { return; } emit openLink(index.data(HistoryModel::UrlRole).toUrl(), OpenInCurrentTab); } void HistoryView::itemPressed(const QModelIndex &index) { if (!index.isValid() || index.data(HistoryModel::IsTopLevelRole).toBool()) { return; } if ((selectionMode() == QAbstractItemView::SingleSelection && QApplication::keyboardModifiers() & Qt::ControlModifier) || (QApplication::mouseButtons() & Qt::MiddleButton)) { emit openLink(index.data(HistoryModel::UrlRole).toUrl(), OpenInNewTab); } } void HistoryView::openLinkInCurrentTab() { if (m_clickedIndex.isValid()) { emit openLink(m_clickedIndex.data(HistoryModel::UrlRole).toUrl(), OpenInCurrentTab); } } void HistoryView::openLinkInNewTab() { if (m_clickedIndex.isValid()) { emit openLink(m_clickedIndex.data(HistoryModel::UrlRole).toUrl(), OpenInNewTab); } } void HistoryView::copyTitle() { if (m_clickedIndex.isValid()) { QApplication::clipboard()->setText(m_clickedIndex.data(HistoryModel::TitleRole).toString()); } } void HistoryView::copyAddress() { if (m_clickedIndex.isValid()) { QApplication::clipboard()->setText(m_clickedIndex.data(HistoryModel::UrlStringRole).toString()); } } void HistoryView::contextMenuEvent(QContextMenuEvent* event) { const QModelIndex index = indexAt(event->pos()); if (!index.isValid() || index.data(HistoryModel::IsTopLevelRole).toBool()) { return; } m_clickedIndex = index; QMenu menu; menu.addAction(tr("Open link in current tab"), this, SLOT(openLinkInCurrentTab())); menu.addAction(tr("Open link in new tab"), this, SLOT(openLinkInNewTab())); menu.addSeparator(); menu.addAction(tr("Copy title"), this, SLOT(copyTitle())); menu.addAction(tr("Copy address"), this, SLOT(copyAddress())); menu.addSeparator(); menu.addAction(tr("Remove"), this, SLOT(removeItems())); // Prevent choosing first option with double rightclick QPoint pos = viewport()->mapToGlobal(event->pos()); QPoint p(pos.x(), pos.y() + 1); menu.exec(p); } void HistoryView::keyPressEvent(QKeyEvent* event) { if (event->key() == Qt::Key_Delete) { removeItems(); event->accept(); } QTreeView::keyPressEvent(event); } void HistoryView::drawRow(QPainter* painter, const QStyleOptionViewItem &options, const QModelIndex &index) const { bool itemTopLevel = index.data(HistoryModel::IsTopLevelRole).toBool(); bool iconLoaded = index.data(HistoryModel::IconLoadedRole).toBool(); if (index.isValid() && !itemTopLevel && !iconLoaded) { QImage image = qIconProvider->iconForUrl(index.data(HistoryModel::UrlRole).toUrl()); if (image == qIconProvider->emptyWebImage()) { model()->setData(index, QIcon(), HistoryModel::IconRole); } else { model()->setData(index, QIcon(QPixmap::fromImage(image)), HistoryModel::IconRole); } } QTreeView::drawRow(painter, options, index); } qupzilla-1.6.0/src/lib/history/historyview.h000066400000000000000000000036161226107126500211720ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef HISTORYVIEW_H #define HISTORYVIEW_H #include class History; class HistoryFilterModel; class HeaderView; class HistoryView : public QTreeView { Q_OBJECT public: enum OpenBehavior { OpenInCurrentTab, OpenInNewTab }; explicit HistoryView(QWidget* parent = 0); HeaderView* header() const; HistoryFilterModel* filterModel() const; signals: void openLink(const QUrl &, HistoryView::OpenBehavior); public slots: void removeItems(); private slots: void itemActivated(const QModelIndex &index); void itemPressed(const QModelIndex &index); void openLinkInCurrentTab(); void openLinkInNewTab(); void copyTitle(); void copyAddress(); protected: void contextMenuEvent(QContextMenuEvent* event); void keyPressEvent(QKeyEvent* event); void drawRow(QPainter* painter, const QStyleOptionViewItem &options, const QModelIndex &index) const; private: History* m_history; HistoryFilterModel* m_filterModel; HeaderView* m_header; QModelIndex m_clickedIndex; }; #endif // HISTORYVIEW_H qupzilla-1.6.0/src/lib/history/webhistoryinterface.cpp000066400000000000000000000023701226107126500232050ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "webhistoryinterface.h" #include "mainapplication.h" #include "history.h" WebHistoryInterface::WebHistoryInterface(QObject* parent) : QWebHistoryInterface(parent) { } void WebHistoryInterface::addHistoryEntry(const QString &url) { m_clickedLinks.insert(url); } bool WebHistoryInterface::historyContains(const QString &url) const { return m_clickedLinks.find(url) != m_clickedLinks.end(); } qupzilla-1.6.0/src/lib/history/webhistoryinterface.h000066400000000000000000000024461226107126500226560ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef WEBHISTORYINTERFACE_H #define WEBHISTORYINTERFACE_H #include #include #include "qz_namespace.h" class QT_QUPZILLA_EXPORT WebHistoryInterface : public QWebHistoryInterface { public: explicit WebHistoryInterface(QObject* parent = 0); void addHistoryEntry(const QString &url); bool historyContains(const QString &url) const; private: std::set m_clickedLinks; }; #endif // WEBHISTORYINTERFACE_H qupzilla-1.6.0/src/lib/lib.pro000066400000000000000000000403121226107126500162060ustar00rootroot00000000000000isEqual(QT_MAJOR_VERSION, 5) { QT += webkitwidgets network widgets printsupport sql script gui-private } else { QT += core gui webkit sql network script } TARGET = QupZilla TEMPLATE = lib DEFINES *= QUPZILLA_SHAREDLIBRARY include(3rdparty/qtsingleapplication.pri) include(../defines.pri) include(../../translations/translations.pri) #include(../../tests/modeltest/modeltest.pri) contains(DEFINES, USE_QTWEBKIT_2_2) { include(plugins/qtwebkit/qtwebkit-plugins.pri) } unix:!contains(DEFINES, "DISABLE_DBUS") QT += dbus INCLUDEPATH += 3rdparty\ app\ autofill\ bookmarks\ cookies\ session\ downloads\ history\ navigation\ network\ other\ preferences\ rss\ tools\ utils\ webview\ plugins\ sidebar\ data\ adblock\ desktopnotifications\ opensearch\ bookmarksimport\ popupwindow\ DEPENDPATH += 3rdparty\ app\ autofill\ bookmarks\ cookies\ session\ downloads\ history\ navigation\ network\ other\ preferences\ rss\ tools\ utils\ webview\ plugins\ sidebar\ data\ adblock\ desktopnotifications\ opensearch\ bookmarksimport\ popupwindow\ SOURCES += \ webview/tabpreview.cpp \ 3rdparty/qtwin.cpp \ 3rdparty/lineedit.cpp \ app/qupzilla.cpp \ app/mainapplication.cpp \ app/autosaver.cpp \ preferences/autofillmanager.cpp \ bookmarks/bookmarkstoolbar.cpp \ bookmarks/bookmarksmanager.cpp \ cookies/cookiemanager.cpp \ cookies/cookiejar.cpp \ downloads/downloadmanager.cpp \ history/historymanager.cpp \ navigation/websearchbar.cpp \ navigation/locationbar.cpp \ navigation/locationbarpopup.cpp \ network/networkmanagerproxy.cpp \ network/networkmanager.cpp \ other/updater.cpp \ other/sourceviewer.cpp \ preferences/preferences.cpp \ rss/rssmanager.cpp \ other/clearprivatedata.cpp \ webview/webpage.cpp \ webview/tabwidget.cpp \ webview/tabbar.cpp \ webview/siteinfo.cpp \ webview/searchtoolbar.cpp \ app/commandlineoptions.cpp \ other/aboutdialog.cpp \ plugins/plugins.cpp \ plugins/pluginproxy.cpp \ tools/clickablelabel.cpp \ downloads/downloadoptionsdialog.cpp \ tools/treewidget.cpp \ bookmarks/bookmarkswidget.cpp \ tools/frame.cpp \ bookmarks/bookmarksmodel.cpp \ sidebar/sidebar.cpp \ webview/siteinfowidget.cpp \ plugins/clicktoflash.cpp \ plugins/webpluginfactory.cpp \ downloads/downloaditem.cpp \ 3rdparty/ecwin7.cpp \ webview/webtab.cpp \ rss/rsswidget.cpp \ autofill/autofillnotification.cpp \ rss/rssnotification.cpp \ preferences/sslmanager.cpp \ preferences/jsoptions.cpp \ tools/animatedwidget.cpp \ tools/htmlhighlighter.cpp \ tools/colors.cpp \ other/sourceviewersearch.cpp \ adblock/adblocksubscription.cpp \ adblock/adblockrule.cpp \ adblock/adblockmanager.cpp \ adblock/adblockdialog.cpp \ adblock/adblockblockednetworkreply.cpp \ adblock/adblockicon.cpp \ tools/docktitlebarwidget.cpp \ sidebar/bookmarkssidebar.cpp \ bookmarks/bookmarkicon.cpp \ sidebar/historysidebar.cpp \ desktopnotifications/desktopnotification.cpp \ desktopnotifications/desktopnotificationsfactory.cpp \ tools/progressbar.cpp \ tools/iconprovider.cpp \ network/networkproxyfactory.cpp \ tools/closedtabsmanager.cpp \ other/statusbarmessage.cpp \ tools/buttonbox.cpp \ tools/widget.cpp \ 3rdparty/squeezelabelv2.cpp \ 3rdparty/squeezelabelv1.cpp \ tools/buttonwithmenu.cpp \ other/browsinglibrary.cpp \ 3rdparty/stylehelper.cpp \ 3rdparty/fancytabwidget.cpp \ history/webhistoryinterface.cpp \ tools/toolbutton.cpp \ navigation/navigationbar.cpp \ navigation/reloadstopbutton.cpp \ preferences/thememanager.cpp \ tools/qztools.cpp \ other/pagescreen.cpp \ downloads/downloadfilehelper.cpp \ tools/certificateinfowidget.cpp \ webview/webinspectordockwidget.cpp \ app/profileupdater.cpp \ preferences/acceptlanguage.cpp \ opensearch/opensearchreader.cpp \ opensearch/opensearchengine.cpp \ opensearch/opensearchenginedelegate.cpp \ opensearch/searchenginesmanager.cpp \ opensearch/searchenginesdialog.cpp \ opensearch/editsearchengine.cpp \ bookmarksimport/firefoximporter.cpp \ bookmarksimport/chromeimporter.cpp \ bookmarksimport/operaimporter.cpp \ bookmarksimport/ieimporter.cpp \ bookmarksimport/bookmarksimportdialog.cpp \ tools/iconfetcher.cpp \ tools/followredirectreply.cpp \ webview/webhistorywrapper.cpp \ tools/pagethumbnailer.cpp \ plugins/speeddial.cpp \ other/databasewriter.cpp \ bookmarksimport/htmlimporter.cpp \ tools/enhancedmenu.cpp \ navigation/siteicon.cpp \ navigation/goicon.cpp \ rss/rssicon.cpp \ navigation/downicon.cpp \ network/cabundleupdater.cpp \ app/settings.cpp \ app/proxystyle.cpp \ popupwindow/popupwebpage.cpp \ popupwindow/popupwebview.cpp \ popupwindow/popupwindow.cpp \ popupwindow/popuplocationbar.cpp \ webview/tabbedwebview.cpp \ webview/webview.cpp \ preferences/pluginlistdelegate.cpp \ popupwindow/popupstatusbarmessage.cpp \ other/licenseviewer.cpp \ bookmarksimport/bookmarksimporticonfetcher.cpp \ other/checkboxdialog.cpp \ tools/plaineditwithlines.cpp \ tools/focusselectlineedit.cpp \ navigation/completer/locationcompleterdelegate.cpp \ navigation/completer/locationcompleter.cpp \ navigation/completer/locationcompletermodel.cpp \ navigation/completer/locationcompleterview.cpp \ history/history.cpp \ history/historymodel.cpp \ history/historyview.cpp \ history/historyitem.cpp \ tools/headerview.cpp \ other/iconchooser.cpp \ adblock/adblocktreewidget.cpp \ adblock/adblockaddsubscriptiondialog.cpp \ tools/emptynetworkreply.cpp \ 3rdparty/processinfo.cpp \ preferences/pluginsmanager.cpp \ other/qzsettings.cpp \ other/useragentmanager.cpp \ preferences/useragentdialog.cpp \ session/recoverywidget.cpp \ session/restoremanager.cpp \ network/schemehandlers/qupzillaschemehandler.cpp \ network/schemehandlers/adblockschemehandler.cpp \ network/schemehandlers/fileschemehandler.cpp \ tools/listitemdelegate.cpp \ bookmarks/bookmarkstree.cpp \ tools/html5permissions/html5permissionsmanager.cpp \ tools/html5permissions/html5permissionsnotification.cpp \ tools/html5permissions/html5permissionsdialog.cpp \ autofill/pageformcompleter.cpp \ autofill/autofill.cpp \ network/schemehandlers/ftpschemehandler.cpp \ autofill/autofillicon.cpp \ autofill/autofillwidget.cpp \ tools/menubar.cpp \ navigation/navigationcontainer.cpp \ tools/horizontallistwidget.cpp \ tools/mactoolbutton.cpp \ tools/actioncopy.cpp \ network/pac/proxyautoconfig.cpp \ network/pac/pacmanager.cpp \ tools/delayedfilewatcher.cpp \ autofill/passwordmanager.cpp \ autofill/passwordbackends/databasepasswordbackend.cpp \ autofill/passwordbackends/passwordbackend.cpp \ tools/aesinterface.cpp \ autofill/passwordbackends/databaseencryptedpasswordbackend.cpp \ network/sslerrordialog.cpp \ adblock/adblocksearchtree.cpp \ tools/tabstackedwidget.cpp \ tools/combotabbar.cpp HEADERS += \ webview/tabpreview.h \ 3rdparty/qtwin.h \ 3rdparty/lineedit.h \ app/qupzilla.h \ app/mainapplication.h \ app/autosaver.h \ preferences/autofillmanager.h \ bookmarks/bookmarkstoolbar.h \ bookmarks/bookmarksmanager.h \ cookies/cookiemanager.h \ cookies/cookiejar.h \ downloads/downloadmanager.h \ history/historymanager.h \ navigation/websearchbar.h \ navigation/locationbar.h \ network/networkmanagerproxy.h \ network/networkmanager.h \ other/updater.h \ other/sourceviewer.h \ preferences/preferences.h \ rss/rssmanager.h \ other/clearprivatedata.h \ webview/webpage.h \ webview/tabwidget.h \ webview/tabbar.h \ webview/siteinfo.h \ webview/searchtoolbar.h \ app/commandlineoptions.h \ other/aboutdialog.h \ plugins/plugininterface.h \ plugins/plugins.h \ plugins/pluginproxy.h \ tools/clickablelabel.h \ downloads/downloadoptionsdialog.h \ tools/treewidget.h \ bookmarks/bookmarkswidget.h \ tools/frame.h \ bookmarks/bookmarksmodel.h \ sidebar/sidebar.h \ webview/siteinfowidget.h \ plugins/clicktoflash.h \ plugins/webpluginfactory.h \ downloads/downloaditem.h \ 3rdparty/ecwin7.h \ webview/webtab.h \ rss/rsswidget.h \ autofill/autofillnotification.h \ rss/rssnotification.h \ preferences/sslmanager.h \ preferences/jsoptions.h \ tools/animatedwidget.h \ tools/htmlhighlighter.h \ other/sourceviewersearch.h \ adblock/adblocksubscription.h \ adblock/adblockrule.h \ adblock/adblockmanager.h \ adblock/adblockdialog.h \ adblock/adblockblockednetworkreply.h \ adblock/adblockicon.h \ tools/docktitlebarwidget.h \ sidebar/bookmarkssidebar.h \ bookmarks/bookmarkicon.h \ sidebar/historysidebar.h \ desktopnotifications/desktopnotification.h \ desktopnotifications/desktopnotificationsfactory.h \ tools/progressbar.h \ tools/iconprovider.h \ network/networkproxyfactory.h \ tools/closedtabsmanager.h \ other/statusbarmessage.h \ tools/buttonbox.h \ tools/widget.h \ 3rdparty/squeezelabelv2.h \ 3rdparty/squeezelabelv1.h \ tools/buttonwithmenu.h \ other/browsinglibrary.h \ 3rdparty/stylehelper.h \ 3rdparty/fancytabwidget.h \ history/webhistoryinterface.h \ tools/toolbutton.h \ navigation/navigationbar.h \ navigation/reloadstopbutton.h \ preferences/thememanager.h \ tools/qztools.h \ other/pagescreen.h \ downloads/downloadfilehelper.h \ tools/certificateinfowidget.h \ webview/webinspectordockwidget.h \ 3rdparty/msvc2008.h \ app/profileupdater.h \ preferences/acceptlanguage.h \ opensearch/opensearchreader.h \ opensearch/opensearchengine.h \ opensearch/opensearchenginedelegate.h \ opensearch/searchenginesmanager.h \ opensearch/searchenginesdialog.h \ opensearch/editsearchengine.h \ bookmarksimport/firefoximporter.h \ bookmarksimport/chromeimporter.h \ bookmarksimport/operaimporter.h \ bookmarksimport/ieimporter.h \ bookmarksimport/bookmarksimportdialog.h \ tools/iconfetcher.h \ tools/followredirectreply.h \ webview/webhistorywrapper.h \ tools/pagethumbnailer.h \ plugins/speeddial.h \ other/databasewriter.h \ bookmarksimport/htmlimporter.h \ tools/enhancedmenu.h \ navigation/siteicon.h \ navigation/goicon.h \ rss/rssicon.h \ navigation/downicon.h \ network/cabundleupdater.h \ app/settings.h \ app/proxystyle.h \ popupwindow/popupwebpage.h \ popupwindow/popupwebview.h \ popupwindow/popupwindow.h \ popupwindow/popuplocationbar.h \ webview/tabbedwebview.h \ webview/webview.h \ app/qz_namespace.h \ preferences/pluginlistdelegate.h \ popupwindow/popupstatusbarmessage.h \ other/licenseviewer.h \ bookmarksimport/bookmarksimporticonfetcher.h \ other/checkboxdialog.h \ tools/plaineditwithlines.h \ sidebar/sidebarinterface.h \ tools/focusselectlineedit.h \ navigation/completer/locationcompleterdelegate.h \ navigation/completer/locationcompleter.h \ navigation/completer/locationcompleterview.h \ history/history.h \ history/historymodel.h \ history/historyview.h \ history/historyitem.h \ tools/headerview.h \ other/iconchooser.h \ adblock/adblocktreewidget.h \ adblock/adblockaddsubscriptiondialog.h \ tools/emptynetworkreply.h \ 3rdparty/processinfo.h \ preferences/pluginsmanager.h \ other/qzsettings.h \ other/useragentmanager.h \ preferences/useragentdialog.h \ session/recoverywidget.h \ session/restoremanager.h \ network/schemehandlers/schemehandler.h \ network/schemehandlers/qupzillaschemehandler.h \ network/schemehandlers/adblockschemehandler.h \ network/schemehandlers/fileschemehandler.h \ tools/listitemdelegate.h \ bookmarks/bookmarkstree.h \ tools/html5permissions/html5permissionsmanager.h \ tools/html5permissions/html5permissionsnotification.h \ tools/html5permissions/html5permissionsdialog.h \ autofill/pageformcompleter.h \ autofill/autofill.h \ network/schemehandlers/ftpschemehandler.h \ autofill/autofillicon.h \ autofill/autofillwidget.h \ tools/menubar.h \ navigation/navigationcontainer.h \ tools/horizontallistwidget.h \ tools/mactoolbutton.h \ tools/qzregexp.h \ tools/actioncopy.h \ network/pac/proxyautoconfig.h \ network/pac/pacmanager.h \ network/pac/pacdatetime.h \ tools/delayedfilewatcher.h \ autofill/passwordmanager.h \ autofill/passwordbackends/passwordbackend.h \ autofill/passwordbackends/databasepasswordbackend.h \ tools/aesinterface.h \ autofill/passwordbackends/databaseencryptedpasswordbackend.h \ network/sslerrordialog.h \ adblock/adblocksearchtree.h \ tools/tabstackedwidget.h \ tools/combotabbar.h FORMS += \ preferences/autofillmanager.ui \ bookmarks/bookmarksmanager.ui \ cookies/cookiemanager.ui \ history/historymanager.ui \ preferences/preferences.ui \ rss/rssmanager.ui \ webview/siteinfo.ui \ other/aboutdialog.ui \ preferences/pluginslist.ui \ downloads/downloadoptionsdialog.ui \ bookmarks/bookmarkswidget.ui \ webview/siteinfowidget.ui \ downloads/downloaditem.ui \ downloads/downloadmanager.ui \ rss/rsswidget.ui \ autofill/autofillnotification.ui \ rss/rssnotification.ui \ preferences/sslmanager.ui \ preferences/jsoptions.ui \ other/clearprivatedata.ui \ other/sourceviewersearch.ui \ adblock/adblockdialog.ui \ tools/docktitlebarwidget.ui \ sidebar/bookmarkssidebar.ui \ sidebar/historysidebar.ui \ desktopnotifications/desktopnotification.ui \ webview/jsconfirm.ui \ webview/jsalert.ui \ webview/jsprompt.ui \ other/browsinglibrary.ui \ webview/searchtoolbar.ui \ preferences/thememanager.ui \ other/pagescreen.ui \ tools/certificateinfowidget.ui \ preferences/acceptlanguage.ui \ preferences/addacceptlanguage.ui \ opensearch/searchenginesdialog.ui \ opensearch/editsearchengine.ui \ bookmarksimport/bookmarksimportdialog.ui \ other/checkboxdialog.ui \ other/iconchooser.ui \ adblock/adblockaddsubscriptiondialog.ui \ preferences/useragentdialog.ui \ session/recoverywidget.ui \ tools/html5permissions/html5permissionsnotification.ui \ tools/html5permissions/html5permissionsdialog.ui \ autofill/autofillwidget.ui \ autofill/passwordbackends/masterpassworddialog.ui \ network/sslerrordialog.ui RESOURCES += \ data/icons.qrc \ data/html.qrc \ data/data.qrc \ data/certs.qrc \ isEqual(QT_MAJOR_VERSION, 5) { include(3rdparty/qftp.pri) SOURCES += tools/qzregexp.cpp } !mac:unix { target.path = $$library_folder INSTALLS += target !contains(DEFINES, NO_X11):LIBS += -lX11 LIBS += -lcrypto RESOURCES -= data/certs.qrc } win32 { HEADERS += other/registerqappassociation.h SOURCES += other/registerqappassociation.cpp LIBS += -llibeay32 } mac { HEADERS += other/macmenureceiver.h \ webview/macwebviewscroller.h SOURCES += other/macmenureceiver.cpp \ webview/macwebviewscroller.cpp RESOURCES -= data/certs.qrc LIBS += -lcrypto -framework CoreServices } message(===========================================) message( Using following defines:) message( $$DEFINES) qupzilla-1.6.0/src/lib/navigation/000077500000000000000000000000001226107126500170555ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/navigation/completer/000077500000000000000000000000001226107126500210475ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/navigation/completer/locationcompleter.cpp000066400000000000000000000114231226107126500252770ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "locationcompleter.h" #include "locationcompletermodel.h" #include "locationcompleterview.h" #include "locationcompleterdelegate.h" #include "locationbar.h" LocationCompleterView* LocationCompleter::s_view = 0; LocationCompleterModel* LocationCompleter::s_model = 0; LocationCompleter::LocationCompleter(QObject* parent) : QObject(parent) , m_locationBar(0) , m_ignoreCurrentChangedSignal(false) , m_showingMostVisited(false) { if (!s_view) { s_model = new LocationCompleterModel; s_view = new LocationCompleterView; s_view->setModel(s_model); s_view->setItemDelegate(new LocationCompleterDelegate(s_view)); } } void LocationCompleter::setLocationBar(LocationBar* locationBar) { m_locationBar = locationBar; } QString LocationCompleter::domainCompletion() const { return m_completedDomain; } bool LocationCompleter::showingMostVisited() const { return m_showingMostVisited; } bool LocationCompleter::isPopupSelected() const { return s_view->currentIndex().isValid(); } bool LocationCompleter::isPopupVisible() const { return s_view->isVisible(); } void LocationCompleter::closePopup() { m_completedDomain.clear(); m_showingMostVisited = false; s_view->close(); } void LocationCompleter::complete(const QString &string) { m_completedDomain = createDomainCompletionString(string); m_showingMostVisited = string.isEmpty(); s_model->refreshCompletions(string); showPopup(); } void LocationCompleter::showMostVisited() { complete(QString()); } void LocationCompleter::currentChanged(const QModelIndex &index) { if (m_ignoreCurrentChangedSignal) { return; } QString completion = index.data().toString(); if (completion.isEmpty()) { completion = m_originalText; } emit showCompletion(completion); } void LocationCompleter::slotPopupClosed() { disconnect(s_view->selectionModel(), SIGNAL(currentChanged(QModelIndex,QModelIndex)), this, SLOT(currentChanged(QModelIndex))); disconnect(s_view, SIGNAL(clicked(QModelIndex)), this, SIGNAL(completionActivated())); disconnect(s_view, SIGNAL(closed()), this, SLOT(slotPopupClosed())); disconnect(s_view, SIGNAL(aboutToActivateTab(TabPosition)), m_locationBar, SLOT(clear())); emit popupClosed(); } QString LocationCompleter::createDomainCompletionString(const QString &text) { QString completion = s_model->completeDomain(text); if (text.startsWith(QLatin1String("www."))) { return completion.mid(text.size()); } if (completion.startsWith(QLatin1String("www."))) { completion = completion.mid(4); } return completion.mid(text.size()); } void LocationCompleter::showPopup() { Q_ASSERT(m_locationBar); if (s_model->rowCount() == 0) { s_view->close(); return; } if (s_view->isVisible()) { adjustPopupSize(); return; } QRect popupRect(m_locationBar->mapToGlobal(m_locationBar->pos()), m_locationBar->size()); popupRect.setY(popupRect.bottom()); s_view->setFocusProxy(m_locationBar); s_view->setGeometry(popupRect); connect(s_view->selectionModel(), SIGNAL(currentChanged(QModelIndex,QModelIndex)), this, SLOT(currentChanged(QModelIndex))); connect(s_view, SIGNAL(clicked(QModelIndex)), this, SIGNAL(completionActivated())); connect(s_view, SIGNAL(closed()), this, SLOT(slotPopupClosed())); connect(s_view, SIGNAL(aboutToActivateTab(TabPosition)), m_locationBar, SLOT(clear())); adjustPopupSize(); } void LocationCompleter::adjustPopupSize() { const int maxItemsCount = 6; int popupHeight = s_view->sizeHintForRow(0) * qMin(maxItemsCount, s_model->rowCount()); popupHeight += 2 * s_view->frameWidth(); s_view->resize(s_view->width(), popupHeight); m_ignoreCurrentChangedSignal = true; s_view->setCurrentIndex(QModelIndex()); m_ignoreCurrentChangedSignal = false; s_view->show(); m_originalText = m_locationBar->text(); } qupzilla-1.6.0/src/lib/navigation/completer/locationcompleter.h000066400000000000000000000040761226107126500247520ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef LOCATIONCOMPLETER_H #define LOCATIONCOMPLETER_H #include #include "qz_namespace.h" class QModelIndex; class LocationCompleterModel; class LocationCompleterView; class LocationBar; class QT_QUPZILLA_EXPORT LocationCompleter : public QObject { Q_OBJECT public: explicit LocationCompleter(QObject* parent = 0); void setLocationBar(LocationBar* locationBar); QString domainCompletion() const; bool showingMostVisited() const; bool isPopupSelected() const; bool isPopupVisible() const; void closePopup(); signals: void showCompletion(const QString &); void completionActivated(); void popupClosed(); public slots: void complete(const QString &string); void showMostVisited(); private slots: void currentChanged(const QModelIndex &index); void slotPopupClosed(); private: QString createDomainCompletionString(const QString &text); void showPopup(); void adjustPopupSize(); LocationBar* m_locationBar; QString m_originalText; QString m_completedDomain; bool m_ignoreCurrentChangedSignal; bool m_showingMostVisited; static LocationCompleterView* s_view; static LocationCompleterModel* s_model; }; #endif // LOCATIONCOMPLETER_H qupzilla-1.6.0/src/lib/navigation/completer/locationcompleterdelegate.cpp000066400000000000000000000302601226107126500267720ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "locationcompleterdelegate.h" #include "locationcompleterview.h" #include "locationcompletermodel.h" #include "iconprovider.h" #include #include #include LocationCompleterDelegate::LocationCompleterDelegate(LocationCompleterView* parent) : QStyledItemDelegate(parent) , m_rowHeight(0) , m_padding(0) , m_drawSwitchToTab(true) , m_view(parent) { } void LocationCompleterDelegate::paint(QPainter* painter, const QStyleOptionViewItem &option, const QModelIndex &index) const { QStyleOptionViewItemV4 opt = option; initStyleOption(&opt, index); const QWidget* w = opt.widget; const QStyle* style = w ? w->style() : QApplication::style(); const int height = opt.rect.height(); const int center = height / 2 + opt.rect.top(); // Prepare title font QFont titleFont = opt.font; titleFont.setPointSize(titleFont.pointSize() + 1); const QFontMetrics titleMetrics(titleFont); int leftPosition = m_padding * 2; int rightPosition = opt.rect.right() - m_padding; opt.state &= ~QStyle::State_MouseOver; if (m_view->hoveredIndex() == index) { opt.state |= QStyle::State_Selected; } else { opt.state &= ~QStyle::State_Selected; } #ifdef Q_OS_WIN const QPalette::ColorRole colorRole = QPalette::Text; const QPalette::ColorRole colorLinkRole = QPalette::Link; #else const QPalette::ColorRole colorRole = opt.state & QStyle::State_Selected ? QPalette::HighlightedText : QPalette::Text; const QPalette::ColorRole colorLinkRole = opt.state & QStyle::State_Selected ? QPalette::HighlightedText : QPalette::Link; #endif // Draw background style->drawPrimitive(QStyle::PE_PanelItemViewItem, &opt, painter, w); // Draw icon const int iconSize = 16; const int iconYPos = center - (iconSize / 2); QRect iconRect(leftPosition, iconYPos, iconSize, iconSize); QPixmap pixmap = index.data(Qt::DecorationRole).value().pixmap(iconSize); painter->drawPixmap(iconRect, pixmap); leftPosition = iconRect.right() + m_padding * 2; // Draw star to bookmark items int starPixmapWidth = 0; if (index.data(LocationCompleterModel::BookmarkRole).toBool()) { const QPixmap starPixmap = qIconProvider->bookmarkIcon(); QSize starSize = starPixmap.size(); //new starPixmapWidth = starSize.width(); QPoint pos(rightPosition - starPixmapWidth, opt.rect.top() + m_padding); QRect starRect(pos, starSize); painter->drawPixmap(starRect, starPixmap); } const QString searchText = index.data(LocationCompleterModel::SearchStringRole).toString(); // Draw title const int leftTitleEdge = leftPosition + 2; // RTL Support: remove conflicting of right-aligned text and starpixmap! const int rightTitleEdge = rightPosition - m_padding - starPixmapWidth; QRect titleRect(leftTitleEdge, opt.rect.top() + m_padding, rightTitleEdge - leftTitleEdge, titleMetrics.height()); QString title(titleMetrics.elidedText(index.data(LocationCompleterModel::TitleRole).toString(), Qt::ElideRight, titleRect.width())); painter->setFont(titleFont); drawHighlightedTextLine(titleRect, title, searchText, painter, style, opt, colorRole); // Draw link const int infoYPos = titleRect.bottom() + opt.fontMetrics.leading() + 2; QRect linkRect(titleRect.x(), infoYPos, titleRect.width(), opt.fontMetrics.height()); const QByteArray linkArray = index.data(Qt::DisplayRole).toByteArray(); // Let's assume that more than 500 characters won't fit in line on any display... // Fixes performance when trying to get elidedText for a really long // (length() > 1000000) urls - data: urls can get that long QString link; if (!linkArray.startsWith("data") && !linkArray.startsWith("javascript")) { link = QString::fromUtf8(QByteArray::fromPercentEncoding(linkArray)).left(500); } else { link = QString::fromLatin1(linkArray.left(500)); } link = opt.fontMetrics.elidedText(link, Qt::ElideRight, linkRect.width()); painter->setFont(opt.font); TabPosition pos = index.data(LocationCompleterModel::TabPositionRole).value(); if (m_drawSwitchToTab && pos.windowIndex != -1) { const QIcon tabIcon = QIcon(":icons/menu/tab.png"); QRect iconRect(linkRect); iconRect.setWidth(m_padding + 16 + m_padding); tabIcon.paint(painter, iconRect); QRect textRect(linkRect); textRect.setX(textRect.x() + m_padding + 16 + m_padding); drawTextLine(textRect, LocationCompleterView::tr("Switch to tab"), painter, style, opt, colorLinkRole); } else { drawHighlightedTextLine(linkRect, link, searchText, painter, style, opt, colorLinkRole); } // Draw line at the very bottom of item if the item is not highlighted if (!(opt.state & QStyle::State_Selected)) { QRect lineRect(opt.rect.left(), opt.rect.bottom(), opt.rect.width(), 1); painter->fillRect(lineRect, opt.palette.color(QPalette::AlternateBase)); } } static bool sizeBiggerThan(const QString &s1, const QString &s2) { return s1.size() > s2.size(); } void LocationCompleterDelegate::drawHighlightedTextLine(const QRect &rect, const QString &text, const QString &searchText, QPainter* painter, const QStyle* style, const QStyleOptionViewItemV4 &option, const QPalette::ColorRole &role) const { QList delimiters; QStringList searchStrings = searchText.split(QLatin1Char(' '), QString::SkipEmptyParts); // Look for longer parts first qSort(searchStrings.begin(), searchStrings.end(), sizeBiggerThan); foreach (const QString &string, searchStrings) { int delimiter = text.indexOf(string, 0, Qt::CaseInsensitive); while (delimiter != -1) { int start = delimiter; int end = delimiter + string.length(); bool alreadyContains = false; for (int i = 0; i < delimiters.count(); ++i) { int dStart = delimiters.at(i); int dEnd = delimiters.at(++i); if (dStart <= start && dEnd >= end) { alreadyContains = true; break; } } if (!alreadyContains) { delimiters.append(start); delimiters.append(end); } delimiter = text.indexOf(string, end, Qt::CaseInsensitive); } } // We need to sort delimiters to properly paint all parts that user typed qSort(delimiters); // If we don't find any match, just paint it without any highlight if (delimiters.isEmpty() || delimiters.count() % 2) { drawTextLine(rect, text, painter, style, option, role); return; } QFont normalFont = painter->font(); QFont boldFont = normalFont; boldFont.setBold(true); QFontMetrics normalMetrics(normalFont); QFontMetrics boldMetrics(boldFont); int lastEndPos = 0; int lastRectPos = rect.left(); while (!delimiters.isEmpty()) { int start = delimiters.takeFirst(); int end = delimiters.takeFirst(); const QString normalPart = text.mid(lastEndPos, start - lastEndPos); const QString boldPart = text.mid(start, end - start); lastEndPos = end; if (!normalPart.isEmpty()) { int width = normalMetrics.width(normalPart); QRect nRect = adjustRect(rect, QRect(lastRectPos, rect.top(), width, rect.height())); if (nRect.width() > 0) { if (text.isRightToLeft()) { nRect = style->visualRect(Qt::RightToLeft, rect, nRect); } painter->setFont(normalFont); drawTextLine(nRect, normalPart, painter, style, option, role); lastRectPos += nRect.width(); } } if (!boldPart.isEmpty()) { int width = boldMetrics.width(boldPart); QRect bRect = adjustRect(rect, QRect(lastRectPos, rect.top(), width, rect.height())); if (bRect.width() > 0) { if (text.isRightToLeft()) { bRect = style->visualRect(Qt::RightToLeft, rect, bRect); } painter->setFont(boldFont); drawTextLine(bRect, boldPart, painter, style, option, role); // Paint manually line under text instead of using QFont::underline QRect underlineRect(bRect.left(), bRect.top() + boldMetrics.ascent() + 1, bRect.width(), boldFont.pointSize() > 8 ? 2 : 1); painter->fillRect(underlineRect, option.palette.color(role)); lastRectPos += bRect.width(); } } if (delimiters.isEmpty() && lastEndPos != text.size()) { const QString lastText = text.mid(lastEndPos); int width = normalMetrics.width(lastText); QRect nRect = adjustRect(rect, QRect(lastRectPos, rect.top(), width, rect.height())); if (text.isRightToLeft()) { nRect = style->visualRect(Qt::RightToLeft, rect, nRect); } painter->setFont(normalFont); drawTextLine(nRect, lastText, painter, style, option, role); } } } void LocationCompleterDelegate::drawTextLine(const QRect &rect, QString text, QPainter* painter, const QStyle* style, const QStyleOptionViewItemV4 &option, const QPalette::ColorRole &role) const { if (rect.width() > 0) { const Qt::LayoutDirection direction = option.widget ? option.widget->layoutDirection() : QApplication::layoutDirection(); Qt::LayoutDirection textDirection = text.isRightToLeft() ? Qt::RightToLeft : Qt::LeftToRight; Qt::Alignment alignment = textDirection == direction ? Qt::AlignLeft : Qt::AlignRight; // Insert unicode control characters: prepend RLE or LRE and append (RLM or LRM)+PDF text.isRightToLeft() ? text.prepend(QChar(0x202B)).append(0x200F) : text.prepend(QChar(0x202A)).append(0x200E); text.append(QChar(0x202C)); style->drawItemText(painter, rect, Qt::TextSingleLine | alignment, option.palette, true, text, role); } } QRect LocationCompleterDelegate::adjustRect(const QRect &original, const QRect &created) const { if (created.left() + created.width() >= original.right()) { QRect nRect = created; nRect.setWidth(original.right() - created.left()); return nRect; } return created; } QSize LocationCompleterDelegate::sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const { Q_UNUSED(index) if (!m_rowHeight) { QStyleOptionViewItemV4 opt(option); initStyleOption(&opt, index); const QWidget* w = opt.widget; const QStyle* style = w ? w->style() : QApplication::style(); const int padding = style->pixelMetric(QStyle::PM_FocusFrameHMargin, 0) + 1; QFont titleFont = opt.font; titleFont.setPointSize(titleFont.pointSize() + 1); m_padding = padding > 3 ? padding : 3; const QFontMetrics titleMetrics(titleFont); // 2 px bigger space between title and link because of underlining m_rowHeight = 2 * m_padding + opt.fontMetrics.leading() + opt.fontMetrics.height() + titleMetrics.height() + 2; } return QSize(200, m_rowHeight); } void LocationCompleterDelegate::drawSwitchToTab(bool enable) { m_drawSwitchToTab = enable; } qupzilla-1.6.0/src/lib/navigation/completer/locationcompleterdelegate.h000066400000000000000000000041751226107126500264450ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef LOCATIONCOMPLETERDELEGATE_H #define LOCATIONCOMPLETERDELEGATE_H #include #include "qz_namespace.h" class LocationCompleterView; class QT_QUPZILLA_EXPORT LocationCompleterDelegate : public QStyledItemDelegate { public: explicit LocationCompleterDelegate(LocationCompleterView* parent = 0); void paint(QPainter* painter, const QStyleOptionViewItem &option, const QModelIndex &index) const; QSize sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const; void drawSwitchToTab(bool enable); private: void drawHighlightedTextLine(const QRect &rect, const QString &text, const QString &searchText, QPainter* painter, const QStyle* style, const QStyleOptionViewItemV4 &option, const QPalette::ColorRole &role) const; void drawTextLine(const QRect &rect, QString text, QPainter* painter, const QStyle* style, const QStyleOptionViewItemV4 &option, const QPalette::ColorRole &role) const; inline QRect adjustRect(const QRect &original, const QRect &created) const; mutable int m_rowHeight; mutable int m_padding; bool m_drawSwitchToTab; LocationCompleterView* m_view; }; #endif // LOCATIONCOMPLETERDELEGATE_H qupzilla-1.6.0/src/lib/navigation/completer/locationcompletermodel.cpp000066400000000000000000000220641226107126500263230ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "locationcompletermodel.h" #include "iconprovider.h" #include "qzsettings.h" #include "mainapplication.h" #include "qupzilla.h" #include "tabwidget.h" #include LocationCompleterModel::LocationCompleterModel(QObject* parent) : QStandardItemModel(parent) , m_lastCompletion(QChar(QChar::Nbsp)) { } static bool countBiggerThan(const QStandardItem* i1, const QStandardItem* i2) { return i1->data(LocationCompleterModel::CountRole).toInt() > i2->data(LocationCompleterModel::CountRole).toInt(); } void LocationCompleterModel::refreshCompletions(const QString &string) { if (m_lastCompletion == string) { refreshTabPositions(); return; } m_lastCompletion = string; if (string.isEmpty()) { showMostVisited(); return; } clear(); Type showType = (Type) qzSettings->showLocationSuggestions; int limit = string.size() < 3 ? 25 : 15; QList urlList; QList itemList; // TODO: Those 2 SQL queries can be merged with UNION if (showType == HistoryAndBookmarks || showType == Bookmarks) { QSqlQuery query = createQuery(string, "history.count DESC", urlList, limit, true); query.exec(); while (query.next()) { QStandardItem* item = new QStandardItem(); const QUrl url = query.value(1).toUrl(); item->setIcon(qIconProvider->iconFromImage(QImage::fromData(query.value(4).toByteArray()))); item->setText(url.toEncoded()); item->setData(query.value(0), IdRole); item->setData(query.value(2), TitleRole); item->setData(query.value(3), CountRole); item->setData(QVariant(true), BookmarkRole); item->setData(string, SearchStringRole); if (qzSettings->showSwitchTab) { item->setData(QVariant::fromValue(tabPositionForUrl(url)), TabPositionRole); } urlList.append(url); itemList.append(item); } limit -= query.size(); } if (showType == HistoryAndBookmarks || showType == History) { QSqlQuery query = createQuery(string, "count DESC", urlList, limit); query.exec(); while (query.next()) { QStandardItem* item = new QStandardItem(); const QUrl url = query.value(1).toUrl(); item->setIcon(_iconForUrl(url)); item->setText(url.toEncoded()); item->setData(query.value(0), IdRole); item->setData(query.value(2), TitleRole); item->setData(query.value(3), CountRole); item->setData(QVariant(false), BookmarkRole); item->setData(string, SearchStringRole); if (qzSettings->showSwitchTab) { item->setData(QVariant::fromValue(tabPositionForUrl(url)), TabPositionRole); } itemList.append(item); } } // Sort by count qSort(itemList.begin(), itemList.end(), countBiggerThan); appendColumn(itemList); } void LocationCompleterModel::showMostVisited() { clear(); QSqlQuery query; query.exec("SELECT id, url, title FROM history ORDER BY count DESC LIMIT 15"); while (query.next()) { QStandardItem* item = new QStandardItem(); const QUrl url = query.value(1).toUrl(); item->setIcon(_iconForUrl(url)); item->setText(url.toEncoded()); item->setData(query.value(0), IdRole); item->setData(query.value(2), TitleRole); item->setData(QVariant(false), BookmarkRole); if (qzSettings->showSwitchTab) { item->setData(QVariant::fromValue(tabPositionForUrl(url)), TabPositionRole); } appendRow(item); } } QString LocationCompleterModel::completeDomain(const QString &text) { if (text.isEmpty() || text == QLatin1String("www.")) { return QString(); } bool withoutWww = text.startsWith(QLatin1Char('w')) && !text.startsWith(QLatin1String("www.")); QString query = "SELECT url FROM history WHERE "; if (withoutWww) { query.append(QLatin1String("url NOT LIKE ? AND url NOT LIKE ? AND ")); } else { query.append(QLatin1String("url LIKE ? OR url LIKE ? OR ")); } query.append(QLatin1String("(url LIKE ? OR url LIKE ?) ORDER BY count DESC LIMIT 1")); QSqlQuery sqlQuery; sqlQuery.prepare(query); if (withoutWww) { sqlQuery.addBindValue(QString("http://www.%")); sqlQuery.addBindValue(QString("https://www.%")); sqlQuery.addBindValue(QString("http://%1%").arg(text)); sqlQuery.addBindValue(QString("https://%1%").arg(text)); } else { sqlQuery.addBindValue(QString("http://%1%").arg(text)); sqlQuery.addBindValue(QString("https://%1%").arg(text)); sqlQuery.addBindValue(QString("http://www.%1%").arg(text)); sqlQuery.addBindValue(QString("https://www.%1%").arg(text)); } sqlQuery.exec(); if (!sqlQuery.next()) { return QString(); } return sqlQuery.value(0).toUrl().host(); } QSqlQuery LocationCompleterModel::createQuery(const QString &searchString, const QString &orderBy, const QList &alreadyFound, int limit, bool bookmarks, bool exactMatch) { QString table = bookmarks ? "bookmarks" : "history"; QString query = QString("SELECT %1.id, %1.url, %1.title, history.count").arg(table); QStringList searchList; if (bookmarks) { query.append(QLatin1String(", bookmarks.icon FROM bookmarks LEFT JOIN history ON bookmarks.url=history.url ")); } else { query.append(QLatin1String(" FROM history ")); } query.append(QLatin1String("WHERE ")); if (exactMatch) { query.append(QString("%1.title LIKE ? OR %1.url LIKE ? ").arg(table)); } else { searchList = searchString.split(QLatin1Char(' '), QString::SkipEmptyParts); const int slSize = searchList.size(); for (int i = 0; i < slSize; ++i) { query.append(QString("(%1.title LIKE ? OR %1.url LIKE ?) ").arg(table)); if (i < slSize - 1) { query.append(QLatin1String("AND ")); } } } for (int i = 0; i < alreadyFound.count(); i++) { query.append(QString("AND (NOT %1.url=?) ").arg(table)); } query.append(QString("GROUP BY %1.url ").arg(table)); if (!orderBy.isEmpty()) { query.append("ORDER BY " + orderBy); } query.append(QLatin1String(" LIMIT ?")); QSqlQuery sqlQuery; sqlQuery.prepare(query); if (exactMatch) { sqlQuery.addBindValue(QString("%%1%").arg(searchString)); sqlQuery.addBindValue(QString("%%1%").arg(searchString)); } else { foreach (const QString &str, searchList) { sqlQuery.addBindValue(QString("%%1%").arg(str)); sqlQuery.addBindValue(QString("%%1%").arg(str)); } } foreach (const QUrl &url, alreadyFound) { sqlQuery.addBindValue(url); } sqlQuery.addBindValue(limit); return sqlQuery; } TabPosition LocationCompleterModel::tabPositionForUrl(const QUrl &url) const { return tabPositionForEncodedUrl(url.toEncoded()); } TabPosition LocationCompleterModel::tabPositionForEncodedUrl(const QString &encodedUrl) const { QList windows = mApp->mainWindows(); int currentWindowIdx = windows.indexOf(mApp->getWindow()); windows.prepend(mApp->getWindow()); for (int win = 0; win < windows.count(); ++win) { QupZilla* mainWin = windows.at(win); QList tabs = mainWin->tabWidget()->allTabs(); for (int tab = 0; tab < tabs.count(); ++tab) { if (tabs[tab]->url().toEncoded() == encodedUrl) { TabPosition pos; pos.windowIndex = win == 0 ? currentWindowIdx : win - 1; pos.tabIndex = tab; return pos; } } } return TabPosition(); } void LocationCompleterModel::refreshTabPositions() { if (!qzSettings->showSwitchTab) { return; } for (int row = 0; row < rowCount(); ++row) { QStandardItem* aItem = item(row); if (!aItem) { continue; } aItem->setData(QVariant::fromValue(tabPositionForEncodedUrl(aItem->text())), TabPositionRole); } } qupzilla-1.6.0/src/lib/navigation/completer/locationcompletermodel.h000066400000000000000000000043331226107126500257670ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef LOCATIONCOMPLETERMODEL_H #define LOCATIONCOMPLETERMODEL_H #include #include "qz_namespace.h" class QSqlQuery; class QUrl; struct TabPosition { int windowIndex; int tabIndex; TabPosition() : windowIndex(-1) , tabIndex(-1) {} }; Q_DECLARE_METATYPE(TabPosition) class LocationCompleterModel : public QStandardItemModel { public: enum Role { TitleRole = Qt::UserRole + 1, BookmarkRole = Qt::UserRole + 2, IdRole = Qt::UserRole + 3, SearchStringRole = Qt::UserRole + 4, CountRole = Qt::UserRole + 5, TabPositionRole = Qt::UserRole + 6 }; explicit LocationCompleterModel(QObject* parent = 0); void refreshCompletions(const QString &string); void showMostVisited(); QString completeDomain(const QString &text); private: enum Type { HistoryAndBookmarks = 0, History = 1, Bookmarks = 2, Nothing = 4 }; QSqlQuery createQuery(const QString &searchString, const QString &orderBy, const QList &alreadyFound, int limit, bool bookmarks = false, bool exactMatch = false); TabPosition tabPositionForUrl(const QUrl &url) const; TabPosition tabPositionForEncodedUrl(const QString &encodedUrl) const; void refreshTabPositions(); QString m_lastCompletion; }; #endif // LOCATIONCOMPLETERMODEL_H qupzilla-1.6.0/src/lib/navigation/completer/locationcompleterview.cpp000066400000000000000000000204721226107126500261760ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "locationcompleterview.h" #include "locationcompletermodel.h" #include "locationcompleterdelegate.h" #include "mainapplication.h" #include "qupzilla.h" #include "history.h" #include "tabwidget.h" #include "qzsettings.h" #include "tabbedwebview.h" #include #include #include #include LocationCompleterView::LocationCompleterView() : QListView(0) , m_ignoreNextMouseMove(false) { setWindowFlags(Qt::Popup); setUniformItemSizes(true); setEditTriggers(QAbstractItemView::NoEditTriggers); setVerticalScrollMode(QAbstractItemView::ScrollPerPixel); setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); setSelectionBehavior(QAbstractItemView::SelectRows); setSelectionMode(QAbstractItemView::SingleSelection); setMouseTracking(true); installEventFilter(this); } QPersistentModelIndex LocationCompleterView::hoveredIndex() const { return m_hoveredIndex; } bool LocationCompleterView::eventFilter(QObject* object, QEvent* event) { Q_UNUSED(object) // Event filter based on QCompleter::eventFilter from qcompleter.cpp switch (event->type()) { case QEvent::KeyPress: { QKeyEvent* keyEvent = static_cast(event); QModelIndex curIndex = m_hoveredIndex; if ((keyEvent->key() == Qt::Key_Up || keyEvent->key() == Qt::Key_Down) && currentIndex() != curIndex) { setCurrentIndex(curIndex); } switch (keyEvent->key()) { case Qt::Key_Return: case Qt::Key_Enter: if (qzSettings->showSwitchTab && !(keyEvent->modifiers() & Qt::ShiftModifier)) { QModelIndex idx = selectionModel()->currentIndex(); if (idx.isValid()) { TabPosition pos = idx.data(LocationCompleterModel::TabPositionRole).value(); if (pos.windowIndex != -1) { activateTab(pos); return true; } } } break; case Qt::Key_End: case Qt::Key_Home: if (keyEvent->modifiers() & Qt::ControlModifier) { return false; } break; case Qt::Key_Escape: close(); return false; case Qt::Key_F4: if (keyEvent->modifiers() == Qt::AltModifier) { close(); return false; } break; case Qt::Key_Tab: case Qt::Key_Backtab: { Qt::Key k = keyEvent->key() == Qt::Key_Tab ? Qt::Key_Down : Qt::Key_Up; QKeyEvent ev(QKeyEvent::KeyPress, k, Qt::NoModifier); QApplication::sendEvent(this, &ev); return false; } case Qt::Key_Up: if (!curIndex.isValid()) { int rowCount = model()->rowCount(); QModelIndex lastIndex = model()->index(rowCount - 1, 0); setCurrentIndex(lastIndex); return true; } else if (curIndex.row() == 0) { setCurrentIndex(QModelIndex()); return true; } return false; case Qt::Key_Down: if (!curIndex.isValid()) { QModelIndex firstIndex = model()->index(0, 0); setCurrentIndex(firstIndex); return true; } else if (curIndex.row() == model()->rowCount() - 1) { setCurrentIndex(QModelIndex()); scrollToTop(); return true; } return false; case Qt::Key_Delete: if (viewport()->rect().contains(visualRect(curIndex)) && !curIndex.data(LocationCompleterModel::BookmarkRole).toBool()) { int id = curIndex.data(LocationCompleterModel::IdRole).toInt(); model()->removeRow(curIndex.row(), curIndex.parent()); mApp->history()->deleteHistoryEntry(id); return true; } break; case Qt::Key_PageUp: case Qt::Key_PageDown: return false; case Qt::Key_Shift: // don't switch if there is no hovered or selected index to not disturb typing if (qzSettings->showSwitchTab && (selectionModel()->currentIndex().isValid() || m_hoveredIndex.isValid())) { static_cast(itemDelegate())->drawSwitchToTab(false); viewport()->update(); return true; } break; } // switch (keyEvent->key()) (static_cast(focusProxy()))->event(keyEvent); return true; } case QEvent::KeyRelease: { QKeyEvent* keyEvent = static_cast(event); switch (keyEvent->key()) { case Qt::Key_Shift: if (qzSettings->showSwitchTab) { static_cast(itemDelegate())->drawSwitchToTab(true); viewport()->update(); return true; } } } case QEvent::Show: m_ignoreNextMouseMove = true; break; case QEvent::MouseButtonPress: if (!underMouse()) { close(); return true; } break; case QEvent::ShortcutOverride: case QEvent::InputMethod: QApplication::sendEvent(focusProxy(), event); break; default: break; } // switch (event->type()) return false; } void LocationCompleterView::close() { emit closed(); m_hoveredIndex = QPersistentModelIndex(); QListView::hide(); verticalScrollBar()->setValue(0); if (qzSettings->showSwitchTab) { static_cast(itemDelegate())->drawSwitchToTab(true); } } void LocationCompleterView::currentChanged(const QModelIndex ¤t, const QModelIndex &previous) { m_hoveredIndex = current; QListView::currentChanged(current, previous); viewport()->update(); } void LocationCompleterView::mouseMoveEvent(QMouseEvent* event) { if (m_ignoreNextMouseMove || !isVisible()) { m_ignoreNextMouseMove = false; QListView::mouseMoveEvent(event); return; } QModelIndex last = m_hoveredIndex; QModelIndex atCursor = indexAt(mapFromGlobal(QCursor::pos())); if (atCursor.isValid()) { m_hoveredIndex = atCursor; } if (last != atCursor) { viewport()->update(); } QListView::mouseMoveEvent(event); } void LocationCompleterView::mouseReleaseEvent(QMouseEvent* event) { if (qzSettings->showSwitchTab && !(event->modifiers() & Qt::ShiftModifier) && m_hoveredIndex.isValid()) { TabPosition pos = m_hoveredIndex.data(LocationCompleterModel::TabPositionRole).value(); if (pos.windowIndex != -1) { event->accept(); activateTab(pos); } else { QListView::mouseReleaseEvent(event); } } else { QListView::mouseReleaseEvent(event); } } void LocationCompleterView::activateTab(TabPosition pos) { QupZilla* win = mApp->mainWindows().at(pos.windowIndex); if (mApp->getWindow() != win || mApp->getWindow()->tabWidget()->currentIndex() != pos.tabIndex) { emit aboutToActivateTab(pos); close(); win->tabWidget()->setCurrentIndex(pos.tabIndex); win->show(); win->activateWindow(); win->raise(); } else { close(); win->weView()->setFocus(); } } qupzilla-1.6.0/src/lib/navigation/completer/locationcompleterview.h000066400000000000000000000032601226107126500256370ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef LOCATIONCOMPLETERVIEW_H #define LOCATIONCOMPLETERVIEW_H #include #include "qz_namespace.h" #include "locationcompletermodel.h" class QT_QUPZILLA_EXPORT LocationCompleterView : public QListView { Q_OBJECT public: explicit LocationCompleterView(); QPersistentModelIndex hoveredIndex() const; bool eventFilter(QObject* object, QEvent* event); signals: void closed(); void aboutToActivateTab(TabPosition pos); public slots: void close(); private slots: void currentChanged(const QModelIndex ¤t, const QModelIndex &previous); void activateTab(TabPosition pos); protected: void mouseMoveEvent(QMouseEvent* event); void mouseReleaseEvent(QMouseEvent* event); private: bool m_ignoreNextMouseMove; QPersistentModelIndex m_hoveredIndex; }; #endif // LOCATIONCOMPLETERVIEW_H qupzilla-1.6.0/src/lib/navigation/downicon.cpp000066400000000000000000000024551226107126500214070ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "downicon.h" #include DownIcon::DownIcon(QWidget* parent) : ClickableLabel(parent) { setObjectName("locationbar-down-icon"); setCursor(Qt::ArrowCursor); } void DownIcon::contextMenuEvent(QContextMenuEvent* ev) { // Prevent propagating to LocationBar ev->accept(); } void DownIcon::mousePressEvent(QMouseEvent* ev) { ClickableLabel::mousePressEvent(ev); // Prevent propagating to LocationBar ev->accept(); } qupzilla-1.6.0/src/lib/navigation/downicon.h000066400000000000000000000022511226107126500210460ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef DOWNICON_H #define DOWNICON_H #include "qz_namespace.h" #include "clickablelabel.h" class QT_QUPZILLA_EXPORT DownIcon : public ClickableLabel { public: explicit DownIcon(QWidget* parent = 0); private: void contextMenuEvent(QContextMenuEvent* ev); void mousePressEvent(QMouseEvent* ev); }; #endif // DOWNICON_H qupzilla-1.6.0/src/lib/navigation/goicon.cpp000066400000000000000000000024501226107126500210400ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "goicon.h" #include GoIcon::GoIcon(QWidget* parent) : ClickableLabel(parent) { setObjectName("locationbar-goicon"); setCursor(Qt::PointingHandCursor); } void GoIcon::contextMenuEvent(QContextMenuEvent* ev) { // Prevent propagating to LocationBar ev->accept(); } void GoIcon::mousePressEvent(QMouseEvent* ev) { ClickableLabel::mousePressEvent(ev); // Prevent propagating to LocationBar ev->accept(); } qupzilla-1.6.0/src/lib/navigation/goicon.h000066400000000000000000000022371226107126500205100ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef GOICON_H #define GOICON_H #include "qz_namespace.h" #include "clickablelabel.h" class QT_QUPZILLA_EXPORT GoIcon : public ClickableLabel { public: explicit GoIcon(QWidget* parent = 0); private: void contextMenuEvent(QContextMenuEvent* ev); void mousePressEvent(QMouseEvent* ev); }; #endif // GOICON_H qupzilla-1.6.0/src/lib/navigation/locationbar.cpp000066400000000000000000000545151226107126500220700ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "locationbar.h" #include "qupzilla.h" #include "tabbedwebview.h" #include "rssmanager.h" #include "mainapplication.h" #include "clickablelabel.h" #include "webpage.h" #include "tabwidget.h" #include "bookmarkicon.h" #include "progressbar.h" #include "statusbarmessage.h" #include "toolbutton.h" #include "searchenginesmanager.h" #include "siteicon.h" #include "goicon.h" #include "rssicon.h" #include "downicon.h" #include "qztools.h" #include "iconprovider.h" #include "qzsettings.h" #include "colors.h" #include "autofillicon.h" #include #include #include #include #include #include LocationBar::LocationBar(QupZilla* mainClass) : LineEdit(mainClass) , p_QupZilla(mainClass) , m_webView(0) , m_pasteAndGoAction(0) , m_clearAction(0) , m_rssIconVisible(false) , m_holdingAlt(false) , m_loadProgress(0) , m_progressVisible(false) , m_forcePaintEvent(false) , m_inlineCompletionVisible(false) , m_popupClosed(false) { setObjectName("locationbar"); setDragEnabled(true); m_bookmarkIcon = new BookmarkIcon(this); m_goIcon = new GoIcon(this); m_rssIcon = new RssIcon(this); m_siteIcon = new SiteIcon(p_QupZilla, this); m_autofillIcon = new AutoFillIcon(this); DownIcon* down = new DownIcon(this); // RTL Support // if we don't add 'm_siteIcon' by following code, then we should use suitable padding-left value // but then, when typing RTL text the layout dynamically changed and within RTL layout direction // padding-left is equivalent to padding-right and vice versa, and because style sheet is // not changed dynamically this create padding problems. addWidget(m_siteIcon, LineEdit::LeftSide); addWidget(m_autofillIcon, LineEdit::RightSide); addWidget(m_bookmarkIcon, LineEdit::RightSide); addWidget(m_rssIcon, LineEdit::RightSide); addWidget(m_goIcon, LineEdit::RightSide); addWidget(down, LineEdit::RightSide); m_completer.setLocationBar(this); connect(&m_completer, SIGNAL(showCompletion(QString)), this, SLOT(showCompletion(QString))); connect(&m_completer, SIGNAL(completionActivated()), this, SLOT(urlEnter())); connect(&m_completer, SIGNAL(popupClosed()), this, SLOT(completionPopupClosed())); connect(this, SIGNAL(textEdited(QString)), this, SLOT(textEdit())); connect(m_goIcon, SIGNAL(clicked(QPoint)), this, SLOT(urlEnter())); connect(down, SIGNAL(clicked(QPoint)), &m_completer, SLOT(showMostVisited())); connect(mApp->searchEnginesManager(), SIGNAL(activeEngineChanged()), this, SLOT(updatePlaceHolderText())); connect(mApp->searchEnginesManager(), SIGNAL(defaultEngineChanged()), this, SLOT(updatePlaceHolderText())); connect(mApp, SIGNAL(message(Qz::AppMessageType,bool)), SLOT(onMessage(Qz::AppMessageType,bool))); loadSettings(); clearIcon(); updatePlaceHolderText(); // Hide icons by default hideGoButton(); m_rssIcon->hide(); m_autofillIcon->hide(); } void LocationBar::setWebView(TabbedWebView* view) { m_webView = view; m_bookmarkIcon->setWebView(m_webView); m_rssIcon->setWebView(m_webView); m_siteIcon->setWebView(m_webView); m_autofillIcon->setWebView(m_webView); connect(m_webView, SIGNAL(loadStarted()), SLOT(onLoadStarted())); connect(m_webView, SIGNAL(loadProgress(int)), SLOT(onLoadProgress(int))); connect(m_webView, SIGNAL(loadFinished(bool)), SLOT(onLoadFinished())); } void LocationBar::setText(const QString &text) { LineEdit::setText(text); m_forcePaintEvent = true; setCursorPosition(0); } void LocationBar::updatePlaceHolderText() { QString engineName = qzSettings->searchWithDefaultEngine ? mApp->searchEnginesManager()->defaultEngine().name : mApp->searchEnginesManager()->activeEngine().name; setPlaceholderText(tr("Enter URL address or search on %1").arg(engineName)); } void LocationBar::showCompletion(const QString &newText) { m_inlineCompletionVisible = false; LineEdit::setText(newText); // Move cursor to the end end(false); } void LocationBar::completionPopupClosed() { m_inlineCompletionVisible = false; m_popupClosed = true; } QUrl LocationBar::createUrl() { QUrl urlToLoad; // Check for Search Engine shortcut int firstSpacePos = text().indexOf(QLatin1Char(' ')); if (firstSpacePos != -1) { QString shortcut = text().left(firstSpacePos); QString searchedString = QUrl::toPercentEncoding(text().mid(firstSpacePos).trimmed()); SearchEngine en = mApp->searchEnginesManager()->engineForShortcut(shortcut); if (!en.name.isEmpty()) { urlToLoad = QUrl::fromEncoded(en.url.replace(QLatin1String("%s"), searchedString).toUtf8()); } } if (m_inlineCompletionVisible) { urlToLoad = WebView::guessUrlFromString(text() + m_completer.domainCompletion()); } if (urlToLoad.isEmpty()) { QUrl guessedUrl = WebView::guessUrlFromString(text()); if (!guessedUrl.isEmpty()) { urlToLoad = guessedUrl; } else { urlToLoad = QUrl::fromEncoded(text().toUtf8()); } } return urlToLoad; } QString LocationBar::convertUrlToText(const QUrl &url) const { QString stringUrl = QzTools::urlEncodeQueryString(url); if (stringUrl == QLatin1String("qupzilla:speeddial") || stringUrl == QLatin1String("about:blank")) { stringUrl.clear(); } return stringUrl; } void LocationBar::urlEnter() { const QUrl url = createUrl(); const QString urlString = convertUrlToText(url); m_completer.closePopup(); m_webView->setFocus(); if (urlString != text()) { setText(convertUrlToText(url)); } emit loadUrl(url); } void LocationBar::textEdit() { if (!text().isEmpty()) { m_completer.complete(text()); m_inlineCompletionVisible = true; } else { m_completer.closePopup(); } showGoButton(); } void LocationBar::showGoButton() { m_rssIconVisible = m_rssIcon->isVisible(); m_bookmarkIcon->hide(); m_rssIcon->hide(); m_goIcon->show(); updateTextMargins(); } void LocationBar::hideGoButton() { m_rssIcon->setVisible(m_rssIconVisible); m_bookmarkIcon->show(); if (!qzSettings->alwaysShowGoIcon) { m_goIcon->hide(); } updateTextMargins(); } void LocationBar::showRSSIcon(bool state) { m_rssIcon->setVisible(state); updateTextMargins(); } void LocationBar::showUrl(const QUrl &url) { if (hasFocus() || url.isEmpty()) { return; } const QString stringUrl = convertUrlToText(url); if (stringUrl == text()) { return; } setText(stringUrl); hideGoButton(); m_bookmarkIcon->checkBookmark(url); } void LocationBar::siteIconChanged() { QIcon icon_ = m_webView->icon(); if (icon_.isNull()) { clearIcon(); } else { m_siteIcon->setIcon(QIcon(icon_.pixmap(16, 16))); } } void LocationBar::clearIcon() { m_siteIcon->setIcon(qIconProvider->emptyWebIcon()); } void LocationBar::setPrivacy(bool state) { m_siteIcon->setProperty("secured", QVariant(state)); m_siteIcon->style()->unpolish(m_siteIcon); m_siteIcon->style()->polish(m_siteIcon); setProperty("secured", QVariant(state)); style()->unpolish(this); style()->polish(this); } void LocationBar::pasteAndGo() { clear(); paste(); urlEnter(); } void LocationBar::contextMenuEvent(QContextMenuEvent* event) { Q_UNUSED(event) if (!m_pasteAndGoAction) { m_pasteAndGoAction = new QAction(QIcon::fromTheme("edit-paste"), tr("Paste And &Go"), this); m_pasteAndGoAction->setShortcut(QKeySequence("Ctrl+Shift+V")); connect(m_pasteAndGoAction, SIGNAL(triggered()), this, SLOT(pasteAndGo())); } if (!m_clearAction) { m_clearAction = new QAction(QIcon::fromTheme("edit-clear"), tr("Clear All"), this); connect(m_clearAction, SIGNAL(triggered()), this, SLOT(clear())); } QMenu* tempMenu = createStandardContextMenu(); QMenu menu(this); int i = 0; foreach (QAction* act, tempMenu->actions()) { menu.addAction(act); switch (i) { case 0: act->setIcon(QIcon::fromTheme("edit-undo")); break; case 1: act->setIcon(QIcon::fromTheme("edit-redo")); break; case 3: act->setIcon(QIcon::fromTheme("edit-cut")); break; case 4: act->setIcon(QIcon::fromTheme("edit-copy")); break; case 5: act->setIcon(QIcon::fromTheme("edit-paste")); menu.addAction(act); menu.addAction(m_pasteAndGoAction); break; case 6: act->setIcon(QIcon::fromTheme("edit-delete")); menu.addAction(act); menu.addAction(m_clearAction); break; case 8: act->setIcon(QIcon::fromTheme("edit-select-all")); break; } ++i; } m_pasteAndGoAction->setEnabled(!QApplication::clipboard()->text().isEmpty()); // Prevent choosing first option with double rightclick QPoint pos = event->globalPos(); QPoint p(pos.x(), pos.y() + 1); menu.exec(p); tempMenu->deleteLater(); } void LocationBar::focusInEvent(QFocusEvent* event) { if (m_webView) { const QString stringUrl = convertUrlToText(m_webView->url()); // Text has been edited, let's show go button if (stringUrl != text()) { showGoButton(); } } LineEdit::focusInEvent(event); } void LocationBar::dropEvent(QDropEvent* event) { if (event->mimeData()->hasUrls()) { QUrl dropUrl = event->mimeData()->urls().at(0); if (WebView::isUrlValid(dropUrl)) { setText(dropUrl.toString()); m_webView->setFocus(); emit loadUrl(dropUrl); QFocusEvent event(QFocusEvent::FocusOut); LineEdit::focusOutEvent(&event); return; } } else if (event->mimeData()->hasText()) { QUrl dropUrl = QUrl(event->mimeData()->text().trimmed()); if (WebView::isUrlValid(dropUrl)) { setText(dropUrl.toString()); m_webView->setFocus(); emit loadUrl(dropUrl); QFocusEvent event(QFocusEvent::FocusOut); LineEdit::focusOutEvent(&event); return; } } LineEdit::dropEvent(event); } void LocationBar::focusOutEvent(QFocusEvent* event) { LineEdit::focusOutEvent(event); if (event->reason() == Qt::PopupFocusReason || (!selectedText().isEmpty() && event->reason() != Qt::TabFocusReason)) { return; } m_popupClosed = false; m_forcePaintEvent = true; setCursorPosition(0); hideGoButton(); if (text().trimmed().isEmpty()) { clear(); } } void LocationBar::keyPressEvent(QKeyEvent* event) { switch (event->key()) { case Qt::Key_V: if (event->modifiers() == (Qt::ControlModifier | Qt::ShiftModifier)) { pasteAndGo(); event->accept(); return; } break; case Qt::Key_A: if (event->modifiers() == Qt::ControlModifier && m_inlineCompletionVisible) { m_inlineCompletionVisible = false; } break; case Qt::Key_Down: m_completer.complete(text()); break; case Qt::Key_End: case Qt::Key_Right: { const QString completionText = m_completer.domainCompletion(); if (m_inlineCompletionVisible && !completionText.isEmpty()) { m_inlineCompletionVisible = false; setText(text() + completionText); setCursorPosition(text().size()); m_completer.closePopup(); } if (m_completer.isPopupVisible()) { m_completer.closePopup(); } break; } case Qt::Key_Left: if (m_completer.isPopupVisible()) { m_completer.closePopup(); } break; case Qt::Key_Delete: if (m_inlineCompletionVisible) { m_inlineCompletionVisible = false; update(); event->accept(); } break; case Qt::Key_Escape: m_webView->setFocus(); showUrl(m_webView->url()); event->accept(); break; case Qt::Key_Alt: m_holdingAlt = true; break; case Qt::Key_Return: case Qt::Key_Enter: switch (event->modifiers()) { case Qt::ControlModifier: setText(text().append(QLatin1String(".com"))); urlEnter(); m_holdingAlt = false; break; case Qt::AltModifier: m_completer.closePopup(); p_QupZilla->tabWidget()->addView(createUrl()); m_holdingAlt = false; break; default: urlEnter(); m_holdingAlt = false; } break; case Qt::Key_0: case Qt::Key_1: case Qt::Key_2: case Qt::Key_3: case Qt::Key_4: case Qt::Key_5: case Qt::Key_6: case Qt::Key_7: case Qt::Key_8: case Qt::Key_9: if (event->modifiers() & Qt::AltModifier || event->modifiers() & Qt::ControlModifier) { event->ignore(); m_holdingAlt = false; return; } break; default: m_holdingAlt = false; } LineEdit::keyPressEvent(event); } void LocationBar::keyReleaseEvent(QKeyEvent* event) { QString localDomain = tr(".co.uk", "Append domain name on ALT + Enter = Should be different for every country"); if (event->key() == Qt::Key_Alt && m_holdingAlt && qzSettings->addCountryWithAlt && !text().endsWith(localDomain) && !text().endsWith(QLatin1Char('/'))) { LineEdit::setText(text().append(localDomain)); } LineEdit::keyReleaseEvent(event); } void LocationBar::onLoadStarted() { m_progressVisible = true; m_autofillIcon->hide(); } void LocationBar::onLoadProgress(int progress) { if (qzSettings->showLoadingProgress) { m_loadProgress = progress; update(); } } void LocationBar::onLoadFinished() { if (qzSettings->showLoadingProgress) { QTimer::singleShot(700, this, SLOT(hideProgress())); } WebPage* page = qobject_cast(m_webView->page()); if (page && page->hasMultipleUsernames()) { m_autofillIcon->setFormData(page->autoFillData()); m_autofillIcon->show(); } } void LocationBar::loadSettings() { Settings settings; settings.beginGroup("AddressBar"); m_progressStyle = static_cast(settings.value("ProgressStyle", 0).toInt()); bool customColor = settings.value("UseCustomProgressColor", false).toBool(); m_progressColor = customColor ? settings.value("CustomProgressColor", palette().color(QPalette::Highlight)).value() : QColor(); settings.endGroup(); } void LocationBar::onMessage(Qz::AppMessageType msg, bool state) { Q_UNUSED(state) if (!qzSettings->showLoadingProgress) { return; } if (msg == Qz::AM_ReloadSettings) { loadSettings(); } } void LocationBar::hideProgress() { if (qzSettings->showLoadingProgress && m_loadProgress == 100) { m_progressVisible = false; update(); } } void LocationBar::paintEvent(QPaintEvent* event) { QStyleOptionFrameV3 option; initStyleOption(&option); int lm, tm, rm, bm; getTextMargins(&lm, &tm, &rm, &bm); QRect contentsRect = style()->subElementRect(QStyle::SE_LineEditContents, &option, this); contentsRect.adjust(lm, tm, -rm, -bm); const QFontMetrics fm = fontMetrics(); const int x = contentsRect.x() + 4; const int y = contentsRect.y() + (contentsRect.height() - fm.height() + 1) / 2; const int width = contentsRect.width() - 6; const int height = fm.height(); const QRect textRect(x, y, width, height); QTextOption opt; opt.setWrapMode(QTextOption::NoWrap); QPainter p(this); p.setRenderHint(QPainter::Antialiasing, true); p.setRenderHint(QPainter::TextAntialiasing, true); if (hasFocus() && m_inlineCompletionVisible) { // Draw inline domain completion if available const QString completionText = m_completer.domainCompletion(); if (!completionText.isEmpty()) { QRect completionRect = textRect; completionRect.setX(completionRect.x() + fm.width(text()) + 1); completionRect.setWidth(fm.width(completionText) + 1); style()->drawPrimitive(QStyle::PE_PanelLineEdit, &option, &p, this); // Text part p.drawText(textRect, text(), opt); // Completion part p.fillRect(completionRect, palette().color(QPalette::Highlight)); p.setPen(palette().color(QPalette::HighlightedText)); p.drawText(completionRect, completionText, opt); return; } } if (m_completer.isPopupVisible() && !m_completer.showingMostVisited()) { // We need to draw cursor when popup is visible // But don't paint it if we are just showing most visited sites const int cursorWidth = style()->pixelMetric(QStyle::PM_TextCursorWidth, &option, this); const int cursorHeight = fm.height(); QString textPart = text().left(cursorPosition()); int cursorXpos = x + fontMetrics().width(textPart); QRect cursor = cursorRect(); cursor.setX(cursorXpos + 1); cursor.setWidth(cursorWidth); cursor.setHeight(cursorHeight); style()->drawPrimitive(QStyle::PE_PanelLineEdit, &option, &p, this); QRect actualTextRect = textRect; actualTextRect.setWidth(fontMetrics().width(text()) + 1); // When popup is visible, Ctrl + A (Select All) is the only way to select text if (selectedText() == text()) { p.fillRect(actualTextRect, palette().color(QPalette::Highlight)); p.setPen(palette().color(QPalette::HighlightedText)); } p.drawText(actualTextRect, text(), opt); if (textRect.contains(cursor.center().x(), cursor.center().y())) { p.fillRect(cursor, option.palette.text().color()); } return; } if (hasFocus() || text().isEmpty() || m_forcePaintEvent) { LineEdit::paintEvent(event); if (m_forcePaintEvent) { m_forcePaintEvent = false; update(); } return; } style()->drawPrimitive(QStyle::PE_PanelLineEdit, &option, &p, this); QPen oldPen = p.pen(); if (qzSettings->showLoadingProgress && m_progressVisible) { QColor bg = m_progressColor; if (!bg.isValid() || bg.alpha() == 0) { bg = Colors::mid(palette().color(QPalette::Base), palette().color(QPalette::Text), m_progressStyle > 0 ? 4 : 8, 1); } p.setBrush(QBrush(bg)); QPen outlinePen(bg.darker(110), 0.8); p.setPen(outlinePen); switch (m_progressStyle) { case ProgressFilled: { QRect bar = contentsRect.adjusted(0, 1, 0, -1); bar.setWidth(bar.width() * m_loadProgress / 100); const int roundness = bar.height() / 4.0; p.drawRoundedRect(bar, roundness, roundness); break; } case ProgressBottom: { outlinePen.setWidthF(0.3); outlinePen.setColor(outlinePen.color().darker(130)); p.setPen(outlinePen); QRect bar(contentsRect.x(), contentsRect.bottom() - 3, contentsRect.width() * m_loadProgress / 100.0, 3); p.drawRoundedRect(bar, 1, 1); break; } case ProgressTop: { outlinePen.setWidthF(0.3); outlinePen.setColor(outlinePen.color().darker(130)); p.setPen(outlinePen); QRect bar(contentsRect.x(), contentsRect.top() + 1, contentsRect.width() * m_loadProgress / 100.0, 3); p.drawRoundedRect(bar, 1, 1); break; } default: break; } } p.setPen(oldPen); const QString hostName = m_webView->url().host(); QString currentText = text(); QRect currentRect = textRect; if (!hostName.isEmpty()) { const int hostPos = currentText.indexOf(hostName); if (hostPos > 0) { QPen lightPen = oldPen; QColor lightColor = Colors::mid(palette().color(QPalette::Base), palette().color(QPalette::Text), 1, 1); lightPen.setColor(lightColor); p.setPen(lightPen); currentText = text().mid(0, hostPos); currentRect.setWidth(fm.width(currentText)); p.drawText(currentRect, currentText, opt); p.setPen(oldPen); currentRect.setX(currentRect.x() + currentRect.width()); const int hostWidth = fm.width(hostName); currentRect.setWidth(hostWidth); p.drawText(currentRect, hostName, opt); p.setFont(font()); currentText = text().mid(hostPos + hostName.length()); currentRect.setX(currentRect.x() + hostWidth); currentRect.setWidth(textRect.width() - currentRect.x() + textRect.x()); p.setPen(lightPen); if (currentText.isRightToLeft()) { // Insert unicode control characters: prepend LRE then append LRM+PDF currentText.prepend(QChar(0x202A)).append(QChar(0x200E)).append(QChar(0x202C)); } } } p.drawText(currentRect, currentText, opt); } LocationBar::~LocationBar() { } qupzilla-1.6.0/src/lib/navigation/locationbar.h000066400000000000000000000065121226107126500215270ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef LOCATIONBAR_H #define LOCATIONBAR_H #include #include "qz_namespace.h" #include "lineedit.h" #include "completer/locationcompleter.h" class QupZilla; class LineEdit; class LocationCompleter; class ClickableLabel; class TabbedWebView; class BookmarkIcon; class SiteIcon; class GoIcon; class RssIcon; class AutoFillIcon; class QT_QUPZILLA_EXPORT LocationBar : public LineEdit { Q_OBJECT Q_PROPERTY(QSize fixedsize READ size WRITE setFixedSize) Q_PROPERTY(int fixedwidth READ width WRITE setFixedWidth) Q_PROPERTY(int fixedheight READ height WRITE setFixedHeight) public: explicit LocationBar(QupZilla* mainClass); ~LocationBar(); void setWebView(TabbedWebView* view); TabbedWebView* webView() { return m_webView; } signals: void loadUrl(const QUrl &url); public slots: void showUrl(const QUrl &url); void setText(const QString &text); protected: void paintEvent(QPaintEvent* event); private slots: void textEdit(); void urlEnter(); void pasteAndGo(); void clearIcon(); void siteIconChanged(); void setPrivacy(bool state); void showRSSIcon(bool state); void updatePlaceHolderText(); void showCompletion(const QString &newText); void completionPopupClosed(); void onLoadStarted(); void onLoadProgress(int progress); void onLoadFinished(); void hideProgress(); void onMessage(Qz::AppMessageType, bool); private: enum ProgressStyle { ProgressFilled, ProgressBottom, ProgressTop }; void contextMenuEvent(QContextMenuEvent* event); void focusInEvent(QFocusEvent* event); void focusOutEvent(QFocusEvent* event); void keyPressEvent(QKeyEvent* event); void keyReleaseEvent(QKeyEvent* event); void dropEvent(QDropEvent* event); QUrl createUrl(); QString convertUrlToText(const QUrl &url) const; void showGoButton(); void hideGoButton(); void loadSettings(); LocationCompleter m_completer; BookmarkIcon* m_bookmarkIcon; GoIcon* m_goIcon; RssIcon* m_rssIcon; SiteIcon* m_siteIcon; AutoFillIcon* m_autofillIcon; QupZilla* p_QupZilla; TabbedWebView* m_webView; QAction* m_pasteAndGoAction; QAction* m_clearAction; bool m_rssIconVisible; bool m_holdingAlt; int m_loadProgress; bool m_progressVisible; ProgressStyle m_progressStyle; QColor m_progressColor; bool m_forcePaintEvent; bool m_inlineCompletionVisible; bool m_popupClosed; }; #endif // LOCATIONBAR_H qupzilla-1.6.0/src/lib/navigation/locationbarpopup.cpp000066400000000000000000000034551226107126500231510ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 Franz Fellner * David Rosca * * 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 3 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, see . * ============================================================ */ #include "locationbarpopup.h" #include LocationBarPopup::LocationBarPopup(QWidget* parent) : QFrame(parent, Qt::Popup) , m_alignment(Qt::AlignRight) { setAttribute(Qt::WA_DeleteOnClose); setFrameStyle(QFrame::StyledPanel | QFrame::Plain); setLineWidth(1); setMidLineWidth(2); } void LocationBarPopup::showAt(QWidget* parent) { if (!parent) { return; } // Calculate sizes before showing layout()->invalidate(); layout()->activate(); QPoint p = parent->mapToGlobal(QPoint(0, 0)); if (m_alignment == Qt::AlignRight) { p.setX(p.x() + parent->width() - width()); } p.setY(p.y() + parent->height()); move(p); QFrame::show(); } void LocationBarPopup::setPopupAlignment(Qt::Alignment alignment) { m_alignment = alignment; } Qt::Alignment LocationBarPopup::popupAlignment() const { return m_alignment; } qupzilla-1.6.0/src/lib/navigation/locationbarpopup.h000066400000000000000000000025101226107126500226050ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 Franz Fellner * David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef LOCATIONBARPOPUP_H #define LOCATIONBARPOPUP_H #include #include "qz_namespace.h" class QT_QUPZILLA_EXPORT LocationBarPopup : public QFrame { public: explicit LocationBarPopup(QWidget* parent); void showAt(QWidget* parent); void setPopupAlignment(Qt::Alignment alignment); Qt::Alignment popupAlignment() const; private: Qt::Alignment m_alignment; }; #endif // LOCATIONBARPOPUP_H qupzilla-1.6.0/src/lib/navigation/navigationbar.cpp000066400000000000000000000312621226107126500224110ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "navigationbar.h" #include "toolbutton.h" #include "qupzilla.h" #include "mainapplication.h" #include "iconprovider.h" #include "websearchbar.h" #include "reloadstopbutton.h" #include "webhistorywrapper.h" #include "enhancedmenu.h" #include "tabwidget.h" #include "tabbedwebview.h" #include "webpage.h" #include "qzsettings.h" #include #include #include #include #include #include QString NavigationBar::titleForUrl(QString title, const QUrl &url) { if (title.isEmpty()) { title = url.toString(QUrl::RemoveFragment); } if (title.isEmpty()) { return NavigationBar::tr("No Named Page"); } if (title.length() > 40) { title.truncate(40); title += ".."; } return title; } QIcon NavigationBar::iconForPage(const QUrl &url, const QIcon &sIcon) { QIcon icon; icon.addPixmap(url.scheme() == QLatin1String("qupzilla") ? QIcon(":icons/qupzilla.png").pixmap(16, 16) : _iconForUrl(url).pixmap(16, 16)); icon.addPixmap(sIcon.pixmap(16, 16), QIcon::Active); return icon; } static inline void setButtonIconSize(ToolButton* button) { QStyleOption opt; opt.initFrom(button); int size = button->style()->pixelMetric(QStyle::PM_ToolBarIconSize, &opt, button); button->setIconSize(QSize(size, size)); } NavigationBar::NavigationBar(QupZilla* mainClass) : QWidget(mainClass) , p_QupZilla(mainClass) { setObjectName("navigationbar"); m_layout = new QHBoxLayout(this); m_layout->setMargin(style()->pixelMetric(QStyle::PM_ToolBarItemMargin, 0, this)); m_layout->setSpacing(style()->pixelMetric(QStyle::PM_ToolBarItemSpacing, 0, this)); setLayout(m_layout); m_buttonBack = new ToolButton(this); m_buttonBack->setObjectName("navigation-button-back"); m_buttonBack->setToolTip(tr("Back")); m_buttonBack->setToolButtonStyle(Qt::ToolButtonIconOnly); m_buttonBack->setAutoRaise(true); m_buttonBack->setEnabled(false); m_buttonBack->setFocusPolicy(Qt::NoFocus); setButtonIconSize(m_buttonBack); m_buttonNext = new ToolButton(this); m_buttonNext->setObjectName("navigation-button-next"); m_buttonNext->setToolTip(tr("Forward")); m_buttonNext->setToolButtonStyle(Qt::ToolButtonIconOnly); m_buttonNext->setAutoRaise(true); m_buttonNext->setEnabled(false); m_buttonNext->setFocusPolicy(Qt::NoFocus); setButtonIconSize(m_buttonNext); QHBoxLayout* backNextLayout = new QHBoxLayout(); backNextLayout->setContentsMargins(0, 0, 0, 0); backNextLayout->setSpacing(0); backNextLayout->addWidget(m_buttonBack); backNextLayout->addWidget(m_buttonNext); m_reloadStop = new ReloadStopButton(this); setButtonIconSize(m_reloadStop->buttonReload()); setButtonIconSize(m_reloadStop->buttonStop()); m_buttonHome = new ToolButton(this); m_buttonHome->setObjectName("navigation-button-home"); m_buttonHome->setToolTip(tr("Home")); m_buttonHome->setToolButtonStyle(Qt::ToolButtonIconOnly); m_buttonHome->setAutoRaise(true); m_buttonHome->setFocusPolicy(Qt::NoFocus); setButtonIconSize(m_buttonHome); m_buttonAddTab = new ToolButton(this); m_buttonAddTab->setObjectName("navigation-button-addtab"); m_buttonAddTab->setToolTip(tr("New Tab")); m_buttonAddTab->setToolButtonStyle(Qt::ToolButtonIconOnly); m_buttonAddTab->setAutoRaise(true); m_buttonAddTab->setFocusPolicy(Qt::NoFocus); setButtonIconSize(m_buttonAddTab); m_menuBack = new Menu(this); m_buttonBack->setMenu(m_menuBack); m_menuForward = new Menu(this); m_buttonNext->setMenu(m_menuForward); #ifndef Q_OS_MAC m_supMenu = new ToolButton(this); m_supMenu->setObjectName("navigation-button-supermenu"); m_supMenu->setPopupMode(QToolButton::InstantPopup); m_supMenu->setToolTip(tr("Main Menu")); m_supMenu->setAutoRaise(true); m_supMenu->setFocusPolicy(Qt::NoFocus); m_supMenu->setMenu(p_QupZilla->superMenu()); m_supMenu->setShowMenuInside(true); setButtonIconSize(m_supMenu); #endif m_searchLine = new WebSearchBar(p_QupZilla); m_navigationSplitter = new QSplitter(this); m_navigationSplitter->addWidget(p_QupZilla->tabWidget()->locationBars()); m_navigationSplitter->addWidget(m_searchLine); m_navigationSplitter->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Maximum); m_navigationSplitter->setCollapsible(0, false); m_exitFullscreen = new ToolButton(); m_exitFullscreen->setText(tr("Exit Fullscreen")); m_exitFullscreen->setToolTip(tr("Exit Fullscreen")); m_exitFullscreen->setAutoRaise(true); m_exitFullscreen->setVisible(false); m_layout->addLayout(backNextLayout); m_layout->addWidget(m_reloadStop); m_layout->addWidget(m_buttonHome); m_layout->addWidget(m_buttonAddTab); m_layout->addWidget(m_navigationSplitter); #ifndef Q_OS_MAC m_layout->addWidget(m_supMenu); #endif m_layout->addWidget(m_exitFullscreen); setContextMenuPolicy(Qt::CustomContextMenu); connect(this, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(contextMenuRequested(QPoint))); connect(m_menuBack, SIGNAL(aboutToShow()), this, SLOT(aboutToShowHistoryBackMenu())); connect(m_menuForward, SIGNAL(aboutToShow()), this, SLOT(aboutToShowHistoryNextMenu())); connect(m_buttonBack, SIGNAL(clicked()), this, SLOT(goBack())); connect(m_buttonBack, SIGNAL(middleMouseClicked()), this, SLOT(goBackInNewTab())); connect(m_buttonBack, SIGNAL(controlClicked()), this, SLOT(goBackInNewTab())); connect(m_buttonNext, SIGNAL(clicked()), this, SLOT(goForward())); connect(m_buttonNext, SIGNAL(middleMouseClicked()), this, SLOT(goForwardInNewTab())); connect(m_buttonNext, SIGNAL(controlClicked()), this, SLOT(goForwardInNewTab())); connect(m_reloadStop->buttonStop(), SIGNAL(clicked()), p_QupZilla, SLOT(stop())); connect(m_reloadStop->buttonReload(), SIGNAL(clicked()), p_QupZilla, SLOT(reload())); connect(m_buttonHome, SIGNAL(clicked()), p_QupZilla, SLOT(goHome())); connect(m_buttonHome, SIGNAL(middleMouseClicked()), p_QupZilla, SLOT(goHomeInNewTab())); connect(m_buttonHome, SIGNAL(controlClicked()), p_QupZilla, SLOT(goHomeInNewTab())); connect(m_buttonAddTab, SIGNAL(clicked()), p_QupZilla, SLOT(addTab())); connect(m_buttonAddTab, SIGNAL(middleMouseClicked()), p_QupZilla->tabWidget(), SLOT(addTabFromClipboard())); connect(m_exitFullscreen, SIGNAL(clicked(bool)), p_QupZilla, SLOT(toggleFullScreen(bool))); } void NavigationBar::setSplitterSizes(int locationBar, int websearchBar) { QList sizes; if (locationBar == 0) { int splitterWidth = m_navigationSplitter->width(); sizes << (int)((double)splitterWidth * .80) << (int)((double)splitterWidth * .20); } else { sizes << locationBar << websearchBar; } m_navigationSplitter->setSizes(sizes); } void NavigationBar::showReloadButton() { m_reloadStop->showReloadButton(); } void NavigationBar::showStopButton() { m_reloadStop->showStopButton(); } void NavigationBar::setSuperMenuVisible(bool visible) { m_supMenu->setVisible(visible); } int NavigationBar::layoutMargin() const { return m_layout->margin(); } void NavigationBar::setLayoutMargin(int margin) { m_layout->setMargin(margin); } int NavigationBar::layoutSpacing() const { return m_layout->spacing(); } void NavigationBar::setLayoutSpacing(int spacing) { m_layout->setSpacing(spacing); } void NavigationBar::aboutToShowHistoryBackMenu() { if (!m_menuBack || !p_QupZilla->weView()) { return; } m_menuBack->clear(); QWebHistory* history = p_QupZilla->weView()->history(); int curindex = history->currentItemIndex(); int count = 0; for (int i = curindex - 1; i >= 0; i--) { QWebHistoryItem item = history->itemAt(i); if (item.isValid()) { QString title = titleForUrl(item.title(), item.url()); const QIcon icon = iconForPage(item.url(), qIconProvider->standardIcon(QStyle::SP_ArrowBack)); Action* act = new Action(icon, title); act->setData(i); connect(act, SIGNAL(triggered()), this, SLOT(goAtHistoryIndex())); connect(act, SIGNAL(middleClicked()), this, SLOT(goAtHistoryIndexInNewTab())); m_menuBack->addAction(act); } count++; if (count == 20) { break; } } m_menuBack->addSeparator(); m_menuBack->addAction(tr("Clear history"), this, SLOT(clearHistory())); } void NavigationBar::aboutToShowHistoryNextMenu() { if (!m_menuForward || !p_QupZilla->weView()) { return; } m_menuForward->clear(); QWebHistory* history = p_QupZilla->weView()->history(); int curindex = history->currentItemIndex(); int count = 0; for (int i = curindex + 1; i < history->count(); i++) { QWebHistoryItem item = history->itemAt(i); if (item.isValid()) { QString title = titleForUrl(item.title(), item.url()); const QIcon icon = iconForPage(item.url(), qIconProvider->standardIcon(QStyle::SP_ArrowForward)); Action* act = new Action(icon, title); act->setData(i); connect(act, SIGNAL(triggered()), this, SLOT(goAtHistoryIndex())); connect(act, SIGNAL(middleClicked()), this, SLOT(goAtHistoryIndexInNewTab())); m_menuForward->addAction(act); } count++; if (count == 20) { break; } } m_menuForward->addSeparator(); m_menuForward->addAction(tr("Clear history"), this, SLOT(clearHistory())); } void NavigationBar::clearHistory() { QWebHistory* history = p_QupZilla->weView()->page()->history(); history->clear(); refreshHistory(); } void NavigationBar::contextMenuRequested(const QPoint &pos) { p_QupZilla->popupToolbarsMenu(mapToGlobal(pos)); } void NavigationBar::goAtHistoryIndex() { QWebHistory* history = p_QupZilla->weView()->page()->history(); if (QAction* action = qobject_cast(sender())) { history->goToItem(history->itemAt(action->data().toInt())); } refreshHistory(); } void NavigationBar::goAtHistoryIndexInNewTab(int index) { if (QAction* action = qobject_cast(sender())) { index = action->data().toInt(); } if (index == -1) { return; } TabWidget* tabWidget = p_QupZilla->tabWidget(); int tabIndex = tabWidget->duplicateTab(tabWidget->currentIndex()); QWebHistory* history = p_QupZilla->weView(tabIndex)->page()->history(); history->goToItem(history->itemAt(index)); if (qzSettings->newTabPosition == Qz::NT_SelectedTab) { tabWidget->setCurrentIndex(tabIndex); } } void NavigationBar::refreshHistory() { if (mApp->isClosing() || p_QupZilla->isClosing() || !p_QupZilla->weView()) { return; } QWebHistory* history = p_QupZilla->weView()->page()->history(); m_buttonBack->setEnabled(history->canGoBack()); m_buttonNext->setEnabled(history->canGoForward()); } void NavigationBar::goBack() { QWebHistory* history = p_QupZilla->weView()->page()->history(); history->back(); } void NavigationBar::goBackInNewTab() { QWebHistory* history = p_QupZilla->weView()->page()->history(); if (!history->canGoBack()) { return; } int itemIndex = WebHistoryWrapper::indexOfItem(history->items(), history->backItem()); if (itemIndex == -1) { return; } goAtHistoryIndexInNewTab(itemIndex); } void NavigationBar::goForward() { QWebHistory* history = p_QupZilla->weView()->page()->history(); history->forward(); } void NavigationBar::goForwardInNewTab() { QWebHistory* history = p_QupZilla->weView()->page()->history(); if (!history->canGoForward()) { return; } int itemIndex = WebHistoryWrapper::indexOfItem(history->items(), history->forwardItem()); if (itemIndex == -1) { return; } goAtHistoryIndexInNewTab(itemIndex); } qupzilla-1.6.0/src/lib/navigation/navigationbar.h000066400000000000000000000060341226107126500220550ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef NAVIGATIONBAR_H #define NAVIGATIONBAR_H #include #include "qz_namespace.h" class QHBoxLayout; class QSplitter; class ToolButton; class WebSearchBar; class QupZilla; class ReloadStopButton; class Menu; class QUrl; class QT_QUPZILLA_EXPORT NavigationBar : public QWidget { Q_OBJECT public: explicit NavigationBar(QupZilla* mainClass); Q_PROPERTY(int layoutMargin READ layoutMargin WRITE setLayoutMargin) Q_PROPERTY(int layoutSpacing READ layoutSpacing WRITE setLayoutSpacing) void setSplitterSizes(int locationBar, int websearchBar); void showReloadButton(); void showStopButton(); ToolButton* buttonBack() { return m_buttonBack; } ToolButton* buttonNext() { return m_buttonNext; } ToolButton* buttonHome() { return m_buttonHome; } ToolButton* buttonAddTab() { return m_buttonAddTab; } ToolButton* buttonExitFullscreen() { return m_exitFullscreen; } ReloadStopButton* buttonReloadStop() { return m_reloadStop; } WebSearchBar* searchLine() { return m_searchLine; } QSplitter* splitter() { return m_navigationSplitter; } void setSuperMenuVisible(bool visible); int layoutMargin() const; void setLayoutMargin(int margin); int layoutSpacing() const; void setLayoutSpacing(int spacing); signals: public slots: void refreshHistory(); void goBack(); void goBackInNewTab(); void goForward(); void goForwardInNewTab(); private slots: void aboutToShowHistoryNextMenu(); void aboutToShowHistoryBackMenu(); void goAtHistoryIndex(); void goAtHistoryIndexInNewTab(int index = -1); void clearHistory(); void contextMenuRequested(const QPoint &pos); private: QString titleForUrl(QString title, const QUrl &url); QIcon iconForPage(const QUrl &url, const QIcon &sIcon); QupZilla* p_QupZilla; QHBoxLayout* m_layout; QSplitter* m_navigationSplitter; ToolButton* m_buttonBack; ToolButton* m_buttonNext; ToolButton* m_buttonHome; ToolButton* m_buttonAddTab; ToolButton* m_supMenu; ToolButton* m_exitFullscreen; ReloadStopButton* m_reloadStop; Menu* m_menuBack; Menu* m_menuForward; WebSearchBar* m_searchLine; }; #endif // NAVIGATIONBAR_H qupzilla-1.6.0/src/lib/navigation/navigationcontainer.cpp000066400000000000000000000027571226107126500236360ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "navigationcontainer.h" #include "qzsettings.h" #include "qupzilla.h" #include NavigationContainer::NavigationContainer(QupZilla* parent) : QWidget(parent) , p_QupZilla(parent) { } void NavigationContainer::paintEvent(QPaintEvent* event) { QWidget::paintEvent(event); if (p_QupZilla->tabsOnTop()) { // Draw line at the bottom of navigation bar if tabs are on top // To visually distinguish navigation bar from the page QPainter p(this); QRect lineRect(0, height() - 1, width(), 1); QColor c = p_QupZilla->palette().window().color().darker(125); p.fillRect(lineRect, c); } } qupzilla-1.6.0/src/lib/navigation/navigationcontainer.h000066400000000000000000000023031226107126500232660ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef NAVIGATIONCONTAINER_H #define NAVIGATIONCONTAINER_H #include #include "qzsettings.h" class QupZilla; class QT_QUPZILLA_EXPORT NavigationContainer : public QWidget { public: explicit NavigationContainer(QupZilla* parent = 0); private: void paintEvent(QPaintEvent* event); QupZilla* p_QupZilla; }; #endif // NAVIGATIONCONTAINER_H qupzilla-1.6.0/src/lib/navigation/reloadstopbutton.cpp000066400000000000000000000042431226107126500231740ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "reloadstopbutton.h" #include ReloadStopButton::ReloadStopButton(QWidget* parent) : QWidget(parent) { QHBoxLayout* lay = new QHBoxLayout(this); setLayout(lay); m_buttonStop = new ToolButton(this); m_buttonStop->setObjectName("navigation-button-stop"); m_buttonStop->setToolTip(ToolButton::tr("Stop")); m_buttonStop->setToolButtonStyle(Qt::ToolButtonIconOnly); m_buttonStop->setVisible(false); m_buttonStop->setAutoRaise(true); m_buttonStop->setFocusPolicy(Qt::NoFocus); m_buttonReload = new ToolButton(this); m_buttonReload->setObjectName("navigation-button-reload"); m_buttonReload->setToolTip(ToolButton::tr("Reload")); m_buttonReload->setToolButtonStyle(Qt::ToolButtonIconOnly); m_buttonReload->setAutoRaise(true); m_buttonReload->setFocusPolicy(Qt::NoFocus); lay->addWidget(m_buttonStop); lay->addWidget(m_buttonReload); lay->setContentsMargins(0, 0, 0, 0); lay->setSpacing(0); } void ReloadStopButton::showReloadButton() { setUpdatesEnabled(false); m_buttonStop->hide(); m_buttonReload->show(); setUpdatesEnabled(true); } void ReloadStopButton::showStopButton() { setUpdatesEnabled(false); m_buttonReload->hide(); m_buttonStop->show(); setUpdatesEnabled(true); } ReloadStopButton::~ReloadStopButton() { } qupzilla-1.6.0/src/lib/navigation/reloadstopbutton.h000066400000000000000000000025511226107126500226410ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef RELOADSTOPBUTTON_H #define RELOADSTOPBUTTON_H #include "qz_namespace.h" #include "toolbutton.h" class QT_QUPZILLA_EXPORT ReloadStopButton : public QWidget { public: explicit ReloadStopButton(QWidget* parent = 0); ~ReloadStopButton(); void showStopButton(); void showReloadButton(); ToolButton* buttonStop() { return m_buttonStop; } ToolButton* buttonReload() { return m_buttonReload; } private: ToolButton* m_buttonStop; ToolButton* m_buttonReload; }; #endif // RELOADSTOPBUTTON_H qupzilla-1.6.0/src/lib/navigation/siteicon.cpp000066400000000000000000000061531226107126500214030ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "siteicon.h" #include "siteinfowidget.h" #include "locationbar.h" #include "tabbedwebview.h" #include "qztools.h" #include #include #include #include SiteIcon::SiteIcon(QupZilla* window, LocationBar* parent) : ToolButton(parent) , p_QupZilla(window) , m_locationBar(parent) , m_view(0) { setObjectName("locationbar-siteicon"); setToolButtonStyle(Qt::ToolButtonIconOnly); setCursor(Qt::ArrowCursor); setToolTip(LocationBar::tr("Show information about this page")); setFocusPolicy(Qt::ClickFocus); connect(this, SIGNAL(clicked()), this, SLOT(iconClicked())); } void SiteIcon::setWebView(WebView* view) { m_view = view; } void SiteIcon::iconClicked() { if (!m_view || !p_QupZilla) { return; } QUrl url = m_view->url(); if (url.isEmpty() || url.scheme() == QLatin1String("qupzilla")) { return; } SiteInfoWidget* info = new SiteInfoWidget(p_QupZilla); info->showAt(parentWidget()); } void SiteIcon::contextMenuEvent(QContextMenuEvent* e) { // Prevent propagating to LocationBar e->accept(); } void SiteIcon::mousePressEvent(QMouseEvent* e) { if (e->buttons() & Qt::LeftButton) { m_dragStartPosition = e->pos(); } // Prevent propagating to LocationBar e->accept(); ToolButton::mousePressEvent(e); } void SiteIcon::mouseMoveEvent(QMouseEvent* e) { if (!m_locationBar || !(e->buttons() & Qt::LeftButton)) { ToolButton::mouseMoveEvent(e); return; } int manhattanLength = (e->pos() - m_dragStartPosition).manhattanLength(); if (manhattanLength <= QApplication::startDragDistance()) { ToolButton::mouseMoveEvent(e); return; } const QUrl url = m_locationBar->webView()->url(); const QString title = m_locationBar->webView()->title(); if (url.isEmpty() || title.isEmpty()) { ToolButton::mouseMoveEvent(e); return; } QDrag* drag = new QDrag(this); QMimeData* mime = new QMimeData; mime->setUrls(QList() << url); mime->setText(title); mime->setImageData(icon().pixmap(16, 16).toImage()); drag->setMimeData(mime); drag->setPixmap(QzTools::createPixmapForSite(icon(), title, url.toString())); drag->exec(); } qupzilla-1.6.0/src/lib/navigation/siteicon.h000066400000000000000000000027301226107126500210450ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SITEICON_H #define SITEICON_H #include "qz_namespace.h" #include "toolbutton.h" class LocationBar; class WebView; class QupZilla; class QT_QUPZILLA_EXPORT SiteIcon : public ToolButton { Q_OBJECT public: explicit SiteIcon(QupZilla* window, LocationBar* parent); void setWebView(WebView* view); private slots: void iconClicked(); private: void contextMenuEvent(QContextMenuEvent* e); void mousePressEvent(QMouseEvent* e); void mouseMoveEvent(QMouseEvent* e); QupZilla* p_QupZilla; LocationBar* m_locationBar; WebView* m_view; QPoint m_dragStartPosition; }; #endif // SITEICON_H qupzilla-1.6.0/src/lib/navigation/websearchbar.cpp000066400000000000000000000275401226107126500222210ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "websearchbar.h" #include "qupzilla.h" #include "mainapplication.h" #include "tabbedwebview.h" #include "webpage.h" #include "settings.h" #include "qzsettings.h" #include "tabwidget.h" #include "clickablelabel.h" #include "buttonwithmenu.h" #include "searchenginesmanager.h" #include "searchenginesdialog.h" #include "networkmanager.h" #include #include #include #include #include #include #include #include #include WebSearchBar_Button::WebSearchBar_Button(QWidget* parent) : ClickableLabel(parent) { setObjectName("websearchbar-searchbutton"); setCursor(QCursor(Qt::PointingHandCursor)); setFocusPolicy(Qt::ClickFocus); } void WebSearchBar_Button::contextMenuEvent(QContextMenuEvent* event) { event->accept(); } WebSearchBar::WebSearchBar(QupZilla* mainClass) : LineEdit(mainClass) , p_QupZilla(mainClass) , m_pasteAndGoAction(0) , m_clearAction(0) , m_reloadingEngines(false) { setObjectName("websearchbar"); setDragEnabled(true); m_buttonSearch = new WebSearchBar_Button(this); m_boxSearchType = new ButtonWithMenu(this); m_boxSearchType->setObjectName("websearchbar-searchprovider-comobobox"); // RTL Support // If we don't add 'm_boxSearchType' by following code, then we should use suitable padding-left value // but then, when typing RTL text the layout dynamically changed and within RTL layout direction // padding-left is equivalent to padding-right and vice versa, and because style sheet is // not changed dynamically this create padding problems. addWidget(m_boxSearchType, LineEdit::LeftSide); addWidget(m_buttonSearch, LineEdit::RightSide); connect(m_buttonSearch, SIGNAL(clicked(QPoint)), this, SLOT(search())); connect(m_buttonSearch, SIGNAL(middleClicked(QPoint)), this, SLOT(searchInNewTab())); connect(m_boxSearchType, SIGNAL(activeItemChanged(ButtonWithMenu::Item)), this, SLOT(searchChanged(ButtonWithMenu::Item))); setWidgetSpacing(0); m_searchManager = mApp->searchEnginesManager(); connect(m_boxSearchType->menu(), SIGNAL(aboutToShow()), this, SLOT(aboutToShowMenu())); m_completer = new QCompleter(this); m_completer->setCompletionMode(QCompleter::UnfilteredPopupCompletion); m_completerModel = new QStringListModel(this); m_completer->setModel(m_completerModel); m_completer->popup()->setMinimumHeight(90); setCompleter(m_completer); m_openSearchEngine = new OpenSearchEngine(this); m_openSearchEngine->setNetworkAccessManager(mApp->networkManager()); connect(m_openSearchEngine, SIGNAL(suggestions(QStringList)), this, SLOT(addSuggestions(QStringList))); connect(this, SIGNAL(textEdited(QString)), m_openSearchEngine, SLOT(requestSuggestions(QString))); QTimer::singleShot(0, this, SLOT(setupEngines())); } void WebSearchBar::aboutToShowMenu() { QMenu* menu = m_boxSearchType->menu(); menu->addSeparator(); completeMenuWithAvailableEngines(menu); menu->addSeparator(); menu->addAction(QIcon(":icons/menu/gear.png"), tr("Manage Search Engines"), this, SLOT(openSearchEnginesDialog())); } void WebSearchBar::addSuggestions(const QStringList &list) { if (qzSettings->showSearchSuggestions) { QStringList list_ = list.mid(0, 6); m_completerModel->setStringList(list_); } } void WebSearchBar::openSearchEnginesDialog() { if (m_searchDialog) { m_searchDialog.data()->raise(); m_searchDialog.data()->activateWindow(); return; } m_searchDialog = new SearchEnginesDialog(this); m_searchDialog.data()->show(); } void WebSearchBar::enableSearchSuggestions(bool enable) { Settings settings; settings.beginGroup("SearchEngines"); settings.setValue("showSuggestions", enable); settings.endGroup(); qzSettings->showSearchSuggestions = enable; m_completerModel->setStringList(QStringList()); } void WebSearchBar::setupEngines() { disconnect(m_searchManager, SIGNAL(enginesChanged()), this, SLOT(setupEngines())); m_reloadingEngines = true; QString activeEngine = m_searchManager->startingEngineName(); if (m_boxSearchType->allItems().count() != 0) { activeEngine = m_activeEngine.name; } m_boxSearchType->clearItems(); foreach (const SearchEngine &en, m_searchManager->allEngines()) { ButtonWithMenu::Item item; item.icon = en.icon; item.text = en.name; QVariant v; v.setValue(en); item.userData = v; m_boxSearchType->addItem(item); if (item.text == activeEngine) { m_boxSearchType->setCurrentItem(item, false); } } searchChanged(m_boxSearchType->currentItem()); connect(m_searchManager, SIGNAL(enginesChanged()), this, SLOT(setupEngines())); m_reloadingEngines = false; } void WebSearchBar::searchChanged(const ButtonWithMenu::Item &item) { setPlaceholderText(item.text); m_completerModel->setStringList(QStringList()); m_activeEngine = item.userData.value(); m_openSearchEngine->setSuggestionsUrl(m_activeEngine.suggestionsUrl); m_openSearchEngine->setSuggestionsParameters(m_activeEngine.suggestionsParameters); m_searchManager->setActiveEngine(m_activeEngine); if (qzSettings->searchOnEngineChange && !m_reloadingEngines && !text().isEmpty()) { search(); } } void WebSearchBar::instantSearchChanged(bool enable) { Settings settings; settings.beginGroup("SearchEngines"); settings.setValue("SearchOnEngineChange", enable); settings.endGroup(); qzSettings->searchOnEngineChange = enable; } void WebSearchBar::search() { p_QupZilla->weView()->setFocus(); SearchEnginesManager::SearchResult res = m_searchManager->searchResult(m_activeEngine, text()); p_QupZilla->weView()->load(res.request, res.operation, res.data); } void WebSearchBar::searchInNewTab() { p_QupZilla->weView()->setFocus(); int index = p_QupZilla->tabWidget()->addView(QUrl()); SearchEnginesManager::SearchResult res = m_searchManager->searchResult(m_activeEngine, text()); p_QupZilla->weView(index)->load(res.request, res.operation, res.data); } void WebSearchBar::completeMenuWithAvailableEngines(QMenu* menu) { WebView* view = p_QupZilla->weView(); QWebFrame* frame = view->page()->mainFrame(); QWebElementCollection elements = frame->documentElement().findAll(QLatin1String("link[rel=search]")); foreach (const QWebElement &element, elements) { if (element.attribute("type") != QLatin1String("application/opensearchdescription+xml")) { continue; } QUrl url = view->url().resolved(QUrl::fromEncoded(element.attribute("href").toUtf8())); QString title = element.attribute("title"); if (url.isEmpty()) { continue; } if (title.isEmpty()) { title = view->title(); } menu->addAction(view->icon(), tr("Add %1 ...").arg(title), this, SLOT(addEngineFromAction()))->setData(url); } } void WebSearchBar::addEngineFromAction() { if (QAction* action = qobject_cast(sender())) { m_searchManager->addEngine(action->data().toUrl()); } } void WebSearchBar::pasteAndGo() { clear(); paste(); search(); } void WebSearchBar::contextMenuEvent(QContextMenuEvent* event) { Q_UNUSED(event) if (!m_pasteAndGoAction) { m_pasteAndGoAction = new QAction(QIcon::fromTheme("edit-paste"), tr("Paste And &Search"), this); m_pasteAndGoAction->setShortcut(QKeySequence("Ctrl+Shift+V")); connect(m_pasteAndGoAction, SIGNAL(triggered()), this, SLOT(pasteAndGo())); } if (!m_clearAction) { m_clearAction = new QAction(QIcon::fromTheme("edit-clear"), tr("Clear All"), this); connect(m_clearAction, SIGNAL(triggered()), this, SLOT(clear())); } QMenu* tempMenu = createStandardContextMenu(); QMenu menu(this); int i = 0; foreach (QAction* act, tempMenu->actions()) { menu.addAction(act); switch (i) { case 0: act->setIcon(QIcon::fromTheme("edit-undo")); break; case 1: act->setIcon(QIcon::fromTheme("edit-redo")); break; case 3: act->setIcon(QIcon::fromTheme("edit-cut")); break; case 4: act->setIcon(QIcon::fromTheme("edit-copy")); break; case 5: act->setIcon(QIcon::fromTheme("edit-paste")); menu.addAction(act); menu.addAction(m_pasteAndGoAction); break; case 6: act->setIcon(QIcon::fromTheme("edit-delete")); menu.addAction(act); menu.addAction(m_clearAction); break; case 8: act->setIcon(QIcon::fromTheme("edit-select-all")); break; } ++i; } menu.addSeparator(); QAction* act = menu.addAction(tr("Show suggestions")); act->setCheckable(true); act->setChecked(qzSettings->showSearchSuggestions); connect(act, SIGNAL(triggered(bool)), this, SLOT(enableSearchSuggestions(bool))); QAction* instantSearch = menu.addAction(tr("Search when engine changed")); instantSearch->setCheckable(true); instantSearch->setChecked(qzSettings->searchOnEngineChange); connect(instantSearch, SIGNAL(triggered(bool)), this, SLOT(instantSearchChanged(bool))); m_pasteAndGoAction->setEnabled(!QApplication::clipboard()->text().isEmpty()); // Prevent choosing first option with double rightclick QPoint pos = event->globalPos(); QPoint p(pos.x(), pos.y() + 1); menu.exec(p); tempMenu->deleteLater(); } void WebSearchBar::focusOutEvent(QFocusEvent* e) { if (text().isEmpty()) { QString search = m_boxSearchType->currentItem().text; setPlaceholderText(search); } LineEdit::focusOutEvent(e); } void WebSearchBar::dropEvent(QDropEvent* event) { if (event->mimeData()->hasText()) { QString dropText = event->mimeData()->text(); setText(dropText); search(); QFocusEvent event(QFocusEvent::FocusOut); LineEdit::focusOutEvent(&event); return; } LineEdit::dropEvent(event); } void WebSearchBar::keyPressEvent(QKeyEvent* event) { switch (event->key()) { case Qt::Key_V: if (event->modifiers() == (Qt::ControlModifier | Qt::ShiftModifier)) { pasteAndGo(); event->accept(); return; } break; case Qt::Key_Return: case Qt::Key_Enter: if (event->modifiers() == Qt::AltModifier) { searchInNewTab(); } else { search(); } break; case Qt::Key_Up: if (event->modifiers() == Qt::ControlModifier) { m_boxSearchType->selectPreviousItem(); } break; case Qt::Key_Down: if (event->modifiers() == Qt::ControlModifier) { m_boxSearchType->selectNextItem(); } break; default: break; } LineEdit::keyPressEvent(event); } qupzilla-1.6.0/src/lib/navigation/websearchbar.h000066400000000000000000000054421226107126500216630ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef WEBSEARCHBAR_H #define WEBSEARCHBAR_H #include #include "qz_namespace.h" #include "lineedit.h" #include "buttonwithmenu.h" #include "searchenginesmanager.h" #include "clickablelabel.h" class QStringListModel; class QupZilla; class LineEdit; class ClickableLabel; class SearchEnginesManager; class SearchEnginesDialog; class OpenSearchEngine; class QT_QUPZILLA_EXPORT WebSearchBar_Button : public ClickableLabel { public: explicit WebSearchBar_Button(QWidget* parent = 0); private: void contextMenuEvent(QContextMenuEvent* event); }; class QT_QUPZILLA_EXPORT WebSearchBar : public LineEdit { Q_OBJECT Q_PROPERTY(QSize fixedsize READ size WRITE setFixedSize) Q_PROPERTY(int fixedwidth READ width WRITE setFixedWidth) Q_PROPERTY(int fixedheight READ height WRITE setFixedHeight) public: explicit WebSearchBar(QupZilla* mainClass); private slots: void searchChanged(const ButtonWithMenu::Item &item); void setupEngines(); void search(); void searchInNewTab(); void aboutToShowMenu(); void openSearchEnginesDialog(); void enableSearchSuggestions(bool enable); void addSuggestions(const QStringList &list); void addEngineFromAction(); void pasteAndGo(); void instantSearchChanged(bool); private: void focusOutEvent(QFocusEvent* e); void dropEvent(QDropEvent* event); void keyPressEvent(QKeyEvent* event); void completeMenuWithAvailableEngines(QMenu* menu); void contextMenuEvent(QContextMenuEvent* event); QCompleter* m_completer; QStringListModel* m_completerModel; OpenSearchEngine* m_openSearchEngine; SearchEngine m_activeEngine; QupZilla* p_QupZilla; WebSearchBar_Button* m_buttonSearch; ButtonWithMenu* m_boxSearchType; SearchEnginesManager* m_searchManager; QPointer m_searchDialog; QAction* m_pasteAndGoAction; QAction* m_clearAction; bool m_reloadingEngines; }; #endif // WEBSEARCHBAR_H qupzilla-1.6.0/src/lib/network/000077500000000000000000000000001226107126500164075ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/network/cabundleupdater.cpp000066400000000000000000000111161226107126500222550ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "cabundleupdater.h" #include "mainapplication.h" #include "networkmanager.h" #include "qupzilla.h" #include "qztools.h" #include #include #include #include #include CaBundleUpdater::CaBundleUpdater(NetworkManager* manager, QObject* parent) : QObject(parent) , m_manager(manager) , m_progress(Start) , m_latestBundleVersion(0) { m_bundleVersionFileName = mApp->PROFILEDIR + "certificates/bundle_version"; m_bundleFileName = mApp->PROFILEDIR + "certificates/ca-bundle.crt"; m_lastUpdateFileName = mApp->PROFILEDIR + "certificates/last_update"; int updateTime = 30 * 1000; // Check immediately on first run if (!QFile(m_lastUpdateFileName).exists()) { updateTime = 0; } QTimer::singleShot(updateTime, this, SLOT(start())); } void CaBundleUpdater::start() { QFile updateFile(m_lastUpdateFileName); bool updateNow = false; if (updateFile.exists()) { if (!updateFile.open(QFile::ReadOnly)) { qWarning() << "CaBundleUpdater::start cannot open file for reading" << m_lastUpdateFileName; } else { QDateTime updateTime = QDateTime::fromString(updateFile.readAll()); updateNow = updateTime.addDays(5) < QDateTime::currentDateTime(); } } else { updateNow = true; } if (updateNow) { m_progress = CheckLastUpdate; QUrl url = QUrl::fromEncoded(QString(QupZilla::WWWADDRESS + "/certs/bundle_version").toUtf8()); m_reply = m_manager->get(QNetworkRequest(url)); connect(m_reply, SIGNAL(finished()), this, SLOT(replyFinished())); } } void CaBundleUpdater::replyFinished() { if (m_progress == CheckLastUpdate) { QByteArray response = m_reply->readAll().trimmed(); m_reply->close(); m_reply->deleteLater(); if (m_reply->error() != QNetworkReply::NoError || response.isEmpty()) { return; } m_latestBundleVersion = response.toInt(); int currentBundleVersion = QzTools::readAllFileContents(m_bundleVersionFileName).trimmed().toInt(); if (m_latestBundleVersion == 0) { return; } if (m_latestBundleVersion > currentBundleVersion) { m_progress = LoadBundle; QUrl url = QUrl::fromEncoded(QString(QupZilla::WWWADDRESS + "/certs/ca-bundle.crt").toUtf8()); m_reply = m_manager->get(QNetworkRequest(url)); connect(m_reply, SIGNAL(finished()), this, SLOT(replyFinished())); } QFile file(m_lastUpdateFileName); if (!file.open(QFile::WriteOnly | QFile::Truncate)) { qWarning() << "CaBundleUpdater::replyFinished cannot open file for writing" << m_lastUpdateFileName; } file.write(QDateTime::currentDateTime().toString().toUtf8()); } else if (m_progress == LoadBundle) { QByteArray response = m_reply->readAll(); m_reply->close(); m_reply->deleteLater(); if (m_reply->error() != QNetworkReply::NoError || response.isEmpty()) { return; } QFile file(m_bundleVersionFileName); if (!file.open(QFile::WriteOnly | QFile::Truncate)) { qWarning() << "CaBundleUpdater::replyFinished cannot open file for writing" << m_bundleVersionFileName; } file.write(QByteArray::number(m_latestBundleVersion)); file.close(); file.setFileName(m_bundleFileName); if (!file.open(QFile::WriteOnly | QFile::Truncate)) { qWarning() << "CaBundleUpdater::replyFinished cannot open file for writing" << m_bundleFileName; } file.write(response); // Reload newly downloaded certificates mApp->networkManager()->loadSettings(); } } qupzilla-1.6.0/src/lib/network/cabundleupdater.h000066400000000000000000000030341226107126500217220ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef CABUNDLEUPDATER_H #define CABUNDLEUPDATER_H #include #include "qz_namespace.h" class QNetworkReply; class NetworkManager; class QT_QUPZILLA_EXPORT CaBundleUpdater : public QObject { Q_OBJECT public: explicit CaBundleUpdater(NetworkManager* manager, QObject* parent = 0); signals: public slots: private slots: void start(); void replyFinished(); private: enum Progress { Start, CheckLastUpdate, LoadBundle }; NetworkManager* m_manager; Progress m_progress; QNetworkReply* m_reply; QString m_bundleVersionFileName; QString m_bundleFileName; QString m_lastUpdateFileName; int m_latestBundleVersion; }; #endif // CABUNDLEUPDATER_H qupzilla-1.6.0/src/lib/network/networkmanager.cpp000066400000000000000000000601521226107126500221430ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "networkmanager.h" #include "qupzilla.h" #include "autofill.h" #include "networkmanagerproxy.h" #include "mainapplication.h" #include "webpage.h" #include "tabbedwebview.h" #include "pluginproxy.h" #include "adblockmanager.h" #include "networkproxyfactory.h" #include "certificateinfowidget.h" #include "qztools.h" #include "acceptlanguage.h" #include "cabundleupdater.h" #include "settings.h" #include "passwordmanager.h" #include "sslerrordialog.h" #include "schemehandlers/adblockschemehandler.h" #include "schemehandlers/qupzillaschemehandler.h" #include "schemehandlers/fileschemehandler.h" #include "schemehandlers/ftpschemehandler.h" #include #include #include #include #include #include #include #include #include #include #include #include #include #include static QString fileNameForCert(const QSslCertificate &cert) { QString certFileName = CertificateInfoWidget::certificateItemText(cert); certFileName.remove(QLatin1Char(' ')); certFileName.append(QLatin1String(".crt")); certFileName = QzTools::filterCharsFromFilename(certFileName); while (certFileName.startsWith(QLatin1Char('.'))) { certFileName = certFileName.mid(1); } return certFileName; } NetworkManager::NetworkManager(QObject* parent) : NetworkManagerProxy(parent) , m_adblockManager(0) , m_ignoreAllWarnings(false) { connect(this, SIGNAL(authenticationRequired(QNetworkReply*,QAuthenticator*)), this, SLOT(authentication(QNetworkReply*,QAuthenticator*))); connect(this, SIGNAL(proxyAuthenticationRequired(QNetworkProxy,QAuthenticator*)), this, SLOT(proxyAuthentication(QNetworkProxy,QAuthenticator*))); connect(this, SIGNAL(sslErrors(QNetworkReply*,QList)), this, SLOT(sslError(QNetworkReply*,QList))); connect(this, SIGNAL(finished(QNetworkReply*)), this, SLOT(setSSLConfiguration(QNetworkReply*))); m_schemeHandlers["qupzilla"] = new QupZillaSchemeHandler(); m_schemeHandlers["abp"] = new AdBlockSchemeHandler(); m_schemeHandlers["file"] = new FileSchemeHandler(); m_schemeHandlers["ftp"] = new FtpSchemeHandler(); m_proxyFactory = new NetworkProxyFactory(); setProxyFactory(m_proxyFactory); loadSettings(); } void NetworkManager::loadSettings() { Settings settings; if (settings.value("Web-Browser-Settings/AllowLocalCache", true).toBool() && !mApp->isPrivateSession()) { QNetworkDiskCache* cache = mApp->networkCache(); cache->setMaximumCacheSize(settings.value("MaximumCacheSize", 50).toInt() * 1024 * 1024); //MegaBytes setCache(cache); } settings.beginGroup("Web-Browser-Settings"); m_doNotTrack = settings.value("DoNotTrack", false).toBool(); m_sendReferer = settings.value("SendReferer", true).toBool(); settings.endGroup(); m_acceptLanguage = AcceptLanguage::generateHeader(settings.value("Language/acceptLanguage", AcceptLanguage::defaultLanguage()).toStringList()); // Falling back to Qt 4.7 default behavior, use SslV3 by default // Fixes issue with some older servers closing the connection // However, it also makes some servers requesting TLS ClientHello // not working, or showing invalid certificates. // See #921 // QSslConfiguration config = QSslConfiguration::defaultConfiguration(); // config.setProtocol(QSsl::SslV3); // QSslConfiguration::setDefaultConfiguration(config); #if defined(Q_OS_WIN) || defined(Q_OS_HAIKU) || defined(Q_OS_OS2) QString certDir = mApp->PROFILEDIR + "certificates"; QString bundlePath = certDir + "/ca-bundle.crt"; QString bundleVersionPath = certDir + "/bundle_version"; if (!QDir(certDir).exists()) { QDir dir(mApp->PROFILEDIR); dir.mkdir("certificates"); } if (!QFile::exists(bundlePath)) { QFile(":data/ca-bundle.crt").copy(bundlePath); QFile(bundlePath).setPermissions(QFile::ReadUser | QFile::WriteUser); QFile(":data/bundle_version").copy(bundleVersionPath); QFile(bundleVersionPath).setPermissions(QFile::ReadUser | QFile::WriteUser); } QSslSocket::setDefaultCaCertificates(QSslCertificate::fromPath(bundlePath)); #else QSslSocket::setDefaultCaCertificates(QSslSocket::systemCaCertificates()); #endif loadCertificates(); m_proxyFactory->loadSettings(); } void NetworkManager::setSSLConfiguration(QNetworkReply* reply) { if (!reply->sslConfiguration().isNull()) { QSslCertificate cert = reply->sslConfiguration().peerCertificate(); if (!QzTools::isCertificateValid(cert) || reply->property("downReply").toBool()) { return; } QNetworkRequest request = reply->request(); QVariant v = request.attribute((QNetworkRequest::Attribute)(QNetworkRequest::User + 100)); WebPage* webPage = static_cast(v.value()); if (!WebPage::isPointerSafeToUse(webPage)) { return; } if (webPage->url().host() == reply->url().host()) { webPage->setSSLCertificate(cert); } } } static inline uint qHash(const QSslCertificate &cert) { return qHash(cert.toPem()); } void NetworkManager::sslError(QNetworkReply* reply, QList errors) { if (m_ignoreAllWarnings || reply->property("downReply").toBool()) { reply->ignoreSslErrors(errors); return; } QNetworkRequest request = reply->request(); QVariant v = request.attribute((QNetworkRequest::Attribute)(QNetworkRequest::User + 100)); WebPage* webPage = static_cast(v.value()); if (!WebPage::isPointerSafeToUse(webPage)) { return; } QHash errorHash; foreach (const QSslError &error, errors) { // Weird behavior on Windows if (error.error() == QSslError::NoError) { continue; } const QSslCertificate cert = error.certificate(); if (errorHash.contains(cert)) { errorHash[cert].append(error.errorString()); } else { errorHash.insert(cert, QStringList(error.errorString())); } } // User already rejected those certs on this page if (webPage->containsRejectedCerts(errorHash.keys())) { return; } QString title = tr("SSL Certificate Error!"); QString text1 = tr("The page you are trying to access has the following errors in the SSL certificate:"); QString certs; QHash::const_iterator i = errorHash.constBegin(); while (i != errorHash.constEnd()) { const QSslCertificate cert = i.key(); const QStringList errors = i.value(); if (m_localCerts.contains(cert) || m_tempAllowedCerts.contains(cert) || errors.isEmpty()) { ++i; continue; } certs += "
    • "; certs += tr("Organization: ") + CertificateInfoWidget::clearCertSpecialSymbols(cert.subjectInfo(QSslCertificate::Organization)); certs += "
    • "; certs += tr("Domain Name: ") + CertificateInfoWidget::clearCertSpecialSymbols(cert.subjectInfo(QSslCertificate::CommonName)); certs += "
    • "; certs += tr("Expiration Date: ") + cert.expiryDate().toString("hh:mm:ss dddd d. MMMM yyyy"); certs += "
    "; certs += "
      "; foreach (const QString &error, errors) { certs += "
    • "; certs += tr("Error: ") + error; certs += "
    • "; } certs += "
    "; ++i; } QString text2 = tr("Would you like to make an exception for this certificate?"); QString message = QString("%1

    %2

    %3

    %4

    ").arg(title, text1, certs, text2); if (!certs.isEmpty()) { SslErrorDialog dialog(webPage->view()); dialog.setText(message); dialog.exec(); switch (dialog.result()) { case SslErrorDialog::Yes: foreach (const QSslCertificate &cert, errorHash.keys()) { if (!m_localCerts.contains(cert)) { addLocalCertificate(cert); } } break; case SslErrorDialog::OnlyForThisSession: foreach (const QSslCertificate &cert, errorHash.keys()) { if (!m_tempAllowedCerts.contains(cert)) { m_tempAllowedCerts.append(cert); } } break; default: // To prevent asking user more than once for the same certificate webPage->addRejectedCerts(errorHash.keys()); return; } } reply->ignoreSslErrors(errors); } void NetworkManager::authentication(QNetworkReply* reply, QAuthenticator* auth) { QDialog* dialog = new QDialog(); dialog->setWindowTitle(tr("Authorisation required")); QFormLayout* formLa = new QFormLayout(dialog); QLabel* label = new QLabel(dialog); QLabel* userLab = new QLabel(dialog); QLabel* passLab = new QLabel(dialog); userLab->setText(tr("Username: ")); passLab->setText(tr("Password: ")); QLineEdit* user = new QLineEdit(dialog); QLineEdit* pass = new QLineEdit(dialog); QCheckBox* save = new QCheckBox(dialog); save->setText(tr("Save username and password on this site")); pass->setEchoMode(QLineEdit::Password); QDialogButtonBox* box = new QDialogButtonBox(dialog); box->addButton(QDialogButtonBox::Ok); box->addButton(QDialogButtonBox::Cancel); connect(box, SIGNAL(rejected()), dialog, SLOT(reject())); connect(box, SIGNAL(accepted()), dialog, SLOT(accept())); label->setText(tr("A username and password are being requested by %1. " "The site says: \"%2\"").arg(reply->url().host(), QzTools::escape(auth->realm()))); formLa->addRow(label); formLa->addRow(userLab, user); formLa->addRow(passLab, pass); formLa->addRow(save); formLa->addWidget(box); bool shouldUpdateEntry = false; AutoFill* fill = mApp->autoFill(); QString storedUser; QString storedPassword; if (fill->isStored(reply->url())) { const QVector &data = fill->getFormData(reply->url()); if (!data.isEmpty()) { save->setChecked(true); shouldUpdateEntry = true; storedUser = data.first().username; storedPassword = data.first().password; user->setText(storedUser); pass->setText(storedPassword); } } // Try to set the originating WebTab as a current tab QWebFrame* frame = qobject_cast(reply->request().originatingObject()); if (frame) { WebPage* page = qobject_cast(frame->page()); if (page) { TabbedWebView* view = qobject_cast(page->view()); if (view) { view->setAsCurrentTab(); } } } // Do not save when private browsing is enabled if (mApp->isPrivateSession()) { save->setVisible(false); } if (dialog->exec() != QDialog::Accepted) { return; } auth->setUser(user->text()); auth->setPassword(pass->text()); if (save->isChecked()) { if (shouldUpdateEntry) { if (storedUser != user->text() || storedPassword != pass->text()) { fill->updateEntry(reply->url(), user->text(), pass->text()); } } else { fill->addEntry(reply->url(), user->text(), pass->text()); } } } void NetworkManager::ftpAuthentication(const QUrl &url, QAuthenticator* auth) { QNetworkReply* reply = qobject_cast(sender()); FtpDownloader* ftp = 0; if (!reply) { ftp = qobject_cast(sender()); } if (!auth) { auth = FTP_AUTHENTICATOR(url); } QString lastUser = auth->user(); QString lastPass = auth->password(); if (lastUser.isEmpty() && lastPass.isEmpty()) { // The auth is empty but url contains user's info lastUser = url.userName(); lastPass = url.password(); } QDialog* dialog = new QDialog(mApp->getWindow()); dialog->setWindowTitle(tr("FTP authorisation required")); QFormLayout* formLa = new QFormLayout(dialog); QLabel* label = new QLabel(dialog); QLabel* userLab = new QLabel(dialog); QLabel* passLab = new QLabel(dialog); userLab->setText(tr("Username: ")); passLab->setText(tr("Password: ")); QCheckBox* anonymousLogin = new QCheckBox(dialog); QLineEdit* user = new QLineEdit(lastUser, dialog); QLineEdit* pass = new QLineEdit(lastPass, dialog); anonymousLogin->setText(tr("Login anonymously")); connect(anonymousLogin, SIGNAL(toggled(bool)), user, SLOT(setDisabled(bool))); connect(anonymousLogin, SIGNAL(toggled(bool)), pass, SLOT(setDisabled(bool))); anonymousLogin->setChecked(lastUser.isEmpty() && lastPass.isEmpty()); pass->setEchoMode(QLineEdit::Password); QDialogButtonBox* box = new QDialogButtonBox(dialog); box->addButton(QDialogButtonBox::Ok); box->addButton(QDialogButtonBox::Cancel); connect(box, SIGNAL(rejected()), dialog, SLOT(reject())); connect(box, SIGNAL(accepted()), dialog, SLOT(accept())); int port = 21; if (url.port() != -1) { port = url.port(); } label->setText(tr("A username and password are being requested by %1:%2.") .arg(url.host(), QString::number(port))); formLa->addRow(label); formLa->addRow(anonymousLogin); formLa->addRow(userLab, user); formLa->addRow(passLab, pass); formLa->addWidget(box); if (dialog->exec() != QDialog::Accepted) { if (reply) { reply->abort(); // is it safe? reply->deleteLater(); } else if (ftp) { ftp->abort(); ftp->close(); } return; } if (!anonymousLogin->isChecked()) { auth->setUser(user->text()); auth->setPassword(pass->text()); } else { auth->setUser(QString()); auth->setPassword(QString()); } } void NetworkManager::proxyAuthentication(const QNetworkProxy &proxy, QAuthenticator* auth) { QString userName; QString password; QVector psws = mApp->autoFill()->getFormData(QUrl(proxy.hostName())); if (psws.isEmpty()) { QDialog* dialog = new QDialog(); dialog->setWindowTitle(tr("Proxy authorisation required")); QFormLayout* formLa = new QFormLayout(dialog); QLabel* label = new QLabel(dialog); QLabel* userLab = new QLabel(dialog); QLabel* passLab = new QLabel(dialog); userLab->setText(tr("Username: ")); passLab->setText(tr("Password: ")); QLineEdit* user = new QLineEdit(dialog); QLineEdit* pass = new QLineEdit(dialog); pass->setEchoMode(QLineEdit::Password); QDialogButtonBox* box = new QDialogButtonBox(dialog); box->addButton(QDialogButtonBox::Ok); box->addButton(QDialogButtonBox::Cancel); connect(box, SIGNAL(rejected()), dialog, SLOT(reject())); connect(box, SIGNAL(accepted()), dialog, SLOT(accept())); QCheckBox* rememberCheck = new QCheckBox(tr("Remember username and password for this proxy."), dialog); label->setText(tr("A username and password are being requested by proxy %1. ").arg(proxy.hostName())); formLa->addRow(label); formLa->addRow(userLab, user); formLa->addRow(passLab, pass); formLa->addRow(rememberCheck); formLa->addWidget(box); if (dialog->exec() != QDialog::Accepted) { return; } if (rememberCheck->isChecked()) { mApp->autoFill()->addEntry(QUrl(proxy.hostName()), user->text(), pass->text()); } userName = user->text(); password = pass->text(); } else { userName = psws.at(0).username; password = psws.at(0).password; } auth->setUser(userName); auth->setPassword(password); } QNetworkReply* NetworkManager::createRequest(QNetworkAccessManager::Operation op, const QNetworkRequest &request, QIODevice* outgoingData) { if (op == PostOperation && outgoingData) { QByteArray outgoingDataByteArray = outgoingData->peek(1024 * 1024); mApp->autoFill()->post(request, outgoingDataByteArray); } QNetworkRequest req = request; QNetworkReply* reply = 0; // SchemeHandlers if (m_schemeHandlers.contains(req.url().scheme())) { reply = m_schemeHandlers[req.url().scheme()]->createRequest(op, req, outgoingData); if (reply) { if (req.url().scheme() == "ftp") { QVariant v = req.attribute((QNetworkRequest::Attribute)(QNetworkRequest::User + 100)); WebPage* webPage = static_cast(v.value()); if (webPage) { connect(reply, SIGNAL(downloadRequest(QNetworkRequest)), webPage, SLOT(downloadRequested(QNetworkRequest))); } connect(reply, SIGNAL(ftpAuthenticationRequierd(QUrl,QAuthenticator*)), this, SLOT(ftpAuthentication(QUrl,QAuthenticator*))); } return reply; } } // Plugins reply = mApp->plugins()->createRequest(op, request, outgoingData); if (reply) { return reply; } if (req.rawHeader("X-QupZilla-UserLoadAction") == QByteArray("1")) { req.setRawHeader("X-QupZilla-UserLoadAction", QByteArray()); req.setAttribute(QNetworkRequest::Attribute(QNetworkRequest::User + 151), QString()); } else { req.setAttribute(QNetworkRequest::Attribute(QNetworkRequest::User + 151), req.rawHeader("Referer")); } if (m_doNotTrack) { req.setRawHeader("DNT", QByteArray("1")); } if (!m_sendReferer) { req.setRawHeader("Referer", QByteArray()); } req.setRawHeader("Accept-Language", m_acceptLanguage); // #830: Disabling HttpPipeling fixes issue with loading HTML5 videos on YouTube //req.setAttribute(QNetworkRequest::HttpPipeliningAllowedAttribute, true); // Adblock if (op == QNetworkAccessManager::GetOperation) { if (!m_adblockManager) { m_adblockManager = AdBlockManager::instance(); } reply = m_adblockManager->block(req); if (reply) { return reply; } } return QNetworkAccessManager::createRequest(op, req, outgoingData); } void NetworkManager::removeLocalCertificate(const QSslCertificate &cert) { m_localCerts.removeOne(cert); QList certs = QSslSocket::defaultCaCertificates(); certs.removeOne(cert); QSslSocket::setDefaultCaCertificates(certs); // Delete cert file from profile bool deleted = false; QDirIterator it(mApp->currentProfilePath() + "certificates", QDir::Files, QDirIterator::FollowSymlinks | QDirIterator::Subdirectories); while (it.hasNext()) { const QString filePath = it.next(); const QList &certs = QSslCertificate::fromPath(filePath); if (certs.isEmpty()) { continue; } const QSslCertificate cert_ = certs.at(0); if (cert == cert_) { QFile file(filePath); if (!file.remove()) { qWarning() << "NetworkManager::removeLocalCertificate cannot remove file" << filePath; } deleted = true; break; } } if (!deleted) { qWarning() << "NetworkManager::removeLocalCertificate cannot remove certificate"; } } void NetworkManager::addLocalCertificate(const QSslCertificate &cert) { // if (!cert.isValid()) { // return; // } m_localCerts.append(cert); QSslSocket::addDefaultCaCertificate(cert); QDir dir(mApp->currentProfilePath()); if (!dir.exists("certificates")) { dir.mkdir("certificates"); } QString certFileName = fileNameForCert(cert); QString fileName = QzTools::ensureUniqueFilename(mApp->currentProfilePath() + "certificates/" + certFileName); QFile file(fileName); if (file.open(QFile::WriteOnly)) { file.write(cert.toPem()); file.close(); } else { qWarning() << "NetworkManager::addLocalCertificate cannot write to file: " << fileName; } } void NetworkManager::setIgnoreAllWarnings(bool state) { m_ignoreAllWarnings = state; } bool NetworkManager::isIgnoringAllWarnings() { return m_ignoreAllWarnings; } NetworkProxyFactory* NetworkManager::proxyFactory() const { return m_proxyFactory; } bool NetworkManager::registerSchemeHandler(const QString &scheme, SchemeHandler* handler) { if (m_schemeHandlers.contains(scheme)) { return false; } m_schemeHandlers[scheme] = handler; return true; } bool NetworkManager::unregisterSchemeHandler(const QString &scheme, SchemeHandler* handler) { if (!m_schemeHandlers.contains(scheme) || m_schemeHandlers[scheme] != handler) { return false; } return m_schemeHandlers.remove(scheme) == 1; } void NetworkManager::saveCertificates() { Settings settings; settings.beginGroup("SSL-Configuration"); settings.setValue("CACertPaths", m_certPaths); settings.setValue("IgnoreAllSSLWarnings", m_ignoreAllWarnings); settings.endGroup(); } void NetworkManager::loadCertificates() { Settings settings; settings.beginGroup("SSL-Configuration"); m_certPaths = settings.value("CACertPaths", QStringList()).toStringList(); m_ignoreAllWarnings = settings.value("IgnoreAllSSLWarnings", false).toBool(); settings.endGroup(); // CA Certificates m_caCerts = QSslSocket::defaultCaCertificates(); foreach (const QString &path, m_certPaths) { #ifdef Q_OS_WIN // Used from Qt 4.7.4 qsslcertificate.cpp and modified because QSslCertificate::fromPath // is kind of a bugged on Windows, it does work only with full path to cert file QDirIterator it(path, QDir::Files, QDirIterator::FollowSymlinks | QDirIterator::Subdirectories); while (it.hasNext()) { QString filePath = it.next(); if (!filePath.endsWith(QLatin1String(".crt"))) { continue; } QFile file(filePath); if (file.open(QIODevice::ReadOnly | QIODevice::Text)) { m_caCerts += QSslCertificate::fromData(file.readAll(), QSsl::Pem); } } #else m_caCerts += QSslCertificate::fromPath(path + "/*.crt", QSsl::Pem, QRegExp::Wildcard); #endif } // Local Certificates #ifdef Q_OS_WIN QDirIterator it_(mApp->currentProfilePath() + "certificates", QDir::Files, QDirIterator::FollowSymlinks | QDirIterator::Subdirectories); while (it_.hasNext()) { QString filePath = it_.next(); if (!filePath.endsWith(QLatin1String(".crt"))) { continue; } QFile file(filePath); if (file.open(QIODevice::ReadOnly | QIODevice::Text)) { m_localCerts += QSslCertificate::fromData(file.readAll(), QSsl::Pem); } } #else m_localCerts = QSslCertificate::fromPath(mApp->currentProfilePath() + "certificates/*.crt", QSsl::Pem, QRegExp::Wildcard); #endif QSslSocket::setDefaultCaCertificates(m_caCerts + m_localCerts); #if defined(Q_OS_WIN) || defined(Q_OS_HAIKU) || defined(Q_OS_OS2) new CaBundleUpdater(this, this); #endif } void NetworkManager::disconnectObjects() { disconnect(this); } qupzilla-1.6.0/src/lib/network/networkmanager.h000066400000000000000000000057161226107126500216150ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef NETWORKMANAGER_H #define NETWORKMANAGER_H #include #include #include "qz_namespace.h" #include "networkmanagerproxy.h" class AdBlockManager; class NetworkProxyFactory; class QupZillaSchemeHandler; class SchemeHandler; class QT_QUPZILLA_EXPORT NetworkManager : public NetworkManagerProxy { Q_OBJECT public: explicit NetworkManager(QObject* parent = 0); QNetworkReply* createRequest(QNetworkAccessManager::Operation op, const QNetworkRequest &request, QIODevice* outgoingData); void loadSettings(); void saveCertificates(); void loadCertificates(); QList getCaCertificates() { return m_caCerts; } QList getLocalCertificates() { return m_localCerts; } void removeLocalCertificate(const QSslCertificate &cert); void addLocalCertificate(const QSslCertificate &cert); void setCertificatePaths(const QStringList &paths) { m_certPaths = paths; } QStringList certificatePaths() { return m_certPaths; } void setIgnoreAllWarnings(bool state); bool isIgnoringAllWarnings(); NetworkProxyFactory* proxyFactory() const; bool registerSchemeHandler(const QString &scheme, SchemeHandler* handler); bool unregisterSchemeHandler(const QString &scheme, SchemeHandler* handler); void disconnectObjects(); signals: void sslDialogClosed(); private slots: void authentication(QNetworkReply* reply, QAuthenticator* auth); void ftpAuthentication(const QUrl &url, QAuthenticator* auth); void proxyAuthentication(const QNetworkProxy &proxy, QAuthenticator* auth); void sslError(QNetworkReply* reply, QList errors); void setSSLConfiguration(QNetworkReply* reply); private: AdBlockManager* m_adblockManager; NetworkProxyFactory* m_proxyFactory; QStringList m_certPaths; QList m_caCerts; QList m_localCerts; QList m_tempAllowedCerts; QHash m_schemeHandlers; QByteArray m_acceptLanguage; bool m_ignoreAllWarnings; bool m_doNotTrack; bool m_sendReferer; }; #endif // NETWORKMANAGER_H qupzilla-1.6.0/src/lib/network/networkmanagerproxy.cpp000066400000000000000000000050051226107126500232410ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "networkmanagerproxy.h" #include "networkmanager.h" #include "webpage.h" #include "cookiejar.h" #include "mainapplication.h" #include NetworkManagerProxy::NetworkManagerProxy(QObject* parent) : QNetworkAccessManager(parent) , m_page(0) , m_manager(0) { setCookieJar(mApp->cookieJar()); } void NetworkManagerProxy::setPrimaryNetworkAccessManager(NetworkManager* manager) { Q_ASSERT(manager); m_manager = manager; connect(this, SIGNAL(authenticationRequired(QNetworkReply*,QAuthenticator*)), m_manager, SIGNAL(authenticationRequired(QNetworkReply*,QAuthenticator*))); connect(this, SIGNAL(proxyAuthenticationRequired(QNetworkProxy,QAuthenticator*)), m_manager, SIGNAL(proxyAuthenticationRequired(QNetworkProxy,QAuthenticator*))); connect(this, SIGNAL(finished(QNetworkReply*)), m_manager, SIGNAL(finished(QNetworkReply*))); connect(this, SIGNAL(sslErrors(QNetworkReply*,QList)), m_manager, SIGNAL(sslErrors(QNetworkReply*,QList))); } QNetworkReply* NetworkManagerProxy::createRequest(QNetworkAccessManager::Operation op, const QNetworkRequest &request, QIODevice* outgoingData) { if (m_manager) { QNetworkRequest pageRequest = request; if (m_page) { m_page->populateNetworkRequest(pageRequest); } return m_manager->createRequest(op, pageRequest, outgoingData); } return QNetworkAccessManager::createRequest(op, request, outgoingData); } void NetworkManagerProxy::disconnectObjects() { m_page = 0; disconnect(m_manager); } NetworkManagerProxy::~NetworkManagerProxy() { // Prevent deleting of cookie jar cookieJar()->setParent(m_manager); } qupzilla-1.6.0/src/lib/network/networkmanagerproxy.h000066400000000000000000000030331226107126500227050ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef NETWORKMANAGERPROXY_H #define NETWORKMANAGERPROXY_H #include #include "qz_namespace.h" class WebPage; class NetworkManager; class QT_QUPZILLA_EXPORT NetworkManagerProxy : public QNetworkAccessManager { public: explicit NetworkManagerProxy(QObject* parent = 0); ~NetworkManagerProxy(); void setPage(WebPage* page) { m_page = page; } void setPrimaryNetworkAccessManager(NetworkManager* manager); QNetworkReply* createRequest(QNetworkAccessManager::Operation op, const QNetworkRequest &request, QIODevice* outgoingData); void disconnectObjects(); private: WebPage* m_page; NetworkManager* m_manager; }; #endif // NETWORKMANAGERPROXY_H qupzilla-1.6.0/src/lib/network/networkproxyfactory.cpp000066400000000000000000000124201226107126500232750ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "networkproxyfactory.h" #include "mainapplication.h" #include "settings.h" #include "pac/pacmanager.h" WildcardMatcher::WildcardMatcher(const QString &pattern) : m_regExp(0) { setPattern(pattern); } WildcardMatcher::~WildcardMatcher() { delete m_regExp; } void WildcardMatcher::setPattern(const QString &pattern) { m_pattern = pattern; if (m_pattern.contains(QLatin1Char('?')) || m_pattern.contains(QLatin1Char('*'))) { QString regexp = m_pattern; regexp.replace(QLatin1Char('.'), QLatin1String("\\.")) .replace(QLatin1Char('*'), QLatin1String(".*")) .replace(QLatin1Char('?'), QLatin1Char('.')); regexp = QString("^.*%1.*$").arg(regexp); m_regExp = new QzRegExp(regexp, Qt::CaseInsensitive); } } QString WildcardMatcher::pattern() const { return m_pattern; } bool WildcardMatcher::match(const QString &str) const { if (!m_regExp) { return str.contains(m_pattern, Qt::CaseInsensitive); } return m_regExp->indexIn(str) > -1; } NetworkProxyFactory::NetworkProxyFactory() : QNetworkProxyFactory() , m_pacManager(new PacManager) , m_proxyPreference(SystemProxy) , m_proxyType(QNetworkProxy::HttpProxy) , m_port(0) , m_httpsPort(0) { } void NetworkProxyFactory::loadSettings() { Settings settings; settings.beginGroup("Web-Proxy"); m_proxyPreference = ProxyPreference(settings.value("UseProxy", SystemProxy).toInt()); m_proxyType = QNetworkProxy::ProxyType(settings.value("ProxyType", QNetworkProxy::HttpProxy).toInt()); m_useDifferentProxyForHttps = settings.value("UseDifferentProxyForHttps", false).toBool(); m_hostName = settings.value("HostName", QString()).toString(); m_port = settings.value("Port", 8080).toInt(); m_username = settings.value("Username", QString()).toString(); m_password = settings.value("Password", QString()).toString(); m_httpsHostName = settings.value("HttpsHostName", QString()).toString(); m_httpsPort = settings.value("HttpsPort", 8080).toInt(); m_httpsUsername = settings.value("HttpsUsername", QString()).toString(); m_httpsPassword = settings.value("HttpsPassword", QString()).toString(); QStringList exceptions = settings.value("ProxyExceptions", QStringList() << "localhost" << "127.0.0.1").toStringList(); settings.endGroup(); qDeleteAll(m_proxyExceptions); m_proxyExceptions.clear(); foreach (const QString &exception, exceptions) { m_proxyExceptions.append(new WildcardMatcher(exception.trimmed())); } m_pacManager->loadSettings(); } PacManager* NetworkProxyFactory::pacManager() const { return m_pacManager; } NetworkProxyFactory::ProxyPreference NetworkProxyFactory::proxyPreference() const { return m_proxyPreference; } QList NetworkProxyFactory::queryProxy(const QNetworkProxyQuery &query) { QList proxyList; if (m_proxyPreference == NoProxy) { proxyList.append(QNetworkProxy::NoProxy); return proxyList; } const QString urlHost = query.url().host(); foreach (WildcardMatcher* m, m_proxyExceptions) { if (m->match(urlHost)) { proxyList.append(QNetworkProxy::NoProxy); return proxyList; } } switch (m_proxyPreference) { case SystemProxy: proxyList.append(systemProxyForQuery(query)); break; case ProxyAutoConfig: proxyList.append(m_pacManager->queryProxy(query.url())); break; case DefinedProxy: { QNetworkProxy proxy(m_proxyType); if (m_useDifferentProxyForHttps && query.protocolTag() == QLatin1String("https")) { proxy.setHostName(m_httpsHostName); proxy.setPort(m_httpsPort); proxy.setUser(m_httpsUsername); proxy.setPassword(m_httpsPassword); } else { proxy.setHostName(m_hostName); proxy.setPort(m_port); proxy.setUser(m_username); proxy.setPassword(m_password); } if (proxy.hostName().isEmpty()) { proxy = QNetworkProxy::NoProxy; } proxyList.append(proxy); break; } default: qWarning("NetworkProxyFactory::queryProxy Unknown proxy type!"); break; } if (!proxyList.contains(QNetworkProxy::NoProxy)) { proxyList.append(QNetworkProxy::NoProxy); } return proxyList; } NetworkProxyFactory::~NetworkProxyFactory() { qDeleteAll(m_proxyExceptions); } qupzilla-1.6.0/src/lib/network/networkproxyfactory.h000066400000000000000000000042641226107126500227510ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef NETWORKPROXYFACTORY_H #define NETWORKPROXYFACTORY_H #include #include #include "qz_namespace.h" #include "qzregexp.h" class PacManager; class WildcardMatcher { public: explicit WildcardMatcher(const QString &pattern = QString()); ~WildcardMatcher(); void setPattern(const QString &pattern); QString pattern() const; bool match(const QString &str) const; private: QString m_pattern; QzRegExp* m_regExp; }; class QT_QUPZILLA_EXPORT NetworkProxyFactory : public QNetworkProxyFactory { public: enum ProxyPreference { SystemProxy, NoProxy, ProxyAutoConfig, DefinedProxy }; explicit NetworkProxyFactory(); ~NetworkProxyFactory(); void loadSettings(); PacManager* pacManager() const; ProxyPreference proxyPreference() const; QList queryProxy(const QNetworkProxyQuery &query = QNetworkProxyQuery()); private: PacManager* m_pacManager; ProxyPreference m_proxyPreference; QNetworkProxy::ProxyType m_proxyType; QString m_hostName; quint16 m_port; QString m_username; QString m_password; QString m_httpsHostName; quint16 m_httpsPort; QString m_httpsUsername; QString m_httpsPassword; QList m_proxyExceptions; bool m_useDifferentProxyForHttps; }; #endif // NETWORKPROXYFACTORY_H qupzilla-1.6.0/src/lib/network/pac/000077500000000000000000000000001226107126500171525ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/network/pac/pacdatetime.h000066400000000000000000000170171226107126500216110ustar00rootroot00000000000000/* * The following subset of Javascript code was taken from Mozilla (http://www.mozilla.org) */ /* ***** BEGIN LICENSE BLOCK ***** * Version: NPL 1.1/GPL 2.0/LGPL 2.1 * * The contents of this file are subject to the Netscape Public License * Version 1.1 (the "License"); you may not use this file except in * compliance with the License. You may obtain a copy of the License at * http://www.mozilla.org/NPL/ * * Software distributed under the License is distributed on an "AS IS" basis, * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License * for the specific language governing rights and limitations under the * License. * * The Original Code is mozilla.org code. * * The Initial Developer of the Original Code is * Netscape Communications Corporation. * Portions created by the Initial Developer are Copyright (C) 1998 * the Initial Developer. All Rights Reserved. * * Contributor(s): * Akhil Arora * Tomi Leppikangas * * Alternatively, the contents of this file may be used under the terms of * either the GNU General Public License Version 2 or later (the "GPL"), or * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), * in which case the provisions of the GPL or the LGPL are applicable instead * of those above. If you wish to allow use of your version of this file only * under the terms of either the GPL or the LGPL, and not to allow others to * use your version of this file under the terms of the NPL, indicate your * decision by deleting the provisions above and replace them with the notice * and other provisions required by the GPL or the LGPL. If you do not delete * the provisions above, a recipient may use your version of this file under * the terms of any one of the NPL, the GPL or the LGPL. * * ***** END LICENSE BLOCK ***** */ #define PAC_DATETIME_JAVASCRIPT \ "var wdays = {SUN: 0, MON: 1, TUE: 2, WED: 3, THU: 4, FRI: 5, SAT: 6};\n" \ "var months = {JAN: 0, FEB: 1, MAR: 2, APR: 3, MAY: 4, JUN: 5, JUL: 6, AUG: 7, SEP: 8, OCT: 9, NOV: 10, DEC: 11};\n"\ "function weekdayRange() {\n" \ " function getDay(weekday) {\n" \ " if (weekday in wdays) {\n" \ " return wdays[weekday];\n" \ " }\n" \ " return -1;\n" \ " }\n" \ " var date = new Date();\n" \ " var argc = arguments.length;\n" \ " var wday;\n" \ " if (argc < 1)\n" \ " return false;\n" \ " if (arguments[argc - 1] == 'GMT') {\n" \ " argc--;\n" \ " wday = date.getUTCDay();\n" \ " } else {\n" \ " wday = date.getDay();\n" \ " }\n" \ " var wd1 = getDay(arguments[0]);\n" \ " var wd2 = (argc == 2) ? getDay(arguments[1]) : wd1;\n" \ " return (wd1 == -1 || wd2 == -1) ? false\n" \ " : (wd1 <= wday && wday <= wd2);\n" \ "}\n" \ "function dateRange() {\n" \ " function getMonth(name) {\n" \ " if (name in months) {\n" \ " return months[name];\n" \ " }\n" \ " return -1;\n" \ " }\n" \ " var date = new Date();\n" \ " var argc = arguments.length;\n" \ " if (argc < 1) {\n" \ " return false;\n" \ " }\n" \ " var isGMT = (arguments[argc - 1] == 'GMT');\n" \ " if (isGMT) {\n" \ " argc--;\n" \ " }\n" \ " if (argc == 1) {\n" \ " var tmp = parseInt(arguments[0]);\n" \ " if (isNaN(tmp)) {\n" \ " return ((isGMT ? date.getUTCMonth() : date.getMonth()) == getMonth(arguments[0]));\n" \ " } else if (tmp < 32) {\n" \ " return ((isGMT ? date.getUTCDate() : date.getDate()) == tmp);\n" \ " } else {\n" \ " return ((isGMT ? date.getUTCFullYear() : date.getFullYear()) == tmp);\n" \ " }\n" \ " }\n" \ " var year = date.getFullYear();\n" \ " var date1, date2;\n" \ " date1 = new Date(year, 0, 1, 0, 0, 0);\n" \ " date2 = new Date(year, 11, 31, 23, 59, 59);\n" \ " var adjustMonth = false;\n" \ " for (var i = 0; i < (argc >> 1); i++) {\n" \ " var tmp = parseInt(arguments[i]);\n" \ " if (isNaN(tmp)) {\n" \ " var mon = getMonth(arguments[i]);\n" \ " date1.setMonth(mon);\n" \ " } else if (tmp < 32) {\n" \ " adjustMonth = (argc <= 2);\n" \ " date1.setDate(tmp);\n" \ " } else {\n" \ " date1.setFullYear(tmp);\n" \ " }\n" \ " }\n" \ " for (var i = (argc >> 1); i < argc; i++) {\n" \ " var tmp = parseInt(arguments[i]);\n" \ " if (isNaN(tmp)) {\n" \ " var mon = getMonth(arguments[i]);\n" \ " date2.setMonth(mon);\n" \ " } else if (tmp < 32) {\n" \ " date2.setDate(tmp);\n" \ " } else {\n" \ " date2.setFullYear(tmp);\n" \ " }\n" \ " }\n" \ " if (adjustMonth) {\n" \ " date1.setMonth(date.getMonth());\n" \ " date2.setMonth(date.getMonth());\n" \ " }\n" \ " if (isGMT) {\n" \ " var tmp = date;\n" \ " tmp.setFullYear(date.getUTCFullYear());\n" \ " tmp.setMonth(date.getUTCMonth());\n" \ " tmp.setDate(date.getUTCDate());\n" \ " tmp.setHours(date.getUTCHours());\n" \ " tmp.setMinutes(date.getUTCMinutes());\n" \ " tmp.setSeconds(date.getUTCSeconds());\n" \ " date = tmp;\n" \ " }\n" \ " return ((date1 <= date) && (date <= date2));\n" \ "}\n" \ "function timeRange() {\n" \ " var argc = arguments.length;\n" \ " var date = new Date();\n" \ " var isGMT= false;\n" \ " if (argc < 1) {\n" \ " return false;\n" \ " }\n" \ " if (arguments[argc - 1] == 'GMT') {\n" \ " isGMT = true;\n" \ " argc--;\n" \ " }\n" \ " var hour = isGMT ? date.getUTCHours() : date.getHours();\n" \ " var date1, date2;\n" \ " date1 = new Date();\n" \ " date2 = new Date();\n" \ " if (argc == 1) {\n" \ " return (hour == arguments[0]);\n" \ " } else if (argc == 2) {\n" \ " return ((arguments[0] <= hour) && (hour <= arguments[1]));\n" \ " } else {\n" \ " switch (argc) {\n" \ " case 6:\n" \ " date1.setSeconds(arguments[2]);\n" \ " date2.setSeconds(arguments[5]);\n" \ " case 4:\n" \ " var middle = argc >> 1;\n" \ " date1.setHours(arguments[0]);\n" \ " date1.setMinutes(arguments[1]);\n" \ " date2.setHours(arguments[middle]);\n" \ " date2.setMinutes(arguments[middle + 1]);\n" \ " if (middle == 2) {\n" \ " date2.setSeconds(59);\n" \ " }\n" \ " break;\n" \ " default:\n" \ " throw 'timeRange: bad number of arguments'\n" \ " }\n" \ " }\n" \ " if (isGMT) {\n" \ " date.setFullYear(date.getUTCFullYear());\n" \ " date.setMonth(date.getUTCMonth());\n" \ " date.setDate(date.getUTCDate());\n" \ " date.setHours(date.getUTCHours());\n" \ " date.setMinutes(date.getUTCMinutes());\n" \ " date.setSeconds(date.getUTCSeconds());\n" \ " }\n" \ " return ((date1 <= date) && (date <= date2));\n" \ "}\n" \ "" qupzilla-1.6.0/src/lib/network/pac/pacmanager.cpp000066400000000000000000000107301226107126500217550ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "pacmanager.h" #include "proxyautoconfig.h" #include "mainapplication.h" #include "networkmanager.h" #include "followredirectreply.h" #include "settings.h" #include "qztools.h" #include #include #include #include #include PacManager::PacManager(QObject* parent) : QObject(parent) , m_pacrunner(0) , m_reply(0) , m_loaded(false) { } void PacManager::loadSettings() { QUrl oldUrl = m_url; Settings settings; settings.beginGroup("Web-Proxy"); m_url = settings.value("PacUrl", QUrl()).toUrl(); settings.endGroup(); if (m_loaded && oldUrl != m_url) { downloadPacFile(); } m_loaded = true; } void PacManager::downloadPacFile() { if (m_reply) { qWarning() << "PacManager: PAC file is already being downloaded!"; return; } if (m_url.scheme() == QLatin1String("file")) { if (!QFile(m_url.path()).exists()) { qWarning() << "PacManager: PAC file " << m_url.path() << "doesn't exists!"; } else { reloadScript(); } return; } m_reply = new FollowRedirectReply(m_url, mApp->networkManager()); connect(m_reply, SIGNAL(finished()), this, SLOT(replyFinished())); } QList PacManager::queryProxy(const QUrl &url) { if (!m_pacrunner) { reloadScript(); } QString proxyString = m_pacrunner->findProxyForUrl(url.toEncoded(), url.host()); return parseProxies(proxyString.trimmed()); } void PacManager::replyFinished() { if (m_reply->error() != QNetworkReply::NoError) { qWarning() << "PacManager: Cannot download PAC file from" << m_url; m_reply->deleteLater(); m_reply = 0; return; } QByteArray data = m_reply->readAll(); m_reply->deleteLater(); m_reply = 0; QFile file(mApp->currentProfilePath() + "proxy.pac"); if (!file.open(QFile::WriteOnly)) { qWarning() << "PacManager: Cannot open PAC file for writing" << file.fileName(); return; } file.write(data); file.close(); reloadScript(); } void PacManager::reloadScript() { if (!m_pacrunner) { m_pacrunner = new ProxyAutoConfig(this); } QFile file(m_url.scheme() == QLatin1String("file") ? m_url.path() : mApp->currentProfilePath() + "proxy.pac"); if (!file.open(QFile::ReadOnly)) { qWarning() << "PacManager: Cannot open PAC file for reading" << file.fileName(); return; } m_pacrunner->setConfig(file.readAll()); } QList PacManager::parseProxies(const QString &string) { QList proxies; string.trimmed(); if (string.isEmpty()) { return proxies; } QStringList parts = string.split(QLatin1Char(';'), QString::SkipEmptyParts); if (parts.isEmpty()) { parts.append(string); } foreach (const QString &s, parts) { QStringList l = s.split(QLatin1Char(' '), QString::SkipEmptyParts); if (l.count() != 2) { if (l.count() == 1 && l.at(0) == QLatin1String("DIRECT")) { proxies.append(QNetworkProxy::NoProxy); } continue; } QString type = l.at(0); QUrl url = QUrl::fromEncoded("proxy://" + l.at(1).toUtf8()); if (type == QLatin1String("PROXY")) { QNetworkProxy proxy(QNetworkProxy::HttpProxy, url.host(), url.port(8080)); proxies.append(proxy); } else if (type == QLatin1String("SOCKS")) { QNetworkProxy proxy(QNetworkProxy::Socks5Proxy, url.host(), url.port(1080)); proxies.append(proxy); } } return proxies; } qupzilla-1.6.0/src/lib/network/pac/pacmanager.h000066400000000000000000000030171226107126500214220ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef PACMANAGER_H #define PACMANAGER_H #include #include #include #include "qz_namespace.h" class QNetworkProxy; class FollowRedirectReply; class ProxyAutoConfig; class QT_QUPZILLA_EXPORT PacManager : public QObject { Q_OBJECT public: explicit PacManager(QObject* parent = 0); void loadSettings(); void downloadPacFile(); QList queryProxy(const QUrl &url); private slots: void replyFinished(); private: void reloadScript(); QList parseProxies(const QString &string); ProxyAutoConfig* m_pacrunner; FollowRedirectReply* m_reply; bool m_loaded; QUrl m_url; }; #endif // PACMANAGER_H qupzilla-1.6.0/src/lib/network/pac/proxyautoconfig.cpp000066400000000000000000000203511226107126500231170ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "proxyautoconfig.h" #include "pacdatetime.h" #include "qztools.h" #include "qzregexp.h" #include #include #include #include #include #include /** * Class implementing the proxy auto-configuration (PAC) JavaScript api. * * Based on qt-examples: https://gitorious.org/qt-examples/qt-examples/blobs/master/pac-files */ ProxyAutoConfig::ProxyAutoConfig(QObject* parent) : QObject(parent) , m_engine(new QScriptEngine(this)) { install(); } void ProxyAutoConfig::setConfig(const QString &config) { m_engine->evaluate(config); } // string findProxyForUrl url host QString ProxyAutoConfig::findProxyForUrl(const QString &url, const QString &host) { QScriptValue global = m_engine->globalObject(); QScriptValue fun = global.property("FindProxyForURL"); if (!fun.isFunction()) { return QString("DIRECT"); } QScriptValueList args; args << m_engine->toScriptValue(url) << m_engine->toScriptValue(host); QScriptValue val = fun.call(global, args); if (val.isError()) { qWarning() << "PAC Error:" << val.toString(); return QString("DIRECT"); } return val.toString(); } QScriptValue ProxyAutoConfig::evaluate(const QString &source) { return m_engine->evaluate(source); } void ProxyAutoConfig::install() { QScriptValue globalObject = m_engine->globalObject(); QScriptValue fun; fun = m_engine->newFunction(debug); globalObject.setProperty("debug", fun); fun = m_engine->newFunction(isPlainHostName); globalObject.setProperty("isPlainHostName", fun); fun = m_engine->newFunction(dnsDomainIs); globalObject.setProperty("dnsDomainIs", fun); fun = m_engine->newFunction(localHostOrDomainIs); globalObject.setProperty("localHostOrDomainIs", fun); fun = m_engine->newFunction(isResolvable); globalObject.setProperty("isResolvable", fun); fun = m_engine->newFunction(isInNet); globalObject.setProperty("isInNet", fun); fun = m_engine->newFunction(dnsResolve); globalObject.setProperty("dnsResolve", fun); fun = m_engine->newFunction(myIpAddress); globalObject.setProperty("myIpAddress", fun); fun = m_engine->newFunction(dnsDomainLevels); globalObject.setProperty("dnsDomainLevels", fun); fun = m_engine->newFunction(shExpMatch); globalObject.setProperty("shExpMatch", fun); m_engine->evaluate(PAC_DATETIME_JAVASCRIPT); } QScriptValue ProxyAutoConfig::debug(QScriptContext* context, QScriptEngine* engine) { if (context->argumentCount() != 1) { return context->throwError("Debug takes one argument"); } qDebug() << context->argument(0).toString(); return engine->undefinedValue(); } // bool isPlainHostName host QScriptValue ProxyAutoConfig::isPlainHostName(QScriptContext* context, QScriptEngine* engine) { if (context->argumentCount() != 1) { return context->throwError("isPlainHostName takes one argument"); } bool ret = !context->argument(0).toString().contains(QLatin1Char('.')); return QScriptValue(engine, ret); } // bool dnsDomainIs host domain QScriptValue ProxyAutoConfig::dnsDomainIs(QScriptContext* context, QScriptEngine* engine) { if (context->argumentCount() != 2) { return context->throwError("dnsDomainIs takes two arguments"); } QString host = context->argument(0).toString(); QString domain = context->argument(1).toString(); if (host.startsWith(QLatin1Char('.'))) { host = host.mid(1); } if (domain.startsWith(QLatin1Char('.'))) { domain = domain.mid(1); } return QScriptValue(engine, QzTools::matchDomain(domain, host)); } // bool localHostOrDomainIs host hostdom QScriptValue ProxyAutoConfig::localHostOrDomainIs(QScriptContext* context, QScriptEngine* engine) { if (context->argumentCount() != 2) { return context->throwError("localHostOrDomainIs takes two arguments"); } QString host = context->argument(0).toString(); QString hostdom = context->argument(1).toString(); bool ret = !host.contains(QLatin1Char('.')) ? hostdom.startsWith(host) : host == hostdom; return QScriptValue(engine, ret); } static QList hostResolve(const QString &host) { QHostInfo info = QHostInfo::fromName(host); return info.addresses(); } // bool isResolvable host QScriptValue ProxyAutoConfig::isResolvable(QScriptContext* context, QScriptEngine* engine) { if (context->argumentCount() != 1) { return context->throwError("isResolvable takes one arguments"); } QString host = context->argument(0).toString(); return QScriptValue(engine, !hostResolve(host).isEmpty()); } // bool isInNet host pattern mask QScriptValue ProxyAutoConfig::isInNet(QScriptContext* context, QScriptEngine* engine) { if (context->argumentCount() != 3) { return context->throwError("isInNet takes three arguments"); } QHostAddress host(context->argument(0).toString()); QHostAddress pattern(context->argument(1).toString()); QHostAddress mask(context->argument(2).toString()); if (host.isNull()) { QList addresses = hostResolve(context->argument(0).toString()); host = addresses.isEmpty() ? QHostAddress() : addresses.first(); } if ((pattern.toIPv4Address() & mask.toIPv4Address()) == (host.toIPv4Address() & mask.toIPv4Address())) { return QScriptValue(engine, true); } return QScriptValue(engine, false); } // string dnsResolve hostname QScriptValue ProxyAutoConfig::dnsResolve(QScriptContext* context, QScriptEngine* engine) { if (context->argumentCount() != 1) { return context->throwError("dnsResolve takes one arguments"); } QString host = context->argument(0).toString(); QList addresses = hostResolve(host); if (addresses.isEmpty()) { return engine->nullValue(); } return QScriptValue(engine, addresses.first().toString()); } // string myIpAddress QScriptValue ProxyAutoConfig::myIpAddress(QScriptContext* context, QScriptEngine* engine) { if (context->argumentCount() != 0) { return context->throwError("myIpAddress takes no arguments"); } foreach (QHostAddress address, QNetworkInterface::allAddresses()) { if (address != QHostAddress::LocalHost && address != QHostAddress::LocalHostIPv6) { return QScriptValue(engine, address.toString()); } } return engine->undefinedValue(); } // int dnsDomainLevels host QScriptValue ProxyAutoConfig::dnsDomainLevels(QScriptContext* context, QScriptEngine* engine) { if (context->argumentCount() != 1) { return context->throwError("dnsDomainLevels takes one argument"); } QString host = context->argument(0).toString(); return QScriptValue(engine, host.count(QLatin1Char('.'))); } // bool shExpMatch str shexp QScriptValue ProxyAutoConfig::shExpMatch(QScriptContext* context, QScriptEngine* engine) { if (context->argumentCount() != 2) { return context->throwError("shExpMatch takes two arguments"); } QString str = context->argument(0).toString(); QString shexp = context->argument(1).toString(); shexp.replace(QLatin1Char('.'), QLatin1String("\\.")) .replace(QLatin1Char('*'), QLatin1String(".*")) .replace(QLatin1Char('?'), QLatin1Char('.')); shexp = QString("^%1$").arg(shexp); QzRegExp re(shexp); bool ret = re.indexIn(str) != -1; return QScriptValue(engine, ret); } qupzilla-1.6.0/src/lib/network/pac/proxyautoconfig.h000066400000000000000000000054271226107126500225730ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef PROXYAUTOCONFIG_H #define PROXYAUTOCONFIG_H #include #include #include "qz_namespace.h" class QScriptContext; class QScriptEngine; /** * Class implementing the proxy auto-configuration (PAC) JavaScript api. * * Based on qt-examples: https://gitorious.org/qt-examples/qt-examples/blobs/master/pac-files */ class QT_QUPZILLA_EXPORT ProxyAutoConfig : public QObject { Q_OBJECT public: explicit ProxyAutoConfig(QObject* parent = 0); // Call this to set the script to be executed. Note that the argument should be // the content of the .pac file to be used, not the URL where it is located. void setConfig(const QString &config); // Returns the result QString findProxyForUrl(const QString &url, const QString &host); protected: QScriptValue evaluate(const QString &source); private: void install(); // Debug static QScriptValue debug(QScriptContext* context, QScriptEngine* engine); // Hostname based conditions static QScriptValue isPlainHostName(QScriptContext* context, QScriptEngine* engine); static QScriptValue dnsDomainIs(QScriptContext* context, QScriptEngine* engine); static QScriptValue localHostOrDomainIs(QScriptContext* context, QScriptEngine* engine); static QScriptValue isResolvable(QScriptContext* context, QScriptEngine* engine); static QScriptValue isInNet(QScriptContext* context, QScriptEngine* engine); // Related utility functions static QScriptValue dnsResolve(QScriptContext* context, QScriptEngine* engine); static QScriptValue myIpAddress(QScriptContext* context, QScriptEngine* engine); static QScriptValue dnsDomainLevels(QScriptContext* context, QScriptEngine* engine); // URL/hostname based conditions static QScriptValue shExpMatch(QScriptContext* context, QScriptEngine* engine); // Time based conditions // Implemented in JavaScript private: QScriptEngine* m_engine; }; #endif // PROXYAUTOCONFIG_H qupzilla-1.6.0/src/lib/network/schemehandlers/000077500000000000000000000000001226107126500213745ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/network/schemehandlers/adblockschemehandler.cpp000066400000000000000000000050021226107126500262170ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "adblockschemehandler.h" #include "adblockmanager.h" #include "emptynetworkreply.h" #include #include #if QT_VERSION >= 0x050000 #include #endif AdBlockSchemeHandler::AdBlockSchemeHandler() : SchemeHandler() { } QNetworkReply* AdBlockSchemeHandler::createRequest(QNetworkAccessManager::Operation op, const QNetworkRequest &request, QIODevice* outgoingData) { Q_UNUSED(outgoingData) if (op != QNetworkAccessManager::GetOperation) { return 0; } const QUrl url = request.url(); const QList > queryItems = #if QT_VERSION >= 0x050000 QUrlQuery(url).queryItems(); #else url.queryItems(); #endif QString subscriptionTitle; QString subscriptionUrl; for (int i = 0; i < queryItems.count(); ++i) { QPair pair = queryItems.at(i); if (pair.first == QLatin1String("location")) { subscriptionUrl = pair.second; } else if (pair.first == QLatin1String("title")) { subscriptionTitle = pair.second; } } if (subscriptionTitle.isEmpty() || subscriptionUrl.isEmpty()) { return 0; } const QString message = AdBlockManager::tr("Do you want to add %1 subscription?").arg(subscriptionTitle); QMessageBox::StandardButton result = QMessageBox::question(0, AdBlockManager::tr("AdBlock Subscription"), message, QMessageBox::Yes | QMessageBox::No); if (result == QMessageBox::Yes) { AdBlockManager::instance()->addSubscription(subscriptionTitle, subscriptionUrl); AdBlockManager::instance()->showDialog(); } return new EmptyNetworkReply; } qupzilla-1.6.0/src/lib/network/schemehandlers/adblockschemehandler.h000066400000000000000000000023401226107126500256660ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef ADBLOCKSCHEMEHANDLER_H #define ADBLOCKSCHEMEHANDLER_H #include "qz_namespace.h" #include "schemehandler.h" class QT_QUPZILLA_EXPORT AdBlockSchemeHandler : public SchemeHandler { public: AdBlockSchemeHandler(); QNetworkReply* createRequest(QNetworkAccessManager::Operation op, const QNetworkRequest &request, QIODevice* outgoingData); }; #endif // ADBLOCKSCHEMEHANDLER_H qupzilla-1.6.0/src/lib/network/schemehandlers/fileschemehandler.cpp000066400000000000000000000207001226107126500255410ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "fileschemehandler.h" #include "qztools.h" #include "iconprovider.h" #include "downloadoptionsdialog.h" #include "mainapplication.h" #include "qupzilla.h" #include #include #include #include #include #include #include #include FileSchemeHandler::FileSchemeHandler() { } QNetworkReply* FileSchemeHandler::createRequest(QNetworkAccessManager::Operation op, const QNetworkRequest &request, QIODevice* outgoingData) { Q_UNUSED(outgoingData) if (op != QNetworkAccessManager::GetOperation) { return 0; } // Only list directories QString filePath = request.url().toLocalFile(); QFileInfo fileInfo(filePath); if (!fileInfo.isDir() || !fileInfo.isReadable() || !fileInfo.exists()) { return 0; } #ifdef Q_OS_WIN QNetworkRequest req = request; if (filePath.endsWith(QLatin1Char(':'))) { filePath.append(QLatin1Char('/')); req.setUrl(QUrl::fromLocalFile(filePath)); } else if (filePath.endsWith(QLatin1String(".lnk"))) { req.setUrl(QUrl::fromLocalFile(fileInfo.canonicalFilePath())); } FileSchemeReply* reply = new FileSchemeReply(req); #else FileSchemeReply* reply = new FileSchemeReply(request); #endif return reply; } void FileSchemeHandler::handleUrl(const QUrl &url) { QFileIconProvider iconProvider; QFile file(url.toLocalFile()); QFileInfo info(file); if (!info.exists() || info.isDir() || !info.isReadable()) { return; } const QString fileName = info.fileName(); const QPixmap pixmap = iconProvider.icon(info).pixmap(30); const QString type = iconProvider.type(info); DownloadOptionsDialog dialog(fileName, pixmap, type, url, mApp->getWindow()); dialog.showExternalManagerOption(false); dialog.showFromLine(false); int status = dialog.exec(); if (status == 1) { // Open QDesktopServices::openUrl(url); } else if (status == 2) { // Save const QString savePath = QzTools::getSaveFileName("FileSchemeHandler-Save", mApp->getWindow(), QObject::tr("Save file as..."), QDir::homePath() + QDir::separator() + QzTools::getFileNameFromUrl(url)); if (!savePath.isEmpty()) { file.copy(savePath); } } } FileSchemeReply::FileSchemeReply(const QNetworkRequest &req, QObject* parent) : QNetworkReply(parent) { setOperation(QNetworkAccessManager::GetOperation); setRequest(req); setUrl(req.url()); m_buffer.open(QIODevice::ReadWrite); setError(QNetworkReply::NoError, tr("No Error")); open(QIODevice::ReadOnly); QTimer::singleShot(0, this, SLOT(loadPage())); } qint64 FileSchemeReply::bytesAvailable() const { return m_buffer.bytesAvailable() + QNetworkReply::bytesAvailable(); } qint64 FileSchemeReply::readData(char* data, qint64 maxSize) { return m_buffer.read(data, maxSize); } void FileSchemeReply::loadPage() { QTextStream stream(&m_buffer); stream.setCodec("UTF-8"); stream << loadDirectory(); stream.flush(); m_buffer.reset(); setHeader(QNetworkRequest::ContentTypeHeader, QByteArray("text/html")); setHeader(QNetworkRequest::ContentLengthHeader, m_buffer.bytesAvailable()); setAttribute(QNetworkRequest::HttpStatusCodeAttribute, 200); setAttribute(QNetworkRequest::HttpReasonPhraseAttribute, QByteArray("Ok")); emit metaDataChanged(); emit downloadProgress(m_buffer.size(), m_buffer.size()); emit readyRead(); emit finished(); } QString FileSchemeReply::loadDirectory() { const QDir dir = QDir(request().url().toLocalFile()); const QFileInfoList list = dir.entryInfoList(QDir::AllEntries | QDir::Hidden, QDir::Name | QDir::DirsFirst | QDir::IgnoreCase); static QString sPage; if (sPage.isEmpty()) { sPage = QzTools::readAllFileContents(":/html/dirlist.html"); sPage.replace(QLatin1String("%BOX-BORDER%"), QLatin1String("qrc:html/box-border.png")); sPage.replace(QLatin1String("%UP-IMG%"), QzTools::pixmapToByteArray(qIconProvider->standardIcon(QStyle::SP_FileDialogToParent).pixmap(22))); sPage.replace(QLatin1String("%UP-DIR-TEXT%"), tr("Up to higher level directory")); sPage.replace(QLatin1String("%SHOW-HIDDEN-TEXT%"), tr("Show hidden files")); sPage.replace(QLatin1String("%NAME%"), tr("Name")); sPage.replace(QLatin1String("%SIZE%"), tr("Size")); sPage.replace(QLatin1String("%MODIFIED%"), tr("Last modified")); sPage = QzTools::applyDirectionToPage(sPage); } QString page = sPage; QString title = request().url().toLocalFile(); title.replace(QLatin1Char('/'), QDir::separator()); page.replace(QLatin1String("%TITLE%"), tr("Index for %1").arg(title)); page.replace(QLatin1String("%CLICKABLE-TITLE%"), tr("Index for %1").arg(clickableSections(title))); QString upDirDisplay = QLatin1String("none"); QString showHiddenDisplay = QLatin1String("none"); QString tBody; if (!dir.isRoot()) { QDir upDir = dir; upDir.cdUp(); upDirDisplay = QLatin1String("inline"); page.replace(QLatin1String("%UP-DIR-LINK%"), QUrl::fromLocalFile(upDir.absolutePath()).toEncoded()); } foreach (const QFileInfo &info, list) { if (info.fileName() == QLatin1String(".") || info.fileName() == QLatin1String("..")) { continue; } QString line = QLatin1String(""); line += QLatin1String(""); line += info.fileName(); line += QLatin1String(""); line += info.isDir() ? QString() : QzTools::fileSizeToString(info.size()); line += QLatin1String(""); line += info.lastModified().toString("dd.MM.yyyy"); line += QLatin1String(""); line += info.lastModified().toString("hh:mm:ss"); line += QLatin1String("\n"); tBody.append(line); } if (tBody.isEmpty()) { tBody = QString("%1").arg(tr("Folder is empty.")); } page.replace(QLatin1String("%T-BODY%"), tBody); page.replace(QLatin1String("%UP-DIR-DISPLAY%"), upDirDisplay); page.replace(QLatin1String("%SHOW-HIDDEN-DISPLAY%"), showHiddenDisplay); return page; } QString FileSchemeReply::clickableSections(const QString &path) { QString title = path; const QString dirSeparator = QDir::separator(); QStringList sections = title.split(dirSeparator, QString::SkipEmptyParts); if (sections.isEmpty()) { return QString("%1").arg(path); } title.clear(); #ifndef Q_OS_WIN title = QString("%1").arg(dirSeparator); #endif for (int i = 0; i < sections.size(); ++i) { QStringList currentParentSections = sections.mid(0, i + 1); QString localFile = currentParentSections.join(QLatin1String("/")); #ifndef Q_OS_WIN localFile.prepend(dirSeparator); #endif title += QString("%2%3").arg(QUrl::fromLocalFile(localFile).toEncoded(), sections.at(i), dirSeparator); } return title; } qupzilla-1.6.0/src/lib/network/schemehandlers/fileschemehandler.h000066400000000000000000000034041226107126500252100ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef FILESCHEMEHANDLER_H #define FILESCHEMEHANDLER_H #include #include #include "schemehandler.h" #include "qz_namespace.h" class QT_QUPZILLA_EXPORT FileSchemeHandler : public SchemeHandler { public: explicit FileSchemeHandler(); QNetworkReply* createRequest(QNetworkAccessManager::Operation op, const QNetworkRequest &request, QIODevice* outgoingData); static void handleUrl(const QUrl &url); }; class QT_QUPZILLA_EXPORT FileSchemeReply : public QNetworkReply { Q_OBJECT public: explicit FileSchemeReply(const QNetworkRequest &req, QObject* parent = 0); qint64 bytesAvailable() const; protected: qint64 readData(char* data, qint64 maxSize); void abort() { } private slots: void loadPage(); private: QString loadDirectory(); QString clickableSections(const QString &path); QBuffer m_buffer; QString m_pageName; }; #endif // FILESCHEMEHANDLER_H qupzilla-1.6.0/src/lib/network/schemehandlers/ftpschemehandler.cpp000066400000000000000000000405741226107126500254260ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * Copyright (C) 2013 S. Razi Alavizadeh * Some codes and ideas are from webftpclient example by Qt Lab * * 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 3 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, see . * ============================================================ */ #include "ftpschemehandler.h" #include "qztools.h" #include "iconprovider.h" #include "mainapplication.h" #include #include #include #include #include QHash FtpSchemeHandler::m_ftpAuthenticatorsCache = QHash(); FtpSchemeHandler::FtpSchemeHandler() { } QNetworkReply* FtpSchemeHandler::createRequest(QNetworkAccessManager::Operation op, const QNetworkRequest &request, QIODevice* outgoingData) { Q_UNUSED(outgoingData) if (op != QNetworkAccessManager::GetOperation) { return 0; } QNetworkReply* reply = new FtpSchemeReply(request); return reply; } QAuthenticator* FtpSchemeHandler::ftpAuthenticator(const QUrl &url) { QString key = url.host(); if (key.isEmpty()) { key = url.toString(); } if (!m_ftpAuthenticatorsCache.contains(key) || !m_ftpAuthenticatorsCache.value(key, 0)) { QAuthenticator* auth = new QAuthenticator(); auth->setUser(url.userName()); auth->setPassword(url.password()); m_ftpAuthenticatorsCache.insert(key, auth); } return m_ftpAuthenticatorsCache.value(key); } FtpSchemeReply::FtpSchemeReply(const QNetworkRequest &request, QObject* parent) : QNetworkReply(parent) , m_ftpLoginId(-1) , m_ftpCdId(-1) , m_port(21) , m_anonymousLoginChecked(false) , m_request(request) , m_isGoingToDownload(false) { m_ftp = new QFtp(this); connect(m_ftp, SIGNAL(listInfo(QUrlInfo)), this, SLOT(processListInfo(QUrlInfo))); connect(m_ftp, SIGNAL(readyRead()), this, SLOT(processData())); connect(m_ftp, SIGNAL(commandFinished(int,bool)), this, SLOT(processCommand(int,bool))); connect(m_ftp, SIGNAL(dataTransferProgress(qint64,qint64)), this, SIGNAL(downloadProgress(qint64,qint64))); m_buffer.open(QIODevice::ReadWrite); if (request.url().port() != -1) { m_port = request.url().port(); } setUrl(request.url()); m_ftp->connectToHost(request.url().host(), m_port); } void FtpSchemeReply::processCommand(int id, bool err) { if (err) { ftpReplyErrorHandler(id); return; } switch (m_ftp->currentCommand()) { case QFtp::ConnectToHost: if (!m_anonymousLoginChecked) { m_anonymousLoginChecked = FTP_AUTHENTICATOR(url())->user().isEmpty() && FTP_AUTHENTICATOR(url())->password().isEmpty(); } m_ftpLoginId = m_ftp->login(FTP_AUTHENTICATOR(url())->user(), FTP_AUTHENTICATOR(url())->password()); break; case QFtp::Login: if (url().path().isEmpty() || url().path() == QLatin1String("/")) { m_ftp->list(); } else { m_ftpCdId = m_ftp->cd(QString::fromLatin1(QByteArray::fromPercentEncoding(url().path().toUtf8()))); } break; case QFtp::Cd: m_ftp->list(); break; case QFtp::List: if (m_isGoingToDownload) { foreach (const QUrlInfo &item, m_items) { // don't check if it's a file or not, // seems it's a QFtp's bug: for link to a file isDir() returns true if (item.name() == m_probablyFileForDownload) { QByteArray decodedUrl = QByteArray::fromPercentEncoding(url().toString().toUtf8()); if (QzTools::isUtf8(decodedUrl.constData())) { m_request.setUrl(QUrl(QString::fromUtf8(decodedUrl))); } else { m_request.setUrl(QUrl(QString::fromLatin1(decodedUrl))); } emit downloadRequest(m_request); abort(); break; } } m_probablyFileForDownload.clear(); m_isGoingToDownload = false; abort(); } else { loadPage(); } break; case QFtp::Get: setContent(); break; default: ; } } void FtpSchemeReply::processListInfo(QUrlInfo urlInfo) { QByteArray nameLatin1 = urlInfo.name().toLatin1(); if (QzTools::isUtf8(nameLatin1.constData())) { urlInfo.setName(QString::fromUtf8(nameLatin1)); } m_items.append(urlInfo); } void FtpSchemeReply::processData() { open(ReadOnly | Unbuffered); QTextStream stream(&m_buffer); stream.setCodec("UTF-8"); stream << m_ftp->readAll(); stream.flush(); m_buffer.reset(); setHeader(QNetworkRequest::ContentLengthHeader, m_buffer.bytesAvailable()); emit metaDataChanged(); } void FtpSchemeReply::setContent() { open(ReadOnly | Unbuffered); setHeader(QNetworkRequest::ContentLengthHeader, QVariant(m_buffer.size())); emit readyRead(); emit finished(); m_ftp->close(); } void FtpSchemeReply::abort() { setError(QNetworkReply::OperationCanceledError, "QupZilla:No Error"); emit error(QNetworkReply::OperationCanceledError); emit finished(); m_ftp->close(); } qint64 FtpSchemeReply::bytesAvailable() const { return m_buffer.bytesAvailable() + QNetworkReply::bytesAvailable(); } bool FtpSchemeReply::isSequential() const { return true; } qint64 FtpSchemeReply::readData(char* data, qint64 maxSize) { return m_buffer.read(data, maxSize); } void FtpSchemeReply::loadPage() { QWebSecurityOrigin::addLocalScheme("ftp"); open(ReadOnly | Unbuffered); QTextStream stream(&m_buffer); stream.setCodec("UTF-8"); stream << loadDirectory(); stream.flush(); m_buffer.reset(); setHeader(QNetworkRequest::ContentTypeHeader, QByteArray("text/html")); setHeader(QNetworkRequest::ContentLengthHeader, m_buffer.bytesAvailable()); setAttribute(QNetworkRequest::HttpStatusCodeAttribute, 200); setAttribute(QNetworkRequest::HttpReasonPhraseAttribute, QByteArray("Ok")); emit metaDataChanged(); emit readyRead(); emit finished(); m_ftp->close(); QWebSecurityOrigin::removeLocalScheme("ftp"); } QString FtpSchemeReply::loadDirectory() { QUrl u = url(); if (!u.path().endsWith(QLatin1Char('/'))) { u.setPath(u.path() + QLatin1String("/")); } QString base_path = u.path(); const QDir dir = QDir(base_path); QUrl parent = u.resolved(QUrl("..")); static QString sPage; if (sPage.isEmpty()) { sPage = QzTools::readAllFileContents(":/html/dirlist.html"); sPage.replace(QLatin1String("%BOX-BORDER%"), QLatin1String("qrc:html/box-border.png")); sPage.replace(QLatin1String("%UP-IMG%"), QzTools::pixmapToByteArray(qIconProvider->standardIcon(QStyle::SP_FileDialogToParent).pixmap(22))); sPage.replace(QLatin1String("%UP-DIR-TEXT%"), tr("Up to higher level directory")); sPage.replace(QLatin1String("%SHOW-HIDDEN-TEXT%"), tr("Show hidden files")); sPage.replace(QLatin1String("%NAME%"), tr("Name")); sPage.replace(QLatin1String("%SIZE%"), tr("Size")); sPage.replace(QLatin1String("%MODIFIED%"), tr("Last modified")); sPage = QzTools::applyDirectionToPage(sPage); } QString page = sPage; QByteArray titleByteArray = QByteArray::fromPercentEncoding(url().toString().toUtf8()); QString title; if (QzTools::isUtf8(titleByteArray.constData())) { title = QString::fromUtf8(titleByteArray); } else { title = QString::fromLatin1(titleByteArray); } page.replace(QLatin1String("%TITLE%"), tr("Index for %1").arg(title)); page.replace(QLatin1String("%CLICKABLE-TITLE%"), tr("Index for %1").arg(clickableSections(title))); QString upDirDisplay = QLatin1String("none"); QString tBody; if (!dir.isRoot()) { upDirDisplay = QLatin1String("inline"); page.replace(QLatin1String("%UP-DIR-LINK%"), parent.toEncoded()); } int lastIndex = m_items.size(); for (int i = 0; i < lastIndex; ++i) { if (m_items.at(i).isFile()) { m_items.move(i, m_items.size() - 1); --lastIndex; --i; } } foreach (const QUrlInfo &item, m_items) { if (item.name() == QLatin1String(".") || item.name() == QLatin1String("..")) { continue; } QString line = QLatin1String("standardIcon(QStyle::SP_DirLinkIcon); } else if (item.isFile()) { itemIcon = QzTools::iconFromFileName(itemPath); } else { itemIcon = qIconProvider->standardIcon(QStyle::SP_DirIcon); } line += QLatin1String(">"); line += QLatin1String(""); line += item.name(); line += QLatin1String(""); line += item.isDir() ? QString() : QzTools::fileSizeToString(item.size()); line += QLatin1String(""); line += item.lastModified().toString("dd.MM.yyyy"); line += QLatin1String(""); line += item.lastModified().toString("hh:mm:ss"); line += QLatin1String("\n"); tBody.append(line); } if (tBody.isEmpty()) { tBody = QString("%1").arg(tr("Folder is empty.")); } page.replace(QLatin1String("%T-BODY%"), tBody); page.replace(QLatin1String("%UP-DIR-DISPLAY%"), upDirDisplay); page.replace(QLatin1String("%SHOW-HIDDEN-DISPLAY%"), QLatin1String("none")); return page; } QString FtpSchemeReply::clickableSections(const QString &path) { QString title = path; title.remove(QLatin1String("ftp://")); QStringList sections = title.split(QLatin1Char('/'), QString::SkipEmptyParts); if (sections.isEmpty()) { return QString("%1").arg(path); } sections[0].prepend(QLatin1String("ftp://")); title.clear(); for (int i = 0; i < sections.size(); ++i) { QStringList currentParentSections = sections.mid(0, i + 1); QUrl currentParentUrl = QUrl(currentParentSections.join(QLatin1String("/"))); title += QString("%2/").arg(currentParentUrl.toEncoded(), sections.at(i)); } return title; } void FtpSchemeReply::ftpReplyErrorHandler(int id) { if (m_ftpLoginId == id) { if (!m_anonymousLoginChecked) { m_anonymousLoginChecked = true; FTP_AUTHENTICATOR(url())->setUser(QString()); FTP_AUTHENTICATOR(url())->setPassword(QString()); m_ftpLoginId = m_ftp->login(); return; } emit ftpAuthenticationRequierd(url(), FTP_AUTHENTICATOR(url())); m_ftpLoginId = m_ftp->login(FTP_AUTHENTICATOR(url())->user(), FTP_AUTHENTICATOR(url())->password()); return; } else if (m_ftpCdId == id) { if (m_isGoingToDownload) { m_isGoingToDownload = false; abort(); return; } QStringList sections = url().path().split(QLatin1Char('/'), QString::SkipEmptyParts); if (!sections.isEmpty()) { QByteArray lastSection = QByteArray::fromPercentEncoding(sections.takeLast().toUtf8()); if (QzTools::isUtf8(lastSection.constData())) { m_probablyFileForDownload = QString::fromUtf8(lastSection); } else { m_probablyFileForDownload = QString::fromLatin1(lastSection); } } if (!m_probablyFileForDownload.isEmpty()) { m_isGoingToDownload = true; QString parentOfPath = QString("/%1/").arg(sections.join(QLatin1String("/"))); m_ftpCdId = m_ftp->cd(QString::fromLatin1(QByteArray::fromPercentEncoding(parentOfPath.toUtf8()))); } else { abort(); } return; } else { setError(ContentNotFoundError, tr("Unknown command")); emit error(ContentNotFoundError); emit finished(); } } FtpDownloader::FtpDownloader(QObject* parent) : QFtp(parent) , m_ftpLoginId(-1) , m_anonymousLoginChecked(false) , m_isFinished(false) , m_url(QUrl()) , m_dev(0) , m_lastError(QFtp::NoError) { connect(this, SIGNAL(commandFinished(int,bool)), this, SLOT(processCommand(int,bool))); connect(this, SIGNAL(done(bool)), this, SLOT(onDone(bool))); } void FtpDownloader::download(const QUrl &url, QIODevice* dev) { m_url = QUrl(QString::fromLatin1(QByteArray::fromPercentEncoding(url.toString().toUtf8()))); m_dev = dev; QString server = m_url.host(); if (server.isEmpty()) { server = m_url.toString(); } int port = 21; if (m_url.port() != -1) { port = m_url.port(); } connectToHost(server, port); } bool FtpDownloader::isFinished() { return m_isFinished; } QUrl FtpDownloader::url() const { return m_url; } QIODevice* FtpDownloader::device() const { return m_dev; } void FtpDownloader::setError(QFtp::Error err, const QString &errStr) { m_lastError = err; m_lastErrorString = errStr; } void FtpDownloader::abort() { setError(QFtp::UnknownError, tr("Cancelled!")); QFtp::abort(); } QFtp::Error FtpDownloader::error() { if (m_lastError != QFtp::NoError && QFtp::error() == QFtp::NoError) { return m_lastError; } else { return QFtp::error(); } } QString FtpDownloader::errorString() const { if (!m_lastErrorString.isEmpty() && m_lastError != QFtp::NoError && QFtp::error() == QFtp::NoError) { return m_lastErrorString; } else { return QFtp::errorString(); } } void FtpDownloader::processCommand(int id, bool err) { if (!m_url.isValid() || m_url.isEmpty() || !m_dev) { abort(); return; } if (err) { if (m_ftpLoginId == id) { if (!m_anonymousLoginChecked) { m_anonymousLoginChecked = true; FTP_AUTHENTICATOR(m_url)->setUser(QString()); FTP_AUTHENTICATOR(m_url)->setPassword(QString()); m_ftpLoginId = login(); return; } emit ftpAuthenticationRequierd(m_url, FTP_AUTHENTICATOR(m_url)); m_ftpLoginId = login(FTP_AUTHENTICATOR(m_url)->user(), FTP_AUTHENTICATOR(m_url)->password()); return; } abort(); return; } switch (currentCommand()) { case QFtp::ConnectToHost: if (!m_anonymousLoginChecked) { m_anonymousLoginChecked = FTP_AUTHENTICATOR(m_url)->user().isEmpty() && FTP_AUTHENTICATOR(m_url)->password().isEmpty(); } m_ftpLoginId = login(FTP_AUTHENTICATOR(m_url)->user(), FTP_AUTHENTICATOR(m_url)->password()); break; case QFtp::Login: get(m_url.path(), m_dev); break; default: ; } } void FtpDownloader::onDone(bool err) { disconnect(this, SIGNAL(done(bool)), this, SLOT(onDone(bool))); close(); m_ftpLoginId = -1; if (err || m_lastError != QFtp::NoError) { emit errorOccured(error()); } else { m_isFinished = true; emit finished(); } } qupzilla-1.6.0/src/lib/network/schemehandlers/ftpschemehandler.h000066400000000000000000000067351226107126500250740ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * Copyright (C) 2013 S. Razi Alavizadeh * Some codes and ideas are from webftpclient example by Qt Lab * * 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 3 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, see . * ============================================================ */ #ifndef FTPSCHEMEHANDLER_H #define FTPSCHEMEHANDLER_H #include #include #include #if QT_VERSION >= 0x050000 #include "qftp.h" #include "qurlinfo.h" #else #include #include #endif #include "schemehandler.h" #include "qz_namespace.h" #define FTP_AUTHENTICATOR FtpSchemeHandler::ftpAuthenticator class QT_QUPZILLA_EXPORT FtpSchemeHandler : public SchemeHandler { public: explicit FtpSchemeHandler(); QNetworkReply* createRequest(QNetworkAccessManager::Operation op, const QNetworkRequest &request, QIODevice* outgoingData); static QAuthenticator* ftpAuthenticator(const QUrl &url); private: static QHash m_ftpAuthenticatorsCache; }; class QT_QUPZILLA_EXPORT FtpSchemeReply : public QNetworkReply { Q_OBJECT public: FtpSchemeReply(const QNetworkRequest &request, QObject* parent = 0); void abort(); qint64 bytesAvailable() const; bool isSequential() const; protected: qint64 readData(char* data, qint64 maxSize); private slots: void processCommand(int id, bool err); void processListInfo(QUrlInfo urlInfo); void processData(); QString loadDirectory(); void loadPage(); private: void setContent(); void ftpReplyErrorHandler(int id); QString clickableSections(const QString &path); QFtp* m_ftp; QList m_items; int m_ftpLoginId; int m_ftpCdId; int m_port; QBuffer m_buffer; bool m_anonymousLoginChecked; QNetworkRequest m_request; QString m_probablyFileForDownload; bool m_isGoingToDownload; signals: void ftpAuthenticationRequierd(const QUrl &, QAuthenticator*); void downloadRequest(const QNetworkRequest &); }; class QT_QUPZILLA_EXPORT FtpDownloader : public QFtp { Q_OBJECT public: FtpDownloader(QObject* parent = 0); void download(const QUrl &url, QIODevice* dev); bool isFinished(); QUrl url() const; QIODevice* device() const; void setError(QFtp::Error err, const QString &errStr); void abort(); QFtp::Error error(); QString errorString() const; private slots: void processCommand(int id, bool err); void onDone(bool err); private: int m_ftpLoginId; bool m_anonymousLoginChecked; bool m_isFinished; QUrl m_url; QIODevice* m_dev; QFtp::Error m_lastError; QString m_lastErrorString; signals: void ftpAuthenticationRequierd(const QUrl &, QAuthenticator*); void finished(); void errorOccured(QFtp::Error); }; #endif // FTPSCHEMEHANDLER_H qupzilla-1.6.0/src/lib/network/schemehandlers/qupzillaschemehandler.cpp000066400000000000000000000574371226107126500265040ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "qupzillaschemehandler.h" #include "qztools.h" #include "qupzilla.h" #include "mainapplication.h" #include "tabbedwebview.h" #include "webpage.h" #include "speeddial.h" #include "pluginproxy.h" #include "plugininterface.h" #include "settings.h" #include "iconprovider.h" #include #include #include #include static QString authorString(const char* name, const QString &mail) { return QString("%1 <%2>").arg(QString::fromUtf8(name), mail); } QupZillaSchemeHandler::QupZillaSchemeHandler() { } QNetworkReply* QupZillaSchemeHandler::createRequest(QNetworkAccessManager::Operation op, const QNetworkRequest &request, QIODevice* outgoingData) { Q_UNUSED(outgoingData) if (op != QNetworkAccessManager::GetOperation) { return 0; } QupZillaSchemeReply* reply = new QupZillaSchemeReply(request); return reply; } QupZillaSchemeReply::QupZillaSchemeReply(const QNetworkRequest &req, QObject* parent) : QNetworkReply(parent) { setOperation(QNetworkAccessManager::GetOperation); setRequest(req); setUrl(req.url()); m_pageName = req.url().path(); QStringList knownPages; knownPages << "about" << "reportbug" << "start" << "speeddial" << "config" << "restore"; if (knownPages.contains(m_pageName)) { m_buffer.open(QIODevice::ReadWrite); setError(QNetworkReply::NoError, tr("No Error")); QTimer::singleShot(0, this, SLOT(loadPage())); open(QIODevice::ReadOnly); } else { setError(QNetworkReply::HostNotFoundError, tr("Not Found")); QTimer::singleShot(0, this, SLOT(delayedFinish())); } } void QupZillaSchemeReply::loadPage() { QWebSecurityOrigin::addLocalScheme("qupzilla"); QTextStream stream(&m_buffer); stream.setCodec("UTF-8"); if (m_pageName == QLatin1String("about")) { stream << aboutPage(); } else if (m_pageName == QLatin1String("reportbug")) { stream << reportbugPage(); } else if (m_pageName == QLatin1String("start")) { stream << startPage(); } else if (m_pageName == QLatin1String("speeddial")) { stream << speeddialPage(); } else if (m_pageName == QLatin1String("config")) { stream << configPage(); } else if (m_pageName == QLatin1String("restore")) { stream << restorePage(); } stream.flush(); m_buffer.reset(); setHeader(QNetworkRequest::ContentTypeHeader, QByteArray("text/html")); setHeader(QNetworkRequest::ContentLengthHeader, m_buffer.bytesAvailable()); setAttribute(QNetworkRequest::HttpStatusCodeAttribute, 200); setAttribute(QNetworkRequest::HttpReasonPhraseAttribute, QByteArray("Ok")); emit metaDataChanged(); emit downloadProgress(m_buffer.size(), m_buffer.size()); emit readyRead(); emit finished(); QWebSecurityOrigin::removeLocalScheme("qupzilla"); } void QupZillaSchemeReply::delayedFinish() { emit error(QNetworkReply::HostNotFoundError); emit finished(); } qint64 QupZillaSchemeReply::bytesAvailable() const { return m_buffer.bytesAvailable() + QNetworkReply::bytesAvailable(); } qint64 QupZillaSchemeReply::readData(char* data, qint64 maxSize) { return m_buffer.read(data, maxSize); } QString QupZillaSchemeReply::reportbugPage() { static QString bPage; if (!bPage.isEmpty()) { return bPage; } bPage.append(QzTools::readAllFileContents(":html/reportbug.html")); bPage.replace(QLatin1String("%FAVICON%"), QLatin1String("qrc:icons/qupzilla.png")); bPage.replace(QLatin1String("%BOX-BORDER%"), QLatin1String("qrc:html/box-border.png")); bPage.replace(QLatin1String("%TITLE%"), tr("Report Issue")); bPage.replace(QLatin1String("%REPORT-ISSUE%"), tr("Report Issue")); bPage.replace(QLatin1String("%PLUGINS-TEXT%"), tr("If you are experiencing problems with QupZilla, please try to disable" " all extensions first.
    If this does not fix it, then please fill out this form: ")); bPage.replace(QLatin1String("%EMAIL%"), tr("Your E-mail")); bPage.replace(QLatin1String("%TYPE%"), tr("Issue type")); bPage.replace(QLatin1String("%DESCRIPTION%"), tr("Issue description")); bPage.replace(QLatin1String("%SEND%"), tr("Send")); bPage.replace(QLatin1String("%E-MAIL-OPTIONAL%"), tr("E-mail is optional
    Note: Please read how to make a " "bug report here first.").arg("https://github.com/QupZilla/qupzilla/wiki/Bug-Reports target=_blank")); bPage.replace(QLatin1String("%FIELDS-ARE-REQUIRED%"), tr("Please fill out all required fields!")); bPage.replace(QLatin1String("%INFO_OS%"), QzTools::operatingSystem()); bPage.replace(QLatin1String("%INFO_APP%"), QupZilla::VERSION #ifdef GIT_REVISION + " (" + GIT_REVISION + ")" #endif ); bPage.replace(QLatin1String("%INFO_QT%"), QString("%1 (built with %2)").arg(qVersion(), QT_VERSION_STR)); bPage.replace(QLatin1String("%INFO_WEBKIT%"), QupZilla::WEBKITVERSION), bPage = QzTools::applyDirectionToPage(bPage); return bPage; } QString QupZillaSchemeReply::startPage() { static QString sPage; if (!sPage.isEmpty()) { return sPage; } sPage.append(QzTools::readAllFileContents(":html/start.html")); sPage.replace(QLatin1String("%FAVICON%"), QLatin1String("qrc:icons/qupzilla.png")); sPage.replace(QLatin1String("%BOX-BORDER%"), QLatin1String("qrc:html/box-border.png")); sPage.replace(QLatin1String("%ABOUT-IMG%"), QLatin1String("qrc:icons/other/about.png")); sPage.replace(QLatin1String("%TITLE%"), tr("Start Page")); sPage.replace(QLatin1String("%BUTTON-LABEL%"), tr("Search on Web")); sPage.replace(QLatin1String("%SEARCH-BY%"), tr("Search results provided by DuckDuckGo")); sPage.replace(QLatin1String("%WWW%"), QupZilla::WIKIADDRESS); sPage.replace(QLatin1String("%ABOUT-QUPZILLA%"), tr("About QupZilla")); sPage.replace(QLatin1String("%PRIVATE-BROWSING%"), mApp->isPrivateSession() ? tr("

    Private Browsing

    ") : QString()); sPage = QzTools::applyDirectionToPage(sPage); return sPage; } QString QupZillaSchemeReply::aboutPage() { static QString aPage; if (aPage.isEmpty()) { aPage.append(QzTools::readAllFileContents(":html/about.html")); aPage.replace(QLatin1String("%FAVICON%"), QLatin1String("qrc:icons/qupzilla.png")); aPage.replace(QLatin1String("%BOX-BORDER%"), QLatin1String("qrc:html/box-border.png")); aPage.replace(QLatin1String("%ABOUT-IMG%"), QLatin1String("qrc:icons/other/about.png")); aPage.replace(QLatin1String("%COPYRIGHT-INCLUDE%"), QzTools::escape(QzTools::readAllFileContents(":html/copyright"))); aPage.replace(QLatin1String("%TITLE%"), tr("About QupZilla")); aPage.replace(QLatin1String("%ABOUT-QUPZILLA%"), tr("About QupZilla")); aPage.replace(QLatin1String("%INFORMATIONS-ABOUT-VERSION%"), tr("Information about version")); aPage.replace(QLatin1String("%COPYRIGHT%"), tr("Copyright")); aPage.replace(QLatin1String("%VERSION-INFO%"), QString("
    %1
    %2
    ").arg(tr("Version"), QupZilla::VERSION #ifdef GIT_REVISION + " (" + GIT_REVISION + ")" #endif ) + QString("
    %1
    %2
    ").arg(tr("WebKit version"), QupZilla::WEBKITVERSION)); aPage.replace(QLatin1String("%MAIN-DEVELOPER%"), tr("Main developer")); aPage.replace(QLatin1String("%MAIN-DEVELOPER-TEXT%"), authorString(QupZilla::AUTHOR.toUtf8(), "nowrep@gmail.com")); aPage.replace(QLatin1String("%CONTRIBUTORS%"), tr("Contributors")); aPage.replace(QLatin1String("%CONTRIBUTORS-TEXT%"), authorString("Mladen Pejaković", "pejakm@autistici.org") + "
    " + authorString("Alexander Samilov", "alexsamilovskih@gmail.com") + "
    " + authorString("Seyyed Razi Alavizadeh", "s.r.alavizadeh@gmail.com") + "
    " + authorString("Franz Fellner", "alpine.art.de@googlemail.com") + "
    " + authorString("Bryan M Dunsmore", "dunsmoreb@gmail.com") + "
    " + authorString("Mariusz Fik", "fisiu@opensuse.org") + "
    " + authorString("Jan Rajnoha", "honza.rajny@hotmail.com") + "
    " + authorString("Daniele Cocca", "jmc@chakra-project.org") ); aPage.replace(QLatin1String("%TRANSLATORS%"), tr("Translators")); aPage.replace(QLatin1String("%TRANSLATORS-TEXT%"), authorString("Heimen Stoffels", "vistausss@gmail.com") + " (Dutch)
    " + authorString("Peter Vacula", "pvacula1989@gmail.com") + " (Slovak)
    " + authorString("Ján Ďanovský", "dagsoftware@yahoo.com") + " (Slovak)
    " + authorString("Jonathan Hooverman", "jonathan.hooverman@gmail.com") + " (German)
    " + authorString("Federico Fabiani", "federico.fabiani85@gmail.com") + " (Italian)
    " + authorString("Francesco Marinucci", "framarinucci@gmail.com") + " (Italian)
    " + authorString("Jorge Sevilla", "jsevi@ozu.es") + " (Spanish)
    " + authorString("Ștefan Comănescu", "sdfanq@gmail.com") + " (Romanian)
    " + authorString("Michał Szymanowski", "tylkobuba@gmail.com") + " (Polish)
    " + authorString("Mariusz Fik", "fisiu@opensuse.org") + " (Polish)
    " + authorString("Jérôme Giry", "baikalink@hotmail.fr") + " (French)
    " + authorString("Nicolas Ourceau", "lamessen@hotmail.fr") + " (French)
    " + authorString("Vasilis Tsivikis", "vasitsiv.dev@gmail.com") + " (Greek)
    " + authorString("Rustam Salakhutdinov", "salahutd@gmail.com") + " (Russian)
    " + authorString("Oleg Brezhnev", "oleg-423@yandex.ru") + " (Russian)
    " + authorString("Sérgio Marques", "smarquespt@gmail.com") + " (Portuguese)
    " + authorString("Alexandre Carvalho", "alexandre05@live.com") + " (Brazilian Portuguese)
    " + authorString("Mladen Pejaković", "pejakm@autistici.org") + " (Serbian)
    " + authorString("Unink-Lio", "unink4451@163.com") + " (Chinese)
    " + authorString("Yu Hai", "yohanprc@eml.cc") + " (Chinese)
    " + authorString("Wu Cheng-Hong", "stu2731652@gmail.com") + " (Traditional Chinese)
    " + authorString("Widya Walesa", "walecha99@gmail.com") + " (Indonesian)
    " + authorString("Beqa Arabuli", "arabulibeqa@gmail.com") + " (Georgian)
    " + authorString("Daiki Noda", "sys.pdr.pdm9@gmail.com") + " (Japanese)
    " + authorString("Gábor Oberle", "oberleg@myopera.com") + " (Hungarian)
    " + authorString("Piccoro McKay Lenz", "mckaygerhard@gmail.com") + " (Venezulean Spanish)
    " + authorString("Stanislav Kuznietsov", "stanislav_kuznetsov@ukr.net") + " (Ukrainian)
    " + authorString("Seyyed Razi Alavizadeh", "s.r.alavizadeh@gmail.com") + " (Persian)
    " + authorString("Guillem Prats", "guprej@gmail.com") + " (Catalan)
    " + authorString("Clara Villalba", "cvilmon@gmail.com") + " (Catalan)
    " + authorString("Xabier Aramendi", "azpidatziak@gmail.com") + " (Basque)" ); aPage = QzTools::applyDirectionToPage(aPage); } return aPage; } QString QupZillaSchemeReply::speeddialPage() { static QString dPage; if (dPage.isEmpty()) { dPage.append(QzTools::readAllFileContents(":html/speeddial.html")); dPage.replace(QLatin1String("%FAVICON%"), QLatin1String("qrc:icons/qupzilla.png")); dPage.replace(QLatin1String("%IMG_PLUS%"), QLatin1String("qrc:html/plus.png")); dPage.replace(QLatin1String("%BOX-BORDER%"), QLatin1String("qrc:html/box-border-small.png")); dPage.replace(QLatin1String("%IMG_CLOSE%"), QLatin1String("qrc:html/close.png")); dPage.replace(QLatin1String("%IMG_EDIT%"), QLatin1String("qrc:html/edit.png")); dPage.replace(QLatin1String("%IMG_RELOAD%"), QLatin1String("qrc:html/reload.png")); dPage.replace(QLatin1String("%JQUERY%"), QLatin1String("qrc:html/jquery.js")); dPage.replace(QLatin1String("%JQUERY-UI%"), QLatin1String("qrc:html/jquery-ui.js")); dPage.replace(QLatin1String("%LOADING-IMG%"), QLatin1String("qrc:html/loading.gif")); dPage.replace(QLatin1String("%IMG_SETTINGS%"), QLatin1String("qrc:html/setting.png")); dPage.replace(QLatin1String("%SITE-TITLE%"), tr("Speed Dial")); dPage.replace(QLatin1String("%ADD-TITLE%"), tr("Add New Page")); dPage.replace(QLatin1String("%TITLE-EDIT%"), tr("Edit")); dPage.replace(QLatin1String("%TITLE-REMOVE%"), tr("Remove")); dPage.replace(QLatin1String("%TITLE-RELOAD%"), tr("Reload")); dPage.replace(QLatin1String("%TITLE-WARN%"), tr("Are you sure to remove this speed dial?")); dPage.replace(QLatin1String("%TITLE-FETCHTITLE%"), tr("Load title from page")); dPage.replace(QLatin1String("%URL%"), tr("Url")); dPage.replace(QLatin1String("%TITLE%"), tr("Title")); dPage.replace(QLatin1String("%APPLY%"), tr("Apply")); dPage.replace(QLatin1String("%CLOSE%"), tr("Close")); dPage.replace(QLatin1String("%NEW-PAGE%"), tr("New Page")); dPage.replace(QLatin1String("%SETTINGS-TITLE%"), tr("Speed Dial settings")); dPage.replace(QLatin1String("%TXT_PLACEMENT%"), tr("Placement: ")); dPage.replace(QLatin1String("%TXT_AUTO%"), tr("Auto")); dPage.replace(QLatin1String("%TXT_COVER%"), tr("Cover")); dPage.replace(QLatin1String("%TXT_FIT%"), tr("Fit")); dPage.replace(QLatin1String("%TXT_FWIDTH%"), tr("Fit Width")); dPage.replace(QLatin1String("%TXT_FHEIGHT%"), tr("Fit Height")); dPage.replace(QLatin1String("%TXT_NOTE%"), tr("Use background image")); dPage.replace(QLatin1String("%TXT_SELECTIMAGE%"), tr("Select image")); dPage.replace(QLatin1String("%TXT_NRROWS%"), tr("Maximum pages in a row:")); dPage.replace(QLatin1String("%TXT_SDSIZE%"), tr("Change size of pages:")); dPage.replace(QLatin1String("%TXT_CNTRDLS%"), tr("Center speed dials")); dPage = QzTools::applyDirectionToPage(dPage); } QString page = dPage; SpeedDial* dial = mApp->plugins()->speedDial(); page.replace(QLatin1String("%INITIAL-SCRIPT%"), dial->initialScript()); page.replace(QLatin1String("%IMG_BACKGROUND%"), dial->backgroundImage()); page.replace(QLatin1String("%B_SIZE%"), dial->backgroundImageSize()); page.replace(QLatin1String("%ROW-PAGES%"), QString::number(dial->pagesInRow())); page.replace(QLatin1String("%SD-SIZE%"), QString::number(dial->sdSize())); page.replace(QLatin1String("%SD-CNTR%"), QString::number(dial->sdCntr())); return page; } QString QupZillaSchemeReply::restorePage() { static QString rPage; if (rPage.isEmpty()) { rPage.append(QzTools::readAllFileContents(":html/restore.html")); rPage.replace(QLatin1String("%FAVICON%"), QLatin1String("qrc:icons/qupzilla.png")); rPage.replace(QLatin1String("%BOX-BORDER%"), QLatin1String("qrc:html/box-border.png")); rPage.replace(QLatin1String("%IMAGE%"), QzTools::pixmapToByteArray(qIconProvider->standardIcon(QStyle::SP_MessageBoxWarning).pixmap(45, 45))); rPage.replace(QLatin1String("%TITLE%"), tr("Restore Session")); rPage.replace(QLatin1String("%OOPS%"), tr("Oops, QupZilla crashed.")); rPage.replace(QLatin1String("%APOLOGIZE%"), tr("We apologize for this. Would you like to restore the last saved state?")); rPage.replace(QLatin1String("%TRY-REMOVING%"), tr("Try removing one or more tabs that you think cause troubles")); rPage.replace(QLatin1String("%START-NEW%"), tr("Or you can start completely new session")); rPage = QzTools::applyDirectionToPage(rPage); } return rPage; } QString QupZillaSchemeReply::configPage() { static QString cPage; if (cPage.isEmpty()) { cPage.append(QzTools::readAllFileContents(":html/config.html")); cPage.replace(QLatin1String("%FAVICON%"), QLatin1String("qrc:icons/qupzilla.png")); cPage.replace(QLatin1String("%BOX-BORDER%"), QLatin1String("qrc:html/box-border.png")); cPage.replace(QLatin1String("%ABOUT-IMG%"), QLatin1String("qrc:icons/other/about.png")); cPage.replace(QLatin1String("%TITLE%"), tr("Configuration Information")); cPage.replace(QLatin1String("%CONFIG%"), tr("Configuration Information")); cPage.replace(QLatin1String("%INFORMATIONS-ABOUT-VERSION%"), tr("Information about version")); cPage.replace(QLatin1String("%CONFIG-ABOUT%"), tr("This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports.")); cPage.replace(QLatin1String("%BROWSER-IDENTIFICATION%"), tr("Browser Identification")); cPage.replace(QLatin1String("%PATHS%"), tr("Paths")); cPage.replace(QLatin1String("%BUILD-CONFIG%"), tr("Build Configuration")); cPage.replace(QLatin1String("%PREFS%"), tr("Preferences")); cPage.replace(QLatin1String("%OPTION%"), tr("Option")); cPage.replace(QLatin1String("%VALUE%"), tr("Value")); cPage.replace(QLatin1String("%PLUGINS%"), tr("Extensions")); cPage.replace(QLatin1String("%PL-NAME%"), tr("Name")); cPage.replace(QLatin1String("%PL-VER%"), tr("Version")); cPage.replace(QLatin1String("%PL-AUTH%"), tr("Author")); cPage.replace(QLatin1String("%PL-DESC%"), tr("Description")); cPage.replace(QLatin1String("%VERSION-INFO%"), QString("
    %1
    %2
    ").arg(tr("Application version"), QupZilla::VERSION #ifdef GIT_REVISION + " (" + GIT_REVISION + ")" #endif ) + QString("
    %1
    %2
    ").arg(tr("Qt version"), QT_VERSION_STR) + QString("
    %1
    %2
    ").arg(tr("WebKit version"), QupZilla::WEBKITVERSION) + QString("
    %1
    %2
    ").arg(tr("Build time"), QupZilla::BUILDTIME) + QString("
    %1
    %2
    ").arg(tr("Platform"), QzTools::operatingSystem())); cPage.replace(QLatin1String("%PATHS-TEXT%"), QString("
    %1
    %2
    ").arg(tr("Profile"), mApp->currentProfilePath()) + QString("
    %1
    %2
    ").arg(tr("Settings"), mApp->currentProfilePath() + "settings.ini") + QString("
    %1
    %2
    ").arg(tr("Saved session"), mApp->currentProfilePath() + "session.dat") + QString("
    %1
    %2
    ").arg(tr("Pinned tabs"), mApp->currentProfilePath() + "pinnedtabs.dat") + QString("
    %1
    %2
    ").arg(tr("Data"), mApp->DATADIR) + QString("
    %1
    %2
    ").arg(tr("Themes"), mApp->THEMESDIR) + QString("
    %1
    %2
    ").arg(tr("Translations"), mApp->TRANSLATIONSDIR)); #ifdef QUPZILLA_DEBUG_BUILD QString debugBuild = tr("Enabled"); #else QString debugBuild = tr("Disabled"); #endif #if defined (USE_WEBGL) || (QTWEBKIT_FROM_2_3 && defined(QZ_WS_X11)) QString webGLEnabled = tr("Enabled"); #else QString webGLEnabled = tr("Disabled"); #endif #if defined(Q_OS_WIN) && defined(W7API) QString w7APIEnabled = tr("Enabled"); #else QString w7APIEnabled = tr("Disabled"); #endif #if defined(QZ_WS_X11) && defined(KDE_INTEGRATION) QString KDEIntegration = tr("Enabled"); #else QString KDEIntegration = tr("Disabled"); #endif #ifdef PORTABLE_BUILD QString portableBuild = tr("Enabled"); #else QString portableBuild = tr("Disabled"); #endif cPage.replace(QLatin1String("%BUILD-CONFIG-TEXT%"), QString("
    %1
    %2
    ").arg(tr("Debug build"), debugBuild) + QString("
    %1
    %2
    ").arg(tr("WebGL support"), webGLEnabled) + QString("
    %1
    %2
    ").arg(tr("Windows 7 API"), w7APIEnabled) + QString("
    %1
    %2
    ").arg(tr("KDE integration"), KDEIntegration) + QString("
    %1
    %2
    ").arg(tr("Portable build"), portableBuild)); cPage = QzTools::applyDirectionToPage(cPage); } QString page = cPage; page.replace(QLatin1String("%USER-AGENT%"), mApp->getWindow()->weView()->page()->userAgentForUrl(QUrl())); QString pluginsString; const QList &availablePlugins = mApp->plugins()->getAvailablePlugins(); foreach (const Plugins::Plugin &plugin, availablePlugins) { PluginSpec spec = plugin.pluginSpec; pluginsString.append(QString("%1%2%3%4").arg( spec.name, spec.version, QzTools::escape(spec.author), spec.description)); } if (pluginsString.isEmpty()) { pluginsString = QString("%1").arg(tr("No available extensions.")); } page.replace(QLatin1String("%PLUGINS-INFO%"), pluginsString); QString allGroupsString; QSettings* settings = Settings::globalSettings(); foreach (const QString &group, settings->childGroups()) { QString groupString = QString("[%1]").arg(group); settings->beginGroup(group); foreach (const QString &key, settings->childKeys()) { const QVariant keyValue = settings->value(key); QString keyString; switch (keyValue.type()) { case QVariant::ByteArray: keyString = QLatin1String("QByteArray"); break; case QVariant::Point: { const QPoint point = keyValue.toPoint(); keyString = QString("QPoint(%1, %2)").arg(QString::number(point.x()), QString::number(point.y())); break; } case QVariant::StringList: keyString = keyValue.toStringList().join(","); break; default: keyString = keyValue.toString(); } if (keyString.isEmpty()) { keyString = QLatin1String("\"empty\""); } groupString.append(QString("%1%2").arg(key, QzTools::escape(keyString))); } settings->endGroup(); allGroupsString.append(groupString); } page.replace(QLatin1String("%PREFS-INFO%"), allGroupsString); return page; } qupzilla-1.6.0/src/lib/network/schemehandlers/qupzillaschemehandler.h000066400000000000000000000035341226107126500261360ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef QUPZILLASCHEMEHANDLER_H #define QUPZILLASCHEMEHANDLER_H #include #include #include "schemehandler.h" #include "qz_namespace.h" class QT_QUPZILLA_EXPORT QupZillaSchemeHandler : public SchemeHandler { public: explicit QupZillaSchemeHandler(); QNetworkReply* createRequest(QNetworkAccessManager::Operation op, const QNetworkRequest &request, QIODevice* outgoingData); }; class QT_QUPZILLA_EXPORT QupZillaSchemeReply : public QNetworkReply { Q_OBJECT public: explicit QupZillaSchemeReply(const QNetworkRequest &req, QObject* parent = 0); qint64 bytesAvailable() const; protected: qint64 readData(char* data, qint64 maxSize); void abort() { } private slots: void delayedFinish(); void loadPage(); private: QString aboutPage(); QString reportbugPage(); QString startPage(); QString speeddialPage(); QString restorePage(); QString configPage(); QBuffer m_buffer; QString m_pageName; }; #endif // QUPZILLASCHEMEHANDLER_H qupzilla-1.6.0/src/lib/network/schemehandlers/schemehandler.h000066400000000000000000000023351226107126500243520ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SCHEMEHANDLER_H #define SCHEMEHANDLER_H #include #include "qz_namespace.h" class QT_QUPZILLA_EXPORT SchemeHandler { public: SchemeHandler() { } virtual ~SchemeHandler() { } virtual QNetworkReply* createRequest(QNetworkAccessManager::Operation op, const QNetworkRequest &request, QIODevice* outgoingData) = 0; }; #endif // SCHEMEHANDLER_H qupzilla-1.6.0/src/lib/network/sslerrordialog.cpp000066400000000000000000000040301226107126500221430ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "sslerrordialog.h" #include "ui_sslerrordialog.h" #include "iconprovider.h" #include SslErrorDialog::SslErrorDialog(QWidget* parent) : QDialog(parent) , ui(new Ui::SslErrorDialog) , m_result(No) { ui->setupUi(this); ui->icon->setPixmap(qIconProvider->standardIcon(QStyle::SP_MessageBoxCritical).pixmap(52)); ui->buttonBox->addButton(tr("Only for this session"), QDialogButtonBox::ApplyRole); ui->buttonBox->button(QDialogButtonBox::No)->setFocus(); connect(ui->buttonBox, SIGNAL(clicked(QAbstractButton*)), this, SLOT(buttonClicked(QAbstractButton*))); } SslErrorDialog::~SslErrorDialog() { delete ui; } void SslErrorDialog::setText(const QString &text) { ui->text->setText(text); } SslErrorDialog::Result SslErrorDialog::result() { return m_result; } void SslErrorDialog::buttonClicked(QAbstractButton* button) { switch (ui->buttonBox->buttonRole(button)) { case QDialogButtonBox::YesRole: m_result = Yes; accept(); break; case QDialogButtonBox::ApplyRole: m_result = OnlyForThisSession; accept(); break; default: m_result = No; reject(); break; } } qupzilla-1.6.0/src/lib/network/sslerrordialog.h000066400000000000000000000026341226107126500216200ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SSLERRORDIALOG_H #define SSLERRORDIALOG_H #include namespace Ui { class SslErrorDialog; } class QAbstractButton; #include "qz_namespace.h" class QT_QUPZILLA_EXPORT SslErrorDialog : public QDialog { Q_OBJECT public: enum Result { Yes, No, OnlyForThisSession }; explicit SslErrorDialog(QWidget* parent = 0); ~SslErrorDialog(); void setText(const QString &text); Result result(); private slots: void buttonClicked(QAbstractButton* button); private: Ui::SslErrorDialog* ui; Result m_result; }; #endif // SSLERRORDIALOG_H qupzilla-1.6.0/src/lib/network/sslerrordialog.ui000066400000000000000000000045261226107126500220100ustar00rootroot00000000000000 SslErrorDialog 0 0 511 72 SSL Certificate Error! Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop 0 0 Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop Qt::Horizontal 40 20 0 0 Qt::Horizontal QDialogButtonBox::No|QDialogButtonBox::Yes Qt::Horizontal 40 20 qupzilla-1.6.0/src/lib/opensearch/000077500000000000000000000000001226107126500170455ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/opensearch/editsearchengine.cpp000066400000000000000000000051161226107126500230550ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "editsearchengine.h" #include "ui_editsearchengine.h" #include "iconchooser.h" #include EditSearchEngine::EditSearchEngine(const QString &title, QWidget* parent) : QDialog(parent) , ui(new Ui::EditSearchEngine) { setWindowTitle(title); ui->setupUi(this); connect(ui->iconFromFile, SIGNAL(clicked()), this, SLOT(chooseIcon())); ui->buttonBox->setFocus(); setFixedHeight(sizeHint().height()); } QString EditSearchEngine::name() { return ui->name->text().trimmed(); } void EditSearchEngine::setName(const QString &name) { ui->name->setText(name); ui->name->setCursorPosition(0); } QString EditSearchEngine::url() { return ui->url->text().trimmed(); } QString EditSearchEngine::postData() { return ui->postData->text().trimmed(); } void EditSearchEngine::setUrl(const QString &url) { ui->url->setText(url); ui->url->setCursorPosition(0); } void EditSearchEngine::setPostData(const QString &postData) { ui->postData->setText(postData); ui->postData->setCursorPosition(0); } QString EditSearchEngine::shortcut() { return ui->shortcut->text().trimmed(); } void EditSearchEngine::setShortcut(const QString &shortcut) { ui->shortcut->setText(shortcut); ui->shortcut->setCursorPosition(0); } QIcon EditSearchEngine::icon() { return QIcon(*ui->icon->pixmap()); } void EditSearchEngine::setIcon(const QIcon &icon) { ui->icon->setPixmap(icon.pixmap(16, 16)); } void EditSearchEngine::hideIconLabels() { ui->iconLabel->hide(); ui->editIconFrame->hide(); resize(width(), sizeHint().height()); } void EditSearchEngine::chooseIcon() { IconChooser chooser(this); QIcon icon = chooser.getIcon(); if (!icon.isNull()) { setIcon(icon); } } qupzilla-1.6.0/src/lib/opensearch/editsearchengine.h000066400000000000000000000031511226107126500225170ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef EDITSEARCHENGINES_H #define EDITSEARCHENGINES_H #include "qz_namespace.h" #include namespace Ui { class EditSearchEngine; } class QT_QUPZILLA_EXPORT EditSearchEngine : public QDialog { Q_OBJECT public: explicit EditSearchEngine(const QString &title, QWidget* parent = 0); void setName(const QString &name); void setUrl(const QString &url); void setPostData(const QString &postData); void setShortcut(const QString &shortcut); void setIcon(const QIcon &icon); QString name(); QString url(); QString postData(); QString shortcut(); QIcon icon(); void hideIconLabels(); signals: public slots: private slots: void chooseIcon(); private: Ui::EditSearchEngine* ui; }; #endif // EDITSEARCHENGINES_H qupzilla-1.6.0/src/lib/opensearch/editsearchengine.ui000066400000000000000000000101531226107126500227050ustar00rootroot00000000000000 EditSearchEngine 0 0 366 204 QFormLayout::ExpandingFieldsGrow Name: Url: http:// Shortcut: Icon: 0 16 16 16 16 Change... Qt::Horizontal 40 20 <b>Note: </b>%s in url or post data represent searched string Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok Post Data: buttonBox accepted() EditSearchEngine accept() 248 254 157 274 buttonBox rejected() EditSearchEngine reject() 316 260 286 274 qupzilla-1.6.0/src/lib/opensearch/opensearchengine.cpp000066400000000000000000000542111226107126500230710ustar00rootroot00000000000000/* * Copyright 2009 Jakub Wieczorek * * 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., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA */ /* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "opensearchengine.h" #include "qzregexp.h" #include "opensearchenginedelegate.h" #include #include #include #include #include #include #include #include #include #if QT_VERSION >= 0x050000 #include #endif /*! \class OpenSearchEngine \brief A class representing a single search engine described in OpenSearch format OpenSearchEngine is a class that represents a single search engine based on the OpenSearch format. For more information about the format, see http://www.opensearch.org/. Instances of the class hold all the data associated with the corresponding search engines, such as name(), description() and also URL templates that are used to construct URLs, which can be used later to perform search queries. Search engine can also have an image, even an external one, in this case it will be downloaded automatically from the network. OpenSearchEngine instances can be constructed from scratch but also read from external sources and written back to them. OpenSearchReader and OpenSearchWriter are the classes provided for reading and writing OpenSearch descriptions. Default constructed engines need to be filled with the necessary information before they can be used to peform search requests. First of all, a search engine should have the metadata including the name and the description. However, the most important are URL templates, which are the construction of URLs but can also contain template parameters, that are replaced with corresponding values at the time of constructing URLs. There are two types of URL templates: search URL template and suggestions URL template. Search URL template is needed for constructing search URLs, which point directly to search results. Suggestions URL template is necessary to construct suggestion queries URLs, which are then used for requesting contextual suggestions, a popular service offered along with search results that provides search terms related to what has been supplied by the user. Both types of URLs are constructed by the class, by searchUrl() and suggestionsUrl() functions respectively. However, search requests are supposed to be performed outside the class, while suggestion queries can be executed using the requestSuggestions() method. The class will take care of peforming the network request and parsing the JSON response. Both the image request and suggestion queries need network access. The class can perform network requests on its own, though the client application needs to provide a network access manager, which then will to be used for network operations. Without that, both images delivered from remote locations and contextual suggestions will be disabled. \sa OpenSearchReader, OpenSearchWriter */ /*! Constructs an engine with a given \a parent. */ OpenSearchEngine::OpenSearchEngine(QObject* parent) : QObject(parent) , m_searchMethod(QLatin1String("get")) , m_suggestionsMethod(QLatin1String("get")) , m_networkAccessManager(0) , m_suggestionsReply(0) , m_scriptEngine(0) , m_delegate(0) { m_requestMethods.insert(QLatin1String("get"), QNetworkAccessManager::GetOperation); m_requestMethods.insert(QLatin1String("post"), QNetworkAccessManager::PostOperation); } /*! A destructor. */ OpenSearchEngine::~OpenSearchEngine() { if (m_scriptEngine) { m_scriptEngine->deleteLater(); } } QString OpenSearchEngine::parseTemplate(const QString &searchTerm, const QString &searchTemplate) { QString language = QLocale().name(); // Simple conversion to RFC 3066. language = language.replace(QLatin1Char('_'), QLatin1Char('-')); QString result = searchTemplate; result.replace(QLatin1String("{count}"), QLatin1String("20")); result.replace(QLatin1String("{startIndex}"), QLatin1String("0")); result.replace(QLatin1String("{startPage}"), QLatin1String("0")); result.replace(QLatin1String("{language}"), language); result.replace(QLatin1String("{inputEncoding}"), QLatin1String("UTF-8")); result.replace(QLatin1String("{outputEncoding}"), QLatin1String("UTF-8")); result.replace(QzRegExp(QLatin1String("\\{([^\\}]*:|)source\\??\\}")), QCoreApplication::applicationName()); result.replace(QLatin1String("{searchTerms}"), QLatin1String(QUrl::toPercentEncoding(searchTerm))); return result; } /*! \property OpenSearchEngine::name \brief the name of the engine \sa description() */ QString OpenSearchEngine::name() const { return m_name; } void OpenSearchEngine::setName(const QString &name) { m_name = name; } /*! \property OpenSearchEngine::description \brief the description of the engine \sa name() */ QString OpenSearchEngine::description() const { return m_description; } void OpenSearchEngine::setDescription(const QString &description) { m_description = description; } /*! \property OpenSearchEngine::searchUrlTemplate \brief the template of the search URL \sa searchUrl(), searchParameters(), suggestionsUrlTemplate() */ QString OpenSearchEngine::searchUrlTemplate() const { return m_searchUrlTemplate; } void OpenSearchEngine::setSearchUrlTemplate(const QString &searchUrlTemplate) { m_searchUrlTemplate = searchUrlTemplate; } /*! Constructs and returns a search URL with a given \a searchTerm. The URL template is processed according to the specification: http://www.opensearch.org/Specifications/OpenSearch/1.1#OpenSearch_URL_template_syntax A list of template parameters currently supported and what they are replaced with: \table \header \o parameter \o value \row \o "{count}" \o "20" \row \o "{startIndex}" \o "0" \row \o "{startPage}" \o "0" \row \o "{language}" \o "the default language code (RFC 3066)" \row \o "{inputEncoding}" \o "UTF-8" \row \o "{outputEncoding}" \o "UTF-8" \row \o "{*:source}" \o "application name, QCoreApplication::applicationName()" \row \o "{searchTerms}" \o "the string supplied by the user" \endtable \sa searchUrlTemplate(), searchParameters(), suggestionsUrl() */ QUrl OpenSearchEngine::searchUrl(const QString &searchTerm) const { if (m_searchUrlTemplate.isEmpty()) { return QUrl(); } QUrl retVal = QUrl::fromEncoded(parseTemplate(searchTerm, m_searchUrlTemplate).toUtf8()); #if QT_VERSION >= 0x050000 QUrlQuery query(retVal); #endif if (m_searchMethod != QLatin1String("post")) { Parameters::const_iterator end = m_searchParameters.constEnd(); Parameters::const_iterator i = m_searchParameters.constBegin(); for (; i != end; ++i) { #if QT_VERSION >= 0x050000 query.addQueryItem(i->first, parseTemplate(searchTerm, i->second)); #else retVal.addQueryItem(i->first, parseTemplate(searchTerm, i->second)); #endif } #if QT_VERSION >= 0x050000 retVal.setQuery(query); #endif } return retVal; } QByteArray OpenSearchEngine::getPostData(const QString &searchTerm) const { if (m_searchMethod != QLatin1String("post")) { return QByteArray(); } QUrl retVal = QUrl("http://foo.bar"); #if QT_VERSION >= 0x050000 QUrlQuery query(retVal); #endif Parameters::const_iterator end = m_searchParameters.constEnd(); Parameters::const_iterator i = m_searchParameters.constBegin(); for (; i != end; ++i) { #if QT_VERSION >= 0x050000 query.addQueryItem(i->first, parseTemplate(searchTerm, i->second)); #else retVal.addQueryItem(i->first, parseTemplate(searchTerm, i->second)); #endif } #if QT_VERSION >= 0x050000 retVal.setQuery(query); #endif QByteArray data = retVal.toEncoded(QUrl::RemoveScheme); return data.contains('?') ? data.mid(data.lastIndexOf('?') + 1) : QByteArray(); } /*! \property providesSuggestions \brief indicates whether the engine supports contextual suggestions */ bool OpenSearchEngine::providesSuggestions() const { return (!m_suggestionsUrlTemplate.isEmpty() || !m_preparedSuggestionsUrl.isEmpty()); } /*! \property OpenSearchEngine::suggestionsUrlTemplate \brief the template of the suggestions URL \sa suggestionsUrl(), suggestionsParameters(), searchUrlTemplate() */ QString OpenSearchEngine::suggestionsUrlTemplate() const { return m_suggestionsUrlTemplate; } void OpenSearchEngine::setSuggestionsUrlTemplate(const QString &suggestionsUrlTemplate) { m_suggestionsUrlTemplate = suggestionsUrlTemplate; } /*! Constructs a suggestions URL with a given \a searchTerm. The URL template is processed according to the specification: http://www.opensearch.org/Specifications/OpenSearch/1.1#OpenSearch_URL_template_syntax See searchUrl() for more information about processing template parameters. \sa suggestionsUrlTemplate(), suggestionsParameters(), searchUrl() */ QUrl OpenSearchEngine::suggestionsUrl(const QString &searchTerm) const { if (!m_preparedSuggestionsUrl.isEmpty()) { QString s = m_preparedSuggestionsUrl; s.replace(QLatin1String("%s"), searchTerm); return QUrl(s); } if (m_suggestionsUrlTemplate.isEmpty()) { return QUrl(); } QUrl retVal = QUrl::fromEncoded(parseTemplate(searchTerm, m_suggestionsUrlTemplate).toUtf8()); #if QT_VERSION >= 0x050000 QUrlQuery query(retVal); #endif if (m_suggestionsMethod != QLatin1String("post")) { Parameters::const_iterator end = m_suggestionsParameters.constEnd(); Parameters::const_iterator i = m_suggestionsParameters.constBegin(); for (; i != end; ++i) { #if QT_VERSION >= 0x050000 query.addQueryItem(i->first, parseTemplate(searchTerm, i->second)); #else retVal.addQueryItem(i->first, parseTemplate(searchTerm, i->second)); #endif } #if QT_VERSION >= 0x050000 retVal.setQuery(query); #endif } return retVal; } /*! \property searchParameters \brief additional parameters that will be included in the search URL For more information see: http://www.opensearch.org/Specifications/OpenSearch/Extensions/Parameter/1.0 */ OpenSearchEngine::Parameters OpenSearchEngine::searchParameters() const { return m_searchParameters; } void OpenSearchEngine::setSearchParameters(const Parameters &searchParameters) { m_searchParameters = searchParameters; } /*! \property suggestionsParameters \brief additional parameters that will be included in the suggestions URL For more information see: http://www.opensearch.org/Specifications/OpenSearch/Extensions/Parameter/1.0 */ OpenSearchEngine::Parameters OpenSearchEngine::suggestionsParameters() const { return m_suggestionsParameters; } void OpenSearchEngine::setSuggestionsParameters(const Parameters &suggestionsParameters) { m_suggestionsParameters = suggestionsParameters; } /*! \property searchMethod \brief HTTP request method that will be used to perform search requests */ QString OpenSearchEngine::searchMethod() const { return m_searchMethod; } void OpenSearchEngine::setSearchMethod(const QString &method) { QString requestMethod = method.toLower(); if (!m_requestMethods.contains(requestMethod)) { return; } m_searchMethod = requestMethod; } /*! \property suggestionsMethod \brief HTTP request method that will be used to perform suggestions requests */ QString OpenSearchEngine::suggestionsMethod() const { return m_suggestionsMethod; } void OpenSearchEngine::setSuggestionsMethod(const QString &method) { QString requestMethod = method.toLower(); if (!m_requestMethods.contains(requestMethod)) { return; } m_suggestionsMethod = requestMethod; } /*! \property imageUrl \brief the image URL of the engine When setting a new image URL, it won't be loaded immediately. The first request will be deferred until image() is called for the first time. \note To be able to request external images, you need to provide a network access manager, which will be used for network operations. \sa image(), networkAccessManager() */ QString OpenSearchEngine::imageUrl() const { return m_imageUrl; } void OpenSearchEngine::setImageUrl(const QString &imageUrl) { m_imageUrl = imageUrl; } void OpenSearchEngine::loadImage() const { if (!m_networkAccessManager || m_imageUrl.isEmpty()) { return; } QNetworkReply* reply = m_networkAccessManager->get(QNetworkRequest(QUrl::fromEncoded(m_imageUrl.toUtf8()))); connect(reply, SIGNAL(finished()), this, SLOT(imageObtained())); } void OpenSearchEngine::imageObtained() { QNetworkReply* reply = qobject_cast(sender()); if (!reply) { return; } QByteArray response = reply->readAll(); reply->close(); reply->deleteLater(); if (response.isEmpty()) { return; } m_image.loadFromData(response); emit imageChanged(); } /*! \property image \brief the image of the engine When no image URL has been set and an image will be set explicitly, a new data URL will be constructed, holding the image data encoded with Base64. \sa imageUrl() */ QImage OpenSearchEngine::image() const { if (m_image.isNull()) { loadImage(); } return m_image; } void OpenSearchEngine::setImage(const QImage &image) { if (m_imageUrl.isEmpty()) { QBuffer imageBuffer; imageBuffer.open(QBuffer::ReadWrite); if (image.save(&imageBuffer, "PNG")) { m_imageUrl = QString(QLatin1String("data:image/png;base64,%1")) .arg(QLatin1String(imageBuffer.buffer().toBase64())); } } m_image = image; emit imageChanged(); } /*! \property valid \brief indicates whether the engine is valid i.e. the description was properly formed and included all necessary information */ bool OpenSearchEngine::isValid() const { return (!m_name.isEmpty() && !m_searchUrlTemplate.isEmpty()); } bool OpenSearchEngine::operator==(const OpenSearchEngine &other) const { return (m_name == other.m_name && m_description == other.m_description && m_imageUrl == other.m_imageUrl && m_searchUrlTemplate == other.m_searchUrlTemplate && m_suggestionsUrlTemplate == other.m_suggestionsUrlTemplate && m_searchParameters == other.m_searchParameters && m_suggestionsParameters == other.m_suggestionsParameters); } bool OpenSearchEngine::operator<(const OpenSearchEngine &other) const { return (m_name < other.m_name); } /*! Requests contextual suggestions on the search engine, for a given \a searchTerm. If succeeded, suggestions() signal will be emitted once the suggestions are received. \note To be able to request suggestions, you need to provide a network access manager, which will be used for network operations. \sa requestSearchResults() */ void OpenSearchEngine::setSuggestionsParameters(const QByteArray ¶meters) { m_preparedSuggestionsParameters = parameters; } void OpenSearchEngine::setSuggestionsUrl(const QString &string) { m_preparedSuggestionsUrl = string; } QString OpenSearchEngine::getSuggestionsUrl() { return suggestionsUrl("searchstring").toString().replace(QLatin1String("searchstring"), QLatin1String("%s")); } QByteArray OpenSearchEngine::getSuggestionsParameters() { QStringList parameters; Parameters::const_iterator end = m_suggestionsParameters.constEnd(); Parameters::const_iterator i = m_suggestionsParameters.constBegin(); for (; i != end; ++i) { parameters.append(i->first + QLatin1String("=") + i->second); } QByteArray data = parameters.join(QLatin1String("&")).toUtf8(); return data; } void OpenSearchEngine::requestSuggestions(const QString &searchTerm) { if (searchTerm.isEmpty() || !providesSuggestions()) { return; } Q_ASSERT(m_networkAccessManager); if (!m_networkAccessManager) { return; } if (m_suggestionsReply) { m_suggestionsReply->disconnect(this); m_suggestionsReply->abort(); m_suggestionsReply->deleteLater(); m_suggestionsReply = 0; } Q_ASSERT(m_requestMethods.contains(m_suggestionsMethod)); if (m_suggestionsMethod == QLatin1String("get")) { m_suggestionsReply = m_networkAccessManager->get(QNetworkRequest(suggestionsUrl(searchTerm))); } else { QStringList parameters; Parameters::const_iterator end = m_suggestionsParameters.constEnd(); Parameters::const_iterator i = m_suggestionsParameters.constBegin(); for (; i != end; ++i) { parameters.append(i->first + QLatin1String("=") + i->second); } QByteArray data = parameters.join(QLatin1String("&")).toUtf8(); m_suggestionsReply = m_networkAccessManager->post(QNetworkRequest(suggestionsUrl(searchTerm)), data); } connect(m_suggestionsReply, SIGNAL(finished()), this, SLOT(suggestionsObtained())); } /*! Requests search results on the search engine, for a given \a searchTerm. The default implementation does nothing, to supply your own you need to create your own OpenSearchEngineDelegate subclass and supply it to the engine. Then the function will call the performSearchRequest() method of the delegate, which can then handle the request in a custom way. \sa requestSuggestions(), delegate() */ void OpenSearchEngine::requestSearchResults(const QString &searchTerm) { if (!m_delegate || searchTerm.isEmpty()) { return; } Q_ASSERT(m_requestMethods.contains(m_searchMethod)); QNetworkRequest request(QUrl(searchUrl(searchTerm))); QByteArray data; QNetworkAccessManager::Operation operation = m_requestMethods.value(m_searchMethod); if (operation == QNetworkAccessManager::PostOperation) { QStringList parameters; Parameters::const_iterator end = m_searchParameters.constEnd(); Parameters::const_iterator i = m_searchParameters.constBegin(); for (; i != end; ++i) { parameters.append(i->first + QLatin1String("=") + i->second); } data = parameters.join(QLatin1String("&")).toUtf8(); } m_delegate->performSearchRequest(request, operation, data); } void OpenSearchEngine::suggestionsObtained() { QString response(QString::fromUtf8(m_suggestionsReply->readAll())); response = response.trimmed(); m_suggestionsReply->close(); m_suggestionsReply->deleteLater(); m_suggestionsReply = 0; if (response.isEmpty()) { return; } if (!response.startsWith(QLatin1Char('[')) || !response.endsWith(QLatin1Char(']'))) { return; } if (!m_scriptEngine) { m_scriptEngine = new QScriptEngine(); } // Evaluate the JSON response using QtScript. if (!m_scriptEngine->canEvaluate(response)) { return; } QScriptValue responseParts = m_scriptEngine->evaluate(response); if (!responseParts.property(1).isArray()) { return; } QStringList suggestionsList; qScriptValueToSequence(responseParts.property(1), suggestionsList); emit suggestions(suggestionsList); } /*! \property networkAccessManager \brief the network access manager that is used to perform network requests It is required for network operations: loading external images and requesting contextual suggestions. */ QNetworkAccessManager* OpenSearchEngine::networkAccessManager() const { return m_networkAccessManager; } void OpenSearchEngine::setNetworkAccessManager(QNetworkAccessManager* networkAccessManager) { m_networkAccessManager = networkAccessManager; } /*! \property delegate \brief the delegate that is used to perform specific tasks. It can be currently supplied to provide a custom behaviour ofthe requetSearchResults() method. The default implementation does nothing. */ OpenSearchEngineDelegate* OpenSearchEngine::delegate() const { return m_delegate; } void OpenSearchEngine::setDelegate(OpenSearchEngineDelegate* delegate) { m_delegate = delegate; } /*! \fn void OpenSearchEngine::imageChanged() This signal is emitted whenever the image of the engine changes. \sa image(), imageUrl() */ /*! \fn void OpenSearchEngine::suggestions(const QStringList &suggestions) This signal is emitted whenever new contextual suggestions have been provided by the search engine. To request suggestions, use requestSuggestions(). The suggestion set is specified by \a suggestions. \sa requestSuggestions() */ qupzilla-1.6.0/src/lib/opensearch/opensearchengine.h000066400000000000000000000135011226107126500225330ustar00rootroot00000000000000/* * Copyright 2009 Jakub Wieczorek * * 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., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA */ /* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef OPENSEARCHENGINE_H #define OPENSEARCHENGINE_H #include "qz_namespace.h" #include #include #include #include #include #include class QNetworkReply; class QScriptEngine; class OpenSearchEngineDelegate; class QT_QUPZILLA_EXPORT OpenSearchEngine : public QObject { Q_OBJECT signals: void imageChanged(); void suggestions(const QStringList &suggestions); public: typedef QPair Parameter; typedef QList Parameters; Q_PROPERTY(QString name READ name WRITE setName) Q_PROPERTY(QString description READ description WRITE setDescription) Q_PROPERTY(QString searchUrlTemplate READ searchUrlTemplate WRITE setSearchUrlTemplate) Q_PROPERTY(Parameters searchParameters READ searchParameters WRITE setSearchParameters) Q_PROPERTY(QString searchMethod READ searchMethod WRITE setSearchMethod) Q_PROPERTY(QString suggestionsUrlTemplate READ suggestionsUrlTemplate WRITE setSuggestionsUrlTemplate) Q_PROPERTY(Parameters suggestionsParameters READ suggestionsParameters WRITE setSuggestionsParameters) Q_PROPERTY(QString suggestionsMethod READ suggestionsMethod WRITE setSuggestionsMethod) Q_PROPERTY(bool providesSuggestions READ providesSuggestions) Q_PROPERTY(QString imageUrl READ imageUrl WRITE setImageUrl) Q_PROPERTY(bool valid READ isValid) Q_PROPERTY(QNetworkAccessManager* networkAccessManager READ networkAccessManager WRITE setNetworkAccessManager) OpenSearchEngine(QObject* parent = 0); ~OpenSearchEngine(); QString name() const; void setName(const QString &name); QString description() const; void setDescription(const QString &description); QString searchUrlTemplate() const; void setSearchUrlTemplate(const QString &searchUrl); QUrl searchUrl(const QString &searchTerm) const; QByteArray getPostData(const QString &searchTerm) const; bool providesSuggestions() const; QString suggestionsUrlTemplate() const; void setSuggestionsUrlTemplate(const QString &suggestionsUrl); QUrl suggestionsUrl(const QString &searchTerm) const; Parameters searchParameters() const; void setSearchParameters(const Parameters &searchParameters); Parameters suggestionsParameters() const; void setSuggestionsParameters(const Parameters &suggestionsParameters); QString searchMethod() const; void setSearchMethod(const QString &method); QString suggestionsMethod() const; void setSuggestionsMethod(const QString &method); QString imageUrl() const; void setImageUrl(const QString &url); QImage image() const; void setImage(const QImage &image); bool isValid() const; void setSuggestionsUrl(const QString &string); void setSuggestionsParameters(const QByteArray ¶meters); QString getSuggestionsUrl(); QByteArray getSuggestionsParameters(); QNetworkAccessManager* networkAccessManager() const; void setNetworkAccessManager(QNetworkAccessManager* networkAccessManager); OpenSearchEngineDelegate* delegate() const; void setDelegate(OpenSearchEngineDelegate* delegate); bool operator==(const OpenSearchEngine &other) const; bool operator<(const OpenSearchEngine &other) const; public slots: void requestSuggestions(const QString &searchTerm); void requestSearchResults(const QString &searchTerm); protected: static QString parseTemplate(const QString &searchTerm, const QString &searchTemplate); void loadImage() const; private slots: void imageObtained(); void suggestionsObtained(); private: QString m_name; QString m_description; QString m_imageUrl; QImage m_image; QString m_searchUrlTemplate; QString m_suggestionsUrlTemplate; Parameters m_searchParameters; Parameters m_suggestionsParameters; QString m_searchMethod; QString m_suggestionsMethod; QByteArray m_preparedSuggestionsParameters; QString m_preparedSuggestionsUrl; QMap m_requestMethods; QNetworkAccessManager* m_networkAccessManager; QNetworkReply* m_suggestionsReply; QScriptEngine* m_scriptEngine; OpenSearchEngineDelegate* m_delegate; }; #endif // OPENSEARCHENGINE_H qupzilla-1.6.0/src/lib/opensearch/opensearchenginedelegate.cpp000066400000000000000000000041671226107126500245710ustar00rootroot00000000000000/* * Copyright 2009 Jakub Wieczorek * * 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., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA */ #include "opensearchenginedelegate.h" /*! \class OpenSearchEngineDelegate \brief An abstract class providing custom processing of specific activities. OpenSearchEngineDelegate is an abstract class that can be subclassed and set on an OpenSearchEngine. It allows to customize some parts of the default implementation or even extend it with missing bits. Currently subclasses can only provide a custom way of handling search requests by reimplementing the performSearchRequest() method. \sa OpenSearchEngine */ /*! Constructs the delegate. */ OpenSearchEngineDelegate::OpenSearchEngineDelegate() { } /*! Destructs the delegate. */ OpenSearchEngineDelegate::~OpenSearchEngineDelegate() { } /*! \fn void performSearchRequest(const QNetworkRequest &request, QNetworkAccessManager::Operation operation, const QByteArray &data) = 0 This method will be used after OpenSearchEngine::requestResults() is called. For example, a console application that uses the OpenSearchEngine class to generate a search URL for a search term supplied by the user would reimplement the function and forward the request to e.g. a web browser. Likewise, a web browser that uses the OpenSearchEngine class to support multiple search engines e.g. in a toolbar would perform the request and navigate to the search results site. */ qupzilla-1.6.0/src/lib/opensearch/opensearchenginedelegate.h000066400000000000000000000024531226107126500242320ustar00rootroot00000000000000/* * Copyright 2009 Jakub Wieczorek * * 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., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA */ #ifndef OPENSEARCHENGINEDELEGATE_H #define OPENSEARCHENGINEDELEGATE_H #include "qz_namespace.h" #include #include class OpenSearchEngineDelegate { public: OpenSearchEngineDelegate(); virtual ~OpenSearchEngineDelegate(); virtual void performSearchRequest(const QNetworkRequest &request, QNetworkAccessManager::Operation operation, const QByteArray &data) = 0; }; #endif // OPENSEARCHENGINEDELEGATE_H qupzilla-1.6.0/src/lib/opensearch/opensearchreader.cpp000066400000000000000000000167111226107126500230710ustar00rootroot00000000000000/* * Copyright 2009 Jakub Wieczorek * * 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., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA */ /* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "opensearchreader.h" #include "opensearchengine.h" #include /*! \class OpenSearchReader \brief A class reading a search engine description from an external source OpenSearchReader is a class that can be used to read search engine descriptions formed using the OpenSearch format. It inherits QXmlStreamReader and thus provides additional functions, such as QXmlStreamReader::error(), QXmlStreamReader::hasError() that can be used to make sure the reading procedure succeeded. For more information see: http://www.opensearch.org/Specifications/OpenSearch/1.1/Draft_4#OpenSearch_description_document \sa OpenSearchEngine, OpenSearchWriter */ /*! Constructs a new reader. \note One instance can be used to read multiple files, one by one. */ OpenSearchReader::OpenSearchReader() : QXmlStreamReader() { } /*! Reads an OpenSearch engine from the \a device and returns an OpenSearchEngine object, filled in with all the data that has been retrieved from the document. If the \a device is closed, it will be opened. To make sure if the procedure succeeded, check QXmlStreamReader::error(). \return a new constructed OpenSearchEngine object \note The function returns an object of the OpenSearchEngine class even if the document is bad formed or doesn't conform to the specification. It needs to be manually deleted afterwards, if intended. \note The lifetime of the returned OpenSearchEngine object is up to the user. The object should be deleted once it is not used anymore to avoid memory leaks. */ OpenSearchEngine* OpenSearchReader::read(QIODevice* device) { clear(); if (!device->isOpen()) { device->open(QIODevice::ReadOnly); } setDevice(device); return read(); } OpenSearchEngine* OpenSearchReader::read() { OpenSearchEngine* engine = new OpenSearchEngine(); m_searchXml = device()->peek(1024 * 5); if (!m_searchXml.contains(QLatin1String("http://a9.com/-/spec/opensearch/1.1/")) && !m_searchXml.contains(QLatin1String("http://www.mozilla.org/2006/browser/search/"))) { raiseError(QObject::tr("The file is not an OpenSearch 1.1 file.")); return engine; } // It just skips the XML declaration // The parsing code bellow for some reason doesn't like it -,- int index = m_searchXml.indexOf(QLatin1String(" 0) { int end = m_searchXml.indexOf(QLatin1String("?>"), index); if (end > 0) { device()->read(end + 2); } } while (!isStartElement() && !atEnd()) { readNext(); } while (!atEnd()) { readNext(); if (!isStartElement()) { continue; } if (name() == QLatin1String("ShortName") || name() == QLatin1String("os:ShortName")) { engine->setName(readElementText()); } else if (name() == QLatin1String("Description") || name() == QLatin1String("os:Description")) { engine->setDescription(readElementText()); } else if (name() == QLatin1String("Url") || name() == QLatin1String("os:Url")) { QString type = attributes().value(QLatin1String("type")).toString(); QString url = attributes().value(QLatin1String("template")).toString(); QString method = attributes().value(QLatin1String("method")).toString(); if (type == QLatin1String("application/x-suggestions+json") && !engine->suggestionsUrlTemplate().isEmpty()) { continue; } if ((type.isEmpty() || type == QLatin1String("text/html") || type == QLatin1String("application/xhtml+xml")) && !engine->searchUrlTemplate().isEmpty()) { continue; } if (url.isEmpty()) { continue; } QList parameters; readNext(); while (!isEndElement() || (name() != QLatin1String("Url") && name() != QLatin1String("os:Url"))) { if (!isStartElement() || (name() != QLatin1String("Param") && name() != QLatin1String("Parameter") && name() != QLatin1String("os:Param") && name() != QLatin1String("os:Parameter"))) { readNext(); continue; } QString key = attributes().value(QLatin1String("name")).toString(); QString value = attributes().value(QLatin1String("value")).toString(); if (!key.isEmpty() && !value.isEmpty()) { parameters.append(OpenSearchEngine::Parameter(key, value)); } while (!isEndElement()) { readNext(); } } if (type == QLatin1String("application/x-suggestions+json")) { engine->setSuggestionsUrlTemplate(url); engine->setSuggestionsParameters(parameters); engine->setSuggestionsMethod(method); } else if (type.isEmpty() || type == QLatin1String("text/html") || type == QLatin1String("application/xhtml+xml")) { engine->setSearchUrlTemplate(url); engine->setSearchParameters(parameters); engine->setSearchMethod(method); } } else if (name() == QLatin1String("Image") || name() == QLatin1String("os:Image")) { engine->setImageUrl(readElementText()); } if (!engine->name().isEmpty() && !engine->description().isEmpty() && !engine->suggestionsUrlTemplate().isEmpty() && !engine->searchUrlTemplate().isEmpty() && !engine->imageUrl().isEmpty()) { break; } } return engine; } qupzilla-1.6.0/src/lib/opensearch/opensearchreader.h000066400000000000000000000037501226107126500225350ustar00rootroot00000000000000/* * Copyright 2009 Jakub Wieczorek * * 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., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA */ /* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef OPENSEARCHREADER_H #define OPENSEARCHREADER_H #include "qz_namespace.h" #include class OpenSearchEngine; class QT_QUPZILLA_EXPORT OpenSearchReader : public QXmlStreamReader { public: OpenSearchReader(); OpenSearchEngine* read(QIODevice* device); private: OpenSearchEngine* read(); QString m_searchXml; }; #endif // OPENSEARCHREADER_H qupzilla-1.6.0/src/lib/opensearch/searchenginesdialog.cpp000066400000000000000000000164531226107126500235600ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "searchenginesdialog.h" #include "ui_searchenginesdialog.h" #include "editsearchengine.h" #include "mainapplication.h" #include SearchEnginesDialog::SearchEnginesDialog(QWidget* parent) : QDialog(parent) , ui(new Ui::SearchEnginesDialog) , m_manager(mApp->searchEnginesManager()) { setAttribute(Qt::WA_DeleteOnClose); ui->setupUi(this); connect(ui->add, SIGNAL(clicked()), this, SLOT(addEngine())); connect(ui->remove, SIGNAL(clicked()), this, SLOT(removeEngine())); connect(ui->edit, SIGNAL(clicked()), this, SLOT(editEngine())); connect(ui->setAsDefault, SIGNAL(clicked()), this, SLOT(setDefaultEngine())); connect(ui->defaults, SIGNAL(clicked()), this, SLOT(defaults())); connect(ui->moveUp, SIGNAL(clicked()), this, SLOT(moveUp())); connect(ui->moveDown, SIGNAL(clicked()), this, SLOT(moveDown())); connect(ui->treeWidget, SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)), this, SLOT(editEngine())); ui->treeWidget->sortByColumn(-1); reloadEngines(); } void SearchEnginesDialog::addEngine() { EditSearchEngine dialog(tr("Add Search Engine"), this); dialog.hideIconLabels(); if (dialog.exec() != QDialog::Accepted) { return; } SearchEngine engine; engine.name = dialog.name(); engine.url = dialog.url(); engine.postData = dialog.postData().toUtf8(); engine.shortcut = dialog.shortcut(); engine.icon = SearchEnginesManager::iconForSearchEngine(QUrl::fromEncoded(dialog.url().toUtf8())); if (engine.name.isEmpty() || engine.url.isEmpty()) { return; } QTreeWidgetItem* item = new QTreeWidgetItem(); setEngine(item, engine); changeItemToDefault(item, false); item->setIcon(0, engine.icon); item->setText(1, engine.shortcut); ui->treeWidget->addTopLevelItem(item); } void SearchEnginesDialog::removeEngine() { QTreeWidgetItem* item = ui->treeWidget->currentItem(); if (!item || ui->treeWidget->topLevelItemCount() == 1) { return; } if (isDefaultEngine(item)) { SearchEngine en = getEngine(item); QMessageBox::warning(this, tr("Remove Engine"), tr("You can't remove the default search engine.
    " "Set a different engine as default before removing %1.").arg(en.name)); } else { delete item; } } void SearchEnginesDialog::editEngine() { QTreeWidgetItem* item = ui->treeWidget->currentItem(); if (!item) { return; } SearchEngine engine = getEngine(item); EditSearchEngine dialog(tr("Edit Search Engine"), this); dialog.setName(engine.name); dialog.setUrl(engine.url); dialog.setPostData(engine.postData); dialog.setShortcut(engine.shortcut); dialog.setIcon(engine.icon); if (dialog.exec() != QDialog::Accepted) { return; } engine.name = dialog.name(); engine.url = dialog.url(); engine.postData = dialog.postData().toUtf8(); engine.shortcut = dialog.shortcut(); engine.icon = dialog.icon(); if (engine.name.isEmpty() || engine.url.isEmpty()) { return; } setEngine(item, engine); changeItemToDefault(item, isDefaultEngine(item)); item->setIcon(0, engine.icon); item->setText(1, engine.shortcut); } void SearchEnginesDialog::setDefaultEngine() { QTreeWidgetItem* item = ui->treeWidget->currentItem(); if (!item) { return; } for (int j = 0; j < ui->treeWidget->topLevelItemCount(); ++j) { QTreeWidgetItem* i = ui->treeWidget->topLevelItem(j); if (isDefaultEngine(i)) { if (i == item) { return; } changeItemToDefault(i, false); break; } } changeItemToDefault(item, true); } void SearchEnginesDialog::defaults() { m_manager->restoreDefaults(); reloadEngines(); } bool SearchEnginesDialog::isDefaultEngine(QTreeWidgetItem* item) { return item->data(0, DefaultRole).toBool(); } SearchEngine SearchEnginesDialog::getEngine(QTreeWidgetItem* item) { return item->data(0, EngineRole).value(); } void SearchEnginesDialog::setEngine(QTreeWidgetItem* item, SearchEngine engine) { QVariant v; v.setValue(engine); item->setData(0, EngineRole, v); item->setText(0, engine.name); } void SearchEnginesDialog::changeItemToDefault(QTreeWidgetItem* item, bool isDefault) { QFont font = item->font(0); font.setBold(isDefault); item->setFont(0, font); item->setFont(1, font); item->setData(0, DefaultRole, isDefault); } void SearchEnginesDialog::moveUp() { QTreeWidgetItem* currentItem = ui->treeWidget->currentItem(); int index = ui->treeWidget->indexOfTopLevelItem(currentItem); if (!currentItem || index == 0) { return; } ui->treeWidget->takeTopLevelItem(index); ui->treeWidget->insertTopLevelItem(index - 1, currentItem); ui->treeWidget->setCurrentItem(currentItem); } void SearchEnginesDialog::moveDown() { QTreeWidgetItem* currentItem = ui->treeWidget->currentItem(); int index = ui->treeWidget->indexOfTopLevelItem(currentItem); if (!currentItem || !ui->treeWidget->itemBelow(currentItem)) { return; } ui->treeWidget->takeTopLevelItem(index); ui->treeWidget->insertTopLevelItem(index + 1, currentItem); ui->treeWidget->setCurrentItem(currentItem); } void SearchEnginesDialog::reloadEngines() { ui->treeWidget->clear(); const QString defaultEngineName = mApp->searchEnginesManager()->defaultEngine().name; foreach (const SearchEngine &en, m_manager->allEngines()) { QTreeWidgetItem* item = new QTreeWidgetItem(); setEngine(item, en); changeItemToDefault(item, en.name == defaultEngineName); item->setIcon(0, en.icon); item->setText(1, en.shortcut); ui->treeWidget->addTopLevelItem(item); } } void SearchEnginesDialog::accept() { if (ui->treeWidget->topLevelItemCount() < 1) { return; } QVector allEngines; for (int i = 0; i < ui->treeWidget->topLevelItemCount(); i++) { QTreeWidgetItem* item = ui->treeWidget->topLevelItem(i); if (!item) { continue; } SearchEngine engine = getEngine(item); allEngines.append(engine); if (isDefaultEngine(item)) { m_manager->setDefaultEngine(engine); } } m_manager->setAllEngines(allEngines); QDialog::accept(); } SearchEnginesDialog::~SearchEnginesDialog() { delete ui; } qupzilla-1.6.0/src/lib/opensearch/searchenginesdialog.h000066400000000000000000000035661226107126500232260ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SEARCHENGINESDIALOG_H #define SEARCHENGINESDIALOG_H #include "qz_namespace.h" #include "searchenginesmanager.h" #include class QTreeWidgetItem; namespace Ui { class SearchEnginesDialog; } class QT_QUPZILLA_EXPORT SearchEnginesDialog : public QDialog { Q_OBJECT public: explicit SearchEnginesDialog(QWidget* parent = 0); ~SearchEnginesDialog(); public slots: void accept(); private slots: void addEngine(); void removeEngine(); void editEngine(); void setDefaultEngine(); void moveUp(); void moveDown(); void defaults(); private: enum TreeRole { EngineRole = Qt::UserRole, DefaultRole = Qt::UserRole + 1 }; bool isDefaultEngine(QTreeWidgetItem* item); SearchEngine getEngine(QTreeWidgetItem* item); void setEngine(QTreeWidgetItem* item, SearchEngine engine); void changeItemToDefault(QTreeWidgetItem* item, bool isDefault); void reloadEngines(); Ui::SearchEnginesDialog* ui; SearchEnginesManager* m_manager; }; #endif // SEARCHENGINESDIALOG_H qupzilla-1.6.0/src/lib/opensearch/searchenginesdialog.ui000066400000000000000000000102561226107126500234060ustar00rootroot00000000000000 SearchEnginesDialog 0 0 465 299 Manage Search Engines Add... Remove Edit Qt::Vertical 20 40 Set as default Up Down true 200 Search Engine Shortcut Defaults Qt::Horizontal 40 20 0 0 Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok buttonBox accepted() SearchEnginesDialog accept() 248 254 157 274 buttonBox rejected() SearchEnginesDialog reject() 316 260 286 274 qupzilla-1.6.0/src/lib/opensearch/searchenginesmanager.cpp000066400000000000000000000341701226107126500237270ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "searchenginesmanager.h" #include "searchenginesdialog.h" #include "editsearchengine.h" #include "iconprovider.h" #include "mainapplication.h" #include "networkmanager.h" #include "opensearchreader.h" #include "opensearchengine.h" #include "databasewriter.h" #include "settings.h" #include "qzsettings.h" #include "webview.h" #include #include #include #if QT_VERSION >= 0x050000 #include #endif #define ENSURE_LOADED if (!m_settingsLoaded) loadSettings(); QIcon SearchEnginesManager::iconForSearchEngine(const QUrl &url) { QIcon ic = qIconProvider->iconFromImage(qIconProvider->iconForDomain(url)); if (ic.isNull()) { ic = QIcon(":icons/menu/search-icon.png"); } return ic; } SearchEnginesManager::SearchEnginesManager() : QObject() , m_settingsLoaded(false) , m_saveScheduled(false) { Settings settings; settings.beginGroup("SearchEngines"); m_startingEngineName = settings.value("activeEngine", "Google").toString(); m_defaultEngineName = settings.value("DefaultEngine", "Google").toString(); settings.endGroup(); connect(this, SIGNAL(enginesChanged()), this, SLOT(scheduleSave())); } void SearchEnginesManager::loadSettings() { m_settingsLoaded = true; QSqlQuery query; query.exec("SELECT name, icon, url, shortcut, suggestionsUrl, suggestionsParameters, postData FROM search_engines"); while (query.next()) { Engine en; en.name = query.value(0).toString(); en.icon = qIconProvider->iconFromBase64(query.value(1).toByteArray()); en.url = query.value(2).toString(); en.shortcut = query.value(3).toString(); en.suggestionsUrl = query.value(4).toString(); en.suggestionsParameters = query.value(5).toByteArray(); en.postData = query.value(6).toByteArray(); m_allEngines.append(en); if (en.name == m_defaultEngineName) { m_defaultEngine = en; } } if (m_allEngines.isEmpty()) { restoreDefaults(); } if (m_defaultEngine.name.isEmpty()) { m_defaultEngine = m_allEngines[0]; } } SearchEngine SearchEnginesManager::engineForShortcut(const QString &shortcut) { Engine returnEngine; if (shortcut.isEmpty()) { return returnEngine; } foreach (const Engine &en, m_allEngines) { if (en.shortcut == shortcut) { returnEngine = en; break; } } return returnEngine; } SearchEnginesManager::SearchResult SearchEnginesManager::searchResult(const Engine &engine, const QString &string) { ENSURE_LOADED; SearchResult result; if (engine.postData.isEmpty()) { QByteArray url = engine.url.toUtf8(); url.replace(QLatin1String("%s"), QUrl::toPercentEncoding(string)); result.request = QNetworkRequest(QUrl::fromEncoded(url)); result.operation = QNetworkAccessManager::GetOperation; } else { QByteArray data = engine.postData; data.replace("%s", QUrl::toPercentEncoding(string)); result.request = QNetworkRequest(QUrl::fromEncoded(engine.url.toUtf8())); result.request.setHeader(QNetworkRequest::ContentTypeHeader, QByteArray("application/x-www-form-urlencoded")); result.operation = QNetworkAccessManager::PostOperation; result.data = data; } return result; } SearchEnginesManager::SearchResult SearchEnginesManager::searchResult(const QString &string) { ENSURE_LOADED; const Engine en = qzSettings->searchWithDefaultEngine ? m_defaultEngine : m_activeEngine; return searchResult(en, string); } void SearchEnginesManager::restoreDefaults() { Engine duck; duck.name = "DuckDuckGo"; duck.icon = QIcon(":/icons/sites/duck.png"); duck.url = "https://duckduckgo.com/?q=%s&t=qupzilla"; duck.shortcut = "d"; Engine sp; sp.name = "StartPage"; sp.icon = QIcon(":/icons/sites/startpage.png"); sp.url = "https://startpage.com/do/search"; sp.postData = "query=%s&cat=web&language=english"; sp.shortcut = "sp"; sp.suggestionsUrl = "https://startpage.com/cgi-bin/csuggest?output=json&lang=english&query=%s"; Engine wiki; wiki.name = "Wikipedia (en)"; wiki.icon = QIcon(":/icons/sites/wikipedia.png"); wiki.url = "http://en.wikipedia.org/wiki/Special:Search?search=%s&fulltext=Search"; wiki.shortcut = "w"; wiki.suggestionsUrl = "http://en.wikipedia.org/w/api.php?action=opensearch&search=%s&namespace=0"; Engine google; google.name = "Google"; google.icon = QIcon(":icons/sites/google.png"); google.url = "http://www.google.com/search?client=qupzilla&q=%s"; google.shortcut = "g"; google.suggestionsUrl = "http://suggestqueries.google.com/complete/search?output=firefox&q=%s"; addEngine(duck); addEngine(sp); addEngine(wiki); addEngine(google); m_defaultEngine = duck; emit enginesChanged(); } void SearchEnginesManager::engineChangedImage() { OpenSearchEngine* engine = qobject_cast(sender()); if (!engine) { return; } foreach (Engine e, m_allEngines) { if (e.name == engine->name() && e.url.contains(engine->searchUrl("%s").toString()) && !engine->image().isNull()) { int index = m_allEngines.indexOf(e); if (index != -1) { m_allEngines[index].icon = QIcon(QPixmap::fromImage(engine->image())); emit enginesChanged(); delete engine; break; } } } } void SearchEnginesManager::editEngine(const Engine &before, const Engine &after) { removeEngine(before); addEngine(after); } void SearchEnginesManager::addEngine(const Engine &engine) { ENSURE_LOADED; if (m_allEngines.contains(engine)) { return; } m_allEngines.append(engine); emit enginesChanged(); } void SearchEnginesManager::addEngineFromForm(const QWebElement &element, WebView* view) { QWebElement formElement = element.parent(); while (!formElement.isNull()) { if (formElement.tagName().toLower() == QLatin1String("form")) { break; } formElement = formElement.parent(); } if (formElement.isNull()) { return; } const QString method = formElement.hasAttribute("method") ? formElement.attribute("method").toUpper() : "GET"; bool isPost = method == QLatin1String("POST"); QUrl actionUrl = QUrl::fromEncoded(formElement.attribute("action").toUtf8()); if (actionUrl.isRelative()) { actionUrl = view->url().resolved(actionUrl); } QUrl parameterUrl = actionUrl; if (isPost) { parameterUrl = QUrl("http://foo.bar"); } #if QT_VERSION >= 0x050000 QUrlQuery query(parameterUrl); query.addQueryItem(element.attribute("name"), "%s"); QWebElementCollection allInputs = formElement.findAll("input"); foreach (QWebElement e, allInputs) { if (element == e || !e.hasAttribute("name")) { continue; } query.addQueryItem(e.attribute("name"), e.evaluateJavaScript("this.value").toString()); } parameterUrl.setQuery(query); #else QList > queryItems; QPair item; item.first = element.attribute("name").toUtf8(); item.second = "%s"; queryItems.append(item); QWebElementCollection allInputs = formElement.findAll("input"); foreach (QWebElement e, allInputs) { if (element == e || !e.hasAttribute("name")) { continue; } QPair item; item.first = QUrl::toPercentEncoding(e.attribute("name").toUtf8()); item.second = QUrl::toPercentEncoding(e.evaluateJavaScript("this.value").toByteArray()); queryItems.append(item); } parameterUrl.setEncodedQueryItems(parameterUrl.encodedQueryItems() + queryItems); #endif if (!isPost) { actionUrl = parameterUrl; } SearchEngine engine; engine.name = view->title(); engine.icon = view->icon(); engine.url = actionUrl.toEncoded(); if (isPost) { QByteArray data = parameterUrl.toEncoded(QUrl::RemoveScheme); engine.postData = data.contains('?') ? data.mid(data.lastIndexOf('?') + 1) : QByteArray(); } EditSearchEngine dialog(SearchEnginesDialog::tr("Add Search Engine"), view); dialog.setName(engine.name); dialog.setIcon(engine.icon); dialog.setUrl(engine.url); dialog.setPostData(engine.postData); if (dialog.exec() != QDialog::Accepted) { return; } engine.name = dialog.name(); engine.icon = dialog.icon(); engine.url = dialog.url(); engine.shortcut = dialog.shortcut(); engine.postData = dialog.postData().toUtf8(); if (engine.name.isEmpty() || engine.url.isEmpty()) { return; } addEngine(engine); } void SearchEnginesManager::addEngine(OpenSearchEngine* engine) { ENSURE_LOADED; Engine en; en.name = engine->name(); en.url = engine->searchUrl("searchstring").toString().replace(QLatin1String("searchstring"), QLatin1String("%s")); if (engine->image().isNull()) { en.icon = iconForSearchEngine(engine->searchUrl(QString())); } else { en.icon = QIcon(QPixmap::fromImage(engine->image())); } en.suggestionsUrl = engine->getSuggestionsUrl(); en.suggestionsParameters = engine->getSuggestionsParameters(); en.postData = engine->getPostData("searchstring").replace("searchstring", "%s"); addEngine(en); connect(engine, SIGNAL(imageChanged()), this, SLOT(engineChangedImage())); } void SearchEnginesManager::addEngine(const QUrl &url) { ENSURE_LOADED; if (!url.isValid()) { return; } qApp->setOverrideCursor(Qt::WaitCursor); QNetworkReply* reply = mApp->networkManager()->get(QNetworkRequest(url)); reply->setParent(this); connect(reply, SIGNAL(finished()), this, SLOT(replyFinished())); } void SearchEnginesManager::replyFinished() { qApp->restoreOverrideCursor(); QNetworkReply* reply = qobject_cast(sender()); if (!reply) { return; } if (reply->error() != QNetworkReply::NoError) { reply->close(); reply->deleteLater(); return; } OpenSearchReader reader; OpenSearchEngine* engine = reader.read(reply); engine->setNetworkAccessManager(mApp->networkManager()); reply->close(); reply->deleteLater(); if (checkEngine(engine)) { addEngine(engine); QMessageBox::information(0, tr("Search Engine Added"), tr("Search Engine \"%1\" has been successfully added.").arg(engine->name())); } } bool SearchEnginesManager::checkEngine(OpenSearchEngine* engine) { if (!engine->isValid()) { QString errorString = tr("Search Engine is not valid!"); QMessageBox::warning(0, tr("Error"), tr("Error while adding Search Engine
    Error Message: %1").arg(errorString)); return false; } return true; } void SearchEnginesManager::setActiveEngine(const Engine &engine) { ENSURE_LOADED; if (!m_allEngines.contains(engine)) { return; } m_activeEngine = engine; emit activeEngineChanged(); } void SearchEnginesManager::setDefaultEngine(const SearchEnginesManager::Engine &engine) { ENSURE_LOADED; if (!m_allEngines.contains(engine)) { return; } m_defaultEngine = engine; emit defaultEngineChanged(); } void SearchEnginesManager::removeEngine(const Engine &engine) { ENSURE_LOADED; int index = m_allEngines.indexOf(engine); if (index < 0) { return; } QSqlQuery query; query.prepare("DELETE FROM search_engines WHERE name=? AND url=?"); query.bindValue(0, engine.name); query.bindValue(1, engine.url); query.exec(); m_allEngines.remove(index); emit enginesChanged(); } void SearchEnginesManager::setAllEngines(const QVector &engines) { ENSURE_LOADED; m_allEngines = engines; emit enginesChanged(); } QVector SearchEnginesManager::allEngines() { ENSURE_LOADED; return m_allEngines; } void SearchEnginesManager::saveSettings() { Settings settings; settings.beginGroup("SearchEngines"); settings.setValue("activeEngine", m_activeEngine.name); settings.setValue("DefaultEngine", m_defaultEngine.name); settings.endGroup(); if (!m_saveScheduled) { return; } // Well, this is not the best implementation to do as this is taking some time. // Actually, it is delaying the quit of app for about a 1 sec on my machine with only // 5 engines. Another problem is that deleting rows without VACUUM isn't actually freeing // space in database. // // But as long as user is not playing with search engines every run it is acceptable. QSqlQuery query; query.exec("DELETE FROM search_engines"); foreach (const Engine &en, m_allEngines) { query.prepare("INSERT INTO search_engines (name, icon, url, shortcut, suggestionsUrl, suggestionsParameters, postData) VALUES (?, ?, ?, ?, ?, ?, ?)"); query.addBindValue(en.name); query.addBindValue(qIconProvider->iconToBase64(en.icon)); query.addBindValue(en.url); query.addBindValue(en.shortcut); query.addBindValue(en.suggestionsUrl); query.addBindValue(en.suggestionsParameters); query.addBindValue(en.postData); query.exec(); } } qupzilla-1.6.0/src/lib/opensearch/searchenginesmanager.h000066400000000000000000000067721226107126500234030ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SEARCHENGINESMANAGER_H #define SEARCHENGINESMANAGER_H #include #include #include #include #include #include "qz_namespace.h" #include "opensearchengine.h" class QWebElement; class WebView; class QT_QUPZILLA_EXPORT SearchEnginesManager : public QObject { Q_OBJECT public: explicit SearchEnginesManager(); struct Engine { QString name; QIcon icon; QString url; QString shortcut; QString suggestionsUrl; QByteArray suggestionsParameters; QByteArray postData; bool operator==(const Engine &other) const { return (this->name == other.name && this->url == other.url && this->suggestionsUrl == other.suggestionsUrl); } }; struct SearchResult { QNetworkRequest request; QNetworkAccessManager::Operation operation; QByteArray data; }; SearchResult searchResult(const Engine &engine, const QString &string); SearchResult searchResult(const QString &string); void addEngine(const QUrl &url); void addEngine(OpenSearchEngine* engine); void addEngine(const Engine &engine); void addEngineFromForm(const QWebElement &element, WebView* view); void removeEngine(const Engine &engine); void setActiveEngine(const Engine &engine); Engine activeEngine() const { return m_activeEngine; } void setDefaultEngine(const Engine &engine); Engine defaultEngine() const { return m_defaultEngine; } void editEngine(const Engine &before, const Engine &after); Engine engineForShortcut(const QString &shortcut); void setAllEngines(const QVector &engines); QVector allEngines(); static QIcon iconForSearchEngine(const QUrl &url); QString startingEngineName() { return m_startingEngineName; } void saveSettings(); void restoreDefaults(); signals: void enginesChanged(); void activeEngineChanged(); void defaultEngineChanged(); public slots: private slots: void engineChangedImage(); void replyFinished(); void scheduleSave() { m_saveScheduled = true; } private: bool checkEngine(OpenSearchEngine* engine); void loadSettings(); bool m_settingsLoaded; bool m_saveScheduled; QString m_startingEngineName; QString m_defaultEngineName; QVector m_allEngines; Engine m_activeEngine; Engine m_defaultEngine; }; typedef SearchEnginesManager::Engine SearchEngine; // Hint to QVector to use std::realloc on item moving Q_DECLARE_TYPEINFO(SearchEngine, Q_MOVABLE_TYPE); Q_DECLARE_METATYPE(SearchEngine) #endif // SEARCHENGINESMANAGER_H qupzilla-1.6.0/src/lib/other/000077500000000000000000000000001226107126500160375ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/other/aboutdialog.cpp000066400000000000000000000140251226107126500210370ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "aboutdialog.h" #include "ui_aboutdialog.h" #include "qupzilla.h" #include "mainapplication.h" #include "tabbedwebview.h" #include "webpage.h" #include "qtwin.h" AboutDialog::AboutDialog(QWidget* parent) : QDialog(parent), ui(new Ui::AboutDialog) { ui->setupUi(this); #ifdef Q_OS_WIN if (QtWin::isCompositionEnabled()) { QtWin::extendFrameIntoClientArea(this); ui->verticalLayout->setContentsMargins(0, 0, 0, 0); } #endif connect(ui->buttonBox, SIGNAL(clicked(QAbstractButton*)), this, SLOT(close())); connect(ui->authorsButton, SIGNAL(clicked()), this, SLOT(buttonClicked())); showAbout(); #ifdef Q_OS_WIN resize(300, height()); #endif } void AboutDialog::buttonClicked() { if (ui->authorsButton->text() == tr("Authors and Contributors")) { showAuthors(); } else if (ui->authorsButton->text() == tr("< About QupZilla")) { showAbout(); } } void AboutDialog::showAbout() { ui->authorsButton->setText(tr("Authors and Contributors")); if (m_aboutHtml.isEmpty()) { m_aboutHtml += "
    "; m_aboutHtml += tr("

    Application version %1
    ").arg(QupZilla::VERSION #ifdef GIT_REVISION + " (" + GIT_REVISION + ")" #endif ); m_aboutHtml += tr("WebKit version %1

    ").arg(QupZilla::WEBKITVERSION); m_aboutHtml += QString("

    © %1 %2
    ").arg(QupZilla::COPYRIGHT, QupZilla::AUTHOR); m_aboutHtml += tr("Build time: %1

    ").arg(QupZilla::BUILDTIME); m_aboutHtml += QString("

    %1

    ").arg(QupZilla::WWWADDRESS); m_aboutHtml += "

    " + (mApp->windowCount() > 0 ? mApp->getWindow()->weView()->page()->userAgentForUrl(QUrl()) : QString()) + "

    "; m_aboutHtml += "
    "; } ui->textBrowser->setHtml(m_aboutHtml); } void AboutDialog::showAuthors() { ui->authorsButton->setText(tr("< About QupZilla")); if (m_authorsHtml.isEmpty()) { m_authorsHtml += "
    "; m_authorsHtml += tr("

    Main developer:
    %1 <%2>

    ").arg(QupZilla::AUTHOR, "nowrep@gmail.com"); m_authorsHtml += tr("

    Contributors:
    %1

    ").arg( QString::fromUtf8("Mladen Pejaković
    " "Alexander Samilov
    " "Seyyed Razi Alavizadeh
    " "Franz Fellner
    " "Bryan M Dunsmore
    " "Mariusz Fik
    " "Jan Rajnoha
    " "Daniele Cocca") ); m_authorsHtml += tr("

    Translators:
    %1

    ").arg( QString::fromUtf8("Heimen Stoffels
    " "Peter Vacula
    " "Jonathan Hooverman
    " "Federico Fabiani
    " "Francesco Marinucci
    " "Jorge Sevilla
    " "Ștefan Comănescu
    " "Michał Szymanowski
    " "Mariusz Fik
    " "Jérôme Giry
    " "Nicolas Ourceau
    " "Vasilis Tsivikis
    " "Rustam Salakhutdinov
    " "Oleg Brezhnev
    " "Sérgio Marques
    " "Alexandre Carvalho
    " "Mladen Pejaković
    " "Unink-Lio
    " "Wu Cheng-Hong
    " "Widya Walesa
    " "Beqa Arabuli
    " "Daiki Noda
    " "Gábor Oberle
    " "Piccoro McKay Lenz
    " "Stanislav Kuznietsov
    " "Seyyed Razi Alavizadeh
    " "Guillem Prats
    " "Clara Villalba
    " "Yu Hai
    " "Xabier Aramendi") ); m_authorsHtml += "
    "; } ui->textBrowser->setHtml(m_authorsHtml); } AboutDialog::~AboutDialog() { delete ui; } qupzilla-1.6.0/src/lib/other/aboutdialog.h000066400000000000000000000024701226107126500205050ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef ABOUTDIALOG_H #define ABOUTDIALOG_H #include #include "qz_namespace.h" namespace Ui { class AboutDialog; } class QT_QUPZILLA_EXPORT AboutDialog : public QDialog { Q_OBJECT public: explicit AboutDialog(QWidget* parent = 0); ~AboutDialog(); private slots: void showAbout(); void showAuthors(); void buttonClicked(); private: Ui::AboutDialog* ui; QString m_aboutHtml; QString m_authorsHtml; }; #endif // ABOUTDIALOG_H qupzilla-1.6.0/src/lib/other/aboutdialog.ui000066400000000000000000000065471226107126500207040ustar00rootroot00000000000000 AboutDialog 0 0 381 416 About QupZilla 0 :/icons/other/about.png Qt::AlignCenter Qt::ScrollBarAlwaysOff <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd"> <html><head><meta name="qrichtext" content="1" /><style type="text/css"> p, li { white-space: pre-wrap; } </style></head><body style=" font-family:'Ubuntu'; font-size:10pt; font-weight:400; font-style:normal;"> <p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"></p></body></html> true true 5 0 0 Authors Qt::Horizontal QDialogButtonBox::Close buttonBox accepted() AboutDialog accept() 248 254 157 274 buttonBox rejected() AboutDialog reject() 316 260 286 274 qupzilla-1.6.0/src/lib/other/browsinglibrary.cpp000066400000000000000000000107541226107126500217710ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "browsinglibrary.h" #include "ui_browsinglibrary.h" #include "historymanager.h" #include "bookmarksmanager.h" #include "rssmanager.h" #include "mainapplication.h" #include "downloaditem.h" #include "qztools.h" #include "settings.h" #include "history.h" #include BrowsingLibrary::BrowsingLibrary(QupZilla* mainClass, QWidget* parent) : QWidget(parent) , ui(new Ui::BrowsingLibrary) , m_historyManager(new HistoryManager(mainClass)) , m_bookmarksManager(new BookmarksManager(mainClass)) , m_rssManager(mApp->rssManager()) , m_bookmarksLoaded(false) , m_rssLoaded(false) { ui->setupUi(this); Settings settings; settings.beginGroup("BrowsingLibrary"); resize(settings.value("size", QSize(760, 470)).toSize()); m_historyManager->restoreState(settings.value("historyState", QByteArray()).toByteArray()); settings.endGroup(); QzTools::centerWidgetOnScreen(this); ui->tabs->AddTab(m_historyManager, QIcon(":/icons/other/bighistory.png"), tr("History")); ui->tabs->AddTab(m_bookmarksManager, QIcon(":/icons/other/bigstar.png"), tr("Bookmarks")); ui->tabs->AddTab(m_rssManager, QIcon(":/icons/other/bigrss.png"), tr("RSS")); ui->tabs->SetMode(FancyTabWidget::Mode_LargeSidebar); ui->tabs->setFocus(); connect(ui->tabs, SIGNAL(CurrentChanged(int)), this, SLOT(currentIndexChanged(int))); connect(ui->searchLine, SIGNAL(textChanged(QString)), this, SLOT(search())); QzTools::setWmClass("Browsing Library", this); } void BrowsingLibrary::currentIndexChanged(int index) { switch (index) { case 0: ui->searchLine->show(); search(); break; case 1: if (!m_bookmarksLoaded) { m_bookmarksManager->refreshTable(); m_bookmarksLoaded = true; } ui->searchLine->show(); search(); break; case 2: if (!m_rssLoaded) { m_rssManager->refreshTable(); m_rssLoaded = true; } ui->searchLine->hide(); break; default: qWarning("BrowsingLibrary::currentIndexChanged() received index out of range!"); } } void BrowsingLibrary::search() { if (ui->tabs->current_index() == 0) { m_historyManager->search(ui->searchLine->text()); } else { m_bookmarksManager->search(ui->searchLine->text()); } } void BrowsingLibrary::showHistory(QupZilla* mainClass) { ui->tabs->SetCurrentIndex(0); show(); m_historyManager->setMainWindow(mainClass); raise(); activateWindow(); } void BrowsingLibrary::showBookmarks(QupZilla* mainClass) { ui->tabs->SetCurrentIndex(1); show(); m_bookmarksManager->setMainWindow(mainClass); if (!m_bookmarksLoaded) { m_bookmarksManager->refreshTable(); m_bookmarksLoaded = true; } raise(); activateWindow(); } void BrowsingLibrary::showRSS(QupZilla* mainClass) { ui->tabs->SetCurrentIndex(2); show(); m_rssManager->setMainWindow(mainClass); if (!m_rssLoaded) { m_rssManager->refreshTable(); m_rssLoaded = true; } raise(); activateWindow(); } void BrowsingLibrary::closeEvent(QCloseEvent* e) { Settings settings; settings.beginGroup("BrowsingLibrary"); settings.setValue("size", size()); settings.setValue("historyState", m_historyManager->saveState()); settings.endGroup(); e->accept(); // Saves a few megabytes m_rssManager->deleteAllTabs(); m_rssLoaded = false; } void BrowsingLibrary::keyPressEvent(QKeyEvent* e) { if (e->key() == Qt::Key_Escape) { close(); } QWidget::keyPressEvent(e); } BrowsingLibrary::~BrowsingLibrary() { delete ui; } qupzilla-1.6.0/src/lib/other/browsinglibrary.h000066400000000000000000000036601226107126500214340ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef LIBRARY_H #define LIBRARY_H #include #include "qz_namespace.h" namespace Ui { class BrowsingLibrary; } class HistoryManager; class BookmarksManager; class RSSManager; class QupZilla; class QT_QUPZILLA_EXPORT BrowsingLibrary : public QWidget { Q_OBJECT public: explicit BrowsingLibrary(QupZilla* mainClass, QWidget* parent = 0); ~BrowsingLibrary(); void showHistory(QupZilla* mainClass); void showBookmarks(QupZilla* mainClass); void showRSS(QupZilla* mainClass); void optimizeDatabase(); HistoryManager* historyManager() { return m_historyManager; } BookmarksManager* bookmarksManager() { return m_bookmarksManager; } RSSManager* rssManager() { return m_rssManager; } private slots: void currentIndexChanged(int index); void search(); private: void closeEvent(QCloseEvent* e); void keyPressEvent(QKeyEvent* e); Ui::BrowsingLibrary* ui; HistoryManager* m_historyManager; BookmarksManager* m_bookmarksManager; RSSManager* m_rssManager; bool m_bookmarksLoaded; bool m_rssLoaded; }; #endif // LIBRARY_H qupzilla-1.6.0/src/lib/other/browsinglibrary.ui000066400000000000000000000045451226107126500216250ustar00rootroot00000000000000 BrowsingLibrary 0 0 762 477 Library 0 0 71 25 71 25 16777215 25 0 0 Qt::Horizontal 40 20 16777215 23 Search... FancyTabWidget QWidget
    fancytabwidget.h
    1
    qupzilla-1.6.0/src/lib/other/checkboxdialog.cpp000066400000000000000000000035641226107126500215210ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "checkboxdialog.h" #include "ui_checkboxdialog.h" CheckBoxDialog::CheckBoxDialog(const QDialogButtonBox::StandardButtons &buttons, QWidget* parent) : QDialog(parent, Qt::MSWindowsFixedSizeDialogHint | Qt::WindowTitleHint | Qt::WindowSystemMenuHint | Qt::WindowCloseButtonHint) , ui(new Ui::CheckBoxDialog) { ui->setupUi(this); ui->buttonBox->setStandardButtons(buttons); } void CheckBoxDialog::setIcon(const QIcon &icon) { ui->iconLabel->setPixmap(icon.pixmap(48, 48)); ui->iconLabel->setFixedWidth(48); } void CheckBoxDialog::setText(const QString &text) { ui->textLabel->setText(text); } void CheckBoxDialog::setCheckBoxText(const QString &text) { ui->checkBox->setText(text); } bool CheckBoxDialog::isChecked() const { return ui->checkBox->isChecked(); } void CheckBoxDialog::setDefaultCheckState(Qt::CheckState state) { ui->checkBox->setChecked(state == Qt::Checked); } int CheckBoxDialog::exec() { ui->buttonBox->setFocus(); setMaximumSize(size()); return QDialog::exec(); } qupzilla-1.6.0/src/lib/other/checkboxdialog.h000066400000000000000000000027501226107126500211620ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef CHECKBOXDIALOG_H #define CHECKBOXDIALOG_H #include #include #include "qz_namespace.h" namespace Ui { class CheckBoxDialog; } class QT_QUPZILLA_EXPORT CheckBoxDialog : public QDialog { Q_OBJECT public: explicit CheckBoxDialog(const QDialogButtonBox::StandardButtons &buttons, QWidget* parent = 0); void setIcon(const QIcon &icon); void setText(const QString &text); void setCheckBoxText(const QString &text); bool isChecked() const; void setDefaultCheckState(Qt::CheckState state); public slots: int exec(); private: Ui::CheckBoxDialog* ui; }; #endif // CHECKBOXDIALOG_H qupzilla-1.6.0/src/lib/other/checkboxdialog.ui000066400000000000000000000045761226107126500213600ustar00rootroot00000000000000 CheckBoxDialog 0 0 409 94 Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop Qt::Horizontal 40 20 0 0 buttonBox accepted() CheckBoxDialog accept() 248 254 157 274 buttonBox rejected() CheckBoxDialog reject() 316 260 286 274 qupzilla-1.6.0/src/lib/other/clearprivatedata.cpp000066400000000000000000000157231226107126500220660ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "clearprivatedata.h" #include "qupzilla.h" #include "tabwidget.h" #include "cookiejar.h" #include "history.h" #include "settings.h" #include "mainapplication.h" #include "networkmanager.h" #include "clickablelabel.h" #include "ui_clearprivatedata.h" #include "iconprovider.h" #include "qztools.h" #include #include #include #include #include #include #include #include #include ClearPrivateData::ClearPrivateData(QupZilla* mainClass, QWidget* parent) : QDialog(parent) , p_QupZilla(mainClass) , ui(new Ui::ClearPrivateData) { ui->setupUi(this); ui->buttonBox->setFocus(); connect(ui->history, SIGNAL(clicked(bool)), this, SLOT(historyClicked(bool))); connect(ui->buttonBox, SIGNAL(accepted()), this, SLOT(dialogAccepted())); connect(ui->optimizeDb, SIGNAL(clicked(QPoint)), this, SLOT(optimizeDb())); //Resizing +2 of sizeHint to get visible underlined link resize(sizeHint().width(), sizeHint().height() + 2); Settings settings; settings.beginGroup("ClearPrivateData"); restoreState(settings.value("state", QByteArray()).toByteArray()); settings.endGroup(); } void ClearPrivateData::historyClicked(bool state) { ui->historyLength->setEnabled(state); } void ClearPrivateData::clearLocalStorage() { const QString profile = mApp->currentProfilePath(); QzTools::removeDir(profile + "LocalStorage"); } void ClearPrivateData::clearWebDatabases() { const QString profile = mApp->currentProfilePath(); QWebDatabase::removeAllDatabases(); QzTools::removeDir(profile + "Databases"); } void ClearPrivateData::clearCache() { mApp->networkCache()->clear(); mApp->webSettings()->clearMemoryCaches(); QFile::remove(mApp->currentProfilePath() + "ApplicationCache.db"); } void ClearPrivateData::clearIcons() { mApp->webSettings()->clearIconDatabase(); qIconProvider->clearIconDatabase(); } void ClearPrivateData::closeEvent(QCloseEvent* e) { Settings settings; settings.beginGroup("ClearPrivateData"); settings.setValue("state", saveState()); settings.endGroup(); e->accept(); } void ClearPrivateData::dialogAccepted() { QMessageBox::StandardButton b = QMessageBox::question(this, tr("Clear Private Data"), tr("Are you sure to clear selected private data?"), QMessageBox::Yes | QMessageBox::No, QMessageBox::No); if (b != QMessageBox::Yes) { return; } QApplication::setOverrideCursor(Qt::WaitCursor); if (ui->history->isChecked()) { qint64 start = QDateTime::currentMSecsSinceEpoch(); qint64 end = 0; const QDate today = QDate::currentDate(); const QDate week = today.addDays(1 - today.dayOfWeek()); const QDate month = QDate(today.year(), today.month(), 1); switch (ui->historyLength->currentIndex()) { case 0: //Later Today end = QDateTime(today).toMSecsSinceEpoch(); break; case 1: //Week end = QDateTime(week).toMSecsSinceEpoch(); break; case 2: //Month end = QDateTime(month).toMSecsSinceEpoch(); break; case 3: //All break; } if (end == 0) { mApp->history()->clearHistory(); } else { const QList &indexes = mApp->history()->indexesFromTimeRange(start, end); mApp->history()->deleteHistoryEntry(indexes); } } if (ui->cookies->isChecked()) { mApp->cookieJar()->setAllCookies(QList()); } if (ui->cache->isChecked()) { clearCache(); } if (ui->databases->isChecked()) { clearWebDatabases(); } if (ui->localStorage->isChecked()) { clearLocalStorage(); } if (ui->icons->isChecked()) { clearIcons(); } QApplication::restoreOverrideCursor(); close(); } void ClearPrivateData::optimizeDb() { mApp->setOverrideCursor(Qt::WaitCursor); QString profilePath = mApp->currentProfilePath(); QString sizeBefore = QzTools::fileSizeToString(QFileInfo(profilePath + "browsedata.db").size()); mApp->history()->optimizeHistory(); QString sizeAfter = QzTools::fileSizeToString(QFileInfo(profilePath + "browsedata.db").size()); mApp->restoreOverrideCursor(); QMessageBox::information(this, tr("Database Optimized"), tr("Database successfully optimized.

    Database Size Before: %1
    Database Size After: %2").arg(sizeBefore, sizeAfter)); } static const int stateDataVersion = 0x0001; void ClearPrivateData::restoreState(const QByteArray &state) { QDataStream stream(state); if (stream.atEnd()) { return; } int version = -1; int historyIndex = -1; bool databases = false; bool localStorage = false; bool cache = false; bool cookies = false; bool icons = false; stream >> version; if (version != stateDataVersion) { return; } stream >> historyIndex; stream >> databases; stream >> localStorage; stream >> cache; stream >> cookies; stream >> icons; if (historyIndex != -1) { ui->history->setChecked(true); ui->historyLength->setEnabled(true); ui->historyLength->setCurrentIndex(historyIndex); } ui->databases->setChecked(databases); ui->localStorage->setChecked(localStorage); ui->cache->setChecked(cache); ui->cookies->setChecked(cookies); ui->icons->setChecked(icons); } QByteArray ClearPrivateData::saveState() { // history - web database - local storage - cache - cookies - icons QByteArray data; QDataStream stream(&data, QIODevice::WriteOnly); stream << stateDataVersion; if (!ui->history->isChecked()) { stream << -1; } else { stream << ui->historyLength->currentIndex(); } stream << ui->databases->isChecked(); stream << ui->localStorage->isChecked(); stream << ui->cache->isChecked(); stream << ui->cookies->isChecked(); stream << ui->icons->isChecked(); return data; } qupzilla-1.6.0/src/lib/other/clearprivatedata.h000066400000000000000000000031321226107126500215220ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef CLEARPRIVATEDATA_H #define CLEARPRIVATEDATA_H #include #include "qz_namespace.h" namespace Ui { class ClearPrivateData; } class QupZilla; class QT_QUPZILLA_EXPORT ClearPrivateData : public QDialog { Q_OBJECT public: explicit ClearPrivateData(QupZilla* mainClass, QWidget* parent = 0); static void clearLocalStorage(); static void clearWebDatabases(); static void clearCache(); static void clearIcons(); private slots: void historyClicked(bool state); void dialogAccepted(); void optimizeDb(); private: void closeEvent(QCloseEvent* e); void restoreState(const QByteArray &state); QByteArray saveState(); QupZilla* p_QupZilla; Ui::ClearPrivateData* ui; }; #endif // CLEARPRIVATEDATA_H qupzilla-1.6.0/src/lib/other/clearprivatedata.ui000066400000000000000000000126441226107126500217200ustar00rootroot00000000000000 ClearPrivateData 0 0 246 289 Clear Recent History false Earlier Today Week Month All Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok Clear local storage true Clear cookies false Qt::Horizontal QSizePolicy::Fixed 25 20 Choose what you want to delete: Clear icons Clear cache true Clear web databases true <b>Clear Recent History</b> Clear history false 0 0 :/icons/preferences/applications-system.png Qt::Horizontal PointingHandCursor Optimize database Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter true ClickableLabel QLabel
    clickablelabel.h
    buttonBox rejected() ClearPrivateData reject() 316 260 286 274
    qupzilla-1.6.0/src/lib/other/databasewriter.cpp000066400000000000000000000024251226107126500215470ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "databasewriter.h" #include DatabaseWriter::DatabaseWriter(QObject* parent) : QObject(parent) { } void DatabaseWriter::executeQuery(const QSqlQuery &query) { m_queries.append(query); QTimer::singleShot(0, this, SLOT(execute())); } void DatabaseWriter::execute() { if (m_queries.count() == 0) { return; } QSqlQuery query = m_queries.first(); query.exec(); m_queries.remove(0); } qupzilla-1.6.0/src/lib/other/databasewriter.h000066400000000000000000000024171226107126500212150ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef DATABASEWRITER_H #define DATABASEWRITER_H #include #include #include #include "qz_namespace.h" class QT_QUPZILLA_EXPORT DatabaseWriter : public QObject { Q_OBJECT public: explicit DatabaseWriter(QObject* parent = 0); void executeQuery(const QSqlQuery &query); signals: private slots: void execute(); private: QVector m_queries; }; #endif // DATABASEWRITER_H qupzilla-1.6.0/src/lib/other/iconchooser.cpp000066400000000000000000000072101226107126500210560ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "iconchooser.h" #include "ui_iconchooser.h" #include "qztools.h" #include #include IconChooser::IconChooser(QWidget* parent) : QDialog(parent), ui(new Ui::IconChooser) { ui->setupUi(this); ui->iconList->setItemDelegate(new IconChooserDelegate(ui->iconList)); connect(ui->chooseFile, SIGNAL(clicked()), this, SLOT(chooseFile())); connect(ui->siteUrl, SIGNAL(textChanged(QString)), this, SLOT(searchIcon(QString))); } void IconChooser::chooseFile() { const QString fileTypes = QString("%3(*.png *.jpg *.jpeg *.gif)").arg(tr("Image files")); const QString path = QzTools::getOpenFileName("IconChooser-ChangeIcon", this, tr("Choose icon..."), QDir::homePath(), fileTypes); if (path.isEmpty()) { return; } ui->iconList->clear(); QIcon icon(path); if (!icon.isNull()) { QListWidgetItem* item = new QListWidgetItem(ui->iconList); item->setIcon(icon); ui->iconList->setCurrentItem(item); } } void IconChooser::searchIcon(const QString &string) { if (string.size() < 4) { return; } ui->iconList->clear(); QSqlQuery query; query.prepare("SELECT icon FROM icons WHERE url LIKE ? LIMIT 20"); query.bindValue(0, QString("%%1%").arg(string)); query.exec(); while (query.next()) { QImage image = QImage::fromData(query.value(0).toByteArray()); if (!image.isNull()) { QListWidgetItem* item = new QListWidgetItem(ui->iconList); item->setIcon(QPixmap::fromImage(image)); } } } QIcon IconChooser::getIcon() { QIcon icon; int status = QDialog::exec(); if (status == QDialog::Accepted) { QList selectedItems = ui->iconList->selectedItems(); if (!selectedItems.isEmpty()) { icon = selectedItems.at(0)->icon(); } } // Ensure we are returning 16×16px icon if (!icon.isNull()) { icon = icon.pixmap(16); } return icon; } IconChooser::~IconChooser() { delete ui; } IconChooserDelegate::IconChooserDelegate(QWidget* parent) : QStyledItemDelegate(parent) { } void IconChooserDelegate::paint(QPainter* painter, const QStyleOptionViewItem &option, const QModelIndex &index) const { QStyleOptionViewItemV4 opt = option; initStyleOption(&opt, index); const QWidget* w = opt.widget; const QStyle* style = w ? w->style() : QApplication::style(); // Draw background style->drawPrimitive(QStyle::PE_PanelItemViewItem, &opt, painter, w); // Draw icon QIcon icon = index.data(Qt::DecorationRole).value(); icon.paint(painter, opt.rect); } QSize IconChooserDelegate::sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const { Q_UNUSED(option) Q_UNUSED(index) return QSize(48, 48); } qupzilla-1.6.0/src/lib/other/iconchooser.h000066400000000000000000000032201226107126500205200ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef ICONCHOOSER_H #define ICONCHOOSER_H #include #include #include "qz_namespace.h" class QIcon; namespace Ui { class IconChooser; } class QT_QUPZILLA_EXPORT IconChooser : public QDialog { Q_OBJECT public: explicit IconChooser(QWidget* parent = 0); ~IconChooser(); QIcon getIcon(); private slots: void chooseFile(); void searchIcon(const QString &string); private: Ui::IconChooser* ui; }; class QT_QUPZILLA_EXPORT IconChooserDelegate : public QStyledItemDelegate { public: explicit IconChooserDelegate(QWidget* parent = 0); void paint(QPainter* painter, const QStyleOptionViewItem &option, const QModelIndex &index) const; QSize sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const; }; #endif // ICONCHOOSER_H qupzilla-1.6.0/src/lib/other/iconchooser.ui000066400000000000000000000065421226107126500207200ustar00rootroot00000000000000 IconChooser 0 0 388 326 Choose icon... From file 0 Image (.png, .jpg, .jpeg, .gif) 0 0 Choose file... From database 0 Site Url: Qt::Horizontal QListView::Static QListView::Adjust QListView::IconMode Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok buttonBox accepted() IconChooser accept() 248 254 157 274 buttonBox rejected() IconChooser reject() 316 260 286 274 qupzilla-1.6.0/src/lib/other/licenseviewer.cpp000066400000000000000000000036021226107126500214100ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "licenseviewer.h" #include "qztools.h" #include #include #include #include LicenseViewer::LicenseViewer(QWidget* parent) : QWidget() { setAttribute(Qt::WA_DeleteOnClose); setWindowTitle(tr("License Viewer")); m_textBrowser = new QTextBrowser(this); QFont serifFont = m_textBrowser->font(); serifFont.setFamily("Courier"); m_textBrowser->setFont(serifFont); QDialogButtonBox* buttonBox = new QDialogButtonBox(this); buttonBox->setStandardButtons(QDialogButtonBox::Close); connect(buttonBox, SIGNAL(rejected()), this, SLOT(close())); QVBoxLayout* l = new QVBoxLayout(this); l->addWidget(m_textBrowser); l->addWidget(buttonBox); setLayout(l); resize(600, 500); QzTools::centerWidgetToParent(this, parent); } void LicenseViewer::setLicenseFile(const QString &fileName) { m_textBrowser->setText(QzTools::readAllFileContents(fileName)); } void LicenseViewer::setText(const QString &text) { m_textBrowser->setText(text); } qupzilla-1.6.0/src/lib/other/licenseviewer.h000066400000000000000000000023631226107126500210600ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef LICENSEVIEWER_H #define LICENSEVIEWER_H #include #include "qz_namespace.h" class QTextBrowser; class QT_QUPZILLA_EXPORT LicenseViewer : public QWidget { Q_OBJECT public: explicit LicenseViewer(QWidget* parent = 0); void setLicenseFile(const QString &fileName); void setText(const QString &text); private: QTextBrowser* m_textBrowser; }; #endif // LICENSEVIEWER_H qupzilla-1.6.0/src/lib/other/macmenureceiver.cpp000066400000000000000000000264501226107126500217240ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * Copyright (C) 2013 S. Razi Alavizadeh * * 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 3 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, see . * ============================================================ */ #include "macmenureceiver.h" #include "mainapplication.h" #include "qupzilla.h" #include "settings.h" #include #include #include MacMenuReceiver::MacMenuReceiver(QObject* parent) : QObject(parent) , m_macMenuBar(0) , m_bookmarksMenuChanged(true) , m_menuBookmarksAction(0) { } void MacMenuReceiver::setEnabledSelectedMenuActions(QMenu* menu, const QList indexList) { if (!menu || mApp->windowCount() == 0) { return; } // we mean all actions by empty list if (indexList.isEmpty()) { foreach (QAction* act, menu->actions()) { act->setEnabled(true); } return; } foreach (int index, indexList) { Q_ASSERT(index >= 0 && index < menu->actions().size()); menu->actions().at(index)->setEnabled(true); } } void MacMenuReceiver::setDisabledSelectedMenuActions(QMenu* menu, const QList indexList) { if (!menu) { return; } // we mean all actions by empty list if (indexList.isEmpty()) { foreach (QAction* act, menu->actions()) { act->setDisabled(true); } return; } foreach (int index, indexList) { Q_ASSERT(index >= 0 && index < menu->actions().size()); menu->actions().at(index)->setDisabled(true); } } bool MacMenuReceiver::callSlot(const char* member, bool makeIfNoWindow, QGenericArgument val0, QGenericArgument val1) { //qDebug("MacMenuReceiver::callSlot: \'QupZilla::%s()\'", member); QupZilla* qzWindow = mApp->getWindow(); if (!qzWindow) { if (!makeIfNoWindow) { return false; } else { qzWindow = mApp->makeNewWindow(Qz::BW_MacFirstWindow); mApp->processEvents(); } } bool success = QMetaObject::invokeMethod(qzWindow, member, val0, val1); if (!success) { qCritical("Warning: try to invoke \'QupZilla::%s()\' with incorrect parameter(s) or no such slot.", member); // this should never happen, for now: // we just ignore it! } return true; } void MacMenuReceiver::goNext() { callSlot("goNext"); } void MacMenuReceiver::goBack() { callSlot("goBack"); } void MacMenuReceiver::goHome() { callSlot("goHome", true); } void MacMenuReceiver::stop() { callSlot("stop"); } void MacMenuReceiver::reload() { callSlot("reload"); } void MacMenuReceiver::reloadByPassCache() { callSlot("reloadByPassCache"); } void MacMenuReceiver::aboutQupZilla() { callSlot("aboutQupZilla", true); } void MacMenuReceiver::addTab() { if (!callSlot("addTab")) { mApp->makeNewWindow(Qz::BW_MacFirstWindow); } } void MacMenuReceiver::savePageScreen() { callSlot("savePageScreen"); } void MacMenuReceiver::searchOnPage() { callSlot("searchOnPage"); } void MacMenuReceiver::showCookieManager() { callSlot("showCookieManager"); } void MacMenuReceiver::showHistoryManager() { callSlot("showHistoryManager"); } void MacMenuReceiver::showBookmarksManager() { callSlot("showBookmarksManager"); } void MacMenuReceiver::showRSSManager() { callSlot("showRSSManager"); } void MacMenuReceiver::showDownloadManager() { callSlot("showDownloadManager"); } void MacMenuReceiver::showMenubar() { callSlot("showMenubar"); } void MacMenuReceiver::showNavigationToolbar() { callSlot("showNavigationToolbar"); } void MacMenuReceiver::showStatusbar() { callSlot("showStatusbar"); } void MacMenuReceiver::showClearPrivateData() { callSlot("showClearPrivateData"); } void MacMenuReceiver::showPreferences() { callSlot("showPreferences", true); } void MacMenuReceiver::showBookmarkImport() { callSlot("showBookmarkImport"); } void MacMenuReceiver::refreshHistory() { callSlot("refreshHistory"); } void MacMenuReceiver::bookmarkAllTabs() { callSlot("bookmarkAllTabs"); } void MacMenuReceiver::newWindow() { if (!callSlot("newWindow")) { mApp->makeNewWindow(Qz::BW_MacFirstWindow); } } void MacMenuReceiver::openLocation() { callSlot("openLocation", true); } void MacMenuReceiver::openFile() { callSlot("openFile", true); } void MacMenuReceiver::savePage() { callSlot("savePage"); } void MacMenuReceiver::sendLink() { callSlot("sendLink"); } void MacMenuReceiver::webSearch() { callSlot("webSearch"); } void MacMenuReceiver::editUndo() { callSlot("editUndo"); } void MacMenuReceiver::editRedo() { callSlot("editRedo"); } void MacMenuReceiver::editCut() { callSlot("editCut"); } void MacMenuReceiver::editCopy() { callSlot("editCopy"); } void MacMenuReceiver::editPaste() { callSlot("editPaste"); } void MacMenuReceiver::editSelectAll() { callSlot("editSelectAll"); } void MacMenuReceiver::zoomIn() { callSlot("zoomIn"); } void MacMenuReceiver::zoomOut() { callSlot("zoomOut"); } void MacMenuReceiver::zoomReset() { callSlot("zoomReset"); } void MacMenuReceiver::toggleFullScreen(bool make) { callSlot("toggleFullScreen", false, Q_ARG(bool, make)); } void MacMenuReceiver::changeEncoding(QObject* obj) { if (!obj) { obj = sender(); } callSlot("changeEncoding", false, Q_ARG(QObject*, obj)); } void MacMenuReceiver::triggerCaretBrowsing() { callSlot("triggerCaretBrowsing"); } void MacMenuReceiver::triggerTabsOnTop(bool enable) { callSlot("triggerTabsOnTop", false, Q_ARG(bool, enable)); } void MacMenuReceiver::closeWindow() { callSlot("closeWindow"); } void MacMenuReceiver::quitApp() { if (!callSlot("quitApp")) { mApp->quitApplication(); } } void MacMenuReceiver::printPage(QWebFrame* frame) { callSlot("printPage", false, Q_ARG(QWebFrame*, frame)); } void MacMenuReceiver::showBookmarksToolbar() { callSlot("showBookmarksToolbar"); } void MacMenuReceiver::showSource(QWebFrame* frame, const QString &selectedHtml) { callSlot("showSource", false, Q_ARG(QWebFrame*, frame), Q_ARG(const QString &, selectedHtml)); } void MacMenuReceiver::bookmarkPage() { callSlot("bookmarkPage"); } void MacMenuReceiver::loadFolderBookmarks(Menu* menu) { callSlot("loadFolderBookmarks", false, Q_ARG(Menu*, menu)); } void MacMenuReceiver::closeTab() { callSlot("closeTab"); } void MacMenuReceiver::restoreClosedTab(QObject* obj) { if (!obj) { obj = sender(); } callSlot("restoreClosedTab", false, Q_ARG(QObject*, obj)); } void MacMenuReceiver::restoreAllClosedTabs() { callSlot("restoreAllClosedTabs"); } void MacMenuReceiver::clearClosedTabsList() { callSlot("clearClosedTabsList"); } void MacMenuReceiver::showPageInfo() { callSlot("showPageInfo"); } void MacMenuReceiver::showWebInspector(bool toggle) { callSlot("showWebInspector", false, Q_ARG(bool, toggle)); } void MacMenuReceiver::loadActionUrl(QObject* obj) { if (!obj) { obj = sender(); } callSlot("loadActionUrl", true, Q_ARG(QObject*, obj)); } void MacMenuReceiver::loadActionUrlInNewTab(QObject* obj) { if (!obj) { obj = sender(); } if (!callSlot("loadActionUrlInNewTab", false, Q_ARG(QObject*, obj))) { callSlot("loadActionUrl", true, Q_ARG(QObject*, obj)); } } void MacMenuReceiver::loadActionUrlInNewNotSelectedTab(QObject* obj) { if (!obj) { obj = sender(); } if (!callSlot("loadActionUrlInNewNotSelectedTab", false, Q_ARG(QObject*, obj))) { callSlot("loadActionUrl", true, Q_ARG(QObject*, obj)); } } // about to show/hide slots void MacMenuReceiver::aboutToShowFileMenu(QMenu* menu) { menu = menu ? menu : qobject_cast(sender()); setEnabledSelectedMenuActions(menu); if (!callSlot("aboutToShowFileMenu")) { setDisabledSelectedMenuActions(menu, QList() << 4 << 5 << 7 << 8 << 9 << 10 << 12); } } void MacMenuReceiver::aboutToHideFileMenu() { callSlot("aboutToHideFileMenu"); } void MacMenuReceiver::aboutToShowHistoryMenu(QMenu* menu) { menu = menu ? menu : qobject_cast(sender()); // 2=Home, 3=Show all History, 7=Closed Tabs setEnabledSelectedMenuActions(menu, QList() << 2 << 3 << 7); if (!callSlot("aboutToShowHistoryMenu")) { setDisabledSelectedMenuActions(menu, QList() << 0 << 1 << 2 << 3 << 7); } } void MacMenuReceiver::aboutToHideHistoryMenu() { callSlot("aboutToHideHistoryMenu"); } void MacMenuReceiver::aboutToShowClosedTabsMenu() { callSlot("aboutToShowClosedTabsMenu"); } void MacMenuReceiver::aboutToShowBookmarksMenu(QMenu* menu) { menu = menu ? menu : qobject_cast(sender()); setEnabledSelectedMenuActions(menu, QList() << 0 << 1 << 2); if (!callSlot("aboutToShowBookmarksMenu")) { setDisabledSelectedMenuActions(menu, QList() << 0 << 1 << 2); } } void MacMenuReceiver::aboutToShowViewMenu(QMenu* menu) { menu = menu ? menu : qobject_cast(sender()); // 7,8,9=Zoom actions, 12=Character Encoding, 15=Fullscreen setEnabledSelectedMenuActions(menu, QList() << 0 << 1 << 2 << 7 << 8 << 9 << 11 << 12 << 15); // for updating reload and stop actions if (mApp->getWindow()) { mApp->getWindow()->updateLoadingActions(); } if (!callSlot("aboutToShowViewMenu")) { setDisabledSelectedMenuActions(menu); } } void MacMenuReceiver::aboutToHideViewMenu() { callSlot("aboutToHideViewMenu"); } void MacMenuReceiver::aboutToShowEditMenu(QMenu* menu) { menu = menu ? menu : qobject_cast(sender()); // 8=Find setEnabledSelectedMenuActions(menu, QList() << 8); if (!callSlot("aboutToShowEditMenu")) { setDisabledSelectedMenuActions(menu); } } void MacMenuReceiver::aboutToHideEditMenu() { callSlot("aboutToHideEditMenu"); } void MacMenuReceiver::aboutToShowToolsMenu(QMenu* menu) { menu = menu ? menu : qobject_cast(sender()); // enable all setEnabledSelectedMenuActions(menu); if (!callSlot("aboutToShowToolsMenu")) { setDisabledSelectedMenuActions(menu, QList() << 0 << 1 << 3 << 4 << 6 << 7 << 8); } } void MacMenuReceiver::aboutToHideToolsMenu() { callSlot("aboutToHideToolsMenu"); } void MacMenuReceiver::aboutToShowEncodingMenu() { callSlot("aboutToShowEncodingMenu"); } void MacMenuReceiver::aboutToShowHistoryRecentMenu() { callSlot("aboutToShowHistoryRecentMenu"); } void MacMenuReceiver::aboutToShowHistoryMostMenu() { callSlot("aboutToShowHistoryMostMenu"); } qupzilla-1.6.0/src/lib/other/macmenureceiver.h000066400000000000000000000107671226107126500213750ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * Copyright (C) 2013 S. Razi Alavizadeh * * 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 3 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, see . * ============================================================ */ #ifndef MACMENURECEIVER_H #define MACMENURECEIVER_H #include #include "qz_namespace.h" class QWebFrame; class Menu; class QMenu; class QAction; class QMenuBar; class QT_QUPZILLA_EXPORT MacMenuReceiver : public QObject { Q_OBJECT public: MacMenuReceiver(QObject* parent = 0); inline QMenuBar* menuBar() { return m_macMenuBar; } inline void setMenuBar(QMenuBar* menuBar) { m_macMenuBar = menuBar; } inline bool bookmarksMenuChanged() { return m_bookmarksMenuChanged; } inline void setBookmarksMenuChanged(bool changed) { m_bookmarksMenuChanged = changed; } inline QAction* menuBookmarksAction() { return m_menuBookmarksAction; } inline void setMenuBookmarksAction(QAction* action) { m_menuBookmarksAction = action; } public slots: void aboutToShowFileMenu(QMenu* menu = 0); void aboutToShowEditMenu(QMenu* menu = 0); void aboutToShowViewMenu(QMenu* menu = 0); void aboutToShowHistoryMenu(QMenu* menu = 0); void aboutToShowBookmarksMenu(QMenu* menu = 0); void aboutToShowToolsMenu(QMenu* menu = 0); private: void setEnabledSelectedMenuActions(QMenu* menu, const QList indexList = QList()); void setDisabledSelectedMenuActions(QMenu* menu, const QList indexList = QList()); bool callSlot(const char* member, bool makeIfNoWindow = false, QGenericArgument val0 = QGenericArgument(0), QGenericArgument val1 = QGenericArgument()); QMenuBar* m_macMenuBar; bool m_bookmarksMenuChanged; QAction* m_menuBookmarksAction; private slots: void goNext(); void goBack(); void goHome(); void stop(); void reload(); void reloadByPassCache(); void aboutQupZilla(); void addTab(); void savePageScreen(); void aboutToHideFileMenu(); void aboutToHideHistoryMenu(); void aboutToShowClosedTabsMenu(); void aboutToHideViewMenu(); void aboutToHideEditMenu(); void aboutToHideToolsMenu(); void aboutToShowEncodingMenu(); void searchOnPage(); void showCookieManager(); void showHistoryManager(); void showBookmarksManager(); void showRSSManager(); void showDownloadManager(); void showMenubar(); void showNavigationToolbar(); void showStatusbar(); void showClearPrivateData(); void aboutToShowHistoryRecentMenu(); void aboutToShowHistoryMostMenu(); void showPreferences(); void showBookmarkImport(); void refreshHistory(); void bookmarkAllTabs(); void newWindow(); void openLocation(); void openFile(); void savePage(); void sendLink(); void webSearch(); // Edit menu actions void editUndo(); void editRedo(); void editCut(); void editCopy(); void editPaste(); void editSelectAll(); void zoomIn(); void zoomOut(); void zoomReset(); void toggleFullScreen(bool make); void changeEncoding(QObject* obj = 0); void triggerCaretBrowsing(); void triggerTabsOnTop(bool enable); void closeWindow(); void quitApp(); void printPage(QWebFrame* frame = 0); void showBookmarksToolbar(); void showSource(QWebFrame* frame = 0, const QString &selectedHtml = QString()); void bookmarkPage(); void showPageInfo(); void showWebInspector(bool toggle = true); void loadActionUrl(QObject* obj = 0); void loadActionUrlInNewTab(QObject* obj = 0); void loadActionUrlInNewNotSelectedTab(QObject* obj = 0); void loadFolderBookmarks(Menu* menu); void closeTab(); void restoreClosedTab(QObject* obj = 0); void restoreAllClosedTabs(); void clearClosedTabsList(); }; #endif // MACMENURECEIVER_H qupzilla-1.6.0/src/lib/other/pagescreen.cpp000066400000000000000000000217571226107126500206730ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "pagescreen.h" #include "ui_pagescreen.h" #include "tabbedwebview.h" #include "webpage.h" #include "qztools.h" #include "qupzilla.h" #include "settings.h" #include #include #include #include #include #include #include #include #include #if QT_VERSION >= 0x050000 #include #else #include #endif PageScreen::PageScreen(WebView* view, QWidget* parent) : QDialog(parent) , ui(new Ui::PageScreen) , m_view(view) , m_imageScaling(0) { setAttribute(Qt::WA_DeleteOnClose); ui->setupUi(this); m_formats[0] = QLatin1String("PNG"); m_formats[1] = QLatin1String("BMP"); m_formats[2] = QLatin1String("JPG"); m_formats[3] = QLatin1String("PPM"); m_formats[4] = QLatin1String("TIFF"); m_formats[5] = QLatin1String("PDF"); QHashIterator i(m_formats); while (i.hasNext()) { i.next(); ui->formats->addItem(tr("Save as %1").arg(i.value())); } // Set png as a default format m_pageTitle = m_view->title(); Settings settings; const QString name = QzTools::filterCharsFromFilename(m_pageTitle).replace(QLatin1Char(' '), QLatin1Char('_')); const QString path = settings.value("FileDialogPaths/PageScreen-Location", QDir::homePath()).toString(); ui->location->setText(QString("%1/%2.png").arg(path, name)); QMovie* mov = new QMovie(":html/loading.gif"); ui->label->setMovie(mov); mov->start(); connect(ui->changeLocation, SIGNAL(clicked()), this, SLOT(changeLocation())); connect(ui->formats, SIGNAL(currentIndexChanged(int)), this, SLOT(formatChanged())); connect(ui->buttonBox->button(QDialogButtonBox::Save), SIGNAL(clicked()), this, SLOT(dialogAccepted())); connect(ui->buttonBox->button(QDialogButtonBox::Cancel), SIGNAL(clicked()), this, SLOT(close())); QTimer::singleShot(200, this, SLOT(createThumbnail())); } void PageScreen::formatChanged() { QString text = ui->location->text(); int pos = text.lastIndexOf(QLatin1Char('.')); if (pos > -1) { text = text.left(pos + 1) + m_formats[ui->formats->currentIndex()].toLower(); } else { text.append(QLatin1Char('.') + m_formats[ui->formats->currentIndex()].toLower()); } ui->location->setText(text); } void PageScreen::changeLocation() { const QString name = QzTools::filterCharsFromFilename(m_pageTitle).replace(QLatin1Char(' '), QLatin1Char('_')); const QString suggestedPath = QString("%1/%2.%3").arg(QDir::homePath(), name, m_formats[ui->formats->currentIndex()].toLower()); const QString path = QzTools::getOpenFileName("PageScreen-Location", this, tr("Choose location..."), suggestedPath); if (!path.isEmpty()) { ui->location->setText(path); } } void PageScreen::dialogAccepted() { if (!ui->location->text().isEmpty()) { if (QFile::exists(ui->location->text())) { const QString text = tr("File '%1' already exists. Do you want to overwrite it?").arg(ui->location->text()); QMessageBox::StandardButton button = QMessageBox::warning(this, tr("File already exists"), text, QMessageBox::Yes | QMessageBox::No, QMessageBox::No); if (button != QMessageBox::Yes) { return; } } QApplication::setOverrideCursor(Qt::WaitCursor); const QString format = m_formats[ui->formats->currentIndex()]; if (format == QLatin1String("PDF")) { saveAsDocument(format); } else { saveAsImage(format); } QApplication::restoreOverrideCursor(); close(); } } void PageScreen::saveAsImage(const QString &format) { const QString suffix = QLatin1Char('.') + format.toLower(); QString pathWithoutSuffix = ui->location->text(); if (pathWithoutSuffix.endsWith(suffix, Qt::CaseInsensitive)) { pathWithoutSuffix = pathWithoutSuffix.mid(0, pathWithoutSuffix.length() - suffix.length()); } if (m_pageImages.count() == 1) { m_pageImages.first().save(pathWithoutSuffix + suffix, format.toUtf8()); } else { int part = 1; foreach (const QImage &image, m_pageImages) { const QString fileName = pathWithoutSuffix + ".part" + QString::number(part); image.save(fileName + suffix, format.toUtf8()); part++; } } } void PageScreen::saveAsDocument(const QString &format) { const QString suffix = QLatin1Char('.') + format.toLower(); QString pathWithoutSuffix = ui->location->text(); if (pathWithoutSuffix.endsWith(suffix, Qt::CaseInsensitive)) { pathWithoutSuffix = pathWithoutSuffix.mid(0, pathWithoutSuffix.length() - suffix.length()); } QPrinter printer; printer.setCreator(QupZilla::tr("QupZilla %1 (%2)").arg(QupZilla::VERSION, QupZilla::WWWADDRESS)); printer.setOutputFileName(pathWithoutSuffix + suffix); printer.setOutputFormat(QPrinter::PdfFormat); printer.setPaperSize(m_pageImages.first().size(), QPrinter::DevicePixel); printer.setPageMargins(0, 0, 0, 0, QPrinter::DevicePixel); printer.setFullPage(true); QPainter painter; painter.begin(&printer); for (int i = 0; i < m_pageImages.size(); ++i) { const QImage image = m_pageImages.at(i); painter.drawImage(0, 0, image); if (i != m_pageImages.size() - 1) { printer.newPage(); } } painter.end(); } void PageScreen::createThumbnail() { QWebPage* page = m_view->page(); const int heightLimit = 20000; const QPoint originalScrollPosition = page->mainFrame()->scrollPosition(); const QSize originalSize = page->viewportSize(); const QSize frameSize = page->mainFrame()->contentsSize(); const int verticalScrollbarSize = page->mainFrame()->scrollBarGeometry(Qt::Vertical).width(); const int horizontalScrollbarSize = page->mainFrame()->scrollBarGeometry(Qt::Horizontal).height(); int yPosition = 0; bool canScroll = frameSize.height() > heightLimit; // We will split rendering page into smaller parts to avoid infinite loops // or crashes. do { int remainingHeight = frameSize.height() - yPosition; if (remainingHeight <= 0) { break; } QSize size(frameSize.width(), remainingHeight > heightLimit ? heightLimit : remainingHeight); page->setViewportSize(size); page->mainFrame()->scroll(0, qMax(0, yPosition - horizontalScrollbarSize)); QImage image(page->viewportSize().width() - verticalScrollbarSize, page->viewportSize().height() - horizontalScrollbarSize, QImage::Format_ARGB32_Premultiplied); QPainter painter(&image); page->mainFrame()->render(&painter); painter.end(); m_pageImages.append(image); canScroll = remainingHeight > heightLimit; yPosition += size.height(); } while (canScroll); page->setViewportSize(originalSize); page->mainFrame()->setScrollBarValue(Qt::Vertical, originalScrollPosition.y()); page->mainFrame()->setScrollBarValue(Qt::Horizontal, originalScrollPosition.x()); m_imageScaling = new QFutureWatcher(this); m_imageScaling->setFuture(QtConcurrent::run(this, &PageScreen::scaleImage)); connect(m_imageScaling, SIGNAL(finished()), SLOT(showImage())); } QImage PageScreen::scaleImage() { QVector scaledImages; int sumHeight = 0; foreach (const QImage &image, m_pageImages) { QImage scaled = image.scaledToWidth(450, Qt::SmoothTransformation); scaledImages.append(scaled); sumHeight += scaled.height(); } QImage finalImage(QSize(450, sumHeight), QImage::Format_ARGB32_Premultiplied); QPainter painter(&finalImage); int offset = 0; foreach (const QImage &image, scaledImages) { painter.drawImage(0, offset, image); offset += image.height(); } return finalImage; } void PageScreen::showImage() { delete ui->label->movie(); ui->label->setPixmap(QPixmap::fromImage(m_imageScaling->result())); } PageScreen::~PageScreen() { delete ui; } qupzilla-1.6.0/src/lib/other/pagescreen.h000066400000000000000000000032351226107126500203270ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef PAGESCREEN_H #define PAGESCREEN_H #include #include #include "qz_namespace.h" namespace Ui { class PageScreen; } class WebView; class QT_QUPZILLA_EXPORT PageScreen : public QDialog { Q_OBJECT public: explicit PageScreen(WebView* view, QWidget* parent); ~PageScreen(); QImage scaleImage(); private slots: void createThumbnail(); void showImage(); void formatChanged(); void changeLocation(); void dialogAccepted(); private: void saveAsImage(const QString &format); void saveAsDocument(const QString &format); void createPixmap(); Ui::PageScreen* ui; WebView* m_view; QString m_pageTitle; QFutureWatcher* m_imageScaling; QVector m_pageImages; QHash m_formats; }; #endif // PAGESCREEN_H qupzilla-1.6.0/src/lib/other/pagescreen.ui000066400000000000000000000076161226107126500205240ustar00rootroot00000000000000 PageScreen 0 0 539 368 Page Screen QFrame::NoFrame true 0 0 531 264 0 0 Qt::AlignCenter QFormLayout::ExpandingFieldsGrow Format: Location: 250 0 Browse... Qt::Horizontal 40 20 Qt::Horizontal 40 20 Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Save true qupzilla-1.6.0/src/lib/other/qzsettings.cpp000066400000000000000000000062611226107126500207630ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "qzsettings.h" #include "settings.h" QzSettings::QzSettings() { loadSettings(); } void QzSettings::loadSettings() { Settings settings; settings.beginGroup("AddressBar"); selectAllOnDoubleClick = settings.value("SelectAllTextOnDoubleClick", true).toBool(); selectAllOnClick = settings.value("SelectAllTextOnClick", false).toBool(); addCountryWithAlt = settings.value("AddCountryDomainWithAltKey", true).toBool(); showLoadingProgress = settings.value("ShowLoadingProgress", false).toBool(); showLocationSuggestions = settings.value("showSuggestions", 0).toInt(); showSwitchTab = settings.value("showSwitchTab", true).toBool(); alwaysShowGoIcon = settings.value("alwaysShowGoIcon", false).toBool(); settings.endGroup(); settings.beginGroup("SearchEngines"); showSearchSuggestions = settings.value("showSuggestions", true).toBool(); searchOnEngineChange = settings.value("SearchOnEngineChange", true).toBool(); searchWithDefaultEngine = settings.value("SearchWithDefaultEngine", false).toBool(); settings.endGroup(); settings.beginGroup("Web-Browser-Settings"); defaultZoom = settings.value("DefaultZoom", 100).toInt(); loadTabsOnActivation = settings.value("LoadTabsOnActivation", false).toBool(); autoOpenProtocols = settings.value("AutomaticallyOpenProtocols", QStringList()).toStringList(); blockedProtocols = settings.value("BlockOpeningProtocols", QStringList()).toStringList(); allowJsGeometryChange = settings.value("allowJavaScriptGeometryChange", true).toBool(); allowJsHideMenuBar = settings.value("allowJavaScriptHideMenuBar", true).toBool(); allowJsHideStatusBar = settings.value("allowJavaScriptHideStatusBar", true).toBool(); allowJsHideToolBar = settings.value("allowJavaScriptHideToolBar", true).toBool(); settings.endGroup(); settings.beginGroup("Browser-Tabs-Settings"); newTabPosition = settings.value("OpenNewTabsSelected", false).toBool() ? Qz::NT_SelectedTab : Qz::NT_NotSelectedTab; tabsOnTop = settings.value("TabsOnTop", false).toBool(); settings.endGroup(); } void QzSettings::saveSettings() { Settings settings; settings.beginGroup("Web-Browser-Settings"); settings.setValue("AutomaticallyOpenProtocols", autoOpenProtocols); settings.setValue("BlockOpeningProtocols", blockedProtocols); settings.endGroup(); } qupzilla-1.6.0/src/lib/other/qzsettings.h000066400000000000000000000035141226107126500204260ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef QZSETTINGS_H #define QZSETTINGS_H #include "qz_namespace.h" #include "settings.h" #include class QT_QUPZILLA_EXPORT QzSettings { public: QzSettings(); void loadSettings(); void saveSettings(); // AddressBar bool selectAllOnDoubleClick; bool selectAllOnClick; bool addCountryWithAlt; bool showLoadingProgress; int showLocationSuggestions; bool showSwitchTab; bool alwaysShowGoIcon; // SearchEngines bool showSearchSuggestions; bool searchOnEngineChange; bool searchWithDefaultEngine; // Web-Browser-Settings int defaultZoom; bool loadTabsOnActivation; bool allowJsGeometryChange; bool allowJsHideMenuBar; bool allowJsHideStatusBar; bool allowJsHideToolBar; QStringList autoOpenProtocols; QStringList blockedProtocols; // Browser-Tabs-Settings Qz::NewTabPositionFlag newTabPosition; bool tabsOnTop; }; #define qzSettings Settings::staticSettings() #endif // QZSETTINGS_H qupzilla-1.6.0/src/lib/other/registerqappassociation.cpp000066400000000000000000000311251226107126500235100ustar00rootroot00000000000000/* ============================================================ * Copyright (C) 2012-2013 S. Razi Alavizadeh * This file is part of QupZilla - WebKit based browser 2010-2013 * by David Rosca * * 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 3 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, see . * ============================================================ */ #include "registerqappassociation.h" #include "ShlObj.h" #include #include #include #include RegisterQAppAssociation::RegisterQAppAssociation(QObject* parent) : QObject(parent) { setPerMachineRegisteration(false); } RegisterQAppAssociation::RegisterQAppAssociation(const QString &appRegisteredName, const QString &appPath, const QString &appIcon, const QString &appDesc, QObject* parent) : QObject(parent) { setPerMachineRegisteration(false); setAppInfo(appRegisteredName, appPath, appIcon, appDesc); } RegisterQAppAssociation::~RegisterQAppAssociation() { } void RegisterQAppAssociation::addCapability(const QString &assocName, const QString &progId, const QString &desc, const QString &iconPath, AssociationType type) { _assocDescHash.insert(progId, QPair(desc, QDir::toNativeSeparators(iconPath))); switch (type) { case FileAssociation: _fileAssocHash.insert(assocName, progId); break; case UrlAssociation: _urlAssocHash.insert(assocName, progId); break; default: break; } } void RegisterQAppAssociation::removeCapability(const QString &assocName) { _fileAssocHash.remove(assocName); _urlAssocHash.remove(assocName); } void RegisterQAppAssociation::setAppInfo(const QString &appRegisteredName, const QString &appPath, const QString &appIcon, const QString &appDesc) { _appRegisteredName = appRegisteredName; _appPath = QDir::toNativeSeparators(appPath); _appIcon = QDir::toNativeSeparators(appIcon); _appDesc = appDesc; } bool RegisterQAppAssociation::isPerMachineRegisteration() { return (_UserRootKey == "HKEY_LOCAL_MACHINE"); } void RegisterQAppAssociation::setPerMachineRegisteration(bool enable) { if (enable) { _UserRootKey = "HKEY_LOCAL_MACHINE"; } else { _UserRootKey = "HKEY_CURRENT_USER"; } } bool RegisterQAppAssociation::registerAppCapabilities() { if (!isVistaOrNewer()) { return true; } // Vista and newer QSettings regLocalMachine("HKEY_LOCAL_MACHINE", QSettings::NativeFormat); QString capabilitiesKey = regLocalMachine.value("Software/RegisteredApplications/" + _appRegisteredName).toString(); if (capabilitiesKey.isEmpty()) { regLocalMachine.setValue("Software/RegisteredApplications/" + _appRegisteredName, QString("Software\\" + _appRegisteredName + "\\Capabilities")); capabilitiesKey = regLocalMachine.value("Software/RegisteredApplications/" + _appRegisteredName).toString(); if (capabilitiesKey.isEmpty()) { QMessageBox::warning(0, tr("Warning!"), tr("There are some problems. Please, reinstall QupZilla.\n" "Maybe relaunch with administrator right do a magic for you! ;)")); return false; } } capabilitiesKey.replace("\\", "/"); QHash >::const_iterator it = _assocDescHash.constBegin(); while (it != _assocDescHash.constEnd()) { createProgId(it.key()); ++it; } regLocalMachine.setValue(capabilitiesKey + "/ApplicationDescription", _appDesc); regLocalMachine.setValue(capabilitiesKey + "/ApplicationIcon", _appIcon); regLocalMachine.setValue(capabilitiesKey + "/ApplicationName", _appRegisteredName); QHash::const_iterator i = _fileAssocHash.constBegin(); while (i != _fileAssocHash.constEnd()) { regLocalMachine.setValue(capabilitiesKey + "/FileAssociations/" + i.key(), i.value()); ++i; } i = _urlAssocHash.constBegin(); while (i != _urlAssocHash.constEnd()) { regLocalMachine.setValue(capabilitiesKey + "/URLAssociations/" + i.key(), i.value()); ++i; } regLocalMachine.setValue(capabilitiesKey + "/Startmenu/StartMenuInternet", _appPath); return true; } bool RegisterQAppAssociation::isVistaOrNewer() { return (QSysInfo::windowsVersion() >= QSysInfo::WV_VISTA && QSysInfo::windowsVersion() <= QSysInfo::WV_NT_based); } void RegisterQAppAssociation::registerAssociation(const QString &assocName, AssociationType type) { if (isVistaOrNewer()) { // Vista and newer IApplicationAssociationRegistration* pAAR; HRESULT hr = CoCreateInstance(CLSID_ApplicationAssociationRegistration, NULL, CLSCTX_INPROC, __uuidof(IApplicationAssociationRegistration), (void**)&pAAR); if (SUCCEEDED(hr)) { switch (type) { case FileAssociation: hr = pAAR->SetAppAsDefault(_appRegisteredName.toStdWString().c_str(), assocName.toStdWString().c_str(), AT_FILEEXTENSION); break; case UrlAssociation: { QSettings regCurrentUserRoot("HKEY_CURRENT_USER", QSettings::NativeFormat); QString currentUrlDefault = regCurrentUserRoot.value("Software/Microsoft/Windows/Shell/Associations/UrlAssociations/" + assocName + "/UserChoice/Progid").toString(); hr = pAAR->SetAppAsDefault(_appRegisteredName.toStdWString().c_str(), assocName.toStdWString().c_str(), AT_URLPROTOCOL); if (SUCCEEDED(hr) && !currentUrlDefault.isEmpty() && currentUrlDefault != _urlAssocHash.value(assocName)) { regCurrentUserRoot.setValue("Software/Classes" + assocName + "/shell/open/command/backup_progid", currentUrlDefault); } } break; default: break; } pAAR->Release(); } } else { // Older than Vista QSettings regUserRoot(_UserRootKey, QSettings::NativeFormat); regUserRoot.beginGroup("Software/Classes"); QSettings regClassesRoot("HKEY_CLASSES_ROOT", QSettings::NativeFormat); switch (type) { case FileAssociation: { QString progId = _fileAssocHash.value(assocName); createProgId(progId); QString currentDefault = regClassesRoot.value(assocName + "/Default").toString(); if (!currentDefault.isEmpty() && currentDefault != progId && regUserRoot.value(assocName + "/backup_val").toString() != progId) { regUserRoot.setValue(assocName + "/backup_val", currentDefault); } regUserRoot.setValue(assocName + "/.", progId); } break; case UrlAssociation: { QString progId = _urlAssocHash.value(assocName); createProgId(progId); QString currentDefault = regClassesRoot.value(assocName + "/shell/open/command/Default").toString(); QString command = "\"" + _appPath + "\" \"%1\""; if (!currentDefault.isEmpty() && currentDefault != command && regUserRoot.value(assocName + "/shell/open/command/backup_val").toString() != command) { regUserRoot.setValue(assocName + "/shell/open/command/backup_val", currentDefault); } regUserRoot.setValue(assocName + "/shell/open/command/.", command); regUserRoot.setValue(assocName + "/URL Protocol", ""); break; } default: break; } regUserRoot.endGroup(); } } void RegisterQAppAssociation::registerAllAssociation() { if (isVistaOrNewer() && !registerAppCapabilities()) { return; } QHash::const_iterator i = _fileAssocHash.constBegin(); while (i != _fileAssocHash.constEnd()) { registerAssociation(i.key(), FileAssociation); ++i; } i = _urlAssocHash.constBegin(); while (i != _urlAssocHash.constEnd()) { registerAssociation(i.key(), UrlAssociation); ++i; } if (!isVistaOrNewer()) { // On Windows Vista or newer for updating icons 'pAAR->SetAppAsDefault()' // calls 'SHChangeNotify()'. Thus, we just need care about older Windows. SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_FLUSHNOWAIT, 0 , 0); } } void RegisterQAppAssociation::createProgId(const QString &progId) { QSettings regUserRoot(_UserRootKey, QSettings::NativeFormat); regUserRoot.beginGroup("Software/Classes"); QPair pair = _assocDescHash.value(progId); regUserRoot.setValue(progId + "/.", pair.first); regUserRoot.setValue(progId + "/shell/.", "open"); regUserRoot.setValue(progId + "/DefaultIcon/.", pair.second); regUserRoot.setValue(progId + "/shell/open/command/.", QString("\"" + _appPath + "\" \"%1\"")); regUserRoot.endGroup(); } bool RegisterQAppAssociation::isDefaultApp(const QString &assocName, AssociationType type) { if (isVistaOrNewer()) { QSettings regCurrentUserRoot("HKEY_CURRENT_USER", QSettings::NativeFormat); switch (type) { case FileAssociation: { regCurrentUserRoot.beginGroup("Software/Microsoft/Windows/CurrentVersion/Explorer/FileExts"); if (regCurrentUserRoot.childGroups().contains(assocName, Qt::CaseInsensitive)) { return (_fileAssocHash.value(assocName) == regCurrentUserRoot.value(assocName + "/UserChoice/Progid")); } else { regCurrentUserRoot.endGroup(); return false; } break; } case UrlAssociation: { regCurrentUserRoot.beginGroup("Software/Microsoft/Windows/Shell/Associations/UrlAssociations"); if (regCurrentUserRoot.childGroups().contains(assocName, Qt::CaseInsensitive)) { return (_urlAssocHash.value(assocName) == regCurrentUserRoot.value(assocName + "/UserChoice/Progid")); } else { regCurrentUserRoot.endGroup(); return false; } } break; default: break; } } else { QSettings regClassesRoot("HKEY_CLASSES_ROOT", QSettings::NativeFormat); { if (!regClassesRoot.childGroups().contains(assocName, Qt::CaseInsensitive)) { return false; } } switch (type) { case FileAssociation: { return (_fileAssocHash.value(assocName) == regClassesRoot.value(assocName + "/Default")); } break; case UrlAssociation: { QString currentDefault = regClassesRoot.value(assocName + "/shell/open/command/Default").toString(); currentDefault.remove("\""); currentDefault.remove("%1"); currentDefault = currentDefault.trimmed(); return (_appPath == currentDefault); } break; default: break; } } return false; } bool RegisterQAppAssociation::isDefaultForAllCapabilities() { bool result = true; QHash::const_iterator i = _fileAssocHash.constBegin(); while (i != _fileAssocHash.constEnd()) { bool res = isDefaultApp(i.key(), FileAssociation); result &= res; ++i; } i = _urlAssocHash.constBegin(); while (i != _urlAssocHash.constEnd()) { bool res = isDefaultApp(i.key(), UrlAssociation); result &= res; ++i; } return result; } qupzilla-1.6.0/src/lib/other/registerqappassociation.h000066400000000000000000000053101226107126500231520ustar00rootroot00000000000000/* ============================================================ * Copyright (C) 2012-2013 S. Razi Alavizadeh * This file is part of QupZilla - WebKit based browser 2010-2012 * by David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef REGISTERQAPPASSOCIATION_H #define REGISTERQAPPASSOCIATION_H #include #include #include #include "qz_namespace.h" class QT_QUPZILLA_EXPORT RegisterQAppAssociation : public QObject { Q_OBJECT public: explicit RegisterQAppAssociation(QObject* parent = 0); explicit RegisterQAppAssociation(const QString &appRegisteredName, const QString &appPath, const QString &appIcon = "", const QString &appDesc = "", QObject* parent = 0); ~RegisterQAppAssociation(); enum AssociationType { FileAssociation, UrlAssociation }; void addCapability(const QString &assocName, const QString &progId, const QString &desc, const QString &iconPath, AssociationType type); void removeCapability(const QString &assocName); void setAppInfo(const QString &appRegisteredName, const QString &appPath, const QString &appIcon = "", const QString &appDesc = ""); bool isPerMachineRegisteration(); void setPerMachineRegisteration(bool enable); bool registerAppCapabilities(); bool isVistaOrNewer(); void registerAssociation(const QString &assocName, AssociationType type); void createProgId(const QString &progId); bool isDefaultApp(const QString &assocName, AssociationType type); bool isDefaultForAllCapabilities(); void registerAllAssociation(); private: QString _appRegisteredName; QString _appPath; QString _appIcon; QString _appDesc; QString _UserRootKey; QHash _fileAssocHash; // (extention, progId) QHash _urlAssocHash; // (protocol, progId) QHash > _assocDescHash; // (progId, (desc, icon)) }; #endif // REGISTERQAPPASSOCIATION_H qupzilla-1.6.0/src/lib/other/sourceviewer.cpp000066400000000000000000000202571226107126500212730ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "sourceviewer.h" #include "tabbedwebview.h" #include "htmlhighlighter.h" #include "sourceviewersearch.h" #include "qztools.h" #include "iconprovider.h" #include "enhancedmenu.h" #include "plaineditwithlines.h" #include #include #include #include #include #include #include #include SourceViewer::SourceViewer(QWebFrame* frame, const QString &selectedHtml) : QWidget(0) , m_frame(frame) , m_selectedHtml(selectedHtml) { setAttribute(Qt::WA_DeleteOnClose); setWindowTitle(tr("Source of ") + frame->url().toString()); m_layout = new QBoxLayout(QBoxLayout::TopToBottom, this); m_sourceEdit = new PlainEditWithLines(this); m_sourceEdit->setObjectName("sourceviewer-textedit"); m_sourceEdit->setReadOnly(true); m_sourceEdit->setUndoRedoEnabled(false); m_statusBar = new QStatusBar(this); m_statusBar->showMessage(frame->url().toString()); QMenuBar* menuBar = new QMenuBar(this); m_layout->addWidget(m_sourceEdit); m_layout->addWidget(m_statusBar); m_layout->setContentsMargins(0, 0, 0, 0); m_layout->setSpacing(0); m_layout->setMenuBar(menuBar); QFont font; font.setFamily("Tahoma"); font.setFixedPitch(true); font.setPointSize(10); m_sourceEdit->setFont(font); new HtmlHighlighter(m_sourceEdit->document()); resize(650, 600); QzTools::centerWidgetToParent(this, frame->page()->view()); QMenu* menuFile = new QMenu(tr("File")); menuFile->addAction(tr("Load in page"), this, SLOT(loadInPage())); menuFile->addAction(QIcon::fromTheme("document-save"), tr("Save as..."), this, SLOT(save()))->setShortcut(QKeySequence("Ctrl+S")); menuFile->addSeparator(); menuFile->addAction(QIcon::fromTheme("window-close"), tr("Close"), this, SLOT(close()))->setShortcut(QKeySequence("Ctrl+W")); menuBar->addMenu(menuFile); QMenu* menuEdit = new QMenu(tr("Edit")); m_actionUndo = menuEdit->addAction(QIcon::fromTheme("edit-undo"), tr("Undo"), m_sourceEdit, SLOT(undo())); m_actionRedo = menuEdit->addAction(QIcon::fromTheme("edit-redo"), tr("Redo"), m_sourceEdit, SLOT(redo())); menuEdit->addSeparator(); m_actionCut = menuEdit->addAction(QIcon::fromTheme("edit-cut"), tr("Cut"), m_sourceEdit, SLOT(cut())); m_actionCopy = menuEdit->addAction(QIcon::fromTheme("edit-copy"), tr("Copy"), m_sourceEdit, SLOT(copy())); m_actionPaste = menuEdit->addAction(QIcon::fromTheme("edit-paste"), tr("Paste"), m_sourceEdit, SLOT(paste())); menuEdit->addSeparator(); menuEdit->addAction(QIcon::fromTheme("edit-select-all"), tr("Select All"), m_sourceEdit, SLOT(selectAll()))->setShortcut(QKeySequence("Ctrl+A")); menuEdit->addAction(QIcon::fromTheme("edit-find"), tr("Find"), this, SLOT(findText()))->setShortcut(QKeySequence("Ctrl+F")); menuEdit->addSeparator(); menuEdit->addAction(QIcon::fromTheme("go-jump"), tr("Go to Line..."), this, SLOT(goToLine()))->setShortcut(QKeySequence("Ctrl+L")); menuBar->addMenu(menuEdit); m_actionUndo->setShortcut(QKeySequence("Ctrl+Z")); m_actionRedo->setShortcut(QKeySequence("Ctrl+Shift+Z")); m_actionCut->setShortcut(QKeySequence("Ctrl+X")); m_actionCopy->setShortcut(QKeySequence("Ctrl+C")); m_actionPaste->setShortcut(QKeySequence("Ctrl+V")); QMenu* menuView = new QMenu(tr("View")); menuView->addAction(qIconProvider->standardIcon(QStyle::SP_BrowserReload), tr("Reload"), this, SLOT(reload()))->setShortcut(QKeySequence("F5")); menuView->addSeparator(); menuView->addAction(tr("Editable"), this, SLOT(setTextEditable()))->setCheckable(true); menuView->addAction(tr("Word Wrap"), this, SLOT(setTextWordWrap()))->setCheckable(true); menuView->actions().at(3)->setChecked(true); menuBar->addMenu(menuView); connect(m_sourceEdit, SIGNAL(copyAvailable(bool)), this, SLOT(copyAvailable(bool))); connect(m_sourceEdit, SIGNAL(redoAvailable(bool)), this, SLOT(redoAvailable(bool))); connect(m_sourceEdit, SIGNAL(undoAvailable(bool)), this, SLOT(undoAvailable(bool))); connect(menuEdit, SIGNAL(aboutToShow()), this, SLOT(pasteAvailable())); QTimer::singleShot(0, this, SLOT(loadSource())); } void SourceViewer::copyAvailable(bool yes) { m_actionCopy->setEnabled(yes); m_actionCut->setEnabled(yes); } void SourceViewer::redoAvailable(bool available) { m_actionRedo->setEnabled(available); } void SourceViewer::undoAvailable(bool available) { m_actionUndo->setEnabled(available); } void SourceViewer::pasteAvailable() { m_actionPaste->setEnabled(m_sourceEdit->canPaste()); } void SourceViewer::loadInPage() { if (m_frame) { m_frame.data()->setHtml(m_sourceEdit->toPlainText(), m_frame.data()->baseUrl()); m_statusBar->showMessage(tr("Source loaded in page")); } else { m_statusBar->showMessage(tr("Cannot load in page. Page has been closed.")); } } void SourceViewer::loadSource() { m_actionUndo->setEnabled(false); m_actionRedo->setEnabled(false); m_actionCut->setEnabled(false); m_actionCopy->setEnabled(false); m_actionPaste->setEnabled(false); QString html = m_frame.data()->toHtml(); // Remove AdBlock element hiding rules html.remove(QzRegExp("")); m_sourceEdit->setPlainText(html); // Highlight selectedHtml if (!m_selectedHtml.isEmpty()) { m_sourceEdit->find(m_selectedHtml, QTextDocument::FindWholeWords); } m_sourceEdit->setShowingCursor(true); } void SourceViewer::save() { QString filePath = QzTools::getSaveFileName("SourceViewer-Save", this, tr("Save file..."), QDir::homePath() + "/source_code.html"); if (filePath.isEmpty()) { return; } QFile file(filePath); if (!file.open(QFile::WriteOnly)) { QMessageBox::critical(this, tr("Error!"), tr("Cannot write to file!")); m_statusBar->showMessage(tr("Error writing to file")); return; } file.write(m_sourceEdit->toPlainText().toUtf8()); file.close(); m_statusBar->showMessage(tr("Source successfully saved")); } void SourceViewer::findText() { if (m_layout->count() > 2) { SourceViewerSearch* search = qobject_cast(m_layout->itemAt(1)->widget()); search->activateLineEdit(); return; } SourceViewerSearch* s = new SourceViewerSearch(this); m_layout->insertWidget(1, s); s->activateLineEdit(); } void SourceViewer::reload() { if (m_frame) { m_sourceEdit->clear(); loadSource(); m_statusBar->showMessage(tr("Source reloaded")); } else { m_statusBar->showMessage(tr("Cannot reload source. Page has been closed.")); } } void SourceViewer::setTextEditable() { m_sourceEdit->setReadOnly(!m_sourceEdit->isReadOnly()); m_sourceEdit->setUndoRedoEnabled(true); m_statusBar->showMessage(tr("Editable changed")); } void SourceViewer::setTextWordWrap() { m_sourceEdit->setWordWrapMode((m_sourceEdit->wordWrapMode() == QTextOption::NoWrap) ? QTextOption::WordWrap : QTextOption::NoWrap); m_statusBar->showMessage(tr("Word Wrap changed")); } void SourceViewer::goToLine() { int line = QInputDialog::getInt(this, tr("Go to Line..."), tr("Enter line number"), 0, 1, 5000); if (line == 0) { return; } m_sourceEdit->goToLine(line); } qupzilla-1.6.0/src/lib/other/sourceviewer.h000066400000000000000000000036171226107126500207410ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SOURCEVIEWER_H #define SOURCEVIEWER_H #include #include #include "qz_namespace.h" class PlainEditWithLines; class QBoxLayout; class QStatusBar; class QWebFrame; class QT_QUPZILLA_EXPORT SourceViewer : public QWidget { Q_OBJECT public: explicit SourceViewer(QWebFrame* frame, const QString &selectedHtml); PlainEditWithLines* sourceEdit() { return m_sourceEdit; } private slots: void copyAvailable(bool yes); void redoAvailable(bool available); void undoAvailable(bool available); void pasteAvailable(); void loadInPage(); void loadSource(); void save(); void findText(); void reload(); void setTextEditable(); void setTextWordWrap(); void goToLine(); private: QBoxLayout* m_layout; PlainEditWithLines* m_sourceEdit; QPointer m_frame; QStatusBar* m_statusBar; QString m_selectedHtml; QAction* m_actionUndo; QAction* m_actionRedo; QAction* m_actionCut; QAction* m_actionCopy; QAction* m_actionPaste; }; #endif // SOURCEVIEWER_H qupzilla-1.6.0/src/lib/other/sourceviewersearch.cpp000066400000000000000000000106731226107126500224620ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "sourceviewersearch.h" #include "ui_sourceviewersearch.h" #include "sourceviewer.h" #include "iconprovider.h" #include "plaineditwithlines.h" #include #include SourceViewerSearch::SourceViewerSearch(SourceViewer* parent) : AnimatedWidget(AnimatedWidget::Up) , m_sourceViewer(parent) , ui(new Ui::SourceViewerSearch) , m_findFlags(0) { setAttribute(Qt::WA_DeleteOnClose); ui->setupUi(widget()); ui->closeButton->setIcon(qIconProvider->standardIcon(QStyle::SP_DialogCloseButton)); ui->next->setIcon(qIconProvider->standardIcon(QStyle::SP_ArrowForward)); ui->previous->setIcon(qIconProvider->standardIcon(QStyle::SP_ArrowBack)); ui->lineEdit->setFocus(); connect(ui->closeButton, SIGNAL(clicked()), this, SLOT(hide())); connect(ui->lineEdit, SIGNAL(textEdited(QString)), this, SLOT(next())); connect(ui->lineEdit, SIGNAL(returnPressed()), this, SLOT(next())); connect(ui->next, SIGNAL(clicked()), this, SLOT(next())); connect(ui->previous, SIGNAL(clicked()), this, SLOT(previous())); connect(ui->wholeWords, SIGNAL(toggled(bool)), SLOT(searchWholeWords())); connect(this, SIGNAL(performSearch()), SLOT(find())); QShortcut* findNextAction = new QShortcut(QKeySequence("F3"), this); connect(findNextAction, SIGNAL(activated()), this, SLOT(next())); QShortcut* findPreviousAction = new QShortcut(QKeySequence("Shift+F3"), this); connect(findPreviousAction, SIGNAL(activated()), this, SLOT(previous())); startAnimation(); parent->installEventFilter(this); } void SourceViewerSearch::activateLineEdit() { ui->lineEdit->setFocus(); } void SourceViewerSearch::next() { m_findFlags &= (~QTextDocument::FindBackward); emit performSearch(); } void SourceViewerSearch::previous() { m_findFlags |= QTextDocument::FindBackward; emit performSearch(); } void SourceViewerSearch::searchWholeWords() { if (ui->wholeWords->isChecked()) { m_findFlags |= QTextDocument::FindWholeWords; } else { m_findFlags &= (~QTextDocument::FindWholeWords); } } void SourceViewerSearch::find() { bool found = find(m_findFlags); if (!found) { m_sourceViewer->sourceEdit()->moveCursor(QTextCursor::Start); } ui->lineEdit->setProperty("notfound", QVariant(!found)); ui->lineEdit->style()->unpolish(ui->lineEdit); ui->lineEdit->style()->polish(ui->lineEdit); } bool SourceViewerSearch::find(QTextDocument::FindFlags flags) { QString string = ui->lineEdit->text(); if (string.isEmpty()) { return true; } if (string != m_lastSearchedString) { QTextCursor cursor = m_sourceViewer->sourceEdit()->textCursor(); cursor.setPosition(cursor.selectionStart()); cursor.clearSelection(); m_sourceViewer->sourceEdit()->setTextCursor(cursor); m_lastSearchedString = string; } if (!m_sourceViewer->sourceEdit()->find(string, flags)) { QTextCursor cursor = m_sourceViewer->sourceEdit()->textCursor(); m_sourceViewer->sourceEdit()->moveCursor((flags == QTextDocument::FindBackward) ? QTextCursor::End : QTextCursor::Start); if (!m_sourceViewer->sourceEdit()->find(string, flags)) { cursor.clearSelection(); m_sourceViewer->sourceEdit()->setTextCursor(cursor); return false; } } return true; } bool SourceViewerSearch::eventFilter(QObject* obj, QEvent* event) { if (event->type() == QEvent::KeyPress && static_cast(event)->key() == Qt::Key_Escape) { hide(); return false; } return AnimatedWidget::eventFilter(obj, event); } qupzilla-1.6.0/src/lib/other/sourceviewersearch.h000066400000000000000000000032121226107126500221160ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SOURCEVIEWERSEARCH_H #define SOURCEVIEWERSEARCH_H #include #include "qz_namespace.h" #include "animatedwidget.h" namespace Ui { class SourceViewerSearch; } class SourceViewer; class QT_QUPZILLA_EXPORT SourceViewerSearch : public AnimatedWidget { Q_OBJECT public: explicit SourceViewerSearch(SourceViewer* parent = 0); void activateLineEdit(); bool eventFilter(QObject* obj, QEvent* event); signals: void performSearch(); public slots: private slots: void next(); void previous(); void searchWholeWords(); void find(); bool find(QTextDocument::FindFlags); private: SourceViewer* m_sourceViewer; Ui::SourceViewerSearch* ui; QString m_lastSearchedString; QTextDocument::FindFlags m_findFlags; }; #endif // SOURCEVIEWERSEARCH_H qupzilla-1.6.0/src/lib/other/sourceviewersearch.ui000066400000000000000000000056251226107126500223160ustar00rootroot00000000000000 SourceViewerSearch 0 0 677 38 2 4 4 0 0 true Search: Search... 0 0 true 0 0 true Whole words Qt::Horizontal 40 20 MacToolButton QToolButton
    mactoolbutton.h
    FocusSelectLineEdit QLineEdit
    focusselectlineedit.h
    qupzilla-1.6.0/src/lib/other/statusbarmessage.cpp000066400000000000000000000104671226107126500221300ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "statusbarmessage.h" #include "qupzilla.h" #include "tabwidget.h" #include "tabbedwebview.h" #include "squeezelabelv1.h" #include "mainapplication.h" #include "webpage.h" #include "proxystyle.h" #include "qztools.h" #include #include #include #include #include #include TipLabel::TipLabel(QWidget* parent) : SqueezeLabelV1(parent) { setWindowFlags(Qt::ToolTip); setForegroundRole(QPalette::ToolTipText); setBackgroundRole(QPalette::ToolTipBase); setPalette(QToolTip::palette()); ensurePolished(); setFrameStyle(QFrame::NoFrame); setMargin(3); m_timer = new QTimer(this); m_timer->setSingleShot(true); m_timer->setInterval(500); connect(m_timer, SIGNAL(timeout()), this, SLOT(hide())); } void TipLabel::show(QWidget* widget) { m_timer->stop(); widget->installEventFilter(this); SqueezeLabelV1::show(); } void TipLabel::hideDelayed() { m_timer->start(); } void TipLabel::resizeEvent(QResizeEvent* ev) { SqueezeLabelV1::resizeEvent(ev); // Oxygen is setting rounded corners only for top-level tooltips if (mApp->proxyStyle() && mApp->proxyStyle()->name() == QLatin1String("oxygen")) { setMask(QzTools::roundedRect(rect(), 4)); } } void TipLabel::paintEvent(QPaintEvent* ev) { QStylePainter p(this); QStyleOptionFrame opt; opt.init(this); p.drawPrimitive(QStyle::PE_PanelTipLabel, opt); p.end(); SqueezeLabelV1::paintEvent(ev); } bool TipLabel::eventFilter(QObject* o, QEvent* e) { Q_UNUSED(o); switch (e->type()) { case QEvent::Leave: case QEvent::WindowDeactivate: case QEvent::Wheel: hide(); break; default: break; } return false; } StatusBarMessage::StatusBarMessage(QupZilla* mainClass) : p_QupZilla(mainClass) , m_statusBarText(new TipLabel(mainClass)) { } void StatusBarMessage::showMessage(const QString &message) { if (p_QupZilla->statusBar()->isVisible()) { p_QupZilla->statusBar()->showMessage(message); } #ifdef Q_OS_WIN else if (mApp->activeWindow() == p_QupZilla) { #else else { #endif WebView* view = p_QupZilla->weView(); QWebFrame* mainFrame = view->page()->mainFrame(); int horizontalScrollSize = 0; int verticalScrollSize = 0; const int scrollbarSize = p_QupZilla->style()->pixelMetric(QStyle::PM_ScrollBarExtent); if (mainFrame->scrollBarMaximum(Qt::Horizontal)) { horizontalScrollSize = scrollbarSize; } if (mainFrame->scrollBarMaximum(Qt::Vertical)) { verticalScrollSize = scrollbarSize; } m_statusBarText->setText(message); m_statusBarText->setMaximumWidth(view->width() - verticalScrollSize); m_statusBarText->resize(m_statusBarText->sizeHint()); QPoint position(0, view->height() - horizontalScrollSize - m_statusBarText->height()); const QRect statusRect = QRect(view->mapToGlobal(QPoint(0, position.y())), m_statusBarText->size()); if (statusRect.contains(QCursor::pos())) { position.setY(position.y() - m_statusBarText->height()); } m_statusBarText->move(view->mapToGlobal(position)); m_statusBarText->show(view); } } void StatusBarMessage::clearMessage() { if (p_QupZilla->statusBar()->isVisible()) { p_QupZilla->statusBar()->showMessage(QString()); } else { m_statusBarText->hideDelayed(); } } qupzilla-1.6.0/src/lib/other/statusbarmessage.h000066400000000000000000000031611226107126500215660ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef STATUSBARMESSAGE_H #define STATUSBARMESSAGE_H #include #include "qz_namespace.h" #include "squeezelabelv1.h" #include "animatedwidget.h" class QTimer; class QupZilla; class QT_QUPZILLA_EXPORT TipLabel : public SqueezeLabelV1 { public: explicit TipLabel(QWidget* parent); void show(QWidget* widget); void hideDelayed(); bool eventFilter(QObject* o, QEvent* e); private: void resizeEvent(QResizeEvent* ev); void paintEvent(QPaintEvent* ev); QTimer* m_timer; }; class QT_QUPZILLA_EXPORT StatusBarMessage { public: explicit StatusBarMessage(QupZilla* mainClass); void showMessage(const QString &message); void clearMessage(); private: QupZilla* p_QupZilla; TipLabel* m_statusBarText; }; #endif // STATUSBARMESSAGE_H qupzilla-1.6.0/src/lib/other/updater.cpp000066400000000000000000000102161226107126500202070ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "updater.h" #include "qupzilla.h" #include "qztools.h" #include "mainapplication.h" #include "tabwidget.h" #include "desktopnotificationsfactory.h" #include #include #include #include Updater::Version::Version(const QString &s) { isValid = false; QStringList v = s.split(QLatin1Char('.')); if (v.count() != 3) { return; } bool ok; majorVersion = v.at(0).toInt(&ok); if (!ok) { return; } minorVersion = v.at(1).toInt(&ok); if (!ok) { return; } revisionNumber = v.at(2).toInt(&ok); if (!ok) { return; } isValid = majorVersion >= 0 && minorVersion >= 0 && revisionNumber >= 0; } bool Updater::Version::operator <(const Updater::Version &other) const { if (this->majorVersion != other.majorVersion) { return this->majorVersion < other.majorVersion; } if (this->minorVersion != other.minorVersion) { return this->minorVersion < other.minorVersion; } if (this->revisionNumber != other.revisionNumber) { return this->revisionNumber < other.revisionNumber; } return false; } bool Updater::Version::operator >(const Updater::Version &other) const { if (*this == other) { return false; } return !operator<(other); } bool Updater::Version::operator ==(const Updater::Version &other) const { return (this->majorVersion == other.majorVersion && this->minorVersion == other.minorVersion && this->revisionNumber == other.revisionNumber); } bool Updater::Version::operator >=(const Updater::Version &other) const { if (*this == other) { return true; } return *this > other; } bool Updater::Version::operator <=(const Updater::Version &other) const { if (*this == other) { return true; } return *this < other; } Updater::Updater(QupZilla* mainClass, QObject* parent) : QObject(parent) , p_QupZilla(mainClass) { QTimer::singleShot(60 * 1000, this, SLOT(start())); // Start checking after 1 minute } void Updater::start() { QUrl url = QUrl(QString("%1/update.php?v=%2&os=%3").arg(QupZilla::WWWADDRESS, QupZilla::VERSION, QzTools::operatingSystem())); startDownloadingUpdateInfo(url); } void Updater::startDownloadingUpdateInfo(const QUrl &url) { QNetworkAccessManager* manager = new QNetworkAccessManager(); manager->get(QNetworkRequest(QUrl(url))); connect(manager, SIGNAL(finished(QNetworkReply*)), this, SLOT(downCompleted(QNetworkReply*))); } void Updater::downCompleted(QNetworkReply* reply) { QString html = reply->readAll(); if (html.startsWith(QLatin1String("Version:"))) { html.remove(QLatin1String("Version:")); Version current(QupZilla::VERSION); Version updated(html); if (current.isValid && updated.isValid && current < updated) { mApp->desktopNotifications()->showNotification(QPixmap(":icons/qupzillaupdate.png"), tr("Update available"), tr("New version of QupZilla is ready to download.")); } } reply->manager()->deleteLater(); } void Updater::downloadNewVersion() { p_QupZilla->tabWidget()->addView(QUrl(QupZilla::WWWADDRESS + "/download"), tr("Update"), Qz::NT_NotSelectedTab); } Updater::~Updater() { } qupzilla-1.6.0/src/lib/other/updater.h000066400000000000000000000034371226107126500176630ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef UPDATER_H #define UPDATER_H #include #include "qz_namespace.h" class QNetworkReply; class QUrl; class QupZilla; class QT_QUPZILLA_EXPORT Updater : public QObject { Q_OBJECT public: explicit Updater(QupZilla* mainClass, QObject* parent = 0); ~Updater(); struct QT_QUPZILLA_EXPORT Version { bool isValid; int majorVersion; int minorVersion; int revisionNumber; Version(const QString &s); bool operator<(const Version &other) const; bool operator>(const Version &other) const; bool operator==(const Version &other) const; bool operator>=(const Version &other) const; bool operator<=(const Version &other) const; }; private slots: void downCompleted(QNetworkReply* reply); void start(); void downloadNewVersion(); private: void startDownloadingUpdateInfo(const QUrl &url); QupZilla* p_QupZilla; }; #endif // UPDATER_H qupzilla-1.6.0/src/lib/other/useragentmanager.cpp000066400000000000000000000060451226107126500221000ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "useragentmanager.h" #include "qupzilla.h" #include "qztools.h" #include "settings.h" #include // QTWEBKIT_VERSION_CHECK macro UserAgentManager::UserAgentManager() { m_fakeUserAgent = QString("Mozilla/5.0 (%1) AppleWebKit/%2 (KHTML, like Gecko) Chrome/10.0 Safari/%2").arg(QzTools::operatingSystem(), QupZilla::WEBKITVERSION); } void UserAgentManager::loadSettings() { Settings settings; settings.beginGroup("Web-Browser-Settings"); m_globalUserAgent = settings.value("UserAgent", QString()).toString(); settings.endGroup(); settings.beginGroup("User-Agent-Settings"); m_usePerDomainUserAgent = settings.value("UsePerDomainUA", false).toBool(); QStringList domainList = settings.value("DomainList", QStringList()).toStringList(); QStringList userAgentsList = settings.value("UserAgentsList", QStringList()).toStringList(); settings.endGroup(); m_usePerDomainUserAgent = (m_usePerDomainUserAgent && domainList.count() == userAgentsList.count()); if (m_usePerDomainUserAgent) { for (int i = 0; i < domainList.count(); ++i) { m_userAgentsList[domainList.at(i)] = userAgentsList.at(i); } } } QString UserAgentManager::userAgentForUrl(const QUrl &url) const { const QString host = url.host(); if (m_usePerDomainUserAgent) { QHashIterator i(m_userAgentsList); while (i.hasNext()) { i.next(); if (host.endsWith(i.key())) { return i.value(); } } } #if QTWEBKIT_TO_2_3 if (host.contains(QLatin1String("google"))) { return m_fakeUserAgent; } #endif #ifdef Q_OS_WIN // Facebook chat is not working with default user-agent if (host.endsWith(QLatin1String("facebook.com"))) { return "Mozilla/5.0 (Windows XP) AppleWebKit/535.7 (KHTML, like Gecko) Chrome/16.0.912.77 Safari/535.7"; } #endif return m_globalUserAgent; } QString UserAgentManager::globalUserAgent() const { return m_globalUserAgent; } bool UserAgentManager::usePerDomainUserAgents() const { return m_usePerDomainUserAgent; } QHash UserAgentManager::perDomainUserAgentsList() const { return m_userAgentsList; } qupzilla-1.6.0/src/lib/other/useragentmanager.h000066400000000000000000000027061226107126500215450ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef USERAGENTMANAGER_H #define USERAGENTMANAGER_H #include #include #include "qz_namespace.h" class QUrl; class QT_QUPZILLA_EXPORT UserAgentManager { public: explicit UserAgentManager(); void loadSettings(); QString userAgentForUrl(const QUrl &url) const; QString globalUserAgent() const; bool usePerDomainUserAgents() const; QHash perDomainUserAgentsList() const; private: QString m_globalUserAgent; QString m_fakeUserAgent; bool m_usePerDomainUserAgent; QHash m_userAgentsList; }; #endif // USERAGENTMANAGER_H qupzilla-1.6.0/src/lib/plugins/000077500000000000000000000000001226107126500163775ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/plugins/clicktoflash.cpp000066400000000000000000000254751226107126500215660ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ /* ============================================================ * * Copyright (C) 2009 by Benjamin C. Meyer * Copyright (C) 2010 by Matthieu Gicquel * * 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) version 3 or any later version * accepted by the membership of KDE e.V. (or its successor approved * by the membership of KDE e.V.), which shall act as a proxy * defined in Section 14 of version 3 of the license. * * 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, see . * * ============================================================ */ #include "clicktoflash.h" #include "clickablelabel.h" #include "mainapplication.h" #include "pluginproxy.h" #include "squeezelabelv2.h" #include "webpage.h" #include "qztools.h" #include "qupzilla.h" #include #include #include #include #include #include #include #include QUrl ClickToFlash::acceptedUrl; QStringList ClickToFlash::acceptedArgNames; QStringList ClickToFlash::acceptedArgValues; ClickToFlash::ClickToFlash(const QUrl &pluginUrl, const QStringList &argumentNames, const QStringList &argumentValues, WebPage* parentPage) : QWidget() , m_argumentNames(argumentNames) , m_argumentValues(argumentValues) , m_toolButton(0) , m_layout1(0) , m_layout2(0) , m_frame(0) , m_url(pluginUrl) , m_page(parentPage) { m_layout1 = new QHBoxLayout(this); m_frame = new QFrame(this); m_frame->setObjectName("click2flash-frame"); m_frame->setContentsMargins(0, 0, 0, 0); m_layout2 = new QHBoxLayout(m_frame); m_toolButton = new QToolButton(this); m_toolButton->setObjectName("click2flash-toolbutton"); m_toolButton->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); m_toolButton->setCursor(Qt::PointingHandCursor); m_layout2->addWidget(m_toolButton); m_layout1->addWidget(m_frame); m_layout1->setContentsMargins(0, 0, 0, 0); m_layout2->setContentsMargins(0, 0, 0, 0); connect(m_toolButton, SIGNAL(clicked()), this, SLOT(load())); setMinimumSize(27, 27); setContextMenuPolicy(Qt::CustomContextMenu); connect(this, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(customContextMenuRequested(QPoint))); QTimer::singleShot(0, this, SLOT(ensurePluginVisible())); } bool ClickToFlash::isAlreadyAccepted(const QUrl &url, const QStringList &argumentNames, const QStringList &argumentValues) { return (url == acceptedUrl && argumentNames == acceptedArgNames && argumentValues == acceptedArgValues); } void ClickToFlash::ensurePluginVisible() { // Well, kind of a dirty workaround, but it works. // I don't know any other method how to show our plugin // and adjust it on the proper position in page // Scheduling adjustingPage rather than actually changing zoomFactor // right now, as it is CPU intensive when there is lot of click2flash // objects on page m_page->scheduleAdjustPage(); } void ClickToFlash::customContextMenuRequested(const QPoint &pos) { QMenu menu; menu.addAction(tr("Object blocked by ClickToFlash")); menu.addAction(tr("Show more information about object"), this, SLOT(showInfo())); menu.addSeparator(); menu.addAction(tr("Delete object"), this, SLOT(hideObject())); menu.addAction(tr("Add %1 to whitelist").arg(m_url.host()), this, SLOT(toWhitelist())); menu.actions().at(0)->setEnabled(false); menu.exec(mapToGlobal(pos)); } void ClickToFlash::toWhitelist() { mApp->plugins()->c2f_addWhitelist(m_url.host()); load(); } void ClickToFlash::hideObject() { findElement(); if (!m_element.isNull()) { m_element.setStyleProperty("visibility", "hidden"); } else { hide(); } //deleteLater(); //Well, it should be there, but therefore it sometimes crashes } void ClickToFlash::findElement() { if (!m_toolButton) { return; } QWidget* parent = parentWidget(); QWebView* view = 0; while (parent) { if (QWebView* aView = qobject_cast(parent)) { view = aView; break; } parent = parent->parentWidget(); } if (!view) { return; } QPoint objectPos = view->mapFromGlobal(m_toolButton->mapToGlobal(m_toolButton->pos())); QWebFrame* objectFrame = view->page()->frameAt(objectPos); QWebHitTestResult hitResult; QWebElement hitElement; if (objectFrame) { hitResult = objectFrame->hitTestContent(objectPos); hitElement = hitResult.element(); } if (!hitElement.isNull() && (hitElement.tagName().compare("embed", Qt::CaseInsensitive) == 0 || hitElement.tagName().compare("object", Qt::CaseInsensitive) == 0)) { m_element = hitElement; return; } // HitTestResult failed, trying to find element by src // attribute in elements at all frames on page (less accurate) QList frames; frames.append(objectFrame); m_mainFrame = view->page()->mainFrame(); frames.append(m_mainFrame); while (!frames.isEmpty()) { QWebFrame* frame = frames.takeFirst(); if (!frame) { continue; } QWebElement docElement = frame->documentElement(); QWebElementCollection elements; elements.append(docElement.findAll(QLatin1String("embed"))); elements.append(docElement.findAll(QLatin1String("object"))); foreach (const QWebElement &element, elements) { if (!checkElement(element) && !checkUrlOnElement(element)) { continue; } m_element = element; return; } frames += frame->childFrames(); } } void ClickToFlash::load() { findElement(); if (m_element.isNull()) { qWarning("Click2Flash: Cannot find Flash object."); } else { /* Old code caused sometimes flashing of the whole browser window and then somehow ruined rendering of opacity effects, etc.. QWebElement substitute = m_element.clone(); substitute.setAttribute(QLatin1String("type"), "application/futuresplash"); m_element.replace(substitute); So asynchronous JavaScript code is used to remove element from page and then substitute it with unblocked Flash. The JavaScript code is: var qz_c2f_clone = this.cloneNode(true); var qz_c2f_parentNode = this.parentNode; var qz_c2f_substituteElement = document.createElement(this.tagName); qz_c2f_substituteElement.width = this.width; qz_c2f_substituteElement.height = this.height; this.parentNode.replaceChild(qz_c2f_substituteElement, this); setTimeout(function(){ qz_c2f_parentNode.replaceChild(qz_c2f_clone, qz_c2f_substituteElement); }, 250); */ acceptedUrl = m_url; acceptedArgNames = m_argumentNames; acceptedArgValues = m_argumentValues; m_element.setAttribute("type", "application/futuresplash"); QString js = "var qz_c2f_clone=this.cloneNode(true);var qz_c2f_parentNode=this.parentNode;" "var qz_c2f_substituteElement=document.createElement(this.tagName);" "qz_c2f_substituteElement.width=this.width;qz_c2f_substituteElement.height=this.height;" "this.parentNode.replaceChild(qz_c2f_substituteElement,this);setTimeout(function(){" "qz_c2f_parentNode.replaceChild(qz_c2f_clone,qz_c2f_substituteElement);},250);"; m_element.evaluateJavaScript(js); } } bool ClickToFlash::checkUrlOnElement(QWebElement el) { QString checkString = el.attribute("src"); if (checkString.isEmpty()) { checkString = el.attribute("data"); } if (checkString.isEmpty()) { checkString = el.attribute("value"); } checkString = m_page->url().resolved(QUrl(checkString)).toString(QUrl::RemoveQuery); return m_url.toEncoded().contains(checkString.toUtf8()); } bool ClickToFlash::checkElement(QWebElement el) { if (m_argumentNames == el.attributeNames()) { foreach (const QString &name, m_argumentNames) { if (m_argumentValues.indexOf(el.attribute(name)) == -1) { return false; } } return true; } return false; } void ClickToFlash::showInfo() { QWidget* widg = new QWidget(); widg->setAttribute(Qt::WA_DeleteOnClose); widg->setWindowTitle(tr("Flash Object")); QFormLayout* lay = new QFormLayout(widg); QLabel* attrib = new QLabel(tr("Attribute Name")); QLabel* value = new QLabel(tr("Value")); if (isRightToLeft()) { widg->setLayoutDirection(Qt::LeftToRight); attrib->setAlignment(Qt::AlignRight | Qt::AlignVCenter); value->setAlignment(Qt::AlignRight | Qt::AlignVCenter); } lay->addRow(attrib, value); int i = 0; foreach (const QString &name, m_argumentNames) { QString value = m_argumentValues.at(i); SqueezeLabelV2* valueLabel = new SqueezeLabelV2(value); valueLabel->setTextInteractionFlags(Qt::TextSelectableByMouse | Qt::LinksAccessibleByMouse); lay->addRow(new SqueezeLabelV2(name), valueLabel); i++; } if (i == 0) { lay->addRow(new QLabel(tr("No more information available."))); } widg->setMaximumHeight(500); QzTools::centerWidgetToParent(widg, m_page->view()); widg->show(); } qupzilla-1.6.0/src/lib/plugins/clicktoflash.h000066400000000000000000000064001226107126500212160ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ /* ============================================================ * * Copyright (C) 2009 by Benjamin C. Meyer * Copyright (C) 2010 by Matthieu Gicquel * * * 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) version 3 or any later version * accepted by the membership of KDE e.V. (or its successor approved * by the membership of KDE e.V.), which shall act as a proxy * defined in Section 14 of version 3 of the license. * * 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, see . * * ============================================================ */ #ifndef CLICKTOFLASH_H #define CLICKTOFLASH_H #include "qz_namespace.h" // Qt Includes #include #include #include class QToolButton; class QHBoxLayout; class QFrame; class WebPage; class QT_QUPZILLA_EXPORT ClickToFlash : public QWidget { Q_OBJECT public: explicit ClickToFlash(const QUrl &pluginUrl, const QStringList &argumentNames, const QStringList &argumentValues, WebPage* parentPage); static bool isAlreadyAccepted(const QUrl &url, const QStringList &argumentNames, const QStringList &argumentValues); private slots: void load(); void customContextMenuRequested(const QPoint &pos); void toWhitelist(); void findElement(); void hideObject(); void showInfo(); void ensurePluginVisible(); private: bool checkElement(QWebElement el); bool checkUrlOnElement(QWebElement el); QStringList m_argumentNames; QStringList m_argumentValues; QWebElement m_element; QWebFrame* m_mainFrame; QToolButton* m_toolButton; QHBoxLayout* m_layout1; QHBoxLayout* m_layout2; QFrame* m_frame; /** used to find the right QWebElement between the ones of the different plugins */ const QUrl m_url; static QUrl acceptedUrl; static QStringList acceptedArgNames; static QStringList acceptedArgValues; WebPage* m_page; }; #endif // CLICKTOFLASH_H qupzilla-1.6.0/src/lib/plugins/plugininterface.h000066400000000000000000000071461226107126500217370ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef PLUGININTERFACE_H #define PLUGININTERFACE_H #include #include #include #include #include "qz_namespace.h" struct PluginSpec { QString name; QString info; QString description; QString author; QString version; QPixmap icon; bool hasSettings; PluginSpec() { hasSettings = false; } bool operator==(const PluginSpec &other) const { return (this->name == other.name && this->info == other.info && this->description == other.description && this->author == other.author && this->version == other.version); } }; class QTranslator; class QMenu; class QWebHitTestResult; class QMouseEvent; class QKeyEvent; class QWheelEvent; class WebView; class PluginInterface { public: enum InitState { StartupInitState, LateInitState }; virtual PluginSpec pluginSpec() = 0; virtual void init(InitState state, const QString &settingsPath) = 0; virtual void unload() = 0; virtual bool testPlugin() = 0; virtual ~PluginInterface() { } virtual QTranslator* getTranslator(const QString &locale) { Q_UNUSED(locale) return 0; } virtual void showSettings(QWidget* parent = 0) { Q_UNUSED(parent) } virtual void populateWebViewMenu(QMenu* menu, WebView* view, const QWebHitTestResult &r) { Q_UNUSED(menu) Q_UNUSED(view) Q_UNUSED(r) } virtual bool mouseDoubleClick(const Qz::ObjectName &type, QObject* obj, QMouseEvent* event) { Q_UNUSED(type) Q_UNUSED(obj) Q_UNUSED(event) return false; } virtual bool mousePress(const Qz::ObjectName &type, QObject* obj, QMouseEvent* event) { Q_UNUSED(type) Q_UNUSED(obj) Q_UNUSED(event) return false; } virtual bool mouseRelease(const Qz::ObjectName &type, QObject* obj, QMouseEvent* event) { Q_UNUSED(type) Q_UNUSED(obj) Q_UNUSED(event) return false; } virtual bool mouseMove(const Qz::ObjectName &type, QObject* obj, QMouseEvent* event) { Q_UNUSED(type) Q_UNUSED(obj) Q_UNUSED(event) return false; } virtual bool wheelEvent(const Qz::ObjectName &type, QObject* obj, QWheelEvent* event) { Q_UNUSED(type) Q_UNUSED(obj) Q_UNUSED(event) return false; } virtual bool keyPress(const Qz::ObjectName &type, QObject* obj, QKeyEvent* event) { Q_UNUSED(type) Q_UNUSED(obj) Q_UNUSED(event) return false; } virtual bool keyRelease(const Qz::ObjectName &type, QObject* obj, QKeyEvent* event) { Q_UNUSED(type) Q_UNUSED(obj) Q_UNUSED(event) return false; } virtual QNetworkReply* createRequest(QNetworkAccessManager::Operation op, const QNetworkRequest &request, QIODevice* outgoingData) { Q_UNUSED(op) Q_UNUSED(request) Q_UNUSED(outgoingData) return 0; } }; Q_DECLARE_INTERFACE(PluginInterface, "QupZilla.Browser.PluginInterface/1.2") #endif // PLUGININTERFACE_H qupzilla-1.6.0/src/lib/plugins/pluginproxy.cpp000066400000000000000000000135121226107126500215050ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "pluginproxy.h" #include "plugininterface.h" #include "mainapplication.h" #include "settings.h" #include PluginProxy::PluginProxy() : Plugins() { connect(this, SIGNAL(pluginUnloaded(PluginInterface*)), this, SLOT(pluginUnloaded(PluginInterface*))); } void PluginProxy::registerAppEventHandler(const PluginProxy::EventHandlerType &type, PluginInterface* obj) { switch (type) { case MouseDoubleClickHandler: if (!m_mouseDoubleClickHandlers.contains(obj)) { m_mouseDoubleClickHandlers.append(obj); } break; case MousePressHandler: if (!m_mousePressHandlers.contains(obj)) { m_mousePressHandlers.append(obj); } break; case MouseReleaseHandler: if (!m_mouseReleaseHandlers.contains(obj)) { m_mouseReleaseHandlers.append(obj); } break; case MouseMoveHandler: if (!m_mouseMoveHandlers.contains(obj)) { m_mouseMoveHandlers.append(obj); } break; case KeyPressHandler: if (!m_keyPressHandlers.contains(obj)) { m_keyPressHandlers.append(obj); } break; case KeyReleaseHandler: if (!m_keyReleaseHandlers.contains(obj)) { m_keyReleaseHandlers.append(obj); } break; case WheelEventHandler: if (!m_wheelEventHandlers.contains(obj)) { m_wheelEventHandlers.append(obj); } break; default: qWarning("PluginProxy::registerAppEventHandler registering unknown event handler type"); break; } } void PluginProxy::pluginUnloaded(PluginInterface* plugin) { m_mousePressHandlers.removeOne(plugin); m_mouseReleaseHandlers.removeOne(plugin); m_mouseMoveHandlers.removeOne(plugin); m_keyPressHandlers.removeOne(plugin); m_keyReleaseHandlers.removeOne(plugin); } void PluginProxy::populateWebViewMenu(QMenu* menu, WebView* view, const QWebHitTestResult &r) { if (!menu || !view) { return; } foreach (PluginInterface* iPlugin, m_loadedPlugins) { iPlugin->populateWebViewMenu(menu, view, r); } } bool PluginProxy::processMouseDoubleClick(const Qz::ObjectName &type, QObject* obj, QMouseEvent* event) { bool accepted = false; foreach (PluginInterface* iPlugin, m_mouseDoubleClickHandlers) { if (iPlugin->mouseDoubleClick(type, obj, event)) { accepted = true; } } return accepted; } bool PluginProxy::processMousePress(const Qz::ObjectName &type, QObject* obj, QMouseEvent* event) { bool accepted = false; foreach (PluginInterface* iPlugin, m_mousePressHandlers) { if (iPlugin->mousePress(type, obj, event)) { accepted = true; } } return accepted; } bool PluginProxy::processMouseRelease(const Qz::ObjectName &type, QObject* obj, QMouseEvent* event) { bool accepted = false; foreach (PluginInterface* iPlugin, m_mouseReleaseHandlers) { if (iPlugin->mouseRelease(type, obj, event)) { accepted = true; } } return accepted; } bool PluginProxy::processMouseMove(const Qz::ObjectName &type, QObject* obj, QMouseEvent* event) { bool accepted = false; foreach (PluginInterface* iPlugin, m_mouseMoveHandlers) { if (iPlugin->mouseMove(type, obj, event)) { accepted = true; } } return accepted; } bool PluginProxy::processWheelEvent(const Qz::ObjectName &type, QObject* obj, QWheelEvent* event) { bool accepted = false; foreach (PluginInterface* iPlugin, m_wheelEventHandlers) { if (iPlugin->wheelEvent(type, obj, event)) { accepted = true; } } return accepted; } bool PluginProxy::processKeyPress(const Qz::ObjectName &type, QObject* obj, QKeyEvent* event) { bool accepted = false; foreach (PluginInterface* iPlugin, m_keyPressHandlers) { if (iPlugin->keyPress(type, obj, event)) { accepted = true; } } return accepted; } bool PluginProxy::processKeyRelease(const Qz::ObjectName &type, QObject* obj, QKeyEvent* event) { bool accepted = false; foreach (PluginInterface* iPlugin, m_keyReleaseHandlers) { if (iPlugin->keyRelease(type, obj, event)) { accepted = true; } } return accepted; } QNetworkReply* PluginProxy::createRequest(QNetworkAccessManager::Operation op, const QNetworkRequest &request, QIODevice* outgoingData) { foreach (PluginInterface* iPlugin, m_loadedPlugins) { QNetworkReply* reply = iPlugin->createRequest(op, request, outgoingData); if (reply) { return reply; } } return 0; } void PluginProxy::emitWebPageCreated(WebPage* page) { emit webPageCreated(page); } void PluginProxy::emitWebPageDeleted(WebPage* page) { emit webPageDeleted(page); } void PluginProxy::emitMainWindowCreated(QupZilla* window) { emit mainWindowCreated(window); } void PluginProxy::emitMainWindowDeleted(QupZilla* window) { emit mainWindowDeleted(window); } qupzilla-1.6.0/src/lib/plugins/pluginproxy.h000066400000000000000000000073401226107126500211540ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef PLUGINPROXY_H #define PLUGINPROXY_H #include "plugins.h" #include "qz_namespace.h" class QupZilla; class WebPage; class QT_QUPZILLA_EXPORT PluginProxy : public Plugins { Q_OBJECT public: enum EventHandlerType { MouseDoubleClickHandler, MousePressHandler, MouseReleaseHandler, MouseMoveHandler, KeyPressHandler, KeyReleaseHandler, WheelEventHandler }; explicit PluginProxy(); void registerAppEventHandler(const EventHandlerType &type, PluginInterface* obj); void populateWebViewMenu(QMenu* menu, WebView* view, const QWebHitTestResult &r); bool processMouseDoubleClick(const Qz::ObjectName &type, QObject* obj, QMouseEvent* event); bool processMousePress(const Qz::ObjectName &type, QObject* obj, QMouseEvent* event); bool processMouseRelease(const Qz::ObjectName &type, QObject* obj, QMouseEvent* event); bool processMouseMove(const Qz::ObjectName &type, QObject* obj, QMouseEvent* event); bool processWheelEvent(const Qz::ObjectName &type, QObject* obj, QWheelEvent* event); bool processKeyPress(const Qz::ObjectName &type, QObject* obj, QKeyEvent* event); bool processKeyRelease(const Qz::ObjectName &type, QObject* obj, QKeyEvent* event); QNetworkReply* createRequest(QNetworkAccessManager::Operation op, const QNetworkRequest &request, QIODevice* outgoingData); void emitWebPageCreated(WebPage* page); void emitWebPageDeleted(WebPage* page); void emitMainWindowCreated(QupZilla* window); void emitMainWindowDeleted(QupZilla* window); signals: void webPageCreated(WebPage* page); void webPageDeleted(WebPage* page); void mainWindowCreated(QupZilla* window); void mainWindowDeleted(QupZilla* window); private slots: void pluginUnloaded(PluginInterface* plugin); private: QList m_mouseDoubleClickHandlers; QList m_mousePressHandlers; QList m_mouseReleaseHandlers; QList m_mouseMoveHandlers; QList m_wheelEventHandlers; QList m_keyPressHandlers; QList m_keyReleaseHandlers; }; #include "mainapplication.h" #include "networkmanager.h" #include "autofill.h" #include "passwordmanager.h" #define QZ_REGISTER_EVENT_HANDLER(Type) \ mApp->plugins()->registerAppEventHandler(Type, this); #define QZ_REGISTER_SCHEME_HANDLER(Scheme, Object) \ mApp->networkManager()->registerSchemeHandler(Scheme, Object); #define QZ_UNREGISTER_SCHEME_HANDLER(Scheme, Object) \ mApp->networkManager()->unregisterSchemeHandler(Scheme, Object); #define QZ_REGISTER_PASSWORD_BACKEND(Name, Object) \ mApp->autoFill()->passwordManager()->registerBackend(Name, Object); #define QZ_UNREGISTER_PASSWORD_BACKEND(Object) \ mApp->autoFill()->passwordManager()->unregisterBackend(Object); #endif // PLUGINPROXY_H qupzilla-1.6.0/src/lib/plugins/plugins.cpp000066400000000000000000000155371226107126500205770ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "pluginproxy.h" #include "plugininterface.h" #include "mainapplication.h" #include "speeddial.h" #include "settings.h" #include #include #include #include Plugins::Plugins(QObject* parent) : QObject(parent) , m_pluginsLoaded(false) , m_speedDial(new SpeedDial(this)) { loadSettings(); } QList Plugins::getAvailablePlugins() { loadAvailablePlugins(); return m_availablePlugins; } bool Plugins::loadPlugin(Plugins::Plugin* plugin) { if (plugin->isLoaded()) { return true; } plugin->pluginLoader->setFileName(plugin->fullPath); PluginInterface* iPlugin = qobject_cast(plugin->pluginLoader->instance()); if (!iPlugin) { return false; } m_availablePlugins.removeOne(*plugin); plugin->instance = initPlugin(PluginInterface::LateInitState, iPlugin, plugin->pluginLoader); m_availablePlugins.prepend(*plugin); refreshLoadedPlugins(); return plugin->isLoaded(); } void Plugins::unloadPlugin(Plugins::Plugin* plugin) { if (!plugin->isLoaded()) { return; } plugin->instance->unload(); plugin->pluginLoader->unload(); emit pluginUnloaded(plugin->instance); m_availablePlugins.removeOne(*plugin); plugin->instance = 0; m_availablePlugins.append(*plugin); refreshLoadedPlugins(); } void Plugins::loadSettings() { Settings settings; settings.beginGroup("Plugin-Settings"); m_pluginsEnabled = settings.value("EnablePlugins", DEFAULT_ENABLE_PLUGINS).toBool(); m_allowedPlugins = settings.value("AllowedPlugins", QStringList()).toStringList(); settings.endGroup(); c2f_loadSettings(); } void Plugins::shutdown() { c2f_saveSettings(); m_speedDial->saveSettings(); foreach (PluginInterface* iPlugin, m_loadedPlugins) { iPlugin->unload(); } } void Plugins::c2f_loadSettings() { Settings settings; settings.beginGroup("ClickToFlash"); c2f_whitelist = settings.value("whitelist", QStringList()).toStringList(); c2f_enabled = settings.value("Enabled", true).toBool(); settings.endGroup(); } void Plugins::c2f_saveSettings() { Settings settings; settings.beginGroup("ClickToFlash"); settings.setValue("whitelist", c2f_whitelist); settings.setValue("Enabled", c2f_enabled); settings.endGroup(); } void Plugins::loadPlugins() { if (!m_pluginsEnabled) { return; } QDir settingsDir(mApp->currentProfilePath() + "extensions/"); if (!settingsDir.exists()) { settingsDir.mkdir(settingsDir.absolutePath()); } foreach (const QString &fullPath, m_allowedPlugins) { QPluginLoader* loader = new QPluginLoader(fullPath); PluginInterface* iPlugin = qobject_cast(loader->instance()); if (!iPlugin) { qWarning() << "Plugins::loadPlugins" << loader->errorString(); continue; } Plugin plugin; plugin.fullPath = fullPath; plugin.pluginLoader = loader; plugin.instance = initPlugin(PluginInterface::StartupInitState, iPlugin, loader); if (plugin.isLoaded()) { plugin.pluginSpec = iPlugin->pluginSpec(); m_loadedPlugins.append(plugin.instance); m_availablePlugins.append(plugin); } } refreshLoadedPlugins(); std::cout << "QupZilla: " << m_loadedPlugins.count() << " extensions loaded" << std::endl; } void Plugins::loadAvailablePlugins() { if (m_pluginsLoaded) { return; } m_pluginsLoaded = true; QStringList dirs; dirs << mApp->DATADIR + "plugins/" // Portable build: Load only plugins from DATADIR/plugins/ directory. // Loaded plugins are saved with relative path, instead of absolute for // normal build. #ifndef PORTABLE_BUILD #if defined(QZ_WS_X11) && !defined(NO_SYSTEM_DATAPATH) #ifdef USE_LIBPATH << USE_LIBPATH "qupzilla/" #else << "/usr/lib/qupzilla/" #endif #endif << mApp->PROFILEDIR + "plugins/" #endif ; foreach (const QString &dir, dirs) { QDir pluginsDir = QDir(dir); foreach (const QString &fileName, pluginsDir.entryList(QDir::Files)) { const QString absolutePath = pluginsDir.absoluteFilePath(fileName); if (m_allowedPlugins.contains(absolutePath)) { continue; } QPluginLoader* loader = new QPluginLoader(absolutePath); PluginInterface* iPlugin = qobject_cast(loader->instance()); if (!iPlugin) { qWarning() << "Plugins::loadAvailablePlugins" << loader->errorString(); continue; } Plugin plugin; plugin.fileName = fileName; plugin.fullPath = absolutePath; plugin.pluginSpec = iPlugin->pluginSpec(); plugin.pluginLoader = loader; plugin.instance = 0; loader->unload(); if (!alreadySpecInAvailable(plugin.pluginSpec)) { m_availablePlugins.append(plugin); } } } } PluginInterface* Plugins::initPlugin(PluginInterface::InitState state, PluginInterface* interface, QPluginLoader* loader) { if (!interface) { return 0; } interface->init(state, mApp->currentProfilePath() + "extensions/"); if (!interface->testPlugin()) { interface->unload(); loader->unload(); emit pluginUnloaded(interface); return 0; } qApp->installTranslator(interface->getTranslator(mApp->currentLanguageFile())); return interface; } void Plugins::refreshLoadedPlugins() { m_loadedPlugins.clear(); foreach (const Plugin &plugin, m_availablePlugins) { if (plugin.isLoaded()) { m_loadedPlugins.append(plugin.instance); } } } bool Plugins::alreadySpecInAvailable(const PluginSpec &spec) { foreach (const Plugin &plugin, m_availablePlugins) { if (plugin.pluginSpec == spec) { return true; } } return false; } qupzilla-1.6.0/src/lib/plugins/plugins.h000066400000000000000000000060621226107126500202350ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef PLUGINLOADER_H #define PLUGINLOADER_H #include #include #include #include "qz_namespace.h" #include "plugininterface.h" class QPluginLoader; class SpeedDial; class QT_QUPZILLA_EXPORT Plugins : public QObject { Q_OBJECT public: struct Plugin { QString fileName; QString fullPath; PluginSpec pluginSpec; QPluginLoader* pluginLoader; PluginInterface* instance; Plugin() { pluginLoader = 0; instance = 0; } bool isLoaded() const { return instance; } bool operator==(const Plugin &other) const { return (this->fileName == other.fileName && this->fullPath == other.fullPath && this->pluginSpec == other.pluginSpec && this->instance == other.instance); } }; explicit Plugins(QObject* parent = 0); QList getAvailablePlugins(); bool loadPlugin(Plugin* plugin); void unloadPlugin(Plugin* plugin); void shutdown(); // CLick2Flash void c2f_loadSettings(); void c2f_saveSettings(); void c2f_addWhitelist(QString page) { c2f_whitelist.append(page); } void c2f_removeWhitelist(QString page) { c2f_whitelist.removeOne(page); } void c2f_setEnabled(bool en) { c2f_enabled = en; } bool c2f_isEnabled() { return c2f_enabled; } QStringList c2f_getWhiteList() { return c2f_whitelist; } // SpeedDial SpeedDial* speedDial() { return m_speedDial; } public slots: void loadSettings(); void loadPlugins(); protected: QList m_loadedPlugins; signals: void pluginUnloaded(PluginInterface* plugin); private: bool alreadySpecInAvailable(const PluginSpec &spec); PluginInterface* initPlugin(PluginInterface::InitState state , PluginInterface* interface, QPluginLoader* loader); void refreshLoadedPlugins(); void loadAvailablePlugins(); QList m_availablePlugins; QStringList m_allowedPlugins; bool m_pluginsEnabled; bool m_pluginsLoaded; SpeedDial* m_speedDial; QStringList c2f_whitelist; bool c2f_enabled; }; Q_DECLARE_METATYPE(Plugins::Plugin) #endif // PLUGINLOADER_H qupzilla-1.6.0/src/lib/plugins/qtwebkit/000077500000000000000000000000001226107126500202315ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/plugins/qtwebkit/notifications/000077500000000000000000000000001226107126500231025ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/plugins/qtwebkit/notifications/notificationpresenter.cpp000066400000000000000000000026211226107126500302250ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "notificationpresenter.h" #include "desktopnotificationsfactory.h" #include "mainapplication.h" #include NotificationPresenter::NotificationPresenter() : QWebNotificationPresenter() { } void NotificationPresenter::showNotification(const QWebNotificationData* data) { if (data->message().isEmpty()) { qDebug() << "NotificationPresenter: HTML notifications are not supported."; return; } mApp->desktopNotifications()->showNotification(QPixmap(":qupzilla.png"), data->title(), data->message()); } qupzilla-1.6.0/src/lib/plugins/qtwebkit/notifications/notificationpresenter.h000066400000000000000000000022151226107126500276710ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef NOTIFICATIONPRESENTER_H #define NOTIFICATIONPRESENTER_H #include "qwebkitplatformplugin.h" class NotificationPresenter : public QWebNotificationPresenter { public: explicit NotificationPresenter(); void showNotification(const QWebNotificationData* data); }; #endif // NOTIFICATIONPRESENTER_H qupzilla-1.6.0/src/lib/plugins/qtwebkit/qtwebkit-plugins.pri000066400000000000000000000017061226107126500242620ustar00rootroot00000000000000HEADERS += $$PWD/qtwebkitplugin.h \ $$PWD/notifications/notificationpresenter.h \ $$[QT_INSTALL_HEADERS]/QtWebKit/qwebkitplatformplugin.h \ SOURCES += $$PWD/qtwebkitplugin.cpp \ $$PWD/notifications/notificationpresenter.cpp \ DEFINES *= QT_STATICPLUGIN !mac:unix:contains(DEFINES, USE_QTWEBKIT_2_3):system(pkg-config --exists hunspell) { buildSpellcheck = true LIBS += $$system(pkg-config --libs hunspell) } win32 { # QtWebKit 2.3 and Hunspell is now needed to build on Windows buildSpellcheck = true LIBS += -llibhunspell } equals(buildSpellcheck, true) { HEADERS += $$PWD/spellcheck/spellcheck.h \ $$PWD/spellcheck/speller.h \ $$PWD/spellcheck/spellcheckdialog.h \ SOURCES += $$PWD/spellcheck/spellcheck.cpp \ $$PWD/spellcheck/speller.cpp \ $$PWD/spellcheck/spellcheckdialog.cpp \ FORMS += $$PWD/spellcheck/spellcheckdialog.ui DEFINES *= USE_HUNSPELL } qupzilla-1.6.0/src/lib/plugins/qtwebkit/qtwebkitplugin.cpp000066400000000000000000000032341226107126500240100ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "qtwebkitplugin.h" #include "notifications/notificationpresenter.h" #ifdef USE_HUNSPELL #include "spellcheck/spellcheck.h" #endif #include QtWebKitPlugin::QtWebKitPlugin() { } bool QtWebKitPlugin::supportsExtension(Extension ext) const { return (ext == Notifications #ifdef USE_HUNSPELL || ext == SpellChecker #endif ); } QObject* QtWebKitPlugin::createExtension(Extension ext) const { switch (ext) { #ifdef USE_HUNSPELL case SpellChecker: return new SpellCheck(); #endif case Notifications: return new NotificationPresenter(); default: return 0; } } #if QT_VERSION < 0x050000 Q_EXPORT_PLUGIN2(qtwebkitplugins, QtWebKitPlugin) #endif #if (QT_VERSION < 0x050000) Q_IMPORT_PLUGIN(qtwebkitplugins) #else Q_IMPORT_PLUGIN(QtWebKitPlugin) #endif qupzilla-1.6.0/src/lib/plugins/qtwebkit/qtwebkitplugin.h000066400000000000000000000024711226107126500234570ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef QTWEBKITPLUGIN_H #define QTWEBKITPLUGIN_H #include "qwebkitplatformplugin.h" class QtWebKitPlugin : public QObject, public QWebKitPlatformPlugin { Q_OBJECT Q_INTERFACES(QWebKitPlatformPlugin) #if QT_VERSION >= 0x050000 Q_PLUGIN_METADATA(IID "org.qtwebkit.QtWebKit.QtWebKitPlugins") #endif public: explicit QtWebKitPlugin(); bool supportsExtension(Extension ext) const; QObject* createExtension(Extension ext) const; }; #endif // QTWEBKITPLUGIN_H qupzilla-1.6.0/src/lib/plugins/qtwebkit/spellcheck/000077500000000000000000000000001226107126500223465ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/plugins/qtwebkit/spellcheck/spellcheck.cpp000066400000000000000000000105051226107126500251700ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ // Based on https://gitorious.org/kdewebkit-spellcheck #include "spellcheck.h" #include "speller.h" #include "mainapplication.h" SpellCheck::SpellCheck() : QWebSpellChecker() , m_speller(mApp->speller()) { } bool SpellCheck::isContinousSpellCheckingEnabled() const { return mApp->speller()->isEnabled(); } void SpellCheck::toggleContinousSpellChecking() { } void SpellCheck::learnWord(const QString &word) { Q_UNUSED(word); } void SpellCheck::ignoreWordInSpellDocument(const QString &word) { Q_UNUSED(word); } void SpellCheck::checkSpellingOfString(const QString &word, int* misspellingLocation, int* misspellingLength) { if (misspellingLocation == NULL || misspellingLength == NULL) { return; } *misspellingLocation = -1; *misspellingLength = 0; QTextBoundaryFinder finder = QTextBoundaryFinder(QTextBoundaryFinder::Word, word); QTextBoundaryFinder::BoundaryReasons boundary = finder.boundaryReasons(); int start = finder.position(), end = finder.position(); bool inWord = startOfWord(boundary, finder.type()); while (finder.toNextBoundary() > 0) { boundary = finder.boundaryReasons(); if (endOfWord(boundary, finder.type()) && inWord) { end = finder.position(); QString str = finder.string().mid(start, end - start); if (Speller::isValidWord(str)) { if (m_speller->isMisspelled(str)) { *misspellingLocation = start; *misspellingLength = end - start; } return; } inWord = false; } if (startOfWord(boundary, finder.type())) { start = finder.position(); inWord = true; } } } QString SpellCheck::autoCorrectSuggestionForMisspelledWord(const QString &word) { /* Auto correcting mispelled words is really not a great idea */ Q_UNUSED(word) return QString(); #if 0 QStringList words = m_speller->suggest(word); if (words.size() > 0) { return words[0]; } else { return QString(); } return QString(); #endif } void SpellCheck::guessesForWord(const QString &word, const QString &context, QStringList &guesses) { Q_UNUSED(context); if (!m_speller) { return; } QStringList words = m_speller->suggest(word); guesses = words; } bool SpellCheck::isGrammarCheckingEnabled() { return false; } void SpellCheck::toggleGrammarChecking() { } void SpellCheck::checkGrammarOfString(const QString &, QList &, int* badGrammarLocation, int* badGrammarLength) { Q_UNUSED(badGrammarLocation); Q_UNUSED(badGrammarLength); } bool SpellCheck::endOfWord(const QTextBoundaryFinder::BoundaryReasons &reasons, const QTextBoundaryFinder::BoundaryType &type) { #if QT_VERSION < 0x050000 Q_UNUSED(type) return reasons & QTextBoundaryFinder::EndWord; #else return (reasons & QTextBoundaryFinder::EndOfItem) && (type & QTextBoundaryFinder::Word); #endif } bool SpellCheck::startOfWord(const QTextBoundaryFinder::BoundaryReasons &reasons, const QTextBoundaryFinder::BoundaryType &type) { #if QT_VERSION < 0x050000 Q_UNUSED(type) return reasons & QTextBoundaryFinder::StartWord; #else return (reasons & QTextBoundaryFinder::StartOfItem) && (type & QTextBoundaryFinder::Word); #endif } qupzilla-1.6.0/src/lib/plugins/qtwebkit/spellcheck/spellcheck.h000066400000000000000000000041601226107126500246350ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SPELLCHECKER_H #define SPELLCHECKER_H #include #include "qwebkitplatformplugin.h" class Speller; class SpellCheck : public QWebSpellChecker { Q_OBJECT public: explicit SpellCheck(); bool isContinousSpellCheckingEnabled() const; void toggleContinousSpellChecking(); void learnWord(const QString &word); void ignoreWordInSpellDocument(const QString &word); void checkSpellingOfString(const QString &word, int* misspellingLocation, int* misspellingLength); QString autoCorrectSuggestionForMisspelledWord(const QString &word); void guessesForWord(const QString &word, const QString &context, QStringList &guesses); bool isGrammarCheckingEnabled(); void toggleGrammarChecking(); void checkGrammarOfString(const QString &, QList &, int* badGrammarLocation, int* badGrammarLength); private: bool endOfWord(const QTextBoundaryFinder::BoundaryReasons &reasons, const QTextBoundaryFinder::BoundaryType &type); bool startOfWord(const QTextBoundaryFinder::BoundaryReasons &reasons, const QTextBoundaryFinder::BoundaryType &type); Speller* m_speller; }; #endif // SPELLCHECKER_H qupzilla-1.6.0/src/lib/plugins/qtwebkit/spellcheck/spellcheckdialog.cpp000066400000000000000000000075501226107126500263560ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "spellcheckdialog.h" #include "ui_spellcheckdialog.h" #include "settings.h" #include "speller.h" #include "qztools.h" #include "mainapplication.h" #include #include #include #include #include SpellCheckDialog::SpellCheckDialog(QWidget* parent) : QDialog(parent) , ui(new Ui::SpellCheckDialog) , m_listChanged(false) { ui->setupUi(this); ui->dictPath->setText(mApp->speller()->dictionaryPath()); QFile file(mApp->currentProfilePath() + "userdictionary.txt"); if (!file.open(QFile::ReadOnly)) { qWarning() << "SpellCheckDialog: Cannot open file" << file.fileName() << "for reading!"; } else { QString word; QTextStream stream(&file); stream.setCodec("UTF-8"); while (!stream.atEnd()) { stream >> word; word = word.trimmed(); if (!word.isEmpty()) { ui->userDictList->insertItem(0, word); } } file.close(); } connect(ui->changeDictPath, SIGNAL(clicked()), this, SLOT(changeDictionaryPath())); connect(ui->add, SIGNAL(clicked()), this, SLOT(addUserWord())); connect(ui->remove, SIGNAL(clicked()), this, SLOT(removeUserWord())); connect(ui->buttonBox, SIGNAL(accepted()), this, SLOT(saveSettings())); ui->userDictList->setFocus(); } void SpellCheckDialog::changeDictionaryPath() { const QString path = QzTools::getExistingDirectory("SpellCheckDialog-Directory", this, tr("Choose dictionary path..."), ui->dictPath->text()); if (!path.isEmpty()) { ui->dictPath->setText(path); } } void SpellCheckDialog::addUserWord() { const QString word = QInputDialog::getText(0, tr("Add new word..."), tr("Add new word:")); if (!word.isEmpty()) { ui->userDictList->addItem(word); ui->userDictList->setCurrentRow(ui->userDictList->count() - 1); m_listChanged = true; } } void SpellCheckDialog::removeUserWord() { QListWidgetItem* item = ui->userDictList->currentItem(); if (!item) { return; } m_listChanged = true; delete item; } void SpellCheckDialog::saveSettings() { // Save only when changed if (ui->dictPath->text() != mApp->speller()->dictionaryPath()) { Settings settings; settings.beginGroup("SpellCheck"); settings.setValue("dictionaryPath", ui->dictPath->text()); settings.endGroup(); } if (!m_listChanged) { return; } QFile file(mApp->currentProfilePath() + "userdictionary.txt"); if (!file.open(QFile::WriteOnly | QFile::Truncate)) { qWarning() << "SpellCheckDialog: Cannot open file" << file.fileName() << "for reading!"; return; } QTextStream stream(&file); stream.setCodec("UTF-8"); int count = ui->userDictList->count(); for (int i = 0; i < count; ++i) { const QString word = ui->userDictList->item(i)->text(); stream << word << endl; } file.close(); } SpellCheckDialog::~SpellCheckDialog() { delete ui; } qupzilla-1.6.0/src/lib/plugins/qtwebkit/spellcheck/spellcheckdialog.h000066400000000000000000000025451226107126500260220ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SPELLCHECKDIALOG_H #define SPELLCHECKDIALOG_H #include #include "qz_namespace.h" namespace Ui { class SpellCheckDialog; } class QT_QUPZILLA_EXPORT SpellCheckDialog : public QDialog { Q_OBJECT public: explicit SpellCheckDialog(QWidget* parent = 0); ~SpellCheckDialog(); private slots: void changeDictionaryPath(); void addUserWord(); void removeUserWord(); void saveSettings(); private: Ui::SpellCheckDialog* ui; bool m_listChanged; }; #endif // SPELLCHECKDIALOG_H qupzilla-1.6.0/src/lib/plugins/qtwebkit/spellcheck/spellcheckdialog.ui000066400000000000000000000100321226107126500261760ustar00rootroot00000000000000 SpellCheckDialog 0 0 441 305 SpellCheck <b>Dictionary path</b> false Change... Qt::Horizontal QSizePolicy::Fixed 40 20 <b>User dictionary</b> Qt::Vertical 20 40 Add Remove Using Hunspell library Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok MacToolButton QToolButton
    mactoolbutton.h
    buttonBox accepted() SpellCheckDialog accept() 248 254 157 274 buttonBox rejected() SpellCheckDialog reject() 316 260 286 274
    qupzilla-1.6.0/src/lib/plugins/qtwebkit/spellcheck/speller.cpp000066400000000000000000000247001226107126500245230ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "speller.h" #include "spellcheckdialog.h" #include "settings.h" #include "mainapplication.h" #include "qztools.h" #include #include #include #include #include #include #include #include #include #include #include #include Speller::Speller(QObject* parent) : QObject(parent) , m_textCodec(0) , m_hunspell(0) , m_enabled(false) { loadSettings(); } bool Speller::isEnabled() const { return m_enabled; } void Speller::loadSettings() { Settings settings; settings.beginGroup("SpellCheck"); m_enabled = settings.value("enabled", true).toBool(); m_dictionaryPath = settings.value("dictionaryPath", getDictionaryPath()).toString(); m_language.code = settings.value("language", mApp->currentLanguage()).toString(); m_language.name = nameForLanguage(m_language.code); settings.endGroup(); m_userDictionary.setFileName(mApp->currentProfilePath() + "userdictionary.txt"); if (m_enabled) { initialize(); } } void Speller::initialize() { delete m_hunspell; m_hunspell = 0; if (m_dictionaryPath.isEmpty()) { qWarning() << "SpellCheck: Cannot locate dictionary path!"; return; } QString dictionary = m_dictionaryPath + m_language.code; if (!dictionaryExists(dictionary)) { qWarning() << "SpellCheck: Dictionaries for" << dictionary << "doesn't exists!"; return; } const QString dicPath = dictionary + ".dic"; const QString affPath = dictionary + ".aff"; m_hunspell = new Hunspell(affPath.toLocal8Bit().constData(), dicPath .toLocal8Bit().constData()); m_textCodec = QTextCodec::codecForName(m_hunspell->get_dic_encoding()); if (m_userDictionary.exists()) { if (!m_userDictionary.open(QFile::ReadOnly)) { qWarning() << "SpellCheck: Cannot open" << m_userDictionary.fileName() << "for reading!"; } else { QString word; QTextStream stream(&m_userDictionary); stream.setCodec("UTF-8"); while (!stream.atEnd()) { stream >> word; putWord(word); } } m_userDictionary.close(); } qDebug() << "SpellCheck: Language =" << language().code << (m_textCodec ? m_textCodec->name() : "invalid text codec"); } Speller::Language Speller::language() const { return m_language; } QVector Speller::availableLanguages() { if (!m_availableLanguages.isEmpty()) { return m_availableLanguages; } QDirIterator it(m_dictionaryPath, QStringList("*.dic"), QDir::Files); while (it.hasNext()) { const QString affFilePath = it.next().replace(QLatin1String(".dic"), QLatin1String(".aff")); if (!QFile(affFilePath).exists()) { continue; } Language lang; lang.code = it.fileInfo().baseName(); lang.name = nameForLanguage(lang.code); if (!m_availableLanguages.contains(lang)) { m_availableLanguages.append(lang); } } return m_availableLanguages; } QString Speller::dictionaryPath() const { return m_dictionaryPath; } void Speller::populateContextMenu(QMenu* menu, const QWebHitTestResult &hitTest) { m_element = hitTest.element(); if (!m_enabled || m_element.isNull() || m_element.attribute(QLatin1String("type")) == QLatin1String("password")) { return; } const QString text = m_element.evaluateJavaScript("this.value").toString(); const int pos = m_element.evaluateJavaScript("this.selectionStart").toInt() + 1; QTextBoundaryFinder finder = QTextBoundaryFinder(QTextBoundaryFinder::Word, text); finder.setPosition(pos); m_startPos = finder.toPreviousBoundary(); m_endPos = finder.toNextBoundary(); const QString word = text.mid(m_startPos, m_endPos - m_startPos).trimmed(); if (!isValidWord(word) || !isMisspelled(word)) { return; } const int limit = 6; QStringList suggests = suggest(word); int count = suggests.count() > limit ? limit : suggests.count(); QFont boldFont = menu->font(); boldFont.setBold(true); for (int i = 0; i < count; ++i) { QAction* act = menu->addAction(suggests.at(i), this, SLOT(replaceWord())); act->setData(suggests.at(i)); act->setFont(boldFont); } if (count == 0) { menu->addAction(tr("No suggestions"))->setEnabled(false); } menu->addAction(tr("Add to dictionary"), this, SLOT(addToDictionary()))->setData(word); menu->addSeparator(); } void Speller::addToDictionary() { if (QAction* act = qobject_cast(sender())) { const QString word = act->data().toString(); putWord(word); if (!m_userDictionary.open(QFile::WriteOnly | QFile::Append)) { qWarning() << "SpellCheck: Cannot open file" << m_userDictionary.fileName() << "for writing!"; return; } QTextStream stream(&m_userDictionary); stream.setCodec("UTF-8"); stream << word << endl; m_userDictionary.close(); } } void Speller::replaceWord() { if (m_element.isNull()) { return; } if (QAction* act = qobject_cast(sender())) { QString word = act->data().toString(); QString text = m_element.evaluateJavaScript("this.value").toString(); const int cursorPos = m_element.evaluateJavaScript("this.selectionStart").toInt(); text.replace(m_startPos, m_endPos - m_startPos, word); text.replace(QLatin1Char('\\'), QLatin1String("\\\\")); text.replace(QLatin1Char('\n'), QLatin1String("\\n")); text.replace(QLatin1Char('\''), QLatin1String("\\'")); m_element.evaluateJavaScript(QString("this.value='%1'").arg(text)); m_element.evaluateJavaScript(QString("this.selectionStart=this.selectionEnd=%1").arg(cursorPos)); } } void Speller::showSettings() { SpellCheckDialog dialog; if (dialog.exec() == QDialog::Accepted) { loadSettings(); } } void Speller::changeLanguage() { QAction* act = qobject_cast(sender()); if (!act) { return; } Language lang = act->data().value(); Settings settings; settings.beginGroup("SpellCheck"); settings.setValue("language", lang.code); settings.endGroup(); loadSettings(); } void Speller::putWord(const QString &word) { if (!m_hunspell || !m_textCodec || word.isEmpty()) { return; } const QByteArray data = m_textCodec->fromUnicode(word); if (m_hunspell->add(data.constData()) != 0) { qWarning() << "SpellCheck: Error while adding" << word << "word!"; } } bool Speller::isMisspelled(const QString &string) { if (!m_hunspell || !m_textCodec) { return false; } const QByteArray data = m_textCodec->fromUnicode(string); return m_hunspell->spell(data.constData()) == 0; } QStringList Speller::suggest(const QString &word) { if (!m_hunspell || !m_textCodec) { return QStringList(); } char** suggestions; const QByteArray data = m_textCodec->fromUnicode(word); int count = m_hunspell->suggest(&suggestions, data.constData()); QStringList suggests; for (int i = 0; i < count; ++i) { suggests.append(m_textCodec->toUnicode(suggestions[i])); } m_hunspell->free_list(&suggestions, count); return suggests; } bool Speller::isValidWord(const QString &str) { if (str.isEmpty() || (str.length() == 1 && !str[0].isLetter())) { return false; } const int length = str.length(); for (int i = 0; i < length; ++i) { if (!str[i].isNumber()) { return true; } } return false; } void Speller::populateLanguagesMenu() { QMenu* menu = qobject_cast(sender()); if (!menu || !menu->isEmpty()) { return; } const QVector langs = availableLanguages(); foreach (const Language &lang, langs) { QAction* act = menu->addAction(lang.name, this, SLOT(changeLanguage())); act->setCheckable(true); act->setChecked(m_language == lang); act->setData(QVariant::fromValue(lang)); } if (menu->isEmpty()) { QAction* act = menu->addAction(tr("No suggestions")); act->setEnabled(false); } menu->addSeparator(); menu->addAction(tr("Settings"), this, SLOT(showSettings())); } void Speller::toggleEnableSpellChecking() { m_enabled = !m_enabled; Settings settings; settings.beginGroup("SpellCheck"); settings.setValue("enabled", m_enabled); settings.endGroup(); loadSettings(); } bool Speller::dictionaryExists(const QString &path) const { return QFile(path + ".dic").exists() && QFile(path + ".aff").exists(); } QString Speller::getDictionaryPath() const { #ifdef QZ_WS_X11 const QString defaultDicPath = "/usr/share/hunspell/"; #else const QString defaultDicPath = mApp->DATADIR + "hunspell/"; #endif QString dicPath = QString::fromLocal8Bit(qgetenv("DICPATH")).trimmed(); if (!dicPath.isEmpty() && !dicPath.endsWith(QLatin1Char('/'))) { dicPath.append(QLatin1Char('/')); } return dicPath.isEmpty() ? defaultDicPath : dicPath; } QString Speller::nameForLanguage(const QString &code) const { QLocale loc = QLocale(code); QString name = QLocale::languageToString(loc.language()); if (loc.country() != QLocale::AnyCountry) { name.append(" / " + QLocale::countryToString(loc.country())); } return name; } Speller::~Speller() { delete m_hunspell; } qupzilla-1.6.0/src/lib/plugins/qtwebkit/spellcheck/speller.h000066400000000000000000000054361226107126500241750ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SPELLER_H #define SPELLER_H #include #include #include #include #include "qz_namespace.h" class QTextCodec; class Hunspell; class QMenu; class QWebHitTestResult; class QT_QUPZILLA_EXPORT Speller : public QObject { Q_OBJECT public: struct Language { QString code; QString name; bool operator==(const Language &other) { return this->name == other.name && this->name.left(2) == other.name.left(2); // Compare only first two chars of name. // So "cs_CZ - CzechRepublic" == "cs - CzechRepublic" } }; explicit Speller(QObject* parent); ~Speller(); bool isEnabled() const; void loadSettings(); Language language() const; QVector availableLanguages(); QString dictionaryPath() const; void populateContextMenu(QMenu* menu, const QWebHitTestResult &hitTest); bool isMisspelled(const QString &string); QStringList suggest(const QString &word); static bool isValidWord(const QString &str); public slots: void populateLanguagesMenu(); void toggleEnableSpellChecking(); private slots: void addToDictionary(); void replaceWord(); void showSettings(); void changeLanguage(); private: void initialize(); void putWord(const QString &word); bool dictionaryExists(const QString &path) const; QString getDictionaryPath() const; QString nameForLanguage(const QString &code) const; QString m_dictionaryPath; QTextCodec* m_textCodec; Hunspell* m_hunspell; QFile m_userDictionary; Language m_language; QVector m_availableLanguages; bool m_enabled; // Replacing word QWebElement m_element; int m_startPos; int m_endPos; }; // Hint to QVector to use std::realloc on item moving Q_DECLARE_TYPEINFO(Speller::Language, Q_MOVABLE_TYPE); Q_DECLARE_METATYPE(Speller::Language) #endif // SPELLER_H qupzilla-1.6.0/src/lib/plugins/speeddial.cpp000066400000000000000000000237201226107126500210410ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "speeddial.h" #include "mainapplication.h" #include "pagethumbnailer.h" #include "settings.h" #include "qztools.h" #include #include #include #include #include #include #include #define ENSURE_LOADED if (!m_loaded) loadSettings(); SpeedDial::SpeedDial(QObject* parent) : QObject(parent) , m_maxPagesInRow(4) , m_sizeOfSpeedDials(231) , m_loaded(false) , m_regenerateScript(true) { } void SpeedDial::loadSettings() { m_loaded = true; Settings settings; settings.beginGroup("SpeedDial"); QString allPages = settings.value("pages", QString()).toString(); m_backgroundImage = settings.value("background", QString()).toString(); m_backgroundImageSize = settings.value("backsize", "auto").toString(); m_maxPagesInRow = settings.value("pagesrow", 4).toInt(); m_sizeOfSpeedDials = settings.value("sdsize", 231).toInt(); m_sdcentered = settings.value("sdcenter", 0).toInt(); settings.endGroup(); if (allPages.isEmpty()) { allPages = "url:\"http://www.qupzilla.com\"|title:\"QupZilla\";" "url:\"http://blog.qupzilla.com\"|title:\"QupZilla Blog\";" "url:\"https://github.com/QupZilla/qupzilla\"|title:\"QupZilla GitHub\";" "url:\"https://duckduckgo.com\"|title:\"DuckDuckGo\";"; } changed(allPages); m_thumbnailsDir = mApp->currentProfilePath() + "thumbnails/"; // If needed, create thumbnails directory if (!QDir(m_thumbnailsDir).exists()) { QDir(mApp->currentProfilePath()).mkdir("thumbnails"); } } void SpeedDial::saveSettings() { ENSURE_LOADED; if (m_webPages.isEmpty()) { return; } Settings settings; settings.beginGroup("SpeedDial"); settings.setValue("pages", generateAllPages()); settings.setValue("background", m_backgroundImage); settings.setValue("backsize", m_backgroundImageSize); settings.setValue("pagesrow", m_maxPagesInRow); settings.setValue("sdsize", m_sizeOfSpeedDials); settings.setValue("sdcenter", m_sdcentered); settings.endGroup(); } SpeedDial::Page SpeedDial::pageForUrl(const QUrl &url) { ENSURE_LOADED; const QString urlString = url.toString(); foreach (const Page &page, m_webPages) { if (page.url == urlString) { return page; } } return Page(); } QUrl SpeedDial::urlForShortcut(int key) { ENSURE_LOADED; if (key < 0 || m_webPages.count() <= key) { return QUrl(); } return QUrl::fromEncoded(m_webPages.at(key).url.toUtf8()); } void SpeedDial::addWebFrame(QWebFrame* frame) { if (!m_webFrames.contains(frame)) { m_webFrames.append(frame); } } void SpeedDial::addPage(const QUrl &url, const QString &title) { ENSURE_LOADED; if (url.isEmpty()) { return; } Page page; page.title = escapeTitle(title); page.url = escapeUrl(url.toString()); m_webPages.append(page); m_regenerateScript = true; foreach (QWebFrame* frame, cleanFrames()) { frame->page()->triggerAction(QWebPage::Reload); } emit pagesChanged(); } void SpeedDial::removePage(const Page &page) { ENSURE_LOADED; if (page.url.isEmpty()) { return; } removeImageForUrl(page.url); m_webPages.removeAll(page); m_regenerateScript = true; foreach (QWebFrame* frame, cleanFrames()) { frame->page()->triggerAction(QWebPage::Reload); } emit pagesChanged(); } int SpeedDial::pagesInRow() { ENSURE_LOADED; return m_maxPagesInRow; } int SpeedDial::sdSize() { ENSURE_LOADED; return m_sizeOfSpeedDials; } int SpeedDial::sdCntr() { ENSURE_LOADED; return m_sdcentered; } QString SpeedDial::backgroundImage() { ENSURE_LOADED; return m_backgroundImage; } QString SpeedDial::backgroundImageSize() { ENSURE_LOADED; return m_backgroundImageSize; } QString SpeedDial::initialScript() { ENSURE_LOADED; if (!m_regenerateScript) { return m_initialScript; } m_regenerateScript = false; m_initialScript.clear(); foreach (const Page &page, m_webPages) { QString imgSource = m_thumbnailsDir + QCryptographicHash::hash(page.url.toUtf8(), QCryptographicHash::Md4).toHex() + ".png"; if (!QFile(imgSource).exists()) { loadThumbnail(page.url); imgSource = "qrc:html/loading.gif"; if (page.url.isEmpty()) { imgSource.clear(); } } else { imgSource = QUrl::fromLocalFile(imgSource).toString(); } m_initialScript.append(QString("addBox('%1', '%2', '%3');\n").arg(page.url, page.title, imgSource)); } return m_initialScript; } void SpeedDial::changed(const QString &allPages) { if (allPages.isEmpty()) { return; } const QStringList entries = allPages.split(QLatin1String("\";"), QString::SkipEmptyParts); m_webPages.clear(); foreach (const QString &entry, entries) { if (entry.isEmpty()) { continue; } const QStringList tmp = entry.split(QLatin1String("\"|"), QString::SkipEmptyParts); if (tmp.count() != 2) { continue; } Page page; page.url = tmp.at(0).mid(5); page.title = tmp.at(1).mid(7); m_webPages.append(page); } m_regenerateScript = true; emit pagesChanged(); } void SpeedDial::loadThumbnail(const QString &url, bool loadTitle) { if (url.isEmpty()) { return; } PageThumbnailer* thumbnailer = new PageThumbnailer(this); thumbnailer->setUrl(QUrl::fromEncoded(url.toUtf8())); thumbnailer->setLoadTitle(loadTitle); connect(thumbnailer, SIGNAL(thumbnailCreated(QPixmap)), this, SLOT(thumbnailCreated(QPixmap))); thumbnailer->start(); } void SpeedDial::removeImageForUrl(const QString &url) { QString fileName = m_thumbnailsDir + QCryptographicHash::hash(url.toUtf8(), QCryptographicHash::Md4).toHex() + ".png"; if (QFile(fileName).exists()) { QFile(fileName).remove(); } } QString SpeedDial::getOpenFileName() { const QString fileTypes = QString("%3(*.png *.jpg *.jpeg *.bmp *.gif *.svg *.tiff)").arg(tr("Image files")); const QString image = QzTools::getOpenFileName("SpeedDial-GetOpenFileName", 0, tr("Select image..."), QDir::homePath(), fileTypes); if (image.isEmpty()) { return image; } return QUrl::fromLocalFile(image).toEncoded(); } QString SpeedDial::urlFromUserInput(const QString &url) { return QUrl::fromUserInput(url).toString(); } void SpeedDial::setBackgroundImage(const QString &image) { m_backgroundImage = image; } void SpeedDial::setBackgroundImageSize(const QString &size) { m_backgroundImageSize = size; } void SpeedDial::setPagesInRow(int count) { m_maxPagesInRow = count; } void SpeedDial::setSdSize(int count) { m_sizeOfSpeedDials = count; } void SpeedDial::setSdCentered(int cntr) { m_sdcentered = cntr; } void SpeedDial::thumbnailCreated(const QPixmap &pixmap) { PageThumbnailer* thumbnailer = qobject_cast(sender()); if (!thumbnailer) { return; } bool loadTitle = thumbnailer->loadTitle(); QString title = thumbnailer->title(); QString url = thumbnailer->url().toString(); QString fileName = m_thumbnailsDir + QCryptographicHash::hash(url.toUtf8(), QCryptographicHash::Md4).toHex() + ".png"; if (pixmap.isNull()) { fileName = "qrc:/html/broken-page.png"; title = tr("Unable to load"); loadTitle = true; } else { if (!pixmap.save(fileName, "PNG")) { qWarning() << "SpeedDial::thumbnailCreated Cannot save thumbnail to " << fileName; } fileName = QUrl::fromLocalFile(fileName).toString(); } m_regenerateScript = true; cleanFrames(); foreach (QWebFrame* frame, cleanFrames()) { frame->evaluateJavaScript(QString("setImageToUrl('%1', '%2');").arg(escapeUrl(url), escapeTitle(fileName))); if (loadTitle) { frame->evaluateJavaScript(QString("setTitleToUrl('%1', '%2');").arg(escapeUrl(url), escapeTitle(title))); } } thumbnailer->deleteLater(); } QString SpeedDial::escapeTitle(QString title) const { title.replace(QLatin1Char('"'), QLatin1String(""")); title.replace(QLatin1Char('\''), QLatin1String("'")); return title; } QString SpeedDial::escapeUrl(QString url) const { url.remove(QLatin1Char('"')); url.remove(QLatin1Char('\'')); return url; } QList SpeedDial::cleanFrames() { QList list; for (int i = 0; i < m_webFrames.count(); i++) { QWebFrame* frame = m_webFrames.at(i).data(); if (!frame || frame->url().toString() != QLatin1String("qupzilla:speeddial")) { m_webFrames.removeAt(i); i--; continue; } list.append(frame); } return list; } QString SpeedDial::generateAllPages() { QString allPages; foreach (const Page &page, m_webPages) { const QString string = QString("url:\"%1\"|title:\"%2\";").arg(page.url, page.title); allPages.append(string); } return allPages; } qupzilla-1.6.0/src/lib/plugins/speeddial.h000066400000000000000000000054701226107126500205100ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SPEEDDIAL_H #define SPEEDDIAL_H #include #include #include "qz_namespace.h" class QUrl; class QWebFrame; class QPixmap; class PageThumbnailer; class QT_QUPZILLA_EXPORT SpeedDial : public QObject { Q_OBJECT public: struct Page { QString title; QString url; bool operator==(const Page &other) { return (this->title == other.title && this->url == other.url); } }; explicit SpeedDial(QObject* parent = 0); void loadSettings(); void saveSettings(); Page pageForUrl(const QUrl &url); QUrl urlForShortcut(int key); void addWebFrame(QWebFrame* frame); void addPage(const QUrl &url, const QString &title); void removePage(const Page &page); int pagesInRow(); int sdSize(); int sdCntr(); QString backgroundImage(); QString backgroundImageSize(); QString initialScript(); signals: void pagesChanged(); public slots: void changed(const QString &allPages); void loadThumbnail(const QString &url, bool loadTitle = false); void removeImageForUrl(const QString &url); QString getOpenFileName(); QString urlFromUserInput(const QString &url); void setBackgroundImage(const QString &image); void setBackgroundImageSize(const QString &size); void setPagesInRow(int count); void setSdSize(int count); void setSdCentered(int cntr); private slots: void thumbnailCreated(const QPixmap &pixmap); private: QString escapeTitle(QString string) const; QString escapeUrl(QString url) const; QList cleanFrames(); QString generateAllPages(); QString m_initialScript; QString m_thumbnailsDir; QString m_backgroundImage; QString m_backgroundImageSize; int m_maxPagesInRow; int m_sizeOfSpeedDials; int m_sdcentered; QList > m_webFrames; QList m_webPages; bool m_loaded; bool m_regenerateScript; }; #endif // SPEEDDIAL_H qupzilla-1.6.0/src/lib/plugins/webpluginfactory.cpp000066400000000000000000000064431226107126500224760ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "webpluginfactory.h" #include "clicktoflash.h" #include "mainapplication.h" #include "pluginproxy.h" #include "adblockmanager.h" #include "webpage.h" #include #include WebPluginFactory::WebPluginFactory(WebPage* page) : QWebPluginFactory(page) , m_page(page) { } QObject* WebPluginFactory::create(const QString &mimeType, const QUrl &url, const QStringList &argumentNames, const QStringList &argumentValues) const { if (url.isEmpty()) { return new QObject(); } // AdBlock AdBlockManager* manager = AdBlockManager::instance(); QNetworkRequest request(url); request.setAttribute(QNetworkRequest::Attribute(QNetworkRequest::User + 150), QString("object")); if (manager->isEnabled() && manager->block(request)) { return new QObject(); } QString mime = mimeType.trimmed(); // Fixing bad behaviour when mimeType contains spaces if (mime.isEmpty()) { if (url.toString().endsWith(QLatin1String(".swf"))) { mime = "application/x-shockwave-flash"; } else { return 0; } } if (mime != QLatin1String("application/x-shockwave-flash")) { if (mime != QLatin1String("application/futuresplash") && mime != QLatin1String("application/x-java-applet")) { qDebug() << "WebPluginFactory::create creating object of mimeType : " << mime; } return 0; } if (!mApp->plugins()->c2f_isEnabled()) { return 0; } // Click2Flash whitelist QStringList whitelist = mApp->plugins()->c2f_getWhiteList(); if (whitelist.contains(url.host()) || whitelist.contains("www." + url.host()) || whitelist.contains(url.host().remove(QLatin1String("www.")))) { return 0; } // Click2Flash already accepted if (ClickToFlash::isAlreadyAccepted(url, argumentNames, argumentValues)) { return 0; } ClickToFlash* ctf = new ClickToFlash(url, argumentNames, argumentValues, m_page); return ctf; } QList WebPluginFactory::plugins() const { QList plugins; return plugins; // QList plugins; // QWebPluginFactory::Plugin plugin; // QWebPluginFactory::MimeType mimeType; // mimeType.fileExtensions << "swf"; // mimeType.name = "application/x-shockwave-flash"; // plugin.name = "ClickToFlashPlugin"; // plugin.mimeTypes.append(mimeType); // plugins.append(plugin); // return plugins; } qupzilla-1.6.0/src/lib/plugins/webpluginfactory.h000066400000000000000000000025341226107126500221400ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef WEB_PLUGIN_FACTORY_H #define WEB_PLUGIN_FACTORY_H #include #include "qz_namespace.h" class WebPage; class QT_QUPZILLA_EXPORT WebPluginFactory : public QWebPluginFactory { public: WebPluginFactory(WebPage* page); virtual QObject* create(const QString &mimeType, const QUrl &url, const QStringList &argumentNames, const QStringList &argumentValues) const; QList plugins() const; private: WebPage* m_page; }; #endif // WEB_PLUGIN_FACTORY_H qupzilla-1.6.0/src/lib/popupwindow/000077500000000000000000000000001226107126500173115ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/popupwindow/popuplocationbar.cpp000066400000000000000000000073061226107126500234040ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "popuplocationbar.h" #include "popupwebview.h" #include "toolbutton.h" #include "qztools.h" #include "iconprovider.h" #include "bookmarkicon.h" #include "autofillicon.h" #include "rssicon.h" #include "webpage.h" #include #include class QT_QUPZILLA_EXPORT PopupSiteIcon : public QWidget { public: explicit PopupSiteIcon(QWidget* parent = 0) : QWidget(parent) { } void setIcon(const QIcon &icon) { m_icon = QIcon(icon.pixmap(16, 16)); repaint(); } private: QIcon m_icon; void paintEvent(QPaintEvent*) { QPainter p(this); m_icon.paint(&p, rect()); } }; PopupLocationBar::PopupLocationBar(QWidget* parent) : LineEdit(parent) , m_view(0) { m_siteIcon = new PopupSiteIcon(this); m_siteIcon->setIcon(qIconProvider->emptyWebIcon()); m_siteIcon->setFixedSize(26, 26); m_bookmarkIcon = new BookmarkIcon(this); m_rssIcon = new RssIcon(this); m_autofillIcon = new AutoFillIcon(this); m_loadingAnimation = new QLabel(this); QMovie* movie = new QMovie(":icons/other/progress.gif", QByteArray(), m_loadingAnimation); m_loadingAnimation->setMovie(movie); m_loadingAnimation->setFixedSize(16, 26); QWidget* rightSpacer = new QWidget(this); rightSpacer->setFixedWidth(3); addWidget(m_siteIcon, LineEdit::LeftSide); addWidget(m_autofillIcon, LineEdit::RightSide); addWidget(m_bookmarkIcon, LineEdit::RightSide); addWidget(m_rssIcon, LineEdit::RightSide); addWidget(m_loadingAnimation, LineEdit::RightSide); addWidget(rightSpacer, LineEdit::RightSide); setLeftMargin(20); setFixedHeight(26); setReadOnly(true); // Hide icons by default m_rssIcon->hide(); m_autofillIcon->hide(); } void PopupLocationBar::setView(PopupWebView* view) { m_view = view; m_bookmarkIcon->setWebView(m_view); m_rssIcon->setWebView(m_view); m_autofillIcon->setWebView(m_view); connect(m_view, SIGNAL(rssChanged(bool)), this, SLOT(showRSSIcon(bool))); } void PopupLocationBar::startLoading() { m_loadingAnimation->show(); m_loadingAnimation->movie()->start(); m_autofillIcon->hide(); updateTextMargins(); } void PopupLocationBar::stopLoading() { m_loadingAnimation->hide(); m_loadingAnimation->movie()->stop(); m_bookmarkIcon->checkBookmark(m_view->url()); WebPage* page = qobject_cast(m_view->page()); if (page && page->hasMultipleUsernames()) { m_autofillIcon->setFormData(page->autoFillData()); m_autofillIcon->show(); } updateTextMargins(); } void PopupLocationBar::showUrl(const QUrl &url) { setText(QzTools::urlEncodeQueryString(url)); setCursorPosition(0); } void PopupLocationBar::showSiteIcon() { m_siteIcon->setIcon(m_view->icon()); } void PopupLocationBar::showRSSIcon(bool state) { m_rssIcon->setVisible(state); updateTextMargins(); } qupzilla-1.6.0/src/lib/popupwindow/popuplocationbar.h000066400000000000000000000034511226107126500230460ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef POPUPLOCATIONBAR_H #define POPUPLOCATIONBAR_H #include "qz_namespace.h" #include "lineedit.h" class QUrl; class QLabel; class PopupSiteIcon; class PopupWebView; class AutoFillIcon; class BookmarkIcon; class RssIcon; class QT_QUPZILLA_EXPORT PopupLocationBar : public LineEdit { Q_OBJECT Q_PROPERTY(QSize fixedsize READ size WRITE setFixedSize) Q_PROPERTY(int fixedwidth READ width WRITE setFixedWidth) Q_PROPERTY(int fixedheight READ height WRITE setFixedHeight) public: explicit PopupLocationBar(QWidget* parent = 0); void setView(PopupWebView* view); void startLoading(); void stopLoading(); public slots: void showUrl(const QUrl &url); void showSiteIcon(); void showRSSIcon(bool state); private: PopupWebView* m_view; QLabel* m_loadingAnimation; PopupSiteIcon* m_siteIcon; AutoFillIcon* m_autofillIcon; BookmarkIcon* m_bookmarkIcon; RssIcon* m_rssIcon; }; #endif // POPUPLOCATIONBAR_H qupzilla-1.6.0/src/lib/popupwindow/popupstatusbarmessage.cpp000066400000000000000000000055231226107126500244630ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "popupstatusbarmessage.h" #include "popupwindow.h" #include "popupwebview.h" #include "webpage.h" #include "statusbarmessage.h" #include "mainapplication.h" #include #include #include PopupStatusBarMessage::PopupStatusBarMessage(PopupWindow* mainClass) : m_popupWindow(mainClass) , m_statusBarText(new TipLabel(mainClass)) { } void PopupStatusBarMessage::showMessage(const QString &message) { if (m_popupWindow->statusBar()->isVisible()) { m_popupWindow->statusBar()->showMessage(message); } #ifdef Q_OS_WIN else if (mApp->activeWindow() == m_popupWindow) { #else else { #endif PopupWebView* view = m_popupWindow->webView(); QWebFrame* mainFrame = view->page()->mainFrame(); int horizontalScrollSize = 0; int verticalScrollSize = 0; const int scrollbarSize = m_popupWindow->style()->pixelMetric(QStyle::PM_ScrollBarExtent); if (mainFrame->scrollBarMaximum(Qt::Horizontal)) { horizontalScrollSize = scrollbarSize; } if (mainFrame->scrollBarMaximum(Qt::Vertical)) { verticalScrollSize = scrollbarSize; } m_statusBarText->setText(message); m_statusBarText->setMaximumWidth(view->width() - verticalScrollSize); m_statusBarText->resize(m_statusBarText->sizeHint()); QPoint position; position.setY(view->height() - horizontalScrollSize - m_statusBarText->height()); QRect statusRect = QRect(view->mapToGlobal(QPoint(0, position.y())), m_statusBarText->size()); if (statusRect.contains(QCursor::pos())) { position.setY(position.y() - m_statusBarText->height()); } m_statusBarText->move(view->mapToGlobal(position)); m_statusBarText->show(view); } } void PopupStatusBarMessage::clearMessage() { if (m_popupWindow->statusBar()->isVisible()) { m_popupWindow->statusBar()->showMessage(QString()); } else { m_statusBarText->hideDelayed(); } } qupzilla-1.6.0/src/lib/popupwindow/popupstatusbarmessage.h000066400000000000000000000024061226107126500241250ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef POPUPSTATUSBARMESSAGE_H #define POPUPSTATUSBARMESSAGE_H #include "qz_namespace.h" class PopupWindow; class TipLabel; class QT_QUPZILLA_EXPORT PopupStatusBarMessage { public: explicit PopupStatusBarMessage(PopupWindow* mainClass); void showMessage(const QString &message); void clearMessage(); private: PopupWindow* m_popupWindow; TipLabel* m_statusBarText; }; #endif // POPUPSTATUSBARMESSAGE_H qupzilla-1.6.0/src/lib/popupwindow/popupwebpage.cpp000066400000000000000000000123421226107126500225150ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "popupwebpage.h" #include "popupwebview.h" #include "popupwindow.h" #include "qupzilla.h" #include "tabwidget.h" #include "tabbedwebview.h" #include #include // Wrapper class to detect whether window is opened from JavaScript window.open method // It has to be done this way, because QtWebKit has really bad API when it comes to opening // new windows. // // Got an idea how to determine it from kWebKitPart. PopupWebPage::PopupWebPage(QWebPage::WebWindowType type, QupZilla* mainClass) : WebPage() , p_QupZilla(mainClass) , m_type(type) , m_createNewWindow(false) , m_menuBarVisible(false) , m_statusBarVisible(false) , m_toolBarVisible(false) , m_isLoading(false) , m_progress(0) { connect(this, SIGNAL(geometryChangeRequested(QRect)), this, SLOT(slotGeometryChangeRequested(QRect))); connect(this, SIGNAL(menuBarVisibilityChangeRequested(bool)), this, SLOT(slotMenuBarVisibilityChangeRequested(bool))); connect(this, SIGNAL(toolBarVisibilityChangeRequested(bool)), this, SLOT(slotToolBarVisibilityChangeRequested(bool))); connect(this, SIGNAL(statusBarVisibilityChangeRequested(bool)), this, SLOT(slotStatusBarVisibilityChangeRequested(bool))); connect(this, SIGNAL(loadStarted()), this, SLOT(slotLoadStarted())); connect(this, SIGNAL(loadProgress(int)), this, SLOT(slotLoadProgress(int))); connect(this, SIGNAL(loadFinished(bool)), this, SLOT(slotLoadFinished(bool))); QTimer::singleShot(0, this, SLOT(checkBehaviour())); } QupZilla* PopupWebPage::mainWindow() const { return p_QupZilla; } void PopupWebPage::slotGeometryChangeRequested(const QRect &rect) { if (rect.isValid()) { m_createNewWindow = true; } m_geometry = rect; } void PopupWebPage::slotMenuBarVisibilityChangeRequested(bool visible) { m_menuBarVisible = visible; } void PopupWebPage::slotStatusBarVisibilityChangeRequested(bool visible) { m_statusBarVisible = visible; } void PopupWebPage::slotToolBarVisibilityChangeRequested(bool visible) { m_toolBarVisible = visible; } void PopupWebPage::slotLoadStarted() { m_isLoading = true; m_progress = 0; } void PopupWebPage::slotLoadProgress(int prog) { m_progress = prog; } void PopupWebPage::slotLoadFinished(bool state) { Q_UNUSED(state) m_isLoading = false; m_progress = 0; } void PopupWebPage::checkBehaviour() { // If menubar/statusbar/toolbar visibility is explicitly set in window.open call, // at least one of those variables will be false. // If so, we should open new window. // But not when all visibilities are false, it occurs with target=_blank links if (!m_createNewWindow && (!m_menuBarVisible || !m_statusBarVisible || !m_toolBarVisible) && !(!m_menuBarVisible && !m_statusBarVisible && !m_toolBarVisible)) { m_createNewWindow = true; } if (m_createNewWindow) { PopupWebView* view = new PopupWebView; view->setWebPage(this); PopupWindow* popup = new PopupWindow(view); popup->setWindowGeometry(m_geometry); popup->setMenuBarVisibility(m_menuBarVisible); popup->setStatusBarVisibility(m_statusBarVisible); popup->setToolBarVisibility(m_toolBarVisible); popup->show(); if (m_isLoading) { view->fakeLoadingProgress(m_progress); } p_QupZilla->addDeleteOnCloseWidget(popup); disconnect(this, SIGNAL(geometryChangeRequested(QRect)), this, SLOT(slotGeometryChangeRequested(QRect))); disconnect(this, SIGNAL(menuBarVisibilityChangeRequested(bool)), this, SLOT(slotMenuBarVisibilityChangeRequested(bool))); disconnect(this, SIGNAL(toolBarVisibilityChangeRequested(bool)), this, SLOT(slotToolBarVisibilityChangeRequested(bool))); disconnect(this, SIGNAL(statusBarVisibilityChangeRequested(bool)), this, SLOT(slotStatusBarVisibilityChangeRequested(bool))); disconnect(this, SIGNAL(loadStarted()), this, SLOT(slotLoadStarted())); disconnect(this, SIGNAL(loadProgress(int)), this, SLOT(slotLoadProgress(int))); disconnect(this, SIGNAL(loadFinished(bool)), this, SLOT(slotLoadFinished(bool))); } else { int index = p_QupZilla->tabWidget()->addView(QUrl(), Qz::NT_CleanSelectedTab); TabbedWebView* view = p_QupZilla->weView(index); view->setWebPage(this); if (m_isLoading) { view->fakeLoadingProgress(m_progress); } } } qupzilla-1.6.0/src/lib/popupwindow/popupwebpage.h000066400000000000000000000034351226107126500221650ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef POPUPWEBPAGE_H #define POPUPWEBPAGE_H #include "qz_namespace.h" #include "webpage.h" class QupZilla; class QT_QUPZILLA_EXPORT PopupWebPage : public WebPage { Q_OBJECT public: explicit PopupWebPage(WebWindowType type, QupZilla* mainClass); QupZilla* mainWindow() const; private slots: void slotGeometryChangeRequested(const QRect &rect); void slotMenuBarVisibilityChangeRequested(bool visible); void slotStatusBarVisibilityChangeRequested(bool visible); void slotToolBarVisibilityChangeRequested(bool visible); void slotLoadStarted(); void slotLoadProgress(int prog); void slotLoadFinished(bool state); void checkBehaviour(); private: QupZilla* p_QupZilla; QWebPage::WebWindowType m_type; bool m_createNewWindow; bool m_menuBarVisible; bool m_statusBarVisible; bool m_toolBarVisible; QRect m_geometry; bool m_isLoading; bool m_progress; }; #endif // POPUPWEBPAGE_H qupzilla-1.6.0/src/lib/popupwindow/popupwebview.cpp000066400000000000000000000055501226107126500225560ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "popupwebview.h" #include "popupwebpage.h" #include "mainapplication.h" #include "qupzilla.h" #include "tabwidget.h" #include "tabbedwebview.h" #include "iconprovider.h" #include "enhancedmenu.h" #include #include PopupWebView::PopupWebView(QWidget* parent) : WebView(parent) , m_page(0) , m_menu(new Menu(this)) { } void PopupWebView::setWebPage(PopupWebPage* page) { if (m_page == page) { return; } if (m_page) { delete m_page; m_page = 0; } m_page = page; m_page->setParent(this); setPage(m_page); } PopupWebPage* PopupWebView::webPage() { return m_page; } QWidget* PopupWebView::overlayForJsAlert() { return this; } void PopupWebView::loadInNewTab(const QNetworkRequest &req, QNetworkAccessManager::Operation op, const QByteArray &data, Qz::NewTabPositionFlag position) { Q_UNUSED(position) QupZilla* window = mApp->getWindow(); if (window) { QNetworkRequest r(req); r.setRawHeader("Referer", url().toEncoded()); r.setRawHeader("X-QupZilla-UserLoadAction", QByteArray("1")); int index = window->tabWidget()->addView(QUrl(), Qz::NT_SelectedTab); window->weView(index)->load(r, op, data); window->raise(); } } void PopupWebView::closeView() { parentWidget()->close(); } void PopupWebView::inspectElement() { triggerPageAction(QWebPage::InspectElement); } void PopupWebView::contextMenuEvent(QContextMenuEvent* event) { m_menu->clear(); const QWebHitTestResult hitTest = page()->mainFrame()->hitTestContent(event->pos()); createContextMenu(m_menu, hitTest, event->pos()); m_menu->addSeparator(); m_menu->addAction(tr("Inspect Element"), this, SLOT(inspectElement())); if (!m_menu->isEmpty()) { // Prevent choosing first option with double rightclick const QPoint pos = event->globalPos(); QPoint p(pos.x(), pos.y() + 1); m_menu->popup(p); return; } WebView::contextMenuEvent(event); } qupzilla-1.6.0/src/lib/popupwindow/popupwebview.h000066400000000000000000000030741226107126500222220ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef POPUPWEBVIEW_H #define POPUPWEBVIEW_H #include "qz_namespace.h" #include "webview.h" class PopupWebPage; class Menu; class QT_QUPZILLA_EXPORT PopupWebView : public WebView { Q_OBJECT public: explicit PopupWebView(QWidget* parent = 0); void setWebPage(PopupWebPage* page); PopupWebPage* webPage(); QWidget* overlayForJsAlert(); void loadInNewTab(const QNetworkRequest &req, QNetworkAccessManager::Operation op, const QByteArray &data, Qz::NewTabPositionFlag position); signals: public slots: void closeView(); void inspectElement(); private: void contextMenuEvent(QContextMenuEvent* event); PopupWebPage* m_page; Menu* m_menu; }; #endif // POPUPWEBVIEW_H qupzilla-1.6.0/src/lib/popupwindow/popupwindow.cpp000066400000000000000000000266221226107126500224200ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "popupwindow.h" #include "popupwebview.h" #include "popupwebpage.h" #include "popupstatusbarmessage.h" #include "progressbar.h" #include "pagescreen.h" #include "searchtoolbar.h" #include "qzsettings.h" #include "popuplocationbar.h" #include "qztools.h" #include "iconprovider.h" #include #include #include #include #include PopupWindow::PopupWindow(PopupWebView* view) : QWidget() , m_view(view) , m_page(qobject_cast(view->page())) , m_search(0) { m_layout = new QVBoxLayout(this); m_layout->setContentsMargins(0, 0, 0, 0); m_layout->setSpacing(0); m_locationBar = new PopupLocationBar(this); m_locationBar->setView(m_view); m_statusBar = new QStatusBar(this); m_statusBar->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Maximum); m_progressBar = new ProgressBar(m_statusBar); m_statusBar->addPermanentWidget(m_progressBar); m_progressBar->hide(); m_view->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding); m_statusBarMessage = new PopupStatusBarMessage(this); m_menuBar = new QMenuBar(this); QMenu* menuFile = new QMenu(tr("File")); menuFile->addAction(QIcon::fromTheme("document-save"), tr("&Save Page As..."), m_view, SLOT(savePageAs()))->setShortcut(QKeySequence("Ctrl+S")); menuFile->addAction(tr("Save Page Screen"), this, SLOT(savePageScreen())); menuFile->addAction(QIcon::fromTheme("mail-message-new"), tr("Send Link..."), m_view, SLOT(sendPageByMail())); menuFile->addAction(QIcon::fromTheme("document-print"), tr("&Print..."), m_view, SLOT(printPage()))->setShortcut(QKeySequence("Ctrl+P")); menuFile->addSeparator(); menuFile->addAction(QIcon::fromTheme("window-close"), tr("Close"), this, SLOT(close()))->setShortcut(QKeySequence("Ctrl+W")); m_menuBar->addMenu(menuFile); m_menuEdit = new QMenu(tr("Edit")); m_menuEdit->addAction(QIcon::fromTheme("edit-undo"), tr("&Undo"), this, SLOT(editUndo()))->setShortcut(QKeySequence("Ctrl+Z")); m_menuEdit->addAction(QIcon::fromTheme("edit-redo"), tr("&Redo"), this, SLOT(editRedo()))->setShortcut(QKeySequence("Ctrl+Shift+Z")); m_menuEdit->addSeparator(); m_menuEdit->addAction(QIcon::fromTheme("edit-cut"), tr("&Cut"), this, SLOT(editCut()))->setShortcut(QKeySequence("Ctrl+X")); m_menuEdit->addAction(QIcon::fromTheme("edit-copy"), tr("C&opy"), this, SLOT(editCopy()))->setShortcut(QKeySequence("Ctrl+C")); m_menuEdit->addAction(QIcon::fromTheme("edit-paste"), tr("&Paste"), this, SLOT(editPaste()))->setShortcut(QKeySequence("Ctrl+V")); m_menuEdit->addSeparator(); m_menuEdit->addAction(QIcon::fromTheme("edit-select-all"), tr("Select All"), m_view, SLOT(selectAll()))->setShortcut(QKeySequence("Ctrl+A")); m_menuEdit->addAction(QIcon::fromTheme("edit-find"), tr("Find"), this, SLOT(searchOnPage()))->setShortcut(QKeySequence("Ctrl+F")); connect(m_menuEdit, SIGNAL(aboutToShow()), this, SLOT(aboutToShowEditMenu())); connect(m_menuEdit, SIGNAL(aboutToHide()), this, SLOT(aboutToHideEditMenu())); m_menuBar->addMenu(m_menuEdit); m_menuView = new QMenu(tr("View")); m_actionStop = m_menuView->addAction(qIconProvider->standardIcon(QStyle::SP_BrowserStop), tr("&Stop"), m_view, SLOT(stop())); m_actionStop->setShortcut(QKeySequence("Esc")); m_actionReload = m_menuView->addAction(qIconProvider->standardIcon(QStyle::SP_BrowserReload), tr("&Reload"), m_view, SLOT(reload())); m_actionReload->setShortcut(QKeySequence("F5")); m_menuView->addSeparator(); m_menuView->addAction(QIcon::fromTheme("zoom-in"), tr("Zoom &In"), m_view, SLOT(zoomIn()))->setShortcut(QKeySequence("Ctrl++")); m_menuView->addAction(QIcon::fromTheme("zoom-out"), tr("Zoom &Out"), m_view, SLOT(zoomOut()))->setShortcut(QKeySequence("Ctrl+-")); m_menuView->addAction(QIcon::fromTheme("zoom-original"), tr("Reset"), m_view, SLOT(zoomReset()))->setShortcut(QKeySequence("Ctrl+0")); m_menuView->addSeparator(); m_menuView->addAction(QIcon::fromTheme("text-html"), tr("&Page Source"), m_view, SLOT(showSource()))->setShortcut(QKeySequence("Ctrl+U")); m_menuBar->addMenu(m_menuView); // Make shortcuts available even with hidden menubar QList actions = m_menuBar->actions(); foreach (QAction* action, actions) { if (action->menu()) { actions += action->menu()->actions(); } addAction(action); } m_layout->insertWidget(0, m_menuBar); m_layout->addWidget(m_locationBar); m_layout->addWidget(m_view); m_layout->addWidget(m_statusBar); setLayout(m_layout); aboutToHideEditMenu(); connect(m_view, SIGNAL(showNotification(QWidget*)), this, SLOT(showNotification(QWidget*))); connect(m_view, SIGNAL(titleChanged(QString)), this, SLOT(titleChanged())); connect(m_view, SIGNAL(urlChanged(QUrl)), m_locationBar, SLOT(showUrl(QUrl))); connect(m_view, SIGNAL(iconChanged()), m_locationBar, SLOT(showSiteIcon())); connect(m_view, SIGNAL(statusBarMessage(QString)), this, SLOT(showStatusBarMessage(QString))); connect(m_view, SIGNAL(loadStarted()), this, SLOT(loadStarted())); connect(m_view, SIGNAL(loadProgress(int)), this, SLOT(loadProgress(int))); connect(m_view, SIGNAL(loadFinished(bool)), this, SLOT(loadFinished())); connect(m_page, SIGNAL(linkHovered(QString,QString,QString)), this, SLOT(showStatusBarMessage(QString))); connect(m_page, SIGNAL(geometryChangeRequested(QRect)), this, SLOT(setWindowGeometry(QRect))); connect(m_page, SIGNAL(statusBarVisibilityChangeRequested(bool)), this, SLOT(setStatusBarVisibility(bool))); connect(m_page, SIGNAL(menuBarVisibilityChangeRequested(bool)), this, SLOT(setMenuBarVisibility(bool))); connect(m_page, SIGNAL(toolBarVisibilityChangeRequested(bool)), this, SLOT(setToolBarVisibility(bool))); m_view->setFocus(); titleChanged(); QUrl urlToShow = m_view->url(); if (urlToShow.isEmpty()) { urlToShow = m_view->page()->mainFrame()->requestedUrl(); } m_locationBar->showUrl(urlToShow); // Ensuring correct sizes for widgets in layout are calculated even // before calling QWidget::show() m_layout->invalidate(); m_layout->activate(); } QStatusBar* PopupWindow::statusBar() { return m_statusBar; } PopupWebView* PopupWindow::webView() { return m_view; } void PopupWindow::showNotification(QWidget* notif) { if (m_layout->count() > 4) { delete m_layout->itemAt(2)->widget(); } m_layout->insertWidget(2, notif); notif->show(); } void PopupWindow::showStatusBarMessage(const QString &message) { if (message.isEmpty()) { m_statusBarMessage->clearMessage(); } else { m_statusBarMessage->showMessage(message); } } void PopupWindow::loadStarted() { m_progressBar->setValue(0); m_progressBar->show(); m_locationBar->startLoading(); if (m_actionStop) { m_actionStop->setEnabled(true); m_actionReload->setEnabled(false); } } void PopupWindow::loadProgress(int value) { m_progressBar->show(); m_progressBar->setValue(value); } void PopupWindow::loadFinished() { m_progressBar->hide(); m_locationBar->stopLoading(); if (m_actionStop) { m_actionStop->setEnabled(false); m_actionReload->setEnabled(true); } } void PopupWindow::closeEvent(QCloseEvent* event) { if (m_page->isRunningLoop()) { event->ignore(); return; } m_page->disconnectObjects(); m_view->deleteLater(); event->accept(); } void PopupWindow::editSelectAll() { m_view->selectAll(); } void PopupWindow::aboutToShowEditMenu() { m_menuEdit->actions().at(0)->setEnabled(m_view->pageAction(QWebPage::Undo)->isEnabled()); m_menuEdit->actions().at(1)->setEnabled(m_view->pageAction(QWebPage::Redo)->isEnabled()); // Separator m_menuEdit->actions().at(3)->setEnabled(m_view->pageAction(QWebPage::Cut)->isEnabled()); m_menuEdit->actions().at(4)->setEnabled(m_view->pageAction(QWebPage::Copy)->isEnabled()); m_menuEdit->actions().at(5)->setEnabled(m_view->pageAction(QWebPage::Paste)->isEnabled()); // Separator m_menuEdit->actions().at(7)->setEnabled(m_view->pageAction(QWebPage::SelectAll)->isEnabled()); } void PopupWindow::aboutToHideEditMenu() { m_menuEdit->actions().at(0)->setEnabled(false); m_menuEdit->actions().at(1)->setEnabled(false); // Separator m_menuEdit->actions().at(3)->setEnabled(false); m_menuEdit->actions().at(4)->setEnabled(false); m_menuEdit->actions().at(5)->setEnabled(false); // Separator m_menuEdit->actions().at(7)->setEnabled(false); } void PopupWindow::savePageScreen() { PageScreen* pageScreen = new PageScreen(m_view, this); pageScreen->show(); } void PopupWindow::searchOnPage() { if (!m_search) { m_search = new SearchToolBar(m_view, this); m_search.data()->showMinimalInPopupWindow(); m_layout->insertWidget(m_layout->count() - 1, m_search); } m_search->focusSearchLine(); } void PopupWindow::editUndo() { m_view->triggerPageAction(QWebPage::Undo); } void PopupWindow::editRedo() { m_view->triggerPageAction(QWebPage::Redo); } void PopupWindow::editCut() { m_view->triggerPageAction(QWebPage::Cut); } void PopupWindow::editCopy() { m_view->triggerPageAction(QWebPage::Copy); } void PopupWindow::editPaste() { m_view->triggerPageAction(QWebPage::Paste); } void PopupWindow::titleChanged() { setWindowTitle(tr("%1 - QupZilla").arg(m_view->title())); } void PopupWindow::setWindowGeometry(QRect newRect) { if (!qzSettings->allowJsGeometryChange) { return; } // left/top was set while width/height not if (!newRect.topLeft().isNull() && newRect.size().isNull()) { newRect.setSize(QSize(550, 585)); } if (newRect.isValid()) { QRect oldRect = rect(); move(newRect.topLeft()); QSize newSize = newRect.size(); int additionalHeight = height() - m_view->height(); newSize.setHeight(newSize.height() + additionalHeight); resize(newSize); if (newRect.topLeft() == QPoint(0, 0) && oldRect.topLeft() == QPoint(0, 0)) { QzTools::centerWidgetOnScreen(this); } } } void PopupWindow::setStatusBarVisibility(bool visible) { m_statusBar->setVisible(qzSettings->allowJsHideStatusBar ? visible : true); } void PopupWindow::setMenuBarVisibility(bool visible) { m_menuBar->setVisible(qzSettings->allowJsHideMenuBar ? visible : true); } void PopupWindow::setToolBarVisibility(bool visible) { // Does nothing now // m_toolBar->setVisible(qzSettings->allowJsHideToolBar ? visible : true); Q_UNUSED(visible) } qupzilla-1.6.0/src/lib/popupwindow/popupwindow.h000066400000000000000000000046731226107126500220670ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef POPUPWINDOW_H #define POPUPWINDOW_H #include #include #include "qz_namespace.h" class QVBoxLayout; class QStatusBar; class QMenuBar; class QMenu; class PopupWebView; class PopupWebPage; class PopupStatusBarMessage; class PopupLocationBar; class ProgressBar; class SearchToolBar; class QT_QUPZILLA_EXPORT PopupWindow : public QWidget { Q_OBJECT public: explicit PopupWindow(PopupWebView* view); QStatusBar* statusBar(); PopupWebView* webView(); public slots: void setWindowGeometry(QRect newRect); void setStatusBarVisibility(bool visible); void setMenuBarVisibility(bool visible); void setToolBarVisibility(bool visible); private slots: void titleChanged(); void showNotification(QWidget* notif); void showStatusBarMessage(const QString &message); void loadStarted(); void loadProgress(int value); void loadFinished(); void editUndo(); void editRedo(); void editCut(); void editCopy(); void editPaste(); void editSelectAll(); void aboutToShowEditMenu(); void aboutToHideEditMenu(); void savePageScreen(); void searchOnPage(); private: void closeEvent(QCloseEvent* event); PopupWebView* m_view; PopupWebPage* m_page; PopupLocationBar* m_locationBar; PopupStatusBarMessage* m_statusBarMessage; ProgressBar* m_progressBar; QVBoxLayout* m_layout; QStatusBar* m_statusBar; QMenuBar* m_menuBar; QMenu* m_menuEdit; QMenu* m_menuView; QAction* m_actionReload; QAction* m_actionStop; QPointer m_search; }; #endif // POPUPWINDOW_H qupzilla-1.6.0/src/lib/preferences/000077500000000000000000000000001226107126500172175ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/preferences/acceptlanguage.cpp000066400000000000000000000156061226107126500226760ustar00rootroot00000000000000/* * Copyright 2009 Benjamin C. Meyer * * 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., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301 USA */ /* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "acceptlanguage.h" #include "ui_acceptlanguage.h" #include "ui_addacceptlanguage.h" #include "mainapplication.h" #include "settings.h" QStringList AcceptLanguage::defaultLanguage() { QString longCode = QLocale::system().name().replace(QLatin1Char('_'), QLatin1Char('-')); if (longCode.size() == 5) { QStringList ret; ret << longCode << longCode.left(2); return ret; } return QStringList(longCode); } QByteArray AcceptLanguage::generateHeader(const QStringList &langs) { if (langs.count() == 0) { return QByteArray(); } QByteArray header; header.append(langs.at(0)); int counter = 8; for (int i = 1; i < langs.count(); i++) { QString s = "," + langs.at(i) + ";q=0."; s.append(QString::number(counter)); if (counter != 2) { counter -= 2; } header.append(s); } return header; } AcceptLanguage::AcceptLanguage(QWidget* parent) : QDialog(parent) , ui(new Ui::AcceptLanguage) { ui->setupUi(this); ui->listWidget->setLayoutDirection(Qt::LeftToRight); Settings settings; settings.beginGroup("Language"); QStringList langs = settings.value("acceptLanguage", defaultLanguage()).toStringList(); settings.endGroup(); foreach (const QString &code, langs) { QString code_ = code; QLocale loc = QLocale(code_.replace(QLatin1Char('-'), QLatin1Char('_'))); QString label; if (loc.language() == QLocale::C) { label = tr("Personal [%1]").arg(code); } else { label = QString("%1/%2 [%3]").arg(loc.languageToString(loc.language()), loc.countryToString(loc.country()), code); } ui->listWidget->addItem(label); } connect(ui->add, SIGNAL(clicked()), this, SLOT(addLanguage())); connect(ui->remove, SIGNAL(clicked()), this, SLOT(removeLanguage())); connect(ui->up, SIGNAL(clicked()), this, SLOT(upLanguage())); connect(ui->down, SIGNAL(clicked()), this, SLOT(downLanguage())); } QStringList AcceptLanguage::expand(const QLocale::Language &language) { QStringList allLanguages; QList countries = QLocale::countriesForLanguage(language); for (int j = 0; j < countries.size(); ++j) { QString languageString; if (countries.count() == 1) { languageString = QString(QLatin1String("%1 [%2]")) .arg(QLocale::languageToString(language)) .arg(QLocale(language).name().split(QLatin1Char('_')).at(0)); } else { languageString = QString(QLatin1String("%1/%2 [%3]")) .arg(QLocale::languageToString(language)) .arg(QLocale::countryToString(countries.at(j))) .arg(QLocale(language, countries.at(j)).name().split(QLatin1Char('_')).join(QLatin1String("-")).toLower()); } if (!allLanguages.contains(languageString)) { allLanguages.append(languageString); } } return allLanguages; } void AcceptLanguage::addLanguage() { Ui_AddAcceptLanguage acceptLangUi; QDialog dialog(this); acceptLangUi.setupUi(&dialog); acceptLangUi.listWidget->setLayoutDirection(Qt::LeftToRight); QStringList allLanguages; for (int i = 1 + (int)QLocale::C; i <= (int)QLocale::LastLanguage; ++i) { allLanguages += expand(QLocale::Language(i)); } acceptLangUi.listWidget->addItems(allLanguages); connect(acceptLangUi.listWidget, SIGNAL(itemDoubleClicked(QListWidgetItem*)), &dialog, SLOT(accept())); if (dialog.exec() == QDialog::Rejected) { return; } if (!acceptLangUi.ownDefinition->text().isEmpty()) { QString title = tr("Personal [%1]").arg(acceptLangUi.ownDefinition->text()); ui->listWidget->addItem(title); } else { QListWidgetItem* c = acceptLangUi.listWidget->currentItem(); if (!c) { return; } ui->listWidget->addItem(c->text()); } } void AcceptLanguage::removeLanguage() { delete ui->listWidget->currentItem(); } void AcceptLanguage::upLanguage() { int index = ui->listWidget->currentRow(); QListWidgetItem* currentItem = ui->listWidget->currentItem(); if (!currentItem || index == 0) { return; } ui->listWidget->takeItem(index); ui->listWidget->insertItem(index - 1, currentItem); ui->listWidget->setCurrentItem(currentItem); } void AcceptLanguage::downLanguage() { int index = ui->listWidget->currentRow(); QListWidgetItem* currentItem = ui->listWidget->currentItem(); if (!currentItem || index == ui->listWidget->count() - 1) { return; } ui->listWidget->takeItem(index); ui->listWidget->insertItem(index + 1, currentItem); ui->listWidget->setCurrentItem(currentItem); } void AcceptLanguage::accept() { QStringList langs; for (int i = 0; i < ui->listWidget->count(); i++) { QString t = ui->listWidget->item(i)->text(); QString code = t.mid(t.indexOf(QLatin1Char('[')) + 1); code.remove(QLatin1Char(']')); langs.append(code); } Settings settings; settings.beginGroup("Language"); settings.setValue("acceptLanguage", langs); QDialog::close(); } AcceptLanguage::~AcceptLanguage() { delete ui; } qupzilla-1.6.0/src/lib/preferences/acceptlanguage.h000066400000000000000000000030221226107126500223300ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef ACCEPTLANGUAGE_H #define ACCEPTLANGUAGE_H #include #include #include "qz_namespace.h" namespace Ui { class AcceptLanguage; } class QT_QUPZILLA_EXPORT AcceptLanguage : public QDialog { Q_OBJECT public: explicit AcceptLanguage(QWidget* parent = 0); ~AcceptLanguage(); static QStringList defaultLanguage(); static QByteArray generateHeader(const QStringList &langs); public slots: void accept(); private slots: void addLanguage(); void removeLanguage(); void upLanguage(); void downLanguage(); private: QStringList expand(const QLocale::Language &language); Ui::AcceptLanguage* ui; }; #endif // ACCEPTLANGUAGE_H qupzilla-1.6.0/src/lib/preferences/acceptlanguage.ui000066400000000000000000000051471226107126500225300ustar00rootroot00000000000000 AcceptLanguage 0 0 464 281 Preferred Languages Add... Remove Up Down Qt::Vertical 20 40 Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok buttonBox accepted() AcceptLanguage accept() 248 254 157 274 buttonBox rejected() AcceptLanguage reject() 316 260 286 274 qupzilla-1.6.0/src/lib/preferences/addacceptlanguage.ui000066400000000000000000000040161226107126500231730ustar00rootroot00000000000000 AddAcceptLanguage 0 0 366 283 Add Language Choose preferred language for web sites Personal definition: Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok buttonBox accepted() AddAcceptLanguage accept() 248 254 157 274 buttonBox rejected() AddAcceptLanguage reject() 316 260 286 274 qupzilla-1.6.0/src/lib/preferences/autofillmanager.cpp000066400000000000000000000252421226107126500231020ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "autofillmanager.h" #include "ui_autofillmanager.h" #include "autofill.h" #include "passwordmanager.h" #include "passwordbackends/passwordbackend.h" #include "mainapplication.h" #include "settings.h" #include "qztools.h" #include #include #include #include #include #include #include AutoFillManager::AutoFillManager(QWidget* parent) : QWidget(parent) , ui(new Ui::AutoFillManager) , m_passwordManager(mApp->autoFill()->passwordManager()) , m_passwordsShown(false) { ui->setupUi(this); if (isRightToLeft()) { ui->treePass->headerItem()->setTextAlignment(0, Qt::AlignRight | Qt::AlignVCenter); ui->treePass->headerItem()->setTextAlignment(1, Qt::AlignRight | Qt::AlignVCenter); ui->treePass->headerItem()->setTextAlignment(2, Qt::AlignRight | Qt::AlignVCenter); ui->treePass->setLayoutDirection(Qt::LeftToRight); ui->treeExcept->setLayoutDirection(Qt::LeftToRight); } connect(ui->removePass, SIGNAL(clicked()), this, SLOT(removePass())); connect(ui->removeAllPass, SIGNAL(clicked()), this, SLOT(removeAllPass())); connect(ui->editPass, SIGNAL(clicked()), this, SLOT(editPass())); connect(ui->showPasswords, SIGNAL(clicked()), this, SLOT(showPasswords())); connect(ui->search, SIGNAL(textChanged(QString)), ui->treePass, SLOT(filterString(QString))); connect(ui->changeBackend, SIGNAL(clicked()), this, SLOT(changePasswordBackend())); connect(ui->backendOptions, SIGNAL(clicked()), this, SLOT(showBackendOptions())); connect(m_passwordManager, SIGNAL(passwordBackendChanged()), this, SLOT(currentPasswordBackendChanged())); connect(ui->removeExcept, SIGNAL(clicked()), this, SLOT(removeExcept())); connect(ui->removeAllExcept, SIGNAL(clicked()), this, SLOT(removeAllExcept())); QMenu* menu = new QMenu(this); menu->addAction(tr("Import Passwords from File..."), this, SLOT(importPasswords())); menu->addAction(tr("Export Passwords to File..."), this, SLOT(exportPasswords())); ui->importExport->setMenu(menu); ui->importExport->setPopupMode(QToolButton::InstantPopup); ui->search->setPlaceholderText(tr("Search")); // Password backends ui->currentBackend->setText(QString("%1").arg(m_passwordManager->activeBackend()->name())); ui->backendOptions->setVisible(m_passwordManager->activeBackend()->hasSettings()); // Load passwords QTimer::singleShot(0, this, SLOT(loadPasswords())); } void AutoFillManager::loadPasswords() { ui->showPasswords->setText(tr("Show Passwords")); m_passwordsShown = false; QVector allEntries = mApp->autoFill()->getAllFormData(); ui->treePass->clear(); foreach (const PasswordEntry &entry, allEntries) { QTreeWidgetItem* item = new QTreeWidgetItem(ui->treePass); item->setText(0, entry.host); item->setText(1, entry.username); item->setText(2, "*****"); QVariant v; v.setValue(entry); item->setData(0, Qt::UserRole + 10, v); ui->treePass->addTopLevelItem(item); } QSqlQuery query; query.exec("SELECT server, id FROM autofill_exceptions"); ui->treeExcept->clear(); while (query.next()) { QTreeWidgetItem* item = new QTreeWidgetItem(ui->treeExcept); item->setText(0, query.value(0).toString()); item->setData(0, Qt::UserRole + 10, query.value(1).toString()); ui->treeExcept->addTopLevelItem(item); } ui->treePass->sortByColumn(-1); ui->treeExcept->sortByColumn(-1); } void AutoFillManager::changePasswordBackend() { QHash backends = m_passwordManager->availableBackends(); QStringList items; int current = 0; QHashIterator i(backends); while (i.hasNext()) { i.next(); if (i.value() == m_passwordManager->activeBackend()) { current = items.size(); } items << i.value()->name(); } QString item = QInputDialog::getItem(this, tr("Change backend..."), tr("Change backend:"), items, current, false); // Switch backends if (!item.isEmpty()) { PasswordBackend* backend = 0; QHashIterator i(backends); while (i.hasNext()) { i.next(); if (i.value()->name() == item) { backend = i.value(); break; } } if (backend) { m_passwordManager->switchBackend(backends.key(backend)); } } } void AutoFillManager::showBackendOptions() { PasswordBackend* backend = m_passwordManager->activeBackend(); if (backend->hasSettings()) { backend->showSettings(this); } } void AutoFillManager::showPasswords() { if (m_passwordsShown) { for (int i = 0; i < ui->treePass->topLevelItemCount(); i++) { QTreeWidgetItem* item = ui->treePass->topLevelItem(i); if (!item) { continue; } item->setText(2, "*****"); } ui->showPasswords->setText(tr("Show Passwords")); m_passwordsShown = false; return; } m_passwordsShown = true; int result = QMessageBox::question(this, tr("Show Passwords"), tr("Are you sure that you want to show all passwords?"), QMessageBox::Yes | QMessageBox::No, QMessageBox::No); if (result != QMessageBox::Yes) { return; } for (int i = 0; i < ui->treePass->topLevelItemCount(); i++) { QTreeWidgetItem* item = ui->treePass->topLevelItem(i); if (!item) { continue; } item->setText(2, item->data(0, Qt::UserRole + 10).value().password); } ui->showPasswords->setText(tr("Hide Passwords")); } void AutoFillManager::removePass() { QTreeWidgetItem* curItem = ui->treePass->currentItem(); if (!curItem) { return; } PasswordEntry entry = curItem->data(0, Qt::UserRole + 10).value(); mApp->autoFill()->removeEntry(entry); delete curItem; } void AutoFillManager::removeAllPass() { QMessageBox::StandardButton button = QMessageBox::warning(this, tr("Confirmation"), tr("Are you sure to delete all passwords on your computer?"), QMessageBox::Yes | QMessageBox::No); if (button != QMessageBox::Yes) { return; } mApp->autoFill()->removeAllEntries(); ui->treePass->clear(); } void AutoFillManager::editPass() { QTreeWidgetItem* curItem = ui->treePass->currentItem(); if (!curItem) { return; } PasswordEntry entry = curItem->data(0, Qt::UserRole + 10).value(); bool ok; QString text = QInputDialog::getText(this, tr("Edit password"), tr("Change password:"), QLineEdit::Normal, entry.password, &ok); if (ok && !text.isEmpty() && text != entry.password) { QByteArray oldPass = "=" + PasswordManager::urlEncodePassword(entry.password); entry.data.replace(oldPass, "=" + PasswordManager::urlEncodePassword(text)); entry.password = text; if (mApp->autoFill()->updateEntry(entry)) { QVariant v; v.setValue(entry); curItem->setData(0, Qt::UserRole + 10, v); if (m_passwordsShown) { curItem->setText(2, text); } } } } void AutoFillManager::removeExcept() { QTreeWidgetItem* curItem = ui->treeExcept->currentItem(); if (!curItem) { return; } QString id = curItem->data(0, Qt::UserRole + 10).toString(); QSqlQuery query; query.prepare("DELETE FROM autofill_exceptions WHERE id=?"); query.addBindValue(id); query.exec(); delete curItem; } void AutoFillManager::removeAllExcept() { QSqlQuery query; query.exec("DELETE FROM autofill_exceptions"); ui->treeExcept->clear(); } void AutoFillManager::showExceptions() { ui->tabWidget->setCurrentIndex(1); } void AutoFillManager::importPasswords() { m_fileName = QzTools::getOpenFileName("AutoFill-ImportPasswords", this, tr("Choose file..."), QDir::homePath() + "/passwords.xml", "*.xml"); if (m_fileName.isEmpty()) { return; } QTimer::singleShot(0, this, SLOT(slotImportPasswords())); } void AutoFillManager::exportPasswords() { m_fileName = QzTools::getSaveFileName("AutoFill-ExportPasswords", this, tr("Choose file..."), QDir::homePath() + "/passwords.xml", "*.xml"); if (m_fileName.isEmpty()) { return; } QTimer::singleShot(0, this, SLOT(slotExportPasswords())); } void AutoFillManager::slotImportPasswords() { QFile file(m_fileName); if (!file.open(QFile::ReadOnly)) { ui->importExportLabel->setText(tr("Cannot read file!")); return; } QApplication::setOverrideCursor(Qt::WaitCursor); bool status = mApp->autoFill()->importPasswords(file.readAll()); file.close(); ui->importExportLabel->setText(status ? tr("Successfully imported") : tr("Error while importing!")); loadPasswords(); QApplication::restoreOverrideCursor(); } void AutoFillManager::slotExportPasswords() { QFile file(m_fileName); if (!file.open(QFile::WriteOnly)) { ui->importExportLabel->setText(tr("Cannot write to file!")); return; } QApplication::setOverrideCursor(Qt::WaitCursor); file.write(mApp->autoFill()->exportPasswords()); file.close(); ui->importExportLabel->setText(tr("Successfully exported")); QApplication::restoreOverrideCursor(); } void AutoFillManager::currentPasswordBackendChanged() { ui->currentBackend->setText(QString("%1").arg(m_passwordManager->activeBackend()->name())); ui->backendOptions->setVisible(m_passwordManager->activeBackend()->hasSettings()); QTimer::singleShot(0, this, SLOT(loadPasswords())); } AutoFillManager::~AutoFillManager() { delete ui; } qupzilla-1.6.0/src/lib/preferences/autofillmanager.h000066400000000000000000000034021226107126500225410ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef AUTOFILLMANAGER_H #define AUTOFILLMANAGER_H #include #include "qz_namespace.h" class PasswordManager; namespace Ui { class AutoFillManager; } class QT_QUPZILLA_EXPORT AutoFillManager : public QWidget { Q_OBJECT public: explicit AutoFillManager(QWidget* parent = 0); ~AutoFillManager(); void showExceptions(); private slots: void loadPasswords(); void changePasswordBackend(); void showBackendOptions(); void removePass(); void removeAllPass(); void editPass(); void showPasswords(); void removeExcept(); void removeAllExcept(); void importPasswords(); void exportPasswords(); void slotImportPasswords(); void slotExportPasswords(); void currentPasswordBackendChanged(); private: Ui::AutoFillManager* ui; PasswordManager* m_passwordManager; QString m_fileName; bool m_passwordsShown; }; #endif // AUTOFILLMANAGER_H qupzilla-1.6.0/src/lib/preferences/autofillmanager.ui000066400000000000000000000156711226107126500227420ustar00rootroot00000000000000 AutoFillManager 0 0 537 372 0 0 Passwords are stored in: Change backend Backend options Qt::Horizontal 40 20 Qt::NoFocus 0 Passwords 0 true 100 Server Username Password 0 0 Import/Export Qt::Horizontal 40 20 Show Passwords Edit Remove Remove All Qt::Vertical 20 40 Exceptions true Server Remove Remove All Qt::Vertical 20 40 TreeWidget QTreeWidget
    treewidget.h
    qupzilla-1.6.0/src/lib/preferences/jsoptions.cpp000066400000000000000000000056741226107126500217670ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca 2013 Mladen Pejaković * * 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 3 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, see . * ============================================================ */ #include "jsoptions.h" #include "ui_jsoptions.h" #include "mainapplication.h" #include "settings.h" #include // QTWEBKIT_VERSION_CHECK macro #include #include JsOptions::JsOptions(QWidget* parent) : QDialog(parent) , ui(new Ui::JsOptions) { ui->setupUi(this); Settings settings; settings.beginGroup("Web-Browser-Settings"); ui->jscanCloseWindow->setChecked(settings.value("allowJavaScriptCloseWindow", false).toBool()); ui->jscanOpenWindow->setChecked(settings.value("allowJavaScriptOpenWindow", false).toBool()); ui->jscanChangeSize->setChecked(settings.value("allowJavaScriptGeometryChange", true).toBool()); ui->jscanHideMenu->setChecked(settings.value("allowJavaScriptHideMenuBar", true).toBool()); ui->jscanHideStatus->setChecked(settings.value("allowJavaScriptHideStatusBar", true).toBool()); ui->jscanHideTool->setChecked(settings.value("allowJavaScriptHideToolBar", true).toBool()); ui->jscanAccessClipboard->setChecked(settings.value("allowJavaScriptAccessClipboard", false).toBool()); settings.endGroup(); #if QTWEBKIT_TO_2_2 ui->jscanCloseWindow->setHidden(true); #endif // Disable for now, as it does not do anything (yet) ui->jscanHideTool->setHidden(true); } void JsOptions::accept() { Settings settings; settings.beginGroup("Web-Browser-Settings"); settings.setValue("allowJavaScriptCloseWindow", ui->jscanCloseWindow->isChecked()); settings.setValue("allowJavaScriptOpenWindow", ui->jscanOpenWindow->isChecked()); settings.setValue("allowJavaScriptGeometryChange", ui->jscanChangeSize->isChecked()); settings.setValue("allowJavaScriptHideMenuBar", ui->jscanHideMenu->isChecked()); settings.setValue("allowJavaScriptHideStatusBar", ui->jscanHideStatus->isChecked()); settings.setValue("allowJavaScriptHideToolBar", ui->jscanHideTool->isChecked()); settings.setValue("allowJavaScriptAccessClipboard", ui->jscanAccessClipboard->isChecked()); settings.endGroup(); QDialog::close(); } JsOptions::~JsOptions() { delete ui; } qupzilla-1.6.0/src/lib/preferences/jsoptions.h000066400000000000000000000023671226107126500214300ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca 2013 Mladen Pejaković * * 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 3 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, see . * ============================================================ */ #ifndef JSOPTIONS_H #define JSOPTIONS_H #include #include "qz_namespace.h" namespace Ui { class JsOptions; } class QT_QUPZILLA_EXPORT JsOptions : public QDialog { Q_OBJECT public: explicit JsOptions(QWidget* parent = 0); ~JsOptions(); public slots: void accept(); private: Ui::JsOptions* ui; }; #endif // JSOPTIONS_H qupzilla-1.6.0/src/lib/preferences/jsoptions.ui000066400000000000000000000067401226107126500216150ustar00rootroot00000000000000 JsOptions 0 0 214 261 JavaScript Options Allow JavaScript to: Qt::Vertical 20 40 Close windows Open popup windows Change window size Hide menu bar Hide status bar Hide tool bar Access clipboard Qt::Vertical 20 40 QDialogButtonBox::Cancel|QDialogButtonBox::Ok jsoptsbbox accepted() JsOptions accept() 248 254 157 274 jsoptsbbox rejected() JsOptions reject() 316 260 286 274 qupzilla-1.6.0/src/lib/preferences/pluginlistdelegate.cpp000066400000000000000000000131671226107126500236200ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "pluginlistdelegate.h" #include #include #include PluginListDelegate::PluginListDelegate(QListWidget* parent) : QStyledItemDelegate(parent) , m_rowHeight(0) , m_padding(0) { } void PluginListDelegate::paint(QPainter* painter, const QStyleOptionViewItem &option, const QModelIndex &index) const { QStyleOptionViewItemV4 opt = option; initStyleOption(&opt, index); const QWidget* w = opt.widget; const QStyle* style = w ? w->style() : QApplication::style(); const int height = opt.rect.height(); const int center = height / 2 + opt.rect.top(); painter->setLayoutDirection(Qt::LeftToRight); // Prepare title font QFont titleFont = opt.font; titleFont.setBold(true); titleFont.setPointSize(titleFont.pointSize() + 1); const QFontMetrics titleMetrics(titleFont); #ifdef Q_OS_WIN const QPalette::ColorRole colorRole = QPalette::Text; #else const QPalette::ColorRole colorRole = opt.state & QStyle::State_Selected ? QPalette::HighlightedText : QPalette::Text; #endif int leftPosition = m_padding; int rightPosition = opt.rect.right() - m_padding; // Draw background style->drawPrimitive(QStyle::PE_PanelItemViewItem, &opt, painter, w); // Draw checkbox const int checkboxSize = 18; const int checkboxYPos = center - (checkboxSize / 2); QStyleOptionViewItemV4 opt2 = opt; opt2.checkState == Qt::Checked ? opt2.state |= QStyle::State_On : opt2.state |= QStyle::State_Off; QRect styleCheckBoxRect = style->subElementRect(QStyle::SE_ViewItemCheckIndicator, &opt2, w); opt2.rect = QRect(leftPosition, checkboxYPos, styleCheckBoxRect.width(), styleCheckBoxRect.height()); style->drawPrimitive(QStyle::PE_IndicatorViewItemCheck, &opt2, painter, w); leftPosition = opt2.rect.right() + m_padding; // Draw icon const int iconSize = 32; const int iconYPos = center - (iconSize / 2); QRect iconRect(leftPosition, iconYPos, iconSize, iconSize); QPixmap pixmap = index.data(Qt::DecorationRole).value().pixmap(iconSize); painter->drawPixmap(iconRect, pixmap); leftPosition = iconRect.right() + m_padding; // Draw plugin name const QString name = index.data(Qt::DisplayRole).toString(); const int leftTitleEdge = leftPosition + 2; const int rightTitleEdge = rightPosition - m_padding; const int leftPosForVersion = titleMetrics.width(name) + m_padding; QRect nameRect(leftTitleEdge, opt.rect.top() + m_padding, rightTitleEdge - leftTitleEdge, titleMetrics.height()); painter->setFont(titleFont); style->drawItemText(painter, nameRect, Qt::AlignLeft, opt.palette, true, name, colorRole); // Draw version const QString version = index.data(Qt::UserRole).toString(); QRect versionRect(nameRect.x() + leftPosForVersion, nameRect.y(), rightTitleEdge - leftPosForVersion, titleMetrics.height()); QFont versionFont = titleFont; versionFont.setBold(false); painter->setFont(versionFont); style->drawItemText(painter, versionRect, Qt::AlignLeft, opt.palette, true, version, colorRole); // Draw info const int infoYPos = nameRect.bottom() + opt.fontMetrics.leading(); QRect infoRect(nameRect.x(), infoYPos, nameRect.width(), opt.fontMetrics.height()); const QString info = opt.fontMetrics.elidedText(index.data(Qt::UserRole + 1).toString(), Qt::ElideRight, infoRect.width()); painter->setFont(opt.font); style->drawItemText(painter, infoRect, Qt::TextSingleLine | Qt::AlignLeft, opt.palette, true, info, colorRole); // Draw description const int descriptionYPos = infoRect.bottom() + opt.fontMetrics.leading(); QRect descriptionRect(infoRect.x(), descriptionYPos, infoRect.width(), opt.fontMetrics.height()); const QString description = opt.fontMetrics.elidedText(index.data(Qt::UserRole + 2).toString(), Qt::ElideRight, descriptionRect.width()); style->drawItemText(painter, descriptionRect, Qt::TextSingleLine | Qt::AlignLeft, opt.palette, true, description, colorRole); } QSize PluginListDelegate::sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const { Q_UNUSED(index) if (!m_rowHeight) { QStyleOptionViewItemV4 opt(option); initStyleOption(&opt, index); const QWidget* w = opt.widget; const QStyle* style = w ? w->style() : QApplication::style(); const int padding = style->pixelMetric(QStyle::PM_FocusFrameHMargin, 0) + 1; QFont titleFont = opt.font; titleFont.setBold(true); titleFont.setPointSize(titleFont.pointSize() + 1); m_padding = padding > 5 ? padding : 5; const QFontMetrics titleMetrics(titleFont); m_rowHeight = 2 * m_padding + 2 * opt.fontMetrics.leading() + 2 * opt.fontMetrics.height() + titleMetrics.height(); } return QSize(200, m_rowHeight); } qupzilla-1.6.0/src/lib/preferences/pluginlistdelegate.h000066400000000000000000000026221226107126500232570ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef PLUGINLISTDELEGATE_H #define PLUGINLISTDELEGATE_H #include #include "qz_namespace.h" class QListWidget; class QT_QUPZILLA_EXPORT PluginListDelegate : public QStyledItemDelegate { public: explicit PluginListDelegate(QListWidget* parent); void paint(QPainter* painter, const QStyleOptionViewItem &option, const QModelIndex &index) const; QSize sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const; private: mutable int m_rowHeight; mutable int m_padding; }; #endif // PLUGINLISTDELEGATE_H qupzilla-1.6.0/src/lib/preferences/pluginslist.ui000066400000000000000000000131541226107126500221370ustar00rootroot00000000000000 PluginsList 0 0 623 462 0 0 Application Extensions Allow Application Extensions to be loaded 0 true QAbstractItemView::ScrollPerPixel true true false 0 0 Settings :/icons/preferences/preferences-desktop.png:/icons/preferences/preferences-desktop.png Qt::Horizontal 40 20 WebKit Plugins <b>Click To Flash Plugin</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. true true Whitelist Add Remove Qt::Vertical 20 40 Allow Click To Flash qupzilla-1.6.0/src/lib/preferences/pluginsmanager.cpp000066400000000000000000000215031226107126500227400ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "pluginsmanager.h" #include "ui_pluginslist.h" #include "pluginproxy.h" #include "mainapplication.h" #include "plugininterface.h" #include "pluginlistdelegate.h" #include "qztools.h" #include "settings.h" #include #include #include PluginsManager::PluginsManager(QWidget* parent) : QWidget(parent) , ui(new Ui::PluginsList) , m_loaded(false) { ui->setupUi(this); ui->list->setLayoutDirection(Qt::LeftToRight); ui->whitelist->setLayoutDirection(Qt::LeftToRight); //Application Extensions Settings settings; settings.beginGroup("Plugin-Settings"); bool appPluginsEnabled = settings.value("EnablePlugins", DEFAULT_ENABLE_PLUGINS).toBool(); settings.endGroup(); ui->allowAppPlugins->setChecked(appPluginsEnabled); ui->list->setEnabled(appPluginsEnabled); connect(ui->butSettings, SIGNAL(clicked()), this, SLOT(settingsClicked())); connect(ui->list, SIGNAL(currentItemChanged(QListWidgetItem*,QListWidgetItem*)), this, SLOT(currentChanged(QListWidgetItem*))); connect(ui->list, SIGNAL(itemChanged(QListWidgetItem*)), this, SLOT(itemChanged(QListWidgetItem*))); connect(ui->allowAppPlugins, SIGNAL(clicked(bool)), this, SLOT(allowAppPluginsChanged(bool))); ui->list->setItemDelegate(new PluginListDelegate(ui->list)); //WebKit Plugins connect(ui->add, SIGNAL(clicked()), this, SLOT(addWhitelist())); connect(ui->remove, SIGNAL(clicked()), this, SLOT(removeWhitelist())); connect(ui->allowClick2Flash, SIGNAL(clicked(bool)), this, SLOT(allowC2FChanged(bool))); ui->whitelist->sortByColumn(-1); settings.beginGroup("ClickToFlash"); QStringList whitelist = mApp->plugins()->c2f_getWhiteList(); ui->allowClick2Flash->setChecked(settings.value("Enable", true).toBool()); settings.endGroup(); foreach (const QString &site, whitelist) { QTreeWidgetItem* item = new QTreeWidgetItem(ui->whitelist); item->setText(0, site); } allowC2FChanged(ui->allowClick2Flash->isChecked()); } void PluginsManager::load() { if (!m_loaded) { refresh(); m_loaded = true; } } void PluginsManager::addWhitelist() { QString site = QInputDialog::getText(this, tr("Add site to whitelist"), tr("Server without http:// (ex. youtube.com)")); if (site.isEmpty()) { return; } mApp->plugins()->c2f_addWhitelist(site); ui->whitelist->insertTopLevelItem(0, new QTreeWidgetItem(QStringList(site))); } void PluginsManager::removeWhitelist() { QTreeWidgetItem* item = ui->whitelist->currentItem(); if (!item) { return; } mApp->plugins()->c2f_removeWhitelist(item->text(0)); delete item; } void PluginsManager::save() { if (!m_loaded) { return; } QStringList allowedPlugins; for (int i = 0; i < ui->list->count(); i++) { QListWidgetItem* item = ui->list->item(i); if (item->checkState() == Qt::Checked) { const Plugins::Plugin plugin = item->data(Qt::UserRole + 10).value(); #ifndef PORTABLE_BUILD allowedPlugins.append(plugin.fullPath); #else allowedPlugins.append(mApp->DATADIR + "plugins/" + plugin.fileName); #endif } } Settings settings; settings.beginGroup("Plugin-Settings"); settings.setValue("EnablePlugins", ui->allowAppPlugins->isChecked()); settings.setValue("AllowedPlugins", allowedPlugins); settings.endGroup(); } void PluginsManager::allowAppPluginsChanged(bool state) { ui->list->setEnabled(state); if (!state) { for (int i = 0; i < ui->list->count(); i++) { QListWidgetItem* item = ui->list->item(i); if (item->checkState() == Qt::Checked) { item->setCheckState(Qt::Unchecked); } } } refresh(); } void PluginsManager::allowC2FChanged(bool state) { Settings settings; settings.beginGroup("ClickToFlash"); settings.setValue("Enable", state); settings.endGroup(); ui->whitelist->setEnabled(state); ui->add->setEnabled(state); ui->remove->setEnabled(state); mApp->plugins()->c2f_setEnabled(state); } void PluginsManager::refresh() { if (!ui->allowAppPlugins->isChecked()) { return; } ui->list->clear(); ui->butSettings->setEnabled(false); disconnect(ui->list, SIGNAL(itemChanged(QListWidgetItem*)), this, SLOT(itemChanged(QListWidgetItem*))); const QList &allPlugins = mApp->plugins()->getAvailablePlugins(); foreach (const Plugins::Plugin &plugin, allPlugins) { PluginSpec spec = plugin.pluginSpec; QListWidgetItem* item = new QListWidgetItem(ui->list); QIcon icon = QIcon(spec.icon); if (icon.isNull()) { icon = QIcon(":/icons/preferences/extension.png"); } item->setIcon(icon); QString pluginInfo = QString("%1 %2
    %3
    %4").arg(spec.name, spec.version, QzTools::escape(spec.author), spec.info); item->setToolTip(pluginInfo); item->setText(spec.name); item->setData(Qt::UserRole, spec.version); item->setData(Qt::UserRole + 1, spec.info); item->setData(Qt::UserRole + 2, spec.description); item->setFlags(item->flags() | Qt::ItemIsUserCheckable); item->setCheckState(plugin.isLoaded() ? Qt::Checked : Qt::Unchecked); item->setData(Qt::UserRole + 10, QVariant::fromValue(plugin)); ui->list->addItem(item); } sortItems(); connect(ui->list, SIGNAL(itemChanged(QListWidgetItem*)), this, SLOT(itemChanged(QListWidgetItem*))); } void PluginsManager::sortItems() { ui->list->sortItems(); bool itemMoved; do { itemMoved = false; for (int i = 0; i < ui->list->count(); ++i) { QListWidgetItem* topItem = ui->list->item(i); QListWidgetItem* bottomItem = ui->list->item(i + 1); if (!topItem || !bottomItem) { continue; } if (topItem->checkState() == Qt::Unchecked && bottomItem->checkState() == Qt::Checked) { QListWidgetItem* item = ui->list->takeItem(i + 1); ui->list->insertItem(i, item); itemMoved = true; } } } while (itemMoved); } void PluginsManager::currentChanged(QListWidgetItem* item) { if (!item) { return; } const Plugins::Plugin plugin = item->data(Qt::UserRole + 10).value(); bool showSettings = plugin.pluginSpec.hasSettings; if (!plugin.isLoaded()) { showSettings = false; } ui->butSettings->setEnabled(showSettings); } void PluginsManager::itemChanged(QListWidgetItem* item) { if (!item) { return; } Plugins::Plugin plugin = item->data(Qt::UserRole + 10).value(); if (item->checkState() == Qt::Checked) { mApp->plugins()->loadPlugin(&plugin); } else { mApp->plugins()->unloadPlugin(&plugin); } disconnect(ui->list, SIGNAL(itemChanged(QListWidgetItem*)), this, SLOT(itemChanged(QListWidgetItem*))); if (item->checkState() == Qt::Checked && !plugin.isLoaded()) { item->setCheckState(Qt::Unchecked); QMessageBox::critical(this, tr("Error!"), tr("Cannot load extension!")); } item->setData(Qt::UserRole + 10, QVariant::fromValue(plugin)); connect(ui->list, SIGNAL(itemChanged(QListWidgetItem*)), this, SLOT(itemChanged(QListWidgetItem*))); currentChanged(ui->list->currentItem()); } void PluginsManager::settingsClicked() { QListWidgetItem* item = ui->list->currentItem(); if (!item || item->checkState() == Qt::Unchecked) { return; } Plugins::Plugin plugin = item->data(Qt::UserRole + 10).value(); if (!plugin.isLoaded()) { mApp->plugins()->loadPlugin(&plugin); item->setData(Qt::UserRole + 10, QVariant::fromValue(plugin)); } if (plugin.isLoaded() && plugin.pluginSpec.hasSettings) { plugin.instance->showSettings(this); } } PluginsManager::~PluginsManager() { delete ui; } qupzilla-1.6.0/src/lib/preferences/pluginsmanager.h000066400000000000000000000031621226107126500224060ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef PLUGINSMANAGER_H #define PLUGINSMANAGER_H #include #include "qz_namespace.h" namespace Ui { class PluginsList; } class QListWidgetItem; class QT_QUPZILLA_EXPORT PluginsManager : public QWidget { Q_OBJECT public: explicit PluginsManager(QWidget* parent = 0); ~PluginsManager(); void load(); void save(); private slots: //App extension void settingsClicked(); void currentChanged(QListWidgetItem* item); void itemChanged(QListWidgetItem* item); void allowAppPluginsChanged(bool state); void refresh(); //WebKit plugins void addWhitelist(); void removeWhitelist(); void allowC2FChanged(bool state); private: void sortItems(); Ui::PluginsList* ui; bool m_loaded; }; #endif // PLUGINSMANAGER_H qupzilla-1.6.0/src/lib/preferences/preferences.cpp000066400000000000000000001350411226107126500222300ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "preferences.h" #include "ui_preferences.h" #include "qupzilla.h" #include "bookmarkstoolbar.h" #include "history.h" #include "tabwidget.h" #include "cookiejar.h" #include "locationbar.h" #include "autofillmanager.h" #include "mainapplication.h" #include "cookiemanager.h" #include "pluginproxy.h" #include "pluginsmanager.h" #include "qtwin.h" #include "sslmanager.h" #include "jsoptions.h" #include "networkproxyfactory.h" #include "networkmanager.h" #include "desktopnotificationsfactory.h" #include "desktopnotification.h" #include "navigationbar.h" #include "thememanager.h" #include "acceptlanguage.h" #include "qztools.h" #include "autofill.h" #include "settings.h" #include "tabbedwebview.h" #include "clearprivatedata.h" #include "useragentdialog.h" #include "registerqappassociation.h" #include "html5permissions/html5permissionsdialog.h" #include "pac/pacmanager.h" #include #include #include #include #include #include #include Preferences::Preferences(QupZilla* mainClass, QWidget* parent) : QDialog(parent) , ui(new Ui::Preferences) , p_QupZilla(mainClass) , m_autoFillManager(0) , m_pluginsList(0) , m_autoFillEnabled(false) { setAttribute(Qt::WA_DeleteOnClose); ui->setupUi(this); ui->languages->setLayoutDirection(Qt::LeftToRight); m_themesManager = new ThemeManager(ui->themesWidget, this); m_pluginsList = new PluginsManager(this); ui->pluginsFrame->addWidget(m_pluginsList); if (QIcon::themeName().toLower() == QLatin1String("oxygen")) { ui->listWidget->item(0)->setIcon(QIcon::fromTheme("preferences-desktop", QIcon(":/icons/preferences/preferences-desktop.png"))); ui->listWidget->item(1)->setIcon(QIcon::fromTheme("format-stroke-color", QIcon(":/icons/preferences/application-x-theme.png"))); ui->listWidget->item(2)->setIcon(QIcon::fromTheme("tab-new-background", QIcon(":/icons/preferences/applications-internet.png"))); ui->listWidget->item(3)->setIcon(QIcon::fromTheme("preferences-system-network", QIcon(":/icons/preferences/applications-webbrowsers.png"))); ui->listWidget->item(4)->setIcon(QIcon::fromTheme("preferences-desktop-font", QIcon(":/icons/preferences/applications-fonts.png"))); ui->listWidget->item(5)->setIcon(QIcon::fromTheme("configure-shortcuts", QIcon(":/icons/preferences/preferences-desktop-keyboard-shortcuts.png"))); ui->listWidget->item(6)->setIcon(QIcon::fromTheme("download", QIcon(":/icons/preferences/mail-inbox.png"))); ui->listWidget->item(7)->setIcon(QIcon::fromTheme("user-identity", QIcon(":/icons/preferences/dialog-password.png"))); ui->listWidget->item(8)->setIcon(QIcon::fromTheme("preferences-system-firewall", QIcon(":/icons/preferences/preferences-system-firewall.png"))); ui->listWidget->item(9)->setIcon(QIcon::fromTheme("preferences-desktop-notification", QIcon(":/icons/preferences/dialog-question.png"))); ui->listWidget->item(10)->setIcon(QIcon::fromTheme("preferences-plugin", QIcon(":/icons/preferences/extension.png"))); ui->listWidget->item(11)->setIcon(QIcon::fromTheme("applications-system", QIcon(":/icons/preferences/applications-system.png"))); } else { ui->listWidget->item(0)->setIcon(QIcon::fromTheme("preferences-desktop", QIcon(":/icons/preferences/preferences-desktop.png"))); ui->listWidget->item(1)->setIcon(QIcon::fromTheme("application-x-theme", QIcon(":/icons/preferences/application-x-theme.png"))); ui->listWidget->item(2)->setIcon(QIcon::fromTheme("applications-internet", QIcon(":/icons/preferences/applications-internet.png"))); ui->listWidget->item(3)->setIcon(QIcon::fromTheme("applications-webbrowsers", QIcon(":/icons/preferences/applications-webbrowsers.png"))); ui->listWidget->item(4)->setIcon(QIcon::fromTheme("applications-fonts", QIcon(":/icons/preferences/applications-fonts.png"))); ui->listWidget->item(5)->setIcon(QIcon::fromTheme("preferences-desktop-keyboard-shortcuts", QIcon(":/icons/preferences/preferences-desktop-keyboard-shortcuts.png"))); ui->listWidget->item(6)->setIcon(QIcon::fromTheme("mail-inbox", QIcon(":/icons/preferences/mail-inbox.png"))); ui->listWidget->item(7)->setIcon(QIcon::fromTheme("dialog-password", QIcon(":/icons/preferences/dialog-password.png"))); ui->listWidget->item(8)->setIcon(QIcon::fromTheme("preferences-system-firewall", QIcon(":/icons/preferences/preferences-system-firewall.png"))); ui->listWidget->item(9)->setIcon(QIcon::fromTheme("dialog-question", QIcon(":/icons/preferences/dialog-question.png"))); ui->listWidget->item(10)->setIcon(QIcon::fromTheme("extension", QIcon(":/icons/preferences/extension.png"))); ui->listWidget->item(11)->setIcon(QIcon::fromTheme("applications-system", QIcon(":/icons/preferences/applications-system.png"))); } Settings settings; //GENERAL URLs settings.beginGroup("Web-URL-Settings"); m_homepage = settings.value("homepage", "qupzilla:start").toString(); m_newTabUrl = settings.value("newTabUrl", "qupzilla:speeddial").toString(); ui->homepage->setText(m_homepage); ui->newTabUrl->setText(m_newTabUrl); int afterLaunch = settings.value("afterLaunch", 1).toInt(); settings.endGroup(); ui->afterLaunch->setCurrentIndex(afterLaunch); ui->checkUpdates->setChecked(settings.value("Web-Browser-Settings/CheckUpdates", DEFAULT_CHECK_UPDATES).toBool()); ui->dontLoadTabsUntilSelected->setChecked(settings.value("Web-Browser-Settings/LoadTabsOnActivation", false).toBool()); #ifdef Q_OS_WIN ui->checkDefaultBrowser->setChecked(settings.value("Web-Browser-Settings/CheckDefaultBrowser", DEFAULT_CHECK_DEFAULTBROWSER).toBool()); if (mApp->associationManager()->isDefaultForAllCapabilities()) { ui->checkNowDefaultBrowser->setText(tr("Default")); ui->checkNowDefaultBrowser->setEnabled(false); } else { ui->checkNowDefaultBrowser->setText(tr("Set as default")); ui->checkNowDefaultBrowser->setEnabled(true); connect(ui->checkNowDefaultBrowser, SIGNAL(clicked()), this, SLOT(makeQupZillaDefault())); } #else // just Windows ui->hSpacerDefaultBrowser->changeSize(0, 0, QSizePolicy::Fixed, QSizePolicy::Fixed); ui->hLayoutDefaultBrowser->invalidate(); delete ui->hLayoutDefaultBrowser; delete ui->checkDefaultBrowser; delete ui->checkNowDefaultBrowser; #endif ui->newTabFrame->setVisible(false); if (m_newTabUrl.isEmpty()) { ui->newTab->setCurrentIndex(0); } else if (m_newTabUrl == m_homepage) { ui->newTab->setCurrentIndex(1); } else if (m_newTabUrl == QLatin1String("qupzilla:speeddial")) { ui->newTab->setCurrentIndex(2); } else { ui->newTab->setCurrentIndex(3); ui->newTabFrame->setVisible(true); } afterLaunchChanged(ui->afterLaunch->currentIndex()); connect(ui->afterLaunch, SIGNAL(currentIndexChanged(int)), this, SLOT(afterLaunchChanged(int))); connect(ui->newTab, SIGNAL(currentIndexChanged(int)), this, SLOT(newTabChanged(int))); if (p_QupZilla) { connect(ui->useCurrentBut, SIGNAL(clicked()), this, SLOT(useActualHomepage())); connect(ui->newTabUseCurrent, SIGNAL(clicked()), this, SLOT(useActualNewTab())); } else { ui->useCurrentBut->setEnabled(false); ui->newTabUseCurrent->setEnabled(false); } //PROFILES m_actProfileName = mApp->currentProfilePath(); m_actProfileName = m_actProfileName.left(m_actProfileName.length() - 1); m_actProfileName = m_actProfileName.mid(m_actProfileName.lastIndexOf(QLatin1Char('/'))); m_actProfileName.remove(QLatin1Char('/')); ui->activeProfile->setText("" + m_actProfileName + ""); QSettings profileSettings(mApp->PROFILEDIR + "profiles/profiles.ini", QSettings::IniFormat); QString actProfileName = profileSettings.value("Profiles/startProfile", "default").toString(); ui->startProfile->addItem(actProfileName); QDir profilesDir(mApp->PROFILEDIR + "profiles/"); QStringList list_ = profilesDir.entryList(QDir::Dirs | QDir::NoDotAndDotDot); foreach (const QString &name, list_) { if (actProfileName == name) { continue; } ui->startProfile->addItem(name); } connect(ui->createProfile, SIGNAL(clicked()), this, SLOT(createProfile())); connect(ui->deleteProfile, SIGNAL(clicked()), this, SLOT(deleteProfile())); connect(ui->startProfile, SIGNAL(currentIndexChanged(QString)), this, SLOT(startProfileIndexChanged(QString))); startProfileIndexChanged(ui->startProfile->currentText()); //APPEREANCE settings.beginGroup("Browser-View-Settings"); ui->showStatusbar->setChecked(settings.value("showStatusBar", true).toBool()); if (p_QupZilla) { ui->showBookmarksToolbar->setChecked(p_QupZilla->bookmarksToolbar()->isVisible()); ui->showNavigationToolbar->setChecked(p_QupZilla->navigationBar()->isVisible()); } else { ui->showBookmarksToolbar->setChecked(settings.value("showBookmarksToolbar", true).toBool()); ui->showNavigationToolbar->setChecked(settings.value("showNavigationToolbar", true).toBool()); } ui->showHome->setChecked(settings.value("showHomeButton", true).toBool()); ui->showBackForward->setChecked(settings.value("showBackForwardButtons", true).toBool()); ui->showAddTabButton->setChecked(settings.value("showAddTabButton", false).toBool()); ui->showReloadStopButtons->setChecked(settings.value("showReloadButton", true).toBool()); ui->showWebSearchBar->setChecked(settings.value("showWebSearchBar", true).toBool()); ui->useTransparentBg->setChecked(settings.value("useTransparentBackground", false).toBool()); int currentSettingsPage = settings.value("settingsDialogPage", 0).toInt(0); settings.endGroup(); #ifdef Q_OS_WIN ui->useTransparentBg->setEnabled(QtWin::isCompositionEnabled()); #endif //TABS settings.beginGroup("Browser-Tabs-Settings"); ui->hideTabsOnTab->setChecked(settings.value("hideTabsWithOneTab", false).toBool()); ui->activateLastTab->setChecked(settings.value("ActivateLastTabWhenClosingActual", false).toBool()); ui->openNewTabAfterActive->setChecked(settings.value("newTabAfterActive", true).toBool()); ui->openNewEmptyTabAfterActive->setChecked(settings.value("newEmptyTabAfterActive", false).toBool()); ui->switchToNewTabs->setChecked(settings.value("OpenNewTabsSelected", false).toBool()); ui->dontQuitOnTab->setChecked(settings.value("dontQuitWithOneTab", false).toBool()); ui->askWhenClosingMultipleTabs->setChecked(settings.value("AskOnClosing", false).toBool()); ui->closedInsteadOpened->setChecked(settings.value("closedInsteadOpenedTabs", false).toBool()); ui->showTabPreviews->setChecked(settings.value("showTabPreviews", true).toBool()); ui->animatedTabPreviews->setChecked(settings.value("tabPreviewAnimationsEnabled", true).toBool()); settings.endGroup(); connect(ui->showTabPreviews, SIGNAL(toggled(bool)), this, SLOT(showTabPreviewsChanged(bool))); showTabPreviewsChanged(ui->showTabPreviews->isChecked()); //AddressBar settings.beginGroup("AddressBar"); ui->addressbarCompletion->setCurrentIndex(settings.value("showSuggestions", 0).toInt()); ui->completionShowSwitchTab->setChecked(settings.value("showSwitchTab", true).toBool()); ui->alwaysShowGoIcon->setChecked(settings.value("alwaysShowGoIcon", false).toBool()); ui->selectAllOnFocus->setChecked(settings.value("SelectAllTextOnDoubleClick", true).toBool()); ui->selectAllOnClick->setChecked(settings.value("SelectAllTextOnClick", false).toBool()); ui->addCountryWithAlt->setChecked(settings.value("AddCountryDomainWithAltKey", true).toBool()); bool showPBinAB = settings.value("ShowLoadingProgress", false).toBool(); ui->showLoadingInAddressBar->setChecked(showPBinAB); ui->adressProgressSettings->setEnabled(showPBinAB); ui->progressStyleSelector->setCurrentIndex(settings.value("ProgressStyle", 0).toInt()); bool pbInABuseCC = settings.value("UseCustomProgressColor", false).toBool(); ui->checkBoxCustomProgressColor->setChecked(pbInABuseCC); ui->progressBarColorSelector->setEnabled(pbInABuseCC); QColor pbColor = settings.value("CustomProgressColor", p_QupZilla->palette().color(QPalette::Highlight)).value(); setProgressBarColorIcon(pbColor); connect(ui->customColorToolButton, SIGNAL(clicked(bool)), SLOT(selectCustomProgressBarColor())); connect(ui->resetProgressBarcolor, SIGNAL(clicked()), SLOT(setProgressBarColorIcon())); settings.endGroup(); settings.beginGroup("SearchEngines"); ui->searchWithDefaultEngine->setChecked(settings.value("SearchWithDefaultEngine", false).toBool()); settings.endGroup(); //BROWSING settings.beginGroup("Web-Browser-Settings"); ui->allowPlugins->setChecked(settings.value("allowFlash", true).toBool()); ui->allowJavaScript->setChecked(settings.value("allowJavaScript", true).toBool()); ui->allowJava->setChecked(settings.value("allowJava", true).toBool()); ui->allowDNSPrefetch->setChecked(settings.value("DNS-Prefetch", false).toBool()); ui->linksInFocusChain->setChecked(settings.value("IncludeLinkInFocusChain", false).toBool()); ui->zoomTextOnly->setChecked(settings.value("zoomTextOnly", false).toBool()); ui->spatialNavigation->setChecked(settings.value("SpatialNavigation", false).toBool()); ui->caretBrowsing->setChecked(settings.value("CaretBrowsing", false).toBool()); ui->animateScrolling->setChecked(settings.value("AnimateScrolling", true).toBool()); ui->printEBackground->setChecked(settings.value("PrintElementBackground", true).toBool()); ui->wheelScroll->setValue(settings.value("wheelScrollLines", qApp->wheelScrollLines()).toInt()); ui->defaultZoom->setValue(settings.value("DefaultZoom", 100).toInt()); ui->xssAuditing->setChecked(settings.value("XSSAuditing", false).toBool()); //Cache ui->pagesInCache->setValue(settings.value("maximumCachedPages", 3).toInt()); connect(ui->pagesInCache, SIGNAL(valueChanged(int)), this, SLOT(pageCacheValueChanged(int))); ui->pageCacheLabel->setText(QString::number(ui->pagesInCache->value())); ui->allowCache->setChecked(settings.value("AllowLocalCache", true).toBool()); ui->cacheMB->setValue(settings.value("LocalCacheSize", 50).toInt()); ui->MBlabel->setText(settings.value("LocalCacheSize", 50).toString() + " MB"); ui->cachePath->setText(settings.value("CachePath", QString("%1networkcache/").arg(mApp->currentProfilePath())).toString()); connect(ui->allowCache, SIGNAL(clicked(bool)), this, SLOT(allowCacheChanged(bool))); connect(ui->cacheMB, SIGNAL(valueChanged(int)), this, SLOT(cacheValueChanged(int))); connect(ui->changeCachePath, SIGNAL(clicked()), this, SLOT(changeCachePathClicked())); allowCacheChanged(ui->allowCache->isChecked()); //PASSWORD MANAGER ui->allowPassManager->setChecked(settings.value("SavePasswordsOnSites", true).toBool()); connect(ui->allowPassManager, SIGNAL(toggled(bool)), this, SLOT(showPassManager(bool))); showPassManager(ui->allowPassManager->isChecked()); //PRIVACY //Web storage ui->saveHistory->setChecked(settings.value("allowHistory", true).toBool()); ui->deleteHistoryOnClose->setChecked(settings.value("deleteHistoryOnClose", false).toBool()); if (!ui->saveHistory->isChecked()) { ui->deleteHistoryOnClose->setEnabled(false); } connect(ui->saveHistory, SIGNAL(toggled(bool)), this, SLOT(saveHistoryChanged(bool))); // Html5Storage ui->html5storage->setChecked(settings.value("HTML5StorageEnabled", true).toBool()); ui->deleteHtml5storageOnClose->setChecked(settings.value("deleteHTML5StorageOnClose", false).toBool()); connect(ui->html5storage, SIGNAL(toggled(bool)), this, SLOT(allowHtml5storageChanged(bool))); // Other ui->doNotTrack->setChecked(settings.value("DoNotTrack", false).toBool()); ui->sendReferer->setChecked(settings.value("SendReferer", true).toBool()); //CSS Style ui->userStyleSheet->setText(settings.value("userStyleSheet", "").toString()); connect(ui->chooseUserStylesheet, SIGNAL(clicked()), this, SLOT(chooseUserStyleClicked())); settings.endGroup(); //DOWNLOADS settings.beginGroup("DownloadManager"); ui->downLoc->setText(settings.value("defaultDownloadPath", "").toString()); ui->closeDownManOnFinish->setChecked(settings.value("CloseManagerOnFinish", false).toBool()); ui->downlaodNativeSystemDialog->setChecked(settings.value("useNativeDialog", DEFAULT_DOWNLOAD_USE_NATIVE_DIALOG).toBool()); if (ui->downLoc->text().isEmpty()) { ui->askEverytime->setChecked(true); } else { ui->useDefined->setChecked(true); } ui->useExternalDownManager->setChecked(settings.value("UseExternalManager", false).toBool()); ui->externalDownExecutable->setText(settings.value("ExternalManagerExecutable", "").toString()); ui->externalDownArguments->setText(settings.value("ExternalManagerArguments", "").toString()); connect(ui->useExternalDownManager, SIGNAL(toggled(bool)), this, SLOT(useExternalDownManagerChanged(bool))); connect(ui->useDefined, SIGNAL(toggled(bool)), this, SLOT(downLocChanged(bool))); connect(ui->downButt, SIGNAL(clicked()), this, SLOT(chooseDownPath())); connect(ui->chooseExternalDown, SIGNAL(clicked()), this, SLOT(chooseExternalDownloadManager())); downLocChanged(ui->useDefined->isChecked()); useExternalDownManagerChanged(ui->useExternalDownManager->isChecked()); settings.endGroup(); //FONTS settings.beginGroup("Browser-Fonts"); ui->fontStandard->setCurrentFont(QFont(settings.value("StandardFont", mApp->webSettings()->fontFamily(QWebSettings::StandardFont)).toString())); ui->fontCursive->setCurrentFont(QFont(settings.value("CursiveFont", mApp->webSettings()->fontFamily(QWebSettings::CursiveFont)).toString())); ui->fontFantasy->setCurrentFont(QFont(settings.value("FantasyFont", mApp->webSettings()->fontFamily(QWebSettings::FantasyFont)).toString())); ui->fontFixed->setCurrentFont(QFont(settings.value("FixedFont", mApp->webSettings()->fontFamily(QWebSettings::FixedFont)).toString())); ui->fontSansSerif->setCurrentFont(QFont(settings.value("SansSerifFont", mApp->webSettings()->fontFamily(QWebSettings::SansSerifFont)).toString())); ui->fontSerif->setCurrentFont(QFont(settings.value("SerifFont", mApp->webSettings()->fontFamily(QWebSettings::SerifFont)).toString())); ui->sizeDefault->setValue(settings.value("DefaultFontSize", mApp->webSettings()->fontSize(QWebSettings::DefaultFontSize)).toInt()); ui->sizeFixed->setValue(settings.value("FixedFontSize", mApp->webSettings()->fontSize(QWebSettings::DefaultFixedFontSize)).toInt()); ui->sizeMinimum->setValue(settings.value("MinimumFontSize", mApp->webSettings()->fontSize(QWebSettings::MinimumFontSize)).toInt()); ui->sizeMinimumLogical->setValue(settings.value("MinimumLogicalFontSize", mApp->webSettings()->fontSize(QWebSettings::MinimumLogicalFontSize)).toInt()); settings.endGroup(); //KEYBOARD SHORTCUTS settings.beginGroup("Shortcuts"); ui->switchTabsAlt->setChecked(settings.value("useTabNumberShortcuts", true).toBool()); ui->loadSpeedDialsCtrl->setChecked(settings.value("useSpeedDialNumberShortcuts", true).toBool()); settings.endGroup(); //NOTIFICATIONS ui->useNativeSystemNotifications->setEnabled(mApp->desktopNotifications()->supportsNativeNotifications()); DesktopNotificationsFactory::Type notifyType; settings.beginGroup("Notifications"); ui->notificationTimeout->setValue(settings.value("Timeout", 6000).toInt() / 1000); #ifdef QZ_WS_X11 notifyType = settings.value("UseNativeDesktop", true).toBool() ? DesktopNotificationsFactory::DesktopNative : DesktopNotificationsFactory::PopupWidget; #else notifyType = DesktopNotificationsFactory::PopupWidget; #endif if (ui->useNativeSystemNotifications->isEnabled() && notifyType == DesktopNotificationsFactory::DesktopNative) { ui->useNativeSystemNotifications->setChecked(true); } else { ui->useOSDNotifications->setChecked(true); } connect(ui->useNativeSystemNotifications, SIGNAL(toggled(bool)), this, SLOT(setNotificationPreviewVisible(bool))); connect(ui->useOSDNotifications, SIGNAL(toggled(bool)), this, SLOT(setNotificationPreviewVisible(bool))); ui->doNotUseNotifications->setChecked(!settings.value("Enabled", true).toBool()); m_notifPosition = settings.value("Position", QPoint(10, 10)).toPoint(); settings.endGroup(); //OTHER //Languages QString activeLanguage = mApp->currentLanguage(); if (!activeLanguage.isEmpty() && activeLanguage != QLatin1String("en_US")) { QLocale locale(activeLanguage); QString country = QLocale::countryToString(locale.country()); QString language = QLocale::languageToString(locale.language()); ui->languages->addItem(language + ", " + country + " (" + activeLanguage + ")", activeLanguage); } ui->languages->addItem("English (en_US)"); QDir lanDir(mApp->TRANSLATIONSDIR); QStringList list = lanDir.entryList(QStringList("*.qm")); foreach (const QString &name, list) { if (name.startsWith(QLatin1String("qt_"))) { continue; } QString loc = name; loc.remove(QLatin1String(".qm")); if (loc == activeLanguage) { continue; } QLocale locale(loc); QString country = QLocale::countryToString(locale.country()); QString language = QLocale::languageToString(locale.language()); ui->languages->addItem(language + ", " + country + " (" + loc + ")", loc); } // Proxy Configuration settings.beginGroup("Web-Proxy"); NetworkProxyFactory::ProxyPreference proxyPreference = NetworkProxyFactory::ProxyPreference(settings.value("UseProxy", NetworkProxyFactory::SystemProxy).toInt()); QNetworkProxy::ProxyType proxyType = QNetworkProxy::ProxyType(settings.value("ProxyType", QNetworkProxy::HttpProxy).toInt()); ui->systemProxy->setChecked(proxyPreference == NetworkProxyFactory::SystemProxy); ui->noProxy->setChecked(proxyPreference == NetworkProxyFactory::NoProxy); ui->manualProxy->setChecked(proxyPreference == NetworkProxyFactory::DefinedProxy); ui->pacProxy->setChecked(proxyPreference == NetworkProxyFactory::ProxyAutoConfig); if (proxyType == QNetworkProxy::HttpProxy) { ui->proxyType->setCurrentIndex(0); } else { ui->proxyType->setCurrentIndex(1); } ui->proxyServer->setText(settings.value("HostName", "").toString()); ui->proxyPort->setText(settings.value("Port", 8080).toString()); ui->proxyUsername->setText(settings.value("Username", "").toString()); ui->proxyPassword->setText(settings.value("Password", "").toString()); ui->useHttpsProxy->setChecked(settings.value("UseDifferentProxyForHttps", false).toBool()); ui->httpsProxyServer->setText(settings.value("HttpsHostName", "").toString()); ui->httpsProxyPort->setText(settings.value("HttpsPort", 8080).toString()); ui->httpsProxyUsername->setText(settings.value("HttpsUsername", "").toString()); ui->httpsProxyPassword->setText(settings.value("HttpsPassword", "").toString()); ui->pacUrl->setText(settings.value("PacUrl", QUrl()).toUrl().toString()); ui->proxyExceptions->setText(settings.value("ProxyExceptions", QStringList() << "localhost" << "127.0.0.1").toStringList().join(",")); settings.endGroup(); useDifferentProxyForHttpsChanged(ui->useHttpsProxy->isChecked()); setManualProxyConfigurationEnabled(proxyPreference == NetworkProxyFactory::DefinedProxy); setProxyAutoConfigEnabled(proxyPreference == NetworkProxyFactory::ProxyAutoConfig); connect(ui->manualProxy, SIGNAL(toggled(bool)), this, SLOT(setManualProxyConfigurationEnabled(bool))); connect(ui->pacProxy, SIGNAL(toggled(bool)), this, SLOT(setProxyAutoConfigEnabled(bool))); connect(ui->useHttpsProxy, SIGNAL(toggled(bool)), this, SLOT(useDifferentProxyForHttpsChanged(bool))); connect(ui->reloadPac, SIGNAL(clicked()), this, SLOT(reloadPacFileClicked())); //CONNECTS connect(ui->buttonBox, SIGNAL(clicked(QAbstractButton*)), this, SLOT(buttonClicked(QAbstractButton*))); connect(ui->cookieManagerBut, SIGNAL(clicked()), this, SLOT(showCookieManager())); connect(ui->html5permissions, SIGNAL(clicked()), this, SLOT(showHtml5Permissions())); connect(ui->sslManagerButton, SIGNAL(clicked()), this, SLOT(openSslManager())); connect(ui->preferredLanguages, SIGNAL(clicked()), this, SLOT(showAcceptLanguage())); connect(ui->deleteHtml5storage, SIGNAL(clicked()), this, SLOT(deleteHtml5storage())); connect(ui->uaManager, SIGNAL(clicked()), this, SLOT(openUserAgentManager())); connect(ui->jsOptionsButton, SIGNAL(clicked()), this, SLOT(openJsOptions())); connect(ui->listWidget, SIGNAL(currentItemChanged(QListWidgetItem*,QListWidgetItem*)), this, SLOT(showStackedPage(QListWidgetItem*))); ui->listWidget->setItemSelected(ui->listWidget->itemAt(5, 5), true); ui->version->setText(" QupZilla v" + QupZilla::VERSION); ui->listWidget->setCurrentRow(currentSettingsPage); QDesktopWidget* desktop = QApplication::desktop(); QSize s = size(); if (desktop->availableGeometry(this).size().width() < s.width()) { s.setWidth(desktop->availableGeometry(this).size().width() - 50); } if (desktop->availableGeometry(this).size().height() < s.height()) { s.setHeight(desktop->availableGeometry(this).size().height() - 50); } resize(s); #if QTWEBKIT_TO_2_3 ui->caretBrowsing->setHidden(true); ui->animateScrolling->setHidden(true); #endif #if QTWEBKIT_TO_2_2 ui->html5permissions->setDisabled(true); #endif QzTools::setWmClass("Preferences", this); } void Preferences::showStackedPage(QListWidgetItem* item) { if (!item) { return; } int index = ui->listWidget->currentRow(); ui->caption->setText("" + item->text() + ""); ui->stackedWidget->setCurrentIndex(index); setNotificationPreviewVisible(index == 9); if (index == 10) { m_pluginsList->load(); } if (index == 7 && !m_autoFillManager) { m_autoFillManager = new AutoFillManager(this); ui->autoFillFrame->addWidget(m_autoFillManager); m_autoFillManager->setVisible(m_autoFillEnabled); } } void Preferences::setNotificationPreviewVisible(bool state) { if (!state && m_notification) { m_notifPosition = m_notification.data()->pos(); delete m_notification.data(); } if (state) { if (ui->useOSDNotifications->isChecked()) { if (m_notification) { m_notifPosition = m_notification.data()->pos(); delete m_notification.data(); } m_notification = new DesktopNotification(true); m_notification.data()->setPixmap(QPixmap(":icons/preferences/stock_dialog-question.png")); m_notification.data()->setHeading(tr("OSD Notification")); m_notification.data()->setText(tr("Drag it on the screen to place it where you want.")); m_notification.data()->move(m_notifPosition); m_notification.data()->show(); } else if (ui->useNativeSystemNotifications->isChecked()) { mApp->desktopNotifications()->nativeNotificationPreview(); } } } void Preferences::makeQupZillaDefault() { #ifdef Q_OS_WIN disconnect(ui->checkNowDefaultBrowser, SIGNAL(clicked()), this, SLOT(makeQupZillaDefault())); mApp->associationManager()->registerAllAssociation(); ui->checkNowDefaultBrowser->setText(tr("Default")); ui->checkNowDefaultBrowser->setEnabled(false); #endif } void Preferences::allowCacheChanged(bool state) { ui->cacheFrame->setEnabled(state); ui->cacheMB->setEnabled(state); ui->storeCacheLabel->setEnabled(state); ui->cachePath->setEnabled(state); ui->changeCachePath->setEnabled(state); } void Preferences::useActualHomepage() { ui->homepage->setText(p_QupZilla->weView()->url().toString()); } void Preferences::useActualNewTab() { ui->newTabUrl->setText(p_QupZilla->weView()->url().toString()); } void Preferences::chooseDownPath() { QString userFileName = QzTools::getExistingDirectory("Preferences-ChooseDownPath", this, tr("Choose download location..."), QDir::homePath()); if (userFileName.isEmpty()) { return; } #ifdef Q_OS_WIN //QFileDialog::getExistingDirectory returns path with \ instead of / (??) userFileName.replace(QLatin1Char('\\'), QLatin1Char('/')); #endif userFileName += QLatin1Char('/'); ui->downLoc->setText(userFileName); } void Preferences::chooseUserStyleClicked() { QString file = QzTools::getOpenFileName("Preferences-UserStyle", this, tr("Choose stylesheet location..."), QDir::homePath(), "*.css"); if (file.isEmpty()) { return; } ui->userStyleSheet->setText(file); } void Preferences::deleteHtml5storage() { ClearPrivateData::clearLocalStorage(); ui->deleteHtml5storage->setText(tr("Deleted")); ui->deleteHtml5storage->setEnabled(false); } void Preferences::chooseExternalDownloadManager() { QString path = QzTools::getOpenFileName("Preferences-ExternalDownloadManager", this, tr("Choose executable location..."), QDir::homePath()); if (path.isEmpty()) { return; } ui->externalDownExecutable->setText(path); } void Preferences::openUserAgentManager() { UserAgentDialog dialog(this); dialog.exec(); } void Preferences::downLocChanged(bool state) { ui->downButt->setEnabled(state); ui->downLoc->setEnabled(state); } void Preferences::setManualProxyConfigurationEnabled(bool state) { ui->proxyType->setEnabled(state); ui->proxyServer->setEnabled(state); ui->proxyPort->setEnabled(state); ui->proxyUsername->setEnabled(state); ui->proxyPassword->setEnabled(state); useDifferentProxyForHttpsChanged(state ? ui->useHttpsProxy->isChecked() : false); ui->useHttpsProxy->setEnabled(state); } void Preferences::setProxyAutoConfigEnabled(bool state) { ui->pacUrl->setEnabled(state); ui->reloadPac->setEnabled(state); } void Preferences::saveHistoryChanged(bool stat) { ui->deleteHistoryOnClose->setEnabled(stat); } void Preferences::allowHtml5storageChanged(bool stat) { ui->deleteHtml5storageOnClose->setEnabled(stat); } void Preferences::showCookieManager() { CookieManager* m = mApp->cookieManager(); m->refreshTable(); m->show(); m->raise(); } void Preferences::showHtml5Permissions() { HTML5PermissionsDialog dialog(this); dialog.exec(); } void Preferences::openSslManager() { SSLManager* m = new SSLManager(this); m->show(); } void Preferences::openJsOptions() { JsOptions options(this); options.exec(); } void Preferences::showAcceptLanguage() { AcceptLanguage a(this); a.exec(); } void Preferences::newTabChanged(int value) { ui->newTabFrame->setVisible(value == 3); } void Preferences::afterLaunchChanged(int value) { ui->dontLoadTabsUntilSelected->setEnabled(value == 3); } void Preferences::cacheValueChanged(int value) { ui->MBlabel->setText(QString::number(value) + " MB"); } void Preferences::pageCacheValueChanged(int value) { ui->pageCacheLabel->setText(QString::number(value)); } void Preferences::useExternalDownManagerChanged(bool state) { ui->externalDownExecutable->setEnabled(state); ui->externalDownArguments->setEnabled(state); ui->chooseExternalDown->setEnabled(state); } void Preferences::useDifferentProxyForHttpsChanged(bool state) { ui->httpsProxyServer->setEnabled(state); ui->httpsProxyPort->setEnabled(state); ui->httpsProxyUsername->setEnabled(state); ui->httpsProxyPassword->setEnabled(state); } void Preferences::showTabPreviewsChanged(bool state) { ui->animatedTabPreviews->setEnabled(state); } void Preferences::changeCachePathClicked() { QString path = QzTools::getExistingDirectory("Preferences-CachePath", this, tr("Choose cache path..."), ui->cachePath->text()); if (path.isEmpty()) { return; } ui->cachePath->setText(path); } void Preferences::reloadPacFileClicked() { mApp->networkManager()->proxyFactory()->pacManager()->downloadPacFile(); } void Preferences::showPassManager(bool state) { if (m_autoFillManager) { m_autoFillManager->setVisible(state); } else { m_autoFillEnabled = state; } } void Preferences::buttonClicked(QAbstractButton* button) { switch (ui->buttonBox->buttonRole(button)) { case QDialogButtonBox::ApplyRole: saveSettings(); break; case QDialogButtonBox::RejectRole: close(); break; case QDialogButtonBox::AcceptRole: saveSettings(); close(); break; default: break; } } void Preferences::createProfile() { QString name = QInputDialog::getText(this, tr("New Profile"), tr("Enter the new profile's name:")); name = QzTools::filterCharsFromFilename(name); if (name.isEmpty()) { return; } QDir dir(mApp->PROFILEDIR + "profiles/"); if (QDir(dir.absolutePath() + "/" + name).exists()) { QMessageBox::warning(this, tr("Error!"), tr("This profile already exists!")); return; } if (!dir.mkdir(name)) { QMessageBox::warning(this, tr("Error!"), tr("Cannot create profile directory!")); return; } dir.cd(name); QFile(":data/browsedata.db").copy(dir.absolutePath() + "/browsedata.db"); QFile(dir.absolutePath() + "/browsedata.db").setPermissions(QFile::ReadUser | QFile::WriteUser); QFile versionFile(dir.absolutePath() + "/version"); versionFile.open(QFile::WriteOnly); versionFile.write(QupZilla::VERSION.toUtf8()); versionFile.close(); ui->startProfile->insertItem(0, name); ui->startProfile->setCurrentIndex(0); } void Preferences::deleteProfile() { QString name = ui->startProfile->currentText(); QMessageBox::StandardButton button = QMessageBox::warning(this, tr("Confirmation"), tr("Are you sure to permanently delete \"%1\" profile? This action cannot be undone!").arg(name), QMessageBox::Yes | QMessageBox::No); if (button != QMessageBox::Yes) { return; } QzTools::removeDir(mApp->PROFILEDIR + "profiles/" + name); ui->startProfile->removeItem(ui->startProfile->currentIndex()); } void Preferences::startProfileIndexChanged(QString index) { ui->deleteProfile->setEnabled(m_actProfileName != index); if (m_actProfileName == index) { ui->cannotDeleteActiveProfileLabel->setText(tr("Note: You cannot delete active profile.")); } else { ui->cannotDeleteActiveProfileLabel->setText(" "); } } void Preferences::closeEvent(QCloseEvent* event) { Settings settings; settings.beginGroup("Browser-View-Settings"); settings.setValue("settingsDialogPage", ui->stackedWidget->currentIndex()); settings.endGroup(); event->accept(); } void Preferences::saveSettings() { Settings settings; //GENERAL URLs settings.beginGroup("Web-URL-Settings"); settings.setValue("homepage", ui->homepage->text()); QString homepage = ui->homepage->text(); settings.setValue("afterLaunch", ui->afterLaunch->currentIndex()); switch (ui->newTab->currentIndex()) { case 0: settings.setValue("newTabUrl", QString()); break; case 1: settings.setValue("newTabUrl", homepage); break; case 2: settings.setValue("newTabUrl", "qupzilla:speeddial"); break; case 3: settings.setValue("newTabUrl", ui->newTabUrl->text()); break; default: break; } settings.endGroup(); //PROFILES /* * * * */ //WINDOW settings.beginGroup("Browser-View-Settings"); settings.setValue("showStatusbar", ui->showStatusbar->isChecked()); settings.setValue("showBookmarksToolbar", ui->showBookmarksToolbar->isChecked()); settings.setValue("showNavigationToolbar", ui->showNavigationToolbar->isChecked()); settings.setValue("showHomeButton", ui->showHome->isChecked()); settings.setValue("showBackForwardButtons", ui->showBackForward->isChecked()); settings.setValue("showWebSearchBar", ui->showWebSearchBar->isChecked()); settings.setValue("useTransparentBackground", ui->useTransparentBg->isChecked()); settings.setValue("showAddTabButton", ui->showAddTabButton->isChecked()); settings.setValue("showReloadButton", ui->showReloadStopButtons->isChecked()); settings.endGroup(); //TABS settings.beginGroup("Browser-Tabs-Settings"); settings.setValue("hideTabsWithOneTab", ui->hideTabsOnTab->isChecked()); settings.setValue("ActivateLastTabWhenClosingActual", ui->activateLastTab->isChecked()); settings.setValue("newTabAfterActive", ui->openNewTabAfterActive->isChecked()); settings.setValue("newEmptyTabAfterActive", ui->openNewEmptyTabAfterActive->isChecked()); settings.setValue("OpenNewTabsSelected", ui->switchToNewTabs->isChecked()); settings.setValue("dontQuitWithOneTab", ui->dontQuitOnTab->isChecked()); settings.setValue("AskOnClosing", ui->askWhenClosingMultipleTabs->isChecked()); settings.setValue("closedInsteadOpenedTabs", ui->closedInsteadOpened->isChecked()); settings.setValue("showTabPreviews", ui->showTabPreviews->isChecked()); settings.setValue("tabPreviewAnimationsEnabled", ui->animatedTabPreviews->isChecked()); settings.endGroup(); //DOWNLOADS settings.beginGroup("DownloadManager"); if (ui->askEverytime->isChecked()) { settings.setValue("defaultDownloadPath", ""); } else { settings.setValue("defaultDownloadPath", ui->downLoc->text()); } settings.setValue("CloseManagerOnFinish", ui->closeDownManOnFinish->isChecked()); settings.setValue("useNativeDialog", ui->downlaodNativeSystemDialog->isChecked()); settings.setValue("UseExternalManager", ui->useExternalDownManager->isChecked()); settings.setValue("ExternalManagerExecutable", ui->externalDownExecutable->text()); settings.setValue("ExternalManagerArguments", ui->externalDownArguments->text()); settings.endGroup(); //FONTS settings.beginGroup("Browser-Fonts"); settings.setValue("StandardFont", ui->fontStandard->currentFont().family()); settings.setValue("CursiveFont", ui->fontCursive->currentFont().family()); settings.setValue("FantasyFont", ui->fontFantasy->currentFont().family()); settings.setValue("FixedFont", ui->fontFixed->currentFont().family()); settings.setValue("SansSerifFont", ui->fontSansSerif->currentFont().family()); settings.setValue("SerifFont", ui->fontSerif->currentFont().family()); settings.setValue("DefaultFontSize", ui->sizeDefault->value()); settings.setValue("FixedFontSize", ui->sizeFixed->value()); settings.setValue("MinimumFontSize", ui->sizeMinimum->value()); settings.setValue("MinimumLogicalFontSize", ui->sizeMinimumLogical->value()); settings.endGroup(); //KEYBOARD SHORTCUTS settings.beginGroup("Shortcuts"); settings.setValue("useTabNumberShortcuts", ui->switchTabsAlt->isChecked()); settings.setValue("useSpeedDialNumberShortcuts", ui->loadSpeedDialsCtrl->isChecked()); settings.endGroup(); //BROWSING settings.beginGroup("Web-Browser-Settings"); settings.setValue("allowFlash", ui->allowPlugins->isChecked()); settings.setValue("allowJavaScript", ui->allowJavaScript->isChecked()); settings.setValue("allowJava", ui->allowJava->isChecked()); settings.setValue("DNS-Prefetch", ui->allowDNSPrefetch->isChecked()); settings.setValue("IncludeLinkInFocusChain", ui->linksInFocusChain->isChecked()); settings.setValue("zoomTextOnly", ui->zoomTextOnly->isChecked()); settings.setValue("SpatialNavigation", ui->spatialNavigation->isChecked()); settings.setValue("CaretBrowsing", ui->caretBrowsing->isChecked()); settings.setValue("AnimateScrolling", ui->animateScrolling->isChecked()); settings.setValue("PrintElementBackground", ui->printEBackground->isChecked()); settings.setValue("wheelScrollLines", ui->wheelScroll->value()); settings.setValue("DoNotTrack", ui->doNotTrack->isChecked()); settings.setValue("CheckUpdates", ui->checkUpdates->isChecked()); settings.setValue("LoadTabsOnActivation", ui->dontLoadTabsUntilSelected->isChecked()); settings.setValue("DefaultZoom", ui->defaultZoom->value()); settings.setValue("XSSAuditing", ui->xssAuditing->isChecked()); #ifdef Q_OS_WIN settings.setValue("CheckDefaultBrowser", ui->checkDefaultBrowser->isChecked()); #endif //Cache settings.setValue("maximumCachedPages", ui->pagesInCache->value()); settings.setValue("AllowLocalCache", ui->allowCache->isChecked()); settings.setValue("LocalCacheSize", ui->cacheMB->value()); settings.setValue("CachePath", ui->cachePath->text()); //CSS Style settings.setValue("userStyleSheet", ui->userStyleSheet->text()); //PASSWORD MANAGER settings.setValue("SavePasswordsOnSites", ui->allowPassManager->isChecked()); //PRIVACY //Web storage settings.setValue("allowHistory", ui->saveHistory->isChecked()); settings.setValue("deleteHistoryOnClose", ui->deleteHistoryOnClose->isChecked()); settings.setValue("HTML5StorageEnabled", ui->html5storage->isChecked()); settings.setValue("deleteHTML5StorageOnClose", ui->deleteHtml5storageOnClose->isChecked()); settings.setValue("SendReferer", ui->sendReferer->isChecked()); settings.endGroup(); //NOTIFICATIONS settings.beginGroup("Notifications"); settings.setValue("Timeout", ui->notificationTimeout->value() * 1000); settings.setValue("Enabled", !ui->doNotUseNotifications->isChecked()); settings.setValue("UseNativeDesktop", ui->useNativeSystemNotifications->isChecked()); settings.setValue("Position", m_notification.data() ? m_notification.data()->pos() : m_notifPosition); settings.endGroup(); //OTHER //AddressBar settings.beginGroup("AddressBar"); settings.setValue("showSuggestions", ui->addressbarCompletion->currentIndex()); settings.setValue("alwaysShowGoIcon", ui->alwaysShowGoIcon->isChecked()); settings.setValue("showSwitchTab", ui->completionShowSwitchTab->isChecked()); settings.setValue("SelectAllTextOnDoubleClick", ui->selectAllOnFocus->isChecked()); settings.setValue("SelectAllTextOnClick", ui->selectAllOnClick->isChecked()); settings.setValue("AddCountryDomainWithAltKey", ui->addCountryWithAlt->isChecked()); settings.setValue("ShowLoadingProgress", ui->showLoadingInAddressBar->isChecked()); settings.setValue("ProgressStyle", ui->progressStyleSelector->currentIndex()); settings.setValue("UseCustomProgressColor", ui->checkBoxCustomProgressColor->isChecked()); settings.setValue("CustomProgressColor", ui->customColorToolButton->property("ProgressColor").value()); settings.endGroup(); settings.beginGroup("SearchEngines"); settings.setValue("SearchWithDefaultEngine", ui->searchWithDefaultEngine->isChecked()); settings.endGroup(); //Languages settings.beginGroup("Language"); settings.setValue("language", ui->languages->itemData(ui->languages->currentIndex()).toString()); settings.endGroup(); //Proxy Configuration NetworkProxyFactory::ProxyPreference proxyPreference; if (ui->systemProxy->isChecked()) { proxyPreference = NetworkProxyFactory::SystemProxy; } else if (ui->noProxy->isChecked()) { proxyPreference = NetworkProxyFactory::NoProxy; } else if (ui->pacProxy->isChecked()) { proxyPreference = NetworkProxyFactory::ProxyAutoConfig; } else { proxyPreference = NetworkProxyFactory::DefinedProxy; } QNetworkProxy::ProxyType proxyType; if (ui->proxyType->currentIndex() == 0) { proxyType = QNetworkProxy::HttpProxy; } else { proxyType = QNetworkProxy::Socks5Proxy; } settings.beginGroup("Web-Proxy"); settings.setValue("ProxyType", proxyType); settings.setValue("UseProxy", proxyPreference); settings.setValue("HostName", ui->proxyServer->text()); settings.setValue("Port", ui->proxyPort->text().toInt()); settings.setValue("Username", ui->proxyUsername->text()); settings.setValue("Password", ui->proxyPassword->text()); settings.setValue("UseDifferentProxyForHttps", ui->useHttpsProxy->isChecked()); settings.setValue("HttpsHostName", ui->httpsProxyServer->text()); settings.setValue("HttpsPort", ui->httpsProxyPort->text()); settings.setValue("HttpsUsername", ui->httpsProxyUsername->text()); settings.setValue("HttpsPassword", ui->httpsProxyPassword->text()); settings.setValue("PacUrl", ui->pacUrl->text()); settings.setValue("ProxyExceptions", ui->proxyExceptions->text().split(QLatin1Char(','), QString::SkipEmptyParts)); settings.endGroup(); //Profiles QSettings profileSettings(mApp->PROFILEDIR + "profiles/profiles.ini", QSettings::IniFormat); profileSettings.setValue("Profiles/startProfile", ui->startProfile->currentText()); m_pluginsList->save(); m_themesManager->save(); mApp->cookieJar()->loadSettings(); mApp->history()->loadSettings(); mApp->reloadSettings(); mApp->plugins()->c2f_saveSettings(); mApp->networkManager()->loadSettings(); mApp->desktopNotifications()->loadSettings(); mApp->autoFill()->loadSettings(); } Preferences::~Preferences() { delete ui; delete m_autoFillManager; delete m_pluginsList; delete m_notification.data(); } void Preferences::setProgressBarColorIcon(QColor color) { const int size = style()->pixelMetric(QStyle::PM_ToolBarIconSize); QPixmap pm(QSize(size, size)); if (!color.isValid()) { color = p_QupZilla->palette().color(QPalette::Highlight); } pm.fill(color); ui->customColorToolButton->setIcon(pm); ui->customColorToolButton->setProperty("ProgressColor", color); } void Preferences::selectCustomProgressBarColor() { QColor newColor = QColorDialog::getColor(ui->customColorToolButton->property("ProgressColor").value(), this, tr("Select Color")); if (newColor.isValid()) { setProgressBarColorIcon(newColor); } } qupzilla-1.6.0/src/lib/preferences/preferences.h000066400000000000000000000063301226107126500216730ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef PREFERENCES_H #define PREFERENCES_H #include #include #include "qz_namespace.h" namespace Ui { class Preferences; } class QAbstractButton; class QListWidgetItem; class AutoFillManager; class QupZilla; class PluginsManager; class DesktopNotification; class ThemeManager; class QT_QUPZILLA_EXPORT Preferences : public QDialog { Q_OBJECT public: explicit Preferences(QupZilla* mainClass, QWidget* parent = 0); ~Preferences(); private slots: void saveSettings(); void buttonClicked(QAbstractButton* button); void showStackedPage(QListWidgetItem* item); void chooseDownPath(); void showCookieManager(); void showHtml5Permissions(); void useActualHomepage(); void useActualNewTab(); void openSslManager(); void showAcceptLanguage(); void chooseUserStyleClicked(); void deleteHtml5storage(); void chooseExternalDownloadManager(); void openUserAgentManager(); void openJsOptions(); void saveHistoryChanged(bool state); void allowHtml5storageChanged(bool state); void downLocChanged(bool state); void allowCacheChanged(bool state); void showPassManager(bool state); void setManualProxyConfigurationEnabled(bool state); void setProxyAutoConfigEnabled(bool state); void useExternalDownManagerChanged(bool state); void useDifferentProxyForHttpsChanged(bool state); void showTabPreviewsChanged(bool state); void changeCachePathClicked(); void reloadPacFileClicked(); void newTabChanged(int value); void afterLaunchChanged(int value); void cacheValueChanged(int value); void pageCacheValueChanged(int value); void createProfile(); void deleteProfile(); void startProfileIndexChanged(QString index); void setProgressBarColorIcon(QColor col = QColor()); void selectCustomProgressBarColor(); void setNotificationPreviewVisible(bool state); void makeQupZillaDefault(); private: void closeEvent(QCloseEvent* event); Ui::Preferences* ui; QupZilla* p_QupZilla; AutoFillManager* m_autoFillManager; PluginsManager* m_pluginsList; ThemeManager* m_themesManager; QPointer m_notification; QString m_homepage; QString m_newTabUrl; QString m_actProfileName; int m_afterLaunch; int m_onNewTab; QPoint m_notifPosition; bool m_autoFillEnabled; }; #endif // PREFERENCES_H qupzilla-1.6.0/src/lib/preferences/preferences.ui000066400000000000000000003072361226107126500220720ustar00rootroot00000000000000 Preferences 0 0 840 554 Preferences 220 0 220 16777215 Qt::NoFocus false 32 32 QListView::Static 2 true true false General Appearance Tabs Browsing Fonts Keyboard Shortcuts Downloads Password Manager Privacy Notifications Extensions Other Qt::Horizontal QFrame::NoFrame true 0 0 608 485 0 Qt::NoFocus 0 0 Use current QFrame::NoFrame QFrame::Raised 0 0 20 0 Note: You cannot delete active profile. Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter 0 0 Create New false 0 0 Delete Qt::Horizontal QSizePolicy::Fixed 20 10 <b>Launching</b> After launch: Open blank page Open homepage Open speed dial Restore session Homepage: Use current On new tab: Open blank tab Open homepage Open speed dial Open other page... <b>Profiles</b> Startup profile: Check for updates on start Active profile: In order to change language, you must restart browser. <b>Language</b> 0 0 200 0 Available translations: Don't load tabs until selected Qt::Vertical 20 40 Check to see if QupZilla is the default browser on startup false Check Now Qt::Horizontal 40 20 0 Themes 0 Advanced options <b>Browser Window</b> Qt::Horizontal QSizePolicy::Fixed 20 20 Qt::Horizontal 40 20 Show StatusBar on start Show Bookmarks ToolBar on start Show Navigation ToolBar on start <b>Navigation ToolBar</b> Show Home button Show Back / Forward buttons <b>Background<b/> Qt::Vertical 20 40 Use transparent background Show web search bar Show Add Tab button Show Reload / Stop buttons 0 Tabs behaviour Show tab previews Qt::Horizontal QSizePolicy::Fixed 10 20 Make tab previews animated Qt::Horizontal 63 13 Hide tabs when there is only one tab Activate last tab when closing active tab Open new tabs after active tab Open new empty tabs after active tab Automatically switch to newly opened tab Don't quit upon closing last tab Ask when closing multiple tabs Closed tabs list instead of opened in tab bar Qt::Vertical 20 40 Address Bar behaviour Suggest when typing into address bar: 170 0 History and Bookmarks History Bookmarks Nothing Qt::Horizontal QSizePolicy::Expanding 40 20 Press "Shift" to not switch the tab but load the url in the current tab. Propose to switch tab if completed url is already loaded. Always show go icon Select all text by double clicking in address bar Select all text by clicking in address bar Search with Default Engine Qt::Vertical QSizePolicy::Fixed 20 10 Show loading progress in address bar 0 0 Qt::Horizontal QSizePolicy::Fixed 20 20 Fill Bottom Top Custom color: 0 0 Select color ... Reset Qt::Horizontal 40 20 Qt::Vertical 20 40 0 Web Configuration Allow Netscape Plugins (Flash plugin) Allow JavaScript Allow JAVA Allow DNS Prefetch Enable XSS Auditing Print element background Include links in focus chain Animated scrolling Enable caret browsing Enable spatial navigation Zoom text only 0 0 Mouse wheel scrolls 0 0 1 lines on page Default zoom on pages: % 30 300 100 Qt::Horizontal 40 20 Qt::Vertical 20 40 Local Storage QFrame::NoFrame QFrame::Raised 0 6 0 6 20 Qt::Horizontal Maximum 50 MB 10 50 Qt::Horizontal 0 0 20 0 1 Maximum pages in cache: Allow storing network cache on disk Store cache in: Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter ... Allow saving history Delete history on close Qt::Horizontal QSizePolicy::Fixed 40 20 Allow local storage of HTML5 web content Delete locally stored HTML5 web content on close Qt::Horizontal 40 20 0 0 Delete now Qt::Vertical 20 40 Qt::Vertical QSizePolicy::Fixed 20 10 Proxy Configuration Proxy Auto-Config (.pac) file Reload Qt::Horizontal QSizePolicy::Fixed 50 20 <b>Exceptions</b> Don't use on: Qt::Vertical 20 40 System proxy configuration Qt::Horizontal QSizePolicy::Fixed 40 20 Manual configuration HTTP SOCKS5 Port: 50 16777215 Username: Password: Qt::Horizontal 40 20 Use different proxy for https connection Server: Port: 50 16777215 Username: Password: Qt::Horizontal 40 20 Use script for automatic configuration: Do not use proxy <b>Font Families</b> 0 0 Standard Fixed Serif Sans Serif Cursive Qt::Vertical 20 40 Qt::Horizontal QSizePolicy::Fixed 20 20 0 0 Fantasy <b>Font Sizes</b> Fixed Font Size Default Font Size 0 0 0 0 Minimum Font Size Minimum Logical Font Size 0 0 0 0 <b>Shortcuts</b> Switch to tabs with Alt + number of tab Load speed dials with Ctrl + number of speed dial Add .co.uk domain by pressing ALT key in address bar Qt::Vertical 20 40 <b>Download Location</b> Ask everytime for download location Use defined location: ... Qt::Horizontal 40 20 Qt::Horizontal QSizePolicy::Fixed 20 20 <b>Download Options</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Close download manager when downloading finishes <b>External download manager</b> Use external download manager QFormLayout::AllNonFixedFieldsGrow Executable: Arguments: Leave blank if unsure ... <b>%d</b> will be replaced with URL to be downloaded Qt::Vertical 20 40 <b>AutoFill options</b> Allow saving passwords from sites Qt::Horizontal QSizePolicy::Fixed 20 20 Qt::Horizontal 40 20 0 0 QLayout::SetMinAndMaxSize Send Referer header to servers <b>Cookies</b> Send Do Not Track header to servers <b>Other</b> Manage CA certificates true Qt::Vertical 20 40 0 0 Certificate Manager <b>SSL Certificates</b> true <b>JavaScript</b> false Manage JavaScript privacy options 0 0 JavaScript options 0 0 Cookies Manager Qt::Horizontal QSizePolicy::Fixed 20 20 Manage Cookies Qt::Horizontal 40 20 <b>HTML5 Permissions</b> Manage HTML5 permissions 0 0 HTML5 Permissions <b>Notifications</b> Use OSD Notifications false Use Native System Notifications (Linux only) Do not use Notifications Qt::Vertical 20 40 Qt::Horizontal QSizePolicy::Fixed 20 20 Qt::Horizontal 40 20 Expiration timeout: 0 0 seconds <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. true Qt::Vertical QSizePolicy::Fixed 0 20 0 0 0 <b>Other</b> StyleSheet automatically loaded with all websites: ... Languages Qt::Horizontal 40 20 <b>Preferred language for web sites</b> Qt::Vertical 20 40 Qt::Horizontal QSizePolicy::Fixed 20 20 Qt::Horizontal 40 20 <b>Change browser identification</b> Qt::Horizontal QSizePolicy::Fixed 20 20 User Agent Manager Qt::Horizontal 40 20 Qt::Horizontal QupZilla QDialogButtonBox::Apply|QDialogButtonBox::Cancel|QDialogButtonBox::Ok MacToolButton QToolButton
    mactoolbutton.h
    buttonBox afterLaunch homepage useCurrentBut newTab newTabUrl newTabUseCurrent checkUpdates startProfile createProfile deleteProfile tabWidget_2 hideTabsOnTab askWhenClosingMultipleTabs selectAllOnFocus selectAllOnClick tabWidget allowPlugins wheelScroll defaultZoom fontStandard fontFixed fontSerif fontSansSerif fontCursive fontFantasy askEverytime useDefined downLoc downButt closeDownManOnFinish downlaodNativeSystemDialog allowPassManager useOSDNotifications useNativeSystemNotifications doNotUseNotifications notificationTimeout preferredLanguages userStyleSheet chooseUserStylesheet showBackForward allowCache cacheMB saveHistory deleteHistoryOnClose proxyServer proxyPort manualProxy systemProxy noProxy showStatusbar useTransparentBg showNavigationToolbar pagesInCache showHome showBookmarksToolbar showLoadingInAddressBar toggled(bool) adressProgressSettings setEnabled(bool) 513 117 513 154 checkBoxCustomProgressColor toggled(bool) progressBarColorSelector setEnabled(bool) 405 152 567 157
    qupzilla-1.6.0/src/lib/preferences/sslmanager.cpp000066400000000000000000000145651226107126500220720ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "sslmanager.h" #include "ui_sslmanager.h" #include "networkmanager.h" #include "mainapplication.h" #include "qztools.h" #include "certificateinfowidget.h" #include #include SSLManager::SSLManager(QWidget* parent) : QDialog(parent) , ui(new Ui::SSLManager) { setAttribute(Qt::WA_DeleteOnClose); ui->setupUi(this); ui->caList->setLayoutDirection(Qt::LeftToRight); ui->localList->setLayoutDirection(Qt::LeftToRight); ui->pathList->setLayoutDirection(Qt::LeftToRight); refreshLocalList(); refreshCAList(); refreshPaths(); connect(ui->caList, SIGNAL(itemDoubleClicked(QListWidgetItem*)), this, SLOT(showCaCertInfo())); connect(ui->caInfoButton, SIGNAL(clicked()), this, SLOT(showCaCertInfo())); connect(ui->deleteButton, SIGNAL(clicked()), this, SLOT(deleteCertificate())); connect(ui->localList, SIGNAL(itemDoubleClicked(QListWidgetItem*)), this, SLOT(showLocalCertInfo())); connect(ui->localInfoButton, SIGNAL(clicked()), this, SLOT(showLocalCertInfo())); connect(ui->addLocalCert, SIGNAL(clicked()), this, SLOT(addLocalCertificate())); connect(ui->addPath, SIGNAL(clicked()), this, SLOT(addPath())); connect(ui->deletePath, SIGNAL(clicked()), this, SLOT(deletePath())); connect(ui->ignoreAll, SIGNAL(clicked(bool)), this, SLOT(ignoreAll(bool))); connect(ui->buttonBox, SIGNAL(clicked(QAbstractButton*)), this, SLOT(close())); ui->ignoreAll->setChecked(mApp->networkManager()->isIgnoringAllWarnings()); } void SSLManager::addPath() { QString path = QzTools::getExistingDirectory("SSLManager-AddPath", this, tr("Choose path...")); if (path.isEmpty()) { return; } ui->pathList->addItem(path); } void SSLManager::deletePath() { delete ui->pathList->currentItem(); } void SSLManager::refreshCAList() { ui->caList->setUpdatesEnabled(false); ui->caList->clear(); m_caCerts = QSslSocket::defaultCaCertificates(); foreach (const QSslCertificate &cert, m_caCerts) { if (m_localCerts.contains(cert)) { continue; } QListWidgetItem* item = new QListWidgetItem(ui->caList); item->setText(CertificateInfoWidget::certificateItemText(cert)); item->setData(Qt::UserRole + 10, m_caCerts.indexOf(cert)); ui->caList->addItem(item); } ui->caList->setCurrentRow(0); ui->caList->setUpdatesEnabled(true); } void SSLManager::refreshLocalList() { ui->localList->setUpdatesEnabled(false); ui->localList->clear(); m_localCerts = mApp->networkManager()->getLocalCertificates(); foreach (const QSslCertificate &cert, m_localCerts) { QListWidgetItem* item = new QListWidgetItem(ui->localList); item->setText(CertificateInfoWidget::certificateItemText(cert)); item->setData(Qt::UserRole + 10, m_localCerts.indexOf(cert)); ui->localList->addItem(item); } ui->localList->setCurrentRow(0); ui->localList->setUpdatesEnabled(true); } void SSLManager::refreshPaths() { foreach (const QString &path, mApp->networkManager()->certificatePaths()) { ui->pathList->addItem(path); } } void SSLManager::showCaCertInfo() { QListWidgetItem* item = ui->caList->currentItem(); if (!item) { return; } QSslCertificate cert = m_caCerts.at(item->data(Qt::UserRole + 10).toInt()); showCertificateInfo(cert); } void SSLManager::addLocalCertificate() { const QString path = QzTools::getOpenFileName("SSLManager-AddLocalCert", this, tr("Import certificate..."), QDir::homePath(), "*.crt"); if (path.isEmpty()) { return; } const QList list = QSslCertificate::fromPath(path); if (list.isEmpty()) { return; } mApp->networkManager()->addLocalCertificate(list.at(0)); refreshLocalList(); } void SSLManager::showLocalCertInfo() { QListWidgetItem* item = ui->localList->currentItem(); if (!item) { return; } QSslCertificate cert = m_localCerts.at(item->data(Qt::UserRole + 10).toInt()); showCertificateInfo(cert); } void SSLManager::showCertificateInfo(const QSslCertificate &cert) { QDialog* w = new QDialog(this); w->setAttribute(Qt::WA_DeleteOnClose); w->setWindowTitle(tr("Certificate Informations")); w->setLayout(new QVBoxLayout); CertificateInfoWidget* c = new CertificateInfoWidget(cert); w->layout()->addWidget(c); QDialogButtonBox* b = new QDialogButtonBox(w); b->setStandardButtons(QDialogButtonBox::Close); connect(b, SIGNAL(clicked(QAbstractButton*)), w, SLOT(close())); w->layout()->addWidget(b); w->resize(w->sizeHint()); QzTools::centerWidgetToParent(w, this); w->show(); } void SSLManager::deleteCertificate() { QListWidgetItem* item = ui->localList->currentItem(); if (!item) { return; } QSslCertificate cert = m_localCerts.at(item->data(Qt::UserRole + 10).toInt()); m_localCerts.removeOne(cert); mApp->networkManager()->removeLocalCertificate(cert); refreshLocalList(); } void SSLManager::ignoreAll(bool state) { mApp->networkManager()->setIgnoreAllWarnings(state); } void SSLManager::closeEvent(QCloseEvent* e) { QStringList paths; for (int i = 0; i < ui->pathList->count(); i++) { QListWidgetItem* item = ui->pathList->item(i); if (!item || item->text().isEmpty()) { continue; } paths.append(item->text()); } mApp->networkManager()->setCertificatePaths(paths); mApp->networkManager()->saveCertificates(); QWidget::closeEvent(e); } SSLManager::~SSLManager() { delete ui; } qupzilla-1.6.0/src/lib/preferences/sslmanager.h000066400000000000000000000032241226107126500215250ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SSLMANAGER_H #define SSLMANAGER_H #include #include #include "qz_namespace.h" namespace Ui { class SSLManager; } class QT_QUPZILLA_EXPORT SSLManager : public QDialog { Q_OBJECT public: explicit SSLManager(QWidget* parent = 0); ~SSLManager(); private slots: void showLocalCertInfo(); void showCaCertInfo(); void addLocalCertificate(); void deleteCertificate(); void ignoreAll(bool state); void addPath(); void deletePath(); private: void closeEvent(QCloseEvent* e); void refreshLocalList(); void refreshCAList(); void refreshPaths(); void showCertificateInfo(const QSslCertificate &cert); Ui::SSLManager* ui; QList m_localCerts; QList m_caCerts; }; #endif // SSLMANAGER_H qupzilla-1.6.0/src/lib/preferences/sslmanager.ui000066400000000000000000000200541226107126500217130ustar00rootroot00000000000000 SSLManager 0 0 653 389 Certificate Manager 0 CA Authorities Certificates Qt::Vertical 20 40 Show info This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. true Local Certificates Import Qt::Vertical 20 40 Show info Remove This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. true Settings Qt::Vertical 20 40 Add Remove If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. true <b>NOTE:</b> Setting this option is a high security risk! false Qt::Horizontal QSizePolicy::Fixed 30 20 Qt::Horizontal 40 20 Ignore all SSL Warnings Qt::Vertical 20 40 All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. true QDialogButtonBox::Close qupzilla-1.6.0/src/lib/preferences/thememanager.cpp000066400000000000000000000122701226107126500223620ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "thememanager.h" #include "ui_thememanager.h" #include "mainapplication.h" #include "qztools.h" #include "settings.h" #include "licenseviewer.h" #include "preferences.h" #include "qzregexp.h" #include #include ThemeManager::ThemeManager(QWidget* parent, Preferences* preferences) : QWidget() , ui(new Ui::ThemeManager) , m_preferences(preferences) { ui->setupUi(parent); ui->listWidget->setLayoutDirection(Qt::LeftToRight); ui->license->hide(); Settings settings; settings.beginGroup("Themes"); m_activeTheme = settings.value("activeTheme", DEFAULT_THEME_NAME).toString(); settings.endGroup(); QStringList themePaths; themePaths << mApp->currentProfilePath() + "themes/" << mApp->PROFILEDIR + "themes/" << mApp->THEMESDIR; foreach (const QString &path, themePaths) { QDir dir(path); QStringList list = dir.entryList(QDir::AllDirs | QDir::NoDotAndDotDot); foreach (const QString &name, list) { Theme themeInfo = parseTheme(dir.absoluteFilePath(name) + "/", name); if (!themeInfo.isValid) { continue; } QListWidgetItem* item = new QListWidgetItem(ui->listWidget); item->setText(themeInfo.name + "\n" + themeInfo.shortDescription); item->setIcon(themeInfo.icon); item->setData(Qt::UserRole, name); if (m_activeTheme == name) { ui->listWidget->setCurrentItem(item); } ui->listWidget->addItem(item); } } connect(ui->listWidget, SIGNAL(currentItemChanged(QListWidgetItem*,QListWidgetItem*)), this, SLOT(currentChanged())); connect(ui->license, SIGNAL(clicked(QPoint)), this, SLOT(showLicense())); currentChanged(); } void ThemeManager::showLicense() { QListWidgetItem* currentItem = ui->listWidget->currentItem(); if (!currentItem) { return; } Theme currentTheme = m_themeHash[currentItem->data(Qt::UserRole).toString()]; LicenseViewer* v = new LicenseViewer(m_preferences); v->setText(currentTheme.license); v->show(); } void ThemeManager::currentChanged() { QListWidgetItem* currentItem = ui->listWidget->currentItem(); if (!currentItem) { return; } Theme currentTheme = m_themeHash[currentItem->data(Qt::UserRole).toString()]; ui->name->setText(currentTheme.name); ui->author->setText(currentTheme.author); ui->descirption->setText(currentTheme.longDescription); ui->license->setHidden(currentTheme.license.isEmpty()); } ThemeManager::Theme ThemeManager::parseTheme(const QString &path, const QString &name) { Theme info; if (!QFile(path + "main.css").exists() || !QFile(path + "theme.info").exists()) { info.isValid = false; return info; } if (QFile(path + "theme.png").exists()) { info.icon = QIcon(path + "theme.png"); } else { info.icon = QIcon(":icons/preferences/style-default.png"); } if (QFile(path + "theme.license").exists()) { info.license = QzTools::readAllFileContents(path + "theme.license"); } QString theme_info = QzTools::readAllFileContents(path + "theme.info"); QzRegExp rx("Name:(.*)\\n"); rx.setMinimal(true); rx.indexIn(theme_info); if (rx.captureCount() == 1) { info.name = rx.cap(1).trimmed(); } if (info.name.isEmpty() || m_themeHash.contains(info.name)) { return info; } rx.setPattern("Author:(.*)\\n"); rx.indexIn(theme_info); if (rx.captureCount() == 1) { info.author = rx.cap(1).trimmed(); } rx.setPattern("Short Description:(.*)\\n"); rx.indexIn(theme_info); if (rx.captureCount() == 1) { info.shortDescription = rx.cap(1).trimmed(); } rx.setPattern("Long Description:(.*)\\n"); rx.indexIn(theme_info); if (rx.captureCount() == 1) { info.longDescription = rx.cap(1).trimmed(); } info.isValid = true; m_themeHash.insert(name, info); return info; } void ThemeManager::save() { QListWidgetItem* currentItem = ui->listWidget->currentItem(); if (!currentItem) { return; } Settings settings; settings.beginGroup("Themes"); settings.setValue("activeTheme", currentItem->data(Qt::UserRole)); settings.endGroup(); } ThemeManager::~ThemeManager() { delete ui; } qupzilla-1.6.0/src/lib/preferences/thememanager.h000066400000000000000000000033101226107126500220220ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef THEMEMANAGER_H #define THEMEMANAGER_H #include #include #include #include "qz_namespace.h" namespace Ui { class ThemeManager; } class Preferences; class QT_QUPZILLA_EXPORT ThemeManager : public QWidget { Q_OBJECT public: explicit ThemeManager(QWidget* parent, Preferences* preferences); ~ThemeManager(); void save(); private slots: void currentChanged(); void showLicense(); private: struct Theme { bool isValid; QIcon icon; QString name; QString author; QString shortDescription; QString longDescription; QString license; }; Theme parseTheme(const QString &path, const QString &name); Ui::ThemeManager* ui; Preferences* m_preferences; QString m_activeTheme; QHash m_themeHash; }; #endif // THEMEMANAGER_H qupzilla-1.6.0/src/lib/preferences/thememanager.ui000066400000000000000000000077371226107126500222310ustar00rootroot00000000000000 ThemeManager 0 0 512 316 0 0 QFormLayout::AllNonFixedFieldsGrow 4 <b>Name:</b> Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop <b>Author:</b> Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop true Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse <b>Description:</b> Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop true Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse 0 0 PointingHandCursor License true ClickableLabel QLabel
    clickablelabel.h
    qupzilla-1.6.0/src/lib/preferences/useragentdialog.cpp000066400000000000000000000164221226107126500231050ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "useragentdialog.h" #include "ui_useragentdialog.h" #include "useragentmanager.h" #include "qztools.h" #include "mainapplication.h" #include "settings.h" #include #include #include UserAgentDialog::UserAgentDialog(QWidget* parent) : QDialog(parent) , ui(new Ui::UserAgentDialog) , m_manager(mApp->uaManager()) { ui->setupUi(this); ui->globalComboBox->setLayoutDirection(Qt::LeftToRight); ui->table->setLayoutDirection(Qt::LeftToRight); const QString os = QzTools::operatingSystem(); m_knownUserAgents << QString("Opera/9.80 (%1) Presto/2.12.388 Version/12.14").arg(os) << QString("Mozilla/5.0 (%1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.116 Safari/537.36").arg(os) << QString("Mozilla/5.0 (%1) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0.6 Safari/536.26").arg(os) << QString("Mozilla/5.0 (%1; rv:24.0) Gecko/20131101 Firefox/24.1.0").arg(os); ui->globalComboBox->addItems(m_knownUserAgents); const QString globalUserAgent = m_manager->globalUserAgent(); ui->changeGlobal->setChecked(!globalUserAgent.isEmpty()); ui->globalComboBox->lineEdit()->setText(globalUserAgent); ui->globalComboBox->lineEdit()->setCursorPosition(0); ui->changePerSite->setChecked(m_manager->usePerDomainUserAgents()); QHashIterator i(m_manager->perDomainUserAgentsList()); while (i.hasNext()) { i.next(); QTableWidgetItem* siteItem = new QTableWidgetItem(i.key()); QTableWidgetItem* userAgentItem = new QTableWidgetItem(i.value()); int row = ui->table->rowCount(); ui->table->insertRow(row); ui->table->setItem(row, 0, siteItem); ui->table->setItem(row, 1, userAgentItem); } ui->table->sortByColumn(-1); connect(ui->add, SIGNAL(clicked()), this, SLOT(addSite())); connect(ui->remove, SIGNAL(clicked()), this, SLOT(removeSite())); connect(ui->edit, SIGNAL(clicked()), this, SLOT(editSite())); connect(ui->table, SIGNAL(itemDoubleClicked(QTableWidgetItem*)), this, SLOT(editSite())); connect(ui->changeGlobal, SIGNAL(clicked(bool)), this, SLOT(enableGlobalComboBox(bool))); connect(ui->changePerSite, SIGNAL(clicked(bool)), this, SLOT(enablePerSiteFrame(bool))); enableGlobalComboBox(ui->changeGlobal->isChecked()); enablePerSiteFrame(ui->changePerSite->isChecked()); } void UserAgentDialog::addSite() { QString site; QString userAgent; if (showEditDialog(tr("Add new site"), &site, &userAgent)) { QTableWidgetItem* siteItem = new QTableWidgetItem(site); QTableWidgetItem* userAgentItem = new QTableWidgetItem(userAgent); int row = ui->table->rowCount(); ui->table->insertRow(row); ui->table->setItem(row, 0, siteItem); ui->table->setItem(row, 1, userAgentItem); } } void UserAgentDialog::removeSite() { int row = ui->table->currentRow(); QTableWidgetItem* siteItem = ui->table->item(row, 0); QTableWidgetItem* userAgentItem = ui->table->item(row, 1); if (siteItem && userAgentItem) { delete siteItem; delete userAgentItem; ui->table->removeRow(row); } } void UserAgentDialog::editSite() { int row = ui->table->currentRow(); QTableWidgetItem* siteItem = ui->table->item(row, 0); QTableWidgetItem* userAgentItem = ui->table->item(row, 1); if (siteItem && userAgentItem) { QString site = siteItem->text(); QString userAgent = userAgentItem->text(); if (showEditDialog(tr("Edit site"), &site, &userAgent)) { siteItem->setText(site); userAgentItem->setText(userAgent); } } } void UserAgentDialog::accept() { QString globalUserAgent = ui->changeGlobal->isChecked() ? ui->globalComboBox->currentText() : QString(); QStringList domainList; QStringList userAgentsList; for (int i = 0; i < ui->table->rowCount(); ++i) { QTableWidgetItem* siteItem = ui->table->item(i, 0); QTableWidgetItem* userAgentItem = ui->table->item(i, 1); if (!siteItem || !userAgentItem) { continue; } QString domain = siteItem->text().trimmed(); QString userAgent = userAgentItem->text().trimmed(); if (domain.isEmpty() || userAgent.isEmpty()) { continue; } domainList.append(domain); userAgentsList.append(userAgent); } Settings settings; settings.beginGroup("Web-Browser-Settings"); settings.setValue("UserAgent", globalUserAgent); settings.endGroup(); settings.beginGroup("User-Agent-Settings"); settings.setValue("UsePerDomainUA", ui->changePerSite->isChecked()); settings.setValue("DomainList", domainList); settings.setValue("UserAgentsList", userAgentsList); settings.endGroup(); m_manager->loadSettings(); close(); } void UserAgentDialog::enableGlobalComboBox(bool enable) { ui->globalComboBox->setEnabled(enable); } void UserAgentDialog::enablePerSiteFrame(bool enable) { ui->perSiteFrame->setEnabled(enable); } bool UserAgentDialog::showEditDialog(const QString &title, QString* rSite, QString* rUserAgent) { QDialog* dialog = new QDialog(this); QFormLayout* layout = new QFormLayout(dialog); QLineEdit* editSite = new QLineEdit(dialog); QComboBox* editAgent = new QComboBox(dialog); editAgent->setLayoutDirection(Qt::LeftToRight); editAgent->setEditable(true); editAgent->addItems(m_knownUserAgents); QDialogButtonBox* box = new QDialogButtonBox(dialog); box->addButton(QDialogButtonBox::Ok); box->addButton(QDialogButtonBox::Cancel); connect(box, SIGNAL(rejected()), dialog, SLOT(reject())); connect(box, SIGNAL(accepted()), dialog, SLOT(accept())); layout->addRow(new QLabel(tr("Site domain: ")), editSite); layout->addRow(new QLabel(tr("User Agent: ")), editAgent); layout->addRow(box); if (rSite && rUserAgent) { editSite->setText(*rSite); editAgent->lineEdit()->setText(*rUserAgent); editSite->setFocus(); editAgent->lineEdit()->setCursorPosition(0); } dialog->setWindowTitle(title); dialog->setMinimumSize(550, 100); dialog->setMaximumWidth(550); if (dialog->exec()) { *rSite = editSite->text(); *rUserAgent = editAgent->currentText(); return !rSite->isEmpty() && !rUserAgent->isEmpty(); } return false; } UserAgentDialog::~UserAgentDialog() { delete ui; } qupzilla-1.6.0/src/lib/preferences/useragentdialog.h000066400000000000000000000031201226107126500225410ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef USERAGENTDIALOG_H #define USERAGENTDIALOG_H #include #include #include "qz_namespace.h" class UserAgentManager; namespace Ui { class UserAgentDialog; } class QT_QUPZILLA_EXPORT UserAgentDialog : public QDialog { Q_OBJECT public: explicit UserAgentDialog(QWidget* parent = 0); ~UserAgentDialog(); private slots: void addSite(); void removeSite(); void editSite(); void accept(); void enableGlobalComboBox(bool enable); void enablePerSiteFrame(bool enable); private: bool showEditDialog(const QString &title, QString* rSite, QString* rUserAgent); Ui::UserAgentDialog* ui; UserAgentManager* m_manager; QStringList m_knownUserAgents; }; #endif // USERAGENTDIALOG_H qupzilla-1.6.0/src/lib/preferences/useragentdialog.ui000066400000000000000000000120051226107126500227310ustar00rootroot00000000000000 UserAgentDialog 0 0 504 377 User Agent Manager Change global User Agent true QComboBox::AdjustToMinimumContentsLength false 0 Use different User Agents for specified sites 4 QAbstractItemView::NoEditTriggers true QAbstractItemView::SingleSelection QAbstractItemView::SelectRows false true true false 25 Site User Agent Add Remove Qt::Vertical 20 40 Edit Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok buttonBox accepted() UserAgentDialog accept() 248 254 157 274 buttonBox rejected() UserAgentDialog reject() 316 260 286 274 qupzilla-1.6.0/src/lib/rss/000077500000000000000000000000001226107126500155255ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/rss/rssicon.cpp000066400000000000000000000033321226107126500177120ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "rssicon.h" #include "rsswidget.h" #include RssIcon::RssIcon(QWidget* parent) : ClickableLabel(parent) , m_view(0) { setObjectName("locationbar-rss-icon"); setCursor(Qt::PointingHandCursor); setFocusPolicy(Qt::ClickFocus); setToolTip(tr("Add RSS from this page...")); connect(this, SIGNAL(clicked(QPoint)), this, SLOT(iconClicked())); } void RssIcon::setWebView(WebView* view) { m_view = view; } void RssIcon::iconClicked() { if (!m_view) { return; } RSSWidget* rss = new RSSWidget(m_view, parentWidget()); rss->showAt(parentWidget()); } void RssIcon::contextMenuEvent(QContextMenuEvent* ev) { // Prevent propagating to LocationBar ev->accept(); } void RssIcon::mousePressEvent(QMouseEvent* ev) { ClickableLabel::mousePressEvent(ev); // Prevent propagating to LocationBar ev->accept(); } qupzilla-1.6.0/src/lib/rss/rssicon.h000066400000000000000000000024431226107126500173610ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef RSSICON_H #define RSSICON_H #include "qz_namespace.h" #include "clickablelabel.h" class WebView; class QT_QUPZILLA_EXPORT RssIcon : public ClickableLabel { Q_OBJECT public: explicit RssIcon(QWidget* parent = 0); void setWebView(WebView* view); private slots: void iconClicked(); private: void contextMenuEvent(QContextMenuEvent* ev); void mousePressEvent(QMouseEvent* ev); WebView* m_view; }; #endif // RSSICON_H qupzilla-1.6.0/src/lib/rss/rssmanager.cpp000066400000000000000000000311621226107126500203760ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "rssmanager.h" #include "ui_rssmanager.h" #include "qupzilla.h" #include "tabwidget.h" #include "mainapplication.h" #include "treewidget.h" #include "iconprovider.h" #include "browsinglibrary.h" #include "qztools.h" #include "followredirectreply.h" #include "networkmanager.h" #include "qzsettings.h" #include #include #include #include #include #include #include #include #include RSSManager::RSSManager(QupZilla* mainClass, QWidget* parent) : QWidget(parent) , ui(new Ui::RSSManager) , p_QupZilla(mainClass) { ui->setupUi(this); #ifdef Q_OS_MAC ui->tabWidget->setDocumentMode(false); #endif ui->tabWidget->setElideMode(Qt::ElideRight); m_networkManager = mApp->networkManager(); m_reloadButton = new QToolButton(this); m_reloadButton->setAutoRaise(true); m_reloadButton->setToolTip(tr("Reload")); m_reloadButton->setIcon(qIconProvider->standardIcon(QStyle::SP_BrowserReload)); ui->tabWidget->setCornerWidget(m_reloadButton); connect(m_reloadButton, SIGNAL(clicked()), this, SLOT(reloadFeeds())); connect(ui->add, SIGNAL(clicked()), this, SLOT(addFeed())); connect(ui->deletebutton, SIGNAL(clicked()), this, SLOT(deleteFeed())); connect(ui->edit, SIGNAL(clicked()), this, SLOT(editFeed())); } QupZilla* RSSManager::getQupZilla() { if (!p_QupZilla) { p_QupZilla = mApp->getWindow(); } return p_QupZilla.data(); } void RSSManager::deleteAllTabs() { while (ui->tabWidget->count() > 0) { QWidget* w = ui->tabWidget->widget(0); ui->tabWidget->removeTab(0); delete w; } } void RSSManager::setMainWindow(QupZilla* window) { if (window) { p_QupZilla = window; } } void RSSManager::refreshTable() { QSqlQuery query; ui->tabWidget->setUpdatesEnabled(false); deleteAllTabs(); query.exec("SELECT address, title, icon FROM rss"); int i = 0; while (query.next()) { QUrl address = query.value(0).toUrl(); QString title = query.value(1).toString(); QIcon icon = qIconProvider->iconFromImage(QImage::fromData(query.value(2).toByteArray())); TreeWidget* tree = new TreeWidget(); tree->setHeaderLabel(tr("News")); tree->setContextMenuPolicy(Qt::CustomContextMenu); connect(tree, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(customContextMenuRequested(QPoint))); ui->tabWidget->addTab(tree, title); ui->tabWidget->setTabToolTip(i, address.toString()); connect(tree, SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)), this, SLOT(loadFeed(QTreeWidgetItem*))); connect(tree, SIGNAL(itemMiddleButtonClicked(QTreeWidgetItem*)), this, SLOT(controlLoadFeed(QTreeWidgetItem*))); connect(tree, SIGNAL(itemControlClicked(QTreeWidgetItem*)), this, SLOT(controlLoadFeed(QTreeWidgetItem*))); QTreeWidgetItem* item = new QTreeWidgetItem(); item->setText(0, tr("Loading...")); tree->addTopLevelItem(item); ui->tabWidget->setTabIcon(i, icon); beginToLoadSlot(address); i++; } if (i > 0) { ui->deletebutton->setEnabled(true); m_reloadButton->setEnabled(true); ui->edit->setEnabled(true); } else { ui->deletebutton->setEnabled(false); m_reloadButton->setEnabled(false); ui->edit->setEnabled(false); QFrame* frame = new QFrame(); frame->setObjectName("rssmanager-frame"); QVBoxLayout* verticalLayout = new QVBoxLayout(frame); QLabel* label_2 = new QLabel(frame); label_2->setPixmap(QPixmap(":/icons/menu/rss.png")); label_2->setAlignment(Qt::AlignBottom | Qt::AlignHCenter); verticalLayout->addWidget(label_2); QLabel* label = new QLabel(frame); label->setAlignment(Qt::AlignHCenter | Qt::AlignTop); label->setText(tr("You don't have any RSS Feeds.
    \nPlease add some with RSS icon in navigation bar on site which offers feeds.")); verticalLayout->addWidget(label); ui->tabWidget->addTab(frame, tr("Empty")); } ui->tabWidget->setUpdatesEnabled(true); } void RSSManager::reloadFeeds() { TreeWidget* treeWidget = qobject_cast(ui->tabWidget->widget(ui->tabWidget->currentIndex())); if (!treeWidget) { return; } treeWidget->clear(); QTreeWidgetItem* item = new QTreeWidgetItem(); item->setText(0, tr("Loading...")); treeWidget->addTopLevelItem(item); beginToLoadSlot(QUrl(ui->tabWidget->tabToolTip(ui->tabWidget->currentIndex()))); } void RSSManager::addFeed() { QUrl url = QUrl(QInputDialog::getText(this, tr("Add new feed"), tr("Please enter URL of new feed:"))); if (url.isEmpty() || !url.isValid()) { return; } addRssFeed(url, tr("New feed"), _iconForUrl(url)); refreshTable(); } void RSSManager::deleteFeed() { QString url = ui->tabWidget->tabToolTip(ui->tabWidget->currentIndex()); if (url.isEmpty()) { return; } QSqlQuery query; query.prepare("DELETE FROM rss WHERE address=?"); query.addBindValue(url); query.exec(); ui->tabWidget->removeTab(ui->tabWidget->currentIndex()); if (ui->tabWidget->count() == 0) { refreshTable(); } } void RSSManager::editFeed() { QString url = ui->tabWidget->tabToolTip(ui->tabWidget->currentIndex()); if (url.isEmpty()) { return; } QDialog dialog(this); QFormLayout* layout = new QFormLayout(&dialog); QLabel* label = new QLabel(&dialog); QLineEdit* editUrl = new QLineEdit(&dialog); QLineEdit* editTitle = new QLineEdit(&dialog); QDialogButtonBox* box = new QDialogButtonBox(&dialog); box->addButton(QDialogButtonBox::Ok); box->addButton(QDialogButtonBox::Cancel); connect(box, SIGNAL(rejected()), &dialog, SLOT(reject())); connect(box, SIGNAL(accepted()), &dialog, SLOT(accept())); label->setText(tr("Fill title and URL of a feed: ")); layout->addRow(label); layout->addRow(new QLabel(tr("Feed title: ")), editTitle); layout->addRow(new QLabel(tr("Feed URL: ")), editUrl); layout->addRow(box); editUrl->setText(ui->tabWidget->tabToolTip(ui->tabWidget->currentIndex())); editTitle->setText(ui->tabWidget->tabText(ui->tabWidget->currentIndex())); dialog.setWindowTitle(tr("Edit RSS Feed")); dialog.setMinimumSize(400, 100); dialog.exec(); if (dialog.result() == QDialog::Rejected) { return; } QString address = editUrl->text(); QString title = editTitle->text(); if (address.isEmpty() || title.isEmpty()) { return; } QSqlQuery query; query.prepare("UPDATE rss SET address=?, title=? WHERE address=?"); query.bindValue(0, address); query.bindValue(1, title); query.bindValue(2, url); query.exec(); refreshTable(); } void RSSManager::customContextMenuRequested(const QPoint &position) { TreeWidget* treeWidget = qobject_cast(ui->tabWidget->widget(ui->tabWidget->currentIndex())); if (!treeWidget) { return; } if (!treeWidget->itemAt(position)) { return; } QString link = treeWidget->itemAt(position)->toolTip(0); if (link.isEmpty()) { return; } QMenu menu; menu.addAction(tr("Open link in current tab"), getQupZilla(), SLOT(loadActionUrl()))->setData(link); menu.addAction(tr("Open link in new tab"), this, SLOT(loadFeedInNewTab()))->setData(link); //Prevent choosing first option with double rightclick QPoint pos = treeWidget->viewport()->mapToGlobal(position); QPoint p(pos.x(), pos.y() + 1); menu.exec(p); } void RSSManager::loadFeed(QTreeWidgetItem* item) { if (!item) { return; } if (item->toolTip(0).isEmpty()) { return; } getQupZilla()->loadAddress(QUrl(item->toolTip(0))); } void RSSManager::controlLoadFeed(QTreeWidgetItem* item) { if (!item || item->toolTip(0).isEmpty()) { return; } getQupZilla()->tabWidget()->addView(QUrl(item->toolTip(0)), qzSettings->newTabPosition); } void RSSManager::loadFeedInNewTab() { if (QAction* action = qobject_cast(sender())) { getQupZilla()->tabWidget()->addView(action->data().toUrl(), qzSettings->newTabPosition); } } void RSSManager::beginToLoadSlot(const QUrl &url) { FollowRedirectReply* reply = new FollowRedirectReply(url, m_networkManager); connect(reply, SIGNAL(finished()), this, SLOT(finished())); QPair pair; pair.first = reply; pair.second = url; m_replies.append(pair); } void RSSManager::finished() { FollowRedirectReply* reply = qobject_cast (sender()); if (!reply) { return; } QString replyUrl; for (int i = 0; i < m_replies.count(); i++) { QPair pair = m_replies.at(i); if (pair.first == reply) { replyUrl = pair.second.toString(); break; } } if (replyUrl.isEmpty()) { return; } QString currentTag; QString linkString; QString titleString; QXmlStreamReader xml; xml.addData(reply->readAll()); reply->deleteLater(); int tabIndex = -1; for (int i = 0; i < ui->tabWidget->count(); i++) { if (replyUrl == ui->tabWidget->tabToolTip(i)) { tabIndex = i; break; } } if (tabIndex == -1) { return; } TreeWidget* treeWidget = qobject_cast(ui->tabWidget->widget(tabIndex)); if (!treeWidget) { return; } treeWidget->clear(); while (!xml.atEnd()) { xml.readNext(); if (xml.isStartElement()) { if (xml.name() == QLatin1String("item")) { linkString = xml.attributes().value("rss:about").toString(); } currentTag = xml.qualifiedName().toString(); } else if (xml.isEndElement()) { if (xml.qualifiedName() == QLatin1String("item")) { QTreeWidgetItem* item = new QTreeWidgetItem; item->setText(0, titleString); item->setIcon(0, QIcon(":/icons/other/feed.png")); item->setToolTip(0, linkString); treeWidget->addTopLevelItem(item); titleString.clear(); linkString.clear(); } } else if (xml.isCharacters() && !xml.isWhitespace()) { if (currentTag == QLatin1String("title")) { titleString = xml.text().toString(); } else if (currentTag == QLatin1String("link")) { linkString += xml.text().toString(); } } } if (treeWidget->topLevelItemCount() == 0) { QTreeWidgetItem* item = new QTreeWidgetItem; item->setText(0, tr("Error in fetching feed")); treeWidget->addTopLevelItem(item); } } bool RSSManager::addRssFeed(const QUrl &url, const QString &title, const QIcon &icon) { if (url.isEmpty()) { return false; } QSqlQuery query; query.prepare("SELECT id FROM rss WHERE address=?"); query.addBindValue(url); query.exec(); if (!query.next()) { QImage image = icon.pixmap(16, 16).toImage(); if (image == qIconProvider->emptyWebImage()) { image.load(":icons/other/feed.png"); } query.prepare("INSERT INTO rss (address, title, icon) VALUES(?,?,?)"); query.bindValue(0, url); query.bindValue(1, title); QByteArray ba; QBuffer buffer(&ba); buffer.open(QIODevice::WriteOnly); image.save(&buffer, "PNG"); query.bindValue(2, buffer.data()); query.exec(); return true; } QMessageBox::warning(getQupZilla(), tr("RSS feed duplicated"), tr("You already have this feed.")); return false; } RSSManager::~RSSManager() { delete ui; } qupzilla-1.6.0/src/lib/rss/rssmanager.h000066400000000000000000000042641226107126500200460ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef RSSMANAGER_H #define RSSMANAGER_H #include "qz_namespace.h" #include #include #include #include #include #include #include #include #include namespace Ui { class RSSManager; } class QupZilla; class FollowRedirectReply; class NetworkManager; class QT_QUPZILLA_EXPORT RSSManager : public QWidget { Q_OBJECT friend class BrowsingLibrary; public: explicit RSSManager(QupZilla* mainClass, QWidget* parent = 0); ~RSSManager(); bool addRssFeed(const QUrl &url, const QString &title, const QIcon &icon); void setMainWindow(QupZilla* window); public slots: void refreshTable(); private slots: void beginToLoadSlot(const QUrl &url); void finished(); void loadFeed(QTreeWidgetItem* item); void controlLoadFeed(QTreeWidgetItem* item); void addFeed(); void reloadFeeds(); void deleteFeed(); void editFeed(); void customContextMenuRequested(const QPoint &position); void loadFeedInNewTab(); private: QupZilla* getQupZilla(); void deleteAllTabs(); QList > m_replies; NetworkManager* m_networkManager; Ui::RSSManager* ui; QToolButton* m_reloadButton; QPointer p_QupZilla; }; #endif // RSSMANAGER_H qupzilla-1.6.0/src/lib/rss/rssmanager.ui000066400000000000000000000045551226107126500202370ustar00rootroot00000000000000 RSSManager 0 0 600 410 RSS Reader 6 Qt::NoFocus false true Empty 0 0 0 Add feed false Edit feed false Delete feed Qt::Horizontal 40 20 qupzilla-1.6.0/src/lib/rss/rssnotification.cpp000066400000000000000000000141741226107126500214560ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "rssnotification.h" #include "ui_rssnotification.h" #include "mainapplication.h" #include "browsinglibrary.h" #include "iconprovider.h" #include "processinfo.h" #include "rssmanager.h" #include "settings.h" #include "webview.h" #include "qztools.h" #include #include #include RSSNotification::RSSNotification(const QString &title, const QUrl &url, WebView* parent) : AnimatedWidget(AnimatedWidget::Down, 300, parent) , ui(new Ui::RSSNotification) , m_title(title) , m_url(url) , m_view(parent) { setAutoFillBackground(true); setAttribute(Qt::WA_DeleteOnClose); ui->setupUi(widget()); ui->closeButton->setIcon(qIconProvider->standardIcon(QStyle::SP_DialogCloseButton)); ui->label->setText(tr("RSS feed \"%1\"").arg(title)); RssApp bloglines; bloglines.type = WebApplication; bloglines.title = "Bloglines"; bloglines.icon = QIcon(":/icons/sites/bloglines.png"); bloglines.address = "http://www.bloglines.com/sub?url="; RssApp myaol; myaol.type = WebApplication; myaol.title = "My AOL"; myaol.icon = QIcon(":/icons/sites/aol.png"); myaol.address = "http://feeds.my.aol.com/add.jsp?url="; RssApp netvibes; netvibes.type = WebApplication; netvibes.title = "Netvibes"; netvibes.icon = QIcon(":/icons/sites/netvibes.png"); netvibes.address = "http://www.netvibes.com/subscribe.php?url="; RssApp yahoo; yahoo.type = WebApplication; yahoo.title = "Yahoo!"; yahoo.icon = QIcon(":/icons/sites/yahoo.png"); yahoo.address = "http://add.my.yahoo.com/rss?url="; m_rssApps << bloglines << myaol << netvibes << yahoo; #ifdef QZ_WS_X11 const QString akregatorBin = QzTools::resolveFromPath("akregator"); const QString lifereaBin = QzTools::resolveFromPath("liferea"); const QString lifereaAddFeedBin = QzTools::resolveFromPath("liferea-add-feed"); if (!akregatorBin.isEmpty()) { RssApp akregator; akregator.type = DesktopApplication; akregator.title = "Akregator"; akregator.icon = QIcon(":/icons/sites/akregator.png"); akregator.executable = akregatorBin; akregator.arguments = "-a"; m_rssApps << akregator; } if (!lifereaBin.isEmpty() && !lifereaAddFeedBin.isEmpty()) { RssApp liferea; liferea.type = DesktopApplication; liferea.title = "Liferea"; liferea.icon = QIcon(":/icons/sites/liferea.png"); liferea.executable = lifereaAddFeedBin; m_rssApps << liferea; } #endif foreach (const RssApp &app, m_rssApps) { ui->comboBox->addItem(app.icon, app.title, QVariant(app.type)); } ui->comboBox->addItem(QIcon(":/icons/qupzilla.png"), tr("Internal Reader"), QVariant(Internal)); ui->comboBox->addItem(tr("Other..."), QVariant(Other)); Settings settings; settings.beginGroup("RSS"); ui->comboBox->setCurrentIndex(settings.value("LastAddOptionIndex", ui->comboBox->count() - 2).toInt()); settings.endGroup(); connect(ui->add, SIGNAL(clicked()), this, SLOT(addRss())); connect(ui->closeButton, SIGNAL(clicked()), this, SLOT(hide())); startAnimation(); } void RSSNotification::hide() { m_view->setFocus(); AnimatedWidget::hide(); } void RSSNotification::addRss() { bool success = false; int index = ui->comboBox->currentIndex(); switch (ui->comboBox->itemData(index).toInt()) { case WebApplication: { const RssApp app = m_rssApps.at(index); const QUrl url = QUrl::fromEncoded(QString(app.address + QUrl::toPercentEncoding(m_url.toString())).toLatin1()); m_view->openUrlInNewTab(url, Qz::NT_SelectedTab); success = true; break; } case DesktopApplication: { const RssApp app = m_rssApps.at(index); if (app.title == QLatin1String("Liferea")) { if (!ProcessInfo("liferea").isRunning()) { QMessageBox::warning(this, tr("Liferea not running"), tr("Liferea must be running in order to add new feed.")); success = false; break; } } const QString arguments = QString("%1 %2").arg(app.arguments, QString::fromUtf8(m_url.toEncoded())); success = QzTools::startExternalProcess(app.executable, arguments); break; } case Other: { QApplication::clipboard()->setText(m_url.toEncoded()); const QString message = tr("To add this RSS feed into other application, please use this information:

    " "Title: %1
    Url: %2

    " "Url address of this feed has been copied into your clipboard.").arg(m_title, m_url.toString()); QMessageBox::information(0, tr("Add feed into other application"), message); success = true; break; } case Internal: success = mApp->rssManager()->addRssFeed(m_url, m_title, m_view->icon()); if (success) { mApp->browsingLibrary()->showRSS(mApp->mainWindows().at(0)); } break; default: break; } if (success) { Settings settings; settings.beginGroup("RSS"); settings.setValue("LastAddOptionIndex", index); settings.endGroup(); hide(); } } RSSNotification::~RSSNotification() { delete ui; } qupzilla-1.6.0/src/lib/rss/rssnotification.h000066400000000000000000000033321226107126500211150ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef RSSNOTIFICATION_H #define RSSNOTIFICATION_H #include #include #include #include "qz_namespace.h" #include "animatedwidget.h" class WebView; namespace Ui { class RSSNotification; } class QT_QUPZILLA_EXPORT RSSNotification : public AnimatedWidget { Q_OBJECT public: explicit RSSNotification(const QString &title, const QUrl &url, WebView* parent = 0); ~RSSNotification(); public slots: void hide(); private slots: void addRss(); private: enum AppType { WebApplication, DesktopApplication, Internal, Other }; struct RssApp { AppType type; QString title; QIcon icon; QString address; QString executable; QString arguments; }; Ui::RSSNotification* ui; QString m_title; QUrl m_url; WebView* m_view; QVector m_rssApps; }; #endif // RSSNOTIFICATION_H qupzilla-1.6.0/src/lib/rss/rssnotification.ui000066400000000000000000000051511226107126500213040ustar00rootroot00000000000000 RSSNotification 0 0 713 36 2 2 0 0 :/icons/other/feed.png 0 0 Add this feed into Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter Qt::Horizontal QSizePolicy::Fixed 10 20 Add true MacToolButton QToolButton
    mactoolbutton.h
    qupzilla-1.6.0/src/lib/rss/rsswidget.cpp000066400000000000000000000064341226107126500202530ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "rsswidget.h" #include "ui_rsswidget.h" #include "mainapplication.h" #include "tabbedwebview.h" #include "webpage.h" #include "rssmanager.h" #include "rssnotification.h" #include #include #include RSSWidget::RSSWidget(WebView* view, QWidget* parent) : LocationBarPopup(parent) , ui(new Ui::RSSWidget) , m_view(view) { ui->setupUi(this); QWebFrame* frame = m_view->page()->mainFrame(); QWebElementCollection links = frame->findAllElements("link[type=\"application/rss+xml\"]"); // Make sure RSS feeds fit into a window, in case there is a lot of feeds from one page // See #906 int cols = links.count() / 10 == 0 ? 1 : links.count() / 10; int row = 0; for (int i = 0; i < links.count(); i++) { QWebElement element = links.at(i); QString title = element.attribute("title"); const QUrl url = QUrl::fromEncoded(element.attribute("href").toUtf8()); if (url.isEmpty()) { continue; } if (title.isEmpty()) { title = tr("Untitled feed"); } QPushButton* button = new QPushButton(this); button->setText(tr("Add")); button->setToolTip(url.toString()); button->setProperty("rss-url", url); button->setProperty("rss-title", title); QLabel* label = new QLabel(this); label->setText(fontMetrics().elidedText(title, Qt::ElideRight, 300)); label->setToolTip(title); int pos = i % cols > 0 ? (i % cols) * 2 : 0; ui->gridLayout->addWidget(label, row, pos); ui->gridLayout->addWidget(button, row, pos + 1); connect(button, SIGNAL(clicked()), this, SLOT(addRss())); if (i % cols == cols - 1) { row++; } } } void RSSWidget::addRss() { if (!m_view) { return; } if (QPushButton* button = qobject_cast(sender())) { QUrl url = button->property("rss-url").toUrl(); if (url.isRelative()) { url = m_view->page()->mainFrame()->baseUrl().resolved(url); } if (!url.isValid()) { return; } QString title = button->property("rss-title").toString(); if (title.isEmpty()) { title = m_view->url().host(); } RSSNotification* notif = new RSSNotification(title, url, m_view); m_view->addNotification(notif); close(); } } RSSWidget::~RSSWidget() { delete ui; } qupzilla-1.6.0/src/lib/rss/rsswidget.h000066400000000000000000000024271226107126500177160ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef RSSWIDGET_H #define RSSWIDGET_H #include #include "qz_namespace.h" #include "locationbarpopup.h" namespace Ui { class RSSWidget; } class WebView; class QT_QUPZILLA_EXPORT RSSWidget : public LocationBarPopup { Q_OBJECT public: explicit RSSWidget(WebView* view, QWidget* parent = 0); ~RSSWidget(); private slots: void addRss(); private: Ui::RSSWidget* ui; WebView* m_view; }; #endif // RSSWIDGET_H qupzilla-1.6.0/src/lib/rss/rsswidget.ui000066400000000000000000000047171226107126500201100ustar00rootroot00000000000000 RSSWidget 0 0 247 70 0 QFrame::NoFrame 0 0 0 0 :/icons/other/bigrss.png 0 0 Add RSS Feeds from this site 10 6 0 Frame QFrame
    frame.h
    1
    qupzilla-1.6.0/src/lib/session/000077500000000000000000000000001226107126500164015ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/session/recoverywidget.cpp000066400000000000000000000070261226107126500221540ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 Franz Fellner * David Rosca * * 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 3 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, see . * ============================================================ */ #include "recoverywidget.h" #include "ui_recoverywidget.h" #include "restoremanager.h" #include "mainapplication.h" #include "webview.h" #include "qupzilla.h" RecoveryWidget::RecoveryWidget(WebView* view, QupZilla* mainClass) : QWidget() , ui(new Ui::RecoveryWidget) , m_view(view) , p_QupZilla(mainClass) { ui->setupUi(this); setCursor(Qt::ArrowCursor); const RestoreData data = mApp->restoreManager()->restoreData(); for (int i = 0; i < data.size(); ++i) { const RestoreManager::WindowData wd = data.at(i); QTreeWidgetItem* root = new QTreeWidgetItem(ui->treeWidget); root->setFlags(Qt::ItemIsUserCheckable | Qt::ItemIsEnabled | Qt::ItemIsTristate); root->setText(0, tr("Window %1").arg((i + 1))); root->setCheckState(0, Qt::Checked); for (int tab = 0; tab < wd.tabsState.size(); ++tab) { const WebTab::SavedTab st = wd.tabsState.at(tab); QTreeWidgetItem* child = new QTreeWidgetItem(root); child->setFlags(Qt::ItemIsUserCheckable | Qt::ItemIsEnabled); child->setCheckState(0, Qt::Checked); child->setIcon(0, st.icon); child->setText(0, st.title); } } ui->treeWidget->expandAll(); connect(ui->restoreSession, SIGNAL(clicked()), this, SLOT(restoreSession())); connect(ui->newSession, SIGNAL(clicked()), this, SLOT(newSession())); } void RecoveryWidget::restoreSession() { RestoreManager* manager = mApp->restoreManager(); if (!manager) { return; } RestoreData data = manager->restoreData(); for (int win = ui->treeWidget->topLevelItemCount() - 1; win >= 0; --win) { QTreeWidgetItem* root = ui->treeWidget->topLevelItem(win); if (root->checkState(0) == Qt::Unchecked) { data.remove(win); continue; } RestoreManager::WindowData &wd = data[win]; for (int tab = root->childCount() - 1; tab >= 0; --tab) { if (root->child(tab)->checkState(0) == Qt::Unchecked) { wd.tabsState.remove(tab); if (wd.currentTab >= tab) { wd.currentTab--; } } } if (wd.tabsState.isEmpty()) { data.remove(win); continue; } if (wd.currentTab < 0) { wd.currentTab = wd.tabsState.size() - 1; } } if (!mApp->restoreStateSlot(p_QupZilla, data)) { newSession(); } } void RecoveryWidget::newSession() { m_view->load(p_QupZilla->homepageUrl()); mApp->destroyRestoreManager(); } RecoveryWidget::~RecoveryWidget() { delete ui; } qupzilla-1.6.0/src/lib/session/recoverywidget.h000066400000000000000000000026241226107126500216200ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 Franz Fellner * David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef RECOVERYWIDGET_H #define RECOVERYWIDGET_H #include namespace Ui { class RecoveryWidget; } class QTreeWidgetItem; class WebView; class QupZilla; class RecoveryWidget : public QWidget { Q_OBJECT public: explicit RecoveryWidget(WebView* view, QupZilla* mainClass); ~RecoveryWidget(); private slots: void restoreSession(); void newSession(); private: Ui::RecoveryWidget* ui; WebView* m_view; QupZilla* p_QupZilla; }; #endif // RECOVERYWIDGET_H qupzilla-1.6.0/src/lib/session/recoverywidget.ui000066400000000000000000000032031226107126500220000ustar00rootroot00000000000000 RecoveryWidget 0 0 500 300 Windows and Tabs 0 30 Start New Session 0 30 Restore Qt::Horizontal 40 20 qupzilla-1.6.0/src/lib/session/restoremanager.cpp000066400000000000000000000044631226107126500221320ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 Franz Fellner * David Rosca * * 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 3 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, see . * ============================================================ */ #include "restoremanager.h" #include RestoreManager::RestoreManager(const QString &sessionFile) { createFromFile(sessionFile); } RestoreData RestoreManager::restoreData() const { return m_data; } bool RestoreManager::isValid() const { return !m_data.isEmpty(); } void RestoreManager::createFromFile(const QString &file) { if (!QFile::exists(file)) { return; } QFile recoveryFile(file); recoveryFile.open(QIODevice::ReadOnly); QDataStream stream(&recoveryFile); int version; stream >> version; if (version != Qz::sessionVersion) { return; } int windowCount; stream >> windowCount; for (int win = 0; win < windowCount; ++win) { QByteArray tabState; QByteArray windowState; stream >> tabState; stream >> windowState; WindowData wd; wd.windowState = windowState; QDataStream tabStream(tabState); if (tabStream.atEnd()) { continue; } QVector tabs; int tabListCount = 0; tabStream >> tabListCount; for (int i = 0; i < tabListCount; ++i) { WebTab::SavedTab tab; tabStream >> tab; tabs.append(tab); } wd.tabsState = tabs; int currentTab; tabStream >> currentTab; wd.currentTab = currentTab; m_data.append(wd); } } qupzilla-1.6.0/src/lib/session/restoremanager.h000066400000000000000000000031721226107126500215730ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 Franz Fellner * David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef RESTOREMANAGER_H #define RESTOREMANAGER_H #include "webtab.h" #include "qz_namespace.h" class QT_QUPZILLA_EXPORT RestoreManager { public: struct WindowData { int currentTab; QByteArray windowState; QVector tabsState; }; RestoreManager(const QString &sessionFile); QVector restoreData() const; bool isValid() const; private: void createFromFile(const QString &file); QVector m_data; }; typedef QVector RestoreData; // Hint to QVector to use std::realloc on item moving Q_DECLARE_TYPEINFO(RestoreManager::WindowData, Q_MOVABLE_TYPE); #endif // RESTOREMANAGER_H qupzilla-1.6.0/src/lib/sidebar/000077500000000000000000000000001226107126500163275ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/sidebar/bookmarkssidebar.cpp000066400000000000000000000311721226107126500223610ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "bookmarkssidebar.h" #include "mainapplication.h" #include "ui_bookmarkssidebar.h" #include "qupzilla.h" #include "iconprovider.h" #include "tabbedwebview.h" #include "bookmarkstoolbar.h" #include "tabwidget.h" #include "bookmarksmodel.h" #include "qzsettings.h" #include #include #include #include #include BookmarksSideBar::BookmarksSideBar(QupZilla* mainClass, QWidget* parent) : QWidget(parent) , m_isRefreshing(false) , ui(new Ui::BookmarksSideBar) , p_QupZilla(mainClass) , m_bookmarksModel(mApp->bookmarksModel()) { ui->setupUi(this); ui->bookmarksTree->setViewType(BookmarksTree::SideBarView); ui->bookmarksTree->setSelectionBehavior(QAbstractItemView::SelectRows); ui->bookmarksTree->setDragDropReceiver(true, m_bookmarksModel); ui->bookmarksTree->setMimeType(QLatin1String("application/qupzilla.treewidgetitem.bookmarks")); ui->expandAll->setIcon(QIcon::fromTheme("view-sort-ascending", QIcon(":/icons/faenza/expand.png"))); ui->collapseAll->setIcon(QIcon::fromTheme("view-sort-descending", QIcon(":/icons/faenza/collapse.png"))); ui->bookmarksTree->setDefaultItemShowMode(TreeWidget::ItemsExpanded); connect(ui->bookmarksTree, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(contextMenuRequested(QPoint))); connect(ui->bookmarksTree, SIGNAL(itemControlClicked(QTreeWidgetItem*)), this, SLOT(itemControlClicked(QTreeWidgetItem*))); connect(ui->bookmarksTree, SIGNAL(itemMiddleButtonClicked(QTreeWidgetItem*)), this, SLOT(itemControlClicked(QTreeWidgetItem*))); connect(ui->bookmarksTree, SIGNAL(itemDoubleClicked(QTreeWidgetItem*,int)), this, SLOT(itemDoubleClicked(QTreeWidgetItem*))); connect(ui->search, SIGNAL(textChanged(QString)), ui->bookmarksTree, SLOT(filterString(QString))); connect(ui->collapseAll, SIGNAL(clicked()), ui->bookmarksTree, SLOT(collapseAll())); connect(ui->expandAll, SIGNAL(clicked()), ui->bookmarksTree, SLOT(expandAll())); connect(m_bookmarksModel, SIGNAL(bookmarkAdded(BookmarksModel::Bookmark)), this, SLOT(addBookmark(BookmarksModel::Bookmark))); connect(m_bookmarksModel, SIGNAL(bookmarkDeleted(BookmarksModel::Bookmark)), this, SLOT(removeBookmark(BookmarksModel::Bookmark))); connect(m_bookmarksModel, SIGNAL(bookmarkEdited(BookmarksModel::Bookmark,BookmarksModel::Bookmark)), this, SLOT(bookmarkEdited(BookmarksModel::Bookmark,BookmarksModel::Bookmark))); connect(m_bookmarksModel, SIGNAL(folderAdded(QString)), this, SLOT(addFolder(QString))); connect(m_bookmarksModel, SIGNAL(folderDeleted(QString)), this, SLOT(removeFolder(QString))); connect(m_bookmarksModel, SIGNAL(folderRenamed(QString,QString)), this, SLOT(renameFolder(QString,QString))); connect(m_bookmarksModel, SIGNAL(folderParentChanged(QString,bool)), this, SLOT(changeFolderParent(QString,bool))); connect(m_bookmarksModel, SIGNAL(bookmarkParentChanged(QString,QByteArray,int,QUrl,QString,QString)), this, SLOT(changeBookmarkParent(QString,QByteArray,int,QUrl,QString,QString))); QTimer::singleShot(0, this, SLOT(refreshTable())); } void BookmarksSideBar::itemControlClicked(QTreeWidgetItem* item) { if (!item || item->text(1).isEmpty()) { return; } const QUrl url = QUrl::fromEncoded(item->text(1).toUtf8()); p_QupZilla->tabWidget()->addView(url, item->text(0)); } void BookmarksSideBar::itemDoubleClicked(QTreeWidgetItem* item) { if (!item || item->text(1).isEmpty()) { return; } const QUrl url = QUrl::fromEncoded(item->text(1).toUtf8()); p_QupZilla->loadAddress(url); } void BookmarksSideBar::loadInNewTab() { QTreeWidgetItem* item = ui->bookmarksTree->currentItem(); QAction* action = qobject_cast(sender()); if (!item || !action) { return; } p_QupZilla->tabWidget()->addView(action->data().toUrl(), item->text(0), qzSettings->newTabPosition); } void BookmarksSideBar::copyAddress() { if (QAction* action = qobject_cast(sender())) { QApplication::clipboard()->setText(action->data().toUrl().toEncoded()); } } void BookmarksSideBar::deleteItem() { QTreeWidgetItem* item = ui->bookmarksTree->currentItem(); if (!item) { return; } int id = item->data(0, Qt::UserRole + 10).toInt(); m_bookmarksModel->removeBookmark(id); } void BookmarksSideBar::contextMenuRequested(const QPoint &position) { if (!ui->bookmarksTree->itemAt(position)) { return; } QUrl link = QUrl::fromEncoded(ui->bookmarksTree->itemAt(position)->text(1).toUtf8()); if (link.isEmpty()) { return; } QMenu menu; menu.addAction(tr("Open link in current &tab"), p_QupZilla, SLOT(loadActionUrl()))->setData(link); menu.addAction(tr("Open link in &new tab"), this, SLOT(loadInNewTab()))->setData(link); menu.addAction(tr("Copy address"), this, SLOT(copyAddress()))->setData(link); menu.addSeparator(); menu.addAction(tr("&Delete"), this, SLOT(deleteItem())); //Prevent choosing first option with double rightclick QPoint pos = ui->bookmarksTree->viewport()->mapToGlobal(position); QPoint p(pos.x(), pos.y() + 1); menu.exec(p); } void BookmarksSideBar::addBookmark(const BookmarksModel::Bookmark &bookmark) { QString translatedFolder = BookmarksModel::toTranslatedFolder(bookmark.folder); QTreeWidgetItem* item = new QTreeWidgetItem(); item->setText(0, bookmark.title); item->setText(1, bookmark.url.toEncoded()); item->setData(0, Qt::UserRole + 10, bookmark.id); item->setIcon(0, qIconProvider->iconFromImage(bookmark.image)); item->setToolTip(0, bookmark.url.toEncoded()); item->setFlags(item->flags() | Qt::ItemIsDragEnabled | Qt::ItemIsDropEnabled); if (bookmark.folder != QLatin1String("unsorted")) { ui->bookmarksTree->appendToParentItem(translatedFolder, item); } else { ui->bookmarksTree->addTopLevelItem(item); } // if (!ui->search->text().isEmpty()) item->setHidden(!bookmark.title.contains(ui->search->text(), Qt::CaseInsensitive)); } void BookmarksSideBar::removeBookmark(const BookmarksModel::Bookmark &bookmark) { if (bookmark.folder == QLatin1String("unsorted")) { QList list = ui->bookmarksTree->findItems(bookmark.title, Qt::MatchExactly); if (list.count() == 0) { return; } QTreeWidgetItem* item = list.at(0); if (item && item->data(0, Qt::UserRole + 10).toInt() == bookmark.id) { ui->bookmarksTree->deleteItem(item); } } else { QList list = ui->bookmarksTree->findItems(BookmarksModel::toTranslatedFolder(bookmark.folder), Qt::MatchExactly); if (list.count() == 0) { return; } QTreeWidgetItem* parentItem = list.at(0); if (!parentItem) { return; } for (int i = 0; i < parentItem->childCount(); i++) { QTreeWidgetItem* item = parentItem->child(i); if (!item) { continue; } if (item->text(0) == bookmark.title && item->data(0, Qt::UserRole + 10).toInt() == bookmark.id) { ui->bookmarksTree->deleteItem(item); return; } } } } void BookmarksSideBar::bookmarkEdited(const BookmarksModel::Bookmark &before, const BookmarksModel::Bookmark &after) { removeBookmark(before); addBookmark(after); } void BookmarksSideBar::addFolder(const QString &name) { QTreeWidgetItem* item = new QTreeWidgetItem(ui->bookmarksTree); item->setText(0, name); item->setIcon(0, style()->standardIcon(QStyle::SP_DirIcon)); if (name != _bookmarksToolbar && name != _bookmarksMenu) { item->setFlags(item->flags() | Qt::ItemIsDragEnabled | Qt::ItemIsDropEnabled); } else { item->setFlags((item->flags() & ~Qt::ItemIsDragEnabled) | Qt::ItemIsDropEnabled); } } void BookmarksSideBar::removeFolder(const QString &name) { QList list = ui->bookmarksTree->findItems(name, Qt::MatchExactly); if (list.count() == 0) { return; } QTreeWidgetItem* item = list.at(0); if (item) { ui->bookmarksTree->deleteItem(item); } } void BookmarksSideBar::renameFolder(const QString &before, const QString &after) { QList list = ui->bookmarksTree->findItems(before, Qt::MatchExactly); if (list.count() == 0) { return; } QTreeWidgetItem* item = list.at(0); if (!item) { return; } item->setText(0, after); } void BookmarksSideBar::changeBookmarkParent(const QString &name, const QByteArray &imageData, int id, const QUrl &url, const QString &oldParent, const QString &newParent) { if (!newParent.isEmpty() && newParent != QLatin1String("unsorted") && newParent != _bookmarksUnsorted && !oldParent.isEmpty() && oldParent != QLatin1String("unsorted") && oldParent != _bookmarksUnsorted) { // old and new parent are not invisibleRootItem() QList list = ui->bookmarksTree->findItems(newParent, Qt::MatchExactly); if (list.isEmpty()) { // newParent is a subfolder list = ui->bookmarksTree->findItems(oldParent, Qt::MatchExactly); if (list.isEmpty()) { // oldParent is a subfolder return; // item was reparented from bookmarkToolbar(subfolder) to subfolder(bookmarkToolbar) } } } QList list = ui->bookmarksTree->findItems(name, Qt::MatchExactly | Qt::MatchRecursive); QTreeWidgetItem* item = 0; foreach (item, list) { if (id == item->data(0, Qt::UserRole + 10).toInt()) { break; } } if (!item || id != item->data(0, Qt::UserRole + 10).toInt()) { // list is empty or item with 'id' was not found // bookmark's oldParent was bookmarkToolbar(subfolder) Bookmark bookmark; bookmark.id = id; bookmark.url = url; bookmark.title = name; bookmark.folder = BookmarksModel::fromTranslatedFolder(newParent.isEmpty() ? QLatin1String("unsorted") : newParent); bookmark.image = QImage::fromData(imageData); bookmark.inSubfolder = false; addBookmark(bookmark); return; } QTreeWidgetItem* parent = 0; if (newParent.isEmpty() || newParent == QLatin1String("unsorted") || newParent == _bookmarksUnsorted) { parent = ui->bookmarksTree->invisibleRootItem(); } item->parent() ? item->parent()->removeChild(item) : ui->bookmarksTree->invisibleRootItem()->removeChild(item); if (!parent) { list = ui->bookmarksTree->findItems(newParent, Qt::MatchExactly); if (list.count() == 0) { return; } parent = list.at(0); if (!parent) { return; } } parent->addChild(item); } void BookmarksSideBar::changeFolderParent(const QString &name, bool isSubfolder) { if (isSubfolder) { // folder moved to _bookmarksToolbar as a subfolder removeFolder(name); } else { addFolder(name); QVector bookmarksList = m_bookmarksModel->folderBookmarks(name); foreach (const Bookmark &b, bookmarksList) { addBookmark(b); } } } void BookmarksSideBar::keyPressEvent(QKeyEvent* event) { if (event->key() == Qt::Key_Return || event->key() == Qt::Key_Enter) { QTreeWidgetItem* item = ui->bookmarksTree->currentItem(); if (event->modifiers() & Qt::ControlModifier) { itemControlClicked(item); } else { itemDoubleClicked(item); } return; } QWidget::keyPressEvent(event); } void BookmarksSideBar::refreshTable() { m_isRefreshing = true; ui->bookmarksTree->refreshTree(); m_isRefreshing = false; ui->search->setFocus(); } BookmarksSideBar::~BookmarksSideBar() { delete ui; } qupzilla-1.6.0/src/lib/sidebar/bookmarkssidebar.h000066400000000000000000000046641226107126500220340ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef BOOKMARKSSIDEBAR_H #define BOOKMARKSSIDEBAR_H #include #include "qz_namespace.h" #include "bookmarksmodel.h" namespace Ui { class BookmarksSideBar; } class QTreeWidgetItem; class QupZilla; class BookmarksModel; class QT_QUPZILLA_EXPORT BookmarksSideBar : public QWidget { Q_OBJECT public: explicit BookmarksSideBar(QupZilla* mainClass, QWidget* parent = 0); ~BookmarksSideBar(); void setMainWindow(QupZilla* window); public slots: void refreshTable(); private slots: void deleteItem(); void contextMenuRequested(const QPoint &position); void loadInNewTab(); void itemControlClicked(QTreeWidgetItem* item); void itemDoubleClicked(QTreeWidgetItem* item); void copyAddress(); void addBookmark(const BookmarksModel::Bookmark &bookmark); void removeBookmark(const BookmarksModel::Bookmark &bookmark); void bookmarkEdited(const BookmarksModel::Bookmark &before, const BookmarksModel::Bookmark &after); void addFolder(const QString &name); void removeFolder(const QString &name); void renameFolder(const QString &before, const QString &after); void changeBookmarkParent(const QString &name, const QByteArray &imageData, int id, const QUrl &url, const QString &oldParent, const QString &newParent); void changeFolderParent(const QString &name, bool isSubfolder); private: void keyPressEvent(QKeyEvent* event); QupZilla* getQupZilla(); bool m_isRefreshing; Ui::BookmarksSideBar* ui; QupZilla* p_QupZilla; BookmarksModel* m_bookmarksModel; }; #endif // BOOKMARKSSIDEBAR_H qupzilla-1.6.0/src/lib/sidebar/bookmarkssidebar.ui000066400000000000000000000060611226107126500222130ustar00rootroot00000000000000 BookmarksSideBar 0 0 150 486 1 0 2 0 0 0 0 Qt::CustomContextMenu true QAbstractItemView::ContiguousSelection true 330 Bookmark Search... Qt::NoFocus Collapse All true Qt::NoFocus Expand All true BookmarksTree QTreeWidget
    bookmarkstree.h
    qupzilla-1.6.0/src/lib/sidebar/historysidebar.cpp000066400000000000000000000040011226107126500220610ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "historysidebar.h" #include "ui_historysidebar.h" #include "qupzilla.h" #include "tabwidget.h" #include "tabbedwebview.h" #include "mainapplication.h" #include "historymodel.h" #include "qzsettings.h" HistorySideBar::HistorySideBar(QupZilla* mainClass, QWidget* parent) : QWidget(parent) , ui(new Ui::HistorySideBar) , p_QupZilla(mainClass) { ui->setupUi(this); ui->historyTree->setColumnHidden(1, true); ui->historyTree->setColumnHidden(2, true); ui->historyTree->setColumnHidden(3, true); ui->historyTree->setSelectionMode(QAbstractItemView::SingleSelection); connect(ui->historyTree, SIGNAL(openLink(QUrl,HistoryView::OpenBehavior)), this, SLOT(openLink(QUrl,HistoryView::OpenBehavior))); connect(ui->search, SIGNAL(textEdited(QString)), ui->historyTree->filterModel(), SLOT(setFilterFixedString(QString))); } void HistorySideBar::openLink(const QUrl &url, HistoryView::OpenBehavior openIn) { if (openIn == HistoryView::OpenInNewTab) { p_QupZilla->tabWidget()->addView(url, qzSettings->newTabPosition); } else { p_QupZilla->weView()->load(url); } } HistorySideBar::~HistorySideBar() { delete ui; } qupzilla-1.6.0/src/lib/sidebar/historysidebar.h000066400000000000000000000025621226107126500215400ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef HISTORYSIDEBAR_H #define HISTORYSIDEBAR_H #include #include "qz_namespace.h" #include "historyview.h" namespace Ui { class HistorySideBar; } class QupZilla; class QT_QUPZILLA_EXPORT HistorySideBar : public QWidget { Q_OBJECT public: explicit HistorySideBar(QupZilla* mainClass, QWidget* parent = 0); ~HistorySideBar(); private slots: void openLink(const QUrl &url, HistoryView::OpenBehavior openIn); private: Ui::HistorySideBar* ui; QupZilla* p_QupZilla; }; #endif // HISTORYSIDEBAR_H qupzilla-1.6.0/src/lib/sidebar/historysidebar.ui000066400000000000000000000024501226107126500217220ustar00rootroot00000000000000 HistorySideBar 0 0 150 457 1 0 2 0 0 Search... true true HistoryView QTreeView
    historyview.h
    qupzilla-1.6.0/src/lib/sidebar/sidebar.cpp000066400000000000000000000133711226107126500204510ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "sidebar.h" #include "sidebarinterface.h" #include "docktitlebarwidget.h" #include "bookmarkssidebar.h" #include "historysidebar.h" #include "mainapplication.h" #include "qupzilla.h" #include "settings.h" #include QHash > SideBarManager::s_sidebars; SideBar::SideBar(SideBarManager* manager, QupZilla* mainClass) : QWidget(mainClass) , p_QupZilla(mainClass) , m_manager(manager) { setObjectName("sidebar"); setAttribute(Qt::WA_DeleteOnClose); m_layout = new QVBoxLayout(this); m_layout->setContentsMargins(0, 0, 0, 0); m_layout->setSpacing(0); setLayout(m_layout); m_titleBar = new DockTitleBarWidget(QString(), this); m_layout->addWidget(m_titleBar); } void SideBar::setTitle(const QString &title) { m_titleBar->setTitle(title); } void SideBar::setWidget(QWidget* widget) { if (m_layout->count() == 2) { delete m_layout->itemAt(1)->widget(); } m_layout->addWidget(widget); } void SideBar::showBookmarks() { m_titleBar->setTitle(tr("Bookmarks")); BookmarksSideBar* bar = new BookmarksSideBar(p_QupZilla); setWidget(bar); } void SideBar::showHistory() { m_titleBar->setTitle(tr("History")); HistorySideBar* bar = new HistorySideBar(p_QupZilla); setWidget(bar); } void SideBar::close() { m_manager->closeSideBar(); QWidget* p = parentWidget(); if (p) { p->setFocus(); } QWidget::close(); } SideBarManager::SideBarManager(QupZilla* parent) : QObject(parent) , p_QupZilla(parent) , m_menu(0) { } void SideBarManager::setSideBarMenu(QMenu* menu) { m_menu = menu; refreshMenu(); } void SideBarManager::addSidebar(const QString &id, SideBarInterface* interface) { s_sidebars[id] = interface; foreach (QupZilla* window, mApp->mainWindows()) { window->sideBarManager()->refreshMenu(); } } void SideBarManager::removeSidebar(const QString &id) { s_sidebars.remove(id); foreach (QupZilla* window, mApp->mainWindows()) { window->sideBarManager()->sideBarRemoved(id); } } void SideBarManager::refreshMenu() { if (!m_menu) { return; } foreach (QAction* action, m_menu->actions()) { p_QupZilla->removeAction(action); } m_menu->clear(); QAction* act = m_menu->addAction(SideBar::tr("Bookmarks"), this, SLOT(slotShowSideBar())); act->setCheckable(true); act->setShortcut(QKeySequence("Ctrl+Shift+B")); act->setData("Bookmarks"); act = m_menu->addAction(SideBar::tr("History"), this, SLOT(slotShowSideBar())); act->setCheckable(true); act->setShortcut(QKeySequence("Ctrl+H")); act->setData("History"); foreach (const QPointer &sidebar, s_sidebars) { if (!sidebar) { continue; } QAction* act = sidebar.data()->createMenuAction(); act->setData(s_sidebars.key(sidebar)); connect(act, SIGNAL(triggered()), this, SLOT(slotShowSideBar())); m_menu->addAction(act); } p_QupZilla->addActions(m_menu->actions()); updateActions(); } void SideBarManager::slotShowSideBar() { if (QAction* act = qobject_cast(sender())) { showSideBar(act->data().toString()); } } void SideBarManager::updateActions() { if (!m_menu) { return; } foreach (QAction* act, m_menu->actions()) { act->setChecked(act->data().toString() == m_activeBar); } } void SideBarManager::showSideBar(const QString &id, bool toggle) { if (id == QLatin1String("None")) { return; } if (!m_sideBar) { m_sideBar = p_QupZilla->addSideBar(); } if (id == m_activeBar) { if (!toggle) { return; } m_sideBar.data()->close(); m_activeBar = "None"; Settings settings; settings.setValue("Browser-View-Settings/SideBar", m_activeBar); return; } if (id == QLatin1String("Bookmarks")) { m_sideBar.data()->showBookmarks(); } else if (id == QLatin1String("History")) { m_sideBar.data()->showHistory(); } else { SideBarInterface* sidebar = s_sidebars[id].data(); if (!sidebar) { m_sideBar.data()->close(); return; } m_sideBar.data()->setTitle(sidebar->title()); m_sideBar.data()->setWidget(sidebar->createSideBarWidget(p_QupZilla)); } m_activeBar = id; Settings settings; settings.setValue("Browser-View-Settings/SideBar", m_activeBar); updateActions(); } void SideBarManager::sideBarRemoved(const QString &id) { if (m_activeBar == id && m_sideBar) { m_sideBar.data()->close(); } refreshMenu(); } void SideBarManager::closeSideBar() { if (mApp->isClosing()) { return; } m_activeBar = "None"; Settings settings; settings.setValue("Browser-View-Settings/SideBar", m_activeBar); p_QupZilla->saveSideBarWidth(); updateActions(); } qupzilla-1.6.0/src/lib/sidebar/sidebar.h000066400000000000000000000043271226107126500201170ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SIDEBAR_H #define SIDEBAR_H #include #include #include #include "qz_namespace.h" class QVBoxLayout; class QMenu; class DockTitleBarWidget; class SideBarInterface; class SideBarManager; class QupZilla; class QT_QUPZILLA_EXPORT SideBar : public QWidget { Q_OBJECT public: explicit SideBar(SideBarManager* manager, QupZilla* mainClass); void showBookmarks(); void showHistory(); void setTitle(const QString &title); void setWidget(QWidget* widget); public slots: void close(); private: QupZilla* p_QupZilla; QVBoxLayout* m_layout; DockTitleBarWidget* m_titleBar; SideBarManager* m_manager; }; class QT_QUPZILLA_EXPORT SideBarManager : public QObject { Q_OBJECT public: explicit SideBarManager(QupZilla* parent); void setSideBarMenu(QMenu* menu); void refreshMenu(); void showSideBar(const QString &id, bool toggle = true); void sideBarRemoved(const QString &id); void closeSideBar(); static QHash > s_sidebars; static void addSidebar(const QString &id, SideBarInterface* interface); static void removeSidebar(const QString &id); private slots: void slotShowSideBar(); private: void updateActions(); QupZilla* p_QupZilla; QPointer m_sideBar; QMenu* m_menu; QString m_activeBar; }; #endif // SIDEBAR_H qupzilla-1.6.0/src/lib/sidebar/sidebarinterface.h000066400000000000000000000024521226107126500217750ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SIDEBARINTERFACE_H #define SIDEBARINTERFACE_H #include #include "qz_namespace.h" class QAction; class QupZilla; class QT_QUPZILLA_EXPORT SideBarInterface : public QObject { public: explicit SideBarInterface(QObject* parent = 0) : QObject(parent) { } virtual QString title() const = 0; virtual QAction* createMenuAction() = 0; virtual QWidget* createSideBarWidget(QupZilla* mainWindow) = 0; }; #endif // SIDEBARINTERFACE_H qupzilla-1.6.0/src/lib/tools/000077500000000000000000000000001226107126500160565ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/tools/actioncopy.cpp000066400000000000000000000031271226107126500207350ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "actioncopy.h" ActionCopy::ActionCopy(QAction* original, QObject* parent) : QAction(parent) , m_action(original) { updateAction(); connect(m_action, SIGNAL(changed()), this, SLOT(updateAction())); connect(this, SIGNAL(toggled(bool)), this, SLOT(actionToggled())); connect(this, SIGNAL(triggered()), this, SLOT(actionTriggered())); } void ActionCopy::updateAction() { const QString shortcutString = m_action->shortcut().toString(QKeySequence::NativeText); const QString actionText = QString("%1\t%2").arg(m_action->text(), shortcutString); setText(actionText); setIcon(m_action->icon()); } void ActionCopy::actionToggled() { m_action->toggle(); } void ActionCopy::actionTriggered() { m_action->trigger(); } qupzilla-1.6.0/src/lib/tools/actioncopy.h000066400000000000000000000023311226107126500203760ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef ACTIONCOPY_H #define ACTIONCOPY_H #include #include "qz_namespace.h" class QT_QUPZILLA_EXPORT ActionCopy : public QAction { Q_OBJECT public: explicit ActionCopy(QAction* original, QObject* parent = 0); private slots: void updateAction(); void actionToggled(); void actionTriggered(); private: QAction* m_action; }; #endif // ACTIONCOPY_H qupzilla-1.6.0/src/lib/tools/aesinterface.cpp000066400000000000000000000154671226107126500212300ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 S. Razi Alavizadeh * Copyright (C) 2013 David Rosca * * This is based on a work by Saju Pillai * * 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 3 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, see . * ============================================================ */ #include "aesinterface.h" #include #include #include #include #include #include #include ////////////////////////////////////////////// /// Version 1: /// init(): n=5, EVP_CIPHER=EVP_aes_256_cbc(), EVP_MD=EVP_sha256(), Random IV /// Encrypted data structure: Version$InitializationVector_base64$EncryptedData_base64 const int AesInterface::VERSION = 1; AesInterface::AesInterface(QObject* parent) : QObject(parent) , m_ok(false) { EVP_CIPHER_CTX_init(&m_encodeCTX); EVP_CIPHER_CTX_init(&m_decodeCTX); } AesInterface::~AesInterface() { EVP_CIPHER_CTX_cleanup(&m_encodeCTX); EVP_CIPHER_CTX_cleanup(&m_decodeCTX); } bool AesInterface::isOk() { return m_ok; } // Create an 256 bit 'key' using the supplied password, and creates a random 'iv'. // saltArray is an array of 8 bytes can be added for taste. // Fills in the encryption and decryption ctx objects and returns true on success bool AesInterface::init(int evpMode, const QByteArray &password, const QByteArray &iVector) { m_iVector.clear(); int i; const int nrounds = 5; uchar key[EVP_MAX_KEY_LENGTH]; // Gen "key" for AES 256 CBC mode. A SHA1 digest is used to hash the supplied // key material. nrounds is the number of times that we hash the material. // More rounds are more secure but slower. i = EVP_BytesToKey(EVP_aes_256_cbc(), EVP_sha256(), 0, (uchar*)password.data(), password.size(), nrounds, key, 0); if (i != 32) { qWarning("Key size is %d bits - should be 256 bits", i * 8); return false; } int result = 0; if (evpMode == EVP_PKEY_MO_ENCRYPT) { m_iVector = createRandomData(EVP_MAX_IV_LENGTH); result = EVP_EncryptInit_ex(&m_encodeCTX, EVP_aes_256_cbc(), NULL, key, (uchar*)m_iVector.constData()); } else if (evpMode == EVP_PKEY_MO_DECRYPT) { result = EVP_DecryptInit_ex(&m_decodeCTX, EVP_aes_256_cbc(), NULL, key, (uchar*)iVector.constData()); } if (result == 0) { qWarning("EVP is not initialized!"); return false; } return true; } QByteArray AesInterface::encrypt(const QByteArray &plainData, const QByteArray &password) { if (!init(EVP_PKEY_MO_ENCRYPT, password)) { m_ok = false; return plainData; } // max ciphertext len for a n bytes of plaintext is n + AES_BLOCK_SIZE -1 bytes int dataLength = plainData.size(); int cipherlength = dataLength + AES_BLOCK_SIZE; int finalLength = 0; uchar* ciphertext = (uchar*)malloc(cipherlength); // allows reusing of 'm_encodeCTX' for multiple encryption cycles EVP_EncryptInit_ex(&m_encodeCTX, NULL, NULL, NULL, NULL); // update ciphertext, c_len is filled with the length of ciphertext generated, // dataLength is the size of plaintext in bytes EVP_EncryptUpdate(&m_encodeCTX, ciphertext, &cipherlength, (uchar*)plainData.data(), dataLength); // update ciphertext with the final remaining bytes EVP_EncryptFinal_ex(&m_encodeCTX, ciphertext + cipherlength, &finalLength); dataLength = cipherlength + finalLength; QByteArray out((char*)ciphertext, dataLength); out = QByteArray::number(AesInterface::VERSION) + '$' + m_iVector.toBase64() + '$' + out.toBase64(); free(ciphertext); m_ok = true; return out; } QByteArray AesInterface::decrypt(const QByteArray &cipherData, const QByteArray &password) { m_ok = false; if (cipherData.isEmpty()) { m_ok = true; return QByteArray(); } QList cipherSections(cipherData.split('$')); if (cipherSections.size() != 3) { qWarning() << "Decrypt error: It seems data is corrupted"; return QByteArray(); } if (cipherSections.at(0).toInt() > AesInterface::VERSION) { QMessageBox::information(0, tr("Warning!"), tr("Data has been encrypted with a newer version of QupZilla." "\nPlease install latest version of QupZilla.")); return QByteArray(); } if (cipherSections.at(0).toInt() != 1) { qWarning() << Q_FUNC_INFO << "There is just version 1 of decoder, yet ;-)"; return QByteArray(); } if (!init(EVP_PKEY_MO_DECRYPT, password, QByteArray::fromBase64(cipherSections.at(1)))) { return QByteArray(); } QByteArray cipherArray = QByteArray::fromBase64(cipherSections.at(2)); int cipherLength = cipherArray.size(); int plainTextLength = cipherLength; int finalLength = 0; uchar* cipherText = (uchar*)cipherArray.data(); // because we have padding ON, we must allocate an extra cipher block size of memory uchar* plainText = (uchar*)malloc(plainTextLength + AES_BLOCK_SIZE); EVP_DecryptInit_ex(&m_decodeCTX, NULL, NULL, NULL, NULL); EVP_DecryptUpdate(&m_decodeCTX, plainText, &plainTextLength, cipherText, cipherLength); int success = EVP_DecryptFinal_ex(&m_decodeCTX, plainText + plainTextLength, &finalLength); cipherLength = plainTextLength + finalLength; QByteArray result((char*)plainText, cipherLength); free(plainText); if (success != 1) { return QByteArray(); } m_ok = true; return result; } QByteArray AesInterface::passwordToHash(const QString &masterPassword) { if (!masterPassword.isEmpty()) { QByteArray result = masterPassword.toUtf8(); result = QCryptographicHash::hash(result, QCryptographicHash::Sha1) + result; result = QCryptographicHash::hash(result, QCryptographicHash::Sha1); return result.toBase64(); } else { return QByteArray(); } } QByteArray AesInterface::createRandomData(int length) { uchar* randomData = (uchar*)malloc(length); if (RAND_bytes(randomData, length) != 1) { RAND_pseudo_bytes(randomData, length); } QByteArray data((char*)randomData, length); free(randomData); return data; } qupzilla-1.6.0/src/lib/tools/aesinterface.h000066400000000000000000000035131226107126500206620ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 S. Razi Alavizadeh * Copyright (C) 2013 David Rosca * * This is based on a work by Saju Pillai * * 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 3 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, see . * ============================================================ */ #ifndef AESINTERFACE_H #define AESINTERFACE_H #include "qz_namespace.h" #include #include #include #include class QT_QUPZILLA_EXPORT AesInterface : public QObject { Q_OBJECT public: static const int VERSION; explicit AesInterface(QObject* parent = 0); ~AesInterface(); bool isOk(); QByteArray encrypt(const QByteArray &plainData, const QByteArray &password); QByteArray decrypt(const QByteArray &cipherData, const QByteArray &password); static QByteArray passwordToHash(const QString &masterPassword); static QByteArray createRandomData(int length); private: bool init(int evpMode, const QByteArray &password, const QByteArray &iVector = QByteArray()); EVP_CIPHER_CTX m_encodeCTX; EVP_CIPHER_CTX m_decodeCTX; bool m_ok; QByteArray m_iVector; }; #endif //AESINTERFACE_H qupzilla-1.6.0/src/lib/tools/animatedwidget.cpp000066400000000000000000000047161226107126500215600ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #include "animatedwidget.h" #include AnimatedWidget::AnimatedWidget(const Direction &direction, int duration, QWidget* parent) : QWidget(parent) , m_direction(direction) , m_stepHeight(0) , m_stepY(0) , m_widget(new QWidget(this)) { m_timeLine.setDuration(duration); m_timeLine.setFrameRange(0, 100); connect(&m_timeLine, SIGNAL(frameChanged(int)), this, SLOT(animateFrame(int))); setMaximumHeight(0); } void AnimatedWidget::startAnimation() { if (m_timeLine.state() == QTimeLine::Running) { return; } int shown = 0; int hidden = 0; if (m_direction == Down) { shown = 0; hidden = -m_widget->height(); } m_widget->move(QPoint(m_widget->pos().x(), hidden)); m_stepY = (hidden - shown) / 100.0; m_startY = hidden; m_stepHeight = m_widget->height() / 100.0; m_timeLine.setDirection(QTimeLine::Forward); m_timeLine.start(); } void AnimatedWidget::animateFrame(int frame) { setFixedHeight(frame * m_stepHeight); m_widget->move(pos().x(), m_startY - frame * m_stepY); } void AnimatedWidget::hide() { if (m_timeLine.state() == QTimeLine::Running) { return; } m_timeLine.setDirection(QTimeLine::Backward); m_timeLine.start(); connect(&m_timeLine, SIGNAL(finished()), this, SLOT(close())); QWidget* p = parentWidget(); if (p) { p->setFocus(); } } void AnimatedWidget::resizeEvent(QResizeEvent* event) { if (event->size().width() != m_widget->width()) { m_widget->resize(event->size().width(), m_widget->height()); } QWidget::resizeEvent(event); } qupzilla-1.6.0/src/lib/tools/animatedwidget.h000066400000000000000000000030331226107126500212140ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef NOTIFICATION_H #define NOTIFICATION_H #include #include #include "qz_namespace.h" class QT_QUPZILLA_EXPORT AnimatedWidget : public QWidget { Q_OBJECT public: enum Direction { Down, Up }; explicit AnimatedWidget(const Direction &direction = Down, int duration = 300, QWidget* parent = 0); QWidget* widget() { return m_widget; } public slots: void hide(); void startAnimation(); private slots: void animateFrame(int frame); private: void resizeEvent(QResizeEvent* e); Direction m_direction; QTimeLine m_timeLine; qreal m_stepHeight; qreal m_stepY; int m_startY; QWidget* m_widget; }; #endif // NOTIFICATION_H qupzilla-1.6.0/src/lib/tools/buttonbox.cpp000066400000000000000000000024251226107126500206110ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #include "buttonbox.h" ButtonBox::ButtonBox(QWidget* parent) : QDialogButtonBox(parent) , m_clickedButton(QDialogButtonBox::RejectRole) { connect(this, SIGNAL(clicked(QAbstractButton*)), this, SLOT(buttonClicked(QAbstractButton*))); } void ButtonBox::buttonClicked(QAbstractButton* button) { m_clickedButton = buttonRole(button); } QDialogButtonBox::ButtonRole ButtonBox::clickedButtonRole() { return m_clickedButton; } qupzilla-1.6.0/src/lib/tools/buttonbox.h000066400000000000000000000024511226107126500202550ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef BUTTONBOX_H #define BUTTONBOX_H #include #include "qz_namespace.h" class QAbstractButton; class QT_QUPZILLA_EXPORT ButtonBox : public QDialogButtonBox { Q_OBJECT public: explicit ButtonBox(QWidget* parent = 0); ButtonRole clickedButtonRole(); signals: public slots: private slots: void buttonClicked(QAbstractButton* button); private: QDialogButtonBox::ButtonRole m_clickedButton; }; #endif // BUTTONBOX_H qupzilla-1.6.0/src/lib/tools/buttonwithmenu.cpp000066400000000000000000000074071226107126500216660ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "buttonwithmenu.h" #include #include ButtonWithMenu::ButtonWithMenu(QWidget* parent) : ToolButton(parent) , m_menu(new QMenu(this)) { setPopupMode(QToolButton::InstantPopup); setCursor(Qt::ArrowCursor); setFocusPolicy(Qt::ClickFocus); setMenu(m_menu); connect(m_menu, SIGNAL(aboutToShow()), this, SLOT(generateMenu())); } void ButtonWithMenu::setCurrentItem() { if (QAction* action = qobject_cast(sender())) { setCurrentItem(action->data().value()); } } void ButtonWithMenu::clearItems() { m_menu->clear(); m_items.clear(); } void ButtonWithMenu::selectNextItem() { int index = m_items.indexOf(m_currentItem) + 1; if (index < m_items.size()) { setCurrentIndex(index); } } void ButtonWithMenu::selectPreviousItem() { int index = m_items.indexOf(m_currentItem) - 1; if (index > 0) { setCurrentIndex(index); } } void ButtonWithMenu::addItem(const Item &item) { m_items.append(item); if (m_items.count() == 1) { setCurrentItem(item); } emit itemAdded(item); } void ButtonWithMenu::addItems(const QVector &items) { foreach (const Item &item, items) { addItem(item); } } void ButtonWithMenu::removeItem(const Item &item) { int index = m_items.indexOf(item); if (index < 0) { return; } m_items.remove(index); if (m_items.count() == 0) { setIcon(QIcon()); return; } if (m_currentItem == item) { setCurrentItem(m_items.at(0)); } } void ButtonWithMenu::setCurrentItem(const Item &item, bool emitSignal) { int index = m_items.indexOf(item); if (index < 0 || m_currentItem == item) { return; } m_currentItem = item; setIcon(m_currentItem.icon); setToolTip(m_currentItem.text); if (emitSignal) { emit activeItemChanged(m_currentItem); } } void ButtonWithMenu::setCurrentIndex(int index, bool emitSignal) { setCurrentItem(m_items.at(index), emitSignal); } void ButtonWithMenu::wheelEvent(QWheelEvent* event) { int currItemIndex = m_items.indexOf(m_currentItem); int itemsCount = m_items.count(); if (itemsCount == 0) { return; } if (event->delta() > 0) { if (currItemIndex != 0) { setCurrentItem(m_items.at(currItemIndex - 1)); } } else if (currItemIndex < itemsCount - 1) { setCurrentItem(m_items.at(currItemIndex + 1)); } event->accept(); } ButtonWithMenu::Item ButtonWithMenu::currentItem() { return m_currentItem; } QMenu* ButtonWithMenu::menu() const { return m_menu; } void ButtonWithMenu::generateMenu() { m_menu->clear(); foreach (const Item &item, m_items) { QVariant variant; variant.setValue(item); m_menu->addAction(item.icon, item.text, this, SLOT(setCurrentItem()))->setData(variant); } } ButtonWithMenu::~ButtonWithMenu() { } qupzilla-1.6.0/src/lib/tools/buttonwithmenu.h000066400000000000000000000052371226107126500213320ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef BUTTONWITHMENU_H #define BUTTONWITHMENU_H #include "toolbutton.h" #include "qz_namespace.h" class QT_QUPZILLA_EXPORT ButtonWithMenu : public ToolButton { Q_OBJECT public: struct Item { QString text; QIcon icon; QVariant userData; Item(const QString &a = QString(), const QIcon &b = QIcon()) { text = a; icon = b; } bool operator==(const Item &a) { return (a.text == text) && (a.icon.pixmap(16, 16).toImage() == icon.pixmap(16, 16).toImage()); } bool isEmpty() { return (text.isEmpty() && icon.isNull()); } void clear() { text = QString(); icon = QIcon(); userData = QVariant(); } }; explicit ButtonWithMenu(QWidget* parent = 0); ~ButtonWithMenu(); void addItem(const Item &item); void addItems(const QVector &items); void removeItem(const Item &item); void setCurrentItem(const Item &item, bool emitSignal = true); void setCurrentIndex(int index, bool emitSignal = true); Item currentItem(); QVector allItems() { return m_items; } QMenu* menu() const; signals: void activeItemChanged(const ButtonWithMenu::Item &item); void itemAdded(const ButtonWithMenu::Item &item); void itemRemoved(const ButtonWithMenu::Item &item); public slots: void clearItems(); void selectNextItem(); void selectPreviousItem(); private slots: void setCurrentItem(); void generateMenu(); private: void wheelEvent(QWheelEvent* event); QMenu* m_menu; QVector m_items; Item m_currentItem; }; // Hint to QVector to use std::realloc on item moving Q_DECLARE_TYPEINFO(ButtonWithMenu::Item, Q_MOVABLE_TYPE); Q_DECLARE_METATYPE(ButtonWithMenu::Item) #endif // BUTTONWITHMENU_H qupzilla-1.6.0/src/lib/tools/certificateinfowidget.cpp000066400000000000000000000460211226107126500231270ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "certificateinfowidget.h" #include "ui_certificateinfowidget.h" #include "mainapplication.h" #include "qztools.h" #include #include QString CertificateInfoWidget::certificateItemText(const QSslCertificate &cert) { #if QT_VERSION >= 0x050000 QString commonName = cert.subjectInfo(QSslCertificate::CommonName).isEmpty() ? QString() : cert.subjectInfo(QSslCertificate::CommonName).at(0); QString organization = cert.subjectInfo(QSslCertificate::Organization).isEmpty() ? QString() : cert.subjectInfo(QSslCertificate::Organization).at(0); #else QString commonName = cert.subjectInfo(QSslCertificate::CommonName); QString organization = cert.subjectInfo(QSslCertificate::Organization); #endif if (commonName.isEmpty()) { return clearCertSpecialSymbols(organization); } return clearCertSpecialSymbols(commonName); } QString CertificateInfoWidget::clearCertSpecialSymbols(const QString &string) { QString n = QzTools::escape(string); if (!n.contains(QLatin1String("\\"))) { return n; } // Credits to http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/176679?help-en n.replace(QLatin1String("\\xC3\\x80"), QLatin1String("A")); n.replace(QLatin1String("\\xC3\\x81"), QLatin1String("A")); n.replace(QLatin1String("\\xC3\\x82"), QLatin1String("A")); n.replace(QLatin1String("\\xC3\\x83"), QLatin1String("A")); n.replace(QLatin1String("\\xC3\\x84"), QLatin1String("A")); n.replace(QLatin1String("\\xC3\\x85"), QLatin1String("A")); n.replace(QLatin1String("\\xC3\\x86"), QLatin1String("AE")); n.replace(QLatin1String("\\xC3\\x87"), QLatin1String("C")); n.replace(QLatin1String("\\xC3\\x88"), QLatin1String("E")); n.replace(QLatin1String("\\xC3\\x89"), QLatin1String("E")); n.replace(QLatin1String("\\xC3\\x8A"), QLatin1String("E")); n.replace(QLatin1String("\\xC3\\x8B"), QLatin1String("E")); n.replace(QLatin1String("\\xC3\\x8C"), QLatin1String("I")); n.replace(QLatin1String("\\xC3\\x8D"), QLatin1String("I")); n.replace(QLatin1String("\\xC3\\x8E"), QLatin1String("I")); n.replace(QLatin1String("\\xC3\\x8F"), QLatin1String("I")); n.replace(QLatin1String("\\xC3\\x90"), QLatin1String("D")); n.replace(QLatin1String("\\xC3\\x91"), QLatin1String("N")); n.replace(QLatin1String("\\xC3\\x92"), QLatin1String("O")); n.replace(QLatin1String("\\xC3\\x93"), QLatin1String("O")); n.replace(QLatin1String("\\xC3\\x94"), QLatin1String("O")); n.replace(QLatin1String("\\xC3\\x95"), QLatin1String("O")); n.replace(QLatin1String("\\xC3\\x96"), QLatin1String("O")); n.replace(QLatin1String("\\xC3\\x98"), QLatin1String("O")); n.replace(QLatin1String("\\xC3\\x99"), QLatin1String("U")); n.replace(QLatin1String("\\xC3\\x9A"), QLatin1String("U")); n.replace(QLatin1String("\\xC3\\x9B"), QLatin1String("U")); n.replace(QLatin1String("\\xC3\\x9C"), QLatin1String("U")); n.replace(QLatin1String("\\xC3\\x9D"), QLatin1String("Y")); n.replace(QLatin1String("\\xC3\\x9E"), QLatin1String("P")); n.replace(QLatin1String("\\xC3\\x9F"), QLatin1String("ss")); n.replace(QLatin1String("\\xC9\\x99"), QLatin1String("e")); n.replace(QLatin1String("\\xC3\\xA0"), QLatin1String("a")); n.replace(QLatin1String("\\xC3\\xA1"), QLatin1String("a")); n.replace(QLatin1String("\\xC3\\xA2"), QLatin1String("a")); n.replace(QLatin1String("\\xC3\\xA3"), QLatin1String("a")); n.replace(QLatin1String("\\xC3\\xA4"), QLatin1String("a")); n.replace(QLatin1String("\\xC3\\xA5"), QLatin1String("a")); n.replace(QLatin1String("\\xC3\\xA6"), QLatin1String("ae")); n.replace(QLatin1String("\\xC3\\xA7"), QLatin1String("c")); n.replace(QLatin1String("\\xC3\\xA8"), QLatin1String("e")); n.replace(QLatin1String("\\xC3\\xA9"), QLatin1String("e")); n.replace(QLatin1String("\\xC3\\xAA"), QLatin1String("e")); n.replace(QLatin1String("\\xC3\\xAB"), QLatin1String("e")); n.replace(QLatin1String("\\xC3\\xAC"), QLatin1String("i")); n.replace(QLatin1String("\\xC3\\xAD"), QLatin1String("i")); n.replace(QLatin1String("\\xC3\\xAE"), QLatin1String("i")); n.replace(QLatin1String("\\xC3\\xAF"), QLatin1String("i")); n.replace(QLatin1String("\\xC3\\xB0"), QLatin1String("o")); n.replace(QLatin1String("\\xC3\\xB1"), QLatin1String("n")); n.replace(QLatin1String("\\xC3\\xB2"), QLatin1String("o")); n.replace(QLatin1String("\\xC3\\xB3"), QLatin1String("o")); n.replace(QLatin1String("\\xC3\\xB4"), QLatin1String("o")); n.replace(QLatin1String("\\xC3\\xB5"), QLatin1String("o")); n.replace(QLatin1String("\\xC3\\xB6"), QLatin1String("o")); n.replace(QLatin1String("\\xC3\\xB8"), QLatin1String("o")); n.replace(QLatin1String("\\xC3\\xB9"), QLatin1String("u")); n.replace(QLatin1String("\\xC3\\xBA"), QLatin1String("u")); n.replace(QLatin1String("\\xC3\\xBB"), QLatin1String("u")); n.replace(QLatin1String("\\xC3\\xBC"), QLatin1String("u")); n.replace(QLatin1String("\\xC3\\xBD"), QLatin1String("y")); n.replace(QLatin1String("\\xC3\\xBE"), QLatin1String("p")); n.replace(QLatin1String("\\xC3\\xBF"), QLatin1String("y")); n.replace(QLatin1String("\\xC7\\xBF"), QLatin1String("o")); n.replace(QLatin1String("\\xC4\\x80"), QLatin1String("A")); n.replace(QLatin1String("\\xC4\\x81"), QLatin1String("a")); n.replace(QLatin1String("\\xC4\\x82"), QLatin1String("A")); n.replace(QLatin1String("\\xC4\\x83"), QLatin1String("a")); n.replace(QLatin1String("\\xC4\\x84"), QLatin1String("A")); n.replace(QLatin1String("\\xC4\\x85"), QLatin1String("a")); n.replace(QLatin1String("\\xC4\\x86"), QLatin1String("C")); n.replace(QLatin1String("\\xC4\\x87"), QLatin1String("c")); n.replace(QLatin1String("\\xC4\\x88"), QLatin1String("C")); n.replace(QLatin1String("\\xC4\\x89"), QLatin1String("c")); n.replace(QLatin1String("\\xC4\\x8A"), QLatin1String("C")); n.replace(QLatin1String("\\xC4\\x8B"), QLatin1String("c")); n.replace(QLatin1String("\\xC4\\x8C"), QLatin1String("C")); n.replace(QLatin1String("\\xC4\\x8D"), QLatin1String("c")); n.replace(QLatin1String("\\xC4\\x8E"), QLatin1String("D")); n.replace(QLatin1String("\\xC4\\x8F"), QLatin1String("d")); n.replace(QLatin1String("\\xC4\\x90"), QLatin1String("D")); n.replace(QLatin1String("\\xC4\\x91"), QLatin1String("d")); n.replace(QLatin1String("\\xC4\\x92"), QLatin1String("E")); n.replace(QLatin1String("\\xC4\\x93"), QLatin1String("e")); n.replace(QLatin1String("\\xC4\\x94"), QLatin1String("E")); n.replace(QLatin1String("\\xC4\\x95"), QLatin1String("e")); n.replace(QLatin1String("\\xC4\\x96"), QLatin1String("E")); n.replace(QLatin1String("\\xC4\\x97"), QLatin1String("e")); n.replace(QLatin1String("\\xC4\\x98"), QLatin1String("E")); n.replace(QLatin1String("\\xC4\\x99"), QLatin1String("e")); n.replace(QLatin1String("\\xC4\\x9A"), QLatin1String("E")); n.replace(QLatin1String("\\xC4\\x9B"), QLatin1String("e")); n.replace(QLatin1String("\\xC4\\x9C"), QLatin1String("G")); n.replace(QLatin1String("\\xC4\\x9D"), QLatin1String("g")); n.replace(QLatin1String("\\xC4\\x9E"), QLatin1String("G")); n.replace(QLatin1String("\\xC4\\x9F"), QLatin1String("g")); n.replace(QLatin1String("\\xC4\\xA0"), QLatin1String("G")); n.replace(QLatin1String("\\xC4\\xA1"), QLatin1String("g")); n.replace(QLatin1String("\\xC4\\xA2"), QLatin1String("G")); n.replace(QLatin1String("\\xC4\\xA3"), QLatin1String("g")); n.replace(QLatin1String("\\xC4\\xA4"), QLatin1String("H")); n.replace(QLatin1String("\\xC4\\xA5"), QLatin1String("h")); n.replace(QLatin1String("\\xC4\\xA6"), QLatin1String("H")); n.replace(QLatin1String("\\xC4\\xA7"), QLatin1String("h")); n.replace(QLatin1String("\\xC4\\xA8"), QLatin1String("I")); n.replace(QLatin1String("\\xC4\\xA9"), QLatin1String("i")); n.replace(QLatin1String("\\xC4\\xAA"), QLatin1String("I")); n.replace(QLatin1String("\\xC4\\xAB"), QLatin1String("i")); n.replace(QLatin1String("\\xC4\\xAC"), QLatin1String("I")); n.replace(QLatin1String("\\xC4\\xAD"), QLatin1String("i")); n.replace(QLatin1String("\\xC4\\xAE"), QLatin1String("I")); n.replace(QLatin1String("\\xC4\\xAF"), QLatin1String("i")); n.replace(QLatin1String("\\xC4\\xB0"), QLatin1String("I")); n.replace(QLatin1String("\\xC4\\xB1"), QLatin1String("i")); n.replace(QLatin1String("\\xC4\\xB2"), QLatin1String("IJ")); n.replace(QLatin1String("\\xC4\\xB3"), QLatin1String("ij")); n.replace(QLatin1String("\\xC4\\xB4"), QLatin1String("J")); n.replace(QLatin1String("\\xC4\\xB5"), QLatin1String("j")); n.replace(QLatin1String("\\xC4\\xB6"), QLatin1String("K")); n.replace(QLatin1String("\\xC4\\xB7"), QLatin1String("k")); n.replace(QLatin1String("\\xC4\\xB8"), QLatin1String("k")); n.replace(QLatin1String("\\xC4\\xB9"), QLatin1String("L")); n.replace(QLatin1String("\\xC4\\xBA"), QLatin1String("l")); n.replace(QLatin1String("\\xC4\\xBB"), QLatin1String("L")); n.replace(QLatin1String("\\xC4\\xBC"), QLatin1String("l")); n.replace(QLatin1String("\\xC4\\xBD"), QLatin1String("L")); n.replace(QLatin1String("\\xC4\\xBE"), QLatin1String("l")); n.replace(QLatin1String("\\xC4\\xBF"), QLatin1String("L")); n.replace(QLatin1String("\\xC5\\x80"), QLatin1String("l")); n.replace(QLatin1String("\\xC5\\x81"), QLatin1String("L")); n.replace(QLatin1String("\\xC5\\x82"), QLatin1String("l")); n.replace(QLatin1String("\\xC5\\x83"), QLatin1String("N")); n.replace(QLatin1String("\\xC5\\x84"), QLatin1String("n")); n.replace(QLatin1String("\\xC5\\x85"), QLatin1String("N")); n.replace(QLatin1String("\\xC5\\x86"), QLatin1String("n")); n.replace(QLatin1String("\\xC5\\x87"), QLatin1String("N")); n.replace(QLatin1String("\\xC5\\x88"), QLatin1String("n")); n.replace(QLatin1String("\\xC5\\x89"), QLatin1String("n")); n.replace(QLatin1String("\\xC5\\x8A"), QLatin1String("N")); n.replace(QLatin1String("\\xC5\\x8B"), QLatin1String("n")); n.replace(QLatin1String("\\xC5\\x8C"), QLatin1String("O")); n.replace(QLatin1String("\\xC5\\x8D"), QLatin1String("o")); n.replace(QLatin1String("\\xC5\\x8E"), QLatin1String("O")); n.replace(QLatin1String("\\xC5\\x8F"), QLatin1String("o")); n.replace(QLatin1String("\\xC5\\x90"), QLatin1String("O")); n.replace(QLatin1String("\\xC5\\x91"), QLatin1String("o")); n.replace(QLatin1String("\\xC5\\x92"), QLatin1String("CE")); n.replace(QLatin1String("\\xC5\\x93"), QLatin1String("ce")); n.replace(QLatin1String("\\xC5\\x94"), QLatin1String("R")); n.replace(QLatin1String("\\xC5\\x95"), QLatin1String("r")); n.replace(QLatin1String("\\xC5\\x96"), QLatin1String("R")); n.replace(QLatin1String("\\xC5\\x97"), QLatin1String("r")); n.replace(QLatin1String("\\xC5\\x98"), QLatin1String("R")); n.replace(QLatin1String("\\xC5\\x99"), QLatin1String("r")); n.replace(QLatin1String("\\xC5\\x9A"), QLatin1String("S")); n.replace(QLatin1String("\\xC5\\x9B"), QLatin1String("s")); n.replace(QLatin1String("\\xC5\\x9C"), QLatin1String("S")); n.replace(QLatin1String("\\xC5\\x9D"), QLatin1String("s")); n.replace(QLatin1String("\\xC5\\x9E"), QLatin1String("S")); n.replace(QLatin1String("\\xC5\\x9F"), QLatin1String("s")); n.replace(QLatin1String("\\xC5\\xA0"), QLatin1String("S")); n.replace(QLatin1String("\\xC5\\xA1"), QLatin1String("s")); n.replace(QLatin1String("\\xC5\\xA2"), QLatin1String("T")); n.replace(QLatin1String("\\xC5\\xA3"), QLatin1String("t")); n.replace(QLatin1String("\\xC5\\xA4"), QLatin1String("T")); n.replace(QLatin1String("\\xC5\\xA5"), QLatin1String("t")); n.replace(QLatin1String("\\xC5\\xA6"), QLatin1String("T")); n.replace(QLatin1String("\\xC5\\xA7"), QLatin1String("t")); n.replace(QLatin1String("\\xC5\\xA8"), QLatin1String("U")); n.replace(QLatin1String("\\xC5\\xA9"), QLatin1String("u")); n.replace(QLatin1String("\\xC5\\xAA"), QLatin1String("U")); n.replace(QLatin1String("\\xC5\\xAB"), QLatin1String("u")); n.replace(QLatin1String("\\xC5\\xAC"), QLatin1String("U")); n.replace(QLatin1String("\\xC5\\xAD"), QLatin1String("u")); n.replace(QLatin1String("\\xC5\\xAE"), QLatin1String("U")); n.replace(QLatin1String("\\xC5\\xAF"), QLatin1String("u")); n.replace(QLatin1String("\\xC5\\xB0"), QLatin1String("U")); n.replace(QLatin1String("\\xC5\\xB1"), QLatin1String("u")); n.replace(QLatin1String("\\xC5\\xB2"), QLatin1String("U")); n.replace(QLatin1String("\\xC5\\xB3"), QLatin1String("u")); n.replace(QLatin1String("\\xC5\\xB4"), QLatin1String("W")); n.replace(QLatin1String("\\xC5\\xB5"), QLatin1String("w")); n.replace(QLatin1String("\\xC5\\xB6"), QLatin1String("Y")); n.replace(QLatin1String("\\xC5\\xB7"), QLatin1String("y")); n.replace(QLatin1String("\\xC5\\xB8"), QLatin1String("Y")); n.replace(QLatin1String("\\xC5\\xB9"), QLatin1String("Z")); n.replace(QLatin1String("\\xC5\\xBA"), QLatin1String("z")); n.replace(QLatin1String("\\xC5\\xBB"), QLatin1String("Z")); n.replace(QLatin1String("\\xC5\\xBC"), QLatin1String("z")); n.replace(QLatin1String("\\xC5\\xBD"), QLatin1String("Z")); n.replace(QLatin1String("\\xC5\\xBE"), QLatin1String("z")); n.replace(QLatin1String("\\xC6\\x8F"), QLatin1String("E")); n.replace(QLatin1String("\\xC6\\xA0"), QLatin1String("O")); n.replace(QLatin1String("\\xC6\\xA1"), QLatin1String("o")); n.replace(QLatin1String("\\xC6\\xAF"), QLatin1String("U")); n.replace(QLatin1String("\\xC6\\xB0"), QLatin1String("u")); n.replace(QLatin1String("\\xC7\\x8D"), QLatin1String("A")); n.replace(QLatin1String("\\xC7\\x8E"), QLatin1String("a")); n.replace(QLatin1String("\\xC7\\x8F"), QLatin1String("I")); n.replace(QLatin1String("\\xC7\\x93"), QLatin1String("U")); n.replace(QLatin1String("\\xC7\\x90"), QLatin1String("i")); n.replace(QLatin1String("\\xC7\\x91"), QLatin1String("O")); n.replace(QLatin1String("\\xC7\\x92"), QLatin1String("o")); n.replace(QLatin1String("\\xC7\\x97"), QLatin1String("U")); n.replace(QLatin1String("\\xC7\\x94"), QLatin1String("u")); n.replace(QLatin1String("\\xC7\\x95"), QLatin1String("U")); n.replace(QLatin1String("\\xC7\\x96"), QLatin1String("u")); n.replace(QLatin1String("\\xC7\\x9B"), QLatin1String("U")); n.replace(QLatin1String("\\xC7\\x98"), QLatin1String("u")); n.replace(QLatin1String("\\xC7\\x99"), QLatin1String("U")); n.replace(QLatin1String("\\xC7\\x9A"), QLatin1String("u")); n.replace(QLatin1String("\\xC7\\xBD"), QLatin1String("ae")); n.replace(QLatin1String("\\xC7\\x9C"), QLatin1String("u")); n.replace(QLatin1String("\\xC7\\xBB"), QLatin1String("a")); n.replace(QLatin1String("\\xC7\\xBC"), QLatin1String("AE")); n.replace(QLatin1String("\\xC7\\xBE"), QLatin1String("O")); n.replace(QLatin1String("\\xC7\\xBA"), QLatin1String("A")); n.replace(QLatin1String("\\xC2\\x82"), QLatin1String(",")); // High code comma n.replace(QLatin1String("\\xC2\\x84"), QLatin1String(",,")); // High code double comma n.replace(QLatin1String("\\xC2\\x85"), QLatin1String("...")); // Tripple dot n.replace(QLatin1String("\\xC2\\x88"), QLatin1String("^")); // High carat n.replace(QLatin1String("\\xC2\\x91"), QLatin1String("\\x27")); // Forward single quote n.replace(QLatin1String("\\xC2\\x92"), QLatin1String("\\x27")); // Reverse single quote n.replace(QLatin1String("\\xC2\\x93"), QLatin1String("\\x22")); // Forward double quote n.replace(QLatin1String("\\xC2\\x94"), QLatin1String("\\x22")); // Reverse double quote n.replace(QLatin1String("\\xC2\\x96"), QLatin1String("-")); // High hyphen n.replace(QLatin1String("\\xC2\\x97"), QLatin1String("--")); // Double hyphen n.replace(QLatin1String("\\xC2\\xA6"), QLatin1String("|")); // Split vertical bar n.replace(QLatin1String("\\xC2\\xAB"), QLatin1String("<<")); // Double less than n.replace(QLatin1String("\\xC2\\xBB"), QLatin1String(">>")); // Double greater than n.replace(QLatin1String("\\xC2\\xBC"), QLatin1String("1/4")); // one quarter n.replace(QLatin1String("\\xC2\\xBD"), QLatin1String("1/2")); // one half n.replace(QLatin1String("\\xC2\\xBE"), QLatin1String("3/4")); // three quarters n.replace(QLatin1String("\\xCA\\xBF"), QLatin1String("\\x27")); // c-single quote n.replace(QLatin1String("\\xCC\\xA8"), QString()); // modifier - under curve n.replace(QLatin1String("\\xCC\\xB1"), QString()); // modifier - under line return n; } QString CertificateInfoWidget::clearCertSpecialSymbols(const QStringList &stringList) { if (stringList.isEmpty()) { return QString(); } return clearCertSpecialSymbols(stringList.at(0)); } QString CertificateInfoWidget::showCertInfo(const QString &string) { if (string.isEmpty()) { return QObject::tr(""); } else { return clearCertSpecialSymbols(string); } } QString CertificateInfoWidget::showCertInfo(const QStringList &stringList) { if (stringList.isEmpty()) { return QString(); } return showCertInfo(stringList.at(0)); } CertificateInfoWidget::CertificateInfoWidget(const QSslCertificate &cert, QWidget* parent) : QWidget(parent) , ui(new Ui::CertificateInfoWidget) { ui->setupUi(this); //Issued to ui->issuedToCN->setText(showCertInfo(cert.subjectInfo(QSslCertificate::CommonName))); ui->issuedToO->setText(showCertInfo(cert.subjectInfo(QSslCertificate::Organization))); ui->issuedToOU->setText(showCertInfo(cert.subjectInfo(QSslCertificate::OrganizationalUnitName))); ui->issuedToSN->setText(showCertInfo(cert.serialNumber())); //Issued By ui->issuedByCN->setText(showCertInfo(cert.issuerInfo(QSslCertificate::CommonName))); ui->issuedByO->setText(showCertInfo(cert.issuerInfo(QSslCertificate::Organization))); ui->issuedByOU->setText(showCertInfo(cert.issuerInfo(QSslCertificate::OrganizationalUnitName))); //Validity QLocale locale = QLocale(mApp->currentLanguageFile()); ui->validityIssuedOn->setText(locale.toString(cert.effectiveDate(), "dddd d. MMMM yyyy")); ui->validityExpiresOn->setText(locale.toString(cert.expiryDate(), "dddd d. MMMM yyyy")); } CertificateInfoWidget::~CertificateInfoWidget() { delete ui; } qupzilla-1.6.0/src/lib/tools/certificateinfowidget.h000066400000000000000000000033741226107126500226000ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef CERTIFICATEINFOWIDGET_H #define CERTIFICATEINFOWIDGET_H #include #include "qz_namespace.h" namespace Ui { class CertificateInfoWidget; } class QSslCertificate; class QT_QUPZILLA_EXPORT CertificateInfoWidget : public QWidget { public: explicit CertificateInfoWidget(const QSslCertificate &cert, QWidget* parent = 0); ~CertificateInfoWidget(); // Qt5 compatibility // QSslCertificate::subjectInfo returns: // QString in Qt 4 // QStringList in Qt 5 // static QString showCertInfo(const QString &string); static QString showCertInfo(const QStringList &stringList); static QString clearCertSpecialSymbols(const QString &string); static QString clearCertSpecialSymbols(const QStringList &stringList); static QString certificateItemText(const QSslCertificate &cert); private: Ui::CertificateInfoWidget* ui; }; #endif // CERTIFICATEINFOWIDGET_H qupzilla-1.6.0/src/lib/tools/certificateinfowidget.ui000066400000000000000000000122471226107126500227650ustar00rootroot00000000000000 CertificateInfoWidget 0 0 512 264 <b>Issued To</b> Common Name (CN): Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse Organization (O): Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse Organizational Unit (OU): Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse Serial Number: Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse <b>Issued By</b> Common Name (CN): Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse Organization (O): Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse Organizational Unit (OU): Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse <b>Validity</b> Issued On: Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse Expires On: Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse qupzilla-1.6.0/src/lib/tools/clickablelabel.cpp000066400000000000000000000037551226107126500215050ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #include "clickablelabel.h" #include ClickableLabel::ClickableLabel(QWidget* parent) : QLabel(parent) { } void ClickableLabel::setThemeIcon(const QString &name) { QIcon icon = QIcon::fromTheme(name); if (!icon.isNull()) { adjustSize(); setPixmap(icon.pixmap(size())); } } QIcon ClickableLabel::fallbackIcon() const { return pixmap() ? QIcon(*pixmap()) : QIcon(); } void ClickableLabel::setFallbackIcon(const QIcon &image) { if (!pixmap() || pixmap()->isNull()) { adjustSize(); setPixmap(image.pixmap(size())); } } QString ClickableLabel::themeIcon() const { return m_themeIcon; } void ClickableLabel::mouseReleaseEvent(QMouseEvent* ev) { if (ev->button() == Qt::LeftButton && rect().contains(ev->pos())) { if (ev->modifiers() == Qt::ControlModifier) { emit middleClicked(ev->globalPos()); } else { emit clicked(ev->globalPos()); } } else if (ev->button() == Qt::MiddleButton && rect().contains(ev->pos())) { emit middleClicked(ev->globalPos()); } else { QLabel::mouseReleaseEvent(ev); } } qupzilla-1.6.0/src/lib/tools/clickablelabel.h000066400000000000000000000033751226107126500211500ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef CLICKABLELABEL_H #define CLICKABLELABEL_H #include #include #include "qz_namespace.h" class QMouseEvent; class QT_QUPZILLA_EXPORT ClickableLabel : public QLabel { Q_OBJECT Q_PROPERTY(QSize fixedsize READ size WRITE setFixedSize) Q_PROPERTY(int fixedwidth READ width WRITE setFixedWidth) Q_PROPERTY(int fixedheight READ height WRITE setFixedHeight) Q_PROPERTY(QString themeIcon READ themeIcon WRITE setThemeIcon) Q_PROPERTY(QIcon fallbackIcon READ fallbackIcon WRITE setFallbackIcon) public: explicit ClickableLabel(QWidget* parent = 0); QString themeIcon() const; void setThemeIcon(const QString &name); QIcon fallbackIcon() const; void setFallbackIcon(const QIcon &image); signals: void clicked(QPoint); void middleClicked(QPoint); private: void mouseReleaseEvent(QMouseEvent* ev); QString m_themeIcon; }; #endif // CLICKABLELABEL_H qupzilla-1.6.0/src/lib/tools/closedtabsmanager.cpp000066400000000000000000000041421226107126500222410ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "closedtabsmanager.h" #include "webtab.h" #include "qztools.h" #include "mainapplication.h" #include #include ClosedTabsManager::ClosedTabsManager() { } void ClosedTabsManager::saveView(WebTab* tab, int position) { if (mApp->isPrivateSession() || (tab->url().isEmpty() && tab->history()->items().count() == 0)) { return; } Tab closedTab; closedTab.url = tab->url(); closedTab.title = tab->title(); closedTab.position = position; closedTab.history = tab->historyData(); m_closedTabs.prepend(closedTab); } ClosedTabsManager::Tab ClosedTabsManager::getFirstClosedTab() { Tab tab; if (m_closedTabs.count() > 0) { tab = m_closedTabs.first(); m_closedTabs.remove(0); } return tab; } ClosedTabsManager::Tab ClosedTabsManager::getTabAt(int index) { Tab tab; if (QzTools::vectorContainsIndex(m_closedTabs, index)) { tab = m_closedTabs.at(index); m_closedTabs.remove(index); } return tab; } bool ClosedTabsManager::isClosedTabAvailable() { return (m_closedTabs.count() != 0); } void ClosedTabsManager::clearList() { m_closedTabs.clear(); } QVector ClosedTabsManager::allClosedTabs() { return m_closedTabs; } qupzilla-1.6.0/src/lib/tools/closedtabsmanager.h000066400000000000000000000034611226107126500217110ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef CLOSEDTABSMANAGER_H #define CLOSEDTABSMANAGER_H #include #include #include "qz_namespace.h" class WebTab; class QT_QUPZILLA_EXPORT ClosedTabsManager { public: struct Tab { QUrl url; QByteArray history; QString title; int position; bool operator==(const Tab &a) const { return (a.url == url && a.history == history && a.position == position); } }; explicit ClosedTabsManager(); void saveView(WebTab* tab, int position); ClosedTabsManager::Tab getFirstClosedTab(); ClosedTabsManager::Tab getTabAt(int index); bool isClosedTabAvailable(); void clearList(); QVector allClosedTabs(); private: QVector m_closedTabs; }; // Hint to QVector to use std::realloc on item moving Q_DECLARE_TYPEINFO(ClosedTabsManager::Tab, Q_MOVABLE_TYPE); #endif // CLOSEDTABSMANAGER_H qupzilla-1.6.0/src/lib/tools/colors.cpp000066400000000000000000000141061226107126500200650ustar00rootroot00000000000000/* * Bespin library for Qt style, KWin decoration and everythng else * Copyright 2007-2012 by Thomas Lübking * * This library is free software; you can redistribute it and/or modify * it under the terms of the GNU Library General Public License version 2 * * 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 Library General Public * License along with this program; if not, write to the * Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #include "colors.h" #define CLAMP(x,l,u) (x) < (l) ? (l) :\ (x) > (u) ? (u) :\ (x) #include #include // using namespace Bespin; const QColor & Colors::bg(const QPalette &pal, const QWidget* w) { QPalette::ColorRole role; if (!w) { role = QPalette::Window; } else if (w->parentWidget()) { role = w->parentWidget()->backgroundRole(); } else { role = w->backgroundRole(); } // if (pal.brush(role).style() > 1) return pal.color(role); // return QApplication::palette().color(role); } int Colors::contrast(const QColor &a, const QColor &b) { int ar, ag, ab, br, bg, bb; a.getRgb(&ar, &ag, &ab); b.getRgb(&br, &bg, &bb); int diff = 299 * (ar - br) + 587 * (ag - bg) + 114 * (ab - bb); diff = (diff < 0) ? -diff : 90 * diff / 100; int perc = diff / 2550; diff = qMax(ar, br) + qMax(ag, bg) + qMax(ab, bb) - (qMin(ar, br) + qMin(ag, bg) + qMin(ab, bb)); perc += diff / 765; perc /= 2; return perc; } QPalette::ColorRole Colors::counterRole(QPalette::ColorRole role) { switch (role) { case QPalette::ButtonText: //8 return QPalette::Button; case QPalette::WindowText: //0 return QPalette::Window; case QPalette::HighlightedText: //13 return QPalette::Highlight; case QPalette::Window: //10 return QPalette::WindowText; case QPalette::Base: //9 return QPalette::Text; case QPalette::Text: //6 return QPalette::Base; case QPalette::Highlight: //12 return QPalette::HighlightedText; case QPalette::Button: //1 return QPalette::ButtonText; default: return QPalette::Window; } } bool Colors::counterRole(QPalette::ColorRole &from, QPalette::ColorRole &to, QPalette::ColorRole defFrom, QPalette::ColorRole defTo) { switch (from) { case QPalette::WindowText: //0 to = QPalette::Window; break; case QPalette::Window: //10 to = QPalette::WindowText; break; case QPalette::Base: //9 to = QPalette::Text; break; case QPalette::Text: //6 to = QPalette::Base; break; case QPalette::Button: //1 to = QPalette::ButtonText; break; case QPalette::ButtonText: //8 to = QPalette::Button; break; case QPalette::Highlight: //12 to = QPalette::HighlightedText; break; case QPalette::HighlightedText: //13 to = QPalette::Highlight; break; default: from = defFrom; to = defTo; return false; } return true; } QColor Colors::emphasize(const QColor &c, int value) { int h, s, v, a; QColor ret; c.getHsv(&h, &s, &v, &a); if (v < 75 + value) { ret.setHsv(h, s, CLAMP(85 + value, 85, 255), a); return ret; } if (v > 200) { if (s > 30) { h -= 5; if (h < 0) { h = 360 + h; } s = (s << 3) / 9; v += value; ret.setHsv(h, CLAMP(s, 30, 255), CLAMP(v, 0, 255), a); return ret; } if (v > 230) { ret.setHsv(h, s, CLAMP(v - value, 0, 255), a); return ret; } } if (v > 128) { ret.setHsv(h, s, CLAMP(v + value, 0, 255), a); } else { ret.setHsv(h, s, CLAMP(v - value, 0, 255), a); } return ret; } bool Colors::haveContrast(const QColor &a, const QColor &b) { int ar, ag, ab, br, bg, bb; a.getRgb(&ar, &ag, &ab); b.getRgb(&br, &bg, &bb); int diff = (299 * (ar - br) + 587 * (ag - bg) + 114 * (ab - bb)); if (qAbs(diff) < 91001) { return false; } diff = qMax(ar, br) + qMax(ag, bg) + qMax(ab, bb) - (qMin(ar, br) + qMin(ag, bg) + qMin(ab, bb)); return (diff > 300); } QColor Colors::light(const QColor &c, int value) { int h, s, v, a; c.getHsv(&h, &s, &v, &a); QColor ret; if (v < 255 - value) { ret.setHsv(h, s, CLAMP(v + value, 0, 255), a); //value could be negative return ret; } // psychovisual uplightning, i.e. shift hue and lower saturation if (s > 30) { h -= (value * 5 / 20); if (h < 0) { h = 400 + h; } s = CLAMP((s << 3) / 9, 30, 255); ret.setHsv(h, s, 255, a); return ret; } else { // hue shifting has no sense, half saturation (btw, white won't get brighter :) ret.setHsv(h, s >> 1, 255, a); } return ret; } QColor Colors::mid(const QColor &c1, const QColor &c2, int w1, int w2) { int sum = (w1 + w2); if (!sum) { return Qt::black; } int r, g, b, a; #if 0 QColor c1 = oc1; b = value(c1); if (b < 70) { c1.getHsv(&r, &g, &b, &a); c1.setHsv(r, g, 70, a); } #endif r = (w1 * c1.red() + w2 * c2.red()) / sum; r = CLAMP(r, 0, 255); g = (w1 * c1.green() + w2 * c2.green()) / sum; g = CLAMP(g, 0, 255); b = (w1 * c1.blue() + w2 * c2.blue()) / sum; b = CLAMP(b, 0, 255); a = (w1 * c1.alpha() + w2 * c2.alpha()) / sum; a = CLAMP(a, 0, 255); return QColor(r, g, b, a); } int Colors::value(const QColor &c) { int v = c.red(); if (c.green() > v) { v = c.green(); } if (c.blue() > v) { v = c.blue(); } return v; } qupzilla-1.6.0/src/lib/tools/colors.h000066400000000000000000000030461226107126500175330ustar00rootroot00000000000000/* * Bespin library for Qt style, KWin decoration and everythng else * Copyright 2007-2012 by Thomas Lübking * * This library is free software; you can redistribute it and/or modify * it under the terms of the GNU Library General Public License version 2 * * 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 Library General Public * License along with this program; if not, write to the * Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ #ifndef COLORS_H #define COLORS_H class QWidget; #include #include // namespace Bespin { namespace Colors { const QColor &bg(const QPalette &pal, const QWidget* w); int contrast(const QColor &a, const QColor &b); QPalette::ColorRole counterRole(QPalette::ColorRole role); bool counterRole(QPalette::ColorRole &from, QPalette::ColorRole &to, QPalette::ColorRole defFrom = QPalette::WindowText, QPalette::ColorRole defTo = QPalette::Window); QColor emphasize(const QColor &c, int value = 10); bool haveContrast(const QColor &a, const QColor &b); QColor light(const QColor &c, int value); QColor mid(const QColor &oc1, const QColor &c2, int w1 = 1, int w2 = 1); int value(const QColor &c); } // } #endif //COLORS_H qupzilla-1.6.0/src/lib/tools/combotabbar.cpp000066400000000000000000001241711226107126500210430ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 S. Razi Alavizadeh * * 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 3 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, see . * ============================================================ */ #include "combotabbar.h" #include "toolbutton.h" #include "mainapplication.h" #include "proxystyle.h" #include #include #include #include #include #include #include #include #include #include #include #include // taken from qtabbar_p.h #define ANIMATION_DURATION 250 ComboTabBar::ComboTabBar(QWidget* parent) : QWidget(parent) , m_mainTabBar(0) , m_pinnedTabBar(0) , m_maxVisiblePinnedTab(0) , m_mainBarOverFlowed(false) , m_dragOffset(0) , m_usesScrollButtons(false) { m_mainTabBar = new TabBarHelper(this); m_pinnedTabBar = new TabBarHelper(this); m_mainTabBarWidget = new TabBarScrollWidget(m_mainTabBar, this); m_pinnedTabBarWidget = new TabBarScrollWidget(m_pinnedTabBar, this); m_mainTabBar->setScrollArea(m_mainTabBarWidget->scrollArea()); m_pinnedTabBar->setScrollArea(m_pinnedTabBarWidget->scrollArea()); connect(m_mainTabBarWidget->scrollBar(), SIGNAL(rangeChanged(int,int)), this, SLOT(setMinimumWidths())); connect(m_mainTabBarWidget->scrollBar(), SIGNAL(valueChanged(int)), this, SIGNAL(scrollBarValueChanged(int))); connect(m_pinnedTabBarWidget->scrollBar(), SIGNAL(rangeChanged(int,int)), this, SLOT(setMinimumWidths())); connect(m_pinnedTabBarWidget->scrollBar(), SIGNAL(valueChanged(int)), this, SIGNAL(scrollBarValueChanged(int))); connect(this, SIGNAL(overFlowChanged(bool)), m_mainTabBarWidget, SLOT(overFlowChanged(bool))); m_mainTabBar->setActiveTabBar(true); m_pinnedTabBar->setTabsClosable(false); m_mainLayout = new QHBoxLayout; m_mainLayout->setSpacing(0); m_mainLayout->setContentsMargins(0, 0, 0, 0); m_mainLayout->addWidget(m_pinnedTabBarWidget, 4); m_mainLayout->addWidget(m_mainTabBarWidget, 1); setLayout(m_mainLayout); connect(m_mainTabBar, SIGNAL(currentChanged(int)), this, SLOT(slotCurrentChanged(int))); connect(m_mainTabBar, SIGNAL(tabCloseRequested(int)), this, SLOT(slotTabCloseRequested(int))); connect(m_mainTabBar, SIGNAL(tabMoved(int,int)), this, SLOT(slotTabMoved(int,int))); connect(m_pinnedTabBar, SIGNAL(currentChanged(int)), this, SLOT(slotCurrentChanged(int))); connect(m_pinnedTabBar, SIGNAL(tabCloseRequested(int)), this, SLOT(slotTabCloseRequested(int))); connect(m_pinnedTabBar, SIGNAL(tabMoved(int,int)), this, SLOT(slotTabMoved(int,int))); setAutoFillBackground(false); m_mainTabBar->setAutoFillBackground(false); m_pinnedTabBar->setAutoFillBackground(false); m_mainTabBar->installEventFilter(this); } int ComboTabBar::addTab(const QString &text) { return insertTab(-1, text); } int ComboTabBar::addTab(const QIcon &icon, const QString &text) { return insertTab(-1, icon, text); } int ComboTabBar::insertTab(int index, const QString &text) { return insertTab(index, QIcon(), text); } int ComboTabBar::insertTab(int index, const QIcon &icon, const QString &text, bool pinned) { if (pinned) { index = m_pinnedTabBar->insertTab(index, icon, text); } else { index = m_mainTabBar->insertTab(index - pinnedTabsCount(), icon, text); if (tabsClosable()) { QWidget* closeButton = m_mainTabBar->tabButton(index, closeButtonPosition()); if ((closeButton && closeButton->objectName() != QLatin1String("combotabbar_tabs_close_button")) || !closeButton) { // insert our close button insertCloseButton(index + pinnedTabsCount()); if (closeButton) { closeButton->deleteLater(); } } } index += pinnedTabsCount(); } updatePinnedTabBarVisibility(); tabInserted(index); setMinimumWidths(); return index; } void ComboTabBar::removeTab(int index) { if (validIndex(index)) { localTabBar(index)->removeTab(toLocalIndex(index)); updatePinnedTabBarVisibility(); tabRemoved(index); setMinimumWidths(); } } void ComboTabBar::moveTab(int from, int to) { if (from >= pinnedTabsCount() && to >= pinnedTabsCount()) { m_mainTabBar->moveTab(from - pinnedTabsCount(), to - pinnedTabsCount()); } else if (from < pinnedTabsCount() && to < pinnedTabsCount()) { m_pinnedTabBar->moveTab(from, to); } } bool ComboTabBar::isTabEnabled(int index) const { return localTabBar(index)->isTabEnabled(toLocalIndex(index)); } void ComboTabBar::setTabEnabled(int index, bool enabled) { localTabBar(index)->setTabEnabled(toLocalIndex(index), enabled); } QColor ComboTabBar::tabTextColor(int index) const { return localTabBar(index)->tabTextColor(toLocalIndex(index)); } void ComboTabBar::setTabTextColor(int index, const QColor &color) { localTabBar(index)->setTabTextColor(toLocalIndex(index), color); } QRect ComboTabBar::tabRect(int index) const { QRect rect; if (index != -1) { bool mainTabBar = index >= pinnedTabsCount(); rect = localTabBar(index)->tabRect(toLocalIndex(index)); if (mainTabBar) { rect.moveLeft(rect.x() + mapFromGlobal(m_mainTabBar->mapToGlobal(QPoint(0, 0))).x()); QRect widgetRect = m_mainTabBarWidget->scrollArea()->viewport()->rect(); widgetRect.moveLeft(widgetRect.x() + mapFromGlobal(m_mainTabBarWidget->scrollArea()->viewport()->mapToGlobal(QPoint(0, 0))).x()); rect = rect.intersected(widgetRect); } else { rect.moveLeft(rect.x() + mapFromGlobal(m_pinnedTabBar->mapToGlobal(QPoint(0, 0))).x()); QRect widgetRect = m_pinnedTabBarWidget->scrollArea()->viewport()->rect(); widgetRect.moveLeft(widgetRect.x() + mapFromGlobal(m_pinnedTabBarWidget->scrollArea()->viewport()->mapToGlobal(QPoint(0, 0))).x()); rect = rect.intersected(widgetRect); } } return rect; } int ComboTabBar::tabAt(const QPoint &pos) const { int index = m_pinnedTabBarWidget->tabAt(pos); if (index != -1) { return index; } QPoint p = pos; p.setX(p.x() - m_pinnedTabBarWidget->width()); index = m_mainTabBarWidget->tabAt(p); if (index != -1) { index += pinnedTabsCount(); } return index; } int ComboTabBar::mainTabBarCurrentIndex() const { return (m_mainTabBar->currentIndex() == -1 ? -1 : pinnedTabsCount() + m_mainTabBar->currentIndex()); } int ComboTabBar::currentIndex() const { if (m_pinnedTabBar->isActiveTabBar()) { return m_pinnedTabBar->currentIndex(); } else { return (m_mainTabBar->currentIndex() == -1 ? -1 : pinnedTabsCount() + m_mainTabBar->currentIndex()); } } void ComboTabBar::setCurrentIndex(int index) { return localTabBar(index)->setCurrentIndex(toLocalIndex(index)); } void ComboTabBar::slotCurrentChanged(int index) { if (sender() == m_pinnedTabBar) { if (index == -1 && m_mainTabBar->count() > 0) { m_mainTabBar->setActiveTabBar(true); m_pinnedTabBar->setActiveTabBar(false); emit currentChanged(pinnedTabsCount()); } else { m_pinnedTabBar->setActiveTabBar(true); m_mainTabBar->setActiveTabBar(false); emit currentChanged(index); } } else { if (index == -1 && pinnedTabsCount() > 0) { m_pinnedTabBar->setActiveTabBar(true); m_mainTabBar->setActiveTabBar(false); emit currentChanged(pinnedTabsCount() - 1); } else { m_mainTabBar->setActiveTabBar(true); m_pinnedTabBar->setActiveTabBar(false); emit currentChanged(index + pinnedTabsCount()); } } } void ComboTabBar::slotTabCloseRequested(int index) { if (sender() == m_pinnedTabBar) { emit tabCloseRequested(index); } else { emit tabCloseRequested(index + pinnedTabsCount()); } } void ComboTabBar::slotTabMoved(int from, int to) { if (sender() == m_pinnedTabBar) { emit tabMoved(from, to); } else { emit tabMoved(from + pinnedTabsCount(), to + pinnedTabsCount()); } } void ComboTabBar::closeTabFromButton() { QWidget* button = qobject_cast(sender()); int tabToClose = -1; for (int i = 0; i < m_mainTabBar->count(); ++i) { if (m_mainTabBar->tabButton(i, closeButtonPosition()) == button) { tabToClose = i; break; } } if (tabToClose != -1) { emit tabCloseRequested(tabToClose + pinnedTabsCount()); } } int ComboTabBar::count() const { return pinnedTabsCount() + m_mainTabBar->count(); } void ComboTabBar::setDrawBase(bool drawTheBase) { m_mainTabBar->setDrawBase(drawTheBase); m_pinnedTabBar->setDrawBase(drawTheBase); } bool ComboTabBar::drawBase() const { return m_mainTabBar->drawBase(); } Qt::TextElideMode ComboTabBar::elideMode() const { return m_mainTabBar->elideMode(); } void ComboTabBar::setElideMode(Qt::TextElideMode elide) { m_mainTabBar->setElideMode(elide); m_pinnedTabBar->setElideMode(elide); } QString ComboTabBar::tabText(int index) const { return localTabBar(index)->tabText(toLocalIndex(index)); } void ComboTabBar::setTabText(int index, const QString &text) { localTabBar(index)->setTabText(toLocalIndex(index), text); } void ComboTabBar::setTabToolTip(int index, const QString &tip) { localTabBar(index)->setTabToolTip(toLocalIndex(index), tip); } QString ComboTabBar::tabToolTip(int index) const { return localTabBar(index)->tabToolTip(toLocalIndex(index)); } bool ComboTabBar::tabsClosable() const { return m_mainTabBar->tabsClosable(); } void ComboTabBar::setTabsClosable(bool closable) { if (closable == tabsClosable()) { return; } if (closable) { // insert our close button for (int i = 0; i < m_mainTabBar->count(); ++i) { QWidget* closeButton = m_mainTabBar->tabButton(i, closeButtonPosition()); if (closeButton) { if (closeButton->objectName() == QLatin1String("combotabbar_tabs_close_button")) { continue; } } insertCloseButton(i + pinnedTabsCount()); if (closeButton) { closeButton->deleteLater(); } } } m_mainTabBar->setTabsClosable(closable); } void ComboTabBar::setTabButton(int index, QTabBar::ButtonPosition position, QWidget* widget) { localTabBar(index)->setTabButton(toLocalIndex(index), position, widget); } QWidget* ComboTabBar::tabButton(int index, QTabBar::ButtonPosition position) const { return localTabBar(index)->tabButton(toLocalIndex(index), position); } QTabBar::SelectionBehavior ComboTabBar::selectionBehaviorOnRemove() const { return m_mainTabBar->selectionBehaviorOnRemove(); } void ComboTabBar::setSelectionBehaviorOnRemove(QTabBar::SelectionBehavior behavior) { m_mainTabBar->setSelectionBehaviorOnRemove(behavior); m_pinnedTabBar->setSelectionBehaviorOnRemove(behavior); } bool ComboTabBar::expanding() const { return m_mainTabBar->expanding(); } void ComboTabBar::setExpanding(bool enabled) { m_mainTabBar->setExpanding(enabled); m_pinnedTabBar->setExpanding(enabled); } bool ComboTabBar::isMovable() const { return m_mainTabBar->isMovable(); } void ComboTabBar::setMovable(bool movable) { m_mainTabBar->setMovable(movable); m_pinnedTabBar->setMovable(movable); } bool ComboTabBar::documentMode() const { return m_mainTabBar->documentMode(); } void ComboTabBar::setDocumentMode(bool set) { m_mainTabBar->setDocumentMode(set); m_pinnedTabBar->setDocumentMode(set); } int ComboTabBar::pinnedTabsCount() const { return m_pinnedTabBar->count(); } int ComboTabBar::normalTabsCount() const { return m_mainTabBar->count(); } bool ComboTabBar::isPinned(int index) const { return index >= 0 && index < pinnedTabsCount(); } void ComboTabBar::setMaxVisiblePinnedTab(int max) { m_maxVisiblePinnedTab = max; setMinimumWidths(); } void ComboTabBar::setObjectName(const QString &name) { m_mainTabBar->setObjectName(name); m_pinnedTabBar->setObjectName(name); m_pinnedTabBarWidget->setContainersName(name); m_mainTabBarWidget->setContainersName(name); } void ComboTabBar::setMouseTracking(bool enable) { m_mainTabBarWidget->scrollArea()->setMouseTracking(enable); m_mainTabBarWidget->setMouseTracking(enable); m_mainTabBar->setMouseTracking(enable); m_pinnedTabBarWidget->scrollArea()->setMouseTracking(enable); m_pinnedTabBarWidget->setMouseTracking(enable); m_pinnedTabBar->setMouseTracking(enable); QWidget::setMouseTracking(enable); } void ComboTabBar::setUpLayout() { int height = qMax(m_mainTabBar->height(), m_pinnedTabBar->height()); // Workaround for Oxygen theme. For some reason, QTabBar::height() returns bigger // height than it actually should. if (mApp->proxyStyle() && mApp->proxyStyle()->name() == QLatin1String("oxygen")) { height -= 4; } // We need to setup heights even before m_mainTabBar->height() has correct value // So lets just set minimum 5px height height = qMax(5, height); setFixedHeight(height); m_pinnedTabBar->setFixedHeight(height); m_mainTabBarWidget->setUpLayout(); m_pinnedTabBarWidget->setUpLayout(); setMinimumWidths(); } void ComboTabBar::insertCloseButton(int index) { index -= pinnedTabsCount(); if (index < 0) { return; } QAbstractButton* closeButton = new CloseButton(this); closeButton->setToolTip(m_closeButtonsToolTip); connect(closeButton, SIGNAL(clicked()), this, SLOT(closeTabFromButton())); m_mainTabBar->setTabButton(index, closeButtonPosition(), closeButton); } void ComboTabBar::setCloseButtonsToolTip(const QString &tip) { m_closeButtonsToolTip = tip; } void ComboTabBar::enableBluredBackground(bool enable) { m_mainTabBar->enableBluredBackground(enable); m_pinnedTabBar->enableBluredBackground(enable); m_mainTabBarWidget->enableBluredBackground(enable); m_pinnedTabBarWidget->enableBluredBackground(enable); } int ComboTabBar::mainTabBarWidth() const { return m_mainTabBar->width(); } int ComboTabBar::pinTabBarWidth() const { return m_pinnedTabBarWidget->isHidden() ? 0 : m_pinnedTabBarWidget->width(); } void ComboTabBar::wheelEvent(QWheelEvent* event) { event->accept(); if (m_mainTabBarWidget->underMouse()) { if (m_mainTabBarWidget->scrollBar()->isOverFlowed()) { m_mainTabBarWidget->scrollByWheel(event); } else if (m_pinnedTabBarWidget->scrollBar()->isOverFlowed()) { m_pinnedTabBarWidget->scrollByWheel(event); } } else if (m_pinnedTabBarWidget->underMouse()) { if (m_pinnedTabBarWidget->scrollBar()->isOverFlowed()) { m_pinnedTabBarWidget->scrollByWheel(event); } else if (m_mainTabBarWidget->scrollBar()->isOverFlowed()) { m_mainTabBarWidget->scrollByWheel(event); } } if (!m_mainTabBarWidget->scrollBar()->isOverFlowed() && !m_pinnedTabBarWidget->scrollBar()->isOverFlowed()) { setCurrentNextEnabledIndex(event->delta() > 0 ? -1 : 1); } } void ComboTabBar::resizeEvent(QResizeEvent* event) { QWidget::resizeEvent(event); if (m_mainBarOverFlowed != m_mainTabBarWidget->scrollBar()->isOverFlowed()) { setMinimumWidths(); } } bool ComboTabBar::eventFilter(QObject* obj, QEvent* ev) { if (obj == m_mainTabBar && ev->type() == QEvent::Resize) { QResizeEvent* event = static_cast(ev); if (event->oldSize().height() != event->size().height()) { setUpLayout(); } } return QWidget::eventFilter(obj, ev); } int ComboTabBar::comboTabBarPixelMetric(ComboTabBar::SizeType sizeType) const { switch (sizeType) { case ExtraReservedWidth: return 0; case NormalTabMaximumWidth: return 150; case ActiveTabMinimumWidth: case NormalTabMinimumWidth: case OverflowedTabWidth: return 100; case PinnedTabWidth: return 30; default: break; } return -1; } QTabBar::ButtonPosition ComboTabBar::iconButtonPosition() { return (closeButtonPosition() == QTabBar::RightSide ? QTabBar::LeftSide : QTabBar::RightSide); } QTabBar::ButtonPosition ComboTabBar::closeButtonPosition() { return (QTabBar::ButtonPosition)style()->styleHint(QStyle::SH_TabBar_CloseButtonPosition, 0, this); } bool ComboTabBar::validIndex(int index) const { return (index >= 0 && index < count()); } void ComboTabBar::setCurrentNextEnabledIndex(int offset) { for (int index = currentIndex() + offset; validIndex(index); index += offset) { if (isTabEnabled(index)) { setCurrentIndex(index); break; } } } bool ComboTabBar::usesScrollButtons() const { return m_mainTabBarWidget->usesScrollButtons(); } void ComboTabBar::setUsesScrollButtons(bool useButtons) { m_mainTabBarWidget->setUsesScrollButtons(useButtons); } void ComboTabBar::addMainBarWidget(QWidget* widget, Qt::Alignment align, int stretch, Qt::Alignment layoutAlignment) { if (align == Qt::AlignRight) { m_mainTabBarWidget->addRightWidget(widget, stretch, layoutAlignment); } else { m_mainTabBarWidget->addLeftWidget(widget, stretch, layoutAlignment); } } void ComboTabBar::ensureVisible(int index, int xmargin) { if (index == -1) { index = currentIndex(); } if (index < pinnedTabsCount()) { if (xmargin == -1) { xmargin = qMax(20, comboTabBarPixelMetric(PinnedTabWidth)); } m_pinnedTabBarWidget->ensureVisible(index, xmargin); } else { if (xmargin == -1) { xmargin = comboTabBarPixelMetric(OverflowedTabWidth); } index -= pinnedTabsCount(); m_mainTabBarWidget->ensureVisible(index, xmargin); } } QSize ComboTabBar::tabSizeHint(int index, bool fast) const { Q_UNUSED(fast) return localTabBar(index)->baseClassTabSizeHint(toLocalIndex(index)); } void ComboTabBar::tabInserted(int index) { Q_UNUSED(index) } void ComboTabBar::tabRemoved(int index) { Q_UNUSED(index) } TabBarHelper* ComboTabBar::localTabBar(int index) const { if (index < 0 || index >= pinnedTabsCount()) { return m_mainTabBar; } else { return m_pinnedTabBar; } } int ComboTabBar::toLocalIndex(int globalIndex) const { if (globalIndex < 0) { return -1; } if (globalIndex >= pinnedTabsCount()) { return globalIndex - pinnedTabsCount(); } else { return globalIndex; } } void ComboTabBar::updatePinnedTabBarVisibility() { m_pinnedTabBarWidget->setVisible(pinnedTabsCount() > 0); if (pinnedTabsCount() > 0) { m_pinnedTabBarWidget->setFixedHeight(m_mainTabBarWidget->height()); m_pinnedTabBar->setFixedHeight(m_mainTabBar->height()); } } void ComboTabBar::setMinimumWidths() { if (!isVisible() || comboTabBarPixelMetric(PinnedTabWidth) < 0) { return; } int pinnedTabBarWidth = pinnedTabsCount() * comboTabBarPixelMetric(PinnedTabWidth); m_pinnedTabBar->setMinimumWidth(pinnedTabBarWidth); if (m_maxVisiblePinnedTab > 0) { pinnedTabBarWidth = qMin(pinnedTabBarWidth, m_maxVisiblePinnedTab * comboTabBarPixelMetric(PinnedTabWidth)); } m_pinnedTabBarWidget->setMaximumWidth(pinnedTabBarWidth); int mainTabBarWidth = comboTabBarPixelMetric(NormalTabMinimumWidth) * (m_mainTabBar->count() - 1) + comboTabBarPixelMetric(ActiveTabMinimumWidth) + comboTabBarPixelMetric(ExtraReservedWidth); if (mainTabBarWidth <= m_mainTabBarWidget->width()) { m_mainTabBar->useFastTabSizeHint(false); emit overFlowChanged(false); m_mainTabBar->setMinimumWidth(mainTabBarWidth); m_mainBarOverFlowed = false; } else { emit overFlowChanged(true); // The following line is the cause of calling tabSizeHint() for all tabs that is // time consuming, Because of this we notify application to using a lighter // version of it. (this is safe because all normal tabs have the same size) m_mainTabBar->useFastTabSizeHint(true); if (m_mainTabBar->count() * comboTabBarPixelMetric(OverflowedTabWidth) != m_mainTabBar->minimumWidth()) { m_mainTabBar->setMinimumWidth(m_mainTabBar->count() * comboTabBarPixelMetric(OverflowedTabWidth)); } m_mainBarOverFlowed = true; } } void ComboTabBar::showEvent(QShowEvent* event) { if (!event->spontaneous()) { QTimer::singleShot(0, this, SLOT(setUpLayout())); } QWidget::showEvent(event); } TabBarHelper::TabBarHelper(ComboTabBar* comboTabBar) : QTabBar(comboTabBar) , m_comboTabBar(comboTabBar) , m_scrollArea(0) , m_pressedIndex(-1) , m_pressedGlobalX(-1) , m_dragInProgress(false) , m_activeTabBar(false) , m_useFastTabSizeHint(false) , m_bluredBackground(false) { } void TabBarHelper::setTabButton(int index, QTabBar::ButtonPosition position, QWidget* widget) { QTabBar::setTabButton(index, position, widget); } QSize TabBarHelper::tabSizeHint(int index) const { if (this == m_comboTabBar->mainTabBar()) { index += m_comboTabBar->pinnedTabsCount(); } return m_comboTabBar->tabSizeHint(index, m_useFastTabSizeHint); } QSize TabBarHelper::baseClassTabSizeHint(int index) const { return QTabBar::tabSizeHint(index); } bool TabBarHelper::isActiveTabBar() { return m_activeTabBar; } void TabBarHelper::setActiveTabBar(bool activate) { if (m_activeTabBar != activate) { m_activeTabBar = activate; update(); } } void TabBarHelper::setScrollArea(QScrollArea* scrollArea) { m_scrollArea = scrollArea; } void TabBarHelper::useFastTabSizeHint(bool enabled) { m_useFastTabSizeHint = enabled; } bool TabBarHelper::isDisplayedOnViewPort(int globalLeft, int globalRight) { bool isVisible = true; if (m_scrollArea) { if (globalRight < m_scrollArea->viewport()->mapToGlobal(QPoint(0, 0)).x() || globalLeft > m_scrollArea->viewport()->mapToGlobal(m_scrollArea->viewport()->rect().topRight()).x()) { isVisible = false; } } return isVisible; } void TabBarHelper::enableBluredBackground(bool enable) { if (enable != m_bluredBackground) { m_bluredBackground = enable; update(); } } void TabBarHelper::setCurrentIndex(int index) { if (index == currentIndex() && !m_activeTabBar) { emit currentChanged(currentIndex()); } QTabBar::setCurrentIndex(index); } bool TabBarHelper::event(QEvent* ev) { switch (ev->type()) { case QEvent::ToolTip: case QEvent::Wheel: ev->ignore(); return false; break; default: break; } QTabBar::event(ev); ev->ignore(); return false; } // taken from qtabbar.cpp void TabBarHelper::initStyleBaseOption(QStyleOptionTabBarBaseV2* optTabBase, QTabBar* tabbar, QSize size) { QStyleOptionTab tabOverlap; tabOverlap.shape = tabbar->shape(); int overlap = tabbar->style()->pixelMetric(QStyle::PM_TabBarBaseOverlap, &tabOverlap, tabbar); QWidget* theParent = tabbar->parentWidget(); optTabBase->init(tabbar); optTabBase->shape = tabbar->shape(); optTabBase->documentMode = tabbar->documentMode(); if (theParent && overlap > 0) { QRect rect; switch (tabOverlap.shape) { case QTabBar::RoundedNorth: case QTabBar::TriangularNorth: rect.setRect(0, size.height() - overlap, size.width(), overlap); break; case QTabBar::RoundedSouth: case QTabBar::TriangularSouth: rect.setRect(0, 0, size.width(), overlap); break; case QTabBar::RoundedEast: case QTabBar::TriangularEast: rect.setRect(0, 0, overlap, size.height()); break; case QTabBar::RoundedWest: case QTabBar::TriangularWest: rect.setRect(size.width() - overlap, 0, overlap, size.height()); break; } optTabBase->rect = rect; } } // some codes were taken from qtabbar.cpp void TabBarHelper::paintEvent(QPaintEvent* event) { if (m_bluredBackground) { QPainter p(this); p.setCompositionMode(QPainter::CompositionMode_Clear); p.fillRect(event->rect(), QColor(0, 0, 0, 0)); } // note: this code doesn't support vertical tabs if (!m_dragInProgress) { QStyleOptionTabBarBaseV2 optTabBase; initStyleBaseOption(&optTabBase, this, size()); QStylePainter p(this); int selected = currentIndex(); for (int i = 0; i < count(); ++i) { optTabBase.tabBarRect |= tabRect(i); } optTabBase.selectedTabRect = QRect(); if (drawBase()) { p.drawPrimitive(QStyle::PE_FrameTabBarBase, optTabBase); } for (int i = 0; i < count(); ++i) { QStyleOptionTabV3 tab; initStyleOption(&tab, i); if (!(tab.state & QStyle::State_Enabled)) { tab.palette.setCurrentColorGroup(QPalette::Disabled); } // Don't bother drawing a tab if the entire tab is outside of the visible tab bar. if (!isDisplayedOnViewPort(mapToGlobal(tab.rect.topLeft()).x(), mapToGlobal(tab.rect.topRight()).x())) { continue; } if (i == selected) { continue; } // update mouse over state when scrolling tab.state = tab.state & ~QStyle::State_MouseOver; int index = tabAt(mapFromGlobal(QCursor::pos())); if (i == index) { tab.state = tab.state | QStyle::State_MouseOver; } p.drawControl(QStyle::CE_TabBarTab, tab); } // Draw the selected tab last to get it "on top" if (selected >= 0) { QStyleOptionTabV3 tab; initStyleOption(&tab, selected); if (!m_activeTabBar) { tab.state = tab.state & ~QStyle::State_Selected; } p.drawControl(QStyle::CE_TabBarTab, tab); } } else { QTabBar::paintEvent(event); } #if 0 if (m_scrollArea) { const int tearWidth = 15; const int maxAlpha = 200; const int colorId = 150; const bool ltr = isLeftToRight(); QWidget* viewPort = m_scrollArea->viewport(); QPoint globalTopLeft = ltr ? viewPort->mapToGlobal(QPoint(0, 0)) : viewPort->mapToGlobal(QPoint(viewPort->width() - tearWidth, 0)); if (m_scrollArea->horizontalScrollBar()->value() > m_scrollArea->horizontalScrollBar()->minimum()) { QPainter p(this); QPoint localTopLeft = mapFromGlobal(globalTopLeft); QLinearGradient fade(localTopLeft, localTopLeft + QPoint(tearWidth, 0)); fade.setColorAt(ltr ? 0 : 1, QColor(colorId, colorId, colorId, maxAlpha)); fade.setColorAt(ltr ? 1 : 0, QColor(colorId, colorId, colorId, 0)); p.fillRect(QRect(localTopLeft, QSize(tearWidth, height())), fade); } QPoint globalTopRight = ltr ? viewPort->mapToGlobal(QPoint(viewPort->width() - tearWidth, 0)) : viewPort->mapToGlobal(QPoint(0, 0)); if (m_scrollArea->horizontalScrollBar()->value() < m_scrollArea->horizontalScrollBar()->maximum()) { QPainter p(this); globalTopRight = mapFromGlobal(globalTopRight); QLinearGradient fade(globalTopRight, globalTopRight + QPoint(tearWidth, 0)); fade.setColorAt(ltr ? 0 : 1, QColor(colorId, colorId, colorId, 0)); fade.setColorAt(ltr ? 1 : 0, QColor(colorId, colorId, colorId, maxAlpha)); p.fillRect(QRect(globalTopRight, QSize(tearWidth, height())), fade); } } #endif } void TabBarHelper::mousePressEvent(QMouseEvent* event) { event->ignore(); if (event->button() == Qt::LeftButton) { m_pressedIndex = tabAt(event->pos()); if (m_pressedIndex != -1) { m_pressedGlobalX = event->globalX(); m_dragInProgress = true; // virtualize selecting tab by click if (m_pressedIndex == currentIndex() && !m_activeTabBar) { emit currentChanged(currentIndex()); } } } QTabBar::mousePressEvent(event); } void TabBarHelper::mouseReleaseEvent(QMouseEvent* event) { event->ignore(); QTabBar::mouseReleaseEvent(event); if (m_pressedIndex >= 0) { int length = qAbs(m_pressedGlobalX - event->globalX()); int duration = qMin((length * ANIMATION_DURATION) / tabRect(m_pressedIndex).width(), ANIMATION_DURATION); m_pressedIndex = -1; m_pressedGlobalX = -1; QTimer::singleShot(duration, this, SLOT(resetDragState())); } } void TabBarHelper::resetDragState() { if (m_pressedIndex == -1) { m_dragInProgress = false; update(); } } TabScrollBar::TabScrollBar(QWidget* parent) : QScrollBar(Qt::Horizontal, parent) , m_animation(0) { } TabScrollBar::~TabScrollBar() { } void TabScrollBar::animateToValue(int to, QEasingCurve::Type type) { if (!m_animation) { m_animation = new QPropertyAnimation(this, "value", this); } m_animation->setEasingCurve(type); int current = value(); to = qBound(minimum(), to, maximum()); int lenght = qAbs(to - current); int duration = qMin(1500, 200 + lenght / 2); m_animation->setDuration(duration); if (m_animation->state() != QAbstractAnimation::Running) { m_animation->setStartValue(value()); } m_animation->setEndValue(to); m_animation->start(); } bool TabScrollBar::isOverFlowed() { return maximum() != minimum(); } void TabScrollBar::wheelEvent(QWheelEvent* event) { int delta = isRightToLeft() ? -event->delta() : event->delta(); QWheelEvent fakeEvent(event->pos(), delta, event->buttons(), event->modifiers(), Qt::Vertical); QScrollBar::wheelEvent(&fakeEvent); event->accept(); } TabBarScrollWidget::TabBarScrollWidget(QTabBar* tabBar, QWidget* parent) : QWidget(parent) , m_tabBar(tabBar) , m_usesScrollButtons(false) , m_bluredBackground(false) , m_scrollByButtonAnim(0) { m_scrollArea = new QScrollArea(this); m_scrollArea->setFrameStyle(QFrame::NoFrame); m_scrollArea->setWidgetResizable(true); m_scrollArea->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); m_scrollArea->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff); m_scrollBar = new TabScrollBar(m_scrollArea); m_scrollArea->setHorizontalScrollBar(m_scrollBar); m_scrollArea->setWidget(m_tabBar); m_leftScrollButton = new ToolButton(this); m_leftScrollButton->setAutoRaise(true); m_leftScrollButton->setObjectName("tabbar-button-left"); connect(m_leftScrollButton, SIGNAL(pressed()), this, SLOT(scrollStart())); connect(m_leftScrollButton, SIGNAL(released()), this, SLOT(scrollStop())); connect(m_leftScrollButton, SIGNAL(doubleClicked()), this, SLOT(scrollToLeftEdge())); connect(m_leftScrollButton, SIGNAL(middleMouseClicked()), this, SLOT(ensureVisible())); m_rightScrollButton = new ToolButton(this); m_rightScrollButton->setAutoRaise(true); m_rightScrollButton->setObjectName("tabbar-button-right"); connect(m_rightScrollButton, SIGNAL(pressed()), this, SLOT(scrollStart())); connect(m_rightScrollButton, SIGNAL(released()), this, SLOT(scrollStop())); connect(m_rightScrollButton, SIGNAL(doubleClicked()), this, SLOT(scrollToRightEdge())); connect(m_rightScrollButton, SIGNAL(middleMouseClicked()), this, SLOT(ensureVisible())); m_leftLayout = new QHBoxLayout; m_leftLayout->setSpacing(0); m_leftLayout->setContentsMargins(0, 0, 0, 0); m_rightLayout = new QHBoxLayout; m_rightLayout->setSpacing(0); m_rightLayout->setContentsMargins(0, 0, 0, 0); QHBoxLayout* leftLayout = new QHBoxLayout; leftLayout->setSpacing(0); leftLayout->setContentsMargins(0, 0, 0, 0); leftLayout->addLayout(m_leftLayout); leftLayout->addWidget(m_leftScrollButton); QHBoxLayout* rightLayout = new QHBoxLayout; rightLayout->setSpacing(0); rightLayout->setContentsMargins(0, 0, 0, 0); rightLayout->addWidget(m_rightScrollButton); rightLayout->addLayout(m_rightLayout); m_leftContainer = new QWidget(this); m_leftContainer->setLayout(leftLayout); m_rightContainer = new QWidget(this); m_rightContainer->setLayout(rightLayout); m_leftContainer->installEventFilter(this); m_rightContainer->installEventFilter(this); QHBoxLayout* hLayout = new QHBoxLayout; hLayout->setSpacing(0); hLayout->setContentsMargins(0, 0, 0, 0); hLayout->addWidget(m_leftContainer); hLayout->addWidget(m_scrollArea); hLayout->addWidget(m_rightContainer); setLayout(hLayout); m_scrollArea->viewport()->setAutoFillBackground(false); connect(m_scrollBar, SIGNAL(valueChanged(int)), this, SLOT(scrollBarValueChange())); scrollBarValueChange(); overFlowChanged(false); } void TabBarScrollWidget::addLeftWidget(QWidget* widget, int stretch, Qt::Alignment alignment) { m_leftLayout->addWidget(widget, stretch, alignment); } void TabBarScrollWidget::addRightWidget(QWidget* widget, int stretch, Qt::Alignment alignment) { m_rightLayout->addWidget(widget, stretch, alignment); } QTabBar* TabBarScrollWidget::tabBar() { return m_tabBar; } QScrollArea* TabBarScrollWidget::scrollArea() { return m_scrollArea; } TabScrollBar* TabBarScrollWidget::scrollBar() { return m_scrollBar; } void TabBarScrollWidget::ensureVisible(int index, int xmargin) { if (index == -1) { index = m_tabBar->currentIndex(); } if (index < 0 || index >= m_tabBar->count()) { return; } xmargin = qMin(xmargin, m_scrollArea->viewport()->width() / 2); // Qt Bug? the following lines were taken from QScrollArea::ensureVisible() and // then were fixed. The original version caculates wrong values in RTL layouts. const QRect logicalTabRect = QStyle::visualRect(m_tabBar->layoutDirection(), m_tabBar->rect(), m_tabBar->tabRect(index)); int logicalX = QStyle::visualPos(Qt::LeftToRight, m_scrollArea->viewport()->rect(), logicalTabRect.center()).x(); if (logicalX - xmargin < m_scrollBar->value()) { m_scrollBar->animateToValue(qMax(0, logicalX - xmargin)); } else if (logicalX > m_scrollBar->value() + m_scrollArea->viewport()->width() - xmargin) { m_scrollBar->animateToValue(qMin(logicalX - m_scrollArea->viewport()->width() + xmargin, m_scrollBar->maximum())); } } void TabBarScrollWidget::scrollToLeft(int n) { n = qMax(1, n); m_scrollBar->animateToValue(m_scrollBar->value() - n * m_scrollBar->singleStep(), QEasingCurve::Linear); } void TabBarScrollWidget::scrollToRight(int n) { n = qMax(1, n); m_scrollBar->animateToValue(m_scrollBar->value() + n * m_scrollBar->singleStep(), QEasingCurve::Linear); } void TabBarScrollWidget::scrollToLeftEdge() { m_scrollBar->animateToValue(m_scrollBar->minimum()); } void TabBarScrollWidget::scrollToRightEdge() { m_scrollBar->animateToValue(m_scrollBar->maximum()); } void TabBarScrollWidget::setUpLayout() { const int height = m_tabBar->height(); setFixedHeight(height); m_leftContainer->setFixedHeight(height); m_rightContainer->setFixedHeight(height); } void TabBarScrollWidget::scrollBarValueChange() { m_leftScrollButton->setEnabled(m_scrollBar->value() != m_scrollBar->minimum()); m_rightScrollButton->setEnabled(m_scrollBar->value() != m_scrollBar->maximum()); } void TabBarScrollWidget::overFlowChanged(bool overflowed) { m_leftScrollButton->setVisible(overflowed && m_usesScrollButtons); m_rightScrollButton->setVisible(overflowed && m_usesScrollButtons); // a workaround for UI issue of buttons on very fast resizing if (m_rightContainer->isVisible()) { m_rightContainer->hide(); m_rightContainer->show(); } if (m_leftContainer->isVisible()) { m_leftContainer->hide(); m_leftContainer->show(); } } void TabBarScrollWidget::scrollStart() { if (QApplication::keyboardModifiers() & Qt::CTRL) { if (sender() == m_leftScrollButton) { scrollToLeftEdge(); } else if (sender() == m_rightScrollButton) { scrollToRightEdge(); } return; } if (!m_scrollByButtonAnim) { m_scrollByButtonAnim = new QPropertyAnimation(m_scrollBar, "value", this); m_scrollByButtonAnim->setEasingCurve(QEasingCurve::Linear); } m_scrollByButtonAnim->stop(); int len = m_scrollBar->value(); m_scrollByButtonAnim->setStartValue(len); if (sender() == m_leftScrollButton) { len = len - m_scrollBar->minimum(); m_scrollByButtonAnim->setEndValue(m_scrollBar->minimum()); } else if (sender() == m_rightScrollButton) { len = m_scrollBar->maximum() - len; m_scrollByButtonAnim->setEndValue(m_scrollBar->maximum()); } m_scrollByButtonAnim->setDuration(len * 3); m_scrollByButtonAnim->start(); } void TabBarScrollWidget::scrollStop() { if (m_scrollByButtonAnim) { m_scrollByButtonAnim->stop(); } } bool TabBarScrollWidget::eventFilter(QObject* obj, QEvent* ev) { if (m_bluredBackground) { if (ev->type() == QEvent::Paint && (obj == m_leftContainer || obj == m_rightContainer)) { QPaintEvent* event = static_cast(ev); QPainter p(qobject_cast(obj)); p.setCompositionMode(QPainter::CompositionMode_Clear); p.fillRect(event->rect(), QColor(0, 0, 0, 0)); } } return QWidget::eventFilter(obj, ev); } void TabBarScrollWidget::scrollByWheel(QWheelEvent* event) { event->accept(); // support for some finer mouse static int totalDeltas = 0; if (totalDeltas * event->delta() < 0) { // direction has changed from last time totalDeltas = 0; } totalDeltas += event->delta(); int factor = qMax(m_scrollBar->pageStep() / 3, m_scrollBar->singleStep()); if ((event->modifiers() & Qt::ControlModifier) || (event->modifiers() & Qt::ShiftModifier)) { factor = m_scrollBar->pageStep(); } int offset = (totalDeltas / 120) * factor; if (offset != 0) { if (isRightToLeft()) { m_scrollBar->animateToValue(m_scrollBar->value() + offset); } else { m_scrollBar->animateToValue(m_scrollBar->value() - offset); } totalDeltas -= (offset / factor) * 120; } } bool TabBarScrollWidget::usesScrollButtons() const { return m_usesScrollButtons; } void TabBarScrollWidget::setUsesScrollButtons(bool useButtons) { if (useButtons != m_usesScrollButtons) { m_usesScrollButtons = useButtons; scrollBarValueChange(); m_tabBar->setElideMode(m_tabBar->elideMode()); } } int TabBarScrollWidget::tabAt(const QPoint &pos) const { if (!m_leftScrollButton->isVisible()) { return m_tabBar->tabAt(pos); } QPoint p = pos; p.setX(p.x() - m_leftScrollButton->width() - m_scrollArea->viewport()->width()); if (m_leftScrollButton->rect().contains(pos) || m_rightScrollButton->rect().contains(p)) { return -1; } return m_tabBar->tabAt(m_tabBar->mapFromGlobal(mapToGlobal(pos))); } void TabBarScrollWidget::setContainersName(const QString &name) { m_leftContainer->setObjectName(name); m_rightContainer->setObjectName(name); } void TabBarScrollWidget::enableBluredBackground(bool enable) { if (enable != m_bluredBackground) { m_bluredBackground = enable; update(); } } void TabBarScrollWidget::mouseMoveEvent(QMouseEvent* event) { event->ignore(); } CloseButton::CloseButton(QWidget* parent) : QAbstractButton(parent) { setObjectName("combotabbar_tabs_close_button"); setFocusPolicy(Qt::NoFocus); setCursor(Qt::ArrowCursor); resize(sizeHint()); } QSize CloseButton::sizeHint() const { ensurePolished(); static int width = style()->pixelMetric(QStyle::PM_TabCloseIndicatorWidth, 0, this); static int height = style()->pixelMetric(QStyle::PM_TabCloseIndicatorHeight, 0, this); return QSize(width, height); } QSize CloseButton::minimumSizeHint() const { return sizeHint(); } void CloseButton::enterEvent(QEvent* event) { if (isEnabled()) { update(); } QAbstractButton::enterEvent(event); } void CloseButton::leaveEvent(QEvent* event) { if (isEnabled()) { update(); } QAbstractButton::leaveEvent(event); } void CloseButton::paintEvent(QPaintEvent*) { QPainter p(this); QStyleOption opt; opt.init(this); opt.state |= QStyle::State_AutoRaise; // update raised state on scrolling bool isUnderMouse = rect().contains(mapFromGlobal(QCursor::pos())); if (isEnabled() && isUnderMouse && !isChecked() && !isDown()) { opt.state |= QStyle::State_Raised; } if (isChecked()) { opt.state |= QStyle::State_On; } if (isDown()) { opt.state |= QStyle::State_Sunken; } if (TabBarHelper* tb = qobject_cast(parent())) { int index = tb->currentIndex(); QTabBar::ButtonPosition closeSide = (QTabBar::ButtonPosition)style()->styleHint(QStyle::SH_TabBar_CloseButtonPosition, 0, tb); if (tb->tabButton(index, closeSide) == this && tb->isActiveTabBar()) { opt.state |= QStyle::State_Selected; } } style()->drawPrimitive(QStyle::PE_IndicatorTabClose, &opt, &p, this); } qupzilla-1.6.0/src/lib/tools/combotabbar.h000066400000000000000000000215131226107126500205040ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 S. Razi Alavizadeh * * 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 3 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, see . * ============================================================ */ #ifndef COMBOTABBAR_H #define COMBOTABBAR_H #include "qz_namespace.h" #include #include #include #include #include class QScrollArea; class QPropertyAnimation; class QHBoxLayout; class TabBarScrollWidget; class TabBarHelper; class ToolButton; class QT_QUPZILLA_EXPORT ComboTabBar : public QWidget { Q_OBJECT Q_PROPERTY(int currentIndex READ currentIndex WRITE setCurrentIndex NOTIFY currentChanged) Q_PROPERTY(int count READ count) friend class TabBarHelper; public: enum SizeType { PinnedTabWidth, ActiveTabMinimumWidth, NormalTabMinimumWidth, NormalTabMaximumWidth, OverflowedTabWidth, ExtraReservedWidth }; explicit ComboTabBar(QWidget* parent = 0); int addTab(const QString &text); int addTab(const QIcon &icon, const QString &text); int insertTab(int index, const QString &text); int insertTab(int index, const QIcon &icon, const QString &text, bool pinned = false); void removeTab(int index); void moveTab(int from, int to); bool isTabEnabled(int index) const; void setTabEnabled(int index, bool enabled); QColor tabTextColor(int index) const; void setTabTextColor(int index, const QColor &color); QRect tabRect(int index) const; int tabAt(const QPoint &pos) const; int mainTabBarCurrentIndex() const; int currentIndex() const; int count() const; void setDrawBase(bool drawTheBase); bool drawBase() const; Qt::TextElideMode elideMode() const; void setElideMode(Qt::TextElideMode elide); QString tabText(int index) const; void setTabText(int index, const QString &text); void setTabToolTip(int index, const QString &tip); QString tabToolTip(int index) const; bool tabsClosable() const; void setTabsClosable(bool closable); void setTabButton(int index, QTabBar::ButtonPosition position, QWidget* widget); QWidget* tabButton(int index, QTabBar::ButtonPosition position) const; QTabBar::SelectionBehavior selectionBehaviorOnRemove() const; void setSelectionBehaviorOnRemove(QTabBar::SelectionBehavior behavior); bool expanding() const; void setExpanding(bool enabled); bool isMovable() const; void setMovable(bool movable); bool documentMode() const; void setDocumentMode(bool set); int pinnedTabsCount() const; int normalTabsCount() const; bool isPinned(int index) const; void setMaxVisiblePinnedTab(int max); void setObjectName(const QString &name); void setMouseTracking(bool enable); void insertCloseButton(int index); void setCloseButtonsToolTip(const QString &tip); void enableBluredBackground(bool enable); QTabBar::ButtonPosition iconButtonPosition(); QTabBar::ButtonPosition closeButtonPosition(); bool validIndex(int index) const; void setCurrentNextEnabledIndex(int offset); bool usesScrollButtons() const; void setUsesScrollButtons(bool useButtons); void addMainBarWidget(QWidget* widget, Qt::Alignment align, int stretch = 0, Qt::Alignment layoutAlignment = 0); public slots: void setUpLayout(); void ensureVisible(int index = -1, int xmargin = -1); void setCurrentIndex(int index); private slots: void setMinimumWidths(); void slotCurrentChanged(int index); void slotTabCloseRequested(int index); void slotTabMoved(int from, int to); void closeTabFromButton(); protected: int mainTabBarWidth() const; int pinTabBarWidth() const; void wheelEvent(QWheelEvent* event); void showEvent(QShowEvent* event); void resizeEvent(QResizeEvent* event); bool eventFilter(QObject* obj, QEvent* ev); virtual int comboTabBarPixelMetric(SizeType sizeType) const; virtual QSize tabSizeHint(int index, bool fast = false) const; virtual void tabInserted(int index); virtual void tabRemoved(int index); private: TabBarHelper* localTabBar(int index = -1) const; int toLocalIndex(int globalIndex) const; inline TabBarHelper* mainTabBar() { return m_mainTabBar; } void updatePinnedTabBarVisibility(); QHBoxLayout* m_mainLayout; TabBarHelper* m_mainTabBar; TabBarHelper* m_pinnedTabBar; TabBarScrollWidget* m_mainTabBarWidget; TabBarScrollWidget* m_pinnedTabBarWidget; int m_maxVisiblePinnedTab; QString m_closeButtonsToolTip; bool m_mainBarOverFlowed; int m_dragOffset; bool m_usesScrollButtons; signals: void overFlowChanged(bool overFlow); void currentChanged(int index); void tabCloseRequested(int index); void tabMoved(int from, int to); void scrollBarValueChanged(int value); }; class QT_QUPZILLA_EXPORT TabBarHelper : public QTabBar { Q_OBJECT public: explicit TabBarHelper(ComboTabBar* comboTabBar); void setTabButton(int index, QTabBar::ButtonPosition position, QWidget* widget); QSize tabSizeHint(int index) const; QSize baseClassTabSizeHint(int index) const; bool isActiveTabBar(); void setActiveTabBar(bool activate); void setScrollArea(QScrollArea* scrollArea); void useFastTabSizeHint(bool enabled); bool isDisplayedOnViewPort(int globalLeft, int globalRight); void enableBluredBackground(bool enable); public slots: void setCurrentIndex(int index); private slots: void resetDragState(); private: void initStyleBaseOption(QStyleOptionTabBarBaseV2* optTabBase, QTabBar* tabbar, QSize size); bool event(QEvent* ev); void paintEvent(QPaintEvent* event); void mousePressEvent(QMouseEvent* event); void mouseReleaseEvent(QMouseEvent* event); ComboTabBar* m_comboTabBar; QScrollArea* m_scrollArea; int m_pressedIndex; int m_pressedGlobalX; bool m_dragInProgress; bool m_activeTabBar; bool m_useFastTabSizeHint; bool m_bluredBackground; }; class QT_QUPZILLA_EXPORT TabScrollBar : public QScrollBar { Q_OBJECT public: explicit TabScrollBar(QWidget* parent = 0); ~TabScrollBar(); void animateToValue(int to, QEasingCurve::Type type = QEasingCurve::InOutExpo); bool isOverFlowed(); void wheelEvent(QWheelEvent* event); private: QPropertyAnimation* m_animation; }; class QT_QUPZILLA_EXPORT TabBarScrollWidget : public QWidget { Q_OBJECT public: explicit TabBarScrollWidget(QTabBar* tabBar, QWidget* parent = 0); void addLeftWidget(QWidget* widget, int stretch = 0, Qt::Alignment alignment = 0); void addRightWidget(QWidget* widget, int stretch = 0, Qt::Alignment alignment = 0); QTabBar* tabBar(); QScrollArea* scrollArea(); TabScrollBar* scrollBar(); void scrollByWheel(QWheelEvent* event); bool usesScrollButtons() const; void setUsesScrollButtons(bool useButtons); int tabAt(const QPoint &pos) const; void setContainersName(const QString &name); void enableBluredBackground(bool enable); public slots: void ensureVisible(int index = -1, int xmargin = 132); void scrollToLeft(int n = 1); void scrollToRight(int n = 1); void scrollToLeftEdge(); void scrollToRightEdge(); void setUpLayout(); private slots: void scrollBarValueChange(); void overFlowChanged(bool overflowed); void scrollStart(); void scrollStop(); private: bool eventFilter(QObject* obj, QEvent* ev); void mouseMoveEvent(QMouseEvent* event); QTabBar* m_tabBar; QScrollArea* m_scrollArea; TabScrollBar* m_scrollBar; QHBoxLayout* m_leftLayout; QHBoxLayout* m_rightLayout; ToolButton* m_rightScrollButton; ToolButton* m_leftScrollButton; QWidget* m_leftContainer; QWidget* m_rightContainer; bool m_usesScrollButtons; bool m_bluredBackground; QPropertyAnimation* m_scrollByButtonAnim; }; // Class for close button on tabs // * taken from qtabbar.cpp class CloseButton : public QAbstractButton { Q_OBJECT public: CloseButton(QWidget* parent = 0); QSize sizeHint() const; QSize minimumSizeHint() const; void enterEvent(QEvent* event); void leaveEvent(QEvent* event); void paintEvent(QPaintEvent* event); }; #endif // COMBOTABBAR_H qupzilla-1.6.0/src/lib/tools/delayedfilewatcher.cpp000066400000000000000000000035401226107126500224110ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "delayedfilewatcher.h" #include DelayedFileWatcher::DelayedFileWatcher(QObject* parent) : QFileSystemWatcher(parent) { init(); } DelayedFileWatcher::DelayedFileWatcher(const QStringList &paths, QObject* parent) : QFileSystemWatcher(paths, parent) { init(); } void DelayedFileWatcher::init() { connect(this, SIGNAL(directoryChanged(QString)), this, SLOT(slotDirectoryChanged(QString))); connect(this, SIGNAL(fileChanged(QString)), this, SLOT(slotFileChanged(QString))); } void DelayedFileWatcher::slotDirectoryChanged(const QString &path) { m_dirQueue.enqueue(path); QTimer::singleShot(500, this, SLOT(dequeueDirectory())); } void DelayedFileWatcher::slotFileChanged(const QString &path) { m_fileQueue.enqueue(path); QTimer::singleShot(500, this, SLOT(dequeueFile())); } void DelayedFileWatcher::dequeueDirectory() { emit delayedDirectoryChanged(m_dirQueue.dequeue()); } void DelayedFileWatcher::dequeueFile() { emit delayedFileChanged(m_fileQueue.dequeue()); } qupzilla-1.6.0/src/lib/tools/delayedfilewatcher.h000066400000000000000000000031621226107126500220560ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef DELAYEDFILEWATCHER_H #define DELAYEDFILEWATCHER_H #include #include #include #include "qz_namespace.h" class QT_QUPZILLA_EXPORT DelayedFileWatcher : public QFileSystemWatcher { Q_OBJECT public: explicit DelayedFileWatcher(QObject* parent = 0); explicit DelayedFileWatcher(const QStringList &paths, QObject* parent = 0); signals: void delayedDirectoryChanged(const QString &path); void delayedFileChanged(const QString &path); private slots: void slotDirectoryChanged(const QString &path); void slotFileChanged(const QString &path); void dequeueDirectory(); void dequeueFile(); private: void init(); QQueue m_dirQueue; QQueue m_fileQueue; }; #endif // DELAYEDFILEWATCHER_H qupzilla-1.6.0/src/lib/tools/docktitlebarwidget.cpp000066400000000000000000000026411226107126500224400ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #include "docktitlebarwidget.h" #include "iconprovider.h" DockTitleBarWidget::DockTitleBarWidget(const QString &title, QWidget* parent) : QWidget(parent) { setupUi(this); closeButton->setIcon(QIcon(qIconProvider->standardIcon(QStyle::SP_DialogCloseButton).pixmap(16, 16))); label->setText(title); connect(closeButton, SIGNAL(clicked()), parent, SLOT(close())); setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Fixed); } void DockTitleBarWidget::setTitle(const QString &title) { label->setText(title); } DockTitleBarWidget::~DockTitleBarWidget() { } qupzilla-1.6.0/src/lib/tools/docktitlebarwidget.h000066400000000000000000000024121226107126500221010ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef DOCKTITLEBARWIDGET_H #define DOCKTITLEBARWIDGET_H #include #include "qz_namespace.h" #include "ui_docktitlebarwidget.h" class QT_QUPZILLA_EXPORT DockTitleBarWidget : public QWidget, public Ui_DockTitleBarWidget { public: explicit DockTitleBarWidget(const QString &title, QWidget* parent = 0); ~DockTitleBarWidget(); void setTitle(const QString &title); private: }; #endif // DOCKTITLEBARWIDGET_H qupzilla-1.6.0/src/lib/tools/docktitlebarwidget.ui000066400000000000000000000026641226107126500223000ustar00rootroot00000000000000 DockTitleBarWidget 0 0 116 24 0 0 0 2 0 Qt::NoFocus 16 16 true MacToolButton QToolButton
    mactoolbutton.h
    qupzilla-1.6.0/src/lib/tools/emptynetworkreply.cpp000066400000000000000000000025331226107126500224110ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #include "emptynetworkreply.h" #include EmptyNetworkReply::EmptyNetworkReply(QObject* parent) : QNetworkReply(parent) { setOperation(QNetworkAccessManager::GetOperation); setError(QNetworkReply::OperationCanceledError, "QupZilla:No Error"); QTimer::singleShot(0, this, SLOT(delayedFinish())); } void EmptyNetworkReply::delayedFinish() { emit finished(); } qint64 EmptyNetworkReply::readData(char* data, qint64 maxSize) { Q_UNUSED(data) Q_UNUSED(maxSize) return 0; } qupzilla-1.6.0/src/lib/tools/emptynetworkreply.h000066400000000000000000000023641226107126500220600ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef EMPTYNETWORKREPLY_H #define EMPTYNETWORKREPLY_H #include #include "qz_namespace.h" class QT_QUPZILLA_EXPORT EmptyNetworkReply : public QNetworkReply { Q_OBJECT public: explicit EmptyNetworkReply(QObject* parent = 0); private slots: void delayedFinish(); protected: qint64 readData(char* data, qint64 maxSize); void abort() { } }; #endif // EMPTYNETWORKREPLY_H qupzilla-1.6.0/src/lib/tools/enhancedmenu.cpp000066400000000000000000000050041226107126500212130ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #include "enhancedmenu.h" #include #include Menu::Menu(QWidget* parent) : QMenu(parent) { } Menu::Menu(const QString &title, QWidget* parent) : QMenu(title, parent) { } void Menu::mouseReleaseEvent(QMouseEvent* e) { QAction* qact = actionAt(e->pos()); Action* act = qobject_cast (qact); if (qact && qact->menu()) { Menu* m = qobject_cast (qact->menu()); if (!m) { QMenu::mouseReleaseEvent(e); return; } if (e->button() == Qt::MiddleButton || (e->button() == Qt::LeftButton && e->modifiers() == Qt::ControlModifier)) { closeAllMenus(); emit menuMiddleClicked(m); } } if (!act) { QMenu::mouseReleaseEvent(e); return; } if ((e->button() == Qt::LeftButton || e->button() == Qt::RightButton) && e->modifiers() == Qt::NoModifier) { closeAllMenus(); act->trigger(); e->accept(); } else if (e->button() == Qt::MiddleButton || (e->button() == Qt::LeftButton && e->modifiers() == Qt::ControlModifier)) { closeAllMenus(); act->triggerMiddleClick(); e->accept(); } } void Menu::closeAllMenus() { QMenu* menu = this; while (menu) { menu->close(); menu = qobject_cast(QApplication::activePopupWidget()); } } Action::Action(QObject* parent) : QAction(parent) { } Action::Action(const QString &text, QObject* parent) : QAction(text, parent) { } Action::Action(const QIcon &icon, const QString &text, QObject* parent) : QAction(icon, text, parent) { } void Action::triggerMiddleClick() { emit middleClicked(); } qupzilla-1.6.0/src/lib/tools/enhancedmenu.h000066400000000000000000000031631226107126500206640ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef ENHANCEDMENU_H #define ENHANCEDMENU_H #include #include "qz_namespace.h" class Action; class QT_QUPZILLA_EXPORT Menu : public QMenu { Q_OBJECT public: explicit Menu(QWidget* parent = 0); explicit Menu(const QString &title, QWidget* parent = 0); signals: void menuMiddleClicked(Menu*); public slots: private: void mouseReleaseEvent(QMouseEvent* e); void closeAllMenus(); }; class QT_QUPZILLA_EXPORT Action : public QAction { Q_OBJECT public: explicit Action(QObject* parent = 0); explicit Action(const QString &text, QObject* parent = 0); explicit Action(const QIcon &icon, const QString &text, QObject* parent = 0); signals: void middleClicked(); public slots: void triggerMiddleClick(); }; #endif // ENHANCEDMENU_H qupzilla-1.6.0/src/lib/tools/focusselectlineedit.cpp000066400000000000000000000027341226107126500226250ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #include "focusselectlineedit.h" #include FocusSelectLineEdit::FocusSelectLineEdit(QWidget* parent) : QLineEdit(parent) , m_mouseFocusReason(false) { } void FocusSelectLineEdit::setFocus() { selectAll(); QLineEdit::setFocus(); } void FocusSelectLineEdit::focusInEvent(QFocusEvent* event) { m_mouseFocusReason = event->reason() == Qt::MouseFocusReason; selectAll(); QLineEdit::focusInEvent(event); } void FocusSelectLineEdit::mousePressEvent(QMouseEvent* event) { if (m_mouseFocusReason) { m_mouseFocusReason = false; return; } QLineEdit::mousePressEvent(event); } qupzilla-1.6.0/src/lib/tools/focusselectlineedit.h000066400000000000000000000024421226107126500222660ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef FOCUSSELECTLINEEDIT_H #define FOCUSSELECTLINEEDIT_H #include #include "qz_namespace.h" class QT_QUPZILLA_EXPORT FocusSelectLineEdit : public QLineEdit { Q_OBJECT public: explicit FocusSelectLineEdit(QWidget* parent = 0); public slots: void setFocus(); protected: void focusInEvent(QFocusEvent* event); void mousePressEvent(QMouseEvent* event); bool m_mouseFocusReason; }; #endif // FOCUSSELECTLINEEDIT_H qupzilla-1.6.0/src/lib/tools/followredirectreply.cpp000066400000000000000000000043541226107126500226700ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #include "followredirectreply.h" #include FollowRedirectReply::FollowRedirectReply(const QUrl &url, QNetworkAccessManager* manager) : QObject() , m_manager(manager) , m_redirectCount(0) { m_reply = m_manager->get(QNetworkRequest(url)); connect(m_reply, SIGNAL(finished()), this, SLOT(replyFinished())); } QNetworkReply* FollowRedirectReply::reply() const { return m_reply; } QUrl FollowRedirectReply::originalUrl() const { return m_reply->request().url(); } QUrl FollowRedirectReply::url() const { return m_reply->url(); } QNetworkReply::NetworkError FollowRedirectReply::error() const { return m_reply->error(); } QByteArray FollowRedirectReply::readAll() { return m_reply->readAll(); } void FollowRedirectReply::replyFinished() { int replyStatus = m_reply->attribute(QNetworkRequest::HttpStatusCodeAttribute).toInt(); if ((replyStatus != 301 && replyStatus != 302) || m_redirectCount == 5) { emit finished(); return; } m_redirectCount++; QUrl redirectUrl = m_reply->attribute(QNetworkRequest::RedirectionTargetAttribute).toUrl(); m_reply->close(); m_reply->deleteLater(); m_reply = m_manager->get(QNetworkRequest(redirectUrl)); connect(m_reply, SIGNAL(finished()), this, SLOT(replyFinished())); } FollowRedirectReply::~FollowRedirectReply() { m_reply->close(); m_reply->deleteLater(); } qupzilla-1.6.0/src/lib/tools/followredirectreply.h000066400000000000000000000031271226107126500223320ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef FOLLOWREDIRECTREPLY_H #define FOLLOWREDIRECTREPLY_H #include #include #include "qz_namespace.h" class QNetworkAccessManager; class QNetworkReply; class QUrl; class QT_QUPZILLA_EXPORT FollowRedirectReply : public QObject { Q_OBJECT public: explicit FollowRedirectReply(const QUrl &url, QNetworkAccessManager* manager); ~FollowRedirectReply(); QNetworkReply* reply() const; QUrl originalUrl() const; QUrl url() const; QNetworkReply::NetworkError error() const; QByteArray readAll(); signals: void finished(); private slots: void replyFinished(); private: QNetworkAccessManager* m_manager; QNetworkReply* m_reply; int m_redirectCount; }; #endif // FOLLOWREDIRECTREPLY_H qupzilla-1.6.0/src/lib/tools/frame.cpp000066400000000000000000000022231226107126500176530ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #include "frame.h" #include Frame::Frame(QWidget* parent) : QFrame(parent) { } void Frame::mousePressEvent(QMouseEvent* event) { //If we proccess mouse events, then menu from bookmarkswidget //is going to close() with clicking in free space Q_UNUSED(event) event->accept(); } qupzilla-1.6.0/src/lib/tools/frame.h000066400000000000000000000021321226107126500173170ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef FRAME_H #define FRAME_H #include #include "qz_namespace.h" class QT_QUPZILLA_EXPORT Frame : public QFrame { public: explicit Frame(QWidget* parent = 0); private: void mousePressEvent(QMouseEvent* event); }; #endif // FRAME_H qupzilla-1.6.0/src/lib/tools/headerview.cpp000066400000000000000000000053511226107126500207110ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #include "headerview.h" #include #include HeaderView::HeaderView(QAbstractItemView* parent) : QHeaderView(Qt::Horizontal, parent) , m_parent(parent) , m_menu(0) { #if QT_VERSION >= 0x050000 setSectionsMovable(true); #else setMovable(true); #endif setStretchLastSection(true); setDefaultAlignment(Qt::AlignLeft); setMinimumSectionSize(60); } void HeaderView::setDefaultSectionSizes(const QList &sizes) { m_sectionSizes = sizes; } QList HeaderView::defaultSectionSizes() const { return m_sectionSizes; } bool HeaderView::restoreState(const QByteArray &state) { m_resizeOnShow = !QHeaderView::restoreState(state); return !m_resizeOnShow; } void HeaderView::showEvent(QShowEvent* event) { if (m_resizeOnShow) { for (int i = 0; i < m_sectionSizes.count(); ++i) { int size = m_parent->width() * m_sectionSizes.at(i); resizeSection(i, size); } } QHeaderView::showEvent(event); } void HeaderView::contextMenuEvent(QContextMenuEvent* event) { if (!m_menu) { m_menu = new QMenu(this); for (int i = 0; i < count(); ++i) { QAction* act = new QAction(model()->headerData(i, Qt::Horizontal).toString(), m_menu); act->setCheckable(true); act->setData(i); connect(act, SIGNAL(triggered()), this, SLOT(toggleSectionVisibility())); m_menu->addAction(act); } } for (int i = 0; i < m_menu->actions().count(); ++i) { QAction* act = m_menu->actions().at(i); act->setEnabled(i > 0); act->setChecked(!isSectionHidden(i)); } m_menu->popup(event->globalPos()); } void HeaderView::toggleSectionVisibility() { if (QAction* act = qobject_cast(sender())) { int index = act->data().toInt(); setSectionHidden(index, !isSectionHidden(index)); } } qupzilla-1.6.0/src/lib/tools/headerview.h000066400000000000000000000030701226107126500203520ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef HEADERVIEW_H #define HEADERVIEW_H #include class QContextMenuEvent; #include "qz_namespace.h" class QT_QUPZILLA_EXPORT HeaderView : public QHeaderView { Q_OBJECT public: explicit HeaderView(QAbstractItemView* parent); void setDefaultSectionSizes(const QList &sizes); QList defaultSectionSizes() const; bool restoreState(const QByteArray &state); private slots: void toggleSectionVisibility(); private: void showEvent(QShowEvent* event); void contextMenuEvent(QContextMenuEvent* event); QAbstractItemView* m_parent; QMenu* m_menu; bool m_resizeOnShow; QList m_sectionSizes; QByteArray m_restoreData; }; #endif // HEADERVIEW_H qupzilla-1.6.0/src/lib/tools/horizontallistwidget.cpp000066400000000000000000000036131226107126500230560ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "horizontallistwidget.h" #include HorizontalListWidget::HorizontalListWidget(QWidget* parent) : QListWidget(parent) , m_mouseDown(false) { setFocusPolicy(Qt::NoFocus); setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff); setMovement(QListView::Static); setResizeMode(QListView::Adjust); setViewMode(QListView::IconMode); setSelectionRectVisible(false); } void HorizontalListWidget::mousePressEvent(QMouseEvent* event) { m_mouseDown = true; QListWidget::mousePressEvent(event); } void HorizontalListWidget::mouseMoveEvent(QMouseEvent* event) { if (!itemAt(event->pos())) { // Don't unselect item so it ends up with no item selected return; } QListWidget::mouseMoveEvent(event); } void HorizontalListWidget::mouseReleaseEvent(QMouseEvent* event) { m_mouseDown = false; QListWidget::mouseReleaseEvent(event); } void HorizontalListWidget::wheelEvent(QWheelEvent* event) { // As this is just Horizontal ListWidget, disable wheel scrolling completely Q_UNUSED(event) } qupzilla-1.6.0/src/lib/tools/horizontallistwidget.h000066400000000000000000000024301226107126500225170ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef HORIZONTALLISTWIDGET_H #define HORIZONTALLISTWIDGET_H #include class HorizontalListWidget : public QListWidget { public: explicit HorizontalListWidget(QWidget* parent = 0); private: void mousePressEvent(QMouseEvent* event); void mouseMoveEvent(QMouseEvent* event); void mouseReleaseEvent(QMouseEvent* event); void wheelEvent(QWheelEvent* event); bool m_mouseDown; }; #endif // HORIZONTALLISTWIDGET_H qupzilla-1.6.0/src/lib/tools/html5permissions/000077500000000000000000000000001226107126500214035ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/tools/html5permissions/html5permissionsdialog.cpp000066400000000000000000000110301226107126500266070ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "html5permissionsdialog.h" #include "ui_html5permissionsdialog.h" #include "settings.h" #include "mainapplication.h" #include "html5permissionsmanager.h" HTML5PermissionsDialog::HTML5PermissionsDialog(QWidget* parent) : QDialog(parent), ui(new Ui::HTML5PermissionsDialog) { ui->setupUi(this); loadSettings(); foreach (const QString &site, m_notificationsGranted) { QTreeWidgetItem* item = new QTreeWidgetItem(ui->notifTree); item->setText(0, site); item->setText(1, tr("Allow")); item->setData(0, Qt::UserRole + 10, Allow); ui->notifTree->addTopLevelItem(item); } foreach (const QString &site, m_notificationsDenied) { QTreeWidgetItem* item = new QTreeWidgetItem(ui->notifTree); item->setText(0, site); item->setText(1, tr("Deny")); item->setData(0, Qt::UserRole + 10, Deny); ui->notifTree->addTopLevelItem(item); } foreach (const QString &site, m_geolocationGranted) { QTreeWidgetItem* item = new QTreeWidgetItem(ui->geoTree); item->setText(0, site); item->setText(1, tr("Allow")); item->setData(0, Qt::UserRole + 10, Allow); ui->geoTree->addTopLevelItem(item); } foreach (const QString &site, m_geolocationDenied) { QTreeWidgetItem* item = new QTreeWidgetItem(ui->geoTree); item->setText(0, site); item->setText(1, tr("Deny")); item->setData(0, Qt::UserRole + 10, Deny); ui->geoTree->addTopLevelItem(item); } ui->notifTree->header()->resizeSection(0, 220); ui->geoTree->header()->resizeSection(0, 220); connect(ui->notifRemove, SIGNAL(clicked()), this, SLOT(removeNotifEntry())); connect(ui->geoRemove, SIGNAL(clicked()), this, SLOT(removeGeoEntry())); connect(ui->buttonBox, SIGNAL(accepted()), this, SLOT(saveSettings())); } void HTML5PermissionsDialog::removeNotifEntry() { QTreeWidgetItem* item = ui->notifTree->currentItem(); if (!item) { return; } Role role = static_cast(item->data(0, Qt::UserRole + 10).toInt()); QString site = item->text(0); if (role == Allow) { m_notificationsGranted.removeOne(site); } else { m_notificationsDenied.removeOne(site); } delete item; } void HTML5PermissionsDialog::removeGeoEntry() { QTreeWidgetItem* item = ui->geoTree->currentItem(); if (!item) { return; } Role role = static_cast(item->data(0, Qt::UserRole + 10).toInt()); QString site = item->text(0); if (role == Allow) { m_geolocationGranted.removeOne(site); } else { m_geolocationDenied.removeOne(site); } delete item; } void HTML5PermissionsDialog::loadSettings() { Settings settings; settings.beginGroup("HTML5Notifications"); m_notificationsGranted = settings.value("NotificationsGranted", QStringList()).toStringList(); m_notificationsDenied = settings.value("NotificationsDenied", QStringList()).toStringList(); m_geolocationGranted = settings.value("GeolocationGranted", QStringList()).toStringList(); m_geolocationDenied = settings.value("GeolocationDenied", QStringList()).toStringList(); settings.endGroup(); } void HTML5PermissionsDialog::saveSettings() { Settings settings; settings.beginGroup("HTML5Notifications"); settings.setValue("NotificationsGranted", m_notificationsGranted); settings.setValue("NotificationsDenied", m_notificationsDenied); settings.setValue("GeolocationGranted", m_geolocationGranted); settings.setValue("GeolocationDenied", m_geolocationDenied); settings.endGroup(); mApp->html5permissions()->loadSettings(); } HTML5PermissionsDialog::~HTML5PermissionsDialog() { delete ui; } qupzilla-1.6.0/src/lib/tools/html5permissions/html5permissionsdialog.h000066400000000000000000000030371226107126500262640ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef HTML5PERMISSIONSDIALOG_H #define HTML5PERMISSIONSDIALOG_H #include #include namespace Ui { class HTML5PermissionsDialog; } class HTML5PermissionsDialog : public QDialog { Q_OBJECT public: explicit HTML5PermissionsDialog(QWidget* parent = 0); ~HTML5PermissionsDialog(); private slots: void removeNotifEntry(); void removeGeoEntry(); void saveSettings(); private: enum Role { Allow, Deny }; void loadSettings(); Ui::HTML5PermissionsDialog* ui; QStringList m_notificationsGranted; QStringList m_notificationsDenied; QStringList m_geolocationGranted; QStringList m_geolocationDenied; }; #endif // HTML5PERMISSIONSDIALOG_H qupzilla-1.6.0/src/lib/tools/html5permissions/html5permissionsdialog.ui000066400000000000000000000111431226107126500264470ustar00rootroot00000000000000 HTML5PermissionsDialog 0 0 483 332 HTML5 Permissions 0 Notifications 0 true true Site Behaviour Qt::Vertical 20 40 Remove Geolocation 0 true true Site Behaviour Qt::Vertical 20 40 Remove Qt::Horizontal QDialogButtonBox::Cancel|QDialogButtonBox::Ok buttonBox accepted() HTML5PermissionsDialog accept() 248 254 157 274 buttonBox rejected() HTML5PermissionsDialog reject() 316 260 286 274 qupzilla-1.6.0/src/lib/tools/html5permissions/html5permissionsmanager.cpp000066400000000000000000000107141226107126500267720ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "html5permissionsmanager.h" #include "html5permissionsnotification.h" #include "settings.h" #include "webview.h" #include #include HTML5PermissionsManager::HTML5PermissionsManager(QObject* parent) : QObject(parent) { loadSettings(); } #if QTWEBKIT_FROM_2_2 void HTML5PermissionsManager::requestPermissions(WebPage* page, QWebFrame* frame, const QWebPage::Feature &feature) { if (!frame || !page) { return; } const QString host = page->url().host(); WebView* view = qobject_cast(page->view()); switch (feature) { case QWebPage::Notifications: if (m_notificationsGranted.contains(host)) { page->setFeaturePermission(frame, feature, QWebPage::PermissionGrantedByUser); return; } if (m_notificationsDenied.contains(host)) { page->setFeaturePermission(frame, feature, QWebPage::PermissionDeniedByUser); return; } if (view) { HTML5PermissionsNotification* notif = new HTML5PermissionsNotification(host, frame, feature); view->addNotification(notif); } break; case QWebPage::Geolocation: if (m_geolocationGranted.contains(host)) { page->setFeaturePermission(frame, feature, QWebPage::PermissionGrantedByUser); return; } if (m_geolocationDenied.contains(host)) { page->setFeaturePermission(frame, feature, QWebPage::PermissionDeniedByUser); return; } if (view) { HTML5PermissionsNotification* notif = new HTML5PermissionsNotification(host, frame, feature); view->addNotification(notif); } break; default: qWarning() << "HTML5PermissionsManager: Unknown feature" << feature; break; } } void HTML5PermissionsManager::rememberPermissions(const QString &host, const QWebPage::Feature &feature, const QWebPage::PermissionPolicy &policy) { if (host.isEmpty()) { return; } switch (feature) { case QWebPage::Notifications: if (policy == QWebPage::PermissionGrantedByUser) { m_notificationsGranted.append(host); } else { m_notificationsDenied.append(host); } break; case QWebPage::Geolocation: if (policy == QWebPage::PermissionGrantedByUser) { m_geolocationGranted.append(host); } else { m_geolocationDenied.append(host); } break; default: qWarning() << "HTML5PermissionsManager: Unknown feature" << feature; break; } saveSettings(); } #endif void HTML5PermissionsManager::loadSettings() { Settings settings; settings.beginGroup("HTML5Notifications"); m_notificationsGranted = settings.value("NotificationsGranted", QStringList()).toStringList(); m_notificationsDenied = settings.value("NotificationsDenied", QStringList()).toStringList(); m_geolocationGranted = settings.value("GeolocationGranted", QStringList()).toStringList(); m_geolocationDenied = settings.value("GeolocationDenied", QStringList()).toStringList(); settings.endGroup(); } void HTML5PermissionsManager::saveSettings() { Settings settings; settings.beginGroup("HTML5Notifications"); settings.setValue("NotificationsGranted", m_notificationsGranted); settings.setValue("NotificationsDenied", m_notificationsDenied); settings.setValue("GeolocationGranted", m_geolocationGranted); settings.setValue("GeolocationDenied", m_geolocationDenied); settings.endGroup(); } void HTML5PermissionsManager::showSettingsDialog() { } qupzilla-1.6.0/src/lib/tools/html5permissions/html5permissionsmanager.h000066400000000000000000000033161226107126500264370ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef HTML5PERMISSIONSMANAGER_H #define HTML5PERMISSIONSMANAGER_H #include #include #include "qz_namespace.h" #include "webpage.h" class QUrl; class WebPage; class QT_QUPZILLA_EXPORT HTML5PermissionsManager : public QObject { public: explicit HTML5PermissionsManager(QObject* parent); #if QTWEBKIT_FROM_2_2 void requestPermissions(WebPage* page, QWebFrame* frame, const QWebPage::Feature &feature); void rememberPermissions(const QString &host, const QWebPage::Feature &feature, const QWebPage::PermissionPolicy &policy); #endif void loadSettings(); void showSettingsDialog(); private: void saveSettings(); QStringList m_notificationsGranted; QStringList m_notificationsDenied; QStringList m_geolocationGranted; QStringList m_geolocationDenied; }; #endif // HTML5PERMISSIONSMANAGER_H qupzilla-1.6.0/src/lib/tools/html5permissions/html5permissionsnotification.cpp000066400000000000000000000062651226107126500300540ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "ui_html5permissionsnotification.h" #include "html5permissionsnotification.h" #include "html5permissionsmanager.h" #include "mainapplication.h" #include "iconprovider.h" #include #ifdef USE_QTWEBKIT_2_2 HTML5PermissionsNotification::HTML5PermissionsNotification(const QString &host, QWebFrame* frame, const QWebPage::Feature &feature) : AnimatedWidget(AnimatedWidget::Down, 300, 0) , ui(new Ui::HTML5PermissionsNotification) , m_host(host) , m_frame(frame) , m_feature(feature) { setAutoFillBackground(true); ui->setupUi(widget()); ui->close->setIcon(qIconProvider->standardIcon(QStyle::SP_DialogCloseButton)); QString message; QString site = m_host.isEmpty() ? tr("this site") : QString("%1").arg(m_host); if (feature == QWebPage::Notifications) { ui->iconLabel->setPixmap(QPixmap(":icons/other/notification.png")); message = tr("Allow %1 to show desktop notifications?").arg(site); } else if (feature == QWebPage::Geolocation) { ui->iconLabel->setPixmap(QPixmap(":icons/other/geolocation.png")); message = tr("Allow %1 to locate your position?").arg(site); } ui->textLabel->setText(message); connect(ui->allow, SIGNAL(clicked()), this, SLOT(grantPermissions())); connect(ui->deny, SIGNAL(clicked()), this, SLOT(denyPermissions())); connect(ui->close, SIGNAL(clicked()), this, SLOT(denyPermissions())); startAnimation(); } void HTML5PermissionsNotification::grantPermissions() { if (!m_frame || !m_frame->page()) { return; } QWebPage* page = m_frame->page(); page->setFeaturePermission(m_frame, m_feature, QWebPage::PermissionGrantedByUser); if (ui->remember->isChecked()) { mApp->html5permissions()->rememberPermissions(m_host, m_feature, QWebPage::PermissionGrantedByUser); } hide(); } void HTML5PermissionsNotification::denyPermissions() { if (!m_frame || !m_frame->page()) { return; } QWebPage* page = m_frame->page(); page->setFeaturePermission(m_frame, m_feature, QWebPage::PermissionDeniedByUser); if (ui->remember->isChecked()) { mApp->html5permissions()->rememberPermissions(m_host, m_feature, QWebPage::PermissionDeniedByUser); } hide(); } HTML5PermissionsNotification::~HTML5PermissionsNotification() { delete ui; } #endif // USE_QTWEBKIT_2_2 qupzilla-1.6.0/src/lib/tools/html5permissions/html5permissionsnotification.h000066400000000000000000000030431226107126500275100ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef HTML5PERMISSIONSNOTIFICATION_H #define HTML5PERMISSIONSNOTIFICATION_H #include #include "animatedwidget.h" #include "webpage.h" namespace Ui { class HTML5PermissionsNotification; } class HTML5PermissionsNotification : public AnimatedWidget { Q_OBJECT #ifdef USE_QTWEBKIT_2_2 public: explicit HTML5PermissionsNotification(const QString &host, QWebFrame* frame, const QWebPage::Feature &feature); ~HTML5PermissionsNotification(); private slots: void grantPermissions(); void denyPermissions(); private: Ui::HTML5PermissionsNotification* ui; QString m_host; QWebFrame* m_frame; QWebPage::Feature m_feature; #endif }; #endif // HTML5PERMISSIONSNOTIFICATION_H qupzilla-1.6.0/src/lib/tools/html5permissions/html5permissionsnotification.ui000066400000000000000000000043411226107126500277000ustar00rootroot00000000000000 HTML5PermissionsNotification 0 0 820 36 0 0 24 24 24 24 true Qt::Horizontal 40 20 Remember Allow Deny true MacToolButton QToolButton
    mactoolbutton.h
    qupzilla-1.6.0/src/lib/tools/htmlhighlighter.cpp000066400000000000000000000123561226107126500217540ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ /**************************************************************************** ** ** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:BSD$ ** You may use this file under the terms of the BSD license as follows: ** ** "Redistribution and use in source and binary forms, with or without ** modification, are permitted provided that the following conditions are ** met: ** * Redistributions of source code must retain the above copyright ** notice, this list of conditions and the following disclaimer. ** * Redistributions in binary form must reproduce the above copyright ** notice, this list of conditions and the following disclaimer in ** the documentation and/or other materials provided with the ** distribution. ** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor ** the names of its contributors may be used to endorse or promote ** products derived from this software without specific prior written ** permission. ** ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." ** $QT_END_LICENSE$ ** ****************************************************************************/ #include "htmlhighlighter.h" HtmlHighlighter::HtmlHighlighter(QTextDocument* parent) : QSyntaxHighlighter(parent) { HighlightingRule rule; // tags: tagFormat.setForeground(Qt::darkBlue); tagFormat.setFontWeight(QFont::Bold); QStringList keywordPatterns; keywordPatterns << "| )?" << ">" << "(| tagOptionsFormat.setForeground(Qt::black); tagOptionsFormat.setFontWeight(QFont::Bold); rule.pattern = QzRegExp("(\\S{2,20})=\""); rule.format = tagOptionsFormat; highlightingRules.append(rule); // " " strings quotationFormat.setForeground(Qt::darkGreen); QzRegExp rx("\".*\""); rx.setMinimal(true); rule.pattern = rx; rule.format = quotationFormat; highlightingRules.append(rule); // comments multiLineCommentFormat.setForeground(Qt::gray); commentStartExpression = QzRegExp(""); } void HtmlHighlighter::highlightBlock(const QString &text) { foreach (const HighlightingRule &rule, highlightingRules) { QzRegExp expression(rule.pattern); int index = expression.indexIn(text); while (index >= 0) { int length = expression.matchedLength(); setFormat(index, length, rule.format); index = expression.indexIn(text, index + length); } } // Highlighting multi-line comments setCurrentBlockState(0); int startIndex = 0; if (previousBlockState() != 1) { startIndex = commentStartExpression.indexIn(text); } while (startIndex >= 0) { int endIndex = commentEndExpression.indexIn(text, startIndex); int commentLength; if (endIndex == -1) { setCurrentBlockState(1); commentLength = text.length() - startIndex; } else { commentLength = endIndex - startIndex + commentEndExpression.matchedLength(); } setFormat(startIndex, commentLength, multiLineCommentFormat); startIndex = commentStartExpression.indexIn(text, startIndex + commentLength); } } qupzilla-1.6.0/src/lib/tools/htmlhighlighter.h000066400000000000000000000071111226107126500214120ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ /**************************************************************************** ** ** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:BSD$ ** You may use this file under the terms of the BSD license as follows: ** ** "Redistribution and use in source and binary forms, with or without ** modification, are permitted provided that the following conditions are ** met: ** * Redistributions of source code must retain the above copyright ** notice, this list of conditions and the following disclaimer. ** * Redistributions in binary form must reproduce the above copyright ** notice, this list of conditions and the following disclaimer in ** the documentation and/or other materials provided with the ** distribution. ** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor ** the names of its contributors may be used to endorse or promote ** products derived from this software without specific prior written ** permission. ** ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." ** $QT_END_LICENSE$ ** ****************************************************************************/ #ifndef HTMLHIGHLIGHTER_H #define HTMLHIGHLIGHTER_H #include #include #include "qz_namespace.h" #include "qzregexp.h" class QTextDocument; class QT_QUPZILLA_EXPORT HtmlHighlighter : public QSyntaxHighlighter { public: HtmlHighlighter(QTextDocument* parent = 0); protected: void highlightBlock(const QString &text); private: struct HighlightingRule { QzRegExp pattern; QTextCharFormat format; }; QVector highlightingRules; QzRegExp commentStartExpression; QzRegExp commentEndExpression; QTextCharFormat tagFormat; QTextCharFormat tagOptionsFormat; QTextCharFormat multiLineCommentFormat; QTextCharFormat quotationFormat; }; #endif qupzilla-1.6.0/src/lib/tools/iconfetcher.cpp000066400000000000000000000061561226107126500210630ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "iconfetcher.h" #include "followredirectreply.h" #include "qzregexp.h" #include IconFetcher::IconFetcher(QObject* parent) : QObject(parent) , m_manager(0) { } void IconFetcher::fetchIcon(const QUrl &url) { if (!m_manager) { return; } FollowRedirectReply* reply = new FollowRedirectReply(url, m_manager); connect(reply, SIGNAL(finished()), this, SLOT(pageDownloaded())); m_url = url; } void IconFetcher::pageDownloaded() { FollowRedirectReply* reply = qobject_cast (sender()); if (!reply) { return; } QString html = reply->readAll(); QUrl replyUrl = reply->url(); reply->deleteLater(); QzRegExp rx("", Qt::CaseInsensitive); rx.setMinimal(true); QString shortcutIconTag; int pos = 0; while ((pos = rx.indexIn(html, pos)) != -1) { QString linkTag = rx.cap(0); pos += rx.matchedLength(); if (linkTag.contains(QLatin1String("rel=\"shortcut icon\""), Qt::CaseInsensitive)) { shortcutIconTag = linkTag; break; } } FollowRedirectReply* newReply; if (shortcutIconTag.isEmpty()) { // QUrl faviconUrl = replyUrl.resolved(QUrl("favicon.ico")); // // Rather getting favicon.ico from base directory than from subfolders QUrl faviconUrl = QUrl(replyUrl.toString(QUrl::RemovePath | QUrl::RemoveQuery) + "/favicon.ico"); newReply = new FollowRedirectReply(faviconUrl, m_manager); } else { QzRegExp rx("href=\"(.*)\"", Qt::CaseInsensitive); rx.setMinimal(true); rx.indexIn(shortcutIconTag); QUrl url = QUrl(rx.cap(1)); QUrl iconUrl = QUrl(replyUrl).resolved(url); newReply = new FollowRedirectReply(iconUrl, m_manager); } connect(newReply, SIGNAL(finished()), this, SLOT(iconDownloaded())); } void IconFetcher::iconDownloaded() { FollowRedirectReply* reply = qobject_cast (sender()); if (!reply) { return; } QByteArray response = reply->readAll(); reply->deleteLater(); if (!response.isEmpty()) { QImage image; image.loadFromData(response); if (!image.isNull()) { emit iconFetched(image); } } emit finished(); } qupzilla-1.6.0/src/lib/tools/iconfetcher.h000066400000000000000000000032651226107126500205260ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef ICONFETCHER_H #define ICONFETCHER_H #include "qz_namespace.h" #include #include #include #include class QNetworkAccessManager; class QUrl; class FollowRedirectReply; class QT_QUPZILLA_EXPORT IconFetcher : public QObject { Q_OBJECT public: explicit IconFetcher(QObject* parent = 0); void setNetworkAccessManager(QNetworkAccessManager* manager) { m_manager = manager; } void fetchIcon(const QUrl &url); void setData(const QVariant &data) { m_data = data; } QVariant data() { return m_data; } QUrl url() { return m_url; } signals: void iconFetched(QImage); void finished(); public slots: private slots: void pageDownloaded(); void iconDownloaded(); private: QNetworkAccessManager* m_manager; QVariant m_data; QUrl m_url; }; #endif // ICONFETCHER_H qupzilla-1.6.0/src/lib/tools/iconprovider.cpp000066400000000000000000000173331226107126500212740ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "iconprovider.h" #include "webview.h" #include "mainapplication.h" #include "databasewriter.h" #include #include IconProvider* IconProvider::s_instance = 0; IconProvider::IconProvider(QWidget* parent) : QWidget(parent) { m_timer = new QTimer(this); m_timer->setInterval(10 * 1000); m_timer->start(); connect(m_timer, SIGNAL(timeout()), this, SLOT(saveIconsToDatabase())); } IconProvider* IconProvider::instance() { if (!s_instance) { s_instance = new IconProvider; } return s_instance; } void IconProvider::saveIcon(WebView* view) { if (mApp->isPrivateSession()) { // Don't save icons in private mode. return; } Icon item; item.image = view->icon().pixmap(16, 16).toImage(); item.url = view->url(); if (item.image == IconProvider::emptyWebImage()) { return; } foreach (const Icon &ic, m_iconBuffer) { if (ic.url == item.url && ic.image == item.image) { return; } } m_iconBuffer.append(item); } QImage IconProvider::iconForUrl(const QUrl &url) { foreach (const Icon &ic, m_iconBuffer) { if (ic.url == url) { return ic.image; } } QSqlQuery query; query.prepare("SELECT icon FROM icons WHERE url=?"); query.bindValue(0, url.toEncoded(QUrl::RemoveFragment)); query.exec(); if (query.next()) { return QImage::fromData(query.value(0).toByteArray()); } return IconProvider::emptyWebImage(); } QImage IconProvider::iconForDomain(const QUrl &url) { foreach (const Icon &ic, m_iconBuffer) { if (ic.url.host() == url.host()) { return ic.image; } } QSqlQuery query; query.prepare("SELECT icon FROM icons WHERE url LIKE ?"); query.addBindValue(QString("%%1%").arg(url.host())); query.exec(); if (query.next()) { return QImage::fromData(query.value(0).toByteArray()); } return QImage(); } void IconProvider::saveIconsToDatabase() { foreach (const Icon &ic, m_iconBuffer) { QSqlQuery query; query.prepare("SELECT id FROM icons WHERE url = ?"); query.bindValue(0, ic.url.toEncoded(QUrl::RemoveFragment)); query.exec(); if (query.next()) { query.prepare("UPDATE icons SET icon = ? WHERE url = ?"); } else { query.prepare("INSERT INTO icons (icon, url) VALUES (?,?)"); } QByteArray ba; QBuffer buffer(&ba); buffer.open(QIODevice::WriteOnly); ic.image.save(&buffer, "PNG"); query.bindValue(0, buffer.data()); query.bindValue(1, ic.url.toEncoded(QUrl::RemoveFragment)); mApp->dbWriter()->executeQuery(query); } m_iconBuffer.clear(); } void IconProvider::clearIconDatabase() { QSqlQuery query; query.exec("DELETE FROM icons"); query.exec("VACUUM"); m_iconBuffer.clear(); } QIcon IconProvider::standardIcon(QStyle::StandardPixmap icon) { switch (icon) { case QStyle::SP_MessageBoxCritical: return QIcon::fromTheme("dialog-error", mApp->style()->standardIcon(QStyle::SP_MessageBoxCritical)); case QStyle::SP_MessageBoxInformation: return QIcon::fromTheme("dialog-information", mApp->style()->standardIcon(QStyle::SP_MessageBoxInformation)); case QStyle::SP_MessageBoxQuestion: return QIcon::fromTheme("dialog-question", mApp->style()->standardIcon(QStyle::SP_MessageBoxQuestion)); case QStyle::SP_MessageBoxWarning: return QIcon::fromTheme("dialog-warning", mApp->style()->standardIcon(QStyle::SP_MessageBoxWarning)); #ifndef QZ_WS_X11 case QStyle::SP_DialogCloseButton: return QIcon(":/icons/faenza/close.png"); case QStyle::SP_BrowserStop: return QIcon(":/icons/faenza/stop.png"); case QStyle::SP_BrowserReload: return QIcon(":/icons/faenza/reload.png"); case QStyle::SP_FileDialogToParent: return QIcon(":/icons/faenza/go-up.png"); case QStyle::SP_ArrowForward: //RTL Support if (QApplication::layoutDirection() == Qt::RightToLeft) { return QIcon(":/icons/faenza/back.png"); } else { return QIcon(":/icons/faenza/forward.png"); } case QStyle::SP_ArrowBack: //RTL Support if (QApplication::layoutDirection() == Qt::RightToLeft) { return QIcon(":/icons/faenza/forward.png"); } else { return QIcon(":/icons/faenza/back.png"); } #endif default: return mApp->style()->standardIcon(icon); } } QIcon IconProvider::fromTheme(const QString &icon) { if (icon == QLatin1String("go-home")) { return QIcon::fromTheme("go-home", QIcon(":/icons/faenza/home.png")); } else if (icon == QLatin1String("text-plain")) { return QIcon::fromTheme("text-plain", QIcon(":icons/locationbar/unknownpage.png")); } else if (icon == QLatin1String("bookmarks-organize")) { return QIcon::fromTheme("bookmarks-organize", QIcon(":icons/faenza/user-bookmarks.png")); } else if (icon == QLatin1String("bookmark-new")) { return QIcon::fromTheme("bookmark-new", QIcon(":icons/faenza/user-bookmarks.png")); } else if (icon == QLatin1String("list-remove")) { return QIcon::fromTheme("list-remove", QIcon(":icons/faenza/list-remove.png")); } else if (icon == QLatin1String("go-next")) { return QIcon::fromTheme("go-next", QIcon(":icons/faenza/go-next.png")); } else if (icon == QLatin1String("go-previous")) { return QIcon::fromTheme("go-previous", QIcon(":icons/faenza/go-previous.png")); } else { return QIcon::fromTheme(icon); } } QIcon IconProvider::emptyWebIcon() { return QPixmap::fromImage(m_emptyWebImage); } QImage IconProvider::emptyWebImage() { if (m_emptyWebImage.isNull()) { m_emptyWebImage = fromTheme("text-plain").pixmap(16, 16).toImage(); } return m_emptyWebImage; } QPixmap IconProvider::bookmarkIcon() { return m_bookmarkIcon; } void IconProvider::setBookmarkIcon(const QPixmap &pixmap) { m_bookmarkIcon = pixmap; } QIcon IconProvider::iconFromImage(const QImage &image) { if (m_emptyWebImage.isNull()) { m_emptyWebImage = fromTheme("text-plain").pixmap(16, 16).toImage(); } return QIcon(QPixmap::fromImage(image)); } QIcon IconProvider::iconFromBase64(const QByteArray &data) { QIcon image; QByteArray bArray = QByteArray::fromBase64(data); QBuffer buffer(&bArray); buffer.open(QIODevice::ReadOnly); QDataStream in(&buffer); in >> image; buffer.close(); if (!image.isNull()) { return image; } return IconProvider::emptyWebIcon(); } QByteArray IconProvider::iconToBase64(const QIcon &icon) { QByteArray bArray; QBuffer buffer(&bArray); buffer.open(QIODevice::WriteOnly); QDataStream out(&buffer); out << icon; buffer.close(); return bArray.toBase64(); } qupzilla-1.6.0/src/lib/tools/iconprovider.h000066400000000000000000000044341226107126500207370ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef ICONPROVIDER_H #define ICONPROVIDER_H #define qIconProvider IconProvider::instance() #define _iconForUrl(url) qIconProvider->iconFromImage(qIconProvider->iconForUrl(url)) #include #include #include #include #include "qz_namespace.h" class QTimer; class QIcon; class WebView; // Needs to be QWidget subclass, otherwise qproperty- setting won't work class QT_QUPZILLA_EXPORT IconProvider : public QWidget { Q_OBJECT Q_PROPERTY(QPixmap bookmarkIcon READ bookmarkIcon WRITE setBookmarkIcon) public: explicit IconProvider(QWidget* parent = 0); static IconProvider* instance(); void clearIconDatabase(); void saveIcon(WebView* view); QImage iconForUrl(const QUrl &url); QImage iconForDomain(const QUrl &url); QIcon iconFromImage(const QImage &image); QIcon iconFromBase64(const QByteArray &data); QByteArray iconToBase64(const QIcon &icon); QIcon standardIcon(QStyle::StandardPixmap icon); QIcon fromTheme(const QString &icon); QIcon emptyWebIcon(); QImage emptyWebImage(); QPixmap bookmarkIcon(); void setBookmarkIcon(const QPixmap &pixmap); signals: public slots: void saveIconsToDatabase(); private: QTimer* m_timer; struct Icon { QUrl url; QImage image; }; static IconProvider* s_instance; QImage m_emptyWebImage; QPixmap m_bookmarkIcon; QVector m_iconBuffer; }; #endif // ICONPROVIDER_H qupzilla-1.6.0/src/lib/tools/listitemdelegate.cpp000066400000000000000000000102721226107126500221110ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "listitemdelegate.h" #include #include ListItemDelegate::ListItemDelegate(int iconSize, QWidget* parent) : QStyledItemDelegate(parent) , m_iconSize(iconSize) , m_updateParentHeight(false) , m_uniformItemSizes(false) , m_itemHeight(0) , m_itemWidth(0) , m_padding(0) { } void ListItemDelegate::setUpdateParentHeight(bool update) { m_updateParentHeight = update; } void ListItemDelegate::setUniformItemSizes(bool uniform) { m_uniformItemSizes = uniform; } int ListItemDelegate::itemHeight() const { return m_itemHeight; } void ListItemDelegate::paint(QPainter* painter, const QStyleOptionViewItem &option, const QModelIndex &index) const { QStyleOptionViewItemV4 opt = option; initStyleOption(&opt, index); const QWidget* w = opt.widget; const QStyle* style = w ? w->style() : QApplication::style(); const Qt::LayoutDirection direction = w ? w->layoutDirection() : QApplication::layoutDirection(); #ifdef Q_OS_WIN const QPalette::ColorRole colorRole = QPalette::Text; #else const QPalette::ColorRole colorRole = opt.state & QStyle::State_Selected ? QPalette::HighlightedText : QPalette::Text; #endif int topPosition = opt.rect.top() + m_padding; // Draw background style->drawPrimitive(QStyle::PE_PanelItemViewItem, &opt, painter, w); // Draw icon QRect iconRect(opt.rect.left() + (opt.rect.width() - m_iconSize) / 2, topPosition, m_iconSize, m_iconSize); QRect visualIconRect = style->visualRect(direction, opt.rect, iconRect); QPixmap pixmap = index.data(Qt::DecorationRole).value().pixmap(m_iconSize); painter->drawPixmap(visualIconRect, pixmap); topPosition += m_iconSize + m_padding; // Draw title const QString title = index.data(Qt::DisplayRole).toString(); const int leftTitleEdge = opt.rect.left() + m_padding; QRect titleRect(leftTitleEdge, topPosition, opt.rect.width() - 2 * m_padding, opt.fontMetrics.height()); QRect visualTitleRect = style->visualRect(direction, opt.rect, titleRect); style->drawItemText(painter, visualTitleRect, Qt::AlignCenter, opt.palette, true, title, colorRole); } QSize ListItemDelegate::sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const { if (!m_itemHeight) { QStyleOptionViewItemV4 opt(option); initStyleOption(&opt, index); const QWidget* w = opt.widget; const QStyle* style = w ? w->style() : QApplication::style(); const int padding = style->pixelMetric(QStyle::PM_FocusFrameHMargin, 0) + 1; m_padding = padding > 5 ? padding : 5; m_itemHeight = 3 * m_padding + opt.fontMetrics.height() + m_iconSize; // Update height of parent widget QWidget* p = qobject_cast(parent()); if (p && m_updateParentHeight) { int frameWidth = p->style()->pixelMetric(QStyle::PM_DefaultFrameWidth, 0, p); p->setFixedHeight(m_itemHeight + 2 * frameWidth); } } int width = 2 * m_padding + option.fontMetrics.width(index.data(Qt::DisplayRole).toString()); width = width > (m_iconSize + 2 * m_padding) ? width : m_iconSize + 2 * m_padding; if (m_uniformItemSizes) { if (width > m_itemWidth) { m_itemWidth = width; } else { width = m_itemWidth; } } return QSize(width, m_itemHeight); } qupzilla-1.6.0/src/lib/tools/listitemdelegate.h000066400000000000000000000031441226107126500215560ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef LISTITEMDELEGATE_H #define LISTITEMDELEGATE_H #include #include "qz_namespace.h" class QT_QUPZILLA_EXPORT ListItemDelegate : public QStyledItemDelegate { public: explicit ListItemDelegate(int iconSize, QWidget* parent); void setUpdateParentHeight(bool update); void setUniformItemSizes(bool uniform); int itemHeight() const; void paint(QPainter* painter, const QStyleOptionViewItem &option, const QModelIndex &index) const; QSize sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const; private: int m_iconSize; bool m_updateParentHeight; bool m_uniformItemSizes; mutable int m_itemHeight; mutable int m_itemWidth; mutable int m_padding; }; #endif // LISTITEMDELEGATE_H qupzilla-1.6.0/src/lib/tools/mactoolbutton.cpp000066400000000000000000000030461226107126500214570ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * Copyright (C) 2013 S. Razi Alavizadeh * * 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 3 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, see . * ============================================================ */ #include "mactoolbutton.h" #ifdef Q_OS_MAC MacToolButton::MacToolButton(QWidget* parent) : QPushButton(parent) , m_autoRise(false) , m_buttonFixedSize(18, 18) { } void MacToolButton::setIconSize(const QSize &size) { QPushButton::setIconSize(size); m_buttonFixedSize = QSize(size.width() + 2, size.height() + 2); } void MacToolButton::setAutoRaise(bool enable) { m_autoRise = enable; setFlat(enable); if (enable) { setFixedSize(m_buttonFixedSize); } } bool MacToolButton::autoRaise() const { return m_autoRise; } #else MacToolButton::MacToolButton(QWidget* parent) : QToolButton(parent) { } #endif qupzilla-1.6.0/src/lib/tools/mactoolbutton.h000066400000000000000000000031041226107126500211170ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * Copyright (C) 2013 S. Razi Alavizadeh * * 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 3 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, see . * ============================================================ */ #ifndef MACTOOLBUTTON_H #define MACTOOLBUTTON_H #include "qz_namespace.h" #ifdef Q_OS_MAC #include class QT_QUPZILLA_EXPORT MacToolButton : public QPushButton { Q_OBJECT Q_PROPERTY(bool autoRaise READ autoRaise WRITE setAutoRaise) public: explicit MacToolButton(QWidget* parent = 0); void setIconSize(const QSize &size); void setAutoRaise(bool enable); bool autoRaise() const; private: bool m_autoRise; QSize m_buttonFixedSize; }; #else #include class QT_QUPZILLA_EXPORT MacToolButton : public QToolButton { Q_OBJECT public: explicit MacToolButton(QWidget* parent = 0); }; #endif #endif // MACTOOLBUTTON_H qupzilla-1.6.0/src/lib/tools/menubar.cpp000066400000000000000000000025341226107126500202170ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "menubar.h" #include "qupzilla.h" MenuBar::MenuBar(QupZilla* parent) : QMenuBar(parent) , p_QupZilla(parent) { setObjectName("mainwindow-menubar"); setCursor(Qt::ArrowCursor); setContextMenuPolicy(Qt::CustomContextMenu); connect(this, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(contextMenuRequested(QPoint))); } void MenuBar::contextMenuRequested(const QPoint &pos) { if (!actionAt(pos)) { p_QupZilla->popupToolbarsMenu(mapToGlobal(pos)); } } qupzilla-1.6.0/src/lib/tools/menubar.h000066400000000000000000000022541226107126500176630ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef MENUBAR_H #define MENUBAR_H #include "qz_namespace.h" #include class QupZilla; class QT_QUPZILLA_EXPORT MenuBar : public QMenuBar { Q_OBJECT public: explicit MenuBar(QupZilla* parent); private slots: void contextMenuRequested(const QPoint &pos); private: QupZilla* p_QupZilla; }; #endif // MENUBAR_H qupzilla-1.6.0/src/lib/tools/pagethumbnailer.cpp000066400000000000000000000071331226107126500217350ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "pagethumbnailer.h" #include "mainapplication.h" #include "networkmanagerproxy.h" #include #include #include CleanPluginFactory::CleanPluginFactory(QObject* parent) : QWebPluginFactory(parent) { } QList CleanPluginFactory::plugins() const { return QList(); } QObject* CleanPluginFactory::create(const QString &mimeType, const QUrl &url, const QStringList &argumentNames, const QStringList &argumentValues) const { Q_UNUSED(mimeType) Q_UNUSED(url) Q_UNUSED(argumentNames) Q_UNUSED(argumentValues) return new QObject; } PageThumbnailer::PageThumbnailer(QObject* parent) : QObject(parent) , m_page(new QWebPage(this)) , m_size(QSize(450, 253)) , m_loadTitle(false) { NetworkManagerProxy* networkProxy = new NetworkManagerProxy(this); networkProxy->setPrimaryNetworkAccessManager(mApp->networkManager()); m_page->setNetworkAccessManager(networkProxy); m_page->mainFrame()->setScrollBarPolicy(Qt::Horizontal, Qt::ScrollBarAlwaysOff); m_page->mainFrame()->setScrollBarPolicy(Qt::Vertical, Qt::ScrollBarAlwaysOff); // HD Ready -,- // Every page should fit in this resolution m_page->setViewportSize(QSize(1280, 720)); } void PageThumbnailer::setSize(const QSize &size) { if (size.isValid()) { m_size = size; } } void PageThumbnailer::setUrl(const QUrl &url) { if (url.isValid()) { m_url = url; } } QUrl PageThumbnailer::url() { return m_url; } bool PageThumbnailer::loadTitle() { return m_loadTitle; } void PageThumbnailer::setLoadTitle(bool load) { m_loadTitle = load; } QString PageThumbnailer::title() { QString title = m_title.isEmpty() ? m_url.host() : m_title; if (title.isEmpty()) { title = m_url.toString(); } return title; } void PageThumbnailer::setEnableFlash(bool enable) { if (!enable) { m_page->setPluginFactory(new CleanPluginFactory); } } void PageThumbnailer::start() { m_page->mainFrame()->load(m_url); connect(m_page, SIGNAL(loadFinished(bool)), this, SLOT(createThumbnail(bool))); } void PageThumbnailer::createThumbnail(bool status) { if (!status) { emit thumbnailCreated(QPixmap()); return; } m_title = m_page->mainFrame()->title().trimmed(); QPixmap pixmap(2 * m_size); qreal scalingFactor = 2 * static_cast(m_size.width()) / 1280; QPainter painter(&pixmap); painter.scale(scalingFactor, scalingFactor); m_page->mainFrame()->render(&painter, QWebFrame::ContentsLayer); painter.end(); emit thumbnailCreated(pixmap.scaled(m_size, Qt::IgnoreAspectRatio, Qt::SmoothTransformation)); } PageThumbnailer::~PageThumbnailer() { m_page->deleteLater(); } qupzilla-1.6.0/src/lib/tools/pagethumbnailer.h000066400000000000000000000037741226107126500214110ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef PAGETHUMBNAILER_H #define PAGETHUMBNAILER_H #include #include #include #include #include "qz_namespace.h" class QWebPage; class QPixmap; class QT_QUPZILLA_EXPORT CleanPluginFactory : public QWebPluginFactory { Q_OBJECT public: explicit CleanPluginFactory(QObject* parent = 0); QList plugins() const; QObject* create(const QString &mimeType, const QUrl &url, const QStringList &argumentNames, const QStringList &argumentValues) const; }; class QT_QUPZILLA_EXPORT PageThumbnailer : public QObject { Q_OBJECT public: explicit PageThumbnailer(QObject* parent = 0); ~PageThumbnailer(); void setSize(const QSize &size); void setUrl(const QUrl &url); QUrl url(); bool loadTitle(); void setLoadTitle(bool load); QString title(); void setEnableFlash(bool enable); void start(); signals: void thumbnailCreated(const QPixmap &); public slots: private slots: void createThumbnail(bool status); private: QWebPage* m_page; QSize m_size; QUrl m_url; QString m_title; bool m_loadTitle; }; #endif // PAGETHUMBNAILER_H qupzilla-1.6.0/src/lib/tools/plaineditwithlines.cpp000066400000000000000000000161521226107126500224670ustar00rootroot00000000000000/**************************************************************************** ** ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:BSD$ ** You may use this file under the terms of the BSD license as follows: ** ** "Redistribution and use in source and binary forms, with or without ** modification, are permitted provided that the following conditions are ** met: ** * Redistributions of source code must retain the above copyright ** notice, this list of conditions and the following disclaimer. ** * Redistributions in binary form must reproduce the above copyright ** notice, this list of conditions and the following disclaimer in ** the documentation and/or other materials provided with the ** distribution. ** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor ** the names of its contributors may be used to endorse or promote ** products derived from this software without specific prior written ** permission. ** ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." ** $QT_END_LICENSE$ ** ****************************************************************************/ /* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "plaineditwithlines.h" #include #include PlainEditWithLines::PlainEditWithLines(QWidget* parent) : QPlainTextEdit(parent) , m_lineNumberArea(new LineNumberArea(this)) , m_isShowingCursor(false) , m_countCache(-1, -1) { connect(this, SIGNAL(blockCountChanged(int)), this, SLOT(updateLineNumberAreaWidth(int))); connect(this, SIGNAL(updateRequest(QRect,int)), this, SLOT(updateLineNumberArea(QRect,int))); connect(this, SIGNAL(cursorPositionChanged()), this, SLOT(highlightCurrentLine())); updateLineNumberAreaWidth(0); highlightCurrentLine(); } int PlainEditWithLines::lineNumberAreaWidth() { int digits = 1; int max = qMax(1, blockCount()); while (max >= 10) { max /= 10; ++digits; } int space = 5 + fontMetrics().width(QLatin1Char('9')) * digits; return space; } void PlainEditWithLines::setShowingCursor(bool show) { m_isShowingCursor = show; } bool PlainEditWithLines::isShowingCursor() const { return m_isShowingCursor; } void PlainEditWithLines::setReadOnly(bool ro) { QPlainTextEdit::setReadOnly(ro); highlightCurrentLine(); } void PlainEditWithLines::goToLine(int line) { setUpdatesEnabled(false); moveCursor(QTextCursor::Start); QTextCursor cursor = textCursor(); cursor.movePosition(QTextCursor::NextBlock, QTextCursor::MoveAnchor, line - 1); setTextCursor(cursor); setUpdatesEnabled(true); } void PlainEditWithLines::updateLineNumberAreaWidth(int /* newBlockCount */) { setViewportMargins(lineNumberAreaWidth(), 0, 0, 0); } void PlainEditWithLines::updateLineNumberArea(const QRect &rect, int dy) { if (dy) { m_lineNumberArea->scroll(0, dy); } else if (m_countCache.first != blockCount() || m_countCache.second != textCursor().block().lineCount()) { m_lineNumberArea->update(0, rect.y(), m_lineNumberArea->width(), rect.height()); m_countCache.first = blockCount(); m_countCache.second = textCursor().block().lineCount(); } if (rect.contains(viewport()->rect())) { updateLineNumberAreaWidth(0); } } void PlainEditWithLines::resizeEvent(QResizeEvent* e) { QPlainTextEdit::resizeEvent(e); QRect cr = contentsRect(); m_lineNumberArea->setGeometry(QRect(cr.left(), cr.top(), lineNumberAreaWidth(), cr.height())); } void PlainEditWithLines::highlightCurrentLine() { if (!m_isShowingCursor) { return; } const QColor lineColor = palette().color(QPalette::Highlight).lighter(); QList selectionsList; QTextEdit::ExtraSelection selection; selection.format.setBackground(lineColor); selection.format.setProperty(QTextFormat::FullWidthSelection, QVariant(true)); selection.cursor = textCursor(); selection.cursor.clearSelection(); selectionsList.append(selection); setExtraSelections(selectionsList); } void PlainEditWithLines::lineNumberAreaPaintEvent(QPaintEvent* event) { const QRect eventRect = event->rect(); QPainter painter(m_lineNumberArea); painter.fillRect(eventRect, QColor(235, 235, 235)); painter.fillRect(QRect(eventRect.width() - 1, 0, 1, viewport()->height()), QColor(175, 175, 175)); QTextBlock block = firstVisibleBlock(); int blockNumber = block.blockNumber(); int top = (int) blockBoundingGeometry(block).translated(contentOffset()).top(); int bottom = top + (int) blockBoundingRect(block).height(); QColor textColor(175, 175, 175); while (block.isValid() && top <= eventRect.bottom()) { if (block.isVisible() && bottom >= eventRect.top()) { QString number = QString::number(blockNumber + 1); painter.setPen(textColor); painter.drawText(0, top, m_lineNumberArea->width() - 3, fontMetrics().height(), Qt::AlignRight, number); } block = block.next(); top = bottom; bottom = top + (int) blockBoundingRect(block).height(); ++blockNumber; } } LineNumberArea::LineNumberArea(PlainEditWithLines* editor) : QWidget(editor) , m_codeEditor(editor) { } QSize LineNumberArea::sizeHint() const { return QSize(m_codeEditor->lineNumberAreaWidth(), 0); } void LineNumberArea::paintEvent(QPaintEvent* event) { m_codeEditor->lineNumberAreaPaintEvent(event); } qupzilla-1.6.0/src/lib/tools/plaineditwithlines.h000066400000000000000000000077761226107126500221500ustar00rootroot00000000000000/**************************************************************************** ** ** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). ** All rights reserved. ** Contact: Nokia Corporation (qt-info@nokia.com) ** ** This file is part of the examples of the Qt Toolkit. ** ** $QT_BEGIN_LICENSE:BSD$ ** You may use this file under the terms of the BSD license as follows: ** ** "Redistribution and use in source and binary forms, with or without ** modification, are permitted provided that the following conditions are ** met: ** * Redistributions of source code must retain the above copyright ** notice, this list of conditions and the following disclaimer. ** * Redistributions in binary form must reproduce the above copyright ** notice, this list of conditions and the following disclaimer in ** the documentation and/or other materials provided with the ** distribution. ** * Neither the name of Nokia Corporation and its Subsidiary(-ies) nor ** the names of its contributors may be used to endorse or promote ** products derived from this software without specific prior written ** permission. ** ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." ** $QT_END_LICENSE$ ** ****************************************************************************/ /* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef PLAINEDITWITHLINES_H #define PLAINEDITWITHLINES_H #include #include "qz_namespace.h" class QPaintEvent; class QResizeEvent; class QSize; class QWidget; class LineNumberArea; class QT_QUPZILLA_EXPORT PlainEditWithLines : public QPlainTextEdit { Q_OBJECT public: explicit PlainEditWithLines(QWidget* parent = 0); void lineNumberAreaPaintEvent(QPaintEvent* event); int lineNumberAreaWidth(); void setShowingCursor(bool show); bool isShowingCursor() const; void setReadOnly(bool ro); public slots: void goToLine(int line); protected: void resizeEvent(QResizeEvent* event); private slots: void updateLineNumberAreaWidth(int newBlockCount); void highlightCurrentLine(); void updateLineNumberArea(const QRect &, int); private: QWidget* m_lineNumberArea; bool m_isShowingCursor; QPair m_countCache; }; class QT_QUPZILLA_EXPORT LineNumberArea : public QWidget { public: explicit LineNumberArea(PlainEditWithLines* editor); QSize sizeHint() const; protected: void paintEvent(QPaintEvent* event); private: PlainEditWithLines* m_codeEditor; }; #endif // PLAINEDITWITHLINES_H qupzilla-1.6.0/src/lib/tools/progressbar.cpp000066400000000000000000000033651226107126500211220ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #include "progressbar.h" #include #include ProgressBar::ProgressBar(QWidget* parent) : QWidget(parent) , m_value(0) , m_lastPaintedValue(-1) { setMinimumSize(130, 16); setMaximumSize(150, 16); } void ProgressBar::setValue(int value) { m_value = value; if (m_lastPaintedValue != m_value) { repaint(); } } void ProgressBar::initStyleOption(QStyleOptionProgressBar* option) { if (!option) { return; } option->initFrom(this); option->minimum = 0; option->maximum = 100; option->progress = m_value; option->textAlignment = Qt::AlignLeft; option->textVisible = false; } void ProgressBar::paintEvent(QPaintEvent*) { QStylePainter paint(this); QStyleOptionProgressBarV2 opt; initStyleOption(&opt); paint.drawControl(QStyle::CE_ProgressBar, opt); m_lastPaintedValue = m_value; } qupzilla-1.6.0/src/lib/tools/progressbar.h000066400000000000000000000025101226107126500205560ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef PROGRESSBAR_H #define PROGRESSBAR_H #include #include "qz_namespace.h" class QStyleOptionProgressBar; class QT_QUPZILLA_EXPORT ProgressBar : public QWidget { Q_OBJECT public: explicit ProgressBar(QWidget* parent = 0); signals: public slots: void setValue(int value); protected: void paintEvent(QPaintEvent* e); void initStyleOption(QStyleOptionProgressBar* option); private: int m_value; int m_lastPaintedValue; }; #endif // PROGRESSBAR_H qupzilla-1.6.0/src/lib/tools/qzregexp.cpp000066400000000000000000000046701226107126500204360ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "qzregexp.h" #include "qztools.h" #if (QT_VERSION >= 0x050000) QzRegExp::QzRegExp() : QRegularExpression(QString(), QRegularExpression::DotMatchesEverythingOption) , m_matchedLength(-1) { } QzRegExp::QzRegExp(const QString &pattern, Qt::CaseSensitivity cs) : QRegularExpression(pattern, QRegularExpression::DotMatchesEverythingOption) , m_matchedLength(-1) { if (cs == Qt::CaseInsensitive) { setPatternOptions(patternOptions() | QRegularExpression::CaseInsensitiveOption); } } QzRegExp::QzRegExp(const QzRegExp &re) : QRegularExpression(re) , m_matchedLength(-1) { } void QzRegExp::setMinimal(bool minimal) { QRegularExpression::PatternOptions opt; if (minimal) { opt = patternOptions() | QRegularExpression::InvertedGreedinessOption; } else { opt = patternOptions() & ~QRegularExpression::InvertedGreedinessOption; } setPatternOptions(opt); } int QzRegExp::indexIn(const QString &str, int offset) const { QzRegExp* that = const_cast(this); QRegularExpressionMatch m = match(str, offset); if (!m.hasMatch()) { that->m_matchedLength = -1; that->m_capturedTexts.clear(); return -1; } that->m_matchedLength = m.capturedLength(); that->m_capturedTexts = m.capturedTexts(); return m.capturedStart(); } int QzRegExp::matchedLength() const { return m_matchedLength; } QString QzRegExp::cap(int nth) const { if (!QzTools::listContainsIndex(m_capturedTexts, nth)) { return QString(); } return m_capturedTexts.at(nth); } #endif // (QT_VERSION >= 0x050000) qupzilla-1.6.0/src/lib/tools/qzregexp.h000066400000000000000000000031121226107126500200710ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef QZREGEXP_H #define QZREGEXP_H #include // Needed for QT_VERSION #if (QT_VERSION < 0x050000) // Qt 4 - use QRegExp directly #include #define QzRegExp QRegExp #else // Qt 5 #include #include #include "qz_namespace.h" class QT_QUPZILLA_EXPORT QzRegExp : public QRegularExpression { public: QzRegExp(); QzRegExp(const QString &pattern, Qt::CaseSensitivity cs = Qt::CaseSensitive); QzRegExp(const QzRegExp &re); void setMinimal(bool minimal); int indexIn(const QString &str, int offset = 0) const; int matchedLength() const; QString cap(int nth = 0) const; private: QStringList m_capturedTexts; int m_matchedLength; }; #endif // Qt 5 #endif // QZREGEXP_H qupzilla-1.6.0/src/lib/tools/qztools.cpp000066400000000000000000000573541226107126500203130ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "qztools.h" #include "mainapplication.h" #include "settings.h" #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #if QT_VERSION >= 0x050000 #include #include #else #include #endif #if defined(QZ_WS_X11) && !defined(NO_X11) #include #include #endif #ifdef Q_OS_WIN #include #endif #ifdef Q_OS_MAC #include #endif QByteArray QzTools::pixmapToByteArray(const QPixmap &pix) { QByteArray bytes; QBuffer buffer(&bytes); buffer.open(QIODevice::WriteOnly); if (pix.save(&buffer, "PNG")) { return buffer.buffer().toBase64(); } return QByteArray(); } QPixmap QzTools::pixmapFromByteArray(const QByteArray &data) { QPixmap image; QByteArray bArray = QByteArray::fromBase64(data); image.loadFromData(bArray); return image; } QString QzTools::readAllFileContents(const QString &filename) { QFile file(filename); if (file.open(QFile::ReadOnly)) { QString a = QString::fromUtf8(file.readAll()); file.close(); return a; } return QString(); } void QzTools::centerWidgetOnScreen(QWidget* w) { const QRect screen = QApplication::desktop()->screenGeometry(); const QRect size = w->geometry(); w->move((screen.width() - size.width()) / 2, (screen.height() - size.height()) / 2); } // Very, very, very simplified QDialog::adjustPosition from qdialog.cpp void QzTools::centerWidgetToParent(QWidget* w, QWidget* parent) { if (!parent || !w) { return; } QPoint p; parent = parent->window(); QPoint pp = parent->mapToGlobal(QPoint(0, 0)); p = QPoint(pp.x() + parent->width() / 2, pp.y() + parent->height() / 2); p = QPoint(p.x() - w->width() / 2, p.y() - w->height() / 2 - 20); w->move(p); } bool QzTools::removeFile(const QString &fullFileName) { QFile f(fullFileName); if (f.exists()) { return f.remove(); } else { return false; } } void QzTools::removeDir(const QString &d) { QDir dir(d); if (dir.exists()) { const QFileInfoList list = dir.entryInfoList(); QFileInfo fi; for (int l = 0; l < list.size(); l++) { fi = list.at(l); if (fi.isDir() && fi.fileName() != QLatin1String(".") && fi.fileName() != QLatin1String("..")) { QzTools::removeDir(fi.absoluteFilePath()); } else if (fi.isFile()) { QzTools::removeFile(fi.absoluteFilePath()); } } dir.rmdir(d); } } /* Finds same part of @one in @other from the beginning */ QString QzTools::samePartOfStrings(const QString &one, const QString &other) { int maxSize = qMin(one.size(), other.size()); if (maxSize <= 0) { return QString(); } int i = 0; while (one.at(i) == other.at(i)) { i++; if (i == maxSize) { break; } } return one.left(i); } QString QzTools::urlEncodeQueryString(const QUrl &url) { QString returnString = url.toString(QUrl::RemoveQuery | QUrl::RemoveFragment); if (url.hasQuery()) { #if QT_VERSION >= 0x050000 returnString += QLatin1Char('?') + url.query(QUrl::FullyEncoded); #else returnString += QLatin1Char('?') + url.encodedQuery(); #endif } if (url.hasFragment()) { #if QT_VERSION >= 0x050000 returnString += QLatin1Char('#') + url.fragment(QUrl::FullyEncoded); #else returnString += QLatin1Char('#') + url.encodedFragment(); #endif } returnString.replace(QLatin1Char(' '), QLatin1String("%20")); return returnString; } QString QzTools::ensureUniqueFilename(const QString &name, const QString &appendFormat) { if (!QFile::exists(name)) { return name; } QString tmpFileName = name; int i = 1; while (QFile::exists(tmpFileName)) { tmpFileName = name; int index = tmpFileName.lastIndexOf(QLatin1Char('.')); QString appendString = appendFormat.arg(i); if (index == -1) { tmpFileName.append(appendString); } else { tmpFileName = tmpFileName.left(index) + appendString + tmpFileName.mid(index); } i++; } return tmpFileName; } QString QzTools::getFileNameFromUrl(const QUrl &url) { QString fileName = url.toString(QUrl::RemoveFragment | QUrl::RemoveQuery | QUrl::RemoveScheme | QUrl::RemovePort); if (fileName.endsWith(QLatin1Char('/'))) { fileName = fileName.mid(0, fileName.length() - 1); } if (fileName.indexOf(QLatin1Char('/')) != -1) { int pos = fileName.lastIndexOf(QLatin1Char('/')); fileName = fileName.mid(pos); fileName.remove(QLatin1Char('/')); } fileName = filterCharsFromFilename(fileName); if (fileName.isEmpty()) { fileName = filterCharsFromFilename(url.host()); } return fileName; } QString QzTools::filterCharsFromFilename(const QString &name) { QString value = name; value.replace(QLatin1Char('/'), QLatin1Char('-')); value.remove(QLatin1Char('\\')); value.remove(QLatin1Char(':')); value.remove(QLatin1Char('*')); value.remove(QLatin1Char('?')); value.remove(QLatin1Char('"')); value.remove(QLatin1Char('<')); value.remove(QLatin1Char('>')); value.remove(QLatin1Char('|')); return value; } QString QzTools::lastPathForFileDialog(const QString &dialogName, const QString &fallbackPath) { Settings settings; settings.beginGroup("LastFileDialogsPaths"); QString path = settings.value("FileDialogs/" + dialogName).toString(); settings.endGroup(); return path.isEmpty() ? fallbackPath : path; } void QzTools::saveLastPathForFileDialog(const QString &dialogName, const QString &path) { if (path.isEmpty()) { return; } Settings settings; settings.beginGroup("LastFileDialogsPaths"); settings.setValue(dialogName, path); settings.endGroup(); } QString QzTools::alignTextToWidth(const QString &string, const QString &text, const QFontMetrics &metrics, int width) { int pos = 0; QString returnString; while (pos <= string.size()) { QString part = string.mid(pos); QString elidedLine = metrics.elidedText(part, Qt::ElideRight, width); if (elidedLine.isEmpty()) { break; } if (elidedLine.size() != part.size()) { elidedLine = elidedLine.left(elidedLine.size() - 3); } if (!returnString.isEmpty()) { returnString += text; } returnString += elidedLine; pos += elidedLine.size(); } return returnString; } QString QzTools::fileSizeToString(qint64 size) { if (size < 0) { return QObject::tr("Unknown size"); } double _size = size / 1024.0; // KB if (_size < 1000) { return QString::number(_size > 1 ? _size : 1, 'f', 0) + " " + QObject::tr("KB"); } _size /= 1024; // MB if (_size < 1000) { return QString::number(_size, 'f', 1) + " " + QObject::tr("MB"); } _size /= 1024; // GB return QString::number(_size, 'f', 2) + " " + QObject::tr("GB"); } QPixmap QzTools::createPixmapForSite(const QIcon &icon, const QString &title, const QString &url) { const QFontMetrics fontMetrics = QApplication::fontMetrics(); const int padding = 4; const int maxWidth = fontMetrics.width(title.length() > url.length() ? title : url) + 3 * padding + 16; const int width = qMin(maxWidth, 150); const int height = fontMetrics.height() * 2 + fontMetrics.leading() + 2 * padding; QPixmap pixmap(width, height); QPainter painter(&pixmap); // Draw background QPen pen(Qt::black); pen.setWidth(1); painter.setPen(pen); painter.fillRect(QRect(0, 0, width, height), Qt::white); painter.drawRect(0, 0, width - 1, height - 1); // Draw icon QRect iconRect(0, 0, 16 + 2 * padding, height); icon.paint(&painter, iconRect); // Draw title QRect titleRect(iconRect.width(), padding, width - padding - iconRect.width(), fontMetrics.height()); painter.drawText(titleRect, fontMetrics.elidedText(title, Qt::ElideRight, titleRect.width())); // Draw url QRect urlRect(titleRect.x(), titleRect.bottom() + fontMetrics.leading(), titleRect.width(), titleRect.height()); painter.setPen(QApplication::palette().color(QPalette::Link)); painter.drawText(urlRect, fontMetrics.elidedText(url, Qt::ElideRight, urlRect.width())); return pixmap; } QString QzTools::applyDirectionToPage(QString &pageContents) { QString direction = QLatin1String("ltr"); QString right_str = QLatin1String("right"); QString left_str = QLatin1String("left"); if (QApplication::isRightToLeft()) { direction = QLatin1String("rtl"); right_str = QLatin1String("left"); left_str = QLatin1String("right"); } pageContents.replace(QLatin1String("%DIRECTION%"), direction); pageContents.replace(QLatin1String("%RIGHT_STR%"), right_str); pageContents.replace(QLatin1String("%LEFT_STR%"), left_str); return pageContents; } // Thanks to http://www.qtcentre.org/threads/3205-Toplevel-widget-with-rounded-corners?p=17492#post17492 QRegion QzTools::roundedRect(const QRect &rect, int radius) { QRegion region; // middle and borders region += rect.adjusted(radius, 0, -radius, 0); region += rect.adjusted(0, radius, 0, -radius); // top left QRect corner(rect.topLeft(), QSize(radius * 2, radius * 2)); region += QRegion(corner, QRegion::Ellipse); // top right corner.moveTopRight(rect.topRight()); region += QRegion(corner, QRegion::Ellipse); // bottom left corner.moveBottomLeft(rect.bottomLeft()); region += QRegion(corner, QRegion::Ellipse); // bottom right corner.moveBottomRight(rect.bottomRight()); region += QRegion(corner, QRegion::Ellipse); return region; } QIcon QzTools::iconFromFileName(const QString &fileName) { static QHash iconCache; QFileInfo tempInfo(fileName); if (iconCache.contains(tempInfo.suffix())) { return iconCache.value(tempInfo.suffix()); } QFileIconProvider iconProvider; QTemporaryFile tempFile(mApp->tempPath() + "/XXXXXX." + tempInfo.suffix()); tempFile.open(); tempInfo.setFile(tempFile.fileName()); QIcon icon(iconProvider.icon(tempInfo)); iconCache.insert(tempInfo.suffix(), icon); return icon; } QString QzTools::resolveFromPath(const QString &name) { const QString path = qgetenv("PATH").trimmed(); if (path.isEmpty()) { return QString(); } QStringList dirs = path.split(QLatin1Char(':'), QString::SkipEmptyParts); foreach (const QString &dir, dirs) { QDir d(dir); if (d.exists(name)) { return d.absoluteFilePath(name); } } return QString(); } // http://stackoverflow.com/questions/1031645/how-to-detect-utf-8-in-plain-c bool QzTools::isUtf8(const char* string) { if (!string) { return 0; } const unsigned char* bytes = (const unsigned char*)string; while (*bytes) { if ((// ASCII bytes[0] == 0x09 || bytes[0] == 0x0A || bytes[0] == 0x0D || (0x20 <= bytes[0] && bytes[0] <= 0x7F) ) ) { bytes += 1; continue; } if ((// non-overlong 2-byte (0xC2 <= bytes[0] && bytes[0] <= 0xDF) && (0x80 <= bytes[1] && bytes[1] <= 0xBF) ) ) { bytes += 2; continue; } if ((// excluding overlongs bytes[0] == 0xE0 && (0xA0 <= bytes[1] && bytes[1] <= 0xBF) && (0x80 <= bytes[2] && bytes[2] <= 0xBF) ) || (// straight 3-byte ((0xE1 <= bytes[0] && bytes[0] <= 0xEC) || bytes[0] == 0xEE || bytes[0] == 0xEF) && (0x80 <= bytes[1] && bytes[1] <= 0xBF) && (0x80 <= bytes[2] && bytes[2] <= 0xBF) ) || (// excluding surrogates bytes[0] == 0xED && (0x80 <= bytes[1] && bytes[1] <= 0x9F) && (0x80 <= bytes[2] && bytes[2] <= 0xBF) ) ) { bytes += 3; continue; } if ((// planes 1-3 bytes[0] == 0xF0 && (0x90 <= bytes[1] && bytes[1] <= 0xBF) && (0x80 <= bytes[2] && bytes[2] <= 0xBF) && (0x80 <= bytes[3] && bytes[3] <= 0xBF) ) || (// planes 4-15 (0xF1 <= bytes[0] && bytes[0] <= 0xF3) && (0x80 <= bytes[1] && bytes[1] <= 0xBF) && (0x80 <= bytes[2] && bytes[2] <= 0xBF) && (0x80 <= bytes[3] && bytes[3] <= 0xBF) ) || (// plane 16 bytes[0] == 0xF4 && (0x80 <= bytes[1] && bytes[1] <= 0x8F) && (0x80 <= bytes[2] && bytes[2] <= 0xBF) && (0x80 <= bytes[3] && bytes[3] <= 0xBF) ) ) { bytes += 4; continue; } return false; } return true; } QString QzTools::getExistingDirectory(const QString &name, QWidget* parent, const QString &caption, const QString &dir, QFileDialog::Options options) { Settings settings; settings.beginGroup("FileDialogPaths"); QString lastDir = settings.value(name, dir).toString(); QString path = QFileDialog::getExistingDirectory(parent, caption, lastDir, options); if (!path.isEmpty()) { settings.setValue(name, QFileInfo(path).absolutePath()); } settings.endGroup(); return path; } static QString getFilename(const QString &path) { QFileInfo info(path); if (info.isFile()) { return info.fileName(); } if (info.isDir()) { return QString(); } if (info.dir().exists()) { return info.fileName(); } return QString(); } QString QzTools::getOpenFileName(const QString &name, QWidget* parent, const QString &caption, const QString &dir, const QString &filter, QString* selectedFilter, QFileDialog::Options options) { Settings settings; settings.beginGroup("FileDialogPaths"); QString lastDir = settings.value(name, QString()).toString(); QString fileName = getFilename(dir); if (lastDir.isEmpty()) { lastDir = dir; } else { lastDir.append(QDir::separator() + fileName); } QString path = QFileDialog::getOpenFileName(parent, caption, lastDir, filter, selectedFilter, options); if (!path.isEmpty()) { settings.setValue(name, QFileInfo(path).absolutePath()); } settings.endGroup(); return path; } QStringList QzTools::getOpenFileNames(const QString &name, QWidget* parent, const QString &caption, const QString &dir, const QString &filter, QString* selectedFilter, QFileDialog::Options options) { Settings settings; settings.beginGroup("FileDialogPaths"); QString lastDir = settings.value(name, QString()).toString(); QString fileName = getFilename(dir); if (lastDir.isEmpty()) { lastDir = dir; } else { lastDir.append(QDir::separator() + fileName); } QStringList paths = QFileDialog::getOpenFileNames(parent, caption, lastDir, filter, selectedFilter, options); if (!paths.isEmpty()) { settings.setValue(name, QFileInfo(paths.first()).absolutePath()); } settings.endGroup(); return paths; } QString QzTools::getSaveFileName(const QString &name, QWidget* parent, const QString &caption, const QString &dir, const QString &filter, QString* selectedFilter, QFileDialog::Options options) { Settings settings; settings.beginGroup("FileDialogPaths"); QString lastDir = settings.value(name, QString()).toString(); QString fileName = getFilename(dir); if (lastDir.isEmpty()) { lastDir = dir; } else { lastDir.append(QDir::separator() + fileName); } QString path = QFileDialog::getSaveFileName(parent, caption, lastDir, filter, selectedFilter, options); if (!path.isEmpty()) { settings.setValue(name, QFileInfo(path).absolutePath()); } settings.endGroup(); return path; } // Matches domain (assumes both pattern and domain not starting with dot) // pattern = domain to be matched // domain = site domain bool QzTools::matchDomain(const QString &pattern, const QString &domain) { if (pattern == domain) { return true; } if (!domain.endsWith(pattern)) { return false; } int index = domain.indexOf(pattern); return index > 0 && domain[index - 1] == QLatin1Char('.'); } static inline bool isQuote(const QChar &c) { return (c == QLatin1Char('"') || c == QLatin1Char('\'')); } // Function splits command line into arguments // eg. /usr/bin/foo -o test -b "bar bar" -s="sed sed" // => '/usr/bin/foo' '-o' 'test' '-b' 'bar bar' '-s=sed sed' QStringList QzTools::splitCommandArguments(const QString &command) { QString line = command.trimmed(); if (line.isEmpty()) { return QStringList(); } QChar SPACE(' '); QChar EQUAL('='); QChar BSLASH('\\'); QChar QUOTE('"'); QStringList r; int equalPos = -1; // Position of = in opt="value" int startPos = isQuote(line.at(0)) ? 1 : 0; bool inWord = !isQuote(line.at(0)); bool inQuote = !inWord; if (inQuote) { QUOTE = line.at(0); } const int strlen = line.length(); for (int i = 0; i < strlen; ++i) { const QChar c = line.at(i); if (inQuote && c == QUOTE && i > 0 && line.at(i - 1) != BSLASH) { QString str = line.mid(startPos, i - startPos); if (equalPos > -1) { str.remove(equalPos - startPos + 1, 1); } inQuote = false; if (!str.isEmpty()) { r.append(str); } continue; } else if (!inQuote && isQuote(c)) { inQuote = true; QUOTE = c; if (!inWord) { startPos = i + 1; } else if (i > 0 && line.at(i - 1) == EQUAL) { equalPos = i - 1; } } if (inQuote) { continue; } if (inWord && (c == SPACE || i == strlen - 1)) { int len = (i == strlen - 1) ? -1 : i - startPos; const QString str = line.mid(startPos, len); inWord = false; if (!str.isEmpty()) { r.append(str); } } else if (!inWord && c != SPACE) { inWord = true; startPos = i; } } // Unmatched quote if (inQuote) { return QStringList(); } return r; } bool QzTools::startExternalProcess(const QString &executable, const QString &args) { const QStringList arguments = splitCommandArguments(args); bool success = QProcess::startDetached(executable, arguments); if (!success) { QString info = "
    • %1%2
    • %3%4
    "; info = info.arg(QObject::tr("Executable: "), executable, QObject::tr("Arguments: "), arguments.join(QLatin1String(" "))); QMessageBox::critical(0, QObject::tr("Cannot start external program"), QObject::tr("Cannot start external program! %1").arg(info)); } return success; } // Qt5 migration help functions bool QzTools::isCertificateValid(const QSslCertificate &cert) { #if QT_VERSION >= 0x050000 const QDateTime currentTime = QDateTime::currentDateTime(); return currentTime >= cert.effectiveDate() && currentTime <= cert.expiryDate() && !cert.isBlacklisted(); #else return cert.isValid(); #endif } QString QzTools::escape(const QString &string) { #if QT_VERSION >= 0x050000 return string.toHtmlEscaped(); #else return Qt::escape(string); #endif } #if defined(QZ_WS_X11) && !defined(NO_X11) void* QzTools::X11Display(const QWidget* widget) { Q_UNUSED(widget) #if QT_VERSION >= 0x050000 return qApp->platformNativeInterface()->nativeResourceForWindow("display", widget->windowHandle()); #else return QX11Info::display(); #endif } #endif void QzTools::setWmClass(const QString &name, const QWidget* widget) { #if defined(QZ_WS_X11) && !defined(NO_X11) QByteArray nameData = name.toUtf8(); XClassHint classHint; classHint.res_name = const_cast(nameData.constData()); classHint.res_class = const_cast("QupZilla"); XSetClassHint((Display*)X11Display(widget), widget->winId(), &classHint); #else Q_UNUSED(name) Q_UNUSED(widget) #endif } QString QzTools::operatingSystem() { #ifdef Q_OS_MAC QString str = "Mac OS X"; SInt32 majorVersion; SInt32 minorVersion; if (Gestalt(gestaltSystemVersionMajor, &majorVersion) == noErr && Gestalt(gestaltSystemVersionMinor, &minorVersion) == noErr) { str.append(QString(" %1.%2").arg(majorVersion).arg(minorVersion)); } return str; #endif #ifdef Q_OS_LINUX return "Linux"; #endif #ifdef Q_OS_BSD4 return "BSD 4.4"; #endif #ifdef Q_OS_BSDI return "BSD/OS"; #endif #ifdef Q_OS_FREEBSD return "FreeBSD"; #endif #ifdef Q_OS_HPUX return "HP-UX"; #endif #ifdef Q_OS_HURD return "GNU Hurd"; #endif #ifdef Q_OS_LYNX return "LynxOS"; #endif #ifdef Q_OS_NETBSD return "NetBSD"; #endif #ifdef Q_OS_OS2 return "OS/2"; #endif #ifdef Q_OS_OPENBSD return "OpenBSD"; #endif #ifdef Q_OS_OSF return "HP Tru64 UNIX"; #endif #ifdef Q_OS_SOLARIS return "Sun Solaris"; #endif #ifdef Q_OS_UNIXWARE return "UnixWare 7 / Open UNIX 8"; #endif #ifdef Q_OS_UNIX return "Unix"; #endif #ifdef Q_OS_HAIKU return "Haiku"; #endif #ifdef Q_OS_WIN32 QString str = "Windows"; switch (QSysInfo::windowsVersion()) { case QSysInfo::WV_NT: str.append(" NT"); break; case QSysInfo::WV_2000: str.append(" 2000"); break; case QSysInfo::WV_XP: str.append(" XP"); break; case QSysInfo::WV_2003: str.append(" XP Pro x64"); break; case QSysInfo::WV_VISTA: str.append(" Vista"); break; case QSysInfo::WV_WINDOWS7: str.append(" 7"); break; default: OSVERSIONINFO osvi; ZeroMemory(&osvi, sizeof(OSVERSIONINFO)); osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFO); GetVersionEx(&osvi); if (osvi.dwMajorVersion == 6 && osvi.dwMinorVersion == 2) { str.append(" 8"); } break; } return str; #endif } qupzilla-1.6.0/src/lib/tools/qztools.h000066400000000000000000000113601226107126500177430ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef GLOBALFUNCTIONS_H #define GLOBALFUNCTIONS_H #include #include #include #include #include "qz_namespace.h" class QSslCertificate; class QFontMetrics; class QPixmap; class QIcon; class QWidget; class QUrl; namespace QzTools { QByteArray QT_QUPZILLA_EXPORT pixmapToByteArray(const QPixmap &pix); QPixmap QT_QUPZILLA_EXPORT pixmapFromByteArray(const QByteArray &data); QString QT_QUPZILLA_EXPORT readAllFileContents(const QString &filename); void QT_QUPZILLA_EXPORT centerWidgetOnScreen(QWidget* w); void QT_QUPZILLA_EXPORT centerWidgetToParent(QWidget* w, QWidget* parent); bool QT_QUPZILLA_EXPORT removeFile(const QString &fullFileName); void QT_QUPZILLA_EXPORT removeDir(const QString &d); QString QT_QUPZILLA_EXPORT samePartOfStrings(const QString &one, const QString &other); QString QT_QUPZILLA_EXPORT urlEncodeQueryString(const QUrl &url); QString QT_QUPZILLA_EXPORT ensureUniqueFilename(const QString &name, const QString &appendFormat = QString("(%1)")); QString QT_QUPZILLA_EXPORT getFileNameFromUrl(const QUrl &url); QString QT_QUPZILLA_EXPORT filterCharsFromFilename(const QString &name); QString QT_QUPZILLA_EXPORT lastPathForFileDialog(const QString &dialogName, const QString &fallbackPath); void QT_QUPZILLA_EXPORT saveLastPathForFileDialog(const QString &dialogName, const QString &path); QString QT_QUPZILLA_EXPORT alignTextToWidth(const QString &string, const QString &text, const QFontMetrics &metrics, int width); QString QT_QUPZILLA_EXPORT fileSizeToString(qint64 size); QPixmap QT_QUPZILLA_EXPORT createPixmapForSite(const QIcon &icon, const QString &title, const QString &url); QString QT_QUPZILLA_EXPORT applyDirectionToPage(QString &pageContents); QString QT_QUPZILLA_EXPORT resolveFromPath(const QString &name); QStringList QT_QUPZILLA_EXPORT splitCommandArguments(const QString &command); bool QT_QUPZILLA_EXPORT startExternalProcess(const QString &executable, const QString &args); QRegion QT_QUPZILLA_EXPORT roundedRect(const QRect &rect, int radius); QIcon QT_QUPZILLA_EXPORT iconFromFileName(const QString &fileName); bool QT_QUPZILLA_EXPORT isUtf8(const char* string); // QFileDialog static functions that remembers last used directory QString QT_QUPZILLA_EXPORT getExistingDirectory(const QString &name, QWidget* parent = 0, const QString &caption = QString(), const QString &dir = QString(), QFileDialog::Options options = QFileDialog::ShowDirsOnly); QString QT_QUPZILLA_EXPORT getOpenFileName(const QString &name, QWidget* parent = 0, const QString &caption = QString(), const QString &dir = QString(), const QString &filter = QString(), QString* selectedFilter = 0, QFileDialog::Options options = 0); QStringList QT_QUPZILLA_EXPORT getOpenFileNames(const QString &name, QWidget* parent = 0, const QString &caption = QString(), const QString &dir = QString(), const QString &filter = QString(), QString* selectedFilter = 0, QFileDialog::Options options = 0); QString QT_QUPZILLA_EXPORT getSaveFileName(const QString &name, QWidget* parent = 0, const QString &caption = QString(), const QString &dir = QString(), const QString &filter = QString(), QString* selectedFilter = 0, QFileDialog::Options options = 0); bool QT_QUPZILLA_EXPORT matchDomain(const QString &pattern, const QString &domain); QString QT_QUPZILLA_EXPORT operatingSystem(); // Qt5 migration help functions bool QT_QUPZILLA_EXPORT isCertificateValid(const QSslCertificate &cert); QString QT_QUPZILLA_EXPORT escape(const QString &string); #if defined(QZ_WS_X11) && !defined(NO_X11) void* X11Display(const QWidget* widget); #endif void QT_QUPZILLA_EXPORT setWmClass(const QString &name, const QWidget* widget); template bool listContainsIndex(const QList &list, int index) { return (index >= 0 && list.count() > index); } template bool vectorContainsIndex(const QVector &list, int index) { return (index >= 0 && list.count() > index); } } // namespace #endif // GLOBALFUNCTIONS_H qupzilla-1.6.0/src/lib/tools/tabstackedwidget.cpp000066400000000000000000000177331226107126500221060ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 S. Razi Alavizadeh * * Some code was taken from qtabwidget.cpp * * 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 3 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, see . * ============================================================ */ #include "tabstackedwidget.h" #include "combotabbar.h" #include #include #include #include // Note: just some of QTabWidget's methods were implemented TabStackedWidget::TabStackedWidget(QWidget* parent) : QWidget(parent) , m_stack(0) , m_tabBar(0) { m_stack = new QStackedWidget(this); m_mainLayout = new QVBoxLayout; m_mainLayout->setSpacing(0); m_mainLayout->setContentsMargins(0, 0, 0, 0); m_mainLayout->addWidget(m_stack); setLayout(m_mainLayout); setTabBar(new ComboTabBar); connect(m_stack, SIGNAL(widgetRemoved(int)), this, SLOT(tabWasRemoved(int))); } TabStackedWidget::~TabStackedWidget() { } ComboTabBar* TabStackedWidget::tabBar() { return m_tabBar; } void TabStackedWidget::setTabBar(ComboTabBar* tb) { Q_ASSERT(tb); if (tb->parentWidget() != this) { tb->setParent(this); tb->show(); } delete m_tabBar; m_dirtyTabBar = true; m_tabBar = tb; setFocusProxy(m_tabBar); connect(m_tabBar, SIGNAL(currentChanged(int)), this, SLOT(showTab(int))); connect(m_tabBar, SIGNAL(tabMoved(int,int)), this, SLOT(tabWasMoved(int,int))); if (m_tabBar->tabsClosable()) { connect(m_tabBar, SIGNAL(tabCloseRequested(int)), this, SIGNAL(tabCloseRequested(int))); } setDocumentMode(m_tabBar->documentMode()); m_tabBar->installEventFilter(this); setUpLayout(); } bool TabStackedWidget::isValid(int index) { return (index < m_stack->count() && index >= 0); } void TabStackedWidget::tabWasRemoved(int index) { m_tabBar->removeTab(index); } void TabStackedWidget::tabWasMoved(int from, int to) { m_stack->blockSignals(true); QWidget* w = m_stack->widget(from); m_stack->removeWidget(w); m_stack->insertWidget(to, w); m_stack->setCurrentIndex(currentIndex()); m_stack->blockSignals(false); } void TabStackedWidget::setUpLayout() { if (!m_tabBar->isVisible()) { m_dirtyTabBar = true; return; } m_tabBar->setElideMode(m_tabBar->elideMode()); m_dirtyTabBar = false; } bool TabStackedWidget::eventFilter(QObject* obj, QEvent* event) { if (m_dirtyTabBar && obj == m_tabBar && event->type() == QEvent::Show) { setUpLayout(); } return false; } void TabStackedWidget::keyPressEvent(QKeyEvent* event) { if (((event->key() == Qt::Key_Tab || event->key() == Qt::Key_Backtab) && count() > 1 && event->modifiers() & Qt::ControlModifier) #ifdef QT_KEYPAD_NAVIGATION || QApplication::keypadNavigationEnabled() && (event->key() == Qt::Key_Left || event->key() == Qt::Key_Right) && count() > 1 #endif ) { int pageCount = count(); int page = currentIndex(); int dx = (event->key() == Qt::Key_Backtab || event->modifiers() & Qt::ShiftModifier) ? -1 : 1; #ifdef QT_KEYPAD_NAVIGATION if (QApplication::keypadNavigationEnabled() && (event->key() == Qt::Key_Left || event->key() == Qt::Key_Right)) { dx = event->key() == (isRightToLeft() ? Qt::Key_Right : Qt::Key_Left) ? -1 : 1; } #endif for (int pass = 0; pass < pageCount; ++pass) { page += dx; if (page < 0 #ifdef QT_KEYPAD_NAVIGATION && !event->isAutoRepeat() #endif ) { page = count() - 1; } else if (page >= pageCount #ifdef QT_KEYPAD_NAVIGATION && !event->isAutoRepeat() #endif ) { page = 0; } if (m_tabBar->isTabEnabled(page)) { setCurrentIndex(page); break; } } if (!QApplication::focusWidget()) { m_tabBar->setFocus(); } } else { event->ignore(); } } void TabStackedWidget::showTab(int index) { if (isValid(index)) { m_stack->setCurrentIndex(index); } emit currentChanged(index); } bool TabStackedWidget::documentMode() const { return m_tabBar->documentMode(); } void TabStackedWidget::setDocumentMode(bool enabled) { m_tabBar->setDocumentMode(enabled); m_tabBar->setExpanding(!enabled); m_tabBar->setDrawBase(enabled); } int TabStackedWidget::addTab(QWidget* widget, const QString &label, bool pinned) { return insertTab(-1, widget, label, pinned); } int TabStackedWidget::insertTab(int index, QWidget* w, const QString &label, bool pinned) { if (!w) { return -1; } if (pinned) { index = index < 0 ? m_tabBar->pinnedTabsCount() : qMin(index, m_tabBar->pinnedTabsCount()); index = m_stack->insertWidget(index, w); m_tabBar->insertTab(index, QIcon(), label, true); } else { index = index < 0 ? -1 : qMax(index, m_tabBar->pinnedTabsCount()); index = m_stack->insertWidget(index, w); m_tabBar->insertTab(index, QIcon(), label, false); } return index; } QString TabStackedWidget::tabText(int index) const { return m_tabBar->tabText(index); } void TabStackedWidget::setTabText(int index, const QString &label) { m_tabBar->setTabText(index, label); } QString TabStackedWidget::tabToolTip(int index) const { return m_tabBar->tabToolTip(index); } void TabStackedWidget::setTabToolTip(int index, const QString &tip) { m_tabBar->setTabToolTip(index, tip); } int TabStackedWidget::pinUnPinTab(int index, const QString &title) { int newIndex = -1; if (QWidget* w = m_stack->widget(index)) { QWidget* button = m_tabBar->tabButton(index, m_tabBar->iconButtonPosition()); m_tabBar->setTabButton(index, m_tabBar->iconButtonPosition(), 0); if (index < m_tabBar->pinnedTabsCount()) { // Unpin // fix selecting and loading a tab after removing the tab that contains 'w' // by blocking ComboTabBar::currentChanged() m_tabBar->blockSignals(true); m_stack->removeWidget(w); m_tabBar->blockSignals(false); newIndex = insertTab(m_tabBar->pinnedTabsCount(), w, title, false); } else { // Pin // same as above m_tabBar->blockSignals(true); m_stack->removeWidget(w); m_tabBar->blockSignals(false); newIndex = insertTab(0, w, QString(), true); } m_tabBar->setTabButton(newIndex, m_tabBar->iconButtonPosition(), button); } return newIndex; } void TabStackedWidget::removeTab(int index) { if (QWidget* w = m_stack->widget(index)) { m_stack->removeWidget(w); } } int TabStackedWidget::currentIndex() const { return m_tabBar->currentIndex(); } void TabStackedWidget::setCurrentIndex(int index) { m_tabBar->setCurrentIndex(index); } QWidget* TabStackedWidget::currentWidget() const { return m_stack->currentWidget(); } void TabStackedWidget::setCurrentWidget(QWidget* widget) { m_tabBar->setCurrentIndex(indexOf(widget)); } QWidget* TabStackedWidget::widget(int index) const { return m_stack->widget(index); } int TabStackedWidget::indexOf(QWidget* widget) const { return m_stack->indexOf(widget); } int TabStackedWidget::count() const { return m_tabBar->count(); } qupzilla-1.6.0/src/lib/tools/tabstackedwidget.h000066400000000000000000000050101226107126500215340ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 S. Razi Alavizadeh * * 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 3 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, see . * ============================================================ */ #ifndef TABSTACKEDWIDGET_H #define TABSTACKEDWIDGET_H #include "qz_namespace.h" #include class ComboTabBar; class QStackedWidget; class QVBoxLayout; class QT_QUPZILLA_EXPORT TabStackedWidget : public QWidget { Q_OBJECT public: explicit TabStackedWidget(QWidget* parent = 0); ~TabStackedWidget(); ComboTabBar* tabBar(); void setTabBar(ComboTabBar* tb); bool isValid(int index); bool documentMode() const; void setDocumentMode(bool enabled); int addTab(QWidget* widget, const QString &label, bool pinned = false); int insertTab(int index, QWidget* widget, const QString &label, bool pinned = false); QString tabText(int index) const; void setTabText(int index, const QString &label); QString tabToolTip(int index) const; void setTabToolTip(int index, const QString &tip); int pinUnPinTab(int index, const QString &title = QString()); void removeTab(int index); void setUpLayout(); int currentIndex() const; QWidget* currentWidget() const; QWidget* widget(int index) const; int indexOf(QWidget* widget) const; int count() const; public slots: void setCurrentIndex(int index); void setCurrentWidget(QWidget* widget); private: QStackedWidget* m_stack; ComboTabBar* m_tabBar; QVBoxLayout* m_mainLayout; bool m_dirtyTabBar; private slots: void tabWasRemoved(int index); void showTab(int index); void tabWasMoved(int from, int to); protected: bool eventFilter(QObject* obj, QEvent* event); void keyPressEvent(QKeyEvent* event); signals: void currentChanged(int index); void tabCloseRequested(int index); }; #endif // TABSTACKEDWIDGET_H qupzilla-1.6.0/src/lib/tools/toolbutton.cpp000066400000000000000000000111541226107126500207750ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "toolbutton.h" #include #include #include #include #include ToolButton::ToolButton(QWidget* parent) : QToolButton(parent) , m_usingMultiIcon(false) , m_showMenuInside(false) , m_forceHidden(false) { setMinimumWidth(16); } void ToolButton::setThemeIcon(const QString &image) { m_themeIcon = image; setIcon(QIcon::fromTheme(image)); m_usingMultiIcon = false; } void ToolButton::setFallbackIcon(const QIcon &image) { if (icon().isNull()) { setIcon(image); m_usingMultiIcon = false; } } void ToolButton::setIcon(const QIcon &image) { if (m_usingMultiIcon) { setFixedSize(sizeHint()); } m_usingMultiIcon = false; QToolButton::setIcon(image); } void ToolButton::setShowMenuInside(bool inside) { m_showMenuInside = inside; } bool ToolButton::showMenuInside() const { return m_showMenuInside; } void ToolButton::setVisible(bool visible) { QToolButton::setVisible(!m_forceHidden && visible); } bool ToolButton::isForceHidden() { return m_forceHidden; } void ToolButton::setForceHidden(bool enable) { m_forceHidden = enable; if (m_forceHidden) { hide(); } } void ToolButton::setData(const QVariant &data) { m_data = data; } QVariant ToolButton::data() { return m_data; } void ToolButton::setMultiIcon(const QPixmap &image) { int w = image.width(); int h = image.height(); m_normalIcon = image.copy(0, 0, w, h / 4); m_hoverIcon = image.copy(0, h / 4, w, h / 4); m_activeIcon = image.copy(0, h / 2, w, h / 4); m_disabledIcon = image.copy(0, 3 * h / 4, w, h / 4); m_usingMultiIcon = true; setFixedSize(m_normalIcon.size()); } void ToolButton::mousePressEvent(QMouseEvent* e) { if (e->button() == Qt::LeftButton && menu() && popupMode() == QToolButton::InstantPopup) { setDown(true); showMenu(); return; } if (e->button() == Qt::RightButton && menu()) { setDown(true); showMenu(); return; } if (e->button() == Qt::MiddleButton) { setDown(true); } QToolButton::mousePressEvent(e); } void ToolButton::mouseReleaseEvent(QMouseEvent* e) { if (e->button() == Qt::MiddleButton && rect().contains(e->pos())) { emit middleMouseClicked(); setDown(false); return; } if (e->button() == Qt::LeftButton && rect().contains(e->pos()) && e->modifiers() == Qt::ControlModifier) { emit controlClicked(); setDown(false); return; } QToolButton::mouseReleaseEvent(e); setDown(false); } void ToolButton::mouseDoubleClickEvent(QMouseEvent* e) { QToolButton::mouseDoubleClickEvent(e); if (e->button() == Qt::LeftButton) { emit doubleClicked(); } } void ToolButton::showMenu() { if (!m_showMenuInside) { QToolButton::showMenu(); return; } QMenu* m = menu(); if (!m) { return; } QPoint pos = mapToGlobal(rect().bottomRight()); if (QApplication::layoutDirection() == Qt::RightToLeft) { pos.setX(pos.x() - rect().width()); } else { pos.setX(pos.x() - m->sizeHint().width()); } setDown(true); m->exec(pos); setDown(false); } void ToolButton::paintEvent(QPaintEvent* e) { if (!m_usingMultiIcon) { QToolButton::paintEvent(e); return; } QPainter p(this); QStyleOptionToolButton opt; opt.init(this); if (!isEnabled()) { p.drawPixmap(0, 0, m_disabledIcon); return; } if (isDown()) { p.drawPixmap(0, 0, m_activeIcon); return; } if (opt.state & QStyle::State_MouseOver) { p.drawPixmap(0, 0, m_hoverIcon); return; } p.drawPixmap(0, 0, m_normalIcon); } qupzilla-1.6.0/src/lib/tools/toolbutton.h000066400000000000000000000051151226107126500204420ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef TOOLBUTTON_H #define TOOLBUTTON_H #include #include #include "qz_namespace.h" class QT_QUPZILLA_EXPORT ToolButton : public QToolButton { Q_OBJECT Q_PROPERTY(QSize fixedsize READ size WRITE setFixedSize) Q_PROPERTY(int fixedwidth READ width WRITE setFixedWidth) Q_PROPERTY(int fixedheight READ height WRITE setFixedHeight) Q_PROPERTY(QPixmap multiIcon READ pixmap WRITE setMultiIcon) Q_PROPERTY(QIcon icon READ icon WRITE setIcon) Q_PROPERTY(QString themeIcon READ themeIcon WRITE setThemeIcon) Q_PROPERTY(QIcon fallbackIcon READ icon WRITE setFallbackIcon) public: explicit ToolButton(QWidget* parent = 0); void setData(const QVariant &data); QVariant data(); void setMultiIcon(const QPixmap &image); QPixmap pixmap() { return m_normalIcon; } void setThemeIcon(const QString &image); QString themeIcon() { return m_themeIcon; } void setFallbackIcon(const QIcon &image); void setIcon(const QIcon &image); void setShowMenuInside(bool inside); bool showMenuInside() const; virtual void setVisible(bool visible); bool isForceHidden(); void setForceHidden(bool enable); signals: void middleMouseClicked(); void controlClicked(); void doubleClicked(); public slots: void showMenu(); protected: void mousePressEvent(QMouseEvent* e); void mouseReleaseEvent(QMouseEvent* e); void mouseDoubleClickEvent(QMouseEvent* e); private: void paintEvent(QPaintEvent* e); bool m_usingMultiIcon; bool m_showMenuInside; QPixmap m_normalIcon; QPixmap m_hoverIcon; QPixmap m_activeIcon; QPixmap m_disabledIcon; QString m_themeIcon; QVariant m_data; bool m_forceHidden; }; #endif // TOOLBUTTON_H qupzilla-1.6.0/src/lib/tools/treewidget.cpp000066400000000000000000000341371226107126500207350ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "treewidget.h" #include "bookmarksmodel.h" #include #include #include #include #include const int ITEM_IS_TOPLEVEL = Qt::UserRole + 20; const int ITEM_PARENT_TITLE = Qt::UserRole + 21; TreeWidget::TreeWidget(QWidget* parent) : QTreeWidget(parent) , m_refreshAllItemsNeeded(true) , m_showMode(ItemsCollapsed) { setVerticalScrollMode(QAbstractItemView::ScrollPerPixel); connect(this, SIGNAL(itemChanged(QTreeWidgetItem*,int)), this, SLOT(sheduleRefresh())); } void TreeWidget::clear() { QTreeWidget::clear(); m_allTreeItems.clear(); } void TreeWidget::sheduleRefresh() { m_refreshAllItemsNeeded = true; } void TreeWidget::addTopLevelItem(QTreeWidgetItem* item) { m_allTreeItems.append(item); QTreeWidget::addTopLevelItem(item); } void TreeWidget::addTopLevelItems(const QList &items) { m_allTreeItems.append(items); QTreeWidget::addTopLevelItems(items); } void TreeWidget::insertTopLevelItem(int index, QTreeWidgetItem* item) { m_allTreeItems.append(item); QTreeWidget::insertTopLevelItem(index, item); } void TreeWidget::insertTopLevelItems(int index, const QList &items) { m_allTreeItems.append(items); QTreeWidget::insertTopLevelItems(index, items); } void TreeWidget::mousePressEvent(QMouseEvent* event) { if (event->modifiers() == Qt::ControlModifier) { emit itemControlClicked(itemAt(event->pos())); } if (event->buttons() == Qt::MiddleButton) { emit itemMiddleButtonClicked(itemAt(event->pos())); } QTreeWidget::mousePressEvent(event); } void TreeWidget::iterateAllItems(QTreeWidgetItem* parent) { int count = parent ? parent->childCount() : topLevelItemCount(); for (int i = 0; i < count; i++) { QTreeWidgetItem* item = parent ? parent->child(i) : topLevelItem(i); if (item->childCount() == 0) { m_allTreeItems.append(item); } iterateAllItems(item); } } void TreeWidget::setMimeType(const QString &mimeType) { m_mimeType = mimeType; } Qt::DropActions TreeWidget::supportedDropActions() { return Qt::CopyAction; } QStringList TreeWidget::mimeTypes() const { QStringList types; types << m_mimeType; return types; } QMimeData* TreeWidget::mimeData(const QList items) const { QMimeData* data = new QMimeData(); QByteArray encodedData; QDataStream stream(&encodedData, QIODevice::WriteOnly); foreach (const QTreeWidgetItem* item, items) { if (!item) { continue; } // Why not just pass pointers ??!! QTreeWidgetItem* clonedItem = item->clone(); // #1097 Clearing icon will properly write this item into stream ... clonedItem->setIcon(0, QIcon()); bool parentIsRoot = !item->parent() || item->parent() == invisibleRootItem(); clonedItem->setData(0, ITEM_IS_TOPLEVEL, parentIsRoot); clonedItem->setData(0, ITEM_PARENT_TITLE, (parentIsRoot ? QString() : item->parent()->text(0))) ; clonedItem->write(stream); delete clonedItem; } data->setData(m_mimeType, encodedData); return data; } bool TreeWidget::dropMimeData(QTreeWidgetItem* parent, int, const QMimeData* data, Qt::DropAction action) { if (action == Qt::IgnoreAction) { return true; } if (parent && !parent->text(1).isEmpty()) { // parent is a bookmark, go one level up! parent = parent->parent(); } if (!parent) { parent = invisibleRootItem(); } bool ok = false; if (data->hasUrls()) { QString folder = (parent == invisibleRootItem()) ? QLatin1String("unsorted") : parent->text(0); QUrl url = data->urls().at(0); QString title = data->text().isEmpty() ? url.host() + url.path() : data->text(); emit linkWasDroped(url, title, data->imageData(), folder, &ok); return ok; } if (!data->hasFormat(m_mimeType)) { return false; } QApplication::setOverrideCursor(QCursor(Qt::WaitCursor)); QByteArray ba = data->data(m_mimeType); QDataStream stream(&ba, QIODevice::ReadOnly); if (stream.atEnd()) { return false; } QSqlDatabase db = QSqlDatabase::database(); db.transaction(); setUpdatesEnabled(false); while (!stream.atEnd()) { QTreeWidgetItem* item = new QTreeWidgetItem; item->read(stream); bool parentIsRoot = item->data(0, ITEM_IS_TOPLEVEL).toBool(); QString oldParentTitle = item->data(0, ITEM_PARENT_TITLE).toString(); bool isFolder = (item && item->text(1).isEmpty()); if (isFolder && (item->text(0) == _bookmarksMenu || item->text(0) == _bookmarksToolbar)) { continue; } bool parentIsOldParent = parentIsRoot ? (parent == invisibleRootItem()) : (oldParentTitle == parent->text(0)); if (parentIsOldParent || (isFolder && parent != invisibleRootItem() && parent->text(0) != _bookmarksToolbar)) { // just 'Bookmarks In ToolBar' folder can have subfolders continue; } if (isFolder) { emit folderParentChanged(item->text(0), parent->text(0) == _bookmarksToolbar, &ok); } else { emit bookmarkParentChanged(item->data(0, Qt::UserRole + 10).toInt(), parent->text(0), oldParentTitle, &ok); } if (!ok) { continue; } } db.commit(); clearSelection(); setUpdatesEnabled(true); QApplication::restoreOverrideCursor(); return true; } void TreeWidget::dragEnterEvent(QDragEnterEvent* event) { const QMimeData* mimeData = event->mimeData(); QTreeWidget::dragEnterEvent(event); if (mimeData->hasUrls() || mimeData->hasFormat(m_mimeType)) { event->acceptProposedAction(); } else { event->ignore(); } } void TreeWidget::dragMoveEvent(QDragMoveEvent* event) { const QMimeData* mimeData = event->mimeData(); bool accept = false; if (mimeData->hasUrls()) { accept = true; } else if (mimeData->hasFormat(m_mimeType)) { QTreeWidgetItem* itemUnderMouse = itemAt(event->pos()); if (!itemUnderMouse) { return; } bool underMouseIsFolder = (itemUnderMouse && itemUnderMouse->text(1).isEmpty()); int top = visualItemRect(itemUnderMouse).top(); int bottom = visualItemRect(itemUnderMouse).bottom(); int y = event->pos().y(); bool overEdgeOfItem = (y >= top - 1 && y <= top + 1) || (y <= bottom + 1 && y >= bottom - 1); QByteArray ba = mimeData->data(m_mimeType); QDataStream stream(&ba, QIODevice::ReadOnly); while (!stream.atEnd()) { QTreeWidgetItem* dragItem = new QTreeWidgetItem; dragItem->read(stream); bool parentIsRoot = dragItem->data(0, ITEM_IS_TOPLEVEL).toBool(); QString oldParentTitle = dragItem->data(0, ITEM_PARENT_TITLE).toString(); bool itemIsFolder = dragItem->text(1).isEmpty(); if (dragItem->text(0) != _bookmarksMenu && dragItem->text(0) != _bookmarksToolbar) { if (!itemUnderMouse->parent() && !parentIsRoot && overEdgeOfItem) { accept = true; break; } bool parentsAreDifferent = parentIsRoot ? itemUnderMouse->parent() != 0 : (!itemUnderMouse->parent() || itemUnderMouse->parent()->text(0) != oldParentTitle); bool canHasSubFolder = !itemUnderMouse->parent() || itemUnderMouse->parent() == invisibleRootItem() || itemUnderMouse->parent()->text(0) == _bookmarksToolbar; if (!underMouseIsFolder && parentsAreDifferent) { if (!itemIsFolder) { accept = true; break; } else if (!itemUnderMouse->parent() || (dragItem->text(0) != itemUnderMouse->parent()->text(0) && canHasSubFolder)) { accept = true; break; } } else if (underMouseIsFolder) { if (itemIsFolder && itemUnderMouse->text(0) == _bookmarksToolbar && (parentIsRoot || oldParentTitle != _bookmarksToolbar)) { accept = true; break; } else if (!itemIsFolder && oldParentTitle != itemUnderMouse->text(0)) { accept = true; break; } } } } } QTreeWidget::dragMoveEvent(event); if (accept) { event->acceptProposedAction(); } else { event->ignore(); } } QList TreeWidget::allItems() { if (m_refreshAllItemsNeeded) { m_allTreeItems.clear(); iterateAllItems(0); m_refreshAllItemsNeeded = false; } return m_allTreeItems; } void TreeWidget::filterString(const QString &string) { QList _allItems = allItems(); QList parents; bool stringIsEmpty = string.isEmpty(); foreach (QTreeWidgetItem* item, _allItems) { bool containsString = stringIsEmpty || item->text(0).contains(string, Qt::CaseInsensitive); if (containsString) { item->setHidden(false); if (item->parent()) { if (!parents.contains(item->parent())) { parents << item->parent(); } } } else { item->setHidden(true); if (item->parent()) { item->parent()->setHidden(true); } } } for (int i = 0; i < parents.size(); ++i) { QTreeWidgetItem* parentItem = parents.at(i); parentItem->setHidden(false); if (stringIsEmpty) { parentItem->setExpanded(m_showMode == ItemsExpanded); } else { parentItem->setExpanded(true); } if (parentItem->parent() && !parents.contains(parentItem->parent())) { parents << parentItem->parent(); } } } bool TreeWidget::appendToParentItem(const QString &parentText, QTreeWidgetItem* item) { QList list = findItems(parentText, Qt::MatchExactly); if (list.count() == 0) { return false; } QTreeWidgetItem* parentItem = list.at(0); if (!parentItem) { return false; } m_allTreeItems.append(item); parentItem->addChild(item); return true; } bool TreeWidget::appendToParentItem(QTreeWidgetItem* parent, QTreeWidgetItem* item) { if (!parent || parent->treeWidget() != this) { return false; } m_allTreeItems.append(item); parent->addChild(item); return true; } bool TreeWidget::prependToParentItem(const QString &parentText, QTreeWidgetItem* item) { QList list = findItems(parentText, Qt::MatchExactly); if (list.count() == 0) { return false; } QTreeWidgetItem* parentItem = list.at(0); if (!parentItem) { return false; } m_allTreeItems.append(item); parentItem->insertChild(0, item); return true; } bool TreeWidget::prependToParentItem(QTreeWidgetItem* parent, QTreeWidgetItem* item) { if (!parent || parent->treeWidget() != this) { return false; } m_allTreeItems.append(item); parent->insertChild(0, item); return true; } void TreeWidget::deleteItem(QTreeWidgetItem* item) { // if (m_allTreeItems.contains(item)) { // m_allTreeItems.removeOne(item); // } m_refreshAllItemsNeeded = true; delete item; } void TreeWidget::deleteItems(const QList &items) { m_refreshAllItemsNeeded = true; qDeleteAll(items); } void TreeWidget::setDragDropReceiver(bool enable, QObject* receiver) { if (!receiver) { enable = false; } setDragEnabled(enable); viewport()->setAcceptDrops(enable); setDropIndicatorShown(enable); if (enable) { // TODO: It won't probably work in Qt5 #if QT_VERSION < 0x050000 model()->setSupportedDragActions(Qt::CopyAction); #endif connect(this, SIGNAL(folderParentChanged(QString,bool,bool*)), receiver, SLOT(changeFolderParent(QString,bool,bool*))); connect(this, SIGNAL(bookmarkParentChanged(int,QString,QString,bool*)), receiver, SLOT(changeBookmarkParent(int,QString,QString,bool*))); connect(this, SIGNAL(linkWasDroped(QUrl,QString,QVariant,QString,bool*)), receiver, SLOT(bookmarkDropedLink(QUrl,QString,QVariant,QString,bool*))); } else { disconnect(this, SIGNAL(folderParentChanged(QString,bool,bool*)), receiver, SLOT(changeFolderParent(QString,bool,bool*))); disconnect(this, SIGNAL(bookmarkParentChanged(int,QString,QString,bool*)), receiver, SLOT(changeBookmarkParent(int,QString,QString,bool*))); disconnect(this, SIGNAL(linkWasDroped(QUrl,QString,QVariant,QString,bool*)), receiver, SLOT(bookmarkDropedLink(QUrl,QString,QVariant,QString,bool*))); } } qupzilla-1.6.0/src/lib/tools/treewidget.h000066400000000000000000000063361226107126500204020ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef BOOKMARKSTREEWIDGET_H #define BOOKMARKSTREEWIDGET_H #include "qz_namespace.h" #include class QT_QUPZILLA_EXPORT TreeWidget : public QTreeWidget { Q_OBJECT public: explicit TreeWidget(QWidget* parent = 0); enum ItemShowMode { ItemsCollapsed = 0, ItemsExpanded = 1 }; ItemShowMode defaultItemShowMode() { return m_showMode; } void setDefaultItemShowMode(ItemShowMode mode) { m_showMode = mode; } QList allItems(); bool appendToParentItem(const QString &parentText, QTreeWidgetItem* item); bool appendToParentItem(QTreeWidgetItem* parent, QTreeWidgetItem* item); bool prependToParentItem(const QString &parentText, QTreeWidgetItem* item); bool prependToParentItem(QTreeWidgetItem* parent, QTreeWidgetItem* item); void addTopLevelItem(QTreeWidgetItem* item); void addTopLevelItems(const QList &items); void insertTopLevelItem(int index, QTreeWidgetItem* item); void insertTopLevelItems(int index, const QList &items); void deleteItem(QTreeWidgetItem* item); void deleteItems(const QList &items); void setDragDropReceiver(bool enable, QObject* receiver = 0); void setMimeType(const QString &mimeType); signals: void itemControlClicked(QTreeWidgetItem* item); void itemMiddleButtonClicked(QTreeWidgetItem* item); void linkWasDroped(const QUrl &url, const QString &title, const QVariant &imageVariant, const QString &folder, bool* ok); void bookmarkParentChanged(int id, const QString &newParent, const QString &oldParent, bool* ok); void folderParentChanged(const QString &name, bool isSubfolder, bool* ok); public slots: void filterString(const QString &string); void clear(); private slots: void sheduleRefresh(); private: void mousePressEvent(QMouseEvent* event); void iterateAllItems(QTreeWidgetItem* parent); Qt::DropActions supportedDropActions(); QStringList mimeTypes() const; QMimeData* mimeData(const QList items) const; bool dropMimeData(QTreeWidgetItem* parent, int, const QMimeData* data, Qt::DropAction action); void dragEnterEvent(QDragEnterEvent* event); void dragMoveEvent(QDragMoveEvent* event); bool m_refreshAllItemsNeeded; QList m_allTreeItems; ItemShowMode m_showMode; QString m_mimeType; }; #endif // BOOKMARKSTREEWIDGET_H qupzilla-1.6.0/src/lib/tools/widget.cpp000066400000000000000000000022671226107126500200540ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #include "widget.h" /* * class Widget */ Widget::Widget(QWidget* parent) : QWidget(parent) { } void Widget::slotResize(const QSize &size) { resize(size); } /* * class ResizableFrame */ ResizableFrame::ResizableFrame(QWidget* parent) : QFrame(parent) { } void ResizableFrame::slotResize(const QSize &size) { resize(size); } qupzilla-1.6.0/src/lib/tools/widget.h000066400000000000000000000025171226107126500175170ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef WIDGET_H #define WIDGET_H #include #include #include "qz_namespace.h" class QT_QUPZILLA_EXPORT Widget : public QWidget { Q_OBJECT public: explicit Widget(QWidget* parent = 0); signals: public slots: void slotResize(const QSize &size); }; class QT_QUPZILLA_EXPORT ResizableFrame : public QFrame { Q_OBJECT public: explicit ResizableFrame(QWidget* parent = 0); signals: public slots: void slotResize(const QSize &size); }; #endif // WIDGET_H qupzilla-1.6.0/src/lib/webview/000077500000000000000000000000001226107126500163665ustar00rootroot00000000000000qupzilla-1.6.0/src/lib/webview/jsalert.ui000066400000000000000000000135031226107126500203730ustar00rootroot00000000000000 jsAlert 0 0 554 374 0 Qt::Vertical 20 109 Qt::Horizontal 172 20 Qt::Horizontal 172 20 QFrame::StyledPanel QFrame::Raised true Qt::Horizontal 40 20 0 0 QDialogButtonBox::Ok Qt::Horizontal 40 20 Qt::Horizontal 40 20 Prevent this page from creating additional dialogs Qt::Horizontal 40 20 Qt::Vertical 20 109 QFrame::StyledPanel QFrame::Raised true 20 Qt::Horizontal 40 20 Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse Qt::Horizontal 40 20 ButtonBox QDialogButtonBox
    buttonbox.h
    qupzilla-1.6.0/src/lib/webview/jsconfirm.ui000066400000000000000000000112251226107126500207200ustar00rootroot00000000000000 jsConfirm 0 0 529 344 0 QFrame::StyledPanel QFrame::Raised true 20 Qt::Horizontal 20 20 Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse Qt::Horizontal 20 20 Qt::Horizontal 40 20 Qt::Horizontal 40 20 Qt::Vertical 20 40 Qt::Vertical 20 40 QFrame::StyledPanel QFrame::Raised true 0 Qt::Horizontal 40 20 QDialogButtonBox::Cancel|QDialogButtonBox::Ok Qt::Horizontal 40 20 ButtonBox QDialogButtonBox
    buttonbox.h
    qupzilla-1.6.0/src/lib/webview/jsprompt.ui000066400000000000000000000116351226107126500206110ustar00rootroot00000000000000 jsPrompt 0 0 400 300 0 Qt::Vertical 20 65 Qt::Horizontal 50 20 QFrame::StyledPanel QFrame::Raised true 20 20 20 10 Qt::Horizontal 40 20 Qt::Horizontal 40 20 Qt::Horizontal 50 20 QFrame::StyledPanel QFrame::Raised true 0 Qt::Horizontal 40 20 QDialogButtonBox::Cancel|QDialogButtonBox::Ok Qt::Horizontal 40 20 Qt::Vertical 20 65 ButtonBox QDialogButtonBox
    buttonbox.h
    qupzilla-1.6.0/src/lib/webview/macwebviewscroller.cpp000066400000000000000000000040161226107126500227720ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "macwebviewscroller.h" #include #include #include #include // Workaround for QTBUG-22269 (Extremely slow scrolling on Apple trackpads) // https://bugreports.qt-project.org/browse/QTBUG-22269 MacWebViewScroller::MacWebViewScroller(QWebView* view) : QObject(view) , m_view(view) , m_timerRunning(false) , m_delta(0) { view->installEventFilter(this); } bool MacWebViewScroller::eventFilter(QObject* obj, QEvent* event) { if (obj != m_view || event->type() != QEvent::Wheel) { return false; } QWheelEvent* ev = static_cast(event); if (ev->buttons() != Qt::NoButton || ev->modifiers() != Qt::NoModifier) { return false; } if (!m_timerRunning) { m_delta = ev->delta(); m_pos = ev->pos(); m_globalPos = ev->globalPos(); QTimer::singleShot(25, this, SLOT(sendWheelEvent())); m_timerRunning = true; } else { m_delta += ev->delta(); } return true; } void MacWebViewScroller::sendWheelEvent() { QWheelEvent ev(m_pos, m_delta, Qt::NoButton, Qt::NoModifier); m_view->event(&ev); m_timerRunning = false; } qupzilla-1.6.0/src/lib/webview/macwebviewscroller.h000066400000000000000000000025041226107126500224370ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef MACWEBVIEWSCROLLER_H #define MACWEBVIEWSCROLLER_H #include #include class QWheelEvent; class QWebView; class MacWebViewScroller : public QObject { Q_OBJECT public: explicit MacWebViewScroller(QWebView* view); bool eventFilter(QObject* obj, QEvent* event); private slots: void sendWheelEvent(); private: QWebView* m_view; bool m_timerRunning; int m_delta; QPoint m_pos; QPoint m_globalPos; }; #endif // MACWEBVIEWSCROLLER_H qupzilla-1.6.0/src/lib/webview/searchtoolbar.cpp000066400000000000000000000117271226107126500217320ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "searchtoolbar.h" #include "tabbedwebview.h" #include "lineedit.h" #include "ui_searchtoolbar.h" #include "iconprovider.h" #include #include SearchToolBar::SearchToolBar(WebView* view, QWidget* parent) : AnimatedWidget(AnimatedWidget::Up, 300, parent) , ui(new Ui::SearchToolbar) , m_view(view) , m_findFlags(0) { setAttribute(Qt::WA_DeleteOnClose); ui->setupUi(widget()); ui->closeButton->setIcon(qIconProvider->standardIcon(QStyle::SP_DialogCloseButton)); ui->next->setIcon(qIconProvider->standardIcon(QStyle::SP_ArrowForward)); ui->previous->setIcon(qIconProvider->standardIcon(QStyle::SP_ArrowBack)); connect(ui->closeButton, SIGNAL(clicked()), this, SLOT(hide())); connect(ui->lineEdit, SIGNAL(textChanged(QString)), this, SLOT(findNext())); connect(ui->lineEdit, SIGNAL(returnPressed()), this, SLOT(findNext())); connect(ui->next, SIGNAL(clicked()), this, SLOT(findNext())); connect(ui->previous, SIGNAL(clicked()), this, SLOT(findPrevious())); connect(ui->highligh, SIGNAL(clicked()), this, SLOT(highlightChanged())); connect(ui->caseSensitive, SIGNAL(clicked()), this, SLOT(caseSensitivityChanged())); startAnimation(); QShortcut* findNextAction = new QShortcut(QKeySequence("F3"), this); connect(findNextAction, SIGNAL(activated()), this, SLOT(findNext())); QShortcut* findPreviousAction = new QShortcut(QKeySequence("Shift+F3"), this); connect(findPreviousAction, SIGNAL(activated()), this, SLOT(findPrevious())); parent->installEventFilter(this); } void SearchToolBar::setWebView(WebView* view) { m_view = view; } void SearchToolBar::showMinimalInPopupWindow() { // Show only essentials widget + set minimum width ui->highligh->hide(); ui->caseSensitive->hide(); ui->results->hide(); ui->horizontalLayout->setSpacing(2); ui->horizontalLayout->setContentsMargins(2, 6, 2, 6); setMinimumWidth(260); } void SearchToolBar::focusSearchLine() { ui->lineEdit->setFocus(); } void SearchToolBar::hide() { AnimatedWidget::hide(); searchText(QString()); m_view->setFocus(); } void SearchToolBar::findNext() { m_findFlags = QWebPage::FindWrapsAroundDocument; updateFindFlags(); searchText(ui->lineEdit->text()); } void SearchToolBar::findPrevious() { m_findFlags = QWebPage::FindBackward | QWebPage::FindWrapsAroundDocument; updateFindFlags(); searchText(ui->lineEdit->text()); } void SearchToolBar::updateFindFlags() { if (ui->caseSensitive->isChecked()) { m_findFlags = m_findFlags | QWebPage::FindCaseSensitively; } else { m_findFlags = m_findFlags & ~QWebPage::FindCaseSensitively; } } void SearchToolBar::highlightChanged() { if (ui->highligh->isChecked()) { m_view->findText(ui->lineEdit->text(), m_findFlags | QWebPage::HighlightAllOccurrences); } else { m_view->findText(QString(), QWebPage::HighlightAllOccurrences); } } void SearchToolBar::caseSensitivityChanged() { updateFindFlags(); searchText(ui->lineEdit->text()); } void SearchToolBar::searchText(const QString &text) { // Clear highlighting on page m_view->findText(QString(), QWebPage::HighlightAllOccurrences); bool found = m_view->findText(text, m_findFlags); if (text.isEmpty()) { found = true; } if (ui->highligh->isChecked()) { m_findFlags = QWebPage::HighlightAllOccurrences; updateFindFlags(); m_view->findText(text, m_findFlags); } else { m_view->findText(QString(), QWebPage::HighlightAllOccurrences); } if (!found) { ui->results->setText(tr("No results found.")); } else { ui->results->clear(); } ui->lineEdit->setProperty("notfound", QVariant(!found)); ui->lineEdit->style()->unpolish(ui->lineEdit); ui->lineEdit->style()->polish(ui->lineEdit); } bool SearchToolBar::eventFilter(QObject* obj, QEvent* event) { Q_UNUSED(obj); if (event->type() == QEvent::KeyPress && static_cast(event)->key() == Qt::Key_Escape) { hide(); } return false; } SearchToolBar::~SearchToolBar() { delete ui; } qupzilla-1.6.0/src/lib/webview/searchtoolbar.h000066400000000000000000000033241226107126500213710ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SEARCHTOOLBAR_H #define SEARCHTOOLBAR_H #include #include "qz_namespace.h" #include "animatedwidget.h" namespace Ui { class SearchToolbar; } class QLineEdit; class WebView; class LineEdit; class QT_QUPZILLA_EXPORT SearchToolBar : public AnimatedWidget { Q_OBJECT public: explicit SearchToolBar(WebView* view, QWidget* parent = 0); ~SearchToolBar(); void setWebView(WebView* view); void showMinimalInPopupWindow(); void focusSearchLine(); bool eventFilter(QObject* obj, QEvent* event); signals: public slots: void searchText(const QString &text); void updateFindFlags(); void highlightChanged(); void caseSensitivityChanged(); void findNext(); void findPrevious(); void hide(); private: Ui::SearchToolbar* ui; WebView* m_view; QWebPage::FindFlags m_findFlags; }; #endif // SEARCHTOOLBAR_H qupzilla-1.6.0/src/lib/webview/searchtoolbar.ui000066400000000000000000000065461226107126500215700ustar00rootroot00000000000000 SearchToolbar 0 0 855 40 4 4 0 0 true Search: 100 0 200 16777215 Search... 0 0 true 0 0 true Highlight true Case sensitive true Qt::Horizontal 5 1 FocusSelectLineEdit QLineEdit
    focusselectlineedit.h
    MacToolButton QToolButton
    mactoolbutton.h
    qupzilla-1.6.0/src/lib/webview/siteinfo.cpp000066400000000000000000000240711226107126500207160ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "siteinfo.h" #include "ui_siteinfo.h" #include "listitemdelegate.h" #include "webview.h" #include "webpage.h" #include "mainapplication.h" #include "downloaditem.h" #include "certificateinfowidget.h" #include "qztools.h" #include "iconprovider.h" #include #include #include #include #include #include #include #include #include QString SiteInfo::showCertInfo(const QString &string) { if (string.isEmpty()) { return tr(""); } else { return string; } } SiteInfo::SiteInfo(WebView* view, QWidget* parent) : QDialog(parent) , ui(new Ui::SiteInfo) , m_certWidget(0) , m_view(view) { setAttribute(Qt::WA_DeleteOnClose); ui->setupUi(this); ListItemDelegate* delegate = new ListItemDelegate(24, ui->listWidget); delegate->setUpdateParentHeight(true); delegate->setUniformItemSizes(true); ui->listWidget->setItemDelegate(delegate); ui->listWidget->item(0)->setIcon(QIcon::fromTheme("document-properties", QIcon(":/icons/preferences/document-properties.png"))); ui->listWidget->item(1)->setIcon(QIcon::fromTheme("applications-graphics", QIcon(":/icons/preferences/applications-graphics.png"))); ui->listWidget->item(2)->setIcon(QIcon::fromTheme("text-x-sql", QIcon(":/icons/preferences/text-x-sql.png"))); ui->listWidget->item(3)->setIcon(QIcon::fromTheme("dialog-password", QIcon(":/icons/preferences/dialog-password.png"))); ui->listWidget->item(0)->setSelected(true); WebPage* webPage = view->page(); QWebFrame* frame = view->page()->mainFrame(); QString title = view->title(); QSslCertificate cert = webPage->sslCertificate(); m_baseUrl = frame->baseUrl(); //GENERAL ui->heading->setText(QString("%1:").arg(title)); ui->siteAddress->setText(view->url().toString()); ui->sizeLabel->setText(QzTools::fileSizeToString(webPage->totalBytes())); QString encoding; //Meta QWebElementCollection meta = frame->findAllElements("meta"); for (int i = 0; i < meta.count(); i++) { QWebElement element = meta.at(i); QString content = element.attribute("content"); QString name = element.attribute("name"); if (name.isEmpty()) { name = element.attribute("http-equiv"); } if (!element.attribute("charset").isEmpty()) { encoding = element.attribute("charset"); } if (content.contains(QLatin1String("charset="))) { encoding = content.mid(content.indexOf(QLatin1String("charset=")) + 8); } if (content.isEmpty() || name.isEmpty()) { continue; } QTreeWidgetItem* item = new QTreeWidgetItem(ui->treeTags); item->setText(0, name); item->setText(1, content); ui->treeTags->addTopLevelItem(item); } if (encoding.isEmpty()) { encoding = mApp->webSettings()->defaultTextEncoding(); } ui->encodingLabel->setText(encoding.toUpper()); //MEDIA QWebElementCollection img = frame->findAllElements("img"); for (int i = 0; i < img.count(); i++) { QWebElement element = img.at(i); QString src = element.attribute("src"); QString alt = element.attribute("alt"); if (alt.isEmpty()) { if (src.indexOf(QLatin1Char('/')) == -1) { alt = src; } else { int pos = src.lastIndexOf(QLatin1Char('/')); alt = src.mid(pos); alt.remove(QLatin1Char('/')); } } if (src.isEmpty() || alt.isEmpty()) { continue; } QTreeWidgetItem* item = new QTreeWidgetItem(ui->treeImages); item->setText(0, alt); item->setText(1, src); ui->treeImages->addTopLevelItem(item); } //DATABASES const QList &databases = frame->securityOrigin().databases(); int counter = 0; foreach (const QWebDatabase &b, databases) { QListWidgetItem* item = new QListWidgetItem(ui->databaseList); item->setText(b.displayName()); item->setData(Qt::UserRole + 10, counter); ++counter; } if (counter == 0) { QListWidgetItem* item = new QListWidgetItem(ui->databaseList); item->setText(tr("No databases are used by this page.")); item->setFlags(item->flags() & Qt::ItemIsSelectable); } //SECURITY if (QzTools::isCertificateValid(cert)) { ui->securityLabel->setText(tr("Connection is Encrypted.")); ui->certLabel->setText(tr("Your connection to this page is secured with this certificate: ")); m_certWidget = new CertificateInfoWidget(cert); ui->certFrame->addWidget(m_certWidget); } else { ui->securityLabel->setText(tr("Connection Not Encrypted.")); ui->certLabel->setText(tr("Your connection to this page is not secured!")); } connect(ui->listWidget, SIGNAL(currentRowChanged(int)), ui->stackedWidget, SLOT(setCurrentIndex(int))); connect(ui->secDetailsButton, SIGNAL(clicked()), this, SLOT(securityDetailsClicked())); connect(ui->saveButton, SIGNAL(clicked(QAbstractButton*)), this, SLOT(downloadImage())); connect(ui->databaseList, SIGNAL(currentItemChanged(QListWidgetItem*,QListWidgetItem*)), this, SLOT(databaseItemChanged(QListWidgetItem*))); connect(ui->treeImages, SIGNAL(currentItemChanged(QTreeWidgetItem*,QTreeWidgetItem*)), this, SLOT(showImagePreview(QTreeWidgetItem*))); connect(ui->treeImages, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(imagesCustomContextMenuRequested(QPoint))); ui->treeImages->setContextMenuPolicy(Qt::CustomContextMenu); ui->treeImages->sortByColumn(-1); ui->treeTags->sortByColumn(-1); QzTools::setWmClass("Site Info", this); } void SiteInfo::imagesCustomContextMenuRequested(const QPoint &p) { QTreeWidgetItem* item = ui->treeImages->itemAt(p); if (!item) { return; } QMenu menu; menu.addAction(QIcon::fromTheme("edit-copy"), tr("Copy Image Location"), this, SLOT(copyActionData()))->setData(item->text(1)); menu.addAction(tr("Copy Image Name"), this, SLOT(copyActionData()))->setData(item->text(0)); menu.addSeparator(); menu.addAction(QIcon::fromTheme("document-save"), tr("Save Image to Disk"), this, SLOT(downloadImage())); menu.exec(ui->treeImages->viewport()->mapToGlobal(p)); } void SiteInfo::databaseItemChanged(QListWidgetItem* item) { if (!item) { return; } int id = item->data(Qt::UserRole + 10).toInt(); const QList &list = m_view->page()->mainFrame()->securityOrigin().databases(); if (id > list.count() - 1) { return; } const QWebDatabase db = list.at(id); ui->databaseName->setText(QString("%1 (%2)").arg(db.displayName(), db.name())); ui->databasePath->setText(db.fileName()); ui->databaseSize->setText(QzTools::fileSizeToString(db.size())); } void SiteInfo::copyActionData() { if (QAction* action = qobject_cast(sender())) { qApp->clipboard()->setText(action->data().toString()); } } void SiteInfo::downloadImage() { QTreeWidgetItem* item = ui->treeImages->currentItem(); if (!item) { return; } if (m_activePixmap.isNull()) { QMessageBox::warning(this, tr("Error!"), tr("This preview is not available!")); return; } QString imageFileName = QzTools::getFileNameFromUrl(QUrl(item->text(1))); QString filePath = QzTools::getSaveFileName("SiteInfo-DownloadImage", this, tr("Save image..."), QDir::homePath() + QDir::separator() + imageFileName); if (filePath.isEmpty()) { return; } if (!m_activePixmap.save(filePath)) { QMessageBox::critical(this, tr("Error!"), tr("Cannot write to file!")); return; } } void SiteInfo::showImagePreview(QTreeWidgetItem* item) { if (!item) { return; } QUrl imageUrl = QUrl::fromEncoded(item->text(1).toUtf8()); if (imageUrl.isRelative()) { imageUrl = m_baseUrl.resolved(imageUrl); } QGraphicsScene* scene = new QGraphicsScene(ui->mediaPreview); if (imageUrl.scheme() == QLatin1String("data")) { QByteArray encodedUrl = item->text(1).toUtf8(); QByteArray imageData = encodedUrl.mid(encodedUrl.indexOf(',') + 1); m_activePixmap = QzTools::pixmapFromByteArray(imageData); } else if (imageUrl.scheme() == QLatin1String("file")) { m_activePixmap = QPixmap(imageUrl.toLocalFile()); } else if (imageUrl.scheme() == QLatin1String("qrc")) { m_activePixmap = QPixmap(imageUrl.toString().mid(3)); // Remove qrc from url } else { QIODevice* cacheData = mApp->networkCache()->data(imageUrl); if (!cacheData) { m_activePixmap = QPixmap(); } else { m_activePixmap.loadFromData(cacheData->readAll()); } } if (m_activePixmap.isNull()) { scene->addText(tr("Preview not available")); } else { scene->addPixmap(m_activePixmap); } ui->mediaPreview->setScene(scene); } void SiteInfo::securityDetailsClicked() { ui->listWidget->setCurrentRow(3); } SiteInfo::~SiteInfo() { delete ui; delete m_certWidget; } qupzilla-1.6.0/src/lib/webview/siteinfo.h000066400000000000000000000033741226107126500203660ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SITEINFO_H #define SITEINFO_H #include "qz_namespace.h" #include #include namespace Ui { class SiteInfo; } class QListWidgetItem; class QTreeWidgetItem; class WebView; class CertificateInfoWidget; class ListItemDelegate; class QT_QUPZILLA_EXPORT SiteInfo : public QDialog { Q_OBJECT public: explicit SiteInfo(WebView* view, QWidget* parent = 0); ~SiteInfo(); static QString showCertInfo(const QString &string); private slots: void databaseItemChanged(QListWidgetItem* item); void showImagePreview(QTreeWidgetItem* item); void securityDetailsClicked(); void imagesCustomContextMenuRequested(const QPoint &p); void copyActionData(); void downloadImage(); private: Ui::SiteInfo* ui; CertificateInfoWidget* m_certWidget; WebView* m_view; ListItemDelegate* m_delegate; QPixmap m_activePixmap; QUrl m_baseUrl; }; #endif // SITEINFO_H qupzilla-1.6.0/src/lib/webview/siteinfo.ui000066400000000000000000000360441226107126500205540ustar00rootroot00000000000000 SiteInfo 0 0 590 492 Site Info Qt::NoFocus General Media Databases Security 550 16777215 Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse Qt::Horizontal QDialogButtonBox::Ok 0 0 0 QFormLayout::AllNonFixedFieldsGrow Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse Size: Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse 0 0 460 16777215 Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse 0 0 Site address: Encoding: Meta tags of site: true 200 Tag Value 0 0 <b>Security information</b> 0 0 Details Qt::Horizontal QSizePolicy::Fixed 20 20 Qt::Horizontal 40 20 Qt::Vertical 0 0 false true 200 Image Image address QDialogButtonBox::Save 16777215 20 <b>Preview</b> 16777215 120 <b>Database details</b> Name: Path: Size: 450 0 <database not selected> Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse 450 0 <database not selected> Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse 450 0 <database not selected> Qt::LinksAccessibleByMouse|Qt::TextSelectableByMouse Qt::Vertical 20 124 0 0 Qt::Vertical QSizePolicy::Expanding 20 40 SqueezeLabelV2 QLabel
    squeezelabelv2.h
    HorizontalListWidget QListWidget
    horizontallistwidget.h
    buttonBox accepted() SiteInfo accept() 248 254 157 274 buttonBox rejected() SiteInfo reject() 316 260 286 274
    qupzilla-1.6.0/src/lib/webview/siteinfowidget.cpp000066400000000000000000000063241226107126500221230ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "qztools.h" #include "siteinfowidget.h" #include "ui_siteinfowidget.h" #include "qupzilla.h" #include "mainapplication.h" #include "webpage.h" #include "tabbedwebview.h" #include #include SiteInfoWidget::SiteInfoWidget(QupZilla* mainClass, QWidget* parent) : LocationBarPopup(parent) , ui(new Ui::SiteInfoWidget) , p_QupZilla(mainClass) { this->setAttribute(Qt::WA_DeleteOnClose); ui->setupUi(this); setPopupAlignment(Qt::AlignLeft); WebView* view = p_QupZilla->weView(); WebPage* webPage = view->page(); QUrl url = view->url(); if (QzTools::isCertificateValid(webPage->sslCertificate())) { ui->secureLabel->setText(tr("Your connection to this site is secured.")); ui->secureIcon->setPixmap(QPixmap(":/icons/locationbar/accept.png")); } else { ui->secureLabel->setText(tr("Your connection to this site is unsecured.")); ui->secureIcon->setPixmap(QPixmap(":/icons/locationbar/warning.png")); } QString scheme = url.scheme(); QSqlQuery query; QString host = url.host(); query.prepare("SELECT sum(count) FROM history WHERE url LIKE ?"); query.addBindValue(QString("%1://%2%").arg(scheme, host)); query.exec(); if (query.next()) { int count = query.value(0).toInt(); if (count > 3) { ui->historyLabel->setText(tr("This is your %1 visit of this site.").arg(QString::number(count) + ".")); ui->historyIcon->setPixmap(QPixmap(":/icons/locationbar/accept.png")); } else if (count == 0) { ui->historyLabel->setText(tr("You have never visited this site before.")); ui->historyIcon->setPixmap(QPixmap(":/icons/locationbar/warning.png")); } else { ui->historyIcon->setPixmap(QPixmap(":/icons/locationbar/warning.png")); QString text; if (count == 1) { text = tr("first"); } else if (count == 2) { text = tr("second"); } else if (count == 3) { text = tr("third"); } ui->historyLabel->setText(tr("This is your %1 visit of this site.").arg(text)); } } connect(ui->pushButton, SIGNAL(clicked()), p_QupZilla, SLOT(showPageInfo())); } SiteInfoWidget::~SiteInfoWidget() { delete ui; } qupzilla-1.6.0/src/lib/webview/siteinfowidget.h000066400000000000000000000024471226107126500215720ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SITEINFOWIDGET_H #define SITEINFOWIDGET_H #include #include "qz_namespace.h" #include namespace Ui { class SiteInfoWidget; } class QupZilla; class QT_QUPZILLA_EXPORT SiteInfoWidget : public LocationBarPopup { Q_OBJECT public: explicit SiteInfoWidget(QupZilla* mainClass, QWidget* parent = 0); ~SiteInfoWidget(); private: Ui::SiteInfoWidget* ui; QupZilla* p_QupZilla; }; #endif // SITEINFOWIDGET_H qupzilla-1.6.0/src/lib/webview/siteinfowidget.ui000066400000000000000000000056521226107126500217610ustar00rootroot00000000000000 SiteInfoWidget 0 0 117 89 0 0 0 QFrame::NoFrame 15 6 Qt::Horizontal QSizePolicy::Expanding 10 10 0 0 More... Frame QFrame
    frame.h
    1
    qupzilla-1.6.0/src/lib/webview/tabbar.cpp000066400000000000000000000516031226107126500203320ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "tabbar.h" #include "tabwidget.h" #include "tabpreview.h" #include "qupzilla.h" #include "webtab.h" #include "iconprovider.h" #include "toolbutton.h" #include "settings.h" #include "tabbedwebview.h" #include "mainapplication.h" #include "pluginproxy.h" #include "proxystyle.h" #include #include #include #include #include #include #include #include #include #include #include TabBar::TabBar(QupZilla* mainClass, TabWidget* tabWidget) : ComboTabBar() , p_QupZilla(mainClass) , m_tabWidget(tabWidget) , m_tabPreview(new TabPreview(mainClass, mainClass)) , m_showTabPreviews(false) , m_clickedTab(0) , m_normalTabWidth(0) , m_activeTabWidth(0) { setObjectName("tabbar"); setContextMenuPolicy(Qt::CustomContextMenu); setElideMode(Qt::ElideRight); setDocumentMode(true); setFocusPolicy(Qt::NoFocus); setTabsClosable(true); setMouseTracking(true); setMovable(true); setAcceptDrops(true); connect(this, SIGNAL(currentChanged(int)), this, SLOT(currentTabChanged(int))); connect(this, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(contextMenuRequested(QPoint))); m_tabPreviewShowTimer = new QTimer(this); m_tabPreviewShowTimer->setInterval(300); m_tabPreviewShowTimer->setSingleShot(true); connect(m_tabPreviewShowTimer, SIGNAL(timeout()), this, SLOT(showTabPreview())); m_tabPreviewHideTimer = new QTimer(this); m_tabPreviewHideTimer->setInterval(300); m_tabPreviewHideTimer->setSingleShot(true); connect(m_tabPreviewHideTimer, SIGNAL(timeout()), m_tabPreview, SLOT(hideAnimated())); // ComboTabBar features setUsesScrollButtons(true); setCloseButtonsToolTip(QupZilla::tr("Close Tab")); setMaxVisiblePinnedTab(0); connect(this, SIGNAL(overFlowChanged(bool)), this, SLOT(overFlowChange(bool))); connect(this, SIGNAL(scrollBarValueChanged(int)), this, SLOT(hideTabPreview())); } void TabBar::loadSettings() { Settings settings; settings.beginGroup("Browser-Tabs-Settings"); m_hideTabBarWithOneTab = settings.value("hideTabsWithOneTab", false).toBool(); m_tabPreview->setAnimationsEnabled(settings.value("tabPreviewAnimationsEnabled", true).toBool()); m_showTabPreviews = settings.value("showTabPreviews", true).toBool(); bool activateLastTab = settings.value("ActivateLastTabWhenClosingActual", false).toBool(); settings.endGroup(); setSelectionBehaviorOnRemove(activateLastTab ? QTabBar::SelectPreviousTab : QTabBar::SelectRightTab); setUpLayout(); } void TabBar::updateVisibilityWithFullscreen(bool visible) { // It is needed to save original geometry, otherwise // tabbar will get 3px height in fullscreen once it was hidden // Make sure to honor user preference if (visible) { visible = !(count() == 1 && m_hideTabBarWithOneTab); } ComboTabBar::setVisible(visible); if (visible) { setGeometry(m_originalGeometry); emit showButtons(); } else { m_originalGeometry = geometry(); emit hideButtons(); } } void TabBar::setVisible(bool visible) { if (visible && p_QupZilla->isFullScreen()) { return; } // Make sure to honor user preference if (visible) { visible = !(count() == 1 && m_hideTabBarWithOneTab); } if (visible) { emit showButtons(); } else { m_originalGeometry = geometry(); emit hideButtons(); } hideTabPreview(false); ComboTabBar::setVisible(visible); } void TabBar::contextMenuRequested(const QPoint &position) { int index = tabAt(position); m_clickedTab = index; QMenu menu; menu.addAction(QIcon::fromTheme("tab-new", QIcon(":/icons/menu/new-tab.png")), tr("&New tab"), p_QupZilla, SLOT(addTab())); menu.addSeparator(); if (index != -1) { WebTab* webTab = qobject_cast(m_tabWidget->widget(m_clickedTab)); if (!webTab) { return; } if (p_QupZilla->weView(m_clickedTab)->isLoading()) { menu.addAction(qIconProvider->standardIcon(QStyle::SP_BrowserStop), tr("&Stop Tab"), this, SLOT(stopTab())); } else { menu.addAction(qIconProvider->standardIcon(QStyle::SP_BrowserReload), tr("&Reload Tab"), this, SLOT(reloadTab())); } menu.addAction(QIcon::fromTheme("tab-duplicate"), tr("&Duplicate Tab"), this, SLOT(duplicateTab())); if (count() > 1 && !webTab->isPinned()) { menu.addAction(QIcon::fromTheme("tab-detach"), tr("D&etach Tab"), this, SLOT(detachTab())); } menu.addAction(webTab->isPinned() ? tr("Un&pin Tab") : tr("&Pin Tab"), this, SLOT(pinTab())); menu.addSeparator(); menu.addAction(tr("Re&load All Tabs"), m_tabWidget, SLOT(reloadAllTabs())); menu.addAction(tr("&Bookmark This Tab"), this, SLOT(bookmarkTab())); menu.addAction(tr("Bookmark &All Tabs"), p_QupZilla, SLOT(bookmarkAllTabs())); menu.addSeparator(); QAction* action = p_QupZilla->actionRestoreTab(); action->setEnabled(m_tabWidget->canRestoreTab()); menu.addAction(action); menu.addSeparator(); menu.addAction(tr("Close Ot&her Tabs"), this, SLOT(closeAllButCurrent())); menu.addAction(QIcon::fromTheme("window-close"), tr("Cl&ose"), this, SLOT(closeTab())); menu.addSeparator(); } else { menu.addAction(tr("Reloa&d All Tabs"), m_tabWidget, SLOT(reloadAllTabs())); menu.addAction(tr("Bookmark &All Tabs"), p_QupZilla, SLOT(bookmarkAllTabs())); menu.addSeparator(); QAction* action = menu.addAction(QIcon::fromTheme("user-trash"), tr("Restore &Closed Tab"), m_tabWidget, SLOT(restoreClosedTab())); action->setEnabled(m_tabWidget->canRestoreTab()); } // Prevent choosing first option with double rightclick const QPoint pos = mapToGlobal(position); QPoint p(pos.x(), pos.y() + 1); menu.exec(p); p_QupZilla->actionRestoreTab()->setEnabled(true); } void TabBar::closeAllButCurrent() { QMessageBox::StandardButton button = QMessageBox::question(this, tr("Close Tabs"), tr("Do you really want to close other tabs?"), QMessageBox::Yes | QMessageBox::No, QMessageBox::No); if (button == QMessageBox::Yes) { emit closeAllButCurrent(m_clickedTab); } } QSize TabBar::tabSizeHint(int index, bool fast) const { if (!isVisible() || !mApp->proxyStyle()) { // Don't calculate it when tabbar is not visible // It produces invalid size anyway // // We also need ProxyStyle to be set before calculating minimum sizes for tabs return QSize(-1, -1); } static int PINNED_TAB_WIDTH = comboTabBarPixelMetric(ComboTabBar::PinnedTabWidth); static int MINIMUM_ACTIVE_TAB_WIDTH = comboTabBarPixelMetric(ComboTabBar::ActiveTabMinimumWidth); static int MAXIMUM_TAB_WIDTH = comboTabBarPixelMetric(ComboTabBar::NormalTabMaximumWidth); static int MINIMUM_TAB_WIDTH = comboTabBarPixelMetric(ComboTabBar::NormalTabMinimumWidth); QSize size = ComboTabBar::tabSizeHint(index); // The overflowed tabs have similar size and we can use this fast method if (fast) { size.setWidth(index >= pinnedTabsCount() ? MINIMUM_TAB_WIDTH : PINNED_TAB_WIDTH); return size; } WebTab* webTab = qobject_cast(m_tabWidget->widget(index)); TabBar* tabBar = const_cast (this); if (webTab && webTab->isPinned()) { size.setWidth(PINNED_TAB_WIDTH); } else { int availableWidth = mainTabBarWidth(); if (!m_tabWidget->buttonListTabs()->isForceHidden()) { availableWidth -= comboTabBarPixelMetric(ExtraReservedWidth); } if (availableWidth < 0) { return QSize(-1, -1); } const int normalTabsCount = ComboTabBar::normalTabsCount(); if (availableWidth >= MAXIMUM_TAB_WIDTH * normalTabsCount) { m_normalTabWidth = MAXIMUM_TAB_WIDTH; size.setWidth(m_normalTabWidth); } else if (normalTabsCount > 0) { int maxWidthForTab = availableWidth / normalTabsCount; int realTabWidth = maxWidthForTab; bool adjustingActiveTab = false; if (realTabWidth < MINIMUM_ACTIVE_TAB_WIDTH) { maxWidthForTab = normalTabsCount > 1 ? (availableWidth - MINIMUM_ACTIVE_TAB_WIDTH) / (normalTabsCount - 1) : 0; realTabWidth = MINIMUM_ACTIVE_TAB_WIDTH; adjustingActiveTab = true; } bool tryAdjusting = availableWidth >= MINIMUM_TAB_WIDTH * normalTabsCount; if (tabsClosable() && availableWidth < (MINIMUM_TAB_WIDTH + 25) * normalTabsCount) { // Hiding close buttons to save some space tabBar->setTabsClosable(false); tabBar->showCloseButton(currentIndex()); } if (tryAdjusting) { m_normalTabWidth = maxWidthForTab; // Fill any empty space (we've got from rounding) with active tab if (index == mainTabBarCurrentIndex()) { if (adjustingActiveTab) { m_activeTabWidth = (availableWidth - MINIMUM_ACTIVE_TAB_WIDTH - maxWidthForTab * (normalTabsCount - 1)) + realTabWidth; } else { m_activeTabWidth = (availableWidth - maxWidthForTab * normalTabsCount) + maxWidthForTab; } size.setWidth(m_activeTabWidth); } else { size.setWidth(m_normalTabWidth); } } } // Restore close buttons according to preferences if (!tabsClosable() && availableWidth >= (MINIMUM_TAB_WIDTH + 25) * normalTabsCount) { tabBar->setTabsClosable(true); // Hide close buttons on pinned tabs for (int i = 0; i < count(); ++i) { tabBar->updatePinnedTabCloseButton(i); } } } if (index == count() - 1) { WebTab* lastMainActiveTab = qobject_cast(m_tabWidget->widget(mainTabBarCurrentIndex())); int xForAddTabButton = pinTabBarWidth() + normalTabsCount() * m_normalTabWidth; if (lastMainActiveTab && m_activeTabWidth > m_normalTabWidth) { xForAddTabButton += m_activeTabWidth - m_normalTabWidth; } // RTL Support if (QApplication::layoutDirection() == Qt::RightToLeft) { xForAddTabButton = width() - xForAddTabButton; } emit tabBar->moveAddTabButton(xForAddTabButton); } return size; } int TabBar::comboTabBarPixelMetric(ComboTabBar::SizeType sizeType) const { if (!mApp->proxyStyle() || !isVisible()) { return -1; } switch (sizeType) { case ComboTabBar::PinnedTabWidth: return 16 + mApp->proxyStyle()->pixelMetric(QStyle::PM_TabBarTabHSpace, 0, this); case ComboTabBar::ActiveTabMinimumWidth: case ComboTabBar::NormalTabMinimumWidth: case ComboTabBar::OverflowedTabWidth: return 100; case ComboTabBar::NormalTabMaximumWidth: return 250; case ComboTabBar::ExtraReservedWidth: return m_tabWidget->buttonListTabs()->width() + m_tabWidget->buttonAddTab()->width(); default: break; } return -1; } void TabBar::showCloseButton(int index) { if (!validIndex(index)) { return; } WebTab* webTab = qobject_cast(m_tabWidget->widget(index)); QAbstractButton* button = qobject_cast(tabButton(index, closeButtonPosition())); if (button || (webTab && webTab->isPinned())) { return; } insertCloseButton(index); } void TabBar::hideCloseButton(int index) { if (!validIndex(index) || tabsClosable()) { return; } CloseButton* button = qobject_cast(tabButton(index, closeButtonPosition())); if (!button) { return; } setTabButton(index, closeButtonPosition(), 0); button->deleteLater(); } void TabBar::updatePinnedTabCloseButton(int index) { if (!validIndex(index)) { return; } WebTab* webTab = qobject_cast(m_tabWidget->widget(index)); QAbstractButton* button = qobject_cast(tabButton(index, closeButtonPosition())); bool pinned = webTab && webTab->isPinned(); if (pinned) { if (button) { button->hide(); } } else { if (button) { button->show(); } else { showCloseButton(index); } } } void TabBar::closeCurrentTab() { m_tabWidget->closeTab(currentIndex()); } void TabBar::closeTabFromButton() { QWidget* button = qobject_cast(sender()); int tabToClose = -1; for (int i = 0; i < count(); ++i) { if (tabButton(i, closeButtonPosition()) == button) { tabToClose = i; break; } } if (tabToClose != -1) { m_tabWidget->closeTab(tabToClose); } } void TabBar::currentTabChanged(int index) { if (!validIndex(index)) { return; } hideTabPreview(false); showCloseButton(index); hideCloseButton(m_tabWidget->lastTabIndex()); ensureVisible(index); m_tabWidget->currentTabChanged(index); } void TabBar::bookmarkTab() { TabbedWebView* view = p_QupZilla->weView(m_clickedTab); if (!view) { return; } WebTab* tab = view->webTab(); p_QupZilla->addBookmark(tab->url(), tab->title(), tab->icon()); } void TabBar::pinTab() { WebTab* webTab = qobject_cast(m_tabWidget->widget(m_clickedTab)); if (!webTab) { return; } webTab->pinTab(m_clickedTab); // We need to recalculate size of all tabs and repaint tabbar // Unfortunately, Qt doesn't offer refresh() function as a public API // So we are calling the lightest function that calls d->refresh() setElideMode(elideMode()); } void TabBar::overrideTabTextColor(int index, QColor color) { if (!m_originalTabTextColor.isValid()) { m_originalTabTextColor = tabTextColor(index); } setTabTextColor(index, color); } void TabBar::restoreTabTextColor(int index) { setTabTextColor(index, m_originalTabTextColor); } void TabBar::showTabPreview(bool delayed) { if (delayed) { int index = tabAt(mapFromGlobal(QCursor::pos())); if (index == -1 || QApplication::mouseButtons() != Qt::NoButton) { return; } m_tabPreview->setPreviewIndex(index); m_tabPreviewShowTimer->stop(); } WebTab* webTab = qobject_cast(m_tabWidget->widget(m_tabPreview->previewIndex())); if (!webTab) { return; } m_tabPreviewHideTimer->stop(); m_tabPreview->setWebTab(webTab, m_tabPreview->previewIndex() == currentIndex()); QRect r(tabRect(m_tabPreview->previewIndex())); r.setTopLeft(mapTo(p_QupZilla, r.topLeft())); r.setBottomRight(mapTo(p_QupZilla, r.bottomRight())); m_tabPreview->showOnRect(r); } void TabBar::hideTabPreview(bool delayed) { m_tabPreviewShowTimer->stop(); if (delayed) { m_tabPreviewHideTimer->start(); } else { m_tabPreview->hideAnimated(); } } void TabBar::overFlowChange(bool overFlowed) { if (overFlowed) { m_tabWidget->buttonAddTab()->setForceHidden(true); m_tabWidget->buttonListTabs()->setForceHidden(true); m_tabWidget->setUpLayout(); ensureVisible(currentIndex()); } else { m_tabWidget->buttonAddTab()->setForceHidden(false); m_tabWidget->buttonListTabs()->setForceHidden(false); m_tabWidget->showButtons(); m_tabWidget->setUpLayout(); } } void TabBar::tabInserted(int index) { Q_UNUSED(index) setVisible(!(count() == 1 && m_hideTabBarWithOneTab)); } void TabBar::tabRemoved(int index) { Q_UNUSED(index) showCloseButton(currentIndex()); setVisible(!(count() == 1 && m_hideTabBarWithOneTab)); } void TabBar::mouseDoubleClickEvent(QMouseEvent* event) { if (mApp->plugins()->processMouseDoubleClick(Qz::ON_TabBar, this, event)) { return; } if (event->button() == Qt::LeftButton && tabAt(event->pos()) == -1) { m_tabWidget->addView(QUrl(), Qz::NT_SelectedTabAtTheEnd, true); return; } ComboTabBar::mouseDoubleClickEvent(event); } void TabBar::mousePressEvent(QMouseEvent* event) { hideTabPreview(false); if (mApp->plugins()->processMousePress(Qz::ON_TabBar, this, event)) { return; } if (event->buttons() & Qt::LeftButton && tabAt(event->pos()) != -1) { m_dragStartPosition = mapFromGlobal(event->globalPos()); } else { m_dragStartPosition = QPoint(); } ComboTabBar::mousePressEvent(event); } void TabBar::mouseMoveEvent(QMouseEvent* event) { if (mApp->plugins()->processMouseMove(Qz::ON_TabBar, this, event)) { return; } if (!m_dragStartPosition.isNull() && m_tabWidget->buttonAddTab()->isVisible()) { int manhattanLength = (event->pos() - m_dragStartPosition).manhattanLength(); if (manhattanLength > QApplication::startDragDistance()) { m_tabWidget->buttonAddTab()->hide(); hideTabPreview(); } } // Tab Preview const int tab = tabAt(event->pos()); if (m_tabPreview->isVisible() && tab != -1 && tab != m_tabPreview->previewIndex() && event->buttons() == Qt::NoButton && m_dragStartPosition.isNull()) { m_tabPreview->setPreviewIndex(tab); showTabPreview(false); } if (!m_tabPreview->isVisible()) { m_tabPreviewShowTimer->start(); } ComboTabBar::mouseMoveEvent(event); } void TabBar::mouseReleaseEvent(QMouseEvent* event) { m_dragStartPosition = QPoint(); if (mApp->plugins()->processMouseRelease(Qz::ON_TabBar, this, event)) { return; } if (m_tabWidget->buttonAddTab()->isHidden()) { QTimer::singleShot(500, m_tabWidget->buttonAddTab(), SLOT(show())); } if (!rect().contains(event->pos())) { ComboTabBar::mouseReleaseEvent(event); return; } int id = tabAt(event->pos()); if (id != -1 && event->button() == Qt::MiddleButton) { m_tabWidget->closeTab(id); return; } if (id == -1 && event->button() == Qt::MiddleButton) { m_tabWidget->addView(QUrl(), Qz::NT_SelectedTabAtTheEnd, true); return; } ComboTabBar::mouseReleaseEvent(event); } bool TabBar::event(QEvent* event) { switch (event->type()) { case QEvent::Leave: if (!rect().contains(mapFromGlobal(QCursor::pos()))) { hideTabPreview(); } break; case QEvent::Wheel: hideTabPreview(false); break; default: break; } return ComboTabBar::event(event); } void TabBar::resizeEvent(QResizeEvent* e) { QPoint posit; posit.setY(0); if (isRightToLeft()) { posit.setX(0); } else { posit.setX(width() - m_tabWidget->buttonListTabs()->width()); } m_tabWidget->buttonListTabs()->move(posit); ComboTabBar::resizeEvent(e); } void TabBar::wheelEvent(QWheelEvent* event) { if (mApp->plugins()->processWheelEvent(Qz::ON_TabBar, this, event)) { return; } ComboTabBar::wheelEvent(event); } void TabBar::dragEnterEvent(QDragEnterEvent* event) { const QMimeData* mime = event->mimeData(); if (mime->hasUrls()) { event->acceptProposedAction(); return; } ComboTabBar::dragEnterEvent(event); } void TabBar::dropEvent(QDropEvent* event) { const QMimeData* mime = event->mimeData(); if (!mime->hasUrls()) { ComboTabBar::dropEvent(event); return; } int index = tabAt(event->pos()); if (index == -1) { foreach (const QUrl &url, mime->urls()) { m_tabWidget->addView(url, Qz::NT_SelectedTabAtTheEnd); } } else { WebTab* tab = p_QupZilla->weView(index)->webTab(); if (tab->isRestored()) { tab->view()->load(mime->urls().at(0)); } } } void TabBar::disconnectObjects() { disconnect(this); } qupzilla-1.6.0/src/lib/webview/tabbar.h000066400000000000000000000067751226107126500200110ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef TABBAR_H #define TABBAR_H #include "combotabbar.h" #include #include "qz_namespace.h" class QupZilla; class TabWidget; class TabPreview; class QT_QUPZILLA_EXPORT TabBar : public ComboTabBar { Q_OBJECT public: explicit TabBar(QupZilla* mainClass, TabWidget* tabWidget); void loadSettings(); void setVisible(bool visible); void updateVisibilityWithFullscreen(bool visible); void overrideTabTextColor(int index, QColor color); void restoreTabTextColor(int index); void updatePinnedTabCloseButton(int index); void disconnectObjects(); void wheelEvent(QWheelEvent* event); signals: void reloadTab(int index); void stopTab(int index); void closeAllButCurrent(int index); void closeTab(int index); void duplicateTab(int index); void detachTab(int index); void moveAddTabButton(int posX); void showButtons(); void hideButtons(); private slots: void currentTabChanged(int index); void contextMenuRequested(const QPoint &position); void reloadTab() { emit reloadTab(m_clickedTab); } void stopTab() { emit stopTab(m_clickedTab); } void closeTab() { emit closeTab(m_clickedTab); } void duplicateTab() { emit duplicateTab(m_clickedTab); } void detachTab() { emit detachTab(m_clickedTab); } void closeAllButCurrent(); void bookmarkTab(); void pinTab(); void closeCurrentTab(); void closeTabFromButton(); void showTabPreview(bool delayed = true); void hideTabPreview(bool delayed = true); void overFlowChange(bool overFlowed); private: inline bool validIndex(int index) const { return index >= 0 && index < count(); } void tabInserted(int index); void tabRemoved(int index); void hideCloseButton(int index); void showCloseButton(int index); void mouseDoubleClickEvent(QMouseEvent* event); void mousePressEvent(QMouseEvent* event); void mouseMoveEvent(QMouseEvent* event); void mouseReleaseEvent(QMouseEvent* event); bool event(QEvent* event); void resizeEvent(QResizeEvent* e); void dragEnterEvent(QDragEnterEvent* event); void dropEvent(QDropEvent* event); QSize tabSizeHint(int index, bool fast) const; int comboTabBarPixelMetric(ComboTabBar::SizeType sizeType) const; QupZilla* p_QupZilla; TabWidget* m_tabWidget; TabPreview* m_tabPreview; QTimer* m_tabPreviewShowTimer; QTimer* m_tabPreviewHideTimer; bool m_showTabPreviews; bool m_hideTabBarWithOneTab; int m_clickedTab; mutable int m_normalTabWidth; mutable int m_activeTabWidth; QColor m_originalTabTextColor; QRect m_originalGeometry; QPoint m_dragStartPosition; }; #endif // TABBAR_H qupzilla-1.6.0/src/lib/webview/tabbedwebview.cpp000066400000000000000000000200611226107126500217030ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "tabbedwebview.h" #include "qupzilla.h" #include "webpage.h" #include "tabwidget.h" #include "networkmanager.h" #include "mainapplication.h" #include "tabbar.h" #include "webtab.h" #include "statusbarmessage.h" #include "progressbar.h" #include "navigationbar.h" #include "iconprovider.h" #include "searchenginesmanager.h" #include "enhancedmenu.h" #include "adblockicon.h" #include #include #include #include #include TabbedWebView::TabbedWebView(QupZilla* mainClass, WebTab* webTab) : WebView(webTab) , p_QupZilla(mainClass) , m_webTab(webTab) , m_menu(new Menu(this)) , m_mouseTrack(false) { connect(this, SIGNAL(loadStarted()), this, SLOT(slotLoadStarted())); connect(this, SIGNAL(loadProgress(int)), this, SLOT(loadProgress(int))); connect(this, SIGNAL(loadFinished(bool)), this, SLOT(slotLoadFinished())); connect(this, SIGNAL(urlChanged(QUrl)), this, SLOT(urlChanged(QUrl))); connect(this, SIGNAL(titleChanged(QString)), this, SLOT(titleChanged())); connect(this, SIGNAL(iconChanged()), this, SLOT(showIcon())); connect(this, SIGNAL(statusBarMessage(QString)), p_QupZilla->statusBar(), SLOT(showMessage(QString))); connect(p_QupZilla, SIGNAL(setWebViewMouseTracking(bool)), this, SLOT(trackMouse(bool))); // Tracking mouse also on tabs created in fullscreen trackMouse(p_QupZilla->isFullScreen()); } void TabbedWebView::setWebPage(WebPage* page) { page->setWebView(this); page->setParent(this); setPage(page); connect(page, SIGNAL(linkHovered(QString,QString,QString)), this, SLOT(linkHovered(QString,QString,QString))); } void TabbedWebView::inspectElement() { p_QupZilla->showWebInspector(false); triggerPageAction(QWebPage::InspectElement); } WebTab* TabbedWebView::webTab() const { return m_webTab; } TabWidget* TabbedWebView::tabWidget() const { return p_QupZilla->tabWidget(); } QString TabbedWebView::getIp() const { return m_currentIp; } bool TabbedWebView::isCurrent() { WebTab* webTab = qobject_cast(tabWidget()->widget(tabWidget()->currentIndex())); if (!webTab) { return false; } return (webTab->view() == this); } void TabbedWebView::urlChanged(const QUrl &url) { if (isCurrent()) { p_QupZilla->navigationBar()->refreshHistory(); } if (lastUrl() != url) { emit changed(); } } void TabbedWebView::loadProgress(int prog) { Q_UNUSED(prog) if (isCurrent()) { p_QupZilla->updateLoadingActions(); } } void TabbedWebView::userLoadAction(const QUrl &url) { QNetworkRequest request(url); request.setRawHeader("X-QupZilla-UserLoadAction", QByteArray("1")); load(request); } void TabbedWebView::slotLoadStarted() { tabWidget()->startTabAnimation(tabIndex()); if (title().isNull()) { tabWidget()->setTabText(tabIndex(), tr("Loading...")); } m_currentIp.clear(); } void TabbedWebView::slotLoadFinished() { tabWidget()->stopTabAnimation(tabIndex()); showIcon(); QHostInfo::lookupHost(url().host(), this, SLOT(setIp(QHostInfo))); if (isCurrent()) { p_QupZilla->updateLoadingActions(); } } void TabbedWebView::setIp(const QHostInfo &info) { if (info.addresses().isEmpty()) { return; } m_currentIp = QString("%1 (%2)").arg(info.hostName(), info.addresses().at(0).toString()); if (isCurrent()) { emit ipChanged(m_currentIp); } } void TabbedWebView::titleChanged() { const QString t = title(); if (isCurrent()) { p_QupZilla->setWindowTitle(tr("%1 - QupZilla").arg(t)); } tabWidget()->setTabText(tabIndex(), t); } void TabbedWebView::showIcon() { if (isLoading()) { return; } QIcon icon_ = icon(); if (icon_.isNull()) { icon_ = qIconProvider->emptyWebIcon(); } tabWidget()->setTabIcon(tabIndex(), icon_); } void TabbedWebView::linkHovered(const QString &link, const QString &title, const QString &content) { Q_UNUSED(title) Q_UNUSED(content) if (isCurrent()) { if (link.isEmpty()) { p_QupZilla->statusBarMessage()->clearMessage(); } else { // QUrl::fromEncoded(link.toUtf8()); // Don't decode link from percent encoding (to show all utf8 chars), as it doesn't // works correctly in all cases // See #1095 p_QupZilla->statusBarMessage()->showMessage(link); } } } int TabbedWebView::tabIndex() const { return tabWidget()->indexOf(m_webTab); } QupZilla* TabbedWebView::mainWindow() const { return p_QupZilla; } void TabbedWebView::moveToWindow(QupZilla* window) { disconnect(this, SIGNAL(statusBarMessage(QString)), p_QupZilla->statusBar(), SLOT(showMessage(QString))); disconnect(p_QupZilla, SIGNAL(setWebViewMouseTracking(bool)), this, SLOT(trackMouse(bool))); p_QupZilla = window; connect(this, SIGNAL(statusBarMessage(QString)), p_QupZilla->statusBar(), SLOT(showMessage(QString))); connect(p_QupZilla, SIGNAL(setWebViewMouseTracking(bool)), this, SLOT(trackMouse(bool))); // Tracking mouse also on tabs created in fullscreen trackMouse(p_QupZilla->isFullScreen()); } QWidget* TabbedWebView::overlayForJsAlert() { return m_webTab; } void TabbedWebView::closeView() { emit wantsCloseTab(tabIndex()); } void TabbedWebView::loadInNewTab(const QNetworkRequest &req, QNetworkAccessManager::Operation op, const QByteArray &data, Qz::NewTabPositionFlag position) { QNetworkRequest r(req); r.setRawHeader("Referer", url().toEncoded()); r.setRawHeader("X-QupZilla-UserLoadAction", QByteArray("1")); int index = tabWidget()->addView(QUrl(), position); p_QupZilla->weView(index)->load(r, op, data); } void TabbedWebView::contextMenuEvent(QContextMenuEvent* event) { m_menu->clear(); const QWebHitTestResult hitTest = page()->mainFrame()->hitTestContent(event->pos()); createContextMenu(m_menu, hitTest, event->pos()); if (!hitTest.isContentEditable() && !hitTest.isContentSelected()) { m_menu->addAction(p_QupZilla->adBlockIcon()->menuAction()); } m_menu->addSeparator(); m_menu->addAction(tr("Inspect Element"), this, SLOT(inspectElement())); if (!m_menu->isEmpty()) { // Prevent choosing first option with double rightclick const QPoint pos = event->globalPos(); QPoint p(pos.x(), pos.y() + 1); m_menu->popup(p); return; } WebView::contextMenuEvent(event); } void TabbedWebView::stop() { triggerPageAction(QWebPage::Stop); slotLoadFinished(); } void TabbedWebView::openNewTab() { tabWidget()->addView(QUrl()); } void TabbedWebView::setAsCurrentTab() { tabWidget()->setCurrentWidget(m_webTab); } void TabbedWebView::mouseMoveEvent(QMouseEvent* event) { if (m_mouseTrack) { if (p_QupZilla->fullScreenNavigationVisible()) { p_QupZilla->hideNavigationWithFullScreen(); } else if (event->y() < 5) { p_QupZilla->showNavigationWithFullScreen(); } } WebView::mouseMoveEvent(event); } void TabbedWebView::disconnectObjects() { disconnect(this); disconnect(p_QupZilla->statusBar()); WebView::disconnectObjects(); } TabbedWebView::~TabbedWebView() { } qupzilla-1.6.0/src/lib/webview/tabbedwebview.h000066400000000000000000000050621226107126500213540ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef TABBEDWEBVIEW_H #define TABBEDWEBVIEW_H #include "qz_namespace.h" #include "webview.h" class QLabel; class QHostInfo; class QupZilla; class TabWidget; class WebPage; class WebTab; class Menu; class QT_QUPZILLA_EXPORT TabbedWebView : public WebView { Q_OBJECT public: explicit TabbedWebView(QupZilla* mainClass, WebTab* webTab); ~TabbedWebView(); void setWebPage(WebPage* pag); WebTab* webTab() const; TabWidget* tabWidget() const; QString getIp() const; int tabIndex() const; QupZilla* mainWindow() const; void moveToWindow(QupZilla* window); QWidget* overlayForJsAlert(); void disconnectObjects(); signals: void wantsCloseTab(int); void ipChanged(QString); void changed(); public slots: void titleChanged(); void setAsCurrentTab(); void stop(); void showIcon(); void slotLoadStarted(); void loadProgress(int prog); void userLoadAction(const QUrl &url); void closeView(); void loadInNewTab(const QNetworkRequest &req, QNetworkAccessManager::Operation op, const QByteArray &data, Qz::NewTabPositionFlag position); void openNewTab(); private slots: void trackMouse(bool state) { m_mouseTrack = state; } void slotLoadFinished(); void urlChanged(const QUrl &url); void linkHovered(const QString &link, const QString &title, const QString &content); void setIp(const QHostInfo &info); void inspectElement(); private: void contextMenuEvent(QContextMenuEvent* event); void mouseMoveEvent(QMouseEvent* event); bool isCurrent(); QupZilla* p_QupZilla; WebTab* m_webTab; Menu* m_menu; QString m_currentIp; bool m_mouseTrack; }; #endif // TABBEDWEBVIEW_H qupzilla-1.6.0/src/lib/webview/tabpreview.cpp000066400000000000000000000173151226107126500212510ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 Alexander Samilovskih * David Rosca * * 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 3 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, see . * ============================================================ */ #include "qupzilla.h" #include "tabpreview.h" #include "qztools.h" #include "webtab.h" #include "mainapplication.h" #include "proxystyle.h" #include "tabbedwebview.h" #include #include #include #include #include #include TabPreview::TabPreview(QupZilla* mainClass, QWidget* parent) : QFrame(parent) , p_QupZilla(mainClass) , m_previewIndex(-1) , m_animationsEnabled(true) , m_stepX(0) , m_stepY(0) , m_stepWidth(0) , m_stepHeight(0) { m_pixmapLabel = new QLabel(this); m_pixmapLabel->setAlignment(Qt::AlignHCenter); m_title = new QLabel(this); m_title->setAlignment(Qt::AlignHCenter); m_title->setWordWrap(true); QVBoxLayout* layout = new QVBoxLayout(this); layout->addWidget(m_pixmapLabel); layout->addWidget(m_title); layout->setMargin(0); layout->setAlignment(Qt::AlignCenter); setLayout(layout); setBackgroundRole(QPalette::ToolTipBase); setForegroundRole(QPalette::ToolTipText); setContentsMargins(5, 5, 5, 5); setMaximumWidth(250); setMaximumHeight(170); #ifdef ENABLE_OPACITY_EFFECT setGraphicsEffect(&m_opacityEffect); m_opacityEffect.setOpacity(0.0); connect(&m_opacityTimeLine, SIGNAL(frameChanged(int)), this, SLOT(setOpacity(int))); #endif m_animation.setDuration(400); m_animation.setFrameRange(0, 100); m_animation.setUpdateInterval(20); // 50 fps connect(&m_animation, SIGNAL(frameChanged(int)), this, SLOT(setAnimationFrame(int))); } int TabPreview::previewIndex() { return m_previewIndex; } void TabPreview::setPreviewIndex(int index) { m_previewIndex = index; } void TabPreview::setWebTab(WebTab* webTab, bool noPixmap) { if (webTab->isRestored() && !webTab->isLoading() && !noPixmap) { m_title->setText(webTab->title()); m_pixmapLabel->setPixmap(webTab->renderTabPreview()); m_pixmapLabel->show(); } else { m_title->setText(webTab->title()); m_pixmapLabel->hide(); } } void TabPreview::setAnimationsEnabled(bool enabled) { m_animationsEnabled = enabled; } void TabPreview::hideAnimated() { #ifdef ENABLE_OPACITY_EFFECT if (m_opacityTimeLine.state() == QTimeLine::Running) { m_opacityTimeLine.stop(); } if (m_animationsEnabled) { m_opacityTimeLine.setDuration(400); m_opacityTimeLine.setStartFrame(m_opacityEffect.opacity() * 100); m_opacityTimeLine.setEndFrame(0); m_opacityTimeLine.start(); connect(&m_opacityTimeLine, SIGNAL(finished()), this, SLOT(hide())); } else #endif { QFrame::hide(); } } void TabPreview::hide() { m_previewIndex = -1; #ifdef ENABLE_OPACITY_EFFECT disconnect(&m_opacityTimeLine, SIGNAL(finished()), this, SLOT(hide())); #endif QFrame::hide(); } void TabPreview::show() { if (!isVisible() && m_animationsEnabled) { showAnimated(); } QFrame::show(); } void TabPreview::showOnRect(const QRect &r) { if (m_animation.state() == QTimeLine::Running) { m_animation.stop(); } m_startGeometry = geometry(); bool wasVisible = isVisible(); QRect finishingGeometry; resize(QSize(250, 170)); QFrame::show(); if (m_pixmapLabel->isVisible()) { m_title->setWordWrap(false); m_title->setText(m_title->fontMetrics().elidedText(m_title->text(), Qt::ElideRight, 240)); QSize previewSize(250, 170); finishingGeometry = QRect(calculatePosition(r, previewSize), previewSize); } else { m_title->setWordWrap(true); QSize previewSize = sizeHint(); previewSize.setWidth(qMin(previewSize.width() + 2 * 5, 240)); previewSize.setHeight(qMin(previewSize.height() + 2 * 5, 130)); finishingGeometry = QRect(calculatePosition(r, previewSize), previewSize); } #ifdef ENABLE_OPACITY_EFFECT if (!m_animationsEnabled) { m_opacityEffect.setOpacity(1.0); #else if (!m_animationsEnabled || !wasVisible) { #endif QFrame::setGeometry(finishingGeometry); return; } else { showAnimated(); } if (!wasVisible) { m_startGeometry = finishingGeometry; } QFrame::setGeometry(m_startGeometry); calculateSteps(m_startGeometry, finishingGeometry); m_animation.start(); } #ifdef ENABLE_OPACITY_EFFECT void TabPreview::setOpacity(int opacity) { m_opacityEffect.setOpacity(opacity / 100.0); } #endif void TabPreview::setAnimationFrame(int frame) { QRect g; g.setX(m_startGeometry.x() + frame * m_stepX); g.setY(m_startGeometry.y() + frame * m_stepY); g.setWidth(m_startGeometry.width() + frame * m_stepWidth); g.setHeight(m_startGeometry.height() + frame * m_stepHeight); setGeometry(g); } void TabPreview::showAnimated() { #ifdef ENABLE_OPACITY_EFFECT disconnect(&m_opacityTimeLine, SIGNAL(finished()), this, SLOT(hide())); if (m_opacityTimeLine.state() == QTimeLine::Running) { m_opacityTimeLine.stop(); } m_opacityTimeLine.setDuration(400); m_opacityTimeLine.setStartFrame(m_opacityEffect.opacity() * 100); m_opacityTimeLine.setEndFrame(100); m_opacityTimeLine.start(); #endif } void TabPreview::resizeEvent(QResizeEvent* ev) { QFrame::resizeEvent(ev); // Oxygen is setting rounded corners only for top-level tooltips if (mApp->proxyStyle() && mApp->proxyStyle()->name() == QLatin1String("oxygen")) { setMask(QzTools::roundedRect(rect(), 4)); } } void TabPreview::paintEvent(QPaintEvent* pe) { QStylePainter painter(this); QStyleOptionFrame opt; opt.init(this); painter.setClipRegion(pe->region()); painter.drawPrimitive(QStyle::PE_PanelTipLabel, opt); painter.end(); QFrame::paintEvent(pe); } void TabPreview::calculateSteps(const QRect &oldGeometry, const QRect &newGeometry) { m_stepX = (newGeometry.x() - oldGeometry.x()) / 100.0; m_stepY = (newGeometry.y() - oldGeometry.y()) / 100.0; m_stepWidth = (newGeometry.width() - oldGeometry.width()) / 100.0; m_stepHeight = (newGeometry.height() - oldGeometry.height()) / 100.0; } QPoint TabPreview::calculatePosition(const QRect &tabRect, const QSize &previewSize) { QPoint p; p.setY(tabRect.y() + tabRect.height() + 1); // Map to center of tab if (tabRect.width() > previewSize.width()) { int extraWidth = tabRect.width() - previewSize.width(); p.setX(tabRect.x() + extraWidth / 2); } else { int extraWidth = previewSize.width() - tabRect.width(); p.setX(tabRect.x() - extraWidth / 2); } // Ensure the whole preview is always shown if (p.x() < 0) { p.setX(0); } if (p.x() + previewSize.width() > p_QupZilla->width()) { int extraWidth = p.x() + previewSize.width() - p_QupZilla->width(); p.setX(p.x() - extraWidth); } return p; } qupzilla-1.6.0/src/lib/webview/tabpreview.h000066400000000000000000000044501226107126500207120ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 Alexander Samilovskih * David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef TABPREVIEW_H #define TABPREVIEW_H #include #include #ifdef ENABLE_OPACITY_EFFECT #include #endif class QupZilla; class WebTab; class QLabel; class TabPreview : public QFrame { Q_OBJECT public: explicit TabPreview(QupZilla* mainClass, QWidget* parent); void setWebTab(WebTab* webTab, bool noPixmap); void showOnRect(const QRect &rect); int previewIndex(); void setPreviewIndex(int index); void setAnimationsEnabled(bool enabled); public slots: void hideAnimated(); void hide(); void show(); private slots: void setAnimationFrame(int frame); #ifdef ENABLE_OPACITY_EFFECT void setOpacity(int opacity); #endif protected: void resizeEvent(QResizeEvent* ev); void paintEvent(QPaintEvent* pe); private: void showAnimated(); void calculateSteps(const QRect &oldGeometry, const QRect &newGeometry); QPoint calculatePosition(const QRect &tabRect, const QSize &previewSize); QupZilla* p_QupZilla; QLabel* m_pixmapLabel; QLabel* m_title; int m_previewIndex; bool m_animationsEnabled; #ifdef ENABLE_OPACITY_EFFECT QTimeLine m_opacityTimeLine; QGraphicsOpacityEffect m_opacityEffect; #endif QTimeLine m_animation; QRect m_startGeometry; qreal m_stepX; qreal m_stepY; qreal m_stepWidth; qreal m_stepHeight; }; #endif // TABPREVIEW_H qupzilla-1.6.0/src/lib/webview/tabwidget.cpp000066400000000000000000000657051226107126500210610ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "tabwidget.h" #include "tabbar.h" #include "tabbedwebview.h" #include "webpage.h" #include "qupzilla.h" #include "iconprovider.h" #include "mainapplication.h" #include "webtab.h" #include "clickablelabel.h" #include "closedtabsmanager.h" #include "progressbar.h" #include "navigationbar.h" #include "locationbar.h" #include "websearchbar.h" #include "settings.h" #include "qzsettings.h" #include "qtwin.h" #include #include #include #include #include #include #include #include #include AddTabButton::AddTabButton(TabWidget* tabWidget, TabBar* tabBar) : ToolButton(tabBar) , m_tabBar(tabBar) , m_tabWidget(tabWidget) { setObjectName("tabwidget-button-addtab"); setAutoRaise(true); setFocusPolicy(Qt::NoFocus); setAcceptDrops(true); setToolTip(TabWidget::tr("New Tab")); } void AddTabButton::wheelEvent(QWheelEvent* event) { m_tabBar->wheelEvent(event); } void AddTabButton::mouseReleaseEvent(QMouseEvent* event) { if (event->button() == Qt::MiddleButton && rect().contains(event->pos())) { m_tabWidget->addTabFromClipboard(); } ToolButton::mouseReleaseEvent(event); } void AddTabButton::dragEnterEvent(QDragEnterEvent* event) { const QMimeData* mime = event->mimeData(); if (mime->hasUrls()) { event->acceptProposedAction(); return; } ToolButton::dragEnterEvent(event); } void AddTabButton::dropEvent(QDropEvent* event) { const QMimeData* mime = event->mimeData(); if (!mime->hasUrls()) { ToolButton::dropEvent(event); return; } foreach (const QUrl &url, mime->urls()) { m_tabWidget->addView(url, Qz::NT_SelectedNewEmptyTab); } } void MenuTabs::mouseReleaseEvent(QMouseEvent* event) { if (event->button() == Qt::MiddleButton) { QAction* action = actionAt(event->pos()); if (action && action->isEnabled()) { WebTab* tab = qobject_cast(qvariant_cast(action->data())); if (tab) { emit closeTab(tab->tabIndex()); action->setEnabled(false); event->accept(); } } } QMenu::mouseReleaseEvent(event); } TabWidget::TabWidget(QupZilla* mainClass, QWidget* parent) : TabStackedWidget(parent) , p_QupZilla(mainClass) , m_lastTabIndex(-1) , m_lastBackgroundTabIndex(-1) , m_isClosingToLastTabIndex(false) , m_isRestoringState(false) , m_closedTabsManager(new ClosedTabsManager) , m_locationBars(new QStackedWidget) { setObjectName("tabwidget"); m_tabBar = new TabBar(p_QupZilla, this); setTabBar(m_tabBar); connect(this, SIGNAL(currentChanged(int)), p_QupZilla, SLOT(refreshHistory())); connect(m_tabBar, SIGNAL(tabCloseRequested(int)), this, SLOT(closeTab(int))); connect(m_tabBar, SIGNAL(reloadTab(int)), this, SLOT(reloadTab(int))); connect(m_tabBar, SIGNAL(stopTab(int)), this, SLOT(stopTab(int))); connect(m_tabBar, SIGNAL(closeTab(int)), this, SLOT(closeTab(int))); connect(m_tabBar, SIGNAL(closeAllButCurrent(int)), this, SLOT(closeAllButCurrent(int))); connect(m_tabBar, SIGNAL(duplicateTab(int)), this, SLOT(duplicateTab(int))); connect(m_tabBar, SIGNAL(detachTab(int)), this, SLOT(detachTab(int))); connect(m_tabBar, SIGNAL(tabMoved(int,int)), this, SLOT(tabMoved(int,int))); connect(m_tabBar, SIGNAL(moveAddTabButton(int)), this, SLOT(moveAddTabButton(int))); connect(m_tabBar, SIGNAL(showButtons()), this, SLOT(showButtons())); connect(m_tabBar, SIGNAL(hideButtons()), this, SLOT(hideButtons())); m_buttonListTabs = new ToolButton(m_tabBar); m_buttonListTabs->setObjectName("tabwidget-button-opentabs"); m_menuTabs = new MenuTabs(m_tabBar); m_buttonListTabs->setMenu(m_menuTabs); m_buttonListTabs->setPopupMode(QToolButton::InstantPopup); m_buttonListTabs->setToolTip(tr("List of tabs")); m_buttonListTabs->setAutoRaise(true); m_buttonListTabs->setFocusPolicy(Qt::NoFocus); m_buttonAddTab = new AddTabButton(this, m_tabBar); connect(m_buttonAddTab, SIGNAL(clicked()), p_QupZilla, SLOT(addTab())); connect(m_menuTabs, SIGNAL(aboutToShow()), this, SLOT(aboutToShowClosedTabsMenu())); // Copy of buttons m_buttonListTabs2 = new ToolButton(m_tabBar); m_buttonListTabs2->setObjectName("tabwidget-button-opentabs"); m_buttonListTabs2->setProperty("outside-tabbar", true); m_buttonListTabs2->setMenu(m_menuTabs); m_buttonListTabs2->setPopupMode(QToolButton::InstantPopup); m_buttonListTabs2->setToolTip(tr("List of tabs")); m_buttonListTabs2->setAutoRaise(true); m_buttonListTabs2->setFocusPolicy(Qt::NoFocus); m_buttonAddTab2 = new AddTabButton(this, m_tabBar); m_buttonAddTab2->setProperty("outside-tabbar", true); connect(m_buttonAddTab2, SIGNAL(clicked()), p_QupZilla, SLOT(addTab())); m_tabBar->addMainBarWidget(m_buttonAddTab2, Qt::AlignRight); m_tabBar->addMainBarWidget(m_buttonListTabs2, Qt::AlignRight); m_buttonAddTab2->hide(); m_buttonListTabs2->hide(); connect(m_tabBar, SIGNAL(overFlowChanged(bool)), this, SLOT(tabBarOverFlowChanged(bool))); loadSettings(); } void TabWidget::loadSettings() { Settings settings; settings.beginGroup("Browser-Tabs-Settings"); m_dontQuitWithOneTab = settings.value("dontQuitWithOneTab", false).toBool(); m_closedInsteadOpened = settings.value("closedInsteadOpenedTabs", false).toBool(); m_newTabAfterActive = settings.value("newTabAfterActive", true).toBool(); m_newEmptyTabAfterActive = settings.value("newEmptyTabAfterActive", false).toBool(); settings.endGroup(); settings.beginGroup("Web-URL-Settings"); m_urlOnNewTab = settings.value("newTabUrl", "qupzilla:speeddial").toUrl(); settings.endGroup(); m_tabBar->loadSettings(); if (m_closedInsteadOpened) { disconnect(m_menuTabs, SIGNAL(closeTab(int)), this, SLOT(closeTab(int))); } else { connect(m_menuTabs, SIGNAL(closeTab(int)), this, SLOT(closeTab(int))); } } WebTab* TabWidget::weTab() { return weTab(currentIndex()); } WebTab* TabWidget::weTab(int index) { return qobject_cast(widget(index)); } void TabWidget::showButtons() { m_buttonListTabs->show(); m_buttonAddTab->show(); } void TabWidget::hideButtons() { m_buttonListTabs->hide(); m_buttonAddTab->hide(); } void TabWidget::tabBarOverFlowChanged(bool overFlowed) { m_buttonAddTab2->setVisible(overFlowed); m_buttonListTabs2->setVisible(overFlowed); } void TabWidget::moveAddTabButton(int posX) { int posY = (m_tabBar->height() - m_buttonAddTab->height()) / 2; //RTL Support if (QApplication::layoutDirection() == Qt::RightToLeft) { posX = qMax(posX - m_buttonAddTab->width(), m_buttonListTabs->width()); } else { posX = qMin(posX, m_tabBar->width() - m_buttonAddTab->width() - m_buttonListTabs->width()); } m_buttonAddTab->move(posX, posY); } void TabWidget::aboutToShowTabsMenu() { m_menuTabs->clear(); WebTab* actTab = weTab(); if (!actTab) { return; } for (int i = 0; i < count(); i++) { WebTab* tab = weTab(i); if (!tab) { continue; } QAction* action = new QAction(this); if (tab == actTab) { action->setIcon(QIcon(":/icons/menu/dot.png")); } else { action->setIcon(tab->icon()); } if (tab->title().isEmpty()) { if (tab->isLoading()) { action->setText(tr("Loading...")); action->setIcon(QIcon(":/icons/other/progress.gif")); } else { action->setText(tr("No Named Page")); } } else { QString title = tab->title(); title.replace(QLatin1Char('&'), QLatin1String("&&")); if (title.length() > 40) { title.truncate(40); title += QLatin1String(".."); } action->setText(title); } action->setData(QVariant::fromValue(qobject_cast(tab))); connect(action, SIGNAL(triggered()), this, SLOT(actionChangeIndex())); m_menuTabs->addAction(action); } m_menuTabs->addSeparator(); m_menuTabs->addAction(tr("Currently you have %1 opened tabs").arg(count()))->setEnabled(false); } void TabWidget::actionChangeIndex() { if (QAction* action = qobject_cast(sender())) { WebTab* tab = qobject_cast(qvariant_cast(action->data())); if (tab) { // needed when clicking on action of the current tab m_tabBar->ensureVisible(tab->tabIndex()); setCurrentIndex(tab->tabIndex()); } } } int TabWidget::addView(const QUrl &url, const Qz::NewTabPositionFlags &openFlags, bool selectLine, bool pinned) { return addView(QNetworkRequest(url), openFlags, selectLine, pinned); } int TabWidget::addView(const QNetworkRequest &req, const Qz::NewTabPositionFlags &openFlags, bool selectLine, bool pinned) { return addView(req, tr("New tab"), openFlags, selectLine, -1, pinned); } int TabWidget::addView(const QUrl &url, const QString &title, const Qz::NewTabPositionFlags &openFlags, bool selectLine, int position, bool pinned) { return addView(QNetworkRequest(url), title, openFlags, selectLine, position, pinned); } int TabWidget::addView(QNetworkRequest req, const QString &title, const Qz::NewTabPositionFlags &openFlags, bool selectLine, int position, bool pinned) { #ifdef Q_OS_WIN if (p_QupZilla->isTransparentBackgroundAllowed()) { QtWin::extendFrameIntoClientArea(p_QupZilla); } #endif QUrl url = req.url(); m_lastTabIndex = currentIndex(); if (url.isEmpty() && !(openFlags & Qz::NT_CleanTab)) { url = m_urlOnNewTab; } bool openAfterActive = m_newTabAfterActive && !(openFlags & Qz::NT_TabAtTheEnd); if (openFlags == Qz::NT_SelectedNewEmptyTab && m_newEmptyTabAfterActive) { openAfterActive = true; } if (openAfterActive && position == -1) { // If we are opening newBgTab from pinned tab, make sure it won't be // opened between other pinned tabs if (openFlags & Qz::NT_NotSelectedTab && m_lastBackgroundTabIndex != -1) { position = m_lastBackgroundTabIndex + 1; } else { position = qMax(currentIndex() + 1, m_tabBar->pinnedTabsCount()); } } LocationBar* locBar = new LocationBar(p_QupZilla); m_locationBars->addWidget(locBar); int index; if (position == -1) { index = addTab(new WebTab(p_QupZilla, locBar), QString(), pinned); } else { index = insertTab(position, new WebTab(p_QupZilla, locBar), QString(), pinned); } TabbedWebView* webView = weTab(index)->view(); locBar->setWebView(webView); setTabText(index, title); setTabIcon(index, qIconProvider->emptyWebIcon()); if (openFlags & Qz::NT_SelectedTab) { setCurrentIndex(index); } else { m_lastBackgroundTabIndex = index; } connect(webView, SIGNAL(wantsCloseTab(int)), this, SLOT(closeTab(int))); connect(webView, SIGNAL(changed()), mApp, SLOT(setStateChanged())); connect(webView, SIGNAL(ipChanged(QString)), p_QupZilla->ipLabel(), SLOT(setText(QString))); if (url.isValid()) { req.setUrl(url); webView->load(req); } if (selectLine && p_QupZilla->locationBar()->text().isEmpty()) { p_QupZilla->locationBar()->setFocus(); } if (openFlags & Qz::NT_SelectedTab || openFlags & Qz::NT_NotSelectedTab) { m_isClosingToLastTabIndex = true; } if (openFlags & Qz::NT_NotSelectedTab) { WebTab* currentWebTab = weTab(); // Workarounding invalid QWebPage::viewportSize() until QWebView is shown // Fixes invalid scrolling to anchor(#) links if (currentWebTab && currentWebTab->view()) { TabbedWebView* currentView = currentWebTab->view(); webView->resize(currentView->size()); webView->page()->setViewportSize(currentView->page()->viewportSize()); } } #ifdef Q_OS_WIN QTimer::singleShot(0, p_QupZilla, SLOT(applyBlurToMainWindow())); #endif return index; } int TabWidget::addView(WebTab* tab) { m_locationBars->addWidget(tab->locationBar()); tab->locationBar()->setWebView(tab->view()); int index = addTab(tab, QString()); setTabText(index, tab->title()); if (!tab->isLoading()) { setTabIcon(index, tab->icon()); } else { startTabAnimation(index); } connect(tab->view(), SIGNAL(wantsCloseTab(int)), this, SLOT(closeTab(int))); connect(tab->view(), SIGNAL(changed()), mApp, SLOT(setStateChanged())); connect(tab->view(), SIGNAL(ipChanged(QString)), p_QupZilla->ipLabel(), SLOT(setText(QString))); return index; } void TabWidget::addTabFromClipboard() { QString selectionClipboard = QApplication::clipboard()->text(QClipboard::Selection); QUrl guessedUrl = WebView::guessUrlFromString(selectionClipboard); if (!guessedUrl.isEmpty()) { addView(guessedUrl, Qz::NT_SelectedNewEmptyTab); } } void TabWidget::closeTab(int index, bool force) { if (index == -1) { index = currentIndex(); } WebTab* webTab = weTab(index); if (!webTab || !validIndex(index)) { return; } TabbedWebView* webView = webTab->view(); WebPage* webPage = webView->page(); if (!force && webView->url().toString() == QLatin1String("qupzilla:restore") && mApp->restoreManager()) { // Don't close restore page! return; } if (!force && count() == 1) { if (m_dontQuitWithOneTab && mApp->windowCount() == 1) { webView->load(m_urlOnNewTab); return; } else { p_QupZilla->close(); return; } } m_locationBars->removeWidget(webView->webTab()->locationBar()); disconnect(webView, SIGNAL(wantsCloseTab(int)), this, SLOT(closeTab(int))); disconnect(webView, SIGNAL(changed()), mApp, SLOT(setStateChanged())); disconnect(webView, SIGNAL(ipChanged(QString)), p_QupZilla->ipLabel(), SLOT(setText(QString))); // Save last tab url and history m_closedTabsManager->saveView(webTab, index); if (m_isClosingToLastTabIndex && m_lastTabIndex < count() && index == currentIndex()) { setCurrentIndex(m_lastTabIndex); } m_lastBackgroundTabIndex = -1; webPage->disconnectObjects(); webView->disconnectObjects(); webTab->disconnectObjects(); webTab->deleteLater(); if (!m_closedInsteadOpened && m_menuTabs->isVisible()) { QAction* labelAction = m_menuTabs->actions().last(); labelAction->setText(tr("Currently you have %1 opened tabs").arg(count() - 1)); } } void TabWidget::currentTabChanged(int index) { if (!validIndex(index) || m_isRestoringState) { return; } m_isClosingToLastTabIndex = m_lastBackgroundTabIndex == index; m_lastBackgroundTabIndex = -1; m_lastTabIndex = index; WebTab* webTab = weTab(index); LocationBar* locBar = webTab->locationBar(); if (locBar && m_locationBars->indexOf(locBar) != -1) { m_locationBars->setCurrentWidget(locBar); } webTab->setCurrentTab(); p_QupZilla->currentTabChanged(); } void TabWidget::tabMoved(int before, int after) { Q_UNUSED(before) Q_UNUSED(after) m_isClosingToLastTabIndex = false; m_lastBackgroundTabIndex = -1; m_lastTabIndex = before; } void TabWidget::startTabAnimation(int index) { if (!validIndex(index)) { return; } QLabel* label = qobject_cast(m_tabBar->tabButton(index, m_tabBar->iconButtonPosition())); if (!label) { label = new QLabel(); label->setObjectName("tab-icon"); m_tabBar->setTabButton(index, m_tabBar->iconButtonPosition(), label); } if (label->movie()) { label->movie()->start(); return; } QMovie* movie = new QMovie(":icons/other/progress.gif", QByteArray(), label); movie->start(); label->setMovie(movie); } void TabWidget::stopTabAnimation(int index) { if (!validIndex(index)) { return; } QLabel* label = qobject_cast(m_tabBar->tabButton(index, m_tabBar->iconButtonPosition())); if (label && label->movie()) { label->movie()->stop(); } } void TabWidget::setCurrentIndex(int index) { m_lastTabIndex = currentIndex(); TabStackedWidget::setCurrentIndex(index); } void TabWidget::setTabIcon(int index, const QIcon &icon) { if (!validIndex(index)) { return; } QLabel* label = qobject_cast(m_tabBar->tabButton(index, m_tabBar->iconButtonPosition())); if (!label) { label = new QLabel(); label->setObjectName("tab-icon"); label->resize(16, 16); m_tabBar->setTabButton(index, m_tabBar->iconButtonPosition(), label); } label->setPixmap(icon.pixmap(16, 16)); } void TabWidget::setTabText(int index, const QString &text) { if (!validIndex(index)) { return; } QString newtext = text; newtext.replace(QLatin1Char('&'), QLatin1String("&&")); // Avoid Alt+letter shortcuts if (WebTab* webTab = weTab(index)) { if (webTab->isPinned()) { newtext.clear(); } } setTabToolTip(index, text); TabStackedWidget::setTabText(index, newtext); } void TabWidget::nextTab() { QKeyEvent fakeEvent(QKeyEvent::KeyPress, Qt::Key_Tab, Qt::ControlModifier); keyPressEvent(&fakeEvent); } void TabWidget::previousTab() { QKeyEvent fakeEvent(QKeyEvent::KeyPress, Qt::Key_Backtab, QFlags(Qt::ControlModifier + Qt::ShiftModifier)); keyPressEvent(&fakeEvent); } int TabWidget::normalTabsCount() const { return m_tabBar->normalTabsCount(); } int TabWidget::pinnedTabsCount() const { return m_tabBar->pinnedTabsCount(); } void TabWidget::reloadTab(int index) { if (!validIndex(index)) { return; } weTab(index)->reload(); } int TabWidget::lastTabIndex() const { return m_lastTabIndex; } TabBar* TabWidget::getTabBar() const { return m_tabBar; } ClosedTabsManager* TabWidget::closedTabsManager() const { return m_closedTabsManager; } void TabWidget::reloadAllTabs() { for (int i = 0; i < count(); i++) { reloadTab(i); } } void TabWidget::stopTab(int index) { if (!validIndex(index)) { return; } weTab(index)->stop(); } void TabWidget::closeAllButCurrent(int index) { if (!validIndex(index)) { return; } WebTab* akt = weTab(index); foreach (WebTab* tab, allTabs(false)) { int tabIndex = tab->tabIndex(); if (akt == widget(tabIndex)) { continue; } closeTab(tabIndex); } } void TabWidget::detachTab(int index) { WebTab* tab = weTab(index); if (tab->isPinned() || count() == 1) { return; } m_locationBars->removeWidget(tab->locationBar()); disconnect(tab->view(), SIGNAL(wantsCloseTab(int)), this, SLOT(closeTab(int))); disconnect(tab->view(), SIGNAL(changed()), mApp, SLOT(setStateChanged())); disconnect(tab->view(), SIGNAL(ipChanged(QString)), p_QupZilla->ipLabel(), SLOT(setText(QString))); QupZilla* window = mApp->makeNewWindow(Qz::BW_NewWindow); tab->moveToWindow(window); window->openWithTab(tab); if (m_isClosingToLastTabIndex && m_lastTabIndex < count() && index == currentIndex()) { setCurrentIndex(m_lastTabIndex); } } int TabWidget::duplicateTab(int index) { if (!validIndex(index)) { return -1; } WebTab* webTab = weTab(index); const QUrl url = webTab->url(); const QString title = webTab->title(); const QByteArray history = webTab->historyData(); QNetworkRequest req(url); req.setRawHeader("Referer", url.toEncoded()); req.setRawHeader("X-QupZilla-UserLoadAction", QByteArray("1")); int id = addView(req, title, Qz::NT_CleanNotSelectedTab); weTab(id)->setHistoryData(history); return id; } void TabWidget::restoreClosedTab(QObject* obj) { if (!obj) { obj = sender(); } if (!m_closedTabsManager->isClosedTabAvailable()) { return; } ClosedTabsManager::Tab tab; QAction* action = qobject_cast(obj); if (action && action->data().toInt() != 0) { tab = m_closedTabsManager->getTabAt(action->data().toInt()); } else { tab = m_closedTabsManager->getFirstClosedTab(); } int index = addView(QUrl(), tab.title, Qz::NT_CleanSelectedTab, false, tab.position); WebTab* webTab = weTab(index); webTab->p_restoreTab(tab.url, tab.history); } void TabWidget::restoreAllClosedTabs() { if (!m_closedTabsManager->isClosedTabAvailable()) { return; } const QVector &closedTabs = m_closedTabsManager->allClosedTabs(); foreach (const ClosedTabsManager::Tab &tab, closedTabs) { int index = addView(QUrl(), tab.title, Qz::NT_CleanSelectedTab); WebTab* webTab = weTab(index); webTab->p_restoreTab(tab.url, tab.history); } m_closedTabsManager->clearList(); } void TabWidget::clearClosedTabsList() { m_closedTabsManager->clearList(); } bool TabWidget::canRestoreTab() const { return m_closedTabsManager->isClosedTabAvailable(); } QStackedWidget* TabWidget::locationBars() const { return m_locationBars; } ToolButton* TabWidget::buttonListTabs() const { return m_buttonListTabs; } AddTabButton* TabWidget::buttonAddTab() const { return m_buttonAddTab; } void TabWidget::aboutToShowClosedTabsMenu() { if (!m_closedInsteadOpened) { aboutToShowTabsMenu(); } else { m_menuTabs->clear(); int i = 0; foreach (const ClosedTabsManager::Tab &tab, closedTabsManager()->allClosedTabs()) { QString title = tab.title; if (title.length() > 40) { title.truncate(40); title += ".."; } m_menuTabs->addAction(_iconForUrl(tab.url), title, this, SLOT(restoreClosedTab()))->setData(i); i++; } m_menuTabs->addSeparator(); if (i == 0) { m_menuTabs->addAction(tr("Empty"))->setEnabled(false); } else { m_menuTabs->addAction(tr("Restore All Closed Tabs"), this, SLOT(restoreAllClosedTabs())); m_menuTabs->addAction(tr("Clear list"), this, SLOT(clearClosedTabsList())); } } } QList TabWidget::allTabs(bool withPinned) { QList allTabs; for (int i = 0; i < count(); i++) { WebTab* tab = weTab(i); if (!tab || (!withPinned && tab->isPinned())) { continue; } allTabs.append(tab); } return allTabs; } void TabWidget::savePinnedTabs() { if (mApp->isPrivateSession()) { return; } QByteArray data; QDataStream stream(&data, QIODevice::WriteOnly); stream << Qz::sessionVersion; QStringList tabs; QList tabsHistory; for (int i = 0; i < count(); ++i) { WebTab* tab = weTab(i); if (!tab || !tab->isPinned()) { continue; } tabs.append(tab->url().toEncoded()); tabsHistory.append(tab->historyData()); } stream << tabs; stream << tabsHistory; QFile file(mApp->currentProfilePath() + "pinnedtabs.dat"); file.open(QIODevice::WriteOnly); file.write(data); file.close(); } void TabWidget::restorePinnedTabs() { if (mApp->isPrivateSession()) { return; } QFile file(mApp->currentProfilePath() + "pinnedtabs.dat"); file.open(QIODevice::ReadOnly); QByteArray sd = file.readAll(); file.close(); QDataStream stream(&sd, QIODevice::ReadOnly); if (stream.atEnd()) { return; } int version; stream >> version; if (version != Qz::sessionVersion) { return; } QStringList pinnedTabs; stream >> pinnedTabs; QList tabHistory; stream >> tabHistory; m_isRestoringState = true; for (int i = 0; i < pinnedTabs.count(); ++i) { QUrl url = QUrl::fromEncoded(pinnedTabs.at(i).toUtf8()); QByteArray historyState = tabHistory.value(i); int addedIndex; if (!historyState.isEmpty()) { addedIndex = addView(QUrl(), Qz::NT_CleanSelectedTab, false, true); weTab(addedIndex)->p_restoreTab(url, historyState); } else { addedIndex = addView(url, tr("New tab"), Qz::NT_SelectedTab, false, -1, true); } WebTab* webTab = weTab(addedIndex); if (webTab) { webTab->setPinned(true); } m_tabBar->updatePinnedTabCloseButton(addedIndex); } m_isRestoringState = false; } QByteArray TabWidget::saveState() { QVector tabList; for (int i = 0; i < count(); ++i) { WebTab* webTab = weTab(i); if (!webTab || webTab->isPinned()) { continue; } WebTab::SavedTab tab(webTab); tabList.append(tab); } QByteArray data; QDataStream stream(&data, QIODevice::WriteOnly); stream << tabList.count(); foreach (const WebTab::SavedTab &tab, tabList) { stream << tab; } stream << currentIndex(); return data; } bool TabWidget::restoreState(const QVector &tabs, int currentTab) { m_isRestoringState = true; setUpdatesEnabled(false); Qz::BrowserWindow type = p_QupZilla->windowType(); if (type == Qz::BW_FirstAppWindow || type == Qz::BW_MacFirstWindow) { restorePinnedTabs(); } for (int i = 0; i < tabs.size(); ++i) { WebTab::SavedTab tab = tabs.at(i); int index = addView(QUrl(), Qz::NT_CleanSelectedTab); weTab(index)->restoreTab(tab); } m_isRestoringState = false; setUpdatesEnabled(true); setCurrentIndex(currentTab); currentTabChanged(currentTab); return true; } void TabWidget::closeRecoveryTab() { foreach (WebTab* tab, allTabs(false)) { if (tab->url().toString() == QLatin1String("qupzilla:restore")) { closeTab(tab->tabIndex(), true); } } } void TabWidget::disconnectObjects() { disconnect(this); disconnect(mApp); disconnect(p_QupZilla); disconnect(p_QupZilla->ipLabel()); } TabWidget::~TabWidget() { delete m_closedTabsManager; } qupzilla-1.6.0/src/lib/webview/tabwidget.h000066400000000000000000000117051226107126500205150ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef TABWIDGET_H #define TABWIDGET_H #include #include #include #include #include "tabstackedwidget.h" #include "toolbutton.h" #include "qz_namespace.h" #include "webtab.h" class QStackedWidget; class QMenu; class QupZilla; class TabbedWebView; class TabBar; class TabWidget; class ClosedTabsManager; class QT_QUPZILLA_EXPORT AddTabButton : public ToolButton { public: explicit AddTabButton(TabWidget* tabWidget, TabBar* tabBar); private: void wheelEvent(QWheelEvent* event); void mouseReleaseEvent(QMouseEvent* event); void dragEnterEvent(QDragEnterEvent* event); void dropEvent(QDropEvent* event); TabBar* m_tabBar; TabWidget* m_tabWidget; }; class QT_QUPZILLA_EXPORT MenuTabs : public QMenu { Q_OBJECT public: explicit MenuTabs(QWidget* parent = 0) : QMenu(parent) {} signals: void closeTab(int); private: void mouseReleaseEvent(QMouseEvent* event); }; class QT_QUPZILLA_EXPORT TabWidget : public TabStackedWidget { Q_OBJECT public: explicit TabWidget(QupZilla* mainclass, QWidget* parent = 0); ~TabWidget(); void loadSettings(); QByteArray saveState(); bool restoreState(const QVector &tabs, int currentTab); void closeRecoveryTab(); void savePinnedTabs(); void restorePinnedTabs(); void startTabAnimation(int index); void stopTabAnimation(int index); void setCurrentIndex(int index); void setTabIcon(int index, const QIcon &icon); void setTabText(int index, const QString &text); void nextTab(); void previousTab(); void currentTabChanged(int index); int normalTabsCount() const; int pinnedTabsCount() const; int lastTabIndex() const; TabBar* getTabBar() const; ClosedTabsManager* closedTabsManager() const; QList allTabs(bool withPinned = true); bool canRestoreTab() const; QStackedWidget* locationBars() const; ToolButton* buttonListTabs() const; AddTabButton* buttonAddTab() const; void disconnectObjects(); public slots: int addView(const QUrl &url, const Qz::NewTabPositionFlags &openFlags, bool selectLine = false, bool pinned = false); int addView(const QNetworkRequest &req, const Qz::NewTabPositionFlags &openFlags, bool selectLine = false, bool pinned = false); int addView(const QUrl &url, const QString &title = tr("New tab"), const Qz::NewTabPositionFlags &openFlags = Qz::NT_SelectedTab, bool selectLine = false, int position = -1, bool pinned = false); int addView(QNetworkRequest req, const QString &title = tr("New tab"), const Qz::NewTabPositionFlags &openFlags = Qz::NT_SelectedTab, bool selectLine = false, int position = -1, bool pinned = false); int addView(WebTab* tab); void addTabFromClipboard(); int duplicateTab(int index); void closeTab(int index = -1, bool force = false); void reloadTab(int index); void reloadAllTabs(); void stopTab(int index); void closeAllButCurrent(int index); void detachTab(int index); void restoreClosedTab(QObject* obj = 0); void restoreAllClosedTabs(); void clearClosedTabsList(); void aboutToShowClosedTabsMenu(); void moveAddTabButton(int posX); void showButtons(); void hideButtons(); void tabBarOverFlowChanged(bool overFlowed); private slots: void aboutToShowTabsMenu(); void actionChangeIndex(); void tabMoved(int before, int after); private: WebTab* weTab(); WebTab* weTab(int index); inline bool validIndex(int index) const { return index >= 0 && index < count(); } bool m_dontQuitWithOneTab; bool m_closedInsteadOpened; bool m_newTabAfterActive; bool m_newEmptyTabAfterActive; QUrl m_urlOnNewTab; QupZilla* p_QupZilla; int m_lastTabIndex; int m_lastBackgroundTabIndex; bool m_isClosingToLastTabIndex; bool m_isRestoringState; TabBar* m_tabBar; MenuTabs* m_menuTabs; ToolButton* m_buttonListTabs; AddTabButton* m_buttonAddTab; ToolButton* m_buttonListTabs2; AddTabButton* m_buttonAddTab2; ClosedTabsManager* m_closedTabsManager; QStackedWidget* m_locationBars; }; #endif // TABWIDGET_H qupzilla-1.6.0/src/lib/webview/webhistorywrapper.cpp000066400000000000000000000057441226107126500227040ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "webhistorywrapper.h" #include #include #include QList WebHistoryWrapper::forwardItems(int maxItems, QWebHistory* history) { QList list; QUrl lastUrl = history->currentItem().url(); int count = 0; foreach (const QWebHistoryItem &item, history->forwardItems(maxItems + 5)) { if (item.url() == lastUrl || count == maxItems) { continue; } lastUrl = item.url(); list.append(item); count++; } return list; } QList WebHistoryWrapper::backItems(int maxItems, QWebHistory* history) { QList list; QUrl lastUrl = history->currentItem().url(); int count = 0; QList bItems = history->backItems(maxItems + 5); for (int i = bItems.count() - 1; i >= 0; i--) { QWebHistoryItem item = bItems.at(i); if (item.url() == lastUrl || count == maxItems) { continue; } lastUrl = item.url(); list.append(item); count++; } return list; } bool WebHistoryWrapper::canGoForward(QWebHistory* history) { return !forwardItems(1, history).isEmpty(); } bool WebHistoryWrapper::canGoBack(QWebHistory* history) { return !backItems(1, history).isEmpty(); } void WebHistoryWrapper::goBack(QWebHistory* history) { QList items = backItems(1, history); if (items.isEmpty()) { return; } history->goToItem(items.at(0)); } void WebHistoryWrapper::goForward(QWebHistory* history) { QList items = forwardItems(1, history); if (items.isEmpty()) { return; } history->goToItem(items.at(0)); } int WebHistoryWrapper::indexOfItem(const QList &list, const QWebHistoryItem &item) { for (int i = 0; i < list.count(); i++) { QWebHistoryItem it = list.at(i); if (it.lastVisited() == item.lastVisited() && it.originalUrl() == item.originalUrl() && it.title() == item.title() && it.url() == item.url()) { return i; } } return -1; } qupzilla-1.6.0/src/lib/webview/webhistorywrapper.h000066400000000000000000000027701226107126500223450ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef WEBHISTORYWRAPPER_H #define WEBHISTORYWRAPPER_H #include #include "qz_namespace.h" class QWebHistory; class QWebHistoryItem; class WebHistoryWrapper { public: static QList forwardItems(int maxItems, QWebHistory* history); static QList backItems(int maxItems, QWebHistory* history); static bool canGoForward(QWebHistory* history); static bool canGoBack(QWebHistory* history); static void goBack(QWebHistory* history); static void goForward(QWebHistory* history); static int indexOfItem(const QList &list, const QWebHistoryItem &item); }; #endif // WEBHISTORYWRAPPER_H qupzilla-1.6.0/src/lib/webview/webinspectordockwidget.cpp000066400000000000000000000045211226107126500236450ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "webinspectordockwidget.h" #include "docktitlebarwidget.h" #include "webpage.h" #include "tabbedwebview.h" #include "webtab.h" #include "qupzilla.h" WebInspectorDockWidget::WebInspectorDockWidget(QupZilla* mainClass) : QDockWidget(mainClass) , p_QupZilla(mainClass) { setWindowTitle(tr("Web Inspector")); setObjectName("WebInspector"); setFeatures(0); setTitleBarWidget(new DockTitleBarWidget(tr("Web Inspector"), this)); show(); } void WebInspectorDockWidget::toggleVisibility() { if (isVisible()) { close(); } else { show(); } } void WebInspectorDockWidget::close() { p_QupZilla->weView()->webTab()->setInspectorVisible(false); p_QupZilla->weView()->setFocus(); hide(); } void WebInspectorDockWidget::show() { QWebPage* page = p_QupZilla->weView()->page(); QPointer inspector = m_inspectors[page]; if (!inspector) { inspector = new WebInspector(this); inspector.data()->setPage(p_QupZilla->weView()->page()); m_inspectors[page] = inspector; } if (m_currentInspector != inspector) { setWidget(inspector.data()); m_currentInspector = inspector; } p_QupZilla->weView()->webTab()->setInspectorVisible(true); QDockWidget::show(); } void WebInspectorDockWidget::tabChanged() { if (p_QupZilla->weView()->webTab()->inspectorVisible()) { show(); } else { close(); } } WebInspectorDockWidget::~WebInspectorDockWidget() { } qupzilla-1.6.0/src/lib/webview/webinspectordockwidget.h000066400000000000000000000034261226107126500233150ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef WEBINSPECTORDOCKWIDGET_H #define WEBINSPECTORDOCKWIDGET_H #include #include #include #include #include "qz_namespace.h" class QT_QUPZILLA_EXPORT WebInspector : public QWebInspector { public: explicit WebInspector(QWidget* parent) : QWebInspector(parent) { } private: void hideEvent(QHideEvent*) { // Prevent re-initializing QWebInspector after changing tab / virtual desktop } }; class QupZilla; class QT_QUPZILLA_EXPORT WebInspectorDockWidget : public QDockWidget { Q_OBJECT public: explicit WebInspectorDockWidget(QupZilla* mainClass); ~WebInspectorDockWidget(); void toggleVisibility(); signals: public slots: void tabChanged(); void close(); void show(); private: QupZilla* p_QupZilla; QHash > m_inspectors; QPointer m_currentInspector; }; #endif // WEBINSPECTORDOCKWIDGET_H qupzilla-1.6.0/src/lib/webview/webpage.cpp000066400000000000000000001021551226107126500205100ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "webpage.h" #include "tabbedwebview.h" #include "tabwidget.h" #include "qupzilla.h" #include "pluginproxy.h" #include "downloadmanager.h" #include "webpluginfactory.h" #include "mainapplication.h" #include "checkboxdialog.h" #include "widget.h" #include "qztools.h" #include "speeddial.h" #include "autofill.h" #include "popupwebpage.h" #include "popupwebview.h" #include "networkmanagerproxy.h" #include "adblockicon.h" #include "adblockmanager.h" #include "iconprovider.h" #include "qzsettings.h" #include "useragentmanager.h" #include "delayedfilewatcher.h" #include "recoverywidget.h" #include "html5permissions/html5permissionsmanager.h" #include "schemehandlers/fileschemehandler.h" #ifdef NONBLOCK_JS_DIALOGS #include "ui_jsconfirm.h" #include "ui_jsalert.h" #include "ui_jsprompt.h" #include #endif #include #include #include #include #include #include #include #include #include #include #include QString WebPage::s_lastUploadLocation = QDir::homePath(); QUrl WebPage::s_lastUnsupportedUrl; QTime WebPage::s_lastUnsupportedUrlTime; QList WebPage::s_livingPages; WebPage::WebPage(QObject* parent) : QWebPage(parent) , m_view(0) , m_speedDial(mApp->plugins()->speedDial()) , m_fileWatcher(0) , m_runningLoop(0) , m_loadProgress(-1) , m_blockAlerts(false) , m_secureStatus(false) , m_adjustingScheduled(false) { m_networkProxy = new NetworkManagerProxy(this); m_networkProxy->setPrimaryNetworkAccessManager(mApp->networkManager()); m_networkProxy->setPage(this); setNetworkAccessManager(m_networkProxy); setForwardUnsupportedContent(true); setPluginFactory(new WebPluginFactory(this)); history()->setMaximumItemCount(20); connect(this, SIGNAL(unsupportedContent(QNetworkReply*)), this, SLOT(handleUnsupportedContent(QNetworkReply*))); connect(this, SIGNAL(loadProgress(int)), this, SLOT(progress(int))); connect(this, SIGNAL(loadFinished(bool)), this, SLOT(finished())); connect(this, SIGNAL(printRequested(QWebFrame*)), this, SLOT(printFrame(QWebFrame*))); connect(this, SIGNAL(downloadRequested(QNetworkRequest)), this, SLOT(downloadRequested(QNetworkRequest))); connect(this, SIGNAL(windowCloseRequested()), this, SLOT(windowCloseRequested())); connect(this, SIGNAL(databaseQuotaExceeded(QWebFrame*,QString)), this, SLOT(dbQuotaExceeded(QWebFrame*))); connect(mainFrame(), SIGNAL(javaScriptWindowObjectCleared()), this, SLOT(addJavaScriptObject())); #if QTWEBKIT_FROM_2_2 connect(this, SIGNAL(featurePermissionRequested(QWebFrame*,QWebPage::Feature)), this, SLOT(featurePermissionRequested(QWebFrame*,QWebPage::Feature))); #endif #if QTWEBKIT_FROM_2_3 connect(this, SIGNAL(applicationCacheQuotaExceeded(QWebSecurityOrigin*,quint64,quint64)), this, SLOT(appCacheQuotaExceeded(QWebSecurityOrigin*,quint64))); #elif QTWEBKIT_FROM_2_2 connect(this, SIGNAL(applicationCacheQuotaExceeded(QWebSecurityOrigin*,quint64)), this, SLOT(appCacheQuotaExceeded(QWebSecurityOrigin*,quint64))); #endif s_livingPages.append(this); } QUrl WebPage::url() const { return mainFrame()->url(); } void WebPage::setWebView(TabbedWebView* view) { if (m_view == view) { return; } if (m_view) { delete m_view; m_view = 0; } m_view = view; m_view->setWebPage(this); connect(m_view, SIGNAL(urlChanged(QUrl)), this, SLOT(urlChanged(QUrl))); } void WebPage::scheduleAdjustPage() { WebView* webView = qobject_cast(view()); if (!webView) { return; } if (webView->isLoading()) { m_adjustingScheduled = true; } else { const QSize originalSize = webView->size(); QSize newSize(originalSize.width() - 1, originalSize.height() - 1); webView->resize(newSize); webView->resize(originalSize); } } bool WebPage::loadingError() const { return !mainFrame()->findFirstElement("span[id=\"qupzilla-error-page\"]").isNull(); } void WebPage::addRejectedCerts(const QList &certs) { foreach (const QSslCertificate &cert, certs) { if (!m_rejectedSslCerts.contains(cert)) { m_rejectedSslCerts.append(cert); } } } bool WebPage::containsRejectedCerts(const QList &certs) { int matches = 0; foreach (const QSslCertificate &cert, certs) { if (m_rejectedSslCerts.contains(cert)) { ++matches; } if (m_sslCert == cert) { m_sslCert.clear(); } } return matches == certs.count(); } QWebElement WebPage::activeElement() const { QRect activeRect = inputMethodQuery(Qt::ImMicroFocus).toRect(); return mainFrame()->hitTestContent(activeRect.center()).element(); } bool WebPage::isRunningLoop() { return m_runningLoop; } bool WebPage::isLoading() const { return m_loadProgress < 100; } void WebPage::urlChanged(const QUrl &url) { Q_UNUSED(url) if (isLoading()) { m_adBlockedEntries.clear(); m_blockAlerts = false; } } void WebPage::progress(int prog) { m_loadProgress = prog; bool secStatus = QzTools::isCertificateValid(sslCertificate()); if (secStatus != m_secureStatus) { m_secureStatus = secStatus; emit privacyChanged(QzTools::isCertificateValid(sslCertificate())); } } void WebPage::finished() { progress(100); if (m_adjustingScheduled) { m_adjustingScheduled = false; mainFrame()->setZoomFactor(mainFrame()->zoomFactor() + 1); mainFrame()->setZoomFactor(mainFrame()->zoomFactor() - 1); } // File scheme watcher if (url().scheme() == QLatin1String("file")) { QFileInfo info(url().toLocalFile()); if (info.isFile()) { if (!m_fileWatcher) { m_fileWatcher = new DelayedFileWatcher(this); connect(m_fileWatcher, SIGNAL(delayedFileChanged(QString)), this, SLOT(watchedFileChanged(QString))); } const QString filePath = url().toLocalFile(); if (QFile::exists(filePath) && !m_fileWatcher->files().contains(filePath)) { m_fileWatcher->addPath(filePath); } } } else if (m_fileWatcher && !m_fileWatcher->files().isEmpty()) { m_fileWatcher->removePaths(m_fileWatcher->files()); } // Autofill m_passwordEntries = mApp->autoFill()->completePage(this); // AdBlock cleanBlockedObjects(); } void WebPage::watchedFileChanged(const QString &file) { if (url().toLocalFile() == file) { triggerAction(QWebPage::Reload); } } void WebPage::printFrame(QWebFrame* frame) { WebView* webView = qobject_cast(view()); if (!webView) { return; } webView->printPage(frame); } void WebPage::addJavaScriptObject() { if (url().toString() != QLatin1String("qupzilla:speeddial")) { return; } mainFrame()->addToJavaScriptWindowObject("speeddial", m_speedDial); m_speedDial->addWebFrame(mainFrame()); } void WebPage::handleUnsupportedContent(QNetworkReply* reply) { if (!reply) { return; } const QUrl url = reply->url(); switch (reply->error()) { case QNetworkReply::NoError: if (reply->header(QNetworkRequest::ContentTypeHeader).isValid()) { QString requestUrl = reply->request().url().toString(QUrl::RemoveFragment | QUrl::RemoveQuery); if (requestUrl.endsWith(QLatin1String(".swf"))) { const QWebElement docElement = mainFrame()->documentElement(); const QWebElement object = docElement.findFirst(QString("object[src=\"%1\"]").arg(requestUrl)); const QWebElement embed = docElement.findFirst(QString("embed[src=\"%1\"]").arg(requestUrl)); if (!object.isNull() || !embed.isNull()) { qDebug() << "WebPage::UnsupportedContent" << url << "Attempt to download flash object on site!"; reply->deleteLater(); return; } } DownloadManager* dManager = mApp->downManager(); dManager->handleUnsupportedContent(reply, this); return; } case QNetworkReply::ProtocolUnknownError: { if (url.scheme() == QLatin1String("file")) { FileSchemeHandler::handleUrl(url); return; } qDebug() << "WebPage::UnsupportedContent" << url << "ProtocolUnknowError"; desktopServicesOpen(url); reply->deleteLater(); return; } default: break; } qDebug() << "WebPage::UnsupportedContent error" << url << reply->errorString(); reply->deleteLater(); } void WebPage::handleUnknownProtocol(const QUrl &url) { const QString protocol = url.scheme(); if (protocol == QLatin1String("mailto")) { desktopServicesOpen(url); return; } if (qzSettings->blockedProtocols.contains(protocol)) { qDebug() << "WebPage::handleUnknownProtocol Protocol" << protocol << "is blocked!"; return; } if (qzSettings->autoOpenProtocols.contains(protocol)) { desktopServicesOpen(url); return; } CheckBoxDialog dialog(QDialogButtonBox::Yes | QDialogButtonBox::No, view()); const QString wrappedUrl = QzTools::alignTextToWidth(url.toString(), "
    ", dialog.fontMetrics(), 450); const QString text = tr("QupZilla cannot handle %1: links. The requested link " "is
    • %2
    Do you want QupZilla to try " "open this link in system application?").arg(protocol, wrappedUrl); dialog.setText(text); dialog.setCheckBoxText(tr("Remember my choice for this protocol")); dialog.setWindowTitle(tr("External Protocol Request")); dialog.setIcon(qIconProvider->standardIcon(QStyle::SP_MessageBoxQuestion)); switch (dialog.exec()) { case QDialog::Accepted: if (dialog.isChecked()) { qzSettings->autoOpenProtocols.append(protocol); qzSettings->saveSettings(); } QDesktopServices::openUrl(url); break; case QDialog::Rejected: if (dialog.isChecked()) { qzSettings->blockedProtocols.append(protocol); qzSettings->saveSettings(); } break; default: break; } } void WebPage::desktopServicesOpen(const QUrl &url) { // Open same url only once in 2 secs if (s_lastUnsupportedUrl != url || QTime::currentTime() > s_lastUnsupportedUrlTime.addSecs(2)) { s_lastUnsupportedUrl = url; s_lastUnsupportedUrlTime = QTime::currentTime(); QDesktopServices::openUrl(url); } else { qWarning() << "WebPage::desktopServicesOpen Url" << url << "has already been opened!\n" "Ignoring it to prevent infinite loop!"; } } void WebPage::downloadRequested(const QNetworkRequest &request) { DownloadManager* dManager = mApp->downManager(); dManager->download(request, this); } void WebPage::windowCloseRequested() { WebView* webView = qobject_cast(view()); if (!webView) { return; } webView->closeView(); } void WebPage::dbQuotaExceeded(QWebFrame* frame) { if (!frame) { return; } const QWebSecurityOrigin origin = frame->securityOrigin(); const qint64 oldQuota = origin.databaseQuota(); frame->securityOrigin().setDatabaseQuota(oldQuota * 2); } #ifdef USE_QTWEBKIT_2_2 void WebPage::appCacheQuotaExceeded(QWebSecurityOrigin* origin, quint64 originalQuota) { if (!origin) { return; } origin->setApplicationCacheQuota(originalQuota * 2); } void WebPage::featurePermissionRequested(QWebFrame* frame, const QWebPage::Feature &feature) { mApp->html5permissions()->requestPermissions(this, frame, feature); } #endif // USE_QTWEBKIT_2_2 bool WebPage::event(QEvent* event) { if (event->type() == QEvent::Leave) { // QWebPagePrivate::leaveEvent(): // Fake a mouse move event just outside of the widget, since all // the interesting mouse-out behavior like invalidating scrollbars // is handled by the WebKit event handler's mouseMoved function. // However, its implementation fake mouse move event on QCursor::pos() // position that is in global screen coordinates. So instead of // really faking it, it just creates mouse move event somewhere in // page. It can for example focus a link, and then link url gets // stuck in status bar message. // So we are faking mouse move event with proper coordinates for // so called "just outside of the widget" position const QPoint cursorPos = view()->mapFromGlobal(QCursor::pos()); QPoint mousePos; if (cursorPos.y() < 0) { // Left on top mousePos = QPoint(cursorPos.x(), -1); } else if (cursorPos.x() < 0) { // Left on left mousePos = QPoint(-1, cursorPos.y()); } else if (cursorPos.y() > view()->height()) { // Left on bottom mousePos = QPoint(cursorPos.x(), view()->height() + 1); } else { // Left on right mousePos = QPoint(view()->width() + 1, cursorPos.y()); } QMouseEvent fakeEvent(QEvent::MouseMove, mousePos, Qt::NoButton, Qt::NoButton, Qt::NoModifier); return QWebPage::event(&fakeEvent); } return QWebPage::event(event); } void WebPage::setSSLCertificate(const QSslCertificate &cert) { // if (cert != m_SslCert) m_sslCert = cert; } QSslCertificate WebPage::sslCertificate() { if (url().scheme() == QLatin1String("https") && QzTools::isCertificateValid(m_sslCert)) { return m_sslCert; } return QSslCertificate(); } bool WebPage::acceptNavigationRequest(QWebFrame* frame, const QNetworkRequest &request, NavigationType type) { m_lastRequestType = type; m_lastRequestUrl = request.url(); if (type == QWebPage::NavigationTypeFormResubmitted) { // Don't show this dialog if app is still starting if (!view() || !view()->isVisible()) { return false; } QString message = tr("To show this page, QupZilla must resend request which do it again \n" "(like searching on making an shopping, which has been already done.)"); bool result = (QMessageBox::question(view(), tr("Confirm form resubmission"), message, QMessageBox::Yes | QMessageBox::No, QMessageBox::No) == QMessageBox::Yes); if (!result) { return false; } } bool accept = QWebPage::acceptNavigationRequest(frame, request, type); return accept; } void WebPage::populateNetworkRequest(QNetworkRequest &request) { WebPage* pagePointer = this; QVariant variant = QVariant::fromValue((void*) pagePointer); request.setAttribute((QNetworkRequest::Attribute)(QNetworkRequest::User + 100), variant); if (m_lastRequestUrl == request.url()) { request.setAttribute((QNetworkRequest::Attribute)(QNetworkRequest::User + 101), m_lastRequestType); if (m_lastRequestType == NavigationTypeLinkClicked) { request.setRawHeader("X-QupZilla-UserLoadAction", QByteArray("1")); } } } QWebPage* WebPage::createWindow(QWebPage::WebWindowType type) { if (m_view) { return new PopupWebPage(type, m_view->mainWindow()); } if (PopupWebPage* popupPage = qobject_cast(this)) { return new PopupWebPage(type, popupPage->mainWindow()); } return 0; } QObject* WebPage::createPlugin(const QString &classid, const QUrl &url, const QStringList ¶mNames, const QStringList ¶mValues) { Q_UNUSED(url) Q_UNUSED(paramNames) Q_UNUSED(paramValues) if (classid == QLatin1String("RecoveryWidget") && mApp->restoreManager() && m_view) { return new RecoveryWidget(m_view, m_view->mainWindow()); } else { mainFrame()->load(QUrl("qupzilla:start")); } return 0; } void WebPage::addAdBlockRule(const AdBlockRule* rule, const QUrl &url) { AdBlockedEntry entry; entry.rule = rule; entry.url = url; if (!m_adBlockedEntries.contains(entry)) { m_adBlockedEntries.append(entry); } } QVector WebPage::adBlockedEntries() const { return m_adBlockedEntries; } bool WebPage::hasMultipleUsernames() const { return m_passwordEntries.count() > 1; } QVector WebPage::autoFillData() const { return m_passwordEntries; } void WebPage::cleanBlockedObjects() { AdBlockManager* manager = AdBlockManager::instance(); if (!manager->isEnabled()) { return; } const QWebElement docElement = mainFrame()->documentElement(); foreach (const AdBlockedEntry &entry, m_adBlockedEntries) { const QString urlString = entry.url.toString(); if (urlString.endsWith(QLatin1String(".js")) || urlString.endsWith(QLatin1String(".css"))) { continue; } QString urlEnd; int pos = urlString.lastIndexOf(QLatin1Char('/')); if (pos > 8) { urlEnd = urlString.mid(pos + 1); } if (urlString.endsWith(QLatin1Char('/'))) { urlEnd = urlString.left(urlString.size() - 1); } QString selector("img[src$=\"%1\"], iframe[src$=\"%1\"],embed[src$=\"%1\"]"); QWebElementCollection elements = docElement.findAll(selector.arg(urlEnd)); foreach (QWebElement element, elements) { QString src = element.attribute("src"); src.remove(QLatin1String("../")); if (urlString.contains(src)) { element.setStyleProperty("display", "none"); } } } // Apply domain-specific element hiding rules QString elementHiding = manager->elementHidingRulesForDomain(url()); if (elementHiding.isEmpty()) { return; } elementHiding.append(QLatin1String("\n")); QWebElement bodyElement = docElement.findFirst("body"); bodyElement.appendInside("










    qupzilla-1.6.0/src/plugins/PIM/translations/000077500000000000000000000000001226107126500207775ustar00rootroot00000000000000qupzilla-1.6.0/src/plugins/PIM/translations/ar_SA.ts000066400000000000000000000152651226107126500223450ustar00rootroot00000000000000 PIM_Handler Last Name الاسم الأخير First Name الاسم الأول E-mail البريد الإلكتروني Mobile رقم الجوال Phone رقم الهاتف Address العنوان City المدينة ZIP Code مفتاح المنطقة State/Region الولاية/الناحية Country البلد Home Page الموقع الشخصي Custom 1 مخصّص 1 Custom 2 مخصّص 2 Custom 3 مخصّص 3 Insert Personal Information أدخل المعلومات الشخصية Edit عدّل PIM_Settings PIM Settings إعدادات إدارة المعلومات الشخصية <h2>Personal Information Manager</h2> <h2>إدارة المعلومات الشخصية</h2> Your personal information that will be used on webpages. معلوماتك الشخصية التي ستستخدم على صفحات الوِب. First Name: الاسم الأول: Last Name: الاسم الأخير: E-mail: البريد الإلكتروني: Phone: رقم الهاتف: Mobile Phone: رقم الجوال: Address: العنوان: City: المدينة: ZIP Code: مفتاح المنطقة: State/Region: الولاية/الناحية: Country: البلد: Home Page: الموقع الشخصي: Custom 1: مخصّص 1: Custom 2: مخصّص 2: Custom 3: مخصّص 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>ملاحظة:</b> اضغط Ctrl+ENTER إن أردت أن يملأ كَبزيلا تلقائياً الحقول المناسبة التي يجدها ضمن النماذج في صفحات الويب. qupzilla-1.6.0/src/plugins/PIM/translations/bg_BG.ts000066400000000000000000000151331226107126500223120ustar00rootroot00000000000000 PIM_Handler Last Name Фамилия First Name Име E-mail E-mail Mobile Мобилен Phone Телефон Address Адрес City Град ZIP Code Индекс State/Region Регион Country Страна Home Page Лична страница Custom 1 По избор 1 Custom 2 По избор 2 Custom 3 По избор 3 Insert Personal Information Въвеждане на лична информация Edit Редактиране PIM_Settings PIM Settings PIM Настройки <h2>Personal Information Manager</h2> <h2>Управление на лична информация</h2> Your personal information that will be used on webpages. Вашата лична информация, която ще бъде използвана на уеб-страници. First Name: Име: Last Name: Фамилия: E-mail: E-mail: Phone: Телефон: Mobile Phone: Мобилен телефон: Address: Адрес: City: Град: ZIP Code: Индекс: State/Region: Регион: Country: Страна: Home Page: Лична страница: Custom 1: По избор 1: Custom 2: По избор 2: Custom 3: По избор 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Забележка:</ b> Натиснете Ctrl + Enter, за да се попълнят автоматично полетата на формуляра, за които QupZilla намери лични записи! qupzilla-1.6.0/src/plugins/PIM/translations/bo_CN.ts000066400000000000000000000135421226107126500223340ustar00rootroot00000000000000 PIM_Handler Last Name First Name E-mail Mobile Phone Address City ZIP Code State/Region Country Home Page Custom 1 Custom 2 Custom 3 Insert Personal Information Edit PIM_Settings PIM Settings <h2>Personal Information Manager</h2> Your personal information that will be used on webpages. First Name: Last Name: E-mail: Phone: Mobile Phone: Address: City: ZIP Code: State/Region: Country: Home Page: Custom 1: Custom 2: Custom 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. qupzilla-1.6.0/src/plugins/PIM/translations/ca_ES.ts000066400000000000000000000145031226107126500223240ustar00rootroot00000000000000 PIM_Handler Last Name Cognom First Name Nom E-mail Correu electrònic Mobile Telèfon mòbil Phone Telèfon fix Address Adreça City Ciutat ZIP Code Codi postal State/Region Estat/Regió Country País Home Page Pàgina d'inici Custom 1 Personalitzat 1 Custom 2 Personalitzat 2 Custom 3 Personalitzat 3 Insert Personal Information Inseriu la vostra informació personal Edit Edita PIM_Settings PIM Settings Preferències <h2>Personal Information Manager</h2> <h2>Gestor d'informació personal</h2> Your personal information that will be used on webpages. La vostra informació personal que es farà servir a les pàgines web. First Name: Nom: Last Name: Cognom: E-mail: Correu electrònic: Phone: Telèfon fix: Mobile Phone: Telèfon mòbil: Address: Adreça: City: Ciutat: ZIP Code: Codi postal: State/Region: Estat/Regió: Country: País: Home Page: Pàgina d'inici: Custom 1: Personalitzat 1: Custom 2: Personalitzat 2: Custom 3: Personalitzat 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Nota:</b> Premeu Ctrl+Retorn per autocompletar els camps de formulari per als quals el QupZilla trobi entrades personals. qupzilla-1.6.0/src/plugins/PIM/translations/cs_CZ.ts000066400000000000000000000143011226107126500223470ustar00rootroot00000000000000 PIM_Handler Last Name Jméno First Name Příjmení E-mail E-mail Mobile Mobilní telefon Phone Telefon Address Adresa City Město ZIP Code PSČ State/Region Oblast/Stát Country Země Home Page Domovská stránka Custom 1 Vlastní 1 Custom 2 Vlastní 2 Custom 3 Vlastní 3 Insert Personal Information Vložit osobní údaj Edit Upravit PIM_Settings PIM Settings PIM Nastavení <h2>Personal Information Manager</h2> <h2>Správce osobních údajů</h2> Your personal information that will be used on webpages. Vaše osobní údaje které budou použity na stránkách. First Name: Příjmení: Last Name: Jméno: E-mail: E-mail: Phone: Telefon: Mobile Phone: Mobilní telefon: Address: Adresa: City: Město: ZIP Code: PSČ: State/Region: Oblast/Stát: Country: Země: Home Page: Domovská stránka: Custom 1: Vlastní 1: Custom 2: Vlastní 2: Custom 3: Vlastní 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Poznámka:</b> Ctrl+ENTER slouží k automatickému vyplnění známých polí na stránce. qupzilla-1.6.0/src/plugins/PIM/translations/da_DK.ts000066400000000000000000000143201226107126500223110ustar00rootroot00000000000000 PIM_Handler Last Name Efternavn First Name Fornavn E-mail E-mail Mobile Mobilnummer Phone Telefon Address Adresse City By ZIP Code Postnummer State/Region Delstat/Region Country Land Home Page Hjemmeside Custom 1 Custom 1 Custom 2 Custom 2 Custom 3 Custom 3 Insert Personal Information Indsæt personlige oplysninger Edit Rediger PIM_Settings PIM Settings PIM-indstillinger <h2>Personal Information Manager</h2> <h2>Håndtering af personlige oplysninger</h2> Your personal information that will be used on webpages. Dine personlige oplysninger, der vil blive anvendt på hjemmesider. First Name: Fornavn: Last Name: Efternavn: E-mail: E-mail: Phone: Telefon: Mobile Phone: Mobilnummer: Address: Adresse: City: By: ZIP Code: Postnummer: State/Region: Delstat/Region: Country: Land: Home Page: Hjemmeside: Custom 1: Custom 1: Custom 2: Custom 2: Custom 3: Custom 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Note:</b>Tryk Ctrl+Enter for at udfylde formularfelter automatisk, når Qupzilla finder personoplysninger. qupzilla-1.6.0/src/plugins/PIM/translations/de_DE.ts000066400000000000000000000143741226107126500223200ustar00rootroot00000000000000 PIM_Handler Last Name Nachname First Name Vorname E-mail E-Mail Mobile Mobiltelefon Phone Telefon Address Adresse City Stadt ZIP Code Postleitzahl State/Region Bundesland/ Region Country Land Home Page Homepage Custom 1 Benutzerdefiniert 1 Custom 2 Benutzerdefiniert 2 Custom 3 Benutzerdefiniert 3 Insert Personal Information Persönliche Informationen eintragen Edit Bearbeiten PIM_Settings PIM Settings PIM Einstellungen <h2>Personal Information Manager</h2> <h2>Personal Information Manager</h2> Your personal information that will be used on webpages. Ihre persönlichen Informationen für Formulare. First Name: Vorname: Last Name: Nachname: E-mail: E-Mail: Phone: Telefon: Mobile Phone: Mobiltelefon: Address: Adresse: City: Stadt: ZIP Code: Postleitzahl: State/Region: Bundesland/ Region: Country: Land: Home Page: Homepage: Custom 1: Benutzerdefiniert 1: Custom 2: Benutzerdefiniert 2: Custom 3: Benutzerdefiniert 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Note:</b> Drücken Sie STRG+ENTER um die Formularfelder automatisch ausfüllen zu lassen. qupzilla-1.6.0/src/plugins/PIM/translations/el_GR.ts000066400000000000000000000155051226107126500223450ustar00rootroot00000000000000 PIM_Handler Last Name Επώνυμο First Name Όνομα E-mail E-mail Mobile Κινητό τηλέφωνο Phone Τηλέφωνο Address Διεύθυνση City ΠόληCiudad ZIP Code Ταχυδρομικός κώδικας State/Region Πολιτεία/Περιοχή Country Χώρα Home Page Αρχική σελίδα Custom 1 Προσαρμοσμένο 1 Custom 2 Προσαρμοσμένο 2 Custom 3 Προσαρμοσμένο 3 Insert Personal Information Εισαγωγή προσωπικών πληροφοριών Edit Επεξεργασία PIM_Settings PIM Settings Ρυθμίσεις PIM <h2>Personal Information Manager</h2> <h2>Διαχειριστής προσωπικών πληροφοριών (PIM)</h2> Your personal information that will be used on webpages. Οι προσωπικές σας πληροφορίες που θα χρησιμοποιούνται στις διαδικτυακές σελίδες. First Name: Όνομα: Last Name: Επώνυμο: E-mail: E-mail : Phone: Τηλέφωνο: Mobile Phone: Κινητό τηλέφωνο: Address: Διεύθυνση: City: Πόλη: ZIP Code: Ταχυδρομικός κώδικας: State/Region: Πολιτεία/Περιοχή: Country: Χώρα: Home Page: Αρχική σελίδα: Custom 1: Προσαρμοσμένο 1: Custom 2: Προσαρμοσμένο 2: Custom 3: Προσαρμοσμένο 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Σημείωση:</b> Πατήστε Cntrl+ENTER για αυτόματο συμπλήρωμα σε φόρμες για τα οποία το QupZilla βρίσκει προσωπικές εισαγωγές. qupzilla-1.6.0/src/plugins/PIM/translations/empty.ts000066400000000000000000000144361226107126500225150ustar00rootroot00000000000000 PIM_Handler Last Name First Name E-mail Mobile Phone Address City ZIP Code State/Region Country Home Page Custom 1 Custom 2 Custom 3 Insert Personal Information Edit PIM_Settings PIM Settings <h2>Personal Information Manager</h2> Your personal information that will be used on webpages. First Name: Last Name: E-mail: Phone: Mobile Phone: Address: City: ZIP Code: State/Region: Country: Home Page: Custom 1: Custom 2: Custom 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. qupzilla-1.6.0/src/plugins/PIM/translations/es_419.ts000066400000000000000000000135431226107126500223610ustar00rootroot00000000000000 PIM_Handler Last Name First Name E-mail Mobile Phone Address City ZIP Code State/Region Country Home Page Custom 1 Custom 2 Custom 3 Insert Personal Information Edit PIM_Settings PIM Settings <h2>Personal Information Manager</h2> Your personal information that will be used on webpages. First Name: Last Name: E-mail: Phone: Mobile Phone: Address: City: ZIP Code: State/Region: Country: Home Page: Custom 1: Custom 2: Custom 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. qupzilla-1.6.0/src/plugins/PIM/translations/es_AR.ts000066400000000000000000000135421226107126500223450ustar00rootroot00000000000000 PIM_Handler Last Name First Name E-mail Mobile Phone Address City ZIP Code State/Region Country Home Page Custom 1 Custom 2 Custom 3 Insert Personal Information Edit PIM_Settings PIM Settings <h2>Personal Information Manager</h2> Your personal information that will be used on webpages. First Name: Last Name: E-mail: Phone: Mobile Phone: Address: City: ZIP Code: State/Region: Country: Home Page: Custom 1: Custom 2: Custom 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. qupzilla-1.6.0/src/plugins/PIM/translations/es_ES.ts000066400000000000000000000145021226107126500223470ustar00rootroot00000000000000 PIM_Handler Last Name Apellido First Name Nombre E-mail E-mail Mobile Teléfono movil Phone Teléfono Address Dirección City Ciudad ZIP Code Código postal State/Region Estado/Región Country País Home Page Página de inicio Custom 1 Dato adicional 1 Custom 2 Dato adicional 2 Custom 3 Dato adicional 3 Insert Personal Information Ingresar información personal Edit Editar PIM_Settings PIM Settings Ajustes de PIM <h2>Personal Information Manager</h2> <h2>Administrador de información personal</h2> Your personal information that will be used on webpages. Su información personal que se utilizara en páginas web. First Name: Nombre: Last Name: Apellido: E-mail: E-mail : Phone: Teléfono: Mobile Phone: Teléfono movil: Address: Dirección: City: Ciudad: ZIP Code: Código postal: State/Region: Estado/Región: Country: País: Home Page: Página de inicio: Custom 1: Dato adicional 1: Custom 2: Dato adicional 2: Custom 3: Dato adicional 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Nota:</b> Presione Ctrl+ENTER para rellenar automaticamente campos de formularios para los cuales QupZilla encuentre entradas personales. qupzilla-1.6.0/src/plugins/PIM/translations/es_VE.ts000066400000000000000000000144111226107126500223510ustar00rootroot00000000000000 PIM_Handler Last Name Apellido First Name Nombre E-mail E-mail Mobile Telefono movil Phone Telefono fijo Address Direccion City Ciudad ZIP Code Codigo postal State/Region Estado Country Pais Home Page Sitio Web Custom 1 Complementaria 1 Custom 2 Complementaria 2 Custom 3 Complementaria 3 Insert Personal Information Ingrese informacion personal Edit Modificar PIM_Settings PIM Settings Configuracion PIM <h2>Personal Information Manager</h2> <h2>Manegador de Informacion Personal (PIM)</h2> Your personal information that will be used on webpages. Su informacion personal que sera usada en paginas de internet. First Name: Nombre: Last Name: Apellido: E-mail: E-mail : Phone: Telefono : Mobile Phone: Telefono movil : Address: Direccion: City: Ciudad: ZIP Code: Codigo postal : State/Region: Estado: Country: Pais: Home Page: Sitio Web : Custom 1: Complementaria 1: Custom 2: Complementaria 2: Custom 3: Complementaria 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Nota:</b> Presiona Ctrl+ENTER para autorellenar los campos los cuales QupZilla encuentre la informacion. qupzilla-1.6.0/src/plugins/PIM/translations/eu_ES.ts000066400000000000000000000143661226107126500223610ustar00rootroot00000000000000 PIM_Handler Last Name Abizena First Name Izena E-mail Post@ Mobile Sakelekoa Phone Urrutizkina Address Helbidea City Hiria ZIP Code Posta Kodea State/Region Estatua/Eskualdea Country Herrialdea Home Page Etxeko Orrialdea Custom 1 Norberea 1 Custom 2 Norberea 2 Custom 3 Norberea 3 Insert Personal Information Sartu Norbere Argibideak Edit Editatu PIM_Settings PIM Settings NAK Ezarpenak <h2>Personal Information Manager</h2> <h2>Norbere Argibide Kudeatzailea</h2> Your personal information that will be used on webpages. Web-orrialdetan erabiliko diren zure norbanako argibideak. First Name: Izena: Last Name: Abizena: E-mail: Post@: Phone: Urrutizkina: Mobile Phone: Sakeleko Urrutizkina: Address: Helbidea: City: Hiria: ZIP Code: Posta Kodea: State/Region: Estatua/Eskualdea: Country: Herrialdea: Home Page: Etxeko Orrialdea: Custom 1: Norberea 1: Custom 2: Norberea 2: Custom 3: Norberea 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Oharra:</b> Sakatu Ktrl+SARTU berez-betetzeko galdekizun eremuak QupZillak norbanako sarrerak aurkitzen dituenean. qupzilla-1.6.0/src/plugins/PIM/translations/fa_IR.ts000066400000000000000000000147151226107126500223370ustar00rootroot00000000000000 PIM_Handler Last Name نام خانوادگی First Name نام E-mail رایانامه Mobile تلفن همراه Phone تلفن Address آدرس City شهر ZIP Code کدپستی State/Region ناحیه/ایالت Country کشور Home Page صفحه خانگی Custom 1 شخصی 1 Custom 2 شخصی 2 Custom 3 شخصی32 Insert Personal Information اطلاعات شخصی را وارد کن Edit ویرایش PIM_Settings PIM Settings سامانش PIM <h2>Personal Information Manager</h2> <h2>مدیر اطلاغات شخصی</h2> Your personal information that will be used on webpages. اطلاعات شخصی شما که بر روی صفحه‌های وب استفاده خواهند شد. First Name: نام: Last Name: نام خانوادگی: E-mail: رایانامه: Phone: تلفن: Mobile Phone: تلفن همراه: Address: آدرس: City: شهر: ZIP Code: کدپستی: State/Region: ناحیه/ایالت: Country: کشور: Home Page: صفحه خانگی: Custom 1: شخصی 1: Custom 2: شخصی 2: Custom 3: شخصی 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>توجه:</b> برای پرکردن خودکار فیلدهای فرم Ctrl+Enter را بفشارید تا کوپزیلا ورودی‌های شخصی‌تان را پیدا کند. qupzilla-1.6.0/src/plugins/PIM/translations/fr_FR.ts000066400000000000000000000146101226107126500223470ustar00rootroot00000000000000 PIM_Handler Last Name Nom First Name Prénom E-mail E-mail Mobile Téléphone mobile Phone Téléphone fixe Address Adresse City Ville ZIP Code Code postal State/Region Région Country Pays Home Page Site Web Custom 1 Informations complémentaires 1 Custom 2 Informations complémentaires 2 Custom 3 Informations complémentaires 3 Insert Personal Information Insérer vos informations personnelles Edit Modifier PIM_Settings PIM Settings Paramétres PIM <h2>Personal Information Manager</h2> <h2>Gestionnaire d'informations personnelles (PIM)</h2> Your personal information that will be used on webpages. Vos informations personnelles pouvant être utilisées dans les pages Web. First Name: Prénom : Last Name: Nom : E-mail: E-mail : Phone: Téléphone : Mobile Phone: Téléphone mobile : Address: Adresse : City: Ville : ZIP Code: Code postal : State/Region: Région : Country: Pays : Home Page: Site Web : Custom 1: Informations complémentaires 1 : Custom 2: Informations complémentaires 2 : Custom 3: Informations complémentaires 3 : <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Note:</b> Appuyer sur Ctrl+ENTRER pour auto-compléter les formulaires avec les informations ci-dessus. qupzilla-1.6.0/src/plugins/PIM/translations/gl_ES.ts000066400000000000000000000144551226107126500223510ustar00rootroot00000000000000 PIM_Handler Last Name Apelidos First Name Nome E-mail Correo electrónico Mobile Móbil Phone Teléfono Address Enderezo City Cidade ZIP Code Código postal State/Region Estado/Rexión Country País Home Page Páxina de inicio Custom 1 Personalizada 1 Custom 2 Personalizada 2 Custom 3 Personalizada 3 Insert Personal Information Inserir información persoal Edit Editar PIM_Settings PIM Settings Configuración PIM <h2>Personal Information Manager</h2> <h2>Xestor de información persoal (PIM)</h2> Your personal information that will be used on webpages. A túa información persoal que se ha de usar nas páxinas web. First Name: Nome: Last Name: Apelidos: E-mail: Correo electrónico Phone: Teléfono: Mobile Phone: Teléfono Móbil: Address: Enderezo: City: Cidade: ZIP Code: Código postal: State/Region: Estado/Rexión: Country: País: Home Page: Páxina de inicio: Custom 1: Personalizada 1: Custom 2: Personalizada 2: Custom 3: Personalizada 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Nota:</b>Preme Ctrl+INTRO para que QupZilla encha automaticamente os campos coa información persoal que ten. qupzilla-1.6.0/src/plugins/PIM/translations/he_IL.ts000066400000000000000000000145131226107126500223330ustar00rootroot00000000000000 PIM_Handler Last Name שם משפחה First Name שם מלא E-mail דואל Mobile נייד Phone טלפון Address כתובת City עיר ZIP Code מיקוד State/Region מחוז/אזור Country ארץ Home Page עמוד בית Custom 1 מותאם 1 Custom 2 מותאם 2 Custom 3 מותאם 3 Insert Personal Information הכנס מידע אישי Edit ערוך PIM_Settings PIM Settings הגדרות PIM <h2>Personal Information Manager</h2> <h2>מנהל מידע אישי</h2> Your personal information that will be used on webpages. מידע אישי שלך בו ייעשה שימוש בעמודי רשת. First Name: שם פרטי: Last Name: שם מלא: E-mail: דוא״ל: Phone: טלפון: Mobile Phone: טלפון נייד: Address: כתובת: City: עיר: ZIP Code: מיקוד: State/Region: מחוז/אזור: Country: ארץ: Home Page: עמוד בית: Custom 1: מותאם 1: Custom 2: מותאם 2: Custom 3: מותאם 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>הערה:</b> לחץ Ctrl+ENTER כדי למלא אוטומטית שדות תבנית שהדפדפן QupZilla מזהה כרשומות אישיות. qupzilla-1.6.0/src/plugins/PIM/translations/hu_HU.ts000066400000000000000000000135421226107126500223640ustar00rootroot00000000000000 PIM_Handler Last Name First Name E-mail Mobile Phone Address City ZIP Code State/Region Country Home Page Custom 1 Custom 2 Custom 3 Insert Personal Information Edit PIM_Settings PIM Settings <h2>Personal Information Manager</h2> Your personal information that will be used on webpages. First Name: Last Name: E-mail: Phone: Mobile Phone: Address: City: ZIP Code: State/Region: Country: Home Page: Custom 1: Custom 2: Custom 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. qupzilla-1.6.0/src/plugins/PIM/translations/id_ID.ts000066400000000000000000000143151226107126500223230ustar00rootroot00000000000000 PIM_Handler Last Name Nama Belakang First Name Nama Depan E-mail Surel Mobile Seluler Phone Telepon Address Alamat City Kota ZIP Code Kode Pos State/Region Propinsi Country Negara Home Page Homepage Custom 1 Lain-lain 1 Custom 2 Lain-lain 2 Custom 3 Lain-lain 3 Insert Personal Information Sisipkan Informasi Pribadi Edit Sunting PIM_Settings PIM Settings Pengaturan PIM <h2>Personal Information Manager</h2> <h2>Personal Information Manager</h2> Your personal information that will be used on webpages. Informasi pribadi anda yang akan digunakan di halaman web. First Name: Nama Depan: Last Name: Nama Belakang: E-mail: Surel: Phone: Telepon: Mobile Phone: Telepon Seluler: Address: Alamat: City: Kota: ZIP Code: Kode Pos: State/Region: Propinsi: Country: Negara: Home Page: Home Page: Custom 1: Lain-lain 1: Custom 2: Lain-lain 2: Custom 3: Lain-lain 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Catatan:</b> Tekan Ctrl+ENTER untuk mengisi secara otomatis saat QupZilla menemukan formulir informasi pribadi. qupzilla-1.6.0/src/plugins/PIM/translations/it_IT.ts000066400000000000000000000144021226107126500223600ustar00rootroot00000000000000 PIM_Handler Last Name Cognome First Name Nome E-mail E-Mail Mobile Cellulare Phone Telefono Address Indirizzo City Città ZIP Code Codice postale State/Region Stato/Regione Country Paese Home Page Homepage Custom 1 Personalizzato 1 Custom 2 Personalizzato 2 Custom 3 Personalizzato 3 Insert Personal Information Inserisci informazioni personali Edit Modifica PIM_Settings PIM Settings Impostazioni PIM <h2>Personal Information Manager</h2> <h2>Gestore delle informazioni personali</h2> Your personal information that will be used on webpages. Le tue informazioni personali da usare sulle pagine web. First Name: Nome: Last Name: Cognome: E-mail: E-mail: Phone: Telefono: Mobile Phone: Cellulare: Address: Indirizzo: City: Città: ZIP Code: Codice postale: State/Region: Stato/Regione: Country: Paese: Home Page: Homepage: Custom 1: Personalizzato 1: Custom 2: Personalizzato 2: Custom 3: Personalizzato 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Nota:</b> Premi Ctrl+ENTER per riempire automaticamente i campi per i quali QupZilla trova informazioni personali. qupzilla-1.6.0/src/plugins/PIM/translations/ja_JP.ts000066400000000000000000000143541226107126500223410ustar00rootroot00000000000000 PIM_Handler Last Name First Name E-mail メールアドレス Mobile 携帯電話 Phone 電話番号 Address 住所 City 市区町村 ZIP Code 郵便番号 State/Region 都道府県 Country Home Page ホームページ Custom 1 その他1 Custom 2 その他2 Custom 3 その他3 Insert Personal Information 個人情報の挿入 Edit 編集 PIM_Settings PIM Settings PIMの設定 <h2>Personal Information Manager</h2> <h2>Personal Information Manager</h2> Your personal information that will be used on webpages. Webページ上で使用するあなたの個人情報。 First Name: 名: Last Name: 姓: E-mail: メール: Phone: 電話番号: Mobile Phone: 携帯電話: Address: 住所: City: 市区町村: ZIP Code: 郵便番号: State/Region: 都道府県: Country: 国: Home Page: ホームページ: Custom 1: その他1: Custom 2: その他2: Custom 3: その他3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>使い方:</b> Ctrl+ENTERを押すと、QupZillaが該当箇所を検出し情報を自動的に挿入します。 qupzilla-1.6.0/src/plugins/PIM/translations/ka_GE.ts000066400000000000000000000135421226107126500223220ustar00rootroot00000000000000 PIM_Handler Last Name First Name E-mail Mobile Phone Address City ZIP Code State/Region Country Home Page Custom 1 Custom 2 Custom 3 Insert Personal Information Edit PIM_Settings PIM Settings <h2>Personal Information Manager</h2> Your personal information that will be used on webpages. First Name: Last Name: E-mail: Phone: Mobile Phone: Address: City: ZIP Code: State/Region: Country: Home Page: Custom 1: Custom 2: Custom 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. qupzilla-1.6.0/src/plugins/PIM/translations/my_MM.ts000066400000000000000000000135421226107126500223720ustar00rootroot00000000000000 PIM_Handler Last Name First Name E-mail Mobile Phone Address City ZIP Code State/Region Country Home Page Custom 1 Custom 2 Custom 3 Insert Personal Information Edit PIM_Settings PIM Settings <h2>Personal Information Manager</h2> Your personal information that will be used on webpages. First Name: Last Name: E-mail: Phone: Mobile Phone: Address: City: ZIP Code: State/Region: Country: Home Page: Custom 1: Custom 2: Custom 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. qupzilla-1.6.0/src/plugins/PIM/translations/nb_NO.ts000066400000000000000000000135421226107126500223470ustar00rootroot00000000000000 PIM_Handler Last Name First Name E-mail Mobile Phone Address City ZIP Code State/Region Country Home Page Custom 1 Custom 2 Custom 3 Insert Personal Information Edit PIM_Settings PIM Settings <h2>Personal Information Manager</h2> Your personal information that will be used on webpages. First Name: Last Name: E-mail: Phone: Mobile Phone: Address: City: ZIP Code: State/Region: Country: Home Page: Custom 1: Custom 2: Custom 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. qupzilla-1.6.0/src/plugins/PIM/translations/nl_NL.ts000066400000000000000000000143741226107126500223620ustar00rootroot00000000000000 PIM_Handler Last Name Achternaam First Name Voornaam E-mail E-mailadres Mobile Mobiel Phone Telefoonnummer Address Adres City Stad ZIP Code Postcode State/Region Staat/Provincie Country Land Home Page Website Custom 1 Aangepast 1 Custom 2 Aangepast 2 Custom 3 Aangepast 3 Insert Personal Information Vul persoonlijke informatie in Edit Bewerk PIM_Settings PIM Settings PIM-instellingen <h2>Personal Information Manager</h2> <h2>Persoonlijke informatie-beheerder</h2> Your personal information that will be used on webpages. Uw persoonlijke informatie die zal worden gebruikt op websites. First Name: Voornaam: Last Name: Achternaam: E-mail: E-mailadres: Phone: Telefoonnummer: Mobile Phone: Mobiel telefoonnummer: Address: Adres: City: Stad: ZIP Code: Postcode: State/Region: Staat/Provincie: Country: Land: Home Page: Website: Custom 1: Aangepast 1: Custom 2: Aangepast 2: Custom 3: Aangepast 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Noot:</b> Druk op CTRL+ENTER om automatisch formuliervelden te vullen met persoonlijke informatie die QupZilla vindt. qupzilla-1.6.0/src/plugins/PIM/translations/nqo.ts000066400000000000000000000153671226107126500221600ustar00rootroot00000000000000 PIM_Handler Last Name ߛߌ First Name ߕߐ߮ E-mail ߢߎߡߍߙߋ߲ߞߏ߲ߘߏ Mobile ߓߟߏߟߕߊ Phone ߜߋߟߋ߲ߜߋߟߋ߲ Address ߛߊ߲߬ߓߊ߬ߕߐ߮ City ߛߏ ZIP Code ߞߏ߲߬ߘߏ߬ ߝߙߍߕߍ State/Region ߞߊ߬ߝߏ߬ߙߋ߲\ߕߌ߲߬ߞߎߘߎ߲ Country ߖߡߊ߬ߣߊ Home Page ߞߍߦߙߐ Custom 1 ߘߝߊ߫ ߞߌߓߊߙߏ ߝߟߐ Custom 2 ߘߝߊ߫ ߞߌߓߊߙߏ ߝߌߟߊߣߊ߲ Custom 3 ߘߝߊ߫ ߞߌߓߊߙߏ ߃߲ Insert Personal Information ߘߎ߲߬ߘߎ߬ߡߊ߬ ߞߌߓߊߙߏ ߟߊߘߏ߲߬ Edit ߊ߬ ߡߊߦߟߍ߬ߡߊ߲߬ PIM_Settings PIM Settings ߘߎ߲߬ߘߎ߬ߡߊ߬ ߞߌߓߊߙߏ ߞߎ߲߬ߠߊ߬ߛߌ߰ߟߊ (ߘ.ߞ.ߞ) ߞߐߕߐ߯ߘߐߛߙߋ ߟߎ߬ <h2>Personal Information Manager</h2> <h2>ߘߎ߲߬ߘߎ߬ߡߊ߬ ߞߌߓߊߙߏ ߞߎ߲߬ߠߊ߬ߛߌ߰ߟߊ (ߘ.ߞ.ߞ)</h2> Your personal information that will be used on webpages. ߌ ߟߊ߫ ߘߎ߲߬ߘߎ߬ߡߊ߬ ߞߌߓߊߙߏ ߟߎ߬ ߘߌ߫ ߟߊߓߊ߯ߙߊ߫ ߓߟߐߟߐ߫ ߞߐߜߍ ߟߎ߫ ߞߊ߲߬. First Name: ߕߐ߮: Last Name: ߛߌ: E-mail: ߢߎߡߍߙߋ߲ߞߏ߲ߘߏ: Phone: ߜߋߟߋ߲ߜߋߟߋ߲: Mobile Phone: ߓߟߏߟߊ߫ ߜߋߟߋ߲ߜߋߟߋ߲: Address: ߛߊ߲߬ߓߊ߬ߕߐ߮: City: ߛߏ: ZIP Code: ߞߏ߲߬ߘߏ߬ ߝߙߍߕߍ: State/Region: ߞߊ߬ߝߏ߬ߙߋ߲\ߕߌ߲߬ߞߎߘߎ߲ Country: ߖߡߊ߬ߣߊ: Home Page: ߞߍߦߙߐ: Custom 1: ߘߝߊ߫ ߞߌߓߊߙߏ ߝߟߐ: Custom 2: ߘߝߊ߫ ߞߌߓߊߙߏ ߝߌߟߊߣߊ߲: Custom 3: ߘߝߊ߫ ߞߌߓߊߙߏ ߃߲: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>ߦߟߌߣߐ:</b> ߛߊߞߍ ߣߌ߫ ߘߏ߲߬ ߘߌ߯ ߞߊ߬ ߛߓߍߟߝߊߕߊ ߞߌ߬ߓߊ߬ߙߏ߬ ߕߐ߭ ߟߎ߫ ߟߝߊ߫ ߊ߬ߟߎ߫ ߖߘߍ߬ ߢߍ߫. qupzilla-1.6.0/src/plugins/PIM/translations/pl_PL.ts000066400000000000000000000143071226107126500223620ustar00rootroot00000000000000 PIM_Handler Last Name Nazwisko First Name Imię E-mail E-mail Mobile Tel. komórkowy Phone Tel. stacjonarny Address Adres City Miasto ZIP Code Kod pocztowy State/Region Województwo Country Kraj Home Page Strona Główna Custom 1 Własny 1 Custom 2 Własny 2 Custom 3 Własny 3 Insert Personal Information Wpisz Prywatne Informacje Edit Edytuj PIM_Settings PIM Settings Ustawienia PIM <h2>Personal Information Manager</h2> <h2>Personal Information Manager</h2> Your personal information that will be used on webpages. Twoje informacje które będą użyte na stronach. First Name: Imię: Last Name: Nazwisko: E-mail: E-mail: Phone: Tel. stacjonarny: Mobile Phone: Tel. komórkowy: Address: Adres: City: Miasto: ZIP Code: Kod pocztowy: State/Region: Województwo: Country: Kraj: Home Page: Strona Główna: Custom 1: Własny 1: Custom 2: Własny 2: Custom 3: Własny 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Informacja:</b> Wciśnij Ctrl+ENTER by uzupełnić pola formularza z danych zawartych w PIM. qupzilla-1.6.0/src/plugins/PIM/translations/pt_BR.ts000066400000000000000000000143261226107126500223630ustar00rootroot00000000000000 PIM_Handler Last Name Sobrenome First Name Nome E-mail E-mail Mobile Celular Phone Telefone Address Endereço City Cidade ZIP Code CEP State/Region Estado Country País Home Page Endereço web Custom 1 Personalizado 1 Custom 2 Personalizado 2 Custom 3 Personalizado 3 Insert Personal Information Insira suas informações pessoais Edit Editar PIM_Settings PIM Settings Configurações <h2>Personal Information Manager</h2> <h2>Gerencie suas informações pessoais</h2> Your personal information that will be used on webpages. As suas informações serão utilizadas em sites web. First Name: Nome: Last Name: Sobrenome: E-mail: E-mail: Phone: Telefone: Mobile Phone: Celular: Address: Endereço: City: Cidade: ZIP Code: CEP: State/Region: Estado: Country: País: Home Page: Endereço web: Custom 1: Personalizado 1: Custom 2: Personalizado 2: Custom 3: Personalizado 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Obs.:</b> Pressione Ctrl+Enter para o QupZilla preencher automaticamente seus dados pessoais em cadastros. qupzilla-1.6.0/src/plugins/PIM/translations/pt_PT.ts000066400000000000000000000144321226107126500224010ustar00rootroot00000000000000 PIM_Handler Last Name Apelido First Name Nome próprio E-mail Endereço eletrónico Mobile Telemóvel Phone Telefone Address Morada City Cidade ZIP Code Código postal State/Region Distrito/Região Country País Home Page Página web Custom 1 Personalizado 1 Custom 2 Personalizado 2 Custom 3 Personalizado 3 Insert Personal Information Indique as informações pessoais Edit Editar PIM_Settings PIM Settings Definições <h2>Personal Information Manager</h2> <h2>Gestor de informações pessoais</h2> Your personal information that will be used on webpages. As suas informações serão utilizadas nas páginas web. First Name: Nome próprio: Last Name: Apelido: E-mail: Endereço eletrónico: Phone: Telefone: Mobile Phone: Telemóvel: Address: Morada: City: Cidade: ZIP Code: Código postal: State/Region: Distrito/Região: Country: País: Home Page: Página web: Custom 1: Personalizado 1: Custom 2: Personalizado 2: Custom 3: Personalizado 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Nota:</b> Prima Ctrl+ENTER para preencher automaticamente os formulários com os dados pessoais. qupzilla-1.6.0/src/plugins/PIM/translations/ro_RO.ts000066400000000000000000000135421226107126500223740ustar00rootroot00000000000000 PIM_Handler Last Name First Name E-mail Mobile Phone Address City ZIP Code State/Region Country Home Page Custom 1 Custom 2 Custom 3 Insert Personal Information Edit PIM_Settings PIM Settings <h2>Personal Information Manager</h2> Your personal information that will be used on webpages. First Name: Last Name: E-mail: Phone: Mobile Phone: Address: City: ZIP Code: State/Region: Country: Home Page: Custom 1: Custom 2: Custom 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. qupzilla-1.6.0/src/plugins/PIM/translations/ru_RU.ts000066400000000000000000000151771226107126500224160ustar00rootroot00000000000000 PIM_Handler Last Name Фамилия First Name Имя E-mail E-mail Mobile Мобильный Phone Телефон Address Адрес City Город ZIP Code Индекс State/Region Регион Country Страна Home Page Домашняя страница Custom 1 Пользователь 1 Custom 2 Пользователь 2 Custom 3 Пользователь 3 Insert Personal Information Вставить личную информацию Edit Изменить PIM_Settings PIM Settings Настройки PIM <h2>Personal Information Manager</h2> <h2>Менеджер личной информации</h2> Your personal information that will be used on webpages. Ваша личная информация, которая будет использоваться на веб-сайтах. First Name: Имя: Last Name: Фамилия: E-mail: E-mail: Phone: Телефон: Mobile Phone: Мобильный телефон: Address: Адрес: City: Город: ZIP Code: Индекс: State/Region: Регион: Country: Страна: Home Page: Домашняя страница: Custom 1: Пользователь 1: Custom 2: Пользователь 2: Custom 3: Пользователь 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Примечание:</ b> Нажмите Ctrl + Enter, чтобы автоматически заполнить поля которые QupZilla найдёт в личных записях. qupzilla-1.6.0/src/plugins/PIM/translations/sk_SK.ts000066400000000000000000000142541226107126500223670ustar00rootroot00000000000000 PIM_Handler Last Name Priezvisko First Name Meno E-mail E-mail Mobile Mobil Phone Telefón Address Adresa City Mesto ZIP Code PSČ State/Region Štát/Región Country Krajina Home Page Domovská stránka Custom 1 Vlastný 1 Custom 2 Vlastný 2 Custom 3 Vlastný 3 Insert Personal Information Vložiť osobný údaj Edit Upraviť PIM_Settings PIM Settings PIM nastavenia <h2>Personal Information Manager</h2> <h2>Správca osobných údajov</h2> Your personal information that will be used on webpages. Vaše osobné údaje, ktoré budú použité na stránkach. First Name: Meno: Last Name: Priezvisko: E-mail: E-mail: Phone: Telefón: Mobile Phone: Mobil: Address: Adresa: City: Mesto: ZIP Code: PSČ: State/Region: Štát/Región Country: Krajina: Home Page: Domovská stránka: Custom 1: Vlastný 1: Custom 2: Vlastný 2: Custom 3: Vlastný 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Poznámka:</b> Ctrl+ENTER slúži k automatickému vyplneniu známych polí na stránke. qupzilla-1.6.0/src/plugins/PIM/translations/sr_BA.ts000066400000000000000000000151751226107126500223460ustar00rootroot00000000000000 PIM_Handler Last Name Презиме First Name Име E-mail Е-адресу Mobile Бр. мобилног Phone Бр. телефона Address Адресу City Град ZIP Code Пошт. број State/Region Сав. држ./регију Country Државу Home Page Домаћу страницу Custom 1 Посебно 1 Custom 2 Посебно 2 Custom 3 Посебно 3 Insert Personal Information Уметни лични податак Edit Уреди PIM_Settings PIM Settings ПИМ подешавања <h2>Personal Information Manager</h2> <h2>Менаџер личних података</h2> Your personal information that will be used on webpages. Ваши лични подаци које можете да користите на веб страницама. First Name: Име: Last Name: Презиме: E-mail: Е-адреса: Phone: Број телефона: Mobile Phone: Број мобилног тел: Address: Адреса: City: Град: ZIP Code: Поштански број: State/Region: Савезна држ./регија: Country: Држава: Home Page: Домаћа страница: Custom 1: Посебно 1: Custom 2: Посебно 2: Custom 3: Посебно 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Напомена:</b> Притисните Ctrl+ENTER да бисте аутоматски попунили поља за која Капзила пронађе личне податке. qupzilla-1.6.0/src/plugins/PIM/translations/sr_BA@latin.ts000066400000000000000000000143641226107126500234750ustar00rootroot00000000000000 PIM_Handler Last Name Prezime First Name Ime E-mail E-adresu Mobile Br. mobilnog Phone Br. telefona Address Adresu City Grad ZIP Code Pošt. broj State/Region Sav. drž./regiju Country Državu Home Page Domaću stranicu Custom 1 Posebno 1 Custom 2 Posebno 2 Custom 3 Posebno 3 Insert Personal Information Umetni lični podatak Edit Uredi PIM_Settings PIM Settings PIM podešavanja <h2>Personal Information Manager</h2> <h2>Menadžer ličnih podataka</h2> Your personal information that will be used on webpages. Vaši lični podaci koje možete da koristite na veb stranicama. First Name: Ime: Last Name: Prezime: E-mail: E-adresa: Phone: Broj telefona: Mobile Phone: Broj mobilnog tel: Address: Adresa: City: Grad: ZIP Code: Poštanski broj: State/Region: Savezna drž./regija: Country: Država: Home Page: Domaća stranica: Custom 1: Posebno 1: Custom 2: Posebno 2: Custom 3: Posebno 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Napomena:</b> Pritisnite Ctrl+ENTER da biste automatski popunili polja za koja Kapzila pronađe lične podatke. qupzilla-1.6.0/src/plugins/PIM/translations/sr_RS.ts000066400000000000000000000151641226107126500224060ustar00rootroot00000000000000 PIM_Handler Last Name Презиме First Name Име E-mail Е-адресу Mobile Бр. мобилног Phone Бр. телефона Address Адресу City Град ZIP Code Пошт. број State/Region Сав. држ./регију Country Државу Home Page Домаћу страницу Custom 1 Посебно 1 Custom 2 Посебно 2 Custom 3 Посебно 3 Insert Personal Information Уметни лични податак Edit Уреди PIM_Settings PIM Settings ПИМ подешавања <h2>Personal Information Manager</h2> <h2>Менаџер личних података</h2> Your personal information that will be used on webpages. Ваши лични подаци које можете да користите на веб страницама. First Name: Име: Last Name: Презиме: E-mail: Е-адреса: Phone: Број телефона: Mobile Phone: Број мобилног тел: Address: Адреса: City: Град: ZIP Code: Пошт. број: State/Region: Савезна држ./регија: Country: Држава: Home Page: Домаћа страница: Custom 1: Посебно 1: Custom 2: Посебно 2: Custom 3: Посебно 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Напомена:</b> Притисните Ctrl+ENTER да бисте аутоматски попунили поља за која Капзила пронађе личне податке. qupzilla-1.6.0/src/plugins/PIM/translations/sr_RS@latin.ts000066400000000000000000000143601226107126500235330ustar00rootroot00000000000000 PIM_Handler Last Name Prezime First Name Ime E-mail E-adresu Mobile Br. mobilnog Phone Br. telefona Address Adresu City Grad ZIP Code Pošt. broj State/Region Sav. drž./regiju Country Državu Home Page Domaću stranicu Custom 1 Posebno 1 Custom 2 Posebno 2 Custom 3 Posebno 3 Insert Personal Information Umetni lični podatak Edit Uredi PIM_Settings PIM Settings PIM podešavanja <h2>Personal Information Manager</h2> <h2>Menadžer ličnih podataka</h2> Your personal information that will be used on webpages. Vaši lični podaci koje možete da koristite na veb stranicama. First Name: Ime: Last Name: Prezime: E-mail: E-adresa: Phone: Broj telefona: Mobile Phone: Broj mobilnog tel: Address: Adresa: City: Grad: ZIP Code: Pošt. broj: State/Region: Savezna drž./regija: Country: Država: Home Page: Domaća stranica: Custom 1: Posebno 1: Custom 2: Posebno 2: Custom 3: Posebno 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Napomena:</b> Pritisnite Ctrl+ENTER da biste automatski popunili polja za koja Kapzila pronađe lične podatke. qupzilla-1.6.0/src/plugins/PIM/translations/sv_SE.ts000066400000000000000000000135421226107126500223730ustar00rootroot00000000000000 PIM_Handler Last Name First Name E-mail Mobile Phone Address City ZIP Code State/Region Country Home Page Custom 1 Custom 2 Custom 3 Insert Personal Information Edit PIM_Settings PIM Settings <h2>Personal Information Manager</h2> Your personal information that will be used on webpages. First Name: Last Name: E-mail: Phone: Mobile Phone: Address: City: ZIP Code: State/Region: Country: Home Page: Custom 1: Custom 2: Custom 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. qupzilla-1.6.0/src/plugins/PIM/translations/tr_TR.ts000066400000000000000000000142201226107126500224000ustar00rootroot00000000000000 PIM_Handler Last Name Soyad First Name Ad E-mail E-posta Mobile Mobil Phone Telefon Address Adres City Şehir ZIP Code Posta Kodu State/Region Şehir Country Ülke Home Page Ana Sayfa Custom 1 Özel 1 Custom 2 Özel 2 Custom 3 Özel 3 Insert Personal Information Kişisel Bilgi Ekle Edit Düzenle PIM_Settings PIM Settings PIM Ayarları <h2>Personal Information Manager</h2> <h2>Kişisel Bilgi Yöneticisi</h2> Your personal information that will be used on webpages. Websayfalarında kullanılacak kişisel bilginiz. First Name: Ad: Last Name: Soyad: E-mail: E-posta: Phone: Telefon: Mobile Phone: Mobil Telefon: Address: Adres: City: Şehir: ZIP Code: Posta Kodu: State/Region: Şehir: Country: Ülke: Home Page: Ana Sayfa: Custom 1: Özel 1: Custom 2: Özel 2: Custom 3: Özel 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Not:</b> QupZilla'nın bulduğu kişisel bilgiler ile form alanlarını doldurması için Ctrl+ENTER'a basınız. qupzilla-1.6.0/src/plugins/PIM/translations/uk_UA.ts000066400000000000000000000152521226107126500223600ustar00rootroot00000000000000 PIM_Handler Last Name Прізвище First Name Ім’я E-mail E-mail Mobile Мобільний Phone Телефон Address Адреса City Місто ZIP Code Поштовий індекс State/Region Штат/область Country Країна Home Page Домашня сторінка Custom 1 Користувацьке 1 Custom 2 Користувацьке 2 Custom 3 Користувацьке 3 Insert Personal Information Вставити особисті дані Edit Редагувати PIM_Settings PIM Settings Налаштування PIM <h2>Personal Information Manager</h2> <h2>Менеджер особистих даних</h2> Your personal information that will be used on webpages. Ваші особисті дані, що використовуватимуться на веб-сторінках. First Name: Ім’я: Last Name: Прізвище: E-mail: E-mail: Phone: Телефон: Mobile Phone: Мобільний телефон: Address: Адреса: City: Місто: ZIP Code: Поштовий індекс: State/Region: Штат/область: Country: Країна: Home Page: Домашня сторінка: Custom 1: Користувацьке 1: Custom 2: Користувацьке 2: Custom 3: Користувацьке 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Примітка:</b> Щоб автоматимчно заповнити поля форми, для яких QupZilla має дані, натисніть Ctrl+ENTER. qupzilla-1.6.0/src/plugins/PIM/translations/uz.ts000066400000000000000000000144701226107126500220130ustar00rootroot00000000000000 PIM_Handler Last Name Familiya First Name Ism E-mail Elektron pochta Mobile Mobil telefon Phone Telefon Address Manzil City Shahar ZIP Code Pochta indeksi State/Region Shtat/Viloyat Country Mamlakat Home Page Uy sahifasi Custom 1 Qo'shimcha 1 Custom 2 Qo'shimcha 2 Custom 3 Qo'shimcha 3 Insert Personal Information Shaxsiy ma'lumotni kiriting Edit Tahrirlash PIM_Settings PIM Settings PIM sozlamalari <h2>Personal Information Manager</h2> <h2>Shaxsiy ma'lumot boshqaruvchisi</h2> Your personal information that will be used on webpages. Veb-sahifalarda foydalaniladigan shaxsiy ma'lumotingiz. First Name: Ism: Last Name: Familiya: E-mail: Elektron pochta: Phone: Telefon: Mobile Phone: Mobil telefon: Address: Manzil: City: Shahar: ZIP Code: Pochta indeksi: State/Region: Shtat/Viloyat: Country: Mamlakat: Home Page: Uy sahifasi: Custom 1: Qo'shimcha 1: Custom 2: Qo'shimcha 2: Custom 3: Qo'shimcha 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>Eslatma:</b> QupZilla topgan shaxsiy yozuvlar bilan shakl maydonlarini avtomatik ravishda to'ldirish uchun Ctrl+ENTER bosing. qupzilla-1.6.0/src/plugins/PIM/translations/zh_CN.ts000066400000000000000000000142701226107126500223540ustar00rootroot00000000000000 PIM_Handler Last Name First Name E-mail 电子邮件 Mobile 移动电话 Phone 电话 Address 地址 City 城市 ZIP Code 邮政编码 State/Region 省区 Country 国家/地区 Home Page 个人主页 Custom 1 自定 1 Custom 2 自定 2 Custom 3 自定 3 Insert Personal Information 插入个人信息 Edit 编辑 PIM_Settings PIM Settings PIM 设置 <h2>Personal Information Manager</h2> <H2>个人信息管理器(PIM)</H2> Your personal information that will be used on webpages. 您的个人信息将被用在网页上。 First Name: 名: Last Name: 姓: E-mail: 电子邮件: Phone: 电话: Mobile Phone: 移动电话: Address: 地址: City: 城市: ZIP Code: 邮政编码: State/Region: 省区: Country: 国家/地区 Home Page: 个人主页: Custom 1: 自定 1: Custom 2: 自定 2: Custom 3: 自定 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>注意:</b>要在网站中自动填写个人信息,请按 Ctrl+回车键。 qupzilla-1.6.0/src/plugins/PIM/translations/zh_TW.ts000066400000000000000000000142151226107126500224050ustar00rootroot00000000000000 PIM_Handler Last Name 姓氏 First Name 名字 E-mail 電子郵件 Mobile 手機 Phone 電話 Address 住址 City 城市 ZIP Code 郵遞區號 State/Region 州 / 區域 Country 國家 Home Page 首頁 Custom 1 自訂 1 Custom 2 自訂 2 Custom 3 自訂 3 Insert Personal Information 插入個人資訊 Edit 編輯 PIM_Settings PIM Settings PIM 設定 <h2>Personal Information Manager</h2> <h2>個人資訊管理員</h2> Your personal information that will be used on webpages. 您的個人資訊將會被用在網頁上。 First Name: 名字: Last Name: 姓氏: E-mail: 電子郵件: Phone: 電話: Mobile Phone: 手機: Address: 住址: City: 城市: ZIP Code: 郵遞區號: State/Region: 州 / 區域: Country: 國家: Home Page: 首頁: Custom 1: 自訂 1: Custom 2: 自訂 2: Custom 3: 自訂 3: <b>Note:</b> Press Ctrl+ENTER to autofill form fields for which QupZilla finds personal entries. <b>附註:</b> 按下 Ctrl+Enter,QupZilla會為您從發現的個人條目中自動填入表單欄位。 qupzilla-1.6.0/src/plugins/StatusBarIcons/000077500000000000000000000000001226107126500205355ustar00rootroot00000000000000qupzilla-1.6.0/src/plugins/StatusBarIcons/StatusBarIcons.pro000066400000000000000000000027061226107126500241700ustar00rootroot00000000000000include(../../defines.pri) TARGET = $$qtLibraryTarget(StatusBarIcons) SOURCES += statusbariconsplugin.cpp \ sbi_iconsmanager.cpp \ sbi_imagesicon.cpp \ sbi_javascripticon.cpp \ sbi_networkicon.cpp \ sbi_networkproxy.cpp \ sbi_proxywidget.cpp \ sbi_networkicondialog.cpp \ sbi_networkmanager.cpp \ sbi_settingsdialog.cpp HEADERS += statusbariconsplugin.h \ sbi_iconsmanager.h \ sbi_imagesicon.h \ sbi_javascripticon.h \ sbi_networkicon.h \ sbi_networkproxy.h \ sbi_proxywidget.h \ sbi_networkicondialog.h \ sbi_networkmanager.h \ sbi_settingsdialog.h RESOURCES += statusbaricons.qrc TRANSLATIONS += \ translations/ar_SA.ts \ translations/bg_BG.ts \ translations/cs_CZ.ts \ translations/de_DE.ts \ translations/el_GR.ts \ translations/es_ES.ts \ translations/eu_ES.ts \ translations/fr_FR.ts \ translations/he_IL.ts \ translations/it_IT.ts \ translations/ja_JP.ts \ translations/nl_NL.ts \ translations/nqo.ts \ translations/pl_PL.ts \ translations/pt_PT.ts \ translations/ru_RU.ts \ translations/sr_BA@latin.ts \ translations/sr_BA.ts \ translations/sr_RS@latin.ts \ translations/sr_RS.ts \ translations/uk_UA.ts \ translations/uz.ts \ translations/zh_CN.ts \ translations/zh_TW.ts \ include(../../plugins.pri) FORMS += \ sbi_proxywidget.ui \ sbi_networkicondialog.ui \ sbi_settingsdialog.ui qupzilla-1.6.0/src/plugins/StatusBarIcons/data/000077500000000000000000000000001226107126500214465ustar00rootroot00000000000000qupzilla-1.6.0/src/plugins/StatusBarIcons/data/add.png000066400000000000000000000011031226107126500226770ustar00rootroot00000000000000PNG  IHDRasBIT|d pHYs:tEXtSoftwarewww.inkscape.org<IDATxڍkSQsrAR*9݌uS?h%ԂC j=BM%͇p_?q}.+\,e/gr@I0ƞAkmJvxiMΥ%6NO>W AMcX R)o@{Nˋe#5B vYg_֭[k׮- š, .J-[((B>(j4hV |!ob4t <&sD< @֮djS gY)eT`5`X@ Zjb-#l6DV) "b6mڔݾ}7n<(nrѹ(n= Crbl,=GCGtB$Cf!Cowz[:W" F'cQDLnTUIH!u*!tdy f3~Ԛka$QD"!0.#`0Ԅ1MD"("6MS0Y,wr$TO]2H;l̒ cH)Jeee@1;vpl<'cd\ϟ?ALv ofFZ†-Xv-.,L-BB$2'JYNQuݶmȑ# [n}DBNqpqsȇ8ݭ{Hy Ϻ{1^;fU*\__YɃA?޺cǎ\2vZ^6ye30{'E6XJ mZ7*N 7Š /uHkir<kjj/*O~݃?Ɵ KॖSu:4+CFUWeZ5"1 ՙx<S twwOj[<ڛ-=2>crr/5y!e dV^ T)@ΞEFHT/G ?UBaXr3"['@ ^ttt.$Oq߅՟uuu`. VRuQJ *G0;qFʌNX,W99k+lػw/GQ0WƗz-iլQSC =E.@NfQbgvcXUySTn߾}DlmmX{<Ȏǀ0)^l;UT/-E  7oujinW.jQs(C4i8x {o&0W12L @ TӫO:uJReĹ+%i`ar_%C|@iy㼶 ``FDQ=0==g~U.?\|.˯`pEsssO>6_n<;$"g|(P/ypppBqn[V[-%7 f6\" "EFjEa\2HHˌw^EU V=  5,^.:.$KB!NC:>nؘ#LxD&F| &^l=tvvYO7wW`n7|3,9&NA*3Vsf'2.ZYj'\BY< 0 Lq>ń%h~Qp.vy^d\F`xxX%tP>>DieJ=rcSCˌ y9G Ak<#FI_h~>$>'uq=sh>>>s΁t樧b߾}Y255cZ/ lލ&RQfHZeG3 tĉڵ룢, "G9FY2o`%h =_p*aZ]4Ly yB>20J#@FCtjJD++477 r?zwyFik]DN*͛7dDh8鷑---: CNIENDB`qupzilla-1.6.0/src/plugins/StatusBarIcons/data/images.png000066400000000000000000000012231226107126500234170ustar00rootroot00000000000000PNG  IHDRasRGBbKGD pHYs^tIME*jIDAT8˭KQww ɼ 1*P jfiEA " m%Aஅ ATL::JV:| BQ=pp99Ϲ<" 766l@WCAŖ_*cxlnSJ5b7ٸ{'i ŖwP .-k5VWҙh"x4, Fzaa1_ycQ77R@|-/>b`'4c%J)rvDӶ(("Aҿ\/q(e!ͷ21m(IENDB`qupzilla-1.6.0/src/plugins/StatusBarIcons/data/javascript.png000066400000000000000000000012501226107126500243200ustar00rootroot00000000000000PNG  IHDRasRGBbKGD pHYs^tIME1i޺(IDAT8ˍ;hQ33!fQPB݀uAR؈QJ"-`!h!<&dw2"d&?#lP(Ojuip\jp 7"g C%BA,*OCd$nbElD,]smP-""HjXb&~.$Ӷ5@\( b^@{+t~b/ 4؎ 862/@u+4$[A0-@lQSSXA!s'0^ڃwmĊ3(ސx_ɟs334v (1z ?8sNKa }=dž?o] " ]Ԧz(:?;+r|{zz`y)fy8"TiBA[Moa!޼'TUu+zccc&uvg2OU5#Xa:99\n$J͌Nk*/כ~Ծ#DIENDB`qupzilla-1.6.0/src/plugins/StatusBarIcons/data/network-offline.png000066400000000000000000000007511226107126500252700ustar00rootroot00000000000000PNG  IHDR7sBITUF pHYs:tEXtSoftwarewww.inkscape.org<hIDATxU[/CQOo엸RRM< H\F[]"ԝ _PO处Lfg^kf͞Y(hGz; G^ij!ͻ,.NS^a>lexML3ql#7nHE10݌%p6I1J :E:$ -'F )c(-Xe)jN2aje~\cqv9=/$ ^) n!V|f EQ(k Jor)KR)d8Q53K(rFt?H0{cA[tYeqkζ'`"*7̸L`l^'IENDB`qupzilla-1.6.0/src/plugins/StatusBarIcons/data/network-online.png000066400000000000000000000013651226107126500251340ustar00rootroot00000000000000PNG  IHDRasBIT|d pHYs:tEXtSoftwarewww.inkscape.org<rIDATxuMHTQ(̸R)RHr2hQMѮբU\XmQVA!~` BQuԙy{㉍9ǽ眿*XZ (,a·BrF92x ^+,y=AmFg5]m bB,Ujۙw<|:h WsγU˃P1Jy?tbDbXcD\ߐ IENDB`qupzilla-1.6.0/src/plugins/StatusBarIcons/data/network-unknown.png000066400000000000000000000016551226107126500253510ustar00rootroot00000000000000PNG  IHDRabKGD pHYs:tIME. :IDAT8]?Lg|.qm  DPYRUnҡCTL퐪KNVjQ'`Bw@4!Aa #ll]w4UOzz\S.BL !&ŢkC>׵<~_A@S/~H$~fZ?'125Ňo!m![++|_*L&1??izE L E8- ɬu] gŰEJ09f^)o\.wKӴt:찹/^)iu:cc(~({{{lll( Z _ߚcT!DJu:DQ&&&1 mS)Z4OӐ:JX]& vA b1J, Y"Tײhj %M}mXogq0B˶x M]) l6"HfҍbLOS.yiun*!XXX?:ۺ,//ay޾OJV @u4RJiZXRJ2 HZFRiK)({{{qP(D2dxxh4JOONMӘ%LR8>>4VWWWbeY7UU% ׇqxG\䄫|>T*y @T򤔿fZlV ۶i4T*...( z}>(40}yޟN׵p?bIENDB`qupzilla-1.6.0/src/plugins/StatusBarIcons/data/preferences-network.png000066400000000000000000000017111226107126500261440ustar00rootroot00000000000000PNG  IHDRasBIT|d pHYs:tEXtSoftwarewww.inkscape.org<FIDAT8eoe;;;.RҊ!mP6 H"LLS!Bh$"X5FCS@J i)liG?vgfwvf_O6=PJL/)VZT<><}  EClN'R~tܨ)ˆA !ʫњesdb/Ze`й|J.[2k%@^>Pu=R8v0M>gX+k\_& |4c9A߮sk6Gu GPXNuA(xɏejædFSo[L40Vj$\ !L"|ET\~|Q#ʩCMwWrXCBPG"$$Ej^_T<ָ(Y`vv&L}Rf0lgrM[+Gdo8p0 [ZYRb10 -[.y/ vX+ߚ3uV Wh$&yg&ГqdHk^=.P:>/޽g?(nͮ-YnJn{I]zޱszttЀ"v]@ƀ;>DZTmIENDB`qupzilla-1.6.0/src/plugins/StatusBarIcons/data/remove.png000066400000000000000000000012001226107126500234420ustar00rootroot00000000000000PNG  IHDR(-SsBITO pHYs:tEXtSoftwarewww.inkscape.org<PLTEnmj++$xuJI`]4*G?!#$'1&+J?J@LCVL#!#!>4C:j#j# {<2Y![!93 33MH::92  >>D?NJFF VVWTe`b^`]caha/*0,2-2.sqmmvu鍉cA!4tRNS222HHHHHHIIIJKOPQRnbIDATE("vwwbbwϡt |dGBb^)pܬhq/yR4vFƟ:|X,t{8L\j "˕ s̲;y_CkfdIENDB`qupzilla-1.6.0/src/plugins/StatusBarIcons/sbi_iconsmanager.cpp000066400000000000000000000101771226107126500245520ustar00rootroot00000000000000/* ============================================================ * StatusBarIcons - Extra icons in statusbar for QupZilla * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "sbi_iconsmanager.h" #include "sbi_imagesicon.h" #include "sbi_javascripticon.h" #include "sbi_networkicon.h" #include "sbi_networkmanager.h" #include "qupzilla.h" #include #include #include SBI_IconsManager::SBI_IconsManager(const QString &settingsPath, QObject* parent) : QObject(parent) , m_settingsPath(settingsPath) , m_showImagesIcon(false) , m_showJavaScriptIcon(false) , m_showNetworkIcon(false) , m_networkManager(0) { loadSettings(); } void SBI_IconsManager::loadSettings() { QSettings settings(m_settingsPath + "extensions.ini", QSettings::IniFormat); settings.beginGroup("StatusBarIcons"); m_showImagesIcon = settings.value("showImagesIcon", true).toBool(); m_showJavaScriptIcon = settings.value("showJavaScriptIcon", true).toBool(); m_showNetworkIcon = settings.value("showNetworkIcon", true).toBool(); settings.endGroup(); } bool SBI_IconsManager::showImagesIcon() const { return m_showImagesIcon; } void SBI_IconsManager::setShowImagesIcon(bool show) { QSettings settings(m_settingsPath + "extensions.ini", QSettings::IniFormat); settings.setValue("StatusBarIcons/showImagesIcon", show); m_showImagesIcon = show; } bool SBI_IconsManager::showJavaScriptIcon() const { return m_showJavaScriptIcon; } void SBI_IconsManager::setShowJavaScriptIcon(bool show) { QSettings settings(m_settingsPath + "extensions.ini", QSettings::IniFormat); settings.setValue("StatusBarIcons/showJavaScriptIcon", show); m_showJavaScriptIcon = show; } bool SBI_IconsManager::showNetworkIcon() const { return m_showNetworkIcon; } void SBI_IconsManager::setShowNetworkIcon(bool show) { QSettings settings(m_settingsPath + "extensions.ini", QSettings::IniFormat); settings.setValue("StatusBarIcons/showNetworkIcon", show); m_showNetworkIcon = show; } void SBI_IconsManager::reloadIcons() { QHashIterator it(m_windows); while (it.hasNext()) { it.next(); mainWindowDeleted(it.key()); mainWindowCreated(it.key()); } } void SBI_IconsManager::destroyIcons() { QHashIterator it(m_windows); while (it.hasNext()) { it.next(); mainWindowDeleted(it.key()); } } void SBI_IconsManager::mainWindowCreated(QupZilla* window) { if (m_showImagesIcon) { SBI_ImagesIcon* w = new SBI_ImagesIcon(window, m_settingsPath); window->statusBar()->addPermanentWidget(w); m_windows[window].append(w); } if (m_showJavaScriptIcon) { SBI_JavaScriptIcon* w = new SBI_JavaScriptIcon(window); window->statusBar()->addPermanentWidget(w); m_windows[window].append(w); } if (m_showNetworkIcon) { if (!m_networkManager) { m_networkManager = new SBI_NetworkManager(m_settingsPath, this); } SBI_NetworkIcon* w = new SBI_NetworkIcon(window); window->statusBar()->addPermanentWidget(w); m_windows[window].append(w); } } void SBI_IconsManager::mainWindowDeleted(QupZilla* window) { foreach (QWidget* w, m_windows[window]) { window->statusBar()->removeWidget(w); delete w; } m_windows[window].clear(); } SBI_IconsManager::~SBI_IconsManager() { delete m_networkManager; } qupzilla-1.6.0/src/plugins/StatusBarIcons/sbi_iconsmanager.h000066400000000000000000000034671226107126500242230ustar00rootroot00000000000000/* ============================================================ * StatusBarIcons - Extra icons in statusbar for QupZilla * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SBI_ICONSMANAGER_H #define SBI_ICONSMANAGER_H #include #include class QupZilla; class SBI_NetworkManager; class SBI_IconsManager : public QObject { Q_OBJECT public: explicit SBI_IconsManager(const QString &settingsPath, QObject* parent = 0); ~SBI_IconsManager(); void loadSettings(); bool showImagesIcon() const; void setShowImagesIcon(bool show); bool showJavaScriptIcon() const; void setShowJavaScriptIcon(bool show); bool showNetworkIcon() const; void setShowNetworkIcon(bool show); void reloadIcons(); void destroyIcons(); signals: public slots: void mainWindowCreated(QupZilla* window); void mainWindowDeleted(QupZilla* window); private: QString m_settingsPath; bool m_showImagesIcon; bool m_showJavaScriptIcon; bool m_showNetworkIcon; QHash m_windows; SBI_NetworkManager* m_networkManager; }; #endif // SBI_ICONSMANAGER_H qupzilla-1.6.0/src/plugins/StatusBarIcons/sbi_imagesicon.cpp000066400000000000000000000101601226107126500242120ustar00rootroot00000000000000/* ============================================================ * StatusBarIcons - Extra icons in statusbar for QupZilla * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "sbi_imagesicon.h" #include "mainapplication.h" #include "qupzilla.h" #include "tabwidget.h" #include "tabbedwebview.h" #include "webpage.h" #include #include #include #include SBI_ImagesIcon::SBI_ImagesIcon(QupZilla* window, const QString &settingsPath) : ClickableLabel(window) , p_QupZilla(window) , m_settingsFile(settingsPath + "extensions.ini") { setCursor(Qt::PointingHandCursor); setToolTip(tr("Modify images loading settings per-site and globally")); m_icon = QIcon::fromTheme("image-x-generics", QIcon(":sbi/data/images.png")); setPixmap(m_icon.pixmap(16)); QSettings settings(m_settingsFile, QSettings::IniFormat); settings.beginGroup("StatusBarIcons_Images"); m_loadingImages = settings.value("LoadImages", true).toBool(); settings.endGroup(); mApp->webSettings()->setAttribute(QWebSettings::AutoLoadImages, m_loadingImages); updateIcon(); connect(p_QupZilla->tabWidget(), SIGNAL(currentChanged(int)), this, SLOT(updateIcon())); connect(this, SIGNAL(clicked(QPoint)), this, SLOT(showMenu(QPoint))); } void SBI_ImagesIcon::showMenu(const QPoint &point) { QFont boldFont = font(); boldFont.setBold(true); QMenu menu; menu.addAction(m_icon, tr("Current page settings"))->setFont(boldFont); if (currentPageSettings()->testAttribute(QWebSettings::AutoLoadImages)) { menu.addAction(tr("Disable loading images (temporarily)"), this, SLOT(toggleLoadingImages())); } else { menu.addAction(tr("Enable loading images (temporarily)"), this, SLOT(toggleLoadingImages())); } menu.addSeparator(); menu.addAction(m_icon, tr("Global settings"))->setFont(boldFont); QAction* act = menu.addAction(tr("Automatically load images")); act->setCheckable(true); act->setChecked(m_loadingImages); connect(act, SIGNAL(toggled(bool)), this, SLOT(setGlobalLoadingImages(bool))); menu.exec(point); } void SBI_ImagesIcon::toggleLoadingImages() { bool current = currentPageSettings()->testAttribute(QWebSettings::AutoLoadImages); currentPageSettings()->setAttribute(QWebSettings::AutoLoadImages, !current); // We should reload page on disabling images if (current) { p_QupZilla->weView()->reload(); } updateIcon(); } void SBI_ImagesIcon::setGlobalLoadingImages(bool enable) { // Save it permanently QSettings settings(m_settingsFile, QSettings::IniFormat); settings.beginGroup("StatusBarIcons_Images"); settings.setValue("LoadImages", enable); settings.endGroup(); // Switch it in websettings m_loadingImages = enable; mApp->webSettings()->setAttribute(QWebSettings::AutoLoadImages, m_loadingImages); updateIcon(); // We should reload page on disabling images if (!enable) { p_QupZilla->weView()->reload(); } } QWebSettings* SBI_ImagesIcon::currentPageSettings() { return p_QupZilla->weView()->page()->settings(); } void SBI_ImagesIcon::updateIcon() { if (currentPageSettings()->testAttribute(QWebSettings::AutoLoadImages)) { setGraphicsEffect(0); } else { QGraphicsColorizeEffect* effect = new QGraphicsColorizeEffect(this); effect->setColor(Qt::gray); setGraphicsEffect(effect); } } qupzilla-1.6.0/src/plugins/StatusBarIcons/sbi_imagesicon.h000066400000000000000000000027311226107126500236640ustar00rootroot00000000000000/* ============================================================ * StatusBarIcons - Extra icons in statusbar for QupZilla * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SBI_IMAGESICON_H #define SBI_IMAGESICON_H #include #include "clickablelabel.h" class QWebSettings; class QupZilla; class SBI_ImagesIcon : public ClickableLabel { Q_OBJECT public: explicit SBI_ImagesIcon(QupZilla* window, const QString &settingsPath); private slots: void showMenu(const QPoint &point); void updateIcon(); void toggleLoadingImages(); void setGlobalLoadingImages(bool enable); private: QWebSettings* currentPageSettings(); QupZilla* p_QupZilla; QString m_settingsFile; QIcon m_icon; bool m_loadingImages; }; #endif // SBI_IMAGESICON_H qupzilla-1.6.0/src/plugins/StatusBarIcons/sbi_javascripticon.cpp000066400000000000000000000061371226107126500251240ustar00rootroot00000000000000/* ============================================================ * StatusBarIcons - Extra icons in statusbar for QupZilla * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "sbi_javascripticon.h" #include "qupzilla.h" #include "tabwidget.h" #include "tabbedwebview.h" #include "webpage.h" #include "jsoptions.h" #include #include #include SBI_JavaScriptIcon::SBI_JavaScriptIcon(QupZilla* window) : ClickableLabel(window) , p_QupZilla(window) { setCursor(Qt::PointingHandCursor); setToolTip(tr("Modify JavaScript settings per-site and globally")); m_icon = QIcon::fromTheme("application-x-javascript", QIcon(":sbi/data/javascript.png")); setPixmap(m_icon.pixmap(16)); connect(p_QupZilla->tabWidget(), SIGNAL(currentChanged(int)), this, SLOT(updateIcon())); connect(this, SIGNAL(clicked(QPoint)), this, SLOT(showMenu(QPoint))); } void SBI_JavaScriptIcon::showMenu(const QPoint &point) { QFont boldFont = font(); boldFont.setBold(true); QMenu menu; menu.addAction(m_icon, tr("Current page settings"))->setFont(boldFont); if (currentPageSettings()->testAttribute(QWebSettings::JavascriptEnabled)) { menu.addAction(tr("Disable JavaScript (temporarily)"), this, SLOT(toggleJavaScript())); } else { menu.addAction(tr("Enable JavaScript (temporarily)"), this, SLOT(toggleJavaScript())); } menu.addSeparator(); menu.addAction(m_icon, tr("Global settings"))->setFont(boldFont); menu.addAction(tr("Manage JavaScript settings"), this, SLOT(openJavaScriptSettings())); menu.exec(point); } void SBI_JavaScriptIcon::updateIcon() { if (currentPageSettings()->testAttribute(QWebSettings::JavascriptEnabled)) { setGraphicsEffect(0); } else { QGraphicsColorizeEffect* effect = new QGraphicsColorizeEffect(this); effect->setColor(Qt::gray); setGraphicsEffect(effect); } } void SBI_JavaScriptIcon::toggleJavaScript() { bool current = currentPageSettings()->testAttribute(QWebSettings::JavascriptEnabled); currentPageSettings()->setAttribute(QWebSettings::JavascriptEnabled, !current); p_QupZilla->weView()->reload(); updateIcon(); } void SBI_JavaScriptIcon::openJavaScriptSettings() { JsOptions dialog(p_QupZilla); dialog.exec(); } QWebSettings* SBI_JavaScriptIcon::currentPageSettings() { return p_QupZilla->weView()->page()->settings(); } qupzilla-1.6.0/src/plugins/StatusBarIcons/sbi_javascripticon.h000066400000000000000000000026131226107126500245640ustar00rootroot00000000000000/* ============================================================ * StatusBarIcons - Extra icons in statusbar for QupZilla * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SBI_JAVASCRIPTICON_H #define SBI_JAVASCRIPTICON_H #include #include "clickablelabel.h" class QWebSettings; class QupZilla; class SBI_JavaScriptIcon : public ClickableLabel { Q_OBJECT public: explicit SBI_JavaScriptIcon(QupZilla* window); private slots: void showMenu(const QPoint &point); void updateIcon(); void toggleJavaScript(); void openJavaScriptSettings(); private: QWebSettings* currentPageSettings(); QupZilla* p_QupZilla; QIcon m_icon; }; #endif // SBI_JAVASCRIPTICON_H qupzilla-1.6.0/src/plugins/StatusBarIcons/sbi_networkicon.cpp000066400000000000000000000104601226107126500244410ustar00rootroot00000000000000/* ============================================================ * StatusBarIcons - Extra icons in statusbar for QupZilla * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "sbi_networkicon.h" #include "sbi_networkicondialog.h" #include "sbi_networkproxy.h" #include "sbi_networkmanager.h" #include "mainapplication.h" #include "networkmanager.h" #include "networkproxyfactory.h" #include "qupzilla.h" #include #include #include SBI_NetworkIcon::SBI_NetworkIcon(QupZilla* window) : ClickableLabel(window) , p_QupZilla(window) , m_networkConfiguration(new QNetworkConfigurationManager(this)) { setCursor(Qt::PointingHandCursor); onlineStateChanged(m_networkConfiguration->isOnline()); connect(m_networkConfiguration, SIGNAL(onlineStateChanged(bool)), this, SLOT(onlineStateChanged(bool))); connect(this, SIGNAL(clicked(QPoint)), this, SLOT(showMenu(QPoint))); } void SBI_NetworkIcon::onlineStateChanged(bool online) { if (online) { setPixmap(QIcon(":sbi/data/network-online.png").pixmap(16)); } else { setPixmap(QIcon(":sbi/data/network-offline.png").pixmap(16)); } updateToolTip(); } void SBI_NetworkIcon::showDialog() { SBI_NetworkIconDialog dialog(p_QupZilla); dialog.exec(); } void SBI_NetworkIcon::showMenu(const QPoint &pos) { QFont boldFont = font(); boldFont.setBold(true); QMenu menu; menu.addAction(QIcon::fromTheme("preferences-system-network", QIcon(":sbi/data/preferences-network.png")), tr("Proxy configuration"))->setFont(boldFont); QMenu* proxyMenu = menu.addMenu(tr("Select proxy")); const QHash &proxies = SBINetManager->proxies(); QHashIterator it(proxies); while (it.hasNext()) { it.next(); QAction* act = proxyMenu->addAction(it.key(), this, SLOT(useProxy())); act->setData(it.key()); act->setCheckable(true); act->setChecked(it.value() == SBINetManager->currentProxy()); } if (proxyMenu->actions().count() == 0) { proxyMenu->addAction(tr("Empty"))->setEnabled(false); } menu.addSeparator(); menu.addAction(tr("Manage proxies"), this, SLOT(showDialog())); menu.exec(pos); } void SBI_NetworkIcon::useProxy() { if (QAction* act = qobject_cast(sender())) { SBINetManager->setCurrentProxy(act->data().toString()); } } void SBI_NetworkIcon::updateToolTip() { QString tooltip = tr("Shows network status and manages proxy

    Network:
    %1

    Proxy:
    %2"); if (m_networkConfiguration->isOnline()) { tooltip = tooltip.arg(tr("Connected")); } else { tooltip = tooltip.arg(tr("Offline")); } switch (mApp->networkManager()->proxyFactory()->proxyPreference()) { case NetworkProxyFactory::SystemProxy: tooltip = tooltip.arg(tr("System proxy")); break; case NetworkProxyFactory::NoProxy: tooltip = tooltip.arg(tr("No proxy")); break; case NetworkProxyFactory::ProxyAutoConfig: tooltip = tooltip.arg(tr("PAC (Proxy Auto-Config)")); break; case NetworkProxyFactory::DefinedProxy: tooltip = tooltip.arg(tr("User defined")); break; default: qWarning() << "Unknown NetworkProxyFactory::ProxyPreference!"; break; } if (SBINetManager->currentProxy()) { tooltip.append(QString(" (%1)").arg(SBINetManager->currentProxyName())); } setToolTip(tooltip); } void SBI_NetworkIcon::enterEvent(QEvent* event) { updateToolTip(); ClickableLabel::enterEvent(event); } qupzilla-1.6.0/src/plugins/StatusBarIcons/sbi_networkicon.h000066400000000000000000000027261226107126500241140ustar00rootroot00000000000000/* ============================================================ * StatusBarIcons - Extra icons in statusbar for QupZilla * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SBI_NETWORKICON_H #define SBI_NETWORKICON_H #include #include "clickablelabel.h" class QNetworkConfigurationManager; class QupZilla; class SBI_NetworkIcon : public ClickableLabel { Q_OBJECT public: explicit SBI_NetworkIcon(QupZilla* window); private slots: void onlineStateChanged(bool online); void showDialog(); void showMenu(const QPoint &pos); void useProxy(); private: void updateToolTip(); void enterEvent(QEvent* event); QupZilla* p_QupZilla; QNetworkConfigurationManager* m_networkConfiguration; }; #endif // SBI_NETWORKICON_H qupzilla-1.6.0/src/plugins/StatusBarIcons/sbi_networkicondialog.cpp000066400000000000000000000071161226107126500256250ustar00rootroot00000000000000/* ============================================================ * StatusBarIcons - Extra icons in statusbar for QupZilla * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "sbi_networkicondialog.h" #include "sbi_networkmanager.h" #include "sbi_networkproxy.h" #include "ui_sbi_networkicondialog.h" #include #include SBI_NetworkIconDialog::SBI_NetworkIconDialog(QWidget* parent) : QDialog(parent) , ui(new Ui::SBI_NetworkIconDialog) { ui->setupUi(this); ui->addButton->setIcon(QIcon::fromTheme("document-new", QIcon(":sbi/data/add.png"))); ui->removeButton->setIcon(QIcon::fromTheme("edit-delete", QIcon(":sbi/data/remove.png"))); const QHash &proxies = SBINetManager->proxies(); QHashIterator it(proxies); while (it.hasNext()) { it.next(); ui->comboBox->addItem(it.key()); } updateWidgets(); showProxy(ui->comboBox->currentText()); connect(ui->addButton, SIGNAL(clicked()), this, SLOT(addProxy())); connect(ui->removeButton, SIGNAL(clicked()), this, SLOT(removeProxy())); connect(ui->comboBox, SIGNAL(currentIndexChanged(QString)), this, SLOT(showProxy(QString))); connect(ui->proxyButtonBox, SIGNAL(accepted()), this, SLOT(saveProxy())); connect(ui->closeButton, SIGNAL(clicked(QAbstractButton*)), this, SLOT(close())); } void SBI_NetworkIconDialog::addProxy() { const QString name = QInputDialog::getText(this, tr("Add proxy"), tr("Name of proxy:")); if (name.isEmpty() || ui->comboBox->findText(name) > -1) { return; } ui->comboBox->addItem(name); ui->comboBox->setCurrentIndex(ui->comboBox->count() - 1); updateWidgets(); } void SBI_NetworkIconDialog::removeProxy() { QMessageBox::StandardButton button = QMessageBox::warning(this, tr("Remove current proxy"), tr("Are you sure to remove current proxy?"), QMessageBox::Yes | QMessageBox::No, QMessageBox::No); if (button != QMessageBox::Yes) { return; } int index = ui->comboBox->currentIndex(); if (index < 0) { return; } SBINetManager->removeProxy(ui->comboBox->currentText()); ui->comboBox->removeItem(index); updateWidgets(); } void SBI_NetworkIconDialog::saveProxy() { SBINetManager->saveProxy(ui->comboBox->currentText(), ui->proxyWidget->getProxy()); } void SBI_NetworkIconDialog::showProxy(const QString &name) { SBI_NetworkProxy* proxy = SBINetManager->proxies()[name]; ui->proxyWidget->clear(); if (proxy) { ui->proxyWidget->setProxy(*proxy); } } void SBI_NetworkIconDialog::updateWidgets() { ui->removeButton->setEnabled(ui->comboBox->count() > 0); ui->noProxiesLabel->setVisible(ui->comboBox->count() == 0); ui->proxyWidget->setVisible(ui->comboBox->count() > 0); } SBI_NetworkIconDialog::~SBI_NetworkIconDialog() { delete ui; } qupzilla-1.6.0/src/plugins/StatusBarIcons/sbi_networkicondialog.h000066400000000000000000000026171226107126500252730ustar00rootroot00000000000000/* ============================================================ * StatusBarIcons - Extra icons in statusbar for QupZilla * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SBI_NETWORKICONDIALOG_H #define SBI_NETWORKICONDIALOG_H #include namespace Ui { class SBI_NetworkIconDialog; } class SBI_NetworkIcon; class SBI_NetworkIconDialog : public QDialog { Q_OBJECT public: explicit SBI_NetworkIconDialog(QWidget* parent = 0); ~SBI_NetworkIconDialog(); private slots: void addProxy(); void removeProxy(); void saveProxy(); void showProxy(const QString &name); private: void updateWidgets(); Ui::SBI_NetworkIconDialog* ui; }; #endif // SBI_NETWORKICONDIALOG_H qupzilla-1.6.0/src/plugins/StatusBarIcons/sbi_networkicondialog.ui000066400000000000000000000074021226107126500254560ustar00rootroot00000000000000 SBI_NetworkIconDialog 0 0 520 390 Proxy Manager 0 0 Select proxy: Add proxy Remove proxy 0 0 0 0 No proxies. You can add proxy by clicking on <b>Add</b> button. Qt::AlignCenter 0 0 0 0 QDialogButtonBox::Save All changes must be saved with <b>Save</b> button. QDialogButtonBox::Close SBI_ProxyWidget QWidget
    sbi_proxywidget.h
    1
    qupzilla-1.6.0/src/plugins/StatusBarIcons/sbi_networkmanager.cpp000066400000000000000000000074071226107126500251320ustar00rootroot00000000000000/* ============================================================ * StatusBarIcons - Extra icons in statusbar for QupZilla * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "sbi_networkmanager.h" #include "sbi_networkproxy.h" #include "mainapplication.h" #include "networkmanager.h" #include SBI_NetworkManager* SBI_NetworkManager::s_instance = 0; SBI_NetworkManager::SBI_NetworkManager(const QString &settingsPath, QObject* parent) : QObject(parent) , m_settingsFile(settingsPath + "networkicon.ini") , m_currentProxy(0) { s_instance = this; loadSettings(); } SBI_NetworkManager* SBI_NetworkManager::instance() { return s_instance; } void SBI_NetworkManager::loadSettings() { QSettings settings(m_settingsFile, QSettings::IniFormat); foreach (const QString &group, settings.childGroups()) { if (group.isEmpty()) { continue; } SBI_NetworkProxy* proxy = new SBI_NetworkProxy; settings.beginGroup(group); proxy->loadFromSettings(settings); settings.endGroup(); m_proxies[group] = proxy; } const QString currentName = settings.value("CurrentProxy", QString()).toString(); m_currentProxy = m_proxies.contains(currentName) ? m_proxies.value(currentName) : 0; applyCurrentProxy(); } QString SBI_NetworkManager::currentProxyName() const { return m_proxies.key(m_currentProxy); } SBI_NetworkProxy* SBI_NetworkManager::currentProxy() const { return m_currentProxy; } void SBI_NetworkManager::setCurrentProxy(const QString &name) { QSettings settings(m_settingsFile, QSettings::IniFormat); settings.setValue("CurrentProxy", name); m_currentProxy = m_proxies.contains(name) ? m_proxies.value(name) : 0; applyCurrentProxy(); } void SBI_NetworkManager::saveProxy(const QString &name, SBI_NetworkProxy* proxy) { if (name.isEmpty()) { return; } QSettings settings(m_settingsFile, QSettings::IniFormat); settings.beginGroup(name); proxy->saveToSettings(settings); settings.endGroup(); m_proxies[name] = proxy; } void SBI_NetworkManager::removeProxy(const QString &name) { if (name.isEmpty()) { return; } QSettings settings(m_settingsFile, QSettings::IniFormat); settings.beginGroup(name); settings.remove(QString()); // Removes all keys in current group settings.endGroup(); m_proxies.remove(name); } QHash SBI_NetworkManager::proxies() const { return m_proxies; } void SBI_NetworkManager::applyCurrentProxy() { if (!m_currentProxy) { return; } // Manually modify settings to apply proxy configuration QSettings settings(mApp->currentProfilePath() + "settings.ini", QSettings::IniFormat); settings.beginGroup("Web-Proxy"); m_currentProxy->saveToSettings(settings); settings.endGroup(); settings.sync(); mApp->networkManager()->proxyFactory()->loadSettings(); } void SBI_NetworkManager::deleteProxies() { qDeleteAll(m_proxies); m_proxies.clear(); } SBI_NetworkManager::~SBI_NetworkManager() { deleteProxies(); } qupzilla-1.6.0/src/plugins/StatusBarIcons/sbi_networkmanager.h000066400000000000000000000034751226107126500246000ustar00rootroot00000000000000/* ============================================================ * StatusBarIcons - Extra icons in statusbar for QupZilla * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SBI_NETWORKMANAGER_H #define SBI_NETWORKMANAGER_H #include #include class SBI_NetworkProxy; class SBI_NetworkManager : public QObject { Q_OBJECT public: explicit SBI_NetworkManager(const QString &settingsPath, QObject* parent = 0); ~SBI_NetworkManager(); static SBI_NetworkManager* instance(); void loadSettings(); QString currentProxyName() const; SBI_NetworkProxy* currentProxy() const; void setCurrentProxy(const QString &name); void saveProxy(const QString &name, SBI_NetworkProxy* proxy); void removeProxy(const QString &name); QHash proxies() const; private: void applyCurrentProxy(); void deleteProxies(); QString m_settingsFile; QHash m_proxies; SBI_NetworkProxy* m_currentProxy; static SBI_NetworkManager* s_instance; }; #define SBINetManager SBI_NetworkManager::instance() #endif // SBI_NETWORKMANAGER_H qupzilla-1.6.0/src/plugins/StatusBarIcons/sbi_networkproxy.cpp000066400000000000000000000133541226107126500246770ustar00rootroot00000000000000/* ============================================================ * StatusBarIcons - Extra icons in statusbar for QupZilla * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "sbi_networkproxy.h" #include SBI_NetworkProxy::SBI_NetworkProxy() : m_port(0) , m_httpsPort(0) , m_useDifferentProxyForHttps(false) , m_preference(NetworkProxyFactory::DefinedProxy) , m_type(QNetworkProxy::HttpProxy) { } bool SBI_NetworkProxy::operator ==(const SBI_NetworkProxy &other) const { return m_port == other.m_port && m_hostname == other.m_hostname && m_username == other.m_username && m_password == other.m_password && m_httpsPort == other.m_httpsPort && m_httpsHostname == other.m_httpsHostname && m_httpsUsername == other.m_httpsUsername && m_httpsPassword == other.m_httpsPassword && m_useDifferentProxyForHttps == other.m_useDifferentProxyForHttps && m_preference == other.m_preference && m_type == other.m_type && m_exceptions == other.m_exceptions; } quint16 SBI_NetworkProxy::port() const { return m_port; } void SBI_NetworkProxy::setPort(quint16 port) { m_port = port; } QString SBI_NetworkProxy::hostName() const { return m_hostname; } void SBI_NetworkProxy::setHostName(const QString &hostName) { m_hostname = hostName; } QString SBI_NetworkProxy::userName() const { return m_username; } void SBI_NetworkProxy::setUserName(const QString &userName) { m_username = userName; } QString SBI_NetworkProxy::password() const { return m_password; } void SBI_NetworkProxy::setPassword(const QString &password) { m_password = password; } quint16 SBI_NetworkProxy::httpsPort() const { return m_httpsPort; } void SBI_NetworkProxy::setHttpsPort(quint16 port) { m_httpsPort = port; } QString SBI_NetworkProxy::httpsHostName() const { return m_httpsHostname; } void SBI_NetworkProxy::setHttpsHostName(const QString &hostName) { m_httpsHostname = hostName; } QString SBI_NetworkProxy::httpsUserName() const { return m_httpsUsername; } void SBI_NetworkProxy::setHttpsUserName(const QString &userName) { m_httpsUsername = userName; } QString SBI_NetworkProxy::httpsPassword() const { return m_httpsPassword; } void SBI_NetworkProxy::setHttpsPassword(const QString &password) { m_httpsPassword = password; } QUrl SBI_NetworkProxy::proxyAutoConfigUrl() const { return m_pacUrl; } void SBI_NetworkProxy::setProxyAutoConfigUrl(const QUrl &url) { m_pacUrl = url; } bool SBI_NetworkProxy::useDifferentProxyForHttps() const { return m_useDifferentProxyForHttps; } void SBI_NetworkProxy::setUseDifferentProxyForHttps(bool use) { m_useDifferentProxyForHttps = use; } NetworkProxyFactory::ProxyPreference SBI_NetworkProxy::preference() const { return m_preference; } void SBI_NetworkProxy::setPreference(NetworkProxyFactory::ProxyPreference preference) { m_preference = preference; } QNetworkProxy::ProxyType SBI_NetworkProxy::type() const { return m_type; } void SBI_NetworkProxy::setType(QNetworkProxy::ProxyType type) { m_type = type; } QStringList SBI_NetworkProxy::exceptions() const { return m_exceptions; } void SBI_NetworkProxy::setExceptions(const QStringList &exceptions) { m_exceptions = exceptions; } void SBI_NetworkProxy::loadFromSettings(const QSettings &settings) { m_hostname = settings.value("HostName", QString()).toString(); m_port = settings.value("Port", 0).toInt(); m_username = settings.value("Username", QString()).toString(); m_password = settings.value("Password", QString()).toString(); m_httpsHostname = settings.value("HttpsHostName", QString()).toString(); m_httpsPort = settings.value("HttpsPort", 0).toInt(); m_httpsUsername = settings.value("HttpsUsername", QString()).toString(); m_httpsPassword = settings.value("HttpsPassword", QString()).toString(); m_pacUrl = settings.value("PacUrl", QUrl()).toUrl(); m_useDifferentProxyForHttps = settings.value("UseDifferentProxyForHttps", false).toBool(); m_preference = NetworkProxyFactory::ProxyPreference(settings.value("UseProxy", NetworkProxyFactory::SystemProxy).toInt()); m_type = QNetworkProxy::ProxyType(settings.value("ProxyType", QNetworkProxy::HttpProxy).toInt()); m_exceptions = settings.value("ProxyExceptions", QStringList() << "localhost" << "127.0.0.1").toStringList(); } void SBI_NetworkProxy::saveToSettings(QSettings &settings) const { settings.setValue("HostName", m_hostname); settings.setValue("Port", m_port); settings.setValue("Username", m_username); settings.setValue("Password", m_password); settings.setValue("HttpsHostName", m_httpsHostname); settings.setValue("HttpsPort", m_httpsPort); settings.setValue("HttpsUsername", m_httpsUsername); settings.setValue("HttpsPassword", m_httpsPassword); settings.setValue("PacUrl", m_pacUrl); settings.setValue("UseDifferentProxyForHttps", m_useDifferentProxyForHttps); settings.setValue("UseProxy", m_preference); settings.setValue("ProxyType", m_type); settings.setValue("ProxyExceptions", m_exceptions); } qupzilla-1.6.0/src/plugins/StatusBarIcons/sbi_networkproxy.h000066400000000000000000000053441226107126500243440ustar00rootroot00000000000000/* ============================================================ * StatusBarIcons - Extra icons in statusbar for QupZilla * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SBI_NETWORKPROXY_H #define SBI_NETWORKPROXY_H #include #include "networkproxyfactory.h" class QSettings; class SBI_NetworkProxy { public: explicit SBI_NetworkProxy(); bool operator==(const SBI_NetworkProxy &other) const; quint16 port() const; void setPort(quint16 port); QString hostName() const; void setHostName(const QString &hostName); QString userName() const; void setUserName(const QString &userName); QString password() const; void setPassword(const QString &password); quint16 httpsPort() const; void setHttpsPort(quint16 port); QString httpsHostName() const; void setHttpsHostName(const QString &hostName); QString httpsUserName() const; void setHttpsUserName(const QString &userName); QString httpsPassword() const; void setHttpsPassword(const QString &password); QUrl proxyAutoConfigUrl() const; void setProxyAutoConfigUrl(const QUrl &url); bool useDifferentProxyForHttps() const; void setUseDifferentProxyForHttps(bool use); NetworkProxyFactory::ProxyPreference preference() const; void setPreference(NetworkProxyFactory::ProxyPreference preference); QNetworkProxy::ProxyType type() const; void setType(QNetworkProxy::ProxyType type); QStringList exceptions() const; void setExceptions(const QStringList &exceptions); void loadFromSettings(const QSettings &settings); void saveToSettings(QSettings &settings) const; private: quint16 m_port; QString m_hostname; QString m_username; QString m_password; quint16 m_httpsPort; QString m_httpsHostname; QString m_httpsUsername; QString m_httpsPassword; QUrl m_pacUrl; bool m_useDifferentProxyForHttps; NetworkProxyFactory::ProxyPreference m_preference; QNetworkProxy::ProxyType m_type; QStringList m_exceptions; }; #endif // SBI_NETWORKPROXY_H qupzilla-1.6.0/src/plugins/StatusBarIcons/sbi_proxywidget.cpp000066400000000000000000000071071226107126500244700ustar00rootroot00000000000000#include "sbi_proxywidget.h" #include "sbi_networkproxy.h" #include "ui_sbi_proxywidget.h" SBI_ProxyWidget::SBI_ProxyWidget(QWidget* parent) : QWidget(parent), ui(new Ui::SBI_ProxyWidget) { ui->setupUi(this); useHttpsProxyChanged(false); connect(ui->useHttpsProxy, SIGNAL(toggled(bool)), this, SLOT(useHttpsProxyChanged(bool))); } void SBI_ProxyWidget::clear() { ui->proxyServer->clear(); ui->proxyPort->clear(); ui->proxyUsername->clear(); ui->proxyPassword->clear(); ui->httpsProxyServer->clear(); ui->httpsProxyPort->clear(); ui->httpsProxyUsername->clear(); ui->httpsProxyPassword->clear(); ui->proxyExceptions->clear(); ui->pacUrl->clear(); ui->proxyType->setCurrentIndex(0); ui->useHttpsProxy->setChecked(false); ui->noProxy->setChecked(true); } SBI_NetworkProxy* SBI_ProxyWidget::getProxy() const { SBI_NetworkProxy* proxy = new SBI_NetworkProxy; proxy->setHostName(ui->proxyServer->text()); proxy->setPort(ui->proxyPort->text().toInt()); proxy->setUserName(ui->proxyUsername->text()); proxy->setPassword(ui->proxyPassword->text()); proxy->setHttpsHostName(ui->httpsProxyServer->text()); proxy->setHttpsPort(ui->httpsProxyPort->text().toInt()); proxy->setHttpsUserName(ui->httpsProxyUsername->text()); proxy->setHttpsPassword(ui->httpsProxyPassword->text()); proxy->setExceptions(ui->proxyExceptions->text().split(QLatin1Char(','), QString::SkipEmptyParts)); proxy->setProxyAutoConfigUrl(QUrl(ui->pacUrl->text())); proxy->setUseDifferentProxyForHttps(ui->useHttpsProxy->isChecked()); proxy->setType(ui->proxyType->currentIndex() == 0 ? QNetworkProxy::HttpProxy : QNetworkProxy::Socks5Proxy); if (ui->noProxy->isChecked()) { proxy->setPreference(NetworkProxyFactory::NoProxy); } else if (ui->systemProxy->isChecked()) { proxy->setPreference(NetworkProxyFactory::SystemProxy); } else if (ui->manualProxy->isChecked()) { proxy->setPreference(NetworkProxyFactory::DefinedProxy); } else if (ui->pacProxy->isChecked()) { proxy->setPreference(NetworkProxyFactory::ProxyAutoConfig); } return proxy; } void SBI_ProxyWidget::setProxy(const SBI_NetworkProxy &proxy) { ui->proxyServer->setText(proxy.hostName()); ui->proxyPort->setText(QString::number(proxy.port())); ui->proxyUsername->setText(proxy.userName()); ui->proxyPassword->setText(proxy.password()); ui->httpsProxyServer->setText(proxy.httpsHostName()); ui->httpsProxyPort->setText(QString::number(proxy.httpsPort())); ui->httpsProxyUsername->setText(proxy.httpsUserName()); ui->httpsProxyPassword->setText(proxy.httpsPassword()); ui->useHttpsProxy->setChecked(proxy.useDifferentProxyForHttps()); ui->proxyExceptions->setText(proxy.exceptions().join(QLatin1String(","))); ui->proxyType->setCurrentIndex(proxy.type() == QNetworkProxy::HttpProxy ? 0 : 1); switch (proxy.preference()) { case NetworkProxyFactory::NoProxy: ui->noProxy->setChecked(true); break; case NetworkProxyFactory::SystemProxy: ui->systemProxy->setChecked(true); break; case NetworkProxyFactory::DefinedProxy: ui->manualProxy->setChecked(true); break; case NetworkProxyFactory::ProxyAutoConfig: ui->pacProxy->setChecked(true); break; default: break; } } void SBI_ProxyWidget::useHttpsProxyChanged(bool enable) { ui->httpsCredentialsLayout_2->setEnabled(enable); ui->httpsServerLayout_2->setEnabled(enable); } SBI_ProxyWidget::~SBI_ProxyWidget() { delete ui; } qupzilla-1.6.0/src/plugins/StatusBarIcons/sbi_proxywidget.h000066400000000000000000000010061226107126500241250ustar00rootroot00000000000000#ifndef SBI_PROXYWIDGET_H #define SBI_PROXYWIDGET_H #include namespace Ui { class SBI_ProxyWidget; } class SBI_NetworkProxy; class SBI_ProxyWidget : public QWidget { Q_OBJECT public: explicit SBI_ProxyWidget(QWidget* parent = 0); ~SBI_ProxyWidget(); SBI_NetworkProxy* getProxy() const; void setProxy(const SBI_NetworkProxy &proxy); void clear(); private slots: void useHttpsProxyChanged(bool enable); private: Ui::SBI_ProxyWidget* ui; }; #endif // SBI_PROXYWIDGET_H qupzilla-1.6.0/src/plugins/StatusBarIcons/sbi_proxywidget.ui000066400000000000000000000162571226107126500243310ustar00rootroot00000000000000 SBI_ProxyWidget 0 0 558 342 Form Do not use proxy Use different proxy for https connection <b>Exceptions</b> Don't use on: HTTP SOCKS5 Port: 50 16777215 Qt::Horizontal QSizePolicy::Fixed 40 20 Username: Password: Qt::Horizontal 40 20 Use script for automatic configuration: System proxy configuration Proxy Auto-Config (.pac) file Qt::Horizontal QSizePolicy::Fixed 50 20 Manual configuration Qt::Vertical 20 40 Server: Port: 50 16777215 Username: Password: Qt::Horizontal 40 20 qupzilla-1.6.0/src/plugins/StatusBarIcons/sbi_settingsdialog.cpp000066400000000000000000000035321226107126500251210ustar00rootroot00000000000000/* ============================================================ * StatusBarIcons - Extra icons in statusbar for QupZilla * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "sbi_settingsdialog.h" #include "ui_sbi_settingsdialog.h" #include "sbi_iconsmanager.h" SBI_SettingsDialog::SBI_SettingsDialog(SBI_IconsManager* manager, QWidget* parent) : QDialog(parent) , ui(new Ui::SBI_SettingsDialog) , m_manager(manager) { ui->setupUi(this); ui->showImagesIcon->setChecked(m_manager->showImagesIcon()); ui->showJavaScriptIcon->setChecked(m_manager->showJavaScriptIcon()); ui->showNetworkIcon->setChecked(m_manager->showNetworkIcon()); connect(ui->buttonBox, SIGNAL(accepted()), this, SLOT(saveSettings())); connect(ui->buttonBox, SIGNAL(rejected()), this, SLOT(close())); } void SBI_SettingsDialog::saveSettings() { m_manager->setShowImagesIcon(ui->showImagesIcon->isChecked()); m_manager->setShowJavaScriptIcon(ui->showJavaScriptIcon->isChecked()); m_manager->setShowNetworkIcon(ui->showNetworkIcon->isChecked()); m_manager->reloadIcons(); close(); } SBI_SettingsDialog::~SBI_SettingsDialog() { delete ui; } qupzilla-1.6.0/src/plugins/StatusBarIcons/sbi_settingsdialog.h000066400000000000000000000025061226107126500245660ustar00rootroot00000000000000/* ============================================================ * StatusBarIcons - Extra icons in statusbar for QupZilla * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef SBI_SETTINGSDIALOG_H #define SBI_SETTINGSDIALOG_H #include namespace Ui { class SBI_SettingsDialog; } class SBI_IconsManager; class SBI_SettingsDialog : public QDialog { Q_OBJECT public: explicit SBI_SettingsDialog(SBI_IconsManager* manager, QWidget* parent = 0); ~SBI_SettingsDialog(); private slots: void saveSettings(); private: Ui::SBI_SettingsDialog* ui; SBI_IconsManager* m_manager; }; #endif // SBI_SETTINGSDIALOG_H qupzilla-1.6.0/src/plugins/StatusBarIcons/sbi_settingsdialog.ui000066400000000000000000000073461226107126500247630ustar00rootroot00000000000000 SBI_SettingsDialog 0 0 345 186 StatusBar Icons Qt::Horizontal 40 20 0 0 :/sbi/data/icon.png <h3>StatusBar Icons</h3> Qt::Horizontal 40 20 These icons will be displayed in statusbar: Qt::AlignCenter Qt::Horizontal 40 20 Images Icon JavaScript Icon Network Icon Qt::Horizontal 40 20 QDialogButtonBox::Cancel|QDialogButtonBox::Ok qupzilla-1.6.0/src/plugins/StatusBarIcons/statusbaricons.qrc000066400000000000000000000017011226107126500243070ustar00rootroot00000000000000 data/icon.png data/images.png data/javascript.png data/network-offline.png data/network-online.png data/network-unknown.png data/preferences-network.png data/add.png data/remove.png locale/de_DE.qm locale/el_GR.qm locale/he_IL.qm locale/ja_JP.qm locale/nl_NL.qm locale/pl_PL.qm locale/pt_PT.qm locale/ru_RU.qm locale/sr_BA.qm locale/sr_BA@latin.qm locale/sr_RS.qm locale/sr_RS@latin.qm locale/zh_CN.qm locale/zh_TW.qm qupzilla-1.6.0/src/plugins/StatusBarIcons/statusbariconsplugin.cpp000066400000000000000000000056221226107126500255310ustar00rootroot00000000000000/* ============================================================ * StatusBarIcons - Extra icons in statusbar for QupZilla * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "statusbariconsplugin.h" #include "sbi_iconsmanager.h" #include "sbi_settingsdialog.h" #include "pluginproxy.h" #include "qupzilla.h" #include StatusBarIconsPlugin::StatusBarIconsPlugin() : QObject() , m_manager(0) { } PluginSpec StatusBarIconsPlugin::pluginSpec() { PluginSpec spec; spec.name = "StatusBar Icons"; spec.info = "Icons in statusbar providing various actions"; spec.description = "Adds additional icons to statusbar"; spec.version = "0.1.6"; spec.author = "David Rosca "; spec.icon = QPixmap(":sbi/data/icon.png"); spec.hasSettings = true; return spec; } void StatusBarIconsPlugin::init(InitState state, const QString &settingsPath) { m_manager = new SBI_IconsManager(settingsPath); connect(mApp->plugins(), SIGNAL(mainWindowCreated(QupZilla*)), m_manager, SLOT(mainWindowCreated(QupZilla*))); connect(mApp->plugins(), SIGNAL(mainWindowDeleted(QupZilla*)), m_manager, SLOT(mainWindowDeleted(QupZilla*))); // Make sure icons are added also to already created windows if (state == LateInitState) { foreach (QupZilla* window, mApp->mainWindows()) { m_manager->mainWindowCreated(window); } } } void StatusBarIconsPlugin::unload() { // Make sure icons are properly removed when unloading plugin (but not when closing app) if (!mApp->isClosing()) { foreach (QupZilla* window, mApp->mainWindows()) { m_manager->mainWindowDeleted(window); } delete m_manager; } } bool StatusBarIconsPlugin::testPlugin() { return (QupZilla::VERSION == QLatin1String("1.6.0")); } QTranslator* StatusBarIconsPlugin::getTranslator(const QString &locale) { QTranslator* translator = new QTranslator(this); translator->load(locale, ":/sbi/locale/"); return translator; } void StatusBarIconsPlugin::showSettings(QWidget* parent) { SBI_SettingsDialog dialog(m_manager, parent); dialog.exec(); } #if QT_VERSION < 0x050000 Q_EXPORT_PLUGIN2(StatusBarIcons, StatusBarIconsPlugin) #endif qupzilla-1.6.0/src/plugins/StatusBarIcons/statusbariconsplugin.h000066400000000000000000000030461226107126500251740ustar00rootroot00000000000000/* ============================================================ * StatusBarIcons - Extra icons in statusbar for QupZilla * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef STATUSBARICONSPLUGIN_H #define STATUSBARICONSPLUGIN_H #include "plugininterface.h" class SBI_IconsManager; class StatusBarIconsPlugin : public QObject, public PluginInterface { Q_OBJECT Q_INTERFACES(PluginInterface) #if QT_VERSION >= 0x050000 Q_PLUGIN_METADATA(IID "QupZilla.Browser.plugin.StatusBarIcons") #endif public: explicit StatusBarIconsPlugin(); PluginSpec pluginSpec(); void init(InitState state, const QString &settingsPath); void unload(); bool testPlugin(); QTranslator* getTranslator(const QString &locale); void showSettings(QWidget* parent = 0); private: SBI_IconsManager* m_manager; }; #endif // STATUSBARICONSPLUGIN_H qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/000077500000000000000000000000001226107126500232565ustar00rootroot00000000000000qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/ar_SA.ts000066400000000000000000000310211226107126500246100ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally بدّل إعدادات تحميل الصور لكل موقع على حدة أو لكل المواقع معاً Current page settings إعدادات الصفحة الحالية Disable loading images (temporarily) امنع تحميل الصور (مؤقتاً) Enable loading images (temporarily) اسمح بتحميل الصور (مؤقتاً) Global settings الإعدادات العامّة Automatically load images اسمح بتحميل الصور SBI_JavaScriptIcon Modify JavaScript settings per-site and globally بدّل إعدادات جافاسكربت لكل موقع على حدة أو لكل المواقع معاً Current page settings إعدادات الصفحة الحالية Disable JavaScript (temporarily) امنع جافاسكربت (مؤقتاً) Enable JavaScript (temporarily) اسمح بجافاسكربت (مؤقتاً) Global settings الإعدادات العامّة Manage JavaScript settings أدِر إعدادات جافاسكربت SBI_NetworkIcon Proxy configuration إعدادات الخادوم الوكيل Select proxy اختر خادوماً وكيلاً Empty فارغ Manage proxies أدر الخواديم الوكيلة Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 يُظهر حالة الشبكة ويدير الخادوم الوكيل<br/><br/><b>الشبكة:</b><br/>%1<br/><br/><b>الخادم الوكيل:</b><br/>%2 Connected متّصل Offline غير متّصل Unknown لا يُعرف System proxy الخادوم الوكيل الذي يستخدمه نظام التشغيل No proxy بلا خادوم وكيل PAC (Proxy Auto-Config) يُضبط تلقائياً User defined حَدّده المستخدم SBI_NetworkIconDialog Proxy Manager إدارة الخواديم الوكيلة Select proxy: اختر خادوماً وكيلاً: Add proxy أضف خادوماً وكيلاً Remove proxy احذف الخادوم الوكيل No proxies. You can add proxy by clicking on <b>Add</b> button. لا خواديم وكيلة. يمكنك إضافة واحد بالنقر على زر .<b>أضف</b>. All changes must be saved with <b>Save</b> button. عليك أن تحفظ كل التغييرات بالنقر على زر <b>احفظ</b>. Name of proxy: اسم الخادوم الوكيل: Remove current proxy احذف الخادوم الوكيل الحاليّ Are you sure to remove current proxy? أتريد حقاً أن تحذف الخادوم الوكيل الحاليّ؟ SBI_ProxyWidget Form النموذج Do not use proxy لا تستخدم خادوماً وكيلاً Use different proxy for https connection استخدم خادوماً وكيلاً مختلفاً في اتصال HTTPS <b>Exceptions</b> <b>الاستثناءات</b> Don't use on: لا تستخدمه في: HTTP HTTP SOCKS5 SOCKS5 Port: المنفذ: Username: اسم المستخدم: Password: كلمة المرور: Use script for automatic configuration: استخدم نصاً برمجياً من أجل الضبط التلقائي: System proxy configuration ضبط الخادوم الوكيل الذي يستخدمه النظام Proxy Auto-Config (.pac) file ضبط الخادم الوكيل التلقائيّ (ملف .pac) Manual configuration ضبط يدوي Server: الخادوم: SBI_SettingsDialog StatusBar Icons رموز شريط الحالة <h3>StatusBar Icons</h3> <h3>رموز شريط الحالة</h3> These icons will be displayed in statusbar: ستُعرض هذه الرموز في شريط الحالة: Images Icon رمز الصور JavaScript Icon رمز جافاسكربت Network Icon رمز الشبكة qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/bg_BG.ts000066400000000000000000000316131226107126500245720ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally Промяна на настройките за зареждане на изображения за отделни сайтове и глобално Current page settings Настройки на текущата страница Disable loading images (temporarily) Забраняване зареждането на изображения (временно) Enable loading images (temporarily) Разрешаване зареждането на изображения (временно) Global settings Глобални настройки Automatically load images Автоматично зареждане на изображения SBI_JavaScriptIcon Modify JavaScript settings per-site and globally Промяна на JavaScript настройки за отделни сайтове и глобално Current page settings Настройки на текущата страница Disable JavaScript (temporarily) Забраняване на JavaScript (временно) Enable JavaScript (temporarily) Разрешаване на JavaScript (временно) Global settings Глобални настройки Manage JavaScript settings Управление на JavaScript настройките SBI_NetworkIcon Proxy configuration Настройка на прокси Select proxy Избиране на прокси Empty Празно Manage proxies Управление на проксита Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Показване на състоянието на мрежата и прокси управлението<br/><br/><b>Мрежа:</b><br/>%1<br/><br/><b>Прокси:</b><br/>%2 Connected Свързан Offline Извън линия Unknown Неизвестно System proxy Системно прокси No proxy Без прокси PAC (Proxy Auto-Config) PAC (Proxy Auto-Config) User defined Потребителски SBI_NetworkIconDialog Proxy Manager Управление на прокси Select proxy: Избор на прокси: Add proxy Добавяне на прокси Remove proxy Премахване на прокси No proxies. You can add proxy by clicking on <b>Add</b> button. Без прокси. Вие можете да добавите прокси, като кликнете на бутона <b>Добавяне</b> All changes must be saved with <b>Save</b> button. Всички промени трябва да бъдат запазени с бутона <b>Запазване</b> Name of proxy: Име на прокси: Remove current proxy Премахване на текущото прокси Are you sure to remove current proxy? Сигурни ли сте, че желаете да премахнете текущото прокси? SBI_ProxyWidget Form Форма Do not use proxy Да не се използва прокси Use different proxy for https connection Използване на друго прокси за https връзка <b>Exceptions</b> <b>Изключения</b> Don't use on: Да не се използва на: HTTP HTTP SOCKS5 SOCKS5 Port: Порт: Username: Потребителско име: Password: Парола: Use script for automatic configuration: Използване на скрипт за автоматични настройки: System proxy configuration Системни прокси настройки Proxy Auto-Config (.pac) file Proxy Auto-Config (.pac) файл Manual configuration Ръчни настройки Server: Сървър: SBI_SettingsDialog StatusBar Icons Иконки в лентата на състоянието <h3>StatusBar Icons</h3> <h3>Иконки в лентата на състоянието</h3> These icons will be displayed in statusbar: Тези иконки ще бъдат показани в лентата на състоянието: Images Icon Иконка Изображения JavaScript Icon Иконка JavaScript Network Icon Иконка Мрежа qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/cs_CZ.ts000066400000000000000000000271651226107126500246420ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally Pozměnit nastavení načítání obrázků podle stránky nebo globálně Current page settings Nastavení stávající stránky Disable loading images (temporarily) Zakázat načítání obrázků (dočasně) Enable loading images (temporarily) Povolit načítání obrázků (dočasně) Global settings Globální nastavení Automatically load images Automaticky načítat obrázky SBI_JavaScriptIcon Modify JavaScript settings per-site and globally Pozměnit nastavení JavaScriptu podle stránky nebo globálně Current page settings Nastavení stávající stránky Disable JavaScript (temporarily) Zakázat JavaScript (dočasně) Enable JavaScript (temporarily) Povolit JacaScript (dočasně) Global settings Globální nastavení Manage JavaScript settings Spravovat nastavení JavaScriptu SBI_NetworkIcon Proxy configuration Konfigurace proxy Select proxy Vybrat proxy Empty Prázdné Manage proxies Spravovat proxy Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Zobrazuje stav sítě a spravuje proxy<br/><br/><b>Síť:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Connected Připojeno Offline Offline Unknown Neznámé System proxy Systémová proxy No proxy Žádná proxy PAC (Proxy Auto-Config) PAC (Proxy Auto-Config) User defined Stanoveno uživatelem SBI_NetworkIconDialog Proxy Manager Správce proxy Select proxy: Vyberte proxy: Add proxy Přidat proxy Remove proxy Odstranit proxy No proxies. You can add proxy by clicking on <b>Add</b> button. Žádné proxy. Přidat je můžete tlačítkem <b>Přidat</b>. All changes must be saved with <b>Save</b> button. Všechny změny musí být uloženy stiskem tlačítka <b>Uložit</b>. Name of proxy: Jméno proxy: Remove current proxy Odstranit stávající proxy Are you sure to remove current proxy? Opravdu chcete odstranit stávající proxy? SBI_ProxyWidget Form Formulář Do not use proxy Nepoužívat proxy Use different proxy for https connection Použít jinou proxy pro https připojení <b>Exceptions</b> <b>Výjimky</b> Don't use on: Nepužívat na: HTTP HTTP SOCKS5 SOCKS5 Port: Port: Username: Uživatelské jméno: Password: Heslo: Use script for automatic configuration: Použít skript pro automatickou konfiguraci: System proxy configuration Nastavení systémové proxy Proxy Auto-Config (.pac) file Proxy Auto-Config (.pac) soubor Manual configuration Manuální nastavení Server: Server: SBI_SettingsDialog StatusBar Icons Ikony statusbaru <h3>StatusBar Icons</h3> <h3>Ikony statusbaru</h3> These icons will be displayed in statusbar: Tyto ikony se zobrazí ve statusbaru Images Icon Ikona obrázků JavaScript Icon Ikona JavaScriptu Network Icon Ikona sítě qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/de_DE.ts000066400000000000000000000275641226107126500246040ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally Einstellungen für das Laden von Bildern anpassen (global und pro Webseite) Current page settings Einstellungen der aktuellen Seite Disable loading images (temporarily) Das Laden von Bildern deaktivieren (vorübergehend) Enable loading images (temporarily) Das Laden von Bildern aktivieren (vorübergehend) Global settings Globale Einstellungen Automatically load images Bilder automatisch laden SBI_JavaScriptIcon Modify JavaScript settings per-site and globally JavaScript-Einstellungen anpassen (global und pro Webseite) Current page settings Einstellungen der aktuellen Seite Disable JavaScript (temporarily) JavaScript deaktivieren (vorübergehend) Enable JavaScript (temporarily) JavaScript aktivieren (vorübergehend) Global settings Globale Einstellungen Manage JavaScript settings JavaScript-Einstellungen bearbeiten SBI_NetworkIcon Proxy configuration Proxy-Server Konfiguration Select proxy Proxy-Server wählen Empty Leer Manage proxies Proxy-Server verwalten Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Netzwerk-Status und Proxy-Server Verwaltung<br/><br/><b>Netzwerk:</b><br/>%1<br/><br/><b>Proxy-Server:</b><br/>%2 Connected Verbunden Offline Offline Unknown Unbekannt System proxy Proxy-Server des Systems No proxy Kein Proxy-Server PAC (Proxy Auto-Config) PAC (Proxy Auto-Config) User defined Benutzerdefineirt SBI_NetworkIconDialog Proxy Manager Proxy-Server Manager Select proxy: Proxy-Server wählen: Add proxy Proxy-Server hinzufügen Remove proxy Proxy-Server entfernen No proxies. You can add proxy by clicking on <b>Add</b> button. Keine Proxy-Server vorhanden. Bitte zum Hinzufügen von Proxy-Servern die <b>Hinzufügen</b> Schaltfläche drücken. All changes must be saved with <b>Save</b> button. Bitte zum Speichern der Änderungen die <b>Speichern</b> Schaltfläche drücken. Name of proxy: Name des Proxy-Servers: Remove current proxy Den aktuellen Proxy-Server entfernen Are you sure to remove current proxy? Möchten Sie den aktuellen Proxy-Server wirklich entfernen? SBI_ProxyWidget Form Formular Do not use proxy Keinen Proxy-Server benutzen Use different proxy for https connection Einen anderen Proxy-Server für https-Verbindungen nutzen <b>Exceptions</b> <b>Ausnahmen</b> Don't use on: Ausnahme: HTTP HTTP SOCKS5 SOCKS5 Port: Port: Username: Nutzername: Password: Passwort: Use script for automatic configuration: Skript für automatische Konfiguration verwenden: System proxy configuration Proxy-Einstellungen des Systems verwenden Proxy Auto-Config (.pac) file Proxy-Auto-Config-Datei (PAC-Datei) Manual configuration Manuelle Konfiguration Server: Server: SBI_SettingsDialog StatusBar Icons StatusBar-Symbole <h3>StatusBar Icons</h3> <h3>StatusBar-Symbole</h3> These icons will be displayed in statusbar: Diese Symbole werden in der Statusleiste angezeigt: Images Icon Laden von Bildern JavaScript Icon JavaScript-Einstellungen Network Icon Netzwerkstatus qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/el_GR.ts000066400000000000000000000313651226107126500246260ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally Τροποποίηση ρυθμίσεων φόρτωσης εικόνων ανά σελίδα και γενικά Current page settings Τρέχουσες ρυθμίσεις σελίδας Disable loading images (temporarily) Απενεργοποίηση φόρτωσης εικόνων (προσωρινά) Enable loading images (temporarily) Ενεργοποίηση φόρτωσης εικόνων (προσωρινά) Global settings Γενικές ρυθμίσεις Automatically load images Αυτόματη φόρτωση εικόνων SBI_JavaScriptIcon Modify JavaScript settings per-site and globally Τροποποίηση ρυθμίσεων JavaScript ανά σελίδα και γενικά Current page settings Τρέχουσες ρυθμίσεις σελίδας Disable JavaScript (temporarily) Απενεργοποίηση JavaScript (προσωρινά) Enable JavaScript (temporarily) Ενεργοποίηση JavaScript (προσωρινά) Global settings Γενικές ρυθμίσεις Manage JavaScript settings Διαχείριση ρυθμίσεων JavaScript SBI_NetworkIcon Proxy configuration Ρύθμιση proxy Select proxy Επιλογή proxy Empty Άδειο Manage proxies Διαχείριση των proxy Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Εμφανίζει την κατάσταση του δικτύου και διαχειρίζεται το proxy<br/><br/><b>Δίκτυο:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Connected Έγινε σύνδεση Offline Εκτός σύνδεσης Unknown Άγνωστο System proxy Proxy συστήματος No proxy Κανένα proxy PAC (Proxy Auto-Config) PAC (Proxy Auto-Config) User defined Καθορισμένο από το Χρήστη SBI_NetworkIconDialog Proxy Manager Διαχειριστής proxy Select proxy: Επιλογή proxy: Add proxy Προσθήκη proxy Remove proxy Αφαίρεση proxy No proxies. You can add proxy by clicking on <b>Add</b> button. Δεν υπάρχουν proxy. Μπορείτε να προσθέσετε proxy κάνοντας κλικ στο κουμπί <b>Προσθήκη</b>. All changes must be saved with <b>Save</b> button. Όλες οι αλλαγές πρέπει να αποθηκευτούν με το κουμπί <b>Αποθήκευση</b>. Name of proxy: Ονομασία του proxy: Remove current proxy Αφαίρεση του τρέχων proxy Are you sure to remove current proxy? Είστε σίγουρος για την αφαίρεση του τρέχων proxy; SBI_ProxyWidget Form Φόρμα Do not use proxy Να μην χρησιμοποιείται proxy Use different proxy for https connection Χρήση διαφορετικού proxy για σύνδεση https <b>Exceptions</b> <b>Εξαιρέσεις</b> Don't use on: Να μην χρησιμοποιείται σε: HTTP HTTP SOCKS5 SOCKS5 Port: Θύρα: Username: Όνομα χρήστη: Password: Κωδικός: Use script for automatic configuration: Χρήση δέσμης ενεργειών για αυτόματη ρύθμιση παραμέτρων: System proxy configuration Ρύθμιση proxy συστήματος Proxy Auto-Config (.pac) file Αρχείο Proxy Auto-Config (.pac) Manual configuration Χειροκίνητη ρύθμιση Server: Διακομιστής: SBI_SettingsDialog StatusBar Icons Εικονίδια μπάρας κατάστασης <h3>StatusBar Icons</h3> <h3>Εικονίδια μπάρας κατάστασης</h3> These icons will be displayed in statusbar: Αυτά τα εικονίδια θα εμφανίζονται στην μπάρα κατάστασης: Images Icon Εικονίδιο εικόνων JavaScript Icon Εικονίδιο JavaScript Network Icon Εικονίδιο δικτύου qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/empty.ts000066400000000000000000000261721226107126500247740ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally Current page settings Disable loading images (temporarily) Enable loading images (temporarily) Global settings Automatically load images SBI_JavaScriptIcon Modify JavaScript settings per-site and globally Current page settings Disable JavaScript (temporarily) Enable JavaScript (temporarily) Global settings Manage JavaScript settings SBI_NetworkIcon Proxy configuration Select proxy Empty Manage proxies Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Connected Offline Unknown System proxy No proxy PAC (Proxy Auto-Config) User defined SBI_NetworkIconDialog Proxy Manager Select proxy: Add proxy Remove proxy No proxies. You can add proxy by clicking on <b>Add</b> button. All changes must be saved with <b>Save</b> button. Name of proxy: Remove current proxy Are you sure to remove current proxy? SBI_ProxyWidget Form Do not use proxy Use different proxy for https connection <b>Exceptions</b> Don't use on: HTTP SOCKS5 Port: Username: Password: Use script for automatic configuration: System proxy configuration Proxy Auto-Config (.pac) file Manual configuration Server: SBI_SettingsDialog StatusBar Icons <h3>StatusBar Icons</h3> These icons will be displayed in statusbar: Images Icon JavaScript Icon Network Icon qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/es_ES.ts000066400000000000000000000273461226107126500246400ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally Modificar ajustes de cargado de imagenes de manera global y por sitio Current page settings Ajustes de la página actual Disable loading images (temporarily) Deshabilitar el cargado de imágenes (temporalmente) Enable loading images (temporarily) Habilitar el cargado de imágenes (temporalmente) Global settings Ajustes globales Automatically load images Cargar imágenes automaticamente SBI_JavaScriptIcon Modify JavaScript settings per-site and globally Modificar ajustes de JavaScript de manera global y por sitio Current page settings Ajustes de la página actual Disable JavaScript (temporarily) Deshabilitar JavaScript (temporalmente) Enable JavaScript (temporarily) Habilitar JavaScript (temporalmente) Global settings Ajustes globales Manage JavaScript settings Gestionar los ajustes de JavaScript SBI_NetworkIcon Proxy configuration Configuración de proxy Select proxy Seleccionar proxy Empty Vacío Manage proxies Gestionar proxies Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Muestra el estado de la red y gestiona el proxy<br/><br/><b>Red:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Connected Conectado Offline Desconectado Unknown Desconocido System proxy Proxy del sistema No proxy Sin proxy PAC (Proxy Auto-Config) PAC (Autoconfiguración de proxy) User defined Definido por el usuario SBI_NetworkIconDialog Proxy Manager Administrador de proxy Select proxy: Seleccionar proxy: Add proxy Añadir proxy Remove proxy Eliminar No proxies. You can add proxy by clicking on <b>Add</b> button. Sin proxies. Puede añadir un proxy haciendo clic en el botón <b>Añadir</b>. All changes must be saved with <b>Save</b> button. Todos los cambios se deben guardar con el botón <b>Guardar</b>. Name of proxy: Nombre del proxy: Remove current proxy Eliminar el proxy actual Are you sure to remove current proxy? ¿Está seguro de eliminar el proxy actual? SBI_ProxyWidget Form Do not use proxy No usar proxy Use different proxy for https connection Usar un proxy diferente para conecciones https <b>Exceptions</b> <b>Excepciones</b> Don't use on: No usar en: HTTP HTTP SOCKS5 SOCKS5 Port: Puerto: Username: Nombre de usuario: Password: Contraseña: Use script for automatic configuration: Usar script para configuración automática: System proxy configuration Configuración de proxy del sistema Proxy Auto-Config (.pac) file Archivo de autoconfiguaración de proxy (.pac) Manual configuration Configuración manuel Server: Servidor: SBI_SettingsDialog StatusBar Icons Iconos de la barra de estado <h3>StatusBar Icons</h3> <h3>Iconos de la barra de estado</h3> These icons will be displayed in statusbar: Estos iconos se mostrarán en la barra de estado: Images Icon Icono de imágen JavaScript Icon Icono de JavaScript Network Icon Icono de Red qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/eu_ES.ts000066400000000000000000000271501226107126500246330ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally Aldatu irudiak ezarpenak gertatuz gune-bakoitzeko eta orokorki Current page settings Oraingo orrialde ezarpenak Disable loading images (temporarily) Ezgaitu irudiak gertatzea (aldibaterako) Enable loading images (temporarily) Gaitu irudiak gertatzea (aldibaterako) Global settings Ezarpen orokorrak Automatically load images Berezgaitasunez gertatu irudiak SBI_JavaScriptIcon Modify JavaScript settings per-site and globally Aldatu JavaScript ezarpenak gune-bakoitzeko eta orokorki Current page settings Oraingo orrialdearen ezarpenak Disable JavaScript (temporarily) Ezgaitu JavaScript (aldibaterako) Enable JavaScript (temporarily) Gaitu JavaScript (aldibaterako) Global settings Ezarpen orokorrak Manage JavaScript settings Kudeatu JavaScript ezarpenak SBI_NetworkIcon Proxy configuration Proxy itxurapena Select proxy Hautatu proxya Empty Hutsik Manage proxies Kudeatu proxyak Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Sare egoera erakutsi eta proxya kudeatzen du<br/><br/><b>Sarea:</b><br/>%1<br/><br/><b>Proxya:</b><br/>%2 Connected Elkarketaturik Offline Lineaz-kanpo Unknown Ezezaguna System proxy Sistema proxya No proxy Proxy gabe PAC (Proxy Auto-Config) PBI (Proxy Berez-Itxurap) User defined Erabiltzaileak zehaztuta SBI_NetworkIconDialog Proxy Manager Proxy Kudeatzailea Select proxy: Hautatu proxya: Add proxy Gehitu proxya Remove proxy Kendu proxya No proxies. You can add proxy by clicking on <b>Add</b> button. Proxy gabe. Proxya gehitu dezakezu <b>Gehitu</b> botoia sakatuz. All changes must be saved with <b>Save</b> button. Aldaketa guztiak <b>Gorde</b> botoiarekin gorde behar dira. Name of proxy: Proxyaren izena: Remove current proxy Kendu oraingo proxya Are you sure to remove current proxy? Zihur zaude oraingo proxya kentzea nahi duzula? SBI_ProxyWidget Form Galdekizuna Do not use proxy Ez erabili proxyrik Use different proxy for https connection Erabili proxy ezberdina https elkarketarako <b>Exceptions</b> <b>Salbuespenak</b> Don't use on: Ez erabili hemen: HTTP HTTP SOCKS5 SOCKS5 Port: Ataka: Username: Erabiltzaile-izena: Password: Sarhitza: Use script for automatic configuration: Erabili eskripta berezgaitasunezko itxurapenerako: System proxy configuration Sistemaren proxy itxurapena Proxy Auto-Config (.pac) file Proxy Berez-Itxurap (.pac) agiria Manual configuration Eskuzko itxurapena Server: Zerbitzaria: SBI_SettingsDialog StatusBar Icons Egoera-Barra Ikurrak <h3>StatusBar Icons</h3> <h3>Egoera-Barra Ikurrak</h3> These icons will be displayed in statusbar: Ikur hauek egoerabarran erakutsiko dira: Images Icon Irudi Ikurra JavaScript Icon JavaScript Ikurra Network Icon Sare Ikurra qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/fr_FR.ts000066400000000000000000000275551226107126500246420ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally Modifier les paramètres de chargement d'images globaux et par sites. Current page settings Paramètres de la page actuelle Disable loading images (temporarily) Désactiver le chargement d'images (temporaire) Enable loading images (temporarily) Activer le chargement d'images (temporaire) Global settings Paramètres généraux Automatically load images Charger automatiquement les images SBI_JavaScriptIcon Modify JavaScript settings per-site and globally Modifier les paramètres de JavaScript globaux et par sites. Current page settings Paramètres de la page actuelle Disable JavaScript (temporarily) Désactiver JavaScript (temporairement) Enable JavaScript (temporarily) Activer JavaScript (temporairement) Global settings Paramètres généraux Manage JavaScript settings Gérer les paramètres JavaScript SBI_NetworkIcon Proxy configuration Configuration du proxy Select proxy Sélectionner le proxy Empty Vide Manage proxies Gérer les proxys Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Montrer l'état du réseau et gérer le proxy<br/><br/><b>Réseau : </b><br/>%1<br/><br/><b>Proxy :</b><br/>%2 Connected Connecté Offline Non connecté Unknown Inconnu System proxy Proxy système No proxy Pas de proxy PAC (Proxy Auto-Config) PAC (Proxy Auto-Config) User defined Défini par l'utilisateur SBI_NetworkIconDialog Proxy Manager Gestionnaire de proxy Select proxy: Sélectionner un proxy : Add proxy Ajouter un proxy Remove proxy Supprimer un proxy No proxies. You can add proxy by clicking on <b>Add</b> button. Pas de proxy. Vous pouvez ajouter un proxy en cliquant sur le bouton <b>Ajouter</b>. All changes must be saved with <b>Save</b> button. Toutes modifications doivent être enregistrées en cliquant sur le bouton <b>Enregistrer</b> Name of proxy: Nom du proxy : Remove current proxy Supprimer le proxy actuel Are you sure to remove current proxy? Etes vous sûr de vouloir supprimer le proxy actuel ? SBI_ProxyWidget Form Forme Do not use proxy Ne pas utiliser de proxy Use different proxy for https connection Utiliser un autre proxy pour les connexions HTTPS <b>Exceptions</b> <b>Exceptions</b> Don't use on: Ne pas utiliser pour : HTTP HTTP SOCKS5 SOCKS5 Port: Port : Username: Nom d'utilisateur : Password: Mot de passe : Use script for automatic configuration: Utiliser le script pour une configuration automatique : System proxy configuration Utiliser les paramètres proxy du système Proxy Auto-Config (.pac) file Fichier de configuration automatique du Proxy (.pac) Manual configuration Configuration manuelle Server: Serveur : SBI_SettingsDialog StatusBar Icons Icônes de la bar de statut <h3>StatusBar Icons</h3> <h3>Icônes de la barre de statut</h3> These icons will be displayed in statusbar: Ces icônes seront affichées Images Icon Icône d'images JavaScript Icon Icône de JavaScript Network Icon Icône du réseau qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/he_IL.ts000066400000000000000000000275051226107126500246170ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally התאמת הגדרות טעינת תמונות לכל אתר וגלובלית Current page settings הגדרות עמוד נוכחי Disable loading images (temporarily) נטרל טעינת תמונות (זמנית) Enable loading images (temporarily) אפשר טעינת תמונות (זמנית) Global settings הגדרות גלובליות Automatically load images טען אוטומטית תמונות SBI_JavaScriptIcon Modify JavaScript settings per-site and globally התאמת הגדרות לכל אתר וגלובלית Current page settings הגדרות עמוד נוכחי Disable JavaScript (temporarily) נטרל JavaScript (זמנית) Enable JavaScript (temporarily) אפשר JavaScript (זמנית) Global settings הגדרות גלובליות Manage JavaScript settings נהל הגדרות JavaScript SBI_NetworkIcon Proxy configuration תצורת Proxy Select proxy בחר ציר Empty ריק Manage proxies נהל צירים Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 הצגת מצב רשת תקשורת וניהול ציר<br/><br/><b>רשת:</b><br/>%1<br/><br/><b>ציר:</b><br/>%2 Connected מחובר Offline לא מקוון Unknown לא ידוע System proxy ציר מערכת No proxy בלי ציר PAC (Proxy Auto-Config) User defined מוגדר משתמש SBI_NetworkIconDialog Proxy Manager מנהל Proxy Select proxy: בחר ציר: Add proxy הוסף ציר Remove proxy הסר ציר No proxies. You can add proxy by clicking on <b>Add</b> button. אין צירים. באפשרותך להוסיף ציר על ידי הקלקה על לחצן <b>הוסף</b>. All changes must be saved with <b>Save</b> button. על כל השינויים להישמר בעזרת לחצן <b>שמור</b>. Name of proxy: שם של ציר: Remove current proxy הסר ציר נוכחי Are you sure to remove current proxy? האם אתה בטוח להסיר ציר נוכחי? SBI_ProxyWidget Form טופס Do not use proxy אל תשתמש בציר Use different proxy for https connection השתמש בציר אחר עבור חיבורי https <b>Exceptions</b> <b>חריגים</b> Don't use on: אל תשתמש ביעדים: HTTP SOCKS5 Port: פורט: Username: שם משתמש: Password: סיסמה: Use script for automatic configuration: השתמש בתסריט לתצורה אוטומטית: System proxy configuration תצורת ציר של מערכת Proxy Auto-Config (.pac) file קובץ Proxy Auto-Config ‏(‎.pac) Manual configuration תצורה ידנית Server: שרת: SBI_SettingsDialog StatusBar Icons צלמיות שורת מצב <h3>StatusBar Icons</h3> <h3>צלמיות שורת מצב</h3> These icons will be displayed in statusbar: צלמיות אלה יוצגו בשורת מצב: Images Icon צלמית תמונות JavaScript Icon צלמית JavaScript Network Icon צלמית רשת qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/it_IT.ts000066400000000000000000000274211226107126500246440ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally Modifica le impostazioni di caricamento delle immagini per siti specifici e globalmente Current page settings Impostazioni pagina attuale Disable loading images (temporarily) Disattiva il caricamento delle immagini (temporaneamente) Enable loading images (temporarily) Abilita il caricamento delle immagini (temporaneamente) Global settings Impostazioni globali Automatically load images Carica automaticamente le immagini SBI_JavaScriptIcon Modify JavaScript settings per-site and globally Modifica le impostazioni JavaScript per siti specifici e globalmente Current page settings Impostazioni per la pagina attuale Disable JavaScript (temporarily) Disattiva JavaScript (temporaneamente) Enable JavaScript (temporarily) Attiva JavaScript (temporaneamente) Global settings Impostazioni globali Manage JavaScript settings Gestisci le impostazioni di JavaScript SBI_NetworkIcon Proxy configuration Configurazione proxy Select proxy Seleziona proxy Empty Vuoto Manage proxies Gestisci i proxy Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Mostra lo stato della rete e gestisce il proxy<br/><br/><b>Rete:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Connected Connesso Offline Disconnesso Unknown Sconosciuto System proxy Proxy di sistema No proxy Nessun proxy PAC (Proxy Auto-Config) PAC (File di autoconfigurazione del proxy) User defined Definito dall'utente SBI_NetworkIconDialog Proxy Manager Gestore proxy Select proxy: Seleziona proxy Add proxy Aggiungi proxy Remove proxy Rimuovi proxy No proxies. You can add proxy by clicking on <b>Add</b> button. Nessun proxy. Puoi aggiungerne uno cliccando sul pulsante <b>Aggiungi</b> All changes must be saved with <b>Save</b> button. Tutte le modifiche devono essere salvate con il pulsante <b>Salva</b> Name of proxy: Nome del proxy: Remove current proxy Rimuovi il proxy attuale Are you sure to remove current proxy? Sei sicuro di voler rimuovere il proxy attuale? SBI_ProxyWidget Form Campo Do not use proxy Non usare proxy Use different proxy for https connection Usa un proxy differente per le connessioni https <b>Exceptions</b> <b>Eccezioni</b> Don't use on: Non utilizzare su: HTTP HTTP SOCKS5 SOCKS5 Port: Porta: Username: Nome Utente: Password: Password: Use script for automatic configuration: Usa uno script per la configurazione automatica: System proxy configuration Configurazione proxy di sistema Proxy Auto-Config (.pac) file File di autoconfigurazione del proxy (.pac) Manual configuration Configurazione manuale Server: Server: SBI_SettingsDialog StatusBar Icons Icone della barra di stato <h3>StatusBar Icons</h3> <h3>Icone della barra di stato</h3> These icons will be displayed in statusbar: Queste icone verranno visualizzate nella barra di stato: Images Icon Icona immagini JavaScript Icon Icona JavaScript Network Icon Icona rete qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/ja_JP.ts000066400000000000000000000301111226107126500246050ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally 画像の読み込みの全体の設定、またはサイトごとの設定を調整する。 Current page settings 現在のページの設定 Disable loading images (temporarily) 画像の読み込みを(一時的に)無効にする Enable loading images (temporarily) 画像の読み込みを(一時的に)有効にする Global settings 全体の設定 Automatically load images 自動的に画像を読み込む SBI_JavaScriptIcon Modify JavaScript settings per-site and globally Javascript の全体の設定、またはサイトごとの設定を調整する。 Current page settings 現在のページの設定 Disable JavaScript (temporarily) JavaScript を(一時的に)無効にする Enable JavaScript (temporarily) JavaScript を(一時的に)有効にする Global settings 全体の設定 Manage JavaScript settings JavaScript の設定の管理 SBI_NetworkIcon Proxy configuration プロキシ設定 Select proxy プロキシの選択 Empty Manage proxies プロキシの管理 Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 ネットワークステータスの表示とプロキシの管理<br/><br/><b>ネットワーク:</b><br/>%1<br/><br/><b>プロキシ:</b><br/>%2 Connected 接続済 Offline オフライン Unknown 不明 System proxy システムのプロキシ設定 No proxy プロキシを使用しない PAC (Proxy Auto-Config) PAC (プロキシ自動設定) User defined ユーザー指定 SBI_NetworkIconDialog Proxy Manager プロキシマネージャ Select proxy: プロキシの選択: Add proxy プロキシの追加 Remove proxy プロキシの削除 No proxies. You can add proxy by clicking on <b>Add</b> button. プロキシがありません。<b>追加</b>ボタンをクリックするとプロキシが追加できます。 All changes must be saved with <b>Save</b> button. すべての変更は<b>保存する</b>ボタンをクリックしないと保存されません。 Name of proxy: プロキシ名: Remove current proxy 現在のプロキシを削除する Are you sure to remove current proxy? 本当に現在のプロキシを削除しますか? SBI_ProxyWidget Form フォーム Do not use proxy プロキシを使用しない Use different proxy for https connection https接続の際には別のプロキシを使用する <b>Exceptions</b> <b>例外</b> Don't use on: プロキシを通さないページ: HTTP HTTP SOCKS5 SOCKS5 Port: ポート番号: Username: ユーザー名: Password: パスワード: Use script for automatic configuration: 自動設定にスクリプトを使用する: System proxy configuration システムの設定を使う Proxy Auto-Config (.pac) file プロキシ自動設定(.pac)ファイル Manual configuration 手動設定 Server: サーバー: SBI_SettingsDialog StatusBar Icons ステータスバーアイコン <h3>StatusBar Icons</h3> <h3>ステータスバーアイコン</h3> These icons will be displayed in statusbar: これらのアイコンはステータスバーに表示されます: Images Icon 画像アイコン JavaScript Icon Javascript アイコン Network Icon ネットワークアイコン qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/nl_NL.ts000066400000000000000000000273141226107126500246370ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally Bewerk instellingen van afbeeldingen laden per website en globaal Current page settings Huidige paginainstellingen Disable loading images (temporarily) Schakel laden van afbeeldingen uit (tijdelijk) Enable loading images (temporarily) Schakel laden van afbeeldingen in (tijdelijk) Global settings Globale instellingen Automatically load images Laad afbeeldingen automatisch SBI_JavaScriptIcon Modify JavaScript settings per-site and globally Bewerk JavaScript-instellingen per website en globaal Current page settings Huidige paginainstellingen Disable JavaScript (temporarily) Schakel laden van JavaScript uit (tijdelijk) Enable JavaScript (temporarily) Schakel laden van afbeeldingen in (tijdelijk) Global settings Globale instellingen Manage JavaScript settings Bewerk JavaScript-instellingen SBI_NetworkIcon Proxy configuration Proxy-configuratie Select proxy Selecteer proxy Empty Leeg Manage proxies Beheer proxies Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Toon netwerkstatus en beheert proxy<br/><br/><b>Netwerk:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Connected Verbonden Offline Offline Unknown Onbekend System proxy Systeemproxy No proxy Geen proxy PAC (Proxy Auto-Config) PAC (Proxy Auto-Config) User defined Gebruiker-gespecificeerd SBI_NetworkIconDialog Proxy Manager Proxy-beheerder Select proxy: Selecteer proxy: Add proxy Voeg proxy toe Remove proxy Verwijder proxy No proxies. You can add proxy by clicking on <b>Add</b> button. Geen proxies. U kunt een proxy toevoegen door op de <b>Voeg toe</b>-knop te klikken. All changes must be saved with <b>Save</b> button. Alle wijzigingen moeten worden opgeslagen met de <b>Opslaan</b>-knop. Name of proxy: Naam van proxy: Remove current proxy Verwijder huidige proxy Are you sure to remove current proxy? Weet u zeker dat u de huidige proxy wilt verwijderen? SBI_ProxyWidget Form Formulier Do not use proxy Gebruik geen proxy Use different proxy for https connection Gebruik andere proxy voor https-verbinding <b>Exceptions</b> <b>Uitzonderingen</b> Don't use on: Gebruik niet op: HTTP HTTP SOCKS5 SOCKS5 Port: Poort: Username: Gebruikersnaam: Password: Wachtwoord: Use script for automatic configuration: Gebruik script voor automatische configuratie: System proxy configuration Systeemproxy-instellingen Proxy Auto-Config (.pac) file Proxy automatische configuratie-bestand (.pac) Manual configuration Handmatige instellingen Server: Server: SBI_SettingsDialog StatusBar Icons Statusbalk-pictogrammen <h3>StatusBar Icons</h3> <h3>Statusbalk-pictogrammen</h3> These icons will be displayed in statusbar: Deze pictogrammen zullen getoond worden op de statusbalk: Images Icon Afbeeldingen-pictogram JavaScript Icon JavaScript-pictogram Network Icon Netwerk-pictogram qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/nqo.ts000066400000000000000000000315631226107126500244330ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally ߖߌ߬ߦߊ ߡߊߝߊ߬ߟߋ߲߬ ߞߊ߬ ߞߐߕߐ߯ߘߐߛߙߋ ߟߎ߬ ߟߊߦߟߍ߬ ߞߍߦߙߐ ߟߎ߫ ߡߊ߬ ߞߌߢߍ߲߫ ߘߐ߫ Current page settings ߛߋ߲߬ߠߊ߬ ߞߐߜߍ ߞߐߕߐ߯ߘߐߛߙߋ ߟߎ߬ Disable loading images (temporarily) ߖߌ߬ߦߊ߬ ߟߊߦߟߍ ߓߐ߫ ߊ߬ ߟߊ߫ (ߕߎ߬ߡߊ ߘߏ߫ ߟߊ߫) Enable loading images (temporarily) ߖߌ߬ߦߊ߬ ߟߊߦߟߍ ߓߐ߫ ߊ߬ ߟߊ߫ (ߕߎ߬ߡߊ ߘߏ߫ ߟߊ߫) Global settings ߝߘߏ߬ߓߊ߬ ߞߐߕߐ߯ߘߐߛߙߋ ߟߎ߬ Automatically load images ߖߌ߬ߦߊ ߟߎ߫ ߖߘߍ߬ߡߊ߬ ߟߊ߬ߦߟߍ߬ߟߌ SBI_JavaScriptIcon Modify JavaScript settings per-site and globally ߖ߭ߝ߭ߊߣߐ߬ߣߐ߬ߟߊ ߡߊߝߊ߬ߟߋ߲߬ ߞߊ߬ ߞߐߕߐ߯ߘߐߛߙߋ ߟߎ߬ ߟߊߦߟߍ߬ ߞߍߦߙߐ ߟߎ߫ ߡߊ߬ ߞߌߢߍ߲߫ ߘߐ߫ Current page settings ߛߋ߲߬ߠߊ߬ ߞߐߜߍ ߞߐߕߐ߯ߘߐߛߙߋ ߟߎ߬ Disable JavaScript (temporarily) ߖ߭ߝ߭ߊߣߐߣߐߟߊ ߓߐ߫ ߊ߬ ߟߊ߫ (ߕߎ߬ߡߊ ߘߏ߫ ߟߊ߫) Enable JavaScript (temporarily) ߖ߭ߝ߭ߊߣߐߣߐߟߊ ߓߐ߫ ߊ߬ ߟߊ߫ (ߕߎ߬ߡߊ ߘߏ߫ ߟߊ߫) Global settings ߝߘߏ߬ߓߊ߬ ߞߐߕߐ߯ߘߐߛߙߋ ߟߎ߬ Manage JavaScript settings ߖ߭ߝ߭ߊߣߐߣߐߟߊ ߞߐߕߐ߯ߘߐߛߙߋ ߟߎ߫ ߞߎ߲߬ߠߊߛߌ߰ SBI_NetworkIcon Proxy configuration ߕߍߟߐ ߢߊߘߐߦߊߟߌ Select proxy ߕߍߟߐ ߓߊߕߐߡߐ߲߫ Empty ߘߐߞߏߟߏ߲ Manage proxies ߕߍߟߐ ߞߎ߲߬ߠߊߛߌ߰ Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 ߞߙߏ߬ߝߏ ߛߌ߰ߞߊ߲ ߠߊߟߐ߲߫ ߊ߬ ߣߌ߫ ߞߊ߬ ߕߍߟߐ ߞߎ߲߬ߠߊߛߌ߰<br/><br/><b>ߞߙߏ߬ߝߏ:</b><br/>%1<br/><br/><b>ߕߍߟߐ:</b><br/>%2 Connected ߜߊ߲߬ߞߎ߲߬ߣߍ߲ Offline ߜߊ߲߬ߞߎ߲߬ߓߐ߬ߣߍ߲ Unknown ߟߐ߲ߓߊߟߌ System proxy ߞߊ߲ߞߋ ߕߍߟߐ No proxy ߕߍߟߐ ߕߍ߫ PAC (Proxy Auto-Config) ߕߍߟߐ ߖߘߍ߬ ߢߊ߬ߘߐ߬ߦߊ߬ߟߊ ߕ.ߖ.ߢ User defined ߡߊߕߍ߰ߣߍ߲ ߕߣߐ߬ߓߐ߬ߟߊ ߓߟߏ߫ SBI_NetworkIconDialog Proxy Manager ߕߍߟߐ ߞߎ߲߬ߠߊ߬ߛߌ߰ߟߊ Select proxy: ߕߍߟߐ ߓߊߕߐߡߐ߲߫: Add proxy ߕߍߟߐ ߝߙߊ߬ Remove proxy ߕߍߟߐ ߖߐ߬ߛߌ߬ No proxies. You can add proxy by clicking on <b>Add</b> button. ߕߍߟߐ ߕߍ߫ ߦߋ߲߬. ߌ ߘߌ߫ ߛߋ߫ ߕߍߟߐ ߝߙߊ߬ ߟߊ߫ ߊ߬ ߛߐ߲߬ߞߌ߲ ߘߐ߫ <b>ߊ߬ ߝߙߊ߬</b> ߞߎ߬ߘߎ ߞߊ߲߬. All changes must be saved with <b>Save</b> button. ߡߝߊ߬ߟߋ߲߬ߠߌ ߠߎ߬ ߞߊ߫ ߞߊ߲߫ ߞߊ߬ ߟߊߡߊ߲߬ߘߌ߫ <b>ߊ߬ ߟߊߞߎ߲߬ߘߎ߬</b> ߞߎ߬ߘߎ ߟߋ߬ ߟߊ߫. Name of proxy: ߕߍߟߐ ߕߐ߮: Remove current proxy ߛߋ߲߬ߠߊ߬ ߕߍߟߐ ߖߐ߬ߛߌ߬ Are you sure to remove current proxy? ߦߴߊ߬ ߝߍ߬ ߞߊ߬ ߛߋ߲߬ߠߊ߬ ߕߍߟߐ ߖߐ߬ߛߌ߫ ߟߋ߬ ߢߍ؟ SBI_ProxyWidget Form ߛߓߍߟߝߊߕߊ Do not use proxy ߕߍߟߐ ߞߊ߫ ߟߊߓߊ߯ߙߊ߫ Use different proxy for https connection ߕߍߟߐ߫ ߜߘߍ߫ ߟߊߓߊ߯ߙߊ߫ ߞߟߏߜߍ߫ ߛߘߌߜߋ߲ ߟߊߕߊ߯ ߝߐߞߊ߲ ߠߊߞߊ߲ߘߊߣߍ߲ ߜߊ߲߬ߞߎ߲߬ߠߌ ߢߍ߫ <b>Exceptions</b> <b>ߢߌ߬ߣߊ߬ߓߐ߬ߕߊ ߟߎ߬</b> Don't use on: ߊ߬ ߞߊ߫ ߟߊߓߊ߯ߙߊ߫ ߣߌ߲߬ ߞߊ߲߬: HTTP ߞߟߏߜߍ߫ ߛߘߌߜߋ߲ ߟߊߕߊ߯ ߝߐߞߊ߲ SOCKS5 ߜߊ߬ߔߐ߬ߍ߬ߘߐ߬ ߅ Port: ߥߏ߬ߘߊ: Username: ߟߐ߲ߕߐ߮: Password: ߕߊ߬ߡߌ߲߬ߞߊ߲: Use script for automatic configuration: ߛߓߍߢߌ߲ ߠߊߓߊ߯ߙߊ߫ ߞߍߒߖߘߍߡߊ ߢߊߘߐߦߊߟߌ ߢߍ߫ System proxy configuration ߞߊ߲ߞߋ ߟߊ߫ ߕߍߟߐ ߢߊߘߐߦߊߟߌ Proxy Auto-Config (.pac) file ߕߍߟߐ ߖߘߍ߬ ߢߊ߬ߘߐ߬ߦߊ߬ߟߊ ߞߐߕߐ߯ߘߐ Manual configuration ߓߟߏߟߊ߫ ߢߊߘߐߦߊߟߌ Server: ߛߐߘߊ: SBI_SettingsDialog StatusBar Icons ߛߌ߰ߞߊ߲߬ ߡߙߎߝߋ ߕߐ߯ߡߊߦߋߙߋ߲ <h3>StatusBar Icons</h3> <h3>ߛߌ߰ߞߊ߲߬ ߡߙߎߝߋ ߕߐ߯ߡߊߦߋߙߋ߲</h3> These icons will be displayed in statusbar: ߕߐ߯ߡߊߦߋߙߋ߲ ߢߌ߲߬ ߠߎ߬ ߘߌ߫ ߟߊߟߐ߲߫ ߛߌ߰ߞߊ߲߬ ߡߙߎߝߋ ߘߐ߫: Images Icon ߖߌ߬ߦߊ ߟߎ߬ ߕߐ߯ߡߊߦߋߙߋ߲ JavaScript Icon ߖ߭ߝ߭ߊߣߐߣߐߟߊ ߕߐ߯ߡߊߦߋߙߋ߲ Network Icon ߞߙߏ߬ߝߏ ߕߐ߯ߡߊߦߋߙߋ߲ qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/pl_PL.ts000066400000000000000000000262351226107126500246440ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally Current page settings Disable loading images (temporarily) Wyłącz ładowanie obrazów (tymczasowo) Enable loading images (temporarily) Włącz ładowanie obrazów (tymczasowo) Global settings Ustawiani Ogólne Automatically load images Automatycznie ładuj obrazki SBI_JavaScriptIcon Modify JavaScript settings per-site and globally Current page settings Disable JavaScript (temporarily) Wyłącz JavaScript (tymczasowo) Enable JavaScript (temporarily) Włącz JavaScript (tymczasowo) Global settings Ustawiania Ogólne Manage JavaScript settings Zarządzaj ustawieniami JavaScript SBI_NetworkIcon Proxy configuration Ustawienia proxy Select proxy Wybierz proxy Empty Pusto Manage proxies Zarządzaj proxy Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Connected Podłączony Offline Odłączony Unknown Nieznany System proxy No proxy Brak proxy PAC (Proxy Auto-Config) PAC (Proxy Auto-Config) User defined SBI_NetworkIconDialog Proxy Manager Menadżer Proxy Select proxy: Wybierz proxy: Add proxy Dodaj proxy Remove proxy Usuń proxy No proxies. You can add proxy by clicking on <b>Add</b> button. Brak proxy. Możesz dodać proxy klikając przycisk <b>Dodaj</b>. All changes must be saved with <b>Save</b> button. Wszystkie zmiany muszą być potwierdzone przyciskiem <b>Zapisz</b>. Name of proxy: Nazwa proxy: Remove current proxy Usuń aktualne proxy Are you sure to remove current proxy? Czy na pewno usunąć aktualne proxy? SBI_ProxyWidget Form Z Do not use proxy Nie używaj proxy Use different proxy for https connection Użyj innego proxy dla połączeń https <b>Exceptions</b> <b>Rozszerzenia</b> Don't use on: Nie używaj na: HTTP HTTP SOCKS5 SOCKS5 Port: Port: Username: Nazwa użytkownika: Password: Hasło: Use script for automatic configuration: System proxy configuration Systemowe ustawienia proxy Proxy Auto-Config (.pac) file Proxy Auto-Config plik (.pac) Manual configuration Konfiguracja ręczna Server: Serwer: SBI_SettingsDialog StatusBar Icons Ikona Statusu <h3>StatusBar Icons</h3> <h3>Ikona paska statusu</h3> These icons will be displayed in statusbar: Te ikony będą widoczne na pasku statusu. Images Icon JavaScript Icon Network Icon qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/pt_PT.ts000066400000000000000000000272561226107126500246700ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally Modificar definições de carregamento de imagens por sítio ou globalmente Current page settings Definições da página atual Disable loading images (temporarily) Desativar carregamento de imagens (temporariamente) Enable loading images (temporarily) Ativar carregamento de imagens (temporariamente) Global settings Definições globais Automatically load images Carregar imagens automaticamente SBI_JavaScriptIcon Modify JavaScript settings per-site and globally Modificar definições JavaScript por sítio ou globalmente Current page settings Definições da página atual Disable JavaScript (temporarily) Desativar JavaScript (temporariamente) Enable JavaScript (temporarily) Ativar JavaScript (temporariamente) Global settings Definições globais Manage JavaScript settings Gerir definições JavaScript SBI_NetworkIcon Proxy configuration Configuração de proxy Select proxy Seleção de proxy Empty Vazio Manage proxies Gerir proxies Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Mostra o estado da rede e gere os proxies<br/><br/><b>Rede:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Connected Ligado Offline Desligado Unknown Desconhecido System proxy Proxy do sistema No proxy Sem proxy PAC (Proxy Auto-Config) PAC (Proxy Auto-Config) User defined Definido pelo utilizador SBI_NetworkIconDialog Proxy Manager Gestor de proxy Select proxy: Seleção de proxy: Add proxy Adicionar proxy Remove proxy Remover proxy No proxies. You can add proxy by clicking on <b>Add</b> button. Nenhum proxy. Pode adicionar um proxy clicando em <b>Adicionar</b>. All changes must be saved with <b>Save</b> button. As alterações devem ser gravadas com <b>Gravar</b>. Name of proxy: Nome do proxy: Remove current proxy Remover proxy atual Are you sure to remove current proxy? Tem a certeza que quer remover o proxy? SBI_ProxyWidget Form Formulário Do not use proxy Não utilizar proxy Use different proxy for https connection Utilizar proxy diferente para ligações https <b>Exceptions</b> <b>Exceções</b> Don't use on: Não utilizar em: HTTP HTTP SOCKS5 SOCKS5 Port: Porta: Username: Utilizador: Password: Senha: Use script for automatic configuration: Utilizar script de configuração automática: System proxy configuration Configuração de proxy do sistema Proxy Auto-Config (.pac) file Ficheiro de configuração de proxy (.pac) Manual configuration Configuração manual Server: Servidor: SBI_SettingsDialog StatusBar Icons Ícones na barra de estado <h3>StatusBar Icons</h3> <h3>Ícones na barra de estado</h3> These icons will be displayed in statusbar: Estes ícones serão exibidos na barra de estado: Images Icon Ícone de imagens JavaScript Icon Ícone JavaScript Network Icon Ícone de rede qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/ru_RU.ts000066400000000000000000000312301226107126500246610ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally Изменить параметры загрузки изображений для каждого сайта, так и глобально Current page settings Настройки текущей страницы Disable loading images (temporarily) Отключить загрузку изображений (временно) Enable loading images (temporarily) Включить загрузки изображений (временно) Global settings Глобальные настройки Automatically load images Автоматически загружать изображения SBI_JavaScriptIcon Modify JavaScript settings per-site and globally Изменить настройки JavaScript для каждого сайта, так и глобально Current page settings Настройки текущей страницы Disable JavaScript (temporarily) Отключить JavaScript (временно) Enable JavaScript (temporarily) Включить JavaScript (временно) Global settings Глобальные настройки Manage JavaScript settings Управление параметрами JavaScript SBI_NetworkIcon Proxy configuration Прокси Select proxy Выберите прокси Empty Пусто Manage proxies Управление прокси Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Показывать состояние сети и прокси<br/><br/><b>Сеть:</b><br/>%1<br/><br/><b>Прокси:</b><br/>%2 Connected Соединение Offline Оффлайн Unknown Неизвестно System proxy Системное прокси No proxy Без прокси PAC (Proxy Auto-Config) PAC (Proxy Auto-Config) User defined Пользовательский SBI_NetworkIconDialog Proxy Manager Управление прокси Select proxy: Выберите прокси Add proxy Добавить прокси Remove proxy Удалить прокси No proxies. You can add proxy by clicking on <b>Add</b> button. Без прокси-сервера. Вы можете добавить прокси-сервер, нажав на кнопку <b>Добавить</b> All changes must be saved with <b>Save</b> button. Все изменения будут сохранены нажав на кнопку <b>Сохранить</b> Name of proxy: Имя прокси Remove current proxy Удалить текущий прокси Are you sure to remove current proxy? Вы уверены, что хотите удалить текущий прокси? SBI_ProxyWidget Form Форма Do not use proxy Не использовать прокси Use different proxy for https connection Использовать другой прокси для https <b>Exceptions</b> <b>Исключения</b> Don't use on: Не использовать на: HTTP HTTP SOCKS5 SOCKS5 Port: Порт: Username: Имя пользователя: Password: Пароль: Use script for automatic configuration: Использовать скрипт автоматической настройки: System proxy configuration Системные настройки прокси Proxy Auto-Config (.pac) file Файл Proxy Auto-Config (.pac) Manual configuration Ручные настройки Server: Сервер: SBI_SettingsDialog StatusBar Icons Иконки в строке состояния <h3>StatusBar Icons</h3> <h3>Иконки в строке состояния</h3> These icons will be displayed in statusbar: Эти иконки будут отображаться в строке состояния: Images Icon Иконка изображений JavaScript Icon Иконка JavaScript Network Icon Иконка соединения qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/sr_BA.ts000066400000000000000000000305341226107126500246210ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally Измјена поставки учитавања слика Current page settings Поставке текуће странице Disable loading images (temporarily) Привремено онемогући учитавање слика Enable loading images (temporarily) Привремено омогући учитавање слика Global settings Опште поставке Automatically load images Аутоматски учитавај слике SBI_JavaScriptIcon Modify JavaScript settings per-site and globally Измјена поставки учитавања јаваскрипти Current page settings Поставке текуће странице Disable JavaScript (temporarily) Привремено онемогући јаваскрипте Enable JavaScript (temporarily) Привремено омогући јаваскрипте Global settings Опште поставке Manage JavaScript settings Управљај поставкама јаваскрипти SBI_NetworkIcon Proxy configuration Поставке проксија Select proxy Изабери прокси Empty Празно Manage proxies Управљај проксијима Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Приказ стања мреже и менаџер проксија<br/><br/><b>Мрежа:</b><br/>%1<br/><br/><b>Прокси:</b><br/>%2 Connected Повезан Offline Неповезан Unknown Непознато System proxy Системски прокси No proxy Без проксија PAC (Proxy Auto-Config) Аутоматска поставка (ПАЦ) User defined Кориснички дефинисан SBI_NetworkIconDialog Proxy Manager Менаџер проксија Select proxy: Изабери прокси: Add proxy Додај прокси Remove proxy Уклони прокси No proxies. You can add proxy by clicking on <b>Add</b> button. Нема проксија. Додајте их кликом на дугме <b>Додај</b>. All changes must be saved with <b>Save</b> button. Све измјене сачувајте кликом на <b>Сачувај</b>. Name of proxy: Назив проксија: Remove current proxy Уклањање текућег проксија Are you sure to remove current proxy? Желите ли заиста да уклоните овај прокси? SBI_ProxyWidget Form Формулар Do not use proxy Не користи прокси Use different proxy for https connection Користи други прокси за ХТТПС везу <b>Exceptions</b> <b>Изузеци</b> Don't use on: Не користи на: HTTP ХТТП SOCKS5 СОЦКС5 Port: Порт: Username: Корисничко име: Password: Лозинка: Use script for automatic configuration: Користи скрипту за аутоматску поставу: System proxy configuration Системске поставке Proxy Auto-Config (.pac) file Фајл ауто-поставки проксија (.pac) Manual configuration Ручне поставке Server: Сервер: SBI_SettingsDialog StatusBar Icons Иконе траке стања <h3>StatusBar Icons</h3> <h3>Иконе траке стања</h3> These icons will be displayed in statusbar: Иконе приказане у траци стања: Images Icon Слике JavaScript Icon Јаваскрипте Network Icon Мрежа qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/sr_BA@latin.ts000066400000000000000000000267101226107126500257520ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally Izmjena postavki učitavanja slika Current page settings Postavke tekuće stranice Disable loading images (temporarily) Privremeno onemogući učitavanje slika Enable loading images (temporarily) Privremeno omogući učitavanje slika Global settings Opšte postavke Automatically load images Automatski učitavaj slike SBI_JavaScriptIcon Modify JavaScript settings per-site and globally Izmjena postavki učitavanja javaskripti Current page settings Postavke tekuće stranice Disable JavaScript (temporarily) Privremeno onemogući javaskripte Enable JavaScript (temporarily) Privremeno omogući javaskripte Global settings Opšte postavke Manage JavaScript settings Upravljaj postavkama javaskripti SBI_NetworkIcon Proxy configuration Postavke proksija Select proxy Izaberi proksi Empty Prazno Manage proxies Upravljaj proksijima Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Prikaz stanja mreže i menadžer proksija<br/><br/><b>Mreža:</b><br/>%1<br/><br/><b>Proksi:</b><br/>%2 Connected Povezan Offline Nepovezan Unknown Nepoznato System proxy Sistemski proksi No proxy Bez proksija PAC (Proxy Auto-Config) Automatska postavka (PAC) User defined Korisnički definisan SBI_NetworkIconDialog Proxy Manager Menadžer proksija Select proxy: Izaberi proksi: Add proxy Dodaj proksi Remove proxy Ukloni proksi No proxies. You can add proxy by clicking on <b>Add</b> button. Nema proksija. Dodajte ih klikom na dugme <b>Dodaj</b>. All changes must be saved with <b>Save</b> button. Sve izmjene sačuvajte klikom na <b>Sačuvaj</b>. Name of proxy: Naziv proksija: Remove current proxy Uklanjanje tekućeg proksija Are you sure to remove current proxy? Želite li zaista da uklonite ovaj proksi? SBI_ProxyWidget Form Formular Do not use proxy Ne koristi proksi Use different proxy for https connection Koristi drugi proksi za HTTPS vezu <b>Exceptions</b> <b>Izuzeci</b> Don't use on: Ne koristi na: HTTP HTTP SOCKS5 SOCKS5 Port: Port: Username: Korisničko ime: Password: Lozinka: Use script for automatic configuration: Koristi skriptu za automatsku postavu: System proxy configuration Sistemske postavke Proxy Auto-Config (.pac) file Fajl auto-postavki proksija (.pac) Manual configuration Ručne postavke Server: Server: SBI_SettingsDialog StatusBar Icons Ikone trake stanja <h3>StatusBar Icons</h3> <h3>Ikone trake stanja</h3> These icons will be displayed in statusbar: Ikone prikazane u traci stanja: Images Icon Slike JavaScript Icon Javaskripte Network Icon Mreža qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/sr_RS.ts000066400000000000000000000305261226107126500246640ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally Измена поставки учитавања слика Current page settings Поставке текуће странице Disable loading images (temporarily) Привремено онемогући учитавање слика Enable loading images (temporarily) Привремено омогући учитавање слика Global settings Опште поставке Automatically load images Аутоматски учитавај слике SBI_JavaScriptIcon Modify JavaScript settings per-site and globally Измена поставки учитавања јаваскрипти Current page settings Поставке текуће странице Disable JavaScript (temporarily) Привремено онемогући јаваскрипте Enable JavaScript (temporarily) Привремено омогући јаваскрипте Global settings Опште поставке Manage JavaScript settings Управљај поставкама јаваскрипти SBI_NetworkIcon Proxy configuration Поставке проксија Select proxy Изабери прокси Empty Празно Manage proxies Управљај проксијима Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Приказ стања мреже и менаџер проксија<br/><br/><b>Мрежа:</b><br/>%1<br/><br/><b>Прокси:</b><br/>%2 Connected Повезан Offline Неповезан Unknown Непознато System proxy Системски прокси No proxy Без проксија PAC (Proxy Auto-Config) Аутоматска поставка (ПАЦ) User defined Кориснички дефинисан SBI_NetworkIconDialog Proxy Manager Менаџер проксија Select proxy: Изабери прокси: Add proxy Додај прокси Remove proxy Уклони прокси No proxies. You can add proxy by clicking on <b>Add</b> button. Нема проксија. Додајте их кликом на дугме <b>Додај</b>. All changes must be saved with <b>Save</b> button. Све измене сачувајте кликом на <b>Сачувај</b>. Name of proxy: Назив проксија: Remove current proxy Уклањање текућег проксија Are you sure to remove current proxy? Желите ли заиста да уклоните овај прокси? SBI_ProxyWidget Form Формулар Do not use proxy Не користи прокси Use different proxy for https connection Користи други прокси за ХТТПС везу <b>Exceptions</b> <b>Изузеци</b> Don't use on: Не користи на: HTTP ХТТП SOCKS5 СОЦКС5 Port: Порт: Username: Корисничко име: Password: Лозинка: Use script for automatic configuration: Користи скрипту за аутоматску поставу: System proxy configuration Системске поставке Proxy Auto-Config (.pac) file Фајл ауто-поставки проксија (.pac) Manual configuration Ручне поставке Server: Сервер: SBI_SettingsDialog StatusBar Icons Иконе траке стања <h3>StatusBar Icons</h3> <h3>Иконе траке стања</h3> These icons will be displayed in statusbar: Иконе приказане у траци стања: Images Icon Слике JavaScript Icon Јаваскрипте Network Icon Мрежа qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/sr_RS@latin.ts000066400000000000000000000267051226107126500260200ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally Izmena postavki učitavanja slika Current page settings Postavke tekuće stranice Disable loading images (temporarily) Privremeno onemogući učitavanje slika Enable loading images (temporarily) Privremeno omogući učitavanje slika Global settings Opšte postavke Automatically load images Automatski učitavaj slike SBI_JavaScriptIcon Modify JavaScript settings per-site and globally Izmena postavki učitavanja javaskripti Current page settings Postavke tekuće stranice Disable JavaScript (temporarily) Privremeno onemogući javaskripte Enable JavaScript (temporarily) Privremeno omogući javaskripte Global settings Opšte postavke Manage JavaScript settings Upravljaj postavkama javaskripti SBI_NetworkIcon Proxy configuration Postavke proksija Select proxy Izaberi proksi Empty Prazno Manage proxies Upravljaj proksijima Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Prikaz stanja mreže i menadžer proksija<br/><br/><b>Mreža:</b><br/>%1<br/><br/><b>Proksi:</b><br/>%2 Connected Povezan Offline Nepovezan Unknown Nepoznato System proxy Sistemski proksi No proxy Bez proksija PAC (Proxy Auto-Config) Automatska postavka (PAC) User defined Korisnički definisan SBI_NetworkIconDialog Proxy Manager Menadžer proksija Select proxy: Izaberi proksi: Add proxy Dodaj proksi Remove proxy Ukloni proksi No proxies. You can add proxy by clicking on <b>Add</b> button. Nema proksija. Dodajte ih klikom na dugme <b>Dodaj</b>. All changes must be saved with <b>Save</b> button. Sve izmene sačuvajte klikom na <b>Sačuvaj</b>. Name of proxy: Naziv proksija: Remove current proxy Uklanjanje tekućeg proksija Are you sure to remove current proxy? Želite li zaista da uklonite ovaj proksi? SBI_ProxyWidget Form Formular Do not use proxy Ne koristi proksi Use different proxy for https connection Koristi drugi proksi za HTTPS vezu <b>Exceptions</b> <b>Izuzeci</b> Don't use on: Ne koristi na: HTTP HTTP SOCKS5 SOCKS5 Port: Port: Username: Korisničko ime: Password: Lozinka: Use script for automatic configuration: Koristi skriptu za automatsku postavu: System proxy configuration Sistemske postavke Proxy Auto-Config (.pac) file Fajl auto-postavki proksija (.pac) Manual configuration Ručne postavke Server: Server: SBI_SettingsDialog StatusBar Icons Ikone trake stanja <h3>StatusBar Icons</h3> <h3>Ikone trake stanja</h3> These icons will be displayed in statusbar: Ikone prikazane u traci stanja: Images Icon Slike JavaScript Icon Javaskripte Network Icon Mreža qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/uk_UA.ts000066400000000000000000000311441226107126500246350ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally Змініть налаштування завантаження зображень посайтово і загалом Current page settings Поточні налаштування сторінок Disable loading images (temporarily) Заборонити завантаження зображень (тимчасово) Enable loading images (temporarily) Дозволити завантаження зображень (тимчасово) Global settings Загальні налаштування Automatically load images Автоматично завантажувати зображення SBI_JavaScriptIcon Modify JavaScript settings per-site and globally Змініть налаштування JavaScript посайтово і загалом Current page settings Поточні налаштування сторінок Disable JavaScript (temporarily) Заборонити JavaScript (тимчасово) Enable JavaScript (temporarily) Дозволити JavaScript (тимчасово) Global settings Загальні налаштування Manage JavaScript settings Керувати нааштуваннями JavaScript SBI_NetworkIcon Proxy configuration Конфігурація proxy Select proxy Оберіть proxy Empty Порожньо Manage proxies Керувати proxy Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Показує стан мережі і керує proxy<br/><br/><b>Мережа:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Connected Підключено Offline Поза мережею Unknown Невідомо System proxy Системне proxy No proxy Без proxy PAC (Proxy Auto-Config) PAC (Автонлаштування proxy) User defined Користувацьке SBI_NetworkIconDialog Proxy Manager Proxy-менеджер Select proxy: Оберіть proxy: Add proxy Додати proxy Remove proxy Видалити proxy No proxies. You can add proxy by clicking on <b>Add</b> button. Нема proxy. Ви можете додати proxy натиснувши кнопку <b>Додати</b>. All changes must be saved with <b>Save</b> button. Всі зміни потрібно зберегти за допомогою кнопки <b>Зберегти</b>. Name of proxy: Назва proxy: Remove current proxy Видалити поточне proxy Are you sure to remove current proxy? Ви дійсно хочете видалити поточне proxy? SBI_ProxyWidget Form Форма Do not use proxy Не використовувати proxy Use different proxy for https connection Використовувати різні proxy для https з'єднань <b>Exceptions</b> <b>Винятки</b> Don't use on: Не використовувати на: HTTP HTTP SOCKS5 SOCKS5 Port: Порт: Username: Ім'я користувача: Password: Пароль: Use script for automatic configuration: Використати скрипт для автоматичного налаштування: System proxy configuration Налаштування системного proxy Proxy Auto-Config (.pac) file Файл автоналаштування proxy (.pac) file Manual configuration Ручне налаштування Server: Сервер: SBI_SettingsDialog StatusBar Icons Іконки панелі статусу <h3>StatusBar Icons</h3> <h3>Іконки панелі статусу</h3> These icons will be displayed in statusbar: Наступні цконки будуть відображатись на панелі статусу: Images Icon Іконка зображень JavaScript Icon Іконка JavaScript Network Icon Іконка мережі qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/uz.ts000066400000000000000000000274341226107126500242760ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally Tasvirlar yuklanish sozlamalarini har qaysi sayt uchun va global o'zgartirish Current page settings Joriy sahifa sozlamalari Disable loading images (temporarily) Tasvirlar yuklanishini o'chirish (vaqtincha) Enable loading images (temporarily) Tasvirlar yuklanishini yoqish (vaqtincha) Global settings Global sozlamalar Automatically load images Tasvirlarni avtomatik ravishda yuklash SBI_JavaScriptIcon Modify JavaScript settings per-site and globally JavaScript sozlamalarini har qaysi sayt uchun va global o'zgartirish Current page settings Joriy sahifa sozlamalari Disable JavaScript (temporarily) JavaScript o'chirish (vaqtincha) Enable JavaScript (temporarily) JavaScript yoqish (vaqtincha) Global settings Global sozlamalar Manage JavaScript settings JavaScript sozlamalarini boshqarish SBI_NetworkIcon Proxy configuration Proksi sozlash Select proxy Proksi tanlash Empty Bo'sh Manage proxies Proksi boshqarish Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 Tarmoq holatini ko'rsatadi va proksi boshqaradi<br/><br/><b>Tarmoq:</b><br/>%1<br/><br/><b>Proksi:</b><br/>%2 Connected Ulangan Offline Oflayn Unknown Noma'lum System proxy Tizim proksi No proxy Proksi yo'q PAC (Proxy Auto-Config) PAC (Proksi avto-sozlash) User defined Foydalanuvchi tomonidan aniqlangan SBI_NetworkIconDialog Proxy Manager Proksi boshqaruvchisi Select proxy: Proksi tanlash: Add proxy Proksi qo'shish Remove proxy Proksi olib tashlash No proxies. You can add proxy by clicking on <b>Add</b> button. Proksi yo'q. Siz <b>Qo'shish</b> tugmasini bosib proksi qo'shishingiz mumkin. All changes must be saved with <b>Save</b> button. Hamma o'zgartirishlardan keyin <b>Saqlash</b> tugmasini bosish shart. Name of proxy: Proksi nomi: Remove current proxy Joriy proksi olib tashlash Are you sure to remove current proxy? Siz joriy proksi olib tashlashga ishonchingiz komilmi? SBI_ProxyWidget Form Shakl Do not use proxy Proksi qo'llanilmasin Use different proxy for https connection HTTPS ulanishi uchun boshqa proksi'dan foydalanilsin <b>Exceptions</b> <b>Istisnolar</b> Don't use on: Foydalanilmasin: HTTP HTTP SOCKS5 SOCKS5 Port: Port: Username: Foydalanuvchi nomi: Password: Parol: Use script for automatic configuration: Avtomatik sozlash uchun skriptdan foydalanish: System proxy configuration Tizim proksi sozlash Proxy Auto-Config (.pac) file Proksi avto-sozlash (.pac) fayli Manual configuration Qo'l bilan sozlash Server: Server: SBI_SettingsDialog StatusBar Icons Holat satri nishonchalari <h3>StatusBar Icons</h3> <h3>Holat satri nishonchalari</h3> These icons will be displayed in statusbar: Ushbu nishonchalar holat satrida ko'rsatiladi: Images Icon Tasvirlar nishonchasi JavaScript Icon JavaScript nishonchasi Network Icon Tarmoq nishonchasi qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/zh_CN.ts000066400000000000000000000265311226107126500246360ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally 修改图像载入设置(逐站点及全局) Current page settings 当前页面设置 Disable loading images (temporarily) 禁止载入图片(临时) Enable loading images (temporarily) 允许载入图片(临时) Global settings 全局设置 Automatically load images 自动载入图片 SBI_JavaScriptIcon Modify JavaScript settings per-site and globally 修改 JavaScript 设置(逐站点及全局) Current page settings 当前页面设置 Disable JavaScript (temporarily) 禁止 JavaScript(临时) Enable JavaScript (temporarily) 允许 JavaScript(临时) Global settings 全局设置 Manage JavaScript settings 管理 JavaScript 设置 SBI_NetworkIcon Proxy configuration 代理服务器设置 Select proxy 选择代理服务器 Empty Manage proxies 管理代理的使用 Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 显示网络状态和代理服务器<br/><br/><b>网络:</b><br/>%1<br/><br/><b>代理服务器:</b><br/>%2 Connected 联机 Offline 离线 Unknown 未知 System proxy No proxy PAC (Proxy Auto-Config) User defined SBI_NetworkIconDialog Proxy Manager 代理服务器管理器 Select proxy: 选择代理服务器: Add proxy 添加代理服务器 Remove proxy 移除代理服务器 No proxies. You can add proxy by clicking on <b>Add</b> button. 没有设定代理服务器。可点击<B>添加</B>按钮来添加一个。 All changes must be saved with <b>Save</b> button. 所有修改都要在点击<B>保存</B>之后才能生效。 Name of proxy: 代理服务器名称: Remove current proxy 移除当前代理服务器 Are you sure to remove current proxy? 确定要移除所选的代理服务器吗? SBI_ProxyWidget Form Do not use proxy Use different proxy for https connection <b>Exceptions</b> Don't use on: HTTP SOCKS5 Port: Username: Password: Use script for automatic configuration: System proxy configuration Proxy Auto-Config (.pac) file Manual configuration Server: SBI_SettingsDialog StatusBar Icons 状态栏图标 <h3>StatusBar Icons</h3> <H3>状态栏图标</H3> These icons will be displayed in statusbar: 以下图标将在状态栏中显示: Images Icon 网页图片设置图标 JavaScript Icon JavaScript 设置图标 Network Icon 网络状态和代理设置图标 qupzilla-1.6.0/src/plugins/StatusBarIcons/translations/zh_TW.ts000066400000000000000000000267671226107126500247030ustar00rootroot00000000000000 SBI_ImagesIcon Modify images loading settings per-site and globally 變更每個網站及全域的讀取圖片設定 Current page settings 當前頁面設定 Disable loading images (temporarily) 不允許讀取圖片(暫時) Enable loading images (temporarily) 允許讀取圖片(暫時) Global settings 全域設定 Automatically load images 自動讀取圖片 SBI_JavaScriptIcon Modify JavaScript settings per-site and globally 變更每個網站及全域的JavaScript設定 Current page settings 當前頁面設定 Disable JavaScript (temporarily) 不允許JavaScript(暫時) Enable JavaScript (temporarily) 允許JavaScript(暫時) Global settings 全域設定 Manage JavaScript settings 管理JavaScript設定 SBI_NetworkIcon Proxy configuration 代理組態 Select proxy 選擇代理伺服器 Empty Manage proxies 管理代理伺服器 Shows network status and manages proxy<br/><br/><b>Network:</b><br/>%1<br/><br/><b>Proxy:</b><br/>%2 顯示網路狀態及管理代理伺服器<br/><br/><b>網路:</b><br/>%1<br/><br/><b>代理伺服器:</b><br/>%2 Connected 已連線 Offline 離線 Unknown 未知 System proxy 系統代理伺服器 No proxy 無代理伺服器 PAC (Proxy Auto-Config) PAC (自動設定代理伺服器) User defined 使用者自訂 SBI_NetworkIconDialog Proxy Manager 代理伺服器管理員 Select proxy: 選擇代理伺服器 Add proxy 新增代理伺服器 Remove proxy 移除代理伺服器 No proxies. You can add proxy by clicking on <b>Add</b> button. 無代理伺服器。您可以點及 <b>新增</b> 按鈕來新增代理伺服器。 All changes must be saved with <b>Save</b> button. 所以變更必須點擊 <b>儲存</b> 按鈕儲存。 Name of proxy: 代理伺服器名稱: Remove current proxy 移除當前代理伺服器 Are you sure to remove current proxy? 確定要移除當前代理伺服器嗎? SBI_ProxyWidget Form 表單 Do not use proxy 不使用代理 Use different proxy for https connection 使用不同的代理伺服器來連結 https <b>Exceptions</b> <b>例外</b> Don't use on: 不要使用: HTTP HTTP SOCKS5 SOCKS5 Port: 端口: Username: 使用者名稱: Password: 密碼: Use script for automatic configuration: 自動設定用使用者腳本: System proxy configuration 系統代理組態 Proxy Auto-Config (.pac) file 自動設定代理伺服器檔案(.pac) Manual configuration 手動組態 Server: 伺服器: SBI_SettingsDialog StatusBar Icons 狀態列圖示 <h3>StatusBar Icons</h3> <h3>狀態列圖示</h3> These icons will be displayed in statusbar: 此圖示將會顯示在狀態列: Images Icon 圖片圖示 JavaScript Icon JavaScript圖示 Network Icon 網路圖示 qupzilla-1.6.0/src/plugins/TestPlugin/000077500000000000000000000000001226107126500177275ustar00rootroot00000000000000qupzilla-1.6.0/src/plugins/TestPlugin/TestPlugin.pro000066400000000000000000000031571226107126500225550ustar00rootroot00000000000000#------------------------------------------------- # # Project created by QtCreator 2011-02-13T10:23:13 # #------------------------------------------------- TARGET = $$qtLibraryTarget(TestPlugin) # OS/2 allows only 8 chars in TARGET os2: TARGET = TestPlug SOURCES += testplugin.cpp \ testplugin_sidebar.cpp HEADERS += testplugin.h \ testplugin_sidebar.h RESOURCES += testplugin.qrc TRANSLATIONS += \ translations/ar_SA.ts \ translations/bg_BG.ts \ translations/bo_CN.ts \ translations/ca_ES.ts \ translations/cs_CZ.ts \ translations/da_DK.ts \ translations/de_DE.ts \ translations/el_GR.ts \ translations/es_AR.ts \ translations/es_ES.ts \ translations/es_VE.ts \ translations/es_419.ts \ translations/eu_ES.ts \ translations/fa_IR.ts \ translations/fr_FR.ts \ translations/gl_ES.ts \ translations/he_IL.ts \ translations/hu_HU.ts \ translations/id_ID.ts \ translations/it_IT.ts \ translations/ja_JP.ts \ translations/ka_GE.ts \ translations/my_MM.ts \ translations/nb_NO.ts \ translations/nl_NL.ts \ translations/nqo.ts \ translations/pl_PL.ts \ translations/pt_BR.ts \ translations/pt_PT.ts \ translations/ro_RO.ts \ translations/ru_RU.ts \ translations/sk_SK.ts \ translations/sr_BA@latin.ts \ translations/sr_BA.ts \ translations/sr_RS@latin.ts \ translations/sr_RS.ts \ translations/sv_SE.ts \ translations/te.ts \ translations/tr_TR.ts \ translations/uk_UA.ts \ translations/uz.ts \ translations/zh_CN.ts \ translations/zh_TW.ts \ include(../../plugins.pri) qupzilla-1.6.0/src/plugins/TestPlugin/testplugin.cpp000066400000000000000000000134771226107126500226450ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "testplugin.h" #include "testplugin_sidebar.h" #include "qupzilla.h" #include "webview.h" #include "pluginproxy.h" #include "mainapplication.h" #include "sidebar.h" #include #include #include #include TestPlugin::TestPlugin() : QObject() , m_view(0) { // Don't do anything expensive in constructor! // It will be called even if user doesn't have // plugin allowed } PluginSpec TestPlugin::pluginSpec() { PluginSpec spec; spec.name = "Example Plugin"; spec.info = "Example minimal plugin"; spec.description = "Very simple minimal plugin example"; spec.version = "0.1.6"; spec.author = "David Rosca "; spec.icon = QPixmap(":qupzilla.png"); spec.hasSettings = true; return spec; } void TestPlugin::init(InitState state, const QString &settingsPath) { qDebug() << __FUNCTION__ << "called"; // This function is called right after plugin is loaded // it will be called even if we return false from testPlugin() // so it is recommended not to call any QupZilla function here // Settings path is PROFILE/extensions/, in this directory // you can use global .ini file for QSettings named "extensions.ini" // or create new folder for your plugin and save in it anything you want m_settingsPath = settingsPath; // State can be either StartupInitState or LateInitState, and it // indicates when the plugin have been loaded. // Currently, it can be from preferences, or automatically at startup. Q_UNUSED(state) // Registering this plugin as a MousePressHandler. // Otherwise mousePress() function will never be called QZ_REGISTER_EVENT_HANDLER(PluginProxy::MousePressHandler); // Adding new sidebar into application SideBarManager::addSidebar("testplugin-sidebar", new TestPlugin_Sidebar(this)); } void TestPlugin::unload() { qDebug() << __FUNCTION__ << "called"; // This function will be called when unloading plugin // it will be also called if we return false from testPlugin() // Removing sidebar from application SideBarManager::removeSidebar("testplugin-sidebar"); // Deleting settings dialog if opened delete m_settings.data(); } bool TestPlugin::testPlugin() { //This function is called right after init() //There should be some testing if plugin is loaded correctly //If this function returns false, plugin is automatically unloaded return (QupZilla::VERSION == QLatin1String("1.6.0")); } QTranslator* TestPlugin::getTranslator(const QString &locale) { // Loads translation according to locale file // QString locale will contains "fr_FR.qm" for French locale QTranslator* translator = new QTranslator(this); translator->load(locale, ":/testplugin/locale/"); return translator; } void TestPlugin::showSettings(QWidget* parent) { // This function will be called from Preferences after clicking on Settings button. // Settings button will be enabled if PluginSpec.hasSettings == true if (!m_settings) { m_settings = new QDialog(parent); QPushButton* b = new QPushButton("Example Plugin v0.0.1"); QPushButton* closeButton = new QPushButton(tr("Close")); QLabel* label = new QLabel(); label->setPixmap(QPixmap(":icons/other/about.png")); QVBoxLayout* l = new QVBoxLayout(m_settings.data()); l->addWidget(label); l->addWidget(b); l->addWidget(closeButton); m_settings.data()->setLayout(l); m_settings.data()->setAttribute(Qt::WA_DeleteOnClose); m_settings.data()->setWindowTitle(tr("Example Plugin Settings")); m_settings.data()->setWindowIcon(QIcon(":qupzilla.png")); connect(closeButton, SIGNAL(clicked()), m_settings.data(), SLOT(close())); } m_settings.data()->show(); m_settings.data()->raise(); } void TestPlugin::populateWebViewMenu(QMenu* menu, WebView* view, const QWebHitTestResult &r) { // Called from WebView when creating context menu m_view = view; QString title; if (!r.imageUrl().isEmpty()) { title += " on image"; } if (!r.linkUrl().isEmpty()) { title += " on link"; } if (r.isContentEditable()) { title += " on input"; } menu->addAction(tr("My first plugin action") + title, this, SLOT(actionSlot())); } bool TestPlugin::mousePress(const Qz::ObjectName &type, QObject* obj, QMouseEvent* event) { qDebug() << "mousePress" << type << obj << event; // Returning false means, that we don't want to block propagating this event // Returning true may affect behaviour of QupZilla, so make sure you know what // you are doing! return false; } void TestPlugin::actionSlot() { QMessageBox::information(m_view, tr("Hello"), tr("First plugin action works :-)")); } // Export plugin macro // This macro has to be only in class derived from PluginInterface // Don't call it in other files! #if QT_VERSION < 0x050000 Q_EXPORT_PLUGIN2(ExamplePlugin, TestPlugin) #endif qupzilla-1.6.0/src/plugins/TestPlugin/testplugin.h000066400000000000000000000040361226107126500223010ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef TESTPLUGIN_H #define TESTPLUGIN_H //Include actual plugininterface.h for your version of QupZilla //This file is available to download at QupZilla website #include "plugininterface.h" //For clean plugin directory, please build necessary files into //plugin in .qrc data files #include #include #include #include #include #include class TestPlugin : public QObject, public PluginInterface { Q_OBJECT Q_INTERFACES(PluginInterface) #if QT_VERSION >= 0x050000 Q_PLUGIN_METADATA(IID "QupZilla.Browser.plugin.TestPlugin") #endif public: explicit TestPlugin(); PluginSpec pluginSpec(); void init(InitState state, const QString &settingsPath); void unload(); bool testPlugin(); QTranslator* getTranslator(const QString &locale); void showSettings(QWidget* parent = 0); void populateWebViewMenu(QMenu* menu, WebView* view, const QWebHitTestResult &r); bool mousePress(const Qz::ObjectName &type, QObject* obj, QMouseEvent* event); private slots: void actionSlot(); private: QPointer m_settings; WebView* m_view; QString m_settingsPath; }; #endif // TESTPLUGIN_H qupzilla-1.6.0/src/plugins/TestPlugin/testplugin.qrc000066400000000000000000000023121226107126500226320ustar00rootroot00000000000000 locale/ca_ES.qm locale/cs_CZ.qm locale/de_DE.qm locale/el_GR.qm locale/es_ES.qm locale/es_VE.qm locale/fa_IR.qm locale/fr_FR.qm locale/gl_ES.qm locale/he_IL.qm locale/hu_HU.qm locale/id_ID.qm locale/it_IT.qm locale/ja_JP.qm locale/ka_GE.qm locale/nl_NL.qm locale/pl_PL.qm locale/pt_BR.qm locale/pt_PT.qm locale/ro_RO.qm locale/ru_RU.qm locale/sk_SK.qm locale/sr_BA.qm locale/sr_BA@latin.qm locale/sr_RS.qm locale/sr_RS@latin.qm locale/sv_SE.qm locale/tr_TR.qm locale/uk_UA.qm locale/zh_CN.qm locale/zh_TW.qm qupzilla-1.6.0/src/plugins/TestPlugin/testplugin_sidebar.cpp000066400000000000000000000032621226107126500243250ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #include "testplugin_sidebar.h" #include #include #include #include TestPlugin_Sidebar::TestPlugin_Sidebar(QObject* parent) : SideBarInterface(parent) { } QString TestPlugin_Sidebar::title() const { return tr("Testing Sidebar"); } QAction* TestPlugin_Sidebar::createMenuAction() { QAction* act = new QAction(tr("Testing Sidebar"), 0); act->setCheckable(true); return act; } QWidget* TestPlugin_Sidebar::createSideBarWidget(QupZilla* mainWindow) { Q_UNUSED(mainWindow) QWidget* w = new QWidget; QPushButton* b = new QPushButton("Example Plugin v0.0.1"); QLabel* label = new QLabel(); label->setPixmap(QPixmap(":icons/other/about.png")); QVBoxLayout* l = new QVBoxLayout(w); l->addWidget(label); l->addWidget(b); w->setLayout(l); return w; } qupzilla-1.6.0/src/plugins/TestPlugin/testplugin_sidebar.h000066400000000000000000000023151226107126500237700ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2010-2012 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef TESTPLUGIN_SIDEBAR_H #define TESTPLUGIN_SIDEBAR_H #include "sidebarinterface.h" class TestPlugin_Sidebar : public SideBarInterface { Q_OBJECT public: explicit TestPlugin_Sidebar(QObject* parent = 0); QString title() const; QAction* createMenuAction(); QWidget* createSideBarWidget(QupZilla* mainWindow); }; #endif // TESTPLUGIN_SIDEBAR_H qupzilla-1.6.0/src/plugins/TestPlugin/translations/000077500000000000000000000000001226107126500224505ustar00rootroot00000000000000qupzilla-1.6.0/src/plugins/TestPlugin/translations/ar_SA.ts000066400000000000000000000026321226107126500240100ustar00rootroot00000000000000 TestPlugin Close أغلق Example Plugin Settings إعدادات الإضافة العيّنة My first plugin action حدث إضافتي الأول Hello مرحباً First plugin action works :-) حدث الإضافة الأول يعمل TestPlugin_Sidebar Testing Sidebar يجرّب الشريط الجانبي qupzilla-1.6.0/src/plugins/TestPlugin/translations/bg_BG.ts000066400000000000000000000030001226107126500237510ustar00rootroot00000000000000 TestPlugin Close Затваряне Example Plugin Settings Примерни настройки на приставката My first plugin action Моята първа приставка в действие Hello Здравей! First plugin action works :-) Моята първа приставка, изглежда работи :-) TestPlugin_Sidebar Testing Sidebar Тестова странична лента qupzilla-1.6.0/src/plugins/TestPlugin/translations/bo_CN.ts000066400000000000000000000024131226107126500240000ustar00rootroot00000000000000 TestPlugin Close Example Plugin Settings My first plugin action Hello First plugin action works :-) TestPlugin_Sidebar Testing Sidebar qupzilla-1.6.0/src/plugins/TestPlugin/translations/ca_ES.ts000066400000000000000000000026101226107126500237710ustar00rootroot00000000000000 TestPlugin Close Tanca Example Plugin Settings Preferències del plugin d'exemple My first plugin action La meva primera acció del plugin Hello Hola First plugin action works :-) La primera acció del plugin funciona correctament TestPlugin_Sidebar Testing Sidebar Provant la barra lateral qupzilla-1.6.0/src/plugins/TestPlugin/translations/cs_CZ.ts000066400000000000000000000025441226107126500240260ustar00rootroot00000000000000 TestPlugin Close Zavřít Example Plugin Settings Nastavení ukázkového doplňku My first plugin action Moje první akce z doplňku Hello Ahoj First plugin action works :-) První akce funguje :-) TestPlugin_Sidebar Testing Sidebar Testovací postranní bar qupzilla-1.6.0/src/plugins/TestPlugin/translations/da_DK.ts000066400000000000000000000024131226107126500237620ustar00rootroot00000000000000 TestPlugin Close Example Plugin Settings My first plugin action Hello First plugin action works :-) TestPlugin_Sidebar Testing Sidebar qupzilla-1.6.0/src/plugins/TestPlugin/translations/de_DE.ts000066400000000000000000000025451226107126500237660ustar00rootroot00000000000000 TestPlugin Close Schließen Example Plugin Settings Einstellungen des Beispiel-Plugins My first plugin action Meine erste Aktion Hello Hallo First plugin action works :-) Meine erste Aktion funktioniert :-) TestPlugin_Sidebar Testing Sidebar Sidebar TestPlugin qupzilla-1.6.0/src/plugins/TestPlugin/translations/el_GR.ts000066400000000000000000000030031226107126500240040ustar00rootroot00000000000000 TestPlugin Close Κλείσιμο Example Plugin Settings Ρυθμίσεις παραδειγματικού προσθέτου My first plugin action Η ενέργεια του πρώτου μου προσθέτου Hello Γεια First plugin action works :-) Η ενέργεια του πρώτου προσθέτου δουλεύει :-) TestPlugin_Sidebar Testing Sidebar Πλευρική μπάρα δοκιμής qupzilla-1.6.0/src/plugins/TestPlugin/translations/empty.ts000066400000000000000000000025331226107126500241610ustar00rootroot00000000000000 TestPlugin Close Example Plugin Settings My first plugin action Hello First plugin action works :-) TestPlugin_Sidebar Testing Sidebar qupzilla-1.6.0/src/plugins/TestPlugin/translations/es_419.ts000066400000000000000000000024141226107126500240250ustar00rootroot00000000000000 TestPlugin Close Example Plugin Settings My first plugin action Hello First plugin action works :-) TestPlugin_Sidebar Testing Sidebar qupzilla-1.6.0/src/plugins/TestPlugin/translations/es_AR.ts000066400000000000000000000024131226107126500240110ustar00rootroot00000000000000 TestPlugin Close Example Plugin Settings My first plugin action Hello First plugin action works :-) TestPlugin_Sidebar Testing Sidebar qupzilla-1.6.0/src/plugins/TestPlugin/translations/es_ES.ts000066400000000000000000000025661226107126500240270ustar00rootroot00000000000000 TestPlugin Close Cerrar Example Plugin Settings Preferencias del plugin de ejemplo My first plugin action Mi primera acción del plugin Hello Hola First plugin action works :-) La primera acción del plugin funciona :-) TestPlugin_Sidebar Testing Sidebar Probando barra lateral qupzilla-1.6.0/src/plugins/TestPlugin/translations/es_VE.ts000066400000000000000000000024131226107126500240210ustar00rootroot00000000000000 TestPlugin Close Example Plugin Settings My first plugin action Hello First plugin action works :-) TestPlugin_Sidebar Testing Sidebar qupzilla-1.6.0/src/plugins/TestPlugin/translations/eu_ES.ts000066400000000000000000000025311226107126500240210ustar00rootroot00000000000000 TestPlugin Close Itxi Example Plugin Settings Plugin Ezarpen Adibidea My first plugin action Nire lehen plugin ekintza Hello Kaixo First plugin action works :-) Lehen plugin ekintza badabil :-) TestPlugin_Sidebar Testing Sidebar Albobarra Aztertzen qupzilla-1.6.0/src/plugins/TestPlugin/translations/fa_IR.ts000066400000000000000000000026561226107126500240110ustar00rootroot00000000000000 TestPlugin Close بستن Example Plugin Settings سامانش افزونه مثال My first plugin action اولین عملکرد افزونه من Hello درود First plugin action works :-) اولین عملکرد افزونه کار می‌کند :-) TestPlugin_Sidebar Testing Sidebar بررسی کننده نوار کناری qupzilla-1.6.0/src/plugins/TestPlugin/translations/fr_FR.ts000066400000000000000000000025721226107126500240240ustar00rootroot00000000000000 TestPlugin Close Fermer Example Plugin Settings Exemple de configuration d'un plugin My first plugin action Test de mon premier plugin Hello Salut First plugin action works :-) Mon test fonctionne :-) TestPlugin_Sidebar Testing Sidebar Test de la barre de navigation latérale qupzilla-1.6.0/src/plugins/TestPlugin/translations/gl_ES.ts000066400000000000000000000026171226107126500240170ustar00rootroot00000000000000 TestPlugin Close Pechar Example Plugin Settings Configuracións do engadido de exemplo My first plugin action A miña primeira acción de engadidos Hello Ola First plugin action works :-) A miña primeira acción de engadidos funciona :-) TestPlugin_Sidebar Testing Sidebar Comprobando a barra lateral qupzilla-1.6.0/src/plugins/TestPlugin/translations/he_IL.ts000066400000000000000000000026231226107126500240030ustar00rootroot00000000000000 TestPlugin Close סגור Example Plugin Settings דוגמת תוספת הגדרות My first plugin action פעולת התוספת הראשונה שלי Hello שלום First plugin action works :-) פעולת תוספת ראשונה עובדת :-) TestPlugin_Sidebar Testing Sidebar סרגל צד מבחן qupzilla-1.6.0/src/plugins/TestPlugin/translations/hu_HU.ts000066400000000000000000000024131226107126500240300ustar00rootroot00000000000000 TestPlugin Close Example Plugin Settings My first plugin action Hello First plugin action works :-) TestPlugin_Sidebar Testing Sidebar qupzilla-1.6.0/src/plugins/TestPlugin/translations/id_ID.ts000066400000000000000000000025361226107126500237760ustar00rootroot00000000000000 TestPlugin Close Tutup Example Plugin Settings Pengaturan Contoh Pengaya My first plugin action Aksi pengaya pertama saya Hello Halo First plugin action works :-) Aksi pengaya pertama saya bekerja :-) TestPlugin_Sidebar Testing Sidebar Tes Panel Samping qupzilla-1.6.0/src/plugins/TestPlugin/translations/it_IT.ts000066400000000000000000000025431226107126500240340ustar00rootroot00000000000000 TestPlugin Close Chiudi Example Plugin Settings Impostazioni del plugin di esempio My first plugin action La mia prima azione Hello Ciao First plugin action works :-) La mia prima azione funziona :-) TestPlugin_Sidebar Testing Sidebar Barra laterale di test qupzilla-1.6.0/src/plugins/TestPlugin/translations/ja_JP.ts000066400000000000000000000025341226107126500240070ustar00rootroot00000000000000 TestPlugin Close 閉じる Example Plugin Settings 拡張の設定例 My first plugin action 拡張の動作確認 Hello Hello First plugin action works :-) 拡張の動作は正常です :-) TestPlugin_Sidebar Testing Sidebar サイドバーを試す qupzilla-1.6.0/src/plugins/TestPlugin/translations/ka_GE.ts000066400000000000000000000030551226107126500237710ustar00rootroot00000000000000 TestPlugin Close დახურვა Example Plugin Settings სამაგალითო მოდულის პარამეტრები My first plugin action ჩემი მოდულის პირველი მოქმედება Hello გამარჯობა First plugin action works :-) მოდულის პირველი მოქმედება მუშაობს :-) TestPlugin_Sidebar Testing Sidebar qupzilla-1.6.0/src/plugins/TestPlugin/translations/my_MM.ts000066400000000000000000000024131226107126500240360ustar00rootroot00000000000000 TestPlugin Close Example Plugin Settings My first plugin action Hello First plugin action works :-) TestPlugin_Sidebar Testing Sidebar qupzilla-1.6.0/src/plugins/TestPlugin/translations/nb_NO.ts000066400000000000000000000025441226107126500240200ustar00rootroot00000000000000 TestPlugin Close Lukk Example Plugin Settings Eksempel på Innstillinger av Plugin My first plugin action Min første plugin handling Hello Hei First plugin action works :-) Første plugin handling fungerer :-) TestPlugin_Sidebar Testing Sidebar Test Sidefane qupzilla-1.6.0/src/plugins/TestPlugin/translations/nl_NL.ts000066400000000000000000000025341226107126500240260ustar00rootroot00000000000000 TestPlugin Close Sluit Example Plugin Settings Voorbeeldplugin-instellingen My first plugin action Mijn eerste plugin-actie Hello Hallo First plugin action works :-) Eerste plugin-actie werkt :-) TestPlugin_Sidebar Testing Sidebar Testen van zijpaneel qupzilla-1.6.0/src/plugins/TestPlugin/translations/nqo.ts000066400000000000000000000027461226107126500236260ustar00rootroot00000000000000 TestPlugin Close ߊ߬ ߕߎ߲߯ Example Plugin Settings ߛߐߙߐ߲ߕߊ ߞߐߕߐ߯ߘߐߛߙߋ ߟߎ߫ ߡߌ߬ߛߊ߬ߟߌ My first plugin action ߒ ߠߊ߫ ߛߐߙߐ߲ߕߊ ߟߊ߫ ߞߍߟߌ ߝߟߐ Hello ߌ ߣߌ߫ ߕߎ߬ߡߊ߬ First plugin action works :-) ߛߐߙߐ߲ߕߊ ߟߊ߫ ߞߍߟߌ ߝߟߐ߫ ߦߋ߫ ߓߊ߯ߙߊ߫ ߟߊ߫ :-) TestPlugin_Sidebar Testing Sidebar ߞߙߍ߬ߝߍ߬ ߡߙߎߝߋ ߞߘߐߓߐߟߌ qupzilla-1.6.0/src/plugins/TestPlugin/translations/pl_PL.ts000066400000000000000000000025451226107126500240340ustar00rootroot00000000000000 TestPlugin Close Zamknij Example Plugin Settings Ustawienia przykładowej wtyczki My first plugin action Pierwsza akcja wtyczki Hello Witaj First plugin action works :-) Pierwsza akcja wtyczki działa :-) TestPlugin_Sidebar Testing Sidebar Testowy pasek boczny qupzilla-1.6.0/src/plugins/TestPlugin/translations/pt_BR.ts000066400000000000000000000025631226107126500240340ustar00rootroot00000000000000 TestPlugin Close Fechar Example Plugin Settings Configurações do plugin Exemplo My first plugin action Minha primeira ação do plugin Hello Oi First plugin action works :-) A primeira ação do plugin funciona :-) TestPlugin_Sidebar Testing Sidebar Testando barra lateral qupzilla-1.6.0/src/plugins/TestPlugin/translations/pt_PT.ts000066400000000000000000000024131226107126500240460ustar00rootroot00000000000000 TestPlugin Close Example Plugin Settings My first plugin action Hello First plugin action works :-) TestPlugin_Sidebar Testing Sidebar qupzilla-1.6.0/src/plugins/TestPlugin/translations/ro_RO.ts000066400000000000000000000025531226107126500240450ustar00rootroot00000000000000 TestPlugin Close Închide Example Plugin Settings Setările plugin-ului exemplu My first plugin action Prima mea acțiune a plugin-ului Hello Salut First plugin action works :-) Prima acțiune a plugin-ului funcționează :-) TestPlugin_Sidebar Testing Sidebar qupzilla-1.6.0/src/plugins/TestPlugin/translations/ru_RU.ts000066400000000000000000000027311226107126500240570ustar00rootroot00000000000000 TestPlugin Close Закрыть Example Plugin Settings Пример настроек расширения My first plugin action Моё первое расширение Hello Привет First plugin action works :-) Первое расширение, которое работает:) TestPlugin_Sidebar Testing Sidebar Тестирование боковой панели qupzilla-1.6.0/src/plugins/TestPlugin/translations/sk_SK.ts000066400000000000000000000025451226107126500240400ustar00rootroot00000000000000 TestPlugin Close Zavrieť Example Plugin Settings Nastavenie ukážkového doplnku My first plugin action Moje první akce z doplnku Hello Ahoj First plugin action works :-) První doplnek funguje :-) TestPlugin_Sidebar Testing Sidebar Testovací bočný panel qupzilla-1.6.0/src/plugins/TestPlugin/translations/sr_BA.ts000066400000000000000000000026701226107126500240130ustar00rootroot00000000000000 TestPlugin Close Затвори Example Plugin Settings Подешавања пробног прикључка My first plugin action Радња мог првог прикључка Hello Здраво First plugin action works :-) Радња прикључка ради :-) TestPlugin_Sidebar Testing Sidebar Пробна бочна трака qupzilla-1.6.0/src/plugins/TestPlugin/translations/sr_BA@latin.ts000066400000000000000000000025521226107126500251420ustar00rootroot00000000000000 TestPlugin Close Zatvori Example Plugin Settings Podešavanja probnog priključka My first plugin action Radnja mog prvog priključka Hello Zdravo First plugin action works :-) Radnja priključka radi :-) TestPlugin_Sidebar Testing Sidebar Probna bočna traka qupzilla-1.6.0/src/plugins/TestPlugin/translations/sr_RS.ts000066400000000000000000000026701226107126500240550ustar00rootroot00000000000000 TestPlugin Close Затвори Example Plugin Settings Подешавања пробног прикључка My first plugin action Радња мог првог прикључка Hello Здраво First plugin action works :-) Радња прикључка ради :-) TestPlugin_Sidebar Testing Sidebar Пробна бочна трака qupzilla-1.6.0/src/plugins/TestPlugin/translations/sr_RS@latin.ts000066400000000000000000000025521226107126500252040ustar00rootroot00000000000000 TestPlugin Close Zatvori Example Plugin Settings Podešavanja probnog priključka My first plugin action Radnja mog prvog priključka Hello Zdravo First plugin action works :-) Radnja priključka radi :-) TestPlugin_Sidebar Testing Sidebar Probna bočna traka qupzilla-1.6.0/src/plugins/TestPlugin/translations/sv_SE.ts000066400000000000000000000025401226107126500240400ustar00rootroot00000000000000 TestPlugin Close Stäng Example Plugin Settings Inställningar för exempelplugin My first plugin action Min första pluginfunktion Hello Hallå First plugin action works :-) Min första pluginfunktion fungerar :-) TestPlugin_Sidebar Testing Sidebar qupzilla-1.6.0/src/plugins/TestPlugin/translations/te.ts000066400000000000000000000030721226107126500234320ustar00rootroot00000000000000 TestPlugin Close మూసివేయి Example Plugin Settings ఉదాహరణ ప్లగిన్ సెటింగ్స్ My first plugin action నా మొదటి ప్లగిన్ పని Hello నమస్తే First plugin action works :-) నా మొదటి ప్లగిన్ పని పనిచేస్తుంది :-) TestPlugin_Sidebar Testing Sidebar సైడ్ బార్ను పరీక్షిస్తున్నా qupzilla-1.6.0/src/plugins/TestPlugin/translations/tr_TR.ts000066400000000000000000000025451226107126500240600ustar00rootroot00000000000000 TestPlugin Close Kapat Example Plugin Settings Örnek Eklenti Ayarları My first plugin action İlk ekleti eylemim Hello Merhaba First plugin action works :-) İlk eklenti eylemim çalışıyor :-) TestPlugin_Sidebar Testing Sidebar Kenarçubuğu test ediliyor qupzilla-1.6.0/src/plugins/TestPlugin/translations/uk_UA.ts000066400000000000000000000027311226107126500240270ustar00rootroot00000000000000 TestPlugin Close Закрити Example Plugin Settings Приклад налаштуваннь Plugin'у My first plugin action Дія мого першого plugin'у Hello Привіт First plugin action works :-) Дія першого plugin'у відбувається :-) TestPlugin_Sidebar Testing Sidebar Тестується бокова панель qupzilla-1.6.0/src/plugins/TestPlugin/translations/uz.ts000066400000000000000000000025351226107126500234630ustar00rootroot00000000000000 TestPlugin Close Yopish Example Plugin Settings Misol plagin sozlamalari My first plugin action Birinchi plaginim harakati Hello Salom First plugin action works :-) Birinchi plagin harakati ishlaydi :-) TestPlugin_Sidebar Testing Sidebar Sinash yon paneli qupzilla-1.6.0/src/plugins/TestPlugin/translations/zh_CN.ts000066400000000000000000000025571226107126500240320ustar00rootroot00000000000000 TestPlugin Close 关闭 Example Plugin Settings 示范应用扩展设置 My first plugin action 我的第一个应用扩展动作 Hello 你好 First plugin action works :-) 我第一个应用扩展动作,工作了! :-) TestPlugin_Sidebar Testing Sidebar 测试侧栏 qupzilla-1.6.0/src/plugins/TestPlugin/translations/zh_TW.ts000066400000000000000000000025341226107126500240570ustar00rootroot00000000000000 TestPlugin Close 關閉 Example Plugin Settings 範例外掛設定 My first plugin action 我的第一個動作外掛 Hello 哈囉 First plugin action works :-) 我的第一個動作外掛運作了:-) TestPlugin_Sidebar Testing Sidebar 測試側邊攔 qupzilla-1.6.0/src/plugins/plugins.pro000066400000000000000000000021451226107126500200360ustar00rootroot00000000000000TEMPLATE = subdirs defineTest(addSubdir) { for(subdir, 1) { entries = $$files($$subdir/*) for(entry, entries) { fullPath = $$replace(entry, ;,"") fullPath = $$replace(fullPath, \\\\, /) name = $$replace(fullPath, $$re_escape("$$subdir/"), "") win32: fullPath = $$lower($$fullPath) exists($$fullPath/*.pro): SUBDIRS += $$fullPath } } export (SUBDIRS) } addSubdir($$PWD) outOfDirPlugins = $$(QUPZILLA_PLUGINS_SRCDIR) !equals(outOfDirPlugins, "") : addSubdir($$(QUPZILLA_PLUGINS_SRCDIR)) # TestPlugin only in debug build !CONFIG(debug, debug|release): SUBDIRS -= $$PWD/TestPlugin # KWalletPasswords only with KDE_INTEGRATION !contains(DEFINES, "KDE_INTEGRATION"): SUBDIRS -= $$PWD/KWalletPasswords # GnomeKeyringPasswords only with GNOME_INTEGRATION !contains(DEFINES, "GNOME_INTEGRATION"): SUBDIRS -= $$PWD/GnomeKeyringPasswords !system(pkg-config --exists gnome-keyring-1): SUBDIRS -= $$PWD/GnomeKeyringPasswords win32 { SUBDIRS -= $$lower($$PWD/KWalletPasswords) SUBDIRS -= $$lower($$PWD/GnomeKeyringPasswords) } qupzilla-1.6.0/tests/000077500000000000000000000000001226107126500145235ustar00rootroot00000000000000qupzilla-1.6.0/tests/adblock.html000066400000000000000000000022541226107126500170130ustar00rootroot00000000000000 AdBlock Tests &A

    AdBlock Tests

    Popup Blocking

    Open Popup window (will be blocked)

    Element hiding

    Blocking element with ##div.test-qz-ad rule.
    If you see this text, the rule does not works!

    Subdocument rules

    Blocking iframe with ||linux.org.ru^$subdocument rule.

    XMLHttpRequest rules

    Blocking ajax with adblock.html$xmlhttprequest rule.
    Blocked
    qupzilla-1.6.0/tests/autotests/000077500000000000000000000000001226107126500165565ustar00rootroot00000000000000qupzilla-1.6.0/tests/autotests/adblocktest.cpp000066400000000000000000000107571226107126500215730ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "adblocktest.h" #include "adblockrule.h" #include class AdBlockRule_Test : public AdBlockRule { public: QStringList parseRegExpFilter(const QString &parsedFilter) { return AdBlockRule::parseRegExpFilter(parsedFilter); } bool isMatchingDomain(const QString &domain, const QString &filter) const { return AdBlockRule::isMatchingDomain(domain, filter); } }; void AdBlockTest::isMatchingCookieTest_data() { // Test copied from CookiesTest QTest::addColumn("filterDomain"); QTest::addColumn("siteDomain"); QTest::addColumn("result"); QTest::newRow("test1") << "example.com" << "www.example.com" << true; QTest::newRow("test2") << "example.com" << "example.com" << true; QTest::newRow("test3") << "example.com" << "anotherexample.com" << false; QTest::newRow("test4") << "test.example.com" << "example.com" << false; QTest::newRow("test5") << "www.example.com" << "example.com" << false; QTest::newRow("test_empty") << "www.example.com" << "" << false; QTest::newRow("test_empty2") << "" << "example.com" << false; } void AdBlockTest::isMatchingCookieTest() { AdBlockRule_Test rule_test; QFETCH(QString, filterDomain); QFETCH(QString, siteDomain); QFETCH(bool, result); QCOMPARE(rule_test.isMatchingDomain(siteDomain, filterDomain), result); } void AdBlockTest::parseRegExpFilterTest_data() { QTest::addColumn("parsedFilter"); QTest::addColumn("result"); QTest::newRow("test1") << "||doubleclick.net/pfadx/tmg.telegraph." << (QStringList() << "doubleclick.net/pfadx/tmg.telegraph."); QTest::newRow("test2") << "||doubleclick.net/pfadx/*.mtvi" << (QStringList() << "doubleclick.net/pfadx/" << ".mtvi"); QTest::newRow("test3") << "&prvtof=*&poru=" << (QStringList() << "&prvtof=" << "&poru="); QTest::newRow("test4") << "/addyn|*;adtech;" << (QStringList() << "/addyn" << ";adtech;"); QTest::newRow("test5") << "/eas_fif.html^" << (QStringList() << "/eas_fif.html"); QTest::newRow("test6") << "://findnsave.^.*/api/groupon.json?" << (QStringList() << "://findnsave." << "/api/groupon.json?"); QTest::newRow("test7") << "^fp=*&prvtof=" << (QStringList() << "fp=" << "&prvtof="); QTest::newRow("test8") << "|http://ax-d.*/jstag^" << (QStringList() << "http://ax-d." << "/jstag"); QTest::newRow("test9") << "||reuters.com^*/rcom-wt-mlt.js" << (QStringList() << "reuters.com" <<"/rcom-wt-mlt.js"); QTest::newRow("test10") << "||chip.de^*/tracking.js" << (QStringList() << "chip.de" << "/tracking.js"); QTest::newRow("ignore1char") << "/search.php?uid=*.*&src=" << (QStringList() << "/search.php?uid=" << "&src="); QTest::newRow("ignoreDuplicates") << "/search.*.dup.*.dup.*&src=" << (QStringList() << "/search." << ".dup." << "&src="); QTest::newRow("empty") << QString() << (QStringList()); QTest::newRow("justspaces") << QString(" ") << (QStringList() << " "); QTest::newRow("spacesWithMetachars") << QString(" * ?") << (QStringList() << " " << " ?"); } void AdBlockTest::parseRegExpFilterTest() { AdBlockRule_Test rule_test; QFETCH(QString, parsedFilter); QFETCH(QStringList, result); QCOMPARE(rule_test.parseRegExpFilter(parsedFilter), result); } qupzilla-1.6.0/tests/autotests/adblocktest.h000066400000000000000000000022061226107126500212260ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef ADBLOCKTEST_H #define ADBLOCKTEST_H #include class AdBlockTest : public QObject { Q_OBJECT private slots: void isMatchingCookieTest_data(); void isMatchingCookieTest(); void parseRegExpFilterTest_data(); void parseRegExpFilterTest(); }; #endif // ADBLOCKTEST_H qupzilla-1.6.0/tests/autotests/autotests.pro000066400000000000000000000043671226107126500213450ustar00rootroot00000000000000isEqual(QT_MAJOR_VERSION, 5) { QT += webkitwidgets network widgets printsupport sql script gui-private testlib } else { QT += core gui webkit sql network script CONFIG += qtestlib } TARGET = autotests !unix|mac: LIBS += -L$$PWD/../../bin -lQupZilla !mac:unix: LIBS += $$PWD/../../bin/libQupZilla.so # Link plugins for PasswordBackends !win32 { !unix|mac: LIBS += -L$$PWD/../../bin/plugins -lGnomeKeyringPasswords -lKWalletPasswords !mac:unix: LIBS += $$PWD/../../bin/plugins/libGnomeKeyringPasswords.so \ $$PWD/../../bin/plugins/libKWalletPasswords.so } unix:contains(DEFINES, "NO_SYSTEM_DATAPATH"): QMAKE_LFLAGS+=$${QMAKE_LFLAGS_RPATH}\\$\$ORIGIN include($$PWD/../../src/defines.pri) DESTDIR = $$PWD/../../bin OBJECTS_DIR = build MOC_DIR = build RCC_DIR = build UI_DIR = build INCLUDEPATH += $$PWD/../../src/lib/3rdparty\ $$PWD/../../src/lib/app\ $$PWD/../../src/lib/autofill\ $$PWD/../../src/lib/bookmarks\ $$PWD/../../src/lib/cookies\ $$PWD/../../src/lib/session\ $$PWD/../../src/lib/downloads\ $$PWD/../../src/lib/history\ $$PWD/../../src/lib/navigation\ $$PWD/../../src/lib/network\ $$PWD/../../src/lib/other\ $$PWD/../../src/lib/preferences\ $$PWD/../../src/lib/rss\ $$PWD/../../src/lib/tools\ $$PWD/../../src/lib/utils\ $$PWD/../../src/lib/webview\ $$PWD/../../src/lib/plugins\ $$PWD/../../src/lib/sidebar\ $$PWD/../../src/lib/data\ $$PWD/../../src/lib/adblock\ $$PWD/../../src/lib/desktopnotifications\ $$PWD/../../src/lib/opensearch\ $$PWD/../../src/lib/bookmarksimport\ $$PWD/../../src/lib/popupwindow\ HEADERS += \ qztoolstest.h \ formcompletertest.h \ cookiestest.h \ downloadstest.h \ adblocktest.h \ updatertest.h \ pactest.h \ passwordbackendtest.h SOURCES += \ qztoolstest.cpp \ main.cpp \ formcompletertest.cpp \ cookiestest.cpp \ downloadstest.cpp \ adblocktest.cpp \ updatertest.cpp \ pactest.cpp \ passwordbackendtest.cpp qupzilla-1.6.0/tests/autotests/cookiestest.cpp000066400000000000000000000071071226107126500216230ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "cookiestest.h" #include "cookiejar.h" #include void CookiesTest::domainMatchingTest_data() { QTest::addColumn("cookieDomain"); QTest::addColumn("siteDomain"); QTest::addColumn("result"); /* http://stackoverflow.com/questions/1062963/how-do-browser-cookie-domains-work 1) Cookie with Domain=.example.com will be available for www.example.com 2) Cookie with Domain=.example.com will be available for example.com 3) Cookie with Domain=example.com will be converted to .example.com and thus will also be available for www.example.com 4) Cookie with Domain=example.com will not be available for anotherexample.com */ QTest::newRow("test1") << ".example.com" << "www.example.com" << true; QTest::newRow("test2") << ".example.com" << "example.com" << true; QTest::newRow("test3") << "example.com" << "www.example.com" << true; QTest::newRow("test4") << ".example.com" << "anotherexample.com" << false; QTest::newRow("test5") << "test.example.com" << "example.com" << false; QTest::newRow("test6") << ".www.example.com" << "www.example.com" << true; QTest::newRow("test7") << ".www.example.com" << "example.com" << false; QTest::newRow("test_empty") << ".www.example.com" << "" << false; QTest::newRow("test_empty2") << "" << "example.com" << false; } void CookiesTest::domainMatchingTest() { QFETCH(QString, cookieDomain); QFETCH(QString, siteDomain); QFETCH(bool, result); QCOMPARE(CookieJar::matchDomain(cookieDomain, siteDomain), result); } void CookiesTest::listMatchesDomainTest_data() { QTest::addColumn("list"); QTest::addColumn("cookieDomain"); QTest::addColumn("result"); QStringList list; list << "www.example.com" << "accounts.google.com"; QStringList list2; list2 << "anotherexample.com" << "a.b.x.google.com"; QTest::newRow("test1") << list << ".www.example.com" << true; QTest::newRow("test2") << list << ".google.com" << false; QTest::newRow("test3") << list << ".accounts.google.com" << true; QTest::newRow("test4") << list << ".example.com" << false; QTest::newRow("test5") << list2 << "example.com" << false; QTest::newRow("test6") << list2 << "tst.anotherexample.com" << true; QTest::newRow("test7") << list2 << "b.x.google.com" << false; QTest::newRow("test8") << list2 << "c.a.b.x.google.com" << true; QTest::newRow("test9") << list2 << ".a.b.x.google.com" << true; QTest::newRow("test_empty") << list2 << "" << false; } void CookiesTest::listMatchesDomainTest() { QFETCH(QStringList, list); QFETCH(QString, cookieDomain); QFETCH(bool, result); QCOMPARE(CookieJar::listMatchesDomain(list, cookieDomain), result); } qupzilla-1.6.0/tests/autotests/cookiestest.h000066400000000000000000000022021226107126500212570ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef COOKIESTEST_H #define COOKIESTEST_H #include class CookiesTest : public QObject { Q_OBJECT private slots: void domainMatchingTest_data(); void domainMatchingTest(); void listMatchesDomainTest_data(); void listMatchesDomainTest(); }; #endif // COOKIESTEST_H qupzilla-1.6.0/tests/autotests/downloadstest.cpp000066400000000000000000000113211226107126500221520ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "downloadstest.h" #include "downloadfilehelper.h" #include #include void DownloadsTest::parseContentDispositionTest_data() { QTest::addColumn("header"); QTest::addColumn("result"); QTest::newRow("filename") << QByteArray("attachment; filename=\"foo.html\"") << "foo.html"; QTest::newRow("filename25") << QByteArray("attachment; filename=\"0000000000111111111122222\"") << "0000000000111111111122222"; QTest::newRow("filename35") << QByteArray("attachment; filename=\"00000000001111111111222222222233333\"") << "00000000001111111111222222222233333"; QTest::newRow("semicolon") << QByteArray("attachment; filename=\"Here's a semicolon;.html\"") << "Here's a semicolon;.html"; QTest::newRow("semicolon2") << QByteArray("attachment; filename=\"Here's a semi\\\"colon;.html\"") << "Here's a semi\\\"colon;.html"; QTest::newRow("semicolon3") << QByteArray("attachment; filename=\"Here's a\\\" semi\\\"colon;.html\"") << "Here's a\\\" semi\\\"colon;.html"; QTest::newRow("invalidParameter") << QByteArray("attachment; foo=\"bar\"; filename=\"foo.html\"") << "foo.html"; QTest::newRow("filenameUpper") << QByteArray("attachment; FILENAME=\"foo.html\"") << "foo.html"; QTest::newRow("noQuotes") << QByteArray("attachment; filename=foo.html") << "foo.html"; QTest::newRow("singleQuotesFileame") << QByteArray("attachment; filename='foo.bar'") << "'foo.bar'"; QTest::newRow("filenamePlain") << QByteArray("attachment; filename=\"foo-ä.html\"") << QString::fromUtf8("foo-ä.html"); QTest::newRow("percent") << QByteArray("attachment; filename=\"foo-%41.html\"") << "foo-%41.html"; QTest::newRow("percent2") << QByteArray("attachment; filename=\"foo-%c3%a4-%e2%82%ac.html\"") << "foo-%c3%a4-%e2%82%ac.html"; QTest::newRow("withSpace") << QByteArray("attachment; filename =\"foo.html\"") << "foo.html"; QTest::newRow("filenameInside") << QByteArray("attachment; example=\"filename=example.txt\"") << ""; QTest::newRow("xfilename") << QByteArray("attachment; xfilename=\"example.txt\"") << ""; QTest::newRow("withSpaceBefore") << QByteArray("attachment; filename *=UTF-8''foo-%c3%a4.html") << ""; QTest::newRow("withSpaceAfter") << QByteArray("attachment; filename*= UTF-8''foo-%c3%a4.html") << QString::fromUtf8("foo-ä.html"); QTest::newRow("withSpaceInside") << QByteArray("attachment; filename* =UTF-8''foo-%c3%a4.html") << QString::fromUtf8("foo-ä.html"); QTest::newRow("withDoubleQuotes") << QByteArray("attachment; filename*=\"UTF-8''foo-%c3%a4.html\"") << ""; QTest::newRow("multiTypes") << QByteArray("attachment; filename*=UTF-8''foo-%c3%a4.html; filename=\"foo-ae.html\"") << QString::fromUtf8("foo-ä.html"); // Ignored, but passing in browser // QTest::newRow("filenameUtf8") << QByteArray("attachment; filename=\"foo-ä.html\"") << QString::fromUtf8("foo-ä.html"); // QTest::newRow("*utf8") << QByteArray("attachment; filename*=UTF-8''foo-%c3%a4-%e2%82%ac.html") << QString::fromUtf8("foo-ä-€.html"); // QTest::newRow("rfc2231") << QByteArray("attachment; filename*=UTF-8''foo-a%cc%88.html") << QString::fromUtf8("foo-ä.html"); // ISO-8859-1 decoding not supported // QTest::newRow("*iso") << QByteArray("attachment; filename*=iso-8859-1''foo-%E4.html") << QString::fromUtf8("foo-ä.html"); // QTest::newRow("multiTypes2") << QByteArray("attachment; filename*=ISO-8859-1''currency-sign%3d%a4; filename=\"foo-ae.html\"") << QString::fromUtf8("currency-sign=¤"); // Not yet supported // QTest::newRow("multiType2") << QByteArray("attachment; filename*0*=ISO-8859-15''euro-sign%3d%a4; filename*=ISO-8859-1''currency-sign%3d%a4") << QString::fromUtf8("euro-sign=€"); } void DownloadsTest::parseContentDispositionTest() { QFETCH(QByteArray, header); QFETCH(QString, result); QCOMPARE(DownloadFileHelper::parseContentDisposition(header), result); } qupzilla-1.6.0/tests/autotests/downloadstest.h000066400000000000000000000021221226107126500216160ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef DOWNLOADSTEST_H #define DOWNLOADSTEST_H #include class DownloadsTest : public QObject { Q_OBJECT private slots: void parseContentDispositionTest_data(); void parseContentDispositionTest(); }; #endif // DOWNLOADSTEST_H qupzilla-1.6.0/tests/autotests/formcompletertest.cpp000066400000000000000000000326461226107126500230530ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "formcompletertest.h" #include "pageformcompleter.h" #include #include #include void FormCompleterTest::initTestCase() { view = new QWebView(); } void FormCompleterTest::cleanupTestCase() { delete view; } void FormCompleterTest::init() { view->setHtml(QString()); } void FormCompleterTest::completePageTest1() { // Basic test QByteArray data = "username=tst_username&password=tst_password"; QString html = "
    " "" "" "" "
    "; completeWithData(html, data); QCOMPARE(getElementByIdValue("id1").toString(), QString("tst_username")); QCOMPARE(getElementByIdValue("id2").toString(), QString("tst_password")); } void FormCompleterTest::completePageTest2() { // Real word test: GMail login // uses input type=email for username QByteArray data = "dsh=-821344601702946291&GALX=pAkf3B9TdCo&timeStmp=&secTok=" "&_utf8=%E2%98%83&bgresponse=%21A0IjdiuCmhg1wERY2iLkbgozxgIAAAAOUgAAA" "AcqAMaxqx-r1kXOOzeHkuDrRiOJvacFeSxGJ-pg_KQbwMJk3mBUCoZO2g602Uq4upHsM" "KVfjKRkuPCC0bVCaglP90VLBN8lqCQ5zLSrczVa-WpBFXlEZsKm5UXasE2ZZUQfDc1MI" "VQbDUviv7Ap54jx6vlTinen6UlxWW_wAvtLkpSO1hqrWnDSDmvFtbJZX61BlMFoHTPYk" "ijYnuCWzrHWsfKVI8uigtpClgwBTGovCWzuLrbFhG6txV5SokxdfNhbr3Vv-zO9xCw&E" "mail=tst_mail%40google.com&&Passwd=pass+%CB%87+word1&signIn=P%+se&Per" "sistentCookie=yes&rmShown=1"; QString html = "
    " "" "" "" "" "" "" "" "" "" "" "" "" "
    " "" "" "
    " "" "" "" "
    "; completeWithData(html, data); QCOMPARE(getElementByIdValue("Email").toString(), QString("tst_mail@google.com")); QCOMPARE(getElementByIdValue("Passwd").toString(), QString::fromUtf8("pass ˇ word1")); } void FormCompleterTest::completePageTest3() { // This test is mainly to test properly decoding special characters // in post data. QByteArray data = "user=%2B%C4%9B%C5%A1S+%CB%87+-+%2520+%2F+aa_&" "pass=%C3%BD%C5%BE%C4%9B%C5%A1%2B%C3%AD%C3%A1+das+%2B%2F+%5C+%C4%91"; QString html = "
    " "" "" "" "
    "; completeWithData(html, data); QCOMPARE(getElementByIdValue("id1").toString(), QString::fromUtf8("+ěšS ˇ - %20 / aa_")); QCOMPARE(getElementByIdValue("id2").toString(), QString::fromUtf8("ýžěš+íá das +/ \\ đ")); } void FormCompleterTest::extractFormTest1() { // Basic test QByteArray data = "username=tst_username&password=tst_password"; QString html = "
    " "" "" "" "
    "; PageFormData form = extractFormData(html, data); QVERIFY(form.isValid() == true); QCOMPARE(form.username, QString("tst_username")); QCOMPARE(form.password, QString("tst_password")); } void FormCompleterTest::extractFormTest2() { // Test special characters (even in input name) QByteArray data = "use%C2%B6+_nam%C4%8D=%2B%C4%9B+%2B%2B+%C3%A9%C3%AD%C2%A7%60%5D%7C%7E%C4%9111+%2B%21%3A" "&pA+%5DsQ+%2Bword=%2B%C4%9B%C5%A1+asn%7E%C4%91%C2%B0%23%26%23+%7C%E2%82%AC"; QString html = QString::fromUtf8("
    " "" "" "" "
    "); PageFormData form = extractFormData(html, data); QVERIFY(form.isValid() == true); QCOMPARE(form.username, QString::fromUtf8("+ě ++ éí§`]|~đ11 +!:")); QCOMPARE(form.password, QString::fromUtf8("+ěš asn~đ°#&# |€")); } void FormCompleterTest::extractFormTest3() { // Test detecting sent form between 2 identical forms // but only one form is filled with correct data QByteArray data = "username=tst_username&password=tst_password"; QString html = "
    " "" "" "" "
    "; QString html2 = "
    " "" "" "" "
    "; PageFormData form = extractFormData(html + html2, data); QVERIFY(form.isValid() == true); QCOMPARE(form.username, QString("tst_username")); QCOMPARE(form.password, QString("tst_password")); } void FormCompleterTest::extractFormTest4() { // Test extracting form that contains only password // as editable input QByteArray data = "username=tst_username&password=tst_password"; QString html = "
    " "" "" "" "
    "; PageFormData form = extractFormData(html, data); QVERIFY(form.isValid() == true); QCOMPARE(form.username, QString()); QCOMPARE(form.password, QString("tst_password")); } void FormCompleterTest::extractFormTest5() { // Twitter.com : Multiple almost same forms QByteArray data = "session%5Busername_or_email%5D=user1&session%5Bpassword%5D=pass&" "return_to_ssl=true&scribe_log=&redirect_after_login=%2F&" "authenticity_token=0d37030972c34b021d4a5ebab35817821dc0358b"; QString html = "" "" "" "" "" ""; PageFormData form = extractFormData(html, data); QVERIFY(form.isValid() == true); QCOMPARE(form.username, QString("user1")); QCOMPARE(form.password, QString("pass")); } void FormCompleterTest::extractFormTest6() { // Not found form test QByteArray data = "username=tst_username&password=tst_password"; QString html = "
    " "" "" "" "
    "; PageFormData form = extractFormData(html, data); QVERIFY(form.isValid() == false); } void FormCompleterTest::completeWithData(const QString &html, const QByteArray &data) { view->setHtml(html); PageFormCompleter completer(view->page()); completer.completePage(data); } PageFormData FormCompleterTest::extractFormData(const QString &html, const QByteArray &data) { view->setHtml(html); PageFormCompleter completer(view->page()); return completer.extractFormData(data); } QVariant FormCompleterTest::getElementByIdValue(const QString &id) { QString source = QString("document.getElementById('%1').value").arg(id); return view->page()->mainFrame()->evaluateJavaScript(source); } qupzilla-1.6.0/tests/autotests/formcompletertest.h000066400000000000000000000032241226107126500225060ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef FORMPAGECOMPLETERTEST_H #define FORMPAGECOMPLETERTEST_H #include #include class QWebView; struct PageFormData; class FormCompleterTest : public QObject { Q_OBJECT private slots: void initTestCase(); void cleanupTestCase(); void init(); void completePageTest1(); void completePageTest2(); void completePageTest3(); void extractFormTest1(); void extractFormTest2(); void extractFormTest3(); void extractFormTest4(); void extractFormTest5(); void extractFormTest6(); private: void completeWithData(const QString &html, const QByteArray &data); PageFormData extractFormData(const QString &html, const QByteArray &data); QVariant getElementByIdValue(const QString &id); QWebView *view; }; #endif // FORMPAGECOMPLETERTEST_H qupzilla-1.6.0/tests/autotests/main.cpp000066400000000000000000000033251226107126500202110ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "qztoolstest.h" #include "formcompletertest.h" #include "cookiestest.h" #include "downloadstest.h" #include "adblocktest.h" #include "updatertest.h" #include "pactest.h" #include "passwordbackendtest.h" #include #define RUN_TEST(X) \ { \ qDebug() << ""; \ X t; \ int r = QTest::qExec(&t, argc, argv); \ if (r != 0) return 1; \ } int main(int argc, char *argv[]) { QApplication app(argc, argv); QTEST_DISABLE_KEYPAD_NAVIGATION; RUN_TEST(QzToolsTest) RUN_TEST(FormCompleterTest) RUN_TEST(CookiesTest) RUN_TEST(DownloadsTest) RUN_TEST(AdBlockTest) RUN_TEST(UpdaterTest) RUN_TEST(PacTest) RUN_TEST(DatabasePasswordBackendTest) RUN_TEST(DatabaseEncryptedPasswordBackendTest) #ifndef Q_OS_WIN RUN_TEST(KWalletPasswordBackendTest) RUN_TEST(GnomeKeyringPasswordBackendTest) #endif return 0; } qupzilla-1.6.0/tests/autotests/pactest.cpp000066400000000000000000000217201226107126500207270ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "pactest.h" #include #include void PacTest::initTestCase() { m_runner = new ProxyAutoConfig_Tst; } void PacTest::cleanupTestCase() { delete m_runner; } // Tests according to // http://web.archive.org/web/20061218002753/wp.netscape.com/eng/mozilla/2.0/relnotes/demo/proxy-live.html void PacTest::isPlainHostNameTest_data() { QTest::addColumn("host"); QTest::addColumn("result"); QTest::newRow("doc1") << "www" << true; QTest::newRow("doc2") << "www.netscape.com" << false; } void PacTest::isPlainHostNameTest() { QFETCH(QString, host); QFETCH(bool, result); QString source = QString("isPlainHostName('%1')").arg(host); QCOMPARE(m_runner->evaluate(source).toBool(), result); } void PacTest::dnsDomainIsTest_data() { QTest::addColumn("host"); QTest::addColumn("domain"); QTest::addColumn("result"); QTest::newRow("doc1") << "www.netscape.com" << ".netscape.com" << true; QTest::newRow("doc2") << "www" << ".netscape.com" << false; QTest::newRow("doc3") << "www.mcom.com" << ".netscape.com" << false; } void PacTest::dnsDomainIsTest() { QFETCH(QString, host); QFETCH(QString, domain); QFETCH(bool, result); QString source = QString("dnsDomainIs('%1','%2')").arg(host, domain); QCOMPARE(m_runner->evaluate(source).toBool(), result); } void PacTest::localHostOrDomainIs_data() { QTest::addColumn("host"); QTest::addColumn("hostdom"); QTest::addColumn("result"); QTest::newRow("doc1") << "www.netscape.com" << "www.netscape.com" << true; QTest::newRow("doc2") << "www" << "www.netscape.com" << true; QTest::newRow("doc3") << "www.mcom.com" << "www.netscape.com" << false; QTest::newRow("doc4") << "home.netscape.com" << "www.netscape.com" << false; } void PacTest::localHostOrDomainIs() { QFETCH(QString, host); QFETCH(QString, hostdom); QFETCH(bool, result); QString source = QString("localHostOrDomainIs('%1','%2')").arg(host, hostdom); QCOMPARE(m_runner->evaluate(source).toBool(), result); } void PacTest::isResolvableTest_data() { QTest::addColumn("host"); QTest::addColumn("result"); QTest::newRow("doc1") << "www.netscape.com" << true; QTest::newRow("doc2") << "bogus.domain.foobar" << false; } void PacTest::isResolvableTest() { QFETCH(QString, host); QFETCH(bool, result); QString source = QString("isResolvable('%1')").arg(host); QCOMPARE(m_runner->evaluate(source).toBool(), result); } void PacTest::isInNetTest_data() { QTest::addColumn("host"); QTest::addColumn("pattern"); QTest::addColumn("mask"); QTest::addColumn("result"); // is true if the IP address of host matches exactly 198.95.249.79. QTest::newRow("doc1") << "198.95.249.79" << "198.95.249.79" << "255.255.255.255" << true; QTest::newRow("doc1-2") << "198.95.249.80" << "198.95.249.79" << "255.255.255.255" << false; QTest::newRow("doc1-3") << "198.95.248.79" << "198.95.249.79" << "255.255.255.255" << false; QTest::newRow("doc1-4") << "198.20.249.80" << "198.95.249.79" << "255.255.255.255" << false; QTest::newRow("doc1-5") << "123.95.249.80" << "198.95.249.79" << "255.255.255.255" << false; // is true if the IP address of the host matches 198.95.*.*. QTest::newRow("doc2") << "198.95.249.79" << "198.95.0.0" << "255.255.0.0" << true; QTest::newRow("doc2-2") << "198.95.0.0" << "198.95.0.0" << "255.255.0.0" << true; QTest::newRow("doc2-3") << "198.94.249.79" << "198.95.0.0" << "255.255.0.0" << false; QTest::newRow("doc2-3") << "198.94.249.79" << "198.95.0.0" << "255.255.0.0" << false; QTest::newRow("doc2-3") << "148.94.249.79" << "198.95.0.0" << "255.255.0.0" << false; QTest::newRow("doc2-3") << "128.94.249.79" << "198.95.0.0" << "255.255.0.0" << false; QTest::newRow("doc2-3") << "23.94.249.79" << "198.95.0.0" << "255.255.0.0" << false; // is true if the IP address of host matches 88.208.118.* (qupzilla.com) // if host is passed as hostname, the function needs to resolve it QTest::newRow("resolve1") << "qupzilla.com" << "88.208.118.158" << "255.255.255.0" << true; QTest::newRow("resolve1-2") << "yahoo.com" << "173.194.70.0" << "255.255.255.0" << false; QTest::newRow("resolve1-3") << "netscape.com" << "173.194.70.0" << "255.255.255.0" << false; QTest::newRow("resolve1-4") << "mozilla.com" << "173.194.70.0" << "255.255.255.0" << false; } void PacTest::isInNetTest() { QFETCH(QString, host); QFETCH(QString, pattern); QFETCH(QString, mask); QFETCH(bool, result); QString source = QString("isInNet('%1','%2','%3')").arg(host, pattern, mask); QCOMPARE(m_runner->evaluate(source).toBool(), result); } void PacTest::dnsResolveTest_data() { QTest::addColumn("host"); QTest::addColumn("result"); QTest::newRow("localhost") << "localhost" << "127.0.0.1"; QTest::newRow("qz") << "qupzilla.com" << "88.208.118.158"; // This may change... } void PacTest::dnsResolveTest() { QFETCH(QString, host); QFETCH(QString, result); QString source = QString("dnsResolve('%1')").arg(host); QCOMPARE(m_runner->evaluate(source).toString(), result); } void PacTest::dnsDomainLevelsTest_data() { QTest::addColumn("host"); QTest::addColumn("result"); QTest::newRow("doc1") << "www" << 0; QTest::newRow("doc2") << "www.netscape.com" << 2; } void PacTest::dnsDomainLevelsTest() { QFETCH(QString, host); QFETCH(int, result); QString source = QString("dnsDomainLevels('%1')").arg(host); QCOMPARE(m_runner->evaluate(source).toString().toInt(), result); } void PacTest::shExpMatchTest_data() { QTest::addColumn("str"); QTest::addColumn("shexp"); QTest::addColumn("result"); QTest::newRow("doc1") << "http://home.netscape.com/people/ari/index.html" << "*/ari/*" << true; QTest::newRow("doc2") << "http://home.netscape.com/people/montulli/index.html" << "*/ari/*" << false; QTest::newRow("glob1") << "com/people" << "*om/*" << true; QTest::newRow("glob2") << "com/people" << "com/*" << true; QTest::newRow("glob3") << "com/people" << "om/*" << false; QTest::newRow("char1") << "com/people" << "co?/*" << true; QTest::newRow("char2") << "com/people" << "?com/*" << false; QTest::newRow("char3") << "com/people" << "?scom/*" << false; QTest::newRow("char4") << "com/people" << "com/pe?ple*" << true; QTest::newRow("dot1") << "com/people.org" << "co?/*.org" << true; QTest::newRow("dot2") << "com/people.org" << "co?/*.or" << false; QTest::newRow("dot3") << "com/people.org" << "com/people.*g" << true; QTest::newRow("dot4") << "com/people.org" << "com/*.*g" << true; } void PacTest::shExpMatchTest() { QFETCH(QString, str); QFETCH(QString, shexp); QFETCH(bool, result); QString source = QString("shExpMatch('%1','%2')").arg(str, shexp); QCOMPARE(m_runner->evaluate(source).toBool(), result); } static QString dayName(int weekday) { switch (weekday) { case 1: return "MON"; case 2: return "TUE"; case 3: return "WED"; case 4: return "THU"; case 5: return "FRI"; case 6: return "SAT"; case 7: return "SUN"; default: return "MON"; } } void PacTest::dateTimeTest() { int day = QDateTime::currentDateTime().date().day(); int hour = QDateTime::currentDateTime().time().hour(); int week = QDateTime::currentDateTime().date().dayOfWeek(); QString source = QString("weekdayRange('%1')").arg(dayName(week)); QCOMPARE(m_runner->evaluate(source).toBool(), true); source = QString("weekdayRange('%1')").arg(dayName(week + 1)); QCOMPARE(m_runner->evaluate(source).toBool(), false); source = QString("dateRange('%1')").arg(day); QCOMPARE(m_runner->evaluate(source).toBool(), true); source = QString("dateRange('%1')").arg(day + 1); QCOMPARE(m_runner->evaluate(source).toBool(), false); source = QString("timeRange('%1')").arg(hour); QCOMPARE(m_runner->evaluate(source).toBool(), true); source = QString("timeRange('%1')").arg(hour + 1); QCOMPARE(m_runner->evaluate(source).toBool(), false); } qupzilla-1.6.0/tests/autotests/pactest.h000066400000000000000000000035261226107126500204000ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef PACTEST_H #define PACTEST_H #include #include "pac/proxyautoconfig.h" class ProxyAutoConfig_Tst : public ProxyAutoConfig { public: QScriptValue evaluate(const QString &source) { return ProxyAutoConfig::evaluate(source); } }; class PacTest : public QObject { Q_OBJECT private slots: void initTestCase(); void cleanupTestCase(); void isPlainHostNameTest_data(); void isPlainHostNameTest(); void dnsDomainIsTest_data(); void dnsDomainIsTest(); void localHostOrDomainIs_data(); void localHostOrDomainIs(); void isResolvableTest_data(); void isResolvableTest(); void isInNetTest_data(); void isInNetTest(); void dnsResolveTest_data(); void dnsResolveTest(); // myIpAddress - how to test it? void dnsDomainLevelsTest_data(); void dnsDomainLevelsTest(); void shExpMatchTest_data(); void shExpMatchTest(); void dateTimeTest(); private: ProxyAutoConfig_Tst *m_runner; }; #endif // PACTEST_H qupzilla-1.6.0/tests/autotests/passwordbackendtest.cpp000066400000000000000000000201141226107126500233320ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "passwordbackendtest.h" #include "aesinterface.h" #include #include #include #include #ifdef Q_OS_WIN #include "qt_windows.h" #else #include "unistd.h" #endif static bool compareEntries(const PasswordEntry &value, const PasswordEntry &ref) { if (ref.host != value.host) { qDebug() << "Host mismatch. Value =" << value.host << "Reference =" << ref.host; return false; } if (ref.username != value.username) { qDebug() << "Username mismatch. Value =" << value.username << "Reference =" << ref.username; return false; } if (ref.password != value.password) { qDebug() << "Password mismatch. Value =" << value.password << "Reference =" << ref.password; return false; } if (ref.data != value.data) { qDebug() << "Data mismatch. Value =" << value.data << "Reference =" << ref.data; return false; } return true; } PasswordBackendTest::PasswordBackendTest() : QObject() , m_backend(0) { } void PasswordBackendTest::initTestCase() { init(); // Backup entries reloadBackend(); m_entries = m_backend->getAllEntries(); m_backend->removeAll(); } void PasswordBackendTest::cleanupTestCase() { cleanup(); reloadBackend(); foreach (const PasswordEntry &entry, m_entries) { m_backend->addEntry(entry); } } void PasswordBackendTest::storeTest() { reloadBackend(); /* Basic password entry */ PasswordEntry entry; entry.host = "org.qupzilla.google.com"; entry.username = "user1"; entry.password = "pass1"; entry.data = "entry1-data=23&username=user1&password=pass1"; m_backend->addEntry(entry); // Check entry that may be stored in cache PasswordEntry stored = m_backend->getEntries(QUrl("org.qupzilla.google.com")).first(); QVERIFY(compareEntries(stored, entry) == true); reloadBackend(); // Check entry retrieved from backend engine stored = m_backend->getEntries(QUrl("org.qupzilla.google.com")).first(); QVERIFY(compareEntries(stored, entry) == true); /* UTF-8 password entry */ PasswordEntry entry2; entry2.host = "org.qupzilla.qupzilla.com"; entry2.username = QString::fromUtf8("+ě ++ éí§`]|~đ11 +!:"); entry2.password = QString::fromUtf8("+ěš asn~đ°#&# |€"); entry2.data = "use%C2%B6+_nam%C4%8D=%2B%C4%9B+%2B%2B+%C3%A9%C3%AD%C2%A7%60%5D%7C%7E%C4%9111+%2B%21%3A" "&pA+%5DsQ+%2Bword=%2B%C4%9B%C5%A1+asn%7E%C4%91%C2%B0%23%26%23+%7C%E2%82%AC"; m_backend->addEntry(entry2); // Check entry that may be stored in cache PasswordEntry stored2 = m_backend->getEntries(QUrl("org.qupzilla.qupzilla.com")).first(); QVERIFY(compareEntries(stored2, entry2) == true); reloadBackend(); // Check entry retrieved from backend engine stored2 = m_backend->getEntries(QUrl("org.qupzilla.qupzilla.com")).first(); QVERIFY(compareEntries(stored2, entry2) == true); /* Cleanup */ // Local cleanup m_backend->removeEntry(stored); QCOMPARE(m_backend->getEntries(QUrl("org.qupzilla.google.com")).count(), 0); m_backend->removeEntry(stored2); QCOMPARE(m_backend->getEntries(QUrl("org.qupzilla.qupzilla.com")).count(), 0); reloadBackend(); // Backend engine cleanup QCOMPARE(m_backend->getEntries(QUrl("org.qupzilla.google.com")).count(), 0); QCOMPARE(m_backend->getEntries(QUrl("org.qupzilla.qupzilla.com")).count(), 0); } void PasswordBackendTest::removeAllTest() { reloadBackend(); PasswordEntry entry; entry.host = "org.qupzilla.google.com"; entry.username = "user1"; entry.password = "pass1"; entry.data = "entry1-data=23&username=user1&password=pass1"; m_backend->addEntry(entry); entry.username.append("s"); m_backend->addEntry(entry); entry.username.append("s"); m_backend->addEntry(entry); entry.username.append("s"); m_backend->addEntry(entry); entry.username.append("s"); m_backend->addEntry(entry); entry.username.append("s"); m_backend->addEntry(entry); entry.username.append("s"); m_backend->addEntry(entry); QCOMPARE(m_backend->getEntries(QUrl("org.qupzilla.google.com")).count(), 7); reloadBackend(); QCOMPARE(m_backend->getEntries(QUrl("org.qupzilla.google.com")).count(), 7); m_backend->removeAll(); QCOMPARE(m_backend->getAllEntries().count(), 0); reloadBackend(); QCOMPARE(m_backend->getAllEntries().count(), 0); } void PasswordBackendTest::updateLastUsedTest() { reloadBackend(); PasswordEntry entry; entry.host = "org.qupzilla.google.com"; entry.username = "user1"; entry.password = "pass1"; entry.data = "entry1-data=23&username=user1&password=pass1"; m_backend->addEntry(entry); #ifdef Q_OS_WIN Sleep(1000); #else sleep(1); #endif entry.username.append("s"); m_backend->addEntry(entry); QVERIFY(compareEntries(entry, m_backend->getEntries(QUrl("org.qupzilla.google.com")).first())); reloadBackend(); QVERIFY(compareEntries(entry, m_backend->getEntries(QUrl("org.qupzilla.google.com")).first())); m_backend->removeEntry(m_backend->getEntries(QUrl("org.qupzilla.google.com")).first()); m_backend->removeEntry(m_backend->getEntries(QUrl("org.qupzilla.google.com")).first()); QCOMPARE(m_backend->getAllEntries().count(), 0); reloadBackend(); QCOMPARE(m_backend->getAllEntries().count(), 0); } // DatabasePasswordBackendTest void DatabasePasswordBackendTest::reloadBackend() { delete m_backend; m_backend = new DatabasePasswordBackend; } void DatabasePasswordBackendTest::init() { QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE"); db.setDatabaseName(":memory:"); db.open(); db.exec("CREATE TABLE autofill (data TEXT, id INTEGER PRIMARY KEY, password TEXT," "server TEXT, username TEXT, last_used NUMERIC)"); } void DatabasePasswordBackendTest::cleanup() { QSqlDatabase::removeDatabase(QSqlDatabase::database().databaseName()); } // DatabaseEncryptedPasswordBackendTest void DatabaseEncryptedPasswordBackendTest::reloadBackend() { delete m_backend; DatabaseEncryptedPasswordBackend* backend = new DatabaseEncryptedPasswordBackend; if (m_testMasterPassword.isEmpty()) { m_testMasterPassword = AesInterface::passwordToHash(QString::fromUtf8(AesInterface::createRandomData(8))); backend->updateSampleData(m_testMasterPassword); } // a trick for setting masterPassword without gui interactions backend->isPasswordVerified(m_testMasterPassword); backend->setAskMasterPasswordState(false); m_backend = backend; } void DatabaseEncryptedPasswordBackendTest::init() { QSqlDatabase db = QSqlDatabase::database(); if (!db.isValid()) { db = QSqlDatabase::addDatabase("QSQLITE"); db.setDatabaseName(":memory:"); } db.open(); } void DatabaseEncryptedPasswordBackendTest::cleanup() { QSqlDatabase::removeDatabase(QSqlDatabase::database().databaseName()); } #ifndef Q_OS_WIN // KWalletPassswordBackendTest void KWalletPasswordBackendTest::reloadBackend() { delete m_backend; m_backend = new KWalletPasswordBackend; } // GnomeKeyringPassswordBackendTest void GnomeKeyringPasswordBackendTest::reloadBackend() { delete m_backend; m_backend = new GnomeKeyringPasswordBackend; } #endif qupzilla-1.6.0/tests/autotests/passwordbackendtest.h000066400000000000000000000045471226107126500230130ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef PASSWORDBACKENDTEST_H #define PASSWORDBACKENDTEST_H #include #include #include "passwordbackends/passwordbackend.h" #include "passwordmanager.h" class PasswordBackendTest : public QObject { Q_OBJECT public: explicit PasswordBackendTest(); private slots: void initTestCase(); void cleanupTestCase(); void storeTest(); void removeAllTest(); void updateLastUsedTest(); protected: virtual void reloadBackend() = 0; virtual void init() { } virtual void cleanup() { } PasswordBackend* m_backend; QVector m_entries; }; #include "passwordbackends/databasepasswordbackend.h" class DatabasePasswordBackendTest : public PasswordBackendTest { Q_OBJECT protected: void reloadBackend(); void init(); void cleanup(); }; #include "passwordbackends/databaseencryptedpasswordbackend.h" class DatabaseEncryptedPasswordBackendTest : public PasswordBackendTest { Q_OBJECT private: QByteArray m_testMasterPassword; protected: void reloadBackend(); void init(); void cleanup(); }; #ifndef Q_OS_WIN #include "../../src/plugins/KWalletPasswords/kwalletpasswordbackend.h" class KWalletPasswordBackendTest : public PasswordBackendTest { Q_OBJECT protected: void reloadBackend(); }; #include "../../src/plugins/GnomeKeyringPasswords/gnomekeyringpasswordbackend.h" class GnomeKeyringPasswordBackendTest : public PasswordBackendTest { Q_OBJECT protected: void reloadBackend(); }; #endif #endif // PASSWORDBACKENDTEST_H qupzilla-1.6.0/tests/autotests/qztoolstest.cpp000066400000000000000000000127011226107126500216760ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "qztoolstest.h" #include "qztools.h" #include void QzToolsTest::samePartOfStrings_data() { QTest::addColumn("string1"); QTest::addColumn("string2"); QTest::addColumn("result"); // Lorem ipsum dolor sit amet, consectetur adipiscing elit. QTest::newRow("General") << "Lorem ipsum dolor" << "Lorem ipsum dolor Test_1" << "Lorem ipsum dolor"; QTest::newRow("OneChar") << "L" << "LTest_1" << "L"; QTest::newRow("EmptyReturn") << "Lorem ipsum dolor" << "orem ipsum dolor Test_1" << ""; QTest::newRow("EmptyString1") << "" << "orem ipsum dolor Test_1" << ""; QTest::newRow("EmptyString2") << "Lorem ipsum dolor" << "" << ""; QTest::newRow("EmptyBoth") << "" << "" << ""; } void QzToolsTest::samePartOfStrings() { QFETCH(QString, string1); QFETCH(QString, string2); QFETCH(QString, result); QCOMPARE(QzTools::samePartOfStrings(string1, string2), result); } void QzToolsTest::getFileNameFromUrl_data() { QTest::addColumn("url"); QTest::addColumn("result"); QTest::newRow("Basic") << QUrl("http://www.google.com/filename.html") << "filename.html"; QTest::newRow("OnlyHost") << QUrl("http://www.google.com/") << "www.google.com"; QTest::newRow("OnlyHostWithoutSlash") << QUrl("http://www.google.com") << "www.google.com"; QTest::newRow("EndingDirectory") << QUrl("http://www.google.com/filename/") << "filename"; QTest::newRow("EmptyUrl") << QUrl("") << ""; QTest::newRow("OnlyScheme") << QUrl("http:") << ""; QTest::newRow("FileSchemeUrl") << QUrl("file:///usr/share/test/file.tx") << "file.tx"; QTest::newRow("FileSchemeUrlDirectory") << QUrl("file:///usr/share/test/") << "test"; QTest::newRow("FileSchemeUrlRoot") << QUrl("file:///") << ""; } void QzToolsTest::getFileNameFromUrl() { QFETCH(QUrl, url); QFETCH(QString, result); QCOMPARE(QzTools::getFileNameFromUrl(url), result); } void QzToolsTest::splitCommandArguments_data() { QTest::addColumn("command"); QTest::addColumn("result"); QTest::newRow("Basic") << "/usr/bin/foo -o foo.out" << (QStringList() << "/usr/bin/foo" << "-o" << "foo.out"); QTest::newRow("Empty") << QString() << QStringList(); QTest::newRow("OnlySpaces") << QString(" ") << QStringList(); QTest::newRow("OnlyQuotes") << QString("\"\" \"\"") << QStringList(); QTest::newRow("EmptyQuotesAndSpace") << QString("\"\" \"\" \" \"") << QStringList(" "); QTest::newRow("MultipleSpaces") << " /usr/foo -o foo.out " << (QStringList() << "/usr/foo" << "-o" << "foo.out"); QTest::newRow("Quotes") << "\"/usr/foo\" \"-o\" \"foo.out\"" << (QStringList() << "/usr/foo" << "-o" << "foo.out"); QTest::newRow("SingleQuotes") << "'/usr/foo' '-o' 'foo.out'" << (QStringList() << "/usr/foo" << "-o" << "foo.out"); QTest::newRow("SingleAndDoubleQuotes") << " '/usr/foo' \"-o\" 'foo.out' " << (QStringList() << "/usr/foo" << "-o" << "foo.out"); QTest::newRow("SingleInDoubleQuotes") << "/usr/foo \"-o 'ds' \" 'foo.out' " << (QStringList() << "/usr/foo" << "-o 'ds' " << "foo.out"); QTest::newRow("DoubleInSingleQuotes") << "/usr/foo -o 'foo\" d \".out' " << (QStringList() << "/usr/foo" << "-o" << "foo\" d \".out"); QTest::newRow("SpacesWithQuotes") << QString(" \" \" \" \" ") << (QStringList() << " " << " "); QTest::newRow("QuotesAndSpaces") << "/usr/foo -o \"foo - out\"" << (QStringList() << "/usr/foo" << "-o" << "foo - out"); QTest::newRow("EqualAndQuotes") << "/usr/foo -o=\"foo - out\"" << (QStringList() << "/usr/foo" << "-o=foo - out"); QTest::newRow("EqualWithSpaces") << "/usr/foo -o = \"foo - out\"" << (QStringList() << "/usr/foo" << "-o" << "=" << "foo - out"); QTest::newRow("MultipleSpacesAndQuotes") << " /usr/foo -o=\" foo.out \" " << (QStringList() << "/usr/foo" << "-o= foo.out "); // Unmatched quotes should be treated as an error QTest::newRow("UnmatchedQuote") << "/usr/bin/foo -o \"bar" << QStringList(); } void QzToolsTest::splitCommandArguments() { QFETCH(QString, command); QFETCH(QStringList, result); QCOMPARE(QzTools::splitCommandArguments(command), result); } qupzilla-1.6.0/tests/autotests/qztoolstest.h000066400000000000000000000023041226107126500213410ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef QZTOOLSTEST_H #define QZTOOLSTEST_H #include class QzToolsTest : public QObject { Q_OBJECT private slots: void samePartOfStrings_data(); void samePartOfStrings(); void getFileNameFromUrl_data(); void getFileNameFromUrl(); void splitCommandArguments_data(); void splitCommandArguments(); }; #endif // QZTOOLSTEST_H qupzilla-1.6.0/tests/autotests/updatertest.cpp000066400000000000000000000064571226107126500216420ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #include "updatertest.h" #include "updater.h" #include void UpdaterTest::parseVersionsTest_data() { QTest::addColumn("versionString"); QTest::addColumn("valid"); QTest::addColumn("major"); QTest::addColumn("minor"); QTest::addColumn("revision"); QTest::newRow("zeros") << "0.0.0" << true << 0 << 0 << 0; QTest::newRow("zero-1") << "0.0.1" << true << 0 << 0 << 1; QTest::newRow("current") << "1.4.1" << true << 1 << 4 << 1; QTest::newRow("next-bugfix") << "1.4.2" << true << 1 << 4 << 2; QTest::newRow("2digits") << "2.5.15" << true << 2 << 5 << 15; QTest::newRow("3digits") << "123.123.333" << true << 123 << 123 << 333; QTest::newRow("negative") << "-1.4.1" << false << 0 << 0 << 0; QTest::newRow("invalid") << "0.0.0-1" << false << 0 << 0 << 0; QTest::newRow("invalid2") << "invalid1text" << false << 0 << 0 << 0; } void UpdaterTest::parseVersionsTest() { QFETCH(QString, versionString); QFETCH(bool, valid); QFETCH(int, major); QFETCH(int, minor); QFETCH(int, revision); Updater::Version v(versionString); QCOMPARE(v.isValid, valid); if (valid) { QCOMPARE(v.majorVersion, major); QCOMPARE(v.minorVersion, minor); QCOMPARE(v.revisionNumber, revision); } } void UpdaterTest::compareVersionsTest_data() { QTest::addColumn("version1"); QTest::addColumn("version2"); QTest::addColumn("less"); QTest::addColumn("more"); QTest::addColumn("equal"); QTest::newRow("test1") << "0.0.1" << "0.0.2" << true << false << false; QTest::newRow("test2") << "0.1.2" << "0.0.2" << false << true << false; QTest::newRow("test3") << "1.0.1" << "0.0.2" << false << true << false; QTest::newRow("test4") << "1.4.1" << "1.4.2" << true << false << false; QTest::newRow("test5") << "1.5.0" << "1.4.2" << false << true << false; QTest::newRow("test6") << "1.5.0" << "1.5.0" << false << false << true; QTest::newRow("test7") << "1.5.1" << "1.4.2" << false << true << false; QTest::newRow("test8") << "1.4.1" << "1.4.2" << true << false << false; } void UpdaterTest::compareVersionsTest() { QFETCH(QString, version1); QFETCH(QString, version2); QFETCH(bool, less); QFETCH(bool, more); QFETCH(bool, equal); Updater::Version v1(version1); Updater::Version v2(version2); QCOMPARE(v1 < v2, less); QCOMPARE(v1 > v2, more); QCOMPARE(v1 == v2, equal); } qupzilla-1.6.0/tests/autotests/updatertest.h000066400000000000000000000021741226107126500212770ustar00rootroot00000000000000/* ============================================================ * QupZilla - WebKit based browser * Copyright (C) 2013 David Rosca * * 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 3 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, see . * ============================================================ */ #ifndef UPDATERTEST_H #define UPDATERTEST_H #include class UpdaterTest : public QObject { Q_OBJECT private slots: void parseVersionsTest_data(); void parseVersionsTest(); void compareVersionsTest_data(); void compareVersionsTest(); }; #endif // UPDATERTEST_H qupzilla-1.6.0/tests/form.html000066400000000000000000000011641226107126500163560ustar00rootroot00000000000000 Form completion test

    Form completion test

    Username:
    Password:
    Text:

    qupzilla-1.6.0/tests/link_tests.html000066400000000000000000000054151226107126500175750ustar00rootroot00000000000000 Link Tests

    MAILTO Link Tests

    Email link #1
    Email link #2

    HTTP Link Tests

    Web site link (new window)
    Web site link with bogus username
    Web site link with different bogus username
    PDF link
    PDF link (new window)
    Movie link
    Movie link (new window)
    Text Document Link
    Bogus link

    Javascript Link Tests

    Open dialog like window link #1
    Open new window link #2 (might be opened as Tab)
    Open PDF Document (new window)
    Open form test (new window)
    ClickToFlash (new window)
    Close window

    Form Tests

    Choose file to upload:

    qupzilla-1.6.0/tests/popup.html000066400000000000000000000004601226107126500165540ustar00rootroot00000000000000 Popup window

    Popup window

    qupzilla-1.6.0/tests/popupwindows.html000066400000000000000000000026151226107126500201730ustar00rootroot00000000000000 Popup windows test

    Popup windows test

    Will be opened in new tab

    Classic link - target="_blank" link has to be opened in new tab

    Popup 1 - can be opened in new tab

    Popup 2 - with second argument _blank

    Popup 3 - with left and righ (should be opened as popup, but how to detect it?)

    Will be opened in popup window

    Popup 4 - with width and height

    Popup 5 - with width, height, left and top

    Popup 6 - with menubar (popupwindows.html)

    Popup 7 - with statusbar (blog.qupzilla.com)

    Popup 8 - with toolbar (form.html)

    qupzilla-1.6.0/translations/000077500000000000000000000000001226107126500161025ustar00rootroot00000000000000qupzilla-1.6.0/translations/ar_SA.ts000066400000000000000000011101301226107126500174340ustar00rootroot00000000000000 AboutDialog About QupZilla حول كَبزيلا Authors المؤلفون Authors and Contributors المؤلفون والمساهمون < About QupZilla < حول كَبزيلا <p><b>Application version %1</b><br/> <p>إصدار البرنامج %1</p><br/> <b>WebKit version %1</b></p> <b>WebKit إصدار %1</b></p> <small>Build time: %1 </small></p> <small>زمن البناء: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>المطور الأساسي:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>المساهمون:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>المترجمون:</b><br/>%1</p> AcceptLanguage Preferred Languages اللغات المُفضلة Add... أضف... Remove احذف Up أعلى Down أسفل Personal [%1] [%1] الشخصي AdBlockAddSubscriptionDialog Add Subscription أضف اشتراكاً Title: العنوان: Address: الرابط: Add new subscription to AdBlock: أضف اشتراكاً جديداً إلى أدبلوك: AdBlockCustomList Custom Rules قواعد مُخصصة AdBlockDialog AdBlock Configuration ضبط أدبلوك Enable AdBlock فعل أدبلوك Search... ابحث... Options خيارات AdBlock أدبلوك Use only essential part of EasyList (for performance reasons) استخدم الجزء الأساسي من قائمة الاشتراكات السهلة (من أجل تحسين الأداء) Add Rule أضف قاعدة Remove Rule احذف القاعدة Add Subscription أضف اشتراكاً Remove Subscription احذف الاشتراك Update Subscriptions حدث الاشتراكات Learn about writing rules... تعلم كيف تكتب القواعد... AdBlockIcon AdBlock lets you block unwanted content on web pages يتيح أدبلوك منع المحتوى الذي لا ترغب به ضمن صفحات الوِب Blocked popup window حُظرت نافذة منبثقة AdBlock blocked unwanted popup window. منع أدبلوك نافذة منبثقة غيرَ مرغوبٍ بها. AdBlock أدبلوك Show AdBlock &Settings أظهر إ&عدادات أدبلوك Disable on %1 أوقفه ضمن %1 Disable only on this page أوقفه ضمن هذه الصفحة فقط Blocked Popup Windows النوافذة المنبثقة المحظورة %1 with (%2) %1 مع (%2) No content blocked لم يُحظر أي محتوىً Blocked URL (AdBlock Rule) - click to edit rule رابط محظور (وفق قواعد أدبلوك) - انقر لتعديل هذه القاعدة AdBlockManager Do you want to add <b>%1</b> subscription? أتريد أن تضيف <b>%1</b> كاشتراك؟ AdBlock Subscription اشتراك أدبلوك EasyList قائمة الاشتراكات السريعة AdBlockTreeWidget Add Rule أضف قاعدة Remove Rule احذف القاعدة Add Custom Rule أضف قاعدة مخصصة Please write your rule here: رجاء اكتب القاعدة هنا: %1 (recently updated) %1 (حُدّثَت مؤخراً) AddAcceptLanguage Add Language أضف لغةً Choose preferred language for web sites اختر اللغة التي تفضلها لمواقع الوِب Personal definition: تعريفٌ شخصي: AesInterface Warning! تحذير! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. شُفّرت البيانات باستخدام نسخة أحدث من كَبزيلا. رجاءً ثبت أحدث نسخة من كَبزيلا. AutoFill Database (plaintext) قاعدة بيانات (نصّ مجرد) Database (encrypted) قاعدة بيانات (مشفرة) Enter Master Password أدخل كلمة المرور الرئيسة Permission is required, please enter Master Password: يتطلب هذا إذناً، رجاءً أدخل كلمة المرور الرئيسة: Warning! تحذير! Entered password is wrong! كلمة المرور المُدخلة خاطئة! This backend needs a master password to be set! QupZilla just switches to its default backend تتطلب هذه النهاية الخلفية أن تُعين كلمة مرور رئيسة! سيعود كَبزيلا إلى استخدام النهاية الخلفية المبدئية AutoFillManager Passwords are stored in: تُخزن كلمات المرور في: Change backend غير النهاية الخلفية Backend options خيارات النهاية الخلفية Passwords كلمات المرور Server الخادوم Username اسم المستخدم Password كلمة المرور Import/Export استورد/صدّر Show Passwords أظهر كلمات المرور Edit عدّل Remove احذف Remove All احذف الكل Exceptions الاستثناءات Import Passwords from File... استورد كلمات المرور من ملف... Export Passwords to File... صدر كلمات المرور إلى ملف... Search ابحث Change backend... غير النهاية الخلفية... Change backend: غير النهاية الخلفية: Are you sure that you want to show all passwords? أتريد حقّا أن تُظهِر كلمات المرور كلها؟ Hide Passwords أخفِ كلمات المرور Confirmation تأكيد Are you sure to delete all passwords on your computer? أتريد حقّا أن تحذف كلمات المرور كلها من حاسوبك؟ Edit password عدل كلمة المرور Change password: غير كلمة المرور: Choose file... اختر ملفّا... Cannot read file! تعذرت قراءة الملف! Successfully imported اُستورِدت بنجاح Error while importing! وقع خطأ أثناء الاستيراد! Cannot write to file! تعذرت الكتابة إلى الملف! Successfully exported صُدّرت بنجاح AutoFillNotification Update حدّث Remember تذكر Never For This Site لا تتذكر ضمن هذا الموقع Not Now فيما بعد on %1 على %1 for <b>%1</b> باسم <b>%1</b> Do you want QupZilla to update saved password %1? أتريد أن يحدث كَبزيلا كلمة المرور المحفوظة %1؟ Do you want QupZilla to remember the password %1 %2? أتريد أن يتذكر كَبزيلا كلمة المرور %1 %2؟ AutoFillWidget Choose username to login اختر اسم المستخدم لتسجيل الدخول Login سجل الدخول Login as <b>%1</b> سجل الدخول باسم <b>%1</b> BookmarkIcon Bookmark this Page علم هذه الصفحة Edit this bookmark عدل هذه العلامة BookmarksImportDialog Import Bookmarks استورد العلامات <b>Import Bookmarks</b> <b>استيراد العلامات</b> From File من ملف Internet Explorer من Internet Explorer Choose browser from which you want to import bookmarks: اختر المتصفح الذي ترغب في استيراد العلامات منه: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>ملاحظة:</b> حالياً لا يمكن استيراد المجلدات ضمن العلامات إلا من ملفات HTML. Choose... اختر... Try to fetch icons for all bookmarks (may take a while) حاول أن تجلب رموز كل العلامات (قد يستغرق هذا بعض الوقت) Fetching icons, please wait... يجلب الرموز... Title العنوان Url الرابط Next التالي Cancel ألغِ <b>Importing from %1</b> <b>الاستيراد من %1</b> Finish أتِم Please press Finish to complete importing process. رجاء اضغط "أتِم" لإتمام عملية الاستيراد. Error! خطأ! The file doesn't contain any bookmark. لا يحوي الملف أية علامات. Choose directory... اختر مساراً... Choose file... اختر ملفّا... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in يُخزن متصفح فَيرفُكس العلامات في ملف اسمه <b>places.sqlite</b>، وهو قاعدة بيانات من نوع SQLite. تجد هذا الملف عادةً في Please choose this file to begin importing bookmarks. رجاءً اختر هذا الملف لاستيراد العلامات. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in يخزن متصفح Chrome العلامات في ملف نصي اسمه <b>Bookmarks</b>. تجد هذا الملف عادةً في Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in يخزن متصفح Opera العلامات في ملف نصي اسمه <b>bookmarks.adr</b>. تجد هذا الملف عادةً في You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes يمكنك استيراد العلامات من كل متصفح يدعم تصدير العلامات المخزنة فيه كملف بصيغة HTML. يُلحق اسم الملف عادة بإحدى هذه اللواحق Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in يخزن متصفح Internet Explorer العلامات ضمن مجلد <b>المفضلة</b>. يقع هذ المجلد عادةً في Please choose this folder to begin importing bookmarks. رجاءً اختر هذا المجلد لبدء استيراد العلامات. No Error لا أخطاء Unable to open file. تعذر فتح الملف. Cannot evaluate JSON code. لا يمكن تقييم شِفرة JSON. File does not exist. الملف غير مُوجَد. Unable to open database. Is Firefox running? تعذر فتح قاعدة البيانات. هل فَيرفكس مفتوح؟ Directory does not exist. المسار غير مُوجَد. The directory does not contain any bookmarks. لا يحتوي المسار على أية علامات. BookmarksManager Bookmarks العلامات Optimize Database حسّن قاعدة البيانات Import Bookmarks استورد علامات Add Folder أضف مجلداً Title العنوان Url الرابط Expand All افتح كل المجلدات Collapse All أغلق كل المجلدات Add new folder أضف مجلداً جديداً Choose parent folder for new folder: اختر مجلداً يُنشَأ ضمنه المجلد الجديد: Choose name for new bookmark folder: اختر اسماً للمجلد الجديد: Add new subfolder أضف مجلداً فرعيّا جديداً Choose name for new subfolder in bookmarks toolbar: اختر اسماً للمجلد الفرعي الجديد ضمن شريط العلامات: Rename Folder غير اسم المجلد Choose name for folder: اختر اسماً للمجلد: Add Subfolder أضف مجلداً فرعيّا Rename folder غير اسم المجلد Remove folder احذف المجلد Open link in current &tab افتح الرابط في اللسان ال&حالي Open link in &new tab افتح الرابط في لسان &جديد Move bookmark to &folder انقل العلامة إلى &مجلد Change icon غير الرمز Rename bookmark غير اسم العلامة Remove bookmark احذف العلامة <b>Warning: </b>You already have bookmarked this page! <b>تحذير: </b>علمت هذه الصفحة من قبل! Choose name and location of this bookmark. اختر اسماً وموقعاً لهذه العلامة. Add New Bookmark أضف علامةً جديدةً Choose folder for bookmarks: اختر مجلداً للعلامات: Bookmark All Tabs علم كل الألسنة BookmarksModel Bookmarks In Menu العلامات في القائمة Bookmarks In ToolBar العلامات في شريطها Unsorted Bookmarks علامات غير مرتبة BookmarksSideBar Search... ابحث... Open link in current &tab افتح الرابط في اللسان ال&حالي Open link in &new tab افتح الرابط في لسان &جديد Copy address انسخ الرابط &Delete اح&ذف BookmarksToolbar &Bookmark Current Page &علم الصفحة الحالية Bookmark &All Tabs علم &كل الألسنة &Organize Bookmarks ن&ظم العلامات Show Most &Visited أظهر الأكثر &زيارةً Show Only Icons أظهر فقط الرموز &Hide Toolbar أخفِ ال&شريط Open bookmark افتح العلامة Open bookmark in new tab افتح العلامة في لسان جديد Move right انقلها لليسار Move left انقلها لليمين Edit bookmark عدل العلامة Remove bookmark احذف العلامة Edit bookmark: عدل العلامة: Title: العنوان: Url: الرابط: Edit Bookmark تعديل العلامة Most visited الأكثر زيارةً Sites you visited the most المواقع التي تُكثِر من زيارتها Empty فارغ BookmarksTree Bookmarks العلامات New Folder... مجلد جديد... BookmarksWidget Add to Speed Dial أضف إلى صفحة الوصول السريع Save احفظ Name: الاسم: Folder: المجلد: Remove from Speed Dial احذف من صفحة الوصول السريع Remove احذف BrowsingLibrary Library المكتبة Search... ابحث... History التأريخ Bookmarks العلامات RSS الخلاصات Database Optimized حُسنت قاعدة البيانات Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 تم تحسين قاعدة البيانات.<br><br><b>حجمها قبل التحسين: </b>%1<br><b>حجمها بعد التحسين: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>مُنحت لـِ:</br> Common Name (CN): الاسم الشائع (CN): Organization (O): المؤسسة (O): Organizational Unit (OU): الوحدة المؤسسية (OU): Serial Number: الرقم التسلسلي: <b>Issued By</b> <b>المانح</b> <b>Validity</b> <b>الصلاحية</b> Issued On: مُنحت يوم: Expires On: تنتهي يوم: ClearPrivateData Clear Recent History امسح التأريخ الحديث Choose what you want to delete: اختر ما تريد حذفه: Clear history امسح تأريخ التصفح Clear cache امسح الخبيئة Clear icons امسح الرموز <b>Clear Recent History</b> <b>مسح التأريخ الحديث</b> Earlier Today منذ بداية هذا اليوم Week من أسبوع إلى الآن Month من شهر إلى الآن All كلّه Clear web databases امسح قواعد بيانات الوِب Clear local storage امسح التخزين المحلي Clear cookies امسح الكعكات ClickToFlash Object blocked by ClickToFlash حظرت إضافة "انقر لتشغيل Flash" هذا العنصر Show more information about object أظهر معلومات أكثر عن هذا العنصر Delete object احذف العنصر Add %1 to whitelist أضف %1 إلى القائمة البيضاء Flash Object عنصر Flash <b>Attribute Name</b> <b>اسم الخصلة</b> <b>Value</b> <b>قيمتها</b> No more information available. لا معلومات أكثر. CookieManager Cookies الكعكات Stored Cookies الكعكات المخزنة Find: ابحث: These cookies are stored on your computer: هذه الكعكات مخزنة على حاسوبك: Server الخادوم Cookie name اسم الكعكة Name: الاسم: Value: القيمة: Server: الخادوم: Path: المسار: Secure: آمنة؟: Expiration: الانتهاء: <cookie not selected> لم تحدد كعكة Remove all cookies احذف كل الكعكات Remove cookies احذف كعكات Cookie Filtering ترشيح الكعكات <b>Cookie whitelist</b> <b>قائمة الكعكات البيضاء</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) ستٌقبل الكعكات من هذه الخواديم *دوماً* (حتى إن اخترت عدم تخزين الكعكات) Add أضف Remove احذف <b>Cookie blacklist</b> <b>قائمة الكعكات السوداء</b> Cookies from these servers will NEVER be accepted لن تقبل الكعكات من هذه الخواديم مهما يكن Settings الإعدادات <b>Cookie Settings</b> <b>إعدادات الكعكات</b> Allow storing of cookies اسمح بتخزين الكعكات Delete cookies on close احذف الكعكات عند إنهاء البرنامج Match domain exactly طابِق النطاق حرفيّا Filter tracking cookies امنع كعكات التعقب <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! <b>ملاحظة:</b> قد تؤدي مطابقة اسم النطاق حرفيّا ومنع كعكات التعقب إلى رفض بعض الكعكات من مواقع الوِب. إذا واجهتك مشكلات في الكعكات، جرب أولاً تعطيل هذين الخيارين! Search ابحث Confirmation تأكيد Are you sure to delete all cookies on your computer? أتريد حقّا أن تحذف الكعكات كلها من حاسوبك؟ Secure only الآمنة فقط All connections كل الاتصالات Session cookie كعكات الجلسة Remove cookie احذف الكعكة Add to whitelist أضف إلى القائمة البيضاء Add to blacklist أضف إلى القائمة السوداء DownloadFileHelper Save file as... احفظ الملف كـ... NoNameDownload تنزيل_بلا_اسم DownloadItem Remaining time unavailable لا يُعرف كم بقي Error: Cannot write to file! خطأ: لا يمكن الكتابة إلى الملف! Done - %1 تم - %1 Cancelled أُلغيَ few seconds بضع ثوانٍ %n seconds %n minutes %n hours Unknown speed لا تُعرف السرعة kB/s ك.ب/ثا MB/s م.ب/ثا GB/s ج.ب/ثا Unknown size لا يُعرف الحجم %2 - unknown size (%3) %2 - لا يُعرف الحجم (%3) Remaining %1 - %2 of %3 (%4) تبقى %1 - %2 من %3 (%4) Cancelled - %1 أُلغي - %1 Delete file احذف الملف Do you want to also delete dowloaded file? أتريد أن تحذف الملف المُنزل كذلك؟ Open File افتح الملف Open Folder افتح المجلد Go to Download Page اذهب إلى صفحة التنزيل Copy Download Link انسخ رابط التنزيل Cancel downloading ألغِ التنزيل Remove احذف Error خطأ Not found لم يُوجد Sorry, the file %1 was not found! آسف، لم يُوجد الملف %1! Error: الخطأ: DownloadManager Download Manager مدير التنزيل Clear امسح %1% of %2 files (%3) %4 remaining %1 من %2 (%3) - تبقى %4 %1% - Download Manager %1% مدير التنزيل Download Finished تم التنزيل All files have been successfully downloaded. تم تنزيل كل الملفات. Warning تحذير Are you sure to quit? All uncompleted downloads will be cancelled! أتريد حقّا أن تنهي البرنامج؟ ستُلغى كل التنزيلات غير التامة! DownloadOptionsDialog Opening يفتح Copy download link انسخ رابط التنزيل You have chosen to open اخترت أن تفتح which is a: وهو: What should QupZilla do with this file? ماذا تريد من كبزيلا أن يفعل بهذا الملف؟ Open... يفتحه... Save File يحفظه Download with External Manager ينزله ببرنامج تنزيل خارجي from: من: Opening %1 يفتح %1 Download link copied. نُسخَ رابط التنزيل. EditSearchEngine Name: الاسم: Url: الرابط: Shortcut: الاختصار: Icon: الرمز: <b>Note: </b>%s in url or post data represent searched string <b>ملاحظة: </b>تمثل %s في الرابط أو في بيانات POST العبارة التي يُبحث عنها Post Data: بيانات POST: Change... غير... FileSchemeReply No Error لا أخطاء Up to higher level directory إلى دليل أعلى درجة Show hidden files أظهر الملفات المخفية Name الاسم Size الحجم Last modified آخر تعديل Index for %1 فهرس %1 Folder is empty. المجلد فارغ. FtpDownloader Cancelled! أُلغي! FtpSchemeReply Up to higher level directory إلى دليل أعلى درجة Show hidden files أظهر الملفات المخفية Name الاسم Size الحجم Last modified آخر تعديل Index for %1 فهرس %1 Folder is empty. المجلد فارغ. Unknown command لا تُعرف السرعة HTML5PermissionsDialog HTML5 Permissions أذونات HTML5 Notifications التنبيهات Site الموقع Behaviour السلوك Remove احذف Geolocation الموقع الجغرافي Allow اسمح Deny امنع HTML5PermissionsNotification Remember تذكر Allow اسمح Deny امنع this site هذا الموقع Allow %1 to show desktop notifications? أتسمح لـ%1 أن يعرض التنبيهات على سطح المكتب؟ Allow %1 to locate your position? أتسمح لـ%1 أن يطلع على موقعك الجغرافي؟ History No Named Page صفحة بلا اسم January كانون الثاني/يناير February شباط/فبراير March آذار/مارس April نيسان/أبريل May أيار/مايو June حزيران/يونيو July تموز/يوليو August آب/أغسطس September أيلول/سبتمبر October تشرين الأول/أكتوبر November تشرين الثاني/نوفمبر December كانون الأول/ديسمبر HistoryManager History التأريخ Delete احذف Clear All History امسح كل التأريخ Optimize Database حسن قاعدة البيانات Confirmation تأكيد Are you sure to delete all history? أتريد حقّا أن تحذف التأريخ كله؟ HistoryModel Title العنوان Address الموقع Visit Date تاريخ الزيارة Visit Count عدد الزيارات Today اليوم This Week هذا الأسبوع This Month هذا الشهر HistorySideBar Search... ابحث... HistoryView Open link in current tab افتح الرابط في اللسان الحالي Open link in new tab افتح الرابط في لسان جديد Copy title انسخ العنوان Copy address انسخ الرابط Remove احذف IconChooser Choose icon... اختر رمزاً... From file من ملف Image (.png, .jpg, .jpeg, .gif) صورة (.png، .jpg، .jpeg، .gif) Choose file... اختر ملفّا... From database من قاعدة البيانات Site Url: رابط الموقع: Image files ملفات الصور JsOptions JavaScript Options خيارات جافاسكربت Allow JavaScript to: اسمح لجافاسكربت أن: Close windows تُغلق النوافذ Open popup windows تفتح نوافذ منبثقة Change window size تغير حجم النافذة Hide menu bar تُخفيَ شريط القائمة Hide status bar تُخفيَ شريط الحالة Hide tool bar تُخفيَ شريط الأدوات Access clipboard تصل إلى الحافظة LicenseViewer License Viewer عارض الرُخَص LocationBar Enter URL address or search on %1 أدخل رابطاً أو ابحث في %1 Paste And &Go ألصِق وا&ذهب Clear All امسح .co.uk Append domain name on ALT + Enter = Should be different for every country .sa Show information about this page أظهر معلومات عن هذه الصفحة LocationCompleterView Switch to tab انتقل إلى اللسان MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? ليس كَبزيلا متصفّحك المبدئي. أتريد جعله كذلك؟ Always perform this check when starting QupZilla. اعرض هذا السؤال عند بدء كَبزيلا في كل مرة يتغير فيها متصفحي المبدئي. Default Browser المتصفح المبدئي QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. كَبزيلا متصفح للوب جديد سريع وآمن ومفتوح المصدر. يُرخّص استخدامه وفق الإصدار الثالث من رخصة جنو العمومية (GPL) أو أي إصدار أحدث من ذلك (اختر كما تشاء). يُبنى كَبزيلا على محرك العرض WebKitوإطار العمل Qt. MasterPasswordDialog Encrypted DataBase Settings إعداد قاعدة البيانات المشفرة Set/Change Master Password... عين/غير كلمة المرور الرئيسة... Clear Master Password... امسح كلمة المرور الرئيسة... This backend does not work without a master password. لا يمكن لهذه النهاية الخلفية العمل بلا كلمة مرور رئيسة. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. يمسح هذا الخيار كلمة المرور الرئيسة وينقل كل البيانات المشفرة إلى قاعدة بيانات ذات محتوى نصي غير مشفر، ويضبط البرنامج لاستعمال هذه الأخيرة كنهاية خلفية. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. تُستعمل كلمة المرور الرئيسة في حماية كلمات المرور وبيانات النماذج في صفحات الوِب. إذا عينت كلمة مرور رئيسة سُيطلب إليك إدخالها مرة واحدة كل جلسة. Current Password: كلمة المرور الحالية: New Password: كلمة المرور الجديدة: Confirm Password: اكتبها ثانية: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. <b>ملاحظة:</b> لا يمكنك إعادة تعيين كلمة المرور الرئيسة، لذا عليك ألا تنساها. Warning! تحذير! You entered a wrong password! أدخلت كلمة مرور خاطئة! New/Confirm password fields do not match! كلمة المرور الجديدة لا تتطابق مع تأكيدك لها في حقل "اكتبها ثانية"! Some data has not been decrypted. The master password was not cleared! لم يُفك تشفير بعض البيانات، لذا لم تمسح كلمة المرور الرئيسة! Are you sure to clear master password and decrypt data? أتريد حقّا مسح كلمة المرور الرئيسة وفك تشفير البيانات؟ NavigationBar No Named Page صفحة بلا اسم Back للخلف Forward للأمام Home الصفحة الأولى New Tab لسان جديد Main Menu القائمة الرئيسة Exit Fullscreen اخرج من ملء الشاشة Clear history امسح التأريخ NetworkManager SSL Certificate Error! خطأ في شهادة SSL! The page you are trying to access has the following errors in the SSL certificate: في الصفحة التي تحاول الوصول إليها الأخطاء التالية في شهادة SSL: <b>Organization: </b> <b>المؤسسة: </b> <b>Domain Name: </b> <b>اسم النطاق: </b> <b>Expiration Date: </b> <b>تاريخ الانتهاء: </b> <b>Error: </b> <b>الخطأ: </b> Would you like to make an exception for this certificate? أتريد أن تستثني هذه الشهادة متجاوزاً تلك الأخطاء؟ Authorisation required يُشترط التفويض Username: اسم المستخدم: Password: كلمة المرور: Save username and password on this site احفظ اسم المستخدم وكلمة المرور لهذا الموقع A username and password are being requested by %1. The site says: "%2" يطلب %1 اسم مستخدم وكلمة مرور. يقول الموقع: "%2" FTP authorisation required يُشترط استيثاق FTP Login anonymously سجل الدخول كمجهول A username and password are being requested by %1:%2. يطلب اسم مستخدم وكلمة مرور. %1:%2. Proxy authorisation required يشترط استثياق الخادوم الوكيل Remember username and password for this proxy. تذكر اسم المستخدم وكلمة المرور إلى هذا الوكيل. A username and password are being requested by proxy %1. يطلب الخادوم الوكيل %1 اسم مستخدم وكلمة مرور. PageScreen Page Screen لقطة للصفحة Format: الصيغة: Location: الموقع: Browse... تصفح... Save as %1 احفظ كـ%1 Choose location... اختر موقعاً... File '%1' already exists. Do you want to overwrite it? في المسار الذي اخترته ملف يطابق اسمه الاسم الذي اخترته (%1). أتريد أن تكتب فوقه؟ File already exists ملف مُوجَد سابقاً PluginsList Application Extensions مُلحقات البرنامج Allow Application Extensions to be loaded اسمح بتحميل ملحقات البرنامج Settings الإعدادات WebKit Plugins إضافات WebKit <b>Click To Flash Plugin</b> <b>إضافة "انقر لتشغيل Flash"</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. "انقر لتشغيل Flash" إضافةٌ تمنع محتوى Flash من أن يُحمل تلقائياً، متيحةً لكَ تحميل ذاك المحتوى متى شئت بالنقر على رمز التشغيل ضمن Flash. Whitelist القائمة البيضاء Add أضف Remove احذف Allow Click To Flash اسمح بالنقر لتشغيل Flash PluginsManager Add site to whitelist أضف الموقع إلى القائمة البيضاء Server without http:// (ex. youtube.com) الخادوم بلا http:// (مثال: youtube.com) Error! خطأ! Cannot load extension! لا يمكن تحميل المُلحقة! PopupWebView Inspect Element افحص العنصر PopupWindow File ملف &Save Page As... اح&فظ الصفحة كـ... Save Page Screen احفظ الصفحة كصورة ملتقطة Send Link... أرسل الرابط... &Print... ا&طبع... Close أغلق Edit تحرير &Undo ت&راجع &Redo أ&عد &Cut &قص C&opy ا&نسخ &Paste أ&لصق Select All اختر الكل Find ابحث View عرض &Stop أو&قِف &Reload أعد الت&حميل Zoom &In &قرب Zoom &Out ب&عد Reset صفر &Page Source م&صدر الصفحة %1 - QupZilla %1 - كَبزيلا Preferences Preferences التفضيلات QupZilla كَبزيلا General العامّة Appearance المظهر Tabs الألسنة Browsing التصفح Fonts الخطوط Keyboard Shortcuts اختصارات لوحة المفاتيح Downloads التنزيلات Password Manager مُدير كلمات المرور Privacy الخصوصية Notifications التنبيهات Extensions المُلحقات Other غيرها Use current استخدم الحالية Note: You cannot delete active profile. ملاحظة: لا يمكنك حذف الحساب الحالي. Create New أنشئ واحداً جديداً Delete احذف <b>Launching</b> <b>البدء</b> After launch: بعد البدء: Open blank page افتح صفحة فارغة Open homepage افتح الصفحة الأولى Open speed dial افتح صفحة الوصول السريع Restore session استعد الجلسة السابقة Homepage: الصفحة الأولى: On new tab: عند فتح لسانٍ جديد: Open blank tab أظهر صفحة فارغة Open other page... أظهر صفحة أخرى... <b>Profiles</b> <b>الحسابات</b> Startup profile: الحساب المستخدم عند البدء: Check for updates on start التمس تحديثات البرنامج عند بدء التشغيل Active profile: الحساب النشِط: In order to change language, you must restart browser. يجب أن تعيد تشغيل المتصفح لتغيير لغة واجهته. <b>Language</b> <b>لغة واجهة المتصفح</b> Available translations: الترجمات المتوفرة: Don't load tabs until selected لا تبدأ تحميل محتوى اللسان حتى يُحدّد Check to see if QupZilla is the default browser on startup عند البدء، التمس إن كان كبزيلا المتصفح المبدئي Check Now التمس الآن Themes السّمات Advanced options خيارات متقدمة <b>Browser Window</b> <b>نافذة المتصفح</b> Show StatusBar on start أظهر شريط الحالة عند البدء Show Bookmarks ToolBar on start أظهر شريط العلامات عند البدء Show Navigation ToolBar on start أظهر شريط التصفح عند البدء <b>Navigation ToolBar</b> <b>شريط التصفح</b> Show Home button أظهر زر الصفحة الأولى Show Back / Forward buttons أظهر زِرّي "للأمام" و"للخلف" <b>Background<b/> <b>الخلفية</b> Use transparent background استخدم خلفية شافة Show web search bar أظهر شريط البحث في الوِب Show Add Tab button أظهر زر إضافة لسان جديد Show Reload / Stop buttons أظهر زِرّي إعادة التحميل والإيقاف Tabs behaviour سلوك الألسنة Show tab previews أظهر معاينات الألسنة Make tab previews animated اجعل معاينات الألسنة مُتحرّكة Hide tabs when there is only one tab أخفِ الألسنة إن لم يكن هناك أكثر من لسان Activate last tab when closing active tab اختر آخر لسان عند إغلاق اللسان النشط Open new tabs after active tab الألسنة الجديدة تُفتح جوار اللسان النشط Open new empty tabs after active tab الألسنة الفارغة تُفتح جوار اللسان النشط Automatically switch to newly opened tab انتقل إلى اللسان الجديد عند فتحه Don't quit upon closing last tab لا تُنه البرنامج عند إغلاق آخر لسان Ask when closing multiple tabs اسأل قبل إغلاق أكثر من لسان Closed tabs list instead of opened in tab bar أظهر قائمة بها الألسنة التي أغلقت بدل الألسنة المفتوحة في شريط الألسنة Address Bar behaviour سلوك شريط العناوين Suggest when typing into address bar: عند الكتابة في شريط العنوان، اقترح علي: History and Bookmarks علامات وصفحات من تأريخ التصفح History صفحات من تأريخ التصفح Bookmarks علامات Nothing لا شيء Press "Shift" to not switch the tab but load the url in the current tab. عند ضغط زر الإزاحة (Shift)، لا تنتقل إلى لسان جديد وإنما حمل الرابط ضمن اللسان الحالي. Propose to switch tab if completed url is already loaded. عند محاولة فتح رابط مُحمل ضمن لسان، اقترح الانتقال إلى اللسان الموافق بدل تحميل الرابط ثانيةً في لسان جديد. Always show go icon أظهر رمز الذهاب دوماً Select all text by double clicking in address bar اختر كل النص بالنقر المزدوج ضمن شريط العناوين Select all text by clicking in address bar اختر كل النص بالنقر المُفرد ضمن شريط العناوين Search with Default Engine ابحث بمحرك البحث المبدئي Show loading progress in address bar أظهر مقدار التقدم في تحميل الصفحة ضمن شريط العناوين Fill املأ Bottom أسفل Top أعلى Custom color: لون مُخصّص: Select color اختر لوناً ... ... Reset صفر Web Configuration ضبط الوِب Allow Netscape Plugins (Flash plugin) اسمح بإضافات نتسكيب (كإضافة Flash) Allow JavaScript اسمح بجافاسكربت Allow JAVA اسمح بجافا Allow DNS Prefetch اسمح بالتحميل الباكر لأسماء النطاقات (DNS) Enable XSS Auditing try to detect possible XSS attacks when executing javascript فعل فحص النصوص البرمجية العابرة للمواقع (XSS) Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements اطبع خلفية العنصر Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key ضمن الروابط في سلسلة الانتقالات لدى الانتقال بين العناصر باستخدام مفتاح Tab Animated scrolling تمرير مُتحرك Enable caret browsing فعل التصفح بمؤشر الكتابة Enable spatial navigation فعل التنقل المكاني Zoom text only قرب النًصوص فقط Mouse wheel scrolls مرر بعجلة الفأرة lines on page الأسطر في الصفحة Default zoom on pages: التقريب المبدئي في الصفحات: Local Storage التخزين المحلي Maximum الأقصى 50 MB 50 م.ب 1 1 Maximum pages in cache: أقصى عدد للصفحات في الخبيئة: Allow storing network cache on disk اسمح بتخزين خبيئة الشبكة على القرص Store cache in: احفظ الخبيئة في: Allow saving history اسمح بحفظ التأريخ Delete history on close امسح التأريخ عند إنهاء البرنامج Allow local storage of HTML5 web content اسمح بالتخزين المحلي لمحتوى HTML5 Delete locally stored HTML5 web content on close امسح محتويات تخزين HTML5 المحلي عند إنهاء البرنامج Delete now امسح الآن Proxy Configuration ضبط الخادوم الوكيل Proxy Auto-Config (.pac) file ملف ضبط الخادوم الوكيل التلقائي (.pac) Reload أعد التحميل HTTP HTTP SOCKS5 SOCKS5 Port: المنفذ: Username: اسم المستخدم: Password: كلمة المرور: Don't use on: لا تستخدمه في: Manual configuration ضبط يدوي System proxy configuration ضبط الخادوم الوكيل الذي يستخدمه النظام Do not use proxy لا تستخدم خادوماً وكيلاً <b>Exceptions</b> <b>الاستثناءات</b> Server: الخادوم: Use different proxy for https connection استخدم وكيلاً مختلفاً في اتصال HTTPS Use script for automatic configuration: استخدم نصّا برمجيّا للضبط التلقائي: <b>Font Families</b> <b>مجموعات الخطوط</b> Standard قياسي Fixed ثابت العرض Serif مُذيل Sans Serif غير مُذيل Cursive مخطوطات Fantasy خيالي <b>Font Sizes</b> <b>حجوم الخطوط</b> Fixed Font Size حجم الخط الثابت العرض Default Font Size حجم الخط المبدئي Minimum Font Size أدنى حجم للخط Minimum Logical Font Size أدنى حجم منطقي للخط <b>Shortcuts</b> <b>الاختصارات</b> Switch to tabs with Alt + number of tab انتقل إلى الألسنة باستخدام مفتاح Alt + مفتاح الرقم الموافق لرقم اللسان Load speed dials with Ctrl + number of speed dial افتح مُدخلات الوصول السريع باستخدام مفتاح التحكم (Ctrl) + مفتاح الرقم الموافق لرقم المُدخلة Add .co.uk domain by pressing ALT key in address bar أضف النطاق .sa عند ضغط مفتاح التناوب (ALT) ضمن شريط العنوان <b>Download Location</b> <b>مجلد التنزيل</b> Ask everytime for download location اسألني كل مرة أين يُحفظ التنزيل Use defined location: استخدم الموقع المحدد: <b>Download Options</b> <b>خيارات التنزيل</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) استخدم نافذة اختيار مكان الحفظ التي يقدمها نظام التشغيل (قد تسبب مشكلات في تحميل محتويات SSL آمنة) Close download manager when downloading finishes أغلق مدير التنزيل عند إتمام التنزيل <b>External download manager</b> <b>مدير التنزيل الخارجي</b> Use external download manager استخدم برنامجاً خارجيّا للتنزيل Executable: البرنامج: Arguments: المُبادلات: Leave blank if unsure اتركه فارغاً إن لم تكن متأكداً <b>%d</b> will be replaced with URL to be downloaded سيحل رابط التنزيل محل <b>%d</b> <b>AutoFill options</b> <b>خيارات الملء التلقائي</b> Allow saving passwords from sites اسمح بحفظ كلمات المرور من المواقع Send Referer header to servers أرسل ترويسة المَرجِع (Referer) إلى الخواديم <b>Cookies</b> <b>الكعكات</b> Send Do Not Track header to servers أرسل ترويسة "Do Not Track" للخواديم لإبلاغها أني لا أريدها أن تُتابعني <b>Other</b> <b>غيرها</b> Manage CA certificates أدر شهادات CA Certificate Manager مُدير الشهادات <b>SSL Certificates</b> <b>شهادات SSL</b> <b>JavaScript</b> <b>جافاسكربت</b> Manage JavaScript privacy options أدر خيارات خصوصية جافاسكربت JavaScript options خيارات جافاسكربت Cookies Manager مُدير الكعكات Manage Cookies أدر الكعكات <b>HTML5 Permissions</b> <b>أذونات HTML5</b> Manage HTML5 permissions أدر أذونات HTML5 HTML5 Permissions أذونات HTML5 <b>Notifications</b> <b>التنبيهات</b> Use OSD Notifications استخدم تنبيهات OSD Use Native System Notifications (Linux only) استخدم تنبيهات النظام الأصلية (في لينكس فقط) Do not use Notifications لا تعرض التنبيهات Expiration timeout: وقت انتهاء العرض: seconds ثا <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>ملاحظة: </b>بإمكانك تغيير موقع تنبيه OSD بتحريكه ضمن الشاشة. StyleSheet automatically loaded with all websites: ورقة أنماط تُحمل تلقائيّا لكل المواقع: Languages اللغات <b>Preferred language for web sites</b> <b>اللغات المفضلة للمواقع</b> <b>Change browser identification</b> <b>غير هوية المتصفح</b> User Agent Manager مُدير وكيل المستخدم Default المبدئي Set as default اجعله المبدئي OSD Notification تنبيه OSD Drag it on the screen to place it where you want. اسحبه ضمن الشاشة لتجعله أين شئت. Choose download location... اختر موقع التنزيل... Choose stylesheet location... اختر موقع ورقة الأنماط... Deleted حُذف Choose executable location... اختر موقع البرنامج... Choose cache path... اختر مسار الخبيئة... New Profile حساب جديد Enter the new profile's name: اكتب اسم الحساب الجديد: Error! خطأ! This profile already exists! يحمل حساب أنشئ سابقاً الاسم عينه! Cannot create profile directory! تعذر إنشاء مجلد الحساب! Confirmation تأكيد Are you sure to permanently delete "%1" profile? This action cannot be undone! أتريد حقّا أن تحذف الحساب "%1"؟ لا يمكنك التراجع عن هذا فيما بعد! Select Color اختر لوناً QObject Native System Notification تنبيه النظام الأصلي Save file as... احفظ الملف كـ... The file is not an OpenSearch 1.1 file. الملف ليس من نوع OpenSearch 1.1. <not set in certificate> <لم يعين في الشهادة> Unknown size لا يُعرف الحجم KB ك.ب MB م.ب GB ج.ب Executable: البرنامج: Arguments: المُبادلات: Cannot start external program تعذر بدء البرنامج الخارجي Cannot start external program! %1 تعذر بدء البرنامج الخارجي! %1 QtWin Open new tab افتح لساناً جديداً Opens a new tab if browser is running يفتح لساناً جديداً إذا كان المتصفح مفتوحاً Open new window افتح نافذة جديدة Opens a new window if browser is running يفتح نافذة جديدة إذا كان المتصفح مفتوحاً Open download manager افتح مدير التنزيل Opens a download manager if browser is running يفتح مدير التنزيل إذا كان المتصفح مفتوحاً QupZilla QupZilla كَبزيلا Private Browsing Enabled فُعل التصفح خفيًة IP Address of current page عنوان IP للصفحة الحالية &About QupZilla &حول كَبزيلا Pr&eferences التف&ضيلات Quit أنهِ &File &ملف &New Window نافذة &جديدة New Tab لسان جديد Open Location افتح موقعاً Open &File... افتح مل&فاً... Close Tab أغلق اللسان Close Window أغلق النافذة &Save Page As... اح&فظ الصفحة كـ... Save Page Screen احفظ الصفحة كصورة ملتقطة Send Link... أرسل الرابط... &Print... ا&طبع... Import bookmarks... استورد العلامات... &Edit &تحرير &Undo ت&راجع &Redo أ&عد &Cut &قص C&opy ا&نسخ &Paste أ&لصق Select &All اختر ال&كل &Find ا&بحث &View الع&رض &Navigation Toolbar شريط ال&تصفح &Bookmarks Toolbar شريط ال&علامات Sta&tus Bar شريط ال&حالة &Menu Bar شريط ال&قائمة &Tabs on Top الألسنة من &فوق &Fullscreen املأ ال&شاشة &Stop أو&قِف &Reload أعد الت&حميل Character &Encoding تر&ميز المحارف Enable &Caret Browsing فعل التصفح بمؤشر الك&تابة Toolbars أشرطة الأدوات Sidebars الأشرطة الجانبية Zoom &In &قرب Zoom &Out ب&عد Reset صفر &Page Source م&صدر الصفحة Hi&story التأري&خ &Back لل&خلف &Forward للأ&مام &Home الصفحة الأ&ولى Show &All History أ&ظهر كل التأريخ Closed Tabs الألسنة المغلقة Recently Visited زرتَها مؤخراً Most Visited الأكثر زيارة &Bookmarks ال&علامات Bookmark &This Page عل&م هذه الصفحة Bookmark &All Tabs علم &كل الألسنة Organize &Bookmarks ن&ظم العلامات &Tools الأ&دوات &Web Search بحث ال&وِب Page &Info معلومات ال&صفحة &Download Manager مدير الت&نزيل &Cookies Manager مدير ال&كعكات &AdBlock أ&دبلوك RSS &Reader قارئ ال&خلاصات Web In&spector &فاحص الوب Clear Recent &History ام&سح التأريخ الحديث New &Private Window نافذة &خفية جديدة &Help مساعد&ة About &Qt حول &Qt Information about application معلومات عن البرنامج Configuration Information معلومات الضبط Report &Issue أبلغ عن م&شكلة Restore &Closed Tab استعد اللسان المُغل&ق (Private Browsing) (التصفح خِفية) Empty فارغ Restore All Closed Tabs استعد كل الألسنة المغلقة Clear list امسح القائمة Other غيرها %1 - QupZilla %1 - كَبزيلا HTML files ملفات HTML Image files ملفات صور Text files ملفات نَصية All files كل الملفات Open file... افتح ملفّا... QupZilla %1 (%2) كَبزيلا %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? فتحت ألسنة (%1) واخترت ألا تخزن جلستك. أتريد حقّا أن تُنهيَ كَبزيلا؟ Don't ask again لا تسألني ثانيةً There are still open tabs ألسنة مفتوحة QupZillaSchemeReply No Error لا أخطاء Not Found لم يُوجد Report Issue أبلغ عن مشكلة If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: إن واجهتك مشكلات في كَبزيلا، جرب أولاً أن تعطل كل المُلحقات.<br/>إن لم تُحل المشكلة بهذا، فاملأ هذا النموذج: Your E-mail بريدك الإلكتروني Issue type نوع المشكلة Issue description وصف المشكلة Send أرسل E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. بإمكانك ألا تكتب البريد الإلكتروني.<br/><b>ملاحظة: </b>رجاء اقرأ <a href=%1>كيف تُنشئ تقريراً للإبلاغ عن علة</a> أولاً. Please fill out all required fields! رجاء إملأ كل الحقول المطلوبة! Start Page صفحة البدء Search on Web ابحث في الوِب Search results provided by DuckDuckGo يوفر DuckDuckGo نتائج البحث About QupZilla حول كَبزيلا <h1>Private Browsing</h1> <h1>التصفح خِفية</h1> Information about version معلومات عن الإصدار Copyright حقوق النسخ Version الإصدار WebKit version إصدار WebKit Main developer المطور الأساسي Contributors المُساهمون Translators المُترجمون Speed Dial الوصول السريع Add New Page أضف صفحة جديدة Edit عدل Remove احذف Reload أعد التحميل Are you sure to remove this speed dial? أتريد حقّا أن تحذف هذه المُدخلة من الوصول السريع؟ Load title from page حمل العنوان من الصفحة Url الرابط Title العنوان Apply طبق Close أغلق New Page صفحة جديدة Speed Dial settings إعدادات الوصول السريع Placement: الموضع: Auto تلقائي Cover الغلاف Fit مناسب Fit Width مناسب العرض Fit Height مناسب الارتفاع Use background image استخدم صورة في الخلفية Select image اختر صورة Maximum pages in a row: أقصى عدد للصفحات في سطر: Change size of pages: غير حجم الصفحات: Center speed dials وسط مُدخلات الوصول السريع Restore Session استعد الجلسة Oops, QupZilla crashed. آسف، توقف كَبزيلا عن العمل. We apologize for this. Would you like to restore the last saved state? نعتذر إليك عن هذا. أتريد أن تستعيد آخر حالة حُفظت؟ Try removing one or more tabs that you think cause troubles جرب أن تحذف لساناً أو أكثر تعتقد أنها قد سببت المشكلة Or you can start completely new session أو ابدأ جلسة جديدة إن شئت Configuration Information معلومات الضبط This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. تحتوي هذه الصفحة معلومات عن ضبط كبزيلا الحالي - معلوماتٍ مفيدة لحل المشكلات. رجاءً أرفق هذه المعلومات عندما ترسل تقريراً بعلة. Browser Identification هوية المتصفح Paths المسارات Build Configuration ضبط البناء Preferences التفضيلات Option الخيار Value القيمة Extensions الملحقات Name الاسم Author المؤلف Description الوصف Application version إصدار البرنامج Qt version إصدار Qt Build time زمن البناء Platform البيئة Profile الحساب Settings الإعدادات Saved session الجلسة المحفوظة Pinned tabs الألسنة المثبتة Data البيانات Themes السمات Translations الترجمات Disabled معطل <b>Enabled</b> <b>مفعل</b> Debug build بناء إصلاح العلل WebGL support دعم WebGL Windows 7 API واجهة Windows 7 البرمجية KDE integration الاندماج بكدي Portable build بناء محمول No available extensions. لا ملحقات متوفرة. RSSManager RSS Reader قارئ الخلاصات Empty فارغ Add feed أضف خلاصة Edit feed عدل الخلاصة Delete feed احذف الخلاصة Optimize Database حسّن قاعدة البيانات Reload أعد التحميل News الأخبار Loading... يحمل... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. ليس لديك أية خلاصات RSS.<br/> أضف خلاصاتك باستخدام رمز RSS الذي يظهر في شريط التصفح في المواقع التي تقدم الخلاصات. Add new feed أضف خلاصة جديدة Please enter URL of new feed: رجاء أدخل رابط الخلاصة الجديدة: New feed خلاصة جديدة Fill title and URL of a feed: املأ عنوان الخلاصة ورابطها: Feed title: عنوان الخلاصة: Feed URL: رابط الخلاصة: Edit RSS Feed عدل خلاصة RSS Open link in current tab افتح الرابط في اللسان الحالي Open link in new tab افتح الرابط في لسان جديد Error in fetching feed وقع خطأ أثناء جلب الخلاصة RSS feed duplicated خلاصة RSS مُكررة You already have this feed. أضفت هذه الخلاصة من قبل. RSSNotification Add this feed into ضع هذه الخلاصة في Add أضف RSS feed <b>"%1"</b> خلاصة RSS <b>"%1"</b> Internal Reader القارئ الداخلي Other... غيره... Liferea not running لايفريا ليس مفتوحاً Liferea must be running in order to add new feed. يجب أن يكون لايفريا مفتوحاً لإضافة خلاصة جديدة إليه. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. لإضافة هذه الخلاصة إلى برنامج آخر، رجاء استخدم هذه المعلومات:<br/><br/><b>العنوان: </b>%1<br/><b>الرابط: </b>%2<br/><br/>نُسخ رابط هذه الخلاصة إلى الحافظة. Add feed into other application أضف هذه الخلاصة إلى برنامج آخر RSSWidget Add RSS Feeds from this site أضف خلاصات RSS من هذا الموقع Untitled feed خلاصة غير مُعنونة Add أضف RecoveryWidget Start New Session ابدأ جلسة جديدة Restore استعد Window %1 نافذة %1 RegisterQAppAssociation Warning! تحذير! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) وقعت بعض المشكلات. أعد تثبيت كَبزيلا. قد يحل المشكلةَ تشغيل كَبزيلا ثانية بصلاحيات المدير! ;) RssIcon Add RSS from this page... أضف خلاصة RSS من هذه الصفحة... SSLManager Certificate Manager مُدير الشهادات CA Authorities Certificates شهادات سلطات CA Show info أظهر المعلومات This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. هذه قائمة بشهادات سلطات CA المخزنة في مسار النظام القياسي وفي المسارات المحددة من المستخدم. Local Certificates الشهادات المحلية Import استورد Remove احذف This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. هذه قائمة بالشهادات المحلية المخزنة في حساب مُستخدمك. وتضم كذلك كل الشهادات التي استثنيتها. Settings الإعدادات Add أضف If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. إن لم تُحمل شهادات سلطات CA تلقائيّا من النظام، يمكنك تحديد مساراتها يدويّا. <b>NOTE:</b> Setting this option is a high security risk! <b>ملاحظة: </b>تفعيل هذا الخيار خطير جداً من الناحية الأمنية! Ignore all SSL Warnings تجاهل كل تحذيرات SSL All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. يجب أن تُلحَق أسماء ملفات الشهادات باللاحقة .crt. ضروريّ أن تعيد تشغيل كَبزيلا لاعتبار التغييرات المُجراة بعد إضافة مسار الشهادات أو حذفه. Choose path... اختر مساراً... Import certificate... استورد شهادة... Certificate Informations معلومات الشهادة SearchEnginesDialog Manage Search Engines أدر مُحركات البحث Add... أضف... Remove احذف Edit عدّل Set as default اجعله المبدئي Up أعلى Down أسفل Search Engine محرك البحث Shortcut الاختصار Defaults المبدئية Add Search Engine أضف محرك البحث Remove Engine احذف محرك البحث You can't remove the default search engine.<br>Set a different engine as default before removing %1. ليس بإمكانك حذف محرك البحث المبدئي.<br>اجعل المبدئي محركاً آخر قبل حذف %1. Edit Search Engine عدل محرك البحث SearchEnginesManager Search Engine Added أُضيفَ محرك البحث Search Engine "%1" has been successfully added. نجحت إضافة محرك البحث "%1". Search Engine is not valid! محرك البحث غير صالح! Error خطأ Error while adding Search Engine <br><b>Error Message: </b> %1 وقع خطأ عند إضافة محرك البحث.<br><b>رسالة الخطأ: </b>%1 SearchToolBar No results found. لم تُوجَد نتائج. SearchToolbar Search: ابحث: Search... ابحث... Highlight أبرز Case sensitive حساس لحالة الحروف SideBar Bookmarks العلامات History التأريخ SiteInfo Site Info معلومات الموقع General العامّة Media الصور والصوت والفيديو Databases قواعد البيانات Security الأمان Size: الحجم: Site address: عنوان الموقع: Encoding: الترميز: Meta tags of site: وسوم meta للموقع: Tag الوسم Value قيمته <b>Security information</b> <b>معلومات الأمان</b> Details التفاصيل Image الصورة Image address عنوان الصورة <b>Preview</b> <b>معاينة</b> <b>Database details</b> <b>تفاصيل قاعدة البيانات</b> Name: الاسم: Path: المسار: <database not selected> <لم تختر قاعدة بيانات> <not set in certificate> <لم يعين في الشهادة> No databases are used by this page. لا تستخدم هذه الصفحة قواعد بيانات. <b>Connection is Encrypted.</b> <b>الاتصال مشفر.</b> <b>Your connection to this page is secured with this certificate: </b> <b>تؤمن هذه الشهادة اتصالك بهذه الصفحة: </b> <b>Connection Not Encrypted.</b> <b>الاتصال غير مشفر.</b> <b>Your connection to this page is not secured!</b> <b>اتصالك بهذه الصفحة غير مؤمن!</b> Copy Image Location انسخ مكان الصورة Copy Image Name انسخ اسم الصورة Save Image to Disk احفظ الصورة في القرص Error! خطأ! This preview is not available! لا تتوفر المعاينة! Save image... احفظ الصورة... Cannot write to file! تعذرت الكتابة إلى الملف! Preview not available لا معاينة SiteInfoWidget More... المزيد... Your connection to this site is <b>secured</b>. اتصالك بهذا الموقع <b>مُؤمّن</b>. Your connection to this site is <b>unsecured</b>. اتصالك بهذا الموقع <b>غير مُؤمّن</b>. This is your <b>%1</b> visit of this site. هذه زيارتك الـ<b>%1</b> لهذا الموقع. You have <b>never</b> visited this site before. <b>لم تزر</b> هذا الموقع من قبل. first أولى second ثانية third ثالثة SourceViewer Source of مصدر File الملف Load in page حمل في الصفحة Save as... احفظ كـ... Close أغلق Edit تحرير Undo تراجع Redo أعد Cut قص Copy انسخ Paste ألصق Select All اختر الكل Find ابحث Go to Line... اذهب إلى سطر... View عرض Reload أعد التحميل Editable يمكن تعديله Word Wrap لف الكلمات Source loaded in page حُمل المصدر في الصفحة Cannot load in page. Page has been closed. تعذر التحميل في الصفحة إذ أغلقت. Save file... احفظ الملف... Error! خطأ! Cannot write to file! تعذرت الكتابة إلى الملف! Error writing to file وقع خطأ أثناء الكتابة إلى الملف Source successfully saved نجح حفظ المصدر Source reloaded أُعيد تحميل المصدر Cannot reload source. Page has been closed. لا يمكن إعادة تحميل المصدر إذ أغلقت الصفحة. Editable changed تغيرت إمكانية التعديل Word Wrap changed تغير لف الكلمات Enter line number أدخل رقم السطر SourceViewerSearch Search: ابحث: Search... ابحث... Whole words الكلمات كاملةً SpeedDial Image files ملفات صور Select image... اختر صورة... Unable to load تعذر التحميل SpellCheckDialog SpellCheck تدقيق الإملاء <b>Dictionary path</b> <b>مسار القاموس</b> Change... غير... <b>User dictionary</b> <b>قاموس المستخدم</b> Add أضف Remove احذف Using Hunspell library يستخدم مكتبة هَنسبِل Choose dictionary path... اختر مسار القاموس... Add new word... أضف كلمة جديدة... Add new word: أضف كلمة جديدة: Speller No suggestions لا مُقترحات Add to dictionary أضف إلى القاموس Settings الإعدادات SqueezeLabelV2 Copy انسخ SslErrorDialog SSL Certificate Error! خطأ في شهادة SSL! Only for this session في هذه الجلسة فقط TabBar &New tab لسان &جديد &Stop Tab أو&قف اللسان &Reload Tab أعد ت&حميل اللسان &Duplicate Tab &كرر اللسان D&etach Tab اف&صل اللسان Un&pin Tab أ&فلت اللسان &Pin Tab ث&بت اللسان Re&load All Tabs أعد تحميل كل الأل&سنة &Bookmark This Tab &علم هذا اللسان Bookmark &All Tabs علم &كل الألسنة Close Ot&her Tabs أغلق الألسنة الأ&خرى Cl&ose أ&غلق Reloa&d All Tabs أعد تحميل كل الأل&سنة Restore &Closed Tab استعد اللسان المُغل&ق Close Tabs أغلق الألسنة Do you really want to close other tabs? أتريد حقاً إغلاق الألسنة الأخرى؟ TabWidget New Tab لسان جديد List of tabs قائمة الألسنة Loading... يحمل... No Named Page صفحة بلا hsl Currently you have %1 opened tabs الألسنة المفتوحة حاليّا: %1 New tab لسان جديد Empty فارغ Restore All Closed Tabs استعد كل الألسنة المغلقة Clear list امسح القائمة TabbedWebView Loading... يحمل... %1 - QupZilla %1 - كَبزيلا Inspect Element افحص العنصر ThemeManager <b>Name:</b> <b>الاسم:</b> <b>Author:</b> <b>المؤلف:</b> <b>Description:</b> <b>الوصف:</b> License الرخصة ToolButton Stop أوقف Reload أعد التحميل Updater Update available يتوفر تحديث New version of QupZilla is ready to download. صدر إصدار جديد من كَبزيلا وهو جاهز للتحميل. Update حدث UserAgentDialog User Agent Manager مُدير وكيل المستخدم Change global User Agent غير وكيل المستخدم العام Use different User Agents for specified sites استخدم وكيلاً مختلفاً لكل موقع أحدده أدناه Site الموقع User Agent وكيل المستخدم Add أضف Remove احذف Edit عدّل Add new site أضف موقعاً جديداً Edit site عدل الموقع Site domain: نطاق الموقع: User Agent: وكيل المستخدم: WebInspectorDockWidget Web Inspector فاحص الوِب WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? يتعذر على كبزيلا تولي التعامل مع روابط <b>%1:</b>. نوع الرابط الذي طلبته <ul><li>%2</li></ul>فهل تريد من كَبزيلا محاولة فتح هذا الرابط ببرنامج في النظام؟ Remember my choice for this protocol تذكر ما اخترته لهذا البروتوكول External Protocol Request طلب بروتوكول خارجي To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) لعرض هذه الصفحة على كَبزيلا أن يرسل الطلب إلى الصفحة التي توصلك إليها ثانية. (مثلاً: بحث أجريته من قبل أثناء التسوق.) Confirm form resubmission أكد إعادة إرسال النموذج Select files to upload... اختر الملفات التي ستُرفع... Server refused the connection رفض الخادوم الاتصال Server closed the connection أغلق الخادوم الاتصال Server not found لم يُوجد الخادوم Connection timed out نفد وقت الاتصال Untrusted connection اتصال لا يُوثق به Temporary network failure عطل مؤقت في الشبكة Proxy connection refused رُفض اتصال الخادوم الوكيل Proxy server not found لم يوجد الخادوم الوكيل Proxy connection timed out نفد وقت الاتصال بالخادوم الوكيل Proxy authentication required يُشترط استيثاق الخادوم الوكيل Content not found لم يوجد المحتوى Unknown network error خطأ في الشبكة غير معروف AdBlocked Content محتوى يحظره أدبلوك Blocked by <i>%1</i> حظره <i>%1</i> Content Access Denied لا يُسمح بالوصول إلى المحتوى Error code %1 رمز الخطأ %1 Failed loading page فشلَ تحميل الصفحة QupZilla can't load page. لا يستطيع كَبزيلا تحميل الصفحة. QupZilla can't load page from %1. لا يستطيع كَبزيلا تحميل الصفحة من %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com افحص العنوان وتأكد من أنك لم تُخطئ في كتابته من مثل <b>ww.</b>example.com بدل <b>www.</b>example.com If you are unable to load any pages, check your computer's network connection. إن لم تستطع فتح أي صفحة، فعليك فحص اتصال حاسوبك بالشبكة. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. إن كان جدار ناري أو خادوم وكيل يحميان حاسوبك؛ فتأكد أنهما يسمحان لكَبزيلا بالوصول إلى الوِب. Try Again حاول ثانية JavaScript alert تنبيه من جافاسكربت Prevent this page from creating additional dialogs امنع هذه الصفحة من إنشاء حوارات بعد هذا Choose file... اختر ملفّا... Cannot read data from <b>%1</b>. Upload was cancelled! تعذرت قراءة البيانات من <b>%1</b>. أُلغيَ الرفع! Cannot read file! تعذرت قراءة الملف! WebSearchBar Manage Search Engines أدر محركات البحث Add %1 ... أضف %1... Paste And &Search ألصق وا&بحث Clear All امسح Show suggestions أظهر الاقتراحات Search when engine changed ابحث عندما أُغير المحرك WebView No Named Page صفحة بلا اسم Create Search Engine أنشئ محرك بحث Cut قص Copy انسخ Paste ألصق Select All اختر الكل Default المبدئي Left to Right من اليسار إلى اليمين Right to Left من اليمين إلى اليسار Bold عريض Italic مائل Underline مُسطر &Reload أعد الت&حميل S&top أو&قِف Delete احذف &Back لل&خلف &Forward للأ&مام This frame هذا الإطار Show &only this frame أظهر هذا الإطار &فقط Show this frame in new &tab أظهر هذا الإطار في &لسان جديد Print frame اطبع الإطار Zoom &in &قرب &Zoom out ب&عد Reset صفر Show so&urce of frame أظهر م&صدر هذا الإطار Book&mark page &علم الصفحة &Save page as... ا&حفظ الصفحة كـ... &Copy page link انسخ &رابط الصفحة Send page link... أرسل رابط الصفحة... &Print page ا&طبع الصفحة Select &all اختر ال&كل Validate page تحقق من صلاحية الصفحة Show so&urce code أظهر الشفرة الم&صدرية Show info ab&out site أظهر &معلومات عن هذا الموقع Open link in new &tab افتح الرابط في لسان &جديد Open link in new &window افتح الرابط في &نافذة جديدة B&ookmark link ع&لم الرابط &Save link as... اح&فظ الرابط كـ... Send link... أرسل الرابط... &Copy link address ان&سخ الرابط Show i&mage أظهر ال&صورة Copy im&age انسخ الص&ورة Copy image ad&dress انسخ رابط الصور&ة &Save image as... احفظ ا&لصورة كـ... Send image... أرسل الصورة... Send text... أرسل النص... Google Translate ترجمة Google Dictionary القاموس Go to &web address اذهب إلى عنوان الوي&ب Search "%1 .." with %2 ابحث عن "%1..." مستخدماً %2 Search with... ابحث باستخدام... &Play &شغل &Pause أ&لبث Un&mute شغل ال&صوت &Mute ا&كتم الصوت &Copy Media Address انسخ رابط هذا الص&وت/الفيديو &Send Media Address أر&سل هذا الصوت/الفيديو Save Media To &Disk احفظ هذا الصوت/الفيديو إلى ال&قرص Check &Spelling دقق الإ&ملاء Languages اللغات jsAlert Prevent this page from creating additional dialogs امنع هذه الصفحة من إنشاء حوارات بعد هذا qupzilla-1.6.0/translations/bg_BG.ts000066400000000000000000011371061226107126500174230ustar00rootroot00000000000000 AboutDialog About QupZilla За QupZilla Authors Автори Authors and Contributors Автори и Участници < About QupZilla < За QupZilla <p><b>Application version %1</b><br/> <p><b>Версия на програмата %1</b><br/> <b>WebKit version %1</b></p> <b>Webkit версия %1</b></p> <small>Build time: %1 </small></p> <small>Дата на компилиране: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Главен разработчик:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Разработчици:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Преводачи:</b><br/>%1</p> AcceptLanguage Preferred Languages Предпочитани езици Add... Добавяне... Remove Премахване Up Нагоре Down Надолу Personal [%1] Лични [%1] AdBlockAddSubscriptionDialog Add Subscription Добавяне на абонамент Title: Заглавие: Address: Адрес: Add new subscription to AdBlock: Добавяне на нов абонамент в AdBlock: AdBlockCustomList Custom Rules Собствени правила AdBlockDialog AdBlock Configuration Настройки на AdBlock Enable AdBlock Включване на AdBlock Search... Търсене... Options Опции AdBlock AdBlock Use only essential part of EasyList (for performance reasons) Add Rule Добавяне на правило Remove Rule Премахване на правило Add Subscription Добавяне на абонамент Remove Subscription Премахване на абонамент Update Subscriptions Обновяване на абонаменти Learn about writing rules... Научаване повече за написването на правила... AdBlockIcon AdBlock lets you block unwanted content on web pages AdBlock ви позволява да блокирате нежелано съдържание на уеб страници Blocked popup window Блокиране изскачащи прозорци AdBlock blocked unwanted popup window. AdBlock блокира нежелан изскачащ прозорец. AdBlock AdBlock Show AdBlock &Settings Показване настройките на &AdBlock Disable on %1 Изключване на %1 Disable only on this page Изключване само на тази страница Blocked Popup Windows Блокирани изскачащи прозорци %1 with (%2) %1 от (%2) No content blocked Няма блокирани елементи Blocked URL (AdBlock Rule) - click to edit rule Правила и блокирани адреси — кликване за редактиране на правило AdBlockManager Do you want to add <b>%1</b> subscription? Да се добави ли абонамент <b>%1</b>? AdBlock Subscription AdBlock абонамент EasyList EasyList AdBlockTreeWidget Add Rule Добавяне на правило Remove Rule Премахване на правило Add Custom Rule Добавяне на собствено правило Please write your rule here: Моля, напишете свое правило тук: %1 (recently updated) %1 (наскоро обновено) AddAcceptLanguage Add Language Добавяне на език Choose preferred language for web sites Избор на предпочитан език за уеб сайтове Personal definition: Лично определение: AesInterface Warning! Внимание! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. Данните са криптирани с по-нова версия на QupZilla. Моля инсталирайте последната версия на QupZilla. AutoFill Database (plaintext) База данни (текст) Database (encrypted) База данни (кодирано) Enter Master Password Въвеждане на главна парола Permission is required, please enter Master Password: Изисква се разрешение, моля въведете главна парола: Warning! Внимание! Entered password is wrong! Въведената парола е грешна! This backend needs a master password to be set! QupZilla just switches to its default backend AutoFillManager Passwords are stored in: Паролите са запазени в: Change backend Backend options Passwords Пароли Server Сървър Username Потребителско име Password Парола Import/Export Внасяне/Изнасяне Show Passwords Показване на паролите Edit Редактиране Remove Премахване Remove All Премахване на всички Exceptions Изключения Import Passwords from File... Внасяне на пароли от файл... Export Passwords to File... Запис на пароли във файл... Search Търсене Change backend... Change backend: Are you sure that you want to show all passwords? Сигурни ли сте, че искате да покажете всички пароли? Hide Passwords Скриване на пароли Confirmation Потвърждение Are you sure to delete all passwords on your computer? Сигурни ли сте, че искате да изтриете всички пароли от компютъра си? Edit password Редактиране на парола Change password: Промяна на парола: Choose file... Избор на файл... Cannot read file! Невъзможно е прочитането на файла! Successfully imported Внасянето е успешно Error while importing! Грешка при внасяне! Cannot write to file! Невъзможно е записване във файл! Successfully exported Изнасянето е успешно AutoFillNotification Update Обновяване Remember Запомняне Never For This Site Никога за този сайт Not Now Не сега on %1 на %1 for <b>%1</b> за <b>%1</b> Do you want QupZilla to update saved password %1? Искате ли, QupZilla да обнови запазената парола %1? Do you want QupZilla to remember the password %1 %2? Искате ли, QupZilla да запомни паролата %1 %2? AutoFillWidget Choose username to login Избор на потребителско име за вход Login Влизане Login as <b>%1</b> Влизане като <b>%1</b> BookmarkIcon Bookmark this Page Добавяне на тази страница в Отметки Edit this bookmark Редактиране на тази отметка BookmarksImportDialog Import Bookmarks Внасяне на отметки <b>Import Bookmarks</b> <b>Внасяне на отметки</b> From File От Файл Internet Explorer Choose browser from which you want to import bookmarks: Избор на браузър, от който искате да внесете отметки: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Забележка:</b> За сега е възможно внасяне само от HTML файл, или на папки с отметки. Choose... Избор... Try to fetch icons for all bookmarks (may take a while) Fetching icons, please wait... Извличане на иконки, моля, почакайте... Title Заглавие Url Адрес Next Напред Cancel Отмяна <b>Importing from %1</b> <b>Внасяне от %1</b> Finish Завършване Please press Finish to complete importing process. Моля, натиснете "Завършване" за да приключите внасянето. Error! Грешка! The file doesn't contain any bookmark. Този файл не съдържа отметки. Choose directory... Избор на папка... Choose file... Избор на файл... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox съхранява отметките си в SQLite база данни <b>places.sqlite</b>. Този файл обикновено се намира в Please choose this file to begin importing bookmarks. Моля, изберете този файл, за да започне внасяне на отметки. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Google Chrome съхранява отметки в текстов файл <b>Bookmarks</b>. Този файл обикновено се намира в Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera съхранява своите отметки във текстов файл <b>bookmarks.adr</b> . Този файл обикновено се намира в You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Може да внасяте отметки от всеки браузър, който поддържа HTML експортиране.Този файл обикновено има тези „разширения“ Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Explorer съхранява отметките си в папка <b>Favorites</b>. Тази папка обикновено се намира в Please choose this folder to begin importing bookmarks. Моля, изберете тази папка, за да започне внасяне. No Error Няма грешка Unable to open file. Невъзможно е отварянето на файла. Cannot evaluate JSON code. Невъзможно е изпълнението на JSON код. File does not exist. Файлът не съществува. Unable to open database. Is Firefox running? Невъзможно е отваряне на базата данни. Пуснат ли е Firefox? Directory does not exist. The directory does not contain any bookmarks. BookmarksManager Bookmarks Отметки Optimize Database Оптимизиране на базата данни Import Bookmarks Внасяне на отметки Add Folder Добавяне на папка Title Заглавие Url Адрес Expand All Разгръщане на всички Collapse All Прибиране на всички Add new folder Добавяне на нова папка Choose parent folder for new folder: Избор на главна директория за нова папка: Choose name for new bookmark folder: Избор на име за нова папка с отметки: Add new subfolder Добавяне нова подпапка Choose name for new subfolder in bookmarks toolbar: Избор име за нова подпапка в лентата с отметки: Rename Folder Преименуване на папка Choose name for folder: Избор на име за папка: Add Subfolder Добавяне на подпапка Rename folder Преименуване на папка Remove folder Премахване на папка Open link in current &tab &Отваряне на връзката в този подпрозорец Open link in &new tab Отваряне на връзката в &нов подпрозорец Move bookmark to &folder Преместване на отметката в &папка Change icon Промяна на иконка Rename bookmark Преименуване на отметката Remove bookmark Премахване на отметката <b>Warning: </b>You already have bookmarked this page! <b>Внимание: </b>Вие вече сте добавили тази страница в отметки! Choose name and location of this bookmark. Избор на име и папка за тази отметка. Add New Bookmark Добавяне на нова отметка Choose folder for bookmarks: Избор на папка за отметки: Bookmark All Tabs Отмятане на всички отворени подпрозорци BookmarksModel Bookmarks In Menu Отметки в менюто Bookmarks In ToolBar Отметки в лентата Unsorted Bookmarks Несортирани отметки BookmarksSideBar Search... Търсене... Open link in current &tab Отваряне на връзката в &този подпрозорец Open link in &new tab Отваряне на връзката в &нов подпрозорец Copy address Копиране на адрес &Delete &Изтриване BookmarksToolbar &Bookmark Current Page &Добавяне на тази страница към отметки Bookmark &All Tabs Добавяне на &всички отворени подпрозорци към отметки &Organize Bookmarks &Управление на Отметките Show Most &Visited Показване само на н&ай-посещаваните Show Only Icons Показване само на иконки &Hide Toolbar &Скриване на лентата Open bookmark Отваряне на отметката Open bookmark in new tab Отваряне на отметката в нов подпрозорец Move right Преместване в дясно Move left Преместване в ляво Edit bookmark Редактиране на отметката Remove bookmark Премахване на отметката Edit bookmark: Редактиране на отметката: Title: Заглавие: Url: Адрес: Edit Bookmark Редактиране на Отметката Most visited Най-посещавани Sites you visited the most Най-посещавани от Вас сайтове Empty Празно BookmarksTree Bookmarks Отметки New Folder... Нова папка... BookmarksWidget Add to Speed Dial Добавяне към страницата за бърз достъп Save Запазване Name: Име: Folder: Папка: Remove from Speed Dial Премахване от страницата за бърз достъп Remove Премахване BrowsingLibrary Library Библиотека Search... Търсене... History История Bookmarks Отметки RSS RSS Database Optimized Оптимизиране на Базата данни Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 базата данни е успешно оптимизирана.<br/><br/><b>Размер преди: </b>%1<br/><b>Размер сега: </b>%2 CertificateInfoWidget <b>Issued To</b> Common Name (CN): Име (И): Organization (O): Организация (О): Organizational Unit (OU): Подразделение (П): Serial Number: Сериен номер: <b>Issued By</b> <b>Validity</b> <b>Валидност</b> Issued On: Публикуван на: Expires On: Изтича на: ClearPrivateData Clear Recent History Изчистване на скорошната история Choose what you want to delete: Избор на това, което желаете да изтриете: Clear history Изчистване на историята Clear cache Изчистване на кеша Clear icons Изтриване на иконки <b>Clear Recent History</b> <b>Изчистване на скорошната история</b> Earlier Today По-рано днес Week Тази седмицата Month Този месец All Всичко Clear web databases Изчистване мрежовата бази данни Clear local storage Изчистване на локалното хранилище Clear cookies Изчистване на бисквитките ClickToFlash Object blocked by ClickToFlash Обектът е блокиран от ClickToFlash Show more information about object Показване на повече информация за обекта Delete object Изтриване на обект Add %1 to whitelist Добавяне %1 в "списък" „Разрешени“ Flash Object Flash Обект <b>Attribute Name</b> <b>Име на атрибута</b> <b>Value</b> <b>Стойност</b> No more information available. Не е налична повече информация. CookieManager Cookies Бисквитки Stored Cookies Съхранени бисквитки Find: Търсене: These cookies are stored on your computer: Тези бисквитки са запазени на вашия компютър: Server Сървър Cookie name Име на бисквитка Name: Име: Value: Стойност: Server: Сървър: Path: Път: Secure: Безопасност: Expiration: Валидност: <cookie not selected> <не е избрана бисквитка> Remove all cookies Премахване на всички бисквитки Remove cookies Премахване на бисквитки Cookie Filtering Филтриране на бисквитки <b>Cookie whitelist</b> <b>Списък с разрешени бисквитки</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Бисквитки от тези сървъри ВИНАГИ ще бъдат приемани (дори, и ако запазването на бисквитките е забранено) Add Добавяне Remove Премахване <b>Cookie blacklist</b> <b>Списък със забранени бисквитки</b> Cookies from these servers will NEVER be accepted Бисквитки от тези сървъри НИКОГА няма да бъдат приемани Settings Настройки <b>Cookie Settings</b> <b>Настройки на бисквитка</b> Allow storing of cookies Разрешаване запазването на бисквитки Delete cookies on close Изтриване на бисквитките след затваряне Match domain exactly Точно съвпадение на домейн Filter tracking cookies Филтриране на проследяващи бисквитки <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! Search Търсене Confirmation Потвърждение Are you sure to delete all cookies on your computer? Наистина ли искате да изтриете всички бисквитки от вашия компютър? Secure only Само безопасните All connections Всички връзки Session cookie Бисквитка за сесия Remove cookie Премахване на бисквитка Add to whitelist Добавяне в списък „Разрешени“ Add to blacklist Добавяне в списък „Забранени“ DownloadFileHelper Save file as... Запазване на файла като... NoNameDownload СвалянеБезИме DownloadItem Remaining time unavailable Оставащото време е неизвестно Error: Cannot write to file! Грешка: Файлът не може да бъде записан! Done - %1 Готово - %1 Cancelled Прекратено few seconds няколко секунди %n seconds %n minutes %n hours Unknown speed Неизвестна скорост kB/s MB/s GB/s Unknown size Неизвестен размер %2 - unknown size (%3) %2 - неизвестен размер (%3) Remaining %1 - %2 of %3 (%4) Остава %1 - %2 от %3 (%4) Cancelled - %1 Прекратено - %1 Delete file Изтриване на файл Do you want to also delete dowloaded file? Искате ли да изтриете изтегления файл? Open File Отваряне на файл Open Folder Отваряне на папка Go to Download Page Отиване на страницата за изтегляне Copy Download Link Копиране на връзката за изтегляне Cancel downloading Прекратяване на изтеглянето Remove Премахване Error Грешка Not found Не е намерено Sorry, the file %1 was not found! За съжаление, файлът %1 не бе намерен! Error: Грешка: DownloadManager Download Manager Изтегляния Clear Изчистване %1% of %2 files (%3) %4 remaining %1% от %2 файлове (%3) %4 остава %1% - Download Manager %1% - Управление на изтеглянията Download Finished Свалянето е завършено All files have been successfully downloaded. Всички файлове бяха успешно свалени. Warning Внимание Are you sure to quit? All uncompleted downloads will be cancelled! Сигурни ли сте, че желаете да излезете? Всички незавършени изтегляния ще бъдат прекратени! DownloadOptionsDialog Opening Отваряне Copy download link You have chosen to open Избрахте да отворите which is a: който е: What should QupZilla do with this file? Какво да направи QupZilla с този файл? Open... Отваряне... Save File Запазване на файл Download with External Manager Сваляне с външна програма from: от: Opening %1 Отваряне %1 Download link copied. EditSearchEngine Name: Име: Url: Адрес: Shortcut: Клавиш: Icon: Икона: <b>Note: </b>%s in url or post data represent searched string Post Data: Change... Промяна... FileSchemeReply No Error Няма грешка Up to higher level directory Едно ниво нагоре Show hidden files Показване на скрити файлове Name Име Size Размер Last modified Последна промяна Index for %1 Индекс за %1 Folder is empty. Папката е празна. FtpDownloader Cancelled! Прекратено! FtpSchemeReply Up to higher level directory Едно ниво нагоре Show hidden files Показване на скрити файлове Name Име Size Размер Last modified Последна промяна Index for %1 Индекс за %1 Folder is empty. Папката е празна. Unknown command Неизвестна команда HTML5PermissionsDialog HTML5 Permissions HTML5 Разрешения Notifications Съобщения Site Сайт Behaviour Поведение Remove Премахване Geolocation Местоположение Allow Разрешаване Deny Отказ HTML5PermissionsNotification Remember Запомняне Allow Разрешаване Deny Отказ this site този сайт Allow %1 to show desktop notifications? Разрешаване %1 да показва съобщения на работния плот? Allow %1 to locate your position? Разрешаване %1 да определя Вашето местоположение? History No Named Page Страница Без Име January януари February февруари March март April април May май June юни July юли August август September септември October октомври November ноември December декември HistoryManager History История Delete Изтриване Clear All History Изчистване на цялата история Optimize Database Оптимизиране на базата данни Confirmation Потвърждение Are you sure to delete all history? Наистина ли желаете да изтриете цялата история? HistoryModel Title Заглавие Address Адрес Visit Date Дата на посещаване Visit Count Брой посещения Today Днес This Week Тази седмица This Month Този месец HistorySideBar Search... Търсене... HistoryView Open link in current tab Отваряне на връзката в този подпрозорец Open link in new tab Отваряне на отметката в нов подпрозорец Copy title Копиране на заглавие Copy address Копиране на адрес Remove Премахване IconChooser Choose icon... Избиране на иконка... From file От файл Image (.png, .jpg, .jpeg, .gif) Изображение (.png, .jpg, .jpeg, .gif) Choose file... Избор на файл... From database От база данни Site Url: Адрес на сайт: Image files Файлове с изображения JsOptions JavaScript Options JavaScript Опции Allow JavaScript to: Разрешаване на JavaScript да: Close windows Затваря прозорци Open popup windows Отваря изскачащи прозорци Change window size Променя размера на прозореца Hide menu bar Скрива лентата с менюта Hide status bar Скрива статус лентата Hide tool bar Скрива лентата с инструменти Access clipboard Има достъп до системния буфер LicenseViewer License Viewer Преглед на лиценз LocationBar Enter URL address or search on %1 Въвеждане на адрес или търсене в %1 Paste And &Go Поставяне и &отиване Clear All Изчистване на всичко .co.uk Append domain name on ALT + Enter = Should be different for every country .bg Show information about this page Показване на информация за тази страница LocationCompleterView Switch to tab Превключване към подпрозорец MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? QupZilla в момента не е браузърът Ви по подразбиране. Желаете ли да го направите браузър по подразбиране? Always perform this check when starting QupZilla. Винаги да се прави тази проверка, когато стартира QupZilla. Default Browser Браузър по подразбиране QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. QupZilla е нов, бърз и сигурен Интернет браузър с отворен код.QupZilla се разпространява под лиценз GPL версия 3 или (по ваш избор) някоя следваща версия.Той е базиран на WebKit ядро и Qt работна среда. MasterPasswordDialog Encrypted DataBase Settings Настройки на кодирана База данни Set/Change Master Password... Настройка/Промяна на главна парола... Clear Master Password... Изтриване на главна парола... This backend does not work without a master password. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Главната парола се използва за защита на пароли за сайтове и данни за формуляри. Ако зададете главна парола, ще бъдете помолени да я въвеждате веднъж на сесия. Current Password: Текуща парола: New Password: Нова парола: Confirm Password: Потвърждаване на паролата: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. <b>Внимание:</b> Главната парола е невъзстановима. Моля не я забравяйте! Warning! Внимание! You entered a wrong password! Въведената парола е грешна! New/Confirm password fields do not match! Полетата Нова/Потвърждаване не съвпадат! Some data has not been decrypted. The master password was not cleared! Някои данни не бяха разшифровани. Главната парола не беше изчистена! Are you sure to clear master password and decrypt data? Сигурни ли сте, че искате да изчистите главна парола и да разшифровате данните? NavigationBar No Named Page Страница Без Име Back Назад Forward Напред Home Начална страница New Tab Нов подпрозорец Main Menu Главно Меню Exit Fullscreen Излизане от цял екран Clear history Изчистване на историята NetworkManager SSL Certificate Error! Грешка в SSL Сертификата! The page you are trying to access has the following errors in the SSL certificate: Страницата, която се опитвате да отворите, има следните грешки в SSL сертификата: <b>Organization: </b> <b>Организация: </b> <b>Domain Name: </b> <b>Име на домейн: </b> <b>Expiration Date: </b> <b>Дата на валидност: </b> <b>Error: </b> <b>Грешка: </b> Would you like to make an exception for this certificate? Бихте ли искали да се направи изключение за този сертификат? Authorisation required Изисква се упълномощаване Username: Потребителско име: Password: Парола: Save username and password on this site Запомняне име на потребител и парола за този сайт A username and password are being requested by %1. The site says: "%2" %1 изисква се име на потребител и парола. Сайтът казва: "%2" FTP authorisation required Необходимо FTP упълномощаване Login anonymously Анонимно влизане A username and password are being requested by %1:%2. Потребителско име и парола се изискват от %1:%2. Proxy authorisation required Прокси-сървър изисква се упълномощаване Remember username and password for this proxy. A username and password are being requested by proxy %1. Прокси-сървър %1 изисква потребителско име и парола. PageScreen Page Screen Снимка на страницата Format: Формат: Location: Местоположение: Browse... Преглед... Save as %1 Запазване като %1 Choose location... Избор на местоположение... File '%1' already exists. Do you want to overwrite it? Файлът '%1' вече съществува. Желаете ли да го презапишете? File already exists Файлът вече съществува PluginsList Application Extensions Добавки Allow Application Extensions to be loaded Разрешаване използването на добавки Settings Настройки WebKit Plugins WebKit Добавки <b>Click To Flash Plugin</b> <b>Click To Flash</b> (Флаш Бутон) Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. „<i>Click To Flash</i>" е добавка, която блокира автоматично зареждане на Flash съдържанието в страницата. Винаги можете да го заредите ръчно, като щракнете върху иконата „стартирай Flash“. Whitelist Списък „Разрешени“ (URL адреси) Add Добавяне Remove Премахване Allow Click To Flash Използване на Click To Flash PluginsManager Add site to whitelist Добавяне на сайт в Списък „Разрешени“ Server without http:// (ex. youtube.com) Сървър без http:// (Например: youtube.com) Error! Грешка! Cannot load extension! Не може да се зареди добавката! PopupWebView Inspect Element Изследване на елемент PopupWindow File Файл &Save Page As... &Запазване на страницата като... Save Page Screen Запазване снимка на страницата Send Link... Изпращане на връзката... &Print... От&печатване... Close Затваряне Edit Редактиране &Undo Отм&яна &Redo Повто&рение &Cut И&зрязване C&opy К&опиране &Paste Пос&тавяне Select All Маркиране на всичко Find Търсене View Изглед &Stop П&рекратяване &Reload Пр&езареждане Zoom &In У&величаване Zoom &Out На&маляване Reset Възстановяване &Page Source Изхо&ден код на страницата %1 - QupZilla %1 - QupZilla Preferences Preferences Настройки QupZilla QupZilla General Общи Appearance Външен вид Tabs Подпрозорци Browsing Сърфиране Fonts Шрифтове Keyboard Shortcuts Клавишни комбинации Downloads Изтегляния Password Manager Управление на пароли Privacy Поверителност Notifications Съобщения Extensions Добавки Other Други Use current Използване на текущата Note: You cannot delete active profile. Забележка: Не можете да изтриете активен профил. Create New Създаване на нов Delete Изтриване <b>Launching</b> <b>Стартиране</b> After launch: След като стартира: Open blank page Отваряне на празна страница Open homepage Отваряне на началната страницата Open speed dial Отваряне на страницата за бърз достъп Restore session Възстановяване на сесия Homepage: Начална страница: On new tab: В нов подпрозорец: Open blank tab Отваряне на празен подпрозорец Open other page... Отваряне на друга страница... <b>Profiles</b> <b>Профили</b> Startup profile: Профил по подразбиране: Check for updates on start Проверка за актуализации при стартиране Active profile: Активен профил: In order to change language, you must restart browser. За да промените езика, трябва да рестартирате браузъра. <b>Language</b> <b>Език</b> Available translations: Налични преводи: Don't load tabs until selected Да не се отварят подпрозорци до избрания Check to see if QupZilla is the default browser on startup Проверяване при стартиране, дали QupZilla е браузър по подразбиране Check Now Проверяване сега Themes Теми Advanced options Разширени настройки <b>Browser Window</b> <b>Прозорец на браузъра</b> Show StatusBar on start Показване лента на състоянието при стартиране Show Bookmarks ToolBar on start Показване лента с отметки при стартиране Show Navigation ToolBar on start Показване лента за навигация при стартиране <b>Navigation ToolBar</b> <b>Лента за навигация</b> Show Home button Показване на бутон „Начална страница“ Show Back / Forward buttons Показване на бутони „Напред“ / „Назад" <b>Background<b/> <b>Фон</b> Use transparent background Използване на прозрачен фон Show web search bar Показване на лента за търсене Show Add Tab button Показване на бутон „Нов подпрозорец“ Show Reload / Stop buttons Показване на бутони „Презареждане“ / „Прекратяване“ Tabs behaviour Поведение на подпрозорците Show tab previews Показване на изображения на подпрозорци Make tab previews animated Анимация на изображенията на подпрозорци Hide tabs when there is only one tab Скриване на лентата с подпрозорци, когато е отворен само един Activate last tab when closing active tab Активиране на последния подпрозорец, при затваряне на активния Open new tabs after active tab Отваряне на новите подпрозорци след активния Open new empty tabs after active tab Отваряне на нов празен подпрозорец след активния Automatically switch to newly opened tab Автоматично превключване към отворен нов подпрозорец Don't quit upon closing last tab Браузърът да не спира след затваряне на последния подпрозорец Ask when closing multiple tabs Предупреждаване при затваряне на няколко подпрозорци Closed tabs list instead of opened in tab bar Списък на затворените подпрозорци, вместо на отворените в лентата с подпрозорци Address Bar behaviour Поведение на адресната лента Suggest when typing into address bar: При писане в адресната лента показване на: History and Bookmarks История и Отметки History История Bookmarks Отметки Nothing Нищо Press "Shift" to not switch the tab but load the url in the current tab. Натискане на "Shift", за отваряне на връзката в този подпрозорец а не в нов. Propose to switch tab if completed url is already loaded. Предлагане за превключване към подпрозорец, ако връзката вече е заредена. Always show go icon Винаги да се показва икона „давай“ Select all text by double clicking in address bar Избиране на целия текст, при двойно кликване в адресната лента Select all text by clicking in address bar Избиране на целия текст, при кликване в адресната лента Search with Default Engine Търсене с търсачката по подразбиране Show loading progress in address bar Показване прогрес на зареждане в адресната лента Fill Запълнена Bottom Отдолу Top Отгоре Custom color: Собствен цвят: Select color Избор на цвят ... ... Reset Възстановяване Web Configuration Уеб конфигурация Allow Netscape Plugins (Flash plugin) Разрешаване на Netscape добавки (Flash добавка) Allow JavaScript Разрешаване на JavaScript Allow JAVA Разрешаване на JAVA Allow DNS Prefetch Разрешаване на предварително получени DNS Enable XSS Auditing try to detect possible XSS attacks when executing javascript Включване на XSS проверка Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Отпечатване елементите на фона Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Animated scrolling Анимирано придвижване Enable caret browsing Включване на режим „активен курсор“ Enable spatial navigation Включване на „пространствена навигация“ Zoom text only Увеличаване само на текста Mouse wheel scrolls Колелцето на мишката придвижва lines on page реда на страница Default zoom on pages: Размер на страниците по подразбиране: Local Storage Локално хранилище Maximum Максимум 50 MB 50 Мб 1 1 Maximum pages in cache: Максимум страници в кеша: Allow storing network cache on disk Запазване на мрежов кеш на диска Store cache in: Запазване на кеш в: Allow saving history Запазване на история Delete history on close Изтриване на историята при затваряне Allow local storage of HTML5 web content Разрешаване локално запазване на HTML5 съдържание Delete locally stored HTML5 web content on close Изтриване на локално HTML5 съдържание при затваряне Delete now Изтриване сега Proxy Configuration Прокси конфигурация Proxy Auto-Config (.pac) file Прокси Auto-Config (.pac) файл Reload Презареждане HTTP HTTP SOCKS5 SOCKS5 Port: Порт: Username: Потребителско име: Password: Парола: Don't use on: Да не се използва на: Manual configuration Ръчни настройки System proxy configuration Системни прокси настройки Do not use proxy Да не се използва прокси <b>Exceptions</b> <b>Изключения</b> Server: Сървър: Use different proxy for https connection Използване на различно прокси за https връзки Use script for automatic configuration: Използване на скрипт за автоматични настройки: <b>Font Families</b> <b>Семейства шрифтове</b> Standard Стандартен Fixed Фиксиран Serif Sans Serif Cursive Fantasy <b>Font Sizes</b> <b>Размери на шрифта</b> Fixed Font Size Фиксиран размер на шрифта Default Font Size Размер на шрифта по подразбиране Minimum Font Size Минимален размер на шрифта Minimum Logical Font Size Минимален логически размер на шрифта <b>Shortcuts</b> <b>Клавишни комбинации</b> Switch to tabs with Alt + number of tab Превкл. към подпрозорец с Alt + номер на подпрозорец Load speed dials with Ctrl + number of speed dial Зареждане на отметка от „бърз достъп“ с Ctrl + номер на „бърз достъп“ Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>Място за запазване</b> Ask everytime for download location Питане всеки път за място за запазване Use defined location: Използване на това място: <b>Download Options</b> <b>Опции за изтегляне</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Използване на заложения в ОС диалог за файлови операции (може да доведе до проблеми с изтеглянето на SSL защитено съдържание) Close download manager when downloading finishes Затваряне на прозореца, след като изтеглянето приключи <b>External download manager</b> <b>Външна програма за сваляне</b> Use external download manager Да се използва външна програма за сваляне Executable: Програма: Arguments: Параметри: Leave blank if unsure Оставете празно, ако не сте сигурни <b>%d</b> will be replaced with URL to be downloaded <b>%d</b> ще бъде заменен с адрес за изтегляне <b>AutoFill options</b> <b>Опции за автоматично попълване</b> Allow saving passwords from sites Позволяване запазването на пароли от сайтове Send Referer header to servers Изпращане на обща информация към сървърите <b>Cookies</b> <b>Бисквитки</b> Send Do Not Track header to servers Изпращане на отказ от проследяване към сървърите <b>Other</b> <b>Друго</b> Manage CA certificates Управление на СО сертификати Certificate Manager Управление на сертификати <b>SSL Certificates</b> <b>SSL Сертификати</b> <b>JavaScript</b> <b>JavaScript</b> Manage JavaScript privacy options Управление на JavaScript опциите за поверителност JavaScript options JavaScript опции Cookies Manager Управление на бисквитки Manage Cookies Управление на бисквитките <b>HTML5 Permissions</b> <b>HTML5 Разрешения</b> Manage HTML5 permissions Управление на HTML5 разрешенията HTML5 Permissions HTML5 Разрешения <b>Notifications</b> <b>Съобщения</b> Use OSD Notifications Използване на екранни съобщения Use Native System Notifications (Linux only) Използване на заложения в ОС метод (само за Linux) Do not use Notifications Без използване на съобщения Expiration timeout: Време на показване: seconds секунди <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Забележка: </b>Можете да промените позицията на екранното съобщение, като го плъзнете по екрана. StyleSheet automatically loaded with all websites: Стил, който се зарежда автоматично с всички уеб сайтове: Languages Езици <b>Preferred language for web sites</b> <b>Предпочитан език за уеб-сайтове</b> <b>Change browser identification</b> <b>Промяна идентификацията на браузъра</b> User Agent Manager Управление на „Потребителски Идентификатор“ Default Браузър по подразбиране Set as default Настройка по подразбиране OSD Notification Екранни съобщения Drag it on the screen to place it where you want. Плъзнете го на екрана, за да го поставите където искате. Choose download location... Избор на място за сваляне... Choose stylesheet location... Избор на място със стилове... Deleted Изтрито Choose executable location... Избор на място с програми... Choose cache path... Избор на път за кеша... New Profile Нов профил Enter the new profile's name: Име на нов профил: Error! Грешка! This profile already exists! Този профил вече съществува! Cannot create profile directory! Невъзможно е да се създаде папка за профила! Confirmation Потвърждение Are you sure to permanently delete "%1" profile? This action cannot be undone! Наистина ли искате да изтриете завинаги профила "%1"? Това действие не може да бъде отменено! Select Color Избор на цвят QObject Native System Notification Заложен в ОС метод за съобщения Save file as... Запазване на файла като... The file is not an OpenSearch 1.1 file. Това не е „OpenSearch 1.1“ файл. <not set in certificate> <не е зададено в сертификата> Unknown size Неизвестен размер KB MB GB Executable: Програма: Arguments: Аргументи: Cannot start external program Не може да бъде стартирана външна програма Cannot start external program! %1 Външната програма %1 не може да бъде стартирана! QtWin Open new tab Отваряне на нов подпрозорец Opens a new tab if browser is running Отваряне на нов подпрозорец, ако браузърът е стартиран Open new window Отваряне на нов прозорец Opens a new window if browser is running Отваряне на нов прозорец, ако браузърът е стартиран Open download manager Отваряне управлението на изтегляния Opens a download manager if browser is running Отваряне управлението на изтегляния, ако браузърът работи QupZilla QupZilla QupZilla Private Browsing Enabled Включено е поверително сърфиране IP Address of current page IP-адрес на тази страница &About QupZilla &За QupZilla Pr&eferences Н&астройки Quit Изход &File &Файл &New Window &Нов прозорец New Tab Нов подпрозорец Open Location Отваряне на местоположение Open &File... &Отваряне на файл... Close Tab Затваряне на подпрозорец Close Window Затваряне на прозорец &Save Page As... &Запазване на страницата като... Save Page Screen Запазване снимка на страницата Send Link... Изпращане на връзката... &Print... От&печатване... Import bookmarks... Внасяне на отметки... &Edit &Редактиране &Undo Отм&яна &Redo Повто&рение &Cut И&зрязване C&opy К&опиране &Paste Пос&тавяне Select &All Маркиране на &всичко &Find Търс&ене &View &Изглед &Navigation Toolbar Лен&та за навигация &Bookmarks Toolbar Ле&нта с отметки Sta&tus Bar Л&ента на състоянието &Menu Bar &Лента с менюта &Tabs on Top &Подпрозорците отгоре &Fullscreen &На цял екран &Stop &Прекратяване &Reload П&резареждане Character &Encoding &Кодиране на знаците Enable &Caret Browsing &Включване на активен курсор Toolbars Ленти с инструменти Sidebars Странични ленти Zoom &In &Увеличаване Zoom &Out На&маляване Reset Възстановяване &Page Source &Изходен код на страницата Hi&story И&стория &Back &Назад &Forward Н&апред &Home На&чална страница Show &All History Показване на &цялата история Closed Tabs Затворени подпрозорци Recently Visited Наскоро посетени Most Visited Най-посещавани &Bookmarks &Отметки Bookmark &This Page Отмятане на &тази страница Bookmark &All Tabs Отмятане на отворените &подпрозорци Organize &Bookmarks Ор&ганизиране на отметките &Tools И&нструменти &Web Search &Търсене в мрежата Page &Info &Информация за страницата &Download Manager И&зтегляния &Cookies Manager &Бисквитки &AdBlock &AdBlock RSS &Reader RSS &Четец Web In&spector Уеб ин&спектор Clear Recent &History Из&чистване на скорошната история New &Private Window &Поверително сърфиране в нов прозорец &Help &Помощ About &Qt За &Qt Information about application Информация за програмата Configuration Information Информация за настройките Report &Issue &Съобщаване за проблем Restore &Closed Tab &Възстановяване на затворен подпрозорец (Private Browsing) (Поверително сърфиране) Empty Празно Restore All Closed Tabs Възстановяване на всички затворени подпрозорци Clear list Изчистване на списък Other Друго %1 - QupZilla %1 - QupZilla HTML files HTML—файлове Image files Файлове с изображения Text files Текстови файлове All files Всички файлове Open file... Отваряне на файл... QupZilla %1 (%2) QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Все още има %1 отворени подпрозорци и сесията Ви няма да бъде запазена. Сигурни ли сте, че искате да затворите QupZilla? Don't ask again Този въпрос да не бъде задаван повече There are still open tabs Все още има отворени подпрозорци QupZillaSchemeReply No Error Няма грешка Not Found Не е намерено Report Issue Съобщаване за проблем If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Ако имате проблеми с QupZilla, моля, опитайте да изключите първо всички добавки. <br/> Ако това не ги реши, тогава моля попълнете този формуляр: Your E-mail Вашата Eл.-поща Issue type Вид проблем Issue description Описание на проблема Send Изпращане E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. Eл.-пощата е по желание<br/><b>Забележка: </b>Моля, първо прочетете как се прави доклад за грешки <a href=%1>тук</a>! Please fill out all required fields! Моля попълнете задължителните полета! Start Page Начална страница Search on Web Търсене в мрежата Search results provided by DuckDuckGo Резултатите от търсенето се предоставят от DuckDuckGo About QupZilla За QupZilla <h1>Private Browsing</h1> <h1>Поверително сърфиране</h1> Information about version Информация за версията Copyright Авторско право Version Версия WebKit version WebKit версия Main developer Главен разработчик Contributors Сътрудници Translators Преводачи Speed Dial Бърз достъп Add New Page Добавяне на нова страница Edit Редактиране Remove Премахване Reload Презареждане Are you sure to remove this speed dial? Сигурни ли сте, че искате да премахнете този „бърз достъп“? Load title from page Зареждане на заглавие от страницата Url Адрес Title Заглавие Apply Прилагане Close Затваряне New Page Нова страница Speed Dial settings Настройки за „бърз достъп“ Placement: Разположение: Auto Автоматично Cover Централно Fit Побиране Fit Width Побиране на ширина Fit Height Побиране на височина Use background image Използване на изображение за фон Select image Избор на изображение Maximum pages in a row: Максимален брой страници в ред: Change size of pages: Променя размера на страниците: Center speed dials Центриране на „бърз достъп“ Restore Session Възстановяване на сесия Oops, QupZilla crashed. Опа, QupZilla се срина. We apologize for this. Would you like to restore the last saved state? Извиняваме се за това. Бихте ли искали да се възстанови в последното запазено състояние? Try removing one or more tabs that you think cause troubles Опитайте да премахнете един или повече подпрозорци, които смятате, че причиняват проблеми Or you can start completely new session Или можете да започнете напълно нова сесия Configuration Information Информация за конфигурацията This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Тази страница съдържа информация за текущата конфигурация на QupZilla - важна за отстраняване на проблеми. Моля, включете тази информация при подаването на доклади за грешки. Browser Identification Идентификация на браузъра Paths Пътища Build Configuration Preferences Предпочитания Option Опция Value Стойност Extensions Добавки Name Име Author Автор Description Описание Application version Версия на програмата Qt version Qt версия Build time Platform Платформа Profile Профил Settings Настройки Saved session Запазена сесия Pinned tabs „Закачени“ подпрозорци Data Данни Themes Теми Translations Преводи Disabled Изключено <b>Enabled</b> <b>Включено</b> Debug build WebGL support WebGL поддръжка Windows 7 API Windows 7 API KDE integration KDE интегриране Portable build No available extensions. Няма налични добавки. RSSManager RSS Reader RSS Четец Empty Празно Add feed Добавяне на емисия Edit feed Редактиране на емисия Delete feed Изтриване на емисия Optimize Database Оптимизиране на базата данни Reload Презареждане News Новини Loading... Зареждане... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Нямате никакви RSS емисии<br/> Моля, добавете някаква с RSS иконата в лентата за навигация от сайт, който предлага емисии. Add new feed Добавяне на нова емисия Please enter URL of new feed: Моля въвведете адрес за нова емисия: New feed Нова емисия Fill title and URL of a feed: Попълване на заглавие и адрес на емисия: Feed title: Заглавие на емисия: Feed URL: Адрес на емисия: Edit RSS Feed Редактиране наt RSS емисия Open link in current tab Отваряне на връзката в този подпрозорец Open link in new tab Отваряне на отметката в нов подпрозорец Error in fetching feed Грешка при изтеглянето на емисия RSS feed duplicated RSS емисията е дублирана You already have this feed. Вие вече имате тази емисия. RSSNotification Add this feed into Добавяне на тази емисия към Add Добавяне RSS feed <b>"%1"</b> RSS емисия <b>"%1"</b> Internal Reader Вътрешен четец Other... Други... Liferea not running Liferea must be running in order to add new feed. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. За да добавите тази RSS емисия към друго приложение, моля имайте предвид следната информация:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/> Адресът за тази емисия, беше копиран в системния буфер. Add feed into other application Добавяне на емисията към друго приложение RSSWidget Add RSS Feeds from this site Добавяне на RSS емисия от тази страница Untitled feed Емисия без име Add Добавяне RecoveryWidget Start New Session Започване на нова сесия Restore Възстановяване Window %1 Прозорец %1 RegisterQAppAssociation Warning! Внимание! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) Съществуват някои проблеми. Моля преинсталирайте QupZilla! Може би рестартиране с администраторски права ще направи магия за вас! ;) RssIcon Add RSS from this page... Добавяне на RSS от тази страница... SSLManager Certificate Manager Управление на сертификат CA Authorities Certificates СО удостоверени сертификати Show info Показване на информация This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Това е списък на сертификатите удостоверени от СО, запазени в стандартното системно място, както и в места зададени от потребителя. Local Certificates Локални сертификати Import Внасяне Remove Премахване This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Това е списък на сертификатите, запазени във вашия потребителски профил, който също така съдържа всички сертификати, които са получили изключение. Settings Настройки Add Добавяне If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Ако CО удостоверените сертификати не се зареждат автоматично от системата, можете ръчно да зададете пътищата, където сертификатите се съхраняват. <b>NOTE:</b> Setting this option is a high security risk! <b>ВНИМАНИЕ:</b> Настройването на тази опция е висок риск за сигурността! Ignore all SSL Warnings Пренебрегване на всички SSL предупреждения All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Всички сертификати трябва да имат „.crt“ разширение. След прибавяне или изваждане на пътища до сертификати, е необходимо да рестартирате QupZilla, за да влязат в сила промените. Choose path... Избор на път... Import certificate... Внасяне на сертификат... Certificate Informations Информация за сертификат SearchEnginesDialog Manage Search Engines Управление на търсачките Add... Добавяне... Remove Премахване Edit Редактиране Set as default Задаване по подразбиране Up Нагоре Down Надолу Search Engine Търсачка Shortcut Клавиш Defaults По подразбиране Add Search Engine Добавяне на търсачка Remove Engine Премахване на търсачката You can't remove the default search engine.<br>Set a different engine as default before removing %1. Може да премахнете търсачката по подразбиране.<br>Задайте друга търсачка по подразбиране, преди да премахнете %1. Edit Search Engine Редактиране на търсачката SearchEnginesManager Search Engine Added Търсачката е добавена Search Engine "%1" has been successfully added. Търсачката "%1" беше успешно добавена. Search Engine is not valid! Търсачката не е валидна! Error Грешка Error while adding Search Engine <br><b>Error Message: </b> %1 Грешка при добавянето на търсачка <br><b>Съобщението за грешка е: </b> %1 SearchToolBar No results found. Не са намерени резултати. SearchToolbar Search: Търсене: Search... Търсене... Highlight Маркиране Case sensitive Зачитане на главни букви SideBar Bookmarks Отметки History История SiteInfo Site Info Информация за сайта General Общи Media Медия Databases Бази данни Security Сигурност Size: Размер: Site address: Адрес на сайта: Encoding: Кодировка на знаците: Meta tags of site: Мета-тагове на сайта: Tag Таг Value Стойност <b>Security information</b> <b>Информация за безопасност</b> Details Подробно Image Изображение Image address Адрес на изображението <b>Preview</b> <b>Преглед</b> <b>Database details</b> <b>Подробности за база данни</b> Name: Име: Path: Път: <database not selected> <не е избрана база данни> <not set in certificate> <Не е определено в сертификата> No databases are used by this page. Тази страница не използва база данни. <b>Connection is Encrypted.</b> <b>Връзката е шифрована</b> <b>Your connection to this page is secured with this certificate: </b> <b>Връзката Ви към този сайт е сигурна с този сертификат: </b> <b>Connection Not Encrypted.</b> <b>Връзката не е шифрована</b> <b>Your connection to this page is not secured!</b> <b>Връзката Ви към този сайт е несигурна!</b> Copy Image Location Копиране местоположението на изображението Copy Image Name Копиране името на изображението Save Image to Disk Запазване изображението на диска Error! Грешка! This preview is not available! Този преглед не е наличен! Save image... Запазване на изображението... Cannot write to file! Невъзможно е да се запише във файл! Preview not available Не е наличен преглед SiteInfoWidget More... Повече... Your connection to this site is <b>secured</b>. Връзката ви към този сайт е <b>сигурна</b>. Your connection to this site is <b>unsecured</b>. Връзката ви към този сайт е <b>несигурна</b>. This is your <b>%1</b> visit of this site. Това е Вашето <b>%1</b> посещение на този сайт. You have <b>never</b> visited this site before. Вие <b>никога</b> не сте посещавали този сайт. first първо second второ third трето SourceViewer Source of Изх. код на File Файл Load in page Зареждане в страницата Save as... Запазване като... Close Затваряне Edit Редактиране Undo Отмяна Redo Повторение Cut Изрязване Copy Копиране Paste Поставяне Select All Маркиране на всичко Find Търсене Go to Line... Отиване на ред... View Изглед Reload Презареждане Editable Редактируем Word Wrap Пренос на низ Source loaded in page Изх. код е зареден в страницата Cannot load in page. Page has been closed. Не може да се зареди. страницата е била затворена. Save file... Запазване на файл... Error! Грешка! Cannot write to file! Невъзможно е да се запише във файл! Error writing to file Грешка при запис във файл Source successfully saved Кодът е запазен успешно Source reloaded Кодът е презареден Cannot reload source. Page has been closed. Кодът не може да се презареди. Страницата е била затворена. Editable changed Опция „Редактируем“ е променена Word Wrap changed Опция „Пренос на низ“ е променена Enter line number Въвеждане номер на ред SourceViewerSearch Search: Търсене: Search... Търсене... Whole words Цели думи SpeedDial Image files Файлове с изображения Select image... Избор на изображение... Unable to load Невъзможно е да се зареди SpellCheckDialog SpellCheck Проверка на правопис <b>Dictionary path</b> <b>Път до речник</b> Change... Промяна... <b>User dictionary</b> <b>Потребителски речник</b> Add Добавяне Remove Премахване Using Hunspell library Използване на Hunspell библиотека Choose dictionary path... Избор на път до речник... Add new word... Добавяне на нова дума... Add new word: Добавяне на нова дума: Speller No suggestions Няма предложения Add to dictionary Добавяне към речник Settings Настройки SqueezeLabelV2 Copy Копиране SslErrorDialog SSL Certificate Error! Only for this session TabBar &New tab &Нов подпрозорец &Stop Tab &Спиране на подпрозорец &Reload Tab &Презареждане на подпрозорец &Duplicate Tab &Дублиране на подпрозорец D&etach Tab &Отделяне на подпрозорец Un&pin Tab Възстанов&яване в стандартен вид &Pin Tab Закачан&е в лентата Re&load All Tabs Презаре&ждане на всички подпрозорци &Bookmark This Tab Отмятане на &този подпрозорец Bookmark &All Tabs Отмятане на вс&ички подпрозорци Close Ot&her Tabs З&атваряне на другите подпрозорци Cl&ose &Затваряне Reloa&d All Tabs Презареждане на вси&чки подпрозорци Restore &Closed Tab В&ъзстановяване на затворен подпрозорец Close Tabs Do you really want to close other tabs? TabWidget New Tab Нов подпрозорец List of tabs Списък на подпрозорците Loading... Зареждане... No Named Page Страница без име Currently you have %1 opened tabs В момента имате %1 отворени подпрозорци New tab Нов подпрозорец Empty Празно Restore All Closed Tabs Възстановяване на всички затворени подпрозорци Clear list Изчистване на списък TabbedWebView Loading... Зареждане... %1 - QupZilla %1 - QupZilla Inspect Element Изследване на елемент ThemeManager <b>Name:</b> <b>Име:</b> <b>Author:</b> <b>Автор:</b> <b>Description:</b> <b>Описание:</b> License Лиценз ToolButton Stop Прекратяване Reload Презареждане Updater Update available Налична е актуализация New version of QupZilla is ready to download. Нова версия на QupZilla е готова за изтегляне. Update Актуализация UserAgentDialog User Agent Manager Управление на Потребителски идентификатор Change global User Agent Глобална промяна Use different User Agents for specified sites Използване на различен идентификатор за определени сайтове Site Сайт User Agent Потребителски идентификатор Add Добавяне Remove Премахване Edit Редактиране Add new site Добавяне на нов сайт Edit site Редактиране на сайт Site domain: Домейн на сайта: User Agent: Потребителски идентификатор: WebInspectorDockWidget Web Inspector Уеб инспектор WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? QupZilla не се справя с <b>%1:</b> връзки. Заявената връзка е <ul><li>%2</li></ul> Искате ли QupZilla да опита да отвори тази връзка със системно приложение? Remember my choice for this protocol Запомняне на избора за този протокол External Protocol Request Заявка за външен протокол To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) За да се покаже тази страница, QupZilla трябва да изпрати повторно искане, което ще повтори действието (като търсене, за да се направи пазаруване, което е било вече направено.) Confirm form resubmission Потвърждаване на формуляра за повторно изпращане Select files to upload... Избор на файлове за качване... Server refused the connection Сървърът отказа свързването Server closed the connection Сървърът прекъсна връзката Server not found Сървърът не е намерен Connection timed out Времето на връзката изтече Untrusted connection Недоверена връзка Temporary network failure Мрежата е временно недостъпна Proxy connection refused Прокси връзката е отхвърлена Proxy server not found Прокси сървърът не е намерен Proxy connection timed out Времето за прокси връзка изтече Proxy authentication required Изисква се прокси разпознаване Content not found Съдържанието не е открито Unknown network error Неизвестна мрежова грешка AdBlocked Content AdBlock блокирано съдържание Blocked by <i>%1</i> Блокирано от <i>%1</i> Content Access Denied Достъпът до съдържанието е отказан Error code %1 Код за грешка %1 Failed loading page Неуспешно зареждане на страницата QupZilla can't load page. QupZilla не може да зареди страницата. QupZilla can't load page from %1. QupZilla не може да зареди страница от %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Проверете адреса за правописни грешки, като например <b>ww.</b>primer.com вместо <b>www.</b>primer.com If you are unable to load any pages, check your computer's network connection. Ако не можете да заредите нито една страница, проверете мрежовата връзка на вашия компютър. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Ако компютърът или мрежата са защитени от защитна стена или прокси, уверете се, че на QupZilla е позволен достъп до Интернет. Try Again Нов опит JavaScript alert JavaScript предупреждение Prevent this page from creating additional dialogs Предотвратяване създаването на допълнителни диалогови прозорци на тази страница Choose file... Избор на файл... Cannot read data from <b>%1</b>. Upload was cancelled! Невъзможно е прочитането на данни от <b>%1</b>. Качването бе преустановено! Cannot read file! Невъзможно е прочитането на файла! WebSearchBar Manage Search Engines Управление на търсачките Add %1 ... Добавяне на %1 ... Paste And &Search Поставяне и &търсене Clear All Изчистване на всичко Show suggestions Показване на предложения Search when engine changed Търсене при смяна на търсачката WebView No Named Page Страница без име Create Search Engine Създаване на търсачка Cut Изрязване Copy Копиране Paste Поставяне Select All Маркиране на всичко Default По подразбиране Left to Right От ляво надясно Right to Left От дясно наляво Bold Удебелен Italic Курсивен Underline Подчертан &Reload П&резареждане S&top Прекра&тяване Delete Изтриване &Back &Назад &Forward Н&апред This frame Тази рамка Show &only this frame Показване сам&о на тази рамка Show this frame in new &tab Показване на &тази рамка в нов подпрозорец Print frame Отпечатване на рамката Zoom &in Увел&ичаване &Zoom out Намал&яване Reset Възстановяване Show so&urce of frame Из&ходен код на рамката Book&mark page От&мятане на страницата &Save page as... &Запазване на страницата като... &Copy page link &Копиране на връзката към страницата Send page link... Изпращане на връзката към страницата... &Print page &Отпечатване на страницата Select &all Маркиране на &всичко Validate page Проверяване на страницата Show so&urce code Преглед на из&ходния код Show info ab&out site Показване на информация &за сайта Open link in new &tab Отваряне на връзката в &нов подпрозорец Open link in new &window Отваряне на връзката в нов &прозорец B&ookmark link От&мятане на връзката &Save link as... &Запазване на връзката като... Send link... Изпращане на връзката... &Copy link address &Копиране адреса на връзката Show i&mage Преглед на и&зображението Copy im&age Копиране на из&ображението Copy image ad&dress Копиране адреса на из&ображението &Save image as... &Запазване на изображението като... Send image... Изпращане на изображението... Send text... Изпращане на текст... Google Translate Google преводач Dictionary Речник Go to &web address Отиване на &уеб адрес Search "%1 .." with %2 Търсене на "%1 .." с %2 Search with... Търсене с... &Play &Изпълнение &Pause &Пауза Un&mute Вк&л.звук &Mute &Заглушаване &Copy Media Address &Копиране адреса на медийния файл &Send Media Address &Изпращане адреса на медийния файл Save Media To &Disk Запазване на медийния файл на &диска Check &Spelling Проверка на &правопис Languages Езици jsAlert Prevent this page from creating additional dialogs Предотвратяване създаването на допълнителни диалогови прозорци на тази страница qupzilla-1.6.0/translations/bo_CN.ts000066400000000000000000007413561226107126500174520ustar00rootroot00000000000000 AboutDialog About QupZilla Authors Authors and Contributors < About QupZilla <p><b>Application version %1</b><br/> <b>WebKit version %1</b></p> <small>Build time: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> AcceptLanguage Preferred Languages Add... Remove Up Down Personal [%1] AdBlockAddSubscriptionDialog Add Subscription Title: Address: Add new subscription to AdBlock: AdBlockCustomList Custom Rules AdBlockDialog AdBlock Configuration Enable AdBlock Search... Options AdBlock Add Rule Remove Rule Add Subscription Remove Subscription Update Subscriptions Learn about writing rules... AdBlockEasyList EasyList AdBlockIcon AdBlock lets you block unwanted content on web pages Blocked popup window AdBlock blocked unwanted popup window. AdBlock Show AdBlock &Settings Disable on %1 Disable only on this page Blocked Popup Windows %1 with (%2) No content blocked Blocked URL (AdBlock Rule) - click to edit rule AdBlockManager Do you want to add <b>%1</b> subscription? AdBlock Subscription AdBlockTreeWidget Add Rule Remove Rule Add Custom Rule Please write your rule here: %1 (recently updated) AddAcceptLanguage Add Language Choose preferred language for web sites Personal definition: AutoFillManager Passwords Server Username Password Import/Export Show Passwords Edit Remove Remove All Exceptions Import Passwords from File... Export Passwords to File... Search Are you sure that you want to show all passwords? Hide Passwords Confirmation Are you sure to delete all passwords on your computer? Edit password Change password: Choose file... Cannot read file! Successfully imported Error while importing! Cannot write to file! Successfully exported AutoFillNotification Update Remember Never For This Site Not Now on %1 for <b>%1</b> Do you want QupZilla to update saved password %1? Do you want QupZilla to remember the password %1 %2? AutoFillWidget Choose username to login Login Login as <b>%1</b> BookmarkIcon Bookmark this Page Edit this bookmark BookmarksImportDialog Import Bookmarks <b>Import Bookmarks</b> From File Choose browser from which you want to import bookmarks: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. Choose... Fetching icons, please wait... Title Url Next Cancel <b>Importing from %1</b> Finish Please press Finish to complete importing process. Error! The file doesn't contain any bookmark. Choose directory... Choose file... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Please choose this file to begin importing bookmarks. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Please choose this folder to begin importing bookmarks. No Error Unable to open file. Cannot evaluate JSON code. File does not exist. Unable to open database. Is Firefox running? BookmarksManager Bookmarks Optimize Database Import Bookmarks Add Folder Title Url Expand All Collapse All Add new folder Choose parent folder for new folder: Choose name for new bookmark folder: Add new subfolder Choose name for new subfolder in bookmarks toolbar: Rename Folder Choose name for folder: Add Subfolder Rename folder Remove folder Open link in current &tab Open link in &new tab Move bookmark to &folder Change icon Rename bookmark Remove bookmark <b>Warning: </b>You already have bookmarked this page! Choose name and location of this bookmark. Add New Bookmark Choose folder for bookmarks: Bookmark All Tabs BookmarksModel Bookmarks In Menu Bookmarks In ToolBar Unsorted Bookmarks BookmarksSideBar Search... Open link in current &tab Open link in &new tab Copy address &Delete BookmarksToolbar &Bookmark Current Page Bookmark &All Tabs &Organize Bookmarks Show Most &Visited Show Only Icons &Hide Toolbar Open bookmark Open bookmark in new tab Move right Move left Edit bookmark Remove bookmark Edit bookmark: Title: Url: Edit Bookmark Most visited Sites you visited the most Empty BookmarksTree Bookmarks New Folder... BookmarksWidget Add to Speed Dial Save Name: Folder: Remove from Speed Dial Remove BrowsingLibrary Library Search... History Bookmarks RSS Database Optimized Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 CertificateInfoWidget <b>Issued To</b> Common Name (CN): Organization (O): Organizational Unit (OU): Serial Number: <b>Issued By</b> <b>Validity</b> Issued On: Expires On: ClearPrivateData Clear Recent History Choose what you want to delete: Clear history Clear cache Clear icons Clear cookies from Adobe Flash Player <b>Clear Recent History</b> Earlier Today Week Month All Clear web databases Clear local storage Clear cookies ClickToFlash Object blocked by ClickToFlash Show more information about object Delete object Add %1 to whitelist Flash Object <b>Attribute Name</b> <b>Value</b> No more information available. CookieManager Cookies Stored Cookies Find: These cookies are stored on your computer: Server Cookie name Name: Value: Server: Path: Secure: Expiration: <cookie not selected> Remove all cookies Remove cookies Cookie Filtering <b>Cookie whitelist</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Add Remove <b>Cookie blacklist</b> Cookies from these servers will NEVER be accepted Settings <b>Cookie Settings</b> Allow storing of cookies Delete cookies on close Match domain exactly Filter tracking cookies <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable this options first! Search Confirmation Are you sure to delete all cookies on your computer? Secure only All connections Session cookie Remove cookie Add to whitelist Add to blacklist DownloadFileHelper Save file as... NoNameDownload DownloadItem Remaining time unavailable Error: Cannot write to file! Done - %1 Cancelled few seconds seconds minutes hours Unknown speed Unknown size %2 - unknown size (%3) Remaining %1 - %2 of %3 (%4) Cancelled - %1 Delete file Do you want to also delete dowloaded file? Open File Open Folder Go to Download Page Copy Download Link Cancel downloading Remove Error Not found Sorry, the file %1 was not found! Error: DownloadManager Download Manager Clear %1% of %2 files (%3) %4 remaining % - Download Manager Download Finished All files have been successfully downloaded. Warning Are you sure to quit? All uncompleted downloads will be cancelled! DownloadOptionsDialog Opening You have chosen to open which is a: What should QupZilla do with this file? Open... Save File Download with External Manager from: Opening %1 EditSearchEngine Name: Url: Shortcut: Icon: <b>Note: </b>%s in url represent searched string Change... FileSchemeReply No Error Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. FtpDownloader Cancelled! FtpSchemeReply Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. Unknown command HTML5PermissionsDialog HTML5 Permissions Notifications Site Behaviour Remove Geolocation Allow Deny HTML5PermissionsNotification Remember Allow Deny this site Allow %1 to show desktop notifications? Allow %1 to locate your position? History No Named Page January February March April May June July August September October November December HistoryManager History Delete Clear All History Optimize Database Confirmation Are you sure to delete all history? HistoryModel Title Address Visit Date Visit Count Today This Week This Month HistorySideBar Search... HistoryView Open link in current tab Open link in new tab Copy title Copy address Remove IconChooser Choose icon... From file Image (.png, .jpg, .jpeg, .gif) Choose file... From database Site Url: Image files JsOptions JavaScript Options Allow JavaScript to: Close windows Open popup windows Change window size Hide menu bar Hide status bar Hide tool bar Access clipboard LicenseViewer License Viewer LocationBar Enter URL address or search on %1 Paste And &Go Clear All .co.uk Append domain name on ALT + Enter = Should be different for every country Show information about this page LocationCompleterView Switch to tab MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? Always perform this check when starting QupZilla. Default Browser QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. NavigationBar No Named Page Back Forward Home New Tab Main Menu Exit Fullscreen Clear history NetworkManager SSL Certificate Error! The page you are trying to access has the following errors in the SSL certificate: <b>Organization: </b> <b>Domain Name: </b> <b>Expiration Date: </b> <b>Error: </b> Would you like to make an exception for this certificate? Authorisation required Username: Password: Save username and password on this site A username and password are being requested by %1. The site says: "%2" FTP authorisation required Login anonymously A username and password are being requested by %1:%2. Proxy authorisation required A username and password are being requested by proxy %1. PageScreen Page Screen Save Page Screen... PluginsList Application Extensions Allow Application Extensions to be loaded Settings WebKit Plugins <b>Click To Flash Plugin</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Whitelist Add Remove Allow Click To Flash PluginsManager Add site to whitelist Server without http:// (ex. youtube.com) Error! Cannot load extension! PopupWebView Inspect Element PopupWindow File &Save Page As... Save Page Screen Send Link... &Print... Close Edit &Undo &Redo &Cut C&opy &Paste Select All Find View &Stop &Reload Zoom &In Zoom &Out Reset &Page Source %1 - QupZilla Preferences Preferences QupZilla General Appearance Tabs Browsing Fonts Keyboard Shortcuts Downloads Password Manager Privacy Notifications Extensions Other Use current Note: You cannot delete active profile. Create New Delete <b>Launching</b> After launch: Open blank page Open homepage Open speed dial Restore session Homepage: On new tab: Open blank tab Open other page... <b>Profiles</b> Startup profile: Check for updates on start Active profile: In order to change language, you must restart browser. <b>Language</b> Available translations: Don't load tabs until selected Check to see if QupZilla is the default browser on startup Check Now Themes Advanced options <b>Browser Window</b> Show StatusBar on start Show Bookmarks ToolBar on start Show Navigation ToolBar on start <b>Navigation ToolBar</b> Show Home button Show Back / Forward buttons <b>Background<b/> Use transparent background Show web search bar Show Add Tab button Show Reload / Stop buttons Tabs behaviour Show tab previews Make tab previews animated Hide tabs when there is only one tab Activate last tab when closing active tab Open new tabs after active tab Open new empty tabs after active tab Automatically switch to newly opened tab Don't quit upon closing last tab Ask when closing multiple tabs Closed tabs list instead of opened in tab bar Address Bar behaviour Suggest when typing into address bar: History and Bookmarks History Bookmarks Nothing Press "Shift" to not switch the tab but load the url in the current tab. Propose to switch tab if completed url is already loaded. Select all text by double clicking in address bar Select all text by clicking in address bar Add .co.uk domain by pressing ALT key Search with Default Engine Show loading progress in address bar Fill Bottom Top Custom color: Select color ... Reset Web Configuration Allow Netscape Plugins (Flash plugin) Allow JavaScript Allow JAVA Allow DNS Prefetch Enable XSS Auditing try to detect possible XSS attacks when executing javascript Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Animated scrolling Enable caret browsing Zoom text only Mouse wheel scrolls lines on page Default zoom on pages: Local Storage Maximum 50 MB 1 Maximum pages in cache: Allow storing network cache on disk Store cache in: Allow saving history Delete history on close Allow local storage of HTML5 web content Delete locally stored HTML5 web content on close Delete now Proxy Configuration Proxy Auto-Config (.pac) file Reload HTTP SOCKS5 Port: Username: Password: Don't use on: Manual configuration System proxy configuration Do not use proxy <b>Exceptions</b> Server: Use different proxy for https connection Use script for automatic configuration: <b>Font Families</b> Standard Fixed Serif Sans Serif Cursive Fantasy <b>Font Sizes</b> Fixed Font Size Default Font Size Minimum Font Size Minimum Logical Font Size <b>Shortcuts</b> Switch to tabs with Alt + number of tab Load speed dials with Ctrl + number of speed dial <b>Download Location</b> Ask everytime for download location Use defined location: <b>Download Options</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Close download manager when downloading finishes <b>External download manager</b> Use external download manager Executable: Arguments: Leave blank if unsure <b>%d</b> will be replaced with URL to be downloaded <b>AutoFill options</b> Allow saving passwords from sites Send Referer header to servers <b>Cookies</b> Send Do Not Track header to servers <b>Other</b> Manage CA certificates Certificate Manager <b>SSL Certificates</b> <b>JavaScript</b> Manage JavaScript privacy options JavaScript options Cookies Manager Manage Cookies <b>HTML5 Permissions</b> Manage HTML5 permissions HTML5 Permissions <b>Notifications</b> Use OSD Notifications Use Native System Notifications (Linux only) Do not use Notifications Expiration timeout: seconds <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. StyleSheet automatically loaded with all websites: Languages <b>Preferred language for web sites</b> <b>Change browser identification</b> User Agent Manager QupZilla is default Make QupZilla default OSD Notification Drag it on the screen to place it where you want. Choose download location... Choose stylesheet location... Deleted Choose executable location... Choose cache path... New Profile Enter the new profile's name: Error! This profile already exists! Cannot create profile directory! Confirmation Are you sure to permanently delete "%1" profile? This action cannot be undone! Select Color QObject Native System Notification Save file as... The file is not an OpenSearch 1.1 file. <not set in certificate> Unknown size Executable: Arguments: Cannot start external program Cannot start external program! %1 QtWin Open new tab Opens a new tab if browser is running Open new window Opens a new window if browser is running Open download manager Opens a download manager if browser is running QupZilla QupZilla Private Browsing Enabled IP Address of current page &About QupZilla Pr&eferences Quit &File &New Window New Tab Open Location Open &File... Close Tab Close Window &Save Page As... Save Page Screen Send Link... &Print... Import bookmarks... &Edit &Undo &Redo &Cut C&opy &Paste Select &All &Find &View &Navigation Toolbar &Bookmarks Toolbar Sta&tus Bar &Menu Bar &Tabs on Top &Fullscreen &Stop &Reload Character &Encoding Enable &Caret Browsing Toolbars Sidebars Zoom &In Zoom &Out Reset &Page Source Hi&story &Back &Forward &Home Show &All History Closed Tabs Recently Visited Most Visited &Bookmarks Bookmark &This Page Bookmark &All Tabs Organize &Bookmarks &Tools &Web Search Page &Info &Download Manager &Cookies Manager &AdBlock RSS &Reader Web In&spector Clear Recent &History &Private Browsing New &Private Browsing Window &Help About &Qt Information about application Configuration Information Report &Issue Restore &Closed Tab (Private Browsing) Empty Restore All Closed Tabs Clear list Other %1 - QupZilla HTML files Image files Text files All files Open file... There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Don't ask again There are still open tabs QupZillaSchemeReply No Error Not Found Report Issue If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Your E-mail Issue type Issue description Send E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. Please fill out all required fields! Start Page Search on Web Search results provided by DuckDuckGo About QupZilla <h1>Private Browsing</h1> Information about version Copyright Version WebKit version Main developer Contributors Translators Speed Dial Add New Page Edit Remove Reload Are you sure to remove this speed dial? Load title from page Url Title Apply Close New Page Speed Dial settings Placement: Auto Cover Fit Fit Width Fit Height Use background image Select image Maximum pages in a row: Change size of pages: Center speed dials Restore Session Oops, QupZilla crashed. We apologize for this. Would you like to restore the last saved state? Try removing one or more tabs that you think cause troubles Or you can start completely new session Configuration Information This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Browser Identification Paths Build Configuration Preferences Option Value Extensions Name Author Description Application version Qt version Build time Platform Profile Settings Saved session Pinned tabs Data Themes Translations Disabled <b>Enabled</b> Debug build WebGL support Windows 7 API KDE integration Portable build No available extensions. RSSManager RSS Reader Empty Add feed Edit feed Delete feed Optimize Database Reload News Loading... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Add new feed Please enter URL of new feed: New feed Fill title and URL of a feed: Feed title: Feed URL: Edit RSS Feed Open link in current tab Open link in new tab Error in fetching feed RSS feed duplicated You already have this feed. RSSNotification Add this feed into Add RSS feed <b>"%1"</b> Internal Reader Other... Liferea not running Liferea must be running in order to add new feed. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Add feed into other application RSSWidget Add RSS Feeds from this site Untitled feed Add RecoveryWidget Start New Session Restore Window %1 RegisterQAppAssociation Warning! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) RssIcon Add RSS from this page... SSLManager Certificate Manager CA Authorities Certificates Show info This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Local Certificates Import Remove This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Settings Add If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. <b>NOTE:</b> Setting this option is a high security risk! Ignore all SSL Warnings All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Choose path... Import certificate... Certificate Informations SearchEnginesDialog Manage Search Engines Add... Remove Edit Set as default Up Down Search Engine Shortcut Defaults Add Search Engine Remove Engine You can't remove the default search engine.<br>Set a different engine as default before removing %1. Edit Search Engine SearchEnginesManager Search Engine Added Search Engine "%1" has been successfully added. Search Engine is not valid! Error Error while adding Search Engine <br><b>Error Message: </b> %1 SearchToolBar No results found. SearchToolbar Search: Search... Highlight Case sensitive SideBar Bookmarks History SiteInfo Site Info General Media Databases Security Size: Site address: Encoding: Meta tags of site: Tag Value <b>Security information</b> Details Image Image address <b>Preview</b> <b>Database details</b> Name: Path: <database not selected> <not set in certificate> No databases are used by this page. <b>Connection is Encrypted.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Connection Not Encrypted.</b> <b>Your connection to this page is not secured!</b> Copy Image Location Copy Image Name Save Image to Disk Error! This preview is not available! Save image... Cannot write to file! Preview not available SiteInfoWidget More... Your connection to this site is <b>secured</b>. Your connection to this site is <b>unsecured</b>. This is your <b>%1</b> visit of this site. You have <b>never</b> visited this site before. first second third SourceViewer Source of File Load in page Save as... Close Edit Undo Redo Cut Copy Paste Select All Find Go to Line... View Reload Editable Word Wrap Source loaded in page Cannot load in page. Page has been closed. Save file... Error! Cannot write to file! Error writing to file Source successfully saved Source reloaded Cannot reload source. Page has been closed. Editable changed Word Wrap changed Enter line number SourceViewerSearch Search: Search... Whole words SpeedDial Image files Select image... Unable to load SpellCheckDialog SpellCheck <b>Dictionary path</b> Change... <b>User dictionary</b> Add Remove Using Hunspell library Choose dictionary path... Add new word... Add new word: Speller No suggestions Add to dictionary Settings SqueezeLabelV2 Copy TabBar &New tab &Stop Tab &Reload Tab &Duplicate Tab Un&pin Tab &Pin Tab Re&load All Tabs &Bookmark This Tab Bookmark &All Tabs Close Ot&her Tabs Cl&ose Reloa&d All Tabs Bookmark &All Ta&bs Restore &Closed Tab TabWidget New Tab List of tabs Loading... No Named Page Currently you have %1 opened tabs New tab Empty Restore All Closed Tabs Clear list TabbedWebView Loading... %1 - QupZilla Inspect Element ThemeManager <b>Name:</b> <b>Author:</b> <b>Description:</b> License ToolButton Stop Reload Updater Update available New version of QupZilla is ready to download. Update UserAgentDialog User Agent Manager Change global User Agent Use different User Agents for specified sites Site User Agent Add Remove Edit Add new site Edit site Site domain: User Agent: WebInspectorDockWidget Web Inspector WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? Remember my choice for this protocol External Protocol Request To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Confirm form resubmission Select files to upload... Server refused the connection Server closed the connection Server not found Connection timed out Untrusted connection Temporary network failure Proxy connection refused Proxy server not found Proxy connection timed out Proxy authentication required Content not found Unknown network error AdBlocked Content Blocked by <i>%1</i> Content Access Denied Error code %1 Failed loading page QupZilla can't load page. QupZilla can't load page from %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com If you are unable to load any pages, check your computer's network connection. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Try Again JavaScript alert Prevent this page from creating additional dialogs Choose file... WebSearchBar Manage Search Engines Add %1 ... Paste And &Search Clear All Show suggestions Search when engine changed WebView No Named Page Create Search Engine Cut Copy Paste Select All &Reload S&top Delete &Back &Forward This frame Show &only this frame Show this frame in new &tab Print frame Zoom &in &Zoom out Reset Show so&urce of frame Book&mark page &Save page as... &Copy page link Send page link... &Print page Select &all Validate page Show so&urce code Show info ab&out site Open link in new &tab Open link in new &window B&ookmark link &Save link as... Send link... &Copy link address Show i&mage Copy im&age Copy image ad&dress &Save image as... Send image... Send text... Google Translate Dictionary Go to &web address Search "%1 .." with %2 Search with... &Play &Pause Un&mute &Mute &Copy Media Address &Send Media Address Save Media To &Disk Check &Spelling Languages jsAlert Prevent this page from creating additional dialogs qupzilla-1.6.0/translations/ca_ES.ts000066400000000000000000010621761226107126500174410ustar00rootroot00000000000000 AboutDialog About QupZilla Quant al QupZilla Authors Autors Authors and Contributors Autors i col·laboradors < About QupZilla < Quant al QupZilla <p><b>Application version %1</b><br/> <p><b>Versió de l'aplicació %1</b><br/> <b>WebKit version %1</b></p> <b>Versió de WebKit %1</b></p> <small>Build time: %1 </small></p> <small>Data de compilació: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Desenvolupador princial:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Col·laboradors:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Traductors:</b><br/>%1</p> AcceptLanguage Preferred Languages Idiomes preferits Add... Afegeix... Remove Suprimeix Up Amunt Down Avall Personal [%1] Personal [%1] AdBlockAddSubscriptionDialog Add Subscription Afegeix una subscripció Title: Títol: Address: Adreça: Add new subscription to AdBlock: Afegeix una nova suscripció a l'Adblock: AdBlockCustomList Custom Rules Normes personalitzades AdBlockDialog AdBlock Configuration Configuració de l'AdBlock Enable AdBlock Habilita l'AdBlock Search... Cerca... Options Opcions AdBlock AdBlock Use only essential part of EasyList (for performance reasons) Add Rule Afegeix una norma Remove Rule Suprimeix la norma Add Subscription Afegeix una subscripció Remove Subscription Suprimeix la subscripció Update Subscriptions Actualitza les subscripcions Learn about writing rules... Apreneu sobre l'escriptura de les normes... AdBlockIcon AdBlock lets you block unwanted content on web pages L'AdBlock us permet bloquejar contingut no desitjat a les pàgines web Blocked popup window S'ha bloquejat la finestra emergent AdBlock blocked unwanted popup window. L'AdBlock ha bloquejat una finestra emergent no desitjada. AdBlock AdBlock Show AdBlock &Settings &Preferències de l'AdBlock Disable on %1 Deshabilita a %1 Disable only on this page Deshabilita només en aquesta pàgina Blocked Popup Windows Finestres emergents bloquejades %1 with (%2) %1 amb (%2) No content blocked No s'ha bloquejat cap contingut Blocked URL (AdBlock Rule) - click to edit rule URL bloquejada (norma de l'AdBlock) - feu clic per editar la norma AdBlockManager Do you want to add <b>%1</b> subscription? Voleu afegir la subscripció <b>%1</b>? AdBlock Subscription Subscripció de l'AdBlock EasyList AdBlockTreeWidget Add Rule Afegeix una norma Remove Rule Suprimeix la norma Add Custom Rule Afegeix una norma personalitzada Please write your rule here: Escriviu la vostra norma aquí: %1 (recently updated) %1 (actualitzada recentment) AddAcceptLanguage Add Language Afegeix un idioma Choose preferred language for web sites Trieu l'idioma que preferiu per mostrar les pàgines Personal definition: Definició personal: AesInterface Warning! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. AutoFill Database (plaintext) Database (encrypted) Enter Master Password Permission is required, please enter Master Password: Warning! Entered password is wrong! This backend needs a master password to be set! QupZilla just switches to its default backend AutoFillManager Passwords are stored in: Change backend Backend options Passwords Contrasenyes Server Servidor Username Nom d'usuari Password Contrasenya Import/Export Importa/Exporta Show Passwords Mostra les contrasenyes Edit Edita Remove Suprimeix Remove All Suprimeix-ho tot Exceptions Excepcions Import Passwords from File... Importa les contrasenyes des d'un fitxer... Export Passwords to File... Exporta les contrasenyes a un fitxer... Search Cerca Change backend... Change backend: Are you sure that you want to show all passwords? Segur que voleu mostrar totes les contrasenyes? Hide Passwords Oculta les contrasenyes Confirmation Confirmació Are you sure to delete all passwords on your computer? Segur que voleu eliminar totes les contrasenyes de l'ordinador? Edit password Edita la contrasenya Change password: Canvia la contrasenya: Choose file... Tria un fitxer... Cannot read file! No es pot llegir el fitxer! Successfully imported S'ha importat correctament Error while importing! Hi ha hagut un error en importar! Cannot write to file! No es pot escriure el fitxer! Successfully exported S'ha exportat correctament AutoFillNotification Update Actualització Remember Recorda-ho Never For This Site Mai per a aquest lloc Not Now Ara no on %1 a %1 for <b>%1</b> per a <b>%1</b> Do you want QupZilla to update saved password %1? Voleu que el QupZilla actualitzi la contrasenya desada %1? Do you want QupZilla to remember the password %1 %2? Voleu que el QupZilla recordi la contrasenya %1 %2? AutoFillWidget Choose username to login Trieu un nom d'usuari per iniciar la sessió Login Inicia la sessió Login as <b>%1</b> Inicia la sessió com a <b>%1</b> BookmarkIcon Bookmark this Page Afegeix aquesta pàgina a les adreces d'interès Edit this bookmark Edita aquesta adreça d'interès BookmarksImportDialog Import Bookmarks Importa les adreces d'interès <b>Import Bookmarks</b> <b>Importa les adreces d'interès</b> From File Des d'un fitxer Internet Explorer Choose browser from which you want to import bookmarks: Trieu el navegador des del qual voleu importar les adreces d'interès: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Nota:</b> Actualment només la importació des de fitxers Html permet importar també carpetes d'adreces d'interès. Choose... Tria... Try to fetch icons for all bookmarks (may take a while) Fetching icons, please wait... S'estan carregant les icones, espereu... Title Nom Url Ubicació Next Següent Cancel Cancel·la <b>Importing from %1</b> <b>S'està important des de %1</b> Finish Finalitza Please press Finish to complete importing process. Feu clic a Finalitza per completar el procés d'importació. Error! Hi ha hagut un error! The file doesn't contain any bookmark. El fitxer no conté cap adreça d'interès. Choose directory... Tria un directori... Choose file... Tria un fitxer... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in El Mozilla Firefox emmagatzema les seves adreces d'interès a la base de dades SQLite <b>places.sqlite</b>. Aquest fitxer se sol trobar a Please choose this file to begin importing bookmarks. Trieu aquest fitxer per començar a importar marcadors. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in El Google Chrome emmagatzema les seves adreces d'interès en el document de text <b>Bookmarks</b>. Aquest fitxer se sol trobar a Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in L'Opera emmagatzema les seves adreces d'interès en el document de text <b>bookmarks.adr</b>. Aquest fitxer se sol trobar a You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Podeu importar adreces d'interès des de qualsevol navegador que suporti l'exportació en HTML. El fitxer sol tenir aquests sufixos Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in L'Internet Explorer emmagatzema les seves adreces d'interès a la carpeta <b>Bookmarks</b>. Aquesta carpeta se sol trobar a Please choose this folder to begin importing bookmarks. Trieu aquesta carpeta per començar a importar adreces d'interès. No Error Sense errors Unable to open file. No es pot obrir el fitxer. Cannot evaluate JSON code. No es pot avaluar el codi JSON. File does not exist. El fitxer no existeix. Unable to open database. Is Firefox running? No es pot obrir la base de dades. S'està executant el Firefox? Directory does not exist. The directory does not contain any bookmarks. BookmarksManager Bookmarks Adreces d'interès Optimize Database Optimitza la base de dades Import Bookmarks Importa les adreces d'interès Add Folder Afegeix una carpeta Title Nom Url Ubicació Expand All Expandeix-ho tot Collapse All Replega-ho tot Add new folder Afegeix una carpeta nova Choose parent folder for new folder: Tria la carpeta on es crearà la carpeta nova Choose name for new bookmark folder: Trieu un nom per a la nova carpeta d'adreces d'interès: Add new subfolder Afegeix una subcarpeta nova Choose name for new subfolder in bookmarks toolbar: Trieu un nom per a la subcarpeta nova a la barra d'adreces d'interès: Rename Folder Canvia el nom a la carpeta Choose name for folder: Trieu un nom per a la carpeta: Add Subfolder Afegeix una subcarpeta Rename folder Canvia el nom a la carpeta Remove folder Suprimeix la carpeta Open link in current &tab Obre l'enllaç a la pes&tanya actual Open link in &new tab Obre l'enllaç en una pestanya &nova Move bookmark to &folder Mou l'adreça d'interès a la &carpeta Change icon Canvia la icona Rename bookmark Canvia el nom a l'adreça d'interès Remove bookmark Suprimeix l'adreça d'interès <b>Warning: </b>You already have bookmarked this page! <b>Avís: </b>Ja heu afegit aquesta pàgina a les adreces d'interès! Choose name and location of this bookmark. Trieu el nom i la localització de l'adreça d'interès. Add New Bookmark Afegeix una adreça d'interès Choose folder for bookmarks: Trieu una carpeta per a les adreces d'interès: Bookmark All Tabs Afegeix totes les pestanyes a les adreces d'interès BookmarksModel Bookmarks In Menu Adreces d'interès al menú Bookmarks In ToolBar Adreces d'interès a la barra Unsorted Bookmarks Adreces d'interès sense classificar BookmarksSideBar Search... Cerca... Open link in current &tab Obre l'enllaç a la &pestanya actual Open link in &new tab Obre l'enllaç en una &pestanya nova Copy address Copia l'adreça &Delete &Suprimeix BookmarksToolbar &Bookmark Current Page &Afegeix aquesta pàgina a les adreces d'interès Bookmark &All Tabs Afegeix &totes les pestanyes a les adreces d'interès &Organize Bookmarks &Organitza les adreces d'interès Show Most &Visited Mostra les més &visitades Show Only Icons Mostra només les icones &Hide Toolbar &Amaga la barra d'eines Open bookmark Obre l'adreça d'interès Open bookmark in new tab Obre l'adreça d'interès en una pestanya nova Move right Mou a la dreta Move left Mou a l'esquerra Edit bookmark Edita l'adreça d'interès Remove bookmark Suprimeix l'adreça d'interès Edit bookmark: Edita l'adreça d'interès: Title: Títol: Url: Adreça: Edit Bookmark Edita l'adreça d'interès Most visited Més visitades Sites you visited the most Llocs més visitats Empty Buit BookmarksTree Bookmarks Adreces d'interès New Folder... Nova carpeta BookmarksWidget Add to Speed Dial Afegeix al marcador ràpid Save Desa Name: Nom: Folder: Directori: Remove from Speed Dial Suprimeix del marcador ràpid Remove Suprimeix BrowsingLibrary Library Biblioteca Search... Cerca... History Historial Bookmarks Adreces d'interès RSS RSS Database Optimized La base de dades s'ha optimitzat Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 La base de dades s'ha optimitzat correctament.<br/><br/><b>Mida de la base de dades abans: </b>%1<br/><b>Mida de la base de dades després: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Emès per</b> Common Name (CN): Nom comú (CN): Organization (O): Organització (O): Organizational Unit (OU): Unitat organitzativa (OU): Serial Number: Número de sèrie: <b>Issued By</b> <b>Emès per</b> <b>Validity</b> <b>Validesa</b> Issued On: Emès el: Expires On: Expira el: ClearPrivateData Clear Recent History Neteja l'historial recent Choose what you want to delete: Trieu el que voleu eliminar: Clear history Historial de navegació i baixades Clear cache Memòria cau Clear icons Icones <b>Clear Recent History</b> <b>Neteja l'historial recent</b> Earlier Today Avui Week Aquesta setmana Month Aquest mes All Tot Clear web databases Base de dades Clear local storage Emmagatzematge local Clear cookies Galetes ClickToFlash Object blocked by ClickToFlash Objectes bloquejats per ClickToFlash Show more information about object Més informació de l'objecte Delete object Suprimeix l'objecte Add %1 to whitelist Afegeix %1 a la llista blanca Flash Object Objecte Flash <b>Attribute Name</b> <b>Nom de l'atribut</b> <b>Value</b> <b>Valor</b> No more information available. No hi ha més informació disponible. CookieManager Cookies Galetes Stored Cookies Galetes emmagatzemades Find: Cerca: These cookies are stored on your computer: Les galetes següents estan emmagatzemades al vostre ordinador: Server Servidor Cookie name Nom de la galeta Name: Nom: Value: Valor: Server: Servidor: Path: Ruta: Secure: Segur: Expiration: Caducitat: <cookie not selected> <galeta no seleccionada> Remove all cookies Suprimeix totes les galetes Remove cookies Suprimeix les galetes Cookie Filtering Filtre de galetes <b>Cookie whitelist</b> <b>Llista blanca</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Les galetes d'aquests servidors s'acceptaran SEMPRE (encara que s'hagi deshabilitat l'emmagatzematge de galetes) Add Afegeix Remove Suprimeix <b>Cookie blacklist</b> <b>Llista negra</b> Cookies from these servers will NEVER be accepted Les galetes d'aquests servidors no s'acceptaran MAI Settings Preferències <b>Cookie Settings</b> <b>Opcions de les galetes</b> Allow storing of cookies Permet emmagatzemar galetes Delete cookies on close Elimina les galetes en tancar Match domain exactly Coincideix amb el domini exacte Filter tracking cookies Filtra les galetes de rastreig <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! Search Cerca Confirmation Confirmació Are you sure to delete all cookies on your computer? Segur que voleu eliminar totes les galetes de l'ordinador? Secure only Només les segures All connections Totes les connexions Session cookie Galeta de la sesió Remove cookie Suprimeix la galeta Add to whitelist Afegeix a la llista blanca Add to blacklist Afegeix a la llista negra DownloadFileHelper Save file as... Anomena i desa... NoNameDownload BaixadaSenseNom DownloadItem Remaining time unavailable Temps restant desconegut Error: Cannot write to file! Hi ha hagut un error: No es pot escriure el fitxer! Done - %1 Fet - %1 Cancelled Cancel·lat few seconds pocs segons %n seconds %n minutes %n hours Unknown speed Velocitat desconeguda kB/s MB/s GB/s Unknown size Mida desconeguda %2 - unknown size (%3) %2 - mida desconeguda (%3) Remaining %1 - %2 of %3 (%4) Restant %1 - %2 de %3 (%4) Cancelled - %1 Cancel·lat - %1 Delete file Suprimeix el fitxer Do you want to also delete dowloaded file? Voleu esborrar també el fitxer baixat? Open File Obre el fitxer Open Folder Obre la carpeta on es troba Go to Download Page Vés a la pàgina de baixades Copy Download Link Copia l'enllaç de baixada Cancel downloading Cancel·la Remove Suprimeix Error Hi ha hagut un error Not found No s'ha trobat Sorry, the file %1 was not found! El fitxer %1 no s'ha trobat! Error: Hi ha hagut un error: DownloadManager Download Manager Baixades Clear Neteja la llista %1% of %2 files (%3) %4 remaining %1% de %2 fitxers (%3) %4 restants %1% - Download Manager Download Finished Les baixades s'han acabat All files have been successfully downloaded. S'han acabat de baixar tots els fitxers. Warning Avís Are you sure to quit? All uncompleted downloads will be cancelled! Segur que voleu sortir? Es cancel·laran totes les baixades en progrés! DownloadOptionsDialog Opening S'està obrint Copy download link You have chosen to open Heu triat el fitxer which is a: que és un: What should QupZilla do with this file? Què voleu que faci el QupZilla amb aquest fitxer? Open... Obre... Save File Desa el fitxer Download with External Manager Baixa amb un gestor de baixades extern from: de: Opening %1 S'està obrint %1 Download link copied. EditSearchEngine Name: Nom: Url: URL: Shortcut: Drecera: Icon: Icona: <b>Note: </b>%s in url or post data represent searched string Post Data: Change... Canvia... FileSchemeReply No Error Sense errors Up to higher level directory Puja a un directori superior Show hidden files Mostra els ocults Name Nom Size Mida Last modified Última modificació Index for %1 Índex per %1 Folder is empty. El directori està buit. FtpDownloader Cancelled! S'ha cancel·lat. FtpSchemeReply Up to higher level directory Puja a un directori superior Show hidden files Mostra els fitxers ocults Name Nom Size Mida Last modified Última modificació Index for %1 Índex per a %1 Folder is empty. La carpeta és buida. Unknown command Ordre desconeguda HTML5PermissionsDialog HTML5 Permissions Permisos d'HTML5 Notifications Notificacions Site Lloc Behaviour Comportament Remove Suprimeix Geolocation Geolocalització Allow Permet Deny Denega HTML5PermissionsNotification Remember Recorda Allow Permet Deny Denega this site aquest lloc Allow %1 to show desktop notifications? Voleu permetre que %1 mostri notificacions a l'escriptori? Allow %1 to locate your position? Voleu permetre que %1 localitzi la vostra posició? History No Named Page Pàgina sense nom January Gener February Febrer March Març April Abril May Maig June Juny July Juliol August Agost September Setembre October Octubre November Novembre December Desembre HistoryManager History Historial Delete Suprimeix Clear All History Neteja tot l'historial Optimize Database Optimitza la base de dades Confirmation Confirmació Are you sure to delete all history? Segur que voleu esborrar tot l'historial? HistoryModel Title Títol Address Adreça Visit Date Data de visita Visit Count Recompte de visites Today Avui This Week Aquesta setmana This Month Aquest mes HistorySideBar Search... Cerca... HistoryView Open link in current tab Obre l'enllaç a la pestanya actual Open link in new tab Obre l'enllaç en una pestanya nova Copy title Copia el títol Copy address Copia l'adreça Remove Suprimeix IconChooser Choose icon... Tria una icona... From file Des d'un fitxer Image (.png, .jpg, .jpeg, .gif) Imatge (.png, .jpg, .jpeg, .gif) Choose file... Tria un fitxer... From database Des d'una base de dades Site Url: Adreça del lloc: Image files Fitxers d'imatge JsOptions JavaScript Options Opcions de JavaScript Allow JavaScript to: Permet que JavaScript: Close windows Tanca la finestra Open popup windows Obre les finestres emergents Change window size Canvia la mida de la finestra Hide menu bar Amaga la barra de menú Hide status bar Amaga la barra d'estat Hide tool bar Amaga la barra d'eines Access clipboard Accedeix al porta-retalls LicenseViewer License Viewer Visualitzador de llicència LocationBar Enter URL address or search on %1 Introdueix l'adreça URL o cerca a %1 Paste And &Go Enganxa i &vés-hi Clear All Neteja-ho tot .co.uk Append domain name on ALT + Enter = Should be different for every country .cat Show information about this page Mostra l'informació de la pàgina LocationCompleterView Switch to tab Canvia a la pestanya MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? El QupZilla no és el navegador predeterminat. Voleu fer que ho sigui? Always perform this check when starting QupZilla. Fes aquesta comprovació sempre que s'iniciï el QupZilla. Default Browser Navegador per defecte QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. El QupZilla és un navegador web de codi obert nou, ràpid i segur. QupZilla està llicenciat sota GPL versió 3 o (si ho preferiu) qualsevol versió posterior. Està basat en el motor WebKit i el marc de treball Qt. MasterPasswordDialog Encrypted DataBase Settings Set/Change Master Password... Clear Master Password... This backend does not work without a master password. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Current Password: New Password: Confirm Password: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. Warning! You entered a wrong password! New/Confirm password fields do not match! Some data has not been decrypted. The master password was not cleared! Are you sure to clear master password and decrypt data? NavigationBar No Named Page Pàgina sense nom Back Enrere Forward Endavant Home Inici New Tab Obre una pestanya Main Menu Menú principal Exit Fullscreen Surt de la pantalla completa Clear history Neteja l'historial NetworkManager SSL Certificate Error! Error del certificat SSL! The page you are trying to access has the following errors in the SSL certificate: La pàgina on voleu accedir té aquests errors en el certificat SSL: <b>Organization: </b> <b>Organització: </b> <b>Domain Name: </b> <b>Nom del domini: </b> <b>Expiration Date: </b> <b>Data de caducitat: </b> <b>Error: </b> <b>Error:</b> Would you like to make an exception for this certificate? Voleu fer una excepció per aquest certificat? Authorisation required Cal una autorització Username: Nom d'usuari: Password: Contrasenya: Save username and password on this site Desa el nom d'usuari i la contrasenya en aquest lloc A username and password are being requested by %1. The site says: "%2" %1 demana un nom d'usuari i una contrasenya. El lloc diu "%2" FTP authorisation required Cal una autorització FTP Login anonymously Inicia la sessió com a anònim A username and password are being requested by %1:%2. %1:%2 demana un nom d'usuari i contrasenya. Proxy authorisation required Cal una autorització del servidor intermediari Remember username and password for this proxy. A username and password are being requested by proxy %1. El servidor intermediari %1 demana un nom d'usuari i una contrasenya. PageScreen Page Screen Captura de pantalla de la pàgina Format: Location: Browse... Save as %1 Choose location... File '%1' already exists. Do you want to overwrite it? File already exists PluginsList Application Extensions Extensions de l'aplicació Allow Application Extensions to be loaded Permet que es carreguin les extensions de l'aplicació Settings Preferències WebKit Plugins Complements del WebKit <b>Click To Flash Plugin</b> <b>Click To Flash</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Click To Flash és un complement que bloqueja la càrrega automàtica de contingut Flash a la pàgina. Sempre podreu carregar-lo manualment fent clic a l'icona de reproducció de Flash. Whitelist Llista blanca Add Afegeix Remove Suprimeix Allow Click To Flash Permet Click To Flash PluginsManager Add site to whitelist Afegeix aquesta ubicació a la llista blanca Server without http:// (ex. youtube.com) Servidor sense http:// (ex. youtube.com) Error! Hi ha hagut un error! Cannot load extension! No s'ha pogut carregar l'extensió! PopupWebView Inspect Element Inspecciona l'element PopupWindow File Fitxer &Save Page As... &Anomena i desa la pàgina... Save Page Screen Desa una captura de pantalla de la pàgina Send Link... Envia un enllaç... &Print... &Imprimeix... Close Tanca Edit Edita &Undo &Desfés &Redo &Refés &Cut &Retalla C&opy &Copia &Paste &Enganxa Select All Selecciona-ho tot Find Cerca View Visualitza &Stop &Atura &Reload &Torna a carregar Zoom &In A&mplia Zoom &Out &Redueix Reset Reinicialitza &Page Source &Font de la pàgina %1 - QupZilla %1 - QupZilla Preferences Preferences Preferències QupZilla QupZilla General General Appearance Aparença Tabs Pestanyes Browsing Navegació Fonts Fonts Keyboard Shortcuts Dreceres del teclat Downloads Baixades Password Manager Gestor de contrasenyes Privacy Privacitat Notifications Notificacions Extensions Extensions Other Altres Use current Fes servir la pàgina actual Note: You cannot delete active profile. Nota: No podeu eliminar el perfil actiu. Create New Crea un perfil nou Delete Suprimeix <b>Launching</b> <b>Inici</b> After launch: Quan s'iniciï: Open blank page Obre una pàgina en blanc Open homepage Obre la pàgina d'inici Open speed dial Obre el marcador ràpid Restore session Restaura la sessió Homepage: Pàgina d'inici: On new tab: Per la nova pestanya: Open blank tab Obre una pestanya en blanc Open other page... Obre una altra pàgina... <b>Profiles</b> <b>Perfils</b> Startup profile: Perfil d'inici: Check for updates on start Comprova les actualitzacions a l'inici Active profile: Perfil actiu: In order to change language, you must restart browser. Reinicieu el navegador per fer efectius els canvis. <b>Language</b> <b>Idioma</b> Available translations: Traduccions disponibles: Don't load tabs until selected Carrega les pestanyes un cop seleccionades Check to see if QupZilla is the default browser on startup Comprova si el QupZilla és el navegador predeterminat a l'inici Check Now Comprova-ho ara Themes Temes Advanced options Opcions avançades <b>Browser Window</b> <b>Finestra del navegador</b> Show StatusBar on start Mostra la barra d'estat Show Bookmarks ToolBar on start Mostra la barra de les adreces d'interès Show Navigation ToolBar on start Mostra la barra d'eines de navegació <b>Navigation ToolBar</b> <b>Barra d'eines de navegació</b> Show Home button Mostra el botó de la pàgina d'inici Show Back / Forward buttons Mostra els botons Anterior / Següent <b>Background<b/> <b>Fons<b/> Use transparent background Fes servir un fons transparent Show web search bar Mostra el cercador ràpid Show Add Tab button Mostra el botó d'afegir pestanya Show Reload / Stop buttons Mostra els botons Recarrega/Atura Tabs behaviour Comportament de les pestanyes Show tab previews Mostra la previsualització de les pestanyes Make tab previews animated Previsualització animada de les pestanyes Hide tabs when there is only one tab Oculta les pestanyes quan només n'hi hagi una Activate last tab when closing active tab Activa l'última pestanya en tancar la pestanya activa Open new tabs after active tab Obre les pestanyes noves al costat de la pestanya activa Open new empty tabs after active tab Obre pestanyes buides després de la pestanya activa Automatically switch to newly opened tab Canvia automàticament a la pestanya nova oberta Don't quit upon closing last tab No surtis en tancar l'última pestanya Ask when closing multiple tabs Pregunta en tancar moltes pestanyes Closed tabs list instead of opened in tab bar Llista de pestanyes tancades Address Bar behaviour Comportament de la barra d'adreces Suggest when typing into address bar: Fes suggerències en escriure a la barra de direccions: History and Bookmarks Historial i preferits History Historial Bookmarks Adreces d'interès Nothing Res Press "Shift" to not switch the tab but load the url in the current tab. Premeu "Maj" per no canviar de pestanya, sinó carregar l'URL a la pestanya activa. Propose to switch tab if completed url is already loaded. Proposa canviar de pestanya si l'URL completada ja està carregada. Always show go icon Select all text by double clicking in address bar Selecciona tot el text en fer doble clic a la barra d'adreces Select all text by clicking in address bar Selecciona tot el text en fer clic a la barra d'adreces Search with Default Engine Cerca amb el motor predeterminat Show loading progress in address bar Mostra el progrés de càrrega a la barra d'adreces Fill Omple Bottom Baix Top Dalt Custom color: Color personalitzat: Select color Selecciona un color ... ... Reset Reinicialitza Web Configuration Configuració web Allow Netscape Plugins (Flash plugin) Permet plugins Netscape (Flash plugin) Allow JavaScript Permet JavaScript Allow JAVA Permet Java Allow DNS Prefetch Permet DNS Prefetch Enable XSS Auditing try to detect possible XSS attacks when executing javascript Habilita auditories XSS Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Imprimeix també el fons de la pàgina Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Inclou enllaços a la cadena del focus Animated scrolling Desplaçament animat Enable caret browsing Habilita la navegació per cursor de text Enable spatial navigation Zoom text only Amplia només el text Mouse wheel scrolls La roda del ratolí es desplaça lines on page línies a la pàgina Default zoom on pages: Ampliació predeterminada de les pàgines: Local Storage Emmagatzematge local Maximum Màxim 50 MB 50 MB 1 1 Maximum pages in cache: Nombre màxim de pàgines a la memòria cau: Allow storing network cache on disk Emmagatzema la memòria cau Store cache in: Emmagatzema la memòria cau a: Allow saving history Desa l'historial Delete history on close Neteja l'historial en tancar Allow local storage of HTML5 web content Permet l'emmagatzematge local de contingut web HTML5 Delete locally stored HTML5 web content on close Neteja el contingut HTML5 emmagatzemat localment en tancar Delete now Neteja'l ara Proxy Configuration Configuració del servidor intermediari Proxy Auto-Config (.pac) file Reload HTTP HTTP SOCKS5 SOCKS5 Port: Port: Username: Nom d'usuari: Password: Contrasenya: Don't use on: No utilitzis en: Manual configuration Configuració manual System proxy configuration Configuració del servidor intermediari del sistema Do not use proxy Sense servidor intermediari <b>Exceptions</b> <b>Excepcions</b> Server: Servidor: Use different proxy for https connection Utilitza un servidor intermediari diferent per connexions https Use script for automatic configuration: <b>Font Families</b> <b>Famílies de fonts</b> Standard Estàndard Fixed Fixa Serif Serif Sans Serif Sans Serif Cursive Cursiva Fantasy Fantasia <b>Font Sizes</b> <b>Mida de la font</b> Fixed Font Size Mida de la font fixa Default Font Size Mida predeterminada de la font Minimum Font Size Mida mínima de la font Minimum Logical Font Size Mida mínima lògica de la font <b>Shortcuts</b> <b>Dreceres</b> Switch to tabs with Alt + number of tab Canvia de pestanya amb Alt + nombre de la pestanya Load speed dials with Ctrl + number of speed dial Carrega els marcatges ràpids amb Ctrl + nombre del marcatge ràpid Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>Ubicació de la baixada</b> Ask everytime for download location Demana'm sempre on desar els fitxers Use defined location: Fes servir una ubicació predefinida: <b>Download Options</b> <b>Opcions de baixada</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Fes servir el diàleg natiu del sistema d'arxius (podria causar problemes en baixar contingut segur SSL) Close download manager when downloading finishes Tanca el gestor de baixades quan acabin les baixades <b>External download manager</b> <b>Gestor de baixades extern</b> Use external download manager Fes servir un gestor de baixades extern Executable: Executable: Arguments: Arguments: Leave blank if unsure Deixeu-ho en blanc si no n'esteu segur <b>%d</b> will be replaced with URL to be downloaded <b>%d</b> serà substituït per l'URL que voleu baixar <b>AutoFill options</b> <b>Opcions d'autocompletat</b> Allow saving passwords from sites Recorda les contrasenyes dels llocs web Send Referer header to servers Envia l'encapçalament del referent als servidors <b>Cookies</b> <b>Galetes</b> Send Do Not Track header to servers Fes saber als llocs web que no vull que se'm segueixi <b>Other</b> <b>Altres</b> Manage CA certificates Gestiona els certificats CA Certificate Manager Gestor de certificats <b>SSL Certificates</b> <b>Certificats SSL</b> <b>JavaScript</b> <b>JavaScript</b> Manage JavaScript privacy options Gestiona les opcions de privacitat de JavaScript JavaScript options Opcions de JavaScript Cookies Manager Gestor de galetes Manage Cookies Gestiona les galetes <b>HTML5 Permissions</b> <b>Permisos d'HTML5</b> Manage HTML5 permissions Gestiona els permisos d'HTML5 HTML5 Permissions Permisos d'HTML5 <b>Notifications</b> <b>Notificacions</b> Use OSD Notifications Utiltiza notificacions OSD Use Native System Notifications (Linux only) Fes servir el sistema de notificacions natiu (només Linux) Do not use Notifications No facis servir notificacions Expiration timeout: Durada: seconds segons <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Nota: </b>Es pot canviar la posició de la notificació OSD arrossegant-la per la pantalla. StyleSheet automatically loaded with all websites: Full d'estil carregada automàticament en tots els llocs web: Languages Idiomes <b>Preferred language for web sites</b> <b>Idioma en què es mostraran preferentment les pàgines</b> <b>Change browser identification</b> <b>Canvia la identificació del navegador</b> User Agent Manager Agent d'usuari Default Set as default OSD Notification Notificació OSD Drag it on the screen to place it where you want. Arrossegueu-la per la pantalla per col·locar-la on vulgueu. Choose download location... Tria la carpeta de baixades... Choose stylesheet location... Tria la ubicació del full d'estils... Deleted Suprimit Choose executable location... Tria la ubicació de l'executable... Choose cache path... Tria la ruta de la memòria cau... New Profile Perfil nou Enter the new profile's name: Introduïu el nom del nou perfil: Error! Hi ha hagut un error! This profile already exists! Aquest perfil ja existeix! Cannot create profile directory! No s'ha pogut crear el directori del perfil! Confirmation Confirmació Are you sure to permanently delete "%1" profile? This action cannot be undone! Voleu eliminar permanentment el perfil "%1"? ¡Aquesta acció no es pot desfer! Select Color Selecciona un color QObject Native System Notification Sistema de notificació natiu Save file as... Anomena i desa... The file is not an OpenSearch 1.1 file. Aquest fitxer no és un fitxer OpenSearch 1.1. <not set in certificate> <no establert al certificat> Unknown size Mida desconeguda KB MB GB Executable: Executable: Arguments: Arguments: Cannot start external program No es pot iniciar el programa extern Cannot start external program! %1 No es pot iniciar el programa extern. %1 QtWin Open new tab Obre una pestanya nova Opens a new tab if browser is running Obre una pestanya nova si el navegador s'està executant Open new window Obre una finestra nova Opens a new window if browser is running Obre una finestra nova si el navegador s'està executant Open download manager Vés a la pàgina de baixades Opens a download manager if browser is running Vés a la pàgina de baixades si el navegador s'està executant QupZilla QupZilla QupZilla Private Browsing Enabled La navegació privada està habilitada IP Address of current page IP de la pàgina actual &About QupZilla Quant &al QupZilla Pr&eferences &Preferències Quit Surt &File &Fitxer &New Window Obre u&na finestra New Tab Obre una pestanya Open Location Introdueix URL Open &File... Close Tab Tanca la pestanya Close Window Tanca la finestra &Save Page As... &Anomena i desa... Save Page Screen Fes una captura de pantalla de la pàgina Send Link... Envia un enllaç... &Print... &Imprimeix... Import bookmarks... Importa les adreces d'interès... &Edit &Edita &Undo &Desfés &Redo &Refés &Cut &Retalla C&opy &Copia &Paste &Enganxa Select &All &Selecciona-ho tot &Find &Cerca &View &Visualitza &Navigation Toolbar Barra de &navegació &Bookmarks Toolbar Barra de les ad&reces d'interès Sta&tus Bar &Barra d'estat &Menu Bar Barra del &menú &Tabs on Top Pestan&yes a dalt &Fullscreen &Pantalla completa &Stop &Atura &Reload &Actualitza Character &Encoding &Codificació de caràcters Enable &Caret Browsing Habilita la navegació per &cursor de text Toolbars Barres d'eines Sidebars Panell lateral Zoom &In &Augmenta Zoom &Out &Redueix Reset Reinicia &Page Source Codi &font de la pàgina Hi&story &Historial &Back &Enrere &Forward En&davant &Home &Inici Show &All History &Mostra tot l'historial Closed Tabs Pestanyes tancades recentment Recently Visited Visitades recentment Most Visited Més visitades &Bookmarks Ad&reces d'interès Bookmark &This Page &Afegeix a les adreces d'interès Bookmark &All Tabs Afegeix &totes les pestanyes a les adreces d'interès Organize &Bookmarks &Organitza les adreces d'interès &Tools &Eines &Web Search &Barra de cerca Page &Info &Informació de la pàgina &Download Manager Baixa&des &Cookies Manager Mostra les &galetes &AdBlock &AdBlock RSS &Reader Lector &RSS Web In&spector &Inspecciona Clear Recent &History &Neteja l'historial recent New &Private Window &Help A&juda About &Qt &Quant a Qt Information about application Informació sobre l'aplicació Configuration Information Informació de la configuració Report &Issue &Informa d'errors Restore &Closed Tab &Restaura la pestanya tancada (Private Browsing) (Navegació privada) Empty Buit Restore All Closed Tabs Restaura totes les pestanyes tancades Clear list Neteja la llista Other Altres %1 - QupZilla %1 - QupZilla HTML files Fitxers HTML Image files Fitxers d'imatge Text files Fitxers de text All files Tots els fitxers Open file... Obre fitxer... QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Hi ha %1 pestanyes obertes i no es desarà la sessió. Segur que voleu sortir de QupZilla? Don't ask again No m'ho tornis a preguntar There are still open tabs Encara hi ha pestanyes obertes QupZillaSchemeReply No Error Sense errors Not Found No s'ha trobat Report Issue Informa d'errors If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Si experimenteu problemes amb el QupZilla, proveu a deshabilitar totes les extensions. <br/>Si amb això no solucioneu el problema, ompliu aquest formulari: Your E-mail El vostre correu electrònic Issue type Tipus d'error Issue description Descripció de l'error Send Envia E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. El correu electrònic és opcional<br/><b>Nota: </b>Abans de tot llegiu <a href=%1>aquí</a> com redactar un informe d'errors. Please fill out all required fields! Cal omplir tots els camps! Start Page Pàgina d'inici Search on Web Cerca Search results provided by DuckDuckGo Resultats de cerca proporcionats per DuckDuckGo About QupZilla Quant al QupZilla <h1>Private Browsing</h1> <h1>Navegació privada</h1> Information about version Informació de la versió Copyright Copyright Version Versió WebKit version Versió de WebKit Main developer Desenvolupador principal Contributors Col·laboradors Translators Traductors Speed Dial Marcador ràpid Add New Page Obre una pàgina nova Edit Edita Remove Suprimeix Reload Actualitza Are you sure to remove this speed dial? Segur que voleu eliminar aquest marcador? Load title from page Carrega el títol des de la pàgina Url Adreça Title Nom Apply Aplica Close Tanca New Page Pàgina nova Speed Dial settings Configuració del marcador ràpid Placement: Ubicació: Auto Auto Cover Coberta Fit Ajusta Fit Width Ajusta horizontalment Fit Height Ajusta verticalment Use background image Utilitza imatge de fons Select image Selecciona la imatge Maximum pages in a row: Màxim de pàgines per fila: Change size of pages: Canvia la mida de la pàgina: Center speed dials Centra els marcadors Restore Session Restaura la sessió Oops, QupZilla crashed. El QupZilla ha fallat. We apologize for this. Would you like to restore the last saved state? Voleu restaurar l'última sessió? Try removing one or more tabs that you think cause troubles Proveu de tancar les pestanyes que puguin causar problemes (pàgines que no segueixen l'estàndard html) Or you can start completely new session O podeu començar una nova sessió Configuration Information Informació de la configuració This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Aquesta pàgina conté informació sobre la configuració actual de QupZilla, rellevant per resoldre problemes. Incloeu aquesta informació en enviar l'informe d'errors. Browser Identification Identificació del navegador Paths Rutes Build Configuration Configuració de la compilació Preferences Preferències Option Opció Value Valor Extensions Extensions Name Nom Author Autor Description Descripció Application version Versió de l'aplicació Qt version Versió de Qt Build time Data de compilació Platform Plataforma Profile Perfil Settings Preferències Saved session Sessió desada Pinned tabs Pestanyes fixades Data Dades Themes Temes Translations Traduccions Disabled Deshabilitat <b>Enabled</b> <b>Habilitat</b> Debug build Depura la construcció WebGL support Suport WebGL Windows 7 API API de Windows 7 KDE integration Integració amb KDE Portable build Versió portàtil No available extensions. No hi ha extensions disponibles. RSSManager RSS Reader Lector RSS Empty Buit Add feed Afegeix un canal Edit feed Edita el canal Delete feed Suprimeix el canal Optimize Database Optimitza la base de dades Reload Actualitza News Notícies Loading... S'està carregant... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. No teniu cap canal RSS.<br/> Afegiu-ne algun amb la icona RSS de la barra de navegació en llocs web que ofereixin canals RSS. Add new feed Afegeix un nou canal Please enter URL of new feed: Introduïu l'URL del nou canal: New feed Nou canal Fill title and URL of a feed: Introduïu el nom i l'URL d'un canal RSS: Feed title: Nom del canal RSS: Feed URL: Adreça del canal RSS: Edit RSS Feed Edita el canal RSS Open link in current tab Obre l'enllaç a la pestanya actual Open link in new tab Obre l'enllaç en una pestanya nova Error in fetching feed Hi ha hagut un error en obtenir el canal RSS RSS feed duplicated El canal RSS està duplicat You already have this feed. Ja heu afegit aquest canal RSS. RSSNotification Add this feed into Afegeix aquest canal a Add Afegeix RSS feed <b>"%1"</b> Canal RSS <b>"%1"</b> Internal Reader Lector intern Other... Altres... Liferea not running Liferea no s'està executant Liferea must be running in order to add new feed. Liferea ha d'estar en execució per tal d'afegir un nou canal. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Per afegir aquest canal RSS en una altra aplicació, feu servir aquesta informació:<br/><br/><b>Títol: </b>%1<br/><b>Adreça: </b>%2<br/><br/>L'adreça d'aquest canal s'ha copiat al porta-retalls. Add feed into other application Afegeix el canal en una altra aplicació RSSWidget Add RSS Feeds from this site Afegeix canals RSS des d'aquest lloc Untitled feed Canal sense títol Add Afegeix RecoveryWidget Start New Session Inicia una nova sessió Restore Restaura Window %1 Finestra %1 RegisterQAppAssociation Warning! Alerta! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) Hi ha hagut problemes. Reinstal·leu el QupZilla. També podeu provar d'executar-lo amb permisos d'administrador. RssIcon Add RSS from this page... Afegeix RSS d'aquesta pàgina... SSLManager Certificate Manager Gestor de certificats CA Authorities Certificates Certificats d'autoritats CA Show info Mostra la informació This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Aquesta és una llista de certificats d'autoritats CA emmagatzemats en la ruta estàndard del sistema i en les rutes especificades per l'usuari. Local Certificates Certificats locals Import Importa Remove Suprimeix This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Aquesta és una llista de certificats locals emmagatzemats en el vostre perfil d'usuari. També conté tots els certificats que han rebut una excepció. Settings Preferències Add Afegeix If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Si els certificats d'autoritats CA no s'han carregat automàticament des del sistema, podeu especificar manualment la ruta on estan emmagatzemats. <b>NOTE:</b> Setting this option is a high security risk! <b>NOTA:</b> Establir aquesta opció comporta un alt risc de seguretat! Ignore all SSL Warnings Ignora tots els avisos SSL All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Tots els certificats han de tenir el sufix .crt. Després d'afegir o eliminar les rutes de certificats, és necessari reiniciar el QupZilla per fer efectius els canvis. Choose path... Tria una ruta... Import certificate... Importa el certificat... Certificate Informations Informació del certificat SearchEnginesDialog Manage Search Engines Gestiona els motors de cerca Add... Afegeix... Remove Suprimeix Edit Edita Set as default Estableix com a predeterminat Up Amunt Down Avall Search Engine Motor de cerca Shortcut Drecera Defaults Per defecte Add Search Engine Afegeix un motor de cerca Remove Engine Suprimeix el motor de cerca You can't remove the default search engine.<br>Set a different engine as default before removing %1. No es pot suprimir el motor de cerca per defecte.<br>Establiu-ne un altre com a predeterminat abans de suprimir %1. Edit Search Engine Edita el motor de cerca SearchEnginesManager Search Engine Added S'ha afegit el motor de cerca Search Engine "%1" has been successfully added. El motor de cerca "%1" s'ha afegit correctament. Search Engine is not valid! El motor de cerca no és vàlid! Error Hi ha hagut un error Error while adding Search Engine <br><b>Error Message: </b> %1 S'ha produït un error en afegir el motor de cerca <br><b>Missatge d'error:</b> %1 SearchToolBar No results found. No s'ha trobat cap resultat. SearchToolbar Search: Cerca: Search... Cerca... Highlight Ressalta-ho tot Case sensitive Distingeix entre majúscules i minúscules SideBar Bookmarks Adreces d'interès History Historial SiteInfo Site Info Informació del lloc General General Media Multimèdia Databases Bases de dades Security Seguretat Size: Mida: Site address: Adreça del lloc: Encoding: Codificació: Meta tags of site: Metaetiquetes del lloc: Tag Etiqueta Value Valor <b>Security information</b> <b>Informació de seguretat</b> Details Detalls Image Imatge Image address Adreça de la imatge <b>Preview</b> <b>Previsualització</b> <b>Database details</b> <b>Detalls de la base de dades</b> Name: Nom: Path: Ruta: <database not selected> <base de dades no seleccionada> <not set in certificate> <no definida al certificat> No databases are used by this page. Aquesta pàgina no fa servir bases de dades. <b>Connection is Encrypted.</b> <b>La connexió està encriptada.</b> <b>Your connection to this page is secured with this certificate: </b> <b>La connexió a aquesta pàgina és segura amb aquest cerficat: </b> <b>Connection Not Encrypted.</b> <b>La connexió no està encriptada.</b> <b>Your connection to this page is not secured!</b> <b>La connexió a aquesta pàgina no és segura!</b> Copy Image Location Copia la ubicació de la imatge Copy Image Name Copia el nom de la imatge Save Image to Disk Anomena i desa la imatge Error! Hi ha hagut un error! This preview is not available! La previsualització no està disponible! Save image... Desa la imatge... Cannot write to file! No es pot escriure el fitxer! Preview not available La previsualització no està disponible SiteInfoWidget More... Més... Your connection to this site is <b>secured</b>. La connexió en aquesta ubicació és <b>segura</b>. Your connection to this site is <b>unsecured</b>. La connexió en aquesta ubicació és <b>insegura</b>. This is your <b>%1</b> visit of this site. Aquesta és la <b>%1</b> vegada que visiteu aquest lloc. You have <b>never</b> visited this site before. No heu visitat <b>mai</b> aquest lloc. first primera second segona third tercera SourceViewer Source of Font de File Fitxer Load in page Carrega a la pàgina Save as... Anomena i desa... Close Tanca Edit Edita Undo Desfés Redo Refés Cut Retalla Copy Copia Paste Enganxa Select All Selecciona-ho tot Find Cerca Go to Line... Vés a la línia... View Visualitza Reload Actualitza Editable Editable Word Wrap Ajustament de línia Source loaded in page La font s'ha carregat a la pàgina Cannot load in page. Page has been closed. No s'ha pogut carregar a la pàgina. S'ha tancat la pàgina. Save file... Desa el fitxer... Error! Hi ha hagut un error! Cannot write to file! No es pot escriure el fitxer! Error writing to file Hi ha hagut un error en escriure el fitxer Source successfully saved La font s'ha desat correctament Source reloaded S'ha recarregat la font Cannot reload source. Page has been closed. No es pot recarregar la font. S'ha tancat la pàgina. Editable changed S'ha canviat l'editable Word Wrap changed S'ha modificat l'ajustament de línia Enter line number Introdueix un número de línea SourceViewerSearch Search: Cerca: Search... Cerca... Whole words Paraules senceres SpeedDial Image files Fitxers d'imatge Select image... Selecciona la imatge... Unable to load No s'ha pogut carregar SpellCheckDialog SpellCheck Corrector ortogràfic <b>Dictionary path</b> <b>Ruta del diccionari</b> Change... Canvia... <b>User dictionary</b> <b>Diccionari de l'usuari</b> Add Afegeix Remove Suprimeix Using Hunspell library S'està utilitzant el corrector Hunspell Choose dictionary path... Tria la ruta del diccionari... Add new word... Afegeix una paraula... Add new word: Afegeix una paraula: Speller No suggestions No hi ha cap suggeriment Add to dictionary Afegeix al diccionari Settings Configuració SqueezeLabelV2 Copy Copia SslErrorDialog SSL Certificate Error! Only for this session TabBar &New tab Pestanya &nova &Stop Tab &Atura la pestanya &Reload Tab &Actualitza la pestanya &Duplicate Tab &Duplica la pestanya D&etach Tab Un&pin Tab Desan&cora la pestanya &Pin Tab An&cora la pestanya Re&load All Tabs &Actualitza totes les pestanyes &Bookmark This Tab &Afegeix aquesta pestanya a les adreces d'interès Bookmark &All Tabs Afegeix &totes les pestanyes a les adreces d'interès Close Ot&her Tabs Tanca les &altres pestanyes Cl&ose &Tanca Reloa&d All Tabs Act&ualitza totes les pestanyes Restore &Closed Tab Restaura la &pestanya tancada Close Tabs Do you really want to close other tabs? TabWidget New Tab Pestanya nova List of tabs Llista de pestanyes Loading... S'està carregant... No Named Page Pàgina sense nom Currently you have %1 opened tabs Actualment hi ha %1 pestanyes obertes New tab Pestanya nova Empty Buit Restore All Closed Tabs Restaura totes les pestanyes tancades Clear list Neteja la llista TabbedWebView Loading... S'està carregant... %1 - QupZilla %1 - QupZilla Inspect Element Inspecciona l'element ThemeManager <b>Name:</b> <b>Nom:</b> <b>Author:</b> <b>Autor:</b> <b>Description:</b> <b>Descripció:</b> License Llicència ToolButton Stop Atura Reload Actualitza Updater Update available Hi ha una actualització disponible New version of QupZilla is ready to download. Hi ha una nova versió del QupZilla disponible. Update Actualitza UserAgentDialog User Agent Manager Gestor de l'agent d'usuari Change global User Agent Canvia l'agent d'usuari global Use different User Agents for specified sites Utilitza un agent d'usuari diferent per a certs llocs Site Lloc web User Agent Agent d'usuari Add Afegeix Remove Suprimeix Edit Edita Add new site Afegeix un lloc web Edit site Edita el lloc web Site domain: Domini del lloc: User Agent: Agent d'usuari: WebInspectorDockWidget Web Inspector Inspecciona l'element WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? El QupZilla no pot gestionar enllaços <b>%1:</b>. L'enllaç requerit és <ul><li>%2</li></ul>. Voleu que el QupZilla intenti obrir aquest enllaç amb una altra aplicació del sistema? Remember my choice for this protocol Recorda la meva elecció per a aquest protocol External Protocol Request Sol·licitud de protocol extern To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Per mostrar la pàgina, el QupZilla ha d'enviar informació que repetirà qualsevol acció (com ara una cerca o una confirmació de tramesa) realitzada anteriorment Confirm form resubmission Confirmeu el reenviament del formulari Select files to upload... Selecciona els fitxers per carregar... Server refused the connection El servidor ha rebutjat la connexió Server closed the connection El servidor ha tancat la connexió Server not found No s'ha trobat el servidor Connection timed out La connexió ha expirat Untrusted connection La connexió no és fiable Temporary network failure S'ha produït una caiguda temporal de la xarxa Proxy connection refused S'ha rebutjat la connexió del servidor intermediari Proxy server not found No s'ha trobat el servidor intermediari Proxy connection timed out Ha expirat el temps de connexió al servidor intermediari Proxy authentication required Cal l'autentificació del servidor intermediari Content not found No s'ha trobat el contingut Unknown network error Hi ha hagut un error de xarxa desconegut AdBlocked Content Contingut bloquejat per l'AdBlock Blocked by <i>%1</i> Bloquejat per <i>%1</i> Content Access Denied S'ha denegat l'accés al contingut Error code %1 Codi d'error %1 Failed loading page No s'ha pogut carregar la pàgina QupZilla can't load page. No s'ha pogut carregar la pàgina. QupZilla can't load page from %1. El QupZilla no pot carregar la pàgina de %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Comproveu que no s'hagin introduït errors en teclejar l'adreça com ara <b>ww.</b>exemple.com enlloc de <b>www.</b>exemple.com If you are unable to load any pages, check your computer's network connection. Si no podeu carregar cap pàgina, comproveu la connexió a Internet. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Si el vostre ordinador o xarxa estan protegits per un servidor intermediari o un tallafocs, assegureu-vos que el QupZilla té permès l'accés a Internet. Try Again Torna-ho a provar JavaScript alert Alerta JavaScript Prevent this page from creating additional dialogs Evita que aquesta pàgina creï diàlegs addicionals Choose file... Tria un fitxer... Cannot read data from <b>%1</b>. Upload was cancelled! Cannot read file! WebSearchBar Manage Search Engines Gestiona els motors de cerca Add %1 ... Afegeix %1 ... Paste And &Search Enganxa i &vés-hi Clear All Neteja-ho tot Show suggestions Mostra les suggerències Search when engine changed Cerca quan es canviï el motor WebView No Named Page Pàgina sense nom Create Search Engine Crea un motor de cerca Cut Copy Paste Select All Default Left to Right Right to Left Bold Italic Underline &Reload &Actualitza S&top &Atura Delete &Back &Enrere &Forward En&davant This frame Aquest marc Show &only this frame M&ostra únicament aquest marc Show this frame in new &tab Mostra aquest marc en una &pestanya nova Print frame Imprimeix el marc Zoom &in &Augmenta &Zoom out &Redueix Reset Reinicia Show so&urce of frame Mostra el codi &font del marc Book&mark page Afegeix aquesta pàgina a les adreces d'&interès &Save page as... &Anomena i desa... &Copy page link Cop&ia l'enllaç de la pàgina Send page link... Envia l'enllaç de la pàgina... &Print page &Imprimeix la pàgina Select &all Selecciona-ho &tot Validate page Valida la pàgina Show so&urce code Mostra el codi &font de la pàgina Show info ab&out site Mostra la &informació de la pàgina Open link in new &tab Obre l'enllaç en una nova &pestanya Open link in new &window Obre l'enllaç en una nova &finestra B&ookmark link Afegeix l'enllaç a les adreces d'&interès &Save link as... &Anomena i desa l'enllaç... Send link... Envia l'enllaç... &Copy link address Copi&a la ruta de l'enllaç Show i&mage Visualitza la &imatge Copy im&age Co&pia la imatge Copy image ad&dress C&opia la ruta de la imatge &Save image as... &Anomena i desa la imatge... Send image... Envia la imatge... Send text... Envia el text... Google Translate Traductor de Google Dictionary Diccionari Go to &web address Vés a l'&adreça Search "%1 .." with %2 Cerca "%1 .." amb %2 Search with... Cerca amb... &Play &Reprodueix &Pause &Pausa Un&mute &Treu el silenci &Mute &Silencia &Copy Media Address Copi&a la ruta del contingut multimèdia &Send Media Address &Envia la ruta del contingut multimèdia Save Media To &Disk Desa el contigut multimèdia al &disc Check &Spelling Revisa l'&ortografia Languages Idiomes jsAlert Prevent this page from creating additional dialogs Evita que aquesta pàgina creï diàlegs addicionals qupzilla-1.6.0/translations/cs_CZ.ts000066400000000000000000010565271226107126500174730ustar00rootroot00000000000000 AboutDialog About QupZilla O QupZille Authors Autoři Authors and Contributors Autoři a Spolupracovníci < About QupZilla < O QupZille <p><b>Application version %1</b><br/> <p><b>Verze aplikace %1</b><br/> <b>WebKit version %1</b></p> <b>Verze WebKitu %1</b></p> <small>Build time: %1 </small></p> <small>Datum sestavení: %1</small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Hlavní vývojář:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Přispěvatelé</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Překladatelé</b><br/>%1</p> AcceptLanguage Preferred Languages Preferované jazyky Add... Přidat... Remove Odstranit Up Nahoru Down Dolů Personal [%1] Vlastní [%1] AdBlockAddSubscriptionDialog Add Subscription Přidat sadu filtrů Title: Název: Address: Adresa: Add new subscription to AdBlock: Přidat sadu filtrů do AdBlocku: AdBlockCustomList Custom Rules Vlastní pravidla AdBlockDialog AdBlock Configuration Nastavení AdBlocku Enable AdBlock Povolit AdBlock Search... Hledat... Options Možnosti AdBlock AdBlock Use only essential part of EasyList (for performance reasons) Použít jen nejpotřebnější část EasyListu (kvůli výkonu) Add Rule Přidat pravidlo Remove Rule Odstranit pravidlo Add Subscription Přidat sadu filtrů Remove Subscription Odstranit sadu filtrů Update Subscriptions Aktualizovat sady filtrů Learn about writing rules... Zjistit více o psaní pravidel... AdBlockIcon AdBlock lets you block unwanted content on web pages AdBlock blokuje nevyžádaný obsah na stránkách Blocked popup window Zablokováno vyskakovací okno AdBlock blocked unwanted popup window. AdBlock zablokoval nevyžádané vyskakovací okno. AdBlock AdBlock Show AdBlock &Settings Zobrazit &nastavení AdBlocku Disable on %1 Vypnout na %1 Disable only on this page Vypnout pouze na této stránce Blocked Popup Windows Zablokovaná vyskakovací okna %1 with (%2) %1 s (%2) No content blocked Žádný obsah nebyl zablokován Blocked URL (AdBlock Rule) - click to edit rule Blokovaná adresa (AdBlock pravidlo) - kliknutím upravíte pravidlo AdBlockManager Do you want to add <b>%1</b> subscription? Chcete přidat <b>%1</b> sadu filtrů? AdBlock Subscription AdBlock sada filtrů EasyList EasyList AdBlockTreeWidget Add Rule Přidat pravidlo Remove Rule Odstranit pravidlo Add Custom Rule Přidat vlastní pravidlo Please write your rule here: Napište zde nové pravidlo: %1 (recently updated) %1 (aktualizováno) AddAcceptLanguage Add Language Přidat jazyk Choose preferred language for web sites Zvolte preferované jazyky pro webové stránky Personal definition: Vlastní definice: AesInterface Warning! Upozornění! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. Data byla zašifrovaná novější verzí QupZilly. Nainstalujte si prosím nejnovější verzi QupZilly. AutoFill Database (plaintext) Databáze (plaintext) Database (encrypted) Databáze (šifrovaná) Enter Master Password Zadejte hlavní heslo Permission is required, please enter Master Password: Je potřeba oprávnění, zadejte hlavní heslo: Warning! Upozornění! Entered password is wrong! Zadané heslo není správné! This backend needs a master password to be set! QupZilla just switches to its default backend Tento backend vyžaduje nastavené hlavní heslo! QupZilla se prostě přepne na svůj standardní backend. AutoFillManager Passwords are stored in: Hesla jsou uložena v: Change backend Změnit backend Backend options Možnosti backendu Passwords Hesla Server Server Username Uživatel Password Heslo Import/Export Import/Export Show Passwords Zobrazit hesla Edit Upravit Remove Odstranit Remove All Odstranit vše Exceptions Výjimky Import Passwords from File... Importovat hesla ze souboru... Export Passwords to File... Exportovat hesla do souboru... Search Hledat Change backend... Změnit backend... Change backend: Změnit backend: Are you sure that you want to show all passwords? Jste si jistí že chcete zobrazit všechna hesla? Hide Passwords Skrýt hesla Confirmation Potvrzení Are you sure to delete all passwords on your computer? Opravdu si přejete smazat všechna hesla? Edit password Upravit heslo Change password: Změnit heslo: Choose file... Vyberte soubor... Cannot read file! Nelze číst ze souboru! Successfully imported Úspěšně importováno Error while importing! Chyba během importování! Cannot write to file! Velze zapisovat do souboru! Successfully exported Úspěšně exportováno AutoFillNotification Update Aktualizovat Remember Zapamatovat Never For This Site Nikdy pro tuto stránku Not Now Nyní ne on %1 na %1 for <b>%1</b> pro <b>%1</b> Do you want QupZilla to update saved password %1? Chcete aby QupZilla aktualizovala uložené heslo %1? Do you want QupZilla to remember the password %1 %2? Chcete aby si QupZilla zapamatovala heslo %1 %2? AutoFillWidget Choose username to login Zvolte uživatelské jméno k přihlášení Login Přihlásit Login as <b>%1</b> Přihlásit jako <b>%1</b> BookmarkIcon Bookmark this Page Přidat stránku do záložek Edit this bookmark Upravit záložku BookmarksImportDialog Import Bookmarks Import záložek <b>Import Bookmarks</b> <b>Import záložek</b> From File Ze souboru Internet Explorer Internet Explorer Choose browser from which you want to import bookmarks: Vyberte ze kterého prohlížeče chcete importovat záložky: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Poznámka:</b> Momentálně pouze import z html souboru importuje také složky. Choose... Vybrat... Try to fetch icons for all bookmarks (may take a while) Pokusit se získat ikony pro všechny záložky (může chvíli trvat) Fetching icons, please wait... Získávám ikony, prosím čekejte... Title Titulek Url Adresa Next Další Cancel Zrušit <b>Importing from %1</b> <b>Importuji z %1</b> Finish Dokončit Please press Finish to complete importing process. Kliknutím na Dokončit uložíte záložky. Error! Chyba! The file doesn't contain any bookmark. Tento soubor neobsahuje žádné záložky. Choose directory... Zvolte složku... Choose file... Vyberte soubor... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox ukládá své záložky v SQLite databázi <b>places.sqlite</b>. Tento soubor se obvykle nachází v Please choose this file to begin importing bookmarks. Vyberte prosím tento soubor pro zahájení importu. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Google Chrome ukládá své záložky v textovém souboru <b>Bookmarks</b>. Tento soubor se obvykle nachází v Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera ukládá své záložky v textovém souboru <b>bookmarks.adr</b>. Tento soubor se obvykle nachází v You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Záložky můžete importovat z kteréhokoliv prohlížeče který podporuje export do HTML. Tento soubor má obvykle tyto přípony Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Explorer ukládá své záložky ve složce <b>Oblíbené</b>. Tato složka se obvykle nachází v Please choose this folder to begin importing bookmarks. Vyberte prosím tuto složku pro zahájení importu. No Error Žádná chyba Unable to open file. Nepodařilo se otevřít soubor. Cannot evaluate JSON code. Nelze spustit JSON kód. File does not exist. Soubor neexistuje. Unable to open database. Is Firefox running? Nepodařilo se otevřít databázi. Je Firefox spuštěn? Directory does not exist. Adresář neexistuje. The directory does not contain any bookmarks. Adresář neobsahuje žádné záložky. BookmarksManager Bookmarks Záložky Optimize Database Optimalizovat databázi Import Bookmarks Import záložek Add Folder Přidat složku Title Titulek Url Adresa Expand All Rozbalit vše Collapse All Sbalit vše Add new folder Přidat složku Choose parent folder for new folder: Vyberte nadřazenou složku pro novou složku: Choose name for new bookmark folder: Zvolte jméno pro novou složku: Add new subfolder Přidat podsložku Choose name for new subfolder in bookmarks toolbar: Zvolte jméno pro novou podsložku v panelu záložek: Rename Folder Přejmenovat složku Choose name for folder: Zvolte jméno pro složku: Add Subfolder Přidat podsložku Rename folder Přejmenovat složku Remove folder Odstranit složku Open link in current &tab Otevřít odkaz v &aktuálním panelu Open link in &new tab Otevřít odkaz v novém &panelu Move bookmark to &folder Přesunout záložku do &složky Change icon Změnit ikonu Rename bookmark Přejmenovat záložku Remove bookmark Odstranit záložku <b>Warning: </b>You already have bookmarked this page! <b>Upozornění: </b>Tuto stránku již máte v záložkách! Choose name and location of this bookmark. Zvolte jméno a umístění záložky. Add New Bookmark Přidat záložku Choose folder for bookmarks: Zvolte složku pro záložky: Bookmark All Tabs Přidat všechny panely do záložek BookmarksModel Bookmarks In Menu Záložky v menu Bookmarks In ToolBar Panel záložek Unsorted Bookmarks Nesetříděné záložky BookmarksSideBar Search... Hledat... Open link in current &tab Otevřít odkaz v &aktuálním panelu Open link in &new tab Otevřít odkaz v novém &panelu Copy address Kopírovat adresu &Delete &Odstranit BookmarksToolbar &Bookmark Current Page Přidat &stránku do záložek Bookmark &All Tabs Přidat &všechny panely do záložek &Organize Bookmarks Organizovat &záložky Show Most &Visited Zobrazit &Nejnavštěvovanější Show Only Icons Zobrazit pouze ikony &Hide Toolbar S&krýt panel Open bookmark Otevřít záložku Open bookmark in new tab Otevřít záložku v novém panelu Move right Posunout doprava Move left Posunout doleva Edit bookmark Upravit záložku Remove bookmark Odstranit záložku Edit bookmark: Upravit záložku: Title: Titulek: Url: Url: Edit Bookmark Upravit záložku Most visited Nejnavštěvovanější Sites you visited the most Nejvíce navštěvované stránky Empty Prázdný BookmarksTree Bookmarks Záložky New Folder... Nová složka... BookmarksWidget Add to Speed Dial Přidat do rychlé volby Save Uložit Name: Název: Folder: Složka: Remove from Speed Dial Odebrat z rychlé volby Remove Odstranit BrowsingLibrary Library Knihovna Search... Hledat... History Historie Bookmarks Záložky RSS RSS Database Optimized Databáze optimalizována Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 Databáze byla úspěšně optimalizována.<br/><br/><b>Velikost databáze před: </b>%1<br/><b>Velikost databáze po: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Vydáno pro</b> Common Name (CN): Obecné jméno (CN): Organization (O): Organizace (O): Organizational Unit (OU): Jednotka organizace (OU): Serial Number: Sériové číslo: <b>Issued By</b> <b>Vydal</b> <b>Validity</b> <b>Platnost</b> Issued On: Vydáno dne: Expires On: Platný do: ClearPrivateData Clear Recent History Vymazat nedávnou historii Choose what you want to delete: Vyberte co chcete smazat: Clear history Smazat historii Clear cache Vyprázdnit vyrovnávací paměť Clear icons Smazat ikony <b>Clear Recent History</b> <b>Vymazat nedávnou historii</b> Earlier Today Dnes Week Týden Month Měsíc All Vše Clear web databases Smazat webové databáze Clear local storage Smazat lokální úložiště Clear cookies Smazat cookies ClickToFlash Object blocked by ClickToFlash Objekt zablokován ClickToFlash pluginem Show more information about object Zobrazit více informací o objektu Delete object Odstranit objekt Add %1 to whitelist Přidat %1 na bílou listinu Flash Object Flash objekt <b>Attribute Name</b> <b>Jméno atributu</b> <b>Value</b> <b>Hodnota</b> No more information available. Žádné další informace. CookieManager Cookies Cookies Stored Cookies Uložené cookies Find: Najít: These cookies are stored on your computer: Tyto cookies jsou uloženy v počítači: Server Server Cookie name Název cookies Name: Název: Value: Obsah: Server: Server: Path: Cesta: Secure: Zasláno pro: Expiration: Platnost do: <cookie not selected> <nebylo zvoleno cookie> Remove all cookies Odebrat všechny cookies Remove cookies Odebrat cookies Cookie Filtering Filtrování cookies <b>Cookie whitelist</b> <b>Bílá listina</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Cookies z těchto serverů budou VŽDY uložené (i když máte zakázáno ukládání cookies) Add Přidat Remove Odstranit <b>Cookie blacklist</b> <b>Černá listina</b> Cookies from these servers will NEVER be accepted Cookies z těchto serverů budou vždy odmítnuté Settings Nastavení <b>Cookie Settings</b> <b>Nastavení cookies</b> Allow storing of cookies Povolit přijímání cookies Delete cookies on close Vymazat cookies při zavření prohlížeče Match domain exactly Vyžadovat přesnou shodu domény Filter tracking cookies Filtrovat sledovací cookies <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! <b>Upozornění:</b> Volby vyžadovat přesnou shodu domény a filtrovat sledovací cookies mohou vést k odmítnutí cookies z některých stránek. Pokud máte s cookies problémy, zkuste nejdřív zakázat tyto možnosti! Search Vyhledávání Confirmation Potvrzení Are you sure to delete all cookies on your computer? Opravdu chcete vymazat všechny cookies z počítače? Secure only Zabezpečené připojení All connections Libovolný typ připojení Session cookie konce relace Remove cookie Odebrat cookie Add to whitelist Přidat do bílé listiny Add to blacklist Přidat do černé listiny DownloadFileHelper Save file as... Uložit soubor jako... NoNameDownload BezNazvu DownloadItem Remaining time unavailable Neznámý zbývající čas Error: Cannot write to file! Chyba: Nelze zapisovat do souboru! Done - %1 Hotovo - %1 Cancelled Zrušeno few seconds několik sekund %n seconds %n minutes %n hours Unknown speed Neznámá rychlost kB/s kB/s MB/s MB/s GB/s GB/s Unknown size Neznámá velikost %2 - unknown size (%3) %2 - neznámá velikost (%3) Remaining %1 - %2 of %3 (%4) Zbývá %1 - %2 z %3 (%4) Cancelled - %1 Zrušeno - %1 Delete file Smazat soubor Do you want to also delete dowloaded file? Chcete také smazat stahovaný soubor? Open File Otevřít soubor Open Folder Otevřít složku Go to Download Page Přejít na stránku stahování Copy Download Link Kopírovat stahovaný odkaz Cancel downloading Zrušit stahování Remove Odstranit Error Chyba Not found Soubor neexistuje Sorry, the file %1 was not found! Soubor %1 nebyl nalezen! Error: Chyba: DownloadManager Download Manager Správce stahování Clear Vyčistit %1% of %2 files (%3) %4 remaining %1% z %2 souborů (%3) %4 zbyvá %1% - Download Manager %1% - Správce stahování Download Finished Stahování dokončeno All files have been successfully downloaded. Všechna stahování byla úspěšně dokončena. Warning Varování Are you sure to quit? All uncompleted downloads will be cancelled! Jste si jistý že chcete skončit? Všechna nedokončená stahování budou zrušena! DownloadOptionsDialog Opening Otevírám Copy download link Zkopírovat odkaz ke stažení You have chosen to open Zvolili jste otevřít which is a: což je: What should QupZilla do with this file? Co má QupZilla udělat s tímto souborem? Open... Otevřít... Save File Uložit soubor Download with External Manager Stáhnout pomocí externího manažeru from: z: Opening %1 Otevírám %1 Download link copied. Odkaz ke stažení zkopírován EditSearchEngine Name: Název: Url: Url: Shortcut: Zkratka: Icon: Ikona: <b>Note: </b>%s in url or post data represent searched string <b>Poznámka: </b> %s v url nebo v odesílaných datech reprezentuje hledaný řetězec Post Data: Data k odeslání: Change... Změnit... FileSchemeReply No Error Žádná chyba Up to higher level directory O adresář výše Show hidden files Zobrazit skryté soubory Name Název Size Velikost Last modified Změněno Index for %1 Index pro %1 Folder is empty. Složka je prázdná. FtpDownloader Cancelled! Zrušeno! FtpSchemeReply Up to higher level directory O adresář výše Show hidden files Zobrazit skryté soubory Name Název Size Velikost Last modified Změněno Index for %1 Index pro %1 Folder is empty. Složka je prázdná. Unknown command Neznámý příkaz HTML5PermissionsDialog HTML5 Permissions HTML5 Oprávnění Notifications Oznámení Site Stránka Behaviour Chování Remove Odstranit Geolocation Geolokace Allow Povolit Deny Zakázat HTML5PermissionsNotification Remember Zapamatovat Allow Povolit Deny Zakázat this site této stránce Allow %1 to show desktop notifications? Povolit %1 zobrazovat oznámení na ploše? Allow %1 to locate your position? Povolit %1 zjistit vaši polohu? History No Named Page Bezejmenná stránka January Leden February Únor March Březen April Duben May Květen June Červen July Červenec August Srpen September Září October Říjen November Listopad December Prosinec HistoryManager History Historie Delete Odstranit Clear All History Vymazat celou historii Optimize Database Optimalizovat databázi Confirmation Potvrzení Are you sure to delete all history? Opravdu chcete vymazat celou historii? HistoryModel Title Titulek Address Adresa Visit Date Datum návštěvy Visit Count Počet návštěv Today Dnes This Week Tento týden This Month Tento měsíc HistorySideBar Search... Hledat... HistoryView Open link in current tab Otevřít odkaz v aktuálním panelu Open link in new tab Otevřít odkaz v novém panelu Copy title Kopírovat titulek Copy address Kopírovat adresu Remove Odstranit IconChooser Choose icon... Vyberte ikonu... From file Ze souboru Image (.png, .jpg, .jpeg, .gif) Obrázek (.png, .jpg, .jpeg, .gif) Choose file... Vyberte soubor... From database Z databáze Site Url: Adresa stránky: Image files Obrázky JsOptions JavaScript Options Nastavení JavaScriptu Allow JavaScript to: Povolit JavaScriptu: Close windows Zavírat okna Open popup windows Otevírat vyskakovací okna Change window size Měnit velikost okna Hide menu bar Skrýt menubar Hide status bar Skrýt statusbar Hide tool bar Skrýt panel nástrojů Access clipboard Přistupovat do schránky LicenseViewer License Viewer Prohlížeč licence LocationBar Enter URL address or search on %1 Zadejte internetovou adresu nebo vyhledávejte na %1 Paste And &Go Vložit a přejít &na Clear All Vymazat vše .co.uk Append domain name on ALT + Enter = Should be different for every country .cz Show information about this page Zobrazit informace o stránce LocationCompleterView Switch to tab Přepnout na panel MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? QupZilla není výchozím prohlížečem. Chcete nastavit QupZillu jak výchozí prohlížeč? Always perform this check when starting QupZilla. Kontrolovat při každém startu aplikace. Default Browser Výchozí prohlížeč QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. QupZilla je nový, rychlý a bezpečný open-source WWW prohlížeč. QupZilla je licencována pod GPL verze 3 nebo (podle vaší volby) jakékoliv vyšší verze. Prohlížeč je založen na jádru WebKit a Qt Frameworku. MasterPasswordDialog Encrypted DataBase Settings Nastavení šifrované databáze Set/Change Master Password... Nastavit/změnit hlavní heslo... Clear Master Password... Zrušit hlavní heslo... This backend does not work without a master password. Tento backend bez hlavního hesla nefunguje. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. Tato možnost ruší hlavní heslo, přesouvá všechna zašifrovaná data do backendu s plaintextovou databází a přepíná na něj. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Hlavní heslo se používá k ochraně hesel ke stránkám a formulářovým údajům. Po jeho nastavení o něj budete požádáni při každé relaci. Current Password: Stávající heslo: New Password: Nové heslo: Confirm Password: Potvrdit heslo: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. <b>Poznámka:</b> Hlavní heslo nelze resetovat, tak ho nezapomeňte. Warning! Upozornění! You entered a wrong password! Zadali jste špatné heslo! New/Confirm password fields do not match! Políčka hesel se neshodují! Some data has not been decrypted. The master password was not cleared! Některá data byla dešifrována. Hlavní heslo nebylo zrušeno! Are you sure to clear master password and decrypt data? Jste si jistí, že chcete zrušit hlavní heslo a dešifrovat data? NavigationBar No Named Page Bezejmenná stránka Back Zpět Forward Vpřed Home Domů New Tab Nový panel Main Menu Hlavní menu Exit Fullscreen Zrušit celou obrazovku Clear history Smazat historii NetworkManager SSL Certificate Error! Chyba zabezpečení! The page you are trying to access has the following errors in the SSL certificate: Stránka kterou se snažíte navštívit zaslala SSL Certifikát s těmito chybami: <b>Organization: </b> <b>Organizace: </b> <b>Domain Name: </b> <b>Doména: </b> <b>Expiration Date: </b> <b>Vyprší: </b> <b>Error: </b> <b>Chyba: </b> Would you like to make an exception for this certificate? Chcete udělit výjimku tomuto certifikátu? Authorisation required Vyžadována autorizace Username: Uživatelské jméno: Password: Heslo: Save username and password on this site Uložit jméno a heslo pro tuto stránku A username and password are being requested by %1. The site says: "%2" Server %1 požaduje vaše uživatelské jméno a heslo s komentářem: "%2" FTP authorisation required Vyžadována FTP autorizace Login anonymously Připojit se anonymně A username and password are being requested by %1:%2. Server %1:%2 požaduje uživatelské jméno a heslo. Proxy authorisation required Vyžadována proxy autorizace Remember username and password for this proxy. Zapamatovat si uživatelské jméno a heslo pro tuto proxy. A username and password are being requested by proxy %1. Proxy %1 požaduje uživatelské jméno a heslo. PageScreen Page Screen Snímek stránky Format: Formát: Location: Umístění: Browse... Prohlížet... Save as %1 Uložit jako %1 Choose location... Vybrat umístění... File '%1' already exists. Do you want to overwrite it? Soubor '%1' již existuje. Chcete ho přepsat? File already exists Soubor již existuje PluginsList Application Extensions Doplňky aplikace Allow Application Extensions to be loaded Povolit načítání doplňků aplikace Settings Nastavení WebKit Plugins WebKit Pluginy <b>Click To Flash Plugin</b> <b>Click To Flash Plugin</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Click To Flash je plugin který blokuje automatické načítání Flash obsahu. Avšak vždy jej můžete manuálně načíst kliknutím na ikonku Flashe. Whitelist Bílá listina Add Přidat Remove Odstranit Allow Click To Flash Povolit Click To Flash PluginsManager Add site to whitelist Přidat stránku na bílou listinu Server without http:// (ex. youtube.com) Server bez http:// (např. youtube.com) Error! Chyba! Cannot load extension! Nelze načíst doplněk! PopupWebView Inspect Element Zkontrolovat objekt PopupWindow File Soubor &Save Page As... &Uložit stránku jako... Save Page Screen Uložit snímek stránky Send Link... Poslat odkaz... &Print... &Tisk... Close Zavřít Edit Úpravy &Undo &Zpět &Redo &Vpřed &Cut V&yjmout C&opy &Kopírovat &Paste V&ložit Select All Vybrat vše Find Najít View Zobrazení &Stop Z&astavit &Reload &Obnovit Zoom &In Zoo&m + Zoom &Out Z&oom - Reset Původní &Page Source Zdrojový &kód stránky %1 - QupZilla %1 - QupZilla Preferences Preferences Předvolby QupZilla QupZilla General Obecné Appearance Vzhled Tabs Panely Browsing Prohlížení Fonts Písma Keyboard Shortcuts Klávesové zkratky Downloads Stahování Password Manager Správce hesel Privacy Soukromí Notifications Oznámení Extensions Doplňky Other Ostatní Use current Použít aktuální Note: You cannot delete active profile. Poznámka: Nemůžete smazat aktivní profil. Create New Nový profil Delete Odstranit <b>Launching</b> <b>Spouštění</b> After launch: Po spuštění: Open blank page Otevřít prázdnou stránku Open homepage Otevřít domovskou stránku Open speed dial Otevřít rychlou volbu Restore session Obnovit relaci Homepage: Domovská stránka: On new tab: Při otevření nového panelu: Open blank tab Otevřít prázdný panel Open other page... Otevřít jinou stránku... <b>Profiles</b> <b>Profily</b> Startup profile: Startovní profil: Check for updates on start Kontrolovat aktualizace při startu Active profile: Aktivní profil: In order to change language, you must restart browser. Ke změně jazyka je nutný restart prohlížeče. <b>Language</b> <b>Jazyk</b> Available translations: Dostupné překlady: Don't load tabs until selected Nenačítat panely dokud nejsou vybrány Check to see if QupZilla is the default browser on startup Kontrolovat zda je QupZilla výchozím prohlížečem při startu Check Now Zkontrolovat nyní Themes Témata Advanced options Rozšířené možnosti <b>Browser Window</b> <b>Okno prohlížeče</b> Show StatusBar on start Zobrazit StatusBar při startu Show Bookmarks ToolBar on start Zobrazit panel záložek při startu Show Navigation ToolBar on start Zobrazit navigační panel při startu <b>Navigation ToolBar</b> <b>Navigační panel</b> Show Home button Zobrazit tlačítko Domů Show Back / Forward buttons Zobrazit tlačítka Zpět / Vpřed <b>Background<b/> <b>Pozadí</b> Use transparent background Použít průhledné pozadí Show web search bar Zobrazit vyhledávací řádek Show Add Tab button Zobrazit 'Přidat panel' tlačítko Show Reload / Stop buttons Zobrazit tlačítka Obnovit / Zastavit Tabs behaviour Chovaní panelů Show tab previews Zobrazit náhledy panelů Make tab previews animated Animovat náhledy panelů Hide tabs when there is only one tab Skrýt seznam panelů při jediném panelu Activate last tab when closing active tab Aktivovat poslední panel při zavírání aktuálního Open new tabs after active tab Otevřít nové panely hned za aktuálním Open new empty tabs after active tab Otevřít nové prázdné panely hned za aktuálním Automatically switch to newly opened tab Automaticky přepnout na nově otevřený panel Don't quit upon closing last tab Nekončit při zavírání posledního panelu Ask when closing multiple tabs Ptát se při zavírání více panelů Closed tabs list instead of opened in tab bar Zobrazit seznam zavřených (místo otevřených) panelů v seznamu panelů Address Bar behaviour Chování adresního řádku Suggest when typing into address bar: Našeptávat při psaní v adresním řádku: History and Bookmarks Historii a záložky History Historii Bookmarks Záložky Nothing Nic Press "Shift" to not switch the tab but load the url in the current tab. Klávesou "Shift" nepřepínat na panel ale načíst adresu v aktuálním panelu. Propose to switch tab if completed url is already loaded. Nabízet přepnutí na panel pokud je adresa již načtená. Always show go icon Vždy zobrazovat ikonu Přejít Select all text by double clicking in address bar Označit vše při dvojitém kliknutí do adresního řádku Select all text by clicking in address bar Označit vše při kliknutí do adresního řádku Search with Default Engine Vyhledávat pomocí výchozího vyhledávače Show loading progress in address bar Zobrazit průběh načítání v adresním řádku Fill Vyplnit Bottom Dole Top Nahoře Custom color: Vlastní barva: Select color Zvolte barvu ... ... Reset Původní Web Configuration Nastavení webu Allow Netscape Plugins (Flash plugin) Povolit Netscape pluginy (Flash plugin) Allow JavaScript Povolit JavaScript Allow JAVA Povolit JAVA Allow DNS Prefetch Povolit DNS Prefetch Enable XSS Auditing try to detect possible XSS attacks when executing javascript Povolit kontrolu XSS Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Tisknout pozadí objektů Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Označovat odkazy tabulátorem Animated scrolling Animované posouvání Enable caret browsing Zapnout procházení stránky Enable spatial navigation Povolit prostorovou navigaci Zoom text only Přibližovat pouze text Mouse wheel scrolls Kolečko myši posune lines on page řádků na stránce Default zoom on pages: Základní přiblížení stránek: Local Storage Lokální úložiště Maximum Maximálně 50 MB 50 MB 1 1 Maximum pages in cache: Maximum stránek v cache: Allow storing network cache on disk Povolit ukládání cache na disk Store cache in: Ukládat cache v: Allow saving history Povolit ukládání historie Delete history on close Vymazat historii při zavření prohlížeče Allow local storage of HTML5 web content Povolit HTML5 lokální úložiště Delete locally stored HTML5 web content on close Smazat lokální úložiště při zavření prohlížeče Delete now Vymazat nyní Proxy Configuration Konfigurace Proxy Proxy Auto-Config (.pac) file Proxy Auto-Config (.pac) soubor Reload Obnovit HTTP HTTP SOCKS5 SOCKS5 Port: Port: Username: Jméno: Password: Heslo: Don't use on: Nepužívat na: Manual configuration Manuální nastavení System proxy configuration Systémové nastavení proxy Do not use proxy Nepoužívat proxy <b>Exceptions</b> <b>Výjimky</b> Server: Server: Use different proxy for https connection Použít jinou proxy pro https připojení Use script for automatic configuration: Použít skript pro automatickou konfiguraci: <b>Font Families</b> <b>Typy písem</b> Standard Standardní Fixed Proporcionální Serif Serif Sans Serif Sans Serif Cursive Kurzíva Fantasy Fantasy <b>Font Sizes</b> <b>Velikosti písem</b> Fixed Font Size Proporcionální písmo Default Font Size Základní písmo Minimum Font Size Minimální velikost Minimum Logical Font Size Minimální logická velikost <b>Shortcuts</b> <b>Zkratky</b> Switch to tabs with Alt + number of tab Přepínat na panely pomocí Alt + pořadí panelu Load speed dials with Ctrl + number of speed dial Načítat stránky z rychlé volby pomocí Ctrl + pořadí volby Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>Cíl stahování</b> Ask everytime for download location U každého souboru se dotázat kam ho uložit Use defined location: Uložit všechny soubory do: <b>Download Options</b> <b>Možnosti stahování</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Použít nativní systémový dialog pro výběr souboru (může ale také nemusí dělat problémy při stahování SSL zabezpečeného obsahu) Close download manager when downloading finishes Zavřít správce stahování po skončení stahování <b>External download manager</b> <b>Externí správce stahování</b> Use external download manager Používat externí správce stahování Executable: Program: Arguments: Argumenty: Leave blank if unsure Pokud si nejste jisti, nechte prázdné <b>%d</b> will be replaced with URL to be downloaded <b>%d</b> bude nahrazeno s URL adresou ke stažení <b>AutoFill options</b> <b>Možnosti doplňování</b> Allow saving passwords from sites Povolit ukládání hesel ze stránek Send Referer header to servers Zasílat serverům Referer hlavičku <b>Cookies</b> <b>Cookies</b> Send Do Not Track header to servers Zasílat serverům Do Not Track hlavičku <b>Other</b> <b>Ostatní</b> Manage CA certificates Spravovat CA certifikáty Certificate Manager Správce certifikátů <b>SSL Certificates</b> <b>SSL Certifikáty</b> <b>JavaScript</b> <b>JavaScript</b> Manage JavaScript privacy options Spravovat nastavení soukromí JavaScriptu JavaScript options Nastavení JavaScriptu Cookies Manager Správce cookies Manage Cookies Spravovat cookies <b>HTML5 Permissions</b> <b>HTML5 Oprávnění</b> Manage HTML5 permissions Spravovat HTML5 oprávnění HTML5 Permissions HTML5 Oprávnění <b>Notifications</b> <b>Oznámení</b> Use OSD Notifications Používat OSD oznámení Use Native System Notifications (Linux only) Používat nativní systémové oznámení (pouze Linux) Do not use Notifications Nepoužívat oznámení Expiration timeout: Doba: seconds sekund <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Poznámka: </b> Můžete změnit pozici OSD oznámení na obrazovce jejím přetažením. StyleSheet automatically loaded with all websites: Styl, automaticky načítán ke všem stránkám: Languages Jazyky <b>Preferred language for web sites</b> <b>Preferované jazyky pro webové stránky</b> <b>Change browser identification</b> <b>Změnit identifikaci prohlížeče</b> User Agent Manager User Agent Správce Default Výchozí Set as default Nastavit výchozí OSD Notification OSD Oznámení Drag it on the screen to place it where you want. Přetáhněte jej na obrazovce na místo, na kterém jej chcete mít. Choose download location... Vyberte složku pro stahování... Choose stylesheet location... Vyberte umístění stylu... Deleted Smazáno Choose executable location... Vyberte cestu k programu... Choose cache path... Zvolit cestu pro cache... New Profile Nový profil Enter the new profile's name: Zvolte jméno nového profilu: Error! Chyba! This profile already exists! Tento profil již existuje! Cannot create profile directory! Nemohu vytvořit složku profilu! Confirmation Potvrzení Are you sure to permanently delete "%1" profile? This action cannot be undone! Jste si jisti že chcete permanentně smazat profil "%1"? Tuto akci nelze vzít zpět! Select Color Zvolte barvu QObject Native System Notification Nativní systémové oznámení Save file as... Uložit soubor jako... The file is not an OpenSearch 1.1 file. Tento soubor není OpenSearch 1.1 kompatibilní. <not set in certificate> <není součástí certifikátu> Unknown size Neznámá velikost KB kB MB MB GB GB Executable: Program: Arguments: Argumenty: Cannot start external program Nelze spustit externí program Cannot start external program! %1 Nelze spustit externí program! %1 QtWin Open new tab Otevřít nový panel Opens a new tab if browser is running Otevře nový panel pokud je prohlížeč spuštěný Open new window Otevřít nové okno Opens a new window if browser is running Otevře nové okno pokud je prohlížeč spuštěný Open download manager Otevřít správce stahování Opens a download manager if browser is running Otevře správce stahování pokud je prohlížeč spuštěný QupZilla QupZilla QupZilla Private Browsing Enabled Soukromé prohlížení zapnuto IP Address of current page IP Adresa aktuální stránky &About QupZilla &O QupZille Pr&eferences Předvo&lby Quit Konec &File &Soubor &New Window &Nové okno New Tab Nový panel Open Location Otevřít adresu Open &File... Otevřít &Soubor... Close Tab Zavřít panel Close Window Zavřít okno &Save Page As... &Uložit stránku jako... Save Page Screen Uložit snímek stránky Send Link... Poslat odkaz... &Print... &Tisk... Import bookmarks... Importovat záložky... &Edit Úpr&avy &Undo &Zpět &Redo &Vpřed &Cut V&yjmout C&opy &Kopírovat &Paste V&ložit Select &All Vyb&rat vše &Find &Najít &View &Zobrazení &Navigation Toolbar &Navigační lišta &Bookmarks Toolbar Panel &záložek Sta&tus Bar Sta&tus bar &Menu Bar &Hlavní nabídka &Tabs on Top &Panely navrchu &Fullscreen &Celá obrazovka &Stop Z&astavit &Reload O&bnovit Character &Encoding Kó&dování znaků Enable &Caret Browsing Zapnout &procházení stránky Toolbars Nástrojové lišty Sidebars Postranní lišta Zoom &In Zoo&m + Zoom &Out Z&oom - Reset Původní &Page Source Zdrojový &kód stránky Hi&story &Historie &Back &Zpět &Forward &Vpřed &Home &Domů Show &All History Zobrazit celou &historii Closed Tabs Zavřené panely Recently Visited Nedávno navštívené Most Visited Nejnavštěvovanější &Bookmarks Zál&ožky Bookmark &This Page Přidat &stránku do záložek Bookmark &All Tabs Přidat &všechny panely do záložek Organize &Bookmarks Organizovat &záložky &Tools &Nástroje &Web Search Hledání na &webu Page &Info Informace o &stránce &Download Manager Správce s&tahování &Cookies Manager Správce coo&kies &AdBlock &AdBlock RSS &Reader &RSS čtečka Web In&spector Web In&spektor Clear Recent &History Vymazat nedá&vnou historii New &Private Window Nové &soukromé okno &Help Nápo&věda About &Qt O &Qt Information about application Informace o aplikaci Configuration Information Informace o konfiguraci Report &Issue Nahlásit &problém Restore &Closed Tab Obnovit zavř&ený panel (Private Browsing) (Soukromé prohlížení) Empty Prázdný Restore All Closed Tabs Obnovit všechny zavřené panely Clear list Vyčistit seznam Other Ostatní %1 - QupZilla %1 - QupZilla HTML files HTML soubory Image files Obrázky Text files Textové soubory All files Všechny soubory Open file... Otevřít soubor... QupZilla %1 (%2) QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Ještě je otevřeno %1 panelů a Vaše relace nebude uložena. Opravdu chcete skončit? Don't ask again Příště se již nedotazovat There are still open tabs Stále jsou otevřeny panely QupZillaSchemeReply No Error Žádná chyba Not Found Nenalezeno Report Issue Nahlásit problém If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Pokud máte problém s používáním QupZilly, zakažte prosím všechny doplňky. <br/> Pokud problém přetrvává, vyplňte tento formulář: Your E-mail Váš e-mail Issue type Typ problému Issue description Popis problému Send Odeslat E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. E-mail je nepovinný<br/><b>Poznámka: </b>Nejdříve si <a href=%1>zde</a> prosím přečtěte jak hlásit problém. Please fill out all required fields! Vyplňte prosím všechna povinná pole! Start Page Startovní stránka Search on Web Hledat na webu Search results provided by DuckDuckGo Výsledky vyhledávání poskytuje DuckDuckGo About QupZilla O QupZille <h1>Private Browsing</h1> <h1>Soukromé prohlížení</h1> Information about version Informace o verzi Copyright Copyright Version Verze WebKit version Verze WebKitu Main developer Hlavní vývojář Contributors Přispěvatelé Translators Překladatelé Speed Dial Rychlá volba Add New Page Přidat novou stránku Edit Upravit Remove Odstranit Reload Načíst znovu Are you sure to remove this speed dial? Jste si jisti že chcete smazat tuto stránku? Load title from page Načíst titulek ze stránky Url Adresa Title Titulek Apply Uložit Close Zavřít New Page Nová stránka Speed Dial settings Nastavení rychlé volby Placement: Umístění: Auto Auto Cover Krytí Fit Přizpůsobit Fit Width Přizpůsobit šířce Fit Height Přizpůsobit výšce Use background image Použít obrázek na pozadí Select image Zvolit obrázek Maximum pages in a row: Maximum stránek v řadě: Change size of pages: Změnit velikost stránek: Center speed dials Vycentrovat náhledy stránek Restore Session Obnovit relaci Oops, QupZilla crashed. Oops, QupZilla spadla. We apologize for this. Would you like to restore the last saved state? Omlouváme se. Chcete obnovit poslední uloženou relaci? Try removing one or more tabs that you think cause troubles Zkuste odebrat jeden nebo více panelů které myslíte že mohou činit potíže Or you can start completely new session Nebo můžete začít úplně novou relaci Configuration Information Informace o konfiguraci This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Tato stránka obsahuje informace o aktuální konfiguraci QupZilly - důležité informace k řešení problémů. Přiložte prosím tyto informace k hlášení problémů. Browser Identification Identifikace prohlížeče Paths Cesty Build Configuration Konfigurace sestavení Preferences Předvolby Option Možnost Value Hodnota Extensions Doplňky Name Název Author Autor Description Popis Application version Verze aplikace Qt version Verze Qt Build time Sestaveno Platform Platforma Profile Profil Settings Nastavení Saved session Uložené relace Pinned tabs Připíchnuté panely Data Data Themes Témata Translations Překlady Disabled Vypnuto <b>Enabled</b> <b>Zapnuto</b> Debug build Debug sestavení WebGL support Podpora WebGL Windows 7 API Windows 7 API KDE integration KDE integrace Portable build Portable sestavení No available extensions. Žádné dostupné doplňky. RSSManager RSS Reader RSS čtečka Empty Prázdný Add feed Přidat kanál Edit feed Upravit kanál Delete feed Smazat kanál Optimize Database Optimalizovat databázi Reload Obnovit News Novinky Loading... Načítám... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Nemáte žádný RSS kanál.<br/> Prosím přidejte si nějaký kliknutím na RSS ikonku v navigačním řádku. Add new feed Přidat nový kanál Please enter URL of new feed: Prosím zadejte URL nového kanálu: New feed Nový kanál Fill title and URL of a feed: Vyplňte titulek a adresu kanálu: Feed title: Titulek kanálu: Feed URL: Adresa kanálu: Edit RSS Feed Upravit kanál Open link in current tab Otevřít odkaz v aktuálním panelu Open link in new tab Otevřít odkaz v novém panelu Error in fetching feed Chyba při stahování kanálu RSS feed duplicated Duplikovaný kanál You already have this feed. Tento kanál již odebíráte. RSSNotification Add this feed into Přidat tento kanál do Add Přidat RSS feed <b>"%1"</b> RSS kanál <b>"%1"</b> Internal Reader Interní čtečka Other... Jiné... Liferea not running Liferea není spuštěna Liferea must be running in order to add new feed. Liferea musí být spuštěna aby bylo možné přidat nový kanál. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Pro přidání tohoto RSS kanálu do jiné aplikace použijte tyto informace:<br/><br/><b>Název: </b>%1<br/><b>Url: </b>%2<br/><br/>Url adresa tohoto kanálu byla zkopírována do schránky. Add feed into other application Přidat kanál do jiné aplikace RSSWidget Add RSS Feeds from this site Přidat RSS kanál z této stránky Untitled feed Kanál bez názvu Add Přidat RecoveryWidget Start New Session Začít novou relaci Restore Obnovit Window %1 Okno %1 RegisterQAppAssociation Warning! Upozornění! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) Vyskytl se problém. Zkuste přeinstalovat QupZillu. Je také možné že spuštění QupZilly s právy administrátora tento problém vyřeší ;) RssIcon Add RSS from this page... Přidat RSS z této stránky... SSLManager Certificate Manager Správce certifikátů CA Authorities Certificates Certifikáty CA Autorit Show info Informace This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Toto je seznam certifikátů CA Autorit uložených ve standardních systémových a uživatelem specifikovaných složkách. Local Certificates Lokální certifikáty Import Importovat Remove Odstranit This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Toto je seznam lokálních certifikátů uložených v uživatelském profilu. Tento list také obsahuje všechny certifikáty, jenž obdržely výjimku. Settings Nastavení Add Přidat If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Pokud nebyly certifikáty CA Autorit automaticky načtené ze systému, můžete zde manuálně přidat cestu, kde jsou certifikáty uloženy. <b>NOTE:</b> Setting this option is a high security risk! <b>Poznámka:</b> Zaškrtnutím této možnosti se vystavujete velikému bezpečnostnímu riziku! Ignore all SSL Warnings Ignorovat všechna SSL varování All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Všechny certifikáty musí mít .crt příponu. Po přidání či odstranění cest k certifikátům je nutné k projevení změn restart prohlížeče. Choose path... Vyberte cestu... Import certificate... Importovat certifikát... Certificate Informations Informace o certifikátě SearchEnginesDialog Manage Search Engines Spravovat vyhledáváče Add... Přidat... Remove Odstranit Edit Upravit Set as default Nastavit výchozí Up Nahoru Down Dolů Search Engine Vyhledávač Shortcut Zkratka Defaults Původní Add Search Engine Přidat vyhledávač Remove Engine Odstranit vyhledávač You can't remove the default search engine.<br>Set a different engine as default before removing %1. Nelze odstranit výchozí vyhledávač.<br>Nastavte jiný vyhledávač jako výchozí před odstraněním %1. Edit Search Engine Upravit vyhledávač SearchEnginesManager Search Engine Added Vyhledávač přidán Search Engine "%1" has been successfully added. Vyhledávač "%1" byl úspěšně přidán. Search Engine is not valid! Vyhledávač není platný! Error Chyba Error while adding Search Engine <br><b>Error Message: </b> %1 Chyba při přidávání vyhledáváče <br><b>Chybová zpráva: </b> %1 SearchToolBar No results found. Nic nenalezeno. SearchToolbar Search: Hledat: Search... Hledat... Highlight Zvýraznit Case sensitive Rozlišovat velikost SideBar Bookmarks Záložky History Historie SiteInfo Site Info Informace o stránce General Obecné Media Média Databases Databáze Security Zabezpečení Size: Velikost: Site address: Adresa stránky: Encoding: Kódování: Meta tags of site: Meta tagy na stránce: Tag Tag Value Hodnota <b>Security information</b> <b>Informace o zabezpečení</b> Details Detaily Image Obrázek Image address Adresa obrázku <b>Preview</b> <b>Náhled</b> <b>Database details</b> <b>Detaily databáze</b> Name: Název: Path: Cesta: <database not selected> <nebyla vybrána databáze> <not set in certificate> <není součástí certifikátu> No databases are used by this page. Tato stránka nepoužívá žádnou databázi. <b>Connection is Encrypted.</b> <b>Připojení je zabezpečené.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Vaše připojení k serveru je zabezpečeno tímto certifikátem: </b> <b>Connection Not Encrypted.</b> <b>Připojení není zabezpečené.</b> <b>Your connection to this page is not secured!</b> <b>Vaše připojení k serveru není zabezpečené!</b> Copy Image Location Kopírovat adresu obrázku Copy Image Name Kopírovat jméno obrázku Save Image to Disk Uložit obrázek na disk Error! Chyba! This preview is not available! Tento náhled není k dispozici! Save image... Uložit obrázek... Cannot write to file! Nemohu zapisovat do souboru! Preview not available Náhled není k dispozici SiteInfoWidget More... Více... Your connection to this site is <b>secured</b>. Připojení k této stránce je <b>zabezpečené</b>. Your connection to this site is <b>unsecured</b>. Připojení k této stránce je <b>nezabezpečené</b>. This is your <b>%1</b> visit of this site. Toto je Vaše <b>%1</b> návštěva této stránky. You have <b>never</b> visited this site before. <b>Nikdy</b> dříve jste nenavštívili tuto stránku. first první second druhá third třetí SourceViewer Source of Zdrojový kód File Soubor Load in page Načíst do stránky Save as... Uložit jako... Close Zavřít Edit Úpravy Undo Zpět Redo Vpřed Cut Vyjmout Copy Kopírovat Paste Vložit Select All Vybrat vše Find Najít Go to Line... Jít na řádek... View Zobrazení Reload Obnovit Editable Povolit úpravy Word Wrap Zalamovat řádky Source loaded in page Zdroj načten do stránky Cannot load in page. Page has been closed. Nemohu načíst do stránky. Stránka byla zavřena. Save file... Uložit soubor... Error! Chyba! Cannot write to file! Nemohu zapisovat do souboru! Error writing to file Nelze zapisovat do souboru Source successfully saved Zdroj úspěšně uložen Source reloaded Zdroj znovu načten Cannot reload source. Page has been closed. Nemohu obnovit zdroj. Stránka byla zavřena. Editable changed Povolení úprav změněno Word Wrap changed Zalamování řádků změněno Enter line number Zadejte číslo řádku SourceViewerSearch Search: Hledat: Search... Hledat... Whole words Celá slova SpeedDial Image files Obrázky Select image... Zvolte obrázek... Unable to load Nepodařilo se načíst SpellCheckDialog SpellCheck Kontrola pravopisu <b>Dictionary path</b> <b>Cesta k slovníkům</b> Change... Změnit... <b>User dictionary</b> <b>Uživatelský slovník</b> Add Přidat Remove Odstranit Using Hunspell library Používá knihovnu Hunspell Choose dictionary path... Zvolit složku se slovníky... Add new word... Přidat nové slovo... Add new word: Přidat nové slovo: Speller No suggestions Žádné návrhy Add to dictionary Přidat do slovníku Settings Nastavení SqueezeLabelV2 Copy Kopírovat SslErrorDialog SSL Certificate Error! Chyba certifikátu SSL! Only for this session Jen pro toto sezení TabBar &New tab &Nový panel &Stop Tab &Zastavit panel &Reload Tab &Obnovit panel &Duplicate Tab &Duplikovat panel D&etach Tab O&dpojit panel Un&pin Tab Ode&pnout panel &Pin Tab &Připnout panel Re&load All Tabs Obnovit všec&hny panely &Bookmark This Tab Přidat pane&l do záložek Bookmark &All Tabs Přidat &všechny panely do záložek Close Ot&her Tabs Zavřít osta&tní panely Cl&ose Z&avřít Reloa&d All Tabs Obnovit &všechny panely Restore &Closed Tab Obnovit zavř&ený panel Close Tabs Do you really want to close other tabs? TabWidget New Tab Nový panel List of tabs Seznam panelů Loading... Načítám... No Named Page Bezejmenná stránka Currently you have %1 opened tabs Dohromady máte otevřeno %1 panelů New tab Nový panel Empty Prázdný Restore All Closed Tabs Obnovit všechny zavřené panely Clear list Vyčistit seznam TabbedWebView Loading... Načítám... %1 - QupZilla %1 - QupZilla Inspect Element Zkontrolovat objekt ThemeManager <b>Name:</b> <b>Název:</b> <b>Author:</b> <b>Autor:</b> <b>Description:</b> <b>Popis:</b> License Licence ToolButton Stop Zastavit Reload Obnovit Updater Update available Dostupná aktualizace New version of QupZilla is ready to download. Nová verze QupZilly je připravena ke stažení. Update Aktualizovat UserAgentDialog User Agent Manager User Agent Správce Change global User Agent Změnit globální User Agent Use different User Agents for specified sites Používat různé User Agenty pro zvolené stránky Site Stránka User Agent User Agent Add Přidat Remove Odstranit Edit Upravit Add new site Přidat novou stránku Edit site Upravit stránku Site domain: Doména stránky: User Agent: User Agent: WebInspectorDockWidget Web Inspector Web Inspektor WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? QupZilla nemůže otevřít <b>%1:</b> odkazy. Vyžádaný odkaz je <ul><li>%2</li></ul>Chcete aby QupZilla otevřela tento odkaz v systémové aplikaci? Remember my choice for this protocol Zapamatovat mou volbu pro tento protokol External Protocol Request Externí protokol To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Pro zobrazení této stránky musí QupZilla znovu odeslat požadavek na server (jako např. hledaní při nakupování, které již bylo provedeno.) Confirm form resubmission Potvrzení opětovného zaslání formuláře Select files to upload... Zvolte soubory k nahrání... Server refused the connection Server odmítl spojení Server closed the connection Server ukončil spojení Server not found Server nenalezen Connection timed out Spojení vypršelo Untrusted connection Nedůvěryhodné spojení Temporary network failure Dočasná chyba sítě Proxy connection refused Proxy server odmítl spojení Proxy server not found Proxy server nenalezen Proxy connection timed out Proxy spojení vypršelo Proxy authentication required Vyžadována proxy autorizace Content not found Obsah nenalezen Unknown network error Neznámá síťová chyba AdBlocked Content AdBlock obsah Blocked by <i>%1</i> Blokováno s <i>%1</i> Content Access Denied Odmítnut přístup k obsahu Error code %1 Chybový kód %1 Failed loading page Chyba při načítání stránky QupZilla can't load page. QupZilla nemůže načíst stránku. QupZilla can't load page from %1. QupZilla nemůže načíst stránku ze serveru %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Zkontrolujte, zda je adresa napsána správně a neobsahuje chyby jako <b>ww.</b>server.cz místo <b>www</b>.server.cz If you are unable to load any pages, check your computer's network connection. Pokud se vám nezobrazují ani ostatní stránky, zkontrolujte síťové připojení svého počítače. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Pokud je váš počítač chráněn firewallem a nebo proxy serverem, zkontrolujte, zda má QupZilla přístup na Internet. Try Again Zkusit znovu JavaScript alert Výstraha JavaScriptu Prevent this page from creating additional dialogs Zabránit stránce ve vytváření dalších dialogů Choose file... Vyberte soubor... Cannot read data from <b>%1</b>. Upload was cancelled! Nelze číst data z <b>%1</b>. Nahrávání bylo zrušeno! Cannot read file! Nelze číst soubor! WebSearchBar Manage Search Engines Spravovat vyhledáváče Add %1 ... Přidat %1 ... Paste And &Search Vložit a &hledat Clear All Vymazat vše Show suggestions Zobrazit našeptávač Search when engine changed Vyhledávat při změně vyhledávače WebView No Named Page Bezejmenná stránka Create Search Engine Vytvořit vyhledávač Cut Vyjmout Copy Kopírovat Paste Vložit Select All Vybrat vše Default Výchozí Left to Right Zleva doprava Right to Left Zprava doleva Bold Tučné Italic Kurzíva Underline Podtržené &Reload &Obnovit S&top &Zastavit Delete Odstranit &Back &Zpět &Forward &Vpřed This frame Tento rám Show &only this frame Zobrazit &pouze tento rám Show this frame in new &tab Zobrazit tento rám v &novém panelu Print frame Tisknout rám Zoom &in Zoo&m + &Zoom out Z&oom - Reset Původní Show so&urce of frame Zobrazit &zdrojový kód rámu Book&mark page Přidat stránku do zá&ložek &Save page as... &Uložit stránku jako... &Copy page link Kopírovat &adresu stránky Send page link... Odeslat adresu stránky... &Print page Ti&sknout stránku Select &all Vyb&rat vše Validate page Zkontrolovat stránku Show so&urce code Zobrazit zdrojový kó&d Show info ab&out site Zobrazit &informace o stránce Open link in new &tab Otevřít odkaz v novém &panelu Open link in new &window Otevřít odkaz v novém &okně B&ookmark link Přidat odkaz do zá&ložek &Save link as... &Uložit odkaz jako... Send link... Odeslat odkaz... &Copy link address &Kopírovat adresu odkazu Show i&mage Zobrazit &obrázek Copy im&age &Kopírovat obrázek Copy image ad&dress Kopírovat adr&esu obrázku &Save image as... &Uložit obrázek jako... Send image... Odeslat obrázek... Send text... Odeslat text... Google Translate Google Translate Dictionary Slovník Go to &web address Přejít na web&ovou adresu Search "%1 .." with %2 Hledat "%1 .." s %2 Search with... Hledat pomocí... &Play &Přehrát &Pause &Pozastavit Un&mute &Zrušit ztlumení &Mute &Ztlumit &Copy Media Address &Kopírovat adresu média &Send Media Address &Odeslat adresu média Save Media To &Disk &Uložit médium na disk Check &Spelling Kontrolovat &pravopis Languages Jazyky jsAlert Prevent this page from creating additional dialogs Zabránit stránce ve vytváření dalších dialogů qupzilla-1.6.0/translations/da_DK.ts000066400000000000000000007464101226107126500174300ustar00rootroot00000000000000 AboutDialog About QupZilla Authors Authors and Contributors < About QupZilla <p><b>Application version %1</b><br/> <b>WebKit version %1</b></p> <small>Build time: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> AcceptLanguage Preferred Languages Add... Remove Up Down Personal [%1] AdBlockAddSubscriptionDialog Add Subscription Title: Address: Add new subscription to AdBlock: AdBlockCustomList Custom Rules AdBlockDialog AdBlock Configuration Enable AdBlock Search... Options AdBlock AdBlock Add Rule Remove Rule Add Subscription Remove Subscription Update Subscriptions Learn about writing rules... AdBlockEasyList EasyList EasyList AdBlockIcon AdBlock lets you block unwanted content on web pages Blocked popup window AdBlock blocked unwanted popup window. AdBlock AdBlock Show AdBlock &Settings Disable on %1 Disable only on this page Blocked Popup Windows %1 with (%2) No content blocked Blocked URL (AdBlock Rule) - click to edit rule AdBlockManager Do you want to add <b>%1</b> subscription? AdBlock Subscription AdBlockTreeWidget Add Rule Remove Rule Add Custom Rule Please write your rule here: %1 (recently updated) AddAcceptLanguage Add Language Choose preferred language for web sites Personal definition: AutoFillManager Passwords Server Server Username Password Import/Export Import/Eksport Show Passwords Edit Remove Remove All Exceptions Import Passwords from File... Export Passwords to File... Search Are you sure that you want to show all passwords? Hide Passwords Confirmation Are you sure to delete all passwords on your computer? Edit password Change password: Choose file... Cannot read file! Successfully imported Error while importing! Cannot write to file! Successfully exported AutoFillNotification Update Remember Never For This Site Not Now on %1 for <b>%1</b> Do you want QupZilla to update saved password %1? Do you want QupZilla to remember the password %1 %2? AutoFillWidget Choose username to login Login Login as <b>%1</b> BookmarkIcon Bookmark this Page Edit this bookmark BookmarksImportDialog Import Bookmarks <b>Import Bookmarks</b> From File Choose browser from which you want to import bookmarks: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. Choose... Fetching icons, please wait... Title Url Next Cancel <b>Importing from %1</b> Finish Please press Finish to complete importing process. Error! The file doesn't contain any bookmark. Choose directory... Choose file... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Please choose this file to begin importing bookmarks. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Please choose this folder to begin importing bookmarks. No Error Unable to open file. Cannot evaluate JSON code. File does not exist. Unable to open database. Is Firefox running? BookmarksManager Bookmarks Optimize Database Import Bookmarks Add Folder Title Url Expand All Udfold alle Collapse All Sammenfold alle Add new folder Choose parent folder for new folder: Choose name for new bookmark folder: Add new subfolder Choose name for new subfolder in bookmarks toolbar: Rename Folder Choose name for folder: Add Subfolder Rename folder Remove folder Open link in current &tab Open link in &new tab Move bookmark to &folder Change icon Rename bookmark Remove bookmark <b>Warning: </b>You already have bookmarked this page! Choose name and location of this bookmark. Add New Bookmark Choose folder for bookmarks: Bookmark All Tabs BookmarksModel Bookmarks In Menu Bookmarks In ToolBar Unsorted Bookmarks BookmarksSideBar Search... Open link in current &tab Open link in &new tab Copy address &Delete BookmarksToolbar &Bookmark Current Page Bookmark &All Tabs &Organize Bookmarks Show Most &Visited Show Only Icons &Hide Toolbar Open bookmark Open bookmark in new tab Move right Move left Edit bookmark Remove bookmark Edit bookmark: Title: Url: Edit Bookmark Most visited Sites you visited the most Empty BookmarksTree Bookmarks New Folder... BookmarksWidget Add to Speed Dial Save Name: Folder: Remove from Speed Dial Remove BrowsingLibrary Library Search... History Bookmarks RSS RSS Database Optimized Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 CertificateInfoWidget <b>Issued To</b> Common Name (CN): Organization (O): Organizational Unit (OU): Serial Number: <b>Issued By</b> <b>Validity</b> Issued On: Expires On: ClearPrivateData Clear Recent History Choose what you want to delete: Clear history Clear cache Clear icons Clear cookies from Adobe Flash Player <b>Clear Recent History</b> Earlier Today Week Month All Clear web databases Clear local storage Clear cookies ClickToFlash Object blocked by ClickToFlash Show more information about object Delete object Add %1 to whitelist Flash Object <b>Attribute Name</b> <b>Value</b> No more information available. CookieManager Cookies Cookies Stored Cookies Find: These cookies are stored on your computer: Server Server Cookie name Name: Value: Server: Server: Path: Secure: Expiration: <cookie not selected> Remove all cookies Remove cookies Cookie Filtering <b>Cookie whitelist</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Add Remove <b>Cookie blacklist</b> Cookies from these servers will NEVER be accepted Settings <b>Cookie Settings</b> Allow storing of cookies Delete cookies on close Match domain exactly Filter tracking cookies <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable this options first! Search Confirmation Are you sure to delete all cookies on your computer? Secure only All connections Session cookie Remove cookie Add to whitelist Add to blacklist DownloadFileHelper Save file as... NoNameDownload DownloadItem Remaining time unavailable Error: Cannot write to file! Done - %1 Cancelled few seconds seconds minutes hours Unknown speed Unknown size %2 - unknown size (%3) Remaining %1 - %2 of %3 (%4) Cancelled - %1 Delete file Do you want to also delete dowloaded file? Open File Open Folder Go to Download Page Copy Download Link Cancel downloading Remove Error Not found Sorry, the file %1 was not found! Error: DownloadManager Download Manager Clear %1% of %2 files (%3) %4 remaining % - Download Manager Download Finished All files have been successfully downloaded. Warning Are you sure to quit? All uncompleted downloads will be cancelled! DownloadOptionsDialog Opening You have chosen to open which is a: What should QupZilla do with this file? Open... Save File Download with External Manager from: Opening %1 EditSearchEngine Name: Url: Url: Shortcut: Icon: <b>Note: </b>%s in url represent searched string Change... FileSchemeReply No Error Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. FtpDownloader Cancelled! FtpSchemeReply Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. Unknown command HTML5PermissionsDialog HTML5 Permissions Notifications Site Behaviour Remove Geolocation Allow Deny HTML5PermissionsNotification Remember Allow Deny this site Allow %1 to show desktop notifications? Allow %1 to locate your position? History No Named Page January February March April May June July August September October November December HistoryManager History Delete Clear All History Optimize Database Confirmation Are you sure to delete all history? HistoryModel Title Address Visit Date Visit Count Today This Week This Month HistorySideBar Search... HistoryView Open link in current tab Open link in new tab Copy title Copy address Remove IconChooser Choose icon... From file Image (.png, .jpg, .jpeg, .gif) Choose file... From database Site Url: Image files JsOptions JavaScript Options Allow JavaScript to: Close windows Open popup windows Change window size Hide menu bar Hide status bar Hide tool bar Access clipboard LicenseViewer License Viewer LocationBar Enter URL address or search on %1 Paste And &Go Clear All .co.uk Append domain name on ALT + Enter = Should be different for every country Show information about this page LocationCompleterView Switch to tab MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? Always perform this check when starting QupZilla. Default Browser QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. QupZilla er en ny, hurtig og sikker webbrowser. QupZilla er udgivet under GPL version 3 eller (hvis ønsket) senere. Den er baseret på WebKit Core og QT-frameworket. NavigationBar No Named Page Back Forward Home New Tab Main Menu Exit Fullscreen Clear history NetworkManager SSL Certificate Error! The page you are trying to access has the following errors in the SSL certificate: <b>Organization: </b> <b>Domain Name: </b> <b>Expiration Date: </b> <b>Error: </b> Would you like to make an exception for this certificate? Authorisation required Username: Password: Save username and password on this site A username and password are being requested by %1. The site says: "%2" FTP authorisation required Login anonymously A username and password are being requested by %1:%2. Proxy authorisation required A username and password are being requested by proxy %1. PageScreen Page Screen Save Page Screen... PluginsList Application Extensions Allow Application Extensions to be loaded Settings WebKit Plugins <b>Click To Flash Plugin</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Whitelist Add Remove Allow Click To Flash PluginsManager Add site to whitelist Server without http:// (ex. youtube.com) Error! Cannot load extension! PopupWebView Inspect Element PopupWindow File &Save Page As... Save Page Screen Send Link... &Print... Close Edit &Undo &Redo &Cut C&opy &Paste Select All Find View &Stop &Reload Zoom &In Zoom &Out Reset &Page Source %1 - QupZilla %1 - QupZilla Preferences Preferences QupZilla QupZilla General Appearance Tabs Browsing Fonts Keyboard Shortcuts Downloads Password Manager Privacy Notifications Extensions Other Use current Note: You cannot delete active profile. Create New Delete <b>Launching</b> After launch: Open blank page Open homepage Open speed dial Restore session Homepage: On new tab: Open blank tab Open other page... <b>Profiles</b> Startup profile: Check for updates on start Active profile: In order to change language, you must restart browser. <b>Language</b> Available translations: Don't load tabs until selected Check to see if QupZilla is the default browser on startup Check Now Themes Advanced options <b>Browser Window</b> Show StatusBar on start Show Bookmarks ToolBar on start Show Navigation ToolBar on start <b>Navigation ToolBar</b> Show Home button Show Back / Forward buttons <b>Background<b/> Use transparent background Show web search bar Show Add Tab button Show Reload / Stop buttons Tabs behaviour Show tab previews Make tab previews animated Hide tabs when there is only one tab Activate last tab when closing active tab Open new tabs after active tab Open new empty tabs after active tab Automatically switch to newly opened tab Don't quit upon closing last tab Ask when closing multiple tabs Closed tabs list instead of opened in tab bar Address Bar behaviour Suggest when typing into address bar: History and Bookmarks History Bookmarks Nothing Press "Shift" to not switch the tab but load the url in the current tab. Propose to switch tab if completed url is already loaded. Select all text by double clicking in address bar Select all text by clicking in address bar Add .co.uk domain by pressing ALT key Search with Default Engine Show loading progress in address bar Fill Bottom Top Custom color: Select color ... ... Reset Web Configuration Allow Netscape Plugins (Flash plugin) Allow JavaScript Allow JAVA Allow DNS Prefetch Enable XSS Auditing try to detect possible XSS attacks when executing javascript Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Animated scrolling Enable caret browsing Zoom text only Mouse wheel scrolls lines on page Default zoom on pages: Local Storage Maximum 50 MB 50 MB 1 1 Maximum pages in cache: Allow storing network cache on disk Store cache in: Allow saving history Delete history on close Allow local storage of HTML5 web content Delete locally stored HTML5 web content on close Delete now Proxy Configuration Proxy Auto-Config (.pac) file Reload HTTP HTTP SOCKS5 SOCKS5 Port: Port: Username: Password: Don't use on: Manual configuration System proxy configuration Do not use proxy <b>Exceptions</b> Server: Server: Use different proxy for https connection Use script for automatic configuration: <b>Font Families</b> Standard Fixed Serif Serif Sans Serif Sans Serif Cursive Fantasy <b>Font Sizes</b> Fixed Font Size Default Font Size Minimum Font Size Minimum Logical Font Size <b>Shortcuts</b> Switch to tabs with Alt + number of tab Load speed dials with Ctrl + number of speed dial <b>Download Location</b> Ask everytime for download location Use defined location: <b>Download Options</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Close download manager when downloading finishes <b>External download manager</b> Use external download manager Executable: Arguments: Leave blank if unsure <b>%d</b> will be replaced with URL to be downloaded <b>AutoFill options</b> Allow saving passwords from sites Send Referer header to servers <b>Cookies</b> <b>Cookies</b> Send Do Not Track header to servers <b>Other</b> Manage CA certificates Certificate Manager <b>SSL Certificates</b> <b>JavaScript</b> <b>JavaScript</b> Manage JavaScript privacy options JavaScript options Cookies Manager Manage Cookies <b>HTML5 Permissions</b> Manage HTML5 permissions HTML5 Permissions <b>Notifications</b> Use OSD Notifications Use Native System Notifications (Linux only) Do not use Notifications Expiration timeout: seconds <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. StyleSheet automatically loaded with all websites: Languages <b>Preferred language for web sites</b> <b>Change browser identification</b> User Agent Manager QupZilla is default Make QupZilla default OSD Notification Drag it on the screen to place it where you want. Choose download location... Choose stylesheet location... Deleted Choose executable location... Choose cache path... New Profile Enter the new profile's name: Error! This profile already exists! Cannot create profile directory! Confirmation Are you sure to permanently delete "%1" profile? This action cannot be undone! Select Color QObject Native System Notification Save file as... The file is not an OpenSearch 1.1 file. <not set in certificate> Unknown size Executable: Arguments: Cannot start external program Cannot start external program! %1 QtWin Open new tab Opens a new tab if browser is running Open new window Opens a new window if browser is running Open download manager Opens a download manager if browser is running QupZilla QupZilla QupZilla Private Browsing Enabled Privat browsing aktiveret IP Address of current page IP-adresse for nuværende side &About QupZilla &Om QupZilla Pr&eferences Quit &File &Fil &New Window &Nyt vindue New Tab Open Location Åbn placering Open &File... Close Tab Luk faneblad Close Window Luk vindue &Save Page As... &Gem side som... Save Page Screen Send Link... Send Link... &Print... &Udskriv... Import bookmarks... Importer bogmærker... &Edit &Rediger &Undo &Fortryd &Redo &Gendan &Cut &Klip C&opy K&opier &Paste &Indsæt Select &All Vælg &alle &Find &Find &View &Vis &Navigation Toolbar &Bookmarks Toolbar Sta&tus Bar &Menu Bar &Menulinie &Tabs on Top &Fullscreen &Fuldskærm &Stop &Stop &Reload &Genindlæs Character &Encoding &Kodning af tegnsæt Enable &Caret Browsing Toolbars Værktøjslinier Sidebars Zoom &In Zoom &Ind Zoom &Out Zoom &Ud Reset Reset &Page Source &Kilde for siden Hi&story Hi&storik &Back &Tilbage &Forward &Fremad &Home &Hjem Show &All History Vis &al historik Closed Tabs Lukkede faneblade Recently Visited Nyligt besøgte Most Visited Mest besøgte &Bookmarks &Bogmærker Bookmark &This Page Opret bogmærke for &denne side Bookmark &All Tabs Opret bogmærke for &alle faneblade Organize &Bookmarks Organiser &bogmærker &Tools &Værktøjer &Web Search &Websøgning Page &Info &info om siden &Download Manager &Download Manager &Cookies Manager &AdBlock &AdBlock RSS &Reader &RSS-læser Web In&spector Web In&spector Clear Recent &History Ryd nylig &historik &Private Browsing &Privat Browsing New &Private Browsing Window &Help &Hjælp About &Qt Om &QT Information about application Configuration Information Opsætningsoplysninger Report &Issue Fejlmelding Restore &Closed Tab Gendan &lukket faneblad (Private Browsing) (Privat Browsing) Empty Tom Restore All Closed Tabs Gendan alle lukkede faneblade Clear list Ryd liste Other Andet %1 - QupZilla %1 - QupZilla HTML files HTML-filer Image files Billedfiler Text files Tekstfiler All files Alle filer Open file... Åbn fil... There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Der er stadig %1 åbne faneblade, og din session vil ikke blive gemt. Er du sikker på, at du ønsker at lukke QupZilla? Don't ask again Spørg ikke igen There are still open tabs Der er stadig åbne faneblade QupZillaSchemeReply No Error Ingen fejl Not Found Ikke fundet Report Issue If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Hvis du oplever problemer med QupZilla, så forsøg først at deaktivere alle udvidelser.<br/>Hvis dette ikke løser problemet, så udfyld venligst denne formular: Your E-mail Din emailadresse Issue type Issue description Problembeskrivelse Send Send E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. Please fill out all required fields! Start Page Startside Search on Web Search results provided by DuckDuckGo Søgeresultater leveret af DuckDuckGo About QupZilla Om QupZilla <h1>Private Browsing</h1> <h1>Privat Browsing</h1> Information about version Copyright Copyright Version Version WebKit version Version af WebKit Main developer Hovedudvikler Contributors Translators Oversættere Speed Dial Add New Page Tilføj ny side Edit Rediger Remove Fjern Reload Genindlæs Are you sure to remove this speed dial? Load title from page Url Url Title Titel Apply Close Luk New Page Ny side Speed Dial settings Placement: Placering Auto Auto Cover Fit Fit Width Tilpas bredde Fit Height Tilpas højde Use background image Brug baggrundsbillede Select image Vælg billede Maximum pages in a row: Change size of pages: Center speed dials Restore Session Gendan session Oops, QupZilla crashed. We apologize for this. Would you like to restore the last saved state? Try removing one or more tabs that you think cause troubles Or you can start completely new session Configuration Information Opsætningsoplysninger This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Browser Identification Paths Build Configuration Preferences Indstillinger Option Value Værdi Extensions Udvidelser Name Navn Author Description Beskrivelse Application version Programversion Qt version Version af QT Build time Platform Platform Profile Profil Settings Indstillinger Saved session Pinned tabs Data Data Themes Temaer Translations Oversættelser Disabled <b>Enabled</b> Debug build WebGL support Windows 7 API Windows 7 API KDE integration KDE-integration Portable build No available extensions. RSSManager RSS Reader RSS-læser Empty Tom Add feed Tilføj feed Edit feed Rediger feed Delete feed Slet feed Optimize Database Optimer database Reload Genindlæs News Nyheder Loading... Indlæser... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Add new feed Please enter URL of new feed: New feed Fill title and URL of a feed: Feed title: Feed URL: Feed-URL: Edit RSS Feed Rediger RSS-feed Open link in current tab Open link in new tab Error in fetching feed RSS feed duplicated You already have this feed. RSSNotification Add this feed into Add Tilføj RSS feed <b>"%1"</b> RSS-feed <b>"%1"</b> Internal Reader Other... Liferea not running Liferea must be running in order to add new feed. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Add feed into other application RSSWidget Add RSS Feeds from this site Untitled feed Add Tilføj RecoveryWidget Start New Session Restore Window %1 RegisterQAppAssociation Warning! Advarsel! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) RssIcon Add RSS from this page... SSLManager Certificate Manager CA Authorities Certificates Show info Vis info This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Local Certificates Import Import Remove Fjern This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Settings Indstillinger Add Tilføj If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. <b>NOTE:</b> Setting this option is a high security risk! Ignore all SSL Warnings All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Choose path... Vælg sti... Import certificate... Importer certifikat... Certificate Informations SearchEnginesDialog Manage Search Engines Add... Tilføj... Remove Fjern Edit Rediger Set as default Sæt som standard Up Op Down Ned Search Engine Søgemaskine Shortcut Genvej Defaults Add Search Engine Tilføj søgemaskine Remove Engine You can't remove the default search engine.<br>Set a different engine as default before removing %1. Edit Search Engine Rediger søgemaskine SearchEnginesManager Search Engine Added Søgemaskine tilføjet Search Engine "%1" has been successfully added. Search Engine is not valid! Error Error while adding Search Engine <br><b>Error Message: </b> %1 SearchToolBar No results found. SearchToolbar Search: Søg: Search... Søg... Highlight Case sensitive SideBar Bookmarks Bogmærker History Historik SiteInfo Site Info General Media Media Databases Databaser Security Size: Størrelse: Site address: Encoding: Tegnkodning: Meta tags of site: Tag Mærkat Value Værdi <b>Security information</b> Details Detaljer Image Image address <b>Preview</b> <b>Database details</b> Name: Navn: Path: <database not selected> <database ikke valgt> <not set in certificate> No databases are used by this page. <b>Connection is Encrypted.</b> <b>Forbindelse er krypteret.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Din forbindelse til denne side er sikret med dette certifikat:</b> <b>Connection Not Encrypted.</b> <b>Forbindelse ikke krypteret.</b> <b>Your connection to this page is not secured!</b> Copy Image Location Copy Image Name Save Image to Disk Error! Fejl! This preview is not available! Save image... Gem billede... Cannot write to file! Kan ikke skrive til fil! Preview not available SiteInfoWidget More... Mere... Your connection to this site is <b>secured</b>. Din forbindelse til denne side er <b>sikret</b>. Your connection to this site is <b>unsecured</b>. Din forbindelse til denne side er <b>ikke sikret</b>. This is your <b>%1</b> visit of this site. Dette er din <b>%1</b> gang på denne side. You have <b>never</b> visited this site before. Du har <b>aldrig</b> været på denne side før. first første second anden third tredje SourceViewer Source of Kilde for File Fil Load in page Save as... Gem som... Close Luk Edit Rediger Undo Fortryd Redo Gendan Cut Klip Copy Kopier Paste Indsæt Select All Vælg alt Find Find Go to Line... Gå til linie... View Vis Reload Genindlæs Editable Redigerbar Word Wrap Ordfoldning Source loaded in page Cannot load in page. Page has been closed. Save file... Gem fil... Error! Fejl! Cannot write to file! Kan ikke skrive til fil! Error writing to file Fejl ved skrivning til fil Source successfully saved Kilde korrekt gemt Source reloaded Kilde genindlæst Cannot reload source. Page has been closed. Kan ikke genindlæse kilden. Siden er blevet lukket. Editable changed Word Wrap changed Enter line number Indtast linienummer SourceViewerSearch Search: Søg: Search... Søg... Whole words Hele ord SpeedDial Image files Billedfiler Select image... Vælg billede... Unable to load Kan ikke indlæse SpellCheckDialog SpellCheck <b>Dictionary path</b> Change... <b>User dictionary</b> Add Remove Using Hunspell library Choose dictionary path... Add new word... Add new word: Speller No suggestions Add to dictionary Settings SqueezeLabelV2 Copy Kopier TabBar &New tab &Nyt faneblad &Stop Tab &Stop faneblad &Reload Tab &Genindlæs faneblad &Duplicate Tab &Dupliker faneblad Un&pin Tab &Pin Tab Re&load All Tabs &Bookmark This Tab Opret &bogmærke fra dette faneblad Bookmark &All Tabs Close Ot&her Tabs Cl&ose Reloa&d All Tabs Genind&læs alle faneblade Bookmark &All Ta&bs Restore &Closed Tab TabWidget New Tab List of tabs Loading... No Named Page Currently you have %1 opened tabs New tab Empty Restore All Closed Tabs Clear list TabbedWebView Loading... %1 - QupZilla %1 - QupZilla Inspect Element ThemeManager <b>Name:</b> <b>Author:</b> <b>Description:</b> License ToolButton Stop Reload Updater Update available New version of QupZilla is ready to download. Update UserAgentDialog User Agent Manager Change global User Agent Use different User Agents for specified sites Site User Agent Add Remove Edit Add new site Edit site Site domain: User Agent: WebInspectorDockWidget Web Inspector WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? Remember my choice for this protocol External Protocol Request To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Confirm form resubmission Select files to upload... Server refused the connection Server closed the connection Server not found Connection timed out Untrusted connection Temporary network failure Proxy connection refused Proxy server not found Proxy connection timed out Proxy authentication required Content not found Unknown network error AdBlocked Content Blocked by <i>%1</i> Content Access Denied Error code %1 Failed loading page QupZilla can't load page. QupZilla can't load page from %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com If you are unable to load any pages, check your computer's network connection. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Try Again JavaScript alert Prevent this page from creating additional dialogs Choose file... WebSearchBar Manage Search Engines Add %1 ... Paste And &Search Clear All Show suggestions Search when engine changed WebView No Named Page Create Search Engine Cut Copy Paste Select All &Reload S&top Delete &Back &Forward This frame Show &only this frame Show this frame in new &tab Print frame Zoom &in &Zoom out Reset Show so&urce of frame Book&mark page &Save page as... &Copy page link Send page link... &Print page Select &all Validate page Show so&urce code Show info ab&out site Open link in new &tab Open link in new &window B&ookmark link &Save link as... Send link... &Copy link address Show i&mage Copy im&age Copy image ad&dress &Save image as... Send image... Send text... Google Translate Google Translate Dictionary Go to &web address Search "%1 .." with %2 Search with... &Play &Pause Un&mute &Mute &Copy Media Address &Send Media Address Save Media To &Disk Check &Spelling Languages jsAlert Prevent this page from creating additional dialogs qupzilla-1.6.0/translations/de_DE.ts000066400000000000000000010624531226107126500174250ustar00rootroot00000000000000 AboutDialog About QupZilla Über QupZilla Authors Autoren Authors and Contributors Autoren und Mitwirkende < About QupZilla < Über QupZilla <p><b>Application version %1</b><br/> <p><b>QupZilla-Version: %1</b><br/> <b>WebKit version %1</b></p> <b>WebKit-Version: %1</b></p> <small>Build time: %1 </small></p> <small>Kompiliert am: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Hauptentwickler:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Mitwirkende:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Übersetzer:</b><br/>%1</p> AcceptLanguage Preferred Languages Bevorzugte Sprache Add... Hinzufügen... Remove Entfernen Up Nach oben Down Nach unten Personal [%1] Eigene [%1] AdBlockAddSubscriptionDialog Add Subscription Abonnement hinzufügen Title: Titel: Address: Adresse: Add new subscription to AdBlock: Neues Abonnement zu AdBlock hinzufügen: AdBlockCustomList Custom Rules Benutzerdefinierte Regeln AdBlockDialog AdBlock Configuration AdBlock-Konfiguration Enable AdBlock AdBlock aktivieren Search... Suchen... Options Optionen AdBlock AdBlock Use only essential part of EasyList (for performance reasons) Nur den unbedingt erforderlichen Teil von EasyList benutzen (aus Performanzgründen) Add Rule Regel hinzufügen Remove Rule Regel entfernen Add Subscription Abonnement hinzufügen Remove Subscription Abonnement entfernen Update Subscriptions Abonnements aktualisieren Learn about writing rules... Hilfe zur Erstellung von Regeln... AdBlockIcon AdBlock lets you block unwanted content on web pages AdBlock blockiert unerwünschte Seiteninhalte Blocked popup window Geblocktes PopUp-Fenster AdBlock blocked unwanted popup window. AdBlock hat ein unerwünschtes PopUp-Fenster geblockt. AdBlock AdBlock Show AdBlock &Settings AdBlock-&Einstellungen anzeigen Disable on %1 Deaktiviert auf %1 Disable only on this page Nur auf dieser Seite deaktiveren Blocked Popup Windows Geblockte PopUp-Fenster %1 with (%2) %1 mit (%2) No content blocked Keine Seiteninhalte geblockt Blocked URL (AdBlock Rule) - click to edit rule Geblockte URL (AdBlock-Regel) – zum Bearbeiten anklicken AdBlockManager Do you want to add <b>%1</b> subscription? Möchten Sie das Abonnement <b>%1</b> hinzufügen? AdBlock Subscription AdBlock-Abonnement EasyList EasyList AdBlockTreeWidget Add Rule Regel hinzufügen Remove Rule Regel entfernen Add Custom Rule Benutzerdefinierte Regel hinzufügen Please write your rule here: Bitte Regel hier eintragen: %1 (recently updated) %1 (kürzlich aktualisiert) AddAcceptLanguage Add Language Sprache hinzufügen Choose preferred language for web sites Bevorzugte Sprache für Webseiten festlegen Personal definition: Eigene Definition: AesInterface Warning! Warnung! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. Die Daten wurden mit einer neueren QupZilla-Version verschlüsselt.⏎ Bitte installieren Sie die aktuellste Version von QupZilla. AutoFill Database (plaintext) Datenbank (Klartext) Database (encrypted) Datenbank (verschlüsselt) Enter Master Password Bitte Master-Passwort eingeben Permission is required, please enter Master Password: Berechtigung erforderlich, bitte geben Sie das Master-Passwort ein Warning! Warnung! Entered password is wrong! Das eingegebene Passwort ist falsch! This backend needs a master password to be set! QupZilla just switches to its default backend Dieses Backend erfordert die Eingabe eines Master-Passworts! QupZilla wechselt zum Standard-Backend AutoFillManager Passwords are stored in: Passwörter werden gespeichert in: Change backend Backend ändern Backend options Backend-Einstellungen Passwords Passwörter Server Server Username Benutzername Password Passwort Import/Export Import/Export Show Passwords Passwörter im Klartext anzeigen Edit Bearbeiten Remove Entfernen Remove All Alle entfernen Exceptions Ausnahmen Import Passwords from File... Passwörter von Datei importieren... Export Passwords to File... Passwörter in Datei exportieren... Search Suchen Change backend... Backend ändern... Change backend: Backend ändern: Are you sure that you want to show all passwords? Sind Sie sicher, dass Sie alle Passwörter im Klartext anzeigen wollen? Hide Passwords Anzeige der Passwörter verbergen Confirmation Bestätigung Are you sure to delete all passwords on your computer? Möchten Sie wirklich alle Passwörter auf diesem Computer löschen? Edit password Passwort bearbeiten Change password: Passwort ändern: Choose file... Datei wählen... Cannot read file! Datei kann nicht gelesen werden! Successfully imported Import erfolgreich abgeschlossen Error while importing! Fehler beim Import aufgetreten! Cannot write to file! Datei kann nicht gespeichert werden! Successfully exported Export erfolgreich abgeschlossen AutoFillNotification Update Aktualisierung Remember Speichern Never For This Site Nie für diese Seite Not Now Nicht jetzt on %1 an %1 for <b>%1</b> Für <b>%1</b> Do you want QupZilla to update saved password %1? Soll QupZilla das gespeicherte Passwort %1 aktualisieren? Do you want QupZilla to remember the password %1 %2? Soll QupZilla das Passwort %1 %2 speichern? AutoFillWidget Choose username to login Benutzername für Anmeldung wählen Login Anmelden Login as <b>%1</b> Anmelden als <b>%1</b> BookmarkIcon Bookmark this Page Ein Lesezeichen für diese Seite hinzufügen Edit this bookmark Dieses Lesezeichen bearbeiten BookmarksImportDialog Import Bookmarks Lesezeichen importieren <b>Import Bookmarks</b> <b>Lesezeichen importieren</b> From File Von Datei Internet Explorer Internet Explorer Choose browser from which you want to import bookmarks: Bitte Browser auswählen, von dem Lesezeichen importiert werden sollen: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Hinweis:</b> Aktuell ist es nur beim Import von HTML-Dateien möglich, auch Ordner zu importieren. Choose... Wählen... Try to fetch icons for all bookmarks (may take a while) Versuche, die Symbole für alle Lesezeichen zu laden (das kann eine Weile dauern). Fetching icons, please wait... Symbole werden geholt, bitte warten... Title Titel Url URL Next Weiter Cancel Abbrechen <b>Importing from %1</b> <b>Von %1 wird importiert</b> Finish Ende Please press Finish to complete importing process. Bitte klicken Sie auf <Ende>, um den Importvorgang abzuschließen. Error! Fehler! The file doesn't contain any bookmark. Diese Datei enthält keine Lesezeichen. Choose directory... Ordner wählen... Choose file... Datei wählen... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox speichert die Lesezeichen in der Datei <b>places.sqlite</b>. Diese ist gewöhnlich gespeichert unter Please choose this file to begin importing bookmarks. Bitte wählen Sie diese Datei, um mit dem Import zu beginnen. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Google Chrome speichert die Lesezeichen in der Datei <b>Bookmarks</b>. Diese ist gewöhnlich gespeichert unter Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera speichert die Lesezeichen in der Datei <b>bookmarks.adr</b>. Diese ist gewöhnlich gespeichert unter You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Sie können Lesezeichen von jedem Browser importieren, der den Export von Lesezeichen im HTML-Format unterstützt. Diese Exportdatei hat gewöhnlich diese Endungen Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Explorer speichert die Lesezeichen im <b>Favorites</b>-Ordner. Dieser Ordner ist gewöhnlich zu finden unter Please choose this folder to begin importing bookmarks. Bitte wählen Sie diesen Ordner, um mit dem Import zu beginnen. No Error Kein Fehler aufgetreten Unable to open file. Datei kann nicht geöffnet werden. Cannot evaluate JSON code. JSON-Format kann nicht ausgewertet werden. File does not exist. Diese Datei existiert nicht. Unable to open database. Is Firefox running? Datenbank kann nicht geöffnet werden. Ist Firefox aktiv? Directory does not exist. Dieser Ordner existiert nicht. The directory does not contain any bookmarks. Dieser Ordner enthält keine Lesezeichen. BookmarksManager Bookmarks Lesezeichen Optimize Database Datenbank optimieren Import Bookmarks Lesezeichen importieren Add Folder Ordner hinzufügen Title Titel Url URL Expand All Alle einblenden Collapse All Alle ausblenden Add new folder Neuen Ordner hinzufügen Choose parent folder for new folder: Übergeordneten Ordner für den neuen Ordner wählen: Choose name for new bookmark folder: Namen für neues Lesezeichen angeben: Add new subfolder Neuen Unterordner hinzufügen Choose name for new subfolder in bookmarks toolbar: Namen für neuen Unterordner in Lesezeichenleiste auswählen: Rename Folder Ordner umbenennen Choose name for folder: Namen für Ordner auswählen: Add Subfolder Unterordner hinzufügen Rename folder Ordner umbenennen Remove folder Ordner entfernen Open link in current &tab Link in &aktuellem Tab öffnen Open link in &new tab Link in &neuem Tab öffnen Move bookmark to &folder Lesezeichen in &Ordner verschieben Change icon Symbol ändern Rename bookmark Lesezeichen umbenennen Remove bookmark Lesezeichen entfernen <b>Warning: </b>You already have bookmarked this page! <b>Warnung: </b>Diese Lesezeichen haben Sie bereits hinzugefügt! Choose name and location of this bookmark. Namen und Speicherort für Lesezeichen auswählen. Add New Bookmark Neues Lesezeichen hinzufügen Choose folder for bookmarks: Ordner für Lesezeichen auswählen: Bookmark All Tabs Lesezeichen für alle geöffneten Tabs hinzufügen BookmarksModel Bookmarks In Menu Lesezeichen im Menü Bookmarks In ToolBar Lesezeichen in Symbolleiste Unsorted Bookmarks Unsortierte Lesezeichen BookmarksSideBar Search... Suchen... Open link in current &tab Link in &aktuellem Tab öffnen Open link in &new tab Link in &neuem Tab öffnen Copy address Link-Adresse kopieren &Delete &Löschen BookmarksToolbar &Bookmark Current Page Lesezeichen für &aktuelle Seite hinzufügen Bookmark &All Tabs Lesezeichen für alle &geöffneten Tab hinzufügen &Organize Bookmarks Lesezeichen &bearbeiten Show Most &Visited Meistbesuchte &anzeigen Show Only Icons Nur Symbole anzeigen &Hide Toolbar &Symbolleiste verbergen Open bookmark Lesezeichen öffnen Open bookmark in new tab Lesezeichen in neuem Tab öffnen Move right Nach rechts Move left Nach links Edit bookmark Lesezeichen bearbeiten Remove bookmark Lesezeichen entfernen Edit bookmark: Lesezeichen bearbeiten: Title: Titel: Url: URL: Edit Bookmark Lesezeichen bearbeiten Most visited Meistbesuchte Sites you visited the most Meistbesuchte Seiten Empty Leer BookmarksTree Bookmarks Lesezeichen New Folder... Neuer Ordner... BookmarksWidget Add to Speed Dial Zur Schnellwahl hinzufügen Save Speichern Name: Name: Folder: Ordner: Remove from Speed Dial Aus Schnellwahl entfernen Remove Entfernen BrowsingLibrary Library Bibliothek Search... Suchen... History Verlauf Bookmarks Lesezeichen RSS RSS Database Optimized Datenbank optimiert Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 Datenbank erfolgreich optimiert.<br/><br/><b>Datenbankgröße vorher: </b>%1<br/><b>Datenbankgröße nachher: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Ausgestellt für</b> Common Name (CN): Allgemeiner Name (CN): Organization (O): Organisation (O): Organizational Unit (OU): Organisationseinheit (OU): Serial Number: Seriennummer: <b>Issued By</b> <b>Ausgestellt von</b> <b>Validity</b> <b>Gültigkeit</b> Issued On: Ausgestellt für: Expires On: Verfällt am: ClearPrivateData Clear Recent History Verlauf löschen Choose what you want to delete: Zu löschende Elemente wählen: Clear history Verlauf löschen Clear cache Cache löschen Clear icons Symbole löschen <b>Clear Recent History</b> <b>Aktuellen Verlauf löschen</b> Earlier Today Früher Week Woche Month Monat All Alle Clear web databases Web-Datenbanken löschen Clear local storage Lokalen Speicherplatz löschen Clear cookies Cookies löschen ClickToFlash Object blocked by ClickToFlash Objekt blockiert von ClickToFlash Show more information about object Mehr Informationen anzeigen Delete object Objekt löschen Add %1 to whitelist %1 zur Whitelist hinzufügen Flash Object Flash-Objekt <b>Attribute Name</b> <b>Attributname</b> <b>Value</b> <b>Wert</b> No more information available. Keine weiteren Informationen verfügbar. CookieManager Cookies Cookies Stored Cookies Gespeicherte Cookies Find: Suche: These cookies are stored on your computer: Folgende Cookies sind auf Ihrem Computer gespeichert: Server Server Cookie name Name des Cookies Name: Name: Value: Wert: Server: Server: Path: Pfad: Secure: Sicher: Expiration: Ablaufdatum: <cookie not selected> <Cookie nicht ausgewählt> Remove all cookies Alle Cookies löschen Remove cookies Cookies löschen Cookie Filtering Cookie Filter <b>Cookie whitelist</b> <b>Cookie Whitelist</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Cookies von diesen Webseiten IMMER akzeptieren (auch wenn das Speichern von Cookies deaktiviert ist) Add Hinzufügen Remove Entfernen <b>Cookie blacklist</b> <b>Cookie Blacklist</b> Cookies from these servers will NEVER be accepted Cookies von diesen Webseiten NIEMALS akzeptieren Settings Einstellungen <b>Cookie Settings</b> <b>Einstellungen</b> Allow storing of cookies Das Speichern von Cookies erlauben Delete cookies on close Cookies beim Beenden löschen Match domain exactly Genaue Übereinstimmung der Domain Filter tracking cookies Seitenfremde Cookies verbieten <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! <b>Warnung:</b> Das Einschalten der Optionen „Genaue Übereinstimmung“ und „Seitenfremde Inhalte“ kann dazu führen, dass Cookies von Webseiten zurückgewiesen werden. Tritt dieses Problem auf, deaktivieren Sie bitte zunächst diese Optionen! Search Suchen Confirmation Bestätigung Are you sure to delete all cookies on your computer? Möchten Sie wirklich alle auf Ihrem Computer gespeicherten Cookies löschen? Secure only Nur sichere All connections Alle Verbindungen Session cookie Sitzungscookie Remove cookie Ausgewählten Cookie löschen Add to whitelist Zur Whitelist hinzufügen Add to blacklist Zur Blacklist hinzufügen DownloadFileHelper Save file as... Datei speichern als... NoNameDownload NoNameDownload DownloadItem Remaining time unavailable Verbleibende Zeit unbekannt Error: Cannot write to file! Fehler: Datei kann nicht gespeichert werden! Done - %1 Erledigt - %1 Cancelled Abgebrochen few seconds Wenige Sekunden %n seconds %n minutes %n hours Unknown speed Downloadgeschwindigkeit unbekannt kB/s kB/s MB/s MB/s GB/s GB/s Unknown size Dateigröße unbekannt %2 - unknown size (%3) %2 - unbekannte Dateigröße (%3) Remaining %1 - %2 of %3 (%4) Verbleibend %1 - %2 von %3 (%4) Cancelled - %1 Abgebrochen - %1 Delete file Datei löschen Do you want to also delete dowloaded file? Möchten Sie auch die heruntergeladene Datei löschen? Open File Datei öffnen Open Folder Ordner öffnen Go to Download Page Gehe zu Link-Adresse Copy Download Link Link-Adresse kopieren Cancel downloading Download abbrechen Remove Entfernen Error Fehler Not found Nicht gefunden Sorry, the file %1 was not found! Datei %1 konnte nicht gefunden werden! Error: Fehler: DownloadManager Download Manager Download-Manager Clear Leeren %1% of %2 files (%3) %4 remaining %1% von %2 Dateien (%3) %4 verbleiben %1% - Download Manager %1% - Download Manager Download Finished Download beendet All files have been successfully downloaded. Alle Dateien wurden erfolgreich heruntergeladen. Warning Warnung Are you sure to quit? All uncompleted downloads will be cancelled! Möchten Sie QupZilla wirklich beenden? Alle nicht beendeten Downloads werden abgebrochen! DownloadOptionsDialog Opening Öffnen von Copy download link Download-Link kopieren You have chosen to open Datei zum Öffnen ausgewählt which is a: vom Typ: What should QupZilla do with this file? Wie soll QupZilla mit dieser Datei verfahren? Open... Öffnen... Save File Datei speichern Download with External Manager Mit externem Download-Manager herunterladen from: von: Opening %1 Öffnen von %1 Download link copied. Download-Link kopiert. EditSearchEngine Name: Name: Url: Url: Shortcut: Verknüpfung: Icon: Symbol: <b>Note: </b>%s in url or post data represent searched string <b>Hinweis: </b>%s in der URL oder Post-Data entspricht der gesuchten Zeichenkette Post Data: Post-Data: Change... Ändern... FileSchemeReply No Error Kein Fehler aufgetreten Up to higher level directory Zum übergeordneten Ordner Show hidden files Versteckte Dateien anzeigen Name Name Size Größe Last modified Zuletzt geändert Index for %1 Index für %1 Folder is empty. Ordner ist leer. FtpDownloader Cancelled! Abgebrochen FtpSchemeReply Up to higher level directory Zum übergeordneten Ordner Show hidden files Versteckte Dateien anzeigen Name Name Size Größe Last modified Zuletzt geändert Index for %1 Index für %1 Folder is empty. Ordner ist leer. Unknown command Unbekannter Befehl HTML5PermissionsDialog HTML5 Permissions HTML5-Berechtigungen Notifications Benachrichtigungen Site Webseite Behaviour Verhalten Remove Entfernen Geolocation Ortung Allow Zulassen Deny Abweisen HTML5PermissionsNotification Remember Speichern Allow Zulassen Deny Abweisen this site diese Webseite Allow %1 to show desktop notifications? %1 die Anzeige von Desktop-Benachrichtigungen erlauben? Allow %1 to locate your position? %1 die Bestimmung Ihrer Position erlauben? History No Named Page Leere Seite January Januar February Februar March März April April May Mai June Juni July Juli August August September September October Oktober November November December Dezember HistoryManager History Verlauf Delete Löschen Clear All History Gesamten Verlauf löschen Optimize Database Datenbank optimieren Confirmation Bestätigung Are you sure to delete all history? Möchten Sie wirklich den gesamten Verlauf löschen? HistoryModel Title Titel Address Adresse Visit Date Besucht am Visit Count Zähler Today Heute This Week Diese Woche This Month Dieser Monat HistorySideBar Search... Suchen... HistoryView Open link in current tab Link in aktuellem Tab öffnen Open link in new tab Link in neuem Tab öffnen Copy title Titel kopieren Copy address Link-Adresse kopieren Remove Entfernen IconChooser Choose icon... Symbol auswählen... From file Von Datei Image (.png, .jpg, .jpeg, .gif) Bilddatei (.png, .jpg, .jpeg, .gif) Choose file... Datei wählen... From database Von Datenbank Site Url: Adresse der Seite: Image files Bilddateien JsOptions JavaScript Options JavaScript-Optionen Allow JavaScript to: JavaScript diese Modifikationen erlauben: Close windows Fenster schließen Open popup windows PopUp-Fenster öffnen Change window size Fenstergröße ändern Hide menu bar Menüleiste verbergen Hide status bar Statusleiste verbergen Hide tool bar Symbolleiste verbergen Access clipboard Auf die Zwischenablage zugreifen LicenseViewer License Viewer Lizenz anzeigen LocationBar Enter URL address or search on %1 URL eingeben oder auf %1 suchen Paste And &Go Einfügen und &Los Clear All Alle leeren .co.uk Append domain name on ALT + Enter = Should be different for every country .de Show information about this page Seiteninformationen anzeigen LocationCompleterView Switch to tab Zu Tab wechseln MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? QupZilla ist aktuell nicht als Standard-Browser konfiguriert. Möchten Sie QupZilla als Standard-Browser einrichten? Always perform this check when starting QupZilla. Diese Überprüfung immer beim Start von QupZilla durchführen. Default Browser Standard-Browser QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. QupZilla ist ein neuer, schneller und sicherer, quelloffener Webbrowser. QupZilla ist lizenziert unter GPL Version 3 oder später. Er nutzt Webkit und das Qt-Framework. MasterPasswordDialog Encrypted DataBase Settings Einstellungen der verschlüsselten Datenbank Set/Change Master Password... Master-Passwort setzen/ ändern... Clear Master Password... Master-Passwort löschen... This backend does not work without a master password. Dieses Backend erfordert die Angabe eines Master-Passworts. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. Diese Option löscht das Master-Passwort und verschiebt alle verschlüsselten Daten in die "Datenbank (Klartext)" und wechselt dorthin. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Das Master-Passwort wird dazu verwendet, Passwörter von Web-Seiten und Formularen zu schützen. Wenn Sie ein Master-Passwort setzen, werden Sie aufgefordert, dieses einmal pro Sitzung einzugeben. Current Password: Aktuelles Passwort: New Password: Neues Passwort: Confirm Password: Passwort bestätigen: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. <b>Hinweis:</b> Das Master-Passwort kann nicht zurückgesetzt werden. Bitte bewahren Sie es an einem sicheren Ort auf. Warning! Warnung! You entered a wrong password! Sie haben ein falsches Passwort eingegeben! New/Confirm password fields do not match! Die Passwortfelder Neu/ Bestätigen stimmen nicht überein! Some data has not been decrypted. The master password was not cleared! Einige Daten konnten nicht entschlüsselt werden. Das Master-Passwort wurde nicht gelöscht! Are you sure to clear master password and decrypt data? Möchten Sie wirklich das Master-Passwort löschen und alle Daten entschlüsseln? NavigationBar No Named Page Leere Seite Back Zurück Forward Vorwärts Home Startseite New Tab Neuer Tab Main Menu Hauptmenü Exit Fullscreen Vollbildmodus beenden Clear history Verlauf löschen NetworkManager SSL Certificate Error! SSL-Zertifikatsfehler! The page you are trying to access has the following errors in the SSL certificate: Beim Laden dieser Seite sind folgende SSL-Zertifikatsfehler aufgetreten: <b>Organization: </b> <b>Organisation: </b> <b>Domain Name: </b> <b>Domänen-Name: </b> <b>Expiration Date: </b> <b>Ablaufdatum: </b> <b>Error: </b> <b>Fehler: </b> Would you like to make an exception for this certificate? Möchten Sie eine Ausnahme für dieses Zertifikat zulassen? Authorisation required Authentifizierung erforderlich Username: Benutzername: Password: Passwort: Save username and password on this site Benutzername und Passwort für diese Seite speichern A username and password are being requested by %1. The site says: "%2" Bitte Benutzername und Passwort zur Anmeldung an Server %1 angeben. Statusmeldung: "%2" FTP authorisation required Authentifizierung am FTP-Server erforderlich Login anonymously Anonym anmelden A username and password are being requested by %1:%2. Bitte Benutzername und Passwort zur Anmeldung an %1:%2 angeben. Proxy authorisation required Authentifizierung am Proxy-Server erforderlich Remember username and password for this proxy. Nutzername und Passwort für diesen Proxy speichern A username and password are being requested by proxy %1. Bitte Benutzername und Passwort zur Anmeldung an Proxy %1 angeben. PageScreen Page Screen Bildschirmseite Format: Format: Location: Speicherort: Browse... Durchsuchen... Save as %1 Speichern als %1 Choose location... Speicherort wählen... File '%1' already exists. Do you want to overwrite it? Die Datei '%1' existiert bereits. Möchten Sie diese überschreiben? File already exists Diese Datei existiert bereits PluginsList Application Extensions QupZilla-Erweiterungen Allow Application Extensions to be loaded Das Laden von QupZilla-Erweiterungen erlauben Settings Einstellungen WebKit Plugins WebKit-Plugins <b>Click To Flash Plugin</b> <b>Click To Flash Plugin</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Click To Flash ist ein Plugin, das das automatische Laden von Flashinhalten auf einer Seite unterbindet. Diese Inhalte können manuell geladen werden, indem Sie auf das Symbol "Flashinhalte abspielen" klicken. Whitelist Whitelist Add Hinzufügen Remove Entfernen Allow Click To Flash Click To Flash erlauben PluginsManager Add site to whitelist Aktuelle Seite zur Whitelist hinzufügen Server without http:// (ex. youtube.com) Server ohne http:// (z.B. youtube.com) Error! Fehler! Cannot load extension! Erweiterung kann nicht geladen werden! PopupWebView Inspect Element Element untersuchen PopupWindow File Datei &Save Page As... Seite speichern &unter... Save Page Screen Bildschirmseite speichern Send Link... Link senden... &Print... &Drucken... Close Schließen Edit Bearbeiten &Undo &Rückgängig &Redo &Wiederherstellen &Cut &Ausschneiden C&opy &Kopieren &Paste E&infügen Select All Alle markieren Find Suchen View Ansicht &Stop &Stopp &Reload &Neu laden Zoom &In Ver&größern Zoom &Out Ver&kleinern Reset Zurücksetzen &Page Source Seiten-&Quelltext %1 - QupZilla %1 - QupZilla Preferences Preferences Einstellungen QupZilla QupZilla General Allgemein Appearance Erscheinungsbild Tabs Tabs Browsing Im Internet surfen Fonts Schriftarten Keyboard Shortcuts Tastenkombinationen Downloads Downloads Password Manager Passwort-Manager Privacy Privatsphäre Notifications Benachrichtigungen Extensions Erweiterungen Other Andere Use current Aktuelle benutzen Note: You cannot delete active profile. Hinweis: Ein aktives Profil kann nicht gelöscht werden. Create New Neues Profil erstellen Delete Löschen <b>Launching</b> <b>Start</b> After launch: Nach dem Start: Open blank page Leere Seite öffnen Open homepage Startseite öffnen Open speed dial Schnellwahl öffnen Restore session Sitzung wiederherstellen Homepage: Startseite: On new tab: Bei neuem Tab: Open blank tab Leeren Tab öffnen Open other page... Andere Seite öffnen... <b>Profiles</b> <b>Profile</b> Startup profile: Beim Start: Check for updates on start Beim Start auf Aktualisierungen überprüfen Active profile: Aktives Profil: In order to change language, you must restart browser. Um die Sprache zu ändern, starten Sie bitte QupZilla neu. <b>Language</b> <b>Sprache</b> Available translations: Verfügbare Übersetzungen: Don't load tabs until selected Tabs erst laden, wenn sie ausgewählt wurden Check to see if QupZilla is the default browser on startup Beim Start prüfen, ob QupZilla der Standard-Browser ist Check Now Jetzt prüfen Themes Themen Advanced options Erweiterte Optionen <b>Browser Window</b> <b>Browser-Fenster</b> Show StatusBar on start Statusleiste nach Programmstart anzeigen Show Bookmarks ToolBar on start Lesezeichenleiste nach Programmstart anzeigen Show Navigation ToolBar on start Navigationsleiste nach Programmstart anzeigen <b>Navigation ToolBar</b> <b>Navigationsleiste</b> Show Home button Startseiten-Schaltfläche anzeigen Show Back / Forward buttons Zurück-/Vorwärts-Schaltflächen anzeigen <b>Background<b/> <b>Hintergrund<b/> Use transparent background Transparenten Hintergrund benutzen Show web search bar Suchleiste anzeigen Show Add Tab button Schaltfläche zum Hinzufügen von Tabs anzeigen Show Reload / Stop buttons Neuladen-/ Stopp-Schaltflächen anzeigen Tabs behaviour Tab-Verhalten Show tab previews Tab-Vorschau anzeigen Make tab previews animated Tab-Vorschau animieren Hide tabs when there is only one tab Tab verbergen, wenn nur einer geöffnet ist Activate last tab when closing active tab Zuletzt besuchten Tab aktivieren, wenn aktiver Tab geschlossen wird Open new tabs after active tab Neue Tabs hinter dem aktiven Tab öffnen Open new empty tabs after active tab Neue Tabs hinter dem aktivem Tab öffnen Automatically switch to newly opened tab Automatisch zu neu geöffnetem Tab wechseln Don't quit upon closing last tab QupZilla beim Schließen des letzten Tabs nicht beenden Ask when closing multiple tabs Fragen, wenn mehrere Tabs geschlossen werden Closed tabs list instead of opened in tab bar Liste der geschlossenen anstatt der geöffneten Tabs anzeigen Address Bar behaviour Adress-Leisten Verhalten Suggest when typing into address bar: Vorschläge bei Eingabe in Adressleiste: History and Bookmarks Verlauf und Lesezeichen History Verlauf Bookmarks Lesezeichen Nothing Keine Press "Shift" to not switch the tab but load the url in the current tab. Die <Umschalt>-Taste drücken, um die URL im aktuellen Tab zu öffnen und nicht den Tab zu wechseln. Propose to switch tab if completed url is already loaded. Tab-Wechsel vorschlagen, wenn die URL schon vollständig geladen ist. Always show go icon Das "Los"-Symbol immer anzeigen Select all text by double clicking in address bar Ganzen Text mit einem Doppelklick in der Adressleiste auswählen Select all text by clicking in address bar Gesamten Text durch Klick in die Adressleiste auswählen Search with Default Engine Mit Standard-Suchmaschine suchen Show loading progress in address bar Fortschrittsanzeige in der Adressleiste anzeigen Fill Füllen Bottom Unten Top Oben Custom color: Benutzerdefinierte Farbe: Select color Farbe auswählen ... ... Reset Zurücksetzen Web Configuration Web-Konfiguration Allow Netscape Plugins (Flash plugin) Netscape Plugins (Flash Plugin) erlauben Allow JavaScript JavaScript erlauben Allow JAVA Java zulassen Allow DNS Prefetch DNS-Prefetch erlauben Enable XSS Auditing try to detect possible XSS attacks when executing javascript XSS-Prüfung aktivieren Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Hintergrund drucken Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Links in Focus Chain berücksichtigen Animated scrolling Animierter Bildlauf Enable caret browsing Aktiviere Caret-Browsing Enable spatial navigation Räumliche Navigation aktivieren Zoom text only Nur Text vergrößern Mouse wheel scrolls Mit dem Mausrad blättern lines on page Zeilen auf einer Seite Default zoom on pages: Standardvergrößerung: Local Storage Lokaler Speicherplatz Maximum Maximum 50 MB 50 MB 1 1 Maximum pages in cache: Maximale Seitenanzahl im Cache: Allow storing network cache on disk Cache-Speicherung auf lokaler Festplatte erlauben Store cache in: Cache speichern in: Allow saving history Speichern des Verlaufs erlauben Delete history on close Verlauf beim Beenden löschen Allow local storage of HTML5 web content Das lokale Speichern von HTML5-Inhalten erlauben Delete locally stored HTML5 web content on close Lokale HTML5-Speicherinhalte beim Verlassen löschen Delete now Jetzt löschen Proxy Configuration Proxy Konfiguration Proxy Auto-Config (.pac) file Proxy-Auto-Config-Datei (PAC-Datei) Reload Neu laden HTTP HTTP SOCKS5 SOCKS5 Port: Port: Username: Nutzername: Password: Passwort: Don't use on: Ausnahme: Manual configuration Manuelle Konfiguration System proxy configuration Proxy-Einstellungen des Systems verwenden Do not use proxy Keinen Proxy benutzen <b>Exceptions</b> <b>Ausnahmen</b> Server: Server: Use different proxy for https connection Einen anderen Proxy für https Verbindungen nutzen Use script for automatic configuration: Skript für automatische Konfiguration verwenden: <b>Font Families</b> <b>Schriftarten</b> Standard Standard Fixed Feste Breite Serif Serif Sans Serif Sans Serif Cursive Kursiv Fantasy Fantasy <b>Font Sizes</b> <b>Schriftgrößen</b> Fixed Font Size Feste Schriftgröße Default Font Size Standard Schriftgröße Minimum Font Size Kleinste Schriftgröße Minimum Logical Font Size Kleinste logische Schriftgröße <b>Shortcuts</b> <b>Tastenkombinationen</b> Switch to tabs with Alt + number of tab Zwischen den Tabs mit <ALT> + Nummer des Tabs wechseln Load speed dials with Ctrl + number of speed dial Schnellwahlfeld mit <STRG> + Nummer des Feldes laden Add .co.uk domain by pressing ALT key in address bar Zum Hinzufügen der .de Domäne drücken Sie bitte die ALT-Taste <b>Download Location</b> <b>Download Verzeichnis</b> Ask everytime for download location Jedes Mal nach Speicherort fragen Use defined location: Definierten Speicherort benutzen: <b>Download Options</b> <b>Download Optionen</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Nativen System-Dialog verwenden (kann Probleme beim Herunterladen von mittels SSL geschützten Inhalten verursachen) Close download manager when downloading finishes Download-Manager schließen, wenn das Herunterladen beendet ist <b>External download manager</b> <b>Externer Download-Manager</b> Use external download manager Externen Download-Manager benutzen Executable: Ausführbare Datei: Arguments: Parameter: Leave blank if unsure Im Zweifelsfall leer lassen <b>%d</b> will be replaced with URL to be downloaded <b>%d</b> wird durch die heruntergeladene URL ersetzt <b>AutoFill options</b> <b>Autovervollständigen</b> Allow saving passwords from sites Speichern von Passwörtern von Seiten erlauben Send Referer header to servers Den Referrer übermitteln <b>Cookies</b> <b>Cookies</b> Send Do Not Track header to servers „Do Not Track“-Kopfzeile zum Server senden <b>Other</b> <b>Andere</b> Manage CA certificates CA Zertifikate verwalten Certificate Manager Zertifikat-Manager <b>SSL Certificates</b> <b>SSL-Zertifikate</b> <b>JavaScript</b> <b>JavaScript</b> Manage JavaScript privacy options Erweiterte JavaScript-Optionen verwalten JavaScript options JavaScript-Optionen Cookies Manager Cookie-Manager Manage Cookies Cookies verwalten <b>HTML5 Permissions</b> <b>HTML5-Berechtigungen</b> Manage HTML5 permissions HTML5-Berechtigungnen verwalten HTML5 Permissions HTML5-Berechtigungen <b>Notifications</b> <b>Benachrichtigungen</b> Use OSD Notifications OSD verwenden Use Native System Notifications (Linux only) System-Benachrichtigungen verwenden (nur Linux) Do not use Notifications Keine Benachrichtigungen verwenden Expiration timeout: Zeit: seconds Sekunden <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Hinweis: </b>Sie können die Position des OSD ändern, in dem Sie es auf dem Bildschirm mit der Maus verschieben. StyleSheet automatically loaded with all websites: StyleSheet automatisch mit allen Webseiten laden: Languages Sprachen <b>Preferred language for web sites</b> <b>Bevorzugte Sprache für Webseiten</b> <b>Change browser identification</b> <b>Browser Identifizierung ändern</b> User Agent Manager User Agent Manager Default Standard Set as default Als Standard verwenden OSD Notification OSD-Benachrichtigung Drag it on the screen to place it where you want. Veschieben Sie es auf dem Bildschirm nach Belieben. Choose download location... Download-Verzeichnis auswählen... Choose stylesheet location... Stylesheet-Verzeichnis wählen... Deleted Gelöscht Choose executable location... Ausführbare Datei auswählen... Choose cache path... Cache-Verzeichnis wählen... New Profile Neues Profil Enter the new profile's name: Bitte geben Sie den Namen des neuen Profils ein: Error! Fehler! This profile already exists! Dieses Profil existiert bereits! Cannot create profile directory! Profil-Ordner kann nicht erstellt werden! Confirmation Bestätigung Are you sure to permanently delete "%1" profile? This action cannot be undone! Möchten Sie wirklich das Profil „%1” dauerhaft entfernen? Diese Aktion kann nicht rückgängig gemacht werden! Select Color Farbe auswählen QObject Native System Notification Native Systembenachrichtigungen Save file as... Datei speichern als... The file is not an OpenSearch 1.1 file. Diese Datei besitzt kein gültiges OpenSearch-1.1-Format. <not set in certificate> <Im Zertifkat nicht vorhanden> Unknown size Dateigröße unbekannt KB KB MB MB GB GB Executable: Ausführbare Datei: Arguments: Parameter: Cannot start external program Externes Programm kann nicht gestartet werden Cannot start external program! %1 Externes Programm kann nicht gestartet werden! %1 QtWin Open new tab Neuen Tab öffnen Opens a new tab if browser is running Öffnet einen neuen Tab bei gestartetem Browser Open new window Neues Fenster öffnen Opens a new window if browser is running Öffnet ein neues Fenster bei gestartetem Browser Open download manager Download-Manager öffnen Opens a download manager if browser is running Öffnet den Download-Manager bei gestartetem Browser QupZilla QupZilla QupZilla Private Browsing Enabled Privater Modus aktiv IP Address of current page IP-Adresse der aktuellen Seite &About QupZilla Über Qup&Zilla Pr&eferences &Einstellungen Quit Beenden &File &Datei &New Window Neues &Fenster New Tab Neuer Tab Open Location Adresse aufrufen Open &File... Datei ö&ffnen Close Tab Tab schließen Close Window Fenster schließen &Save Page As... Seite speichern &unter... Save Page Screen Bildschirmseite speichern Send Link... Link senden... &Print... &Drucken... Import bookmarks... Lesezeichen importieren... &Edit &Bearbeiten &Undo &Rückgängig &Redo &Wiederherstellen &Cut &Ausschneiden C&opy &Kopieren &Paste E&infügen Select &All Alles au&swählen &Find &Suchen &View &Ansicht &Navigation Toolbar &Navigationsleiste &Bookmarks Toolbar &Lesezeichenleiste Sta&tus Bar Sta&tusleiste &Menu Bar &Menüleiste &Tabs on Top &Tabs oben &Fullscreen &Vollbild &Stop &Stopp &Reload &Neu laden Character &Encoding &Zeichenkodierung Enable &Caret Browsing Aktiviere &Caret-Browsing Toolbars Symbolleisten Sidebars Seitenleisten Zoom &In Ver&größern Zoom &Out Ver&kleinern Reset Zurücksetzen &Page Source Seiten-&Quelltext Hi&story &Verlauf &Back &Zurück &Forward &Vor &Home &Startseite Show &All History &Vollständigen Verlauf anzeigen Closed Tabs Geschlossene Tabs Recently Visited Zuletzt besucht Most Visited Meistbesuchte &Bookmarks &Lesezeichen Bookmark &This Page &Lesezeichen für diese Seite hinzufügen Bookmark &All Tabs Lesezeichen für alle &geöffneten Tabs hinzufügen Organize &Bookmarks Lesezeichen &bearbeiten &Tools E&xtras &Web Search Web&suche Page &Info S&eiteninformationen anzeigen &Download Manager &Download-Manager &Cookies Manager &Cookie-Manager &AdBlock &AdBlock RSS &Reader RSS-&Reader Web In&spector Web In&spector Clear Recent &History &Verlauf löschen New &Private Window Neues &Fenster &Help &Hilfe About &Qt Üb&er Qt Information about application Mehr über QupZilla Configuration Information Informationen zur Konfiguration Report &Issue &Fehlerbericht senden Restore &Closed Tab Geschlossenen Tab &wiederherstellen (Private Browsing) (Privater Modus) Empty Leer Restore All Closed Tabs Alle geschlossenen Tabs wiederherstellen Clear list Liste leeren Other Andere %1 - QupZilla %1 - QupZilla HTML files HTML-Dateien Image files Bild-Dateien Text files Text-Dateien All files Alle Dateien Open file... Datei öffnen... QupZilla %1 (%2) QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Es sind noch %1 Tabs geöffnet und Ihre Sitzung wird nicht gespeichert. Möchten Sie QupZilla wirklich beenden? Don't ask again Nicht mehr fragen There are still open tabs Es sind noch Tabs geöffnet QupZillaSchemeReply No Error Kein Fehler aufgetreten Not Found Nicht gefunden Report Issue Fehlerbericht senden If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Wenn Sie bei der Nutzung von QupZilla auf Probleme stoßen, deaktivieren Sie bitte zuerst alle Erweiterungen. <br/> Sollte dies das Problem nicht lösen, füllen Sie bitte dieses Formular aus: Your E-mail Ihre E-Mail-Adresse Issue type Fehlertyp Issue description Fehlerbeschreibung Send Senden E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. E-Mail Adresse ist optional<br/><b>Notiz: </b>Hinweise zur Erstellung eines Fehlerberichts finden Sie <a href=%1>hier</a> first. Please fill out all required fields! Bitte füllen Sie alle erforderlichen Felder aus! Start Page Startseite Search on Web Im Web suchen Search results provided by DuckDuckGo Suchergebnisse von DuckDuckGo About QupZilla Über QupZilla <h1>Private Browsing</h1> <h1>Privater Modus</h1> Information about version Versionsinformationen Copyright Copyright Version Version WebKit version WebKit-Version Main developer Hauptentwickler Contributors Mitwirkende Translators Übersetzer Speed Dial Schnellwahl Add New Page Neue Seite hinzufügen Edit Bearbeiten Remove Entfernen Reload Neu laden Are you sure to remove this speed dial? Möchten Sie dieses Schnellwahl-Feld wirklich entfernen? Load title from page Titel von der Webseite laden Url Url Title Titel Apply Anwenden Close Schließen New Page Neue Seite Speed Dial settings Einstellungen Schnellwahl Placement: Anordnung: Auto Automatisch Cover Cover Fit Anpassen Fit Width Seitenbreite Fit Height Seitenhöhe Use background image Hintergrundbild verwenden Select image Bild auswählen Maximum pages in a row: Maximale Anzahl Seiten in einer Reihe: Change size of pages: Größe der Seiten ändern: Center speed dials Schnellwahl-Felder zentrieren Restore Session Sitzung wiederherstellen Oops, QupZilla crashed. Die letzte Sitzung wurde unerwartet beendet. We apologize for this. Would you like to restore the last saved state? Verzeihung. Möchten Sie den letzten Status wiederherstellen? Try removing one or more tabs that you think cause troubles Versuchen Sie, die Tabs zu schließen, die das Problem verursacht haben können Or you can start completely new session Oder Sie können eine neue Sitzung starten Configuration Information Informationen zur Konfiguration This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Diese Seite enthält Informationen über die aktuelle Konfiguration von QupZilla, die für die Ermittlung von Fehlerursachen relevant sind. Bitte fügen Sie diese Ihrem Fehlerbericht bei. Browser Identification Browser-Identifizierung Paths Pfade Build Configuration Compiler Flags Preferences Einstellungen Option Option Value Wert Extensions Erweiterungen Name Name Author Autor Description Beschreibung Application version QupZilla-Version Qt version Qt-Version Build time Kompiliert am Platform Plattform Profile Profile Settings Einstellungen Saved session Gespeicherte Sitzung Pinned tabs Angeheftete Tabs Data Daten Themes Themen Translations Übersetzungen Disabled Deaktiviert <b>Enabled</b> <b>Aktiviert</b> Debug build Debugging WebGL support WebGL-Unterstützung Windows 7 API Windows 7 API KDE integration KDE-Integration Portable build Portable-Version No available extensions. Keine Erweiterungen verfügbar. RSSManager RSS Reader RSS-Reader Empty Leer Add feed Feed hinzufügen Edit feed Feed bearbeiten Delete feed Feed löschen Optimize Database Datenbank optimieren Reload Neu laden News Nachrichten Loading... Laden... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Sie haben noch keine RSS-Feeds abonniert.<br/> Bitte fügen Sie welche über das RSS-Symbol in der Navigationsleiste hinzu. Add new feed Neuen Feed hinzufügen Please enter URL of new feed: Bitte geben Sie die URL des neuen Feed ein: New feed Neuer Feed Fill title and URL of a feed: Titel und URL des Feeds eintragen: Feed title: Feed-Titel: Feed URL: Feed-URL: Edit RSS Feed RSS-Feed bearbeiten Open link in current tab Link in aktuellem Tab öffnen Open link in new tab Link in neuem Tab öffnen Error in fetching feed Feed konnte nicht abonniert werden RSS feed duplicated Doppelter RSS-Feed vorhanden You already have this feed. Diesen Feed haben Sie bereits abonniert. RSSNotification Add this feed into Diesen Feed hinzufügen zu Add Hinzufügen RSS feed <b>"%1"</b> RSS-Feed <b>"%1"</b> Internal Reader Interner RSS-Reader Other... Andere... Liferea not running Liferea ist nicht gestartet Liferea must be running in order to add new feed. Bitte starten Sie Liferea, um neue Feeds hinzuzufügen. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Um diesen Feed mit einer anderen Anwendung hinzuzufügen, verwenden Sie bitte diese Informationen:<br/><br/><b>Titel: </b>%1<br/><b>URL: </b>%2<br/><br/>Die URL dieses Feeds wurde in die Zwischenablage kopiert. Add feed into other application Feed mit anderer Anwendung hinzufügen RSSWidget Add RSS Feeds from this site RSS-Feed von dieser Seite hinzufügen Untitled feed Unbenannter Feed Add Hinzufügen RecoveryWidget Start New Session Neue Sitzung starten Restore Wiederherstellen Window %1 Fenster %1 RegisterQAppAssociation Warning! Warnung! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) Ein Problem ist aufgetreten. Bitte installieren Sie QupZilla erneut. Sie können auch zu Testzwecken versuchen, QupZilla mit Administratorrechten zu starten RssIcon Add RSS from this page... RSS-Feed von dieser Seite hinzufügen... SSLManager Certificate Manager Zertifikat-Manager CA Authorities Certificates Zertifizierungsstellen Show info Informationen anzeigen This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Dies ist eine Liste von Zertifizierungsstellen, die im Standard-Systempfad und in benutzerdefinierten Pfaden gespeichert sind. Local Certificates Lokale Zertifikate Import Import Remove Entfernen This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Dies ist eine Liste mit lokal gespeicherten Zertifikaten. Sie enthält auch alle Zertifikate, für die eine Ausnahme gemacht wurde. Settings Einstellungen Add Hinzufügen If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Falls Zertifikatsstellen nicht automatisch vom System geladen werden, können Sie den Pfad, in dem die Zertifikate gespeichert sind, auch manuell angeben. <b>NOTE:</b> Setting this option is a high security risk! <b>WARNUNG:</b> Das Einschalten dieser Option birgt ein sehr hohes Sicherheitsrisiko! Ignore all SSL Warnings Alle SSL-Warnungen ignorieren All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Alle Zertifikate müssen einen .crt suffix besitzen. Nachdem Speicherpfade hinzugefügt oder gelöscht wurden, muss QupZilla neu gestartet werden, um die Änderung wirksam zu machen. Choose path... Pfad auswählen... Import certificate... Zertifikat importieren... Certificate Informations Informationen zum Zertifikat SearchEnginesDialog Manage Search Engines Suchmaschinen verwalten Add... Hinzufügen... Remove Entfernen Edit Bearbeiten Set as default Als Standard verwenden Up Nach oben Down Nach unten Search Engine Suchmaschine Shortcut Verknüpfung Defaults Standard Add Search Engine Suchmaschine hinzufügen Remove Engine Suchmaschine entfernen You can't remove the default search engine.<br>Set a different engine as default before removing %1. Die Standard-Suchmaschine kann nicht entfernt werden.<br>Bitte definieren Sie eine andere Standard-Suchmaschine, bevor Sie %1 entfernen. Edit Search Engine Suchmaschine bearbeiten SearchEnginesManager Search Engine Added Suchmaschine hinzugefügt Search Engine "%1" has been successfully added. Suchmaschine "%1" wurde erfolgreich hinzugefügt. Search Engine is not valid! Suchmaschine ist ungültig! Error Fehler Error while adding Search Engine <br><b>Error Message: </b> %1 Beim Hinzufügen der Suchmaschine ist ein Fehler aufgetreten <br><b>Fehlermeldung: </b> %1 SearchToolBar No results found. Keine Suchergebnisse vorhanden. SearchToolbar Search: Suchen: Search... Suchen... Highlight Hervorheben Case sensitive Groß- und Kleinschreibung beachten SideBar Bookmarks Lesezeichen History Verlauf SiteInfo Site Info Seiteninformationen General Allgemein Media Medien Databases Datenbanken Security Sicherheit Size: Größe: Site address: Seitenadresse: Encoding: Kodierung: Meta tags of site: Meta Tags dieser Seite: Tag Tag Value Wert <b>Security information</b> <b>Sicherheitsinformation</b> Details Details Image Grafik Image address Grafikadresse <b>Preview</b> <b>Vorschau</b> <b>Database details</b> <b>Details zur Datenbank</b> Name: Name: Path: Pfad: <database not selected> <Keine Datenbank ausgewählt> <not set in certificate> <Im Zertifkat nicht vorhanden> No databases are used by this page. Dieser Seite ist keine Datenbank zugeordnet. <b>Connection is Encrypted.</b> <b>Verschlüsselte Verbindung.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Diese Verbindung ist mit diesem Zertifikat verschlüsselt: </b> <b>Connection Not Encrypted.</b> <b>Unverschlüsselte Verbindung.</b> <b>Your connection to this page is not secured!</b> <b>Diese Verbindung ist nicht verschlüsselt!</b> Copy Image Location Grafikadresse kopieren Copy Image Name Grafik kopieren Save Image to Disk Grafik speichern Error! Fehler! This preview is not available! Diese Vorschau ist nicht verfügbar! Save image... Grafik speichern... Cannot write to file! Datei kann nicht gespeichert werden! Preview not available Vorschau nicht verfügbar SiteInfoWidget More... Mehr... Your connection to this site is <b>secured</b>. Diese Verbindung ist <b>verschlüsselt</b>. Your connection to this site is <b>unsecured</b>. Diese Verbindung ist <b>unverschlüsselt</b>. This is your <b>%1</b> visit of this site. Dies ist Ihr <b>%1</b> Besuch dieser Seite. You have <b>never</b> visited this site before. Sie haben diese Seite <b>noch nie</b> besucht. first erster second zweiter third dritter SourceViewer Source of Quelltext von File Datei Load in page In Seite laden Save as... Speichern als... Close Schließen Edit Bearbeiten Undo Rückgängig Redo Wiederherstellen Cut Ausschneiden Copy Kopieren Paste Einfügen Select All Alle markieren Find Suchen Go to Line... Gehe zu Zeile... View Ansicht Reload Neu laden Editable Editierbar Word Wrap Zeilenumbruch Source loaded in page Quelltext in Seite geladen Cannot load in page. Page has been closed. Inhalt konnte nicht geladen werden. Die Seite wurde geschlossen. Save file... Datei speichern... Error! Fehler! Cannot write to file! Datei kann nicht gespeichert werden! Error writing to file Beim Schreiben der Datei ist ein Fehler aufgetreten Source successfully saved Quelltext erfolgreich gespeichert Source reloaded Quelltext neu geladen Cannot reload source. Page has been closed. Quelltext kann nicht geladen werden. Die Seite wurde geschlossen. Editable changed Quelltext geändert Word Wrap changed Zeilenumbruch geändert Enter line number Zeilennummer eingeben SourceViewerSearch Search: Suchen: Search... Suchen... Whole words Ganze Wörter suchen SpeedDial Image files Bild-Dateien Select image... Bild auswählen... Unable to load Laden nicht möglich SpellCheckDialog SpellCheck Rechtschreibprüfung <b>Dictionary path</b> <b>Pfad zum Wörterbuch</b> Change... Ändern... <b>User dictionary</b> <b>Eigenes Wörterbuch</b> Add Hinzufügen Remove Entfernen Using Hunspell library Die Hunspell-Bibliothek benutzen Choose dictionary path... Pfad zum Wörterbuch wählen... Add new word... Neues Wort hinzufügen... Add new word: Neues Wort hinzufügen: Speller No suggestions Keine Vorschläge Add to dictionary Zum Wörterbuch hinzufügen Settings Einstellungen SqueezeLabelV2 Copy Kopieren SslErrorDialog SSL Certificate Error! SSL-Zertifikatsfehler! Only for this session Nur für diese Sitzung TabBar &New tab &Neuer Tab &Stop Tab &Stop Tab &Reload Tab Tab neu &laden &Duplicate Tab Tab &duplizieren D&etach Tab Tab ablös&en Un&pin Tab Tab löse&n &Pin Tab Tab an&heften Re&load All Tabs Alle Tabs ne&u laden &Bookmark This Tab &Lesezeichen für diesen Tab hinzufügen Bookmark &All Tabs Lesezeichen für alle &geöffneten Tabs hinzufügen Close Ot&her Tabs Alle an&deren Tabs schließen Cl&ose S&chließen Reloa&d All Tabs Alle Tabs ne&u laden Restore &Closed Tab Geschlossenen Tab &wiederherstellen Close Tabs Tabs schließen Do you really want to close other tabs? Möchten Sie wirklich alle anderen Tabs schließen? TabWidget New Tab Neuer Tab List of tabs Tab-Liste Loading... Laden... No Named Page Leere Seite Currently you have %1 opened tabs Aktuell sind %1 Tabs geöffnet New tab Neuer Tab Empty Leer Restore All Closed Tabs Alle geschlossenen Tabs wiederherstellen Clear list Liste leeren TabbedWebView Loading... Laden... %1 - QupZilla %1 - QupZilla Inspect Element Element untersuchen ThemeManager <b>Name:</b> <b>Name:</b> <b>Author:</b> <b>Autor:</b> <b>Description:</b> <b>Beschreibung:</b> License Lizenz ToolButton Stop Stopp Reload Neu laden Updater Update available Aktualisierung verfügbar New version of QupZilla is ready to download. Eine neue Version von QupZilla steht zum Herunterladen bereit. Update Aktualisierung UserAgentDialog User Agent Manager User-Agent-Manager Change global User Agent Globale Einstellung ändern Use different User Agents for specified sites Unterschiedliche User Agents für bestimmte Webseiten nutzen Site Webseite User Agent User Agent Add Hinzufügen Remove Entfernen Edit Bearbeiten Add new site Neue Webseite hinzufügen Edit site Webseite bearbeiten Site domain: Domäne: User Agent: User Agent: WebInspectorDockWidget Web Inspector Web Inspector WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? QupZilla kann die <b>%1:</b> Links nicht öffnen. Der angeforderte Link lautet <ul><li>%2</li></ul>Möchten Sie, dass QupZilla versucht, diesen Link mit der Systemanwendung zu öffnen? Remember my choice for this protocol Immer mit dieser Anwendung öffnen External Protocol Request Mit externer Anwendung öffnen To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Um diese Seite anzeigen zu können, muss QupZilla eine erneute Abfrage an den Server versenden Confirm form resubmission Erneute Formular-Übermittlung bestätigen Select files to upload... Dateien zum Upload auswählen... Server refused the connection Der Server hat den Verbindungsversuch abgelehnt Server closed the connection Der Server hat die Verbindung beendet Server not found Server nicht gefunden Connection timed out Zeitüberschreitung der Anfrage Untrusted connection Keine vertrauenswürdige Verbindung Temporary network failure Temporärer Netzwerkfehler Proxy connection refused Der Proxyserver hat den Verbindungsversuch abgelehnt Proxy server not found Proxy nicht gefunden Proxy connection timed out Der Proxy-Server hat nicht in angemessener Zeit geantwortet Proxy authentication required Authentifizierung am Proxy-Server erforderlich Content not found Inhalt konnte nicht gefunden werden Unknown network error Unbekannter Netzwerkfehler AdBlocked Content Inhalt von AdBlock blockiert Blocked by <i>%1</i> Blockiert von <i>%1</i> Content Access Denied Zugriff auf Inhalt verweigert Error code %1 Fehler-Code %1 Failed loading page Seite konnte nicht geladen werden QupZilla can't load page. Seite kann nicht geladen werden. QupZilla can't load page from %1. QupZilla kann Seite von %1 nicht laden. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Bitte überprüfen Sie die Adresse auf Tippfehler wie <b>ww.</b>beispiel.com anstatt <b>www.</b>beispiel.com If you are unable to load any pages, check your computer's network connection. Falls Sie keine Webseiten laden können, überprüfen Sie bitte Ihre Netzwerkverbindung. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Falls Ihr Computer über eine Firewall oder Proxy mit dem Internet verbunden ist, vergewissern Sie sich, dass QupZilla der Zugriff zum Internet gestattet ist. Try Again Erneut versuchen JavaScript alert JavaScript-Warnmeldung Prevent this page from creating additional dialogs Das Ausführen von Skripten auf dieser Seite unterbinden Choose file... Datei wählen... Cannot read data from <b>%1</b>. Upload was cancelled! Daten von <b>%1</b> können nicht gelesen werden. Der Upload wurde abgebrochen! Cannot read file! Datei kann nicht gelesen werden! WebSearchBar Manage Search Engines Suchmaschinen verwalten Add %1 ... Hinzufügen von %1 ... Paste And &Search Einfügen und &Suchen Clear All Alle leeren Show suggestions Vorschläge anzeigen Search when engine changed Suche nach Änderung der Suchmaschine starten WebView No Named Page Leere Seite Create Search Engine Suchmaschine erstellen Cut Ausschneiden Copy Kopieren Paste Einfügen Select All Alles auswählen Default Standard Left to Right Links nach rechts Right to Left Rechts nach links Bold Fett Italic Kursiv Underline Unterstrichen &Reload &Neu laden S&top S&topp Delete Löschen &Back &Zurück &Forward &Vor This frame Dieser Rahmen Show &only this frame Nur diesen Rahmen anzei&gen Show this frame in new &tab Diesen Rahmen in einem neuen &Tab anzeigen Print frame Rahmen drucken Zoom &in Ver&größern &Zoom out Ver&kleinern Reset Zurücksetzen Show so&urce of frame Q&uelltext dieses Rahmens anzeigen Book&mark page &Lesezeichen für diese Seite hinzufügen &Save page as... Seite speichern &unter... &Copy page link Link zur Seite &kopieren Send page link... Link der Seite versenden... &Print page Seite &drucken Select &all Alles au&swählen Validate page Seite überprüfen Show so&urce code Seitenquelltext &anzeigen Show info ab&out site S&eiteninformationen anzeigen Open link in new &tab Link in neuem &Tab öffnen Open link in new &window Link in neuem &Fenster öffnen B&ookmark link &Lesezeichen für diesen Link hinzufügen &Save link as... &Ziel speichern unter... Send link... Link senden... &Copy link address Lin&k-Adresse kopieren Show i&mage G&rafik anzeigen Copy im&age Grafik k&opieren Copy image ad&dress Grafika&dresse kopieren &Save image as... Grafik speichern &unter... Send image... Grafik senden... Send text... Text senden... Google Translate Google Übersetzer Dictionary Wörterbuch Go to &web address Gehe zu &Web-Adresse Search "%1 .." with %2 Suche "%1 .." mit %2 Search with... Suche mit... &Play &Wiedergabe &Pause &Pause Un&mute &Ton einschalten &Mute &Stumm schalten &Copy Media Address Medienadresse &kopieren &Send Media Address Medienadresse &versenden Save Media To &Disk Multimedia-Datei &speichern Check &Spelling &Rechtschreibprüfung Languages Sprachen jsAlert Prevent this page from creating additional dialogs Das Ausführen von Skripten auf dieser Seite unterbinden qupzilla-1.6.0/translations/el_GR.ts000066400000000000000000011465241226107126500174570ustar00rootroot00000000000000 AboutDialog About QupZilla Περί QupZilla Authors Συγγραφείς Authors and Contributors Συγγραφείς και συντελεστές < About QupZilla < Περί QupZilla <p><b>Application version %1</b><br/> <p><b>Έκδοση εφαρμογής %1</b><br/> <b>WebKit version %1</b></p> <b>Έκδοση WebKit %1</b></p> <small>Build time: %1 </small></p> <small>Ημερομηνία κατασκευής: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Κύριος Προγραμματιστής:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Συντελεστές:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Μεταφραστές:</b><br/>%1</p> AcceptLanguage Preferred Languages Προτιμώμενες γλώσσες Add... Προσθήκη... Remove Αφαίρεση Up Πάνω Down Κάτω Personal [%1] Προσωπικά [%1] AdBlockAddSubscriptionDialog Add Subscription Προσθήκη συνδρομής Title: Τίτλος: Address: Διεύθυνση: Add new subscription to AdBlock: Προσθήκη νεάς συνδρομής στο AdBlock: AdBlockCustomList Custom Rules Προσαρμοσμένοι κανόνες AdBlockDialog AdBlock Configuration Ρυθμίσεις AdBlock Enable AdBlock Ενεργοποίηση AdBlock Search... Αναζήτηση... Options Επιλογές AdBlock AdBlock Use only essential part of EasyList (for performance reasons) Χρήση μόνο του ουσιώδους μέρους της EasyList (για λόγους απόδοσης) Add Rule Προσθήκη κανόνα Remove Rule Αφαίρεση κανόνα Add Subscription Προσθήκη συνδρομής Remove Subscription Αφαίρεση συνδρομής Update Subscriptions Ενημέρωση συνδρομών Learn about writing rules... Μάθετε για την εγγραφή κανόνων... AdBlockIcon AdBlock lets you block unwanted content on web pages Το AdBlock σας επιτρέπει να φράζετε ανεπιθύμητο περιεχόμενο σε ιστοσελίδες Blocked popup window Φραγμένο αναδυόμενο παράθυρο AdBlock blocked unwanted popup window. Το AdBlock έφραξε ένα ανεπιθύμητο αναδυόμενο παράθυρο. AdBlock AdBlock Show AdBlock &Settings Εμφάνιση &ρυθμίσεων Adblock Disable on %1 Απενεργοποίηση σε %1 Disable only on this page Απενεργοποίηση σε αυτή τη σελίδα μόνο Blocked Popup Windows Φραγμένα αναδυόμενα παράθυρα %1 with (%2) %1 με (%2) No content blocked Δεν έγινε φραγή περιεχομένου Blocked URL (AdBlock Rule) - click to edit rule Φραγμένο URL (Κανόνας AdBlock) - κάντε κλικ για να επεξεργαστείτε τον κανόνα AdBlockManager Do you want to add <b>%1</b> subscription? Θέλετε να προσθέσετε την συνδρομή <b>%1</b>; AdBlock Subscription Συνδρομή AdBlock EasyList EasyList AdBlockTreeWidget Add Rule Προσθήκη κανόνα Remove Rule Αφαίρεση κανόνα Add Custom Rule Προσθήκη προσαρμοσμένου κανόνα Please write your rule here: Παρακαλώ γράψτε τον κανόνα σας εδώ: %1 (recently updated) %1 (πρόσφατα ενημερωμένο) AddAcceptLanguage Add Language Προσθήκη γλώσσας Choose preferred language for web sites Επιλογή προτιμώμενης γλώσσας για ιστοσελίδες Personal definition: Προσωπικός ορισμός: AesInterface Warning! Προσοχή! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. Τα δεδομένα κρυπτογραφήθηκαν με μια νεώτερη έκδοση του QupZilla. Παρακαλώ εγκαταστήστε την ποιο πρόσφατη έκδοση του QupZilla. AutoFill Database (plaintext) Βάση Δεδομένων (plaintext) Database (encrypted) Βάση Δεδομένων (κρυπτογραφημένη) Enter Master Password Εισαγωγή κύριου κωδικού Permission is required, please enter Master Password: Εξουσιοδότηση απαιτείται, παρακαλώ εισάγετε κύριο κωδικό: Warning! Προσοχή! Entered password is wrong! Ο εισαγμένος κωδικός είναι λανθασμένος! This backend needs a master password to be set! QupZilla just switches to its default backend Αυτό το σύστημα υποστήριξης (backend) χρειάζεται να οριστεί ένας κύριος κωδικός! Το QupZilla απλά αλλάζει στο προεπιλεγμένο σύστημα υποστήριξης του AutoFillManager Passwords are stored in: Οι κωδικοί πρόσβασης αποθηκεύονται σε: Change backend Αλλαγή backend Backend options Επιλογές Backend Passwords Κωδικοί Server Διακομιστής Username Όνομα χρήστη Password Κωδικός Import/Export Εισαγωγή/Εξαγωγή Show Passwords Εμφάνιση κωδικών Edit Επεξεργασία Remove Αφαίρεση Remove All Αφαίρεση Όλων Exceptions Εξαιρέσεις Import Passwords from File... Εισαγωγή κωδικών από αρχειο... Export Passwords to File... Εξαγωγή κωδικών σε αρχείο... Search Αναζήτηση Change backend... Αλλαγή backend... Change backend: Αλλαγή backend: Are you sure that you want to show all passwords? Είστε σίγουροι ότι θέλετε να εμφανιστούν οι κωδικοί; Hide Passwords Απόκρυψη κωδικών Confirmation Επιβεβαίωση Are you sure to delete all passwords on your computer? Είστε σίγουροι ότι θέλετε να αφαιρέσετε όλους τους κωδικούς; Edit password Επεξεργασία κωδικού Change password: Αλλαγή κωδικού: Choose file... Επιλογή αρχείου... Cannot read file! Αδυναμία ανάγνωσης αρχείου! Successfully imported Επιτυχής εισαγωγή Error while importing! Σφάλμα κατά την εισαγωγή! Cannot write to file! Αδυναμία εγγραφής σε αρχείο! Successfully exported Επιτυχής εξαγωγή AutoFillNotification Update Ενημέρωση Remember Απομνημόνευση Never For This Site Ποτέ για αυτή τη σελίδα Not Now Όχι τώρα on %1 σε %1 for <b>%1</b> για <b>%1</b> Do you want QupZilla to update saved password %1? Θέλετε ο QupZilla να ενημερώσει τον αποθηκευμένο κωδικό %1; Do you want QupZilla to remember the password %1 %2? Θέλετε ο QupZilla να θυμάται τον κωδικό %1 %2? AutoFillWidget Choose username to login Επιλογή ονόματος χρήστη για σύνδεση Login Σύνδεση Login as <b>%1</b> Σύνδεση ως <b>%1</b> BookmarkIcon Bookmark this Page Η σελίδα ως σελιδοδείκτης Edit this bookmark Επεξεργασία σελιδοδείκτη BookmarksImportDialog Import Bookmarks Εισαγωγή σελιδοδεικτών <b>Import Bookmarks</b> <b>Εισαγωγή σελιδοδεικτών</b> From File Από αρχείο Internet Explorer Internet Explorer Choose browser from which you want to import bookmarks: Επιλογή περιηγητή απόπου θέλετε να εισάγετε σελιδοδείκτες: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Σημείωση:</b> Αυτή τη στιγμή, μόνο η εισαγωγή από Html αρχείο μπορεί επίσης να εισάγει φακέλους σελιδοδεικτών. Choose... Επιλογή... Try to fetch icons for all bookmarks (may take a while) Προσπάθεια ανάκτησης εικονιδίων για όλους τους σελιδοδείκτες (μπορεί να διαρκέσει λίγο) Fetching icons, please wait... Ανάκτηση εικονίδιων, παρακαλώ περιμένετε... Title Τίτλος Url Url Next Επόμενο Cancel Ακύρωση <b>Importing from %1</b> <b>Γίνετε εισαγωγή από %1</b> Finish Ολοκλήρωση Please press Finish to complete importing process. Παρακαλώ πατήστε Ολοκλήρωση για να ολοκληρώσετε την διαδικασία εισαγωγής. Error! Σφάλμα! The file doesn't contain any bookmark. Το αρχειο δεν περιέχει κανένα σελιδοδεικτη. Choose directory... Επιλογή καταλόγου... Choose file... Επιλογή αρχείου... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Ο Mozilla Firefox αποθηκεύει τους σελιδοδείκτες του στην βάση δεδομένων SQLite <b>places.sqlite</b>. Αυτό το αρχείο βρίσκεται συνήθως στο Please choose this file to begin importing bookmarks. Παρακαλώ επιλέξτε αυτό το αρχείο για να ξεκινήσετε την εισαγωγή σελιδοδεικτών. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Ο Google Chrome αποθηκεύει τους σελιδοδείκτες του στο αρχείο κειμένου <b>Bookmarks (Σελιδοδείκτες)</b>. Αυτό το αρχείο βρίσκεται συνήθως στο Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Ο Opera αποθηκεύει τους σελιδοδείκτες του στο αρχείο κειμένου <b>bookmarks.adr</b>. Αυτό το αρχείο βρίσκεται συνήθως στο You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Μπορείτε να εισάγετε σελιδοδείκτες από οποιοδήποτε περιηγητή υποστηρίζει εξαγωγή σε HTML. Αυτό το αρχείο έχει συνήθως αυτές τις καταλήξεις Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Ο Internet Explorer αποθηκεύει τους σελιδοδείκτες του στον φάκελο <b>Favorites (Αγαπημένα)</b>. Αυτό το αρχείο βρίσκεται συνήθως στο Please choose this folder to begin importing bookmarks. Παρακαλώ επιλέξτε τον φάκελο αυτό για να ξεκινήσετε την εισαγωγή σελιδοδεικτών. No Error Κανένα σφάλμα Unable to open file. Αδυναμία ανοίγματος αρχείου. Cannot evaluate JSON code. Αδυναμία εκτέλεσης κώδικα JSON. File does not exist. Το αρχείο δεν υπάρχει. Unable to open database. Is Firefox running? Αδυναμία ανοίγματος βάσης δεδομένων. Τρέχει ο Firefox; Directory does not exist. Ο κατάλογος δεν υπάρχει. The directory does not contain any bookmarks. Ο κατάλογος δεν περιέχει σελιδοδείκτες. BookmarksManager Bookmarks Σελιδοδείκτες Optimize Database Βελτιστοποίηση βάσης δεδομένων Import Bookmarks Εισαγωγή σελιδοδεικτών Add Folder Προσθήκη φακέλου Title Τίτλος Url Url Expand All Επέκταση όλων Collapse All Σύμπτυξη όλων Add new folder Προσθήκη νέου φακέλου Choose parent folder for new folder: Επιλογή γονικού φακέλου για νέο φάκελο: Choose name for new bookmark folder: Επιλογή ονομασίας για νέο φάκελο σελιδοδεικτών: Add new subfolder Προσθήκη νέου υποφακέλου Choose name for new subfolder in bookmarks toolbar: Επιλογή ονομασίας για νέο υποφάκελο στην εργαλειοθήκη σελιδοδεικτών: Rename Folder Μετονομασία φακέλου Choose name for folder: Επιλογή ονομασίας για φάκελο: Add Subfolder Προσθήκη υποφακέλου Rename folder Μετονομασία φακέλου Remove folder Αφαίρεση φακέλου Open link in current &tab Ά&νοιγμα συνδέσμου στην τρέχουσα καρτέλα Open link in &new tab Άνοιγμα συνδέσμου σε νέα καρ&τέλα Move bookmark to &folder Μετακίνηση σελιδοδείκτη σε &φάκελο Change icon Αλλαγή εικονίδιου Rename bookmark Μετονομασία σελιδοδείκτη Remove bookmark Αφαίρεση σελιδοδείκτη <b>Warning: </b>You already have bookmarked this page! <b>Προσοχή: </b> Η σελίδα βρίσκεται ήδη στους σελιδοδείκτες! Choose name and location of this bookmark. Επιλογή ονόματος και τοποθεσίας του σελιδοδείκτη. Add New Bookmark Προσθήκη νέου σελιδοδείκτη Choose folder for bookmarks: Επιλογή φακέλου για σελιδοδείκτες: Bookmark All Tabs Όλες οι καρτέλες σε σελιδοδείκτη BookmarksModel Bookmarks In Menu Σελιδοδείκτες στο μενού Bookmarks In ToolBar Σελιδοδείκτες στην εργαλειοθήκη Unsorted Bookmarks Αταξινόμητοι σελιδοδείκτες BookmarksSideBar Search... Αναζήτηση... Open link in current &tab Ά&νοιγμα συνδέσμου στην τρέχουσα καρτέλα Open link in &new tab Άνοιγμα συνδέσμου σε νέα καρ&τέλα Copy address Αντιγραφή διεύθυνσης &Delete &Διαγραφή BookmarksToolbar &Bookmark Current Page Η &σελίδα ως σελιδοδείκτης Bookmark &All Tabs Όλες οι καρ&τέλες σε σελιδοδείκτη &Organize Bookmarks &Οργάνωση σελιδοδεικτών Show Most &Visited Εμφάνιση πιο &δημοφιλών Show Only Icons Εμφάνιση μόνο εικονιδίων &Hide Toolbar Από&κρυψη εργαλειοθήκης Open bookmark Άνοιγμα σελιδοδείκτη Open bookmark in new tab Άνοιγμα σελιδοδείκτη σε νέα καρτέλα Move right Μετακίνηση δεξιά Move left Μετακίνηση αριστερά Edit bookmark Επεξεργασία σελιδοδείκτη Remove bookmark Αφαίρεση σελιδοδείκτη Edit bookmark: Επεξεργασία σελιδοδείκτη: Title: Τίτλος: Url: Url: Edit Bookmark Επεξεργασία σελιδοδείκτη Most visited Πιο δημοφιλείς Sites you visited the most Σελίδες που επισκεφτήκατε περισσότερο Empty Άδειο BookmarksTree Bookmarks Σελιδοδείκτες New Folder... Νέος φάκελος... BookmarksWidget Add to Speed Dial Προσθήκη στην γρήγορη κλήση Save Αποθήκευση Name: Ονομασία: Folder: Φάκελος: Remove from Speed Dial Αφαίρεση απο την γρήγορη κλήση Remove Αφαίρεση BrowsingLibrary Library Βιβλιοθήκη Search... Αναζήτηση... History Ιστορικό Bookmarks Σελιδοδείκτες RSS RSS Database Optimized Βελτιστοποιήθηκε η βάση δεδομένων Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 Βελτιστοποιήθηκε επιτυχώς η βάση δεδομένων. <br/><br/><b>Μέγεθος βάσης δεδομένων πρίν: </b>%1<br/><b>Μέγεθος βάσης δεδομένων μετά: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Εκδόθηκε σε</b> Common Name (CN): Κοινό όνομα (CN): Organization (O): Οργανισμός (O): Organizational Unit (OU): Μονάδα οργανισμού (OU): Serial Number: Σειριακός αριθμός: <b>Issued By</b> <b>Εκδόθηκε από</b> <b>Validity</b> <b>Εγκυρότητα</b> Issued On: Εκδόθηκε στις: Expires On: Λήγει στις: ClearPrivateData Clear Recent History Εκκαθάριση πρόσφατου ιστορικού Choose what you want to delete: Επιλέξτε τι θέλετε να διαγράψετε: Clear history Εκκαθάριση ιστορικού Clear cache Εκκαθάριση μνήμης cache Clear icons Εκκαθάριση εικονιδίων <b>Clear Recent History</b> <b>Εκκαθάριση πρόσφατου ιστορικού</b> Earlier Today Νωρίτερα σήμερα Week Εβδομάδα Month Μήνα All Όλα Clear web databases Εκκαθάριση διαδικτυακών βάσεων δεδομένων Clear local storage Εκκαθάριση τοπικής αποθήκευσης Clear cookies Εκκαθάριση των cookies ClickToFlash Object blocked by ClickToFlash Έγινε φραγή αντικειμένου από το ClickToFlash Show more information about object Εμφάνιση περισσότερων πληροφοριών για το αντικείμενο Delete object Διαγραφή αντικειμένου Add %1 to whitelist Προσθήκη %1 στην λευκή λίστα Flash Object Αντικείμενο Flash <b>Attribute Name</b> <b>Ονομασία γνωρίσματος</b> <b>Value</b> <b>Τιμή</b> No more information available. Δεν υπάρχουν παραπάνω πληροφορίες. CookieManager Cookies Cookies Stored Cookies Αποθηκευμένα Cookies Find: Εύρεση: These cookies are stored on your computer: Αυτά τα cookies είναι αποθηκευμένα στον υπολογιστή σας: Server Διακομιστής Cookie name Ονομασία cookie Name: Ονομασία: Value: Τιμή: Server: Διακομιστής: Path: Διαδρομή: Secure: Ασφάλεια: Expiration: Λήξη: <cookie not selected> <δεν επιλέχτηκε το cookie> Remove all cookies Αφαίρεση όλων των cookies Remove cookies Αφαίρεση cookies Cookie Filtering Φιλτράρισμα των Cookies <b>Cookie whitelist</b> <b>Λευκή λίστα των Cookies</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Τα cookies από αυτούς τους διακομιστές θα αποδέχονται ΠΑΝΤΟΤΕ (ακόμα και αν έχετε απενεργοποιήσει την αποθήκευση των cookies) Add Προσθήκη Remove Αφαίρεση <b>Cookie blacklist</b> <b>Μαύρη λίστα των Cookies</b> Cookies from these servers will NEVER be accepted Τα cookies από αυτούς τους διακομιστές δεν θα γίνονται αποδεκτά ΠΟΤΕ Settings Ρυθμίσεις <b>Cookie Settings</b> <b>Ρυθμίσεις Cookie</b> Allow storing of cookies Να επιτρέπεται η αποθήκευση των cookies Delete cookies on close Διαγραφή των cookies στο κλείσιμο Match domain exactly Ακριβές ταίριασμα του τομέα διεύθυνσης Filter tracking cookies Φιλτράρισμα των cookies παρακολούθησης <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! <b>Προσοχή:</b> Ακριβές ταίριασμα domain και φιλτράρισμα των cookies παρακολούθησης μπορεί να οδηγήσουν κάποια cookies να απορρίπτονται από σελίδες. Αν έχετε προβλήματα με τα cookies, δοκιμάστε να απενεργοποιήσετε αυτές τις επιλογές πρώτα! Search Αναζήτηση Confirmation Επιβεβαίωση Are you sure to delete all cookies on your computer? Είστε σίγουρος ότι θέλετε να διαγράψετε όλα τα cookies από τον υπολογιστή σας; Secure only Μόνο ασφαλείς All connections Όλες οι συνδέσεις Session cookie Cookies συνεδρίας Remove cookie Αφαίρεση cookie Add to whitelist Προσθήκη στην λευκή λίστα Add to blacklist Προσθήκη στην μαύρη λίστα DownloadFileHelper Save file as... Αποθήκευση αρχείου ως... NoNameDownload NoNameDownload DownloadItem Remaining time unavailable Εναπομείναν χρόνος μη διαθέσιμος Error: Cannot write to file! Σφάλμα: Αδυναμία εγγραφής στο αρχείο! Done - %1 Ολοκλήρωση - %1 Cancelled Ακυρώθηκε few seconds μερικά δευτερόλεπτα %n seconds %n minutes %n hours Unknown speed Άγνωστη ταχύτητα kB/s kB/s MB/s MB/s GB/s GB/s Unknown size Άγνωστο μέγεθος %2 - unknown size (%3) %2 - άγνωστο μέγεθος (%3) Remaining %1 - %2 of %3 (%4) απομένουν %1 - %2 από %3 (%4) Cancelled - %1 Ακυρώθηκε - %1 Delete file Διαγραφή αρχείου Do you want to also delete dowloaded file? Θέλετε να διαγράψετε και το ληφθέν αρχείο; Open File Άνοιγμα αρχείου Open Folder Άνοιγμα φακέλου Go to Download Page Μετάβαση στην σελίδα λήψης Copy Download Link Αντιγραφή συνδέσμου λήψης Cancel downloading Ακύρωση λήψης Remove Αφαίρεση Error Σφάλμα Not found Δεν βρέθηκε Sorry, the file %1 was not found! Συγνώμη, το αρχείο %1 δεν βρέθηκε! Error: Σφάλμα: DownloadManager Download Manager Διαχειριστής λήψεων Clear Εκκαθάριση %1% of %2 files (%3) %4 remaining %1% από %2 αρχεία (%3) %4 απομένει %1% - Download Manager %1% - Διαχειριστής λήψεων Download Finished Ολοκληρώθηκε η λήψη All files have been successfully downloaded. Όλα τα αρχεία λήφθηκαν επιτυχώς. Warning Προειδοποίηση Are you sure to quit? All uncompleted downloads will be cancelled! Είστε σίγουρος για το κλείσιμο; Όλες οι λήψεις που δεν έχουν τελειώσει θα ακυρωθούν! DownloadOptionsDialog Opening Άνοιγμα Copy download link Αντιγραφή συνδέσμου λήψης You have chosen to open Επιλέξατε να ανοίξετε which is a: το οποίο είναι: What should QupZilla do with this file? Τι πρέπει να κάνει το QupZilla με αυτό το αρχείο; Open... Άνοιγμα... Save File Αποθήκευση αρχείου Download with External Manager Λήψη με εξωτερικό διαχειριστή λήψεων from: από: Opening %1 Άνοιγμα %1 Download link copied. Σύνδεσμος λήψης αντιγράφηκε. EditSearchEngine Name: Ονομασία: Url: Url: Shortcut: Συντόμεση: Icon: Εικονίδιο: <b>Note: </b>%s in url or post data represent searched string Post Data: Change... Αλλαγή... FileSchemeReply No Error Κανένα σφάλμα Up to higher level directory Επάνω σε υψηλότερου επιπέδου κατάλογο Show hidden files Εμφάνιση κρυφών αρχείων Name Ονομασία Size Μέγεθος Last modified Τελευταία επεξεργασία Index for %1 Ευρετήριο για %1 Folder is empty. Άδειος φάκελος. FtpDownloader Cancelled! Ακυρώθηκε! FtpSchemeReply Up to higher level directory Επάνω σε υψηλότερου επιπέδου κατάλογο Show hidden files Εμφάνιση κρυφών αρχείων Name Ονομασία Size Μέγεθος Last modified Τελευταία επεξεργασία Index for %1 Ευρετήριο για %1 Folder is empty. Άδειος φάκελος. Unknown command Άγνωστη εντολή HTML5PermissionsDialog HTML5 Permissions Δικαιώματα HTML5 Notifications Ειδοποιήσεις Site Σελίδα Behaviour Συμπεριφορά Remove Αφαίρεση Geolocation Geolocation Allow Να επιτραπεί Deny Άρνηση HTML5PermissionsNotification Remember Απομνημόνευση Allow Να επιτραπεί Deny Άρνηση this site σε αυτή τη σελίδα Allow %1 to show desktop notifications? Να επιτραπεί στην %1 να εμφανίζει ειδοποιήσεις επιφάνειας εργασίας; Allow %1 to locate your position? Να επιτραπεί στην %1 να εντοπίσει την θέση σας; History No Named Page Ανώνυμη σελίδα January Ιανουάριος February Φεβρουάριος March Μάρτιος April Απρίλιος May Μάϊος June Ιούνιος July Ιούλιος August Αύγουστος September Σεπτέμβριος October Οκτώβριος November Νοέμβριος December Δεκέμβριος HistoryManager History Ιστορικό Delete Διαγραφή Clear All History Εκκαθάριση όλου του ιστορικού Optimize Database Βελτιστοποίηση βάσης δεδομένων Confirmation Επιβεβαίωση Are you sure to delete all history? Είστε σίγουροι ότι θέλετε να διαγράψετε όλο το ιστορικό; HistoryModel Title Τίτλος Address Διεύθυνση Visit Date Ημερομηνία επίσκεψης Visit Count Μετριτής επισκέψεων Today Σήμερα This Week Αυτή τη βδομάδα This Month Αυτό το μήνα HistorySideBar Search... Αναζήτηση... HistoryView Open link in current tab Άνοιγμα συνδέσμου στην τρέχουσα καρτέλα Open link in new tab Άνοιγμα συνδέσμου σε νέα καρτέλα Copy title Αντιγραφή τίτλου Copy address Αντιγραφή διεύθυνσης Remove Αφαίρεση IconChooser Choose icon... Επιλογή εικονιδίου... From file Από αρχείο Image (.png, .jpg, .jpeg, .gif) Εικόνα (.png, .jpg, .jpeg, .gif) Choose file... Επιλογή αρχείου... From database Από βάση δεδομένων Site Url: Url σελίδας: Image files Αρχεία εικόνων JsOptions JavaScript Options Επιλογές JavaScript Allow JavaScript to: Να επιτρέπεται στο JavaScript να: Close windows Κλείνει παράθυρα Open popup windows Ανοίγει αναδυόμενα παράθυρα Change window size Αλλάζει το μέγεθος του παράθυρου Hide menu bar Αποκρύπτει την μπάρα μενού Hide status bar Αποκρύπτει την μπάρα κατάστασης Hide tool bar Αποκρύπτει την εργαλειοθήκη Access clipboard Έχει πρόσβαση στο πρόχειρο LicenseViewer License Viewer Προβολέας άδειας LocationBar Enter URL address or search on %1 Εισαγωγή διεύθυνσης URL ή αναζήτηση στο %1 Paste And &Go Επικόλληση και &μετάβαση Clear All Εκκαθάριση όλων .co.uk Append domain name on ALT + Enter = Should be different for every country .gr Show information about this page Εμφάνιση πληροφοριών για αυτή τη σελίδα LocationCompleterView Switch to tab Μετάβαση σε καρτέλα MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? Ο QupZilla δεν είναι αυτή τη στιγμή ο προεπιλεγμένος περιηγητής ιστού σας. Θα θέλατε να τον κάνετε τον προεπιλεγμένο σας περιηγητή ιστού; Always perform this check when starting QupZilla. Να γίνεται πάντα αυτός ο έλεγχος κατά την έναρξη του QupZilla. Default Browser Προεπιλεγμένος περιηγητής ιστού QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. Το QupZilla είναι ένας νέος, γρήγορος και ασφαλής ανοιχτού κώδικα περιηγητής ιστού. Ο QupZilla είναι αδειοδοτημένος με GPL έκδοση 3 ή (στην περίπτωση σας) οποιαδήποτε νεότερη. Είναι βασισμένος στον πυρήνα WebKit και στο Qt Framework. MasterPasswordDialog Encrypted DataBase Settings Ρυθμίσεις κρυπτογραφημένης βάσης δεδομένων Set/Change Master Password... Ορισμός/Αλλαγή κύριου κωδικού... Clear Master Password... Καθάρισμα κύριου κωδικού... This backend does not work without a master password. Αυτό το σύστημα υποστήριξης δεν δουλεύει χωρίς έναν κύριο κωδικό. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. Αυτή η επιλογή καθαρίζει τον κύριο κωδικό και μεταφέρει όλα να κρυπτογραφημένα δεδομένα στο σύστημα υποστήριξης (backend) "Βάση δεδομένων (Plain Text)", και αλλάζει σε αυτό. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Ο κύριος κωδικός χρησιμοποιείται για να προστατεύει κωδικούς σελίδων και δεδομένα φόρμας. Αν ορίσετε έναν κύριο κωδικό θα γίνετε ερώτηση να τον εισάγετε μια φορά σε κάθε συνεδρία. Current Password: Τρέχον κωδικός: New Password: Νέος κωδικός: Confirm Password: Επιβεβαίωση κωδικού: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. <b>Σημείωση:</b> Ο κύριος κωδικός δεν επαναφέρεται. Παρακαλώ, μην τον ξεχάσετε. Warning! Προσοχή! You entered a wrong password! Εισάγατε λάθος κωδικό! New/Confirm password fields do not match! Τα πεδία νέος/επιβεβαιωμένος κωδικός δεν ταιριάζουν! Some data has not been decrypted. The master password was not cleared! Κάποια δεδομένα δεν αποκρυπτογραφήθηκαν. Ο κύριος κωδικός δεν εκαθαρίστηκε! Are you sure to clear master password and decrypt data? Είστε σίγουροι ότι θέλετε να καθαρίσετε τον κύριο κωδικό και να αποκρυπτογραφήσετε τα δεδομένα; NavigationBar No Named Page Ανώνυμη σελίδα Back Πίσω Forward Μπροστά Home Αρχική σελίδα New Tab Νέα καρτέλα Main Menu Αρχικό μενού Exit Fullscreen Έξοδος από την λειτουργία πλήρους οθόνης Clear history Εκκαθάριση ιστορικού NetworkManager SSL Certificate Error! Σφάλμα πιστοποιητικού SSL! The page you are trying to access has the following errors in the SSL certificate: Η σελίδα που προσπαθείτε να επισκεφτείτε έχει τα εξής σφάλματα στο πιστοποιητικό SSL: <b>Organization: </b> <b>Οργανισμός: </b> <b>Domain Name: </b> <b>Όνομα τομέα: </b> <b>Expiration Date: </b> <b>Ημερομηνία λήξης: </b> <b>Error: </b> <b>Σφάλμα: </b> Would you like to make an exception for this certificate? Θα θέλατε να κάνετε μια εξαίρεση για αυτό το πιστοποιητικό; Authorisation required Απαιτείται εξουσιοδότηση Username: Όνομα χρήστη: Password: Κωδικός: Save username and password on this site Αποθήκευση ονόματος χρήστη και κωδικού σε αυτή τη σελίδα A username and password are being requested by %1. The site says: "%2" Ένα όνομα χρήστη και κωδικός ζητούνται από το %1. Η σελίδα λέει: "%2" FTP authorisation required Απαιτείται εξουσιοδότηση FTP Login anonymously Σύνδεση ανώνυμα A username and password are being requested by %1:%2. Ένα όνομα χρήστη και κωδικός ζητούνται από το %1:%2. Proxy authorisation required Απαιτείται εξουσιοδότηση διαμεσολαβητή (Proxy) Remember username and password for this proxy. Αποθήκευση ονόματος χρήστη και κωδικού για αυτό το proxy. A username and password are being requested by proxy %1. Ένα όνομα χρήστη και κωδικός ζητούνται από το proxy %1. PageScreen Page Screen Στιγμιότυπο οθόνης Format: Μορφοποίηση: Location: Τοποθεσία: Browse... Περιήγηση... Save as %1 Αποθήκευση ως %1 Choose location... Επιλογή τοποθεσίας... File '%1' already exists. Do you want to overwrite it? Το αρχείο '%1' υπάρχει ήδη. Θέλετε να το αντικαταστήσετε; File already exists Το αρχείο υπάρχει ήδη PluginsList Application Extensions Επεκτάσεις εφαρμογών Allow Application Extensions to be loaded Να επιτρέπεται η φόρτωση επεκτάσεων εφαρμογών Settings Ρυθμίσεις WebKit Plugins Πρόσθετα WebKit <b>Click To Flash Plugin</b> <b>Πρόσθετο Click To Flash</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Το Click To Flash είναι ένα πρόσθετο που φράζει την αυτόματη φόρτωση περιεχομένου Flash σε μία σελίδα. Μπορείτε πάντα να το φορτώσετε χειροκίνητα κάνοντας κλικ στο εικονίδιο αναπαραγωγής Flash. Whitelist Λευκή λίστα Add Προσθήκη Remove Αφαίρεση Allow Click To Flash Να επιτρέπεται το Click To Flash PluginsManager Add site to whitelist Προσθήκη σελίδας στην whitelist Server without http:// (ex. youtube.com) Διακομιστής χωρίς http:// (π.χ. youtube.com) Error! Σφάλμα! Cannot load extension! Αδυναμία φόρτωσης επέκτασης! PopupWebView Inspect Element Επιθεώρηση στοιχείου PopupWindow File Αρχείο &Save Page As... Αποθήκευση σε&λίδας ως... Save Page Screen Αποθήκευση στιγμιότυπου οθόνης Send Link... Αποστολή συνδέσμου... &Print... Ε&κτύπωση... Close Κλείσιμο Edit Επεξεργασία &Undo Αναί&ρεση &Redo Ακύρωση α&ναίρεσης &Cut Απο&κοπή C&opy Αντι&γραφή &Paste Ε&πικόλληση Select All Επιλογή όλων Find Εύρεση View Προβολή &Stop &Διακοπή &Reload &Ανανέωση Zoom &In Ε&στίαση Zoom &Out Σμίκρ&υνση Reset Επαναφορά &Page Source Κώδ&ικας σελίδας %1 - QupZilla %1 QupZilla Preferences Preferences Προτιμήσεις QupZilla QupZilla General Γενικά Appearance Εμφάνιση Tabs Καρτέλες Browsing Περιήγηση Fonts Γραμματοσειρές Keyboard Shortcuts Συντομεύσεις πληκτρολογίου Downloads Λήψεις Password Manager Διαχειριστής κωδικών Privacy Ιδιωτικό απόρρητο Notifications Ειδοποιήσεις Extensions Επεκτάσεις Other Άλλα Use current Χρήση τρέχουσας Note: You cannot delete active profile. Σημείωση: Δεν μπορείτε να διαγράψετε το ενεργό προφίλ. Create New Δημιουργία νέου Delete Διαγραφή <b>Launching</b> <b>Εκκίνηση</b> After launch: Μετά την εκκίνηση: Open blank page Άνοιγμα μιας κενής σελίδας Open homepage Άνοιγμα της αρχικής μου σελίδας Open speed dial Άνοιγμα γρήγορης κλήσης Restore session Επαναφορά συνεδρίας Homepage: Αρχική σελίδα: On new tab: Σε νέα καρτέλα: Open blank tab Άνοιγμα μιας κενής σελίδας Open other page... Άνοιγμα άλλης σελίδας... <b>Profiles</b> <b>Προφίλ</b> Startup profile: Προφίλ εκκίνησης: Check for updates on start Έλεγχος για ενημερώσεις στην εκκίνηση Active profile: Ενεργό προφίλ: In order to change language, you must restart browser. Για να αλλάξετε γλώσσα, πρέπει να επανεκκινήσετε τον περιηγητή. <b>Language</b> <b>Γλώσσα</b> Available translations: Διαθέσιμες μεταφράσεις: Don't load tabs until selected Να μην φορτώνονται καρτέλες μέχρι να γίνει επιλογή τους Check to see if QupZilla is the default browser on startup Έλεγχος αν ο QupZilla είναι ο προεπιλεγμένος περιηγητής στην εκκίνηση Check Now Έλεγχος τώρα Themes Θέματα Advanced options Προχωρημένες επιλογές <b>Browser Window</b> <b>Παράθυρο περιηγητή</b> Show StatusBar on start Εμφάνιση μπάρας κατάστασης στην εκκίνηση Show Bookmarks ToolBar on start Εμφάνιση εργαλειοθήκης σελιδοδεικτών στην εκκίνηση Show Navigation ToolBar on start Εμφάνιση εργαλειοθήκης πλοήγησης στην εκκίνηση <b>Navigation ToolBar</b> <b>Εργαλειοθήκη πλοήγησης</b> Show Home button Εμφάνιση κουμπιού Αρχικής σελίδας Show Back / Forward buttons Εμφάνιση κουμπιών Πίσω / Μπροστά <b>Background<b/> <b>Φόντο<b/> Use transparent background Χρησιμοποίηση διάφανου φόντου Show web search bar Εμφάνιση μπάρας αναζήτησης Show Add Tab button Εμφάνιση κουμπιού Προσθήκης καρτέλας Show Reload / Stop buttons Εμφάνιση κουμπιών Ανανέωση / Διακοπή Tabs behaviour Συμπεριφορά καρτελών Show tab previews Εμφάνιση προεπισκόπησης καρτέλων Make tab previews animated Η προεπισκόπηση καρτέλων να ειναι με εφέ κίνησης Hide tabs when there is only one tab Απόκρυψη καρτελών όταν υπάρχει μόνο μία καρτέλα Activate last tab when closing active tab Ενεργοποίηση τελευταίας καρτέλας στο κλείσιμο ενεργής καρτέλας Open new tabs after active tab Άνοιγμα νέων καρτελών μετά την τρέχουσα καρτέλα Open new empty tabs after active tab Άνοιγμα νέων καρτελών μετά την τρέχουσα καρτέλα Automatically switch to newly opened tab Αυτόματη μετάβαση στη νεα ανοιγμένη καρτέλα Don't quit upon closing last tab Να μην γίνεται έξοδος κατά το κλείσιμο της τελευταίας καρτέλας Ask when closing multiple tabs Ερώτηση στο κλείσιμο πολλαπλών καρτελών Closed tabs list instead of opened in tab bar Λίστα κλεισμένων καρτελών αντί για ανοιχτών στην μπάρα καρτελών Address Bar behaviour Συμπεριφορά μπάρας διευθύνσεων Suggest when typing into address bar: Προτάσεις όταν πληκτρολογείτε στην μπάρα διευθύνσεων: History and Bookmarks Ιστορικό και Σελιδοδεικτες History Ιστορικό Bookmarks Σελιδοδείκτες Nothing Τίποτα Press "Shift" to not switch the tab but load the url in the current tab. Πατήστε "Shift" για να μην αλλάξετε την καρτέλα αλλά να φορτώσετε τον σύνδεσμο στην τρέχουσα καρτέλα. Propose to switch tab if completed url is already loaded. Να προτείνεται η αλλαγή καρτέλας αν ο ολοκληρωμένος σύνδεσμος έχει ήδη φορτωθεί. Always show go icon Να γίνεται πάντα εμφάνιση του εικονιδίου μετάβασης Select all text by double clicking in address bar Επιλογή ολόκληρου του κειμένου κάνοντας διπλό κλικ στην μπάρα διευθύνσεων Select all text by clicking in address bar Επιλογή ολόκληρου του κειμένου κάνοντας κλικ στην μπάρα διευθύνσεων Search with Default Engine Αναζήτηση με προεπιλεγμένη μηχανή Show loading progress in address bar Εμφάνιση προόδου φόρτωσης στην μπάρα διευθύνσεων Fill Γέμισμα Bottom Πάτος Top Κορυφή Custom color: Προσαρμοσμένο χρώμα: Select color Επιλογή χρώματος ... ... Reset Επαναφορά Web Configuration Ρυθμίσεις διαδικτύου Allow Netscape Plugins (Flash plugin) Να επιτρέπονται τα πρόσθετα Netscape (πρόσθετο Flash) Allow JavaScript Να επιτρέπεται το JavaScript Allow JAVA Να επιτρέπεται το JAVA Allow DNS Prefetch Να επιτρέπεται η προανάκτηση DNS Enable XSS Auditing try to detect possible XSS attacks when executing javascript Ενεργοποίηση ελεγκτικών XSS Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Εκτύπωση στοιχείου φόντου Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Συμπερίληψη συνδέσμων στην αλυσίδα εστίασης Animated scrolling Animated κύλιση Enable caret browsing Ενεργοποίηση περιήγησης καρέ Enable spatial navigation Ενεργοποίηση χωρικής πλοήγησης Zoom text only Ζουμ μόνο στο κείμενο Mouse wheel scrolls Κύλιση ροδέλας ποντικιού lines on page γραμμές στην σελίδα Default zoom on pages: Προκαθορισμένο ζουμ στις σελίδες: Local Storage Τοπική αποθήκευση Maximum Μέγιστη 50 MB 50 MB 1 1 Maximum pages in cache: Μέγιστες σελίδες στην μνήμη cache: Allow storing network cache on disk Να επιτρέπεται η αποθήκευση της μνήμης cache του δικτύου στον δίσκο Store cache in: Αποθήκευση μνήμης cache σε: Allow saving history Να επιτρέπεται η αποθήκευση ιστορικού Delete history on close Διαγραφή ιστορικού στο κλείσιμο Allow local storage of HTML5 web content Να επιτρέπεται η τοπική αποθήκευση περιεχομένου HTML5 Delete locally stored HTML5 web content on close Διαγραφή τοπικά αποθηκευμένου περιεχομένου HTML5 κατά το κλείσιμο Delete now Διαγραφή τώρα Proxy Configuration Ρυθμίσεις proxy Proxy Auto-Config (.pac) file Αρχείο Proxy Auto-Config (.pac) Reload Ανανέωση HTTP HTTP SOCKS5 SOCKSS Port: Θύρα: Username: Όνομα χρήστη: Password: Κωδικός: Don't use on: Να μην χρησιμοποιείται σε: Manual configuration Χειροκίνητη ρύθμιση System proxy configuration Ρύθμιση proxy συστήματος Do not use proxy Να μην χρησιμοποιείται proxy <b>Exceptions</b> <b>Εξαιρέσεις</b> Server: Διακομιστής: Use different proxy for https connection Χρήση διαφορετικού μεσολαβητή για σύνδεση https Use script for automatic configuration: Χρήση δέσμης ενεργειών για αυτόματη ρύθμιση παραμέτρων: <b>Font Families</b> <b>Οικογένειες γραμματοσειρών</b> Standard Standard Fixed Σταθερό Serif Serif Sans Serif Sans Serif Cursive Cursive Fantasy Fantasy <b>Font Sizes</b> <b>Μεγέθη γραμματοσειρών</b> Fixed Font Size Σταθερο μέγεθος γραμματοσειράς Default Font Size Προεπιλεγμένο μέγεθος γραμματοσειράς Minimum Font Size Ελάχιστο μέγεθος γραμματοσειράς Minimum Logical Font Size Ελάχιστο λογικό μέγεθος γραμματοσειράς <b>Shortcuts</b> <b>Συντομεύσεις</b> Switch to tabs with Alt + number of tab Αλλαγή καρτελών με Alt + αριθμό καρτέλας Load speed dials with Ctrl + number of speed dial Φόρτωση γρήγορων κλήσεων με Ctrl + αριθμό γρήγορης κλήσης Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>Τοποθεσία λήψεων</b> Ask everytime for download location Ερώτηση για τοποθεσία λήψεων κάθε φορά Use defined location: Χρήση καθορισμένης τοποθεσίας: <b>Download Options</b> <b>Επιλογές λήψεων</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Χρήση εγγενούς διαλόγου αρχείου συστήματος (μπορεί να ή να μην προκαλέσει προβλήματα με την λήψη ασφαλούς περιεχομένου SSL) Close download manager when downloading finishes Κλείσιμο διαχειριστή λήψεων όταν τελειώσουν οι λήψεις <b>External download manager</b> <b>Εξωτερικός διαχειριστής λήψεων</b> Use external download manager Χρήση εξωτερικού διαχειριστή λήψεων Executable: Εκτελέσιμο: Arguments: Παράμετροι: Leave blank if unsure Αφήστε κενό αν δεν είστε σίγουροι <b>%d</b> will be replaced with URL to be downloaded Το <b>%d</b> θα αντικατασταθεί με το URL προς λήψη <b>AutoFill options</b> <b>Επιλογές αυτόματης συμπλήρωσης</b> Allow saving passwords from sites Να επιτρέπεται η αποθήκευση κωδικών από σελίδες Send Referer header to servers Αποστολή κεφαλίδας αναφοράς (referer header) στους διακομιστές <b>Cookies</b> <b>Cookies</b> Send Do Not Track header to servers Αποστολή κεφαλίδας Do Not Track (Μην εντοπίζεις) στους διακομηστές <b>Other</b> <b>Άλλο</b> Manage CA certificates Διαχείριση πιστοποιητικών CA Certificate Manager Διαχειριστής Πιστοποιητικών <b>SSL Certificates</b> <b>Πιστοποιητικά SSL</b> <b>JavaScript</b> <b>JavaScript</b> Manage JavaScript privacy options Διαχείριση επιλογών ιδιωτικότητας JavaScript JavaScript options Επιλογές JavaScript Cookies Manager Διαχειριστής Cookies Manage Cookies Διαχείριση Cookies <b>HTML5 Permissions</b> <b>Δικαιώματα HTML5</b> Manage HTML5 permissions Διαχείριση δικαιωμάτων HTML5 HTML5 Permissions Δικαιώματα HTML5 <b>Notifications</b> <b>Ειδοποιήσεις</b> Use OSD Notifications Χρήση ειδοποιήσεων OSD Use Native System Notifications (Linux only) Χρήση εγγενών ειδοποιήσεων συστήματος (μόνο σε Linux) Do not use Notifications Να μην χρησιμοποιούνται ειδοποιήσεις Expiration timeout: Χρονικό όριο λήξης: seconds δευτερόλεπτα <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Σημείωση: </b> Μπορείτε να αλλάξετε τη θέση των OSD ενημερώσεων σέρνοντας τo στην οθόνη. StyleSheet automatically loaded with all websites: StyleSheet που φορτώνεται αυτόματα με όλες τις σελίδες: Languages Γλώσσες <b>Preferred language for web sites</b> <b>Προτιμώμενη γλώσσα για ιστοσελίδες</b> <b>Change browser identification</b> <b>Αλλαγή αναγνωριστικού περιηγητή</b> User Agent Manager Διαχειριστής πράκτορα χρήστη Default Προεπιλογή Set as default Ορισμός προεπιλογής OSD Notification Ειδοποίηση OSD Drag it on the screen to place it where you want. Μετακινήστε το στην οθόνη για να το τοποθετήσετε όπου θέλετε. Choose download location... Επιλογή τοποθεσίας λήψεων... Choose stylesheet location... Επιλογή τοποθεσίας stylesheet... Deleted Διαγράφηκε Choose executable location... Επιλογή τοποθεσίας εκτελέσιμου... Choose cache path... Επιλογή διαδρομής μνήμης cache... New Profile Νέο προφίλ Enter the new profile's name: Εισάγετε την ονομασία του νέου προφίλ: Error! Σφάλμα! This profile already exists! Αυτό το προφίλ υπάρχει ήδη! Cannot create profile directory! Αδυναμία δημιουργίας καταλόγου προφίλ! Confirmation Επιβεβαίωση Are you sure to permanently delete "%1" profile? This action cannot be undone! Είστε σίγουροι ότι θέλετε να διαγράψετε μόνιμα το προφίλ "%1"; Η ενέργεια αυτή δεν μπορεί να αναιρεθεί! Select Color Επιλογή χρώματος QObject Native System Notification Εγγενές σύστημα ενημερώσεων Save file as... Αποθήκευση αρχείου ως... The file is not an OpenSearch 1.1 file. Το αρχείο δεν είναι OpenSearch 1.1 αρχείο. <not set in certificate> <δεν ορίστηκε στο πιστοποιητικό> Unknown size Άγνωστο μέγεθος KB KB MB MB GB GB Executable: Εκτελέσιμο: Arguments: Παράμετροι: Cannot start external program Αδυναμία εκκίνησης εξωτερικού προγράμματος Cannot start external program! %1 Αδυναμία εκκίνησης εξωτερικού προγράμματος! %1 QtWin Open new tab Άνοιγμα νέας καρτέλας Opens a new tab if browser is running Ανοίγει μια νέα καρτέλα αν εκτελείται ο περιηγητής Open new window Άνοιγμα νέου παράθυρου Opens a new window if browser is running Ανοίγει ένα νέο παράθυρο αν εκτελείται ο περιηγητής Open download manager Άνοιγμα διαχειριστή λήψεων Opens a download manager if browser is running Ανοίγει έναν διαχειριστή λήψεων αν εκτελείται ο περιηγητής QupZilla QupZilla QupZilla Private Browsing Enabled Ενεργοποιημένη ιδιωτική περιήγηση IP Address of current page Διεύθυνση IP της τρέχουσας σελίδας &About QupZilla Πε&ρί QupZilla Pr&eferences Προτι&μήσεις Quit Έξοδος &File &Αρχείο &New Window &Νέο παράθυρο New Tab Νέα καρτέλα Open Location Άνοιγμα τοποθεσίας Open &File... Άνοιγμα &αρχείου... Close Tab Κλείσιμο καρτέλας Close Window Κλείσιμο παραθύρου &Save Page As... Αποθήκευση σε&λίδας ως... Save Page Screen Αποθήκευση στιγμιότυπου οθόνης Send Link... Αποστολή συνδέσμου... &Print... Ε&κτύπωση... Import bookmarks... Εισαγωγή σελιδοδεικτών... &Edit &Επεξεργασία &Undo Αναί&ρεση &Redo Ακύρωση α&ναίρεσης &Cut Απο&κοπή C&opy Αντι&γραφή &Paste Ε&πικόλληση Select &All Επι&λογή όλων &Find Εύ&ρεση &View Π&ροβολή &Navigation Toolbar Ερ&γαλειοθήκη πλοήγησης &Bookmarks Toolbar Ερ&γαλειοθήκη σελιδοδεικτών Sta&tus Bar Μπάρα κα&τάστασης &Menu Bar Μπάρα &μενού &Tabs on Top &Καρτέλες στην κορυφή &Fullscreen &Πλήρης Οθόνη &Stop &Διακοπή &Reload &Ανανέωση Character &Encoding &Κωδικοποίηση χαρακτήρων Enable &Caret Browsing Ενεργοποίηση περιήγησης &καρέ Toolbars Εργαλειοθήκες Sidebars Πλευρικές στήλες Zoom &In Ε&στίαση Zoom &Out Σμίκρ&υνση Reset Επαναφορά &Page Source Κώδ&ικας σελίδας Hi&story &Ιστορικό &Back &Πίσω &Forward &Μπροστά &Home &Αρχική σελίδα Show &All History Εμφάνιση &ολόκληρου του ιστορικού Closed Tabs Κλεισμένες καρτέλες Recently Visited Επισκεφτήκατε πρόσφατα Most Visited Επισκεφτήκατε περισσότερο &Bookmarks &Σελιδοδείκτες Bookmark &This Page Προσθήκη &σελίδας στους σελιδοδείκτες Bookmark &All Tabs Προσθήκη όλων των &καρτελών στους σελιδοδείκτες Organize &Bookmarks &Τακτοποίηση σελιδοδεικτών &Tools Ερ&γαλεία &Web Search &Αναζήτηση διαδικτύου Page &Info &Πληροφορίες σελίδας &Download Manager Διαχειριστής &Λήψεων &Cookies Manager Δια&χειριστής Cookies &AdBlock Ad&Block RSS &Reader Α&ναγνώστης RSS Web In&spector Επι&θεωρητής διαδικτύου Clear Recent &History Εκκαθάρ&ιση πρόσφατου ιστορικού New &Private Window Νέο παράθυρο ι&διωτικής περιήγησης &Help &Βοήθεια About &Qt &Περί Qt Information about application Πληροφορίες για την εφαρμογή Configuration Information Πληροφορίες διαμόρφωσης Report &Issue Αναφορά προ&βλήματος Restore &Closed Tab Επαναφορά κλει&σμένης καρτέλας (Private Browsing) (Ιδιωτική περιήγηση) Empty Άδειο Restore All Closed Tabs Επαναφορά όλων των κλεισμένων καρτελών Clear list Εκκαθάριση λίστας Other Άλλα %1 - QupZilla %1 QupZilla HTML files Αρχεία HTML Image files Αρχεία εικόνων Text files Αρχεία κειμένου All files Όλα τα αρχεία Open file... Άνοιγμα αρχείου... QupZilla %1 (%2) QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Υπάρχουν ακόμα %1 ανοιχτές καρτέλες και η συνεδρία σας δεν θα αποθηκευτεί. Είστε σίγουρος ότι θέλετε να κλείσετε το QupZilla; Don't ask again Μην ρωτήσεις ξανά There are still open tabs Υπάρχουν ανοιχτές καρτέλες QupZillaSchemeReply No Error Κανένα σφάλμα Not Found Δεν βρέθηκε Report Issue Αναφορά προβλήματος If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Αν αντιμετωπίζετε προβλήματα με το QupZilla, παρακαλώ δοκιμάστε να απενεργοποιήσετε όλα τα πρόσθετα πρώτα. <br/>Αν αυτό δεν βοηθήσει, τότε παρακαλώ συμπληρώστε αυτή τη φόρμα: Your E-mail Το e-mail σας Issue type Τύπος προβλήματος Issue description Περιγραφή προβλήματος Send Αποστολή E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. Το e-mail είναι προαιρετικό<br/><b>Σημείωση:</b>Παρακαλώ διαβάστε πως να κάνετε μια αναφορά σφάλματος <a href=%1>εδώ</a> πρώτα. Please fill out all required fields! Παρακαλώ συμπληρώστε όλα τα απαραίτητα πεδία! Start Page Αρχική σελίδα Search on Web Αναζήτηση στο διαδίκτυο Search results provided by DuckDuckGo Αναζήτηση αποτελεσμάτων από το DuckDuckGo About QupZilla Περί QupZilla <h1>Private Browsing</h1> <h1>Ιδιωτική Περιήγηση</h1> Information about version Πληροφορίες έκδοσης Copyright Πνευματικά δικαιώματα Version Έκδοση WebKit version Έκδοση WebKit Main developer Βασικός προγραμματιστής Contributors Συντελεστές Translators Μεταφραστές Speed Dial Γρήγορη κλήση Add New Page Προσθήκη νέας σελίδας Edit Επεξεργασία Remove Αφαίρεση Reload Ανανέωση Are you sure to remove this speed dial? Είστε σίγουροι οτι θέλετε να αφαιρέσετε αυτή τη γρήγορη κλήση; Load title from page Φόρτωση τίτλου από σελίδα Url Url Title Τίτλος Apply Εφαρμογή Close Κλείσιμο New Page Νέα σελίδα Speed Dial settings Ρυθμίσεις γρήγορης κλήσης Placement: Τοποθέτηση: Auto Αυτόματα Cover Κάλυψη Fit Προσαρμογή Fit Width Προσαρμογή στο πλάτος Fit Height Προσαρμογή στο Ύψος Use background image Χρήση εικόνας παρασκηνίου Select image Επιλογή εικόνας Maximum pages in a row: Μέγιστες σελίδες στην σειρά: Change size of pages: Αλλαγή μεγέθους σελιδών: Center speed dials Γρήγορες κλήσεις στο κέντρο Restore Session Επαναφορά συνεδρίας Oops, QupZilla crashed. Ουπς, το QupZilla κατέρρευσε. We apologize for this. Would you like to restore the last saved state? Ζητάμε συγνώμη. Θα θέλατε να επαναφέρετε την ποιο πρόσφατα αποθηκευμένη κατάσταση; Try removing one or more tabs that you think cause troubles Προσπαθήστε να αφαιρέσετε μία ή περισσότερες καρτέλες που νομίζετε ότι προκαλούν προβλήματα Or you can start completely new session Ή μπορείτε να ξεκινήσετε μια εντελώς νέα συνεδρία Configuration Information Πληροφορίες διαμόρφωσης This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Η σελίδα αυτή περιέχει πληροφορίες για την ρύθμιση του τρέχων QupZilla - σχετική για την επίλυση προβλημάτων. Παρακαλώ συμπεριλάβετε τις πληροφορίες αυτές όταν αποστέλλετε αναφορές σφαλμάτων. Browser Identification Αναγνωριστικό περιηγητή Paths Διαδρομές Build Configuration Ρυθμίσεις κατασκευής Preferences Προτιμήσεις Option Επιλογή Value Τιμή Extensions Επεκτάσεις Name Ονομασία Author Συγγραφέας Description Περιγραφή Application version Έκδοση εφαρμογής Qt version Έκδοση Qt Build time Χρόνος κατασκευής Platform Πλατφόρμα Profile Προφίλ Settings Ρυθμίσεις Saved session Αποθηκευμένη συνεδρία Pinned tabs Καρφιτσωμένες καρτέλες Data Δεδομένα Themes Θέματα Translations Μεταφράσεις Disabled Απενεργοποιημένο <b>Enabled</b> <b>Ενεργοποιημένο</b> Debug build Build αποσφαλμάτωσης WebGL support Υποστήριξη WebGL Windows 7 API Windows 7 API KDE integration Ενσωμάτωση KDE Portable build Portable build No available extensions. Δεν υπάρχουν διαθέσιμες επεκτάσεις. RSSManager RSS Reader Αναγνώστης RSS Empty Άδειο Add feed Προσθήκη ροής Edit feed Επεξεργασία ροής Delete feed Διαγραφή ροής Optimize Database Βελτιστοποίηση βάσης δεδομένων Reload Ανανέωση News Νέα Loading... Φόρτωση... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Δεν έχετε καμία ροή RSS. <br/> Παρακαλώ προσθέστε μερικές με το εικονίδιο RSS στην μπάρα πλοήγησης σε σελίδες που παρέχουν ροές. Add new feed Προσθήκη νέας ροής Please enter URL of new feed: Παρακαλώ συμπληρώστε το URL της νέας ροής: New feed Νέα ροή Fill title and URL of a feed: Συμπληρώστε τίτλο και URL μιας ροής: Feed title: Τίτλος ροής: Feed URL: URL ροής: Edit RSS Feed Επεξεργασία ροής RSS Open link in current tab Άνοιγμα συνδέσμου στην τρέχουσα καρτέλα Open link in new tab Άνοιγμα συνδέσμου σε νέα καρτέλα Error in fetching feed Σφάλμα στην ανάκτηση ροής RSS feed duplicated Διπλότυπη ροή RSS You already have this feed. Έχετε ήδη αυτή τη ροή. RSSNotification Add this feed into Προσθήκη της ροής αυτής στο Add Προσθήκη RSS feed <b>"%1"</b> Ροή RSS <b>"%1"</b> Internal Reader Εσωτερικός αναγνώστης Other... Άλλο... Liferea not running Το Liferea δεν εκτελείτε Liferea must be running in order to add new feed. Το Liferea πρέπει να εκτελείτε για να προσθέσετε μια νέα ροή. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Για να προσθέσετε αυτή τη ροή RSS σε άλλη εφαρμογή, παρακαλώ χρησιμοποιήστε αυτές τις πληροφορίες:<br/><br/><b>Τίτλος: </b>%1<br/><b>%2<br/><br/>Η διεύθυνση url της ροής αυτής αντιγράφηκε στο πρόχειρο. Add feed into other application Προσθήκη ροής σε άλλη εφαρμογή RSSWidget Add RSS Feeds from this site Προσθήκη ροής RSS από αυτή τη σελίδα Untitled feed Ροή χωρίς τίτλο Add Προσθήκη RecoveryWidget Start New Session Έναρξη νέας συνεδρίας Restore Επαναφορά Window %1 Παράθυρο %1 RegisterQAppAssociation Warning! Προσοχή! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) Υπάρχουν κάποια προβλήματα. Παρακαλώ, επανεγκαταστείστε τον QupZilla. Ίσως αν το επανεκκινήσετε με άδεια διαχειριστή να κάνει θαύματα για εσάς! ;) RssIcon Add RSS from this page... Προσθήκη RSS από αυτή τη σελίδα... SSLManager Certificate Manager Διαχειριστής Πιστοποιητικών CA Authorities Certificates Αρχες πιστοποίησης CA Show info Εμφάνιση πληροφοριών This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Αυτή είναι μια λίστα αρχών πιστοποίησης CA που είναι αποθηκευμένές στη τυπική διαδρομή και σε διαδρομές ορισμένες από τον χρήστη. Local Certificates Τοπικά πιστοποιητικά Import Εισαγωγή Remove Αφαίρεση This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Αυτή είναι μια λίστα με τοπικά πιστοποιητικά που είναι αποθηκευμένα στο προφίλ χρήστη σας. Περιέχει επίσης όλα τα πιστοποιητικά, που έχουν λάβει μια εξαίρεση. Settings Ρυθμίσεις Add Προσθήκη If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Αν δεν φορτώθηκαν αυτόματα από το σύστημα οι αρχές πιστοποίησης CA, μπορείτε να ορίσετε διαδρομές χειροκίνητα όπου θα αποθηκεύονται τα πιστοποιητικά. <b>NOTE:</b> Setting this option is a high security risk! <b>ΠΡΟΣΟΧΗ: </b> Η ρύθμιση αυτής της επιλογής είναι υψηλός κίνδυνος για την ασφάλεια! Ignore all SSL Warnings Αγνόησή όλων των SSL προειδοποιήσεων All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Όλα τα πιστοποιητικά πρέπει να έχουν .crt κατάληξη. Μετά την προσθήκη ή αφαίρεση διαδρομών πιστοποιητικών, είναι απαραίτητο να επαννεκινήσετε το QupZilla προκειμένου να τεθούν σε ισχύ οι αλλαγές. Choose path... Επιλογή διαδρομής... Import certificate... Εισαγωγή πιστοποιητικού... Certificate Informations Πληροφορίες πιστοποιητικού SearchEnginesDialog Manage Search Engines Διαχείριση μηχανών αναζήτησης Add... Προσθήκη... Remove Αφαίρεση Edit Επεξεργασία Set as default Ορισμός προεπιλογής Up Πάνω Down Κάτω Search Engine Μηχανή αναζήτησης Shortcut Συντόμεση Defaults Προεπιλεγμένα Add Search Engine Προσθήκη μηχανής αναζήτησης Remove Engine Αφαίρεση μηχανής You can't remove the default search engine.<br>Set a different engine as default before removing %1. Δεν μπορείτε να αφαιρέσετε την προεπιλεγμένη μηχανή αναζήτησης. <br>Ορίστε μια διαφορετική μηχανή ως προεπιλεγμένη πριν την αφαίρεση της %1. Edit Search Engine Επεξεργασία μηχανής αναζήτησης SearchEnginesManager Search Engine Added Η μηχανή αναζήτησης προστέθηκε Search Engine "%1" has been successfully added. Η μηχανή αναζήτησης "%1" προστέθηκε επιτυχώς. Search Engine is not valid! Δεν είναι έγκυρη η μηχανή αναζήτησης! Error Σφάλμα Error while adding Search Engine <br><b>Error Message: </b> %1 Σφάλμα κατά την προσθήκη μηχανής αναζήτησης <br><b>Μήνυμα σφάλματος: </b> %1 SearchToolBar No results found. Δεν βρέθηκαν αποτελέσματα. SearchToolbar Search: Αναζήτηση: Search... Αναζήτηση... Highlight Επισήμανση Case sensitive Διάκριση πεζών-κεφαλαίων SideBar Bookmarks Σελιδοδείκτες History Ιστορικό SiteInfo Site Info Πληροφορίες σελίδας General Γενικά Media Πολυμέσα Databases Βάσεις δεδομένων Security Ασφάλεια Size: Μέγεθος: Site address: Διεύθυνση σελίδας: Encoding: Κωδικοποίηση: Meta tags of site: Ετικέτες (Meta tags) σελίδας: Tag Ετικέτα Value Τιμή <b>Security information</b> <b>Πληροφορίες ασφάλειας</b> Details Λεπτομέριες Image Εικόνα Image address Διεύθυνση εικόνας <b>Preview</b> <b>Προεπισκόπηση</b> <b>Database details</b> <b>Λεπτομέρειες βάσης δεδομένων</b> Name: Ονομασία: Path: Διαδρομή: <database not selected> <δεν επιλέχτηκε βάση δεδομένων> <not set in certificate> <δεν ορίστηκε στο πιστοποιητικό> No databases are used by this page. Καμία βάση δεδομένων δεν χρησιμοποιείται από αυτή τη σελίδα. <b>Connection is Encrypted.</b> <b>Η σύνδεση είναι κρυπτογραφημένη.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Η σύνδεση σας σε αυτή τη σελίδα είναι ασφαλισμένη με αυτό το πιστοποιητικό: </b> <b>Connection Not Encrypted.</b> <b>Η σύνδεση δεν είναι κρυπτογραφημένη.</b> <b>Your connection to this page is not secured!</b> <b>H σύνδεση σας σε αυτή τη σελίδα δεν είναι ασφαλής!</b> Copy Image Location Αντιγραφή τοποθεσίας εικόνας Copy Image Name Αντιγραφή ονομασίας εικόνας Save Image to Disk Αποθήκευση εικόνας στον δίσκο Error! Σφάλμα! This preview is not available! Η προεπισκόπηση αυτή δεν είναι διαθέσιμη! Save image... Αποθήκευση εικόνας... Cannot write to file! Αδυναμία εγγραφής σε αρχείο! Preview not available Δεν είναι διαθέσιμη η προεπισκόπηση SiteInfoWidget More... Περισσότερα... Your connection to this site is <b>secured</b>. H σύνδεση σας σε αυτή τη σελίδα <b>είναι ασφαλής</b>. Your connection to this site is <b>unsecured</b>. H σύνδεση σας σε αυτή τη σελίδα <b>δεν είναι ασφαλής</b>. This is your <b>%1</b> visit of this site. Αυτή είναι η <b>%1</b> επίσκεψη σας σε αυτή τη σελίδα. You have <b>never</b> visited this site before. Δεν έχετε επισκεφτεί <b>ποτέ</b> ξανά αυτή τη σελίδα. first πρώτη second δεύτερη third τρίτη SourceViewer Source of Πηγαίος κώδικας του File Αρχείο Load in page Φόρτωση στην σελίδα Save as... Αποθήκευση ως... Close Κλείσιμο Edit Επεξεργασία Undo Αναίρεση Redo Ακύρωση αναίρεσης Cut Αποκοπή Copy Αντιγραφή Paste Επικόλληση Select All Επιλογή όλων Find Εύρεση Go to Line... Μεταβίβαση στη γραμμή... View Προβολή Reload Ανανέωση Editable Επεξεργάσιμο Word Wrap Αναδίπλωση κειμένου Source loaded in page Ο πηγαίος φορτώθηκε στην σελίδα Cannot load in page. Page has been closed. Αδυναμία φόρτωσης στην σελίδα. Η σελίδα έκλεισε. Save file... Αποθήκευση αρχείου... Error! Σφάλμα! Cannot write to file! Αδυναμία εγγραφής σε αρχείο! Error writing to file Σφάλμα εγγραφής σε αρχείο Source successfully saved Επιτυχή αποθήκευση του πηγαίου κώδικα Source reloaded Ο πηγαίος κώδικας ανανεώθηκε Cannot reload source. Page has been closed. Αδυναμία επαναφόρτωσης πηγής. Η σελίδα έκλεισε. Editable changed Άλλαξε το επεξεργάσιμο Word Wrap changed Άλλαξε η αναδίπλωση κειμένου Enter line number Εισαγωγή αριθμού γραμμής SourceViewerSearch Search: Αναζήτηση: Search... Αναζήτηση... Whole words Ολόκληρες λέξεις SpeedDial Image files Αρχεία εικόνων Select image... Επιλογή εικόνας... Unable to load Αδυναμία φόρτωσης SpellCheckDialog SpellCheck Ορθογραφικός έλεγχος <b>Dictionary path</b> <b>Διαδρομή λεξικού</b> Change... Αλλαγή... <b>User dictionary</b> <b>Λεξικό χρήστη</b> Add Προσθήκη Remove Αφαίρεση Using Hunspell library Χρήση βιβλιοθήκης Hunspell Choose dictionary path... Επιλογή διαδρομής λεξικού... Add new word... Προσθήκη νέας λέξης... Add new word: Προσθήκη νέας λέξης: Speller No suggestions Δεν υπάρχουν προτάσεις Add to dictionary Προσθήκη στο λεξικό Settings Ρυθμίσεις SqueezeLabelV2 Copy Αντιγραφή SslErrorDialog SSL Certificate Error! Σφάλμα πιστοποιητικού SSL! Only for this session Μόνο για αυτή την συνεδρία TabBar &New tab &Νέα καρτέλα &Stop Tab &Διακοπή καρτέλας &Reload Tab &Ανανέωση καρτέλας &Duplicate Tab Διπλό&τυπο καρτέλας D&etach Tab Απο&κόλληση καρτέλας Un&pin Tab &Ξεκαρφίτσωμα καρτέλας &Pin Tab Κα&ρφίτσωμα καρτέλας Re&load All Tabs Α&νανέωση όλων των καρτελών &Bookmark This Tab Η καρτέλα ως &σελιδοδείκτης Bookmark &All Tabs Οι καρτέλες ως σελιδοδεί&κτες Close Ot&her Tabs Κλείσιμο των άλλ&ων καρτελών Cl&ose Κλείσι&μο Reloa&d All Tabs Ανανέωσ&η όλων των καρτελών Restore &Closed Tab Επαναφορά κλε&ισμένης καρτέλας Close Tabs Do you really want to close other tabs? TabWidget New Tab Νέα καρτέλα List of tabs Λίστα καρτελών Loading... Φόρτωση... No Named Page Ανώνυμη σελίδα Currently you have %1 opened tabs Αυτή τη στιγμή έχετε %1 ανοιχτές καρτέλες New tab Νέα καρτέλα Empty Άδειο Restore All Closed Tabs Επαναφορά όλων των κλεισμένων καρτελών Clear list Εκκαθάριση λίστας TabbedWebView Loading... Φόρτωση... %1 - QupZilla %1 QupZilla Inspect Element Επιθεώρηση στοιχείου ThemeManager <b>Name:</b> <b>Όνομα:</b> <b>Author:</b> <b>Συγγραφέας:</b> <b>Description:</b> <b>Περιγραφή</b> License Άδεια ToolButton Stop Διακοπή Reload Ανανέωση Updater Update available Διαθέσιμη ενημέρωση New version of QupZilla is ready to download. Νέα έκδοση του QupZilla είναι έτοιμη για λήψη. Update Ενημέρωση UserAgentDialog User Agent Manager Διαχειριστής πράκτορα χρήστη Change global User Agent Αλλαγή καθολικού πράκτορα χρήστη Use different User Agents for specified sites Χρήση διαφορετικών πρακτόρων χρήστη για συγκεκριμένες σελίδες Site Σελίδα User Agent Πράκτορας χρήστη Add Προσθήκη Remove Αφαίρεση Edit Επεξεργασία Add new site Προσθήκη νέας σελίδας Edit site Επεξεργασια σελίδας Site domain: Διεύθυνση σελίδας: User Agent: Πράκτορας χρήστη: WebInspectorDockWidget Web Inspector Επιθεωρητής διαδικτύου WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? Το QupZilla δεν μπορεί να χειριστεί <b>%1</b> συνδέσμους. Ο αιτούμενος σύνδεσμος ειναι <ul><li>%2</li></ul>Θέλετε το QupZilla να δοκιμάσει να ανοίξει τον συνδεσμο αυτόν στην εφαρμογή συστήματος; Remember my choice for this protocol Απομνημόνευση επιλογής για το πρωτόκολλο αυτό External Protocol Request Αίτημα εξωτερικού πρωτόκολλου To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Για την εμφάνιση της σελίδας αυτής, το QupZilla πρέπει να στείλει μια αίτηση για να το ξανακάνει (όπως στην αναζήτηση μιας αγοράς, η οποία έχει ήδη γίνει.) Confirm form resubmission Επιβεβαίωση νέας υποβολής φόρμας Select files to upload... Επιλογή αρχείων για μεταφόρτωση... Server refused the connection Ο διακομιστής αρνήθηκε την σύνδεση Server closed the connection Ο διακομιστής έκλεισε την σύνδεση Server not found Δεν βρέθηκε ο διακομιστής Connection timed out Έληξε η σύνδεση Untrusted connection Μη έμπιστη σύνδεση Temporary network failure Προσωρινή αποτυχία δικτύου Proxy connection refused Αρνήθηκε η σύνδεση με τον μεσολαβητή Proxy server not found Δεν βρέθηκε διακομιστής διαμεσολάβησης Proxy connection timed out Έληξε η σύνδεση με τον μεσολαβητή Proxy authentication required Απαιτειται εξουσιοδότηση μεσολαβητή Content not found Το περιεχόμενο δεν βρέθηκε Unknown network error Άγνωστο σφάλμα δικτύου AdBlocked Content Φραγμένο περιεχόμενο Adblock Blocked by <i>%1</i> Φράχτηκε από <i>%1</i> Content Access Denied Απορρίφτηκε η πρόσβαση περιεχομένου Error code %1 Σφάλμα κώδικα %1 Failed loading page Αποτυχία φόρτωσης σελίδας QupZilla can't load page. Το QupZilla δεν μπορεί να φορτώσει την σελίδα. QupZilla can't load page from %1. Το QupZilla δεν μπορεί να φορτώσει την σελίδα από %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Ελέγξτε την διεύθυνση για τυπογραφικά λάθη όπως <b>ww.</b>example.com αντί για <b>www.</b>example.com If you are unable to load any pages, check your computer's network connection. Αν δεν μπορείτε να φορτώσετε καμία σελίδα, ελέγξτε την σύνδεση του υπολογιστή σας με το δίκτυο. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Αν ο υπολογιστής σας ή το δίκτυο σας προστατεύεται από ένα τείχος προστασίας (firewall) ή proxy, βεβαιωθείτε ότι το QupZilla επιτρέπεται να έχει πρόσβαση στο διαδίκτυο. Try Again Δοκιμάστε ξανά JavaScript alert Ειδοποίηση JavaScript Prevent this page from creating additional dialogs Να εμποδιστεί αυτή η σελίδα να δημιουργεί επιπλέον διαλόγους Choose file... Επιλογή αρχείου... Cannot read data from <b>%1</b>. Upload was cancelled! Αδυναμία ανάγνωσης δεδομένων από το <b>%1</b>. Η μεταφόρτωση ακυρώθηκε! Cannot read file! Αδυναμία ανάγνωσης αρχείου! WebSearchBar Manage Search Engines Διαχείριση μηχανών αναζήτησης Add %1 ... Προσθηκη %1... Paste And &Search Επικόλληση και &αναζήτηση Clear All Εκκαθάριση όλων Show suggestions Εμφάνιση προτάσεων Search when engine changed Αναζήτηση πότε άλλαξε η μηχανή WebView No Named Page Ανώνυμη σελίδα Create Search Engine Δημιουργία μηχανής αναζήτησης Cut Αποκοπή Copy Αντιγραφή Paste Επικόλληση Select All Επιλογή όλων Default Προεπιλογή Left to Right Από αριστερά προς τα δεξιά Right to Left Από δεξιά προς τα αριστερά Bold Έντονη γραφή Italic Πλάγια γραφή Underline Υπογράμμιση &Reload &Ανανέωση S&top &Διακοπή Delete Διαγραφή &Back &Πίσω &Forward &Μπροστά This frame Αυτό το πλαίσιο Show &only this frame Εμφάνιση &μόνο αυτού του πλαισίου Show this frame in new &tab Εμφάνιση αυτού του πλαισίου σε νέα &καρτέλα Print frame Εκτύπωση πλαισίου Zoom &in Ε&στίαση &Zoom out Σμίκρ&υνση Reset Επαναφορά Show so&urce of frame Εμφάνιση πη&γαίου του πλαισίου Book&mark page Η σελίδα ως &σελιδοδείκτης &Save page as... Αποθήκευση σε&λίδας ως... &Copy page link Α&ντιγραφή συνδέσμου σελίδας Send page link... Αποστολή συνδέσμου σελίδας... &Print page Ε&κτύπωση σελίδας Select &all Επι&λογή όλων Validate page Επικύρωση σελίδας Show so&urce code Εμφάνιση πη&γαίου κώδικα Show info ab&out site Εμφάνιση πληρο&φοριών για την σελίδα Open link in new &tab Άνοιγμα συνδέσμου σε νέα καρ&τέλα Open link in new &window Άνοιγμα συνδέσμου σε νέο &παράθυρο B&ookmark link Ο σύνδεσμος ως σελιδο&δείκτης &Save link as... Απο&θήκευση συνδέσμου ως... Send link... Αποστολή συνδέσμου... &Copy link address Α&ντιγραφή διεύθυνσης συνδέσμου Show i&mage Εμφάνιση &εικόνας Copy im&age Αντιγραφή ει&κόνας Copy image ad&dress Αντιγραφή διεύ&θυνσης εικόνας &Save image as... Απο&θήκευση εικόνας ως... Send image... Αποστολή εικόνας... Send text... Αποστολή κειμένου... Google Translate Μετάφραση Google Dictionary Λεξικό Go to &web address Μετάβαση στην διεύθυνση &διαδικτύου Search "%1 .." with %2 Αναζήτηση "%1" με %2 Search with... Αναζήτηση με... &Play &Αναπαραγωγή &Pause &Πάυση Un&mute Ά&ρση σίγασης &Mute &Σίγαση &Copy Media Address Α&ντιγραφή διεύθυνσης πολυμέσου &Send Media Address Α&ποστολή διεύθυνσης πολυμέσων Save Media To &Disk Αποθήκευση πολυμέσου στον &δίσκο Check &Spelling Έλεγχος &Ορθογραφίας Languages Γλώσσες jsAlert Prevent this page from creating additional dialogs Να εμποδιστεί αυτή η σελίδα να δημιουργεί επιπλέον διαλόγους qupzilla-1.6.0/translations/empty.ts000066400000000000000000010402371226107126500176170ustar00rootroot00000000000000 AboutDialog About QupZilla Authors Authors and Contributors < About QupZilla <p><b>Application version %1</b><br/> <b>WebKit version %1</b></p> <small>Build time: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> AcceptLanguage Preferred Languages Add... Remove Up Down Personal [%1] AdBlockAddSubscriptionDialog Add Subscription Title: Address: Add new subscription to AdBlock: AdBlockCustomList Custom Rules AdBlockDialog AdBlock Configuration Enable AdBlock Search... Options AdBlock Use only essential part of EasyList (for performance reasons) Add Rule Remove Rule Add Subscription Remove Subscription Update Subscriptions Learn about writing rules... AdBlockIcon AdBlock lets you block unwanted content on web pages Blocked popup window AdBlock blocked unwanted popup window. AdBlock Show AdBlock &Settings Disable on %1 Disable only on this page Blocked Popup Windows %1 with (%2) No content blocked Blocked URL (AdBlock Rule) - click to edit rule AdBlockManager Do you want to add <b>%1</b> subscription? AdBlock Subscription EasyList AdBlockTreeWidget Add Rule Remove Rule Add Custom Rule Please write your rule here: %1 (recently updated) AddAcceptLanguage Add Language Choose preferred language for web sites Personal definition: AesInterface Warning! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. AutoFill Database (plaintext) Database (encrypted) Enter Master Password Permission is required, please enter Master Password: Warning! Entered password is wrong! This backend needs a master password to be set! QupZilla just switches to its default backend AutoFillManager Passwords are stored in: Change backend Backend options Passwords Server Username Password Import/Export Show Passwords Edit Remove Remove All Exceptions Import Passwords from File... Export Passwords to File... Search Change backend... Change backend: Are you sure that you want to show all passwords? Hide Passwords Confirmation Are you sure to delete all passwords on your computer? Edit password Change password: Choose file... Cannot read file! Successfully imported Error while importing! Cannot write to file! Successfully exported AutoFillNotification Update Remember Never For This Site Not Now on %1 for <b>%1</b> Do you want QupZilla to update saved password %1? Do you want QupZilla to remember the password %1 %2? AutoFillWidget Choose username to login Login Login as <b>%1</b> BookmarkIcon Bookmark this Page Edit this bookmark BookmarksImportDialog Import Bookmarks <b>Import Bookmarks</b> From File Internet Explorer Choose browser from which you want to import bookmarks: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. Choose... Try to fetch icons for all bookmarks (may take a while) Fetching icons, please wait... Title Url Next Cancel <b>Importing from %1</b> Finish Please press Finish to complete importing process. Error! The file doesn't contain any bookmark. Choose directory... Choose file... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Please choose this file to begin importing bookmarks. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Please choose this folder to begin importing bookmarks. No Error Unable to open file. Cannot evaluate JSON code. File does not exist. Unable to open database. Is Firefox running? Directory does not exist. The directory does not contain any bookmarks. BookmarksManager Bookmarks Add Folder Title Url Expand All Import and Export Collapse All Import Bookmarks... Export Bookmarks to HTML... Export to HTML... Add new folder Choose parent folder for new folder: Choose name for new bookmark folder: Add new subfolder Choose name for new subfolder in bookmarks toolbar: Rename Folder Choose name for folder: Add Subfolder Rename folder Remove folder Open link in current &tab Open link in &new tab Move bookmark to &folder Change icon Rename bookmark Remove bookmark <b>Warning: </b>You already have bookmarked this page! Choose name and location of this bookmark. Add New Bookmark Choose folder for bookmarks: Bookmark All Tabs BookmarksModel Bookmarks In Menu Bookmarks In ToolBar Unsorted Bookmarks BookmarksSideBar Search... Collapse All Expand All Open link in current &tab Open link in &new tab Copy address &Delete BookmarksToolbar &Bookmark Current Page Bookmark &All Tabs &Organize Bookmarks Show Most &Visited Show Only Icons &Hide Toolbar Open bookmark Open bookmark in new tab Move right Move left Edit bookmark Remove bookmark Edit bookmark: Title: Url: Edit Bookmark Most visited Sites you visited the most Empty BookmarksTree Bookmarks New Folder... BookmarksWidget Add to Speed Dial Save Name: Folder: Remove from Speed Dial Remove BrowsingLibrary Library Search... History Bookmarks RSS CertificateInfoWidget <b>Issued To</b> Common Name (CN): Organization (O): Organizational Unit (OU): Serial Number: <b>Issued By</b> <b>Validity</b> Issued On: Expires On: ClearPrivateData Clear Recent History Choose what you want to delete: Clear history Clear cache Clear icons <b>Clear Recent History</b> Earlier Today Week Month All Clear web databases Optimize database Clear local storage Clear cookies Clear Private Data Are you sure to clear selected private data? Database Optimized Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 ClickToFlash Object blocked by ClickToFlash Show more information about object Delete object Add %1 to whitelist Flash Object <b>Attribute Name</b> <b>Value</b> No more information available. CookieManager Cookies Stored Cookies Find: These cookies are stored on your computer: Server Cookie name Name: Value: Server: Path: Secure: Expiration: <cookie not selected> Remove all cookies Remove cookies Cookie Filtering <b>Cookie whitelist</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Add Remove <b>Cookie blacklist</b> Cookies from these servers will NEVER be accepted Settings <b>Cookie Settings</b> Allow storing of cookies Delete cookies on close Match domain exactly Filter tracking cookies <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! Search Confirmation Are you sure to delete all cookies on your computer? Secure only All connections Session cookie Remove cookie Add to whitelist Add to blacklist DownloadFileHelper Save file as... NoNameDownload DownloadItem Remaining time unavailable Error: Cannot write to file! Done - %1 Cancelled few seconds %n seconds %n minutes %n hours Unknown speed kB/s MB/s GB/s Unknown size %2 - unknown size (%3) Remaining %1 - %2 of %3 (%4) Cancelled - %1 Delete file Do you want to also delete dowloaded file? Open File Open Folder Go to Download Page Copy Download Link Cancel downloading Remove Error Not found Sorry, the file %1 was not found! Error: DownloadManager Download Manager Clear %1% of %2 files (%3) %4 remaining %1% - Download Manager Download Finished All files have been successfully downloaded. Warning Are you sure to quit? All uncompleted downloads will be cancelled! DownloadOptionsDialog Opening Copy download link You have chosen to open which is a: What should QupZilla do with this file? Open... Save File Download with External Manager from: Opening %1 Download link copied. EditSearchEngine Name: Url: Shortcut: Icon: <b>Note: </b>%s in url or post data represent searched string Post Data: Change... FileSchemeReply No Error Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. FtpDownloader Cancelled! FtpSchemeReply Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. Unknown command HTML5PermissionsDialog HTML5 Permissions Notifications Site Behaviour Remove Geolocation Allow Deny HTML5PermissionsNotification Remember Allow Deny this site Allow %1 to show desktop notifications? Allow %1 to locate your position? History No Named Page January February March April May June July August September October November December HistoryManager History Delete Clear All History Confirmation Are you sure to delete all history? HistoryModel Title Address Visit Date Visit Count Today This Week This Month HistorySideBar Search... HistoryView Open link in current tab Open link in new tab Copy title Copy address Remove IconChooser Choose icon... From file Image (.png, .jpg, .jpeg, .gif) Choose file... From database Site Url: Image files JsOptions JavaScript Options Allow JavaScript to: Close windows Open popup windows Change window size Hide menu bar Hide status bar Hide tool bar Access clipboard LicenseViewer License Viewer LocationBar Enter URL address or search on %1 Paste And &Go Clear All .co.uk Append domain name on ALT + Enter = Should be different for every country Show information about this page LocationCompleterView Switch to tab MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? Always perform this check when starting QupZilla. Default Browser QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. MasterPasswordDialog Encrypted DataBase Settings Set/Change Master Password... Clear Master Password... This backend does not work without a master password. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Current Password: New Password: Confirm Password: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. Warning! You entered a wrong password! New/Confirm password fields do not match! Some data has not been decrypted. The master password was not cleared! Are you sure to clear master password and decrypt data? NavigationBar No Named Page Back Forward Home New Tab Main Menu Exit Fullscreen Clear history NetworkManager SSL Certificate Error! The page you are trying to access has the following errors in the SSL certificate: <b>Organization: </b> <b>Domain Name: </b> <b>Expiration Date: </b> <b>Error: </b> Would you like to make an exception for this certificate? Authorisation required Username: Password: Save username and password on this site A username and password are being requested by %1. The site says: "%2" FTP authorisation required Login anonymously A username and password are being requested by %1:%2. Proxy authorisation required Remember username and password for this proxy. A username and password are being requested by proxy %1. PageScreen Page Screen Format: Location: Browse... Save as %1 Choose location... File '%1' already exists. Do you want to overwrite it? File already exists PluginsList Application Extensions Allow Application Extensions to be loaded Settings WebKit Plugins <b>Click To Flash Plugin</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Whitelist Add Remove Allow Click To Flash PluginsManager Add site to whitelist Server without http:// (ex. youtube.com) Error! Cannot load extension! PopupWebView Inspect Element PopupWindow File &Save Page As... Save Page Screen Send Link... &Print... Close Edit &Undo &Redo &Cut C&opy &Paste Select All Find View &Stop &Reload Zoom &In Zoom &Out Reset &Page Source %1 - QupZilla Preferences Preferences QupZilla General Appearance Tabs Browsing Fonts Keyboard Shortcuts Downloads Password Manager Privacy Notifications Extensions Other Use current Note: You cannot delete active profile. Create New Delete <b>Launching</b> After launch: Open blank page Open homepage Open speed dial Restore session Homepage: On new tab: Open blank tab Open other page... <b>Profiles</b> Startup profile: Check for updates on start Active profile: In order to change language, you must restart browser. <b>Language</b> Available translations: Don't load tabs until selected Check to see if QupZilla is the default browser on startup Check Now Themes Advanced options <b>Browser Window</b> Show StatusBar on start Show Bookmarks ToolBar on start Show Navigation ToolBar on start <b>Navigation ToolBar</b> Show Home button Show Back / Forward buttons <b>Background<b/> Use transparent background Show web search bar Show Add Tab button Show Reload / Stop buttons Tabs behaviour Show tab previews Make tab previews animated Hide tabs when there is only one tab Activate last tab when closing active tab Open new tabs after active tab Open new empty tabs after active tab Automatically switch to newly opened tab Don't quit upon closing last tab Ask when closing multiple tabs Closed tabs list instead of opened in tab bar Address Bar behaviour Suggest when typing into address bar: History and Bookmarks History Bookmarks Nothing Press "Shift" to not switch the tab but load the url in the current tab. Propose to switch tab if completed url is already loaded. Always show go icon Select all text by double clicking in address bar Select all text by clicking in address bar Search with Default Engine Show loading progress in address bar Fill Bottom Top Custom color: Select color ... Reset Web Configuration Allow Netscape Plugins (Flash plugin) Allow JavaScript Allow JAVA Allow DNS Prefetch Enable XSS Auditing try to detect possible XSS attacks when executing javascript Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Animated scrolling Enable caret browsing Enable spatial navigation Zoom text only Mouse wheel scrolls lines on page Default zoom on pages: Local Storage Maximum 50 MB 1 Maximum pages in cache: Allow storing network cache on disk Store cache in: Allow saving history Delete history on close Allow local storage of HTML5 web content Delete locally stored HTML5 web content on close Delete now Proxy Configuration Proxy Auto-Config (.pac) file Reload HTTP SOCKS5 Port: Username: Password: Don't use on: Manual configuration System proxy configuration Do not use proxy <b>Exceptions</b> Server: Use different proxy for https connection Use script for automatic configuration: <b>Font Families</b> Standard Fixed Serif Sans Serif Cursive Fantasy <b>Font Sizes</b> Fixed Font Size Default Font Size Minimum Font Size Minimum Logical Font Size <b>Shortcuts</b> Switch to tabs with Alt + number of tab Load speed dials with Ctrl + number of speed dial Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> Ask everytime for download location Use defined location: <b>Download Options</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Close download manager when downloading finishes <b>External download manager</b> Use external download manager Executable: Arguments: Leave blank if unsure <b>%d</b> will be replaced with URL to be downloaded <b>AutoFill options</b> Allow saving passwords from sites Send Referer header to servers <b>Cookies</b> Send Do Not Track header to servers <b>Other</b> Manage CA certificates Certificate Manager <b>SSL Certificates</b> <b>JavaScript</b> Manage JavaScript privacy options JavaScript options Cookies Manager Manage Cookies <b>HTML5 Permissions</b> Manage HTML5 permissions HTML5 Permissions <b>Notifications</b> Use OSD Notifications Use Native System Notifications (Linux only) Do not use Notifications Expiration timeout: seconds <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. StyleSheet automatically loaded with all websites: Languages <b>Preferred language for web sites</b> <b>Change browser identification</b> User Agent Manager Default Set as default OSD Notification Drag it on the screen to place it where you want. Choose download location... Choose stylesheet location... Deleted Choose executable location... Choose cache path... New Profile Enter the new profile's name: Error! This profile already exists! Cannot create profile directory! Confirmation Are you sure to permanently delete "%1" profile? This action cannot be undone! Select Color QObject Native System Notification Save file as... The file is not an OpenSearch 1.1 file. <not set in certificate> Unknown size KB MB GB Executable: Arguments: Cannot start external program Cannot start external program! %1 QtWin Open new tab Opens a new tab if browser is running Open new window Opens a new window if browser is running Open download manager Opens a download manager if browser is running QupZilla QupZilla Private Browsing Enabled IP Address of current page &About QupZilla Pr&eferences Quit &File &New Window New Tab Open Location Open &File... Close Tab Close Window &Save Page As... Save Page Screen Send Link... &Print... Import bookmarks... &Edit &Undo &Redo &Cut C&opy &Paste Select &All &Find &View &Navigation Toolbar &Bookmarks Toolbar Sta&tus Bar &Menu Bar &Tabs on Top &Fullscreen &Stop &Reload Character &Encoding Enable &Caret Browsing Toolbars Sidebars Zoom &In Zoom &Out Reset &Page Source Hi&story &Back &Forward &Home Show &All History Closed Tabs Recently Visited Most Visited &Bookmarks Bookmark &This Page Bookmark &All Tabs Organize &Bookmarks &Tools &Web Search Page &Info &Download Manager &Cookies Manager &AdBlock RSS &Reader Web In&spector Clear Recent &History New &Private Window &Help About &Qt Information about application Configuration Information Report &Issue Restore &Closed Tab (Private Browsing) Empty Restore All Closed Tabs Clear list Other %1 - QupZilla HTML files Image files Text files All files Open file... QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Don't ask again There are still open tabs QupZillaSchemeReply No Error Not Found Report Issue If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Your E-mail Issue type Issue description Send E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. Please fill out all required fields! Start Page Search on Web Search results provided by DuckDuckGo About QupZilla <h1>Private Browsing</h1> Information about version Copyright Version WebKit version Main developer Contributors Translators Speed Dial Add New Page Edit Remove Reload Are you sure to remove this speed dial? Load title from page Url Title Apply Close New Page Speed Dial settings Placement: Auto Cover Fit Fit Width Fit Height Use background image Select image Maximum pages in a row: Change size of pages: Center speed dials Restore Session Oops, QupZilla crashed. We apologize for this. Would you like to restore the last saved state? Try removing one or more tabs that you think cause troubles Or you can start completely new session Configuration Information This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Browser Identification Paths Build Configuration Preferences Option Value Extensions Name Author Description Application version Qt version Build time Platform Profile Settings Saved session Pinned tabs Data Themes Translations Disabled <b>Enabled</b> Debug build WebGL support Windows 7 API KDE integration Portable build No available extensions. RSSManager RSS Reader Empty Add feed Edit feed Delete feed Reload News Loading... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Add new feed Please enter URL of new feed: New feed Fill title and URL of a feed: Feed title: Feed URL: Edit RSS Feed Open link in current tab Open link in new tab Error in fetching feed RSS feed duplicated You already have this feed. RSSNotification Add this feed into Add RSS feed <b>"%1"</b> Internal Reader Other... Liferea not running Liferea must be running in order to add new feed. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Add feed into other application RSSWidget Add RSS Feeds from this site Untitled feed Add RecoveryWidget Start New Session Restore Window %1 RegisterQAppAssociation Warning! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) RssIcon Add RSS from this page... SSLManager Certificate Manager CA Authorities Certificates Show info This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Local Certificates Import Remove This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Settings Add If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. <b>NOTE:</b> Setting this option is a high security risk! Ignore all SSL Warnings All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Choose path... Import certificate... Certificate Informations SearchEnginesDialog Manage Search Engines Add... Remove Edit Set as default Up Down Search Engine Shortcut Defaults Add Search Engine Remove Engine You can't remove the default search engine.<br>Set a different engine as default before removing %1. Edit Search Engine SearchEnginesManager Search Engine Added Search Engine "%1" has been successfully added. Search Engine is not valid! Error Error while adding Search Engine <br><b>Error Message: </b> %1 SearchToolBar No results found. SearchToolbar Search: Search... Highlight Case sensitive SideBar Bookmarks History SiteInfo Site Info General Media Databases Security Size: Site address: Encoding: Meta tags of site: Tag Value <b>Security information</b> Details Image Image address <b>Preview</b> <b>Database details</b> Name: Path: <database not selected> <not set in certificate> No databases are used by this page. <b>Connection is Encrypted.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Connection Not Encrypted.</b> <b>Your connection to this page is not secured!</b> Copy Image Location Copy Image Name Save Image to Disk Error! This preview is not available! Save image... Cannot write to file! Preview not available SiteInfoWidget More... Your connection to this site is <b>secured</b>. Your connection to this site is <b>unsecured</b>. This is your <b>%1</b> visit of this site. You have <b>never</b> visited this site before. first second third SourceViewer Source of File Load in page Save as... Close Edit Undo Redo Cut Copy Paste Select All Find Go to Line... View Reload Editable Word Wrap Source loaded in page Cannot load in page. Page has been closed. Save file... Error! Cannot write to file! Error writing to file Source successfully saved Source reloaded Cannot reload source. Page has been closed. Editable changed Word Wrap changed Enter line number SourceViewerSearch Search: Search... Whole words SpeedDial Image files Select image... Unable to load SpellCheckDialog SpellCheck <b>Dictionary path</b> Change... <b>User dictionary</b> Add Remove Using Hunspell library Choose dictionary path... Add new word... Add new word: Speller No suggestions Add to dictionary Settings SqueezeLabelV2 Copy SslErrorDialog SSL Certificate Error! Only for this session TabBar &New tab &Stop Tab &Reload Tab &Duplicate Tab D&etach Tab Un&pin Tab &Pin Tab Re&load All Tabs &Bookmark This Tab Bookmark &All Tabs Close Ot&her Tabs Cl&ose Reloa&d All Tabs Restore &Closed Tab Close Tabs Do you really want to close other tabs? TabWidget New Tab List of tabs Loading... No Named Page Currently you have %1 opened tabs New tab Empty Restore All Closed Tabs Clear list TabbedWebView Loading... %1 - QupZilla Inspect Element ThemeManager <b>Name:</b> <b>Author:</b> <b>Description:</b> License ToolButton Stop Reload Updater Update available New version of QupZilla is ready to download. Update UserAgentDialog User Agent Manager Change global User Agent Use different User Agents for specified sites Site User Agent Add Remove Edit Add new site Edit site Site domain: User Agent: WebInspectorDockWidget Web Inspector WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? Remember my choice for this protocol External Protocol Request To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Confirm form resubmission Select files to upload... Server refused the connection Server closed the connection Server not found Connection timed out Untrusted connection Temporary network failure Proxy connection refused Proxy server not found Proxy connection timed out Proxy authentication required Content not found Unknown network error AdBlocked Content Blocked by <i>%1</i> Content Access Denied Error code %1 Failed loading page QupZilla can't load page. QupZilla can't load page from %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com If you are unable to load any pages, check your computer's network connection. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Try Again JavaScript alert Prevent this page from creating additional dialogs Choose file... Cannot read data from <b>%1</b>. Upload was cancelled! Cannot read file! WebSearchBar Manage Search Engines Add %1 ... Paste And &Search Clear All Show suggestions Search when engine changed WebView No Named Page Create Search Engine Cut Copy Paste Select All Default Left to Right Right to Left Bold Italic Underline &Reload S&top Delete &Back &Forward This frame Show &only this frame Show this frame in new &tab Print frame Zoom &in &Zoom out Reset Show so&urce of frame Book&mark page &Save page as... &Copy page link Send page link... &Print page Select &all Validate page Translate page Show so&urce code Show info ab&out site Open link in new &tab Open link in new &window B&ookmark link &Save link as... Send link... &Copy link address Show i&mage Copy im&age Copy image ad&dress &Save image as... Send image... Send text... Google Translate Dictionary Go to &web address Search "%1 .." with %2 Search with... &Play &Pause Un&mute &Mute &Copy Media Address &Send Media Address Save Media To &Disk Check &Spelling Languages jsAlert Prevent this page from creating additional dialogs qupzilla-1.6.0/translations/es_419.ts000066400000000000000000007451671226107126500175020ustar00rootroot00000000000000 AboutDialog About QupZilla Acerca de QupZilla Authors Autores Authors and Contributors Autores y Contribuyentes < About QupZilla < Acerca de QupZilla <p><b>Application version %1</b><br/> <p><b>Versión de la aplicación %1</b><br/> <b>WebKit version %1</b></p> <b>Versión WebKit %1</b></p> <small>Build time: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Contribuyentes:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Traductores:</b><br/>%1</p> AcceptLanguage Preferred Languages Lenguajes preferidos Add... Añadir... Remove Eliminar Up Arriba Down Abajo Personal [%1] Personal [%1] AdBlockAddSubscriptionDialog Add Subscription Añadir suscripción Title: Título: Address: Dirección: Add new subscription to AdBlock: Añadir nueva suscripción a AdBlock: AdBlockCustomList Custom Rules AdBlockDialog AdBlock Configuration Configuración de Adblock Enable AdBlock Habilitar AdBlock Search... Buscar... Options Opciones AdBlock AdBlock Add Rule Añadir Regla Remove Rule Eliminar Regla Add Subscription Añadir Suscripción Remove Subscription Eliminar Suscripción Update Subscriptions Actualizar Suscripciones Learn about writing rules... AdBlockEasyList EasyList EasyList AdBlockIcon AdBlock lets you block unwanted content on web pages Blocked popup window AdBlock blocked unwanted popup window. AdBlock AdBlock Show AdBlock &Settings Mostrar AdBlock &Settings Disable on %1 Deshabiltar en %1 Disable only on this page Deshabilitar sólo en esta página Blocked Popup Windows %1 with (%2) %1 con (%2) No content blocked Ningún contenido bloqueado Blocked URL (AdBlock Rule) - click to edit rule URL bloqueada (Regla de AdBlock) - click para editar regla AdBlockManager Do you want to add <b>%1</b> subscription? ¿Quieres <b>%1</b> suscribirte? AdBlock Subscription Suscripcción AdBlock AdBlockTreeWidget Add Rule Añadir Regla Remove Rule Eliminar Regla Add Custom Rule Please write your rule here: Por favor, escribe tu regla aquí: %1 (recently updated) AddAcceptLanguage Add Language Choose preferred language for web sites Personal definition: AutoFillManager Passwords Server Username Password Import/Export Show Passwords Edit Remove Remove All Exceptions Import Passwords from File... Export Passwords to File... Search Are you sure that you want to show all passwords? Hide Passwords Confirmation Are you sure to delete all passwords on your computer? Edit password Change password: Choose file... Cannot read file! Successfully imported Error while importing! Cannot write to file! Successfully exported AutoFillNotification Update Remember Never For This Site Not Now on %1 for <b>%1</b> Do you want QupZilla to update saved password %1? Do you want QupZilla to remember the password %1 %2? AutoFillWidget Choose username to login Login Login as <b>%1</b> BookmarkIcon Bookmark this Page Edit this bookmark BookmarksImportDialog Import Bookmarks <b>Import Bookmarks</b> From File Choose browser from which you want to import bookmarks: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. Choose... Seleccionar... Fetching icons, please wait... Title Título Url URL Next Siguiente Cancel Cancelar <b>Importing from %1</b> Finish Finalizar Please press Finish to complete importing process. Error! ¡Error! The file doesn't contain any bookmark. El archivo no contiene ningún marcador. Choose directory... Seleccionar directorio... Choose file... Seleccionar archivo... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Please choose this file to begin importing bookmarks. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Please choose this folder to begin importing bookmarks. No Error Unable to open file. Cannot evaluate JSON code. File does not exist. El archivo no existe Unable to open database. Is Firefox running? BookmarksManager Bookmarks Marcadores Optimize Database Optimizar la base de datos Import Bookmarks Importar Marcadores Add Folder Agregar Carpeta Title Título Url URL Expand All Expandir Todo Collapse All Minimizar Todo Add new folder Agregar nueva carpeta Choose parent folder for new folder: Choose name for new bookmark folder: Seleccionar nombre para la nueva carpeta de marcadores: Add new subfolder Agregar nueva subcarpeta Choose name for new subfolder in bookmarks toolbar: Seleccionar nombre para nueva subcarpeta en la barra de herramientas de marcadores: Rename Folder Renombrar Carpeta Choose name for folder: Seleccionar nombre para la carpeta: Add Subfolder Agregar Subcarpeta Rename folder Renombrar carpeta Remove folder Eliminar Carpeta Open link in current &tab Abrir enlace en la pestaña actual Open link in &new tab Abrir enlace en &nueva pestaña Move bookmark to &folder Change icon Cambiar icono Rename bookmark Renombrar marcador Remove bookmark <b>Warning: </b>You already have bookmarked this page! <b>¡Espera!: </b> ¡Ya tienes esta página en marcadores! Choose name and location of this bookmark. Selecciona el nombre y la ubicación de este marcador. Add New Bookmark Choose folder for bookmarks: Bookmark All Tabs BookmarksModel Bookmarks In Menu Bookmarks In ToolBar Unsorted Bookmarks BookmarksSideBar Search... Open link in current &tab Open link in &new tab Copy address &Delete BookmarksToolbar &Bookmark Current Page Bookmark &All Tabs &Organize Bookmarks Show Most &Visited Show Only Icons &Hide Toolbar Open bookmark Open bookmark in new tab Move right Move left Edit bookmark Remove bookmark Edit bookmark: Title: Url: Edit Bookmark Most visited Sites you visited the most Empty BookmarksTree Bookmarks New Folder... BookmarksWidget Add to Speed Dial Save Guardar Name: Folder: Carpeta: Remove from Speed Dial Remove Eliminar BrowsingLibrary Library Librería Search... Buscar... History Historial Bookmarks Marcadores RSS RSS Database Optimized Base de datos optimizada Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 La base de datos fue optimizada con éxito.<br/><br/><b>Tamaño anterior de la base de datos: </b>%1<br/><b>Tamaño actual de la base de datos: </b>%2 CertificateInfoWidget <b>Issued To</b> Common Name (CN): Organization (O): Organización (O): Organizational Unit (OU): Serial Number: Número de serie: <b>Issued By</b> <b>Validity</b> Issued On: Expires On: ClearPrivateData Clear Recent History Limpiar historial reciente Choose what you want to delete: Selecciona lo que quieres eliminar: Clear history Limpiar historial Clear cache Limpiar cache Clear icons Limpiar iconos Clear cookies from Adobe Flash Player Limpiar cookies desde Adobe Flash Player <b>Clear Recent History</b> <b>Limpiar Historial Reciente</b> Earlier Today Hoy Week Semana Month Mes All Todo Clear web databases Clear local storage Clear cookies Limpiar cookies ClickToFlash Object blocked by ClickToFlash Objeto bloqueado por ClickToFlash Show more information about object Mostrar más información sobre el objeto Delete object Eliminar objeto Add %1 to whitelist Agregar %1 a la lista blanca Flash Object Objeto Flash <b>Attribute Name</b> <b>Value</b> <b>Valor</b> No more information available. No hay más información disponible. CookieManager Cookies Cookies Stored Cookies Find: Encontrar: These cookies are stored on your computer: Server Servidor Cookie name Nombre de Cookie Name: Nombre: Value: Server: Path: Secure: Expiration: <cookie not selected> Remove all cookies Remove cookies Cookie Filtering <b>Cookie whitelist</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Add Remove <b>Cookie blacklist</b> Cookies from these servers will NEVER be accepted Settings <b>Cookie Settings</b> Allow storing of cookies Delete cookies on close Match domain exactly Filter tracking cookies <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable this options first! Search Confirmation Are you sure to delete all cookies on your computer? Secure only All connections Session cookie Remove cookie Add to whitelist Add to blacklist DownloadFileHelper Save file as... NoNameDownload DownloadItem Remaining time unavailable Error: Cannot write to file! Done - %1 Cancelled few seconds seconds minutes hours Unknown speed Unknown size %2 - unknown size (%3) Remaining %1 - %2 of %3 (%4) Cancelled - %1 Delete file Do you want to also delete dowloaded file? Open File Open Folder Go to Download Page Copy Download Link Cancel downloading Remove Error Not found Sorry, the file %1 was not found! Error: DownloadManager Download Manager Clear %1% of %2 files (%3) %4 remaining % - Download Manager Download Finished All files have been successfully downloaded. Warning Are you sure to quit? All uncompleted downloads will be cancelled! DownloadOptionsDialog Opening You have chosen to open which is a: What should QupZilla do with this file? Open... Save File Download with External Manager from: Opening %1 EditSearchEngine Name: Url: Shortcut: Icon: <b>Note: </b>%s in url represent searched string Change... FileSchemeReply No Error Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. FtpDownloader Cancelled! FtpSchemeReply Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. Unknown command HTML5PermissionsDialog HTML5 Permissions Notifications Site Behaviour Remove Geolocation Allow Deny HTML5PermissionsNotification Remember Allow Deny this site Allow %1 to show desktop notifications? Allow %1 to locate your position? History No Named Page January February March April May June July August September October November December HistoryManager History Delete Clear All History Optimize Database Confirmation Are you sure to delete all history? HistoryModel Title Address Visit Date Visit Count Today This Week This Month HistorySideBar Search... HistoryView Open link in current tab Open link in new tab Copy title Copy address Remove IconChooser Choose icon... From file Image (.png, .jpg, .jpeg, .gif) Choose file... From database Site Url: Image files JsOptions JavaScript Options Allow JavaScript to: Close windows Open popup windows Change window size Hide menu bar Hide status bar Hide tool bar Access clipboard LicenseViewer License Viewer LocationBar Enter URL address or search on %1 Paste And &Go Clear All .co.uk Append domain name on ALT + Enter = Should be different for every country Show information about this page LocationCompleterView Switch to tab MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? Always perform this check when starting QupZilla. Default Browser QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. NavigationBar No Named Page Back Forward Home New Tab Main Menu Exit Fullscreen Clear history NetworkManager SSL Certificate Error! The page you are trying to access has the following errors in the SSL certificate: <b>Organization: </b> <b>Domain Name: </b> <b>Expiration Date: </b> <b>Error: </b> Would you like to make an exception for this certificate? Authorisation required Username: Password: Save username and password on this site A username and password are being requested by %1. The site says: "%2" FTP authorisation required Login anonymously A username and password are being requested by %1:%2. Proxy authorisation required A username and password are being requested by proxy %1. PageScreen Page Screen Save Page Screen... PluginsList Application Extensions Allow Application Extensions to be loaded Settings WebKit Plugins <b>Click To Flash Plugin</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Whitelist Add Remove Allow Click To Flash PluginsManager Add site to whitelist Server without http:// (ex. youtube.com) Error! Cannot load extension! PopupWebView Inspect Element PopupWindow File &Save Page As... Save Page Screen Send Link... &Print... Close Edit &Undo &Redo &Cut C&opy &Paste Select All Find View &Stop &Reload Zoom &In Zoom &Out Reset &Page Source %1 - QupZilla Preferences Preferences QupZilla General Appearance Tabs Browsing Fonts Keyboard Shortcuts Downloads Password Manager Privacy Notifications Extensions Other Use current Note: You cannot delete active profile. Create New Delete <b>Launching</b> After launch: Open blank page Open homepage Open speed dial Restore session Homepage: On new tab: Open blank tab Open other page... <b>Profiles</b> Startup profile: Check for updates on start Active profile: In order to change language, you must restart browser. <b>Language</b> Available translations: Don't load tabs until selected Check to see if QupZilla is the default browser on startup Check Now Themes Advanced options <b>Browser Window</b> Show StatusBar on start Show Bookmarks ToolBar on start Show Navigation ToolBar on start <b>Navigation ToolBar</b> Show Home button Show Back / Forward buttons <b>Background<b/> Use transparent background Show web search bar Show Add Tab button Show Reload / Stop buttons Tabs behaviour Show tab previews Make tab previews animated Hide tabs when there is only one tab Activate last tab when closing active tab Open new tabs after active tab Open new empty tabs after active tab Automatically switch to newly opened tab Don't quit upon closing last tab Ask when closing multiple tabs Closed tabs list instead of opened in tab bar Address Bar behaviour Suggest when typing into address bar: History and Bookmarks History Bookmarks Nothing Press "Shift" to not switch the tab but load the url in the current tab. Propose to switch tab if completed url is already loaded. Select all text by double clicking in address bar Select all text by clicking in address bar Add .co.uk domain by pressing ALT key Search with Default Engine Show loading progress in address bar Fill Bottom Top Custom color: Select color ... Reset Web Configuration Allow Netscape Plugins (Flash plugin) Allow JavaScript Allow JAVA Allow DNS Prefetch Enable XSS Auditing try to detect possible XSS attacks when executing javascript Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Animated scrolling Enable caret browsing Zoom text only Mouse wheel scrolls lines on page Default zoom on pages: Local Storage Maximum 50 MB 1 Maximum pages in cache: Allow storing network cache on disk Store cache in: Allow saving history Delete history on close Allow local storage of HTML5 web content Delete locally stored HTML5 web content on close Delete now Proxy Configuration Proxy Auto-Config (.pac) file Reload HTTP SOCKS5 Port: Username: Password: Don't use on: Manual configuration System proxy configuration Do not use proxy <b>Exceptions</b> Server: Use different proxy for https connection Use script for automatic configuration: <b>Font Families</b> Standard Fixed Serif Sans Serif Cursive Fantasy <b>Font Sizes</b> Fixed Font Size Default Font Size Minimum Font Size Minimum Logical Font Size <b>Shortcuts</b> Switch to tabs with Alt + number of tab Load speed dials with Ctrl + number of speed dial <b>Download Location</b> Ask everytime for download location Use defined location: <b>Download Options</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Close download manager when downloading finishes <b>External download manager</b> Use external download manager Executable: Arguments: Leave blank if unsure <b>%d</b> will be replaced with URL to be downloaded <b>AutoFill options</b> Allow saving passwords from sites Send Referer header to servers <b>Cookies</b> Send Do Not Track header to servers <b>Other</b> Manage CA certificates Certificate Manager <b>SSL Certificates</b> <b>JavaScript</b> Manage JavaScript privacy options JavaScript options Cookies Manager Manage Cookies <b>HTML5 Permissions</b> Manage HTML5 permissions HTML5 Permissions <b>Notifications</b> Use OSD Notifications Use Native System Notifications (Linux only) Do not use Notifications Expiration timeout: seconds <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. StyleSheet automatically loaded with all websites: Languages <b>Preferred language for web sites</b> <b>Change browser identification</b> User Agent Manager QupZilla is default Make QupZilla default OSD Notification Drag it on the screen to place it where you want. Choose download location... Choose stylesheet location... Deleted Choose executable location... Choose cache path... New Profile Enter the new profile's name: Error! This profile already exists! Cannot create profile directory! Confirmation Are you sure to permanently delete "%1" profile? This action cannot be undone! Select Color QObject Native System Notification Save file as... The file is not an OpenSearch 1.1 file. <not set in certificate> Unknown size Executable: Arguments: Cannot start external program Cannot start external program! %1 QtWin Open new tab Opens a new tab if browser is running Open new window Opens a new window if browser is running Open download manager Opens a download manager if browser is running QupZilla QupZilla Private Browsing Enabled IP Address of current page &About QupZilla Pr&eferences Quit &File &New Window New Tab Open Location Open &File... Close Tab Close Window &Save Page As... Save Page Screen Send Link... &Print... Import bookmarks... &Edit &Undo &Redo &Cut C&opy &Paste Select &All &Find &View &Navigation Toolbar &Bookmarks Toolbar Sta&tus Bar &Menu Bar &Tabs on Top &Fullscreen &Stop &Reload Character &Encoding Enable &Caret Browsing Toolbars Sidebars Zoom &In Zoom &Out Reset &Page Source Hi&story &Back &Forward &Home Show &All History Closed Tabs Recently Visited Most Visited &Bookmarks Bookmark &This Page Bookmark &All Tabs Organize &Bookmarks &Tools &Web Search Page &Info &Download Manager &Cookies Manager &AdBlock RSS &Reader Web In&spector Clear Recent &History &Private Browsing New &Private Browsing Window &Help About &Qt Information about application Configuration Information Report &Issue Restore &Closed Tab (Private Browsing) Empty Restore All Closed Tabs Clear list Other %1 - QupZilla HTML files Image files Text files All files Open file... There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Don't ask again There are still open tabs QupZillaSchemeReply No Error Not Found Report Issue If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Your E-mail Issue type Issue description Send E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. Please fill out all required fields! Start Page Search on Web Search results provided by DuckDuckGo About QupZilla <h1>Private Browsing</h1> Information about version Copyright Version WebKit version Main developer Contributors Translators Speed Dial Add New Page Edit Remove Reload Are you sure to remove this speed dial? Load title from page Url Title Apply Close New Page Speed Dial settings Placement: Auto Cover Fit Fit Width Fit Height Use background image Select image Maximum pages in a row: Change size of pages: Center speed dials Restore Session Oops, QupZilla crashed. We apologize for this. Would you like to restore the last saved state? Try removing one or more tabs that you think cause troubles Or you can start completely new session Configuration Information This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Browser Identification Paths Build Configuration Preferences Option Value Extensions Name Author Description Application version Qt version Build time Platform Profile Settings Saved session Pinned tabs Data Themes Translations Disabled <b>Enabled</b> Debug build WebGL support Windows 7 API KDE integration Portable build No available extensions. RSSManager RSS Reader Empty Add feed Edit feed Delete feed Optimize Database Reload News Loading... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Add new feed Please enter URL of new feed: New feed Fill title and URL of a feed: Feed title: Feed URL: Edit RSS Feed Open link in current tab Open link in new tab Error in fetching feed RSS feed duplicated You already have this feed. RSSNotification Add this feed into Add RSS feed <b>"%1"</b> Internal Reader Other... Liferea not running Liferea must be running in order to add new feed. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Add feed into other application RSSWidget Add RSS Feeds from this site Untitled feed Add RecoveryWidget Start New Session Restore Window %1 RegisterQAppAssociation Warning! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) RssIcon Add RSS from this page... SSLManager Certificate Manager CA Authorities Certificates Show info This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Local Certificates Import Remove This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Settings Add If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. <b>NOTE:</b> Setting this option is a high security risk! Ignore all SSL Warnings All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Choose path... Import certificate... Certificate Informations SearchEnginesDialog Manage Search Engines Add... Remove Edit Set as default Up Down Search Engine Shortcut Defaults Add Search Engine Remove Engine You can't remove the default search engine.<br>Set a different engine as default before removing %1. Edit Search Engine SearchEnginesManager Search Engine Added Search Engine "%1" has been successfully added. Search Engine is not valid! Error Error while adding Search Engine <br><b>Error Message: </b> %1 SearchToolBar No results found. SearchToolbar Search: Search... Highlight Case sensitive SideBar Bookmarks History SiteInfo Site Info General Media Databases Security Size: Site address: Encoding: Meta tags of site: Tag Value <b>Security information</b> Details Image Image address <b>Preview</b> <b>Database details</b> Name: Path: <database not selected> <not set in certificate> No databases are used by this page. <b>Connection is Encrypted.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Connection Not Encrypted.</b> <b>Your connection to this page is not secured!</b> Copy Image Location Copy Image Name Save Image to Disk Error! This preview is not available! Save image... Cannot write to file! Preview not available SiteInfoWidget More... Your connection to this site is <b>secured</b>. Your connection to this site is <b>unsecured</b>. This is your <b>%1</b> visit of this site. You have <b>never</b> visited this site before. first second third SourceViewer Source of File Load in page Save as... Close Edit Undo Redo Cut Copy Paste Select All Find Go to Line... View Reload Editable Word Wrap Source loaded in page Cannot load in page. Page has been closed. Save file... Error! Cannot write to file! Error writing to file Source successfully saved Source reloaded Cannot reload source. Page has been closed. Editable changed Word Wrap changed Enter line number SourceViewerSearch Search: Search... Whole words SpeedDial Image files Select image... Unable to load SpellCheckDialog SpellCheck <b>Dictionary path</b> Change... <b>User dictionary</b> Add Remove Using Hunspell library Choose dictionary path... Add new word... Add new word: Speller No suggestions Add to dictionary Settings SqueezeLabelV2 Copy TabBar &New tab &Stop Tab &Reload Tab &Duplicate Tab Un&pin Tab &Pin Tab Re&load All Tabs &Bookmark This Tab Bookmark &All Tabs Close Ot&her Tabs Cl&ose Reloa&d All Tabs Bookmark &All Ta&bs Restore &Closed Tab TabWidget New Tab List of tabs Loading... No Named Page Currently you have %1 opened tabs New tab Empty Restore All Closed Tabs Clear list TabbedWebView Loading... %1 - QupZilla Inspect Element ThemeManager <b>Name:</b> <b>Author:</b> <b>Description:</b> License ToolButton Stop Reload Updater Update available New version of QupZilla is ready to download. Update UserAgentDialog User Agent Manager Change global User Agent Use different User Agents for specified sites Site User Agent Add Remove Edit Add new site Edit site Site domain: User Agent: WebInspectorDockWidget Web Inspector WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? Remember my choice for this protocol External Protocol Request To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Confirm form resubmission Select files to upload... Server refused the connection Server closed the connection Server not found Connection timed out Untrusted connection Temporary network failure Proxy connection refused Proxy server not found Proxy connection timed out Proxy authentication required Content not found Unknown network error AdBlocked Content Blocked by <i>%1</i> Content Access Denied Error code %1 Failed loading page QupZilla can't load page. QupZilla can't load page from %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com If you are unable to load any pages, check your computer's network connection. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Try Again JavaScript alert Prevent this page from creating additional dialogs Choose file... WebSearchBar Manage Search Engines Add %1 ... Paste And &Search Clear All Show suggestions Search when engine changed WebView No Named Page Create Search Engine Cut Copy Paste Select All &Reload S&top Delete &Back &Forward This frame Show &only this frame Show this frame in new &tab Print frame Zoom &in &Zoom out Reset Show so&urce of frame Book&mark page &Save page as... &Copy page link Send page link... &Print page Select &all Validate page Show so&urce code Show info ab&out site Open link in new &tab Open link in new &window B&ookmark link &Save link as... Send link... &Copy link address Show i&mage Copy im&age Copy image ad&dress &Save image as... Send image... Send text... Google Translate Dictionary Go to &web address Search "%1 .." with %2 Search with... &Play &Pause Un&mute &Mute &Copy Media Address &Send Media Address Save Media To &Disk Check &Spelling Languages jsAlert Prevent this page from creating additional dialogs qupzilla-1.6.0/translations/es_AR.ts000066400000000000000000007413561226107126500174630ustar00rootroot00000000000000 AboutDialog About QupZilla Authors Authors and Contributors < About QupZilla <p><b>Application version %1</b><br/> <b>WebKit version %1</b></p> <small>Build time: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> AcceptLanguage Preferred Languages Add... Remove Up Down Personal [%1] AdBlockAddSubscriptionDialog Add Subscription Title: Address: Add new subscription to AdBlock: AdBlockCustomList Custom Rules AdBlockDialog AdBlock Configuration Enable AdBlock Search... Options AdBlock Add Rule Remove Rule Add Subscription Remove Subscription Update Subscriptions Learn about writing rules... AdBlockEasyList EasyList AdBlockIcon AdBlock lets you block unwanted content on web pages Blocked popup window AdBlock blocked unwanted popup window. AdBlock Show AdBlock &Settings Disable on %1 Disable only on this page Blocked Popup Windows %1 with (%2) No content blocked Blocked URL (AdBlock Rule) - click to edit rule AdBlockManager Do you want to add <b>%1</b> subscription? AdBlock Subscription AdBlockTreeWidget Add Rule Remove Rule Add Custom Rule Please write your rule here: %1 (recently updated) AddAcceptLanguage Add Language Choose preferred language for web sites Personal definition: AutoFillManager Passwords Server Username Password Import/Export Show Passwords Edit Remove Remove All Exceptions Import Passwords from File... Export Passwords to File... Search Are you sure that you want to show all passwords? Hide Passwords Confirmation Are you sure to delete all passwords on your computer? Edit password Change password: Choose file... Cannot read file! Successfully imported Error while importing! Cannot write to file! Successfully exported AutoFillNotification Update Remember Never For This Site Not Now on %1 for <b>%1</b> Do you want QupZilla to update saved password %1? Do you want QupZilla to remember the password %1 %2? AutoFillWidget Choose username to login Login Login as <b>%1</b> BookmarkIcon Bookmark this Page Edit this bookmark BookmarksImportDialog Import Bookmarks <b>Import Bookmarks</b> From File Choose browser from which you want to import bookmarks: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. Choose... Fetching icons, please wait... Title Url Next Cancel <b>Importing from %1</b> Finish Please press Finish to complete importing process. Error! The file doesn't contain any bookmark. Choose directory... Choose file... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Please choose this file to begin importing bookmarks. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Please choose this folder to begin importing bookmarks. No Error Unable to open file. Cannot evaluate JSON code. File does not exist. Unable to open database. Is Firefox running? BookmarksManager Bookmarks Optimize Database Import Bookmarks Add Folder Title Url Expand All Collapse All Add new folder Choose parent folder for new folder: Choose name for new bookmark folder: Add new subfolder Choose name for new subfolder in bookmarks toolbar: Rename Folder Choose name for folder: Add Subfolder Rename folder Remove folder Open link in current &tab Open link in &new tab Move bookmark to &folder Change icon Rename bookmark Remove bookmark <b>Warning: </b>You already have bookmarked this page! Choose name and location of this bookmark. Add New Bookmark Choose folder for bookmarks: Bookmark All Tabs BookmarksModel Bookmarks In Menu Bookmarks In ToolBar Unsorted Bookmarks BookmarksSideBar Search... Open link in current &tab Open link in &new tab Copy address &Delete BookmarksToolbar &Bookmark Current Page Bookmark &All Tabs &Organize Bookmarks Show Most &Visited Show Only Icons &Hide Toolbar Open bookmark Open bookmark in new tab Move right Move left Edit bookmark Remove bookmark Edit bookmark: Title: Url: Edit Bookmark Most visited Sites you visited the most Empty BookmarksTree Bookmarks New Folder... BookmarksWidget Add to Speed Dial Save Name: Folder: Remove from Speed Dial Remove BrowsingLibrary Library Search... History Bookmarks RSS Database Optimized Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 CertificateInfoWidget <b>Issued To</b> Common Name (CN): Organization (O): Organizational Unit (OU): Serial Number: <b>Issued By</b> <b>Validity</b> Issued On: Expires On: ClearPrivateData Clear Recent History Choose what you want to delete: Clear history Clear cache Clear icons Clear cookies from Adobe Flash Player <b>Clear Recent History</b> Earlier Today Week Month All Clear web databases Clear local storage Clear cookies ClickToFlash Object blocked by ClickToFlash Show more information about object Delete object Add %1 to whitelist Flash Object <b>Attribute Name</b> <b>Value</b> No more information available. CookieManager Cookies Stored Cookies Find: These cookies are stored on your computer: Server Cookie name Name: Value: Server: Path: Secure: Expiration: <cookie not selected> Remove all cookies Remove cookies Cookie Filtering <b>Cookie whitelist</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Add Remove <b>Cookie blacklist</b> Cookies from these servers will NEVER be accepted Settings <b>Cookie Settings</b> Allow storing of cookies Delete cookies on close Match domain exactly Filter tracking cookies <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable this options first! Search Confirmation Are you sure to delete all cookies on your computer? Secure only All connections Session cookie Remove cookie Add to whitelist Add to blacklist DownloadFileHelper Save file as... NoNameDownload DownloadItem Remaining time unavailable Error: Cannot write to file! Done - %1 Cancelled few seconds seconds minutes hours Unknown speed Unknown size %2 - unknown size (%3) Remaining %1 - %2 of %3 (%4) Cancelled - %1 Delete file Do you want to also delete dowloaded file? Open File Open Folder Go to Download Page Copy Download Link Cancel downloading Remove Error Not found Sorry, the file %1 was not found! Error: DownloadManager Download Manager Clear %1% of %2 files (%3) %4 remaining % - Download Manager Download Finished All files have been successfully downloaded. Warning Are you sure to quit? All uncompleted downloads will be cancelled! DownloadOptionsDialog Opening You have chosen to open which is a: What should QupZilla do with this file? Open... Save File Download with External Manager from: Opening %1 EditSearchEngine Name: Url: Shortcut: Icon: <b>Note: </b>%s in url represent searched string Change... FileSchemeReply No Error Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. FtpDownloader Cancelled! FtpSchemeReply Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. Unknown command HTML5PermissionsDialog HTML5 Permissions Notifications Site Behaviour Remove Geolocation Allow Deny HTML5PermissionsNotification Remember Allow Deny this site Allow %1 to show desktop notifications? Allow %1 to locate your position? History No Named Page January February March April May June July August September October November December HistoryManager History Delete Clear All History Optimize Database Confirmation Are you sure to delete all history? HistoryModel Title Address Visit Date Visit Count Today This Week This Month HistorySideBar Search... HistoryView Open link in current tab Open link in new tab Copy title Copy address Remove IconChooser Choose icon... From file Image (.png, .jpg, .jpeg, .gif) Choose file... From database Site Url: Image files JsOptions JavaScript Options Allow JavaScript to: Close windows Open popup windows Change window size Hide menu bar Hide status bar Hide tool bar Access clipboard LicenseViewer License Viewer LocationBar Enter URL address or search on %1 Paste And &Go Clear All .co.uk Append domain name on ALT + Enter = Should be different for every country Show information about this page LocationCompleterView Switch to tab MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? Always perform this check when starting QupZilla. Default Browser QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. NavigationBar No Named Page Back Forward Home New Tab Main Menu Exit Fullscreen Clear history NetworkManager SSL Certificate Error! The page you are trying to access has the following errors in the SSL certificate: <b>Organization: </b> <b>Domain Name: </b> <b>Expiration Date: </b> <b>Error: </b> Would you like to make an exception for this certificate? Authorisation required Username: Password: Save username and password on this site A username and password are being requested by %1. The site says: "%2" FTP authorisation required Login anonymously A username and password are being requested by %1:%2. Proxy authorisation required A username and password are being requested by proxy %1. PageScreen Page Screen Save Page Screen... PluginsList Application Extensions Allow Application Extensions to be loaded Settings WebKit Plugins <b>Click To Flash Plugin</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Whitelist Add Remove Allow Click To Flash PluginsManager Add site to whitelist Server without http:// (ex. youtube.com) Error! Cannot load extension! PopupWebView Inspect Element PopupWindow File &Save Page As... Save Page Screen Send Link... &Print... Close Edit &Undo &Redo &Cut C&opy &Paste Select All Find View &Stop &Reload Zoom &In Zoom &Out Reset &Page Source %1 - QupZilla Preferences Preferences QupZilla General Appearance Tabs Browsing Fonts Keyboard Shortcuts Downloads Password Manager Privacy Notifications Extensions Other Use current Note: You cannot delete active profile. Create New Delete <b>Launching</b> After launch: Open blank page Open homepage Open speed dial Restore session Homepage: On new tab: Open blank tab Open other page... <b>Profiles</b> Startup profile: Check for updates on start Active profile: In order to change language, you must restart browser. <b>Language</b> Available translations: Don't load tabs until selected Check to see if QupZilla is the default browser on startup Check Now Themes Advanced options <b>Browser Window</b> Show StatusBar on start Show Bookmarks ToolBar on start Show Navigation ToolBar on start <b>Navigation ToolBar</b> Show Home button Show Back / Forward buttons <b>Background<b/> Use transparent background Show web search bar Show Add Tab button Show Reload / Stop buttons Tabs behaviour Show tab previews Make tab previews animated Hide tabs when there is only one tab Activate last tab when closing active tab Open new tabs after active tab Open new empty tabs after active tab Automatically switch to newly opened tab Don't quit upon closing last tab Ask when closing multiple tabs Closed tabs list instead of opened in tab bar Address Bar behaviour Suggest when typing into address bar: History and Bookmarks History Bookmarks Nothing Press "Shift" to not switch the tab but load the url in the current tab. Propose to switch tab if completed url is already loaded. Select all text by double clicking in address bar Select all text by clicking in address bar Add .co.uk domain by pressing ALT key Search with Default Engine Show loading progress in address bar Fill Bottom Top Custom color: Select color ... Reset Web Configuration Allow Netscape Plugins (Flash plugin) Allow JavaScript Allow JAVA Allow DNS Prefetch Enable XSS Auditing try to detect possible XSS attacks when executing javascript Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Animated scrolling Enable caret browsing Zoom text only Mouse wheel scrolls lines on page Default zoom on pages: Local Storage Maximum 50 MB 1 Maximum pages in cache: Allow storing network cache on disk Store cache in: Allow saving history Delete history on close Allow local storage of HTML5 web content Delete locally stored HTML5 web content on close Delete now Proxy Configuration Proxy Auto-Config (.pac) file Reload HTTP SOCKS5 Port: Username: Password: Don't use on: Manual configuration System proxy configuration Do not use proxy <b>Exceptions</b> Server: Use different proxy for https connection Use script for automatic configuration: <b>Font Families</b> Standard Fixed Serif Sans Serif Cursive Fantasy <b>Font Sizes</b> Fixed Font Size Default Font Size Minimum Font Size Minimum Logical Font Size <b>Shortcuts</b> Switch to tabs with Alt + number of tab Load speed dials with Ctrl + number of speed dial <b>Download Location</b> Ask everytime for download location Use defined location: <b>Download Options</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Close download manager when downloading finishes <b>External download manager</b> Use external download manager Executable: Arguments: Leave blank if unsure <b>%d</b> will be replaced with URL to be downloaded <b>AutoFill options</b> Allow saving passwords from sites Send Referer header to servers <b>Cookies</b> Send Do Not Track header to servers <b>Other</b> Manage CA certificates Certificate Manager <b>SSL Certificates</b> <b>JavaScript</b> Manage JavaScript privacy options JavaScript options Cookies Manager Manage Cookies <b>HTML5 Permissions</b> Manage HTML5 permissions HTML5 Permissions <b>Notifications</b> Use OSD Notifications Use Native System Notifications (Linux only) Do not use Notifications Expiration timeout: seconds <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. StyleSheet automatically loaded with all websites: Languages <b>Preferred language for web sites</b> <b>Change browser identification</b> User Agent Manager QupZilla is default Make QupZilla default OSD Notification Drag it on the screen to place it where you want. Choose download location... Choose stylesheet location... Deleted Choose executable location... Choose cache path... New Profile Enter the new profile's name: Error! This profile already exists! Cannot create profile directory! Confirmation Are you sure to permanently delete "%1" profile? This action cannot be undone! Select Color QObject Native System Notification Save file as... The file is not an OpenSearch 1.1 file. <not set in certificate> Unknown size Executable: Arguments: Cannot start external program Cannot start external program! %1 QtWin Open new tab Opens a new tab if browser is running Open new window Opens a new window if browser is running Open download manager Opens a download manager if browser is running QupZilla QupZilla Private Browsing Enabled IP Address of current page &About QupZilla Pr&eferences Quit &File &New Window New Tab Open Location Open &File... Close Tab Close Window &Save Page As... Save Page Screen Send Link... &Print... Import bookmarks... &Edit &Undo &Redo &Cut C&opy &Paste Select &All &Find &View &Navigation Toolbar &Bookmarks Toolbar Sta&tus Bar &Menu Bar &Tabs on Top &Fullscreen &Stop &Reload Character &Encoding Enable &Caret Browsing Toolbars Sidebars Zoom &In Zoom &Out Reset &Page Source Hi&story &Back &Forward &Home Show &All History Closed Tabs Recently Visited Most Visited &Bookmarks Bookmark &This Page Bookmark &All Tabs Organize &Bookmarks &Tools &Web Search Page &Info &Download Manager &Cookies Manager &AdBlock RSS &Reader Web In&spector Clear Recent &History &Private Browsing New &Private Browsing Window &Help About &Qt Information about application Configuration Information Report &Issue Restore &Closed Tab (Private Browsing) Empty Restore All Closed Tabs Clear list Other %1 - QupZilla HTML files Image files Text files All files Open file... There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Don't ask again There are still open tabs QupZillaSchemeReply No Error Not Found Report Issue If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Your E-mail Issue type Issue description Send E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. Please fill out all required fields! Start Page Search on Web Search results provided by DuckDuckGo About QupZilla <h1>Private Browsing</h1> Information about version Copyright Version WebKit version Main developer Contributors Translators Speed Dial Add New Page Edit Remove Reload Are you sure to remove this speed dial? Load title from page Url Title Apply Close New Page Speed Dial settings Placement: Auto Cover Fit Fit Width Fit Height Use background image Select image Maximum pages in a row: Change size of pages: Center speed dials Restore Session Oops, QupZilla crashed. We apologize for this. Would you like to restore the last saved state? Try removing one or more tabs that you think cause troubles Or you can start completely new session Configuration Information This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Browser Identification Paths Build Configuration Preferences Option Value Extensions Name Author Description Application version Qt version Build time Platform Profile Settings Saved session Pinned tabs Data Themes Translations Disabled <b>Enabled</b> Debug build WebGL support Windows 7 API KDE integration Portable build No available extensions. RSSManager RSS Reader Empty Add feed Edit feed Delete feed Optimize Database Reload News Loading... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Add new feed Please enter URL of new feed: New feed Fill title and URL of a feed: Feed title: Feed URL: Edit RSS Feed Open link in current tab Open link in new tab Error in fetching feed RSS feed duplicated You already have this feed. RSSNotification Add this feed into Add RSS feed <b>"%1"</b> Internal Reader Other... Liferea not running Liferea must be running in order to add new feed. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Add feed into other application RSSWidget Add RSS Feeds from this site Untitled feed Add RecoveryWidget Start New Session Restore Window %1 RegisterQAppAssociation Warning! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) RssIcon Add RSS from this page... SSLManager Certificate Manager CA Authorities Certificates Show info This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Local Certificates Import Remove This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Settings Add If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. <b>NOTE:</b> Setting this option is a high security risk! Ignore all SSL Warnings All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Choose path... Import certificate... Certificate Informations SearchEnginesDialog Manage Search Engines Add... Remove Edit Set as default Up Down Search Engine Shortcut Defaults Add Search Engine Remove Engine You can't remove the default search engine.<br>Set a different engine as default before removing %1. Edit Search Engine SearchEnginesManager Search Engine Added Search Engine "%1" has been successfully added. Search Engine is not valid! Error Error while adding Search Engine <br><b>Error Message: </b> %1 SearchToolBar No results found. SearchToolbar Search: Search... Highlight Case sensitive SideBar Bookmarks History SiteInfo Site Info General Media Databases Security Size: Site address: Encoding: Meta tags of site: Tag Value <b>Security information</b> Details Image Image address <b>Preview</b> <b>Database details</b> Name: Path: <database not selected> <not set in certificate> No databases are used by this page. <b>Connection is Encrypted.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Connection Not Encrypted.</b> <b>Your connection to this page is not secured!</b> Copy Image Location Copy Image Name Save Image to Disk Error! This preview is not available! Save image... Cannot write to file! Preview not available SiteInfoWidget More... Your connection to this site is <b>secured</b>. Your connection to this site is <b>unsecured</b>. This is your <b>%1</b> visit of this site. You have <b>never</b> visited this site before. first second third SourceViewer Source of File Load in page Save as... Close Edit Undo Redo Cut Copy Paste Select All Find Go to Line... View Reload Editable Word Wrap Source loaded in page Cannot load in page. Page has been closed. Save file... Error! Cannot write to file! Error writing to file Source successfully saved Source reloaded Cannot reload source. Page has been closed. Editable changed Word Wrap changed Enter line number SourceViewerSearch Search: Search... Whole words SpeedDial Image files Select image... Unable to load SpellCheckDialog SpellCheck <b>Dictionary path</b> Change... <b>User dictionary</b> Add Remove Using Hunspell library Choose dictionary path... Add new word... Add new word: Speller No suggestions Add to dictionary Settings SqueezeLabelV2 Copy TabBar &New tab &Stop Tab &Reload Tab &Duplicate Tab Un&pin Tab &Pin Tab Re&load All Tabs &Bookmark This Tab Bookmark &All Tabs Close Ot&her Tabs Cl&ose Reloa&d All Tabs Bookmark &All Ta&bs Restore &Closed Tab TabWidget New Tab List of tabs Loading... No Named Page Currently you have %1 opened tabs New tab Empty Restore All Closed Tabs Clear list TabbedWebView Loading... %1 - QupZilla Inspect Element ThemeManager <b>Name:</b> <b>Author:</b> <b>Description:</b> License ToolButton Stop Reload Updater Update available New version of QupZilla is ready to download. Update UserAgentDialog User Agent Manager Change global User Agent Use different User Agents for specified sites Site User Agent Add Remove Edit Add new site Edit site Site domain: User Agent: WebInspectorDockWidget Web Inspector WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? Remember my choice for this protocol External Protocol Request To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Confirm form resubmission Select files to upload... Server refused the connection Server closed the connection Server not found Connection timed out Untrusted connection Temporary network failure Proxy connection refused Proxy server not found Proxy connection timed out Proxy authentication required Content not found Unknown network error AdBlocked Content Blocked by <i>%1</i> Content Access Denied Error code %1 Failed loading page QupZilla can't load page. QupZilla can't load page from %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com If you are unable to load any pages, check your computer's network connection. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Try Again JavaScript alert Prevent this page from creating additional dialogs Choose file... WebSearchBar Manage Search Engines Add %1 ... Paste And &Search Clear All Show suggestions Search when engine changed WebView No Named Page Create Search Engine Cut Copy Paste Select All &Reload S&top Delete &Back &Forward This frame Show &only this frame Show this frame in new &tab Print frame Zoom &in &Zoom out Reset Show so&urce of frame Book&mark page &Save page as... &Copy page link Send page link... &Print page Select &all Validate page Show so&urce code Show info ab&out site Open link in new &tab Open link in new &window B&ookmark link &Save link as... Send link... &Copy link address Show i&mage Copy im&age Copy image ad&dress &Save image as... Send image... Send text... Google Translate Dictionary Go to &web address Search "%1 .." with %2 Search with... &Play &Pause Un&mute &Mute &Copy Media Address &Send Media Address Save Media To &Disk Check &Spelling Languages jsAlert Prevent this page from creating additional dialogs qupzilla-1.6.0/translations/es_ES.ts000066400000000000000000010610051226107126500174530ustar00rootroot00000000000000 AboutDialog About QupZilla Acerca de QupZilla Authors Autores Authors and Contributors Autores y contribuidores < About QupZilla < Acerca de QupZilla <p><b>Application version %1</b><br/> <p><b>Versión de la aplicación %1</b><br/> <b>WebKit version %1</b></p> <b>Versión WebKit %1</b></p> <small>Build time: %1 </small></p> <small>Fecha de compilación: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Desarrollador princial:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Contribuidores:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Traductores:</b><br/>%1</p> AcceptLanguage Preferred Languages Idiomas preferidos Add... Añadir... Remove Eliminar Up Subir Down Bajar Personal [%1] Personal [%1] AdBlockAddSubscriptionDialog Add Subscription Añadir suscripción Title: Título: Address: Dirección: Add new subscription to AdBlock: Añadir nueva suscripción a Adblock: AdBlockCustomList Custom Rules Reglas personalizadas AdBlockDialog AdBlock Configuration Configuración del bloqueador de publicidad Enable AdBlock Habilitar el bloqueador de publicidad Search... Buscar... Options Opciones AdBlock Bloqueador de publicidad Use only essential part of EasyList (for performance reasons) Add Rule Añadir regla Remove Rule Eliminar regla Add Subscription Añadir suscripción Remove Subscription Eliminar suscripción Update Subscriptions Actualizar suscripciones Learn about writing rules... Aprenda acerca de escribir reglas... AdBlockIcon AdBlock lets you block unwanted content on web pages El bloqueador de publicidad le permite bloquear contenido no deseado en las páginas Blocked popup window Ventana emergente bloqueada AdBlock blocked unwanted popup window. El bloqueador de publicidad ha bloqueado una ventana emergente no deseada. AdBlock Bloqueador de publicidad Show AdBlock &Settings Ver &preferencias del bloqueador de publicidad Disable on %1 Desabilitado en %1 Disable only on this page Desabilitado solo en esta pagina Blocked Popup Windows Ventanas emergentes bloqueadas %1 with (%2) %1 con (%2) No content blocked Ningún contenido bloqueado Blocked URL (AdBlock Rule) - click to edit rule URL bloqueada (regla del bloqueador de publicidad) - click para editar regla AdBlockManager Do you want to add <b>%1</b> subscription? ¿Desea añadir la suscripción <b>%1</b>? AdBlock Subscription Suscripción de AdBlock EasyList EasyList AdBlockTreeWidget Add Rule Añadir regla Remove Rule Eliminar regla Add Custom Rule Añadir regla personalizada Please write your rule here: Por favor, escriba su regla aquí: %1 (recently updated) %1 (recientemente actualizada) AddAcceptLanguage Add Language Añadir idioma Choose preferred language for web sites Elegir idioma.preferido para páginas web Personal definition: Definición personal: AesInterface Warning! ¡Advertencia! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. Los datos han sido encriptados con una nueva versión de QupZilla. Por favor instala la última versión de QupZilla. AutoFill Database (plaintext) Base de datos (texto plano) Database (encrypted) Base de datos (encriptada) Enter Master Password Ingresar contraseña maestra Permission is required, please enter Master Password: Se requieren permisos, por favor ingresa la contraseña maestra: Warning! ¡Advertencia! Entered password is wrong! ¡La contraseña ingresada no es válida! This backend needs a master password to be set! QupZilla just switches to its default backend AutoFillManager Passwords are stored in: Las contraseñas están guardadas en: Change backend Backend options Passwords Contraseñas Server Servidor Username Nombre de usuario Password Contraseña Import/Export Importar/Exportar Show Passwords Mostras contraseñas Edit Editar Remove Eliminar Remove All Eliminar todo Exceptions Excepciones Import Passwords from File... Importar contraseñas desde un archivo... Export Passwords to File... Exportar contraseñas a un archivo... Search Buscar Change backend... Change backend: Are you sure that you want to show all passwords? ¿Está seguro que desea mostrar todas las contraseñas? Hide Passwords Ocultar contraseñas Confirmation Confirmación Are you sure to delete all passwords on your computer? ¿Está seguro de elimiar todas las contraseñas de su ordenador? Edit password Editar contraseña Change password: Cambiar contraseña: Choose file... Elegir archivo... Cannot read file! ¡No se puede leer el archivo! Successfully imported Importada satisfactoriamente Error while importing! ¡Error al importar! Cannot write to file! ¡No se puede escribir el archivo! Successfully exported Exportada satisfactoriamente AutoFillNotification Update Actualización Remember Recordar Never For This Site Nunca para este sitio Not Now No ahora on %1 en %1 for <b>%1</b> para <b>%1</b> Do you want QupZilla to update saved password %1? ¿Quiere que QupZilla actualice la contraseña guardada %1? Do you want QupZilla to remember the password %1 %2? ¿Quiere que QupZilla recuerde la contraseña? %1 %2? AutoFillWidget Choose username to login Elija su nombre de usuario para iniciar sesión Login Iniciar sesión Login as <b>%1</b> Iniciar sesión como <b>%1</b> BookmarkIcon Bookmark this Page Añadir esta página a marcadores Edit this bookmark Editar este marcador BookmarksImportDialog Import Bookmarks Importar marcadores <b>Import Bookmarks</b> <b>Importar marcadores</b> From File Desde un archivo Internet Explorer Internet Explorer Choose browser from which you want to import bookmarks: Elegir navegador del que desee importar marcadores: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Nota:</b> Actualmente solo la importación de archivos Html permite importar también carpetas. Choose... Elegir... Try to fetch icons for all bookmarks (may take a while) Fetching icons, please wait... Obteniendo iconos, por favor espere... Title Nombre Url Dirección Next Siguiente Cancel Cancelar <b>Importing from %1</b> <b>Importando desde %1</b> Finish Terminar Please press Finish to complete importing process. Por favor, presione Terminar para completar el proceso de importación. Error! ¡Error! The file doesn't contain any bookmark. El archivo no contiene ningun favorito. Choose directory... Elegir directorio... Choose file... Elegir archivo... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox almacena sus marcadores en <b>places.sqlite</b> SQLite database. Este archivo suele encontrarse en Please choose this file to begin importing bookmarks. Elegir este archivo para empezar a importar marcadores. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Google Chrome almacena sus marcadores en el archivo de texto <b>Bookmarks</b>. Este archivo suele encontrarse en Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera almacena sus marcadores en el archivo de texto <b>bookmarks.adr</b>. Este archivo suele encontrarse en You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Puede importar marcadores desde cualquier navegador que soporte la exportación en HTML. El archivo suele tener estos sufijos Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Explorer almacena sus marcadores en la carpeta<b>Favoritos</b>. Esta carpeta suele encontrarse en Please choose this folder to begin importing bookmarks. Elegir esta carpeta para empezar a importar marcadores. No Error Ningún error Unable to open file. No se puede abrir el archivo. Cannot evaluate JSON code. No se puede evaluar el código JSON. File does not exist. El archivo no existe. Unable to open database. Is Firefox running? No se puede abrir la base de datos. ¿Está ejecutándose Firefox? Directory does not exist. El directorio no existe. The directory does not contain any bookmarks. El directorio no contiene marcadores. BookmarksManager Bookmarks Marcadores Optimize Database Optimizar la base de datos Import Bookmarks Importar marcadores Add Folder Añadir carpeta Title Nombre Url Dirección Expand All Expandir Todo Collapse All Minimizar Todo Add new folder Añadir carpeta nueva Choose parent folder for new folder: Elija la carpeta principal de la carpeta nueva: Choose name for new bookmark folder: Elegir nombre para nueva carpeta de marcadores: Add new subfolder Añadir subcarpeta nueva Choose name for new subfolder in bookmarks toolbar: Nombre para la subcarpeta nueva en la barra de herramientas de marcadores: Rename Folder Renombrar carpeta Choose name for folder: Elegir nombre para la carpeta: Add Subfolder Añadir subcarpeta Rename folder Renombrar carpeta Remove folder Eliminar carpeta Open link in current &tab Abrir enlace en la &pestaña actual Open link in &new tab Abrir enlace en una &nueva pestaña Move bookmark to &folder Mover marcador a &carpeta Change icon Cambiar icono Rename bookmark Renombrar marcador Remove bookmark Eliminar marcador <b>Warning: </b>You already have bookmarked this page! <b>Aviso: </b>¡Ya ha añadido esta página a los marcadores! Choose name and location of this bookmark. Elegir nombre y localización del marcador. Add New Bookmark Añadir nuevo marcador Choose folder for bookmarks: Elegir carpeta para marcadores: Bookmark All Tabs Añadir todas las pestañas a marcadores BookmarksModel Bookmarks In Menu Marcadores en el menú Bookmarks In ToolBar Barra de herramientas de marcadores Unsorted Bookmarks Marcadores sin clasificar BookmarksSideBar Search... Buscar... Open link in current &tab Abrir enlace en la &pestaña actual Open link in &new tab Abrir enlace en una &nueva pestaña Copy address Copiar dirección &Delete &Eliminar BookmarksToolbar &Bookmark Current Page &Añadir esta página a marcadores Bookmark &All Tabs Añadir &todas las pestañas a marcadores &Organize Bookmarks &Organizar marcadores Show Most &Visited Ver los más &visitados Show Only Icons Mostrar solo iconos &Hide Toolbar &Ocultar barra de herramientas Open bookmark Abrir marcador Open bookmark in new tab Abrir marcador en una nueva pestaña Move right Mover a la derecha Move left Mover a la izquierda Edit bookmark Editar marcador Remove bookmark Eliminar marcador Edit bookmark: Editar marcador: Title: Nombre: Url: Dirección: Edit Bookmark Editar marcador Most visited Más visitados Sites you visited the most Sitios más visitados Empty Vacío BookmarksTree Bookmarks Marcadores New Folder... Nueva Carpeta... BookmarksWidget Add to Speed Dial Añadir a marcado rápido Save Guardar Name: Nombre: Folder: Directorio: Remove from Speed Dial Quitar de la marcación rápida Remove Eliminar BrowsingLibrary Library Biblioteca Search... Buscar... History Historial Bookmarks Marcadores RSS RSS Database Optimized Base de datos optimizada Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 Base de datos optimizada satisfactoriamente.<br/><br/><b>Tamaño de la base de datos antes: </b>%1<br/><b>Tamaño de la base de datos después: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Emitido para</b> Common Name (CN): Nombre común (CN): Organization (O): Organización (O): Organizational Unit (OU): Unidad organizativa (OU): Serial Number: Número de serie: <b>Issued By</b> <b>Emitido por</b> <b>Validity</b> <b>Validez</b> Issued On: Emitido el: Expires On: Expira el: ClearPrivateData Clear Recent History Limpiar historial reciente Choose what you want to delete: Elegir lo que desea eliminar: Clear history Limpiar historial Clear cache Limpiar caché Clear icons Limpiar iconos <b>Clear Recent History</b> <b>Limpiar historial reciente</b> Earlier Today Hoy Week Semana Month Mes All Todo Clear web databases Limpiar las bases de datos web Clear local storage Limpiar almacenamiento local Clear cookies Limpiar cookies ClickToFlash Object blocked by ClickToFlash Objetos bloqueados por ClickToFlash Show more information about object Ver más información del objeto Delete object Eliminar objeto Add %1 to whitelist Añadir %1 a la lista blanca Flash Object Objeto Flash <b>Attribute Name</b> <b>Nombre del atributo</b> <b>Value</b> <b>Valor</b> No more information available. No hay más información disponible. CookieManager Cookies Cookies Stored Cookies Cookies almacenadas Find: Buscar: These cookies are stored on your computer: Estas cookies están almacenadas en su ordenador: Server Servidor Cookie name Nombre de la cookie Name: Nombre: Value: Valor: Server: Servidor: Path: Ruta: Secure: Seguro: Expiration: Caducidad: <cookie not selected> <cookie no seleccionada> Remove all cookies Eliminar todas las cookies Remove cookies Eliminar cookies Cookie Filtering Filtrado de cookies <b>Cookie whitelist</b> <b>Lista blanca de cookies</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Las cookies de estos servidores SIEMPRE serán aceptadas (incluso si ha deshabilitado el guardado de cookies) Add Añadir Remove Eliminar <b>Cookie blacklist</b> <b>Lista negra de cookies</b> Cookies from these servers will NEVER be accepted Las cookies de estos servidores NUNCA serán aceptadas Settings Configuración <b>Cookie Settings</b> <b>Configuración de las Cookies</b> Allow storing of cookies Permitir el almacenamiento de cookies Delete cookies on close Borrar cookies al cerrar Match domain exactly Coincidir exactamente el dominio Filter tracking cookies Filtrar cookies de seguimiento <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! Search Buscar Confirmation Confirmación Are you sure to delete all cookies on your computer? ¿Está seguro de eliminar todas las cookies de su ordenador? Secure only Sólo las seguras All connections Todas las conexiones Session cookie Cookie de sesión Remove cookie Eliminar cookie Add to whitelist Añadir a la lista blanca Add to blacklist Añadir a la lista negra DownloadFileHelper Save file as... Guardar archivo como... NoNameDownload DescargaSinNombre DownloadItem Remaining time unavailable Tiempo restante no disponible Error: Cannot write to file! ¡Error: no se puede escribir el archivo! Done - %1 Hecho - %1 Cancelled Cancelado few seconds pocos segundos %n seconds %n minutes %n hours Unknown speed Velocidad desconocida kB/s MB/s GB/s Unknown size Tamaño desconocido %2 - unknown size (%3) %2 - tamaño desconocido (%3) Remaining %1 - %2 of %3 (%4) Restante %1 - %2 de %3 (%4) Cancelled - %1 Cancelado - %1 Delete file Eliminar archivo Do you want to also delete dowloaded file? ¿Desea eliminar también el archivo descargado? Open File Abrir archivo Open Folder Abrir carpeta Go to Download Page Ir a la página de descarga Copy Download Link Copiar enlace de descarga Cancel downloading Cancelar descarga Remove Eliminar Error Error Not found No encontrado Sorry, the file %1 was not found! ¡Disculpe, el archivo %1 no ha sido encontrado! Error: Error: DownloadManager Download Manager Gestor de descargas Clear Limpiar %1% of %2 files (%3) %4 remaining %1% de %2 archivos (%3) %4 restantes %1% - Download Manager %1% - Gestor de descargas Download Finished Descarga finalizada All files have been successfully downloaded. Todos los archivos se han descargado satisfactoriamente. Warning Aviso Are you sure to quit? All uncompleted downloads will be cancelled! ¿Está seguro de salir? ¡Todas las descargas incompletas serán canceladas! DownloadOptionsDialog Opening Abriendo Copy download link You have chosen to open Ha elegido el archivo which is a: el cual es un: What should QupZilla do with this file? ¿Qué desea haga QupZilla con este archivo? Open... Abrir... Save File Guardar archivo Download with External Manager Descargar con Manejador de Descargas alterno from: de: Opening %1 Abriendo %1 Download link copied. EditSearchEngine Name: Nombre: Url: Url: Shortcut: Palabra clave: Icon: Icono: <b>Note: </b>%s in url or post data represent searched string Post Data: Change... Cambiar... FileSchemeReply No Error Ningún error Up to higher level directory Subir al directorio superior Show hidden files Mostrar ocultos Name Nombre Size Tamaño Last modified Ultima modificacion Index for %1 Indice para %1 Folder is empty. Directorio esta vacio. FtpDownloader Cancelled! Cancelado! FtpSchemeReply Up to higher level directory Subir al directorio superior Show hidden files Mostrar archivos ocultos Name Nombre Size Tamaño Last modified Ultima modificación Index for %1 Indice para %1 Folder is empty. Carpeta vacía. Unknown command Comando desconocido HTML5PermissionsDialog HTML5 Permissions Permisos HTML5 Notifications Notificaciones Site Sitio Behaviour Comportamiento Remove Remover Geolocation Geolocalización Allow Permitir Deny Negar HTML5PermissionsNotification Remember Recordar Allow Permitir Deny Negar this site este sitio Allow %1 to show desktop notifications? ¿Permitir a %1 mostrar notificaciones de escritorio? Allow %1 to locate your position? ¿Permitir a %1 localizar su posición? History No Named Page Página sin nombre January Enero February Febrero March Marzo April Abril May Mayo June Junio July Julio August Agosto September Septiembre October Octubre November Noviembre December Diciembre HistoryManager History Historial Delete Eliminar Clear All History Limpiar todo el historial Optimize Database Optimizar la base de datos Confirmation Confirmación Are you sure to delete all history? ¿Está seguro de eliminar todo el historial? HistoryModel Title Título Address Dirección Visit Date Fecha de visita Visit Count Contador de visitas Today Hoy This Week Esta semana This Month Este mes HistorySideBar Search... Buscar... HistoryView Open link in current tab Abrir enlace en la pestaña actual Open link in new tab Abrir enlace en una nueva pestaña Copy title Copiar título Copy address Copiar dirección Remove Eliminar IconChooser Choose icon... Elegir icono... From file Desde un archivo Image (.png, .jpg, .jpeg, .gif) Imágen (.png, .jpg, .jpeg, .gif) Choose file... Elegir archivo... From database Desde base de datos Site Url: Dirección del sitio: Image files Archivos de imágen JsOptions JavaScript Options Opciones de JavaScript Allow JavaScript to: Permitir a JavaScript: Close windows Cerrar ventanas Open popup windows Abrir ventanas emergentes Change window size Cambiar tamaño de la ventana Hide menu bar Ocultar la barra de menús Hide status bar Ocultar la barra de estado Hide tool bar Ocultar la barra de herramientas Access clipboard Acceder al portapapeles LicenseViewer License Viewer Visor de licencia LocationBar Enter URL address or search on %1 Introducir la dirección URL o buscar en %1 Paste And &Go Pegar e &ir Clear All Limpiar todo .co.uk Append domain name on ALT + Enter = Should be different for every country .co.uk Show information about this page Ver información de la página LocationCompleterView Switch to tab Cambiar a pestaña MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? QupZilla no es su navegador predeterminado ¿Desea hacerlo su navegador por defecto? Always perform this check when starting QupZilla. Realizar siempre esta comprobación al iniciar QupZilla. Default Browser Navegador predeterminado QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. QupZilla es un nuevo navegador web, rápido, seguro y de código abierto. QupZilla esta licenciado bajo GPL versión 3 o (a su elección) cualquier versión posterior. Esta basado en el nucleo WebKit y Qt Framework. MasterPasswordDialog Encrypted DataBase Settings Opciones de la base de datos encriptada Set/Change Master Password... Establecer o cambiar contraseña maestra... Clear Master Password... Limpiar contraseña maestra... This backend does not work without a master password. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Current Password: Contraseña actual: New Password: Nueva contraseña: Confirm Password: Confirmar contraseña: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. <b>Nota:</b> La contraseña maestra no se puede volver a establecer. No lo olvides, por favor. Warning! ¡Advertencia! You entered a wrong password! ¡Ingresaste una contraseña errónea! New/Confirm password fields do not match! ¡Los campos Nueva contraseña y Confirmar contraseña no concuerdan! Some data has not been decrypted. The master password was not cleared! Are you sure to clear master password and decrypt data? NavigationBar No Named Page Página sin nombre Back Anterior Forward Siguiente Home Inicio New Tab Nueva pestaña Main Menu Menú principal Exit Fullscreen Salir de pantalla completa Clear history Limpiar historial NetworkManager SSL Certificate Error! ¡Error del certificado SSL! The page you are trying to access has the following errors in the SSL certificate: La página a la que está intentando acceder tiene los siguientes errores en el certificado SSL: <b>Organization: </b> <b>Organización: </b> <b>Domain Name: </b> <b>Nombre del dominio: </b> <b>Expiration Date: </b> <b>Fecha de caducidad: </b> <b>Error: </b> <b>Error: </b> Would you like to make an exception for this certificate? ¿Le gustaría hacer una excepción para este certificado? Authorisation required Autorización requerida Username: Nombre de usuario: Password: Contraseña: Save username and password on this site Guardar nombre de usuario y contraseña en este sitio A username and password are being requested by %1. The site says: "%2" Un nombre de usuario y contraseña son requeridos por %1. El sitio dice: "%2" FTP authorisation required Autorización de FTP requerida Login anonymously Iniciar sesión anonimamente A username and password are being requested by %1:%2. %1:%2 requiere un nombre de usuario y contraseña. Proxy authorisation required Autorización de proxy requerida Remember username and password for this proxy. A username and password are being requested by proxy %1. Un nombre de usuario y contraseña son requeridos por el proxy %1. PageScreen Page Screen Pantallazo de la página Format: Formato: Location: Ubicación Browse... Explorar... Save as %1 Guardar como %1 Choose location... Elegir ubicación... File '%1' already exists. Do you want to overwrite it? El archivo '%1' ya existe. ¿Quieres sobreescribirlo? File already exists El archivo ya existe PluginsList Application Extensions Extensiones de aplicación Allow Application Extensions to be loaded Permitir que se carguen las extensiones de aplicación Settings Preferencias WebKit Plugins WebKit plugins <b>Click To Flash Plugin</b> <b>Click To Flash Plugin</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Click To Flash es un plugin que bloquea la carga automática de contenido Flash en la página. Usted siempre puede cargarlo manualmente haciendo click en el icono de reproducción de Flash. Whitelist Lista blanca Add Añadir Remove Eliminar Allow Click To Flash Permitir Click To Flash PluginsManager Add site to whitelist Añadir sitio a la lista blanca Server without http:// (ex. youtube.com) Servidor sin http:// (ej. youtube.com) Error! ¡Error! Cannot load extension! ¡No se puede cargar la extensión! PopupWebView Inspect Element Inspeccionar elemento PopupWindow File Archivo &Save Page As... Gu&ardar página como... Save Page Screen Guardar pantallazo de la página Send Link... Enviar enlace... &Print... Im&primir... Close Cerrar Edit Editar &Undo &Deshacer &Redo &Rehacer &Cut Co&rtar C&opy &Copiar &Paste &Pegar Select All Seleccionar todo Find Encontrar View Ver &Stop De&tener &Reload &Recargar Zoom &In A&umentar Zoom &Out &Disminuir Reset Normal &Page Source &Ver código fuente %1 - QupZilla %1 - QupZilla Preferences Preferences Preferencias QupZilla QupZilla General General Appearance Apariencia Tabs Pestañas Browsing Navegación Fonts Fuentes Keyboard Shortcuts Atajos de teclado Downloads Descargas Password Manager Gestor de contraseñas Privacy Privacidad Notifications Notificaciones Extensions Extensiones Other Otros Use current Usar actual Note: You cannot delete active profile. Nota: no puede eliminar el perfil activo. Create New Crear nuevo Delete Eliminar <b>Launching</b> <b>Inicio</b> After launch: Cuando se inicie: Open blank page Abrir una página en blanco Open homepage Abrir página de inicio Open speed dial Abrir marcación rápida Restore session Restaurar sesión Homepage: Página de inicio: On new tab: Para nueva pestaña: Open blank tab Abrir una página en blanco Open other page... Abrir otra página... <b>Profiles</b> <b>Perfiles</b> Startup profile: Perfil al inicio: Check for updates on start Comprobar actualizaciones al inicio Active profile: Perfil activo: In order to change language, you must restart browser. Para aplicar el cambio de idioma, debe reiniciar el navegador. <b>Language</b> <b>Idioma</b> Available translations: Traducciones disponibles: Don't load tabs until selected No cargar las pestañas hasta seleccionarlas Check to see if QupZilla is the default browser on startup Verificar si QupZilla es el navegador predeterminado al iniciar Check Now Verificar ahora Themes Temas Advanced options Opciones avanzadas <b>Browser Window</b> <b>Ventana del navegador</b> Show StatusBar on start Mostrar barra de estado al inicio Show Bookmarks ToolBar on start Mostrar barra de herramientas de marcadores al inicio Show Navigation ToolBar on start Mostrar barra de herramientas de navegación al inicio <b>Navigation ToolBar</b> <b>Barra de herramientas de navigación</b> Show Home button Mostrar botón de página de inicio Show Back / Forward buttons Mostrar botones Anterior / Siguiente <b>Background<b/> <b>Fondo<b/> Use transparent background Usar fondo transparente Show web search bar Mostrar buscador rapido web Show Add Tab button Mostrar botón de añadir pestaña Show Reload / Stop buttons Mostrar botones Recargar / Detener Tabs behaviour Comportamiento de las pestañas Show tab previews Mostrar previsualización de pestañas Make tab previews animated Previsualización de pestañas animada Hide tabs when there is only one tab Ocultar pestañas cuando sólo haya una pestaña Activate last tab when closing active tab Activar la última pestaña al cerrar la pestaña activa Open new tabs after active tab Abrir pestañas nuevas junto a la pestaña activa Open new empty tabs after active tab Abrir nuevas pestañas vacías después de la pestaña activa Automatically switch to newly opened tab Cambiar automáticamente a la nueva pestaña abierta Don't quit upon closing last tab No salir al cerrar la última pestaña Ask when closing multiple tabs Preguntar al cerrar múltiples pestañas Closed tabs list instead of opened in tab bar Lista de pestañas cerradas en lugar de las abiertas en la barra de pestañas Address Bar behaviour Comportamiento de la barra de dirección Suggest when typing into address bar: Sugerir mientras escribe en la barra de direcciones web: History and Bookmarks Historial y favoritos History Historial Bookmarks Marcadores Nothing Nada Press "Shift" to not switch the tab but load the url in the current tab. Presionar "Shift" para no cambiar la pestaña y cargar la url en la pestaña actual. Propose to switch tab if completed url is already loaded. Always show go icon Siempre mostrar icono "ir" Select all text by double clicking in address bar Seleccionar todo el texto haciendo doble click en la barra de direcciones Select all text by clicking in address bar Seleccionar todo el texto al hacer click en la barra de direcciones Search with Default Engine Buscar con el motor predeterminado Show loading progress in address bar Mostrar progreso de carga en la barra de direccion Fill Llenar Bottom Fin Top Principio Custom color: Color personalizado: Select color Seleccionar color ... ... Reset Reiniciar tamaño Web Configuration Configuración web Allow Netscape Plugins (Flash plugin) Permitir plugins Netscape (Flash plugin) Allow JavaScript Permitir JavaScript Allow JAVA Permitir JAVA Allow DNS Prefetch Permitir DNS Prefetch Enable XSS Auditing try to detect possible XSS attacks when executing javascript Habilitar Auditoría XSS Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Imprimir fondo del elemento Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Incluir enlaces en la cadena de foco Animated scrolling Desplazamiento animado Enable caret browsing Enable spatial navigation Habilitar navegación espacial Zoom text only Ampliar sólo el texto Mouse wheel scrolls La rueda del ratón desplaza lines on page líneas en la página Default zoom on pages: Ampliación predeterminada en las páginas: Local Storage Almacenamiento local Maximum Máximo 50 MB 50 MB 1 1 Maximum pages in cache: Número máximo de páginas en caché: Allow storing network cache on disk Almacenar caché de la red en el disco Store cache in: Guardar cache en: Allow saving history Guardar el historial Delete history on close Eliminar el historial al cerrar Allow local storage of HTML5 web content Permitir el almacenamiento local de contenido de red HTML5 Delete locally stored HTML5 web content on close Borrar el contenido de red HTML5 almacenado localmente al cerrar Delete now Eliminar ahora Proxy Configuration Configuración proxy Proxy Auto-Config (.pac) file Archivo de autoconfiguración de proxy (.pac) Reload Recargar HTTP HTTP SOCKS5 SOCKS5 Port: Puerto: Username: Nombre de usuario: Password: Contraseña: Don't use on: No utilizar en: Manual configuration Configuración manual System proxy configuration Configuración proxy del sistema Do not use proxy No utilizar proxy <b>Exceptions</b> <b>Excepciones</b> Server: Servidor: Use different proxy for https connection Usar un proxy diferente para la conexión https Use script for automatic configuration: Usar script para configuración automática: <b>Font Families</b> <b>Familias de fuentes</b> Standard Standard Fixed Fijo Serif Serif Sans Serif Sans Serif Cursive Cursiva Fantasy Fantasy <b>Font Sizes</b> <b>Tamaño de las fuentes</b> Fixed Font Size Tamaño de la fuente fija Default Font Size Tamaño de la fuente predeterminada Minimum Font Size Tamaño mínimo de la fuente Minimum Logical Font Size Tamaño mínimo de la fuente lógica <b>Shortcuts</b> <b>Atajos</b> Switch to tabs with Alt + number of tab Cambiar entre pestañas con Alt + número de la pestaña Load speed dials with Ctrl + number of speed dial Cargar marcación rápida con Ctrl + número de la marcación rápida Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>Ubicación de la descarga</b> Ask everytime for download location Preguntar siempre dónde descargar los archivos Use defined location: Utilizar una ubicación predefinida: <b>Download Options</b> <b>Opciones de descarga</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Utilizar diálogo nativo del sistema de archivos (podría causar problemas al descargar contenido seguro SSL) Close download manager when downloading finishes Cerrar el gestor de descargas cuando las descargas finalicen <b>External download manager</b> <b>Gestor de descargas externo</b> Use external download manager Utilizar un gestor de descargas externo Executable: Ejecutable: Arguments: Argumentos: Leave blank if unsure Dejar en blanco si no esta seguro <b>%d</b> will be replaced with URL to be downloaded <b>%d</b> será reemplazado con la URL a descargar <b>AutoFill options</b> <b>Opciones de autocompletado</b> Allow saving passwords from sites Permitir guardar contraseñas de los sitios Send Referer header to servers Enviar el encabezado del referente a los servidores <b>Cookies</b> <b>Cookies</b> Send Do Not Track header to servers Decir a los sitios web que no quiero ser rastreado <b>Other</b> <b>Otros</b> Manage CA certificates Gestionar certificados CA Certificate Manager Gestor de certificados <b>SSL Certificates</b> <b>Certificados SSL</b> <b>JavaScript</b> <b>JavaScript</b> Manage JavaScript privacy options Administrar las opciones de privacidad de JavaScript JavaScript options Opciones de JavaScript Cookies Manager Gestor de cookies Manage Cookies Administrar Cookies <b>HTML5 Permissions</b> <b>Permisos de HTML5</b> Manage HTML5 permissions Administrar permisos de HTML5 HTML5 Permissions Permisos de HTML5 <b>Notifications</b> <b>Notificaciones</b> Use OSD Notifications Utilizar notificaciones OSD Use Native System Notifications (Linux only) Utilizar sistema de notificaciones nativo (sólo Linux) Do not use Notifications No utilizar notificaciones Expiration timeout: Duración: seconds segundos <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Nota: </b>Puede cambiar la posición de la notificación OSD arrastrándola por la pantalla. StyleSheet automatically loaded with all websites: Hoja de estilos cargada automáticamente en todos los sitios web: Languages Idiomas <b>Preferred language for web sites</b> <b>Idioma preferido para mostrar las páginas web</b> <b>Change browser identification</b> <b>Cambiar identificacion del navegador</b> User Agent Manager Agente de usuario Default Predeterminado Set as default Dejar como predeterminado OSD Notification Notificación OSD Drag it on the screen to place it where you want. Arrástrela por la pantalla para situarla donde quiera. Choose download location... Seleccione la ubicación de la descarga... Choose stylesheet location... Seleccione la ubicación de la hoja de estilos... Deleted Eliminado Choose executable location... Seleccione la ubicación del ejecutable... Choose cache path... Seleccionar directorio de cache... New Profile Nuevo perfil Enter the new profile's name: Introduzca el nombre del nuevo perfil: Error! ¡Error! This profile already exists! ¡Este perfil ya existe! Cannot create profile directory! ¡No se puede crear el directorio del perfil! Confirmation Confirmación Are you sure to permanently delete "%1" profile? This action cannot be undone! ¿Está seguro de eliminar permanentemente el perfil "%1"? ¡Esta acción no puede deshacerse! Select Color Seleccionar color QObject Native System Notification Sistema de notificación nativo Save file as... Guardar archivo como... The file is not an OpenSearch 1.1 file. Este archivo no es un archivo OpenSearch 1.1. <not set in certificate> <no establecido en el certificado> Unknown size Tamaño desconocido KB MB GB Executable: Ejecutable: Arguments: Argumentos: Cannot start external program No se puede iniciar el programa externo Cannot start external program! %1 ¡No se puede iniciar el programa externo! %1 QtWin Open new tab Abrir nueva pestaña Opens a new tab if browser is running Abrir una pestaña nueva si el navegador está ejecutándose Open new window Abrir nueva ventana Opens a new window if browser is running Abrir una ventana nueva si el navegador está ejecutándose Open download manager Abrir el gestor de descargas Opens a download manager if browser is running Abrir el gestor de descargas si el navegador está ejecutándose QupZilla QupZilla QupZilla Private Browsing Enabled Navegación privada habilitada IP Address of current page Dirección IP de la página actual &About QupZilla &Acerca de QupZilla Pr&eferences &Preferencias Quit Salir &File &Archivo &New Window &Nueva ventana New Tab Nueva pestaña Open Location Introducir dirección URL Open &File... Abrir &Archivo... Close Tab Cerrar pestaña Close Window Cerrar ventana &Save Page As... &Guardar como... Save Page Screen Guardar pantallazo de la página Send Link... Enviar enlace... &Print... &Imprimir... Import bookmarks... Importar marcadores... &Edit &Editar &Undo &Deshacer &Redo &Rehacer &Cut &Cortar C&opy C&opiar &Paste &Pegar Select &All &Seleccionar todo &Find &Buscar &View &Ver &Navigation Toolbar Barra de herramientas de &navegación &Bookmarks Toolbar Barra de herramientas de &marcadores Sta&tus Bar &Barra de estado &Menu Bar Barra de m&enú &Tabs on Top &Pestañas arriba &Fullscreen &Pantalla completa &Stop &Detener &Reload Re&cargar Character &Encoding &Codificación de caracteres Enable &Caret Browsing Toolbars Barras de herramientas Sidebars Panel lateral Zoom &In &Aumentar tamaño Zoom &Out &Reducir tamaño Reset Reiniciar tamaño &Page Source Código &fuente de la página Hi&story &Historial &Back &Anterior &Forward &Siguiente &Home &Inicio Show &All History &Mostrar todo el historial Closed Tabs Pestañas cerradas recientemente Recently Visited Visitadas recientemente Most Visited Las más visitadas &Bookmarks &Marcadores Bookmark &This Page &Añadir esta página a marcadores Bookmark &All Tabs Añadir &todas las pestañas a marcadores Organize &Bookmarks &Organizar marcadores &Tools He&rramientas &Web Search &Caja de búsqueda Page &Info &Información de la página &Download Manager Gestor de &descargas &Cookies Manager Gestor de &cookies &AdBlock &Bloqueador de publicidad RSS &Reader Lector &RSS Web In&spector Inspect&or Web Clear Recent &History &Limpiar historial reciente New &Private Window Nueva Ventana &Privada &Help A&yuda About &Qt Acerca de &Qt Information about application Información acerca de la aplicación Configuration Information Información de la configuración Report &Issue &Informar de un fallo Restore &Closed Tab &Restaurar pestaña cerrada (Private Browsing) (Navegación privada) Empty Vacío Restore All Closed Tabs Restaurar todas las pestañas cerradas Clear list Limpiar lista Other Otros %1 - QupZilla %1 - QupZilla HTML files Archivos HTML Image files Archivos de imágen Text files Archivos de texto All files Todos los archivos Open file... Abrir archivo... QupZilla %1 (%2) QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Hay %1 pestañas abiertas y su sesión no será guardada ¿Está seguro de salir de QupZilla? Don't ask again No volver a preguntar There are still open tabs Aún hay pestañas abiertas QupZillaSchemeReply No Error Ningún error Not Found No encontrado Report Issue Informar de un fallo If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Si experimenta problemas con QupZilla, por favor intente deshabilitar todos los plugins. <br/>Si esto no ayuda, entonces rellene este formulario: Your E-mail Su correo electrónico Issue type Tipo de error Issue description Descripción del error Send Enviar E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. El correo electrónico es opcional<br/><b>Nota: </b>Por favor, lea cómo realizar un informe de error <a href=%1>aquí</a> primero. Please fill out all required fields! ¡Por favor, rellene todos los campos requeridos! Start Page Página de inicio Search on Web Buscar en la web Search results provided by DuckDuckGo Resultados de búsqueda proporcionados por DuckDuckGo About QupZilla Acerca de QupZilla <h1>Private Browsing</h1> <h1>Navegación privada</h1> Information about version Información acerca de la versión Copyright Copyright Version Versión WebKit version Versión WebKit Main developer Desarrollador principal Contributors Contribuidores Translators Traductores Speed Dial Marcación rápida Add New Page Añadir página nueva Edit Editar Remove Eliminar Reload Recargar Are you sure to remove this speed dial? Esta seguro de remover este marcado rapido? Load title from page Cargar título desde la página Url Dirección Title Nombre Apply Aplicar Close Cerrar New Page Página nueva Speed Dial settings Configuración de la marcación rápida Placement: Ubicación: Auto Auto Cover Cubierta Fit Ajustar Fit Width Ajustar horizontalmente Fit Height Ajustar verticalmente Use background image Usar imágen de fondo Select image Seleccionar imágen Maximum pages in a row: Páginas máximas por fila: Change size of pages: Cambiar el tamaño de las páginas: Center speed dials Centrar marcados rapidos Restore Session Restaurar sesion Oops, QupZilla crashed. Oops, QupZilla se cerro inesperadamente. We apologize for this. Would you like to restore the last saved state? Nos disculpamos por esto. ¿Le gustaria restaurar el ultimo estado de la sesion? Try removing one or more tabs that you think cause troubles Intente quitar las pestañas que piense causen problemas (paginas que no sigan el estandar de html web) Or you can start completely new session O puede comenzar una sesion nueva limpia Configuration Information Información de la configuración This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Esta página contiene información acerca de la configuración actual de QupZilla relevante para resolver problemas. Por favor incluya esta información cuando envíe informes de error. Browser Identification Identificación del navegador Paths Rutas Build Configuration Configuración de la compilación Preferences Preferencias Option Opción Value Valor Extensions Extensiones Name Nombre Author Autor Description Descripción Application version Versión de la aplicación Qt version Versión Qt Build time Fecha de compilación Platform Plataforma Profile Perfil Settings Preferencias Saved session Sesión guardada Pinned tabs Pestañas fijas Data Datos Themes Temas Translations Traducciones Disabled Deshabilitado <b>Enabled</b> <b>Habilitado</b> Debug build Depurar construcción WebGL support Soporte WebGL Windows 7 API API Windows 7 KDE integration Integración KDE Portable build Construcción portable No available extensions. No hay extensiones disponibles. RSSManager RSS Reader Lector RSS Empty Vacío Add feed Añadir canal Edit feed Editar canal Delete feed Eliminar canal Optimize Database Optimizar la base de datos Reload Recargar News Noticias Loading... Cargando... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. No tiene ningún canal RSS.<br/> Por favor, añada alguno con el icono RSS de la barra de navegación en sitios que ofrezcan canales RSS. Add new feed Añadir un canal nuevo Please enter URL of new feed: Por favor, introduzca la dirección del nuevo canal: New feed Nuevo canal Fill title and URL of a feed: Introduzca el nombre y la dirección de un canal RSS: Feed title: Nombre del canal RSS: Feed URL: Dirección del canal RSS: Edit RSS Feed Editar canal RSS Open link in current tab Abrir enlace en la pestaña actual Open link in new tab Abrir enlace en una nueva pestaña Error in fetching feed Error al obtener canal RSS RSS feed duplicated Canal RSS duplicado You already have this feed. Ya tiene agregado este canal RSS. RSSNotification Add this feed into Añadir este canal en Add Añadir RSS feed <b>"%1"</b> Canal RSS <b>"%1"</b> Internal Reader Lector interno Other... Otro... Liferea not running Liferea no se está ejecutando Liferea must be running in order to add new feed. Liferea debe estar ejecutándose para añadir un nuevo canal. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Para añadir este canal RSS en otra aplicación, por favor use esta información:<br/><br/><b>Título: </b>%1<br/><b>Dirección: </b>%2<br/><br/>La dirección de este canal se ha copiado al portapaleles. Add feed into other application Añadir canal en otra aplicación RSSWidget Add RSS Feeds from this site Añadir canales RSS desde este sitio Untitled feed Canal sin título Add Añadir RecoveryWidget Start New Session Comenzar sesion nueva Restore Restaurar Window %1 Ventana %1 RegisterQAppAssociation Warning! Advertencia! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) Hay algunos problemas. Por favor, reinstale QupZilla. Talvez ejecutarlo nuevamente con derechos de administrador haga magia para usted ;) RssIcon Add RSS from this page... Agregar RSS desde esta página... SSLManager Certificate Manager Gestor de certificados CA Authorities Certificates Certificados de Autoridades CA Show info Mostrar información This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Esta es una lista con los certificados de autoridades CA alamcenados en la ruta estándard del sistema y en las rutas especificadas por el usuario. Local Certificates Certificados locales Import Importar Remove Eliminar This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Esta es una lista con los certificados locales almacenados en su perfil de usuario. También contiene todos los certificados que han recibido una excepción. Settings Preferencias Add Añadir If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Si los certificados de autoridades CA no se cargaron automáticamente desde el sistema, puede especificar manualmente la ruta donde están almacenados. <b>NOTE:</b> Setting this option is a high security risk! <b>NOTA:</b> ¡Establecer esta opción supone un alto riesgo de seguridad! Ignore all SSL Warnings Ignorar todos los avisos SSL All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Todos los certificados deben tener el sufijo .crt. Después de añadir o eliminar rutas de certificados, es necesario reiniciar QupZilla para que los cambios surjan efecto. Choose path... Elegir ruta... Import certificate... Importar certificado... Certificate Informations Información del certificado SearchEnginesDialog Manage Search Engines Administrar motores de búsqueda Add... Añadir... Remove Eliminar Edit Editar Set as default Establecer como predeterminado Up Subir Down Bajar Search Engine Motor de búsqueda Shortcut Palabra clave Defaults Predeterminados Add Search Engine Añadir motor de búsqueda Remove Engine Quitar motor You can't remove the default search engine.<br>Set a different engine as default before removing %1. No puede quitar el motor de busqueda predeterminado.<br>Establesca otro motor de busqueda como predeterminado antes de quitar a %1. Edit Search Engine Editar motor de búsqueda SearchEnginesManager Search Engine Added Motor de búsqueda añadido Search Engine "%1" has been successfully added. Motor de búsqueda "%1" ha sido añadido satisfactoriamente. Search Engine is not valid! ¡El motor de búsqueda no es válido! Error Error Error while adding Search Engine <br><b>Error Message: </b> %1 Error al añadir el motor de búsqueda <br><b>Mensaje de error:</b> %1 SearchToolBar No results found. Ningún resultado encontrado. SearchToolbar Search: Buscar: Search... Buscar... Highlight Resaltar Case sensitive Coincidir con capitalización SideBar Bookmarks Marcadores History Historial SiteInfo Site Info Información del sitio General General Media Media Databases Bases de datos Security Seguridad Size: Tamaño: Site address: Dirección del sitio: Encoding: Codificación: Meta tags of site: Meta etiquetas del sitio: Tag Etiqueta Value Valor <b>Security information</b> <b>Información de seguridad</b> Details Detalles Image Imágen Image address Dirección de la imágen <b>Preview</b> <b>Vista previa</b> <b>Database details</b> <b>Detalles de la base de datos</b> Name: Nombre: Path: Ruta: <database not selected> <base de datos no seleccionada> <not set in certificate> <no definida en el certificado> No databases are used by this page. No se usan bases de datos en esta página. <b>Connection is Encrypted.</b> <b>La conexión está encriptada.</b> <b>Your connection to this page is secured with this certificate: </b> <b>La conexión a esta página está segura con este cerficado: </b> <b>Connection Not Encrypted.</b> <b>Conexión no encriptada.</b> <b>Your connection to this page is not secured!</b> <b>¡La conexión a esta página no es segura!</b> Copy Image Location Copiar la ubicación de la imágen Copy Image Name Copiar el nombre de la imágen Save Image to Disk Guardar imágen en el disco Error! ¡Error! This preview is not available! ¡La vista previa no está disponible! Save image... Guardar imágen... Cannot write to file! ¡No se puede escribir el archivo! Preview not available Vista previa no disponible SiteInfoWidget More... Más... Your connection to this site is <b>secured</b>. La conexión a este sitio es <b>segura</b>. Your connection to this site is <b>unsecured</b>. La conexión a este sitio es <b>insegura</b>. This is your <b>%1</b> visit of this site. Esta es su visita <b>%1</b> a este sitio. You have <b>never</b> visited this site before. Usted <b>nunca</b> ha visitado este sitio. first primero second segundo third tercero SourceViewer Source of Fuente de File Archivo Load in page Save as... Guardar como... Close Cerrar Edit Editar Undo Deshacer Redo Rehacer Cut Cortar Copy Copiar Paste Pegar Select All Seleccionar todo Find Buscar Go to Line... Ir a la línea... View Ver Reload Recargar Editable Editable Word Wrap Ajuste de línea Source loaded in page Cannot load in page. Page has been closed. Save file... Guardar archivo... Error! ¡Error! Cannot write to file! No se puede escribir en el archivo! Error writing to file Error escribiendo archivo Source successfully saved Fuente guardada satisfactoriamente Source reloaded Fuente recargada Cannot reload source. Page has been closed. No se puede recargar la fuente. La página ha sido cerrada. Editable changed Editable cambiado Word Wrap changed Ajuste de línea cambiado Enter line number Introducir número de línea SourceViewerSearch Search: Buscar: Search... Buscar... Whole words Palabras completas SpeedDial Image files Archivos de imágen Select image... Seleccionar imágen... Unable to load No se puede cargar SpellCheckDialog SpellCheck Corrector ortográfico <b>Dictionary path</b> <b>Directorio del diccionario</b> Change... Cambiar... <b>User dictionary</b> <b>Diccionario del usuario</b> Add Añadir Remove Quitar Using Hunspell library Usando la biblioteca Hunspell Choose dictionary path... Elejir directorio del diccionario... Add new word... Añadir palabra nueva... Add new word: Añadir palabra nueva: Speller No suggestions No hay sugerencias Add to dictionary Añadir al diccionario Settings Ajustes SqueezeLabelV2 Copy Copiar SslErrorDialog SSL Certificate Error! ¡Error del certificado SSL! Only for this session Solo para esta sesión TabBar &New tab &Nueva pestaña &Stop Tab &Detener pestaña &Reload Tab &Recargar pestaña &Duplicate Tab Du&plicar pestaña D&etach Tab Un&pin Tab Eliminar pestaña &fija &Pin Tab Pestaña &fija Re&load All Tabs &Recargar todas las pestañas &Bookmark This Tab &Añadir esta pestaña a marcadores Bookmark &All Tabs Añadir &todas las pestañas a marcadores Close Ot&her Tabs Cerrar las &otras pestañas Cl&ose &Cerrar Reloa&d All Tabs Re&cargar todas las pestañas Restore &Closed Tab Restaurar &pestaña cerrada Close Tabs Do you really want to close other tabs? TabWidget New Tab Nueva pestaña List of tabs Lista de pestañas Loading... Cargando... No Named Page Página sin nombre Currently you have %1 opened tabs Actualmente tiene %1 pestañas abiertas New tab Nueva pestaña Empty Vacío Restore All Closed Tabs Restaurar todas las pestañas cerradas Clear list Limpiar lista TabbedWebView Loading... Cargando... %1 - QupZilla %1 - QupZilla Inspect Element Inspeccionar elemento ThemeManager <b>Name:</b> <b>Nombre:</b> <b>Author:</b> <b>Autor:</b> <b>Description:</b> <b>Descripción:</b> License Licencia ToolButton Stop Detener Reload Recargar Updater Update available Actualización disponible New version of QupZilla is ready to download. Nueva versión de QupZilla lista para descargar. Update Actualizar UserAgentDialog User Agent Manager Agente de usuario Change global User Agent Cambiar agente de usuario global Use different User Agents for specified sites Usar un Agente de Usuario distinto para cierto witio Site Sito web User Agent Agente de usuario Add Añadir Remove Eliminar Edit Editar Add new site Agregar sitio web Edit site Editar sitio web Site domain: Cominio del sitio: User Agent: Agente de usuario: WebInspectorDockWidget Web Inspector Inspector Web WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? QupZilla no puede manejar enlaces <b>%1:</b>. El enlace requerido es <ul><li>%2</li></ul>. ¿Desea que QupZilla intente abrir este enlace en otra aplicación del sistema? Remember my choice for this protocol Recordar mi elección para este protocolo External Protocol Request Solicitud de protocolo externo To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Para mostrar esta página, QupZilla necesita enviar información que repetirá cualquier acción (como una búsqueda o una confirmación de compra) realizada anteriormente Confirm form resubmission Confirmar el reenvío del formulario Select files to upload... Seleccionar archivos para subir... Server refused the connection El servidor rechazó la conexión Server closed the connection El servidor cerró la conexión Server not found Servidor no encontrado Connection timed out La conexión expiró Untrusted connection Conexión no fiable Temporary network failure Fallo de la red temporal Proxy connection refused Conexión proxy rechazada Proxy server not found Servidor proxy no encontrado Proxy connection timed out Expiró el tiempo de conexión al proxy Proxy authentication required Autentificación proxy requerida Content not found Contenido no encontrado Unknown network error Error de red desconocido AdBlocked Content Contenido publicitario bloqueado Blocked by <i>%1</i> Bloqueado por <i>%1</i> Content Access Denied Denegado el acceso al contenido Error code %1 Código de error %1 Failed loading page Falló la carga de la página QupZilla can't load page. QupZilla no puede cargar la página. QupZilla can't load page from %1. QupZilla no puede cargar la página de %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Compruebe errores de escritura en la dirección como <b>ww.</b>ejemplo.com en lugar de <b>www.</b>ejemplo.com If you are unable to load any pages, check your computer's network connection. Si no puede cargar ninguna página, compruebe la conexión a la red de su ordenador. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Si su ordenador o red están protegidos por un cortafuegos o proxy, asegúrese de que QupZilla tiene permitido el acceso a la red. Try Again Volver a intentar JavaScript alert Alerta JavaScript Prevent this page from creating additional dialogs Prevenir que esta página cree diálogos adicionales Choose file... Elegir archivo... Cannot read data from <b>%1</b>. Upload was cancelled! No se pueden leer datos desde <b>%1</b>. ¡La subida se canceló! Cannot read file! ¡No se puede leer el archivo! WebSearchBar Manage Search Engines Gestionar motores de búsqueda Add %1 ... Añadir %1 ... Paste And &Search Pegar y &buscar Clear All Limpiar todo Show suggestions Mostrar sugerencias Search when engine changed Buscar cuando cambie el motor de búsqueda WebView No Named Page Página en blanco Create Search Engine Crear motor de búsqueda Cut Cortar Copy Copiar Paste Pegar Select All Seleccionar todos Default Predeterminado Left to Right Izquierda a derecha Right to Left Derecha a izquierda Bold Negrita Italic Cursiva Underline Subrayado &Reload &Recargar S&top &Detener Delete Eliminar &Back &Anterior &Forward &Siguiente This frame Este marco Show &only this frame M&ostrar solamente este marco Show this frame in new &tab Mostrar este marco en una nueva &pestaña Print frame Imprimir marco Zoom &in &Aumentar tamaño &Zoom out &Reducir tamaño Reset Reiniciar tamaño Show so&urce of frame Mostrar código f&uente del marco Book&mark page Añadir esta página a &marcadores &Save page as... &Guardar como... &Copy page link Cop&iar el enlace de la página Send page link... Enviar enlace de la página... &Print page &Imprimir página Select &all Seleccionar &todo Validate page Validar página Show so&urce code Ver código &fuente de la página Show info ab&out site Ver &información de la página Open link in new &tab Abrir enlace en una nueva &pestaña Open link in new &window Abrir enlace en una nueva &ventana B&ookmark link Añadir enlace a &marcadores &Save link as... &Guardar enlace como... Send link... Enviar enlace... &Copy link address Copi&ar la ruta del enlace Show i&mage Mostrar &imágen Copy im&age Co&piar imágen Copy image ad&dress C&opiar la ruta de la imágen &Save image as... &Guardar imágen como... Send image... Enviar imágen... Send text... Enviar texto... Google Translate Traductor de Google Dictionary Diccionario Go to &web address Ir a &dirección web Search "%1 .." with %2 Buscar "%1 .." con %2 Search with... Buscar con... &Play &Reproducir &Pause &Pausa Un&mute &Activar sonido &Mute &Desactivar sonido &Copy Media Address Copi&ar la ruta del contenido media &Send Media Address &Enviar la ruta del contenido media Save Media To &Disk Guardar el contenido media al &disco Check &Spelling C&omprobar ortográfia Languages Idiomas jsAlert Prevent this page from creating additional dialogs Prevenir que esta página cree diálogos adicionales qupzilla-1.6.0/translations/es_VE.ts000066400000000000000000010444071226107126500174650ustar00rootroot00000000000000 AboutDialog About QupZilla Acerca de QupZilla Authors Autores Authors and Contributors Autores y colaboradores < About QupZilla < Acerca de QupZilla <p><b>Application version %1</b><br/> <p><b>Versión que ejecuta es %1</b><br/> <b>WebKit version %1</b></p> <b>Versión de WebKit %1</b></p> <small>Build time: %1 </small></p> <small>Fecha de compilación: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Desarrollador princial:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Colaboradores:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Traductores:</b><br/>%1</p> AcceptLanguage Preferred Languages Idiomas preferidos Add... Agregar... Remove Eliminar Up Subir Down Bajar Personal [%1] Personal [%1] AdBlockAddSubscriptionDialog Add Subscription Agregar Subscripcion Title: Titulo: Address: Direccion: Add new subscription to AdBlock: Agregar nueva subscripcion AdBlock: AdBlockCustomList Custom Rules Reglas personalizadas AdBlockDialog AdBlock Configuration Configuración del bloqueador de publicidad Enable AdBlock Habilitar bloqueo de publicidad Search... Buscar... Options Opciones AdBlock AdBlock (Filtro Publicidad) Use only essential part of EasyList (for performance reasons) Add Rule Agregar regla Remove Rule Remover regla Add Subscription Agregar Subscripcion Remove Subscription Remover Subscripcion Update Subscriptions Actualizar Subscripciones Learn about writing rules... Aprender acerca de las reglas... AdBlockIcon AdBlock lets you block unwanted content on web pages El bloqueador de publicidad le permite bloquear contenido no deseado en las páginas Blocked popup window Ventana emergente bloqueada AdBlock blocked unwanted popup window. El bloqueador de publicidad ha bloqueado una ventana emergente no deseada. AdBlock Bloqueador de publicidad Show AdBlock &Settings Ver &preferencias del bloqueador de publicidad Disable on %1 Disable only on this page Blocked Popup Windows Ventanas emergentes bloqueadas %1 with (%2) %1 con (%2) No content blocked Ningún contenido bloqueado Blocked URL (AdBlock Rule) - click to edit rule URL bloqueada (regla del bloqueador de publicidad) - click para editar regla AdBlockManager Do you want to add <b>%1</b> subscription? Realmente quieres agregar la subscripcion <b>%1</b>? AdBlock Subscription Subscripcion AdBlock EasyList AdBlockTreeWidget Add Rule Agregar regla Remove Rule Remover regla Add Custom Rule Agregar regla personalizada Please write your rule here: Por favor, escriba su regla aqui: %1 (recently updated) %1 (actualizada) AddAcceptLanguage Add Language Agregar idioma Choose preferred language for web sites Elegir idioma.preferido para páginas web Personal definition: Definición personal: AesInterface Warning! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. AutoFill Database (plaintext) Database (encrypted) Enter Master Password Permission is required, please enter Master Password: Warning! Entered password is wrong! This backend needs a master password to be set! QupZilla just switches to its default backend AutoFillManager Passwords are stored in: Change backend Backend options Passwords Contraseñas Server Servidor Username Nombre de usuario Password Contraseña Import/Export Importar/Exportar Show Passwords Mostras contraseñas Edit Editar Remove Eliminar Remove All Eliminar todo Exceptions Excepciones Import Passwords from File... Importar contraseñas desde un archivo... Export Passwords to File... Exportar contraseñas a un archivo... Search Change backend... Change backend: Are you sure that you want to show all passwords? ¿Está seguro que desea mostrar todas las contraseñas? Hide Passwords Ocultar contraseñas Confirmation Confirmación Are you sure to delete all passwords on your computer? ¿Está seguro de elimiar todas las contraseñas de su ordenador? Edit password Editar contraseña Change password: Cambiar contraseña: Choose file... Elegir archivo... Cannot read file! ¡No se puede leer el archivo! Successfully imported Importada satisfactoriamente Error while importing! ¡Error al importar! Cannot write to file! ¡No se puede escribir el archivo! Successfully exported Exportada satisfactoriamente AutoFillNotification Update Remember Never For This Site Not Now on %1 for <b>%1</b> Do you want QupZilla to update saved password %1? Do you want QupZilla to remember the password %1 %2? AutoFillWidget Choose username to login Login Login as <b>%1</b> BookmarkIcon Bookmark this Page Agregar esta pagina a favoritos Edit this bookmark Editar este favorito BookmarksImportDialog Import Bookmarks Importar favoritos <b>Import Bookmarks</b> <b>Importar favoritos</b> From File Desde un archivo Internet Explorer Choose browser from which you want to import bookmarks: Elegir navegador del que desee importar favoritos: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Nota:</b> Actualmente, importa solamente desde archivos Html o directorios de "marcadores". Choose... Elegir... Try to fetch icons for all bookmarks (may take a while) Fetching icons, please wait... Obteniendo iconos, por favor espere... Title Nombre Url Dirección Next Siguiente Cancel Cancelar <b>Importing from %1</b> <b>Importando desde %1</b> Finish Terminar Please press Finish to complete importing process. Por favor, presione Terminar para completar el proceso de importación. Error! ¡Error! The file doesn't contain any bookmark. Choose directory... Elegir directorio... Choose file... Elegir archivo... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox almacena sus favoritos en <b>places.sqlite</b> de basede datosSQLite. Este archivo suele encontrarse en Please choose this file to begin importing bookmarks. Elegir este archivo para empezar a importar favoritos. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Google Chrome almacena sus favoritos en el archivo de texto <b>Bookmarks</b>. Este archivo suele encontrarse en Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera almacena sus favoritos en el archivo de texto <b>bookmarks.adr</b>. Este archivo suele encontrarse en You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Puede importar favoritos desde cualquier navegador que soporte la exportación en HTML. El archivo suele tener estos sufijos Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Please choose this folder to begin importing bookmarks. Elegir este directorio para empezar a importar favoritos. No Error Sin errores Unable to open file. No se puede abrir el archivo. Cannot evaluate JSON code. No se puede evaluar el código JSON. File does not exist. El archivo no existe. Unable to open database. Is Firefox running? No se puede abrir la base de datos. ¿Ha probado cerrando Firefox? Directory does not exist. The directory does not contain any bookmarks. BookmarksManager Bookmarks Favoritos Optimize Database Optimizar la base de datos Import Bookmarks Importar favoritos Add Folder Agregar directorio Title Nombre Url Dirección Expand All Collapse All Add new folder Agregar directorio nueva Choose parent folder for new folder: Choose name for new bookmark folder: Elegir nombre para nuevo directorio de favoritos: Add new subfolder Agregar subdirectorio nueva Choose name for new subfolder in bookmarks toolbar: Nombre para el subdirectorio nuevo en la barra de herramientas de favoritos: Rename Folder Renombrar directorio Choose name for folder: Elegir nombre para el directorio: Add Subfolder Agregar subdirectorio Rename folder Renombrar directorio Remove folder Eliminar directorio Open link in current &tab Abrir enlace en la &pestaña actual Open link in &new tab Abrir enlace en una &nueva pestaña Move bookmark to &folder Mover marcador a &directorio Change icon Cambiar icono Rename bookmark Renombrar marcador Remove bookmark Eliminar marcador <b>Warning: </b>You already have bookmarked this page! <b>Aviso: </b>¡Ya ha añadido esta página a los favoritos! Choose name and location of this bookmark. Elegir nombre y localización del favorito marcado. Add New Bookmark Agregar nuevo marcador Choose folder for bookmarks: Elegir directorio para favoritos: Bookmark All Tabs Agregar todas las pestañas a favoritos BookmarksModel Bookmarks In Menu Favoritos en el menú Bookmarks In ToolBar Barra de herramientas de favoritos Unsorted Bookmarks Favoritos sin clasificar BookmarksSideBar Search... Buscar... Open link in current &tab Abrir enlace en la &pestaña actual Open link in &new tab Abrir enlace en una &nueva pestaña Copy address Copiar dirección &Delete &Eliminar BookmarksToolbar &Bookmark Current Page &Agregar esta página a favoritos Bookmark &All Tabs Agregar &todas las pestañas a favoritos &Organize Bookmarks &Organizar favoritos Show Most &Visited Ver los más &visitados Show Only Icons Mostrar solo Iconos &Hide Toolbar &Ocultar barra de herramientas Open bookmark Open bookmark in new tab Move right Mover a la derecha Move left Mover a la izquierda Edit bookmark Editar marcador Remove bookmark Eliminar marcador Edit bookmark: Editar marcador: Title: Nombre: Url: Dirección: Edit Bookmark Editar marcador Most visited Más visitados Sites you visited the most Sitios más visitados Empty Vacío BookmarksTree Bookmarks New Folder... BookmarksWidget Add to Speed Dial Agregar a la marcación rápida Save Guardar Name: Nombre: Folder: directorio: Remove from Speed Dial Quitar de la marcación rápida Remove Eliminar BrowsingLibrary Library Biblioteca Search... Buscar... History Historial Bookmarks Favoritos RSS RSS Database Optimized Base de datos optimizada Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 Base de datos optimizada satisfactoriamente.<br/><br/><b>Tamaño de la base de datos antes: </b>%1<br/><b>Tamaño de la base de datos después: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Emitido para</b> Common Name (CN): Nombre común (CN): Organization (O): Organización (O): Organizational Unit (OU): Unidad organizativa (OU): Serial Number: Número de serie: <b>Issued By</b> <b>Emitido por</b> <b>Validity</b> <b>Validez</b> Issued On: Emitido el: Expires On: Expira el: ClearPrivateData Clear Recent History Limpiar historial reciente Choose what you want to delete: Elegir lo que desea eliminar: Clear history Limpiar historial Clear cache Limpiar caché Clear icons Limpiar iconos <b>Clear Recent History</b> <b>Limpiar historial reciente</b> Earlier Today Hoy Week Semana Month Mes All Todo Clear web databases Limpiar guardados en Base de datos Clear local storage Limpiar guardados localmente Clear cookies Limpiar cookies ClickToFlash Object blocked by ClickToFlash Objetos bloqueados por ClickToFlash Show more information about object Ver más información del objeto Delete object Eliminar objeto Add %1 to whitelist Agregar %1 a la lista blanca Flash Object Objeto Flash <b>Attribute Name</b> <b>Nombre del atributo</b> <b>Value</b> <b>Valor</b> No more information available. No hay más información disponible. CookieManager Cookies Cookies Stored Cookies Cookies guardadas Find: Buscar: These cookies are stored on your computer: Estas cookies están almacenadas en su ordenador: Server Servidor Cookie name Nombre de la cookie Name: Nombre: Value: Valor: Server: Servidor: Path: Ruta: Secure: Seguro: Expiration: Caducidad: <cookie not selected> <cookie no seleccionada> Remove all cookies Eliminar todas las cookies Remove cookies Eliminar cookies Cookie Filtering Filtrado de Cookies <b>Cookie whitelist</b> <b>Lista blanca</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Cookies de estos servidores SIEMPRE seran aceptados (incluso si tu tienes desabilitado salvarlos) Add Agregar Remove Eliminar <b>Cookie blacklist</b> <b>Lista negra</b> Cookies from these servers will NEVER be accepted Cookies de estos sitios nunca seran aceptados Settings <b>Cookie Settings</b> Allow storing of cookies Delete cookies on close Match domain exactly Filter tracking cookies <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! Search Buscar Confirmation Confirmación Are you sure to delete all cookies on your computer? ¿Está seguro de eliminar todas las cookies de su ordenador? Secure only Sólo las seguras All connections Todas las conexiones Session cookie Cookie de sesión Remove cookie Eliminar cookie Add to whitelist Agregar a confiados Add to blacklist Agregar a negados DownloadFileHelper Save file as... Guardar archivo como... NoNameDownload DescargaSinNombre DownloadItem Remaining time unavailable Tiempo restante no disponible Error: Cannot write to file! ¡Error: no se puede escribir el archivo! Done - %1 Hecho - %1 Cancelled Cancelado few seconds pocos segundos %n seconds %n minutes %n hours Unknown speed Velocidad desconocida kB/s MB/s GB/s Unknown size Tamaño desconocido %2 - unknown size (%3) %2 - tamaño desconocido (%3) Remaining %1 - %2 of %3 (%4) Restante %1 - %2 de %3 (%4) Cancelled - %1 Cancelado - %1 Delete file Eliminar archivo Do you want to also delete dowloaded file? ¿Desea eliminar también el archivo descargado? Open File Abrir archivo Open Folder Abrir directorio Go to Download Page Ir a la página de descarga Copy Download Link Copiar enlace de descarga Cancel downloading Cancelar descarga Remove Eliminar Error Error Not found No encontrado Sorry, the file %1 was not found! Lo siento, el archivo %1 no se encontro! Error: Error: DownloadManager Download Manager Gestor de descargas Clear Limpiar %1% of %2 files (%3) %4 remaining %1% de %2 archivos (%3) %4 restantes %1% - Download Manager Download Finished Descarga finalizada All files have been successfully downloaded. Todos los archivos se han descargado satisfactoriamente. Warning Aviso Are you sure to quit? All uncompleted downloads will be cancelled! ¿Está seguro de salir? ¡Todas las descargas incompletas serán canceladas! DownloadOptionsDialog Opening Abriendo Copy download link You have chosen to open Ha elegido abrir which is a: el cual es un: What should QupZilla do with this file? ¿Qué debería hacer QupZilla con este archivo? Open... Abrir... Save File Guardar archivo Download with External Manager from: de: Opening %1 Abriendo %1 Download link copied. EditSearchEngine Name: Nombre: Url: Url: Shortcut: Palabra clave: Icon: Icono: <b>Note: </b>%s in url or post data represent searched string Post Data: Change... Cambiar... FileSchemeReply No Error Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. FtpDownloader Cancelled! FtpSchemeReply Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. Unknown command HTML5PermissionsDialog HTML5 Permissions Notifications Site Behaviour Remove Geolocation Allow Deny HTML5PermissionsNotification Remember Allow Deny this site Allow %1 to show desktop notifications? Allow %1 to locate your position? History No Named Page Pagina sin nombre January Enero February Febrero March Marzo April Abril May Mayo June Junio July Julio August Agosto September Septiembre October Octubre November Noviembre December Diciembre HistoryManager History Historial Delete Eliminar Clear All History Limpiar todo el historial Optimize Database Optimizar la base de datos Confirmation Confirmación Are you sure to delete all history? ¿Está seguro de eliminar todo el historial? HistoryModel Title Titulo Address Direccion Visit Date Visitado Visit Count Visitas Today Hoy This Week Esta semana This Month Este mes HistorySideBar Search... Buscar... HistoryView Open link in current tab Abrir enlace en la pestaña actual Open link in new tab Abrir enlace en una nueva pestaña Copy title Copiar titulo Copy address Copiar dirección Remove Eliminar IconChooser Choose icon... Elegir icono... From file Desde archivo Image (.png, .jpg, .jpeg, .gif) Image (.png, .jpg, .jpeg, .gif) Choose file... Elegir archivo... From database Desde base de datos Site Url: URL: Image files Archivos de imagenes JsOptions JavaScript Options Allow JavaScript to: Close windows Open popup windows Change window size Hide menu bar Hide status bar Hide tool bar Access clipboard LicenseViewer License Viewer Visor de licencia LocationBar Enter URL address or search on %1 Introducir la dirección URL o buscar en %1 Paste And &Go Pegar e &ir Clear All Limpiar todo .co.uk Append domain name on ALT + Enter = Should be different for every country .co.uk Show information about this page Ver información de la página LocationCompleterView Switch to tab MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? Always perform this check when starting QupZilla. Default Browser QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. MasterPasswordDialog Encrypted DataBase Settings Set/Change Master Password... Clear Master Password... This backend does not work without a master password. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Current Password: New Password: Confirm Password: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. Warning! You entered a wrong password! New/Confirm password fields do not match! Some data has not been decrypted. The master password was not cleared! Are you sure to clear master password and decrypt data? NavigationBar No Named Page Página sin nombre Back Anterior Forward Siguiente Home Inicio New Tab Nueva pestaña Main Menu Menú principal Exit Fullscreen Salir de pantalla completa Clear history Limpiar historial NetworkManager SSL Certificate Error! ¡Error del certificado SSL! The page you are trying to access has the following errors in the SSL certificate: La página a la que está intentando acceder tiene los siguientes errores en el certificado SSL: <b>Organization: </b> <b>Organización: </b> <b>Domain Name: </b> <b>Nombre del dominio: </b> <b>Expiration Date: </b> <b>Fecha de caducidad: </b> <b>Error: </b> <b>Error: </b> Would you like to make an exception for this certificate? ¿Le gustaría hacer una excepción para este certificado? Authorisation required Username: Nombre de usuario: Password: Contraseña: Save username and password on this site Guardar nombre de usuario y contraseña en este sitio A username and password are being requested by %1. The site says: "%2" Un nombre de usuario y contraseña son requeridos por %1. El sitio dice: "%2" FTP authorisation required Login anonymously A username and password are being requested by %1:%2. Proxy authorisation required Remember username and password for this proxy. A username and password are being requested by proxy %1. Un nombre de usuario y contraseña son requeridos por el proxy %1. PageScreen Page Screen Pantallazo de la página Format: Location: Browse... Save as %1 Choose location... File '%1' already exists. Do you want to overwrite it? File already exists PluginsList Application Extensions Extensiones de aplicación Allow Application Extensions to be loaded Permitir que se carguen las extensiones de aplicación Settings Preferencias WebKit Plugins WebKit plugins <b>Click To Flash Plugin</b> <b>Click To Flash Plugin</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Click To Flash es un plugin que bloquea la carga automática de contenido Flash en la página. Usted siempre puede cargarlo manualmente haciendo click en el icono de reproducción de Flash. Whitelist Lista blanca Add Agregar Remove Eliminar Allow Click To Flash Permitir Click To Flash PluginsManager Add site to whitelist Agregar sitio a la lista blanca Server without http:// (ex. youtube.com) Servidor sin http:// (ej. youtube.com) Error! Error! Cannot load extension! No se pudo cargar extension! PopupWebView Inspect Element PopupWindow File &Save Page As... Save Page Screen Send Link... &Print... Close Edit &Undo &Redo &Cut C&opy &Paste Select All Find View &Stop &Reload Zoom &In Zoom &Out Reset &Page Source %1 - QupZilla %1 - QupZilla Preferences Preferences Preferencias QupZilla QupZilla General General Appearance Apariencia Tabs Pestañas Browsing Navegación Fonts Fuentes Keyboard Shortcuts Downloads Descargas Password Manager Gestor de contraseñas Privacy Privacidad Notifications Notificaciones Extensions Extensiones Other Otros Use current Usar actual Note: You cannot delete active profile. Nota: no puede eliminar el perfil activo. Create New Crear nuevo Delete Eliminar <b>Launching</b> <b>Inicio</b> After launch: Cuando se inicie: Open blank page Abrir una página en blanco Open homepage Abrir página de inicio Open speed dial Abrir marcación rápida Restore session Restaurar sesión Homepage: Página de inicio: On new tab: Para nueva pestaña: Open blank tab Abrir una página en blanco Open other page... Abrir otra página... <b>Profiles</b> <b>Perfiles</b> Startup profile: Perfil al inicio: Check for updates on start Comprobar actualizaciones al inicio Active profile: Perfil activo: In order to change language, you must restart browser. Para aplicar el cambio de idioma, debe reiniciar el navegador. <b>Language</b> <b>Idioma</b> Available translations: Traducciones disponibles: Don't load tabs until selected No cambiar a pestana hasta seleccionarlas Check to see if QupZilla is the default browser on startup Check Now Themes Temas Advanced options Opciones avanzadas <b>Browser Window</b> <b>Ventana del navegador</b> Show StatusBar on start Mostrar barra de estado al inicio Show Bookmarks ToolBar on start Mostrar barra de herramientas de favoritos al inicio Show Navigation ToolBar on start Mostrar barra de herramientas de navegación al inicio <b>Navigation ToolBar</b> <b>Barra de herramientas de navigación</b> Show Home button Mostrar botón de página de inicio Show Back / Forward buttons Mostrar botones Anterior / Siguiente <b>Background<b/> <b>Fondo<b/> Use transparent background Usar fondo transparente Show web search bar Mostrar la barra de busqueda Show Add Tab button Mostrar botón de Agregar pestaña Show Reload / Stop buttons Tabs behaviour Show tab previews Mostrar previsualizaciones Make tab previews animated Previsualizaciones animadas Hide tabs when there is only one tab Ocultar pestañas cuando sólo haya una pestaña Activate last tab when closing active tab Activar la última pestaña al cerrar la pestaña activa Open new tabs after active tab Abrir pestañas nuevas junto a la pestaña activa Open new empty tabs after active tab Automatically switch to newly opened tab Automaticamente cambiar a la pestaña nueva al abrirse Don't quit upon closing last tab No salir al cerrar la última pestaña Ask when closing multiple tabs Preguntar al cerrar múltiples pestañas Closed tabs list instead of opened in tab bar Lista de pestañas cerradas en lugar de las abiertas en la barra de pestañas Address Bar behaviour Suggest when typing into address bar: History and Bookmarks History Bookmarks Nothing Press "Shift" to not switch the tab but load the url in the current tab. Propose to switch tab if completed url is already loaded. Always show go icon Select all text by double clicking in address bar Seleccionar todo el texto haciendo doble click en la barra de direcciones Select all text by clicking in address bar Seleccionar todo el texto al hacer click en la barra de direcciones Search with Default Engine Show loading progress in address bar Fill Bottom Top Custom color: Select color ... ... Reset Web Configuration Configuración web Allow Netscape Plugins (Flash plugin) Permitir agregados de netscape Allow JavaScript Permitir JavaScript Allow JAVA Permitir JAVA Allow DNS Prefetch Permitir DNS Prefetch Enable XSS Auditing try to detect possible XSS attacks when executing javascript Habilitar Auditoría XSS Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Imprimir fondo del elemento Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Incluir enlaces en la cadena de foco Animated scrolling Enable caret browsing Enable spatial navigation Zoom text only Ampliar sólo el texto Mouse wheel scrolls La rueda del ratón desplaza lines on page líneas en la página Default zoom on pages: Ampliación predeterminada en las páginas: Local Storage Almacenamiento local Maximum Máximo 50 MB 50 MB 1 1 Maximum pages in cache: Número máximo de páginas en caché: Allow storing network cache on disk Almacenar caché de la red en el disco Store cache in: Allow saving history Guardar el historial Delete history on close Eliminar el historial al cerrar Allow local storage of HTML5 web content Permitir el almacenamiento local de contenido de red HTML5 Delete locally stored HTML5 web content on close Borrar el contenido de red HTML5 almacenado localmente al cerrar Delete now Eliminar ahora Proxy Configuration Configuración proxy Proxy Auto-Config (.pac) file Reload HTTP HTTP SOCKS5 SOCKS5 Port: Puerto: Username: Nombre de usuario: Password: Contraseña: Don't use on: No utilizar en: Manual configuration Configuración manual System proxy configuration Configuración proxy del sistema Do not use proxy No utilizar proxy <b>Exceptions</b> <b>Exepciones</b> Server: Servidor: Use different proxy for https connection Usar un proxy distinto para protocolo tipo https Use script for automatic configuration: <b>Font Families</b> <b>Familias de fuentes</b> Standard Standard Fixed Fijo Serif Serif Sans Serif Sans Serif Cursive Cursiva Fantasy Fantasy <b>Font Sizes</b> <b>Tamaño de las fuentes</b> Fixed Font Size Tamaño de la fuente fija Default Font Size Tamaño de la fuente predeterminada Minimum Font Size Tamaño mínimo de la fuente Minimum Logical Font Size Tamaño mínimo de la fuente lógica <b>Shortcuts</b> Switch to tabs with Alt + number of tab Load speed dials with Ctrl + number of speed dial Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>Ubicación de la descarga</b> Ask everytime for download location Preguntar siempre dónde descargar los archivos Use defined location: Utilizar una ubicación predefinida: <b>Download Options</b> <b>Opciones de descarga</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Utilizar diálogo nativo del sistema de archivos (podría causar problemas al descargar contenido seguro SSL) Close download manager when downloading finishes Cerrar el gestor de descargas cuando las descargas finalicen <b>External download manager</b> <b>Gestor de descargas externo</b> Use external download manager Utilizar un gestor de descargas externo Executable: Ejecutable: Arguments: Argumentos: Leave blank if unsure <b>%d</b> will be replaced with URL to be downloaded <b>AutoFill options</b> <b>Opciones de autocompletado</b> Allow saving passwords from sites Permitir guardar contraseñas de los sitios Send Referer header to servers Enviar el encabezado del referente a los servidores <b>Cookies</b> <b>Cookies</b> Send Do Not Track header to servers Decir a los sitios web que no quiero ser rastreado <b>Other</b> <b>Otros</b> Manage CA certificates Manejar certificados CA Certificate Manager Manejador de certificados <b>SSL Certificates</b> <b>Certificados SSL</b> <b>JavaScript</b> Manage JavaScript privacy options JavaScript options Cookies Manager Gestor de cookies Manage Cookies <b>HTML5 Permissions</b> Manage HTML5 permissions HTML5 Permissions <b>Notifications</b> <b>Notificaciones</b> Use OSD Notifications Utilizar notificaciones OSD Use Native System Notifications (Linux only) Utilizar sistema de notificaciones nativo (sólo Linux) Do not use Notifications No utilizar notificaciones Expiration timeout: Duración: seconds segundos <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Nota: </b>Puede cambiar la posición de la notificación OSD arrastrándola por la pantalla. StyleSheet automatically loaded with all websites: Hoja de estilos cargada automáticamente en todos los sitios web: Languages Idiomas <b>Preferred language for web sites</b> <b>Idioma preferido para mostrar las páginas web</b> <b>Change browser identification</b> User Agent Manager Default Set as default OSD Notification Notificación OSD Drag it on the screen to place it where you want. Arrástrela por la pantalla para situarla donde quiera. Choose download location... Seleccione la ubicación de la descarga... Choose stylesheet location... Seleccione la ubicación de la hoja de estilos... Deleted Eliminado Choose executable location... Seleccione la ubicación del ejecutable... Choose cache path... New Profile Nuevo perfil Enter the new profile's name: Introduzca el nombre del nuevo perfil: Error! ¡Error! This profile already exists! ¡Este perfil ya existe! Cannot create profile directory! ¡No se puede crear el directorio del perfil! Confirmation Confirmación Are you sure to permanently delete "%1" profile? This action cannot be undone! ¿Está seguro de eliminar permanentemente el perfil "%1"? ¡Esta acción no puede deshacerse! Select Color QObject Native System Notification Sistema de notificación nativo Save file as... The file is not an OpenSearch 1.1 file. Este archivo no es un archivo OpenSearch 1.1. <not set in certificate> <no establecido en el certificado> Unknown size KB MB GB Executable: Arguments: Cannot start external program Cannot start external program! %1 QtWin Open new tab Abrir nueva pestaña Opens a new tab if browser is running Abrir una pestaña nueva si el navegador está ejecutándose Open new window Abrir nueva ventana Opens a new window if browser is running Abrir una ventana nueva si el navegador está ejecutándose Open download manager Abrir el gestor de descargas Opens a download manager if browser is running Abrir el gestor de descargas si el navegador está ejecutándose QupZilla QupZilla QupZilla Private Browsing Enabled Navegación privada habilitada IP Address of current page Dirección IP de la página actual &About QupZilla &Acerca de QupZilla Pr&eferences &Preferencias Quit Salir &File &Archivo &New Window &Nueva ventana New Tab Nueva pestaña Open Location Abrir web URL Open &File... Close Tab Cerrar pestaña Close Window Cerrar ventana &Save Page As... &Guardar como... Save Page Screen Guardar foto de la página Send Link... Enviar enlace... &Print... &Imprimir... Import bookmarks... Importar favoritos... &Edit &Editar &Undo &Deshacer &Redo &Rehacer &Cut &Cortar C&opy C&opiar &Paste &Pegar Select &All &Seleccionar todo &Find &Buscar &View &Ver &Navigation Toolbar Barra de herramientas de &navegación &Bookmarks Toolbar Barra de &favoritos Sta&tus Bar &Barra de estado &Menu Bar Barra de m&enú &Tabs on Top &Fullscreen &Pantalla completa &Stop &Detener &Reload Re&cargar Character &Encoding &Codificación de caracteres Enable &Caret Browsing Toolbars Barras de herramientas Sidebars Panel lateral Zoom &In &Aumentar tamaño Zoom &Out &Reducir tamaño Reset Reiniciar tamaño &Page Source Código &fuente de la página Hi&story &Historial &Back &Anterior &Forward &Siguiente &Home &Inicio Show &All History &Mostrar todo el historial Closed Tabs Pestañas cerradas recientemente Recently Visited Visitadas recientemente Most Visited Las más visitadas &Bookmarks &Favoritos Bookmark &This Page &Agregar esta página a favoritos Bookmark &All Tabs Agregar &todas las pestañas a favoritos Organize &Bookmarks &Organizar favoritos &Tools He&rramientas &Web Search &Caja de búsqueda Page &Info &Información de la página &Download Manager Gestor de &descargas &Cookies Manager Gestor de &cookies &AdBlock &Bloqueador de publicidad RSS &Reader Lector &RSS Web In&spector Inspect&or Web Clear Recent &History &Limpiar historial reciente New &Private Window &Help A&yuda About &Qt Acerca de &Qt Information about application Información acerca de la aplicación Configuration Information Informacion de configuraciones Report &Issue &Informar de un fallo Restore &Closed Tab &Restaurar pestaña cerrada (Private Browsing) (Navegación privada) Empty Vacío Restore All Closed Tabs Restaurar todas las pestañas cerradas Clear list Limpiar lista Other Otros %1 - QupZilla %1 - QupZilla HTML files Archivos HTML Image files Archivos de imagenes Text files Archivos de texto All files Todos Open file... Abrir archivo... QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Todavia estan %1 pestañas abiertas en tu sesion sin guardar. Estas seguro de quitar Qupzilla? Don't ask again No volver a preguntar There are still open tabs Confirmar cierre QupZillaSchemeReply No Error Ningún error Not Found No encontrado Report Issue Informar de un fallo If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Si experimenta problemas con Qupzilla, por favor intente primero desabilitando las extensiones. <br/>Si esto no lo soluciona, entonces rellene este formulario: Your E-mail Su correo electrónico Issue type Tipo de error Issue description Descripción del error Send Enviar E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. Please fill out all required fields! ¡Por favor, rellene todos los campos requeridos! Start Page Página de inicio Search on Web Buscar en la internet Search results provided by DuckDuckGo Buscar resultados provistos por DuckDuckGo About QupZilla Acerca de QupZilla <h1>Private Browsing</h1> <h1>Navegacion privada</h1> Information about version Información acerca de la versión Copyright Copyright Version Versión WebKit version Versión WebKit Main developer Desarrollador principal Contributors Contribuidores Translators Traductores Speed Dial Marcación rápida Add New Page Agregar página nueva Edit Editar Remove Eliminar Reload Recargar Are you sure to remove this speed dial? Esta seguro de remover este marcador? Load title from page Cargar título desde la página Url Dirección Title Nombre Apply Aplicar Close Cerrar New Page Página nueva Speed Dial settings Configuración de la marcación rápida Placement: Ubicación: Auto Auto Cover Cubierta Fit Ajustar Fit Width Ajustar horizontalmente Fit Height Ajustar verticalmente Use background image Usar imágen de fondo Select image Seleccionar imágen Maximum pages in a row: Páginas máximas por fila: Change size of pages: Cambiar el tamaño de las páginas: Center speed dials Restore Session Oops, QupZilla crashed. We apologize for this. Would you like to restore the last saved state? Try removing one or more tabs that you think cause troubles Or you can start completely new session Configuration Information This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Browser Identification Identificación del navegador Paths Rutas Build Configuration Preferences Preferencias Option Opcion Value Valor Extensions Extensiones Name Nombre Author Autor Description Descripcion Application version Qt version Version de Qt Build time Fecha de compilación Platform Plataforma Profile Perfil Settings Preferencias Saved session Sesión guardada Pinned tabs Pestañas fijas Data Datos Themes Temas Translations Traducciones Disabled Deshabilitado <b>Enabled</b> Habilitado Debug build Compilacion de depurado WebGL support Soporte WebGL Windows 7 API Giundate 7 API KDE integration Integracion KDE Portable build No available extensions. RSSManager RSS Reader Lector RSS Empty Vacío Add feed Agregar canal Edit feed Editar canal Delete feed Eliminar canal Optimize Database Optimizar la base de datos Reload Recargar News Noticias Loading... Cargando... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. No tiene ningún canal RSS.<br/> Por favor, añada alguno con el icono RSS de la barra de navegación en sitios que ofrezcan canales RSS. Add new feed Agregar un canal nuevo Please enter URL of new feed: Por favor, introduzca la dirección del nuevo canal: New feed Nuevo canal Fill title and URL of a feed: Introduzca el nombre y la dirección de un canal RSS: Feed title: Nombre del canal RSS: Feed URL: Dirección del canal RSS: Edit RSS Feed Editar canal RSS Open link in current tab Abrir enlace en la pestaña actual Open link in new tab Abrir enlace en una nueva pestaña Error in fetching feed Error al obtener canal RSS RSS feed duplicated Canal RSS duplicado You already have this feed. Ya tiene agregado este canal RSS. RSSNotification Add this feed into Agregar esta semilla Add Agregar RSS feed <b>"%1"</b> Semilla RSS <b>"%1"</b> Internal Reader Lector interno Other... Otro... Liferea not running Liferea no demonizado Liferea must be running in order to add new feed. Liferea debe estar demonizado para poder agregar semillas. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Para agregar esta semilla RSS en otra aplicacion, favor usar esta informacion:<br/><br/><b>Titulo: </b>%1<br/><b>Url: </b>%2<br/><br/>La direccion Url de esta semilla ha sido copiada en tu portapapeles. Add feed into other application Agregar semilla en otra aplicacion RSSWidget Add RSS Feeds from this site Agregar canales RSS desde este sitio Untitled feed Canal sin título Add Agregar RecoveryWidget Start New Session Restore Window %1 RegisterQAppAssociation Warning! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) RssIcon Add RSS from this page... SSLManager Certificate Manager Menjador de Certificados CA Authorities Certificates Certificados de Autoridades CA Show info Mostrar información This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Esta es una lista con los certificados de autoridades CA alamcenados en la ruta estándard del sistema y en las rutas especificadas por el usuario. Local Certificates Certificados locales Import Importar Remove Eliminar This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Esta es una lista con los certificados locales almacenados en su perfil de usuario. También contiene todos los certificados que han recibido una excepción. Settings Preferencias Add Agregar If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Si los certificados de autoridades CA no se cargaron automáticamente desde el sistema, puede especificar manualmente la ruta donde están almacenados. <b>NOTE:</b> Setting this option is a high security risk! <b>NOTA:</b> ¡Establecer esta opción supone un alto riesgo de seguridad! Ignore all SSL Warnings Ignorar todos los avisos SSL All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Todos los certificados deben tener el sufijo .crt. Después de Agregar o eliminar rutas de certificados, es necesario reiniciar QupZilla para que los cambios surjan efecto. Choose path... Elegir ruta... Import certificate... Importar certificado... Certificate Informations Información del certificado SearchEnginesDialog Manage Search Engines Administrar motores de búsqueda Add... Agregar... Remove Eliminar Edit Editar Set as default Up Subir Down Bajar Search Engine Motor de búsqueda Shortcut Palabra clave Defaults Predeterminados Add Search Engine Agregar motor de búsqueda Remove Engine You can't remove the default search engine.<br>Set a different engine as default before removing %1. Edit Search Engine Editar motor de búsqueda SearchEnginesManager Search Engine Added Motor de búsqueda añadido Search Engine "%1" has been successfully added. Motor de búsqueda "%1" ha sido añadido satisfactoriamente. Search Engine is not valid! ¡El motor de búsqueda no es válido! Error Error Error while adding Search Engine <br><b>Error Message: </b> %1 Error al Agregar el motor de búsqueda <br><b>Mensaje de error:</b> %1 SearchToolBar No results found. Ningún resultado encontrado. SearchToolbar Search: Buscar: Search... Buscar... Highlight Resaltar Case sensitive Coincidir con capitalización SideBar Bookmarks Favoritos History Historial SiteInfo Site Info Información del sitio General General Media Media Databases Base de Datos Security Seguridad Size: Tamaño: Site address: Dirección del sitio: Encoding: Codificación: Meta tags of site: Meta etiquetas del sitio: Tag Etiqueta Value Valor <b>Security information</b> <b>Información de seguridad</b> Details Detalles Image Imágen Image address Dirección de la imágen <b>Preview</b> <b>Vista previa</b> <b>Database details</b> <b>Detalles DB:</b> Name: Nombre: Path: Ruta: <database not selected> <database not selected> <not set in certificate> <no definida en el certificado> No databases are used by this page. Ninguna base de datos es usada por esta pagina. <b>Connection is Encrypted.</b> <b>La conexión está encriptada.</b> <b>Your connection to this page is secured with this certificate: </b> <b>La conexión a esta página está segura con este cerficado: </b> <b>Connection Not Encrypted.</b> <b>Conexión no encriptada.</b> <b>Your connection to this page is not secured!</b> <b>¡La conexión a esta página no es segura!</b> Copy Image Location Copiar la ubicación de la imágen Copy Image Name Copiar el nombre de la imágen Save Image to Disk Guardar imágen en el disco Error! ¡Error! This preview is not available! ¡La vista previa no está disponible! Save image... Guardar imágen... Cannot write to file! ¡No se puede escribir el archivo! Preview not available Vista previa no disponible SiteInfoWidget More... Más... Your connection to this site is <b>secured</b>. La conexión a este sitio es <b>segura</b>. Your connection to this site is <b>unsecured</b>. La conexión a este sitio es <b>insegura</b>. This is your <b>%1</b> visit of this site. Esta es su visita <b>%1</b> a este sitio. You have <b>never</b> visited this site before. Usted <b>nunca</b> ha visitado este sitio. first primero second segundo third tercero SourceViewer Source of Fuente de File Archivo Load in page Save as... Guardar como... Close Cerrar Edit Editar Undo Deshacer Redo Rehacer Cut Cortar Copy Copiar Paste Pegar Select All Seleccionar todo Find Buscar Go to Line... Ir a la línea... View Ver Reload Recargar Editable Editable Word Wrap Ajuste de línea Source loaded in page Cannot load in page. Page has been closed. Save file... Guardar archivo... Error! ¡Error! Cannot write to file! Error writing to file Error escribiendo archivo Source successfully saved Fuente guardada satisfactoriamente Source reloaded Fuente recargada Cannot reload source. Page has been closed. No se puede recargar la fuente. La página ha sido cerrada. Editable changed Editable cambiado Word Wrap changed Ajuste de línea cambiado Enter line number Introducir número de línea SourceViewerSearch Search: Buscar: Search... Buscar... Whole words SpeedDial Image files Archivos de imagenes Select image... Seleccionar imágen... Unable to load No se puede cargar SpellCheckDialog SpellCheck <b>Dictionary path</b> Change... <b>User dictionary</b> Add Remove Using Hunspell library Choose dictionary path... Add new word... Add new word: Speller No suggestions Add to dictionary Settings SqueezeLabelV2 Copy Copiar SslErrorDialog SSL Certificate Error! Only for this session TabBar &New tab &Nueva pestaña &Stop Tab &Detener pestaña &Reload Tab &Recargar pestaña &Duplicate Tab Du&plicar pestaña D&etach Tab Un&pin Tab Eliminar pestaña &fija &Pin Tab Pestaña &fija Re&load All Tabs &Recargar todas las pestañas &Bookmark This Tab &Agregar esta pestaña a favoritos Bookmark &All Tabs Agregar &todas las pestañas a favoritos Close Ot&her Tabs Cerrar las &otras pestañas Cl&ose &Cerrar Reloa&d All Tabs Re&cargar todas las pestañas Restore &Closed Tab Restaurar &pestaña cerrada Close Tabs Do you really want to close other tabs? TabWidget New Tab Nueva pestaña List of tabs Lista de pestañas Loading... Cargando... No Named Page Página sin nombre Currently you have %1 opened tabs Actualmente tiene %1 pestañas abiertas New tab Nueva pestaña Empty Vacío Restore All Closed Tabs Restaurar todas las pestañas cerradas Clear list Limpiar lista TabbedWebView Loading... Cargando... %1 - QupZilla %1 - QupZilla Inspect Element Inspeccionar elemento ThemeManager <b>Name:</b> <b>Nombre:</b> <b>Author:</b> <b>Autor:</b> <b>Description:</b> <b>Descripción:</b> License Licencia ToolButton Stop Detener Reload Recargar Updater Update available Actualización disponible New version of QupZilla is ready to download. Nueva versión de QupZilla lista para descargar. Update Actualizar UserAgentDialog User Agent Manager Change global User Agent Use different User Agents for specified sites Site User Agent Add Remove Edit Add new site Edit site Site domain: User Agent: WebInspectorDockWidget Web Inspector Inspector Web WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? QupZilla no supo manejar <b>%1:</b> de enlaces. Se pidio el enlace <ul><li>%2</li></ul>. Quiere que Qupzilla intente abrir este tipo de enlaces en aplicaciones del sistema? Remember my choice for this protocol Recordar mi eleccion para este protocolo External Protocol Request Peticion de Protocolo externo To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Confirm form resubmission Confirmar el reenvío del formulario Select files to upload... Seleccionar archivos para subir... Server refused the connection El servidor rechazó la conexión Server closed the connection El servidor cerró la conexión Server not found Servidor no encontrado Connection timed out La conexión expiró Untrusted connection Conexión no fiable Temporary network failure Fallo de la red temporal Proxy connection refused Conexión proxy rechazada Proxy server not found Servidor proxy no encontrado Proxy connection timed out Expiró el tiempo de conexión al proxy Proxy authentication required Autentificación proxy requerida Content not found Contenido no encontrado Unknown network error Error desconocido desde la red AdBlocked Content Contenido publicitario bloqueado Blocked by <i>%1</i> Bloqueada por <i>%1</i> Content Access Denied Denegado el acceso al contenido Error code %1 Código de error %1 Failed loading page Falló la carga de la página QupZilla can't load page. QupZilla can't load page from %1. QupZilla no puede cargar la página de %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Compruebe errores de escritura en la dirección como <b>ww.</b>ejemplo.com en lugar de <b>www.</b>ejemplo.com If you are unable to load any pages, check your computer's network connection. Si no puede cargar ninguna página, compruebe la conexión a la red de su ordenador. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Si su ordenador o red están protegidos por un cortafuegos o proxy, asegúrese de que QupZilla tiene permitido el acceso a la red. Try Again Volver a intentar JavaScript alert Alerta JavaScript Prevent this page from creating additional dialogs Prevenir que esta página cree diálogos adicionales Choose file... Elegir archivo... Cannot read data from <b>%1</b>. Upload was cancelled! Cannot read file! WebSearchBar Manage Search Engines Administrar motores de búsqueda Add %1 ... Agregar %1 ... Paste And &Search Pegar y &buscar Clear All Limpiar todo Show suggestions Search when engine changed WebView No Named Page Pagina sin nombre Create Search Engine Crear manejador de busqueda Cut Copy Paste Select All Default Left to Right Right to Left Bold Italic Underline &Reload &Recargar S&top &Detener Delete &Back &Anterior &Forward &Siguiente This frame Este marco Show &only this frame M&ostrar solamente este marco Show this frame in new &tab Mostrar este marco en una nueva &pestaña Print frame Imprimir marco Zoom &in &Aumentar tamaño &Zoom out &Reducir tamaño Reset Reiniciar tamaño Show so&urce of frame Mostrar código f&uente del marco Book&mark page Agregar esta página a &favoritos &Save page as... &Guardar como... &Copy page link Cop&iar el enlace de la página Send page link... Enviar enlace de la página... &Print page &Imprimir página Select &all Seleccionar &todo Validate page Validar página Show so&urce code Ver código &fuente de la página Show info ab&out site Ver &información de la página Open link in new &tab Abrir enlace en una nueva &pestaña Open link in new &window Abrir enlace en una nueva &ventana B&ookmark link Agregar enlace a &favoritos &Save link as... &Guardar enlace como... Send link... Enviar enlace... &Copy link address Copi&ar la ruta del enlace Show i&mage Mostrar &imágen Copy im&age Co&piar imágen Copy image ad&dress C&opiar la ruta de la imágen &Save image as... &Guardar imágen como... Send image... Enviar imágen... Send text... Enviar texto... Google Translate Traductor de Google Dictionary Diccionario Go to &web address Ir a &dirección web Search "%1 .." with %2 Buscar "%1 .." con %2 Search with... Buscar con... &Play &Reproducir &Pause &Pausa Un&mute &Activar sonido &Mute &Desactivar sonido &Copy Media Address Copi&ar la ruta del contenido media &Send Media Address &Enviar la ruta del contenido media Save Media To &Disk Guardar el contenido media al &disco Check &Spelling Languages jsAlert Prevent this page from creating additional dialogs Prevenir que esta página cree diálogos adicionales qupzilla-1.6.0/translations/eu_ES.ts000066400000000000000000010566331226107126500174700ustar00rootroot00000000000000 AboutDialog About QupZilla QupZilla-ri Buruz Authors Egileak Authors and Contributors Egileak eta Laguntzaileak < About QupZilla < QupZilla-ri Buruz <p><b>Application version %1</b><br/> <p><b>Aplikazio bertsioa %1</b><br/> <b>WebKit version %1</b></p> <b>WebKit bertsioa %1</b></p> <small>Build time: %1 </small></p> <small>Eraiketa eguna: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Garatzaile nagusia:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Laguntzaileak:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Itzultzaileak:</b><br/>%1</p> AcceptLanguage Preferred Languages Hizkuntza Hobetsiak Add... Gehitu... Remove Kendu Up Gora Down Behera Personal [%1] Pertsonala [%1] AdBlockAddSubscriptionDialog Add Subscription Gehitu Harpidetza Title: Izenburua: Address: Helbidea: Add new subscription to AdBlock: Gehitu harpidetza berri AdBlockera: AdBlockCustomList Custom Rules Norbere Arauak AdBlockDialog AdBlock Configuration AdBlock Itxurapena Enable AdBlock Gaitu AdBlock Search... Bilatu... Options Aukerak AdBlock AdBlock Use only essential part of EasyList (for performance reasons) Erabili EasyList-ren zati ezinbestekoak bakarrik (egintza zergaitiengaitik) Add Rule Gehitu Araua Remove Rule Kendu Araua Add Subscription Gehitu Harpidetza Remove Subscription Kendu Harpidetza Update Subscriptions Eguneratu Harpidetzak Learn about writing rules... Ikasi arauak idazteari buruz... AdBlockIcon AdBlock lets you block unwanted content on web pages AdBlock-ek nahi ez dituzun web orrialdetako edukiak blokeatzen ditu Blocked popup window Blokeatu ohar-leihoa AdBlock blocked unwanted popup window. AdBlock-ek ohar-leiho ez desiratua blokeatu du. AdBlock AdBlock Show AdBlock &Settings &Erakutsi AdBlock Ezarpenak Disable on %1 Ezgaituta hemen %1 Disable only on this page Ezgaitu orrialde honetan bakarrik Blocked Popup Windows Ohar-leihoa Blokeatuta %1 with (%2) %1 honekin (%2) No content blocked Ez dago edukirik blokeatuta Blocked URL (AdBlock Rule) - click to edit rule URL-a Blokeatuta (AdBlock Araua) - klikatu araua editatzeko AdBlockManager Do you want to add <b>%1</b> subscription? Nahi duzu <b>%1</b> harpidetza gehitzea? AdBlock Subscription AdBlock Harpidetza EasyList Zerrenda-Erraza AdBlockTreeWidget Add Rule Gehitu Araua Remove Rule Kendu Araua Add Custom Rule Gehitu Norbere Araua Please write your rule here: Mesedez idazu zure araua hemen: %1 (recently updated) %1 (berriki eguneratuta) AddAcceptLanguage Add Language Gehitu Hizkuntza Choose preferred language for web sites Hautatu web gunetarako hizkuntza hobetsia Personal definition: Norbere adiera: AesInterface Warning! Kontuz! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. Datuak QupZilla-ren bertsio berriago batekin enkriptaturik daude. Mesedez ezarri QupZilla-ren azken bertsioa. AutoFill Database (plaintext) Datubasea (idazki-laua) Database (encrypted) Datubasea (enkriptaturik) Enter Master Password Sartu Sarhitz Nagusia Permission is required, please enter Master Password: Baimena beharrezkoa da, mesedez sartu Sarhitz Nagusia: Warning! Kontuz! Entered password is wrong! Sartutako sarhitza okerra da! This backend needs a master password to be set! QupZilla just switches to its default backend Atzealde honek sarhitz nagusi bat behar du ezartzeko! QupZilla berezko atzealdera aldatzen da AutoFillManager Passwords are stored in: Sarhitzak hemen biltegiratzen dira: Change backend Aldatu atzealdea Backend options Atzealde aukerak Passwords Sarhitzak Server Zerbitzaria Username Erabiltzaile-izena Password Sarhitza Import/Export Inportatu/Esportatu Show Passwords Erakutsi Sarhitzak Edit Editatu Remove Kendu Remove All Kendu Denak Exceptions Salbuespenak Import Passwords from File... Inportatu Sarhitzak Agiritik... Export Passwords to File... Esportatu Sarhitzak Agirira... Search Bilatu Change backend... Aldatu atzealdea... Change backend: Aldatu atzealdea: Are you sure that you want to show all passwords? Zihur zaude sarhitz guztiak erakustea nahi dituzula? Hide Passwords Ezkutatu Sarhitzak Confirmation Baieztapena Are you sure to delete all passwords on your computer? Zihur zaude zure ordenagailuko sarhitz guztiak ezabatzea nahi dituzula? Edit password Editatu sarhitza Change password: Aldatu sarhitza: Choose file... Hautatu agiria... Cannot read file! Ezinezkoa agiria irakurtzea! Successfully imported Ongi inportatu da Error while importing! Akatsa inportatzerakoan! Cannot write to file! Ezinezkoa agirira idaztea! Successfully exported Ongi esportatu da AutoFillNotification Update Eguneratu Remember Gogoratu Never For This Site Inoiz Ez Gune Honetan Not Now Orain Ez on %1 -> %1 for <b>%1</b> <b>%1</b>-rako Do you want QupZilla to update saved password %1? Nahi duzu QupZillak gordetako %1 sarhitza eguneratzea? Do you want QupZilla to remember the password %1 %2? Nahi duzu QupZillak %1 %2 sarhitza gogoratzea? AutoFillWidget Choose username to login Hautatu saio-haste erabiltzaile-izena Login Hasi Saioa Login as <b>%1</b> Saioa honela hasita: <b>%1</b> BookmarkIcon Bookmark this Page Lastermarkatu Orrialde hau Edit this bookmark Editatu Lastermarka hau BookmarksImportDialog Import Bookmarks Inportatu Lastermarkak <b>Import Bookmarks</b> <b>Inportatu Lastermarkak</b> From File Agiritik Internet Explorer Internet Explorer Choose browser from which you want to import bookmarks: Hautatu lastermarkak inportatzea nahi duzun nabigatzailea: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Oharra:</b> Oraingoz, inportatu Html-tik bakarrik inportatu ditzake lastermarka agiritegiak ere. Choose... Hautatu... Try to fetch icons for all bookmarks (may take a while) Saiatu lastermarka guztientzako ikurrak lortzen (denbora apur bat hartu dezake) Fetching icons, please wait... Ikurrak lortzen, mesedez itxaron... Title Izenburua Url Url-a Next Hurrengoa Cancel Ezeztatu <b>Importing from %1</b> <b>Hemendik inportatzen: %1</b> Finish Amaitu Please press Finish to complete importing process. Mesedez sakatu Amaitu inportazio garapena osatzeko. Error! Akatsa! The file doesn't contain any bookmark. Agiriak ez du lastermarkarik. Choose directory... Hautatu zuzenbidea... Choose file... Hautatu agiria... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox-ek bere lastermarkak <b>places.sqlite</b> SQLite datubasean biltegiratzen ditu. Agiri hau arrunt hemen dago Please choose this file to begin importing bookmarks. Mesedez hautatu agiri hau lastermarkak inportatzen hasteko. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Google Chrome-k bere lastermarkak <b>Lastermarkak</b> idazki agirian biltegiratzen ditu. Agiri hau arrunt hemen dago Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera-k bere lastermarkak <b>lastermarkak.adr</b> idazki agirian biltegiratzen ditu. Agiri hau arrunt hemen dago You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Lastermarkak HTML esportazioa sostengaten duen edozein nabigatzailetik inportatu ditzakezu. Agiri honek arrunt atzizki hauek ditu Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Explorer-ek bere lastermarkak <b>Gogokoenak</b> agiritegian biltegiratzen ditu. Agiri hau arrunt hemen dago Please choose this folder to begin importing bookmarks. Mesedez hautatu agiritegi hau lastermarkak inportatzen hasteko. No Error Akats Gabe Unable to open file. Ezinezkoa agiria irekitzea. Cannot evaluate JSON code. Ezinezkoa JSON kodea aztertzea. File does not exist. Agiria ez dago. Unable to open database. Is Firefox running? Ezinezkoa datubasea irekitzea. Firefox ekinean dago? Directory does not exist. Zuzenbidea ez dago. The directory does not contain any bookmarks. Zuzenbideak ez du lastermarkarik. BookmarksManager Bookmarks Lastermarkak Optimize Database Hoberendu Datubasea Import Bookmarks Inportatu Lastermarkak Add Folder Gehitu Agiritegia Title Izenburua Url Url-a Expand All Hedatu Denak Collapse All Bildu Denak Add new folder Gehitu agiritegi berria Choose parent folder for new folder: Hautatu agiritegi berriarentzako gaineko agiritegia: Choose name for new bookmark folder: Hautatu lastermarka agiritegi berriarentzako izena: Add new subfolder Gehitu azpiagiritegi berria Choose name for new subfolder in bookmarks toolbar: Hautatu azpiagiritegi berriarentzako izena lastermarka tresnabarran: Rename Folder Berrizendatu Agiritegia Choose name for folder: Hautatu agiritegiarentzako izena: Add Subfolder Gehitu Azpiagiritegia Rename folder Berrizendatu agiritegia Remove folder Kendu agiritegia Open link in current &tab Ireki lotura &oraingo hegatsean Open link in &new tab Ireki lotura &hegats berrian Move bookmark to &folder &Mugitu lastermarka agiritegira Change icon Aldatu ikurra Rename bookmark Berrizendatu lastermarka Remove bookmark Kendu lastermarka <b>Warning: </b>You already have bookmarked this page! <b>Kontuz: </b>Jadanik baduzu orrialde hau lastermarkatuta! Choose name and location of this bookmark. Hautatu lastermarka honentzako izena eta kokalekua. Add New Bookmark Gehitu Lastermarka Berria Choose folder for bookmarks: Hautatu lastermarkentzako agiritegia: Bookmark All Tabs Lastermarkatu Hegats Guztiak BookmarksModel Bookmarks In Menu Menuko Lastermarkak Bookmarks In ToolBar Tresnabarrako Lastermarkak Unsorted Bookmarks Antolatugabeko Lastermarkak BookmarksSideBar Search... Bilatu... Open link in current &tab Ireki lotura &oraingo hegatsean Open link in &new tab Ireki lotura &hegats berrian Copy address Kopiatu helbidea &Delete E&zabatu BookmarksToolbar &Bookmark Current Page Lastermarkatu &Oraingo Orrialdea Bookmark &All Tabs Lastermarkatu &Hegats Guztiak &Organize Bookmarks &Antolatu Lastermarkak Show Most &Visited &Erakutsi Gehien Ikusiak Show Only Icons Erakutsi Ikurrak Bakarrik &Hide Toolbar E&zkutatu Tresnabarra Open bookmark Ireki Lastermarka Open bookmark in new tab Ireki lastermarka hegats berrian Move right Mugitu eskuinera Move left Mugitu ezkerrera Edit bookmark Editatu Lastermarka Remove bookmark Kendu lastermarka Edit bookmark: Editatu Lastermarka: Title: Izenburua: Url: Url-a: Edit Bookmark Editatu Lastermarka Most visited Gehien Ikusiak Sites you visited the most Gehien ikusi dituzun guneak Empty Hutsik BookmarksTree Bookmarks Lastermarkak New Folder... Agiritegi Berria... BookmarksWidget Add to Speed Dial Gehitu Abiarazte Azkarrera Save Gorde Name: Izena: Folder: Agiritegia: Remove from Speed Dial Kendu Abiarazte Azkarretik Remove Kendu BrowsingLibrary Library Liburutegia Search... Bilatu... History Historia Bookmarks Lastermarkak RSS RSS Database Optimized Datubasea Hoberenduta Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 Datubasea ongi hoberendu da.<br/><br/><b>Datubase Neurria Aurretik: </b>%1<br/><b>Datubase Neurria Ondoren: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Honentzat Jaulkia:</b> Common Name (CN): Izen Arrunta (IA): Organization (O): Erakundea (E): Organizational Unit (OU): Erakunde Taldea (ET): Serial Number: Serie Zenbakia: <b>Issued By</b> <b>Jaulkitzailea:</b> <b>Validity</b> <b>Baliostapena:</b> Issued On: Jaulkitze Eguna: Expires On: Epemuga: ClearPrivateData Clear Recent History Garbitu Berrikiko Historia Choose what you want to delete: Hautatu zer nahi duzun ezabatzea: Clear history Garbitu historia Clear cache Garbitu katxea Clear icons Garbitu ikurrak <b>Clear Recent History</b> <b>Garbitu Berrikiko Historia</b> Earlier Today Gaurko Egunean Week Astean Month Hilabetean All Denak Clear web databases Garbitu web datubaseak Clear local storage Garbitu tokiko biltegia Clear cookies Garbitu cookieak ClickToFlash Object blocked by ClickToFlash ClickFlash-ek objetua blokeatu du Show more information about object Erakutsi objetuari buruzko argibide gehiago Delete object Ezabatu objetua Add %1 to whitelist Gehitu %1 zerrenda-zurira Flash Object Flash Objetua <b>Attribute Name</b> <b>Ezaugarri Izena</b> <b>Value</b> <b>Balioa</b> No more information available. Ez dago argibide gehiago eskuragarri. CookieManager Cookies Cookieak Stored Cookies Biltegiratutako Cookieak Find: Bilatu: These cookies are stored on your computer: Cookie hauek zure ordenagailuan biltegiratuta daude: Server Zerbitzaria Cookie name Cookie izena Name: Izena: Value: Balioa: Server: Zerbitzaria: Path: Helburua: Secure: Segurtasuna: Expiration: Epemuga: <cookie not selected> <ez da cookierik hautatu> Remove all cookies Kendu cookie guztiak Remove cookies Kendu cookieak Cookie Filtering Cookie Iragazketa <b>Cookie whitelist</b> <b>Cookie zerrenda-zuria</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Zerbitzari hauetiko cookieak BETIK onartuko dira (baita cookieak gordetzea ezgaituta baduzu ere) Add Gehitu Remove Kendu <b>Cookie blacklist</b> <b>Cookie zerrenda-beltza</b> Cookies from these servers will NEVER be accepted Zerbitzari hauetiko cookieak INOIZ EZ dira onartuko Settings Ezarpenak <b>Cookie Settings</b> <b>Cookie Ezarpenak</b> Allow storing of cookies Ahalbidetu cookieak biltegiratzea Delete cookies on close Ezabatu cookieak isterakoan Match domain exactly Domeinua zehatz bat dator Filter tracking cookies Iragazi cookie aztarnaketa <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! <b>Kontuz:</b> Domeinua zehatz bat dator eta iragazi cookie aztarnaketa aukerek zenbait gunetako cookieak ukatzera iritsi daitezke. Arazoak badituzu cookiekin, saiatu lehenik aukera hauek ezgaitzen! Search Bilatu Confirmation Baieztapena Are you sure to delete all cookies on your computer? Zihur zaude zure ordenagailuko cookie guztiak ezabatzea nahi dituzula? Secure only Segurua bakarrik All connections Elkarketa guztiak Session cookie Saio cookiea Remove cookie Kendu cookiea Add to whitelist Gehitu zerrenda-zurira Add to blacklist Gehitu zerrenda-beltzera DownloadFileHelper Save file as... Gorde agiria honela... NoNameDownload Izengabeko-Jeisketa DownloadItem Remaining time unavailable Gelditzen den denbora eskuraezina Error: Cannot write to file! Akatsa: Ezinezkoa agirira idaztea! Done - %1 Eginda - %1 Cancelled Ezeztaturik few seconds segundu gutxi %n seconds %n minutes %n hours Unknown speed Abiadura ezezaguna kB/s kB/s MB/s MB/s GB/s GB/s Unknown size Neurri ezezaguna %2 - unknown size (%3) %2 - neurri ezezaguna (%3) Remaining %1 - %2 of %3 (%4) Gelditzen da %1 - %2 -> %3 (%4) Cancelled - %1 Ezeztaturik - %1 Delete file Ezabatu agiria Do you want to also delete dowloaded file? Jeitsitako agiria ere ezabatzea nahi duzu? Open File Ireki Agiria Open Folder Ireki Agiritegia Go to Download Page Joan Jeisketa Orrialdera Copy Download Link Kopiatu Jeisketa Lotura Cancel downloading Ezeztatu jeisketa Remove Kendu Error Akatsa Not found Ez da aurkitu Sorry, the file %1 was not found! Barkatu, agiri hau: %1 ez da aurkitu! Error: Akatsa: DownloadManager Download Manager Jeisketa Kudeatzailea Clear Garbitu %1% of %2 files (%3) %4 remaining %1% -> %2 agiri (%3) %4 gelditzen d(ir)a %1% - Download Manager %1% - Jeisketa Kudeatzailea Download Finished Jeisketa Amaituta All files have been successfully downloaded. Agiri guztiak ongi jeitsi dira. Warning Kontuz Are you sure to quit? All uncompleted downloads will be cancelled! Zihur zaude uztea nahi duzula? Osatugabeko jeisketa guztiak ezeztatuko dira! DownloadOptionsDialog Opening Irekitzen Copy download link Kopiatu jeisketa lotura You have chosen to open Irekitzea hautatu duzu which is a: zeina da: What should QupZilla do with this file? Zer egin behar du QupZillak agiri honekin? Open... Ireki... Save File Gorde Agiria Download with External Manager Jeitsi Kanpoko Kudeatzailearekin from: hemendik: Opening %1 Irekitzen %1 Download link copied. Jeisketa lotura kopiatuta. EditSearchEngine Name: Izena: Url: Url-a: Shortcut: Lasterbidea: Icon: Ikurra: <b>Note: </b>%s in url or post data represent searched string <b>Oharra: </b>%s url edo idaz ondoren bilaketa katea adierazten du Post Data: Idaz Ondoren: Change... Aldatu... FileSchemeReply No Error Akats Gabe Up to higher level directory Igo gaineko mailako zuzenbidera Show hidden files Erakutsi ezkutuko agiriak Name Izena Size Neurria Last modified Azken aldaketa Index for %1 Aurkibidetua %1 Folder is empty. Agiritegia hutsik dago. FtpDownloader Cancelled! Ezeztaturik! FtpSchemeReply Up to higher level directory Igo gaineko mailako zuzenbidera Show hidden files Erakutsi ezkutuko agiriak Name Izena Size Neurria Last modified Azken aldaketa Index for %1 Aurkibidetua %1 Folder is empty. Agiritegia hutsik dago. Unknown command Agindu ezezaguna HTML5PermissionsDialog HTML5 Permissions HTML5 Baimenak Notifications Jakinarazpenak Site Gunea Behaviour Jokabidea Remove Kendu Geolocation Geokokapena Allow Ahalbidetu Deny Ukatu HTML5PermissionsNotification Remember Gogoratu Allow Ahalbidetu Deny Ukatu this site gune hau Allow %1 to show desktop notifications? Ahalbidetu %1 mahaigaineko jakinarazpenak erakusteko? Allow %1 to locate your position? Ahalbidetu %1 zure kokapena helbidetzeko? History No Named Page Izengabeko Orrialdea January Urtarrila February Otsaila March Martxoa April Apirila May Maiatza June Ekaina July Uztaila August Abuztua September Iraila October Urria November Azaroa December Abendua HistoryManager History Historia Delete Ezabatu Clear All History Garbitu Historia Guztia Optimize Database Hoberendu Datubasea Confirmation Baieztapena Are you sure to delete all history? Zihur zaude historia guztia ezabatzea nahi duzula? HistoryModel Title Izenburua Address Helbidea Visit Date Ikusaldi Eguna Visit Count Ikusaldi Zenbatekoa Today Gaur This Week Aste Honetan This Month Hilabete Honetan HistorySideBar Search... Bilatu... HistoryView Open link in current tab Ireki lotura oraingo hegatsean Open link in new tab Ireki lotura hegats berrian Copy title Kopiatu izenburua Copy address Kopiatu helbidea Remove Kendu IconChooser Choose icon... Hautatu ikurra... From file Agiritik Image (.png, .jpg, .jpeg, .gif) Irudia (.png, .jpg, .jpeg, .gif) Choose file... Hautatu agiria... From database Datubasetik Site Url: Gune Url-a: Image files Irudi agiriak JsOptions JavaScript Options JavaScript Aukerak Allow JavaScript to: Ahalbidetu JavaScript-eri hau: Close windows Itxi leihoak Open popup windows Ireki ohar-leihoak Change window size Aldatu leihoaren neurria Hide menu bar Ezkutatu menu barra Hide status bar Ezkutatu egoera barra Hide tool bar Ezkutatu tresna barra Access clipboard Sarbide gakoa LicenseViewer License Viewer Baimen Ikustatzailea LocationBar Enter URL address or search on %1 Sartu URL helbidea edo bilatu hemen: %1 Paste And &Go Itsatsi Eta &Joan Clear All Garbitu Denak .co.uk Append domain name on ALT + Enter = Should be different for every country .co.eus Show information about this page Erakutsi orrialde honi buruzko argibideak LocationCompleterView Switch to tab Aldatu hegatsera MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? QupZilla orain ez da zure berezko nabigatzilea. Zure berezko nabigatzailea egitea nahi duzu? Always perform this check when starting QupZilla. Betik egin egiaztapen hau QupZilla abiarazterakoan. Default Browser Berezko Nabigatzailea QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. QupZilla iturburu irekiko WWW nabigatzaile berria, azkarra eta segurua da. QupZilla GPL 3 bertsioa baimenepan dago (eta zure aukeran) edozein bertsio berriagoan. WebKit nukleoan eta Qt Framework-ean ohinarrituta dago. MasterPasswordDialog Encrypted DataBase Settings Enkriptaturiko DatuBase Ezarpenak Set/Change Master Password... Ezarri/Aldatu Sarhitz Nagusia... Clear Master Password... Garbitu Sarhitz Nagusia... This backend does not work without a master password. Atzealde hau ez dabil sarhitz nagusi bat gabe. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. Aukera honek sarhitz nagusia argitu eta enkriptaturiko datu guztiak "DatuBasea" (Idazki Laua)" atzealdera mugitu, eta hona aldatzen du. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Sarhitz Nagusia gune sarhitzak eta galdekizun datuak babesteko erabiltzen da. Sarhitz Nagusi bat ezartzen baduzu saio bakoitzean galdetuko zaizu. Current Password: Oraingo Sarhitza: New Password: Sarhitz Berria: Confirm Password: Baieztatu Sarhitza: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. <b>Oharra:</b> Sarhitz Nagusia ezin da berrezarri. Ez ahaztu, mesedez. Warning! Kontuz! You entered a wrong password! Sarhitz okerra idatzi duzu! New/Confirm password fields do not match! Sarhitz Berri/Baieztapen eremuak ez datoz bat! Some data has not been decrypted. The master password was not cleared! Zenbait datu ez dira dekriptatu. Sarhitz nagusia ez da argitu! Are you sure to clear master password and decrypt data? Zihur zaude sarhitz nagusia argitu eta datuak dekriptatzeaz? NavigationBar No Named Page Izengabeko Orrialdea Back Atzera Forward Aurrera Home Etxea New Tab Hegats Berria Main Menu Menu Nagusia Exit Fullscreen Irten Ikusleiho-osotik Clear history Garbitu historia NetworkManager SSL Certificate Error! SSL Egiaztapen Akatsa! The page you are trying to access has the following errors in the SSL certificate: Sartzen saiatzen ari zaren orrialdeak hurrengo akatsak ditu SSL egiaztagirian: <b>Organization: </b> <b>Erakundea: </b> <b>Domain Name: </b> <b>Domeinu Izena: </b> <b>Expiration Date: </b> <b>Epemuga Eguna: </b> <b>Error: </b> <b>Akatsa: </b> Would you like to make an exception for this certificate? Nahi duzu salbuespen bat egitea egiaztagiri honentzat? Authorisation required Baimena beharrezkoa Username: Erabiltzaile-izena: Password: Sarhitza: Save username and password on this site Gorde erabiltzaile-izena eta sarhitza gune honetan A username and password are being requested by %1. The site says: "%2" %1-k erabiltzaile-izena eta sarhitza eskatzen ditu. Guneak hau dio: "%2" FTP authorisation required FTB baimena beharrezkoa Login anonymously Hasi-saioa izengabe A username and password are being requested by %1:%2. %1:%2-k erabiltzaile-izena eta sarhitza eskatzen ditu. Proxy authorisation required Proxy baimena beharrezkoa Remember username and password for this proxy. Gogoratu erabiltzaile-izena eta sarhitza proxy honentzat. A username and password are being requested by proxy %1. %1 proxyak erabiltzaile-izena eta sarhitza eskatzen ditu. PageScreen Page Screen Orrialde Ikusleihoa Format: Heuskarria: Location: Kokalekua: Browse... Bilatu... Save as %1 Gorde honela %1 Choose location... Hautatu kokalekua... File '%1' already exists. Do you want to overwrite it? '%1' agiria jadanik badago. Gainidaztea nahi duzu? File already exists Agiria jadanik badago PluginsList Application Extensions Aplikazio Luzapenak Allow Application Extensions to be loaded Ahalbidetu Aplikazio Luzapenak gertatzea Settings Ezarpenak WebKit Plugins WebKit Pluginak <b>Click To Flash Plugin</b> <b>Klikatu Flash Plugina</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Klikatu Flash, orrialdeko Flash edukien berez gertatzea blokeatzen duen plugin bat da. Betik gertatu dezakezu eskuz Flash irakurketa ikurra klikatuz. Whitelist Zerrenda-zuria Add Gehitu Remove Kendu Allow Click To Flash Ahalbidetu Flash Klikatzea PluginsManager Add site to whitelist Gehitu gunea zerrenda-zurira Server without http:// (ex. youtube.com) Zerbitzaria hau gabe http:// (adib. youtube.com) Error! Akatsa! Cannot load extension! Ezinezkoa luzapena gertatzea! PopupWebView Inspect Element Aztertu Elementua PopupWindow File Agiria &Save Page As... G&orde Orrialdea Honela... Save Page Screen Gorde Orrialde Ikusleihoa Send Link... Bidali Lotura... &Print... I&rarkitu... Close Itxi Edit Editatu &Undo &Desegin &Redo Be&rregin &Cut &Ebaki C&opy Ko&piatu &Paste It&satsi Select All Hautatu Denak Find Bilatu View Ikusi &Stop &Gelditu &Reload &Birgertatu Zoom &In Zooma &Handitu Zoom &Out Zooma &Gutxitu Reset Berrezarri &Page Source &Orrialde Iturburua %1 - QupZilla %1 - QupZilla Preferences Preferences Hobespenak QupZilla QupZilla General Orokorra Appearance Itxura Tabs Hegatsak Browsing Nabigazioa Fonts Hizkiak Keyboard Shortcuts Lasterteklak Downloads Jeisketak Password Manager Sarhitz Kudeatzailea Privacy Pribatutasuna Notifications Jakinarazpenak Extensions Luzapenak Other Besteak Use current Erabili oraingoa Note: You cannot delete active profile. Oharra: Ezin duzu gaituriko profila ezabatu. Create New Sortu Berria Delete Ezabatu <b>Launching</b> <b>Abiarazpena</b> After launch: Abiarazi ondoren: Open blank page Ireki orrialde hutsa Open homepage Ireki etxeko-orrialdea Open speed dial Ireki abiarazte azkarra Restore session Leheneratu saioa Homepage: Etxeko-orrialdea: On new tab: Hegats berrian: Open blank tab Ireki hegats hutsa Open other page... Ireki beste orrialde bat... <b>Profiles</b> <b>Profilak</b> Startup profile: Hasiera profila: Check for updates on start Egiaztatu eguneraketarik dagoen hastean Active profile: Gaitu profila: In order to change language, you must restart browser. Hizkuntza aldatzeko, nabigatzailea berrabiarazi behar duzu. <b>Language</b> <b>Hizkuntza</b> Available translations: Itzulpen eskuragarriak: Don't load tabs until selected Ez gertatu hegatsak hautatu arte Check to see if QupZilla is the default browser on startup Hasieran egiaztatu QupZilla den berezko nabigatzailea Check Now Egiaztatu Orain Themes Azalgaiak Advanced options Aukera aurreratuak <b>Browser Window</b> <b>Nabigatzaile Leihoa</b> Show StatusBar on start Erakutsi Egoera-Barra hasterakoan Show Bookmarks ToolBar on start Erakutsi Lastermarka Tresna-Barra hasterakoan Show Navigation ToolBar on start Erakutsi Nabigazio Tresna-Barra hasterakoan <b>Navigation ToolBar</b> <b>Nabigazio Tresna-Barra</b> Show Home button Erakutsi Etxea botoia Show Back / Forward buttons Erakutsi Atzera / Aurrera botoiak <b>Background<b/> <b>Barrena<b/> Use transparent background Erabili barren gardena Show web search bar Erakutsi web bilaketa barra Show Add Tab button Erakutsi Gehitu Hegatsa botoia Show Reload / Stop buttons Erakutsi Birgertatu / Gelditu botoiak Tabs behaviour Hegats jokabidea Show tab previews Erakutsi hegats aurreikuspenak Make tab previews animated Egin hegats aurreikuspenak animatuak Hide tabs when there is only one tab Ezkutatu hegatsak hegats bakarra dagoenean Activate last tab when closing active tab Gaitu azken hegatsa gaituriko hegatsa isterakoan Open new tabs after active tab Ireki hegats berriak gaitutako hegatsaren ondoren Open new empty tabs after active tab Ireki hegats huts berria gaitutako hegatsaren ondoren Automatically switch to newly opened tab Berezgaitasunez aldatu berrikien irekitako hegatsera Don't quit upon closing last tab Ez utzi azken hegatsa isterakoan Ask when closing multiple tabs Galdetu hegats anitz isterakoan Closed tabs list instead of opened in tab bar Itxitako hegatsen zerrenda hegats barran irekitakoen ordez Address Bar behaviour Helbide Barra jokabidea Suggest when typing into address bar: Iradoki helbide barran idazterakoan: History and Bookmarks Historia eta Lastermarkak History Historia Bookmarks Lastermarkak Nothing Ezer ez Press "Shift" to not switch the tab but load the url in the current tab. Sakatu "Shift" hegatsa ez aldatzeko baina url-a oraingo hegatsean gertatzeko. Propose to switch tab if completed url is already loaded. Eskaini hegatsez aldatzea osatutako url-a jadanik gertaturik badago. Always show go icon Betik erakutsi joan ikurra Select all text by double clicking in address bar Hautatu idazki dena helbide barran klik bikoitza eginez Select all text by clicking in address bar Hautatu idazki dena helbide barran klik eginez Search with Default Engine Bilatu Berezko Gailuarekin Show loading progress in address bar Erakutsi gertaketa garapena helbide barran Fill Bete Bottom Beheren Top Goien Custom color: Norbere margoa: Select color Hautatu margoa ... ... Reset Berrezarri Web Configuration Web Itxurapena Allow Netscape Plugins (Flash plugin) Ahalbidetu Netscape Pluginak (Flash plugina) Allow JavaScript Ahalbidetu JavaScript Allow JAVA Ahalbidetu JAVA Allow DNS Prefetch Ahalbidetu DNS Aurrebilaketa Enable XSS Auditing try to detect possible XSS attacks when executing javascript Gaitu XSS Aditzea Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Irarkitu elementuaren barrena Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Barneratu loturak foku katean Animated scrolling Irristatze animatua Enable caret browsing Gaitu teklatu nabigazioa Enable spatial navigation Gaitu nabigazio espaziala Zoom text only Zooma idazkian bakarrik Mouse wheel scrolls Sagu gurpil irristatzeak lines on page lerro orrialdean Default zoom on pages: Berezko zooma orrialdetan: Local Storage Tokiko Biltegia Maximum Gehienez 50 MB 50 MB 1 1 Maximum pages in cache: Gehinezko orrialde katxean: Allow storing network cache on disk Ahalbidetu sare katxea diskan biltegiratzea Store cache in: Biltegiratu katxea hemen: Allow saving history Ahalbidetu historia gordetzea Delete history on close Ezabatu historia isterakoan Allow local storage of HTML5 web content Ahalbidetu HTML5 web edukien tokiko biltegiratzea Delete locally stored HTML5 web content on close Ezabatu tokian biltegiratutako HTML5 web edukiak isterakoan Delete now Ezabatu orain Proxy Configuration Proxy Itxurapena Proxy Auto-Config (.pac) file Proxy Berez-Itxurap (.pac) agiria Reload Birgertatu HTTP HTTP SOCKS5 SOCKS5 Port: Ataka: Username: Erabiltzaile-izena: Password: Sarhitza: Don't use on: Ez erabili: Manual configuration Eskuzko itxurapena System proxy configuration Sistemaren proxy itxurapena Do not use proxy Ez erabili proxyrik <b>Exceptions</b> <b>Salbuespenak</b> Server: Zerbitzaria: Use different proxy for https connection Erabili proxy ezberdina https elkarketarako Use script for automatic configuration: Erabili eskripta berezgaitasunezko itxurapenerako: <b>Font Families</b> <b>Hizki Sendiak</b> Standard Estandarra Fixed Zuzenduta Serif Serif Sans Serif Sans Serif Cursive Etzana Fantasy Fantasia <b>Font Sizes</b> <b>Hizki Neurriak</b> Fixed Font Size Zuzendutako Hizki Neurria Default Font Size Berezko Hizki Neurria Minimum Font Size Gutxienezko Hizki Neurria Minimum Logical Font Size Gutxienezko Hizki Neurri Logikoa <b>Shortcuts</b> <b>Lasterteklak</b> Switch to tabs with Alt + number of tab Aldatu hegatsez Alt + hegats zenbakiarekin Load speed dials with Ctrl + number of speed dial Gertatu abiarazte azkarrak Ktrl + abiarazte azkar zenbakiarekin Add .co.uk domain by pressing ALT key in address bar Gehitu .co.uk domeinua helbide barran ALT tekla sakatuz <b>Download Location</b> <b>Jeisketa Kokalekua</b> Ask everytime for download location Galdetu betik jeisketa kokalekua Use defined location: Erabili zehaztutako kokalekua: <b>Download Options</b> <b>Jeisketa Aukerak</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Erabili jatorrizko sistema agiri elkarrizketa (badaiteke arazoak sortzea edo ez sortzea SSL segurtasun edukiak jeisterakoan) Close download manager when downloading finishes Itxi jeisketa kudeatzailea jeisketak amaitutakoan <b>External download manager</b> <b>Kanpoko jeisketa kudeatzailea</b> Use external download manager Erabili kanpoko jeisketa kudeatzailea Executable: Exekutagarria: Arguments: Argumentoak: Leave blank if unsure Utzi hutsik ez bazaude zihur <b>%d</b> will be replaced with URL to be downloaded <b>%d</b> URL-arekin ordeztuko da jeisteko <b>AutoFill options</b> <b>Berez-Betetze aukerak</b> Allow saving passwords from sites Ahalbidetu guneen sarhitzak gordetzea Send Referer header to servers Bidali Xehetasun idazburua zerbitzariei <b>Cookies</b> <b>Cookiak</b> Send Do Not Track header to servers Bidali Ez Aztarnatu idazburuak zerbitzariei <b>Other</b> <b>Besterik</b> Manage CA certificates Kudeatu CA egiaztagiriak Certificate Manager Egiaztapen Kudeatzailea <b>SSL Certificates</b> <b>SSL Egiaztagiriak</b> <b>JavaScript</b> <b>JavaScript</b> Manage JavaScript privacy options Kudeatu JavaScript pribatutasun aukerak JavaScript options JavaScript aukerak Cookies Manager Cookie Kudeatzailea Manage Cookies Kudeatu Cookieak <b>HTML5 Permissions</b> <b>HTML5 Baimenak</b> Manage HTML5 permissions Kudeatu HTML5 baimenak HTML5 Permissions HTML5 Baimenak <b>Notifications</b> <b>Jakinarazpenak</b> Use OSD Notifications Erabili IGE Jakinarazpenak Use Native System Notifications (Linux only) Erabili Jatorrizko Sistema Jakinarazpenak (Linux bakarrik) Do not use Notifications Ez erabili Jakinarazpenik Expiration timeout: Epemuga: seconds segundu <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Oharra: </b>IGE Jakinarazpenaren kokapena aldatu dezakezu ikusleihoan arrastatuz. StyleSheet automatically loaded with all websites: Estilo-Orria berezgaitasunez gertaturik webgune guztiekin: Languages Hizkuntzak <b>Preferred language for web sites</b> <b>Web gunetarako hizkuntza hobetsia</b> <b>Change browser identification</b> <b>Aldatu nabigatzaile ezagutarazlea</b> User Agent Manager Erabiltzaile Ordezkari Kudeatzailea Default Berezkoa Set as default Ezarri berezko bezala OSD Notification IGE Jakinarazpena Drag it on the screen to place it where you want. Arrastatu ikusleihoan nahi duzun tokian jartzeko. Choose download location... Hautatu jeisketa kokalekua... Choose stylesheet location... Hautatu estilo-orriaren kokalekua... Deleted Ezabatuta Choose executable location... Hautatu exekutagarri kokalekua... Choose cache path... Hautatu katxe helburua... New Profile Profil Berria Enter the new profile's name: Sartu profil berriaren izena: Error! Akatsa! This profile already exists! Profil hau jadanik badago! Cannot create profile directory! Ezinezkoa profil zuzenbidea sortzea! Confirmation Baieztapena Are you sure to permanently delete "%1" profile? This action cannot be undone! Zihur zaude "%1" profila betirako ezabatzea nahi duzula? Ekintza hau ezin da desegin! Select Color Hautatu Margoa QObject Native System Notification Jatorrizko Sistema Jakinarazpena Save file as... Gorde agiria honela... The file is not an OpenSearch 1.1 file. Agiria ez da OpenSearch 1.1 agiri bat. <not set in certificate> <ez da egiaztapenik ezarri> Unknown size Neurri ezezaguna KB KB MB MB GB GB Executable: Exekutagarria: Arguments: Argumentoak: Cannot start external program Ezinezkoa kanpoko programa abiaraztea Cannot start external program! %1 Ezinezkoa kanpoko programa abiaraztea! %1 QtWin Open new tab Ireki hegats berria Opens a new tab if browser is running Hegats berri bat irekitzen du nabigatzailea ekinean badago Open new window Ireki leiho berria Opens a new window if browser is running Leiho berri bat irekitzen du nabigatzailea ekinean badago Open download manager Ireki jeisketa kudeatzailea Opens a download manager if browser is running Jeisketa kudeatzailea irekitzen du nabigatzailea ekinean badago QupZilla QupZilla QupZilla Private Browsing Enabled Nabigazio Pribatua Gaituta IP Address of current page Oraingo orrialdearen IP Helbidea &About QupZilla &QupZilla-ri Buruz Pr&eferences &Hobespenak Quit Utzi &File &Agiria &New Window &Leiho Berria New Tab Hegats Berria Open Location Ireki Kokalekua Open &File... Ireki &Agiria... Close Tab Itxi Hegatsa Close Window Itxi Leihoa &Save Page As... G&orde Orrialdea Honela... Save Page Screen Gorde Orrialde Ikusleihoa Send Link... Bidali Lotura... &Print... I&rarkitu... Import bookmarks... Inportatu lastermarkak... &Edit &Editatu &Undo &Desegin &Redo Be&rregin &Cut &Ebaki C&opy &Kopiatu &Paste It&satsi Select &All &Hautatu Denak &Find &Bilatu &View &Ikusi &Navigation Toolbar &Nabigazio Tresnabarra &Bookmarks Toolbar &Lastermarka Tresnabarra Sta&tus Bar &Egoera Barra &Menu Bar &Menu Barra &Tabs on Top &Hegatsak Gainean &Fullscreen &Ikusleiho-osoa &Stop &Gelditu &Reload &Birgertatu Character &Encoding Hizki-&Kodeaketa Enable &Caret Browsing Gaitu &Teklatu Nabigazioa Toolbars Tresnabarrak Sidebars Albobarrak Zoom &In Zooma &Handitu Zoom &Out Zooma Gut&xitu Reset Berrezarri &Page Source &Orrialde Iturburua Hi&story &Historia &Back A&tzera &Forward A&urrera &Home Et&xea Show &All History &Erakutsi Historia Guztia Closed Tabs Itxitako Hegatsak Recently Visited Berriki Ikusiak Most Visited Gehien Ikusiak &Bookmarks Laster&markak Bookmark &This Page Lastermarkatu &Orrialde Hau Bookmark &All Tabs Lastermarkatu &Hegats Guztiak Organize &Bookmarks &Antolatu Lastermarkak &Tools &Tresnak &Web Search &Web Bilaketa Page &Info &Orrialde Argibideak &Download Manager &Jeisketa Kudeatzailea &Cookies Manager &Cookie Kudeatzailea &AdBlock &AdBlock RSS &Reader &RSS Irakurtzailea Web In&spector Web &Ikertzailea Clear Recent &History &Garbitu Berrikiko Historia New &Private Window Leiho &Pribatu Berria &Help &Laguntza About &Qt Qt-ri &Buruz Information about application Aplikazioari buruzko argibideak Configuration Information Itxurapen Argibideak Report &Issue &Jakinarazi Arazoa Restore &Closed Tab Lehe&neratu Itxitako Hegatsa (Private Browsing) (Nabigazio Pribatua) Empty Hutsik Restore All Closed Tabs Leheneratu Itxitako Hegats Guztiak Clear list Garbitu zerrenda Other Besteak %1 - QupZilla %1 - QupZilla HTML files HTML agiriak Image files Irudi agiriak Text files Idazki agiriak All files Agiri guztiak Open file... Ireki agiria... QupZilla %1 (%2) QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Oraindik %1 hegats daude irekita eta zure saioa ez da biltegiratuko. Zihur zaude QupZilla uztea nahi duzula? Don't ask again Ez galdetu berriro There are still open tabs Oraindik hegats irekiak daude QupZillaSchemeReply No Error Akats Gabe Not Found Ez da Aurkitu Report Issue Jakinarazi Arazoa If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Arazoak badituzu QupZilla-rekin, mesedez lehenik saiatu luzapen guztiak ezgaitzen. <br/>Honek ez badu zuzentzen, orduan mesedez bete galdekizun hau: Your E-mail Zure Post@ Issue type Arazo mota Issue description Arazoaren azalpena Send Bidali E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. Post@ aukerazkoa da<br/><b>Oharra: </b>Mesedez lehenik irakurri nola jakinarazi akats bat <a href=%1>hemen</a>. Please fill out all required fields! Mesedez bete beharrezko eremu guztiak! Start Page Hasiera Orrialdea Search on Web Bilatu Webean Search results provided by DuckDuckGo Bilatu DuckDuckGo-ek hornituriko emaitzak About QupZilla QupZilla-ri Buruz <h1>Private Browsing</h1> <h1>Nabigazio Pribatua</h1> Information about version Bertsioari buruzko argibideak Copyright Copyrighta Version Bertsioa WebKit version WebKit bertsioa Main developer Garatzaile nagusia Contributors Laguntzaileak Translators Itzultzaileak Speed Dial Abiarazpen Azkarra Add New Page Gehitu Orrialde Berria Edit Editatu Remove Kendu Reload Birgertatu Are you sure to remove this speed dial? Zihur zaude abiarazte azkar hau kentzea nahi duzula? Load title from page Gertatu izenburua orrialdetik Url Url-a Title Izenburua Apply Ezarri Close Itxi New Page Orrialde Berria Speed Dial settings Abiarazpen Azkar ezarpenak Placement: Kokapena: Auto Berez Cover Azala Fit Finkatu Fit Width Finkatu Zabalera Fit Height Finkatu Garaiera Use background image Erabili barren irudia Select image Hautatu irudia Maximum pages in a row: Gehienezko orrialde lerro batean: Change size of pages: Aldatu orrialdeen neurria: Center speed dials Erdiratu abiarazte azkarrak Restore Session Leheneratu Saioa Oops, QupZilla crashed. Ooh, QupZilla matxuratuta. We apologize for this. Would you like to restore the last saved state? Sentitzen dugu hau. Nahi duzu gordetako azken egoerara leheneratzea? Try removing one or more tabs that you think cause troubles Saiatu kentzen arazoak eragiten dituela uste duzun hegats bat edo gehiago Or you can start completely new session Edo saio berri oso bat hasi dezakezu Configuration Information Itxurapen Argibideak This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Orrialde honek QupZilla-ren oraingo itxurapenari buruzko argibideak ditu - garrantzitsuak arazoak konpontzeko. Mesedez barneratu argibide hauek akats jakinarazpenak aurkezterakoan. Browser Identification Nabigatzaile Ezagutarazlea Paths Helburuak Build Configuration Eraiketa Itxurapena Preferences Hobespenak Option Aukera Value Balioa Extensions Luzapenak Name Izena Author Egilea Description Azalpena Application version Aplikazio bertsioa Qt version Qt bertsioa Build time Eraiketa Eguna Platform Plataforma Profile Profila Settings Ezarpenak Saved session Gordetako saioa Pinned tabs Tolestutako hegatsak Data Datuak Themes Azalgaiak Translations Itzulpenak Disabled Ezgaituta <b>Enabled</b> <b>Gaituta</b> Debug build Garbiketa eraiketa WebGL support WebGL sostengua Windows 7 API Windows 7 API KDE integration KDE baterapena Portable build Eraiketa eramangarria No available extensions. Ez dago luzapenik eskuragarri. RSSManager RSS Reader RSS Irakurtzailea Empty Hutsik Add feed Gehitu jarioa Edit feed Editatu jarioa Delete feed Ezabatu jarioa Optimize Database Hoberendu Datubasea Reload Birgertatu News Berriak Loading... Gertatzen... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Ez duzu RSS Jariorik.<br/> Mesedez gehitu zenbait RSS ikurrarekin nabigazio barran jarioak eskaintzen dituzten guneetan. Add new feed Gehitu jario berria Please enter URL of new feed: Mesedez sartu jario berriaren URL-a: New feed Jario berria Fill title and URL of a feed: Bete jario baten izenburua eta URL-a: Feed title: Jario izenburua: Feed URL: Jario URL-a: Edit RSS Feed Editatu RSS Jarioa Open link in current tab Ireki lotura oraingo hegatsean Open link in new tab Ireki lotura hegats berrian Error in fetching feed Akatsa jarioa eskuratzerakoan RSS feed duplicated RSS jarioa bikoiztuta You already have this feed. Jadanik badazu jario hau. RSSNotification Add this feed into Gehitu jario hau hemen Add Gehitu RSS feed <b>"%1"</b> RSS jarioa <b>"%1"</b> Internal Reader Barneko Irakurtzailea Other... Besterik... Liferea not running Liferea ez dago ekinean Liferea must be running in order to add new feed. Liferea ekinean egon behar da jario berri bat gehitzeko. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. RSS jario hau beste aplikazio batera gehitzeko, mesedez erabili argibide hauek:<br/><br/><b>Izenburua: </b>%1<br/><b>Url-a: </b>%2<br/><br/>Jario honen url helbidea zure gakoan kopiatu da. Add feed into other application Gehitu jarioa beste aplikazio batean RSSWidget Add RSS Feeds from this site Gehitu gune honetako RSS Jarioak Untitled feed Jario izenburugabea Add Gehitu RecoveryWidget Start New Session Hasi Saio Berria Restore Leheneratu Window %1 Leihoa %1 RegisterQAppAssociation Warning! Kontuz! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) Zenbait arazo daude. Mesedez, berrezarri QupZilla. Badaiteke administrari eskubideekin berrabiaraztea magikoa izatea zuretzat! ;) RssIcon Add RSS from this page... Gehitu RSS-a orrialde honetatik... SSLManager Certificate Manager Egiaztapen Kudeatzailea CA Authorities Certificates CA Agintaritza Egiaztagiriak Show info Erakutsi argibideak This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Hau sistemaren helburu estandarrean eta erabiltzaileak adierazitako helbideetan biltegiratutako CA Agintzaritza Egiaztagiri zerrenda bat da. Local Certificates Tokiko Egiaztagiriak Import Inportatu Remove Kendu This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Hau zure erabiltzaile profilean biltegiratutako Tokiko Egiaztagiri zerrenda bat da. Salbuespen bat jaso duten egiaztagiri guztiak ere baditu. Settings Ezarpenak Add Gehitu If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. CA Agintzaritza Egiaztagiriak ez badira berezgaitasunez gertatzen sistematik, eskuz adierazi ditzakezu egiaztagiriak biltegiratzen diren helburuak. <b>NOTE:</b> Setting this option is a high security risk! <b>OHARRA:</b> Aukera hau ezartzea segurtasun arrisku handia da! Ignore all SSL Warnings Ezikusi SSL Kontuz ohar guztiak All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Egiaztagiri guztiak .crt atzizkia izan behar dute. Egiaztagiri helburuak gehitu edo kendu ondoren, beharrezkoa da QupZilla berrabiaraztea aldaketek eragina izateko. Choose path... Hautatu helburua... Import certificate... Inportatu egiaztagiria... Certificate Informations Egiaztapen Argibideak SearchEnginesDialog Manage Search Engines Kudeatu Bilaketa Gailuak Add... Gehitu... Remove Kendu Edit Editatu Set as default Ezarri berezko bezala Up Gora Down Behera Search Engine Bilaketa Gailua Shortcut Lasterbidea Defaults Berezkoak Add Search Engine Gehitu Bilaketa Gailua Remove Engine Kendu Gailua You can't remove the default search engine.<br>Set a different engine as default before removing %1. Ezin duzu berezko bilaketa gailua kendu.<br>Ezarri beste gailu bat berezko bezala %1 kendu aurretik. Edit Search Engine Editatu Bilaketa Gailua SearchEnginesManager Search Engine Added Bilaketa Gailua Gehituta Search Engine "%1" has been successfully added. "%1" Bilaketa Gailua ongi gehitu da. Search Engine is not valid! Bilaketa Gailua ez da baliozkoa! Error Akatsa Error while adding Search Engine <br><b>Error Message: </b> %1 Akatsa Bilaketa Gailua gehitzerakoan <br><b>Akats Mezua: </b> %1 SearchToolBar No results found. Ez da emaitzik aurkitu. SearchToolbar Search: Bilatu: Search... Bilatu... Highlight Nabarmendu Case sensitive Hizki larri-xeheak SideBar Bookmarks Lastermarkak History Historia SiteInfo Site Info Gune Argibideak General Orokorra Media Multimedia Databases Datubaseak Security Segurtasuna Size: Neurria: Site address: Gune helbidea: Encoding: Kodeaketa: Meta tags of site: Gunearen meta etiketak: Tag Etiketa Value Balioa <b>Security information</b> <b>Segurtasun argibideak</b> Details Xehetasunak Image Irudia Image address Irudiaren helbidea <b>Preview</b> <b>Aurreikuspena</b> <b>Database details</b> <b>Datubase xehetasunak</b> Name: Izena: Path: Helburua: <database not selected> <ez da datubaserik hautatu> <not set in certificate> <ez da egiaztapenik ezarri> No databases are used by this page. Ez da datubaserik erabili orrialde honetan. <b>Connection is Encrypted.</b> <b>Elkarketa Enkriptaturik dago.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Zure orrialde honetarako elkarketa segurua da egiaztagiri honekin: </b> <b>Connection Not Encrypted.</b> <b>Elkarketa Ez Enkriptatua.</b> <b>Your connection to this page is not secured!</b> <b>Zure orrialde honetarako elkarketa ez da segurua!</b> Copy Image Location Kopiatu Irudiaren Kokalekua Copy Image Name Kopiatu Irudiaren Izena Save Image to Disk Gorde Irudia Diskan Error! Akatsa! This preview is not available! Aurreikuspen hau ez dago eskuragarri! Save image... Gorde irudia... Cannot write to file! Ezinezkoa agirian idaztea! Preview not available Aurreikuspena ez dago eskuragarri SiteInfoWidget More... Gehiago... Your connection to this site is <b>secured</b>. Zure gune honetarako elkarketa <b>segurua</b> da. Your connection to this site is <b>unsecured</b>. Zure gune honetarako elkarketa <b>ez da segurua</b>. This is your <b>%1</b> visit of this site. Hau <b>%1</b>. ikusaldia da gune honetan. You have <b>never</b> visited this site before. <b>Inoiz ez</b> duzu gune hau ikusi lehenago. first lehen second bigarren third hirugarren SourceViewer Source of Honen iturburua File Agiria Load in page Gertatu orrialdean Save as... Gorde honela... Close Itxi Edit Editatu Undo Desegin Redo Berregin Cut Ebaki Copy Kopiatu Paste Itsatsi Select All Hautatu Denak Find Bilatu Go to Line... Joan Lerrora... View Ikusi Reload Birgertatu Editable Editagarria Word Wrap Hitz Ingurapena Source loaded in page Iturburua orrialdean gertaturik Cannot load in page. Page has been closed. Ezinezkoa irudia gertatzea. Orrialdea itxi egin da. Save file... Gorde agiria... Error! Akatsa! Cannot write to file! Ezinezkoa agirira idaztea! Error writing to file Akatsa agirira idazterakoan Source successfully saved Iturburua ongi gorde da Source reloaded Iturburua birgertaturik Cannot reload source. Page has been closed. Ezinezkoa iturburua gertatzea. Orrialdea itxi egin da. Editable changed Editagarria aldatuta Word Wrap changed Hitz Ingurapena aldatuta Enter line number Sartu lerro zenbakia SourceViewerSearch Search: Bilatu: Search... Bilatu... Whole words Hitz guztiak SpeedDial Image files Irudi agiriak Select image... Hautatu irudia... Unable to load Ezinezkoa gertatzea SpellCheckDialog SpellCheck Idaz-Egiaztapena <b>Dictionary path</b> <b>Hiztegi helburua</b> Change... Aldatu... <b>User dictionary</b> <b>Erabiltzaile hiztegia</b> Add Gehitu Remove Kendu Using Hunspell library Hunspell liburutegia erabiltzen Choose dictionary path... Hautatu hiztegi helburua... Add new word... Gehitu hitz berria... Add new word: Gehitu hitz berria: Speller No suggestions Iradokizunik ez Add to dictionary Gehitu hiztegira Settings Ezarpenak SqueezeLabelV2 Copy Kopiatu SslErrorDialog SSL Certificate Error! SSL Egiaztagiri Akatsa! Only for this session Saio honetarako bakarrik TabBar &New tab &Hegats Berria &Stop Tab &Gelditu Hegatsa &Reload Tab &Birgertatu Hegatsa &Duplicate Tab Bi&koiztu Hegatsa D&etach Tab &Nabarmendu Hegatsa Un&pin Tab Ez-&tolestu Hegatsa &Pin Tab &Tolestu Hegatsa Re&load All Tabs B&irgertatu Hegats Guztiak &Bookmark This Tab Laster&markatu Hegats Hau Bookmark &All Tabs &Lastermarkatu Hegats Guztiak Close Ot&her Tabs Itxi B&este Hegatsak Cl&ose It&xi Reloa&d All Tabs B&irgertatu Hegats Guztiak Restore &Closed Tab &Leheneratu Itxitako Hegatsa Close Tabs Itxi Hegatsak Do you really want to close other tabs? Egitan nahi duzu beste hegatsak istea? TabWidget New Tab Hegats Berria List of tabs Hegats zerrenda Loading... Gertatzen... No Named Page Izengabeko Orrialdea Currently you have %1 opened tabs Une honetan %1 hegats d(it)uzu irekita New tab Hegats Berria Empty Hutsik Restore All Closed Tabs Leheneratu Itxitako Hegats Guztiak Clear list Garbitu zerrenda TabbedWebView Loading... Gertatzen... %1 - QupZilla %1 - QupZilla Inspect Element Aztertu Elementoa ThemeManager <b>Name:</b> <b>Izena:</b> <b>Author:</b> <b>Egilea:</b> <b>Description:</b> <b>Azalpena:</b> License Baimena ToolButton Stop Gelditu Reload Birgertatu Updater Update available Eguneraketa eskuragarri New version of QupZilla is ready to download. QupZilla-ren bertsio berri bat gertu dago jeisteko. Update Eguneratu UserAgentDialog User Agent Manager Erabiltzaile Ordezkari Kudeatzailea Change global User Agent Aldatu Erabiltzaile Ordezkari orokorra Use different User Agents for specified sites Erabili Erabiltzaile Ordezkari ezberdina adierazitako guneetan Site Gunea User Agent Erabiltzaile Ordezkaria Add Gehitu Remove Kendu Edit Editatu Add new site Gehitu gune berria Edit site Editatu gunea Site domain: Gune domeinua: User Agent: Erabiltz. Ordezk.: WebInspectorDockWidget Web Inspector Web Ikertzailea WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? QupZilla-k ezin ditu kudeatu <b>%1:</b> loturak. Eskaturiko lotura da <ul><li>%2</li></ul>Nahi duzu QupZilla lotura hau sistemako aplikazio batekin irekitzen saiatzea? Remember my choice for this protocol Gogoratu nire hautapena protokolo honetarako External Protocol Request Kanpoko Protokolo Eskabidea To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Orrialde hau erakusteko, QupZillak berriro egiteko eskabidea berbidali behar du (jadanik egina den erosketa bat bilatzea bezala.) Confirm form resubmission Baieztatu berraurkezpenetik Select files to upload... Hautatu igotzeko agiriak... Server refused the connection Zerbitzariak elkarketa baztertu du Server closed the connection Zerbitzariak elkarketa itxi du Server not found Zerbitzaria ez da aurkitu Connection timed out Elkarketa epezkanpo Untrusted connection Elkarketa ez da fidagarria Temporary network failure Aldibaterako sare hutsegitea Proxy connection refused Proxy elkarketa baztertuta Proxy server not found Proxy zerbitzaria ez da aurkitu Proxy connection timed out Proxy elkarketa epezkanpo Proxy authentication required Proxy egiaztapena beharrezkoa Content not found Edukia ez da aurkitu Unknown network error Sare akats ezezaguna AdBlocked Content AdBlockeatutako Edukia Blocked by <i>%1</i> <i>%1</i>-k Blokeatuta Content Access Denied Edukirako Sarbidea Ukatuta Error code %1 Akats kodea %1 Failed loading page Hutsegitea orrialdea gertatzerakoan QupZilla can't load page. QupZillak ezin du orrialdea gertatu. QupZilla can't load page from %1. QupZillak ezin du orrialdea gertatu hemendik: %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Egiaztatu helbidea <b>ww.</b>adibidea.com <b>www.</b>adibidea.com ordez bezalako idaz akatsak bilatzeko If you are unable to load any pages, check your computer's network connection. Orrialdeak gertatzea ezinezkoa bazaizu, egiaztatu zure ordenagailuaren sare elkarketa. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Zure ordenagailua edo sarea suhesi edo proxy batez babestuta badago, zihurtatu QupZillak Webera sartzeko baimena duela. Try Again Saiatu Berriro JavaScript alert JavaScript alerta Prevent this page from creating additional dialogs Saihestu orrialde hau elkarrizketa gehigarriak sortzetik Choose file... Hautatu agiria... Cannot read data from <b>%1</b>. Upload was cancelled! Ezinezkoa datuak irakurtzea <b>%1</b>-tik. Igoera ezeztatu egin da! Cannot read file! Ezinezkoa agiria irakurtzea! WebSearchBar Manage Search Engines Kudeatu Bilaketa Gailuak Add %1 ... Gehitu %1 ... Paste And &Search &Itsatsi Eta Bilatu Clear All Garbitu Denak Show suggestions Erakutsi iradokizunak Search when engine changed Bilatu gailua aldatutakoan WebView No Named Page Izengabeko Orrialdea Create Search Engine Sortu Bilaketa Gailua Cut Ebaki Copy Kopiatu Paste Itsatsi Select All Hautatu Denak Default Berezkoa Left to Right Ezkerretik Eskuinera Right to Left Eskuinetik Ezkerrera Bold Lodia Italic Etzana Underline Azpimarratua &Reload &Birgertatu S&top &Gelditu Delete Ezabatu &Back A&tzera &Forward A&urrera This frame Frame hau Show &only this frame Erakutsi &frame hau bakarrik Show this frame in new &tab E&rakutsi frame hau hegats berrian Print frame Irarkitu framea Zoom &in Zooma &handitu &Zoom out Zooma &gutxitu Reset Berrezarri Show so&urce of frame Erakutsi &frame iturburua Book&mark page &Lastermarkatu orrialdea &Save page as... G&orde orrialdea honela... &Copy page link &Kopiatu orrialde lotura Send page link... Bidali orrialde lotura... &Print page &Irarkitu orrialdea Select &all Hautatu &denak Validate page Balioztatu orrialdea Show so&urce code &Erakutsi iturburu kodea Show info ab&out site E&rakutsi gunearen argibideak Open link in new &tab Ireki lotura &hegats berrian Open link in new &window Ireki lotura &leiho berrian B&ookmark link Laster&markatu lotura &Save link as... &Gorde lotura honela... Send link... Bidali lotura... &Copy link address Kopiat&u lotura helbidea Show i&mage &Erakutsi irudia Copy im&age &Kopiatu irudia Copy image ad&dress K&opiatu irudiaren helbidea &Save image as... Go&rde irudia honela... Send image... Bidali irudia... Send text... Bidali idazkia... Google Translate Google Itzulpena Dictionary Hiztegia Go to &web address Joan &web helbidera Search "%1 .." with %2 Bilatu "%1 .." honekin %2 Search with... Bilatu honekin... &Play &Irakurri &Pause &Pausatu Un&mute &Desmututu &Mute &Mututu &Copy Media Address &Kopiatu Multimedia Helbidea &Send Media Address &Bidali Multimedia Helbidea Save Media To &Disk &Gorde Multimedia Diskan Check &Spelling &Idaz Egiaztapena Languages Hizkuntzak jsAlert Prevent this page from creating additional dialogs Saihestu orrialde hau elkarrizketa gehigarriak sortzetik qupzilla-1.6.0/translations/fa_IR.ts000066400000000000000000011122661226107126500174430ustar00rootroot00000000000000 AboutDialog About QupZilla درباره کوپزیلا Authors برنامه‌نویس‌ها Authors and Contributors برنامه‌نویس‌ها و هم‌کارها < About QupZilla < درباره کوپزیلا <p><b>Application version %1</b><br/> <p><b>نسخه نرم‌افزار&rlm; %1</b><br/> <b>WebKit version %1</b></p> <b>نسخه وب‌کیت&rlm; %1</b></p> <small>Build time: %1 </small></p> <small>&#8235;زمان ساخت: %1&#8236;</small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>توسعه‌دهنده اصلی:</b><br/>%1 &lt;%2&gt;&lrm;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>هم‌کارها:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>ترجمه‌کنندگان:</b><br/>%1</p> AcceptLanguage Preferred Languages زبان‌های ترجیحی Add... افزودن... Remove حذف Up بالا Down پایین Personal [%1] شخصی [%1] AdBlockAddSubscriptionDialog Add Subscription افزودن اشتراک Title: سرنویس: Address: آدرس: Add new subscription to AdBlock: افزودن اشتراک تازه به AdBlock: AdBlockCustomList Custom Rules قاعده‌های خودساخته AdBlockDialog AdBlock Configuration پیکربندی AdBlock Enable AdBlock فعال‌سازی AdBlock Search... یافتن... Options گزینه‌ها AdBlock ‏AdBlock Use only essential part of EasyList (for performance reasons) Add Rule افزودن قاعده Remove Rule حذف قاعده Add Subscription افزودن اشتراک Remove Subscription حذف اشتراک Update Subscriptions بروزرسانی اشتراک Learn about writing rules... یادگیری شیوه نوشتن قاعده‌ها... AdBlockIcon AdBlock lets you block unwanted content on web pages ‏AdBlock به شما اجازه می‌دهد محتویات ناخواسته روی صفحه‌های وب را مسدود کنید Blocked popup window پنجره popup مسدود شده AdBlock blocked unwanted popup window. ‏AdBlock پنجره popup ناخواسته را، مسدود کرد. AdBlock ‏AdBlock Show AdBlock &Settings نمایش &سامانش AdBlock Disable on %1 روی %1 غیرفعال شود Disable only on this page فقط روی این صفحه غیرفعال شود Blocked Popup Windows پنجره‌های popup مسدود شده %1 with (%2) %1 با (%2) No content blocked هیچ محتویاتی مسدود نشده Blocked URL (AdBlock Rule) - click to edit rule نشانی مسدود است (قاعده AdBlock) - برای ویرایش قاعده کلیک کنید AdBlockManager Do you want to add <b>%1</b> subscription? آیا می‌خواهید اشتراک <b>%1</b> را اضافه کنید؟ AdBlock Subscription اشتراک AdBlock EasyList فهرست راحت AdBlockTreeWidget Add Rule افزودن قاعده Remove Rule حذف قاعده Add Custom Rule افزودن قاعده خودساخته Please write your rule here: لطفا قاعده خودتان را اینجا بنویسید: %1 (recently updated) %1 (اخیرا بروز شده) AddAcceptLanguage Add Language افزودن زبان Choose preferred language for web sites انتخاب زبان ترجیحی برای تارنماها Personal definition: تعریف‌های شخصی: AesInterface Warning! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. AutoFill Database (plaintext) پایگاه‌داده (متنی) Database (encrypted) Enter Master Password Permission is required, please enter Master Password: Warning! Entered password is wrong! This backend needs a master password to be set! QupZilla just switches to its default backend AutoFillManager Passwords are stored in: Change backend Backend options Passwords رمزها Server خادم Username نام‌کاربری Password رمز Import/Export درون‌ریزی/برون‌ریزی Show Passwords نمایش رمز‌ها Edit ویرایش Remove حذف Remove All حذف همه Exceptions استثناها Import Passwords from File... درون‌ریزی رمزها از پرونده... Export Passwords to File... برون‌ریزی رمزها به پرونده... Search یافتن Change backend... Change backend: Are you sure that you want to show all passwords? آیا از نمایش همه رمز‌ها اطمینان دارید؟ Hide Passwords مخفی کردن رمزها Confirmation تایید Are you sure to delete all passwords on your computer? آیا از حذف همه رمز‌های ذخیره شده روی رایانه‌تان اطمینان دارید؟ Edit password ویرایش رمز Change password: تغییر رمز: Choose file... انتخاب پرونده... Cannot read file! نمی‌تواند پرونده را بخواند! Successfully imported درون‌ریزی با موفقیت به انجام رسید Error while importing! خطا هنگام درون‌ریزی! Cannot write to file! نمی‌تواند بر روی پرونده بنویسد! Successfully exported برون‌ریزی با موفقیت به انجام رسید AutoFillNotification Update بروزرسانی Remember بخاطر سپردن Never For This Site برای این تارنما هرگز Not Now اکنون نه on %1 روی %1 for <b>%1</b> برای <b>%1</b> Do you want QupZilla to update saved password %1? آیا می‌خواهید کوپزیلا کلمه‌عبور ذخیره شده %1 را بروز برساند؟ Do you want QupZilla to remember the password %1 %2? آیا می‌خواهید کوپزیلا کلمه‌عبور %1 %2 را بخاطر بسپارد؟ AutoFillWidget Choose username to login انتخاب نام‌کاربری برای ورود Login ورود Login as <b>%1</b> ورود به عنوان <b>%1</b> BookmarkIcon Bookmark this Page صفحه را نشان‌دار کن Edit this bookmark این نشان را ویرایش کن BookmarksImportDialog Import Bookmarks درون‌ریزی نشان‌ها <b>Import Bookmarks</b> <b>درون‌ریزی نشان‌ها</b> From File از پرونده Internet Explorer Choose browser from which you want to import bookmarks: انتخاب مرورگری که می‌خواهی نشان‌ها را از آن درون‌ریزی کنی: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>توجه:</b> فعلا فقط درون‌ریزی از پرونده Html می‌تواند پوشه نشان‌ها را نیز درون‌ریزی کند. Choose... انتخاب... Try to fetch icons for all bookmarks (may take a while) Fetching icons, please wait... درحال دریافت آیکون‌ها، لطفا منتظر بمانید... Title سرنویس Url نشانی Next پسین Cancel رد کردن <b>Importing from %1</b> <b>درون‌ریزی از %1</b> Finish پایان Please press Finish to complete importing process. لطفا برای کامل شدن فرایند درون‌ریزی بر روی پایان کلیک کنید. Error! خطا! The file doesn't contain any bookmark. پرونده شامل هیچ نشانی نمی‌باشد. Choose directory... انتخاب پوشه... Choose file... انتخاب پرونده... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in فایرفاکس نشان‌هایش را در پایگاه‌داده SQLite با نام <b>places.sqlite</b> ذخیره می‌کند. این پرونده معمولا در Please choose this file to begin importing bookmarks. هست، لطفا برای شروع درون‌ریزی این پرونده را انتخاب کنید. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in گوگل کروم نشان‌هایش را در پرونده متنی <b>Bookmarks</b> ذخیره می‌کند. این پرونده معمولا در Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in اپرا نشان‌هایش را در پرونده متنی <b>bookmarks.adr</b> ذخیره می‌کند. این پرونده معمولا در You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes می‌توانید نشان‌ها را از هر مرورگری که توانایی برون‌ریزی HTML دارد درون‌ریزی کنید. این پرونده معمولا دارای پسوند‌های Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in اینترنت اکسپلورر نشان‌هایش را در پوشه <b>Favorites</b> ذخیره می‌کند. این پوشه معمولا در Please choose this folder to begin importing bookmarks. قرار دارد، لطفا برای شروع درون‌ریزی نشان‌ها این پوشه را انتخاب کنید. No Error بدون خطا Unable to open file. قادر نیست پرونده را باز کند. Cannot evaluate JSON code. نمی‌تواند دستورالعمل JSON را ارزیابی کند. File does not exist. پرونده وجود ندارد. Unable to open database. Is Firefox running? پایگاه‌داده را نمی‌تواند باز کند. آیا فایرفاکس درحال اجراست؟ Directory does not exist. The directory does not contain any bookmarks. BookmarksManager Bookmarks نشان‌ها Optimize Database بهینه‌سازی پایگاه‌داده Import Bookmarks درون‌ریزی نشان‌ها Add Folder افزودن پوشه Title سرنویس Url نشانی Expand All گستردن همه Collapse All جمع و جور کردن همه Add new folder افزودن پوشه تازه Choose parent folder for new folder: انتخاب پوشه والد برای پوشه تازه: Choose name for new bookmark folder: برای پوشه تازه نشان‌ها، نامی انتخاب کنید: Add new subfolder افزودن زیرپوشه تازه Choose name for new subfolder in bookmarks toolbar: برای زیرپوشه تازه در نوارابزار نشان‌ها، نامی انتخاب کنید: Rename Folder تغییر نام پوشه Choose name for folder: برای پوشه نامی انتخاب کنید: Add Subfolder افزودن زیرپوشه Rename folder تغییر نام پوشه Remove folder حذف پوشه Open link in current &tab بازکردن لینک در برگه &فعلی Open link in &new tab بازکردن لینک در برگه &تازه Move bookmark to &folder تغییر محل نشان به &پوشه Change icon تغییر آیکون Rename bookmark تغییر نام نشان Remove bookmark حذف نشان <b>Warning: </b>You already have bookmarked this page! <b>هشدار: </b>این صفحه را نشان‌دار کرده‌اید! Choose name and location of this bookmark. نام و محل این نشان را انتخاب کنید. Add New Bookmark افزودن نشان تازه Choose folder for bookmarks: انتخاب پوشه برای نشان‌ها: Bookmark All Tabs نشان‌دار کردن همه برگه‌ها BookmarksModel Bookmarks In Menu نشان‌ها در منو Bookmarks In ToolBar نشان‌ها در نوارابزار Unsorted Bookmarks نشان‌های مرتب‌نشده BookmarksSideBar Search... یافتن... Open link in current &tab بازکردن لینک در برگه &فعلی Open link in &new tab بازکردن لینک در برگه &تازه Copy address رونگاشتِ آدرس &Delete &حذف BookmarksToolbar &Bookmark Current Page برگه &فعلی را نشان‌دار کن Bookmark &All Tabs نشان‌دار کردن &همه برگه‌ها &Organize Bookmarks &سازمان‌دهی نشان‌ها Show Most &Visited نمایش با بیشترین &بازدیدها Show Only Icons فقط آیکون‌ها را نمایش بده &Hide Toolbar &مخفی کردن نوارابزار Open bookmark بازکردن نشان Open bookmark in new tab بازکردن نشان در برگه تازه Move right ببر به راست Move left ببر به چپ Edit bookmark ویرایش نشان Remove bookmark حذف نشان Edit bookmark: ویرایش نشان: Title: سرنویس: Url: نشانی: Edit Bookmark ویرایش نشان Most visited بیشتر بازدید شده‌ها Sites you visited the most تارنماهایی که بیشتر بازدید کرده‌اید Empty خالی BookmarksTree Bookmarks نشان‌ها New Folder... پوشه تازه... BookmarksWidget Add to Speed Dial افزودن به شماره‌گیر سریع Save رونوشت Name: نام: Folder: پوشه: Remove from Speed Dial حذف از شماره‌گیر سریع Remove حذف BrowsingLibrary Library کتابخانه Search... یافتن... History پیشینه Bookmarks نشان‌ها RSS آراس‌اس Database Optimized پایگاه‌داده بهینه‌سازی شد Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 پایگاه‌داده با موفقیت بهینه‌سازی شد.<br/><br/><b>اندازه پایگاه‌داده قبل: </b>%1<br/><b>اندازه پایگاه‌داده بعد: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Issued To</b> Common Name (CN): نام عمومی (CN): Organization (O): سازمان (O): Organizational Unit (OU): واحد سازمانی (OU): Serial Number: شماره پیاپی: <b>Issued By</b> <b>صادر شده بوسیله</b> <b>Validity</b> <b>اعتبار</b> Issued On: صادر شده در: Expires On: منقضی شدن در: ClearPrivateData Clear Recent History حذف پیشینه اخیر Choose what you want to delete: انتخاب چیزهایی که می‌خواهید حذف کنید: Clear history حذف پیشینه Clear cache حذف نهان‌گاه Clear icons حذف آیکون‌ها <b>Clear Recent History</b> <b>حذف پیشینه اخیر</b> Earlier Today اوایل امروز Week هفته Month ماه All همه Clear web databases حذف پایگاه‌داده وب Clear local storage حذف انباره محلی Clear cookies حذف کوکی‌ها ClickToFlash Object blocked by ClickToFlash شیء توسط ClickToFlash مسدود شد Show more information about object نمایش اطلاعات بیشتری درباره شیء Delete object حذف شیء Add %1 to whitelist افزودن %1 به سپیدنامه Flash Object شیء فلش <b>Attribute Name</b> <b>نام ویژگی</b> <b>Value</b> <b>مقدار</b> No more information available. اطلاعات بیشتر دردسترس نیست. CookieManager Cookies کوکی‌ها Stored Cookies کوکی‌های رونوشت شده Find: یافتن: These cookies are stored on your computer: کوکی‌های رونوشت شده بر روی رایانه‌تان: Server خادم Cookie name نام کوکی Name: نام: Value: مقدار: Server: خادم: Path: مسیر: Secure: امن: Expiration: انقضاء: <cookie not selected> <کوکی انتخاب نشده است> Remove all cookies حذف همه کوکی‌ها Remove cookies حذف کوکی‌ها Cookie Filtering پالایش کوکی‌ها <b>Cookie whitelist</b> <b>سپیدنامه کوکی‌ها</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) کوکی‌های این خادم‌ها «همواره» پذیرفته خواهند شد (حتی اگر رونوشت‌بردای از کوکی‌ها را غیرفعال کنید) Add افزودن Remove حذف <b>Cookie blacklist</b> <b>سیاه‌نامه کوکی‌ها</b> Cookies from these servers will NEVER be accepted کوکی‌های این خادم‌ها «هرگز» پذیرفته نخواهند شد Settings سامانش <b>Cookie Settings</b> <b>سامانش کوکی‌ها</b> Allow storing of cookies اجازه برای ذخیره کردن کوکی‌ها Delete cookies on close حذف کوکی‌ها هنگام بستن Match domain exactly مطابقت دقیق نام‌دامنه Filter tracking cookies پالایش کوکی‌های پیگرد <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! Search یافتن Confirmation تایید Are you sure to delete all cookies on your computer? آیا از حدف کردن همه کوکی‌های روی رایانه‌تان اطمینان دارید؟ Secure only فقط امن All connections همه ارتباط‌ها Session cookie کوکی نشست Remove cookie حذف کوکی Add to whitelist افزودن به سپیدنامه Add to blacklist افزودن به سیاه‌نامه DownloadFileHelper Save file as... رونوشت‌برداری پرونده به... NoNameDownload دریافت بدون نام DownloadItem Remaining time unavailable زمان باقیمانده دردسترس نیست Error: Cannot write to file! خطا: نمی‌تواند بر روی پرونده بنویسد! Done - %1 انجام شد - ‏%1 Cancelled رد شد few seconds چند ثانیه‌ای %n seconds %n minutes %n hours Unknown speed سرعت نامعلوم kB/s MB/s GB/s Unknown size اندازه نامعلوم %2 - unknown size (%3) ‏%2 - اندازه نامعلوم ‏(%3) Remaining %1 - %2 of %3 (%4) باقیمانده %1‏ -‏ ‏%2 از %3 ‏(%4)‏ Cancelled - %1 لغو شد - ‏%1 Delete file حذف پرونده Do you want to also delete dowloaded file? آیا می‌خواهید پرونده دریافت شده را هم حذف کنید؟ Open File بازکردن پرونده Open Folder بازکردن پوشه Go to Download Page رفتن به صفحه دریافت Copy Download Link رونگاشت لینک دریافت Cancel downloading لغو دریافت‌کردن Remove حذف Error خطا Not found پیدا نشد Sorry, the file %1 was not found! متاسفم، پرونده %1 پیدا نشد! Error: خطا: DownloadManager Download Manager مدیر دریافت Clear پاک کردن %1% of %2 files (%3) %4 remaining %1 از %2 پرونده (%3)‏‏ ‏%4 باقیمانده %1% - Download Manager %1%‏ - مدیر دریافت Download Finished دریافت پایان یافت All files have been successfully downloaded. همه پرونده‌ها با موفقیت دریافت شدند. Warning هشدار Are you sure to quit? All uncompleted downloads will be cancelled! آیا مطمئنید می‌خواهید خارج شوید؟ همه دریافت‌های ناتمام لغو خواهند شد! DownloadOptionsDialog Opening در حال باز کردن Copy download link You have chosen to open برای باز کردن انتخاب کردید which is a: که هست: What should QupZilla do with this file? کوپزیلا چه کاری با این پرونده باید انجام دهد؟ Open... باز کردن... Save File رونوشت پرونده Download with External Manager دریافت با استفاده از مدیر دریافت بیرونی from: از: Opening %1 در حال بازکردن %1 Download link copied. EditSearchEngine Name: نام: Url: نشانی: Shortcut: میان‌بر: Icon: آیکون: <b>Note: </b>%s in url or post data represent searched string Post Data: Change... تغییر... FileSchemeReply No Error بدون خطا Up to higher level directory رفتن به پوشه در سطح بالاتر Show hidden files نمایش فایل‌های مخفی Name نام Size اندازه Last modified آخرین اصلاح Index for %1 نمایه برای %1 Folder is empty. پوشه خالی است. FtpDownloader Cancelled! لغو شد! FtpSchemeReply Up to higher level directory رفتن به پوشه در سطح بالاتر Show hidden files نمایش فایل‌های مخفی Name نام Size اندازه Last modified آخرین اصلاح Index for %1 نمایه برای %1 Folder is empty. پوشه خالی است. Unknown command دستور نامعلوم HTML5PermissionsDialog HTML5 Permissions مجوزهای HTML5 Notifications آگاه‌سازی‌ها Site تارنما Behaviour رفتار Remove حذف Geolocation مکان جغرافیای Allow پذیرفتن Deny رد کردن HTML5PermissionsNotification Remember بخاطر سپردن Allow پذیرفتن Deny رد کردن this site این تارنما Allow %1 to show desktop notifications? آیا به %1 اجازه نمایش آگاه‌سازی‌ها روی میزکار داده شود؟ Allow %1 to locate your position? آیا به %1 اجازه برای یافتن مکان شما داده شود؟ History No Named Page صفحه بدون‌نام January ژانویه February فوریه March مارس April آوریل May می June ژوئن July ژوئیه August اوت September سپتامبر October اکتبر November نوامبر December دسامبر HistoryManager History پیشینه Delete حذف Clear All History حذف همه پیشینه Optimize Database بهینه‌سازی پایگاه‌داده Confirmation تایید Are you sure to delete all history? آیا از حدف کردن همه پیشینه اطمینان دارید؟ HistoryModel Title سرنویس Address آدرس Visit Date تاریخ بازدید Visit Count شمار بازدیدها Today امروز This Week این هفته This Month این ماه HistorySideBar Search... یافتن... HistoryView Open link in current tab بازکردن لینک در برگه فعلی Open link in new tab بازکردن لینک در برگه تازه Copy title رونگاشت سرنویس Copy address رونگاشت آدرس Remove حذف IconChooser Choose icon... انتخاب آیکون... From file از پرونده Image (.png, .jpg, .jpeg, .gif) تصویرها (.png, .jpg, .jpeg, .gif) Choose file... انتخاب پرونده... From database از پایگاه‌داده Site Url: نشانی تارنما: Image files پرونده‌های تصویری JsOptions JavaScript Options گزینه‌های اسکریپت‌های جاوا Allow JavaScript to: اجازه داده شود به اسکریپت‌های جاوا برای: Close windows بستن پنجره Open popup windows باز کردن پنجره‌های popup Change window size تغییر اندازه پنجره Hide menu bar مخفی کردن نوار منو Hide status bar مخفی کردن نوار وضعیت Hide tool bar مخفی کردن نوارابزار Access clipboard دسرسی به کلیپ‌بورد LicenseViewer License Viewer نمایش‌دهنده مجوز LocationBar Enter URL address or search on %1 نشانی را وارد کنید یا بوسیله %1 بیابید Paste And &Go چسباندن و &رفتن Clear All پاک کردن همه .co.uk Append domain name on ALT + Enter = Should be different for every country .ir Show information about this page نمایش اطلاعات درباره صفحه LocationCompleterView Switch to tab تعویض برگه MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? کوپزیلا مرورگر پیش‌فرض شما نیست. آیا علاقه دارید آن را مرورگر پیش‌فرض خود سازید؟ Always perform this check when starting QupZilla. همیشه در هنگام شروع کوپزیلا این را بررسی کن. Default Browser مرورگر پیش‌فرض QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. کوپزیلا مرورگر اینترنتی متن‌باز، جدید، سریع و ایمنی است. کوپزیلا تحت توافقنامه GPL نسخه ۳ یا هر نسخه جدیدتر آن است. کوپزیلا تحت هسته وب‌کیت و چارچوب کیوت می‌باشد. MasterPasswordDialog Encrypted DataBase Settings Set/Change Master Password... Clear Master Password... This backend does not work without a master password. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Current Password: New Password: Confirm Password: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. Warning! You entered a wrong password! New/Confirm password fields do not match! Some data has not been decrypted. The master password was not cleared! Are you sure to clear master password and decrypt data? NavigationBar No Named Page صفحه بدون‌نام Back پیشین Forward پسین Home خانه New Tab برگه تازه Main Menu منوی اصلی Exit Fullscreen خروج از سراسرنما Clear history حذف پیشینه NetworkManager SSL Certificate Error! خطا در گواهینامه اس‌اس‌ال! The page you are trying to access has the following errors in the SSL certificate: صفحه‌ای که سعی دارید به آن دسترسی پیدا کنید خطاهای زیر را در گواهینامه اس‌اس‌ال دارد: <b>Organization: </b> <b>سازمان: </b> <b>Domain Name: </b> <b>نام دامنه: </b> <b>Expiration Date: </b> <b>تاریخ انقضا: </b> <b>Error: </b> <b>خطا: </b> Would you like to make an exception for this certificate? آیا می‌خواهید برای این گواهینامه استثناء ایجاد کنید؟ Authorisation required برای ورود اجازه لازم است Username: نام‌کاربری: Password: رمز: Save username and password on this site رونوشت‌برداری از نام کاربری و رمز روی این تارنما A username and password are being requested by %1. The site says: "%2" بوسیله %1 نام کاربری و رمز درخواست شده است. تارنما می‌گوید: «%2» FTP authorisation required برای ورود به FTP اجازه لازم است Login anonymously ورود بصورت بی‌نام A username and password are being requested by %1:%2. بوسیله %1:%2 نام کاربری و رمز درخواست شده است. Proxy authorisation required برای استفاده پروکسی اجازه لازم است Remember username and password for this proxy. A username and password are being requested by proxy %1. بوسیله پروکسی %1 نام کاربری و رمز درخواست شده است. PageScreen Page Screen تصویر صفحه Format: Location: Browse... Save as %1 Choose location... File '%1' already exists. Do you want to overwrite it? File already exists PluginsList Application Extensions توسیع‌های نرم‌افزار Allow Application Extensions to be loaded بارگذاری توسیع‌های نرم‌افزار اجازه داده شود Settings سامانش WebKit Plugins افزونه‌های وب‌کیت <b>Click To Flash Plugin</b> <b>افزونه Click To Flash</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. افزونه Click To Flash از بارگذاری خودکار محتویات فلش صفحه جلوگیری می‌کند. همیشه می‌توانید به‌صورت دستی با کلیک بر روی آیکون اجرای فلش آن را بارگذاری کنید. Whitelist سپیدنامه Add افزودن Remove حذف Allow Click To Flash اجازه دادن به Click To Flash PluginsManager Add site to whitelist افزودن تارنما به سپیدنامه Server without http:// (ex. youtube.com) خادم بدون http:// (مانند: youtube.com) Error! خطا! Cannot load extension! نمی‌تواند توسیع را بارگذاری کند! PopupWebView Inspect Element بررسی عنصر PopupWindow File پرونده &Save Page As... &رونوشت‌برداری صفحه به... Save Page Screen رونوشت‌برداری تصویر صفحه Send Link... فرستادن لینک... &Print... &چاپ... Close بستن Edit ویرایش &Undo &واچیدن &Redo &چیدن &Cut &برداشتن C&opy &رونگاشت &Paste &چسباندن Select All انتخاب همه Find یافتن View نما &Stop تو&قف &Reload &تازه‌سازی Zoom &In &بزرگ‌نمایی Zoom &Out &کوچک‌نمایی Reset بازنشاندن &Page Source سورس &صفحه %1 - QupZilla %1 - کوپزیلا Preferences Preferences ترجیجات QupZilla کوپزیلا General عمومی Appearance ظاهر Tabs برگه‌ها Browsing مرور کردن Fonts قلم‌ها Keyboard Shortcuts میان‌برهای صفحه‌کلید Downloads دریافت‌ها Password Manager مدیر رمز Privacy حریم خصوصی Notifications آگاه‌سازی‌ها Extensions توسیع‌ها Other دیگر Use current استفاده از صفحه فعلی Note: You cannot delete active profile. توجه: نمایه فعال را نمی‌توانید حذف کنید. Create New ایجاد تازه Delete حذف <b>Launching</b> <b>در حال آغازیدن</b> After launch: بعد از آغاز: Open blank page بازکردن صفحه خالی Open homepage بازکردن صفحه خانگی Open speed dial باز کردن شماره‌گیر سریع Restore session برگرداندن نشست Homepage: صفحه خانگی: On new tab: برای برگه تازه: Open blank tab برگه را خالی بازکن Open other page... بازکردن صفحه‌ای دیگر... <b>Profiles</b> <b>نمایه‌ها</b> Startup profile: نمایه آغازین: Check for updates on start بررسی برای بروزرسانی هنگام آغاز Active profile: نمایه فعال: In order to change language, you must restart browser. برای تغییر زبان باید مرورگر را بازآغاز کنید. <b>Language</b> <b>زبان</b> Available translations: برگردان‌های دردسترس: Don't load tabs until selected برگه‌ها را تا انتخاب نشوند بارگذاری نکن Check to see if QupZilla is the default browser on startup بررسی اینکه آیا کوپزیلا مرورگر پیش‌فرض است هنگام آغاز Check Now اکنون بررسی کن Themes فرهشت‌ها Advanced options گزینه‌های پیشرفته <b>Browser Window</b> <b>پنجره مرورگر</b> Show StatusBar on start نمایش نوار وضعیت هنگام آغاز Show Bookmarks ToolBar on start نمایش نوارابزار نشان‌ها هنگام آغاز Show Navigation ToolBar on start نمایش نوارابزار ناوبری هنگام آغاز <b>Navigation ToolBar</b> <b>نوارابزار ناوبری</b> Show Home button نمایش دکمه خانه Show Back / Forward buttons نمایش دکمه‌های پیشین/پسین <b>Background<b/> <b>پشت زمینه<b/> Use transparent background استفاده از پشت‌زمینه نیمه‌شفاف Show web search bar نوار یافتن روی وب را نمایش بده Show Add Tab button نمایش دکمه افزودن برگه Show Reload / Stop buttons نمایش دکمه‌های تازه‌سازی/توقف Tabs behaviour رفتار برگه‌ها Show tab previews نمایش پیش‌نمایش برگه Make tab previews animated پیش‌نمایش برگه را متحرک کن Hide tabs when there is only one tab پنهان‌کردن برگه‌ها وقتی فقط یک برگه موجود است Activate last tab when closing active tab فعال‌کردن آخرین برگه هنگام بستن برگه فعال Open new tabs after active tab برگه‌های تازه را بعد از برگه فعال باز کن Open new empty tabs after active tab بازکردن برگه خالی تازه بعد از برگه فعال Automatically switch to newly opened tab به‌صورت خودکار به برگه تازه بازشده تعویض کن Don't quit upon closing last tab هنگام بستن آخرین برگه خارج نشو Ask when closing multiple tabs هنگام بستن چندین برگه بپرس Closed tabs list instead of opened in tab bar فهرست برگه‌های بسته‌شده بجای برگه‌های‌باز در نوار برگه Address Bar behaviour رفتار نوار آدرس Suggest when typing into address bar: هنگام نوشتن در نوارآدرس پیشنهاد کن از: History and Bookmarks پیشینه و نشان‌ها History پیشینه Bookmarks نشان‌ها Nothing هیچی Press "Shift" to not switch the tab but load the url in the current tab. برای بارگذاری آدرس در برگه جاری در عوض تعویض برگه کلید «Shift» را بفشارید. Propose to switch tab if completed url is already loaded. اگر آدرس تکمیل‌شده هم‌اکنون بارگذاری شده تعویض برگه را پیشنهاد کن. Always show go icon Select all text by double clicking in address bar انتخاب همه متن با جفت‌کلیک در نوارآدرس Select all text by clicking in address bar انتخاب همه متن با کلیک در نوارآدرس Search with Default Engine یافتن با موتور یابنده پیش‌فرض Show loading progress in address bar نمایش نوار پیشرفت بارگذاری در نوار آدرس Fill پر کردن Bottom پایین Top بالا Custom color: رنگ سفارشی: Select color انتخاب رنگ ... ... Reset بازنشاندن Web Configuration پیکربندی وب Allow Netscape Plugins (Flash plugin) اجازه برای افزونه‌های نت‌اسکیپ (افزونه فلش) Allow JavaScript پذیرفتن اسکریپت‌های جاوا Allow JAVA پذیرفتن جاوا Allow DNS Prefetch پذیرفتن پیش‌واکشی DNS Enable XSS Auditing try to detect possible XSS attacks when executing javascript فعال‌کردن ممیزی XSS Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements چاپ عناصر پشت‌زمینه Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key قراردادن لینک‌ها در زنجیره فوکوس Animated scrolling پیمایش متحرک شده Enable caret browsing فعال کردن مرور با چوب‌خط Enable spatial navigation Zoom text only فقط بزرگنمای متن Mouse wheel scrolls پیمایش چرخ موشواره lines on page خط بر صفحه Default zoom on pages: بزرگ‌نمایی پیش‌فرض برروی صفحه‌ها: Local Storage انباره محلی Maximum بیشین 50 MB ۵۰ مگابایت 1 ۱ Maximum pages in cache: حداکثر صفحه در ذخیره‌گاه: Allow storing network cache on disk اجازه برای ذخیره نهان‌گاه شبکه روی دیسک Store cache in: رونوشت نهان‌گاه در: Allow saving history اجازه برای رونوشت‌برداری پیشینه Delete history on close حذف پیشینه هنگام بستن Allow local storage of HTML5 web content اجازه برای انباره محلی محتویات وب HTML5 Delete locally stored HTML5 web content on close حذف محتویات وب دخیره‌شده HTML5 هنگام خروج Delete now اکنون حذف شود Proxy Configuration پیکربندی پروکسی Proxy Auto-Config (.pac) file فایل پیکربندی خودکار (‎.pac) پروکسی Reload تازه‌سازی HTTP HTTP SOCKS5 SOCKS5 Port: دروازه: Username: نام‌کاربری: Password: رمز: Don't use on: به‌کار نگیر روی: Manual configuration پیکربندی دستی System proxy configuration پیکربندی پروکسی سیستم Do not use proxy پروکسی را به‌کار نبر <b>Exceptions</b> <b>استثناها</b> Server: خادم‌ها: Use different proxy for https connection پروکسی متفاوتی را برای ارتباط اچ‌تی‌تی‌پی‌اس به کار ببر Use script for automatic configuration: بکارگیری اسکریپت برای پیکربندی خودکار: <b>Font Families</b> <b>خانواده قلم</b> Standard استاندارد Fixed ثابت Serif سریف Sans Serif سان سریف Cursive خط شکسته Fantasy فانتزی <b>Font Sizes</b> <b>اندازه قلم</b> Fixed Font Size اندازه قلم ثابت Default Font Size اندازه قلم پیش‌فرض Minimum Font Size اندازه کمینه قلم Minimum Logical Font Size اندازه کمینه منطقی قلم <b>Shortcuts</b> <b>میان‌برها</b> Switch to tabs with Alt + number of tab تعویض به برگه‌ها با Alt + ردیف برگه Load speed dials with Ctrl + number of speed dial بارگذاری شمارگیرهای سریع با زدن Ctrl + ردیف شمارگیر سریع Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>مکان دریافت</b> Ask everytime for download location هربار برای مکان دریافت سوال کن Use defined location: استفاده از مکان تعریف شده: <b>Download Options</b> <b>گزینه‌های دریافت</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) پنجره سیستمی پرس و جوی پرونده را به‌کار ببر (شاید با دریافت محتویات ایمن شده اس‌اس‌ال مشکلی ایجاد کند و شاید هم نه) Close download manager when downloading finishes مدیر دریافت را هنگام پایان‌یافتن دریافت‌ها ببند <b>External download manager</b> <b>مدیر دریافت بیرونی</b> Use external download manager مدیر دریافت بیرونی را به‌کار ببر Executable: نرم‌افزار اجرایی: Arguments: نشانوندها: Leave blank if unsure اگر اطمینان ندارید، خالی بگذارید <b>%d</b> will be replaced with URL to be downloaded آدرسی که قرار است دریافت شود به جای <b>%d</b> جانشین خواهد شد <b>AutoFill options</b> <b>گزینه‌های پرکن‌خودکار</b> Allow saving passwords from sites اجازه برای رونوشت‌برداری رمزها از تارنماها Send Referer header to servers سربرگ انتساب را به خادم‌ها بفرست <b>Cookies</b> <b>کوکی‌ها</b> Send Do Not Track header to servers پیام پیگیری نکردن سربرگ را به خادم‌ها بفرست <b>Other</b> <b>دیگر</b> Manage CA certificates مدیریت گواهی‌نامه‌های CA Certificate Manager مدیر گواهی‌نامه <b>SSL Certificates</b> <b>گواهی‌نامه‌های اس‌اس‌ال</b> <b>JavaScript</b> <b>اسکریپت جاوا</b> Manage JavaScript privacy options مدیریت گزینه‌های حریم خصوصی اسکریپت‌های جاوا JavaScript options گزینه‌های اسکریپت جاوا Cookies Manager مدیر کوکی‌ها Manage Cookies مدیریت کوکی‌ها <b>HTML5 Permissions</b> <b>مجوزهای HTML5</b> Manage HTML5 permissions مدیریت مجوزهای HTML5 HTML5 Permissions مجوزهای HTML5 <b>Notifications</b> <b>آگاه‌سازی‌ها</b> Use OSD Notifications آگاه‌سازی‌های بر صفحه‌نمایش را به‌کار ببر Use Native System Notifications (Linux only) آگاه‌سازی‌های سیستمی را به‌کار ببر (فقط لینوکس) Do not use Notifications آگاه‌سازی‌ها را به‌کار نبر Expiration timeout: سپری‌شدن زمان انقضاء: seconds ثانیه <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>توجه: </b>می‌توانید محل آگاه‌سازی بر صفحه‌نمایش را با کشیدن با موشواره روی صفحه نمایش تغییر دهید. StyleSheet automatically loaded with all websites: شیوه‌نامه‌ای که به‌صورت خودکار همراه با همه تارنماها بارگذاری می‌شود: Languages زبان‌ها <b>Preferred language for web sites</b> <b>زبان ترجیحی برای تارنماها</b> <b>Change browser identification</b> <b>تغییر هویت مرورگر</b> User Agent Manager مدیر پیشکار کاربر Default پیش‌فرض Set as default تنظیم به عنوان پیش‌فرض OSD Notification آگاه‌سازی بر صفحه‌نمایش Drag it on the screen to place it where you want. با موشواره آن را بکشید به مکانی که می‌خواهید. Choose download location... انتخاب مکان دانلود... Choose stylesheet location... انتخاب مکان شیوه‌نامه... Deleted حذف شد Choose executable location... انتخاب مکان پرونده‌اجرایی... Choose cache path... انتخاب مسیر نهان‌گاه... New Profile نمایه تازه Enter the new profile's name: نام نمایه تازه را وارد کنید: Error! خطا! This profile already exists! این نمایه هم‌اکنون موجود است! Cannot create profile directory! پوشه نمایه را نمی‌تواند ایجاد کند! Confirmation تایید Are you sure to permanently delete "%1" profile? This action cannot be undone! آیا از حذف همیشگی نمایه «%1» اطمینان دارید؟ این عمل برگشت‌پذیر نیست! Select Color انتخاب رنگ QObject Native System Notification آگاه‌ساز مورداستفاده سیستم Save file as... رونوشت‌برداری پرونده به... The file is not an OpenSearch 1.1 file. این پرونده از نوع ‪OpenSearch 1.1‬ نیست. <not set in certificate> <در گواهی‌نامه ذکر نشده است> Unknown size اندازه نامعلوم KB MB GB Executable: نرم‌افزار اجرایی: Arguments: نشانوندها: Cannot start external program نرم‌افزار بیرونی را نمی‌تواند اجرا کند Cannot start external program! %1 نرم‌افزار بیرونی را نمی‌تواند اجرا کند! %1 QtWin Open new tab بازکردن برگه تازه Opens a new tab if browser is running اگر مرورگر درحال اجراست برگه تازه‌ای باز کند Open new window بازکردن پنجره تازه Opens a new window if browser is running اگر مرورگر درحال اجراست پنجره تازه‌ای باز کند Open download manager بازکردن مدیر دریافت Opens a download manager if browser is running اگر مرورگر درحال اجراست مدیر دریافت را باز کند QupZilla QupZilla کوپزیلا Private Browsing Enabled مرور خصوصی فعال است IP Address of current page آدرس IP صفحه فعلی &About QupZilla &درباره کوپزیلا Pr&eferences &ترجیجات Quit خروج &File &پرونده &New Window پ&نجره تازه New Tab برگه تازه Open Location بازکردن مکان Open &File... بازکردن &پرونده... Close Tab بستن برگه Close Window بستن پنجره &Save Page As... &رونوشت‌برداری صفحه به... Save Page Screen رونوشت‌برداری تصویر صفحه Send Link... فرستادن لینک... &Print... &چاپ... Import bookmarks... درون‌ریزی نشان‌ها... &Edit &ویرایش &Undo &واچیدن &Redo &چیدن &Cut &برداشتن C&opy &رونگاشت &Paste &چسباندن Select &All انتخاب &همه &Find &یافتن &View &نما &Navigation Toolbar نوارابزار &ناوبری &Bookmarks Toolbar نوارابزار ن&شان‌ها Sta&tus Bar نوار &وضعیت &Menu Bar نوار &منو &Tabs on Top &برگه‌ها در بالا &Fullscreen &سراسرنما &Stop تو&قف &Reload &تازه‌سازی Character &Encoding &رمزینه نویسه‌ها Enable &Caret Browsing فعال کردن مرور با &چوب‌خط Toolbars نوارابزارها Sidebars نوارهای کناری Zoom &In &بزرگ‌نمایی Zoom &Out &کوچک‌نمایی Reset بازنشاندن &Page Source سورس &صفحه Hi&story پی&شینه &Back &پیشین &Forward پ&سین &Home &خانه Show &All History نمایش &همه پیشینه Closed Tabs برگه‌های بسته‌شده Recently Visited اخیرا بازدید شده Most Visited بیشتر بازدید شده‌ها &Bookmarks ن&شان‌ها Bookmark &This Page &صفحه را نشان‌دار کن Bookmark &All Tabs نشان‌دار کردن &همه برگه‌ها Organize &Bookmarks &سازمان‌دهی نشان‌ها &Tools &ابزارها &Web Search یافتن در &وب Page &Info &اطلاعات صفحه &Download Manager &مدیر دریافت &Cookies Manager مدیر &کوکی‌ها &AdBlock &AdBlock RSS &Reader خوارک &خوان Web In&spector &بازبین وب Clear Recent &History حذف &پیشینه اخیر New &Private Window پنجره خ&صوصی تازه &Help &کمک About &Qt درباره &کیوت Information about application اطلاعاتی درمورد نرم‌افزار Configuration Information اطلاعات پیکربندی Report &Issue گزارش &برآمد Restore &Closed Tab بر&گرداندن برگه بسته‌شده (Private Browsing) (مرور خصوصی) Empty خالی Restore All Closed Tabs برگرداندن تمام برگه‌های بسته Clear list پاک کردن فهرست Other دیگر %1 - QupZilla %1 - کوپزیلا HTML files پرونده‌های HTML Image files پرونده‌های تصویری Text files پرونده‌های متنی All files همه پرونده‌ها Open file... بازکردن پرونده... QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? هنوز %1 برگه باز است و نشست شما ذخیره نخواهد شد. برای خروج از کوپزیلا اطمینان دارید؟ Don't ask again بار دیگر نپرس There are still open tabs هنوز برگه‌های بازی هستند QupZillaSchemeReply No Error بدون خطا Not Found پیدا نشد Report Issue گزارش برآمد If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: اگر با کوپزیلا مشکل‌هایی دارید، لطفا در ابتدا همه توسیع‌ها را غیرفعال کنید. <br/>اگر این کار مشکل را حل نکرد، آنگاه این فرم را پر کنید: Your E-mail رایانامه‌تان Issue type گونه برآمد Issue description تشریح برآمد Send فرستادن E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. رایانامه اختیاری است<br/><b>توجه: </b>لطفا در ابتدا شیوه ساختن گزارش باگ را <a href=%1>اینجا</a> بخوانید. Please fill out all required fields! لطفا تمام مورد‌های لازم را پر کنید! Start Page صفحه آغاز Search on Web یافتن در وب Search results provided by DuckDuckGo یافتن نتیجه‌های فراهم شده توسط DuckDuckGo About QupZilla درباره کوپزیلا <h1>Private Browsing</h1> <h1>مرور خصوصی</h1> Information about version اطلاعاتی درمورد نسخه Copyright حق نشر Version نسخه WebKit version نسخه وب‌کیت Main developer توسعه‌دهنده اصلی Contributors هم‌کارها Translators مترجم‌ها Speed Dial شماره‌گیر سریع Add New Page افزودن صفحه تازه Edit ویرایش Remove حذف Reload تازه‌سازی Are you sure to remove this speed dial? آیا از حذف این شماره‌گیر سریع اطمینان دارید؟ Load title from page بارگذاری سرنویس از صفحه Url نشانی Title سرنویس Apply اعمال Close بستن New Page صفحه تازه Speed Dial settings سامانش شماره‌گیر سریع Placement: قرارگیری: Auto خودکار Cover پوشاندن Fit گنجاندن Fit Width گنجاندن در پهنا Fit Height گنجاندن در ارتفاع Use background image تصویر پشت‌زمینه را به‌کار ببر Select image انتخاب تصویر Maximum pages in a row: بیشینه صفحه‌ها در یک سطر: Change size of pages: تغییر اندازه صفحه‌ها: Center speed dials شماره‌گیر سریع را در مرکز قرار بده Restore Session برگرداندن نشست Oops, QupZilla crashed. اوه، کوپزیلا دچار خطا شد. We apologize for this. Would you like to restore the last saved state? به این خاطر از شما عذرخواهیم. آیا می‌خواهید آخرین حالت ذحیره شده، برگردانده شود؟ Try removing one or more tabs that you think cause troubles سعی کنید یک یا چند برگه‌ای را که فکر می‌کنید باعث بروز مشکل هستند را حذف کنید Or you can start completely new session یا می‌توانید به طور کامل نشست تازه‌ای را آغاز کنید Configuration Information اطلاعات پیکربندی This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. این صفحه اطلاعاتی را درباره پیکربندی فعلی کوپزیلا شامل می‌شود - که مناسب اشکال‌یابی است. لطفا این اطلاعات را هنگام ارایه کردن گزارش‌های باگ در آن بگنجانید. Browser Identification هویت مرورگر Paths مسیرها Build Configuration پیکربندی ساخت Preferences ترجیجات Option گزینه‌ها Value مقدار Extensions توسیع‌ها Name نام Author نویسنده Description توصیف Application version نسخه نرم‌افزار Qt version نسخه کیوت Build time زمان ساخت Platform سکو Profile نمایه Settings سامانش Saved session نشست رونوشت‌برداری شده Pinned tabs برگه‌های سنجاق‌زده شده Data داده‌ها Themes فرهشت‌ها Translations ترجمه‌ها Disabled غیرفعال <b>Enabled</b> <b>فعال</b> Debug build ساخت دباگ WebGL support پشتیبانی از WebGL Windows 7 API رابط نرم‌افزاری ویندوز 7 KDE integration یک‌پارچه‌سازی با KDE Portable build ساخته به‌صورت همراه No available extensions. توسیعی دردسترس نیست. RSSManager RSS Reader آراس‌اس خوان Empty خالی Add feed افزودن فید Edit feed ویرایش فید Delete feed حذف فید Optimize Database بهینه‌سازی پایگاه‌داده Reload تازه‌سازی News تازه‌ها Loading... بارگذاری... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. هیچ فید آراس‌اسی ندارید.<br/> لطفا بوسیله آیکون آراس‌اس که برای تارنماهایی که فید ارایه می‌کنند در نوار ناوبری نمایش داده می‌شود یکی اضافه کنید. Add new feed افزودن فید تازه Please enter URL of new feed: لطفا آدرس فید تازه را وارد کنید: New feed فید تازه Fill title and URL of a feed: جای سرنویس و آدرس فید را پرکنید: Feed title: سرنویس فید: Feed URL: آدرس فید: Edit RSS Feed ویرایش فید آراس‌اس Open link in current tab بازکردن لینک در برگه فعلی Open link in new tab بازکردن لینک در برگه تازه Error in fetching feed خطا در واکشی فید RSS feed duplicated فید آراس‌اس تکرار شده You already have this feed. شما هم‌اکنون این فید را دارید. RSSNotification Add this feed into افزودن این فید به Add افزودن RSS feed <b>"%1"</b> فید آراس‌اس <b>«%1»</b> Internal Reader فیدخوان درونی Other... دیگر... Liferea not running برنامه Liferea در حال اجرا نیست Liferea must be running in order to add new feed. برای افزودن فید تازه Liferea باید در حال اجرا باشد. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. برای افزودن این فید آراس‌اس داخل دیگر نرم‌افزارها، لطفا این اطلاعات را به‌کار ببرید:<br/><br/><b>سرنویس: </b>%1<br/><b>آدرس: </b>%2<br/><br/>آدرس این فید به روی کلیپ‌بورد رونگاشت‌برداری شده‌است. Add feed into other application افزودن فید داخل دیگر نرم‌افزارها RSSWidget Add RSS Feeds from this site افزودن فیدهای آراس‌اس از این تارنما Untitled feed فید بدون سرنویس Add افزودن RecoveryWidget Start New Session آغاز نشست تازه Restore بازگرداندن Window %1 پنجره %1 RegisterQAppAssociation Warning! هشدار! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) اشکا‌ل‌هایی وجود دارد. لطفا کوپزیلا را مجدادا نصب کنید. ممکن است اجرای مجدد کوپزیلا با دسترسی مدیر برای‌تان جادو کند! ;) RssIcon Add RSS from this page... افزودن آراس‌اس از این صفحه... SSLManager Certificate Manager مدیر گواهی‌نامه CA Authorities Certificates گواهی‌نامه‌های معتبر CA Show info نمایش اطلاعات This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. این فهرستی از گواهی‌نامه‌های معتبر CA ذخیره‌شده در مسیر استاندارد سیستم و مسیرهای مشخص شده توسط کاربر است. Local Certificates گواهی‌نامه‌های محلی Import درون‌ریزی Remove حذف This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. این فهرستی از گواهی‌نامه‌های محلی ذخیره‌شده در نمایه کابری‌تان است. و همچنین شامل همه گواهی‌نامه‌های استثناء شده هست. Settings سامانش Add افزودن If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. اگر گواهی‌نامه‌های معتبر CA به‌صورت خودکار از سیستم بارگذاری نشدند، می‌توانید به‌صورت دستی مسیرهایی که گواهی‌نامه‌ها ذخیره شده‌اند را مشخص کنید. <b>NOTE:</b> Setting this option is a high security risk! <b>توجه:</b> تنظیم این گزینه دارای ریسک امنیتی بالایی است! Ignore all SSL Warnings همه هشدارهای اس‌اس‌ال را نادیده بگیر All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. همه گواهی‌نامه‌ها باید داری پسوند ‎.crt باشند. بعد از اضافه یا حذف کردن مسیرهای گواهی‌نامه‌ها، لازم است کوپزیلا را بازآغاز کنید تا تغییرات اعمال شوند. Choose path... انتخاب مسیر... Import certificate... درون‌ریزی گواهی‌نامه‌ها... Certificate Informations اطلاعات گواهی‌نامه SearchEnginesDialog Manage Search Engines مدیریت موتورهای یابنده Add... افزودن... Remove حذف Edit ویرایش Set as default تنظیم به عنوان پیش‌فرض Up بالا Down پایین Search Engine موتور یابنده Shortcut میان‌بر Defaults پیش‌فرض‌ها Add Search Engine افزودن موتور یابنده Remove Engine حذف موتور یابنده You can't remove the default search engine.<br>Set a different engine as default before removing %1. شما نمی‌توانید موتور یابنده پیش‌فرض را حذف کنید.<br>قبل از حذف‌کردن %1 موتور دیگری را به عنوان پیش‌فرض انتخاب کنید. Edit Search Engine ویرایش موتور یابنده SearchEnginesManager Search Engine Added موتور یابنده اضافه شد Search Engine "%1" has been successfully added. موتور یابنده «%1» با موفقیت اضافه شد. Search Engine is not valid! موتور یابنده معتبر نیست! Error خطا Error while adding Search Engine <br><b>Error Message: </b> %1 خطا در هنگام افزودن موتور یابنده <br><b>خطا پیام: </b> %1 SearchToolBar No results found. نتیجه‌ای یافت نشد. SearchToolbar Search: یافتن: Search... یافتن... Highlight برجسته‌سازی Case sensitive حساس به کوچکی و بزرگی نویسه‌ها SideBar Bookmarks نشان‌ها History پیشینه SiteInfo Site Info اطلاعات تارنما General عمومی Media رسانه Databases پایگاه‌داده‌ها Security امنیت Size: اندازه: Site address: آدرس تارنما: Encoding: رمزینه: Meta tags of site: متا برچسب‌های تارنما: Tag برچسب Value مقدار <b>Security information</b> <b>اطلاعات امنیتی</b> Details جزییات Image تصویرها Image address آدرس تصویر <b>Preview</b> <b>پیش‌نمایش</b> <b>Database details</b> <b>جزییات پایگاه‌داده</b> Name: نام: Path: مسیر: <database not selected> <پایگاه‌داده انتخاب نشده است> <not set in certificate> <در گواهی‌نامه ذکر نشده است> No databases are used by this page. پایگاه‌داده‌ای توسط این صفحه به‌کار نرفته است. <b>Connection is Encrypted.</b> <b>ارتباط رمزدار شده‌ است.</b> <b>Your connection to this page is secured with this certificate: </b> <b>ارتباط‌تان با این صفحه توسط گواهی‌نامه ذکر شده ایمن شده‌است: </b> <b>Connection Not Encrypted.</b> <b>ارتباط رمزدار شده‌ نیست.</b> <b>Your connection to this page is not secured!</b> <b>ارتباط‌تان با این صفحه ایمن نیست!</b> Copy Image Location رونگاشت مکان شکل Copy Image Name رونگاشت نام شکل Save Image to Disk رونوشت‌برداری شکل به دیسک Error! خطا! This preview is not available! پیش‌نمایش در دسترس نیست! Save image... رونوشت‌برداری شکل... Cannot write to file! نمی‌تواند بر روی پرونده بنویسد! Preview not available پیش‌نمایش در دسترس نیست SiteInfoWidget More... بیشتر... Your connection to this site is <b>secured</b>. ارتباط‌تان با این تارنما <b>امن</b> است. Your connection to this site is <b>unsecured</b>. ارتباط‌تان با این تارنما <b>نا امن</b> است. This is your <b>%1</b> visit of this site. این بازدید <b>%1</b> شما از این تارنما است. You have <b>never</b> visited this site before. شما قبلا <b>هرگز</b> این تارنما را بازدید نکرده‌اید. first اول second دوم third سوم SourceViewer Source of سورسِ File پرونده Load in page بارگذاری داخل صفحه Save as... رونوشت‌برداری به... Close بستن Edit ویرایش Undo واچیدن Redo چیدن Cut برداشتن Copy رونگاشت Paste چسباندن Select All انتخاب همه Find یافتن Go to Line... رفتن به خط... View نما Reload تازه‌سازی Editable قابل ویرایش Word Wrap شکستن خطوط Source loaded in page سورس داخل صفحه بارگذاری شد Cannot load in page. Page has been closed. نمی‌تواند داخل صفحه بارگذاری کند. صفحه بسته شده است. Save file... رونوشت پرونده... Error! خطا! Cannot write to file! نمی‌تواند بر روی پرونده بنویسد! Error writing to file خطا در نوشتن بر روی پرونده Source successfully saved سورس با موفقیت ذخیره شد Source reloaded سورس تازه‌سازی شد Cannot reload source. Page has been closed. نمی‌تواند سورس را تازه‌سازی کند. صفحه بسته شده است. Editable changed قابلیت ویرایش تغییر کرد Word Wrap changed شکست خطوط تغییر کرد Enter line number شماره خط را وارد کنید SourceViewerSearch Search: یافتن: Search... یافتن... Whole words تمام کلمه SpeedDial Image files پرونده‌های تصویری Select image... انتخاب شکل... Unable to load توانایی بارگذاری ندارد SpellCheckDialog SpellCheck بررسی املا <b>Dictionary path</b> <b>مسیر لغت‌نامه</b> Change... تغییر... <b>User dictionary</b> <b>لغت‌نامه کاربر</b> Add افزودن Remove حذف Using Hunspell library با استفاده از کتابخانه Hunspell Choose dictionary path... انتخاب مسیر لغت‌نامه... Add new word... اضافه‌کردن کلمه تازه... Add new word: اضافه‌کردن کلمه تازه: Speller No suggestions پیشنهادی نیست Add to dictionary اضافه کردن به لغت‌نامه Settings سامانش SqueezeLabelV2 Copy رونگاشت SslErrorDialog SSL Certificate Error! Only for this session TabBar &New tab برگه &تازه &Stop Tab تو&قف برگه &Reload Tab تا&زه‌سازی برگه &Duplicate Tab تک&ثیر کردن برگه D&etach Tab &تفکیک برگه Un&pin Tab ب&رداشتن سنجاق برگه &Pin Tab &سنجاق‌زدن برگه Re&load All Tabs تازه‌ساز&ی همه برگه‌ها &Bookmark This Tab &نشان‌دار کردن این برگه Bookmark &All Tabs نشان‌دار کردن &همه برگه‌ها Close Ot&her Tabs بستن &دیگر برگه‌ها Cl&ose &بستن Reloa&d All Tabs تا&زه‌سازی همه برگه‌ها Restore &Closed Tab بر&گرداندن برگه بسته‌شده Close Tabs Do you really want to close other tabs? TabWidget New Tab برگه تازه List of tabs فهرست برگه‌ها Loading... بارگذاری... No Named Page صفحه بدون نام Currently you have %1 opened tabs فعلا %1 برگه باز دارید New tab برگه تازه Empty خالی Restore All Closed Tabs برگرداندن تمام برگه‌های بسته Clear list پاک کردن فهرست TabbedWebView Loading... بارگذاری... %1 - QupZilla %1 - کوپزیلا Inspect Element بررسی عنصر ThemeManager <b>Name:</b> <b>نام:</b> <b>Author:</b> <b>نویسنده:</b> <b>Description:</b> <b>شرح:</b> License مجوز ToolButton Stop توقف Reload تازه‌سازی Updater Update available بروزرسانی در دسترس است New version of QupZilla is ready to download. نسخه تازه کوپزیلا آماده برای دریافت است. Update بروزرسانی UserAgentDialog User Agent Manager مدیر پیشکار کاربر Change global User Agent تغییر پیشکار کاربر سراسری Use different User Agents for specified sites استفاده از پیشکارهای کاربر متفاوت برای تارنماهای مشخص شده Site تارنما User Agent پیشکار کاربر Add افزودن Remove حذف Edit ویرایش Add new site افزودن تارنمای تازه Edit site ویرایش تارنما Site domain: نام دامنه تارنما: User Agent: پیشکار کاربر: WebInspectorDockWidget Web Inspector بازبین وب WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? کوپزیلا نمی‌تواند لینک‌های <b>%1:</b> را به‌کار گیرد. این <ul><li>%2</li></ul> لینک درخواست شده است، آیا می‌خواهید کوپزیلا سعی کند این لینک را با نرم‌افزار معرفی شده در سیستم باز کند؟ Remember my choice for this protocol انتخابم را برای این پروتکل به‌خاطر بسپار External Protocol Request درخواست پروتکل بیرونی To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) کوپزیلا برای نمایش این صفحه، مجبور است درخواست را دوباره بفرستد که دوباره آن را به انجام برساند (مشابه بررسی برای خرید کردن، که هم‌اکنون به انجام رسیده است.) Confirm form resubmission تایید فرم برای ارایه مجدد Select files to upload... انتخاب پرونده‌ها برای آپلود... Server refused the connection خادم ارتباط را نپذیرفت Server closed the connection خادم ارتباط را بست Server not found خادم یافت نشد Connection timed out زمان ارتباط سپری شد Untrusted connection ارتباط غیرمطمین Temporary network failure خرابی موقت شبکه Proxy connection refused ارتباط پروکسی پذیرفته نشد Proxy server not found خادم پروکسی یافت نشد Proxy connection timed out زمان ارتباط پروکسی سپری شد Proxy authentication required پروکسی اجازه لازم دارد Content not found محتوایی پیدا نشد Unknown network error خطای ناشناخته در شبکه AdBlocked Content محتوای مسدود شده با AdBlock Blocked by <i>%1</i> مسدود شده توسط <i>%1</i> Content Access Denied دسترسی به محتویات ممکن نشد Error code %1 کد خطا %1 Failed loading page خطا در بارگذاری صفحه QupZilla can't load page. کوپزیلا نمی‌تواند صفحه را بارگذاری کند. QupZilla can't load page from %1. کوپزیلا نمی‌تواند صفحه را از %1 بارگذاری کند. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com آدرس را برای اشکال‌های تحریری مانند <b>ww.</b>example.com به‌جای <b>www.</b>example.com بررسی کنید If you are unable to load any pages, check your computer's network connection. اگر هیچ صفحه‌ای را نمی‌توانید بارگذاری کنید، ارتباط رایانه‌تان با شبکه را بررسی کنید. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. اگر رایانه یا شبکه‌تان بوسیله پروکسی یا دیوارآتشین محافظت می‌شود، مطمین شوید کوپزیلا اجازه دسترسی به وب را دارد. Try Again بار دیگر سعی کن JavaScript alert اعلان اسکریپت‌های جاوا Prevent this page from creating additional dialogs از ایجاد پنجره پرس‌وجوی تازه توسط صفحه جلوگیری کن Choose file... انتخاب پرونده... Cannot read data from <b>%1</b>. Upload was cancelled! نمی‌تواند داده‌ها را از <b>%1</b> بخواند. بارگذاری رد شد! Cannot read file! نمی‌تواند پرونده را بخواند! WebSearchBar Manage Search Engines مدیریت موتورهای یابنده Add %1 ... افزودن %1 ... Paste And &Search چسباندن و &یافتن Clear All حذف همه Show suggestions پیشنهادها را نشان بده Search when engine changed یافتن دوباره هنگامی که موتور یابنده تغییر یابد WebView No Named Page صفحه بدون‌نام Create Search Engine ایجادِ موتور یابنده Cut برداشتن Copy رونگاشت Paste چسباندن Select All انتخاب همه Default پیش‌فرض Left to Right چپ به راست Right to Left راست به چپ Bold برجسته Italic مورب Underline زیرخط &Reload &تازه‌سازی S&top تو&قف Delete حذف &Back &پیشین &Forward &پسین This frame این قاب Show &only this frame &فقط نمایش این قاب Show this frame in new &tab نمایش این قاب در &برگه تازه Print frame چاپ قاب Zoom &in &بزرگ‌نمایی &Zoom out &کوچک‌نمایی Reset بازنشاندن Show so&urce of frame نمایش &سورس قاب Book&mark page صفحه &نشان‌دار کردن &Save page as... &رونوشت‌برداری صفحه به... &Copy page link رونگاشت از &لینک صفحه Send page link... فرستادن لینک صفحه... &Print page &چاپ صفحه Select &all انتخاب &همه Validate page تایید اعتبار صفحه Show so&urce code نمایش &سورس‌کد Show info ab&out site نمایش اطلاعاتی &درباره تارنما Open link in new &tab بازکردن لینک در &برگه تازه Open link in new &window بازکردن لینک در &پنجره تازه B&ookmark link &نشان‌دار کردن لینک &Save link as... &رونوشت‌برداری لینک به... Send link... فرستادن لینک... &Copy link address رونگاشت آدرس &لینک Show i&mage نمایش &شکل Copy im&age رونگاشت ش&کل Copy image ad&dress رونگاشت &آدرس شکل &Save image as... رونو&شت‌برداری شکل به... Send image... فرستادن شکل... Send text... فرستادن متن... Google Translate مترجم گوگل Dictionary لغت‌نامه Go to &web address به آدرس &وب برو Search "%1 .." with %2 یافتن «%1 ..» بوسیله %2 Search with... یافتن بوسیله... &Play &اجرا &Pause &توقف Un&mute با &صدا &Mute &بی صدا &Copy Media Address &رونگاشت آدرس رسانه &Send Media Address &فرستادن آدرس رسانه Save Media To &Disk رونوشت‌برداری رسانه به &دیسک Check &Spelling بررسی &املا Languages زبان‌ها jsAlert Prevent this page from creating additional dialogs از ایجاد پنجره پرس‌وجوی تازه توسط صفحه جلوگیری کن qupzilla-1.6.0/translations/fr_FR.ts000066400000000000000000010651541226107126500174640ustar00rootroot00000000000000 AboutDialog About QupZilla A propos de QupZilla Authors Auteurs Authors and Contributors Auteurs et Contributeurs < About QupZilla < A propos de QupZilla <p><b>Application version %1</b><br/> <p><b>Version de l'application %1</b><br/> <b>WebKit version %1</b></p> <b> Version de Webkit %1</b></p> <small>Build time: %1 </small></p> <small>Date de compilation : %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Développeur principal : </b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Contributeurs : </b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Traducteurs : </b><br/>%1</p> AcceptLanguage Preferred Languages Langues préférées Add... Ajouter... Remove Supprimer Up Monter Down Descendre Personal [%1] Personnel [%1] AdBlockAddSubscriptionDialog Add Subscription Ajouter une liste Title: Titre : Address: Adresse : Add new subscription to AdBlock: Ajouter une nouvelle liste à Adblock : AdBlockCustomList Custom Rules Régles personnalisées AdBlockDialog AdBlock Configuration Configuration de AdBlock Enable AdBlock Activer AdBlock Search... Recherche.... Options Options AdBlock AdBlock Use only essential part of EasyList (for performance reasons) Add Rule Ajouter une régle Remove Rule Supprimer la règle Add Subscription Ajouter la liste Remove Subscription Supprimer la liste Update Subscriptions Mettre à jour les listes Learn about writing rules... Apprendre comment écrire des règles... AdBlockIcon AdBlock lets you block unwanted content on web pages AdBlock vous permet de bloquer tout le contenu indésirable des pages Internet Blocked popup window Pop-up bloqué AdBlock blocked unwanted popup window. AdBlock a bloqué un pop-up non désiré. AdBlock AdBlock Show AdBlock &Settings Montrer les &paramètres d'AdBlock Disable on %1 Désactiver pour %1 Disable only on this page Désactiver uniquement pour cette page Blocked Popup Windows Pop-up bloqués %1 with (%2) %1 avec (%2) No content blocked Aucun contenu bloqué Blocked URL (AdBlock Rule) - click to edit rule URL bloquée (règle AdBlock) - Cliquer pour éditer la règle AdBlockManager Do you want to add <b>%1</b> subscription? Voulez-vous ajouter la liste <b>%1</b> ? AdBlock Subscription Liste d'AdBlock EasyList EasyList AdBlockTreeWidget Add Rule Ajouter une règle Remove Rule Supprimer la règle Add Custom Rule Ajouter une règle personalisée Please write your rule here: Veuillez écrivez votre règle ici : %1 (recently updated) %1 (récemment mis à jour) AddAcceptLanguage Add Language Ajouter une langue Choose preferred language for web sites Choisir la langue préférée pour les sites internet Personal definition: Définition personnelle : AesInterface Warning! Attention ! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. Les données ont été chiffrées avec une version plus récente de QupZilla. Veuillez installer la dernière version de QupZilla. AutoFill Database (plaintext) Base de donnée (texte en clair) Database (encrypted) Base de données (chiffrée) Enter Master Password Permission is required, please enter Master Password: Permission requise, veuillez entrer le Mot de Passe Maitre : Warning! Attention ! Entered password is wrong! Le mot de passe entré est incorrect ! This backend needs a master password to be set! QupZilla just switches to its default backend AutoFillManager Passwords are stored in: Les mots de passe sont stockés dans : Change backend Backend options Passwords Mots de passe Server Serveur Username Nom d'utilisateur Password Mot de passe Import/Export Importer/Exporter Show Passwords Montrer les mots de passe Edit Editer Remove Supprimer Remove All Tout supprimer Exceptions Exceptions Import Passwords from File... Importer les mots de passe... Export Passwords to File... Exporter les mots de passe... Search Rechercher Change backend... Change backend: Are you sure that you want to show all passwords? Etes-vous sûr de vouloir afficher tous les mots de passe ? Hide Passwords Cacher les mots de passe Confirmation Confirmation Are you sure to delete all passwords on your computer? Etes-vous sûr de vouloir supprimer tous les mots de passe ? Edit password Editer le mot de passe Change password: Changer le mot de passe : Choose file... Choisir un fichier... Cannot read file! Lecture du fichier impossible ! Successfully imported Importation réussie Error while importing! Erreur lors de l'importation ! Cannot write to file! Ecriture du fichier impossible ! Successfully exported Exportation réussie AutoFillNotification Update Mettre à jour Remember Retenir Never For This Site Jamais pour ce site Not Now Plus tard on %1 sur %1 for <b>%1</b> pour <b>%1</b> Do you want QupZilla to update saved password %1? Voulez vous que QupZilla mette à jour le mot de passe %1 ? Do you want QupZilla to remember the password %1 %2? Voulez-vous que Qupzilla retienne le mot de passe %1 %2? AutoFillWidget Choose username to login Choisir le nom d'utilisateur Login Nom d'utilisateur Login as <b>%1</b> Connexion en tant que <b>%1</b> BookmarkIcon Bookmark this Page Marquer cette page Edit this bookmark Editer ce marque-page BookmarksImportDialog Import Bookmarks Importer des marque-pages <b>Import Bookmarks</b> <b>Importer des marque-pages</b> From File Depuis le fichier Internet Explorer Internet Explorer Choose browser from which you want to import bookmarks: Choisir le navigateur depuis lequel vous voulez importer les marque-pages : <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Remarque : </b> Pour le moment, seul l'import depuis un fichier Html permet aussi l'importation des dossiers de marque-pages. Choose... Choisir... Try to fetch icons for all bookmarks (may take a while) Essayer de chercher les icônes pour tous les signets (cela peut prendre un certain temps) Fetching icons, please wait... Récupération des icônes, merci de patienter... Title Titre Url Url Next Suivant Cancel Annuler <b>Importing from %1</b> <b>Importer depuis %1</b> Finish Terminer Please press Finish to complete importing process. Cliquer sur Terminer pour finaliser le processus d'importation. Error! Erreur ! The file doesn't contain any bookmark. Ce fichier ne contient aucun marque-page. Choose directory... Choisir un emplacement... Choose file... Choisir un fichier... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox stocke ses marque-pages dans la base de données SQL <b>>places.sqlite</b>. Ce fichier est généralement situé dans Please choose this file to begin importing bookmarks. Choisir le fichier pour commencer l'importation des marque-pages. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Google Chrome stocke ses marque-pages dans le fichier texte <b>Bookmarks</b>. Ce fichier est généralement situé dans Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera stocke ses marque-pages dans le dossier <b>bookmarks.adr</b>. Ce fichier est généralement situé dans You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Vous pouvez importer des marque-pages de n'importe quel navigateur qui supporte l'exportation HTML. Ce fichier a généralement ces extensions Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Exploreur stocke ses marque-pages dans le dossier <b>Favoris</b>. Ce fichier est généralement situé dans Please choose this folder to begin importing bookmarks. Choisir ce dossier pour commencer l'importation des marque-pages. No Error Pas d'erreur Unable to open file. Impossible d'ouvrir le fichier. Cannot evaluate JSON code. Évaluation du code JSON impossible. File does not exist. Le fichier n'existe pas. Unable to open database. Is Firefox running? Impossible d'ouvrir la base de données. Firefox est-il en cours de fonctionnement ? Directory does not exist. Le répertoire n'existe pas. The directory does not contain any bookmarks. Le répertoire ne contient aucun marque-page. BookmarksManager Bookmarks Marque-pages Optimize Database Optimiser la base de données Import Bookmarks Importer les marque-pages Add Folder Ajouter un dossier Title Titre Url URL Expand All Étendre à tous Collapse All Tout réduire Add new folder Ajouter un nouveau dossier Choose parent folder for new folder: Choisir le dossier parent pour le nouveau dossier : Choose name for new bookmark folder: Choisir le nom du nouveau dossier de marque-page : Add new subfolder Ajouter un nouveau sous-dossier Choose name for new subfolder in bookmarks toolbar: Choisir le nom du nouveau sous dossier dans la barre d'outils des marque pages : Rename Folder Renommer le dossier Choose name for folder: Choisir le nom du dossier : Add Subfolder Ajouter un sous-dossier Rename folder Renommer le dossier Remove folder Supprimer le dossier Open link in current &tab Ouvrir ce lien dans la page &courante Open link in &new tab Ouvrir le lien dans un &Nouvel onglet Move bookmark to &folder Déplacer le marque-page dans le &Dossier Change icon Changer l'icône Rename bookmark Renommer le marque-page Remove bookmark Supprimer le marque-page <b>Warning: </b>You already have bookmarked this page! <b>Attention : </b>Vous avez déjà marqué cette page ! Choose name and location of this bookmark. Choisir le nom et l'emplacement du marque-page. Add New Bookmark Ajouter un nouveau marque-page Choose folder for bookmarks: Choisissez un dossier pour les marque-pages : Bookmark All Tabs Marquer tous les onglets BookmarksModel Bookmarks In Menu Menu Marque-pages Bookmarks In ToolBar Barre d'outils marque-pages Unsorted Bookmarks Marque-pages non classés BookmarksSideBar Search... Recherche... Open link in current &tab Ouvrir ce lien dans l'onglet &actuel Open link in &new tab Ouvrir le lien dans un &nouvel onglet Copy address Copier l'adresse &Delete &Supprimer BookmarksToolbar &Bookmark Current Page &Marquer la page actuelle Bookmark &All Tabs M&arquer tous les onglets &Organize Bookmarks &Organiser les marque-pages Show Most &Visited Montrer les plus &visités Show Only Icons Monter uniquement les icones &Hide Toolbar &Cacher la barre d'outils Open bookmark Ouvrir le marque-page Open bookmark in new tab Ouvrir le marque-page dans un nouvel onglet Move right Déplacer vers la droite Move left Déplacer vers la gauche Edit bookmark Modifier le marque-page Remove bookmark Supprimer le marque-page Edit bookmark: Modifier le marque-page : Title: Titre : Url: URL : Edit Bookmark Modifier le marque-page Most visited Plus visités Sites you visited the most Sites les plus visités Empty Vide BookmarksTree Bookmarks Marques-pages New Folder... Nouveau dossier... BookmarksWidget Add to Speed Dial Ajouter à Speed Dial Save Sauvegarder Name: Nom : Folder: Dossier : Remove from Speed Dial Supprimer de Speed Dial Remove Supprimer BrowsingLibrary Library Bibliothèque Search... Recherche... History Historique Bookmarks Marque-pages RSS Flux RSS Database Optimized Base de données optimisée Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 La base de données a été optimisée avec succès. <br/><br/><b>Taille avant optimisation : </b>%1<br/><b>Taille après optimisation : </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Émis à</b> Common Name (CN): Nom Commun (CN : Common Name) : Organization (O): Organisation (O) : Organizational Unit (OU): Groupe d'Organisation (OU : Organizational Unit) : Serial Number: Numéro de série : <b>Issued By</b> <b>Émis par</b> <b>Validity</b> <b>Validité</b> Issued On: Émis le : Expires On: Expire le : ClearPrivateData Clear Recent History Supprimer l'historique récent Choose what you want to delete: Choississez ce que vous voulez supprimer : Clear history Supprimer l'historique Clear cache Vider le cache Clear icons Supprimer les icônes <b>Clear Recent History</b> <b>Supprimer l'historique récent</b> Earlier Today Plus tôt aujourd'hui Week Semaine Month Mois All Tout Clear web databases Nettoyer les bases de données web Clear local storage Nettoyer le stockage local Clear cookies Supprimer les cookies ClickToFlash Object blocked by ClickToFlash Objet bloqué par ClickToFlash Show more information about object Informations complémentaires sur l'objet Delete object Supprimer l'objet Add %1 to whitelist Ajouter %1 à la liste blanche Flash Object FlashObject <b>Attribute Name</b> <b> Nom de l'attribut</b> <b>Value</b> <b>Valeur</b> No more information available. Aucune information supplémentaire disponible. CookieManager Cookies Cookies Stored Cookies Cookies stockés Find: Trouver : These cookies are stored on your computer: Ces cookies sont stockés sur votre ordinateur : Server Serveur Cookie name Nom du cookie Name: Nom : Value: Valeur : Server: Serveur : Path: Emplacement : Secure: Sécurisé : Expiration: Expire le : <cookie not selected> <cookie non sélectionné> Remove all cookies Supprimer tous les cookies Remove cookies Supprimer les cookies Cookie Filtering Filtrage des cookies <b>Cookie whitelist</b> <b>Cookies autorisés</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Les cookies provenant de ces serveurs seront TOUJOURS acceptés (même si vous avez désactivé l'enregistrement des cookies) Add Ajouter Remove Retirer <b>Cookie blacklist</b> <b>Cookies bloqués</b> Cookies from these servers will NEVER be accepted Les cookies provenant de ces serveurs ne seront JAMAIS acceptés Settings Paramètres <b>Cookie Settings</b> <b> Paramètre des cookies</b> Allow storing of cookies Autoriser le stockage des cookies Delete cookies on close Supprimer les cookies à la fermeture Match domain exactly Correspondre exactement au domaine Filter tracking cookies Filtrer les cookies traceurs <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! <b>Attention. </b> Correspondre exactement au domaine et filtrer les cookies traceurs peut mener au denie de certains cookies. Si vous avez quelques problèmes avec les cookies, essayez de désactiver ces options en premier ! Search Recherche Confirmation Confirmer Are you sure to delete all cookies on your computer? Êtes-vous sûr de vouloir supprimer tous les cookies de votre ordinateur ? Secure only Sécurisé uniquement All connections Toutes les connexions Session cookie Cookie de session Remove cookie Supprimer le cookie Add to whitelist Ajouter aux cookies autorisés Add to blacklist Ajouter aux cookies bloqués DownloadFileHelper Save file as... Enregistrer le fichier sous... NoNameDownload Téléchargement sans nom DownloadItem Remaining time unavailable Temps restant indisponible Error: Cannot write to file! Erreur : Impossible d'écrire dans le fichier ! Done - %1 Fait - %1 Cancelled Annulé few seconds quelques secondes %n seconds %n minutes %n hours Unknown speed Vitesse inconnue kB/s KB/s MB/s MB/s GB/s GB/s Unknown size Taille inconnue %2 - unknown size (%3) %2 - taille inconnue (%3) Remaining %1 - %2 of %3 (%4) Temps restant %1 - %2 de %3 (%4) Cancelled - %1 Annulé -%1 Delete file Supprimer le fichier Do you want to also delete dowloaded file? Voulez-vous aussi supprimer le fichier téléchargé ? Open File Ouvrir le fichier Open Folder Ouvrir le dossier Go to Download Page Aller à la page de téléchargement Copy Download Link Copier l'adresse du téléchargement Cancel downloading Annuler le téléchargement Remove Supprimer Error Erreur Not found Non trouvé Sorry, the file %1 was not found! Désolé, le fichier %1 n'a pas été trouvé ! Error: Erreur : DownloadManager Download Manager Gestionnaire de téléchargement Clear Nettoyer %1% of %2 files (%3) %4 remaining %1% de %2 fichiers (%3) %4 restant %1% - Download Manager %1% - Gestionnaire de téléchargement Download Finished Téléchargement terminé All files have been successfully downloaded. Tous les fichiers ont été téléchargés avec succès. Warning Attention Are you sure to quit? All uncompleted downloads will be cancelled! Etes-vous sûr de vouloir quitter ? Tous les téléchargements incomplets seront annulés ! DownloadOptionsDialog Opening Ouverture Copy download link You have chosen to open Vous avez choisi d'ouvrir which is a: Qui est un : What should QupZilla do with this file? Que doit faire QupZilla de ce fichier ? Open... Ouvrir... Save File Enregistrer le fichier Download with External Manager Télécharger avec un gestionnaire externe from: De : Opening %1 Ouverture de %1 Download link copied. EditSearchEngine Name: Nom : Url: URL : Shortcut: Raccourci : Icon: Icône : <b>Note: </b>%s in url or post data represent searched string Post Data: Change... Changer... FileSchemeReply No Error Pas d'erreur Up to higher level directory Remonter dans l'arborescence Show hidden files Montrer les fichiers cachés Name Nom Size Taille Last modified Dernière modification Index for %1 Index pour %1 Folder is empty. Le dossier est vide. FtpDownloader Cancelled! Annuler ! FtpSchemeReply Up to higher level directory Aller au dossier parent Show hidden files Montrer les fichiers cachés Name Nom Size Taille Last modified Dernière modification Index for %1 Index pour %1 Folder is empty. Le fichier est vide Unknown command Commande inconnue HTML5PermissionsDialog HTML5 Permissions Permissions HTML5 Notifications Notifications Site Site Behaviour Comportement Remove Supprimer Geolocation Géolocalisation Allow Permettre Deny Refuser HTML5PermissionsNotification Remember Retenir Allow Permettre Deny Refuser this site ce site Allow %1 to show desktop notifications? Permettre %1 d'afficher les notifications du bureau Allow %1 to locate your position? Autoriser %1 à localiser votre position ? History No Named Page Page non nommée January Janvier February Février March Mars April Avril May Mai June Juin July Juillet August Août September Septembre October Octobre November Novembre December Décembre HistoryManager History Historique Delete Supprimer Clear All History Supprimer tout l'historique Optimize Database Optimiser la base de données Confirmation Confirmer Are you sure to delete all history? Etes-vous sûr de vouloir supprimer tout l'historique ? HistoryModel Title Titre Address Adresse Visit Date Date de visite Visit Count Nombre de visites Today Aujourd'hui This Week Cette semaine This Month Ce mois-ci HistorySideBar Search... Recherche... HistoryView Open link in current tab Ouvrir le lien dans l'onglet courant Open link in new tab Ouvrir le lien dans un nouvel onglet Copy title Copier le titre Copy address Copier l'adresse Remove Supprimer IconChooser Choose icon... Choisir l'icône... From file Depuis le fichier Image (.png, .jpg, .jpeg, .gif) Image (.png, .jpg, .jpeg, .gif) Choose file... Choisir un fichier... From database Depuis la base de données Site Url: URL : Image files Fichiers image JsOptions JavaScript Options Options JavaScript Allow JavaScript to: Permettre à JavaScript de : Close windows Fermer la fenêtre Open popup windows Ouvrir les fenêtres popup Change window size Changer la taille des fenêtres Hide menu bar Cacher la barre de menu Hide status bar Cacher la barre de statuts Hide tool bar Cacher la barre d'outils Access clipboard Accéder au presse-papier LicenseViewer License Viewer Lecteur de licence LocationBar Enter URL address or search on %1 Entrer une adresse URL ou chercher sur %1 Paste And &Go Coller et &lancer Clear All Effacer tout .co.uk Append domain name on ALT + Enter = Should be different for every country .fr Show information about this page Montrer plus d'informations sur cette page LocationCompleterView Switch to tab Changer d'onglet MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? QupZilla n'est pas votre navigateur par défaut ; Voulez vous qu'il le devienne ? Always perform this check when starting QupZilla. Toujours faire cette vérification au démarrage de QupZilla. Default Browser Navigateur par défaut QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. QupZilla est un nouveau navigateur Internet, open source, rapide et sûr. QupZilla est sous licence GPLv3 ou (selon votre version) une version plus récente. Il est basé sur WebKit et le framework Qt. MasterPasswordDialog Encrypted DataBase Settings Set/Change Master Password... Clear Master Password... This backend does not work without a master password. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Current Password: Mot de passe actuel: New Password: Nouveau mot de passe : Confirm Password: Confirmer le mot de passe : <b>Note:</b> The Master Password is not resettable. Do not forget it, please. <b>Note :</b> Le mot de passe principal ne peut pas être remis à zéro. Ne l'oubliez pas, s'il vous plaît. Warning! Attention ! You entered a wrong password! Vous avez entré un mot de passe incorrecte ! New/Confirm password fields do not match! Some data has not been decrypted. The master password was not cleared! Are you sure to clear master password and decrypt data? NavigationBar No Named Page Page non nommée Back Retour Forward Précédent Home Accueil New Tab Nouvel onglet Main Menu Menu principal Exit Fullscreen Sortir du plein écran Clear history Supprimer l'historique NetworkManager SSL Certificate Error! Erreur de certificat SSL ! The page you are trying to access has the following errors in the SSL certificate: La page à laquelle vous essayez d'accéder présente les erreurs suivantes dans le certificat SSL : <b>Organization: </b> <b>Organisation : </b> <b>Domain Name: </b> <b>Nom de domaine : </b> <b>Expiration Date: </b> <b>Date d'expiration : </b> <b>Error: </b> <b>Erreur : </b> Would you like to make an exception for this certificate? Voulez-vous faire une exception pour ce certificat ? Authorisation required Autorisation nécessaire Username: Nom d'utilisateur : Password: Mot de passe : Save username and password on this site Enregister le nom d'utilisateur et le mot de passe pour ce site A username and password are being requested by %1. The site says: "%2" Un nom d'utilisateur et un mot de passe sont requis par %1. Le site dit : "%2" FTP authorisation required Autorisation FTP nécessaire Login anonymously Login anonyme A username and password are being requested by %1:%2. Un nom d'utilisateur et un mot de passe sont requis par %1:%2 Proxy authorisation required Autorisation du proxy nécessaire Remember username and password for this proxy. A username and password are being requested by proxy %1. Un nom d'utilisateur et un mot de passe sont requis par le proxy %1. PageScreen Page Screen Impression d'écran Format: Format : Location: Emplacement : Browse... Parcourir... Save as %1 Enregistrer sous %1 Choose location... Choisir l'emplacement... File '%1' already exists. Do you want to overwrite it? Le fichier '%1' existe déjà. Voulez vous l'écraser ? File already exists Le fichier existe déjà PluginsList Application Extensions Extensions de QupZilla Allow Application Extensions to be loaded Autoriser QupZilla à charger ses extensions Settings Paramètres WebKit Plugins Extensions WebKit <b>Click To Flash Plugin</b> <b>Extension ClickToFlash</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. ClickToFlash est une extension qui bloque le chargement automatique du contenu Flash de la page. Vous pouvez le charger manuellement en cliquant sur l'icône lecture de Flash. Whitelist Liste blanche Add Ajouter Remove Retirer Allow Click To Flash Autoriser ClickToFlash PluginsManager Add site to whitelist Ajouter un site à la liste blanche Server without http:// (ex. youtube.com) Adresse sans http:// (ex: youtube.com) Error! Erreur ! Cannot load extension! Chargement de l'extension impossible ! PopupWebView Inspect Element Inspecter l'élément PopupWindow File Fichier &Save Page As... &Enregistrer la page sous... Save Page Screen Sauver l'impression d'écran Send Link... Envoyer le lien... &Print... &Imprimer Close Fermer Edit Modifier &Undo $Annuler &Redo $Rétablir &Cut $Couper C&opy C$opier &Paste Co$ller Select All Sélectionner tout Find Trouver View Voir &Stop $Arrêter &Reload Ac$tualiser Zoom &In Zoom $plus Zoom &Out Zoom $moins Reset Réinitialiser &Page Source $Source de la page %1 - QupZilla %1 - QupZilla Preferences Preferences Préférences QupZilla QupZilla General Général Appearance Apparence Tabs Onglets Browsing Navigation Fonts Polices Keyboard Shortcuts Raccourcis clavier Downloads Téléchargements Password Manager Gestionnaire de Mots de passe Privacy Vie Privée Notifications Notifications Extensions Extensions Other Autre Use current Page courante Note: You cannot delete active profile. Note : Vous ne pouvez pas effacer le profil actif. Create New Créer un nouveau Delete Supprimer <b>Launching</b> <b>Lancement</b> After launch: Après le lancement : Open blank page Ouvrir une page blanche Open homepage Ouvrir la page d'accueil Open speed dial Ouvrir Speed Dial Restore session Restaurer la session Homepage: Page d'accueil : On new tab: Dans un nouvel onglet : Open blank tab Ouvrir un onglet vide Open other page... Ouvrir une autre page ... <b>Profiles</b> <b>Profils</b> Startup profile: Profil de démarrage : Check for updates on start Vérifier les mises à jour au démarrage Active profile: Profil utilisé : In order to change language, you must restart browser. Pour changer de langue, vous devez redémarrer le navigateur. <b>Language</b> <b>Langue</b> Available translations: Traductions disponibles : Don't load tabs until selected Ne pas charger les onglets jusqu'à leur sélection Check to see if QupZilla is the default browser on startup Vérifier que QupZilla est le navigateur par défaut Check Now Vérifier maintenant Themes Thèmes Advanced options Options avancées <b>Browser Window</b> <b>Fenêtre de navigation</b> Show StatusBar on start Afficher la barre de statut au démarrage Show Bookmarks ToolBar on start Afficher la barre des signets au démarrage Show Navigation ToolBar on start Afficher la barre de navigation au démarrage <b>Navigation ToolBar</b> <b>Barre de navigation</b> Show Home button Afficher le bouton Home Show Back / Forward buttons Afficher Précédent/Suivant <b>Background<b/> <b>Arrière-plan<b/> Use transparent background Utiliser un arrière plan transparent Show web search bar Montrer la barre de recherche Web Show Add Tab button Afficher le bouton d'ajout d'onglet Show Reload / Stop buttons Afficher le bouton d'Actualisation/Arrêt Tabs behaviour Comportement des onglets Show tab previews Aperçu des onglets au survol de la souris Make tab previews animated Animer les aperçus des onglets Hide tabs when there is only one tab Cacher la barre d'onglet lorsqu'il n'y en a qu'un seul Activate last tab when closing active tab Activer le dernier onglet en fermant celui actif Open new tabs after active tab Ouvrir les nouveaux onglets après l'onglet actuel Open new empty tabs after active tab Ouvrir un onglet vide après le courant Automatically switch to newly opened tab Basculer automatiquement sur le nouvel onglet Don't quit upon closing last tab Ne pas quitter QupZilla en fermant le dernier onglet Ask when closing multiple tabs Demander confirmation lors de la fermeture simultanée de plusieurs onglets Closed tabs list instead of opened in tab bar Fermer la liste des onglets au lieu de l'ouvrir dans la barre d'onglets Address Bar behaviour Comportement de la barre d'adresse Suggest when typing into address bar: Suggestion lors des saisies dans la barre d'adresse : History and Bookmarks Historique et Marques-pages History Historique Bookmarks Marque-pages Nothing Rien Press "Shift" to not switch the tab but load the url in the current tab. Appuyer sur "Shift" pour réactualiser un onglet et non en changer. Propose to switch tab if completed url is already loaded. Proposer de changer d'onglet si l'url complète est déjà chargée. Always show go icon Toujours montrer l’icône Aller Select all text by double clicking in address bar Sélectionner tout le texte en double cliquant sur la barre d'adresse Select all text by clicking in address bar Sélectionner tout le texte en cliquant sur la barre d'adresse Search with Default Engine Rechercher avec le moteur par défaut Show loading progress in address bar Montrer la progression du chargement dans la barre d'adresse Fill Remplir Bottom En dessous Top Au dessus Custom color: Couleurs : Select color Sélectionner la couleur ... ... Reset Réinitialiser Web Configuration Navigation web Allow Netscape Plugins (Flash plugin) Autoriser les Plugins Netscape (Flash plugin) Allow JavaScript Autoriser JavaScript Allow JAVA Autoriser JAVA Allow DNS Prefetch Autoriser l'indexation de DNS Enable XSS Auditing try to detect possible XSS attacks when executing javascript Activer l'audit XSS Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Imprimer l'élément d'arrière plan Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Naviguer de lien en lien via la touche tabulation Animated scrolling Défilement animé Enable caret browsing Activer la navigation au curseur Enable spatial navigation Activer la navigation spatiale Zoom text only Zoomer sur le texte seulement Mouse wheel scrolls La molette de la souris fait défiler lines on page lignes par page Default zoom on pages: Zoom par défaut de la page : Local Storage Stockage local Maximum Maximum 50 MB 50 MB 1 1 Maximum pages in cache: Nombre maximum de pages dans le cache : Allow storing network cache on disk Autoriser le stockage du cache réseau sur le disque dur Store cache in: Conserver le cache dans : Allow saving history Autoriser la sauvegarde de l'historique Delete history on close Effacer l'historique à la fermeture Allow local storage of HTML5 web content Autoriser le stockage local du contenu HTML5 Delete locally stored HTML5 web content on close Supprimer à la fermeture le contenu HTML5 stocké Delete now Effacer maintenant Proxy Configuration Configuration du proxy Proxy Auto-Config (.pac) file fichier de configuration automatique du Proxy (.pac) Reload Actualiser HTTP HTTP SOCKS5 SOCKS5 Port: Port : Username: Nom d'utilisateur : Password: Mot de passe : Don't use on: Ne pas utiliser pour : Manual configuration Configuration manuelle System proxy configuration Utiliser les paramètres proxy du système Do not use proxy Ne pas utiliser de proxy <b>Exceptions</b> <b>Exceptions</b> Server: Serveur : Use different proxy for https connection Utiliser un autre proxy pour les connexions HTTPS Use script for automatic configuration: Utiliser le script pour une configuration automatique : <b>Font Families</b> <b>Polices</b> Standard Standard Fixed Largeur fixe Serif Serif Sans Serif Sans serif Cursive Cursive Fantasy Fantasy <b>Font Sizes</b> <b>Taille des polices</b> Fixed Font Size Taille fixe Default Font Size Taille de police par défaut Minimum Font Size Taille de police minimum Minimum Logical Font Size Hauteur logique minimale de police <b>Shortcuts</b> <b>Raccourcis</b> Switch to tabs with Alt + number of tab Changer d'onglet avec Alt+ numéro de l'onglet Load speed dials with Ctrl + number of speed dial Charger les pages Speed Dial avec Ctrl + le numéro du Dial Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>Emplacement des téléchargements</b> Ask everytime for download location Demander systématiquement l'emplacement des téléchargements Use defined location: Utiliser l'emplacement défini : <b>Download Options</b> <b>Options de téléchargement</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Utiliser le navigateur de fichier du système (peut causer des problèmes avec le téléchargement de contenus sécurisés SSL) Close download manager when downloading finishes Fermer le gestionnaire de téléchargement quand celui-ci est terminé <b>External download manager</b> <b>Gestionnaire de téléchargement externe</b> Use external download manager Utiliser un gestionnaire de téléchargement externe Executable: Application : Arguments: Options : Leave blank if unsure Laisser vide si vous n'êtes pas sûr <b>%d</b> will be replaced with URL to be downloaded <b>%d</b> sera remplacé par l'URL à télécharger <b>AutoFill options</b> <b>Options de saisie automatique</b> Allow saving passwords from sites Autoriser la sauvegarde des mots de passe des sites Send Referer header to servers Envoyer les entêtes Referer aux serveurs <b>Cookies</b> <b>Cookies</b> Send Do Not Track header to servers Envoyer les entêtes Do Not Track aux serveurs <b>Other</b> <b>Autre</b> Manage CA certificates Gérer les certifications CA Certificate Manager Certificats <b>SSL Certificates</b> <b>Certificats SSL</b> <b>JavaScript</b> <b>JavaScript</b> Manage JavaScript privacy options Gérer les options de respect de la vie privée de JavaScript JavaScript options JavaScript Cookies Manager Cookies Manage Cookies Gérer les cookies <b>HTML5 Permissions</b> <b>Permissions HTML5</b> Manage HTML5 permissions Gérer les permissions HTML5 HTML5 Permissions Permissions d'HTML5 <b>Notifications</b> <b>Notifications</b> Use OSD Notifications Utiliser les notifications OSD Use Native System Notifications (Linux only) Utiliser les notifications du système (seulement sur Linux) Do not use Notifications Ne pas utiliser les notifications Expiration timeout: Temps d'expiration : seconds secondes <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Note : </b>Vous pouvez changer la position des notifications OSD par glisser/déposer sur l'écran. StyleSheet automatically loaded with all websites: Feuilles de styles chargées automatiquement avec tous les sites web : Languages Langues <b>Preferred language for web sites</b> <b>Langue préférée pour les sites web</b> <b>Change browser identification</b> <b> Changer l'identité du navigateur </b> User Agent Manager Gestionnaire d'User-Agent Default Défaut Set as default Utilisez par défaut OSD Notification Notification OSD Drag it on the screen to place it where you want. Faites-le glisser sur l'écran pour le placer où vous voulez. Choose download location... Choisir l'emplacement de téléchargement ... Choose stylesheet location... Choisir l'emplacement des feuilles de style... Deleted Effacé Choose executable location... Choisir l'emplacement de l'application... Choose cache path... choisir l'emplacement du cache... New Profile Nouveau profil Enter the new profile's name: Entrer le nom du nouveau profil : Error! Erreur ! This profile already exists! Ce profil existe déjà ! Cannot create profile directory! Impossible de créer le répertoire du profil ! Confirmation Confirmation Are you sure to permanently delete "%1" profile? This action cannot be undone! Supprimer le profil "%1" de façon définitive ? Cette action est irréversible ! Select Color Sélectionner la couleur QObject Native System Notification Notification native du système Save file as... Enregistrer le fichier sous ... The file is not an OpenSearch 1.1 file. Le fichier n'est pas un fichier OpenSearch 1.1. <not set in certificate> <non défini dans le certificat> Unknown size Taille inconnue KB KB MB MB GB GB Executable: Application : Arguments: Option : Cannot start external program Lancement du programme externe impossible Cannot start external program! %1 Lancement du programme externe impossible ! %1 QtWin Open new tab Ouvrir un nouvel onglet Opens a new tab if browser is running Ouvre un nouvel onglet si le navigateur est en marche Open new window Ouvrir une nouvelle fenètre Opens a new window if browser is running Ouvre une nouvelle fenètre si le navigateur est en marche Open download manager Ouvrir le gestionnaire de téléchargement Opens a download manager if browser is running Ouvre un gestionnaire de téléchargement si le navigateur est en marche QupZilla QupZilla QupZilla Private Browsing Enabled Navigation privée activée IP Address of current page Adresse IP de la page actuelle &About QupZilla À propos de Qup&Zilla Pr&eferences Préfér&ences Quit Quitter &File &Fichier &New Window &Nouvelle page New Tab Nouvel onglet Open Location Ouvrir un répertoire Open &File... Ouvrir un &fichier Close Tab Fermer l'onglet Close Window Fermer la fenêtre &Save Page As... &Enregistrer la page sous... Save Page Screen Enregistrer l'impression d'écran Send Link... Envoyer un lien... &Print... &Imprimer... Import bookmarks... Importer des marque-pages... &Edit &Éditer &Undo &Annuler &Redo &Rétablir &Cut Co&uper C&opy C&opier &Paste Co&ller Select &All &Tout sélectionner &Find &Chercher &View &Affichage &Navigation Toolbar Barre de &navigation &Bookmarks Toolbar &Barre d'outils marques-page Sta&tus Bar &Barre d'état &Menu Bar Barre de &menu &Tabs on Top &Onglet en premier &Fullscreen Plein &écran &Stop &Stop &Reload &Actualiser Character &Encoding Enc&odage Enable &Caret Browsing Activer la navigation au $Curseur Toolbars Barre d'outils Sidebars Barres latérales Zoom &In Zoom &plus Zoom &Out Zoom &moins Reset Réinitialiser &Page Source Code &source de la page Hi&story &Historique &Back &Retour &Forward &Précédent &Home &Accueil Show &All History Montrer tout l'&historique Closed Tabs Onglets récemment fermés Recently Visited Sites récemment visités Most Visited Sites les plus visités &Bookmarks &Marque-pages Bookmark &This Page Marquer cette &page Bookmark &All Tabs M&arquer tous les onglets Organize &Bookmarks &Organiser les marque-pages &Tools &Outils &Web Search Recherche &web Page &Info &Information sur la page &Download Manager Gestionnaire de &téléchargement &Cookies Manager Gestionnaire de &cookies &AdBlock &AdBlock RSS &Reader Lecteur de &flux RSS Web In&spector Web In&spector Clear Recent &History Supprimer l'&historique récent New &Private Window Nouvelle fenêtre en navigation &Privée &Help &Aide About &Qt À propos de &Qt Information about application Informations à propos de l'application Configuration Information Informations de configuration Report &Issue Reporter un &dysfonctionnement Restore &Closed Tab Restaurer l'onglet &fermé (Private Browsing) (Navigation Privée) Empty Vide Restore All Closed Tabs Restaurer tous les onglets fermés Clear list Vider la liste Other Autre %1 - QupZilla %1 - QupZilla HTML files Fichiers HTML Image files Fichiers image Text files Fichiers texte All files Tous les fichiers Open file... Ouvrir un fichier... QupZilla %1 (%2) QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Il reste encore %1 onglets ouverts et votre session ne sera pas sauvegardée. Êtes vous sûr de vouloir quitter QupZilla ? Don't ask again Ne plus afficher ce message There are still open tabs Il y a encore des onglets ouverts QupZillaSchemeReply No Error Pas d'erreur Not Found Non trouvé Report Issue Reporter un problème If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Si vous avez rencontré des problèmes avec QupZilla, essayez d'abord de désactiver les extensions. <br/> Si cela ne vous aide pas, merci de remplir ce formulaire : Your E-mail Votre E-mail Issue type Type de problème Issue description Description du problème Send Envoyer E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. L'E-mail est facultatif<br/><b>Remarque : </b>Merci de lire comment reporter un bug <a href=%1>à cet endroit</a> au préalable. Please fill out all required fields! Veuillez remplir tous les champs obligatoires ! Start Page Page de démarrage Search on Web Rechercher sur le Web Search results provided by DuckDuckGo Résultats de recherches proposées par DuckDuckGo About QupZilla À propos de QupZilla <h1>Private Browsing</h1> <h1>Navigation privée</h1> Information about version Informations à propos de cette version Copyright Copyright Version Version WebKit version Version de WebKit Main developer Développeur principal Contributors Contributeurs Translators Traducteurs Speed Dial Speed Dial Add New Page Ajouter une nouvelle page Edit Modifier Remove Supprimer Reload Actualiser Are you sure to remove this speed dial? Êtes-vous sûr de vouloir supprimer ce Speed Dial ? Load title from page Charger le titre de la page Url URL Title Titre Apply Appliquer Close Fermer New Page Nouvelle Page Speed Dial settings Paramétrage de Speed Dial Placement: Emplacement : Auto Auto Cover Couverture Fit Ajuster Fit Width Ajuster la largeur Fit Height Ajuster la hauteur Use background image Utiliser une image en arrière plan Select image Sélectionner l'image Maximum pages in a row: Nombre de pages au maximum par ligne : Change size of pages: Changer la taille des pages : Center speed dials Centrer Speed Dial Restore Session Restaurer la session Oops, QupZilla crashed. Oups, Qupzilla a planté. We apologize for this. Would you like to restore the last saved state? Toutes nos excuses pour ce dysfonctionnement. Voulez-vous restaurer la dernière session sauvegardée ? Try removing one or more tabs that you think cause troubles Essayer de fermer le ou les onglets qui selon vous peuvent poser problème Or you can start completely new session Ou vous pouvez commencer une toute nouvelle session Configuration Information Informations de configuration This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Cette page contient les informations sur la configuration actuelle de QupZilla - utile pour le dépannage. Merci d'inclure ces informations lors des reports de bug. Browser Identification Identification du navigateur Paths Emplacements Build Configuration Configuration de compilation Preferences Préférences Option Options Value Valeur Extensions Extensions Name Nom Author Auteur Description Description Application version Version de l'application Qt version Version de Qt Build time Date de compilation Platform Plateforme Profile Profil Settings Paramètres Saved session Session sauvegardée Pinned tabs Onglets épinglés Data Données Themes Thèmes Translations Traductions Disabled Désactivé <b>Enabled</b> <b>Activé</b> Debug build Version de debug WebGL support Support WebGL Windows 7 API API WIndows 7 KDE integration Intégration KDE Portable build Version mobile No available extensions. Pas d'extensions disponibles. RSSManager RSS Reader Lecteur de flux RSS Empty Vide Add feed Ajouter un flux Edit feed Editer le flux Delete feed Supprimer le flux Optimize Database Optimiser la base de données Reload Actualiser News Nouveaux Loading... Chargement... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Vous n'avez pas de flux RSS. <br/> Vous pouvez en ajouter grâce à l'icône RSS dans la barre de navigation sur les sites proposant ces flux. Add new feed Ajouter un nouveau flux Please enter URL of new feed: Entrer l'URL du nouveau flux : New feed Nouveau flux Fill title and URL of a feed: Remplissez le titre et l'URL du flux : Feed title: Titre du flux : Feed URL: URL du flux : Edit RSS Feed Modifier le flux RSS Open link in current tab Ouvrir le lien dans l'onglet actuel Open link in new tab Ouvrir le lien dans un nouveau onglet Error in fetching feed Erreur durant le chargement du flux RSS feed duplicated Flux RSS dupliqué You already have this feed. Vous suivez déjà ce flux. RSSNotification Add this feed into Ajouter ce flux dans Add Ajouter RSS feed <b>"%1"</b> Flux RSS <b>"%1"</b> Internal Reader Lecteur interne Other... Autre... Liferea not running Liferea n'est pas lancé Liferea must be running in order to add new feed. Liferea doit être lancé pour ajouter un nouveau flux. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Pour ajouter ce flux à un lecteur externe, veuillez utiliser cette information : <br/><br/><b>Titre : </b>%1<br/><b>URL : </b>%2<br/><br/>L'adresse URL de ce flux a été ajouté à votre presse-papier. Add feed into other application Ajouter ce flux à un lecteur externe RSSWidget Add RSS Feeds from this site Ajouter un flux RSS depuis ce site Untitled feed Flux sans titre Add Ajouter RecoveryWidget Start New Session Commencer une nouvelle session Restore Restaurer Window %1 Fenêtre %1 RegisterQAppAssociation Warning! Attention ! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) QupZilla a rencontré un problème. Réinstallez QupZilla. ⏎ Peut être que le redémarrer avec les droits administrateurs aura un effet magique pour vous ! ;) RssIcon Add RSS from this page... Ajouter un flux RSS à partir de cette page... SSLManager Certificate Manager Gestionnaire de Certificat (CM :Certificate Manager) CA Authorities Certificates Autorité de Certifications CA Show info Montrer les informations This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Liste des Autorités de Certifications CA stockés à l'emplacement standard du système et dans les emplacements spécifiés. Local Certificates Certificats Locaux Import Importer Remove Supprimer This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Liste des Certificats Locaux stockés dans le profil utilisateur. Il contient aussi tout les certificats qui ont reçus une exception. Settings Paramètres Add Ajouter If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Si l'Autorité de Certifications n'est pas automatiquement chargé sur votre système, vous pouvez spécifier manuellement l'emplacement où les certificats sont stockés. <b>NOTE:</b> Setting this option is a high security risk! <b>REMARQUE :</b> Cocher cette option présente un risque de sécurité élevé ! Ignore all SSL Warnings Ignorer toutes les alertes SSL All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Tous les certificats doivent avoir une extension .crt. Après avoir ajouté ou retiré un certificat, il est nécessaire de redémarrer QupZilla pour que les changements soient pris en compte. Choose path... Choisir l'emplacement... Import certificate... Importer un certificat... Certificate Informations Informations sur les certificats SearchEnginesDialog Manage Search Engines Gérer les moteurs de recherche Add... Ajouter... Remove Supprimer Edit Editer Set as default Utiliser par défaut Up Monter Down Descendre Search Engine Moteur de recherche Shortcut Raccourci Defaults Défaut Add Search Engine Ajouter un moteur de recherche Remove Engine Supprimer le moteur de recherche You can't remove the default search engine.<br>Set a different engine as default before removing %1. Vous ne pouvez pas retirer le moteur de recherche par défaut. <br> Changez de moteur par défaut avant de supprimer %1. Edit Search Engine Editer ce moteur de recherche SearchEnginesManager Search Engine Added Moteur de recherche ajouté Search Engine "%1" has been successfully added. Le moteur de recherche %1 a été ajouté avec succès. Search Engine is not valid! Le moteur de recherche n'est pas valide ! Error Erreur Error while adding Search Engine <br><b>Error Message: </b> %1 Erreur lors de l'ajout du moteur de recherche.<br><b> Message d'erreur : </b> %1 SearchToolBar No results found. Aucun résultat trouvé. SearchToolbar Search: Recherche : Search... Recherche... Highlight Fort contraste Case sensitive Sensible à la casse SideBar Bookmarks Marques-page History Historique SiteInfo Site Info Information sur le site General Général Media Média Databases Bases de données Security Sécurité Size: Taille : Site address: Adresse du site : Encoding: Encodage : Meta tags of site: Méta-tags du site : Tag Tag Value Valeur <b>Security information</b> <b> Information de sécurité</b> Details Détails Image Image Image address Adresse de l'image <b>Preview</b> <b>Aperçu</b> <b>Database details</b> <b>Détails de la base de données</b> Name: Nom : Path: Emplacement : <database not selected> <Base de données non sélectionnée> <not set in certificate> <non défini dans le certificat> No databases are used by this page. Cette page n'utilise aucune base de données. <b>Connection is Encrypted.</b> <b>Connexion cryptée.</b> <b>Your connection to this page is secured with this certificate: </b> <b>La connexion à cette page est sécurisée par ce certificat : </b> <b>Connection Not Encrypted.</b> <b>Connexion non cryptée.</b> <b>Your connection to this page is not secured!</b> <b> La connexion à cette page n'est pas sécurisée !</b> Copy Image Location Copier l'adresse de l'image Copy Image Name Copier le nom de l'image Save Image to Disk Enregistrer l'image sur le disque Error! Erreur ! This preview is not available! Cet aperçu n'est pas disponible ! Save image... Enregistrer l'image... Cannot write to file! Echec lors de l'écriture dans le fichier ! Preview not available Aperçu non disponible SiteInfoWidget More... Plus... Your connection to this site is <b>secured</b>. La connexion à ce site est <b> sécurisée</b>. Your connection to this site is <b>unsecured</b>. La connexion à ce site <b>n'est pas sécurisée</b>. This is your <b>%1</b> visit of this site. Vous avez déjà visité ce site <b>%1</b> fois. You have <b>never</b> visited this site before. Vous n'avez <b>jamais</b> visité ce site auparavant. first Premier second Second third Troisième SourceViewer Source of Source de File Fichier Load in page Chargement sur la page Save as... Enregistrer sous... Close Fermer Edit Modifier Undo Annuler Redo Rétablir Cut Couper Copy Copier Paste Coller Select All Tout sélectionner Find Trouver Go to Line... Aller à la ligne... View Affichage Reload Actualiser Editable Modifiable Word Wrap Retour à la ligne Source loaded in page Source chargée sur la page Cannot load in page. Page has been closed. Impossible de charger sur la page. La page a été fermée Save file... Enregistrer le fichier... Error! Erreur ! Cannot write to file! Impossible d'écrire dans le fichier ! Error writing to file Erreur pendant l'écriture du fichier Source successfully saved Source enregistrée avec succès Source reloaded Source actualisée Cannot reload source. Page has been closed. Actualisation impossible. La page a été fermée. Editable changed Modifications apportées Word Wrap changed Retour à la ligne modifié Enter line number Entrer le numéro de ligne SourceViewerSearch Search: Recherche : Search... Recherche... Whole words Mots entiers SpeedDial Image files Fichiers Image Select image... Sélectionner l'image... Unable to load Impossible d'actualiser SpellCheckDialog SpellCheck Vérifier l'orthographe <b>Dictionary path</b> <b>Répertoire du dictionnaire</b> Change... Changement... <b>User dictionary</b> <b>Dictionnaire utilisateur</b> Add Ajouter Remove Retirer Using Hunspell library Utiliser la bibliothèque Hunspell Choose dictionary path... Choisir le répertoire du dictionnaire... Add new word... Ajouter un nouveau mot... Add new word: Ajouter un nouveau mot... Speller No suggestions pas de suggestions Add to dictionary Ajouter au dictionnaire Settings Paramètres SqueezeLabelV2 Copy Copier SslErrorDialog SSL Certificate Error! Erreur de Certification SSL ! Only for this session Seulement pour cette session TabBar &New tab &Nouvel onglet &Stop Tab Arrê&ter l'onglet &Reload Tab &Actualiser l'onglet &Duplicate Tab &Dupliquer l'onglet D&etach Tab D&étacher l'onglet Un&pin Tab Dé&pingler l'onglet &Pin Tab É&pingler l'onglet Re&load All Tabs &Actualiser tous les onglets &Bookmark This Tab Marquer cet &onglet Bookmark &All Tabs Mar&quer tous les onglets Close Ot&her Tabs F&ermer les autres onglets Cl&ose &Fermer Reloa&d All Tabs Actua&liser tous les onglets Restore &Closed Tab Restaurer l'onglet &fermé Close Tabs Do you really want to close other tabs? TabWidget New Tab Nouvel onglet List of tabs Liste des onglets Loading... Chargement... No Named Page Page non nommée Currently you have %1 opened tabs Il y a actuellement %1 onglet(s) ouvert(s) New tab Nouvel onglet Empty Vide Restore All Closed Tabs Restaurer tous les onglets fermés Clear list Vider la liste TabbedWebView Loading... Chargement... %1 - QupZilla %1 - QupZilla Inspect Element Inspecter cet élément ThemeManager <b>Name:</b> <b>Nom :</b> <b>Author:</b> <b>Auteur : </b> <b>Description:</b> <b>Description : </b> License Licence ToolButton Stop Stop Reload Actualiser Updater Update available Mise à jour disponible New version of QupZilla is ready to download. Une nouvelle version de QupZilla est disponible. Update Mise à jour UserAgentDialog User Agent Manager Gestionnaire d'User-Agent Change global User Agent Changer l'User-Agent global Use different User Agents for specified sites Utiliser différents User-Agents pour des sites spécifiques Site Site User Agent User-Agent Add Ajouter Remove Supprimer Edit Éditer Add new site Ajouter un nouveau site Edit site Éditer le site Site domain: Nom de domaine du site : User Agent: User-Agent : WebInspectorDockWidget Web Inspector Web Inspector WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? QupZilla ne peut pas gérer les liens <b>%1:</b>. Le lien demandé est <ul><li>%2</li></ul> Voulez-vous que QupZilla essaie d'ouvrir ce lien avec l'application système ? Remember my choice for this protocol Se souvenir de mon choix pour ce protocole External Protocol Request Requête de protocole externe To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Pour afficher cette page, QupZilla doit renvoyer les informations déjà saisies (comme pour une actualisation d'une page d'e-commerce déjà complétée) Confirm form resubmission Confirmer le renvoi du formulaire Select files to upload... Sélectionner les fichiers à charger... Server refused the connection Le serveur refuse la connexion Server closed the connection Le serveur a coupé la connexion Server not found Le serveur n'a pas été trouvé Connection timed out Temps de réponse de la connexion dépassé Untrusted connection La connexion n'est pas fiable Temporary network failure Problème temporaire de réseau Proxy connection refused Connexion au le proxy refusé Proxy server not found Le serveur proxy n'a pas été trouvé Proxy connection timed out Délai de connection au le proxy expiré Proxy authentication required Authentification du proxy requis Content not found Contenu non trouvé Unknown network error Erreur serveur inconnue AdBlocked Content Contenu bloqué par Adbock Blocked by <i>%1</i> Bloqué par <i>%1</i> Content Access Denied Accès au contenu refusé Error code %1 Code erreur %1 Failed loading page Echec lors du chargement de la page QupZilla can't load page. Qupzilla ne peut pas charger cette page. QupZilla can't load page from %1. QupZilla ne peut pas charger la page depuis %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Vérifiez que l'adresse ne contient pas d'erreur comme <b>ww.</b>exemple.com à la place de <b>www.</b>exemple.com If you are unable to load any pages, check your computer's network connection. Si vous ne pouvez charger aucune page, vérifiez la connexion réseau de votre ordinateur. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Si votre ordinateur ou votre réseau est protégé par un pare-feu ou un proxy, assurez-vous que QupZilla est autorisé à accéder à Internet. Try Again Essayer à nouveau JavaScript alert Alerte JavaScript Prevent this page from creating additional dialogs Empêcher cette page de créer des dialogues supplémentaires Choose file... Choisir un fichier... Cannot read data from <b>%1</b>. Upload was cancelled! Lecture des données à partir de <b>%1</b> impossible ! Le chargement a été annulé Cannot read file! Lecture du fichier impossible ! WebSearchBar Manage Search Engines Gérer les moteurs de recherche Add %1 ... Ajouter %1... Paste And &Search Coller et &chercher Clear All Effacer tout Show suggestions Montrer les suggestions Search when engine changed Rechercher au changement de moteur WebView No Named Page Page non nommée Create Search Engine Créer un moteur de recherche Cut Couper Copy Copier Paste Coller Select All Tout sélectionner Default Défaut Left to Right De gauche à droite Right to Left De droite à gauche Bold Gras Italic Italique Underline souligné &Reload &Actualiser S&top &Stop Delete Supprimer &Back &Retour &Forward &Suivant This frame Ce cadre Show &only this frame Montrer uniquement ce &cadre Show this frame in new &tab Montrer ce cadre dans un nouvel &onglet Print frame Imprimer le cadre Zoom &in Zoom &plus &Zoom out Zoom &moins Reset Réinitialiser Show so&urce of frame Montrer le code so&urce du cadre Book&mark page &Marquer cette page &Save page as... &Enregistrer la page sous... &Copy page link Copier le lien de la &page Send page link... Envoyer le lien de la page... &Print page &Imprimer la page Select &all T&out Sélectionner Validate page Valider le code de la page Show so&urce code Montrer le &code source Show info ab&out site Informations à prop&os du site Open link in new &tab Ouvrir le lien dans un nouvel &onglet Open link in new &window Ouvrir le lien dans une nouvelle &fenêtre B&ookmark link Lien du marque-&page &Save link as... &Enregistrer le lien sous... Send link... Envoyer le lien... &Copy link address Copier l'&adresse du lien Show i&mage Montrer l'i&mage Copy im&age Copier l'ima&ge Copy image ad&dress Copier l'a&dresse de l'image &Save image as... &Enregistrer l'image sous... Send image... Envoyer l'image... Send text... Envoyer le texte... Google Translate Google traduction Dictionary Dictionnaire Go to &web address Suivre le &lien Search "%1 .." with %2 Recherche de %1.."avec %2 Search with... Chercher avec... &Play &Lecture &Pause &Pause Un&mute Non &muet &Mute &Muet &Copy Media Address Copier l'adresse du &média &Send Media Address &Envoyer l'adresse du média Save Media To &Disk Enregistrer le &média Check &Spelling &Vérifier l'orthographe Languages Langues jsAlert Prevent this page from creating additional dialogs Empêcher cette page de créer des dialogues supplémentaires qupzilla-1.6.0/translations/gl_ES.ts000066400000000000000000007613731226107126500174640ustar00rootroot00000000000000 AboutDialog About QupZilla Acerca de QupZilla Authors Autores Authors and Contributors Autores e contribuidores < About QupZilla < Acerca de QupZilla <p><b>Application version %1</b><br/> <p><b>Versión do aplicativo %1</b><br/> <b>WebKit version %1</b></p> <b>Versión %1 de WebKit</b></p> <small>Build time: %1 </small></p> <small>Data de compilación: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Desenvolvedor principal:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Contribuidores:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Tradutores:</b><br/>%1</p> AcceptLanguage Preferred Languages Linguas que se prefiren Add... Engadir... Remove Eliminar Up Arriba Down Abaixo Personal [%1] Persoal [%1] AdBlockAddSubscriptionDialog Add Subscription Engadir subscrición Title: Título: Address: Enderezo: Add new subscription to AdBlock: Engadir unha nova subscrición ao AdBlock: AdBlockCustomList Custom Rules Regras personalizadas AdBlockDialog AdBlock Configuration Configuración de AdBlock Enable AdBlock Activar AdBlock Search... Busca... Options Opcións AdBlock AdBlock Add Rule Engadir unha regra Remove Rule Eliminar a regra Add Subscription Engadir subscrición Remove Subscription Eliminar a subscrición Update Subscriptions Actualizar as subscricións Learn about writing rules... Aprender máis sobre das regras de escritura... AdBlockEasyList EasyList EasyList AdBlockIcon AdBlock lets you block unwanted content on web pages AdBlock permíteche bloquear contido non desexado nas páxinas web Blocked popup window Xanela emerxente bloqueada AdBlock blocked unwanted popup window. AdBlock bloqueou xanelas emerxentes non desexadas AdBlock AdBlock Show AdBlock &Settings Amosar a &configuración de AdBlock Disable on %1 Desactivar ao %1 Disable only on this page Desactivar só nesta páxina Blocked Popup Windows Bloquear as xanelas emerxentes %1 with (%2) %1 con (%2) No content blocked Non hai contido bloqueado Blocked URL (AdBlock Rule) - click to edit rule URL bloqueada (regra de AdBlock) - preme para editar a regra AdBlockManager Do you want to add <b>%1</b> subscription? Queres engadir a subscrición <b>%1</b>? AdBlock Subscription Subscrición a AdBlock AdBlockTreeWidget Add Rule Engadir unha regra Remove Rule Eliminar a regra Add Custom Rule Engadir unha regra personalizada Please write your rule here: Escribe a túa regra aquí: %1 (recently updated) %1 (actualizada recentemente) AddAcceptLanguage Add Language Engadir lingua Choose preferred language for web sites Escolle a lingua preferida para os sitios web Personal definition: Definición persoal: AutoFillManager Passwords Contrasinais Server Servidor Username Nome de usuario Password Contrasinal Import/Export Importar/Exportar Show Passwords Mostrar os contrasinais Edit Editar Remove Eliminar Remove All Eliminar todo Exceptions Excepcións Import Passwords from File... Importar os contrasinais dun ficheiro... Export Passwords to File... Exportar os contrasinaisl a un ficheiro... Search Busca Are you sure that you want to show all passwords? Seguro que queres mostrar todos os contrasinais? Hide Passwords Agochar os contrasinais Confirmation Confirmación Are you sure to delete all passwords on your computer? Seguro que queres eliminar todos os contrasinais almacenados no computador? Edit password Editar o contrasinal Change password: Cambiar o contrasinal: Choose file... Escoller un ficheiro... Cannot read file! Non se puido ler o ficheiro Successfully imported Importouse correctamente Error while importing! Erro durante a importación Cannot write to file! Non se pode escribir no ficheiro Successfully exported Exportouse correctamente AutoFillNotification Update Actualizar Remember Lembrar Never For This Site Nunca para este sitio Not Now Agora non on %1 en %1 for <b>%1</b> para <b>%1</b> Do you want QupZilla to update saved password %1? Queres que QupZilla actualize os %1 contrasinais gardados? Do you want QupZilla to remember the password %1 %2? Queres que QupZilla lembre o contrasinal %1 %2? AutoFillWidget Choose username to login Escolle un nome de usuario para rexistrarte Login Acceder Login as <b>%1</b> Acceder como <b>%1</b> BookmarkIcon Bookmark this Page Marcar esta páxina Edit this bookmark Editar este marcador BookmarksImportDialog Import Bookmarks Importar marcadores <b>Import Bookmarks</b> <b>Importar marcadores</b> From File Dun fichero Choose browser from which you want to import bookmarks: Escolle o navegador do que queres importar os marcadores: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Nota:</b> Polo xeral a importación só de ficheiros HTML pode importar ademais cartafoles de marcadores. Choose... Escoller... Fetching icons, please wait... Buscando as iconas, agarda... Title Título Url Url Next Seguinte Cancel Cancelar <b>Importing from %1</b> <b>Importando de %1</b> Finish Rematar Please press Finish to complete importing process. Preme en «rematar» para acabar o proceso de importación. Error! Erro The file doesn't contain any bookmark. O ficheiro non contén ningún marcador. Choose directory... Escoller un cartafol... Choose file... Escoller un ficheiro... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox almacena os seus marcadores na base de datos SQLite <b>places.squlite</b>. Polo xeral ese ficheiro atópase en Please choose this file to begin importing bookmarks. Escolle este ficheiro para comezar a importación dos marcadores. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Google Chrome almacena os seus marcadores no ficheiro de texto <b>«Bookmarks»</b>. Polo xeral ese ficheiro atópase en Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera almacena os seus marcadores no ficheiro de texto <b>bookmarks.adr</b>. Polo xeral ese ficheiro atópase en You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Podes importar marcadores dende calquera navegador que soporte a exportación en HTML. Ese ficheiro ten xeralmente eses sufixos Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Explorer almacena os seus marcadores no ficheiro de texto <b>«Favorites»</b>. Polo xeral ese cartafol atópase en Please choose this folder to begin importing bookmarks. Escolle este cartafol para comezar a importación dos marcadores. No Error Sen erros Unable to open file. Non se puido abrir o ficheiro. Cannot evaluate JSON code. Non se puido avaliar o código JSON. File does not exist. Non existe ese ficheiro Unable to open database. Is Firefox running? Non se puido abrir a base de datos. Está Firefox a se executar? BookmarksManager Bookmarks Marcadores Optimize Database Optimizar a base de datos Import Bookmarks Importar marcadores Add Folder Engadir cartafol Title Título Url Url Expand All Expandir todo Collapse All Colapsar todo Add new folder Engadir un novo cartafol Choose parent folder for new folder: Escolle o cartafol pai do novo cartafol: Choose name for new bookmark folder: Escoller o nome para un novo cartafol de marcadores: Add new subfolder Engadir un novo subcartafol Choose name for new subfolder in bookmarks toolbar: Escolle o nome do novo subcartafol na barra de ferramentas dos marcadores: Rename Folder Renomear o cartafol Choose name for folder: Escolle o nome para o cartafol: Add Subfolder Engadir subcartafol Rename folder Renomear o cartafol Remove folder Eliminar o cartafol Open link in current &tab Abri a ligazón nesta &lapela Open link in &new tab Abrir a ligazón nunha &nova lapela Move bookmark to &folder Mover o marcador ao &cartafol Change icon Cambiar a icona Rename bookmark Renomear o marcador Remove bookmark Eliminar o marcador <b>Warning: </b>You already have bookmarked this page! <b>Aviso:</b>Xa tiñas marcada esta páxina Choose name and location of this bookmark. Escolle o nome e o lugar para este marcador. Add New Bookmark Engadir un novo marcador Choose folder for bookmarks: Escoller o cartafol para os marcadores: Bookmark All Tabs Marcar todas as lapelas BookmarksModel Bookmarks In Menu Marcadores no menú Bookmarks In ToolBar Marcadores na barra de ferramentas Unsorted Bookmarks Marcadores en ordenar BookmarksSideBar Search... Busca... Open link in current &tab Abri a ligazón nesta &lapela Open link in &new tab Abrir a ligazón nunha &nova lapela Copy address Copiar o enderezo &Delete &Eliminar BookmarksToolbar &Bookmark Current Page &Marcar esta páxina Bookmark &All Tabs Marcar &todas as lapelas &Organize Bookmarks &Organizar os marcadores Show Most &Visited Amosar as máis &visitadas Show Only Icons Amosar só as iconas &Hide Toolbar &Agochar a barra de ferramentas Open bookmark Abrir o marcador Open bookmark in new tab Abrir o marcador nunha nova lapela Move right Mover á dereita Move left Mover á esquerda Edit bookmark Editar o marcador Remove bookmark Eliminar o marcador Edit bookmark: Editar o marcador: Title: Título: Url: Url: Edit Bookmark Editar o marcador Most visited Máis visitadas Sites you visited the most Sitios que máis visitaches Empty Baleiro BookmarksTree Bookmarks Marcadores New Folder... Novo cartafol... BookmarksWidget Add to Speed Dial Engadir ao marcado rápido Save Gardar Name: Nome: Folder: Cartafol: Remove from Speed Dial Eliminar do marcado rápido Remove Eliminar BrowsingLibrary Library Biblioteca Search... Busca... History Historial Bookmarks Marcadores RSS RSS Database Optimized Optimizar a base de datos Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 Optimizouse correctamente a base de datos.<br/><br/><b>Anterior tamaño da base de datos: </b>%1<br/><b>Tamaño da base de datos despois: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Expedido para</b> Common Name (CN): Nome común (CN): Organization (O): Organización (O): Organizational Unit (OU): Unidade da organización (OU): Serial Number: Número de serie: <b>Issued By</b> <b>Expedido por</b> <b>Validity</b> <b>Validez</b> Issued On: Expedido o: Expires On: Expira o: ClearPrivateData Clear Recent History Limpar o historial recente Choose what you want to delete: Escolle que queres eliminar: Clear history Limpar o historial Clear cache Limpar a caché Clear icons Limpar as iconas Clear cookies from Adobe Flash Player Limpar as cookies de Adobe Flash Player <b>Clear Recent History</b> <b>Limpar o historial recente</b> Earlier Today Do día de hoxe Week Semana Month Mes All Todo Clear web databases Limpar as bases de datos das web Clear local storage Limpar o almacenamento local Clear cookies Limpar as coockies ClickToFlash Object blocked by ClickToFlash Obxecto bloqueado por ClickToFlash Show more information about object Amosar máis información sobre do obxecto Delete object Eliminar o obxecto Add %1 to whitelist Engadir %1 á lista branca Flash Object Obxecto Flahs <b>Attribute Name</b> <b>Nome do atributo</b> <b>Value</b> <b>Valor</b> No more information available. Non hai máis información dispoñible. CookieManager Cookies Cookies Stored Cookies Cookies almacenadas Find: Atopar: These cookies are stored on your computer: Estas cookies estánche almacenadas no computador: Server Servidor Cookie name Nome do cookie Name: Nome: Value: Valor: Server: Servidor: Path: Ruta: Secure: Seguro: Expiration: Vencemento: <cookie not selected> <cookie non seleccionada> Remove all cookies Eliminar todas as cookies Remove cookies Reliminar as cookies Cookie Filtering Filtrado das cookies <b>Cookie whitelist</b> <b>Lista branca de cookies</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Cookies destes destes servidores vanse aceptar SEMPRE (incluso cando desactives gardar cookies) Add Engadir Remove Eliminar <b>Cookie blacklist</b> <b>Lista negra de cookies</b> Cookies from these servers will NEVER be accepted As cookies destes servidores NUNCA se van a aceptar Settings Configuracións <b>Cookie Settings</b> <b>Configuracións das cookies</b> Allow storing of cookies Permitir o almacenamento de cookies Delete cookies on close Eliminar as cookies ao pechar Match domain exactly Cadrar o dominio con exactitude Filter tracking cookies Filtrar as cookies de rastrexo <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable this options first! <b>Aviso:</b> As opcións de cadrar o dominio con exactitude e o o filtrado de cookies poden rematar denegando cookies dalgúns sitios. Se tes probleamas coas cookies intenta antes desactivar esta opción. Search Busca Confirmation Confirmación Are you sure to delete all cookies on your computer? Seguro que queres eliminar todas as cookies do teu computador? Secure only Só con seguranza All connections Todas as conexións Session cookie Cookie de sesión Remove cookie Eliminar cookie Add to whitelist Engadir á lista branca Add to blacklist Engadir á lista negra DownloadFileHelper Save file as... Gardar o ficheiro como... NoNameDownload SeNomeDeDescarga DownloadItem Remaining time unavailable Sen máis tempo restante Error: Cannot write to file! Erro: Non se pode escribir no ficheiro Done - %1 Feito - %1 Cancelled Cancelado few seconds un poucos segundos seconds segundos minutes minutos hours horas Unknown speed Velocidade descoñecida Unknown size Tamaño descoñecido %2 - unknown size (%3) %1 -. tamaño descoñecido (%3) Remaining %1 - %2 of %3 (%4) Restantes %1 - %2 de %3 (%4) Cancelled - %1 Candelado . %1 Delete file Eliminar o ficheiro Do you want to also delete dowloaded file? Queres eliminar tamén os ficheiros que se descargaron? Open File Abrir ficheiro Open Folder Abrir cartafol Go to Download Page Ir á páxina de descarga Copy Download Link Copiar a ligazón de descarga Cancel downloading Descarga cancelada Remove Eliminar Error Erro Not found Non atopado Sorry, the file %1 was not found! O ficheiro %1 non se atopou Error: Erro: DownloadManager Download Manager Xestor de descargas Clear Limpar %1% of %2 files (%3) %4 remaining Quedan %1% de %2 ficheiros (%3) %4 % - Download Manager % -.Xestor de descargas Download Finished Rematou a descarga All files have been successfully downloaded. Todos os ficheiros foron descargados correctamente. Warning Aviso Are you sure to quit? All uncompleted downloads will be cancelled! Seguro que queres saír? Todas as descargas incompletas cancelaranse DownloadOptionsDialog Opening Abrindo You have chosen to open Escolliches abrir which is a: que é un: What should QupZilla do with this file? Que tería que facer QupZilla con este ficheiro= Open... Abrir... Save File Gardar o ficheiro Download with External Manager Descargar cun xestor externo from: de: Opening %1 Abrindo %1 EditSearchEngine Name: Nome: Url: Url: Shortcut: Atallo: Icon: Icona: <b>Note: </b>%s in url represent searched string <b>Nota: </b>%s na url representan cadeas buscadas Change... Cambiar... FileSchemeReply No Error Sen erros Up to higher level directory Subir a un cartafol de nivel superior Show hidden files Amosar os ficheiros ocultos Name Nome: Size Tamaño Last modified Última modificacións Index for %1 Índice para %1 Folder is empty. O cartafol está baleiro. FtpDownloader Cancelled! Candelado! FtpSchemeReply Up to higher level directory Subir a un cartafol de nivel superior Show hidden files Agochar os ficheiros ocultos Name Nome: Size Tamaño Last modified Última modificacións Index for %1 Índice para %1 Folder is empty. O cartafol está baleiro. Unknown command Orde descoñecida HTML5PermissionsDialog HTML5 Permissions Permisos HTML5 Notifications Notificacións Site Sitio Behaviour Comportamento Remove Eliminar Geolocation Xeolocalización Allow Permitir Deny Negar HTML5PermissionsNotification Remember Lembrar Allow Permitir Deny Negfar this site este sitio Allow %1 to show desktop notifications? Permitirlle a %1 mostrar notificacións de escritorio? Allow %1 to locate your position? Permitirlle a %1 identificar a túa localización? History No Named Page Sen nomes de páxina January xaneiro February febreiro March marzo April abril May maio June xuño July xullo August agosto September setembro October outubro November novembro December decembro HistoryManager History Historial Delete Eliminar Clear All History Limpar todo o historial Optimize Database Optimizar a base de datos Confirmation Confirmación Are you sure to delete all history? Seguro que queres eliminar todo o historial? HistoryModel Title Título Address Enderezo Visit Date Data de visita Visit Count Reconto de visitas Today Hoxe This Week Esta semana This Month Este mes HistorySideBar Search... Busca... HistoryView Open link in current tab Abri a ligazón nesta lapela Open link in new tab Abrir a ligazón nunha nova lapela Copy title Copiar o título Copy address Copiar o enderezo Remove Eliminar IconChooser Choose icon... Escoller a icona... From file Dun ficheiro Image (.png, .jpg, .jpeg, .gif) Imaxe (.png, .jpg, .jpeg, .gif) Choose file... Escoller un ficheiro... From database Dunha base de datos Site Url: URL do sitio: Image files Ficheiros de imaxes JsOptions JavaScript Options Opcións de JavaScript Allow JavaScript to: Permitirlle a JavaScript: Close windows Pechar as xanelas Open popup windows Abrir as xanelas emerxentes Change window size Cambiar o tamño da xanela Hide menu bar Agochar a barra do menú Hide status bar Agochar a barra de estado Hide tool bar Agochar a barra de ferramentas Access clipboard Acceder ao portarretallos LicenseViewer License Viewer Visor de licenzas LocationBar Enter URL address or search on %1 Introduce a dirección da URL ou busca en %1 Paste And &Go Pegar e &ir Clear All Limpar todo .co.uk Append domain name on ALT + Enter = Should be different for every country .org Show information about this page Mostrar máis información sobre desta páxina LocationCompleterView Switch to tab Cambair á lapela MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? Always perform this check when starting QupZilla. Default Browser QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. NavigationBar No Named Page Back Forward Home New Tab Main Menu Exit Fullscreen Clear history NetworkManager SSL Certificate Error! The page you are trying to access has the following errors in the SSL certificate: <b>Organization: </b> <b>Domain Name: </b> <b>Expiration Date: </b> <b>Error: </b> Would you like to make an exception for this certificate? Authorisation required Username: Nome de usuario: Password: Contrasinal: Save username and password on this site A username and password are being requested by %1. The site says: "%2" FTP authorisation required Login anonymously A username and password are being requested by %1:%2. Proxy authorisation required A username and password are being requested by proxy %1. PageScreen Page Screen Save Page Screen... PluginsList Application Extensions Allow Application Extensions to be loaded Settings WebKit Plugins <b>Click To Flash Plugin</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Whitelist Add Engadir Remove Eliminar Allow Click To Flash PluginsManager Add site to whitelist Server without http:// (ex. youtube.com) Error! Cannot load extension! PopupWebView Inspect Element PopupWindow File &Save Page As... Save Page Screen Send Link... &Print... Close Pechar Edit Editar &Undo &Redo &Cut C&opy &Paste Select All Find View &Stop &Deter &Reload &Cargar de novo Zoom &In Zoom &Out Reset &Page Source %1 - QupZilla Preferences Preferences QupZilla General Appearance Tabs Browsing Fonts Keyboard Shortcuts Downloads Password Manager Privacy Notifications Extensions Other Use current Note: You cannot delete active profile. Create New Delete <b>Launching</b> After launch: Open blank page Open homepage Open speed dial Restore session Homepage: On new tab: Open blank tab Open other page... <b>Profiles</b> Startup profile: Check for updates on start Active profile: In order to change language, you must restart browser. <b>Language</b> Available translations: Don't load tabs until selected Check to see if QupZilla is the default browser on startup Check Now Themes Advanced options <b>Browser Window</b> Show StatusBar on start Show Bookmarks ToolBar on start Show Navigation ToolBar on start <b>Navigation ToolBar</b> Show Home button Show Back / Forward buttons <b>Background<b/> Use transparent background Show web search bar Show Add Tab button Show Reload / Stop buttons Tabs behaviour Show tab previews Make tab previews animated Hide tabs when there is only one tab Activate last tab when closing active tab Open new tabs after active tab Open new empty tabs after active tab Automatically switch to newly opened tab Don't quit upon closing last tab Ask when closing multiple tabs Closed tabs list instead of opened in tab bar Address Bar behaviour Suggest when typing into address bar: History and Bookmarks History Bookmarks Nothing Press "Shift" to not switch the tab but load the url in the current tab. Propose to switch tab if completed url is already loaded. Select all text by double clicking in address bar Select all text by clicking in address bar Add .co.uk domain by pressing ALT key Search with Default Engine Show loading progress in address bar Fill Bottom Top Custom color: Select color ... Reset Web Configuration Allow Netscape Plugins (Flash plugin) Allow JavaScript Allow JAVA Allow DNS Prefetch Enable XSS Auditing try to detect possible XSS attacks when executing javascript Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Animated scrolling Enable caret browsing Zoom text only Mouse wheel scrolls lines on page Default zoom on pages: Local Storage Maximum 50 MB 1 Maximum pages in cache: Allow storing network cache on disk Store cache in: Allow saving history Delete history on close Allow local storage of HTML5 web content Delete locally stored HTML5 web content on close Delete now Proxy Configuration Proxy Auto-Config (.pac) file Reload HTTP SOCKS5 Port: Username: Nome de usuario: Password: Contrasinal: Don't use on: Manual configuration System proxy configuration Do not use proxy <b>Exceptions</b> <b>Excepcións</b> Server: Servidor: Use different proxy for https connection Use script for automatic configuration: <b>Font Families</b> Standard Fixed Serif Sans Serif Cursive Fantasy <b>Font Sizes</b> Fixed Font Size Default Font Size Minimum Font Size Minimum Logical Font Size <b>Shortcuts</b> Switch to tabs with Alt + number of tab Load speed dials with Ctrl + number of speed dial <b>Download Location</b> Ask everytime for download location Use defined location: <b>Download Options</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Close download manager when downloading finishes <b>External download manager</b> Use external download manager Executable: Executable: Arguments: Argumentos: Leave blank if unsure <b>%d</b> will be replaced with URL to be downloaded <b>AutoFill options</b> Allow saving passwords from sites Send Referer header to servers <b>Cookies</b> Send Do Not Track header to servers <b>Other</b> Manage CA certificates Certificate Manager <b>SSL Certificates</b> <b>JavaScript</b> Manage JavaScript privacy options JavaScript options Cookies Manager Manage Cookies <b>HTML5 Permissions</b> Manage HTML5 permissions HTML5 Permissions <b>Notifications</b> Use OSD Notifications Use Native System Notifications (Linux only) Do not use Notifications Expiration timeout: seconds <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. StyleSheet automatically loaded with all websites: Languages <b>Preferred language for web sites</b> <b>Change browser identification</b> User Agent Manager QupZilla is default Make QupZilla default OSD Notification Drag it on the screen to place it where you want. Choose download location... Choose stylesheet location... Deleted Choose executable location... Indica o lugar do executable... Choose cache path... New Profile Enter the new profile's name: Error! This profile already exists! Cannot create profile directory! Confirmation Confirmación Are you sure to permanently delete "%1" profile? This action cannot be undone! Select Color QObject Native System Notification Save file as... The file is not an OpenSearch 1.1 file. <not set in certificate> Unknown size Executable: Arguments: Cannot start external program Cannot start external program! %1 QtWin Open new tab Opens a new tab if browser is running Open new window Opens a new window if browser is running Open download manager Opens a download manager if browser is running QupZilla QupZilla Private Browsing Enabled IP Address of current page &About QupZilla &Acerca de QupZilla Pr&eferences Quit &File &New Window New Tab Open Location Open &File... Close Tab Close Window &Save Page As... Save Page Screen Send Link... &Print... Import bookmarks... &Edit &Editar &Undo &Redo &Cut C&opy &Paste Select &All &Find &View &Navigation Toolbar &Bookmarks Toolbar Sta&tus Bar &Menu Bar &Tabs on Top &Fullscreen &Stop &Deter &Reload &Cargar de novo Character &Encoding Enable &Caret Browsing Toolbars Sidebars Zoom &In Zoom &Out Reset &Page Source Hi&story &Back &Forward &Home Show &All History Closed Tabs Recently Visited Most Visited &Bookmarks Bookmark &This Page Bookmark &All Tabs Organize &Bookmarks &Tools &Web Search Page &Info &Download Manager &Cookies Manager &AdBlock &AdBlock RSS &Reader Web In&spector Clear Recent &History &Private Browsing New &Private Browsing Window &Help About &Qt Information about application Configuration Information Report &Issue Restore &Closed Tab (Private Browsing) Empty Restore All Closed Tabs Clear list Other %1 - QupZilla HTML files Image files Text files All files Open file... There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Don't ask again There are still open tabs QupZillaSchemeReply No Error Not Found Report Issue If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Your E-mail Issue type Issue description Send E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. Please fill out all required fields! Start Page Search on Web Search results provided by DuckDuckGo About QupZilla Acerca de QupZilla <h1>Private Browsing</h1> Information about version Copyright Version Versión WebKit version Versión de WebKit Main developer Contributors Contribuidores Translators Tradutores Speed Dial Add New Page Edit Editar Remove Eliminar Reload Cargar de novo Are you sure to remove this speed dial? Load title from page Url Url Title Título Apply Close Pechar New Page Speed Dial settings Placement: Auto Cover Fit Fit Width Fit Height Use background image Select image Maximum pages in a row: Change size of pages: Center speed dials Restore Session Oops, QupZilla crashed. We apologize for this. Would you like to restore the last saved state? Try removing one or more tabs that you think cause troubles Or you can start completely new session Configuration Information This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Browser Identification Paths Build Configuration Preferences Option Value Extensions Name Nome: Author Description Descrición: Application version Versión do aplicativo Qt version Build time Data de compilación Platform Profile Settings Saved session Pinned tabs Data Themes Translations Disabled <b>Enabled</b> Debug build WebGL support Windows 7 API KDE integration Portable build No available extensions. RSSManager RSS Reader Empty Add feed Edit feed Delete feed Optimize Database Reload Cargar de novo News Loading... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Add new feed Please enter URL of new feed: New feed Fill title and URL of a feed: Feed title: Feed URL: Edit RSS Feed Open link in current tab Open link in new tab Error in fetching feed RSS feed duplicated You already have this feed. RSSNotification Add this feed into Add Engadir RSS feed <b>"%1"</b> Internal Reader Other... Liferea not running Liferea must be running in order to add new feed. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Add feed into other application RSSWidget Add RSS Feeds from this site Untitled feed Add Engadir RecoveryWidget Start New Session Restore Window %1 RegisterQAppAssociation Warning! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) RssIcon Add RSS from this page... SSLManager Certificate Manager CA Authorities Certificates Show info This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Local Certificates Import Remove Eliminar This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Settings Add Engadir If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. <b>NOTE:</b> Setting this option is a high security risk! Ignore all SSL Warnings All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Choose path... Import certificate... Certificate Informations SearchEnginesDialog Manage Search Engines Add... Engadir... Remove Eliminar Edit Editar Set as default Up Down Abaixo Search Engine Shortcut Defaults Add Search Engine Remove Engine You can't remove the default search engine.<br>Set a different engine as default before removing %1. Edit Search Engine SearchEnginesManager Search Engine Added Search Engine "%1" has been successfully added. Search Engine is not valid! Error Error while adding Search Engine <br><b>Error Message: </b> %1 SearchToolBar No results found. SearchToolbar Search: Busca: Search... Busca... Highlight Case sensitive SideBar Bookmarks History SiteInfo Site Info General Media Databases Security Size: Site address: Encoding: Meta tags of site: Tag Value <b>Security information</b> Details Image Image address <b>Preview</b> <b>Database details</b> Name: Nome: Path: <database not selected> <not set in certificate> No databases are used by this page. <b>Connection is Encrypted.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Connection Not Encrypted.</b> <b>Your connection to this page is not secured!</b> Copy Image Location Copy Image Name Save Image to Disk Error! This preview is not available! Save image... Cannot write to file! Preview not available SiteInfoWidget More... Your connection to this site is <b>secured</b>. Your connection to this site is <b>unsecured</b>. This is your <b>%1</b> visit of this site. You have <b>never</b> visited this site before. first second third SourceViewer Source of File Load in page Save as... Close Pechar Edit Editar Undo Redo Cut Copy Paste Select All Find Go to Line... View Reload Cargar de novo Editable Word Wrap Source loaded in page Cannot load in page. Page has been closed. Save file... Error! Cannot write to file! Error writing to file Source successfully saved Source reloaded Cannot reload source. Page has been closed. Editable changed Word Wrap changed Enter line number SourceViewerSearch Search: Busca: Search... Busca... Whole words SpeedDial Image files Select image... Unable to load SpellCheckDialog SpellCheck <b>Dictionary path</b> Change... <b>User dictionary</b> Add Engadir Remove Eliminar Using Hunspell library Choose dictionary path... Add new word... Add new word: Speller No suggestions Add to dictionary Settings SqueezeLabelV2 Copy TabBar &New tab &Stop Tab &Reload Tab &Duplicate Tab Un&pin Tab &Pin Tab Re&load All Tabs &Bookmark This Tab Bookmark &All Tabs Close Ot&her Tabs Cl&ose P&echar Reloa&d All Tabs Bookmark &All Ta&bs Restore &Closed Tab TabWidget New Tab List of tabs Loading... No Named Page Currently you have %1 opened tabs New tab Empty Restore All Closed Tabs Clear list TabbedWebView Loading... %1 - QupZilla Inspect Element ThemeManager <b>Name:</b> <b>Nome:</b> <b>Author:</b> <b>Description:</b> <b>Descrición:</b> License Licenza ToolButton Stop Deter Reload Cargar de novo Updater Update available Actualización dispoñible New version of QupZilla is ready to download. Update Actualizar UserAgentDialog User Agent Manager Change global User Agent Use different User Agents for specified sites Site Sitio User Agent Add Engadir Remove Eliminar Edit Editar Add new site Edit site Site domain: User Agent: WebInspectorDockWidget Web Inspector WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? Remember my choice for this protocol External Protocol Request To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Confirm form resubmission Select files to upload... Server refused the connection Server closed the connection Server not found Connection timed out Untrusted connection Temporary network failure Proxy connection refused Proxy server not found Proxy connection timed out Proxy authentication required Content not found Unknown network error AdBlocked Content Blocked by <i>%1</i> Content Access Denied Error code %1 Failed loading page QupZilla can't load page. QupZilla can't load page from %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com If you are unable to load any pages, check your computer's network connection. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Try Again JavaScript alert Prevent this page from creating additional dialogs Choose file... Escoller un ficheiro... WebSearchBar Manage Search Engines Add %1 ... Engadir %1 Paste And &Search Clear All Show suggestions Search when engine changed WebView No Named Page Create Search Engine Cut Copy Paste Select All &Reload &Cargar de novo S&top D&eter Delete &Back &Forward This frame Show &only this frame Show this frame in new &tab Print frame Zoom &in &Zoom out Reset Show so&urce of frame Book&mark page &Save page as... &Copy page link Send page link... &Print page Select &all Validate page Show so&urce code Show info ab&out site Open link in new &tab Open link in new &window B&ookmark link &Save link as... Send link... &Copy link address Show i&mage Copy im&age Copy image ad&dress &Save image as... Send image... Send text... Google Translate Dictionary Go to &web address Search "%1 .." with %2 Search with... &Play &Pause Un&mute &Mute &Copy Media Address &Send Media Address Save Media To &Disk Check &Spelling Languages jsAlert Prevent this page from creating additional dialogs qupzilla-1.6.0/translations/he_IL.ts000066400000000000000000010766151226107126500174520ustar00rootroot00000000000000 AboutDialog About QupZilla אודות QupZilla Authors מחברים Authors and Contributors מחברים ותורמים < About QupZilla < אודות QupZilla <p><b>Application version %1</b><br/> <p><b>גרסת יישום %1</b><br/> <b>WebKit version %1</b></p> <b>גרסת WebKit‏ %1</b></p> <small>Build time: %1 </small></p> <small>&#8235;זמן בניה: %1&#8236;</small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>מפתח ראשי:</b><br/>%1 &lt;%2&gt;&lrm;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>תורמים:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>מתרגמים:</b><br/>%1</p> AcceptLanguage Preferred Languages שפות מועדפות Add... הוסף... Remove הסר Up מעלה Down מטה Personal [%1] אישי [%1] AdBlockAddSubscriptionDialog Add Subscription הוסף הרשמה Title: כותרת: Address: כתובת: Add new subscription to AdBlock: הוסף הרשמה חדשה אל AdBlock: AdBlockCustomList Custom Rules כללים מותאמים AdBlockDialog AdBlock Configuration תצורת AdBlock Enable AdBlock אפשר AdBlock Search... חפש... Options אפשרויות AdBlock Use only essential part of EasyList (for performance reasons) השתמש רק בחלק נחוץ של EasyList (משום טעמי ביצועים) Add Rule הוסף כלל Remove Rule הסר כלל Add Subscription הוסף הרשמה Remove Subscription הסר הרשמה Update Subscriptions עדכן הרשמות Learn about writing rules... למד אודות כתיבת כללים... AdBlockIcon AdBlock lets you block unwanted content on web pages ‏AdBlock מתיר לך לחסום תוכן לא רצוי בעמודי רשת Blocked popup window חלון קופץ חסום AdBlock blocked unwanted popup window. ‏AdBlock חסם חלון קופץ לא רצוי. AdBlock Show AdBlock &Settings הצג &הגדרות AdBlock Disable on %1 נטרל במתחם %1 Disable only on this page נטרל רק בעמוד זה Blocked Popup Windows חלונות קופצים חסומים %1 with (%2) %1 עם (%2) No content blocked לא נחסם תוכן Blocked URL (AdBlock Rule) - click to edit rule ‏URL חסום (כלל AdBlock) - הקלק לעריכת כלל AdBlockManager Do you want to add <b>%1</b> subscription? האם ברצונך להוסיף את הרשימה <b>%1</b>? AdBlock Subscription הרשמת AdBlock EasyList AdBlockTreeWidget Add Rule הוסף כלל Remove Rule הסר כלל Add Custom Rule הוספת כלל מותאם Please write your rule here: אנא כתוב את הכלל שלך כאן: %1 (recently updated) %1 (עודכנה לאחרונה) AddAcceptLanguage Add Language הוסף שפה Choose preferred language for web sites בחר שפות מועדפות עבור אתרי רשת Personal definition: הגדרה אישית: AesInterface Warning! אזהרה! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. נתונים הוצפנו בעזרת גרסא חדשה יותר של QupZilla. אנא התקן גרסא אחרונה של QupZilla. AutoFill Database (plaintext) מסד נתונים (טקסט גלוי) Database (encrypted) מסד נתונים (מוצפן) Enter Master Password הזן סיסמה ראשית Permission is required, please enter Master Password: נדרשת הרשאה, אנא הזן סיסמה ראשית: Warning! אזהרה! Entered password is wrong! סיסמה מוזנת הינה שגויה! This backend needs a master password to be set! QupZilla just switches to its default backend מגשר עורפי זה מצריך קביעה של סיסמה ראשית! זה עתה QupZilla החליף אל המגשר העורפי המשתמט שלו AutoFillManager Passwords are stored in: סיסמאות מאוחסנות בתוך: Change backend שנה מגשר עורפי Backend options אפשרויות מגשר עורפי Passwords סיסמאות Server שרת Username שם משתמש Password סיסמה Import/Export יבא/יצא Show Passwords הצג סיסמאות Edit ערוך Remove הסר Remove All הסר הכל Exceptions חריגים Import Passwords from File... ייבוא סיסמאות מן קובץ... Export Passwords to File... ייצוא סיסמאות אל קובץ... Search חפש Change backend... שינוי מגשר עורפי... Change backend: שנה מגשר עורפי: Are you sure that you want to show all passwords? האם אתה בטוח כי ברצונך להציג את כל הסיסמאות? Hide Passwords הסתר סיסמאות Confirmation אימות Are you sure to delete all passwords on your computer? האם אתה בטוח כי ברצונך למחוק את כל הסיסמאות במחשבך? Edit password ערוך סיסמה Change password: שנה סיסמה: Choose file... בחירת קובץ... Cannot read file! אין אפשרות לקרוא קובץ! Successfully imported יובא בהצלחה Error while importing! שגיאה במהלך ייבוא! Cannot write to file! אין אפשרות לכתוב אל קובץ! Successfully exported יוצא בהצלחה AutoFillNotification Update עדכן Remember זכור Never For This Site לעולם לא עבור אתר זה Not Now לא כעת on %1 באתר %1 for <b>%1</b> עבור <b>%1</b> Do you want QupZilla to update saved password %1? האם ברצונך מן QupZilla לעדכן סיסמה שמורה %1? Do you want QupZilla to remember the password %1 %2? האם ברצונך כי QupZilla יזכור את הסיסמה %1 %2? AutoFillWidget Choose username to login בחר שם משתמש כדי להתחבר Login כנס Login as <b>%1</b> כנס בזהות <b>%1</b> BookmarkIcon Bookmark this Page סמן את עמוד זה Edit this bookmark ערוך את סימנייה זו BookmarksImportDialog Import Bookmarks ייבוא סימניות <b>Import Bookmarks</b> <b>ייבוא סימניות</b> From File מתוך קובץ Internet Explorer Choose browser from which you want to import bookmarks: בחר דפדפן ממנו ברצונך לייבא סימניות: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>הערה:</b> נכון להיום, רק ייבוא מקובץ Html יכול לייבא גם תיקיות סימנייה. Choose... בחר... Try to fetch icons for all bookmarks (may take a while) נסה לתפוס צלמיות עבור כל הסימניות (עשוי לקחת זמן מה) Fetching icons, please wait... תופס כעת צלמיות, אנא המתן... Title כותרת Url Next הבא Cancel ביטול <b>Importing from %1</b> <b>מייבא מתוך %1</b> Finish סיים Please press Finish to complete importing process. אנא לחץ על סיים כדי להשלים תהליך ייבוא. Error! שגיאה! The file doesn't contain any bookmark. הקובץ לא מכיל שום סימנייה. Choose directory... בחירת מדור... Choose file... בחירת קובץ... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in ‏Mozilla Firefox מאחסן את סימניותיו בתוך <b>places.sqlite</b> מסד נתונים מטיפוס SQLite. קובץ זה ממוקם לרוב בתוך Please choose this file to begin importing bookmarks. אנא בחר את קובץ זה כדי להתחיל ייבוא סימניות. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in ‏Google Chrome מאחסן את סימניותיו בתוך <b>Bookmarks</b> קובץ טקסט. קובץ זה ממוקם לרוב בתוך Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in ‏Opera מאחסן את סימניותיו בתוך <b>bookmarks.adr</b> קובץ טקסט. קובץ זה ממוקם לרוב בתוך You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes באפשרותך לייבא סימניות מכל דפדפן אשר תומך בייצוא HTML. לקובץ זה יש לרוב את סיומות אלה Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in ‏Internet Explorer מאחסן את סימניותיו בתוך <b>Favorites</b> תיקייה. תיקייה זו ממוקמת לרוב בתוך Please choose this folder to begin importing bookmarks. אנא בחר את תיקייה זו כדי להתחיל ייבוא סימניות. No Error אין שגיאה Unable to open file. אין אפשרות לפתוח קובץ. Cannot evaluate JSON code. אין אפשרות לאמוד קוד JSON. File does not exist. קובץ לא קיים. Unable to open database. Is Firefox running? אין אפשרות לפתוח מסד נתונים. האם Firefox מורץ כעת? Directory does not exist. ספרייה לא קיימת. The directory does not contain any bookmarks. הספרייה לא מכילה שום סימניות. BookmarksManager Bookmarks סימניות Optimize Database יעל מסד נתונים Import Bookmarks יבא סימניות Add Folder הוסף תיקייה Title כותרת Url Expand All הרחב הכל Collapse All צמצם הכל Add new folder הוסף תיקייה חדשה Choose parent folder for new folder: בחר תיקיית הורה עבור תיקייה חדשה: Choose name for new bookmark folder: בחר שם עבור תיקיית סימנייה חדשה: Add new subfolder הוספת תיקיית משנה חדשה Choose name for new subfolder in bookmarks toolbar: בחר שם עבור תיקיית משנה חדשה בתוך סרגל כלים סימניות: Rename Folder שינוי שם תיקייה Choose name for folder: בחר שם עבור תיקייה: Add Subfolder הוסף תיקיית משנה Rename folder שנה שם תיקייה Remove folder הסר תיקייה Open link in current &tab פתח קישור ב&כרטיסייה נוכחית Open link in &new tab פתח קישור בכרטיסייה &חדשה Move bookmark to &folder העבר סימנייה אל &תיקייה Change icon שנה צלמית Rename bookmark שנה שם סימנייה Remove bookmark הסר סימנייה <b>Warning: </b>You already have bookmarked this page! <b>אזהרה: </b>כבר סימנת את עמוד זה! Choose name and location of this bookmark. בחר שם ומיקום עבור סימנייה זו. Add New Bookmark הוספת סימנייה חדשה Choose folder for bookmarks: בחר תיקייה עבור סימניות: Bookmark All Tabs סימון של כל הכרטיסיות BookmarksModel Bookmarks In Menu סימניות תפריט Bookmarks In ToolBar סימניות סרגל כלים Unsorted Bookmarks סימניות לא ממוינות BookmarksSideBar Search... חפש... Open link in current &tab פתח קישור ב&כרטיסייה נוכחית Open link in &new tab פתח קישור בכרטיסייה &חדשה Copy address העתק כתובת &Delete &מחק BookmarksToolbar &Bookmark Current Page &סמן עמוד נוכחי Bookmark &All Tabs סמן את &כל הכרטיסיות &Organize Bookmarks &ארגן סימניות Show Most &Visited הצג ה&נצפים ביותר Show Only Icons הצג צלמיות בלבד &Hide Toolbar &הסתר סרגל כלים Open bookmark פתח סימנייה Open bookmark in new tab פתח סימנייה בכרטיסייה חדשה Move right הזז ימינה Move left הזז שמאלה Edit bookmark ערוך סימנייה Remove bookmark הסר סימנייה Edit bookmark: ערוך סימנייה: Title: כותרת: Url: ‏Url: Edit Bookmark עריכת סימנייה Most visited הנצפים ביותר Sites you visited the most אתרים אותם ביקרת הכי הרבה Empty ריק BookmarksTree Bookmarks סימניות New Folder... תיקייה חדשה... BookmarksWidget Add to Speed Dial הוסף אל חיוג מהיר Save שמור Name: שם: Folder: תיקייה: Remove from Speed Dial הסר מתוך חיוג מהיר Remove הסר BrowsingLibrary Library ספרייה Search... חפש... History היסטוריה Bookmarks סימניות RSS Database Optimized מסד נתונים יועל Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 מסד נתונים יועל בהצלחה.<br/><br/><b>גודל מסד נתונים לפני: </b>&lrm;%1<br/><b>גודל מסד נתונים אחרי: </b>&lrm;%2 CertificateInfoWidget <b>Issued To</b> <b>הונפקה אל</b> Common Name (CN): שם כללי (CN): Organization (O): ארגון (O): Organizational Unit (OU): יחידת איגוד (OU): Serial Number: מספר סידורי: <b>Issued By</b> <b>הונפקה על ידי</b> <b>Validity</b> <b>תקפות</b> Issued On: הונפקה בתאריך: Expires On: פוקעת בתאריך: ClearPrivateData Clear Recent History טהר היסטוריה אחרונה Choose what you want to delete: בחר מה ברצונך למחוק: Clear history טהר היסטוריה Clear cache טהר מטמון Clear icons טהר צלמיות <b>Clear Recent History</b> <b>טהר היסטוריה אחרונה</b> Earlier Today מוקדם יותר היום Week שבוע Month חודש All הכל Clear web databases טהר מסדי נתונים של רשת Clear local storage טהר אחסון מקומי Clear cookies טהר עוגיות ClickToFlash Object blocked by ClickToFlash אובייקט חסום על ידי ClickToFlash Show more information about object הצג מידע נוסף אודות אובייקט Delete object מחק אובייקט Add %1 to whitelist הוסף את %1 אל רשימה לבנה Flash Object אובייקט Flash <b>Attribute Name</b> <b>שם מאפיין</b> <b>Value</b> <b>ערך</b> No more information available. אין עוד מידע זמין. CookieManager Cookies עוגיות Stored Cookies עוגיות מאוחסנות Find: מצא: These cookies are stored on your computer: עוגיות אלה מאוחסנות על מחשבך: Server שרת Cookie name שם עוגייה Name: שם: Value: ערך: Server: שרת: Path: נתיב: Secure: מאובטחת: Expiration: תפוגה: <cookie not selected> <עוגייה לא נבחרה> Remove all cookies הסר את כל העוגיות Remove cookies הסר עוגיות Cookie Filtering סינון עוגייה <b>Cookie whitelist</b> <b>רשימת עוגיות לבנה</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) עוגיות מתוך שרתים אלה <b>תמיד</b> יתקבלו (אפילו אם נטרלת שמירה של עוגיות) Add הוסף Remove הסר <b>Cookie blacklist</b> <b>רשימת עוגיות שחורה</b> Cookies from these servers will NEVER be accepted עוגיות מתוך שרתים אלה <b>לעולם לא</b> יתקבלו Settings הגדרות <b>Cookie Settings</b> <b>הגדרות עוגייה</b> Allow storing of cookies התר אחסון של עוגיות Delete cookies on close מחק עוגיות בעת סגירה Match domain exactly התאם מתחם במדויק Filter tracking cookies סנן עוגיות מעקב <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! <b>אזהרה:</b> אפשרויות התאמה מדויקת של שם מתחם וכן סינון עוגיות עלולה להוביל לאיסור עוגיות מסוימות מתוך אתרים. במידה והינך חווה בעיות עם עוגיות, נסה לנטרל את אפשרויות אלו תחילה! Search חיפוש Confirmation אימות Are you sure to delete all cookies on your computer? האם אתה בטוח כי ברצונך למחוק את כל העוגיות במחשבך? Secure only מאובטחת בלבד All connections ‎לכל חיבור Session cookie עוגיית סשן Remove cookie הסר עוגייה Add to whitelist הוסף אל רשימה לבנה Add to blacklist הוסף אל רשימה שחורה DownloadFileHelper Save file as... שמירת קובץ בשם... NoNameDownload הורדהללאשם DownloadItem Remaining time unavailable זמן נותר לא זמין Error: Cannot write to file! שגיאה: אין אפשרות לכתוב אל קובץ! Done - %1 סוימה - %1 Cancelled בוטלה few seconds כמה שניות %n seconds %n minutes %n hours Unknown speed מהירות לא ידועה kB/s ק״ב/ש MB/s מ״ב/ש GB/s ג״ב/ש Unknown size גודל לא ידוע %2 - unknown size (%3) %2 - גודל לא ידוע (%3) Remaining %1 - %2 of %3 (%4) נותרו %1‏ -‏ ‏%2 מתוך %3 ‏(%4)‏ Cancelled - %1 בוטלה - %1 Delete file מחיקת קובץ Do you want to also delete dowloaded file? האם ברצונך גם למחוק קובץ מורד? Open File פתח קובץ Open Folder פתח תיקייה Go to Download Page עבור אל עמוד הורדה Copy Download Link העתק קישור הורדה Cancel downloading בטל הורדה Remove הסר Error שגיאה Not found לא נמצא Sorry, the file %1 was not found! סליחה, הקובץ %1 לא נמצא! Error: שגיאה: DownloadManager Download Manager מנהל הורדות Clear טהר %1% of %2 files (%3) %4 remaining %1% מתוך %2 קבצים (%3) %4 נותרו %1% - Download Manager %1% - מנהל הורדות Download Finished הורדה הסתיימה All files have been successfully downloaded. כל הקבצים הורדו בהצלחה. Warning אזהרה Are you sure to quit? All uncompleted downloads will be cancelled! האם אתה בטוח כי ברצונך לצאת? כל ההורדות הלא מושלמות יבוטלו! DownloadOptionsDialog Opening פתיחת Copy download link העתק קישור הורדה You have chosen to open בחרת לפתוח את which is a: שהוא: What should QupZilla do with this file? מה על QupZilla לעשות עם קובץ זה? Open... פתח... Save File שמור קובץ Download with External Manager הורד בעזרת מנהל חיצוני from: מן: Opening %1 פתיחת %1 Download link copied. קישור הורדה הורד. EditSearchEngine Name: שם: Url: ‏Url: Shortcut: קיצור דרך: Icon: צלמית: <b>Note: </b>%s in url or post data represent searched string <b>הערה: </b>%s בתוך url או מידע post מסמל מחרוזת חיפוש Post Data: מידע Post: Change... שנה... FileSchemeReply No Error אין שגיאה Up to higher level directory מעלה אל מדור גבוה יותר Show hidden files הצג קבצים מוסתרים Name שם Size גודל Last modified שונה לאחרונה Index for %1 מפתח עבור %1 Folder is empty. תיקייה הינה ריקה. FtpDownloader Cancelled! בוטלה! FtpSchemeReply Up to higher level directory מעלה אל מדור גבוה יותר Show hidden files הצג קבצים מוסתרים Name שם Size גודל Last modified שונה לאחרונה Index for %1 מפתח עבור %1 Folder is empty. תיקייה הינה ריקה. Unknown command פקודה לא מוכרת HTML5PermissionsDialog HTML5 Permissions הרשאות HTML5 Notifications התראות Site אתר Behaviour התנהגות Remove הסר Geolocation מיקום גיאוגרפי Allow התר Deny אסור HTML5PermissionsNotification Remember זכור Allow התר Deny אסור this site אתר זה Allow %1 to show desktop notifications? להעניק היתר עבור %1 להציג התראות שולחן עבודה? Allow %1 to locate your position? להעניק היתר עבור %1 לאתר את מיקומך? History No Named Page עמוד ללא שם January ינואר February פברואר March מרץ April אפריל May מאי June יוני July יולי August אוגוסט September ספטמבר October אוקטובר November נובמבר December דצמבר HistoryManager History היסטוריה Delete מחק Clear All History טהר את כל ההיסטוריה Optimize Database יעל מסד נתונים Confirmation אימות Are you sure to delete all history? האם אתה בטוח כי ברצונך למחוק את כל ההיסטוריה? HistoryModel Title כותרת Address כתובת Visit Date תאריך ביקור Visit Count מספר ביקורים Today היום This Week שבוע נוכחי This Month חודש נוכחי HistorySideBar Search... חפש... HistoryView Open link in current tab פתח קישור בכרטיסייה נוכחית Open link in new tab פתח קישור בכרטיסייה חדשה Copy title העתק כותרת Copy address העתק כתובת Remove הסר IconChooser Choose icon... בחר צלמית... From file מתוך קובץ Image (.png, .jpg, .jpeg, .gif) תמונה (‎.png, .jpg, .jpeg, .gif) Choose file... בחר קובץ... From database מתוך מסד נתונים Site Url: ‏Url אתר: Image files קבצי תמונה JsOptions JavaScript Options אפשרויות JavaScript Allow JavaScript to: ‏JavaScript מסוגל: Close windows לסגור חלונות Open popup windows לפתוח חלונות קופצים Change window size לשנות מידת חלון Hide menu bar להסתיר שורת תפריט Hide status bar להסתיר שורת מצב Hide tool bar להסתיר סרגל כלים Access clipboard לגשת אל לוח גזירה LicenseViewer License Viewer מציג רשיון LocationBar Enter URL address or search on %1 הזן כתובת URL או חפש עם %1 Paste And &Go הדבק &והמשך Clear All טהר הכל .co.uk Append domain name on ALT + Enter = Should be different for every country .co.il Show information about this page הצג מידע אודות עמוד זה LocationCompleterView Switch to tab החלף אל כרטיסייה MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? נכון לעכשיו, QupZilla אינו דפדפן ברירת המחדל שלך. האם ברצונך להופכו אל דפדפן ברירת מחדל? Always perform this check when starting QupZilla. ערוך תמיד את בדיקה זו כאשר QupZilla מתחיל. Default Browser דפדפן ברירת מחדל QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. QupZilla הינו דפדפן WWW קוד פתוח חדש, מהיר ומאובטח. QupZilla רשוי תחת הרשיון GPL גרסא 3 או (כאופציה השמורה לך) כל גרסא מאוחרת יותר. זה מבוסס על ליבת WebKit וגם על Qt Framework. MasterPasswordDialog Encrypted DataBase Settings הגדרות מסד נתונים מוצפן Set/Change Master Password... קבע/שנה סיסמה ראשית... Clear Master Password... טיהור סיסמה ראשית... This backend does not work without a master password. מגשר עורפי זה לא עובד ללא סיסמה ראשית. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. אפשרות זו מטהרת סיסמה ראשית וגם מעבירה את כל הנתונים המוצפנים אל "מסד נתונים (טקסט גלוי)" של מגשר עורפי, ומחליפה אליו. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. הסיסמה הראשית משמשת להגנה על סיסמאות אתר וכן נתוני טופס. אם תקבע סיסמה ראשית אתה תתבקש להזין אותה אחת לכל הפעלה/סשן. Current Password: סיסמה נוכחית: New Password: סיסמה חדשה: Confirm Password: אימות סיסמה: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. <b>הערה:</b> סיסמה ראשית אינה ניתנת לאיפוס. אל נא לשכוח זאת, בבקשה. Warning! אזהרה! You entered a wrong password! הזנת סיסמה שגויה! New/Confirm password fields do not match! שדות סיסמה חדשה/אימות לא תואמות! Some data has not been decrypted. The master password was not cleared! קיימים נתונים שלא הוצפנו. הסיסמה הראשית לא טוהרה! Are you sure to clear master password and decrypt data? האם אתה בטוח כי ברצונך לטהר סיסמה ראשית ומידע מוצפן? NavigationBar No Named Page עמוד ללא שם Back אחורה Forward קדימה Home בית New Tab כרטיסייה חדשה Main Menu תפריט ראשי Exit Fullscreen צא ממסך מלא Clear history טהר היסטוריה NetworkManager SSL Certificate Error! שגיאת תעודת SSL! The page you are trying to access has the following errors in the SSL certificate: לעמוד אליו הינך מנסה לגשת יש את השגיאות הבאות בתעודת SSL: <b>Organization: </b> <b>ארגון: </b> <b>Domain Name: </b> <b>שם מתחם: </b> <b>Expiration Date: </b> <b>תאריך תפוגה: </b> <b>Error: </b> <b>שגיאה: </b> Would you like to make an exception for this certificate? האם ברצונך לקבוע חריג עבור תעודה זו? Authorisation required נדרשת הרשאה Username: שם משתמש: Password: סיסמה: Save username and password on this site שמור שם משתמש וסיסמה באתר זה A username and password are being requested by %1. The site says: "%2" שם משתמש וסיסמה מתבקשים על ידי %1. האתר אומר: "%2" FTP authorisation required נדרשת הרשאת FTP Login anonymously כנס באופן אנונימי A username and password are being requested by %1:%2. שם משתמש וסיסמה מתבקשים על ידי %1:%2. Proxy authorisation required נדרשת הרשאת פרוקסי Remember username and password for this proxy. זכור שם משתמש וסיסמה עבור ציר זה. A username and password are being requested by proxy %1. שם משתמש וסיסמה מתבקשים על ידי פרוקסי %1. PageScreen Page Screen מרקע עמוד Format: פורמט: Location: מיקום: Browse... עיון... Save as %1 שמור בתור %1 Choose location... בחירת מיקום... File '%1' already exists. Do you want to overwrite it? הקובץ '%1' כבר קיים. האם ברצונך להחליפו? File already exists קובץ כבר קיים PluginsList Application Extensions הרחבות יישום Allow Application Extensions to be loaded התר ליישומי הרחבות להיטען Settings הגדרות WebKit Plugins תוספות WebKit <b>Click To Flash Plugin</b> <b>תוספת Click To Flash</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. ‏Click To Flash הינו תוספת שחוסמת טעינה אוטומטית של תוכן Flash בעמוד. באפשרותך תמיד לטעון זאת ידנית על ידי הקלקה על צלמית נגינה Flash. Whitelist רשימה לבנה Add הוסף Remove הסר Allow Click To Flash התר Click To Flash PluginsManager Add site to whitelist הוספת אתר אל רשימה לבנה Server without http:// (ex. youtube.com) שרת ללא http://‎ (דוגמא. youtube.com) Error! שגיאה! Cannot load extension! אין אפשרות לטעון הרחבה! PopupWebView Inspect Element בדוק אלמנט PopupWindow File קובץ &Save Page As... &שמירת עמוד בשם... Save Page Screen שמור מרקע עמוד Send Link... שליחת קישור... &Print... &הדפסה... Close סגור Edit ערוך &Undo בט&ל &Redo בצ&ע שוב &Cut &גזור C&opy ה&עתק &Paste ה&דבק Select All בחר הכל Find חפש View תצוגה &Stop &עצור &Reload &טען מחדש Zoom &In זום &פנימה Zoom &Out זום &החוצה Reset אפס &Page Source מקור &עמוד %1 - QupZilla Preferences Preferences העדפות QupZilla General כלליות Appearance הופעה Tabs כרטיסיות Browsing גלישה Fonts גופנים Keyboard Shortcuts קיצורי דרך מקלדת Downloads הורדות Password Manager מנהל סיסמאות Privacy פרטיות Notifications התראות Extensions הרחבות Other אחרות Use current עמוד נוכחי Note: You cannot delete active profile. הערה: אין באפשרותך למחוק דיוקן פעיל. Create New צור חדש Delete מחק <b>Launching</b> <b>שיגור</b> After launch: לאחר שיגור: Open blank page פתח עמוד ריק Open homepage פתח עמוד בית Open speed dial פתח חיוג מהיר Restore session שחזר סשן Homepage: עמוד בית: On new tab: בכרטיסייה חדשה: Open blank tab פתח כרטיסייה ריקה Open other page... פתח עמוד אחר... <b>Profiles</b> <b>דיוקנים</b> Startup profile: דיוקן הפעלה: Check for updates on start בדוק עבור עדכונים בעת הפעלה Active profile: דיוקן פעיל: In order to change language, you must restart browser. על מנת לשנות שפה, עליך לאתחל את הדפדפן. <b>Language</b> <b>שפה</b> Available translations: תרגומים זמינים: Don't load tabs until selected אל תטען כרטיסיות טרם בחירתן Check to see if QupZilla is the default browser on startup בדוק כדי לראות אם QupZilla הינו דפדפן ברירת המחדל בהפעלה Check Now בדוק כעת Themes מוטיבים Advanced options אפשרויות מתקדמות <b>Browser Window</b> <b>חלון דפדפן</b> Show StatusBar on start הצג שורת מצב בעת הפעלה Show Bookmarks ToolBar on start הצג סרגל כלים סימניות בעת הפעלה Show Navigation ToolBar on start הצג סרגל כלים ניווט בעת הפעלה <b>Navigation ToolBar</b> <b>סרגל כלים ניווט</b> Show Home button הצג לחצן בית Show Back / Forward buttons הצג לחצני אחורה / קדימה <b>Background<b/> <b>רקע אחורי<b/> Use transparent background השתמש ברקע אחורי שקוף Show web search bar הצג שורת חיפוש רשת Show Add Tab button הצג לחצן הוסף כרטיסייה Show Reload / Stop buttons הצג לחצני טען מחדש / עצור Tabs behaviour התנהגות כרטיסיות Show tab previews הצג תצוגות כרטיסייה Make tab previews animated הפוך תצוגות כרטיסייה למונפשות Hide tabs when there is only one tab הסתר כרטיסיות כאשר קיימת כרטיסייה אחת בלבד Activate last tab when closing active tab הפעל כרטיסייה אחרונה בעת סגירת כרטיסייה פועלת Open new tabs after active tab פתח כרטיסיות חדשות לאחר כרטיסייה פעילה Open new empty tabs after active tab פתח כרטיסיות ריקות חדשות לאחר כרטיסייה פעילה Automatically switch to newly opened tab החלף אוטומטית אל כרטיסייה פתוחה חדשה Don't quit upon closing last tab אל תצא בעת סגירת כרטיסייה אחרונה Ask when closing multiple tabs שאל כאשר סוגרים כרטיסיות מרובות Closed tabs list instead of opened in tab bar רשימת כרטיסיות סגורות במקום כרטיסיות פתוחות בתוך שורת כרטיסייה Address Bar behaviour התנהגות שורת כתובת Suggest when typing into address bar: הצע כאשר מקלידים אל תוך שורת כתובת: History and Bookmarks היסטוריה וסימניות History היסטוריה Bookmarks סימניות Nothing שום דבר Press "Shift" to not switch the tab but load the url in the current tab. לחץ "Shift" כדי לא להחליף את הכרטיסייה אלא לטעון url בתוך הכרטיסייה הנוכחית. Propose to switch tab if completed url is already loaded. הצע להחליף כרטיסייה אם url שלם כבר טעון. Always show go icon הצג תמיד לחצן מעבר Select all text by double clicking in address bar בחר הכל על ידי הקלקה כפולה בשורת כתובת Select all text by clicking in address bar בחר הכל על ידי הקלקה בשורת כתובת Search with Default Engine חפש עם מנוע ברירת מחדל Show loading progress in address bar הצג טעינת התקדמות בשורת כתובת Fill מלא Bottom תחתון Top עליון Custom color: צבע מותאם: Select color בחר צבע ... Reset אפס Web Configuration תצורת רשת Allow Netscape Plugins (Flash plugin) התר תוספות Netscape (תוספת Flash) Allow JavaScript התר JavaScript Allow JAVA התר JAVA Allow DNS Prefetch התר DNS Prefetch Enable XSS Auditing try to detect possible XSS attacks when executing javascript אפשר XSS Auditing Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements הדפס רקע אחורי של אלמנט Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key כלול קישורים בשרשרת מוקד Animated scrolling גלילה מונפשת Enable caret browsing אפשר גלישת קארה Enable spatial navigation אפשר ניווט מרחבי Zoom text only זום לטקסט בלבד Mouse wheel scrolls גלגל עכבר מגולל lines on page שורות בעמוד Default zoom on pages: זום ברירת מחדל בעמודים: Local Storage אחסון מקומי Maximum לכל היותר 50 MB 50 מ״ב 1 Maximum pages in cache: מספר עמודים מרבי במטמון: Allow storing network cache on disk התר אחסון מטמון רשת בכונן Store cache in: אחסן מטמון בתוך: Allow saving history התר שמירת היסטוריה Delete history on close מחק היסטורייה בעת סגירה Allow local storage of HTML5 web content התר אחסון מקומי של תוכן רשת HTML5 Delete locally stored HTML5 web content on close מחק תוכן רשת HTML5 שמאוחסן מקומית בעת סגירה Delete now מחק עכשיו Proxy Configuration תצורת Proxy Proxy Auto-Config (.pac) file קובץ Proxy Auto-Config (‏‎.pac) Reload טען מחדש HTTP SOCKS5 Port: פורט: Username: שם משתמש: Password: סיסמה: Don't use on: אל תשתמש ביעדים: Manual configuration תצורה ידנית System proxy configuration תצורת פרוקסי של מערכת Do not use proxy אל תשתמש בפרוקסי <b>Exceptions</b> <b>חריגים</b> Server: שרת: Use different proxy for https connection השתמש בפרוקסי אחר עבור חיבורי https Use script for automatic configuration: השתמש בתסריט לתצורה אוטומטית: <b>Font Families</b> <b>משפחות גופן</b> Standard תקנית Fixed מקובעת Serif סריף Sans Serif סנס סריף Cursive קורסיבית Fantasy פנטזיה <b>Font Sizes</b> <b>מידות גופן</b> Fixed Font Size מידת גופן מקובעת Default Font Size מידת גופן ברירת מחדל Minimum Font Size מידת גופן מינימלית Minimum Logical Font Size מידה לוגית גופן מינימלית <b>Shortcuts</b> <b>קיצורי דרך</b> Switch to tabs with Alt + number of tab החלף אל כרטיסיות בעזרת Alt + מספר של כרטיסייה Load speed dials with Ctrl + number of speed dial טען חיוג מהיר בעזרת Ctrl + מספר של חיוג מהיר Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>מיקום הורדה</b> Ask everytime for download location שאל בכל פעם עבור מיקום הורדה Use defined location: השתמש במיקום מוגדר: <b>Download Options</b> <b>אפשרויות הורדה</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) השתמש בדו שיח מערכת טבעי (עשוי או לא עשוי לגרום לבעיות עם הורדת תוכן SSL מאובטח) Close download manager when downloading finishes סגור מנהל הורדות כאשר הורדה מסתיימת <b>External download manager</b> <b>מנהל הורדות חיצוני</b> Use external download manager השתמש במנהל הורדות חיצוני Executable: בר השמה: Arguments: ארגומנטים: Leave blank if unsure השאר ריק במידה ואינך בטוח <b>%d</b> will be replaced with URL to be downloaded ‏<b>‎%d</b> יוחלף עם URL להורדה <b>AutoFill options</b> <b>אפשרויות מילוי אוטומטי</b> Allow saving passwords from sites התר שמירת סיסמאות מתוך אתרים Send Referer header to servers שלח תקורת Referer אל שרתים <b>Cookies</b> <b>עוגיות</b> Send Do Not Track header to servers שלח תקורת Do Not Track אל שרתים <b>Other</b> <b>אחרות</b> Manage CA certificates נהל תעודות CA Certificate Manager מנהל תעודות <b>SSL Certificates</b> <b>תעודות SSL</b> <b>JavaScript</b> <p dir=rtl><b>JavaScript</b></p> Manage JavaScript privacy options נהל אפשרויות פרטיות JavaScript JavaScript options אפשרויות JavaScript Cookies Manager מנהל עוגיות Manage Cookies נהל עוגיות <b>HTML5 Permissions</b> <b>הרשאות HTML5</b> Manage HTML5 permissions נהל הרשאות HTML5 HTML5 Permissions הרשאות HTML5 <b>Notifications</b> <b>התראות</b> Use OSD Notifications השתמש בהתראות OSD Use Native System Notifications (Linux only) השתמש בהתראות מערכת טבעיות (Linux בלבד) Do not use Notifications אל תשתמש בהתראות Expiration timeout: פקיעת הפסקת זמן: seconds שניות <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>הערה: </b>באפשרותך לשנות את המיקום של התראת OSD על ידי גרירתה על המרקע. StyleSheet automatically loaded with all websites: גיליון סגנון נטען אוטומטית עם כל אתר: Languages שפות <b>Preferred language for web sites</b> <b>שפה מועדפת עבור אתרי רשת</b> <b>Change browser identification</b> <b>שינוי זהות דפדפן</b> User Agent Manager מנהל סוכן משתמש Default ברירת מחדל Set as default קבע כברירת מחדל OSD Notification התראת OSD Drag it on the screen to place it where you want. גרור אותה על המסך ושים אותה היכן שברצונך. Choose download location... בחירת מיקום הורדה... Choose stylesheet location... בחירת מיקום גליון סגנון... Deleted נמחקה Choose executable location... בחירת מיקום בר השמה... Choose cache path... בחירת נתיב מטמון... New Profile דיוקן חדש Enter the new profile's name: הזן את השם החדש של הדיוקן: Error! שגיאה! This profile already exists! דיוקן זה כבר קיים! Cannot create profile directory! אין אפשרות ליצור מדור דיוקן! Confirmation אימות Are you sure to permanently delete "%1" profile? This action cannot be undone! האם אתה בטוח כי ברצונך למחוק את דיוקן "%1"? פעולה זו לא ניתנת לביטול! Select Color בחר צבע QObject Native System Notification התראה טבעית של מערכת Save file as... שמירת קובץ בשם... The file is not an OpenSearch 1.1 file. קובץ זה אינו קובץ OpenSearch 1.1. <not set in certificate> <לא נקבע בתעודה> Unknown size גודל לא ידוע KB ק״ב MB מ״ב GB ג״ב Executable: בר השמה: Arguments: ארגומנטים: Cannot start external program אין אפשרות להתחיל תוכנית חיצונית Cannot start external program! %1 אין אפשרות להתחיל תוכנית חיצונית! %1 QtWin Open new tab פתח כרטיסייה חדשה Opens a new tab if browser is running פותחת כרטיסייה חדשה אם דפדפן מורץ Open new window פתח חלון חדש Opens a new window if browser is running פותחת חלון חדש אם דפדפן מורץ Open download manager פתח מנהל הורדות Opens a download manager if browser is running פותחת מנהל הורדות אם דפדפן מורץ QupZilla QupZilla Private Browsing Enabled גלישה פרטית מאופשרת IP Address of current page כתובת IP של עמוד נוכחי &About QupZilla &אודות QupZilla Pr&eferences &העדפות Quit יציאה &File &קובץ &New Window &חלון חדש New Tab כרטיסייה חדשה Open Location פתח מיקום Open &File... פתיחת &קובץ... Close Tab סגור כרטיסייה Close Window סגור חלון &Save Page As... &שמירת עמוד בשם... Save Page Screen שמור מרקע עמוד Send Link... שליחת קישור... &Print... &הדפסה... Import bookmarks... ייבוא סימניות... &Edit ע&ריכה &Undo בט&ל &Redo בצ&ע שוב &Cut &גזור C&opy ה&עתק &Paste ה&דבק Select &All בחר ה&כל &Find &חפש &View &תצוגה &Navigation Toolbar סרגל כלים &ניווט &Bookmarks Toolbar סרגל כלים &סימניות Sta&tus Bar שורת &מצב &Menu Bar שורת &תפריט &Tabs on Top &כרטיסיות בשיא &Fullscreen &מסך מלא &Stop &עצור &Reload &טען מחדש Character &Encoding &קידוד תווים Enable &Caret Browsing אפשר גלישת &קארה Toolbars סרגלי כלים Sidebars סרגלי צד Zoom &In זום &פנימה Zoom &Out זום &החוצה Reset אפס &Page Source &מקור עמוד Hi&story &היסטוריה &Back &אחורה &Forward &קדימה &Home &בית Show &All History הצג את &כל ההיסטוריה Closed Tabs כרטיסיות סגורות Recently Visited ביקרתי לאחרונה Most Visited הנצפים ביותר &Bookmarks &סימניות Bookmark &This Page ס&מן כרטיסייה זו Bookmark &All Tabs סמן את &כל הכרטיסיות Organize &Bookmarks &ארגן סימניות &Tools &כלים &Web Search &חיפוש רשת Page &Info &מידע עמוד &Download Manager מנהל &הורדות &Cookies Manager מנהל &עוגיות &AdBlock RSS &Reader &קורא RSS Web In&spector מא&בחן רשת Clear Recent &History טהר &היסטוריה אחרונה New &Private Window חלון &פרטי חדש &Help &עזרה About &Qt אודות &Qt Information about application מידע אודות יישום Configuration Information מידע תצורה Report &Issue דווח על &בעיה Restore &Closed Tab &שחזר כרטיסייה סגורה (Private Browsing) (גלישה פרטית) Empty ריק Restore All Closed Tabs שחזר את כל הכרטיסיות הסגורות Clear list טהר רשימה Other אחר %1 - QupZilla HTML files קבצי HTML Image files קבצי תמונה Text files קבצי טקסט All files כל הקבצים Open file... פתיחת קובץ... QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? עדיין קיימות %1 כרטיסיות פתוחות והסשן שלך לא יאוחסן. האם אתה בטוח כי ברצונך לצאת מן QupZilla? Don't ask again אל תשאל שוב There are still open tabs עדיין קיימות כרטיסיות פתוחות QupZillaSchemeReply No Error אין שגיאה Not Found לא נמצא Report Issue דווח על בעיה If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: באם הינך חווה בעיות עם QupZilla, אנא נסה לנטרל את כל ההרחבות תחילה. <br/>אם זה לא פותר זאת, אז אנא מלא את טופס זה: Your E-mail הדוא״ל שלך Issue type מהות הבעיה Issue description תיאור הבעיה Send שלח E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. דוא״ל אינו מחייב<br/><b>הערה: </b>אנא לקרוא תחילה כיצד להכין דיווח באג <a href=%1>כאן</a>. Please fill out all required fields! אנא מלא את השדות הדרושים! Start Page עמוד התחלה Search on Web חפש ברשת Search results provided by DuckDuckGo תוצאות חיפוש מסופקות באדיבות DuckDuckGo About QupZilla אודות QupZilla <h1>Private Browsing</h1> <h1>גלישה פרטית</h1> Information about version מידע אודות גרסא Copyright זכויות יוצרים Version גרסא WebKit version גרסת ‫WebKit Main developer מפתח ראשי Contributors תורמים Translators מתרגמים Speed Dial חיוג מהיר Add New Page הוסף עמוד חדש Edit ערוך Remove הסר Reload טען מחדש Are you sure to remove this speed dial? האם אתה בטוח כי ברצונך להסיר את חיוג מהיר זה? Load title from page הטען כותרת מתוך עמוד Url Title כותרת Apply החל Close סגור New Page עמוד חדש Speed Dial settings הגדרות חיוג מהיר Placement: מיקום: Auto אוטומטי Cover כרוך Fit מותאם Fit Width מותאם לרוחב Fit Height מותאם לגובה Use background image השתמש בתמונת רקע Select image בחר תמונה Maximum pages in a row: מספר עמודים מרבי בשורה: Change size of pages: שנה מידה של עמודים: Center speed dials מרכז חיוגים מהירים Restore Session שחזר סשן Oops, QupZilla crashed. אופס, QupZilla קרס. We apologize for this. Would you like to restore the last saved state? אנחנו מצרים על תקרית זו. האם ברצונך לשחזר את המצב השמור האחרון? Try removing one or more tabs that you think cause troubles נסה להסיר כרטיסייה אחת או יותר שעשויות להיות הגורם לבעיות Or you can start completely new session או באפשרותך להתחיל סשן חדש Configuration Information מידע תצורה This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. עמוד זה מכיל מידע אודות תצורה נוכחית של QupZilla - רלוונטי עבור איתור תקלות. אנא כלול את מידע זה בעת שליחת דיווחי באגים. Browser Identification זהות דפדפן Paths נתיבים Build Configuration תצורת בניה Preferences העדפות Option אפשרות Value ערך Extensions הרחבות Name שם Author מחבר Description תיאור Application version גרסת יישום Qt version גרסת Qt Build time זמן בניה Platform פלטפורמה Profile דיוקן Settings הגדרות Saved session סשן שמור Pinned tabs כרטיסיות מוצמדות Data נתונים Themes מוטיבים Translations תרגומים Disabled מנוטרלת <b>Enabled</b> <b>מאופשרת</b> Debug build הבניית Debug WebGL support תמיכת WebGL Windows 7 API KDE integration שילוב KDE Portable build הבנייה ברת ניוד No available extensions. אין הרחבות זמינות. RSSManager RSS Reader קורא RSS Empty ריק Add feed הוסף ערוץ Edit feed ערוך ערוץ Delete feed מחק ערוץ Optimize Database יעל מסד נתונים Reload טען מחדש News חדשות Loading... טוען כעת... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. אין לך שום ערוצים RSS.<br/> אנא הוסף כמה בעזרת צלמית RSS בשורת ניווט באתר אשר מציע ערוצים. Add new feed הוספת ערוץ חדש Please enter URL of new feed: אנא הזן URL של ערוץ חדש: New feed ערוץ חדש Fill title and URL of a feed: מלא כותרת וכן URL של ערוץ: Feed title: כותרת ערוץ: Feed URL: ‏URL ערוץ: Edit RSS Feed עריכת ערוץ RSS Open link in current tab פתח קישור בכרטיסייה נוכחית Open link in new tab פתח קישור בכרטיסייה חדשה Error in fetching feed שגיאה בתפיסת ערוץ RSS feed duplicated ערוץ RSS כפול You already have this feed. כבר יש לך את ערוץ זה. RSSNotification Add this feed into הוסף את ערוץ זה אל תוך Add הוסף RSS feed <b>"%1"</b> ערוץ RSS ‏<b>"%1"</b> Internal Reader קורא פנימי Other... אחר... Liferea not running יישום Liferea אינו מורץ Liferea must be running in order to add new feed. על Liferea להיות מופעל על מנת להוסיף ערוץ חדש. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. כדי להוסיף את ערוץ RSS זה אל תוך יישום אחר, אנא תשתמש במידע זה:<br/><br/><b> כותרת: </b>%1<br/><b>Url‏: </b>%2<br/><br/>כתובת Url של ערוץ זה הועתקה אל לוח גזירה. Add feed into other application הוספת ערוץ לתוך יישום אחר RSSWidget Add RSS Feeds from this site הוסף ערוצי RSS מתוך אתר זה Untitled feed ערוץ ללא כותרת Add הוסף RecoveryWidget Start New Session התחל סשן חדש Restore שחזר Window %1 חלון %1 RegisterQAppAssociation Warning! אזהרה! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) קיימות מספר בעיות. אנא התקן מחדש את QupZilla. ייתכן ששיגור מחדש עם הרשאות מנהל יעשה את הקסם עבורך! ;) RssIcon Add RSS from this page... הוסף RSS מתוך עמוד זה... SSLManager Certificate Manager מנהל תעודות CA Authorities Certificates תעודות רשויות CA Show info הצג מידע This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. זוהי רשימה של תעודות רשויות CA מאוחסנות בנתיב המערכת התקני ובנתיבים מוגדרי משתמש. Local Certificates תעודות מקומיות Import יבא Remove הסר This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. זוהי רשימה של תעודות מקומיות מאוחסנות בדיוקן המשתמש שלך. זו גם מכילה את כל התעודות, שקיבלו חריג. Settings הגדרות Add הוסף If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. במידה ותעודות רשויות CA לא היו נטענות אוטומטית מתוך המערכת, באפשרותך לציין נתיבים ידנית היכן שהתעודות הינן מאוחסנות. <b>NOTE:</b> Setting this option is a high security risk! <b>הערה:</b> קביעה של אפשרות זו מהווה סיכון אבטחה גבוה! Ignore all SSL Warnings התעלם מכל אזהרות SSL All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. על כל התעודות להכיל סיומת ‎.crt. עובר הוספת או הסרת נתיבי תעודה, נחוץ לאתחל את QupZilla על מנת להעניק תוקף לשינויים. Choose path... בחירת נתיב... Import certificate... ייבוא תעודה... Certificate Informations מידע תעודה SearchEnginesDialog Manage Search Engines ניהול מנועי חיפוש Add... הוסף... Remove הסר Edit ערוך Set as default קבע כברירת מחדל Up מעלה Down מטה Search Engine מנוע חיפוש Shortcut קיצור דרך Defaults ברירות מחדל Add Search Engine הוספת מנוע חיפוש Remove Engine הסר מנוע You can't remove the default search engine.<br>Set a different engine as default before removing %1. אין ברפשרותך להסיר מנוע חיפוש ברירת מחדל.<br>קבע מנוע אחר כברירת מחדל טרם הסרה %1. Edit Search Engine עריכת מנוע חיפוש SearchEnginesManager Search Engine Added מנוע חיפוש התווסף Search Engine "%1" has been successfully added. מנוע חיפוש "%1" התווסף בהצלחה. Search Engine is not valid! מנוע חיפוש אינו תקף! Error שגיאה Error while adding Search Engine <br><b>Error Message: </b> %1 שכיאה במהלך הוספת מנוע חיפוש <br><b>הודעת שגיאה: </b> %1 SearchToolBar No results found. לא נמצאו תוצאות. SearchToolbar Search: חפש: Search... חפש... Highlight הדגש Case sensitive התאם אותיות גדולות/קטנות SideBar Bookmarks סימניות History היסטוריה SiteInfo Site Info מידע אתר General מידע כללי Media תכני מדיה Databases מסדי נתונים Security אבטחה Size: גודל: Site address: כתובת אתר: Encoding: קידוד: Meta tags of site: תגיות מוצמדות של אתר: Tag תגית Value ערך <b>Security information</b> <b>מידע אבטחה</b> Details פרטים Image תמונה Image address כתובת תמונה <b>Preview</b> <b>תצוגה מקדימה</b> <b>Database details</b> <b>פרטי מסד נתונים</b> Name: שם: Path: נתיב: <database not selected> <מסד נתונים לא נבחר> <not set in certificate> <לא נקבע בתעודה> No databases are used by this page. אין מסדי נתונים אשר מצויים בשימוש על ידי עמוד זה. <b>Connection is Encrypted.</b> <b>חיבור הינו מוצפן.</b> <b>Your connection to this page is secured with this certificate: </b> <b>חיבורך אל עמוד זה הינו מאובטח עם תעודה זו: </b> <b>Connection Not Encrypted.</b> <b>חיבור לא מוצפן.</b> <b>Your connection to this page is not secured!</b> <b>חיבורך אל עמוד זה אינו מאובטח!</b> Copy Image Location העתק מיקום תמונה Copy Image Name העתק שם תמונה Save Image to Disk שמור תמונה אל כונן Error! שגיאה! This preview is not available! תצוגה מקדימה זו אינה זמינה! Save image... שמירת תמונה... Cannot write to file! אין אפשרות לכתוב אל קובץ! Preview not available תצוגה מקדימה לא זמינה SiteInfoWidget More... עוד... Your connection to this site is <b>secured</b>. חיבורך אל אתר זה <b>הינו מאובטח</b>. Your connection to this site is <b>unsecured</b>. חיבורך אל אתר זה <b>אינו מאובטח</b>. This is your <b>%1</b> visit of this site. זהו ביקור <b>%1</b> באתר זה. You have <b>never</b> visited this site before. לא ביקרת <b>מעולם</b> את אתר זה בעבר. first ראשון second שני third שלישי SourceViewer Source of מקור של File קובץ Load in page טען בתוך עמוד Save as... שמירה בשם... Close סגור Edit עריכה Undo בטל Redo בצע שוב Cut גזור Copy העתק Paste הדבק Select All בחר הכל Find חפש Go to Line... מעבר אל שורה... View תצוגה Reload טען מחדש Editable בר עריכה Word Wrap גלישת שורות Source loaded in page מקור נטען בתוך עמוד Cannot load in page. Page has been closed. אין אפשרות לטעון בתוך עמוד. עמוד נסגר. Save file... שמירת קובץ... Error! שגיאה! Cannot write to file! אין אפשרות לכתוב אל קובץ! Error writing to file שגיאה בכתיבה אל קובץ Source successfully saved מקור נשמר בהצלחה Source reloaded מקור נטען מחדש Cannot reload source. Page has been closed. אין אפשרות לטעון מחדש מקור. עמוד נסגר. Editable changed בר עריכה שונתה Word Wrap changed גלישת שורות שונתה Enter line number הכנס מספר שורה SourceViewerSearch Search: חפש: Search... חפש... Whole words כל המילים SpeedDial Image files קבצי תמונה Select image... בחר תמונה... Unable to load אין אפשרות לטעון SpellCheckDialog SpellCheck בדיקת איות <b>Dictionary path</b> <b>נתיב מילון</b> Change... שנה... <b>User dictionary</b> <b>מילון משתמש</b> Add הוסף Remove הסר Using Hunspell library משתמש בספריית Hunspell Choose dictionary path... בחירת נתיב מילון... Add new word... הוסף מילה חדשה... Add new word: הוסף מילה חדשה: Speller No suggestions אין הצעות Add to dictionary הוסף אל מילון Settings הגדרות SqueezeLabelV2 Copy העתק SslErrorDialog SSL Certificate Error! שגיאת תעודת SSL! Only for this session להפעלה זו בלבד TabBar &New tab כרטיסייה &חדשה &Stop Tab &עצור כרטיסייה &Reload Tab &טען מחדש כרטיסייה &Duplicate Tab &שכפל כרטיסייה D&etach Tab ה&פרד כרטיסייה Un&pin Tab &בטל הצמד כרטיסייה &Pin Tab ה&צמד כרטיסייה Re&load All Tabs &טען מחדש את כל הכרטיסיות &Bookmark This Tab ס&מן כרטיסייה זו Bookmark &All Tabs סמן את &כל הכרטיסיות Close Ot&her Tabs סגור כרטיסיות &אחרות Cl&ose &סגור Reloa&d All Tabs &טען מחדש את כל הכרטיסיות Restore &Closed Tab &שחזר כרטיסייה סגורה Close Tabs סגור כרטיסיות Do you really want to close other tabs? האם אכן ברצונך לסגור כרטיסיות אחרות? TabWidget New Tab כרטיסייה חדשה List of tabs רשימה של כרטיסיות Loading... טוען כעת... No Named Page עמוד ללא שם Currently you have %1 opened tabs יש לך %1 כרטיסיות פתוחות כעת New tab כרטיסייה חדשה Empty ריק Restore All Closed Tabs שחזר את כל הכרטיסיות הסגורות Clear list טהר הכל TabbedWebView Loading... טוען כעת... %1 - QupZilla Inspect Element בדוק אלמנט ThemeManager <b>Name:</b> <b>שם:</b> <b>Author:</b> <b>מחבר:</b> <b>Description:</b> <b>תיאור:</b> License רשיון ToolButton Stop עצור Reload טען מחדש Updater Update available עדכון זמין New version of QupZilla is ready to download. גרסא חדשה של QupZilla זמינה להורדה. Update עדכון UserAgentDialog User Agent Manager מנהל סוכן משתמש Change global User Agent שנה סוכן משתמש גלובלי Use different User Agents for specified sites השתמש בסוכני משתמש שונים עבור אתרים נקובים Site אתר User Agent סוכן משתמש Add הוסף Remove הסר Edit ערוך Add new site הוסף אתר חדש Edit site ערוך אתר Site domain: מתחם אתר: User Agent: סוכן משתמש: WebInspectorDockWidget Web Inspector מאבחן רשת WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? ‏QupZilla לא מסוגל לטפל בקישורי <b>%1:</b>‎. הקישור המבוקש הינו <ul><li>%2</li></ul>האם ברצונך מן QupZilla לנסות לפתוח את קישור זה ביישום מערכת? Remember my choice for this protocol זכור את בחירתי עבור פרוטוקול זה External Protocol Request בקשת פרוטוקול חיצוני To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) כדי להציג את עמוד זה, QupZilla מוכרח לשלוח מחדש בקשה שעושה זאת שוב (כגון חיפוש בעת עשיית קניות, כאשר זה כבר נעשה.) Confirm form resubmission אמת שליחה חוזרת של טופס Select files to upload... בחירת קבצים להעלאה... Server refused the connection שרת סרב את החיבור Server closed the connection שרת סרב את החיבור Server not found שרת לא נמצא Connection timed out זמן מוקצב לחיבר פקע Untrusted connection חיבור לא מהימן Temporary network failure כשל רשת זמני Proxy connection refused חיבור פרוקסי סורב Proxy server not found שרת פרוקסי לא נמצא Proxy connection timed out זמן מוקצב לחיבר פרוקסי פקע Proxy authentication required נדרש אימות פרוקסי Content not found תוכן לא נמצא Unknown network error שגיאת רשת לא מוכרת AdBlocked Content תוכן חסום עם AdBlock Blocked by <i>%1</i> חסום על ידי <i>%1</i> Content Access Denied גישה לתוכן נדחתה Error code %1 קוד שגיאה %1 Failed loading page נכשל לטעון עמוד QupZilla can't load page. QupZilla לא מסוגל לטעון עמוד. QupZilla can't load page from %1. QupZilla לא מסוגל לטעון עמוד מתוך %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com בדוק את הכתובת לשגיאות הקלדה כגון <b>ww.</b>example.com במקום <b>www.</b>example.com If you are unable to load any pages, check your computer's network connection. במידה ואינך מסוגל לטעון כל עמוד שהוא, בדוק את חיבור רשת התקשורת של מחשבך. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. במידה ומחשבך או רשת התקשורת שלך מוגנים על ידי חומת אש או פרוקסי, וודא שקיימת הרשאה לזכותו של QupZilla לגשת אל הרשת. Try Again נסה שוב JavaScript alert אתראת JavaScript‏ Prevent this page from creating additional dialogs מנע מעמוד זה ליצור תיבות דו שיח נוספות Choose file... בחירת קובץ... Cannot read data from <b>%1</b>. Upload was cancelled! אין אפשרות לקרוא נתונים מתוך <b>%1</b>. העלאה בוטלה! Cannot read file! אין אפשרות לקרוא קובץ! WebSearchBar Manage Search Engines נהל מנועי חיפוש Add %1 ... הוסף %1 ... Paste And &Search הדבק &וחפש Clear All טהר הכל Show suggestions הצג הצעות Search when engine changed חפש כאשר מנוע משתנה WebView No Named Page עמוד ללא שם Create Search Engine צור מנוע חיפוש Cut גזור Copy העתק Paste הדבק Select All בחר הכל Default ברירת מחדל Left to Right שמאל אל ימין Right to Left ימין אל שמאל Bold בולט Italic נטוי Underline קו תחתון &Reload &טען מחדש S&top &עצור Delete מחק &Back &אחורה &Forward &קדימה This frame מסגרת זו Show &only this frame הצג את מסגרת זו &בלבד Show this frame in new &tab הצג את מסגרת זו &בכרטיסייה חדשה Print frame הדפס מסגרת Zoom &in זום &פנימה &Zoom out זום &החוצה Reset אפס Show so&urce of frame הצג &מקור של מסגרת Book&mark page ס&מן עמוד &Save page as... &שמירת עמוד בשם... &Copy page link &העתק קישור עמוד Send page link... שליחת קישור עמוד... &Print page &הדפס עמוד Select &all בחר ה&כל Validate page בדוק תוקף עמוד Show so&urce code הצג &קוד מקור Show info ab&out site הצג מידע &אודות אתר Open link in new &tab פתח קישור בכרטיסייה &חדשה Open link in new &window פתח קישור בחלון ח&דש B&ookmark link &סמן קישור &Save link as... &שמירת קישור בשם... Send link... שליחת קישור... &Copy link address ה&עתק כתובת קישור Show i&mage הצג &תמונה Copy im&age העתק ת&מונה Copy image ad&dress העתק &כתובת תמונה &Save image as... &שמירת תמונה בשם... Send image... שליחת תמונה... Send text... שליחת טקסט... Google Translate תרגום Google Dictionary מילון Go to &web address עבור אל כתובת &רשת Search "%1 .." with %2 חפש "%1 .." בעזרת %2 Search with... חיפוש עם... &Play &נגן &Pause &השהה Un&mute איין השת&ק &Mute השת&ק &Copy Media Address ה&עתק כתובת מדיה &Send Media Address &שלח כתובת מדיה Save Media To &Disk שמור מדיה אל &כונן Check &Spelling בדוק &איות Languages שפות jsAlert Prevent this page from creating additional dialogs מנע מעמוד זה ליצור תיבות דו שיח נוספות qupzilla-1.6.0/translations/hu_HU.ts000066400000000000000000010467611226107126500175010ustar00rootroot00000000000000 AboutDialog About QupZilla A QupZilláról Authors Szerzők Authors and Contributors Szerzők és közreműködők < About QupZilla < A QupZilláról <p><b>Application version %1</b><br/> <p><b>Böngésző változatszám %1</b><br/> <b>WebKit version %1</b></p> <b>WebKit változatszám %1</b></p> <small>Build time: %1 </small></p> <small>Elkészítés dátuma és ideje: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Fő fejlesztő:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Közreműködők:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Nyelvi fordítók:</b><br/>%1</p> AcceptLanguage Preferred Languages Előnybe részesített nyelv Add... Hozzáadás... Remove Eltávolítás Up Fel Down Le Personal [%1] Egyéni [%1] AdBlockAddSubscriptionDialog Add Subscription Title: Address: Add new subscription to AdBlock: AdBlockCustomList Custom Rules AdBlockDialog AdBlock Configuration A Hirdetésszűrő beállításai Enable AdBlock Hirdetésszűrő bekapcsolása Search... Keresés... Options AdBlock Hirdetésszűrő Use only essential part of EasyList (for performance reasons) Add Rule Szabály hozzáadása Remove Rule Add Subscription Remove Subscription Update Subscriptions Learn about writing rules... AdBlockIcon AdBlock lets you block unwanted content on web pages A Hirdetésszűrő megakadályozza a weboldalakon a nemkívánt tartalmak megjelenését Blocked popup window Blokkolt felugró ablak AdBlock blocked unwanted popup window. A Hirdetésszűrő blokkolt egy nemkívánt felugró ablakot. AdBlock Hirdetésszűrő Show AdBlock &Settings A Hirdetésszűrő &beállításai Disable on %1 Disable only on this page Blocked Popup Windows Blokkolt felugró ablakok %1 with (%2) %1 / (%2) No content blocked Nincs letiltott tartalom Blocked URL (AdBlock Rule) - click to edit rule Letiltott internetcím (Hirdetésblokkolási szabályok) - ide kattintva szerkeszthető AdBlockManager Do you want to add <b>%1</b> subscription? AdBlock Subscription EasyList AdBlockTreeWidget Add Rule Remove Rule Add Custom Rule Please write your rule here: %1 (recently updated) AddAcceptLanguage Add Language Nyelv hozzáadása Choose preferred language for web sites A weboldalak megjelenítéséhez előnybe részesített nyelv kiválasztása Personal definition: Egyéni beállítás: AesInterface Warning! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. AutoFill Database (plaintext) Database (encrypted) Enter Master Password Permission is required, please enter Master Password: Warning! Entered password is wrong! This backend needs a master password to be set! QupZilla just switches to its default backend AutoFillManager Passwords are stored in: Change backend Backend options Passwords Jelszavak Server Szerver Username Felhasználónév Password Jelszó Import/Export Betöltés/Mentés Show Passwords Mutasd a jelszavakat Edit Szerkesztés Remove Eltávolítás Remove All Az összes eltávolítása Exceptions Kizárások Import Passwords from File... Jelszavak betöltése fájlból... Export Passwords to File... Jelszavak mentése fájlba... Search Change backend... Change backend: Are you sure that you want to show all passwords? Biztos, hogy látszódjon minden jelszó? Hide Passwords Jelszavak elrejtése Confirmation Megerősítés Are you sure to delete all passwords on your computer? Biztosan töröljem az összes elmentett jelszót? Edit password Jelszó szerkesztése Change password: Jelszó megváltoztatása: Choose file... Fájl megadása... Cannot read file! Nem lehet olvasni a fájlt! Successfully imported Sikeresen betöltve Error while importing! Hiba keletkezett betöltés közben! Cannot write to file! Nem lehet létrehozni a fájlt! Successfully exported Sikeresen elmentve AutoFillNotification Update Remember Never For This Site Not Now on %1 for <b>%1</b> Do you want QupZilla to update saved password %1? Do you want QupZilla to remember the password %1 %2? AutoFillWidget Choose username to login Login Login as <b>%1</b> BookmarkIcon Bookmark this Page Oldal mentése a könyvjelzőkhöz Edit this bookmark Ennek a könyvjelzőnek a szerkesztése BookmarksImportDialog Import Bookmarks Könyvjelzők betöltése <b>Import Bookmarks</b> <b>Könyvjelzők betöltése</b> From File Fájlból Internet Explorer Choose browser from which you want to import bookmarks: Melyik böngészőből legyenek betöltve a könyvjelzők/kedvencek?: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Megjegyzés:</b> Könyvjelző mappákat jelenleg csak HTML fájlból lehet betölteni. Choose... Kiválasztás... Try to fetch icons for all bookmarks (may take a while) Fetching icons, please wait... Ikonok átmentése, pillanat... Title Az oldal neve Url Internetcím Next Következő Cancel Mégse <b>Importing from %1</b> <b>Betöltés innen: %1</b> Finish Befejezés Please press Finish to complete importing process. A könyvjelzők betöltése befejeződött. A folyamat lezárásához rá kell kattintani a Befejezés feliratra. Error! Hiba! The file doesn't contain any bookmark. Choose directory... Mappa kiválasztása... Choose file... Fájl megadása... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in A Mozilla Firefox böngésző <b>places.sqlite</b> SQLite adatbázisban tárolja a könyvjelzőket. Ez a fájl általában itt található - Please choose this file to begin importing bookmarks. A könyvjelzők betöltésének megkezdéséhez ennek a fájlnak a kijelölése szükséges. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in A Google Chrome böngésző <b>Bookmarks</b> elnevezésű szöveges fájlban tárolja a könyvjelzőket. Ez a fájl általában itt található - Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Az Opera böngésző <b>bookmarks.adr</b> elnevezésű szöveges fájlban tárolja a könyvjelzőket. Ez a fájl általában itt található - You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Bármilyen böngészőből betölthetők a könyvjelzők, amely támogatja a könyvjelzők HTML fájlba mentését. Ez a fájl általában ezekkel az utótagokkal (kiterjesztésekkel) rendelkezik Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Az Internet Explorer böngésző <b>Kedvencek (angolul: Favorites)</b> elnevezésű mappában tárolja a könyvjelzőket. Ez a mappa általában itt található - Please choose this folder to begin importing bookmarks. A könyvjelzők betöltésének megkezdéséhez ennek a mappának a megadása szükséges. No Error Nincs hiba Unable to open file. Nem lehet megnyitni a fájlt. Cannot evaluate JSON code. Nem értékelhető JSON kód. File does not exist. Nincs ilyen fájl. Unable to open database. Is Firefox running? Nem lehet megnyitni az adatbázist. El van indítva a Firefox? Directory does not exist. The directory does not contain any bookmarks. BookmarksManager Bookmarks Könyvjelzők Optimize Database Adatbázis optimizálása Import Bookmarks Könyvjelzők betöltése Add Folder Mappa/Könyvtár hozzáadása Title Az oldal neve Url Internetcím Expand All Collapse All Add new folder Új mappa hozzáadása Choose parent folder for new folder: Choose name for new bookmark folder: Az új könyvjelző mappa nevének megadása: Add new subfolder Új almappa hozzáadása Choose name for new subfolder in bookmarks toolbar: Az új könyvjelző almappa nevének megadása: Rename Folder Mappa átnevezése Choose name for folder: Mappa nevének megadása: Add Subfolder Almappa hozzáadása Rename folder Mappa átnevezése Remove folder Mappa eltávolítása Open link in current &tab Hivatkozás megnyitása a jelenlegi &fülön Open link in &new tab Hivatkozás megnyitása &új fülön Move bookmark to &folder Helyezd a könyvjelzőt &mappába Change icon Rename bookmark Könyvjelző átnevezése Remove bookmark Könyvjelző törlése <b>Warning: </b>You already have bookmarked this page! <b>Figyelem: </b>Ez az oldal már a könyvjelzők között van! Choose name and location of this bookmark. Könyvjelző nevének és helyének megadása. Add New Bookmark Új könyvjelző hozzáadása Choose folder for bookmarks: Könyvjelzők mappájának megadása: Bookmark All Tabs Összes jelenlegi fül mentése a könyvjelzőkhöz BookmarksModel Bookmarks In Menu Könyvjelzők a Menüben Bookmarks In ToolBar Könyvjelzők az Eszköztárban Unsorted Bookmarks Nem rendezett könyvjelzők BookmarksSideBar Search... Keresés... Open link in current &tab Hivatkozás megnyitása a jelenlegi &fülön Open link in &new tab Hivatkozás megnyitása &új fülön Copy address A cím másolása &Delete &Törlés BookmarksToolbar &Bookmark Current Page &Jelenlegi oldal mentése a könyvjelzőkhöz Bookmark &All Tabs Összes &jelenlegi fül mentése a könyvjelzőkhöz &Organize Bookmarks &Könyvjelzők rendezése Show Most &Visited Legtöbbet látogatott &oldalak mutatása Show Only Icons Csak az ikonok mutatása &Hide Toolbar &Eszköztár elrejtése Open bookmark Open bookmark in new tab Move right Mozgatás jobbra Move left Mozgatás balra Edit bookmark Könyvjelző szerkesztése Remove bookmark Könyvjelző törlése Edit bookmark: Könyvjelző szerkesztése: Title: Az oldal neve: Url: Internetcím: Edit Bookmark Könyvjelző szerkesztése Most visited Legtöbbször látogatott Sites you visited the most A legtöbbször felkeresett oldalak Empty Üres BookmarksTree Bookmarks New Folder... BookmarksWidget Add to Speed Dial Hozzáadás a Gyorsindítóhoz Save Mentés Name: Név: Folder: Könyvtár/Mappa: Remove from Speed Dial Eltávolítás a Gyorsindítóból Remove Törlés BrowsingLibrary Library Könyvtár Search... Keresés... History Előzmények Bookmarks Könyvjelzők RSS RSS Database Optimized Adatbázis optimizálva Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 Az adatbázis sikeresen optimizálva.<br/><br/><b>Az adatbázis mérete előtte: </b>%1<br/><b>Optimalizálás után: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Kibocsátva a következő részére:</b> Common Name (CN): Általános név (CN): Organization (O): Szervezet (O): Organizational Unit (OU): Szervezeti egység (OU): Serial Number: Szériaszám: <b>Issued By</b> <b>Kibocsátó:</b> <b>Validity</b> <b>Érvényesség</b> Issued On: Kibocsátva: Expires On: Lejárat: ClearPrivateData Clear Recent History Mai előzmények törlése Choose what you want to delete: Törölni kívánt elemek kiválasztása: Clear history Előzmények törlése Clear cache Gyorsítótár törlése Clear icons Mentett ikonok törlése <b>Clear Recent History</b> <b>Mai előzmények törlése</b> Earlier Today Ma, korábban Week Heti Month Havi All Összes Clear web databases Webes adatbázisok törlése Clear local storage Helyi internetes adattár kiürítése Clear cookies Sütik törlése ClickToFlash Object blocked by ClickToFlash A weblapelemet a ClickToFlash blokkolta Show more information about object Bővebb információ az elemről Delete object Elem törlése Add %1 to whitelist %1 hozzáadása a Kivételekhez Flash Object Flash elem <b>Attribute Name</b> <b>Jellemző név</b> <b>Value</b> <b>Érték</b> No more information available. Nincs több elérhető információ. CookieManager Cookies Sütik Stored Cookies Elmentett sütik Find: Találat: These cookies are stored on your computer: Ezek a sütik vannak tárolva a számítógépen: Server Szerver Cookie name Süti neve Name: Név: Value: Érték: Server: Szerver: Path: Elérési út: Secure: Biztonság: Expiration: Lejárat: <cookie not selected> <nincs kiválasztva süti> Remove all cookies Az összes süti törlése Remove cookies Sütik eltávolítása Cookie Filtering Sütik szűrése <b>Cookie whitelist</b> <b>Süti engedélyezési lista</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Ezekről a szerverekről a sütik MINDIG el lesznek fogadva (kivéve, ha ki van kapcsolva a sütik mentése) Add Hozzáadás Remove Eltávolítás <b>Cookie blacklist</b> <b>Süti tiltólista</b> Cookies from these servers will NEVER be accepted Ezekről a szerverekről a sütik SOHASEM lesznek engedélyezve Settings <b>Cookie Settings</b> Allow storing of cookies Delete cookies on close Match domain exactly Filter tracking cookies <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! Search Keresés Confirmation Megerősítés Are you sure to delete all cookies on your computer? Biztosan töröljem az összes elmentett sütit? Secure only Csak a biztonságos All connections Összes kapcsolat Session cookie Munkamenet süti Remove cookie Süti eltávolítása Add to whitelist Hozzáadás az engedélyezettek listájához Add to blacklist Hozzáadás a tiltottak listájához DownloadFileHelper Save file as... Fájl mentése másként... NoNameDownload Névtelen letöltés DownloadItem Remaining time unavailable A hátralévő időt jelenleg nem lehet meghatározni Error: Cannot write to file! Hiba: Nem lehet felülírni vagy létrehozni a fájlt! Done - %1 Elkészült! - %1 Cancelled Megszakítva few seconds néhány másodperc %n seconds %n minutes %n hours Unknown speed Ismeretlen sebesség kB/s MB/s GB/s Unknown size Ismeretlen méret %2 - unknown size (%3) %2 - ismeretlen méret (%3) Remaining %1 - %2 of %3 (%4) Fennmaradó idő: %1 Letöltési méret: %2 / %3 (%4 sebességgel) Cancelled - %1 Megszakítva - %1 Delete file Fájl törlése Do you want to also delete dowloaded file? A letöltött fájl is törölve legyen? Open File Fájl megnyitása Open Folder Könyvtár (mappa) megnyitása Go to Download Page Ugrás a letöltési oldalra Copy Download Link A letöltés internetcímének kimásolása Cancel downloading Letöltés megszakítása Remove Error Hiba Not found Nem található Sorry, the file %1 was not found! Sajnos, ez a fájl: %1 nem található! Error: Hiba: DownloadManager Download Manager Letöltéskezelő Clear Kiürítés %1% of %2 files (%3) %4 remaining %2 fájlból %1% kész (sebesség: %3), fennmaradó idő: %4 %1% - Download Manager Download Finished A letöltés befejeződött All files have been successfully downloaded. Minden fájl sikeresen letöltve. Warning Figyelmeztetés Are you sure to quit? All uncompleted downloads will be cancelled! A program bezárásával az összes még be nem fejeződött letöltés törlődik! Biztosan kilép? DownloadOptionsDialog Opening Megnyitás Copy download link You have chosen to open Megnyitásra kijelölve which is a: amely: What should QupZilla do with this file? Mit csináljon a QupZilla ezzel a fájllal? Open... Megnyitás... Save File Fájl mentése Download with External Manager from: innen: Opening %1 %1 megnyitása Download link copied. EditSearchEngine Name: Név: Url: Internetcím: Shortcut: Használandó rövidítés: Icon: Ikon: <b>Note: </b>%s in url or post data represent searched string Post Data: Change... FileSchemeReply No Error Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. FtpDownloader Cancelled! FtpSchemeReply Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. Unknown command HTML5PermissionsDialog HTML5 Permissions Notifications Site Behaviour Remove Geolocation Allow Deny HTML5PermissionsNotification Remember Allow Deny this site Allow %1 to show desktop notifications? Allow %1 to locate your position? History No Named Page January February March April May June July August September October November December HistoryManager History Előzmények Delete Törlés Clear All History Minden előzmény törlése Optimize Database Adatbázis optimizálása Confirmation Megerősítés Are you sure to delete all history? Minden előzmény törölve legyen? HistoryModel Title Address Visit Date Visit Count Today This Week This Month HistorySideBar Search... Keresés... HistoryView Open link in current tab Open link in new tab Copy title Copy address Remove IconChooser Choose icon... From file Image (.png, .jpg, .jpeg, .gif) Choose file... From database Site Url: Image files JsOptions JavaScript Options Allow JavaScript to: Close windows Open popup windows Change window size Hide menu bar Hide status bar Hide tool bar Access clipboard LicenseViewer License Viewer Licensz megtekintése LocationBar Enter URL address or search on %1 Internetcím megadása vagy keresés itt: %1 Paste And &Go Beillesztés és &ugrás Clear All Összes törlése .co.uk Append domain name on ALT + Enter = Should be different for every country .hu Show information about this page Információk megjelenítése erről az oldalról LocationCompleterView Switch to tab MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? Always perform this check when starting QupZilla. Default Browser QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. MasterPasswordDialog Encrypted DataBase Settings Set/Change Master Password... Clear Master Password... This backend does not work without a master password. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Current Password: New Password: Confirm Password: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. Warning! You entered a wrong password! New/Confirm password fields do not match! Some data has not been decrypted. The master password was not cleared! Are you sure to clear master password and decrypt data? NavigationBar No Named Page Névtelen lap Back Vissza Forward Előre Home Kezdőoldal New Tab Új fül Main Menu Főmenü Exit Fullscreen Kilépés teljes képernyős módból Clear history Előzmények törlése NetworkManager SSL Certificate Error! SSL Tanúsítvány hiba! The page you are trying to access has the following errors in the SSL certificate: A megnyitandó oldal SSL tanúsítványában a következő hiba található: <b>Organization: </b> <b>Szervezet: </b> <b>Domain Name: </b> <b>Domain név: </b> <b>Expiration Date: </b> <b>Lejárat ideje: </b> <b>Error: </b> <b>Hiba: </b> Would you like to make an exception for this certificate? A böngésző hagyja figyelmen kívül ezt a tanúsítványt? Authorisation required Username: Felhasználónév: Password: Jelszó: Save username and password on this site Bejelentkezési adatok mentése ehhez az oldalhoz A username and password are being requested by %1. The site says: "%2" %1 a felhasználónevet és a jelszót kéri. Az oldal szerint: "%2" FTP authorisation required Login anonymously A username and password are being requested by %1:%2. Proxy authorisation required Remember username and password for this proxy. A username and password are being requested by proxy %1. %1 proxy a felhasználónevet és a jelszót kéri. PageScreen Page Screen Képernyőkép Format: Location: Browse... Save as %1 Choose location... File '%1' already exists. Do you want to overwrite it? File already exists PluginsList Application Extensions Programbővítmények Allow Application Extensions to be loaded Programbővítmények használatának engedélyezése Settings Beállítások WebKit Plugins WebKit bővítmények <b>Click To Flash Plugin</b> <b>Click To Flash Plugin</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. A Click To Flash bővítmény csak akkor engedi elindulni a Flash tartalmakat, ha a Flash play ikonra kattintunk. Whitelist Kivételek Add Hozzáadás Remove Törlés Allow Click To Flash A Click To Flash engedélyezése PluginsManager Add site to whitelist Server without http:// (ex. youtube.com) Error! Cannot load extension! PopupWebView Inspect Element PopupWindow File &Save Page As... Save Page Screen Send Link... &Print... Close Edit &Undo &Redo &Cut C&opy &Paste Select All Find View &Stop &Reload Zoom &In Zoom &Out Reset &Page Source %1 - QupZilla %1 - QupZilla Preferences Preferences Beállítások QupZilla QupZilla General Általános Appearance Kinézet Tabs Fülek Browsing Böngészés Fonts Betűtípusok Keyboard Shortcuts Downloads Letöltések Password Manager Jelszókezelő Privacy Biztonság Notifications Értesítések Extensions Kiegészítők Other Egyéb Use current A jelenlegi oldal használata Note: You cannot delete active profile. Figyelmeztetés: Használatban lévő profil nem törölhető. Create New Új készítése Delete Törlés <b>Launching</b> <b>Elindulás</b> After launch: Elinduláskor: Open blank page Üres oldal nyitása Open homepage Kezdőoldal megnyitása Open speed dial Gyorsindító megnyitása Restore session Bezáráskor mentett oldalak visszaállítása Homepage: Kezdőoldal: On new tab: Új fülön: Open blank tab Üres lap nyitása Open other page... Más oldal megnyitása... <b>Profiles</b> <b>Profilok</b> Startup profile: Profil indításkor: Check for updates on start Programfrissítések keresése elinduláskor Active profile: Használatban lévő profil: In order to change language, you must restart browser. Az új nyelvi beállítások érvényesítéséhez újra kell indítani a böngészőt. <b>Language</b> <b>Nyelv</b> Available translations: Elérhető nyelvi fordítások: Don't load tabs until selected Csak a lapfülre kattintáskor töltse be az oldalt Check to see if QupZilla is the default browser on startup Check Now Themes Témák Advanced options Részletesebb beállítás <b>Browser Window</b> <b>Böngészőablak</b> Show StatusBar on start Állapotsor megjelenítése elinduláskor Show Bookmarks ToolBar on start Könyvjelzők eszköztár megjelenítése elinduláskor Show Navigation ToolBar on start Vezérlőelemek megjelenítése elinduláskor <b>Navigation ToolBar</b> <b>Vezérlőelemek</b> Show Home button Kezdőoldal gomb megjelenítése Show Back / Forward buttons Vissza/Előre gombok megjelenítése <b>Background<b/> <b>Háttér<b/> Use transparent background Áttetsző háttér használata Show web search bar Show Add Tab button Új fül gomb megjelenítése Show Reload / Stop buttons Tabs behaviour Show tab previews Make tab previews animated Hide tabs when there is only one tab Fülek elrejtése, amikor csak egy lap van nyitva Activate last tab when closing active tab Az előzőleg használt fül előtérbe hozása a jelenlegi fül bezárásakor Open new tabs after active tab Új fül megnyitása az éppen aktuális mellett Open new empty tabs after active tab Automatically switch to newly opened tab Don't quit upon closing last tab Nincs kilépés az utolsó fül bezárásakor Ask when closing multiple tabs Megerősítés kérése több fül bezárásakor Closed tabs list instead of opened in tab bar A bezárt fülek listája a megnyitottak helyett a fülsorban Address Bar behaviour Suggest when typing into address bar: History and Bookmarks History Bookmarks Nothing Press "Shift" to not switch the tab but load the url in the current tab. Propose to switch tab if completed url is already loaded. Always show go icon Select all text by double clicking in address bar A címsorban lévő szöveg kijelölése dupla kattintással Select all text by clicking in address bar A címsorban lévő szöveg kijelölése a szövegre kattintva Search with Default Engine Show loading progress in address bar Fill Bottom Top Custom color: Select color ... ... Reset Web Configuration Webes beállítások Allow Netscape Plugins (Flash plugin) Netscape bővítmények engedélyezése (Flash plugin) Allow JavaScript Javascriptek engedélyezése Allow JAVA Java engedélyezése Allow DNS Prefetch DNS előtöltés engedélyezése Enable XSS Auditing try to detect possible XSS attacks when executing javascript XSS ellenőrzés bekapcsolása Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Háttérelemek nyomtatása Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Linkek kiemelése az adott oldalon Animated scrolling Enable caret browsing Enable spatial navigation Zoom text only Csak a szövegméret változtatása Mouse wheel scrolls Egérkerék görgetés lines on page sor egy oldalon Default zoom on pages: Alap nagyítási méret az oldalakon: Local Storage Helyi adattárhely Maximum Maximum 50 MB 50 MB 1 1 Maximum pages in cache: Oldalak maximális száma a gyorsítótárban: Allow storing network cache on disk Engedélyezem a hálózati gyorsítótárazást a merevlemezen Store cache in: Allow saving history Előzmények tárolásának engedélyezése Delete history on close Előzmények törlése a böngésző bezárásakor Allow local storage of HTML5 web content HTML5 internetes tartalom tárolásának engedélyezése Delete locally stored HTML5 web content on close Eltárolt HTML5 internetes tartalom törlése a böngésző bezárásakor Delete now Törlés most Proxy Configuration Proxy beállítások Proxy Auto-Config (.pac) file Reload HTTP HTTP SOCKS5 SOCKS5 Port: Port: Username: Felhasználónév: Password: Jelszó: Don't use on: Nincs használva itt: Manual configuration Egyéni beállítás System proxy configuration A rendszer proxy beállításainak használata Do not use proxy Ne legyen proxy használva <b>Exceptions</b> <b>Kivételek</b> Server: Szerver: Use different proxy for https connection Más proxy használata https kapcsolathoz Use script for automatic configuration: <b>Font Families</b> <b>Betűtípusok</b> Standard Általános típusok Fixed Rögzített méretű (szélességű) betűk Serif Talpas betűk Sans Serif Talp nélküli betűk Cursive Folyóírásos betűk Fantasy Fantáziabetűk <b>Font Sizes</b> <b>Betűméret</b> Fixed Font Size Nem változó betűméret Default Font Size Alapértelmezett betűméret Minimum Font Size Minimális betűméret Minimum Logical Font Size Minimális logikai betűméret <b>Shortcuts</b> Switch to tabs with Alt + number of tab Load speed dials with Ctrl + number of speed dial Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>Letöltések mentésének helye</b> Ask everytime for download location Minden letöltésnél kérdezzen rá a mentési helyre Use defined location: Egyéni mentési hely megadása: <b>Download Options</b> <b>Letöltési beállítások</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Eredeti rendszer párbeszédablak használata (SSL típusú biztonsági kapcsolatnál problémákat okozhat) Close download manager when downloading finishes Letöltéskezelő bezárása a letöltések befejeződése után <b>External download manager</b> <b>Külső letöltéskezelő</b> Use external download manager Külső letöltéskezelő használata Executable: Indítófájl: Arguments: Programutasításokat jelölő karakterek: Leave blank if unsure <b>%d</b> will be replaced with URL to be downloaded <b>AutoFill options</b> <b>Beállítások az önműködő szövegmező-kitöltéshez</b> Allow saving passwords from sites Bejelentkezési adatok (felhasználónév, jelszó) mentésének engedélyezése Send Referer header to servers A hivatkozások kiindulási helyének közlése a szerverrel <b>Cookies</b> <b>Sütik</b> Send Do Not Track header to servers "A felhasználó nyomon követésének letiltása" parancs küldése a szerver felé <b>Other</b> <b>Egyéb</b> Manage CA certificates Certificate Manager <b>SSL Certificates</b> <b>SSL Tanúsítványok</b> <b>JavaScript</b> Manage JavaScript privacy options JavaScript options Cookies Manager Sütikezelő Manage Cookies <b>HTML5 Permissions</b> Manage HTML5 permissions HTML5 Permissions <b>Notifications</b> <b>Értesítések</b> Use OSD Notifications A képernyőn megjelenő értesítések engedélyezése Use Native System Notifications (Linux only) Eredeti rendszer értesítők használata (csak Linux-on) Do not use Notifications Ne látszódjanak az értesítések Expiration timeout: Eddig legyen a képernyőn: seconds másodperc <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Megjegyzés: </b>A képernyőn megjelenő értesítések ablakát húzással bárhova el lehet helyezni. StyleSheet automatically loaded with all websites: Minden weboldal ebben a stílusban jelenjen meg: Languages Nyelvek <b>Preferred language for web sites</b> <b>A weboldalak megjelenítéséhez előnybe részesített nyelv</b> <b>Change browser identification</b> User Agent Manager Default Set as default OSD Notification Képernyőn megjelenő értesítés Drag it on the screen to place it where you want. Az értesítési ablakot húzással bárhova helyezheti. Choose download location... A letöltések mentési helyének megadása... Choose stylesheet location... Weboldal megjelenítési stílus helyének megadása... Deleted Törölve Choose executable location... Indítófájl helyének megadása... Choose cache path... New Profile Új profil Enter the new profile's name: Az új profil neve: Error! Hiba! This profile already exists! Ilyen profil már van! Cannot create profile directory! Nem lehet létrehozni a profilkönyvtárat! Confirmation Megerősítés Are you sure to permanently delete "%1" profile? This action cannot be undone! Ez a profil: "%1" véglegesen törlésre kerül? Ezt a törlést nem lehet visszafordítani! Select Color QObject Native System Notification Alapértelmezett rendszerértesítés Save file as... The file is not an OpenSearch 1.1 file. Ez a fájl nem egy OpenSearch 1.1 fájl. <not set in certificate> <nincs beállítva a tanúsítványban> Unknown size KB MB GB Executable: Arguments: Cannot start external program Cannot start external program! %1 QtWin Open new tab Új fül nyitása Opens a new tab if browser is running Új fület nyit, ha a böngésző fut Open new window Új ablak nyitása Opens a new window if browser is running Új ablak nyílik, ha a böngésző fut Open download manager Letöltéskezelő megnyitása Opens a download manager if browser is running A letöltéskezelő megnyitása, ha a böngésző fut QupZilla QupZilla QupZilla Private Browsing Enabled Privát Böngészés bekapcsolva IP Address of current page Jelenlegi lap IP címe &About QupZilla &A QupZilláról Pr&eferences Be&állítások Quit Kilépés &File &Fájl &New Window &Új ablak New Tab Új fül Open Location Hely megnyitása Open &File... Close Tab Fül bezárása Close Window Ablak bezárása &Save Page As... &Az oldal mentése mint... Save Page Screen Képernyőkép mentése Send Link... Hivatkozás küldése... &Print... &Nyomtatás... Import bookmarks... Könyvjelzők betöltése... &Edit &Szerkesztés &Undo &Visszavonás &Redo &Mégis &Cut &Kivágás C&opy M&ásolás &Paste &Beillesztés Select &All Az összes &kijelölése &Find &Keresés &View &Megjelenési nézet &Navigation Toolbar &Vezérlőelemek &Bookmarks Toolbar &Könyvjelző eszköztár Sta&tus Bar Áll&apotsor &Menu Bar &Menüsor &Tabs on Top &Fullscreen &Teljes képernyős mód &Stop &Leállítás &Reload &Betöltés megint Character &Encoding Karakter&kódolás Enable &Caret Browsing Toolbars Eszköztárak Sidebars Oldalsávok Zoom &In Nagyít&ás Zoom &Out Kicsinyí&tés Reset Alapértelmezett nagyítási arány visszaállítása &Page Source &Az oldal forráskódjának megtekintése Hi&story El&őzmények &Back &Vissza &Forward &Előre &Home &Kezdőoldal Show &All History Minden &előzmény megtekintése Closed Tabs Nemrég bezárt fülek Recently Visited Mostanában felkeresett oldalak Most Visited Legtöbbet látogatott oldalak &Bookmarks &Könyvjelzők Bookmark &This Page Oldal &mentése a könyvjelzőkhöz Bookmark &All Tabs Összes &jelenlegi fül mentése a könyvjelzőkhöz Organize &Bookmarks Könyvjelzők &rendezése &Tools &Eszközök &Web Search &Internetes keresés Page &Info Az oldal &adatai &Download Manager &Letöltéskezelő &Cookies Manager &Sütikezelő &AdBlock &Hirdetésszűrő RSS &Reader RSS &olvasó Web In&spector Weboldal el&emeinek vizsgálata Clear Recent &History Mai előzmények &törlése New &Private Window &Help &Segítség About &Qt A Qt-r&ól Information about application Információk a böngészőről Configuration Information Összetevők adatai Report &Issue Javaslat, &probléma jelzése Restore &Closed Tab Nemrég &bezárt fül visszaállítása (Private Browsing) (Privát Böngészés) Empty Üres Restore All Closed Tabs Az összes bezárt fül visszaállítása Clear list Lista törlése Other Egyéb %1 - QupZilla %1 - QupZilla HTML files HTML fájlok Image files Képfájlok Text files Szövegfájlok All files Minden fájl Open file... Fájl megnyitása... QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Van még %1 nyitott fül és a munkamenet még nem lett elmentve. Biztosan ki szeretne lépni a böngészőből? Don't ask again Ne kérdezze ismét There are still open tabs Vannak még bezáratlan fülek QupZillaSchemeReply No Error Nincs hiba Not Found Nem található Report Issue Javaslat, probléma jelzése If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Ha gondok adódnak a böngészővel, kérjük, elsőként próbálja meg letiltani a bővítményeket. <br/>Ha így sem javul a dolog, akkor töltse ki ezt a kérdőívet: Your E-mail Saját e-mail cím Issue type Javaslat, probléma típusa Issue description Javaslat, probléma leírása Send Küldés E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. E-mail cím nem kötelező, de megadható<br/><b>Megjegyzés: </b>Kérjük olvassa el, hogyan kell hibajelentést készíteni, először is itt: <a>%1</a> . Please fill out all required fields! Kérjük minden szükséges mezőt töltsön ki! Start Page Kezdőoldal Search on Web Search results provided by DuckDuckGo About QupZilla A QupZilláról <h1>Private Browsing</h1> Information about version Verzióinformációk Copyright Szerzői jog Version Változatszám WebKit version Webkit változatszám Main developer Fő fejlesztő Contributors Közreműködők Translators Nyelvi fordítók Speed Dial Gyorsindító Add New Page Új oldal hozzáadása Edit Szerkesztés Remove Törlés Reload Újratöltés Are you sure to remove this speed dial? Load title from page Oldal elnevezésének betöltése az oldalról Url Internetcím Title Az oldal neve Apply Alkalmaz Close Bezárás New Page Új oldal Speed Dial settings A gyorsindító beállításai Placement: Elhelyezés: Auto Középre helyezés eredeti méretben Cover Háttér kitöltése Fit Háttér méretéhez igazítás Fit Width Szélességhez igazítás Fit Height Magassághoz igazítás Use background image Háttérkép használata Select image Képfájl kiválasztása Maximum pages in a row: Egy sorban lévő lapok maximális száma: Change size of pages: Lapok méretének megváltoztatása: Center speed dials Restore Session Oops, QupZilla crashed. We apologize for this. Would you like to restore the last saved state? Try removing one or more tabs that you think cause troubles Or you can start completely new session Configuration Information Összetevők adatai This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Ez az oldal információkat tartalmaz a böngésző jelenlegi beállításairól - amelyet a hibaelhárításhoz használhatunk. Kérjük, ezeket az információkat is helyezze bele a hibabejelentésébe. Browser Identification Böngésző azonosítás Paths Elérési utak Build Configuration Verzió összetevők Preferences Beállítások Option Beállítások Value Érték Extensions Bővítmények Name Név Author Szerző Description Leírás Application version Böngésző változatszám Qt version Qt változatszám Build time Elkészítés ideje Platform Operációs rendszer Profile Profil Settings Beállítások Saved session Elmentett munkamenet Pinned tabs Megjelölt fülek Data Adatok Themes Témák Translations Nyelvi fordítások Disabled Kikapcsolva <b>Enabled</b> <b>Engedélyezve</b> Debug build Fejlesztői változat WebGL support WebGL támogatás Windows 7 API Windows 7 API KDE integration KDE beillesztés Portable build Hordozható változat No available extensions. Nincs elérhető bővítmény. RSSManager RSS Reader RSS olvasó Empty Üres Add feed Híroldal hozzáadása Edit feed Híroldal szerkesztése Delete feed Híroldal törlése Optimize Database Adatbázis optimizálása Reload Újratöltés News Hírek Loading... Betöltés... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Nincsenek még RSS híroldalak.</br> RSS ikonnal jelölt oldalcímekről hozzá lehet adni híroldalakat. Add new feed Híroldal hozzáadása Please enter URL of new feed: Híroldal internetcíme: New feed Új híroldal Fill title and URL of a feed: Híroldal nevének és internetcímének kitöltése: Feed title: Híroldal neve: Feed URL: Híroldal internetcíme: Edit RSS Feed Híroldal szerkesztése Open link in current tab Hivatkozás megnyitása a jelenlegi fülön Open link in new tab Hivatkozás megnyitása új fülön Error in fetching feed Hiba a híroldal elérésében RSS feed duplicated Híroldal duplázódott You already have this feed. Ilyen híroldal már van. RSSNotification Add this feed into Add RSS feed <b>"%1"</b> Internal Reader Other... Liferea not running Liferea must be running in order to add new feed. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Add feed into other application RSSWidget Add RSS Feeds from this site RSS hozzáadása erről a lapról Untitled feed Cím nélküli RSS feed Add Hozzáadás RecoveryWidget Start New Session Restore Window %1 RegisterQAppAssociation Warning! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) RssIcon Add RSS from this page... SSLManager Certificate Manager CA Authorities Certificates CA Hitelesítési Tanúsítványok Show info Információk mutatása This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Ez egy lista a CA Hitelesítési Tanúsítványokról, amelyek a rendszermappában, illetve a felhasználó által megadott mappákban vannak eltárolva. Local Certificates Helyben tárolt tanúsítványok Import Remove Eltávolítás This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Ez egy lista a helyben tárolt tanúsítványokról, amelyek a felhasználói profilban vannak eltárolva. A lista tartalmazza a kivételekhez adott tanúsítványokat is. Settings Beállítások Add Hozzáadás If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Ha a CA Hitelesítési Tanúsítványok nem töltődnének be automatikusan a rendszermappából, akkor egyénileg is megadható a tanúsítványok elérési útja. <b>NOTE:</b> Setting this option is a high security risk! <b>MEGJEGYZÉS:</b> Ennek az opciónak a beállítása magas biztonsági kockázatot jelent! Ignore all SSL Warnings Az összes SSL figyelmeztetés figyelmen kívül hagyása All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Az összes tanúsítvány .crt utótagra kell végződjön. Tanúsítványok elérési útjának megváltoztatása esetén, újra kell indítani a böngészőt, hogy a változtatások érvénybe lépjenek. Choose path... Elérési út megadása... Import certificate... Certificate Informations Tanúsítvány adatok SearchEnginesDialog Manage Search Engines Internetes keresők kezelése Add... Hozzáadás... Remove Törlés Edit Szerkesztés Set as default Up Fel Down Le Search Engine Internetes kereső Shortcut Használandó rövidítés Defaults Alapértelmezések Add Search Engine Internetes kereső hozzáadása Remove Engine You can't remove the default search engine.<br>Set a different engine as default before removing %1. Edit Search Engine Internetes kereső szerkesztése SearchEnginesManager Search Engine Added Internetes kereső hozzáadva Search Engine "%1" has been successfully added. Ez a kereső: %1 sikeresen hozzáadva. Search Engine is not valid! Ez a kereső érvénytelen! Error HibaHiba Error while adding Search Engine <br><b>Error Message: </b> %1 Hiba keletkezett a kereső hozzáadásakor <br><b>Hibaüzenet: </b> %1 SearchToolBar No results found. Nincs eredménye a keresésnek. SearchToolbar Search: Keresés: Search... Keresés... Highlight Kiemelés Case sensitive Nagy- és kisbetűérzékeny SideBar Bookmarks Könyvjelzők History Előzmények SiteInfo Site Info Weboldal adatai General Általános Media Média Databases Adatbázisok Security Biztonság Size: Méret: Site address: Oldal címe: Encoding: Kódolás: Meta tags of site: Metatagok: Tag Tag Value Érték <b>Security information</b> <b>Biztonsági információ</b> Details Részletek Image Kép Image address Kép címe <b>Preview</b> <b>Előnézet</b> <b>Database details</b> <b>Adatbázis részletei</b> Name: Név: Path: Elérési út: <database not selected> <nincs kiválasztva adatbázis> <not set in certificate> <nincs beállítva a tanúsítványban> No databases are used by this page. Ez az oldal nem használja egyik adatbázist sem. <b>Connection is Encrypted.</b> <b>Kapcsolat titkosítva.</b> <b>Your connection to this page is secured with this certificate: </b> <b>A kapcsolat ezzel az oldallal biztosítva van a következő tanúsítvánnyal:</b> <b>Connection Not Encrypted.</b> <b>A kapcsolat nincs titkosítva.</b> <b>Your connection to this page is not secured!</b> <b>A kapcsolat ezzel az oldallal nem biztonságos!</b> Copy Image Location Kép helyének kimásolása Copy Image Name Kép nevének kimásolása Save Image to Disk Kép mentése Error! Hiba! This preview is not available! Nem lehet megjeleníteni az előnézetet! Save image... Kép mentése... Cannot write to file! Nem lehet létrehozni a fájlt! Preview not available Nem lehet megjeleníteni az előnézetet SiteInfoWidget More... Továbbiak... Your connection to this site is <b>secured</b>. A kapcsolat ezzel a weboldallal <b>titkosított</b>. Your connection to this site is <b>unsecured</b>. A kapcsolat ezzel a weboldallal <b>nem titkosított</b>. This is your <b>%1</b> visit of this site. A Qupzillával ennyiszer lett megtekintve ez az oldal: <b>%1</b>. You have <b>never</b> visited this site before. Ez az oldal <b>még nem lett megtekintve</b> ebben a böngészőben. first első second második third harmadik SourceViewer Source of Forráskód File Fájl Load in page Save as... Mentés, mint... Close Bezárás Edit Szerkesztés Undo Visszavonás Redo Mégis Cut Kivágás Copy Másolás Paste Beillesztés Select All Az összes kijelölése Find Keres Go to Line... Ugrás egy sorhoz... View Nézet Reload Betöltés ismét Editable Szerkeszthető Word Wrap Sortörés Source loaded in page Cannot load in page. Page has been closed. Save file... Fájl mentése... Error! Hiba! Cannot write to file! Nem lehet létrehozni a fájlt! Error writing to file Fájlírási hiba Source successfully saved Forráskód sikeresen mentve Source reloaded Forráskód újratöltve Cannot reload source. Page has been closed. Nem lehet újra betölteni a forráskódot. Az oldal bezáródott. Editable changed A szerkeszthető megváltoztatásra került Word Wrap changed A sortörés megváltoztatásra került Enter line number Sor számának megadása SourceViewerSearch Search: Keresés: Search... Keresés... Whole words SpeedDial Image files Képfájlok Select image... Kép kiválasztása... Unable to load Nem lehet betölteni SpellCheckDialog SpellCheck <b>Dictionary path</b> Change... <b>User dictionary</b> Add Remove Using Hunspell library Choose dictionary path... Add new word... Add new word: Speller No suggestions Add to dictionary Settings SqueezeLabelV2 Copy Másolás SslErrorDialog SSL Certificate Error! Only for this session TabBar &New tab &Új fül &Stop Tab &Fül leállítása &Reload Tab &Fül újratöltése &Duplicate Tab &Nyisd meg ugyanezt az oldalt egy új fülön D&etach Tab Un&pin Tab Fü&l megjelölésének törlése &Pin Tab &Fül megjelölése Re&load All Tabs Ös&szes fül újra betöltése &Bookmark This Tab &Oldal mentése a könyvjelzőkhöz Bookmark &All Tabs Összes &jelenlegi fül mentése a könyvjelzőkhöz Close Ot&her Tabs A többi f&ül bezárása Cl&ose Be&zárás Reloa&d All Tabs Össze&s fül újra betöltése Restore &Closed Tab Nemrég &bezárt fül visszaállítása Close Tabs Do you really want to close other tabs? TabWidget New Tab Új fül List of tabs Fülek listája Loading... Betöltés... No Named Page Névtelen lap Currently you have %1 opened tabs Jelenleg %1 fül van megnyitva New tab Új fül Empty Üres Restore All Closed Tabs Az összes bezárt fül visszaállítása Clear list Lista törlése TabbedWebView Loading... Betöltés... %1 - QupZilla %1 - QupZilla Inspect Element Elem vizsgálata ThemeManager <b>Name:</b> <b>Név:</b> <b>Author:</b> <b>Szerző:</b> <b>Description:</b> <b>Leírás:</b> License Licensz ToolButton Stop Leállítás Reload Betöltés ismét Updater Update available Frissítés érhető el New version of QupZilla is ready to download. Letölthető a QupZilla újabb változata. Update Frissítés UserAgentDialog User Agent Manager Change global User Agent Use different User Agents for specified sites Site User Agent Add Remove Edit Add new site Edit site Site domain: User Agent: WebInspectorDockWidget Web Inspector Weboldal elemeinek vizsgálata WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? Remember my choice for this protocol External Protocol Request To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Confirm form resubmission Űrlapadatok ismételt elküldésének megerősítése Select files to upload... Feltölteni kívánt fájlok kiválasztása... Server refused the connection A szerver visszautasította a kapcsolatot Server closed the connection A szerver bezárta a kapcsolatot Server not found A szerver nem található Connection timed out Kapcsolódási idő túllépve Untrusted connection Nem megbízható kapcsolat Temporary network failure Ideiglenes hálózati hiba Proxy connection refused Proxy kapcsolat elutasítva Proxy server not found A proxy szerver nem található Proxy connection timed out Proxy kapcsolódási idő túllépve Proxy authentication required Proxy hitelesítés szükséges Content not found Tartalom nem található Unknown network error Nem beazonosítható hálózati hiba AdBlocked Content A Hirdetésszűrő által blokkolt tartalom Blocked by <i>%1</i> Content Access Denied Tartalom elérése nem engedélyezett Error code %1 %1 hibakód Failed loading page Nem sikerült betölteni az oldalt QupZilla can't load page. QupZilla can't load page from %1. A QupZilla nem tudja betölteni az oldalt innen: %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com A beírt internetcím ellenőrzése szükséges, lehet, hogy rosszul lett begépelve If you are unable to load any pages, check your computer's network connection. Ha semmilyen weboldalt nem lehet megnyitni, lehet, hogy megszakadt az internetkapcsolat. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Ha a számítógép vagy a hálózat proxyt vagy tűzfalat használ, engedélyezni kell az internetelérést a QupZilla számára. Try Again Ismételt próbálkozás JavaScript alert Javascript figyelmeztetés Prevent this page from creating additional dialogs Ne jelenjenek meg további párbeszédablakok ezen az oldalon Choose file... Fájl megadása... Cannot read data from <b>%1</b>. Upload was cancelled! Cannot read file! WebSearchBar Manage Search Engines Internetes keresők kezelése Add %1 ... %1 hozzáadása... Paste And &Search Beilleszt és &keres Clear All Összes törlése Show suggestions Search when engine changed WebView No Named Page Névtelen lap Create Search Engine Internetes kereső adatainak megadása Cut Copy Paste Select All Default Left to Right Right to Left Bold Italic Underline &Reload &Betöltés megint S&top L&eállítás Delete &Back &Vissza &Forward &Előre This frame Ez a keret Show &only this frame Csak &ez a keret legyen látható Show this frame in new &tab Nyisd meg ezt a keretet új &fülön Print frame Keret kinyomtatása Zoom &in Nagyít&ás &Zoom out &Kicsinyítés Reset Alapértelmezett nagyítási arány visszaállítása Show so&urce of frame A keret fo&rráskódjának megtekintése Book&mark page Olda&l mentése a Könyvjelzőkhöz &Save page as... &Az oldal mentése mint... &Copy page link &Az oldal internetcímének kimásolása Send page link... Az oldal internetcímének elküldése... &Print page &Az oldal kinyomtatása Select &all Az összes &kijelölése Validate page Oldal érvényesítése Show so&urce code A keret fo&rráskódjának megtekintése Show info ab&out site Információk megjelenítése er&ről az oldalról Open link in new &tab Hivatkozás megnyitása új &fülön Open link in new &window Hivatkozás megnyitása új &ablakban B&ookmark link H&ivatkozás felvétele a Könyvjelzőkhöz &Save link as... &Hivatkozás mentése mint... Send link... Hivatkozás küldése... &Copy link address &A hivatkozás címének másolása Show i&mage Kép m&utatása Copy im&age Kép másol&ása Copy image ad&dress A kép címének ki&másolása &Save image as... &A kép mentése mint... Send image... Kép küldése... Send text... Szöveg küldése... Google Translate Google Fordító Dictionary Szótár Go to &web address Ugrás az &internetcímhez Search "%1 .." with %2 "%1 .." keresése ezzel: %2 Search with... Keresés ezzel... &Play &Lejátszás &Pause &Szünet Un&mute Ha&ng visszaállítása &Mute &Elnémítás &Copy Media Address &Média internetcímének kimásolása &Send Media Address &Média internetcímének elküldése Save Media To &Disk Média &mentése Check &Spelling Languages jsAlert Prevent this page from creating additional dialogs Ne jelenjenek meg további párbeszédablakok ezen az oldalon qupzilla-1.6.0/translations/id_ID.ts000066400000000000000000010466211226107126500174340ustar00rootroot00000000000000 AboutDialog About QupZilla Tentang QupZilla Authors Penulis Authors and Contributors Penulis dan Kontributor < About QupZilla < Tentang QupZilla <p><b>Application version %1</b><br/> <p><b>Versi aplikasi %1</b><br/> <b>WebKit version %1</b></p> <b>Versi Webkit %1</b></p> <small>Build time: %1 </small></p> <small>Waktu pembangunan: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Pengembang utama:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Kontributor:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Penerjemah:</b><br/>%1</p> AcceptLanguage Preferred Languages Bahasa Utama Add... Tambah... Remove Hapus Up Naik Down Turun Personal [%1] Pribadi [%1] AdBlockAddSubscriptionDialog Add Subscription Tambah Langganan Title: Judul: Address: Alamat: Add new subscription to AdBlock: Tambahkan langganan baru ke AdBlock: AdBlockCustomList Custom Rules Aturan Khusus AdBlockDialog AdBlock Configuration Konfigurasi AdBlock Enable AdBlock Aktifkan AdBlock Search... Cari... Options Opsi AdBlock AdBlock Use only essential part of EasyList (for performance reasons) Add Rule Tambah aturan Remove Rule Hapus Aturan Add Subscription Tambah Langganan Remove Subscription Hapus Langganan Update Subscriptions Perbarui Langganan Learn about writing rules... Pelajari tentang penulisan aturan... AdBlockIcon AdBlock lets you block unwanted content on web pages AdBlock dapat membantu anda memblokir isi laman web yang tidak diinginkan Blocked popup window Jendela popup yang diblokir AdBlock blocked unwanted popup window. AdBlock telah memblokir jendela popup yang tidak diinginkan. AdBlock AdBlock Show AdBlock &Settings Tampilkan &Pengaturan AdBlock Disable on %1 Nonaktifkan di %1 Disable only on this page Nonaktifkan di halaman ini saja Blocked Popup Windows Jendela Popup Yang Diblokir %1 with (%2) %1 dengan (%2) No content blocked Isi tidak diblokir Blocked URL (AdBlock Rule) - click to edit rule URL diblokir (Aturan AdBlock) - klik untuk mengubah aturan AdBlockManager Do you want to add <b>%1</b> subscription? Anda ingin menambahkan <b>%1</b>? AdBlock Subscription Langganan AdBlock EasyList EasyList AdBlockTreeWidget Add Rule Tambah aturan Remove Rule Hapus Aturan Add Custom Rule Tambah Aturan Khusus Please write your rule here: Silakan tulis aturan anda di sini: %1 (recently updated) %1 (telah diperbarui) AddAcceptLanguage Add Language Tambah Bahasa Choose preferred language for web sites Pilih bahasa utama untuk situs web Personal definition: Definisi pribadi: AesInterface Warning! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. AutoFill Database (plaintext) Database (teks polos) Database (encrypted) Enter Master Password Permission is required, please enter Master Password: Warning! Entered password is wrong! This backend needs a master password to be set! QupZilla just switches to its default backend AutoFillManager Passwords are stored in: Kata kunci disimpan di: Change backend Backend options Passwords Sandi Server Server Username Nama user Password Sandi Import/Export Impor/Ekspor Show Passwords Tampilkan Sandi Edit Sunting Remove Hapus Remove All Hapus Semua Exceptions Pengecualian Import Passwords from File... Impor sandi dari Berkas... Export Passwords to File... Ekspor sandi ke Berkas... Search Cari Change backend... Change backend: Are you sure that you want to show all passwords? Anda yakin untuk menampilkan seluruh sandi? Hide Passwords Sembunyikan sandi Confirmation Konfirmasi Are you sure to delete all passwords on your computer? Anda yakin untuk menghapus seluruh sandi di komputer anda? Edit password Ubah sandi Change password: Ganti sandi: Choose file... Pilih berkas... Cannot read file! Tidak dapat membaca berkas! Successfully imported Impor sukses Error while importing! Kesalahan saat mengimpor! Cannot write to file! Tidak dapat menulis ke berkas! Successfully exported Ekspor sukses AutoFillNotification Update Perbarui Remember Ingat Never For This Site Tidak Untuk Situs Ini Not Now Tidak Sekarang on %1 pada %1 for <b>%1</b> untuk <b>%1</b> Do you want QupZilla to update saved password %1? Anda ingin QupZilla memperbarui penyimpanan kata kunci %1? Do you want QupZilla to remember the password %1 %2? Anda ingin QupZilla mengingat kata kunci %1 %2? AutoFillWidget Choose username to login Pilih nama pengguna untuk masuk Login Masuk Login as <b>%1</b> Masuk sebagai <b>%1</b> BookmarkIcon Bookmark this Page Bookmark Halaman ini Edit this bookmark Sunting bookmark ini BookmarksImportDialog Import Bookmarks Impor Bookmark <b>Import Bookmarks</b> <b>Impor Bookmark</b> From File Dari Berkas Internet Explorer Choose browser from which you want to import bookmarks: Pilih penjelajah yang ingin anda impor bookmarknya: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Catatan:</b> Saat ini hanya impor dari Berkas HTML dapat juga mengimpor map bookmark. Choose... Pilih... Try to fetch icons for all bookmarks (may take a while) Fetching icons, please wait... Mengambil icon, mohon tunggu... Title Judul Url Url Next Berikutnya Cancel Batal <b>Importing from %1</b> <b>Impor dari %1</b> Finish Selesai Please press Finish to complete importing process. Silakan tekan Selesai untuk mengakhiri proses impor. Error! Kesalahan! The file doesn't contain any bookmark. Berkas ini tidak mengandung bookmark. Choose directory... Pilih direktori... Choose file... Pilih berkas... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox menyimpan bookmarknya di database SQLite <b>places.sqlite</b>. Berkas ini biasanya berada di Please choose this file to begin importing bookmarks. Silakan pilih berkas ini untuk memulai mengimpor bookmark. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Google Chrome menyimpan bookmarknya di berkas teks <b>Bookmarks</b>. Berkas ini biasanya berada di Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera menyimpan bookmarknya di berkas teks <b>bookmarks.adr</b>. Berkas ini biasanya berada di You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Anda dapat mengimpor bookmark dari berbagai penjelajah yang mendukung pengeksporan HTML. Berkas ini biasanya memiliki akhiran Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Explorer menyimpan bookmarknya di map <b>Favorites</b>. Map ini biasanya berada di Please choose this folder to begin importing bookmarks. Silakan pilih map ini untuk memulai mengimpor bookmark. No Error Tiada Kesalahan Unable to open file. Tidak dapat membuka berkas. Cannot evaluate JSON code. Tidak dapat mengevaluasi kode JSON. File does not exist. Berkas tidak ada. Unable to open database. Is Firefox running? Tidak dapat membuka database. Apakah Firefox sedang berjalan? Directory does not exist. The directory does not contain any bookmarks. BookmarksManager Bookmarks Bookmark Optimize Database Optimasi Database Import Bookmarks Impor Bookmark Add Folder Tambah Map Title Judul Url Url Expand All Buka Semua Collapse All Tutup Semua Add new folder Tambah map baru Choose parent folder for new folder: Pilih map awal untuk map baru: Choose name for new bookmark folder: Pilih nama untuk map bookmark baru: Add new subfolder Tambah submap baru Choose name for new subfolder in bookmarks toolbar: Pilih nama untuk submap baru di toolbar bookmark: Rename Folder Ganti nama Map Choose name for folder: Pilih nama untuk map: Add Subfolder Tambah Submap Rename folder Ganti nama map Remove folder Hapus map Open link in current &tab Buka tautan di &tab ini Open link in &new tab Buka tautan di &tab baru Move bookmark to &folder Pindahkan bookmark ke &map Change icon Ubah ikon Rename bookmark Ganti nama bookmark Remove bookmark Hapus bookmark <b>Warning: </b>You already have bookmarked this page! <b>Peringatan: </b>Anda sudah membookmark halaman ini! Choose name and location of this bookmark. Pilih nama dan lokasi dari bookmark ini. Add New Bookmark Tambah Bookmark Baru Choose folder for bookmarks: Pilih folder untuk bookmark: Bookmark All Tabs Bookmark Seluruh Tab BookmarksModel Bookmarks In Menu Bookmark di Menu Bookmarks In ToolBar Bookmark di ToolBar Unsorted Bookmarks Unsorted Bookmark BookmarksSideBar Search... Cari... Open link in current &tab Buka tautan di &tab ini Open link in &new tab Buka tautan di &tab baru Copy address Salin alamat &Delete &Hapus BookmarksToolbar &Bookmark Current Page &Bookmark Halaman Ini Bookmark &All Tabs Bookmark &Seluruh Tab &Organize Bookmarks &Organisir Bookmark Show Most &Visited Tampilkan Yang &Dikunjungi Terbanyak Show Only Icons Hanya Tampilkan Icon &Hide Toolbar &Sembunyikan Toolbar Open bookmark Buka bookmark Open bookmark in new tab Buka bookmark di tab baru Move right Pindahkan ke kanan Move left Pindahkan ke kiri Edit bookmark Sunting bookmark Remove bookmark Hapus bookmark Edit bookmark: Sunting bookmark: Title: Judul: Url: Url: Edit Bookmark Sunting Bookmark Most visited Dikunjungi terbanyak Sites you visited the most Situs yang anda kunjungi terbanyak Empty Kosong BookmarksTree Bookmarks Bookmark New Folder... Map Baru... BookmarksWidget Add to Speed Dial Tambah ke Panggilan Cepat Save Simpan Name: Nama: Folder: Map: Remove from Speed Dial Hapus dari Panggilan Cepat Remove Hapus BrowsingLibrary Library Perpustakaan Search... Cari... History Sejarah Bookmarks Bookmark RSS RSS Database Optimized Database teroptimasi Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 Database berhasil dioptimasi.<br/><b>Ukuran Database Sebelumnya: </b>%1<br/><b>Ukuran Database Sekarang: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Diterbitkan Kepada<b> Common Name (CN): Nama Umum (CN): Organization (O): Organisasi (O): Organizational Unit (OU): Unit Organisasi (OU): Serial Number: Nomor Seri: <b>Issued By</b> <b>Diterbitkan Oleh</b> <b>Validity</b> <b>Validitas</b> Issued On: Diterbitkan Pada: Expires On: Kadaluarsa Pada: ClearPrivateData Clear Recent History Bersihkan Sejarah Terakhir Choose what you want to delete: Pilih mana yang akan anda hapus: Clear history Bersihkan sejarah Clear cache Bersihkan cache Clear icons Bersihkan icon <b>Clear Recent History</b> <b>Bersihkan Sejarah Terakhir</b> Earlier Today Hari Ini Week Minggu Month Bulan All Semua Clear web databases Bersihkan database web Clear local storage Bersihkan penyimpanan lokal Clear cookies Bersihkan cookie ClickToFlash Object blocked by ClickToFlash Obyek diblokir oleh Klik Untuk Flash Show more information about object Tampilkan informasi tambahan tentang obyek Delete object Hapus obyek Add %1 to whitelist Tambahkan %1 ke daftar putih Flash Object Obyek Flash <b>Attribute Name</b> <b>Nama Atribut</b> <b>Value</b> <b>Nilai</b> No more information available. Tiada informasi tambahan tersedia. CookieManager Cookies Cookie Stored Cookies Cookie Tersimpan Find: Cari: These cookies are stored on your computer: Cookie ini tersimpan di komputer anda: Server Server Cookie name Nama cookie Name: Nama: Value: Nilai: Server: Server: Path: Lokasi: Secure: Keamanan: Expiration: Kadaluarsa: <cookie not selected> <cookie tidak dipilih> Remove all cookies Hapus seluruh cookie Remove cookies Hapus cookie Cookie Filtering Penyaringan cookie <b>Cookie whitelist</b> <b>Daftar putih cookie</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Cookie dari server-server ini akan SELALU diterima (meskipun anda telah menonaktifkan penyimpanan cookie) Add Tambah Remove Hapus <b>Cookie blacklist</b> <b>Daftar hitam cookie</b> Cookies from these servers will NEVER be accepted Cookie dari server-server ini akan SELALU ditolak Settings Pengaturan <b>Cookie Settings</b> <b>Pengaturan cookie</b> Allow storing of cookies Ijinkan untuk menyimpan cookie Delete cookies on close Hapus cookie saat berhenti Match domain exactly Cocokkan domain Filter tracking cookies Saring cookie penelusuran <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! Search Cari Confirmation Konfirmasi Are you sure to delete all cookies on your computer? Anda yakin untuk menghapus seluruh cookie di komputer anda? Secure only Hanya yang aman All connections Seluruh koneksi Session cookie Cookie sesi Remove cookie Hapus cookie Add to whitelist Tambahkan ke daftar putih Add to blacklist Tambahkan ke daftar hitam DownloadFileHelper Save file as... Simpan berkas sebagai... NoNameDownload PengunduhanTanpaNama DownloadItem Remaining time unavailable Waktu tersisa tidak diketahui Error: Cannot write to file! Kesalahan: Tidak dapat menulis ke berkas! Done - %1 Selesai - %1 Cancelled Dibatalkan few seconds beberapa saat %n seconds %n minutes %n hours Unknown speed Kecepatan tidak diketahui kB/s MB/s GB/s Unknown size Ukuran tidak diketahui %2 - unknown size (%3) %2 - ukuran tidak diketahui (%3) Remaining %1 - %2 of %3 (%4) Tersisa %1 - %2 dari %3 (%4) Cancelled - %1 Dibatalkan - %1 Delete file Hapus berkas Do you want to also delete dowloaded file? Apa anda juga ingin menghapus berkas yang telah diunduh? Open File Buka Berkas Open Folder Buka Map Go to Download Page Buka Halaman Pengunduhan Copy Download Link Salin Tautan Pengunduhan Cancel downloading Pembatalan pengunduhan Remove Hapus Error Kesalahan Not found Tidak ditemukan Sorry, the file %1 was not found! Maaf, berkas %1 tidak ditemukan! Error: Kesalahan: DownloadManager Download Manager Manajer Pengunduhan Clear Bersihkan %1% of %2 files (%3) %4 remaining %1% dari %2 berkas (%3) %4 tersisa %1% - Download Manager %1% - Manajer Unduhan Download Finished Pengunduhan Selesai All files have been successfully downloaded. Seluruh berkas telah berhasil diunduh. Warning Peringatan Are you sure to quit? All uncompleted downloads will be cancelled! Anda yakin untuk berhenti? Seluruh pengunduhan yang belum selesai akan dibatalkan! DownloadOptionsDialog Opening Membuka Copy download link You have chosen to open Anda telah memilih untuk membuka which is a: yang berupa: What should QupZilla do with this file? Apa yang harus dilakukan QupZilla terhadap berkas ini? Open... Buka... Save File Simpan Berkas Download with External Manager Unduh menggunakan Program Eksternal from: dari: Opening %1 Membuka %1 Download link copied. EditSearchEngine Name: Nama: Url: Url: Shortcut: Shortcut: Icon: Icon: <b>Note: </b>%s in url or post data represent searched string Post Data: Change... Ubah... FileSchemeReply No Error Tiada Kesalahan Up to higher level directory Pindah ke direktori di atasnya Show hidden files Tampilkan berkas tersembunyi Name Nama Size Ukuran Last modified Terakhir diubah Index for %1 Indeks untuk %1 Folder is empty. Map kosong. FtpDownloader Cancelled! Batalkan! FtpSchemeReply Up to higher level directory Pindah ke direktori di atasnya Show hidden files Tampilkan berkas tersembunyi Name Nama Size Ukuran Last modified Terakhir diubah Index for %1 Indeks untuk %1 Folder is empty. Map kosong. Unknown command Perintah tidak dikenal HTML5PermissionsDialog HTML5 Permissions Perijinan HTML 5 Notifications Notifikasi Site Situs Behaviour Perilaku Remove Hapus Geolocation Geolokasi Allow Ijinkan Deny Tolak HTML5PermissionsNotification Remember Ingat Allow Ijinkan Deny Tolak this site situs ini Allow %1 to show desktop notifications? Ijinkan %1 untuk menampilkan notifikasi dekstop? Allow %1 to locate your position? Ijinkan %1 untuk melokalisir posisi anda? History No Named Page Halaman Tanpa Nama January Januari February Februari March Maret April April May Mei June Juni July Juli August Agustus September September October Oktober November November December Desember HistoryManager History Sejarah Delete Hapus Clear All History Bersihkan Seluruh Sejarah Optimize Database Optimasi Database Confirmation Konfirmasi Are you sure to delete all history? Anda yakin untuk menghapus seluruh sejarah? HistoryModel Title Judul Address Alamat Visit Date Tanggal Kunjungan Visit Count Jumlah Kunjungan Today Hari Ini This Week Minggu Ini This Month Bulan Ini HistorySideBar Search... Cari... HistoryView Open link in current tab Buka tautan di tab ini Open link in new tab Buka tautan di tab baru Copy title Salin judul Copy address Salin alamat Remove Hapus IconChooser Choose icon... Pilih icon... From file Dari berkas Image (.png, .jpg, .jpeg, .gif) Gambar (.png, .jpg, .jpeg, .gif) Choose file... Pilih berkas... From database Dari database Site Url: Url Situs: Image files Berkas gambar JsOptions JavaScript Options Opsi javascript Allow JavaScript to: Ijinkan javascript untuk: Close windows Menutup jendela Open popup windows Membuka jendela popup Change window size Mengubah ukuran jendela Hide menu bar Menyembunyikan panel menu Hide status bar Menyembunyikan panel status Hide tool bar Menyembunyikan panel peralatan Access clipboard Mengakses klipbor LicenseViewer License Viewer Penayang Lisensi LocationBar Enter URL address or search on %1 Masukkan URL alamat atau cari di %1 Paste And &Go Tempel dan &Tuju Clear All Bersihkan Semua .co.uk Append domain name on ALT + Enter = Should be different for every country .co.id Show information about this page Tampilkan informasi tentang halaman ini LocationCompleterView Switch to tab Pindah ke tab MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? QupZilla bukanlah penjelajah utama anda. Apakah anda ingin menjadikannya sebagai penjelajah utama? Always perform this check when starting QupZilla. Selalu lakukan pengecekan saat memulai QupZilla. Default Browser Penjelajah Utama QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. QupZilla adalah penjelajah WWW open-source yang baru, cepat, dan aman. QupZilla dilisensikan di bawah GPL versi 3 atau (dalam opsi anda) versi terakhir yang lain. QupZilla berbasis pada WebKit core dan Qt Framework. MasterPasswordDialog Encrypted DataBase Settings Set/Change Master Password... Clear Master Password... This backend does not work without a master password. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Current Password: New Password: Confirm Password: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. Warning! You entered a wrong password! New/Confirm password fields do not match! Some data has not been decrypted. The master password was not cleared! Are you sure to clear master password and decrypt data? NavigationBar No Named Page Halaman Tanpa Nama Back Mundur Forward Maju Home Rumah New Tab Tab Baru Main Menu Menu Utama Exit Fullscreen Keluar Layar Penuh Clear history Bersihkan Sejarah NetworkManager SSL Certificate Error! Sertifikat SSL Salah! The page you are trying to access has the following errors in the SSL certificate: Halaman yang akan anda buka memiliki kesalahan di sertifikat SSL sebagai berikut: <b>Organization: </b> <b>Organisasi: </b> <b>Domain Name: </b> <b>Nama Domain: </b> <b>Expiration Date: </b> <b>Tanggal Kadaluarsa: </b> <b>Error: </b> <b>Kesalahan: </b> Would you like to make an exception for this certificate? Apa anda ingin membuat sebuah pengecualian untuk sertifikat ini? Authorisation required Otorisasi dibutuhkan Username: Nama user: Password: Sandi: Save username and password on this site Simpan nama user dan sandi untuk situs ini A username and password are being requested by %1. The site says: "%2" Nama pengguna dan sandi diminta oleh %1. Situs mengatakan: "%2" FTP authorisation required Otorisasi FTP dibutuhkan Login anonymously Masuk secara anonim A username and password are being requested by %1:%2. Nama pengguna dan sandi dibutuhkan oleh %1:%2 Proxy authorisation required Otorisasi proxy dibutuhkan Remember username and password for this proxy. A username and password are being requested by proxy %1. Nama pengguna dan sandi diminta oleh proxy %1. PageScreen Page Screen Halaman Layar Format: Location: Browse... Save as %1 Choose location... File '%1' already exists. Do you want to overwrite it? File already exists PluginsList Application Extensions Ekstensi Aplikasi Allow Application Extensions to be loaded Ijinkan ekstensi aplikasi untuk dimuat Settings Pengaturan WebKit Plugins Pengaya WebKit <b>Click To Flash Plugin</b> <b>Pengaya Klik Untuk Flash</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Klik Untuk Flash adalah sebuah pengaya yang memblokir pemuatan otomatis dari Flash di halaman. Anda dapat memuatnya secara manual dengan mengklik icon mainkan Flash. Whitelist Daftar Putih Add Tambah Remove Hapus Allow Click To Flash Ijinkan Klik Untuk Flash PluginsManager Add site to whitelist Tambahkan situs ke daftar putih Server without http:// (ex. youtube.com) Server tanpa http:// (contoh: youtube.com) Error! Kesalahan! Cannot load extension! Tidak dapat memuat ekstensi! PopupWebView Inspect Element Inspeksi Elemen PopupWindow File Berkas &Save Page As... &Simpan Halaman Sebagai... Save Page Screen Simpan Halaman Layar Send Link... Kirimkan Tautan... &Print... &Cetak... Close Tutup Edit Sunting &Undo &Batalkan &Redo &Ulangi &Cut &Potong C&opy K&opi &Paste Tem&pel Select All PIlih Semua Find Cari View Tampilan &Stop &Berhenti &Reload &Muat Ulang Zoom &In Perbes&ar Zoom &Out Perkec&il Reset Reset &Page Source &Halaman Sumber %1 - QupZilla %1 - QupZilla Preferences Preferences Preferensi QupZilla QupZilla General Umum Appearance Penampilan Tabs Tab Browsing Penjelajahan Fonts Huruf Keyboard Shortcuts Pintasan Kibor Downloads Pengunduhan Password Manager Manajer Sandi Privacy Privasi Notifications Notifikasi Extensions Ekstensi Other Lainnya Use current Gunakan yang sekarang Note: You cannot delete active profile. Catatan: Anda tidak dapat menghapus profil aktif. Create New Buat Baru Delete Hapus <b>Launching</b> <b>Pembukaan</b> After launch: Purna Pembukaan: Open blank page Buka halaman kosong Open homepage Buka halaman rumah Open speed dial Buka panggilan cepat Restore session Kembalikan sesi Homepage: Halaman Rumah: On new tab: Di tab baru: Open blank tab Buka tab kosong Open other page... Buka halaman lain... <b>Profiles</b> <b>Profil</b> Startup profile: Profil Awal: Check for updates on start Cek perbaruan saat mulai Active profile: Profil Aktif: In order to change language, you must restart browser. Untuk mengganti bahasa, penjelajah harus direstart. <b>Language</b> <b>Bahasa</b> Available translations: Terjemahan yang tersedia: Don't load tabs until selected Jangan muat tab sebelum dipilih Check to see if QupZilla is the default browser on startup Cek apakah QupZilla adalah penjelajah utama saat mulai Check Now Cek Sekarang Themes Tema Advanced options Opsi Lanjutan <b>Browser Window</b> <b>Jendela Penjelajah</b> Show StatusBar on start Tampilkan StatusBar saat mulai Show Bookmarks ToolBar on start Tampilkan ToolBar Bookmark saat mulai Show Navigation ToolBar on start Tampilkan ToolBar Navigasi saat mulai <b>Navigation ToolBar</b> <b>ToolBar Navigasi</b> Show Home button Tampilkan tombol Rumah Show Back / Forward buttons Tampilkan tombol Mundur / Maju <b>Background<b/> <b>Latar</b> Use transparent background Gunakan latar transparan Show web search bar Tampilkan panel pencarian web Show Add Tab button Tampilkan tombol Tambah Tab Show Reload / Stop buttons Tampilkan tombol Muat-ulang / Berhenti Tabs behaviour Perilaku tab Show tab previews Tampilkan pratayang tab Make tab previews animated Animasikan pratayang tab Hide tabs when there is only one tab Sembunyikan tab jika hanya ada satu tab Activate last tab when closing active tab Pindah ke tab terakhir saat menutup tab aktif Open new tabs after active tab Buka tab baru setelah tab aktif Open new empty tabs after active tab Buka tab kosong baru setelah tab aktif Automatically switch to newly opened tab Otomatis pindah ke tab baru Don't quit upon closing last tab Jangan berhenti saat menutup tab terakhir Ask when closing multiple tabs Konfirmasi saat menutup beberapa tab Closed tabs list instead of opened in tab bar Tutup daftar tab daripada membukanya di bilah tab Address Bar behaviour Perilaku Bilah Alamat Suggest when typing into address bar: Sarankan saat mengetik di panel alamat: History and Bookmarks Sejarah dan Bookmark History Sejarah Bookmarks Bookmark Nothing Tidak ada Press "Shift" to not switch the tab but load the url in the current tab. Tekan "Shift" untuk tidak pindah tab dan muat url di tab ini Propose to switch tab if completed url is already loaded. Sarankan untuk pindah tab jika url yang akan dibuka sudah ada Always show go icon Select all text by double clicking in address bar Pilih seluruh teks dengan mengklik dua kali pada bilah alamat Select all text by clicking in address bar Pilih seluruh teks dengan mengklik pada bilah alamat Search with Default Engine Cari menggunakan Mesin Pencari Utama Show loading progress in address bar Tampilkan perkembangan pemuatan di bilah alamat Fill Isi Bottom Bawah Top Atas Custom color: Warna kustom: Select color Pilih warna ... ... Reset Reset Web Configuration Konfigurasi Web Allow Netscape Plugins (Flash plugin) Ijinkan Pengaya Netscape (pengaya Flash) Allow JavaScript Ijinkan JavaScript Allow JAVA Ijinkan JAVA Allow DNS Prefetch Ijinkan Prapengambilan DNS Enable XSS Auditing try to detect possible XSS attacks when executing javascript Aktifkan Audit XSS Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Cetak elemen latar Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Ikutsertakan tautan dalam rantai fokus Animated scrolling Animasikan pergeseran Enable caret browsing Aktifkan penjelajahan caret Enable spatial navigation Aktifkan navigasi spasial Zoom text only Hanya perbesar teks Mouse wheel scrolls Putaran roda mouse lines on page baris pada halaman Default zoom on pages: Default perbesaran pada halaman: Local Storage Penyimpan Lokal Maximum Maksimum 50 MB 50 MB 1 1 Maximum pages in cache: Halaman maksimum dalam cache: Allow storing network cache on disk Ijinkan menyimpan cache jaringan ke dalam disk Store cache in: Simpan cache di: Allow saving history Ijinkan menyimpan sejarah Delete history on close Hapus sejarah saat berhenti Allow local storage of HTML5 web content Ijinkan untuk menyimpan secara lokal isi web HTML5 Delete locally stored HTML5 web content on close Hapus isi web HTML5 yang disimpan secara lokal saat berhenti Delete now Hapus sekarang Proxy Configuration Konfigurasi Proxy Proxy Auto-Config (.pac) file Berkas Auto-Config Proxy (.pac) Reload Muat Ulang HTTP HTTP SOCKS5 SOCKS5 Port: Port: Username: Nama User: Password: Sandi: Don't use on: Jangan gunakan di: Manual configuration Konfigurasi Manual System proxy configuration Konfigurasi proxy sistem Do not use proxy Jangan gunakan proxy <b>Exceptions</b> <b>Pengecualian</b> Server: Server: Use different proxy for https connection Gunakan proxy berbeda untuk koneksi https Use script for automatic configuration: Gunakan skrip untuk konfigurasi otomatis: <b>Font Families</b> <b>Famili Huruf</b> Standard Standar Fixed Fixed Serif Serif Sans Serif Sans-Serif Cursive Cursive Fantasy Fantasi <b>Font Sizes</b> <b>Ukuran Huruf</b> Fixed Font Size Ukuran Huruf Fixed Default Font Size Ukuran Huruf Default Minimum Font Size Ukuran Huruf Minimum Minimum Logical Font Size Ukuran Logis Minimal Huruf <b>Shortcuts</b> <b>Pintasan</b> Switch to tabs with Alt + number of tab Pindah ke tab dengan Alt + nomor tab Load speed dials with Ctrl + number of speed dial Muat panggilan cepat dengan Ctrl + nomor panggilan cepat Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>Lokasi Unduhan</b> Ask everytime for download location Konfirmasi lokasi tiap kali mengunduh Use defined location: Gunakan lokasi tetap: <b>Download Options</b> <b>Opsi Pengunduhan</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Gunakan dialog berkas asli sistem (dapat menimbulkan masalah pada pengunduhan yang menggunakan SSL) Close download manager when downloading finishes Tutup manajer pengunduhan setelah pengunduhan selesai <b>External download manager</b> <b>Manajer pengunduhan eksternal</b> Use external download manager Gunakan manajer pengunduhan eksternal Executable: Eksekutor: Arguments: Argumen: Leave blank if unsure Biarkan kosong jika ragu <b>%d</b> will be replaced with URL to be downloaded <b>%d</b> akan diganti dengan URL yang akan diunduh <b>AutoFill options</b> <b>Opsi pengisian otomatis</b> Allow saving passwords from sites Ijinkan menyimpan sandi dari situs Send Referer header to servers Kirimkan kepala Acuan ke server <b>Cookies</b> <b>Cookie</b> Send Do Not Track header to servers Kirimkan kepala Do Not Track ke server <b>Other</b> <b>Lainnya</b> Manage CA certificates Kelola Sertifikat CA Certificate Manager Manajer Sertifikat <b>SSL Certificates</b> <b>Sertifikat SSL</b> <b>JavaScript</b> <b>JavaScript</b> Manage JavaScript privacy options Kelola opsi privasi JavaScript JavaScript options Opsi JavaScript Cookies Manager Manajer Cookie Manage Cookies Kelola Cookie <b>HTML5 Permissions</b> <b>Perijinan HTML5</b> Manage HTML5 permissions Kelola perijinan HTML5 HTML5 Permissions Perijinan HTML5 <b>Notifications</b> <b>Notifikasi</b> Use OSD Notifications Gunakan Notifikasi OSD Use Native System Notifications (Linux only) Gunakan Notifikasi Asli Sistem (hanya Linux) Do not use Notifications Jangan gunakan Notifikasi Expiration timeout: Batas waktu notifikasi: seconds detik <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Catatan: </b>Anda dapat mengubah posisi OSD Notifikasi dengan menggeretnya di layar. StyleSheet automatically loaded with all websites: StyleSheet yang otomatis dimuat untuk semua website: Languages Bahasa <b>Preferred language for web sites</b> <b>Bahasa utama untuk situs web</b> <b>Change browser identification</b> <b>Ganti identitas penjelajah</b> User Agent Manager Manajer Agen Pengguna Default Default Set as default Jadikan default OSD Notification OSD Notifikasi Drag it on the screen to place it where you want. Geret OSD di layar untuk memposisikannya. Choose download location... Pilih lokasi unduhan... Choose stylesheet location... Pilih lokasi stylesheet... Deleted Terhapus Choose executable location... Pilih lokasi eksekutor... Choose cache path... Pilih lokasi cache... New Profile Profil Baru Enter the new profile's name: Masukkan nama profil baru: Error! Galat! This profile already exists! Profil tersebut sudah ada! Cannot create profile directory! Tidak dapat membuat direktori profil! Confirmation Konfirmasi Are you sure to permanently delete "%1" profile? This action cannot be undone! Anda yakin untuk menghapus secara permanen profil "%1"? Profil yang terhapus tidak dapat dikembalikan! Select Color Pilih Warna QObject Native System Notification Notifikasi Asli Sistem Save file as... Simpan berkas sebagai... The file is not an OpenSearch 1.1 file. Bukan berkas OpenSearch 1.1. <not set in certificate> <tidak tertera di sertifikat> Unknown size Ukuran tidak diketahui KB MB GB Executable: Eksekutor: Arguments: Argumen: Cannot start external program Tidak dapat menjalankan program eksternal Cannot start external program! %1 Tidak dapat menjalankan program eksternal! %1 QtWin Open new tab Buka tab baru Opens a new tab if browser is running Buka tab baru jika penjelajah sedang berjalan Open new window Buka jendela baru Opens a new window if browser is running Buka jendela baru jika penjelajah sedang berjalan Open download manager Buka manajer pengunduhan Opens a download manager if browser is running Buka manajer pengunduhan jika penjelajah sedang berjalan QupZilla QupZilla QupZilla Private Browsing Enabled Penjelajahan Privat Aktif IP Address of current page Alamat IP halaman ini &About QupZilla Tent&ang QupZilla Pr&eferences Pr&eferensi Quit Berhenti &File &Berkas &New Window Je&ndela Baru New Tab Tab Baru Open Location Buka Lokasi Open &File... Buka &Berkas Close Tab Tutup Tab Close Window Tutup Jendela &Save Page As... &Simpan Halaman Sebagai... Save Page Screen Simpan Halaman Layar Send Link... Kirimkan Tautan... &Print... &Cetak... Import bookmarks... Impor bookmark... &Edit &Sunting &Undo &Undo &Redo &Redo &Cut &Potong C&opy S&alin &Paste &Tempel Select &All PIlih Semu&a &Find &Cari &View &Tampilan &Navigation Toolbar Toolbar &Navigasi &Bookmarks Toolbar Toolbar &Bookmark Sta&tus Bar Bilah Sta&tus &Menu Bar Bilah &Menu &Tabs on Top &Tab di Atas &Fullscreen &Fullscreen &Stop &Berhenti &Reload &Muat Ulang Character &Encoding &Encoding Karakter Enable &Caret Browsing Aktifkan Penjelajahan &Caret Toolbars Toolbar Sidebars Sidebar Zoom &In Zoom &In Zoom &Out Zoom &Out Reset Reset &Page Source &Page Source Hi&story &Sejarah &Back &Mundur &Forward &Maju &Home Ruma&h Show &All History Tampilkan Selur&uh Sejarah Closed Tabs Tab Tertutup Recently Visited Kunjungan Terakhir Most Visited Terbanyak Dikunjungi &Bookmarks &Bookmark Bookmark &This Page Bookmark &Halaman Ini Bookmark &All Tabs Bookmark Selur&uh Tab Organize &Bookmarks Organisir &Bookmark &Tools &Peralatan &Web Search Pencarian &Web Page &Info &Info Halaman &Download Manager Manajer &Pengun&duhan &Cookies Manager Manajer &Cookie &AdBlock &AdBlock RSS &Reader Pembaca &RSS Web In&spector In&spektur Web Clear Recent &History Bersihkan Sejara&h Terkini New &Private Window Jendela Privat Baru &Help Bant&uan About &Qt Tentang &Qt Information about application Informasi tentang aplikasi Configuration Information Konfirmasi Informasi Report &Issue Laporkan &Isu Restore &Closed Tab Restore &Closed Tab (Private Browsing) (Penjelajahan Privat) Empty Kosong Restore All Closed Tabs Kembalikan Seluruh Tab Yang Ditutup Clear list Bersihkan daftar Other Lainnya %1 - QupZilla %1 - QupZilla HTML files Berkas HTML Image files Berkas gambar Text files Berkas teks All files Semua berkas Open file... Buka berkas... QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Masih ada %1 tab yang terbuka dan sesi anda tidak akan disimpan. Anda yakin untuk berhenti dari QupZilla? Don't ask again Jangan tanya lagi There are still open tabs Masih ada tab yang terbuka QupZillaSchemeReply No Error Tiada Kesalahan Not Found Tidak Ditemukan Report Issue Laporan Isu If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Jika anda mengalami permasalahan dengan QupZilla, mohon nonaktifkan dahulu semua ekstensi. <br/>Jika hal ini tidak dapat membantu, silakan isi form berikut ini: Your E-mail Surel Anda Issue type Tipe isu Issue description Deskripsi isu Send Kirim E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. Surel tidak diwajibkan<br/><b>Catatan: </b>Mohon baca petunjuk pengiriman laporan bug <a href=%1>di sini</a>. Please fill out all required fields! Harap isi semua bagian yang dibutuhkan! Start Page Halaman Awal Search on Web Cari di Web Search results provided by DuckDuckGo Hasil pencarian disediakan oleh DuckDuckGo About QupZilla Tentang QupZilla <h1>Private Browsing</h1> <h1>Penjelajahan Privat</h1> Information about version Informasi tentang versi Copyright Hak Cipta Version Versi WebKit version Versi WebKit Main developer Pengembang Utama Contributors Kontributor Translators Translator Speed Dial Panggilan Cepat Add New Page Tambah Halaman Baru Edit Sunting Remove Hapus Reload Muat Ulang Are you sure to remove this speed dial? Anda yakin untuk menghapus panggilan cepat ini? Load title from page Muat judul dari halaman Url Url Title Judul Apply Terapkan Close Tutup New Page Halaman Baru Speed Dial settings Pengaturan Panggilan Cepat Placement: Peletakan: Auto Oto Cover Penutup Fit Pas Fit Width Pas Lebar Fit Height Pas Tinggi Use background image Gunakan gambar latar Select image Pilih gambar Maximum pages in a row: Maksimum halaman dalam satu baris: Change size of pages: Ubah ukuran halaman: Center speed dials Ketengahkan panggilan cepat Restore Session Kembalikan Sesi Oops, QupZilla crashed. Oops, QupZilla rusak. We apologize for this. Would you like to restore the last saved state? Kami mohon maaf untuk ini. Apakah anda ingin mengembalikan sesi terakhir yang tersimpan? Try removing one or more tabs that you think cause troubles Coba tutup satu atau lebih tab yang anda yakini bermasalah Or you can start completely new session Atau anda dapat memulai sesi yang baru Configuration Information Informasi Konfigurasi This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Halaman ini memuat informasi tentang konfigurasi terakhir Qupzilla yang relevan untuk perbaikan. Harap mengikutsertakan informasi ini saat mengirimkan laporan kerusakan. Browser Identification Indentitas Penjelajah Paths Lokasi Build Configuration Konfigurasi Pembangunan Preferences Preferensi Option Opsi Value Nilai Extensions Ekstensi Name Nama Author Penulis Description Deskripsi Application version Versi Aplikasi Qt version Versi Qt Build time Waktu pembangunan Platform Platform Profile Profil Settings Pengaturan Saved session Sesi tersimpan Pinned tabs Tab dipinkan Data Data Themes Tema Translations Terjemahan Disabled Dinonaktifkan <b>Enabled</b> <b>Aktifkan</b> Debug build Pembangunan debug WebGL support Dukungan WebGL Windows 7 API API Windows 7 KDE integration Integrasi KDE Portable build Pembangunan portabel No available extensions. Ekstensi tidak tersedia. RSSManager RSS Reader Pembaca RSS Empty Kosong Add feed Tambah feed Edit feed Sunting feed Delete feed Hapus feed Optimize Database Optimasi Database Reload Muat Ulang News Berita Loading... Memuat... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Anda tidak memiliki RSS Feed apapun.<br/> Silakan tambahi dengan menggunakan icon RSS di bilah navigasi bilamana situs menyediakan feed. Add new feed Tambah feed baru Please enter URL of new feed: Masukkan URL feed baru: New feed Feed baru Fill title and URL of a feed: Isi judul dan URL dari feed: Feed title: Judul feed: Feed URL: URL feed: Edit RSS Feed Sunting RSS Feed Open link in current tab Buka tautan di tab ini Open link in new tab Buka tautan di tab baru Error in fetching feed Kesalahan dalam mengambil feed RSS feed duplicated Duplikasi RSS feed You already have this feed. Anda telah memiliki feed ini. RSSNotification Add this feed into Tambahkan feed ke Add Tambah RSS feed <b>"%1"</b> RSS feed <b>"%1"</b> Internal Reader Pembaca internal Other... Lainnya... Liferea not running Liferea tidak aktif Liferea must be running in order to add new feed. Liferea harus aktif untuk dapat menambahkan feed baru. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Untuk menambahkan RSS feed ke aplikasi lainnya, gunakan informasi ini:<br/><br/><b>Judul: </b>%1<br/><b>Url: </b>%2<br/><br/>Alamat url dari feed ini telah disalin ke clipboard anda. Add feed into other application Tambahkan feed ke aplikasi lain RSSWidget Add RSS Feeds from this site Tambahkan RSS Feed dari situs ini Untitled feed Feed tanpa judul Add Tambahkan RecoveryWidget Start New Session Mulai Sesi Baru Restore Kembalikan Window %1 Jendela %1 RegisterQAppAssociation Warning! Peringatan! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) Terdapat beberapa permasalahan. Silakan, pasang ulang QupZilla. Mungkin dengan menjalankannya sebagai administrator dapat memberikan keajaiban buat anda! ;) RssIcon Add RSS from this page... Tambahkan RSS dari halaman ini... SSLManager Certificate Manager Manajer Sertifikat CA Authorities Certificates Sertifikat Otoritas CA Show info Tampilkan info This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Berikut adalah daftar Sertifikat Otoritas CA yang ada di dalam sistem dan di lokasi yang ditentukan pengguna. Local Certificates Sertifikat Lokal Import Impor Remove Hapus This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Berikut adalah daftar Sertifikat Lokal yang tersimpan di profil anda. Semua sertifikat yang telah mendapatkan pengecualian juga terdapat di sini. Settings Pengaturan Add Tambah If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Jika Sertifikat Otoritas CA tidak dapat dimuat secara otomatis dari sistem, anda dapat menentukan lokasinya secara manual. <b>NOTE:</b> Setting this option is a high security risk! <b>CATATAN:</b> Opsi ini memiliki resiko tinggi! Ignore all SSL Warnings Acuhkan seluruh Peringatan SSL All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Semua sertifikat harus memiliki akhiran .crt. Setelah menambah atau menghapus lokasi sertifikat, QupZilla harus direstart agar perubahan dapat diterapkan. Choose path... Pilih lokasi... Import certificate... Impor sertifikat... Certificate Informations Informasi sertifikat SearchEnginesDialog Manage Search Engines Kelola Mesin Pencari Add... Tambah... Remove Hapus Edit Sunting Set as default Tetapkan sebagai utama Up Naik Down Turun Search Engine Mesin Pencari Shortcut Shortcut Defaults Default Add Search Engine Tambah Mesin Pencari Remove Engine Hapus Mesin You can't remove the default search engine.<br>Set a different engine as default before removing %1. Anda tidak dapat menghapus mesin pencari utama.<br>Pilih mesin lain sebagai utama sebelum menghapus %1. Edit Search Engine Sunting Mesin Pencari SearchEnginesManager Search Engine Added Mesin Pencari Ditambahkan Search Engine "%1" has been successfully added. Mesin Pencari "%1" telah berhasil ditambahkan. Search Engine is not valid! Mesin Pencari tidak valid! Error Kesalahan Error while adding Search Engine <br><b>Error Message: </b> %1 Kesalahan saat menambahkan Mesin Pencari <br/><b>Pesan Kesalahan: </b> %1 SearchToolBar No results found. Hasil tidak ditemukan. SearchToolbar Search: Cari: Search... Pencarian... Highlight Penandaan Case sensitive Penulisan sensitif SideBar Bookmarks Bookmark History Sejarah SiteInfo Site Info Info Situs General Umum Media Media Databases Database Security Keamanan Size: Ukuran: Site address: Alamat situs: Encoding: Encoding: Meta tags of site: Meta tag situs: Tag Tag Value Nilai <b>Security information</b> <b>Informasi Keamanan</b> Details Detil Image Gambar Image address Alamat gambar <b>Preview</b> <b>Pratayang</b> <b>Database details</b> <b>Detil database</b> Name: Nama: Path: Lokasi: <database not selected> <database tidak dipilih> <not set in certificate> <tidak tertera di sertifikat> No databases are used by this page. Tidak ada database yang digunakan halaman ini. <b>Connection is Encrypted.</b> <b>Koneksi Diacak.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Koneksi anda ke halaman ini diamankan oleh sertifikat ini: </b> <b>Connection Not Encrypted.</b> <b>Koneksi Tidak Diacak.</b> <b>Your connection to this page is not secured!</b> <b>Koneksi anda ke halaman ini tidak diamankan!</b> Copy Image Location Salin Lokasi Gambar Copy Image Name Salin Nama Gambar Save Image to Disk Simpan Gambar ke Disk Error! Kesalahan! This preview is not available! Pratayang ini tidak tersedia! Save image... Simpan gambar... Cannot write to file! Tidak dapat menulis ke berkas! Preview not available Pratayang tidak tersedia SiteInfoWidget More... Selanjutnya... Your connection to this site is <b>secured</b>. Koneksi anda ke situs ini <b>diamankan</b>. Your connection to this site is <b>unsecured</b>. Koneksi anda ke situs ini <b>tidak diamankan</b>. This is your <b>%1</b> visit of this site. Ini adalah kunjungan anda ke situs ini yang ke <b>%1</b>. You have <b>never</b> visited this site before. Anda <b>belum pernah</b>mengunjungi situs ini sebelumnya. first satu second dua third tiga SourceViewer Source of Sumber dari File Berkas Load in page Muat dalam halaman Save as... Simpan sebagai... Close Tutup Edit Sunting Undo Undo Redo Redo Cut Potong Copy Salin Paste Tempel Select All Pilih Semua Find Cari Go to Line... Tuju baris... View Tampilan Reload Muat Ulang Editable Dapat disunting Word Wrap Lipat Kata Source loaded in page Sumber dimuat di halaman Cannot load in page. Page has been closed. Tidak dapat memuat di halaman. Halaman telah ditutup. Save file... Simpan berkas... Error! Kesalahan! Cannot write to file! Tidak dapat menulis ke berkas! Error writing to file Kesalahan dalam menulis ke berkas Source successfully saved Sumber berhasil disimpan Source reloaded Sumber dimuat ulang Cannot reload source. Page has been closed. Sumber tidak dapat dimuat ulang. Halaman telah ditutup. Editable changed Penyuntingan diubah Word Wrap changed Lipat Kata diubah Enter line number Masukkan nomor baris SourceViewerSearch Search: Cari: Search... Pencarian... Whole words Seluruh kata SpeedDial Image files Berkas gambar Select image... Pilih gambar... Unable to load Tidak dapat memuat SpellCheckDialog SpellCheck Pengecekan Ejaan <b>Dictionary path</b> <b>Lokasi kamus</b> Change... Ganti... <b>User dictionary</b> <b>Kamus pengguna</b> Add Tambah Remove Hapus Using Hunspell library Menggunakan pustaka Hunspell Choose dictionary path... Pilih lokasi kamus... Add new word... Tambah kata baru... Add new word: Tambah kata baru: Speller No suggestions Jangan tampilkan saran Add to dictionary Tambahkan ke kamus Settings Pengaturan SqueezeLabelV2 Copy Salin SslErrorDialog SSL Certificate Error! Only for this session TabBar &New tab &Tab Baru &Stop Tab &Hentikan Tab &Reload Tab &Muat Ulang Tab &Duplicate Tab &Duplikasi Tab D&etach Tab L&epaskan Tab Un&pin Tab Un&pin Tab &Pin Tab &Pin Tab Re&load All Tabs Muat &Ulang Seluruh Tab &Bookmark This Tab &Bookmark Tab Ini Bookmark &All Tabs Bookmark Semu&a Tab Close Ot&her Tabs Tutup Tab &Yang Lain Cl&ose Tu&tup Reloa&d All Tabs Muat &Ulang Seluruh Tab Restore &Closed Tab Kembalikan Tab Yang &Ditutup Close Tabs Do you really want to close other tabs? TabWidget New Tab Tab Baru List of tabs Daftar tab Loading... Memuat... No Named Page Halaman Tanpa Nama Currently you have %1 opened tabs Saat ini anda memiliki %1 tab yang terbuka New tab Tab baru Empty Kosong Restore All Closed Tabs Kembalikan Semua Tab Yang Ditutup Clear list Bersihkan daftar TabbedWebView Loading... Memuat... %1 - QupZilla %1 - QupZilla Inspect Element Inspeksi Elemen ThemeManager <b>Name:</b> <b>Nama:</b> <b>Author:</b> <b>Penulis:</b> <b>Description:</b> <b>Deskripsi:</b> License Lisensi ToolButton Stop Berhenti Reload Muat Ulang Updater Update available Perbaruan tersedia New version of QupZilla is ready to download. Versi baru QupZilla siap untuk diunduh. Update Perbaruan UserAgentDialog User Agent Manager Manajer Agen Pengguna Change global User Agent Ganti Agen Pengguna global Use different User Agents for specified sites Gunakan Agen Pengguna berbeda untuk situs tertentu Site Situs User Agent Agen Pengguna Add Tambah Remove Hapus Edit Sunting Add new site Tambah situs baru Edit site Sunting situs Site domain: Domain situs: User Agent: Agen Pengguna: WebInspectorDockWidget Web Inspector Inspektur Web WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? QupZilla tidak dapat menangani tautan <b>%1:</b>. Tautan yang diminta adalah <ul><li>%2</li></ul>Apakah anda ingin QupZilla membuka tautan ini menggunakan aplikasi sistem? Remember my choice for this protocol Ingat pilihan saya untuk protokol ini External Protocol Request Permintaan Protokol Eksternal To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Untuk menampilkan halaman ini, QupZilla harus mengirim ulang permintaan yang sudah dilakukan (seperti pencarian saat berbelanja, yang sudah pernah dilakukan sebelumnya.) Confirm form resubmission Konfirmasi pengiriman ulang formulir Select files to upload... Pilih berkas untuk diunggah... Server refused the connection Server menolak koneksi Server closed the connection Server menutup koneksi Server not found Server tidak ditemukan Connection timed out Batas waktu koneksi habis Untrusted connection Koneksi tidak dapat dipercaya Temporary network failure Kegagalan jaringan sementara Proxy connection refused Koneksi ke proxy ditolak Proxy server not found Server proxy tidak ditemukan Proxy connection timed out Batas waktu koneksi ke proxy habis Proxy authentication required Otentikasi proxy dibutuhkan Content not found Isi tidak ditemukan Unknown network error Kesalahan jaringan tidak diketahui AdBlocked Content Isi yang diblokir AdBlok Blocked by <i>%1</i> Diblokir oleh <i>%1</i> Content Access Denied Akses Terhadap Isi Ditolak Error code %1 Kode kesalahan %1 Failed loading page Halaman gagal dimuat QupZilla can't load page. QupZilla tidak dapat memuat halaman. QupZilla can't load page from %1. QupZilla tidak dapat memuat halaman dari %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Periksa ejaan alamat dari kesalahan pengetikan seperti <b>ww.</b>contoh.com dari yang seharusnya <b>www.</b>contoh.com If you are unable to load any pages, check your computer's network connection. Jika anda tidak dapat memuat halaman apapun, periksa koneksi komputer anda. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Jika komputer atau jaringan dilindungi firewall atau proxy, pastikan bahwa QupZilla diperbolehkan untuk mengakses Web. Try Again Coba Lagi JavaScript alert Peringatan JavaScript Prevent this page from creating additional dialogs Halangi halaman ini untuk membuat dialog tambahan Choose file... Pilih berkas... Cannot read data from <b>%1</b>. Upload was cancelled! Tidak bisa membaca data dari <b>%1</b>. Pengunggahan dibatalkan! Cannot read file! Tidak bisa membaca berkas! WebSearchBar Manage Search Engines Kelola Mesin Pencari Add %1 ... Tambah %1... Paste And &Search Tempel dan &Cari Clear All Bersihkan Semua Show suggestions Tampilkan saran Search when engine changed Cari setelah mesin diganti WebView No Named Page Halaman Tanpa Nama Create Search Engine Buat Mesin Pencari Cut Potong Copy Salin Paste Tempel Select All Pilih Semua Default Bawaan Left to Right Kiri ke Kanan Right to Left Kanan ke Kiri Bold Tebal Italic Miring Underline Garis Bawah &Reload &Muat Ulang S&top Ber&henti Delete Hapus &Back &Mundur &Forward &Maju This frame Bingkai ini Show &only this frame Hanya &tampilkan bingkai ini Show this frame in new &tab Tampilkan bingkai ini di &tab baru Print frame Cetak bingkai Zoom &in Zoom &in &Zoom out Zoom &out Reset Reset Show so&urce of frame Tampilkan su&mber dari bingkai Book&mark page Book&mark halaman &Save page as... &Simpan halaman sebagai... &Copy page link &Salin tautan halaman Send page link... Kirimkan tautan halaman... &Print page Cetak &halaman Select &all PIlih semu&a Validate page Validasi halaman Show so&urce code Tampilkan kode su&mber Show info ab&out site Tampilkan inf&o tentang situs Open link in new &tab Buka tautan di &tab baru Open link in new &window Buka tautan di &jendela baru B&ookmark link B&ookmark tautan &Save link as... &Simpan tautan sebagai... Send link... Kirimkan tautan... &Copy link address &Salin alamat tautan Show i&mage Tampilkan &gambar Copy im&age Salin g&ambar Copy image ad&dress Salin a&lamat gambar &Save image as... &Simpan gambar sebagai... Send image... Kirimkan gambar... Send text... Kirimkan teks... Google Translate Terjemahan Google Dictionary Kamus Go to &web address Buka alamat &web Search "%1 .." with %2 Cari "%1.." dengan %2 Search with... Cari dengan... &Play &Mainkan &Pause &Hentikan Un&mute Un&mute &Mute &Mute &Copy Media Address &Salin Alamat Media &Send Media Address &Kirimkan Alamat Media Save Media To &Disk Simpan Media ke &Disk Check &Spelling Perik&sa Ejaan Languages Bahasa jsAlert Prevent this page from creating additional dialogs Cegah halaman ini untuk membuat dialog tambahan qupzilla-1.6.0/translations/it_IT.ts000066400000000000000000010603761226107126500174770ustar00rootroot00000000000000 AboutDialog About QupZilla A proposito di QupZilla Authors Autori Authors and Contributors Autori e collaboratori < About QupZilla < A proposito di QupZilla <p><b>Application version %1</b><br/> <p><b>Versione dell'applicazione %1</b><br/> <b>WebKit version %1</b></p> <b>Versione di WebKit %1</b></p> <small>Build time: %1 </small></p> <small>Data della build: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Sviluppatore principale:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Collaboratori:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Traduttori:</b><br/>%1</p> AcceptLanguage Preferred Languages Lingue preferite Add... Aggiungi... Remove Elimina Up Su Down Giu Personal [%1] Personale [%1] AdBlockAddSubscriptionDialog Add Subscription Aggiungi sottoscrizione Title: Titolo: Address: Indirizzo: Add new subscription to AdBlock: Aggiungi una nuova sottoscrizione ad AdBlock: AdBlockCustomList Custom Rules Regole personalizzate AdBlockDialog AdBlock Configuration Configurazione di AdBlock Enable AdBlock Abilita AdBlock Search... Cerca... Options Opzioni AdBlock AdBlock Use only essential part of EasyList (for performance reasons) Usa solo le parti essenziali di EasyList (per ragioni di prestazione) Add Rule Aggiungi regola Remove Rule Rimuovi regola Add Subscription Aggiungi sottoscrizione Remove Subscription Rimuovi sottoscrizione Update Subscriptions Aggiorna sottoscrizione Learn about writing rules... Impara come scrivere regole... AdBlockIcon AdBlock lets you block unwanted content on web pages AdBlock permette di bloccare ogni contenuto indesiderato nelle pagine web Blocked popup window Popup bloccati AdBlock blocked unwanted popup window. AdBlock ha bloccato un popup indesiderato. AdBlock AdBlock Show AdBlock &Settings Mostra &Impostazioni di AdBlock Disable on %1 Disattiva in %1 Disable only on this page Disattiva solo in questa pagina Blocked Popup Windows Popup Bloccati %1 with (%2) %1 con (%2) No content blocked Nessuno contenuto bloccato Blocked URL (AdBlock Rule) - click to edit rule URL bloccato (Regola di AdBlock) - clicca per modificare la regola AdBlockManager Do you want to add <b>%1</b> subscription? Vuoi aggiungere la sotooscrizione <b>%1</b>? AdBlock Subscription Sottoscrizione AdBlock EasyList EasyList AdBlockTreeWidget Add Rule Aggiungi regola Remove Rule Rimuovi regola Add Custom Rule Aggiungi regola personalizzata Please write your rule here: Per favore scrivi qui la tua regola: %1 (recently updated) %1 (aggiornata di recente) AddAcceptLanguage Add Language Aggingi lingua Choose preferred language for web sites Scegli la lingua preferita per i siti web Personal definition: Definizione personale: AesInterface Warning! Attenzione! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. I dati sono stati criptati con una versione di QupZilla più recente. Installa l'ultima versione di QupZilla. AutoFill Database (plaintext) Database (plain text) Database (encrypted) Database (criptato) Enter Master Password Inserisci password principale Permission is required, please enter Master Password: È richiesta l'autorizzazione, inserisci la password principale: Warning! Attenzione! Entered password is wrong! La password inserita è sbagliata! This backend needs a master password to be set! QupZilla just switches to its default backend È necessario impostare una password principale per usare questo backend! QupZilla passerà al backend predefinito AutoFillManager Passwords are stored in: Le password verranno salvate in: Change backend Cambia backend Backend options Opzioni del backend Passwords Passwords Server Server Username Nome utente Password Password Import/Export Importa/Esporta Show Passwords Mostra le password Edit Modifica Remove Elimina Remove All Elimina Tutto Exceptions Eccezioni Import Passwords from File... Importa password da un file... Export Passwords to File... Esporta password in un file... Search Cerca Change backend... Cambia backend... Change backend: Cambia backend: Are you sure that you want to show all passwords? Sei sicuro di voler mostrare tutte le password? Hide Passwords Nascondi le password Confirmation Conferma Are you sure to delete all passwords on your computer? Sei sicuro di voler cancellare tutte le password presenti sul tuo computer? Edit password Modifica password Change password: Cambia password: Choose file... Scegli file... Cannot read file! Impossibile leggere il file! Successfully imported Importato con successo Error while importing! Errore nell'importare il file! Cannot write to file! Impossibile scrivere sul file! Successfully exported Esportati con successo AutoFillNotification Update Aggiorna Remember Ricorda Never For This Site Mai per questo sito Not Now Non adesso on %1 su %1 for <b>%1</b> per <b>%1</b> Do you want QupZilla to update saved password %1? Vuoi che QupZilla aggiorni la password salvata %1? Do you want QupZilla to remember the password %1 %2? Vuoi che QupZilla memorizzi la password %1 2%? AutoFillWidget Choose username to login Scegli il nome utente per l'accesso Login Accedi Login as <b>%1</b> Accedi come <b>%1</b> BookmarkIcon Bookmark this Page Aggiungi pagina ai Segnalibri Edit this bookmark Modifica questo segnalibro BookmarksImportDialog Import Bookmarks Importa Segnalibri <b>Import Bookmarks</b> <b>Importa Segnalibri</b> From File Da file Internet Explorer Internet Explorer Choose browser from which you want to import bookmarks: Scegli il browser da cui vuoi importare i segnalibri: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Nota:</b> Al momento, solo importando un file Html si importeranno anche le cartelle dei segnalibri. Choose... Scegli... Try to fetch icons for all bookmarks (may take a while) Prova a recuperare le icone per tutti i segnalibri (può richiedere tempo) Fetching icons, please wait... Attendi, caricamento icone... Title Titolo Url Url Next Prossimo Cancel Cancella <b>Importing from %1</b> <b>Importazione da %1</b> Finish Finito Please press Finish to complete importing process. Premi Finito per completare il processo d'importazione. Error! Errore! The file doesn't contain any bookmark. Il file non contiene alcun segnalibro. Choose directory... Scegli cartella... Choose file... Scegli file... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox archivia i segnalibri nel database SQLite <b>places.sqlite</b>. Questo file di solito si trova in Please choose this file to begin importing bookmarks. Per favore, scegli questo file per iniziare ad importare i segnalibri. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Google Chrome archivia i segnalibri nel file di testo <b>Bookmarks</b>. Questo file di solito si trova in Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera archivia i segnalibri in nel file di testo <b>bookmarks.adr</b>. Questo file di solito si trova in You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes E' possibile importare segnalibri da qualsiasi browser che supporti l'esportazione in HTML. Questo file solitamente ha questi suffissi Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Explorer archivia i segnalibri nella cartella <b>Favorites</b>. Questa cartella di solito si trova in Please choose this folder to begin importing bookmarks. Per favore, scegli questa cartella per iniziare ad importare i segnalibri. No Error Nessun errore Unable to open file. Impossibile aprire il file. Cannot evaluate JSON code. Impossibile valutare il codice JSON. File does not exist. Il file non esiste. Unable to open database. Is Firefox running? Impossibile aprire il database. Firefox è aperto? Directory does not exist. La cartella non esiste. The directory does not contain any bookmarks. La cartella non contiene segnalibri. BookmarksManager Bookmarks Segnalibri Optimize Database Ottimizza database Import Bookmarks Importa segnalibri Add Folder Aggiungi cartella Title Titolo Url Url Expand All Espandi tutto Collapse All Riduci tutto Add new folder Aggiungi nuova cartella Choose parent folder for new folder: Scegli la cartella di appartenenza della nuova cartella Choose name for new bookmark folder: Scegli un nome per la nuova cartella dei segnalibri: Add new subfolder Aggiungi nuova sottocartella Choose name for new subfolder in bookmarks toolbar: Scegli un nome per la nuova sottocartella nella barra dei segnalibri: Rename Folder Rinomina cartella Choose name for folder: Scegli un nome per la cartella: Add Subfolder Aggiungi sottocartella Rename folder Rinomina cartella Remove folder Rimuovi cartella Open link in current &tab Apri il link nella &scheda attuale Open link in &new tab Apri link in una &nuova scheda Move bookmark to &folder Sposta segnalibro nella &cartella Change icon Cambia icona Rename bookmark Rinomina segnalibro Remove bookmark Rimuovi segnalibro <b>Warning: </b>You already have bookmarked this page! <b>Attenzione: </b>Hai già aggiunto questa pagina ai segnalibri! Choose name and location of this bookmark. Scegli nome e posizione di questo segnalibro. Add New Bookmark Aggiungi nuovo segnalibro Choose folder for bookmarks: Scegli la cartella per i segnalibri: Bookmark All Tabs Aggiungi tutte le schede ai segnalibri BookmarksModel Bookmarks In Menu Segnalibri nel menu Bookmarks In ToolBar Segnalibri nella barra Unsorted Bookmarks Segnalibri non catalogati BookmarksSideBar Search... Cerca... Open link in current &tab Apri il link nella &scheda attuale Open link in &new tab Apri il collegamento in una &nuova scheda Copy address Copia indirizzo &Delete &Cancella BookmarksToolbar &Bookmark Current Page Aggiungi la pagina corrente ai &segnalibri Bookmark &All Tabs Aggiungi &tutte le schede ai segnalibri &Organize Bookmarks &Organizza i segnalibri Show Most &Visited Mostra i più &visitati Show Only Icons Mostra solo le icone &Hide Toolbar &Nascondi barra Open bookmark Apri segnalibro Open bookmark in new tab Apri segnalibro in una nuova scheda Move right Sposta a destra Move left Sposta a sinistra Edit bookmark Modifica segnalibro Remove bookmark Rimuovi segnalibro Edit bookmark: Modifica segnalibro: Title: Titolo: Url: Indirizzo: Edit Bookmark Modifica segnalibro Most visited Più visitati Sites you visited the most Siti che visiti più spesso Empty Vuoto BookmarksTree Bookmarks Segnalibri New Folder... Nuova cartella... BookmarksWidget Add to Speed Dial Aggiungi a Speed Dial Save Salva Name: Nome: Folder: Cartella: Remove from Speed Dial Rimuovi da Speed Dial Remove Rimuovi BrowsingLibrary Library Libreria Search... Cerca... History Cronologia Bookmarks Segnalibri RSS RSS Database Optimized Database ottimizzato Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 Database ottimizzato con successo.<br/><br/><b>Dimensione del Database prima: </b>%1<br/><b>Dimensione del Database dopo: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Rilasciato a</b> Common Name (CN): Nome Comune (NC): Organization (O): Organizazione (O): Organizational Unit (OU): Unità Organizzativa (UO): Serial Number: Numero Seriale: <b>Issued By</b> <b>Rilasciato da</b> <b>Validity</b> <b>Validità</b> Issued On: Emesso Il: Expires On: Scade Il: ClearPrivateData Clear Recent History Elimina la cronologia recente Choose what you want to delete: Scegli cosa vuoi cancellare: Clear history Elimina la cronologia Clear cache Elimina la cache Clear icons Elimina le icone <b>Clear Recent History</b> <b>Elimina la Cronologia Recente</b> Earlier Today Oggi Week Settimana Month Mese All Tutti Clear web databases Pulisci i database web Clear local storage Pulisci l'archiviazione locale Clear cookies Elimina i cookies ClickToFlash Object blocked by ClickToFlash Oggetto bloccato da ClickToFlash Show more information about object Mostra maggiori informazioni sull'oggetto Delete object Cancella oggetto Add %1 to whitelist Aggiungi %1 alla withelist Flash Object Oggetto Flash <b>Attribute Name</b> <b>Nome dell'Attributo</b> <b>Value</b> <b>Valore</b> No more information available. Nessuna ulteriore informazione disponibile. CookieManager Cookies Cookie Stored Cookies Cookie salvati Find: Trova: These cookies are stored on your computer: Questi cookies sono archiviati sul tuo computer: Server Server Cookie name Nome del cookie Name: Nome: Value: Valore: Server: Server: Path: Percorso: Secure: Sicuro: Expiration: Scadenza: <cookie not selected> <cookie non selezionato> Remove all cookies Elimina tutti i cookies Remove cookies Elimina cookies Cookie Filtering Filtraggio cookie <b>Cookie whitelist</b> <b>Cookie consentiti</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) I cookie provenienti da questi server verranno SEMPRE accettati (anche se è stato disabilitato il salvataggio dei cookie) Add Aggiungi Remove Rimuovi <b>Cookie blacklist</b> <b>Cookie bloccati</b> Cookies from these servers will NEVER be accepted I cookie provenienti da questi server non verranno MAI accettati Settings Impostazioni <b>Cookie Settings</b> <b>Impostazioni cookie</b> Allow storing of cookies Consenti il salvataggio dei cookie Delete cookies on close Cancella cookie alla chiusura Match domain exactly Associa il dominio esatto Filter tracking cookies Filtra i cookie traccia <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! <b>Attenzione:</b> Le opzioni di associazione esatta del dominio e di filtraggio dei cookie traccia possono portare al rifiuto dei cookie da parte di alcuni siti. Se si riscontrano problemi, provare a disattivare queste opzioni! Search Cerca Confirmation Conferma Are you sure to delete all cookies on your computer? Sei sicuro di voler cancellare tutti i cookies dal tuo computer? Secure only Solo sicuri All connections Tutte le connessioni Session cookie Cookie della sessione Remove cookie Elimina cookie Add to whitelist Aggiungi ai consentiti Add to blacklist Aggiungi ai bloccati DownloadFileHelper Save file as... Salva come... NoNameDownload DownloadSenzaNome DownloadItem Remaining time unavailable Tempo rimanente non disponibile Error: Cannot write to file! Errore:Impossibile scrivere sul file! Done - %1 Fatto - %1 Cancelled Cancellato few seconds pochi secondi %n seconds %n minutes %n hours Unknown speed Velocità sconosciuta kB/s kB/s MB/s MB/s GB/s GB/s Unknown size Dimensione sconosciuta %2 - unknown size (%3) %2 - dimensione sconosciuta (%3) Remaining %1 - %2 of %3 (%4) Rimangono %1 - %2 di %3 (%4) Cancelled - %1 Cancellato - %1 Delete file Elimina file Do you want to also delete dowloaded file? Vuoi cancellare il file scaricato? Open File Apri file Open Folder Apri cartella Go to Download Page Vai alla pagina di download Copy Download Link Copia collegamento di download Cancel downloading Elimina il download Remove Rimuovi Error Errore Not found Non trovato Sorry, the file %1 was not found! Spiacente, il file %1 non è stato trovato! Error: Errore: DownloadManager Download Manager Gestore download Clear Pulisci %1% of %2 files (%3) %4 remaining %1% di %2 file (%3) %4 rimanenti %1% - Download Manager %1% - Gestore Download Download Finished Download completato All files have been successfully downloaded. Tutti i file sono stati scaricati con successo. Warning Attenzione Are you sure to quit? All uncompleted downloads will be cancelled! Sei sicuro di voler uscire? Tutti i download incompleti saranno cancellati! DownloadOptionsDialog Opening Apertura Copy download link Copia il link di download You have chosen to open Hai scelto di aprire which is a: quale è un: What should QupZilla do with this file? Cosa dovrebbe fare QupZilla con questo file? Open... Apri... Save File Salva File Download with External Manager Scarica tramite gestore dei download esterno from: da: Opening %1 Apertura %1 Download link copied. Link di download copiato. EditSearchEngine Name: Nome: Url: Url: Shortcut: Scorciatoia: Icon: Icona: <b>Note: </b>%s in url or post data represent searched string <b>Nota: </b>%s nell'indirizzo o nei dati inviati rappresenta una stringa di ricerca Post Data: Dati inviati: Change... Cambia... FileSchemeReply No Error Nessun errore Up to higher level directory Cartella superiore Show hidden files Mostra file nascosti Name Nome Size DImensione Last modified Ultima modifica Index for %1 Ordina per %1 Folder is empty. La cartella è vuota. FtpDownloader Cancelled! Cancellato! FtpSchemeReply Up to higher level directory directory superiore Show hidden files Mostra file nascosti Name Nome Size Dimensione Last modified Ultima modifica Index for %1 Indice per %1 Folder is empty. Cartella vuota Unknown command Comando sconosciuto HTML5PermissionsDialog HTML5 Permissions Permessi HTML5 Notifications Notifiche Site Sito Behaviour Comportamento Remove Rimuovi Geolocation Geolocalizzazione Allow Permetti Deny Nega HTML5PermissionsNotification Remember Ricorda Allow Permetti Deny Nega this site questo sito Allow %1 to show desktop notifications? Permetti %1 di mostrare notifiche desktop Allow %1 to locate your position? Permetti %1 di localizzare la tua posizione History No Named Page Pagina senza nome January Gennaio February Febbraio March Marzo April Aprile May Maggio June Giugno July Luglio August Agosto September Settembre October Otobre November Novembre December Dicembre HistoryManager History Cronologia Delete Cancella Clear All History Pulisci tutta la cronologia Optimize Database Ottimizza database Confirmation Conferma Are you sure to delete all history? Sei sicuro di voler cancellare tutta la cronologia? HistoryModel Title Titolo Address Indirizzo Visit Date Data ultima visita Visit Count Numero di visite Today Oggi This Week Questa settimana This Month Questo mese HistorySideBar Search... Cerca... HistoryView Open link in current tab Apri il link nella scheda corrente Open link in new tab Apri il link in una nuova scheda Copy title Copia titolo Copy address Copia indirizzo Remove Rimuovi IconChooser Choose icon... Scegli icona... From file Da file Image (.png, .jpg, .jpeg, .gif) Immagine (.png, .jpg, .jpeg, .gif) Choose file... Scegli file... From database Da database Site Url: Indirizzo del sito: Image files Immagini JsOptions JavaScript Options Optioni Javascript Allow JavaScript to: Permetti a Javascript di: Close windows Chiudi finestra Open popup windows Apri finestra popup Change window size Cambia grandezza finestra Hide menu bar Nascondi barra menu Hide status bar Nascondi barra status Hide tool bar Nascondi barra strumenti Access clipboard Accedi agli appunti LicenseViewer License Viewer Visualizza licenza LocationBar Enter URL address or search on %1 Inserisci URL o cerca con %1 Paste And &Go Incolla e &vai a Clear All Pulisci tutto .co.uk Append domain name on ALT + Enter = Should be different for every country .it Show information about this page Mostra maggiori informazioni su questa pagina LocationCompleterView Switch to tab Cambia scheda MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? QupZilla non è il tuo browser predefinito. Lo vuoi rendere il tuo browser predefinito? Always perform this check when starting QupZilla. Fai sempre questo controllo quando fai partire QupZilla Default Browser Browser predefinito QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. QupZilla è un browser open-source nuovo, veloce e sicuro. QupZilla è rilasciato sotto licenza GPL versione 3 o (a tua discrezione) qualsiasi versione successiva. È basato su WebKit e sul framework Qt. MasterPasswordDialog Encrypted DataBase Settings Impostazioni del database criptato Set/Change Master Password... Imposta/Cambia password principale... Clear Master Password... Rimuovi password principale... This backend does not work without a master password. Questo backend non funziona senza una password principale. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. Questa opzione rimuove la password principale e sposta tutti i dati criptati nel backend "Database (plain text)", passando ad esso. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. La password principale serve a proteggere le password dei siti e le informazioni sui campi d'inserimento. Se imposti una password principale ti verrà chiesto di inserirla una volta per ogni sessione. Current Password: Password attuale: New Password: Nuova password: Confirm Password: Conferma password: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. <b>Nota:</b> La password principale non può essere resettata. Non dimenticarla. Warning! Attenzione! You entered a wrong password! Hai inserito una password errata! New/Confirm password fields do not match! I campi Nuova/Conferma non coincidono! Some data has not been decrypted. The master password was not cleared! Alcuni dati non sono stati criptati. La password principale non è stata rimossa! Are you sure to clear master password and decrypt data? Sei sicuro di voler rimuovere la password principale e decriptare i dati? NavigationBar No Named Page Pagina senza nome Back Indietro Forward Avanti Home Home New Tab Nuova scheda Main Menu Menu principale Exit Fullscreen Chiudi schermo intero Clear history Elimina la cronologia NetworkManager SSL Certificate Error! Errore Certificato SSL! The page you are trying to access has the following errors in the SSL certificate: La pagina cui stai cercando di accedere ha i seguenti errori nel certificato SSL: <b>Organization: </b> <b>Organizzazione: </b> <b>Domain Name: </b> <b>Nome Dominio: </b> <b>Expiration Date: </b> <b>Data di Scadenza: </b> <b>Error: </b> <b>Errore: </b> Would you like to make an exception for this certificate? Vuoi fare un'eccezione per questo certificato? Authorisation required Autorizzazione richiesta Username: Nome Utente: Password: Password: Save username and password on this site Salva nome utente e password per questo sito A username and password are being requested by %1. The site says: "%2" Nome utente e password sono richiesti da %1. Questo sito: "%2" FTP authorisation required Autorizzazione FTP richiesta Login anonymously Login anonimo A username and password are being requested by %1:%2. Un nome utente ed una password sono richieste da %1:%2. Proxy authorisation required Autorizzazione proxy richiesta Remember username and password for this proxy. Salva nome utente e password per questo proxy. A username and password are being requested by proxy %1. Nome utente e password sono richiesti dal proxy %1. PageScreen Page Screen Cattura schermata Format: Formato: Location: Posizione: Browse... Sfoglia... Save as %1 Salva come %1 Choose location... Scegli posizione... File '%1' already exists. Do you want to overwrite it? Il file '%1' esiste già. Vuoi sovrascriverlo? File already exists Il file esiste già PluginsList Application Extensions Estensioni Allow Application Extensions to be loaded Permettere caricamento delle estensioni Settings Impostazioni WebKit Plugins Plugin di WebKit <b>Click To Flash Plugin</b> <b>Plugin Click To Flash</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Click To Flash è un plugin che blocca il caricamento automatico dei contenuti Flash nella pagina. È sempre possibile caricare manualmente Flash cliccando sull'icona play. Whitelist Lista bianca Add Aggiungi Remove Rimuovi Allow Click To Flash Abilita Click To Flash PluginsManager Add site to whitelist Aggiungi sito alla lista bianca Server without http:// (ex. youtube.com) Server senza http:// (es. youtube.com) Error! Errore! Cannot load extension! Impossibile caricare l'estensione! PopupWebView Inspect Element Ispeziona elemento PopupWindow File File &Save Page As... &Salva pagina come... Save Page Screen Salva schermo pagina Send Link... Manda il link... &Print... &Stampa... Close Chiudi Edit Modifica &Undo &Annulla &Redo &Ripeti &Cut &Taglia C&opy C&opia &Paste &Incolla Select All Seleziona tutto Find Trova View Vedi &Stop &Ferma &Reload &Ricarica Zoom &In &Ingrandisci Zoom &Out &Riduci Reset Reimposta &Page Source Sorgente della pagina %1 - QupZilla %1 - QupZilla Preferences Preferences Preferenze QupZilla QupZilla General Generale Appearance Aspetto Tabs Schede Browsing Navigazione Fonts Caratteri Keyboard Shortcuts Scorciatoie da tastiera Downloads Download Password Manager Gestore password Privacy Privacy Notifications Notifiche Extensions Estensioni Other Altro Use current Usa corrente Note: You cannot delete active profile. Nota: Non puoi cancellare un profilo attivo. Create New Crea nuovo Delete Cancella <b>Launching</b> <b>Avvio</b> After launch: Dopo l'avvio: Open blank page Apri pagina vuota Open homepage Apri pagina iniziale Open speed dial Apri speed dial Restore session Ripristina sessione Homepage: Pagina Iniziale: On new tab: In una nuova scheda: Open blank tab Apri scheda vuota Open other page... Apri altra pagina... <b>Profiles</b> <b>Profili</b> Startup profile: Profilo d'avvio: Check for updates on start Controlla aggiornamenti all'avvio Active profile: Profilo attivo: In order to change language, you must restart browser. Per cambiare lingua, è necessario riavviare il browser. <b>Language</b> <b>Lingua</b> Available translations: Lingue disponibili: Don't load tabs until selected Non caricare le schede finché non vengono selezionate Check to see if QupZilla is the default browser on startup Controlla all'avvio se QupZilla è il browser predefinito Check Now Controlla adesso Themes Temi Advanced options Opzioni avanzate <b>Browser Window</b> <b>Finestra del Browser</b> Show StatusBar on start Visualizza la barra di stato all'avvio Show Bookmarks ToolBar on start Visualizza barra dei segnalibri all'avvio Show Navigation ToolBar on start Visualizza barra di navigazione all'avvio <b>Navigation ToolBar</b> <b>Barra di Navigazione</b> Show Home button Mostra pulsante pagina iniziale Show Back / Forward buttons Mostra pulsanti Indietro / Avanti <b>Background<b/> <b>Sfondo</b> Use transparent background Usa sfondo trasparente Show web search bar Mostra la barra di ricerca web Show Add Tab button Mostra pulsante 'Aggiungi Scheda' Show Reload / Stop buttons Mostra i pulsanti Ricarica / Ferma Tabs behaviour Comportamento delle schede Show tab previews Mostra anteprime delle schede Make tab previews animated Anima le anteprime delle schede Hide tabs when there is only one tab Nascondi le schede quando ve ne è solo una Activate last tab when closing active tab Attiva l'ultima scheda quando chiudi la scheda attiva Open new tabs after active tab Apri le nuove schede dopo quella attiva Open new empty tabs after active tab Apri le nuove schede vuote dopo la scheda attiva Automatically switch to newly opened tab Passa automaticamente alla scheda appena aperta Don't quit upon closing last tab Non uscire quando chiudi l'ultima scheda Ask when closing multiple tabs Chiedi quando chiudi più schede Closed tabs list instead of opened in tab bar La lista della pagine chiuse invece di quelle aperte nella barra delle schede Address Bar behaviour Comportamento della barra degli indirizzi Suggest when typing into address bar: Mostra suggerimenti durante la digitazione nella barra: History and Bookmarks Cronologia e segnalibri History Cronologia Bookmarks Segnalibri Nothing Niente Press "Shift" to not switch the tab but load the url in the current tab. Premi "Shift" per non cambiare scheda ma caricare l'indirizzo nella scheda attuale. Propose to switch tab if completed url is already loaded. Proponi di cambiare scheda se l'indirizzo completato è già stato caricato. Always show go icon Mostra sempre l'icona 'Vai' Select all text by double clicking in address bar Seleziona l'intero testo nella barra degli indirizzi con doppio click Select all text by clicking in address bar Seleziona tutto il testo cliccando nella barra degli indirizzi Search with Default Engine Cerca con il motore predefinito Show loading progress in address bar Mostra il caricamento nella barra degli indirizzi Fill Riempi Bottom In fondo Top In cima Custom color: Colore personalizzato: Select color Seleziona colore ... ... Reset Reimposta Web Configuration Configurazione Web Allow Netscape Plugins (Flash plugin) Consenti i plugin Netscape (plugin Flash) Allow JavaScript Abilita JavaScript Allow JAVA Abilita JAVA Allow DNS Prefetch Consenti Prefetch DNS Enable XSS Auditing try to detect possible XSS attacks when executing javascript Abilita l'auditing XSS Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Mostra elementi di sfondo Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Includi link in una selezione concatenata Animated scrolling Scorrimento animato Enable caret browsing Abilita caret browsing Enable spatial navigation Abilita navigazione spaziale Zoom text only Ingrandisci solo il testo Mouse wheel scrolls La rotella del mouse scorre lines on page linee della pagina Default zoom on pages: Ingrandimento predefinito delle pagine: Local Storage Archiviazione Locale Maximum Massimo 50 MB 50 MB 1 1 Maximum pages in cache: Limite pagine nella cache: Allow storing network cache on disk Abilita memorizzazione cache di rete sul disco Store cache in: Salva la cache in: Allow saving history Abilita salvataggio della cronologia Delete history on close Cancella cronologia alla chiusura Allow local storage of HTML5 web content Consenti il salvataggio in locale del contenuto HTML5 Delete locally stored HTML5 web content on close Cancella i contenuti HTML5 salvati in locale alla chiusura Delete now Cancella adesso Proxy Configuration Configurazione proxy Proxy Auto-Config (.pac) file File di autoconfigurazione del proxy (.pac) Reload Ricarica HTTP HTTP SOCKS5 SOCKS5 Port: Porta: Username: Nome Utente: Password: Password: Don't use on: Non utilizzare su: Manual configuration Configurazione manuale System proxy configuration Configurazione proxy di sistema Do not use proxy Non usare proxy <b>Exceptions</b> <b>Eccezioni</b> Server: Server: Use different proxy for https connection Usa un server proxy differente per la connessione https Use script for automatic configuration: Usa uno script per la configurazione automatica: <b>Font Families</b> <b>Famiglie di Font</b> Standard Standard Fixed Fixed Serif Serif Sans Serif Sans Serif Cursive Cursive Fantasy Fantasy <b>Font Sizes</b> <b>Dimensioni carattere</b> Fixed Font Size Dimensione font fissa Default Font Size Dimensione font predefinita Minimum Font Size Dimensione font minima Minimum Logical Font Size Dimensione minima del carattere logico <b>Shortcuts</b> <b>Scorciatoie</b> Switch to tabs with Alt + number of tab Cambia scheda premendo Alt + il numero della scheda Load speed dials with Ctrl + number of speed dial Carica speed dial premendo Ctrl + il numero dello speed dial Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>Percorso file Scaricati</b> Ask everytime for download location Chiedi sempre dove salvare Use defined location: Usa posizione definita: <b>Download Options</b> <b>Opzioni di download</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Usa file di dialogo nativo di sistema (può o non può causare problemi con il download di contenuti protetti SSL) Close download manager when downloading finishes Chiudi il gestore dei download quando termina lo scaricamento <b>External download manager</b> <b>Gestore dei download esterno</b> Use external download manager Usa un gestore dei download esterno Executable: Eseguibile: Arguments: Argomenti: Leave blank if unsure Lascia vuoto se incerto <b>%d</b> will be replaced with URL to be downloaded <b>%d</b> sarà sostituito con l'URL da scaricare <b>AutoFill options</b> <b>Opzioni AutoCompletamento</b> Allow saving passwords from sites Consenti salvataggio password dai siti Send Referer header to servers Invia traccia di intestazione ai server <b>Cookies</b> <b>Cookie</b> Send Do Not Track header to servers Non inviare traccia di intestazione ai server <b>Other</b> <b>Altro</b> Manage CA certificates Gestisci i certificati CA Certificate Manager Gestore certificati <b>SSL Certificates</b> <b>Certificati SSl</b> <b>JavaScript</b> <b>JavaScript</b> Manage JavaScript privacy options Gestisci le opzioni per la privacy di JavaScript JavaScript options Opzioni JavaScript Cookies Manager Gestore Cookie Manage Cookies Gestisci i cookie <b>HTML5 Permissions</b> <b>Permessi HTML5</b> Manage HTML5 permissions Gestisci i permessi HTML5 HTML5 Permissions Permessi HTML5 <b>Notifications</b> <b>Notifiche</b> Use OSD Notifications Usa notifiche OSD Use Native System Notifications (Linux only) Utilizza le notifiche native di sistema (solo Linux) Do not use Notifications Non usare notifiche Expiration timeout: Scadenza timeout: seconds secondi <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Nota:</b>È possibile modificare la posizione di notifica OSD trascinandola sullo schermo. StyleSheet automatically loaded with all websites: Foglio di Stile caricato automaticamente con tutti i siti web: Languages Lingue <b>Preferred language for web sites</b> <b>Lingua preferita per i siti web</b> <b>Change browser identification</b> <b>Cambia l'identificazione del browser</b> User Agent Manager Gestore User Agent Default Predefinito Set as default Imposta come predefinito OSD Notification Notifica OSD Drag it on the screen to place it where you want. Trascina sullo schermo per posizionarlo dove vuoi. Choose download location... Scegli percorso del download... Choose stylesheet location... Scegli la posizione del foglio di stile... Deleted Cancellati Choose executable location... Scegli la posizione dell'eseguibile... Choose cache path... Scegli il percorso per la cache... New Profile Nuovo Profilo Enter the new profile's name: Inserisci il nuovo nome profilo: Error! Errore! This profile already exists! Questo profilo esiste già! Cannot create profile directory! Impossibile creare la directory del profilo! Confirmation Conferma Are you sure to permanently delete "%1" profile? This action cannot be undone! Sei sicuro di voler cancellare definitivamente "%1" il profilo? Questa azione non può essere annullata! Select Color Seleziona colore QObject Native System Notification Notifiche di sistema native Save file as... Salva come... The file is not an OpenSearch 1.1 file. Il file non è un file OpenSearch 1 1. <not set in certificate> <non impostato nel certificato> Unknown size Dimensione sconosciuta KB KB MB MB GB GB Executable: Eseguibile: Arguments: Parametri: Cannot start external program Impossibile avviare il programma esterno Cannot start external program! %1 Impossibile avviare il programma esterno! %1 QtWin Open new tab Apri nuova scheda Opens a new tab if browser is running Apre una nuova scheda se il browser è in esecuzione Open new window Apri nuova finestra Opens a new window if browser is running Apre una nuova finestra se il browser è in esecuzione Open download manager Apri gestore dei download Opens a download manager if browser is running Apre un gestore dei download se il browser è in esecuzione QupZilla QupZilla QupZilla Private Browsing Enabled Attiva navigazione anonima IP Address of current page Indirizzo IP della pagina corrente &About QupZilla &Informazioni su QupZilla Pr&eferences Pr&eferenze Quit Esci &File &File &New Window &Nuova finestra New Tab Nuova scheda Open Location Apri Indirizzo Open &File... Apri &file Close Tab Chiudi scheda Close Window Chiudi finestra &Save Page As... &Salva pagina come... Save Page Screen Salva schermata della pagina Send Link... Invia link... &Print... S&tampa... Import bookmarks... Importa segnalibri... &Edit &Modifica &Undo &Annulla &Redo &Ripeti &Cut Ta&glia C&opy C&opia &Paste &Incolla Select &All Seleziona &Tutto &Find C&erca &View &Visualizza &Navigation Toolbar &Barra di navigazione &Bookmarks Toolbar Barra dei &segnalibri Sta&tus Bar Ba&rra di stato &Menu Bar &Barra menu &Tabs on Top Schede in &cima &Fullscreen Sc&hermo intero &Stop S&top &Reload &Ricarica Character &Encoding Codifica &carattere Enable &Caret Browsing Abilita &Navigazione sicura Toolbars Barre degli strumenti Sidebars Barre laterali Zoom &In &Ingrandisci Zoom &Out &Riduci Reset Ripristina &Page Source &Sorgente pagina Hi&story &Cronologia &Back &Indietro &Forward &Avanti &Home &Home Show &All History Visualizza &tutta la cronologia Closed Tabs Schede chiuse Recently Visited Visitati di recente Most Visited Più visitati &Bookmarks &Segnalibri Bookmark &This Page Aggiungi pagina ai &segnalibri Bookmark &All Tabs Aggiungi ai segnalibri &tutte le schede Organize &Bookmarks Organizza &segnalibri &Tools S&trumenti &Web Search &Ricerca Web Page &Info Informazioni &pagina &Download Manager &Gestore download &Cookies Manager &Gestione cookie &AdBlock &AdBlock RSS &Reader Lettore &RSS Web In&spector Is&pettore web Clear Recent &History Cancella cronologia &recente New &Private Window Nuova finestra di &navigazione anonima &Help &Aiuto About &Qt Informazioni su &QT Information about application Informazione sull'applicazione Configuration Information Informazioni sulla configurazione Report &Issue Riporta &problema Restore &Closed Tab Ripristina &scheda chiusa (Private Browsing) (Navigazione Anonima) Empty Vuoto Restore All Closed Tabs Ripristina tutte le schede chiuse Clear list Pulisci lista Other Altro %1 - QupZilla %1 - QupZilla HTML files File HTML Image files Immagini Text files File di testo All files Tutti i file Open file... Apri file... QupZilla %1 (%2) QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Sono ancora presenti %1 schede aperte e la sessione non verrà salvata. Sei sicuro di voler chiudere QupZilla? Don't ask again Non chiedere più There are still open tabs Ci sono delle schede ancora aperte QupZillaSchemeReply No Error Nessun errore Not Found Non trovato Report Issue Riporta problema If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Se stai riscontrando problemi con QupZilla, prova prima a disattivare tutte le estensioni. <br/>Se ciò non funzionasse, per favore, riempi questo modulo: Your E-mail La tua E-mail Issue type Tipo di problema Issue description Descrizione problema Send Invia E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. L'e-mail è opzionale<br/><b>Note: </b>Per favore,prima leggi <a href=%1>qui</a> come creare un bug report. Please fill out all required fields! Si prega di compilare tutti i campi obbligatori! Start Page Avvia pagina Search on Web Cerca nel web Search results provided by DuckDuckGo Risultati della ricerca forniti da DuckDuckGo About QupZilla Informazioni su QupZilla <h1>Private Browsing</h1> <h1>Navigazione privata</h1> Information about version Informazioni sulla versione Copyright Copyright Version Versione WebKit version Versione WebKit Main developer Sviluppatore principale Contributors Collaboratori Translators Traduttori Speed Dial Speed dial Add New Page Aggiungi nuova pagina Edit Modifica Remove Rimuovi Reload Ricarica Are you sure to remove this speed dial? Sicuro di voler rimuovere questo speed dial? Load title from page Carica titolo dalla pagina Url Url Title Titolo Apply Applica Close Chiudi New Page Nuova pagina Speed Dial settings Impostazioni di Speed Dial Placement: Posizione: Auto Automatico Cover Cover Fit Adatta Fit Width Adatta alla larghezza Fit Height Adatta all'altezza Use background image Utilizza immagine di sfondo Select image Seleziona immagine Maximum pages in a row: Numero massimo di pagine in una riga: Change size of pages: Cambia la dimesione delle pagine: Center speed dials Centra anteprime Restore Session Ripristina sessione Oops, QupZilla crashed. Oops, QupZilla si è chiuso inaspettatamente. We apologize for this. Would you like to restore the last saved state? Siamo spiacenti. Vuoi ripristinare l'ultima sessione salvata? Try removing one or more tabs that you think cause troubles Prova a rimuovere una o più schede che potrebbero provocare problemi Or you can start completely new session Oppure puoi avviare una nuova sessione Configuration Information Informazione sulla configurazione This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Questa pagina contiene informazioni sull'attuale configurazione di QupZilla - importante per risolvere i problemi. Per favore, includi queste informazioni quando invii dei bug report. Browser Identification Identificazione Browser Paths Percorsi Build Configuration Configurazione della build Preferences Preferenze Option Opzione Value Valore Extensions Estensioni Name Nome Author Autore Description Descrizione Application version Versione dell'applicazione Qt version Versione di Qt Build time Rilascio versione Platform Piattaforma Profile Profilo Settings Impostazioni Saved session Salva sessione Pinned tabs Segna scheda Data Dati Themes Temi Translations Traduzioni Disabled Disabilitata <b>Enabled</b> <b>Abilitata</> Debug build Debug build WebGL support Supporto WebGL Windows 7 API API di Windows 7 KDE integration Integrazione in KDE Portable build Build portatile No available extensions. Nessuna estensione disponibile. RSSManager RSS Reader Lettore RSS Empty Vuoto Add feed Aggiungi fonte Edit feed Modifica fonte Delete feed Cancella fonte Optimize Database Ottimizza database Reload Ricarica News Novità Loading... Caricamento... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Non hai nessuna fonte RSS<br/> Si prega di aggiungere l'icona RSS nella barra di navigazione su un sito che offre fonti. Add new feed Aggiungi nuova fonte Please enter URL of new feed: Inserisci l'indirizzo della nuova fonte: New feed Nuova fonte Fill title and URL of a feed: Aggiungi titolo e URL di una fonte: Feed title: Titolo fonte: Feed URL: URL Fonti: Edit RSS Feed Modifica fonti RSS Open link in current tab Apri collegamento nella scheda corrente Open link in new tab Apri il link in una nuova scheda Error in fetching feed Errore nel recupero della fonte RSS feed duplicated Fonte RSS duplicata You already have this feed. Hai già questa fonte. RSSNotification Add this feed into Aggiungi questa fonte in Add Aggiungi RSS feed <b>"%1"</b> Fonte RSS <b>"%1"</b> Internal Reader Lettore interno Other... Altro... Liferea not running Liferea non avviato Liferea must be running in order to add new feed. Liferea deve essere in esecuzione per poter aggiungere nuove fonti. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Per aggiungere questa fonte in un'altra applicazione, puoi usare queste informazioni:<br/><br/><b>Titolo: </b>%1<br/><b>Indirizzo: </b>%2<br/><br/>L'indirizzo di questa fonte è stato copiato negli appunti. Add feed into other application Aggiungi fonte in un'altra applicazione RSSWidget Add RSS Feeds from this site Aggiungi fonte RSS da questo sito Untitled feed Fonte senza titolo Add Aggiungi RecoveryWidget Start New Session Avvia una nuova sessione Restore Ripristina Window %1 Finestra %1 RegisterQAppAssociation Warning! Attenzione! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) Ci sono alcuno problemi. Perfavore, reinstalla QupZilla.⏎ Forse lanciare l'applicazione con i diritti d'amministratore può fare la magia per te! :-) RssIcon Add RSS from this page... Aggiungi RSS da questa pagina... SSLManager Certificate Manager Gestore dei certificati CA Authorities Certificates Certificati di Autorizzazione CA Show info Mostra informazioni This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Questa è la lista dei Certificati di Autorizzazione CA memorizzati nel percorso di sistema standard e in percorsi specificati dall'utente. Local Certificates Certificati locali Import Importa Remove Rimuovi This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Questa è la lista dei Certificati Locali memorizzati nel profilo utente. Questa lista contiene anche tutti i certificati che hanno ricevuto un eccezione. Settings Impostazioni Add Aggiungi If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Se i Certificati di Autorizzazione CA non sono stati caricati automaticamente dal sistema, puoi specificare manualmente il percorso in cui sono salvati. <b>NOTE:</b> Setting this option is a high security risk! <b>NOTA:</b> La modifica di questa opzione è un grosso rischio per la sicurezza! Ignore all SSL Warnings Ignora tutti gli avvisi SSL All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Tutti i certificati devono avere .crt come suffisso. Dopo l'aggiunta o la rimozione dei percorsi di certificazione, è necessario riavviare il browser per rendere effettive le modifiche. Choose path... Scegli il percorso... Import certificate... Importa certificato... Certificate Informations Informazioni sul certificato SearchEnginesDialog Manage Search Engines Gestione motori di ricerca Add... Aggiungi... Remove Rimuovi Edit Modifica Set as default Imposta come predefinito Up Su Down Giu Search Engine Motore di ricerca Shortcut Scorciatoie Defaults Impostazioni Predefinite Add Search Engine Aggiungi motore di ricerca Remove Engine Rimuovi motore You can't remove the default search engine.<br>Set a different engine as default before removing %1. Non è possibile rimuovere il motore di ricerca predefinito.<br>Impostare un motore di ricerca diverso come predefinito prima di rimuovere %1. Edit Search Engine Modifica motore di ricerca SearchEnginesManager Search Engine Added Motore di ricerca aggiunto Search Engine "%1" has been successfully added. Motore di ricerca "%1" aggiunto con successo. Search Engine is not valid! Motore di ricerca non valido! Error Errore Error while adding Search Engine <br><b>Error Message: </b> %1 Errore nell'aggiunta del motore di ricerca <br><b>Messaggio di Errore</b> %1 SearchToolBar No results found. Nessun risultato trovato. SearchToolbar Search: Cerca: Search... Cerca... Highlight Evidenziare Case sensitive Maiuscole e minuscole SideBar Bookmarks Segnalibri History Cronologia SiteInfo Site Info Informazioni sito General Generale Media Media Databases Database Security Sicurezza Size: Dimensione: Site address: Indirizzo sito: Encoding: Codifica: Meta tags of site: Meta tag del sito: Tag Tag Value Valore <b>Security information</b> <b>Informazioni di sicurezza</b> Details Dettagli Image Immagine Image address Indirizzo immagine <b>Preview</b> <b>Anteprima</b> <b>Database details</b> <b>Dettagli del database</b> Name: Nome: Path: Percorso: <database not selected> <database non selezionato> <not set in certificate> <non impostato nel certificato> No databases are used by this page. Questa pagina non utilizza alcun database. <b>Connection is Encrypted.</b> <b>Connessione protetta</b> <b>Your connection to this page is secured with this certificate: </b> <b>La connessione a questa pagina è protetta con questo certificato: </b> <b>Connection Not Encrypted.</b> <b>Connessione non protetta.</b> <b>Your connection to this page is not secured!</b> <b>La connessione a questa pagina non è sicura!</b> Copy Image Location Copia posizione immagine Copy Image Name Copia nome immagine Save Image to Disk Salva immagine Error! Errore! This preview is not available! Questa anteprima non è disponibile! Save image... Salva immagine... Cannot write to file! Impossibile scrivere sul file! Preview not available Anteprima non disponibile SiteInfoWidget More... Altro... Your connection to this site is <b>secured</b>. La connessione a questo sito è <b>sicura</b>. Your connection to this site is <b>unsecured</b>. La connession a questo sito <b>non è sicura</b>. This is your <b>%1</b> visit of this site. Questa è la tua <b>%1</b> visita a questo sito. You have <b>never</b> visited this site before. Non hai <b>mai</b> visitato questo sito prima. first primo second secondo third terzo SourceViewer Source of Fonte di File File Load in page Carica nella pagina Save as... Salva come... Close Chiudi Edit Modifica Undo Annullare Redo Rifare Cut Taglia Copy Copia Paste Incolla Select All Seleziona tutto Find Trova Go to Line... Vai alla riga... View Vista Reload Ricarica Editable Modificabile Word Wrap A capo automatico Source loaded in page Sorgente caricata nella pagina Cannot load in page. Page has been closed. Non posso caricare la pagina. La pagina è stata chiusa Save file... Salva file... Error! Errore! Cannot write to file! Non è possibile scrivere sul file! Error writing to file Errore scrittura su file Source successfully saved Fonte salvata con successo Source reloaded Fonte ricaricata Cannot reload source. Page has been closed. Impossibile ricaricare la sorgente. La pagina è stata chiusa. Editable changed Permessi di scrittura cambiati Word Wrap changed A capo automatico cambiato Enter line number Inserire numero di linea SourceViewerSearch Search: Ricerca: Search... Ricerca... Whole words Parole intere SpeedDial Image files Immagini Select image... Seleziona immagine... Unable to load Caricamento impossibile SpellCheckDialog SpellCheck Controllo grammaticale <b>Dictionary path</b> <b>Percorso dizionario</b> Change... Cambia... <b>User dictionary</b> <b>Dizionario utente</b> Add Aggiungi Remove Rimuovi Using Hunspell library Usando la libreria Hunspell Choose dictionary path... Scegli il percorso per il dizionario Add new word... Aggiungi una nuova parola... Add new word: Aggiungi una nuova parola: Speller No suggestions Nessun suggerimento Add to dictionary Aggiungi al dizionario Settings Impostazioni SqueezeLabelV2 Copy Copia SslErrorDialog SSL Certificate Error! Errore Certificato SSL! Only for this session Solo per questa sessione TabBar &New tab &Nuova scheda &Stop Tab &Chiudi scheda &Reload Tab &Ricarica scheda &Duplicate Tab &Duplica scheda D&etach Tab &Stacca scheda Un&pin Tab S&blocca scheda &Pin Tab &Blocca scheda Re&load All Tabs R&icarica tutte le schede &Bookmark This Tab &Aggiungi la scheda ai segnalibri Bookmark &All Tabs Aggiungi ai segnalibri &tutte le schede Close Ot&her Tabs Chiudi le al&tre schede Cl&ose Chiu&di Reloa&d All Tabs Ricari&ca tutte le schede Restore &Closed Tab Ripristina &schede chiuse Close Tabs Chiudi schede Do you really want to close other tabs? Vuoi davvero chiudere le altre schede? TabWidget New Tab Nuova scheda List of tabs Lista delle schede Loading... Caricamento... No Named Page Pagina senza nome Currently you have %1 opened tabs Attualmente hai %1 schede aperte New tab Nuova scheda Empty Vuoto Restore All Closed Tabs Ripristina tutte le schede chiuse Clear list Pulisci lista TabbedWebView Loading... Caricamento... %1 - QupZilla %1 - QupZilla Inspect Element Ispeziona elemento ThemeManager <b>Name:</b> <b>Nome</b> <b>Author:</b> <b>Autore</b> <b>Description:</b> <b>Descrizione</b> License Licenza ToolButton Stop Stop Reload Ricarica Updater Update available Aggiornamento disponibile New version of QupZilla is ready to download. Nuova versione di QupZilla disponibile per il download. Update Aggiorna UserAgentDialog User Agent Manager Gestore User Agent Change global User Agent Cambia l'User Agent globale Use different User Agents for specified sites Usa User Agent differenti per siti specifici Site Sito User Agent User Agent Add Aggiungi Remove Rimuovi Edit Modifica Add new site Aggiungi nuovo sito Edit site Modifica sito Site domain: Dominio: User Agent: User Agent: WebInspectorDockWidget Web Inspector Ispettore web WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? QupZilla non può gestire i link <b>%1:</b>. Il link richiesto è <ul><li>%2</li></ul>Vuoi che QupZilla provi ad aprire questo link nell'applicazione di sistema? Remember my choice for this protocol Ricorda la mia scelta per questo protocollo External Protocol Request Richiesta protocollo esterno To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Per mostrare questa pagina, QupZilla deve inviare nuovamente la richiesta per farlo (come fare una ricerca sullo shopping, che è già stata fatta.) Confirm form resubmission Conferma per la ritrasmissione Select files to upload... Seleziona i file da caricare... Server refused the connection Il Server ha rifiutato la connessione Server closed the connection Il Server ha chiuso la connessione Server not found Server non trovato Connection timed out Connessione scaduta Untrusted connection Connessione non attendibile Temporary network failure Problema di rete temporaneo Proxy connection refused Connessione al proxy rifiutata Proxy server not found Server proxy non trovato Proxy connection timed out Connessione con il proxy scaduta Proxy authentication required Il proxy richiede l'autenticazione Content not found Cntenuto non trovato Unknown network error Errore di rete sconosciuto AdBlocked Content Contenuto bloccato (AdBlock) Blocked by <i>%1</i> Bloccato da <i>%1</i> Content Access Denied Accesso al contenuto negato Error code %1 Errore codice %1 Failed loading page Caricamento pagina fallito QupZilla can't load page. QupZilla non può caricare la pagina. QupZilla can't load page from %1. QupZilla non può caricare la pagina da %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Controllare l'indirizzo per errori di battitura come <b>ww.</b>esempio.com invece di <b>www.</b>esempio.com If you are unable to load any pages, check your computer's network connection. Se non si riesce a caricare nessuna pagina, controllare la connessione di rete del computer. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Se il tuo computer o la rete sono protetti da un firewall o un proxy, assicurati che QupZilla sia autorizzato ad accedere al Web. Try Again Prova di nuovo JavaScript alert Avviso JavaScript Prevent this page from creating additional dialogs Evita che questa pagina crei finestre di dialogo aggiuntive Choose file... Scegli il file... Cannot read data from <b>%1</b>. Upload was cancelled! Impossibile leggere i dati da <b>%1</b>. Il caricamento è stato annullato! Cannot read file! Impossibile leggere il file! WebSearchBar Manage Search Engines Gestione motori di ricerca Add %1 ... Aggiungi %1 ... Paste And &Search Incolla e &cerca Clear All Pulisci tutto Show suggestions Mostra suggerimenti Search when engine changed Cerca dopo aver cambiato motore di ricerca WebView No Named Page Pagina senza nome Create Search Engine Crea motore di ricerca Cut Taglia Copy Copia Paste Incolla Select All Seleziona tutto Default Predefinito Left to Right Da sinistra a destra Right to Left Da destra a sinistra Bold Grassetto Italic Corsivo Underline Sottolineato &Reload &Ricarica S&top S&top Delete Cancella &Back &Indietro &Forward &Avanti This frame Questa cornice Show &only this frame Mostra s&olo questa cornice Show this frame in new &tab Mostra questa cornice in una nuova &scheda Print frame Stampa cornice Zoom &in &Ingrandisci &Zoom out &Riduci Reset Ripristina Show so&urce of frame Mostra sor&gente della cornice Book&mark page Aggi&ungi la pagina ai Segnalibri &Save page as... Sa&lva pagina come... &Copy page link &Copia indirizzo pagina Send page link... Invia l'indirizzo della pagina... &Print page S&tampa pagina Select &all Seleziona &tutto Validate page Convalida la pagina Show so&urce code Mostra codice so&rgente Show info ab&out site Mostra info su&l sito Open link in new &tab Apri il link in una &nuova scheda Open link in new &window Apri il link in una nuova &finestra B&ookmark link Aggi&ungi il link ai segnalibri &Save link as... &Salva il link come... Send link... Invia link... &Copy link address Copia indiri&zzo link Show i&mage Mostra imma&gine Copy im&age Copia im&magine Copy image ad&dress Copia in&dirizzo immagine &Save image as... Sa&lva immagine come... Send image... Invia immagine... Send text... Invia testo... Google Translate Google Traduttore Dictionary Dizionario Go to &web address Vai all'indirizzo &web Search "%1 .." with %2 Cerca "%1 .." con %2 Search with... Cerca con... &Play &Play &Pause &Pausa Un&mute Volu&me attivato &Mute &Muto &Copy Media Address &Copia indirizzo media &Send Media Address &Invia indirizzo media Save Media To &Disk Salva media su &disco Check &Spelling Controllo&Sillabazione Languages Lingue jsAlert Prevent this page from creating additional dialogs Evita che questa pagina crei finestre di dialogo aggiuntive qupzilla-1.6.0/translations/ja_JP.ts000066400000000000000000011007251226107126500174430ustar00rootroot00000000000000 AboutDialog About QupZilla QupZilla について Authors 著作者 Authors and Contributors 著作者、コントリビューター < About QupZilla < QupZilla について <p><b>Application version %1</b><br/> <p><b>ソフトウェアのバージョン情報 %1</b><br/> <b>WebKit version %1</b></p> <b>WebKit のバージョン情報 %1</b></p> <small>Build time: %1 </small></p> <small>このソフトウェアは以下の日時でビルドされました: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>開発者:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>コントリビューター:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>翻訳者:</b><br/>%1</p> AcceptLanguage Preferred Languages Web ページの言語 Add... 追加... Remove 削除 Up 上へ Down 下へ Personal [%1] 個人設定 [%1] AdBlockAddSubscriptionDialog Add Subscription 購読する Title: ページ名: Address: アドレス: Add new subscription to AdBlock: AdBlock で新しく購読する: AdBlockCustomList Custom Rules カスタムルールの編集 AdBlockDialog AdBlock Configuration AdBlock の設定 Enable AdBlock AdBlock を有効にする Search... 検索... Options オプション AdBlock AdBlock Use only essential part of EasyList (for performance reasons) EasyList の基本的な箇所のみ使用する(パフォーマンスが向上します) Add Rule ルールを追加する Remove Rule ルールを削除する Add Subscription 購読する Remove Subscription 購読を削除する Update Subscriptions 購読しているフィルタを更新する Learn about writing rules... Adblock の記法について学ぶ... AdBlockIcon AdBlock lets you block unwanted content on web pages AdBlock はページ上の望ましくないコンテンツをブロックします Blocked popup window ポップアップがブロックされました AdBlock blocked unwanted popup window. AdBlock は意図しないポップアップをブロックしました。 AdBlock AdBlock Show AdBlock &Settings AdBlock の設定を表示する(&S) Disable on %1 %1 で無効 Disable only on this page このページでのみ無効にする Blocked Popup Windows ポップアップがブロックされました %1 with (%2) %1(%2) No content blocked ブロックされたコンテンツはありません Blocked URL (AdBlock Rule) - click to edit rule ブロックされた URL(AdBlock のルール) - クリックして編集 AdBlockManager Do you want to add <b>%1</b> subscription? <b>%1</b>を購読しますか? AdBlock Subscription AdBlock フィルタの購読 EasyList EasyList AdBlockTreeWidget Add Rule ルールを追加する Remove Rule ルールを削除する Add Custom Rule カスタムルールの追加 Please write your rule here: 新しいルールの追加: %1 (recently updated) %1 (最近アップデートされたもの) AddAcceptLanguage Add Language 言語の追加 Choose preferred language for web sites web ページの言語を選択してください Personal definition: 個人設定の追加: AesInterface Warning! 警告! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. データは QupZilla の最新バージョンによって暗号化されています。 最新バージョンの QupZilla を使ってください。 AutoFill Database (plaintext) データベース(プレーンテキスト) Database (encrypted) データベース(暗号化済み) Enter Master Password マスターパスワードを入力 Permission is required, please enter Master Password: 許可が必要です。マスターパスワードを入力してください: Warning! 警告! Entered password is wrong! 入力されたパスワードは間違っています! This backend needs a master password to be set! QupZilla just switches to its default backend このバックエンドはマスターパスワードの設定を必要とします!QupZilla は既定のバックエンドに切り替わります AutoFillManager Passwords are stored in: パスワードの保存先: Change backend バックエンドの変更 Backend options バックエンドのオプション Passwords パスワード Server サーバー Username ユーザー名 Password パスワード Import/Export インポート/エクスポート Show Passwords パスワードを表示する Edit 編集 Remove 削除 Remove All すべて削除 Exceptions 例外 Import Passwords from File... パスワードをファイルからインポートする... Export Passwords to File... パスワードをファイルにエクスポートする... Search 検索 Change backend... バックエンドの変更... Change backend: バックエンドの変更: Are you sure that you want to show all passwords? 全てのパスワードを表示させますか? Hide Passwords パスワードを隠す Confirmation 確認 Are you sure to delete all passwords on your computer? このコンピューターからすべてのパスワードを削除しますか? Edit password パスワードの編集 Change password: パスワードの変更: Choose file... ファイルの選択... Cannot read file! ファイルの読み込みに失敗しました! Successfully imported インポートに成功しました Error while importing! インポート中にエラーが発生しました! Cannot write to file! ファイルに書き込めません! Successfully exported エクスポートに成功しました AutoFillNotification Update 更新する Remember 保存する Never For This Site このサイトでは保存しない Not Now 今回は保存しない on %1 %1 for <b>%1</b> <b>%1</b> Do you want QupZilla to update saved password %1? QupZilla に保存された %1 のパスワードを更新しますか? Do you want QupZilla to remember the password %1 %2? Qupzilla に %2 で使用する <b>%1</b> のパスワードを記憶させますか? AutoFillWidget Choose username to login ログインするユーザー名を選ぶ Login ログイン Login as <b>%1</b> <b>%1</b> としてログイン BookmarkIcon Bookmark this Page このページをブックマークする Edit this bookmark このブックマークを編集する BookmarksImportDialog Import Bookmarks ブックマークのインポート <b>Import Bookmarks</b> <b>ブックマークのインポート</b> From File ファイルから Internet Explorer Internet Explorer Choose browser from which you want to import bookmarks: ブックマークをインポートしたいブラウザを選択してください: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>注意</b>現在は HTML ファイルとブックマークフォルダからのインポートのみ正常に動作します。 Choose... 選択する... Try to fetch icons for all bookmarks (may take a while) 全てのブックマークを取得する(時間がかかる場合があります) Fetching icons, please wait... アイコンの読み込み中です。お待ちください... Title ページ名 Url URL Next 次へ Cancel キャンセル <b>Importing from %1</b> <b>%1からインポートする</b> Finish 終了 Please press Finish to complete importing process. インポートに成功しました。終了を押してください。 Error! エラーが発生しました! The file doesn't contain any bookmark. このファイルにはブックマークは含まれていません。 Choose directory... フォルダの選択... Choose file... ファイルの選択... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox はブックマークを<b>places.sqlite</b>SQLite データベースに保存します。このファイルは通常以下に保存されます Please choose this file to begin importing bookmarks. インポートを開始するにはこのファイルを選択してください。 Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Google Chrome はブックマークを<b>Bookmarks</b>テキストファイルに保存します。このファイルは通常以下に保存されます Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera はブックマークを<b>bookmarks.adr</b>テキストファイルに保存します。このファイルは通常以下に保存されます You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes HTML によるお気に入り/ブックマークのエクスポートをブラウザがサポートしていれば HTML からインポートできます Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Explorer はブックマークを<b>Favorites</b>フォルダに保存します。このファイルは通常以下に保存されます Please choose this folder to begin importing bookmarks. インポートを開始するにはこのフォルダを選択してください。 No Error エラーなし Unable to open file. ファイルを開けません。 Cannot evaluate JSON code. JSON コードの読み込みに失敗しました。 File does not exist. ファイルが存在しません。 Unable to open database. Is Firefox running? データベースが開けません。 Firefox が起動中ではありませんか? Directory does not exist. フォルダが存在しません The directory does not contain any bookmarks. このフォルダにはブックマークは含まれていません。 BookmarksManager Bookmarks ブックマーク Optimize Database データベースの最適化 Import Bookmarks ブックマークのインポート Add Folder フォルダの追加 Title ページ名 Url URL Expand All すべてのフォルダを開く Collapse All すべてたたむ Add new folder 新しいフォルダの作成 Choose parent folder for new folder: 新しいフォルダの親フォルダの選択: Choose name for new bookmark folder: 新しいブックマークフォルダの名前を選択してください: Add new subfolder 新しいサブフォルダの追加 Choose name for new subfolder in bookmarks toolbar: ブックマークツールナーのサブフォルダの名前を選択してください: Rename Folder フォルダ名の変更 Choose name for folder: フォルダ名を選択してください: Add Subfolder サブフォルダの追加 Rename folder フォルダ名の変更 Remove folder フォルダの削除 Open link in current &tab 現在のタブでリンクを開く(&T) Open link in &new tab 新しいタブでリンクを開く(&N) Move bookmark to &folder ブックマークをフォルダに移動する(&F) Change icon アイコンの変更 Rename bookmark ブックマーク名の編集 Remove bookmark ブックマークの削除 <b>Warning: </b>You already have bookmarked this page! <b>警告</b>このページはすでにブックマークされています! Choose name and location of this bookmark. ブックマーク名と場所を選択してください。 Add New Bookmark 新しいブックマークの追加 Choose folder for bookmarks: ブックマークフォルダの選択: Bookmark All Tabs 全てのタブをブックマークする BookmarksModel Bookmarks In Menu ブックマークメニュー Bookmarks In ToolBar ブックマークツールバー Unsorted Bookmarks 未整理のブックマーク BookmarksSideBar Search... 検索... Open link in current &tab 現在のタブでリンクを開く(&T) Open link in &new tab 新しいタブでリンクを開く(&N) Copy address アドレスのコピー &Delete 削除(&D) BookmarksToolbar &Bookmark Current Page このページをブックマークする(&B) Bookmark &All Tabs 全てのタブをブックマークする(&A) &Organize Bookmarks ブックマークの管理(&O) Show Most &Visited よく見るページの表示(&V) Show Only Icons アイコンのみ表示(ページ名を隠す) &Hide Toolbar ツールバーを非表示(&H) Open bookmark ブックマークを開く Open bookmark in new tab ブックマークを新しいタブで開く Move right 右に移動 Move left 左に移動 Edit bookmark ブックマークの編集 Remove bookmark ブックマークの削除 Edit bookmark: ブックマークの編集: Title: ページ名: Url: URL: Edit Bookmark ブックマークの編集 Most visited よく見るページ Sites you visited the most 最もよく訪れるページ Empty 該当なし BookmarksTree Bookmarks ブックマーク New Folder... 新しいフォルダ... BookmarksWidget Add to Speed Dial Speed Dial に追加 Save 保存 Name: ページ名: Folder: フォルダ: Remove from Speed Dial Speed Dial から削除 Remove 削除 BrowsingLibrary Library ライブラリ Search... 検索... History 履歴 Bookmarks ブックマーク RSS RSS Database Optimized データベースの最適化 Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 データベースの最適化に成功しました。<br/><br/><b>最適化前 </b>%1<br/><b>最適化後 </b>%2 CertificateInfoWidget <b>Issued To</b> <b>発行対象</b> Common Name (CN): 一般名称(CN): Organization (O): 組織(O): Organizational Unit (OU): 部門(OU): Serial Number: シリアル番号: <b>Issued By</b> <b>発行者</b> <b>Validity</b> <b>有効期間</b> Issued On: 発行期日: Expires On: 有効期限: ClearPrivateData Clear Recent History 最近の履歴を消去 Choose what you want to delete: 削除対象を選んでください: Clear history 履歴の消去 Clear cache キャッシュの削除 Clear icons アイコンの削除 <b>Clear Recent History</b> <b>最近の履歴の消去</b> Earlier Today 今日以前 Week Month All すべて Clear web databases web データベースを消去する Clear local storage local strage を消去する Clear cookies Cookie の削除 ClickToFlash Object blocked by ClickToFlash 要素は ClickToFlash によってブロックされています Show more information about object 要素についての情報 Delete object 要素を削除する Add %1 to whitelist %1をホワイトリストに追加する Flash Object Flash 要素 <b>Attribute Name</b> 属性 <b>Value</b> <b>値</b> No more information available. これ以上の情報は取得できません。 CookieManager Cookies Cookie Stored Cookies 保存された Cookie Find: 検索: These cookies are stored on your computer: これらの Cookie があなたのコンピューターに保存されています: Server サーバー Cookie name Cookie 名 Name: 名前: Value: 値: Server: サーバー: Path: パス: Secure: 送信制限: Expiration: 有効期限: <cookie not selected> <Cookie が選択されていません> Remove all cookies 全ての Cookie を削除 Remove cookies Cookie の削除 Cookie Filtering Cookie のフィルタリング <b>Cookie whitelist</b> <b>Cookie のホワイトリスト</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) このサーバーから送信される Cookie を常に許可します(Cookie の保存を無効にしていても許可します) Add 追加 Remove 削除 <b>Cookie blacklist</b> <b>Cookie のブラックリスト</b> Cookies from these servers will NEVER be accepted このサーバーから送信される Cookie を常に許可しません Settings 設定 <b>Cookie Settings</b> <b>Cookie の設定</b> Allow storing of cookies Cookie を許可する Delete cookies on close 終了時に Cookie を削除する Match domain exactly ファーストパーティの Cookie のみ許可 Filter tracking cookies トラッキング Cookie のフィルタリング <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! <b>警告</b> 「ファーストパーティのCookieのみ許可」や「トラッキングCookieのフィルタリング」は一部のCookieを拒否します。Cookie関連のトラブルが生じる場合はこれらのオプションを無効にしてください! Search 検索 Confirmation 確認 Are you sure to delete all cookies on your computer? すべての Cookie を削除してよろしいですか? Secure only 安全な接続のみ All connections 全ての接続 Session cookie セッション Cookie Remove cookie Cookie の削除 Add to whitelist ホワイトリストに追加する Add to blacklist ブラックリストに追加する DownloadFileHelper Save file as... 名前を付けて保存... NoNameDownload 無題の保存 DownloadItem Remaining time unavailable 残り時間が計測不可です Error: Cannot write to file! エラー: ファイルに書き込めません! Done - %1 完了 - %1 Cancelled 中止 few seconds 数秒 %n seconds %n minutes %n hours Unknown speed ダウンロード速度が計測できません kB/s kB/s MB/s MB/s GB/s GB/s Unknown size ファイルサイズが計測できません %2 - unknown size (%3) %2 - サイズ不明(%3) Remaining %1 - %2 of %3 (%4) 残り %1 - %2 全体 %3 (%4) Cancelled - %1 中止 - %1 Delete file ファイルの削除 Do you want to also delete dowloaded file? ファイルの削除も行いますか? Open File ファイルを開く Open Folder フォルダを開く Go to Download Page ダウロードページへ移動 Copy Download Link ダウンロードリンクのコピー Cancel downloading ダウンロードの中止 Remove 削除 Error エラー Not found ファイルが見つかりません Sorry, the file %1 was not found! ファイル名 %1は見つかりませんでした! Error: エラー: DownloadManager Download Manager ダウンロードマネージャ Clear 消去 %1% of %2 files (%3) %4 remaining %1% %2ファイル (%3) 残り%4 %1% - Download Manager %1% - ダウンロードマネージャ Download Finished ダウンロード完了 All files have been successfully downloaded. 全てのファイルのダウンロードに成功しました。 Warning 警告 Are you sure to quit? All uncompleted downloads will be cancelled! QupZilla を終了した場合、ダウンロードはキャンセルされます。終了してよろしいですか? DownloadOptionsDialog Opening 開く Copy download link ダウンロードリンクをコピー You have chosen to open ファイルが開かれました which is a: ファイルの種類: What should QupZilla do with this file? このファイルをどう処理しますか? Open... 開く... Save File 保存する Download with External Manager 外部ダウンローダーの使用 from: サイト: Opening %1 %1を開いています Download link copied. ダウンロードリンクはコピーされました。 EditSearchEngine Name: 名前: Url: URL: Shortcut: ショートカット: Icon: アイコン: <b>Note: </b>%s in url or post data represent searched string <b>注意 </b>%s には検索文字列もしくはポストデータが挿入されます Post Data: ポストデータ: Change... 変更する... FileSchemeReply No Error エラーなし Up to higher level directory 一つ上のディレクトリに移動する Show hidden files 隠しファイルの表示 Name 名前 Size サイズ Last modified 更新日時 Index for %1 %1 のインデックス Folder is empty. このフォルダーは空です。 FtpDownloader Cancelled! 中断されました! FtpSchemeReply Up to higher level directory 一つ上のディレクトリに移動する Show hidden files 隠しファイルの表示 Name 名前 Size サイズ Last modified 更新日時 Index for %1 %1 のインデックス Folder is empty. このフォルダーは空です。 Unknown command Unknown command HTML5PermissionsDialog HTML5 Permissions HTML5 パーミッション Notifications 通知 Site サイト Behaviour 動作 Remove 削除 Geolocation ジオロケーション Allow 許可 Deny 拒否 HTML5PermissionsNotification Remember 記憶させる Allow 許可 Deny 拒否 this site このサイト Allow %1 to show desktop notifications? %1のデスクトップ通知を許可しますか? Allow %1 to locate your position? %1が位置を特定することを許可しますか? History No Named Page 無題 January 1月 February 2月 March 3月 April 4月 May 5月 June 6月 July 7月 August 8月 September 9月 October 10月 November 11月 December 12月 HistoryManager History 履歴 Delete 削除 Clear All History すべての履歴の消去 Optimize Database データベースの最適化 Confirmation 確認 Are you sure to delete all history? すべての履歴を削除してよろしいですか? HistoryModel Title ページ名 Address アドレス Visit Date 訪れた日時 Visit Count 訪れた回数 Today 今日 This Week 今週 This Month 今月 HistorySideBar Search... 検索... HistoryView Open link in current tab 現在のタブでリンクを開く Open link in new tab 新しいタブでリンクを開く Copy title ページ名のコピー Copy address アドレスのコピー Remove 削除 IconChooser Choose icon... アイコンを選択する... From file ファイルから Image (.png, .jpg, .jpeg, .gif) 画像(.png, .jpg, .jpeg, .gif) Choose file... ファイルの選択... From database データベースから Site Url: サイトの URL: Image files 画像ファイル JsOptions JavaScript Options JavaScript オプション Allow JavaScript to: 以下を JavaScript に許可する: Close windows ウィンドウを閉じる Open popup windows ポップアップウィンドウを開く Change window size ウィンドウサイズの変更 Hide menu bar メニューバーを隠す Hide status bar ステータスバーを隠す Hide tool bar ツールバーを隠す Access clipboard クリップボードへのアクセスを許可 LicenseViewer License Viewer ライセンスビューワ LocationBar Enter URL address or search on %1 URL の入力と%1による検索が利用できます Paste And &Go 貼り付けて移動(&G) Clear All ロケーションバーをクリア .co.uk Append domain name on ALT + Enter = Should be different for every country .co.jp Show information about this page このページの情報を表示 LocationCompleterView Switch to tab タブの切り替え MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? QupZilla は現在既定のブラウザに設定されていません。既定のブラウザに設定しますか? Always perform this check when starting QupZilla. QupZilla の起動時に毎回既定のブラウザか確認する。 Default Browser 既定のブラウザ QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. QupZilla は新しい、高速で安全なオープンソースのブラウザです。 QupZilla は GPL version3 (任意で)それ以降のバージョンでリリースされています。 Webkit と Qt フレームワークをもとに作成されています。 MasterPasswordDialog Encrypted DataBase Settings 暗号化されたデータベースの設定 Set/Change Master Password... マスターパスワードの設定/変更... Clear Master Password... マスターパスワードの消去... This backend does not work without a master password. このバックエンドはマスターパスワードなしでは動作しません。 This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. このオプションはマスターパスワードを消去し、すべての暗号化されたデータをバックエンドで"データベース(プレーンテキスト)"に変換し、それへと切り替えます。 The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. マスターパスワードは、サイトパスワードやフォームデータを保護するために使用されます。マスターパスワードを設定した場合は、セッションごとに1度ずつ入力するように求められます。 Current Password: 現在のパスワード: New Password: 新しいパスワード Confirm Password: パスワードの確認: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. <b>注意:</b> マスターパスワードはリセットできません。忘れないようにしてください。 Warning! 警告! You entered a wrong password! パスワードが間違っています! New/Confirm password fields do not match! 新しいパスワードとその確認の入力欄の内容が一致しません。 Some data has not been decrypted. The master password was not cleared! いくつかのデータが複合化されていません。マスターパスワードは消去されませんでした! Are you sure to clear master password and decrypt data? 本当にマスターパスワードと複合化済みのデータを消去しますか? NavigationBar No Named Page 無題 Back 戻る Forward 進む Home ホーム New Tab 新しいタブ Main Menu メインメニュー Exit Fullscreen 全画面表示を終了する Clear history 履歴の消去 NetworkManager SSL Certificate Error! SSL サーバ証明書にエラーがあります! The page you are trying to access has the following errors in the SSL certificate: あなたが接続しようとしているページの SSL サーバ証明書には以下の問題点があります: <b>Organization: </b> 組織 <b>Domain Name: </b> ドメイン名 <b>Expiration Date: </b> 証明書の有効期間 <b>Error: </b> エラー Would you like to make an exception for this certificate? この証明書に対して例外を作成しますか? Authorisation required 認証が必要です Username: ユーザー名: Password: パスワード: Save username and password on this site このページのパスワードとキーワードを保存します A username and password are being requested by %1. The site says: "%2" %1がユーザー名とパスワードを要求しています。<br>"%2" FTP authorisation required FTP 認証が必要です Login anonymously 匿名ログイン A username and password are being requested by %1:%2. ユーザー名とパスワードが%1から要求されています:%2。 Proxy authorisation required プロキシ認証が必要です Remember username and password for this proxy. このプロキシのユーザー名とパスワードを保存する A username and password are being requested by proxy %1. %1プロキシがユーザー名とパスワードを要求しています。 PageScreen Page Screen ページのスクリーンショット Format: フォーマット Location: ロケーション: Browse... 参照... Save as %1 %1 として保存 Choose location... ロケーションを選択する... File '%1' already exists. Do you want to overwrite it? '%1' ファイルは既に存在します。上書きしますか? File already exists ファイルは既に存在しています。 PluginsList Application Extensions 拡張機能 Allow Application Extensions to be loaded 拡張機能を有効にする Settings 設定 WebKit Plugins Webkit の拡張機能 <b>Click To Flash Plugin</b> <b>クリックして Flash プラグインを再生</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Click To Flash は Flash コンテンツが自動で読み込まれるのを防ぎます。 Flash コンテンツはクリックされて初めて読み込まれるようになります。 Whitelist ホワイトリスト Add 追加 Remove 削除 Allow Click To Flash Click to Flash を有効にする PluginsManager Add site to whitelist ホワイトリストにサイトを追加する Server without http:// (ex. youtube.com) http://なしで入力してください(ex. youtube.com) Error! エラーが発生しました! Cannot load extension! エクステンションが読み込めません! PopupWebView Inspect Element 要素の調査 PopupWindow File ファイル &Save Page As... 名前を付けてページを保存(&S)... Save Page Screen ページのスクリーンショットを保存 Send Link... ページの URL をメールで送信する... &Print... ページの印刷(&P)... Close 閉じる Edit 編集 &Undo 元に戻す(&U) &Redo やり直す(&R) &Cut 切り取り(&C) C&opy コピー(&O) &Paste 貼り付け(&P) Select All すべて選択 Find ページ内検索 View 表示 &Stop 中止(&S) &Reload 更新(&R) Zoom &In ページの拡大(&I) Zoom &Out ページの縮小(&O) Reset リセット &Page Source ページのソースを表示(&P) %1 - QupZilla %1 - QupZilla Preferences Preferences 設定 QupZilla QupZilla General 一般 Appearance アピアランス Tabs タブ Browsing ブラウジング Fonts フォント Keyboard Shortcuts キーボードショートカット Downloads ダウンロード Password Manager パスワードマネージャ Privacy プライバシー Notifications 通知 Extensions エクステンション Other その他 Use current 現在のページを設定 Note: You cannot delete active profile. 注意:現在使用中のプロファイルは削除できません。 Create New 新規作成 Delete 削除 <b>Launching</b> <b>起動時の設定</b> After launch: 起動後: Open blank page 空白のページを表示する Open homepage ホームページを開く Open speed dial Speed Dial を開く Restore session 前回のセッションを復元する Homepage: ホームページ: On new tab: 新しいタブ: Open blank tab 空白のタブを開く Open other page... 別のページを開く... <b>Profiles</b> <b>プロファイル</b> Startup profile: 起動時のプロファイル: Check for updates on start 起動時にアップデートを確認 Active profile: 現在使用中のプロファイル: In order to change language, you must restart browser. 言語の変更を反映するには QupZilla を再起動してください。 <b>Language</b> <b>言語</b> Available translations: 使用可能な言語: Don't load tabs until selected タブを選択するまで読み込まない Check to see if QupZilla is the default browser on startup QupZilla が既定のブラウザか起動時に確認する Check Now 確認する Themes テーマ Advanced options 詳細設定 <b>Browser Window</b> <b>ブラウザウィンドウ</b> Show StatusBar on start ステータスバーを表示する Show Bookmarks ToolBar on start ブックマークツールバーを表示する Show Navigation ToolBar on start ナビゲーションツールバーを表示する <b>Navigation ToolBar</b> <b>ナビゲーションツールバー</b> Show Home button ホームボタンを表示する Show Back / Forward buttons 戻る/進むボタンを表示する <b>Background<b/> <b>バックグラウンド</b> Use transparent background バックグラウンドの透過 Show web search bar 検索バーを表示する Show Add Tab button 新しいタブボタンを表示する Show Reload / Stop buttons 更新/中止ボタンの表示 Tabs behaviour タブの動作 Show tab previews タブプレビューを表示する Make tab previews animated タブプレビューのアニメーションを有効にする Hide tabs when there is only one tab タブが1つだけの時タブバーを非表示 Activate last tab when closing active tab アクティブタブを閉じたとき直前のタブをアクティブにする Open new tabs after active tab アクティブなタブの後ろに新しいタブを追加する Open new empty tabs after active tab 新しい空白のタブをアクティブなタブの後ろに開く Automatically switch to newly opened tab 新しいタブが開かれたとき、すぐにそのタブに切り替える Don't quit upon closing last tab 最後のタブを閉じない Ask when closing multiple tabs 複数のタブを閉じるとき確認する Closed tabs list instead of opened in tab bar 閉じたタブをタブバー上の元の位置で開く Address Bar behaviour アドレスバーの動作 Suggest when typing into address bar: アドレスバーへの入力時にサジェストする: History and Bookmarks 履歴とブックマーク History 履歴 Bookmarks ブックマーク Nothing なし Press "Shift" to not switch the tab but load the url in the current tab. Shiht キーを押したときに、タブを切り替えずにページを更新する。 Propose to switch tab if completed url is already loaded. ページの読み込みが完了していた場合、タブを切り替える。 Always show go icon 移動ボタンを常に表示 Select all text by double clicking in address bar ダブルクリックですべて選択 Select all text by clicking in address bar クリックですべて選択 Search with Default Engine デフォルトのエンジンで検索 Show loading progress in address bar ページ読み込み状況をアドレスバーに表示 Fill 全体 Bottom 下部 Top 上部 Custom color: カスタムカラー: Select color 色の選択 ... ... Reset リセット Web Configuration Web 設定 Allow Netscape Plugins (Flash plugin) Flash プラグインを有効にする Allow JavaScript Javascript を有効にする Allow JAVA JAVA を有効にする Allow DNS Prefetch DNS プリフェッチを有効にする Enable XSS Auditing try to detect possible XSS attacks when executing javascript XSS 検知機能を有効にする Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements バックグラウンドの画像や色も印刷する Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key フォーカスを移すときすべてのリンクを参照する Animated scrolling スムーススクロール Enable caret browsing キャレットブラウジングを有効にする Enable spatial navigation 空間ナビゲーションを有効にする Zoom text only テキストのみズーム Mouse wheel scrolls マウスホイールスクロール量 lines on page Default zoom on pages: 既定のズーム率: Local Storage ローカルストレージ Maximum 最大 50 MB 50 MB 1 1 Maximum pages in cache: キャッシュするページの数: Allow storing network cache on disk ネットワークをディスク上に保存する Store cache in: キャッシュの保存: Allow saving history 履歴の保存を有効にする Delete history on close 終了時に履歴を削除する Allow local storage of HTML5 web content HTML5 コンテンツの local storage を許可する Delete locally stored HTML5 web content on close 終了時にローカルに保存された HTML5 コンテンツを削除する Delete now 削除 Proxy Configuration プロキシ設定 Proxy Auto-Config (.pac) file プロキシ自動設定(.pac)ファイル Reload 更新 HTTP HTTP SOCKS5 SOCKS5 Port: ポート番号: Username: ユーザー名: Password: パスワード: Don't use on: プロキシを通さないページ: Manual configuration 手動設定 System proxy configuration システムの設定を使う Do not use proxy プロキシを使用しない <b>Exceptions</b> <b>例外</b> Server: サーバー: Use different proxy for https connection https 接続の際には別のプロキシを使用する Use script for automatic configuration: 自動設定にスクリプトを使用する: <b>Font Families</b> <b>フォント設定</b> Standard 既定のフォント Fixed 等幅フォント Serif 明朝体(Serif) Sans Serif ゴシック体(Sans Serif) Cursive 手書き風(cursive) Fantasy 装飾(Fantasy) <b>Font Sizes</b> <b>フォントサイズ</b> Fixed Font Size 等幅フォントのサイズ Default Font Size 既定のフォントのサイズ Minimum Font Size 最小フォントサイズ Minimum Logical Font Size 最小論理フォントサイズ <b>Shortcuts</b> <b>ショートカット</b> Switch to tabs with Alt + number of tab タブを Alt キーと数字キーで切り替え Load speed dials with Ctrl + number of speed dial Ctrl キーと数字キーでスピードダイアルの項目を読み込む Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>ダウンロードの場所</b> Ask everytime for download location 毎回尋ねる Use defined location: 既定のダウンロード場所: <b>Download Options</b> <b>ダウンロードのオプション</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) ネイティブなファイルダイアログを使う (SSL でセキュアな状態にあるコンテンツのダウンロードに失敗することがあります) Close download manager when downloading finishes ダウンロード終了時にダウンロードマネージャを閉じる <b>External download manager</b> <b>外部ダウンローダマネージャ</b> Use external download manager 外部ダウンローダを使う Executable: 実行するダウンローダを指定: Arguments: 引数: Leave blank if unsure よくわからない場合は空白のままにしてください <b>%d</b> will be replaced with URL to be downloaded <b>%d</b> はダウンロードされる URL に置換されます。 <b>AutoFill options</b> <b>オートフィルの設定</b> Allow saving passwords from sites パスワードの保存を有効にする Send Referer header to servers リファラの送信を許可 <b>Cookies</b> <b>Cookie</b> Send Do Not Track header to servers Do Not Track ヘッダをサーバーに送る <b>Other</b> <b>その他</b> Manage CA certificates 公開鍵証明書の設定 Certificate Manager 証明書マネージャ <b>SSL Certificates</b> <b>SSL 証明書</b> <b>JavaScript</b> <b>JavaScript</b> Manage JavaScript privacy options JavaScript プライバシーオプションの管理 JavaScript options JavaScript オプション Cookies Manager Cookie マネージャ Manage Cookies Cookie の管理 <b>HTML5 Permissions</b> <b>HTML5 パーミッション</b> Manage HTML5 permissions HTML5 パーミッションの管理 HTML5 Permissions HTML5 パーミッション <b>Notifications</b> <b>通知</b> Use OSD Notifications OSD 通知を使う Use Native System Notifications (Linux only) ネイティブの通知を使う(Linux OS のみ可) Do not use Notifications 通知を表示しない Expiration timeout: 通知の表示時間: seconds <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Tips</b>OSD 通知の表示位置はドラッグで変更できます。 StyleSheet automatically loaded with all websites: すべてのページに適用するスタイルシート: Languages 言語 <b>Preferred language for web sites</b> <b>言語設定</b> <b>Change browser identification</b> <b> ブラウザの UA を変更する </b> User Agent Manager User Agent マネージャ Default 既定 Set as default 既定に設定 OSD Notification OSD 通知 Drag it on the screen to place it where you want. 好きな場所にドラッグしてください。 Choose download location... ダウンロード先の指定... Choose stylesheet location... スタイルシートの指定... Deleted 削除されました Choose executable location... 外部ダウンローダの指定... Choose cache path... キャッシュの保存場所の選択... New Profile 新しいプロファイル Enter the new profile's name: 新しいプロファイルの名前を入力してください: Error! エラーが発生しました! This profile already exists! このプロファイルはすでに存在しています! Cannot create profile directory! プロファイルフォルダを作成できません! Confirmation 確認 Are you sure to permanently delete "%1" profile? This action cannot be undone! 本当にプロファイル"%1”を削除してもよろしいですか?一度削除した場合復元はできません! Select Color 色の選択 QObject Native System Notification システム準拠の通知 Save file as... 名前を付けて保存... The file is not an OpenSearch 1.1 file. このファイルは OpenSearch 1.1ファイルではありません。 <not set in certificate> <証明書が発行されていません> Unknown size ファイルサイズが計測できません KB KB MB MB GB GB Executable: 実行: Arguments: 引数: Cannot start external program 外部プログラムを起動できません Cannot start external program! %1 外部プログラムを起動できません! %1 QtWin Open new tab 新しいタブを開く Opens a new tab if browser is running 新しいタブを開く Open new window 新しいウィンドウを開く Opens a new window if browser is running 新しいウィンドウを開く Open download manager ダウンロードマネージャを開く Opens a download manager if browser is running ダウンロードマネージャを開く QupZilla QupZilla QupZilla Private Browsing Enabled プライベートブラウジングを有効にする IP Address of current page 現在のページの IP アドレス &About QupZilla Qupzilla について(&A) Pr&eferences 設定(&P) Quit 終了 &File ファイル(&F) &New Window 新しいウィンドウ(&N) New Tab 新しいタブ Open Location ロケーションバー Open &File... ファイルを開く(&F)... Close Tab タブを閉じる Close Window ウィンドウを閉じる &Save Page As... 名前を付けてページを保存(&S)... Save Page Screen ページのスクリーンショットを保存 Send Link... ページの URL をメールで送信する... &Print... ページの印刷(&P)... Import bookmarks... ブックマークのインポート... &Edit 編集(&E) &Undo 元に戻す(&U) &Redo やり直す(&R) &Cut 切り取り(&C) C&opy コピー(&O) &Paste 貼り付け(&P) Select &All すべてを選択(&A) &Find 検索(&F) &View 表示(&V) &Navigation Toolbar ナビゲーションツールバー(&N) &Bookmarks Toolbar ブックマークツールバー(&B) Sta&tus Bar ステータスバー(&T) &Menu Bar メニューバー(&M) &Tabs on Top タブを上部に表示(&T) &Fullscreen 全画面表示(&F) &Stop 中止(&S) &Reload 更新(&R) Character &Encoding 文字コードエンコーディング(&E) Enable &Caret Browsing キャレットブラウジングを有効にする(&C) Toolbars ツールバー Sidebars サイドバー Zoom &In ページの拡大(&I) Zoom &Out ページの縮小(&O) Reset リセット &Page Source ページのソースを表示(&P) Hi&story 履歴(&S) &Back 戻る(&B) &Forward 進む(&F) &Home ホームを開く(&H) Show &All History 全ての履歴を表示する(&A) Closed Tabs 閉じたタブ Recently Visited 最近訪れたページ Most Visited よく見るページ &Bookmarks ブックマーク(&B) Bookmark &This Page このページをブックマークする(&B) Bookmark &All Tabs 全てのタブをブックマークする(&A) Organize &Bookmarks ブックマークの管理(&B) &Tools ツール(&T) &Web Search Web 検索(&W) Page &Info ページの情報を表示(&I) &Download Manager ダウンロードマネージャ(&D) &Cookies Manager Cookie マネージャ(&C) &AdBlock AdBlock(&A) RSS &Reader RSS リーダー(&R) Web In&spector Web 開発(&S) Clear Recent &History 最近の履歴を消去(&H) New &Private Window 新しいプライベートウィンドウ(&P) &Help ヘルプ(&H) About &Qt Qt について(&Q) Information about application アプリケーションの情報 Configuration Information 設定情報 Report &Issue 問題を報告する(&I) Restore &Closed Tab 閉じたタブを開く(&C) (Private Browsing) (プライベートブラウジング) Empty 該当なし Restore All Closed Tabs 閉じたタブをすべて開く Clear list 一覧の消去 Other その他 %1 - QupZilla %1 - QupZilla HTML files HTML ファイル Image files 画像ファイル Text files テキストファイル All files すべてのファイル Open file... ファイルを開く... QupZilla %1 (%2) QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? 現在%1個のタブが開いています。セッションは保存されません。 QupZilla を終了しますか? Don't ask again 次回からは表示しない There are still open tabs まだ開いているタブがあります QupZillaSchemeReply No Error エラーなし Not Found ファイルが見つかりません Report Issue 問題を報告する If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: QupZilla を使用中に問題が発生した場合はまずエクステンションを無効にしてみてください。<br/>それでも問題が解決されない場合以下のフォームに書き込んでください: Your E-mail E-mail アドレス Issue type 問題の種類 Issue description 問題の説明 Send 送信 E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. E-mail アドレスの記入は必須ではありません。<br/><b>注意</b>バグレポートの書き方についてまず<a href=%1>こちらから</a>ご覧ください。 Please fill out all required fields! 必須項目を記入して送信してください! Start Page スタートページ Search on Web Web で検索する Search results provided by DuckDuckGo 検索結果は DuckDuckGo から提供されます About QupZilla QupZilla について <h1>Private Browsing</h1> <h1>プライベートブラウジング<h1/> Information about version バージョン情報 Copyright Copyright Version バージョン WebKit version WebKit version Main developer 開発者 Contributors コントリビューター Translators 翻訳者 Speed Dial Speed Dial Add New Page 新しいページを追加する Edit 編集 Remove 削除 Reload 更新 Are you sure to remove this speed dial? 本当にこの Speed Dial を削除しますか? Load title from page ページ名を取得する Url URL Title ページ名 Apply 適用 Close 閉じる New Page 新しいページ Speed Dial settings Speed Dial の設定 Placement: Speed Dial の配置: Auto 自動 Cover カバー Fit 調整 Fit Width 横幅に合わせて調整 Fit Height 縦幅に合わせて調整 Use background image 背景画像を表示する Select image 画像の選択 Maximum pages in a row: 行数の指定: Change size of pages: サムネイルのサイズを変更する: Center speed dials Speed Dial を中央寄せで使う Restore Session セッションの復元 Oops, QupZilla crashed. QupZilla がクラッシュしてしまいました。 We apologize for this. Would you like to restore the last saved state? 申し訳ありません。以前のセッションを復元しますか? Try removing one or more tabs that you think cause troubles トラブルの原因と思われるタブを削除してみてください Or you can start completely new session 新しいセッションで開始することもできます Configuration Information 設定情報 This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. このページは QupZilla の現在の設定についての情報が表示されています。これらの情報はトラブルシューティングに非常に大切です。バグレポートの際は、これらの情報を含めて送信してください。 Browser Identification User Agent Paths パス Build Configuration Build Configuration Preferences 設定 Option オプション Value Extensions エクステンション Name 名前 Author 作成者 Description 説明 Application version Application version Qt version Qt version Build time Build time Platform プラットフォーム Profile プロファイル Settings 設定 Saved session 保存されたセッション Pinned tabs ピン止めされたタブ Data データ Themes テーマ Translations 翻訳 Disabled 無効 <b>Enabled</b> <b>有効</b> Debug build デバッグビルド WebGL support WebGL サポート Windows 7 API Windows 7 API KDE integration KDE integration Portable build Portable build No available extensions. エクステンションが見つかりません。 RSSManager RSS Reader RSS リーダー Empty 該当なし Add feed フィードの追加 Edit feed フィードの編集 Delete feed フィードの削除 Optimize Database データベースの最適化 Reload 更新 News ニュース Loading... 読み込み中... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. RSS フィードがありません。<br/>RSS フィードが取得可能な場合ロケーションバーに RSS アイコンが表示されます。 Add new feed 新しいフィードの追加 Please enter URL of new feed: 新しいフィードの URL を入力してください: New feed 新しいフィード Fill title and URL of a feed: フィードの URL とタイトルを入力してください: Feed title: フィード名: Feed URL: フィード URL: Edit RSS Feed RSS フィードの編集 Open link in current tab 現在のタブでリンクを開く Open link in new tab 新しいタブでリンクを開く Error in fetching feed フィード読み込みエラー RSS feed duplicated RSS フィードの重複 You already have this feed. このフィードはすでに登録されています。 RSSNotification Add this feed into このフィードを以下に追加する Add 追加 RSS feed <b>"%1"</b> RSS フィード <b>"%1"</b> Internal Reader 内部リーダー Other... その他... Liferea not running Liferea は起動していません Liferea must be running in order to add new feed. 新しいフィードを追加するには Liferea が起動していなくてはなりません。 To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. この RSS フィードをその他のアプリケーションに追加するにはこの情報を使ってください。:<br/><br/><b>ページ名:</b>%1<br/><b>URL:</b>%2<br/><br/>このフィードの URL アドレスはクリップボードにコピーされます。 Add feed into other application フィードをその他のアプリケーションに追加する RSSWidget Add RSS Feeds from this site このページの RSS フィードを追加する Untitled feed 無題のフィード Add 追加する RecoveryWidget Start New Session 新しいセッションの開始 Restore 復元 Window %1 %1 ウィンドウ RegisterQAppAssociation Warning! 警告! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) 問題が発生しています。 QupZilla を再インストールしてください。管理者権限で再インストール後には問題は解決されるはずです(^_^) RssIcon Add RSS from this page... このページの RSS を追加する... SSLManager Certificate Manager 証明書マネージャ CA Authorities Certificates 公開鍵証明書 Show info 情報を表示する This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. 一般的なシステムのパス、およびユーザー設定のパスにおける公開鍵証明書のリストです。 Local Certificates ローカル証明書 Import インポート Remove 削除 This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. あなたのユーザープロファイルに保存されているローカル証明書のリストです。これらのうちには例外的な証明書も含まれます。 Settings 設定 Add 追加 If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. 公開鍵証明書が自動的に読み込まれない場合、証明書が保存されたパスを指定することでマニュアル読み込みが可能です。 <b>NOTE:</b> Setting this option is a high security risk! <b>注意</b>このオプションを有効にすることはセキュリティリスクを劇的に高めます! Ignore all SSL Warnings SSL 証明書に関する警告を無視する All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. 証明書は拡張子が .crx でなくてはいけません。 証明書を追加、もしくは削除した場合は変更を反映させるために QupZilla の再起動が必要です。 Choose path... パスを選択する... Import certificate... 証明書のインポート... Certificate Informations 証明書情報 SearchEnginesDialog Manage Search Engines 検索エンジンの管理 Add... 追加... Remove 削除 Edit 編集 Set as default 既定に設定 Up 上へ Down 下へ Search Engine 検索エンジン Shortcut ショートカット Defaults 既定 Add Search Engine 検索エンジンの追加 Remove Engine 検索エンジンの削除 You can't remove the default search engine.<br>Set a different engine as default before removing %1. デフォルトの検索エンジンは削除できません。<br>他の検索エンジンをデフォルトに設定してから削除してください %1。 Edit Search Engine 検索エンジンの編集 SearchEnginesManager Search Engine Added 検索エンジンの追加 Search Engine "%1" has been successfully added. 検索エンジン"%1"を追加しました。 Search Engine is not valid! 検索エンジンの指定が正しくありません! Error エラー Error while adding Search Engine <br><b>Error Message: </b> %1 検索エンジンの追加中にエラーが発生しました。<br><b>エラーメッセージ</b> %1 SearchToolBar No results found. 該当なし。 SearchToolbar Search: 検索: Search... 検索... Highlight ハイライト Case sensitive 大文字と小文字を区別する SideBar Bookmarks ブックマーク History 履歴 SiteInfo Site Info ページ情報 General 一般 Media メディア Databases データベース Security セキュリティ Size: サイズ: Site address: ページの URL: Encoding: 文字コード: Meta tags of site: このページの Meta タグ: Tag タグ Value <b>Security information</b> <b>セキュリティ情報</b> Details 詳細 Image 画像 Image address 画像の URL <b>Preview</b> <b>プレビュー</b> <b>Database details</b> <b>データベースの詳細</b> Name: 名前: Path: パス: <database not selected> <データベースが選択されていません> <not set in certificate> <証明書が発行されていません> No databases are used by this page. このページではデータベースは使用されていません。 <b>Connection is Encrypted.</b> <b>接続は暗号化されています。</b> <b>Your connection to this page is secured with this certificate: </b> <b>接続の安全性は以下の証明書によって保障されています:</b> <b>Connection Not Encrypted.</b> <b>接続は暗号化されていません。</b> <b>Your connection to this page is not secured!</b> <b>このページへの接続は安全ではありません!</b> Copy Image Location 画像の URL をコピー Copy Image Name 画像の名前をコピー Save Image to Disk 画像の保存 Error! エラーが発生しました! This preview is not available! この画像のプレビューに失敗しました! Save image... 画像の保存... Cannot write to file! ファイルに書き込めません! Preview not available この画像のプレビューはできません SiteInfoWidget More... 表示... Your connection to this site is <b>secured</b>. このページへの接続は安全性が保障されています。 Your connection to this site is <b>unsecured</b>. このページへの接続は安全性が保障されていません。 This is your <b>%1</b> visit of this site. このサイトに訪れるのは<b>%1</b>回目です。 You have <b>never</b> visited this site before. このサイトに訪れたのは初めてです。 first 1 second 2 third 3 SourceViewer Source of ソース File ファイル Load in page ページの読み込み Save as... 名前を付けて保存... Close 閉じる Edit 編集 Undo 元に戻す Redo やり直す Cut 切り取り Copy コピー Paste 貼り付け Select All すべて選択する Find ページ内検索 Go to Line... 行数を指定して表示... View 表示 Reload 更新 Editable 編集 Word Wrap 自動改行 Source loaded in page ソースはページに読み込まれました Cannot load in page. Page has been closed. ページを読み込むことができません。ページが閉じられています。 Save file... ファイルを保存... Error! エラーが発生しました! Cannot write to file! ファイルに書き込めません! Error writing to file ファイルに書き込めません Source successfully saved ソースの保存に成功しました Source reloaded ソースが更新されました Cannot reload source. Page has been closed. ソースを更新できません。元ページが閉じられています。 Editable changed 編集の有効/無効状態が変更されました Word Wrap changed 自動改行の有効/無効が変更されました Enter line number 行数を入力してください SourceViewerSearch Search: 検索: Search... 検索... Whole words 単語単位 SpeedDial Image files 画像ファイル Select image... 画像を選択する... Unable to load 読み込み失敗 SpellCheckDialog SpellCheck スペルチェック <b>Dictionary path</b> <b>辞書のパス</b> Change... 変更... <b>User dictionary</b> <b>ユーザー辞書</b> Add 追加 Remove 削除 Using Hunspell library Hunspell ライブラリを使用する Choose dictionary path... 辞書のパスを選択する... Add new word... 新しい単語の追加... Add new word: 新しい単語の追加: Speller No suggestions サジェストなし Add to dictionary 辞書に追加 Settings 設定 SqueezeLabelV2 Copy コピー SslErrorDialog SSL Certificate Error! SSLサーバ証明書にエラーがあります! Only for this session このセッションのみ TabBar &New tab 新しいタブ(&N) &Stop Tab タブをの読み込みを中止する(&S) &Reload Tab 現在のタブを更新する(&R) &Duplicate Tab タブの複製(&D) D&etach Tab タブの分離(&D) Un&pin Tab タブのピン止め解除(&P) &Pin Tab タブのピン止め(&P) Re&load All Tabs 全てのタブを更新する(&L) &Bookmark This Tab このタブをブックマーク(&B) Bookmark &All Tabs 全てのタブをブックマークする(&A) Close Ot&her Tabs 他のタブを閉じる(&H) Cl&ose 閉じる(&L) Reloa&d All Tabs 全てのタブを更新する(&D) Restore &Closed Tab 直前に閉じたタブを開く(&C) Close Tabs Do you really want to close other tabs? TabWidget New Tab 新しいタブ List of tabs タブの一覧 Loading... ロード中... No Named Page 無題 Currently you have %1 opened tabs 現在%1個のタブを開いています New tab 新しいタブ Empty 該当なし Restore All Closed Tabs 閉じたタブをすべて開く Clear list 一覧の消去 TabbedWebView Loading... 読み込み中... %1 - QupZilla %1 - QupZilla Inspect Element 要素の調査 ThemeManager <b>Name:</b> <b>テーマ名:</b> <b>Author:</b> <b>作者:</b> <b>Description:</b> <b>説明:</b> License ライセンス ToolButton Stop 中止 Reload 更新 Updater Update available アップデートがあります New version of QupZilla is ready to download. QupZilla の新しいバージョンのダウンロードができます。 Update アップデート UserAgentDialog User Agent Manager User Agent マネージャ Change global User Agent 既定の User Agent Use different User Agents for specified sites 特定のサイトに個別の User Agent を使う Site サイト User Agent User Agent Add 追加 Remove 削除 Edit 編集 Add new site 新しいサイトの追加 Edit site サイトの編集 Site domain: ドメイン: User Agent: User Agent: WebInspectorDockWidget Web Inspector Web インスペクタ WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? QupZilla は<b>%1:</b>のリンクを処理できません。リクエストされたリンクは<ul><li>%2</li></ul>システムアプリケーションでこのリンクを開きますか? Remember my choice for this protocol このプロトコルに対する設定を記憶する External Protocol Request 外部プロトコル リクエスト To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) このページを表示するためには QupZilla がもう一度リクエストを送信する必要があります。(検索、あるいはオンラインショッピングなどの場合リクエストはすでに一度送信されています) Confirm form resubmission フォームの再送信の確認 Select files to upload... アップロードするファイルの選択... Server refused the connection サーバーに接続を拒否されました Server closed the connection サーバーは接続を切断しました Server not found サーバーが見つかりません Connection timed out 接続のタイムアウト Untrusted connection 信頼できない接続 Temporary network failure 一時的なネットワーク障害が発生しています Proxy connection refused プロキシ接続が拒否されました Proxy server not found プロキシサーバが見つかりません Proxy connection timed out プロキシ接続のタイムアウト Proxy authentication required プロキシ認証が必要です Content not found コンテンツが見つかりません Unknown network error 予期しないエラーが発生しました AdBlocked Content ブロックされたコンテンツ Blocked by <i>%1</i> <i>%1<i/>によってブロックされました Content Access Denied コンテンツに接続できません Error code %1 Error code %1 Failed loading page ページの読み込みに失敗しました QupZilla can't load page. QupZilla はページを読み決めませんでした。 QupZilla can't load page from %1. QupZilla は %1 からのページ読み込みに失敗しました。 Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com アドレスに入力ミスがないか確認してみてください。たとえば<b>www.</b>example.com と打つべきところで<b>ww.</b>example.com と入力していませんか If you are unable to load any pages, check your computer's network connection. もしもすべてのページが読み込めない場合、コンピューターの接続を確認してください。 If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. もしあなたのコンピューターの接続がファイアーウォールやプロキシで制限されているなら、 QupZilla の接続を許可してください。 Try Again 再試行 JavaScript alert JavaScript alert Prevent this page from creating additional dialogs このページでこれ以上ダイアログを表示させない Choose file... ファイルの選択... Cannot read data from <b>%1</b>. Upload was cancelled! <b> %1 </b> のデータが読み込めません。アップロードは中断されました! Cannot read file! ファイルが読み込めません! WebSearchBar Manage Search Engines 検索エンジンの編集 Add %1 ... %1を検索エンジンリストに追加する... Paste And &Search 貼り付けて検索(&s) Clear All 検索バーをクリア Show suggestions サジェストの表示 Search when engine changed 検索エンジンの変更時に検索する WebView No Named Page 無題 Create Search Engine 検索エンジンの作成 Cut 切り取り Copy コピー Paste 貼り付け Select All すべてを選択 Default 既定 Left to Right 左から右 Right to Left 右から左 Bold 太字 Italic 斜体 Underline 下線 &Reload 更新(&R) S&top 中止(&S) Delete 削除 &Back 戻る(&b) &Forward 進む(&F) This frame このフレーム Show &only this frame このフレームのみ表示(&O) Show this frame in new &tab 新しいタブでこのフレームを開く(&T) Print frame このフレームを印刷 Zoom &in ページの拡大(&I) &Zoom out ページの縮小(&O) Reset リセット Show so&urce of frame フレームのソースを表示(&U) Book&mark page このページをブックマーク(&B) &Save page as... 名前を付けてページを保存(&S)... &Copy page link ページの URL をコピー(&C) Send page link... ページの URL をメールで送信... &Print page ページの印刷(&P) Select &all すべてを選択(&A) Validate page ページの W3C 準拠チェック Show so&urce code ソースの表示(&U) Show info ab&out site このページの情報を表示(&O) Open link in new &tab 新しいタブでリンクを開く(&T) Open link in new &window 新しいウィンドウでリンクを開く(&W) B&ookmark link リンクをブックマーク(&O) &Save link as... 名前を付けてリンクを保存(&S)... Send link... リンクをメールで送信... &Copy link address リンクの URL をコピー(&C) Show i&mage 画像を表示(&M) Copy im&age 画像のコピー(&D) Copy image ad&dress 画像の URL をコピー(&D) &Save image as... 名前を付けて画像を保存(&S)... Send image... 画像をメールで送信... Send text... テキストをメールで送信... Google Translate Google 翻訳 Dictionary 辞書 Go to &web address URL へ移動(&W) Search "%1 .." with %2 "%1"を%2で検索 Search with... 検索... &Play 再生(&P) &Pause 一時停止(&P) Un&mute ミュート解除(&M) &Mute ミュート(&M) &Copy Media Address メディアの URL をコピー(&C) &Send Media Address メディアのアドレスを送る(&S) Save Media To &Disk メディアの保存(&D) Check &Spelling スペルチェック(&S) Languages 言語 jsAlert Prevent this page from creating additional dialogs このページでこれ以上ダイアログを表示させない qupzilla-1.6.0/translations/ka_GE.ts000066400000000000000000011356701226107126500174350ustar00rootroot00000000000000 AboutDialog About QupZilla QupZilla-ს შესახებ Authors ავტორები Authors and Contributors ავტორები და მონაწილეები < About QupZilla < QupZilla-ს შესახებ <p><b>Application version %1</b><br/> <p><b>პროგრამის ვერსია %1</b><br/> <b>WebKit version %1</b></p> <b>WebKit-ის ვერსია %1</b></p> <small>Build time: %1 </small></p> <small>აწყობის დრო: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>მთავარი დეველოპერი:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>მონაწილეები:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>მთარგმნელები:</b><br/>%1</p> AcceptLanguage Preferred Languages სასურველი ენებეი Add... დამატება... Remove წაშლა Up მაღლა Down დაბლა Personal [%1] პერსონალური [%1] AdBlockAddSubscriptionDialog Add Subscription Title: Address: Add new subscription to AdBlock: AdBlockCustomList Custom Rules AdBlockDialog AdBlock Configuration AdBlock-ის კონფიგურაცია Enable AdBlock AdBlock-ის ჩართვა Search... ძებნა... Options AdBlock AdBlock Use only essential part of EasyList (for performance reasons) Add Rule წესის დამატება Remove Rule Add Subscription Remove Subscription Update Subscriptions Learn about writing rules... AdBlockIcon AdBlock lets you block unwanted content on web pages AdBlock გაძლევთ საშუალებას რომ ვებ-გვერდის არასასურველი შიგთავსი დაბლოკოთ Blocked popup window დაბლოკილი ამომტხარი ფანჯრები AdBlock blocked unwanted popup window. AdBlock-მა დაბლოკა არასასურველი ამომხტარი ფანჯარა. AdBlock AdBlock Show AdBlock &Settings AdBlock-ის &პარამეტრების ჩვენება Disable on %1 Disable only on this page Blocked Popup Windows დაბლოკილი ამომხტარი ფანჯრები %1 with (%2) %1 (%2)-ით No content blocked შიგთავსი არ დაბლოკილა Blocked URL (AdBlock Rule) - click to edit rule დაბლოკილი ბმული (AdBlock-ის წესი) - დააწკაპუნეთ რათა დაარედაქტიროთ AdBlockManager Do you want to add <b>%1</b> subscription? AdBlock Subscription EasyList AdBlockTreeWidget Add Rule Remove Rule Add Custom Rule Please write your rule here: %1 (recently updated) AddAcceptLanguage Add Language ენის დამატება Choose preferred language for web sites აირჩიეთ სასურველი ენა ვებ-საიტებისთვის Personal definition: პერსონალური განსაზღვრება: AesInterface Warning! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. AutoFill Database (plaintext) Database (encrypted) Enter Master Password Permission is required, please enter Master Password: Warning! Entered password is wrong! This backend needs a master password to be set! QupZilla just switches to its default backend AutoFillManager Passwords are stored in: Change backend Backend options Passwords პაროლები Server სერვერი Username მომხმარებლის სახელი Password პაროლი Import/Export შემოტანა/გატანა Show Passwords პაროლების ჩვენება Edit რედაქტირება Remove წაშლა Remove All ყველას წაშლა Exceptions გამონაკლისები Import Passwords from File... პაროლების შემოტანა ფაილიდან... Export Passwords to File... პაროლების გატანა ფაილში... Search Change backend... Change backend: Are you sure that you want to show all passwords? დარწმუნებული ხართ რომ ყველა პაროლის ჩვენება გსურთ? Hide Passwords პაროლების დამალვა Confirmation თანხმობა Are you sure to delete all passwords on your computer? დარწმუნებული ხართ რომ თქვენ კომპიუტერზე ყველა პაროლის წაშლა გსურთ? Edit password პაროლის რედაქტირება Change password: პაროლის შეცვლა: Choose file... ფაილის არჩევა... Cannot read file! ფაილის წაკითხვა ვერ მოხერხდა! Successfully imported შემოტანა წარმატებით დასრულდა Error while importing! შემოტანისას დაფიქსირდა შეცდომა! Cannot write to file! ფაილში ჩაწერა ვერ მოხერხდა! Successfully exported გატანა წარმატებით დასრულდა AutoFillNotification Update Remember Never For This Site Not Now on %1 for <b>%1</b> Do you want QupZilla to update saved password %1? Do you want QupZilla to remember the password %1 %2? AutoFillWidget Choose username to login Login Login as <b>%1</b> BookmarkIcon Bookmark this Page ამ გვერდის ჩანიშვნა Edit this bookmark ამ სანიშნის რედაქტირება BookmarksImportDialog Import Bookmarks სანიშნების შემოტანა <b>Import Bookmarks</b> <b>სანიშნების შემოტანა<b> From File ფაილიდან Internet Explorer Choose browser from which you want to import bookmarks: აირჩიეთ ბრაუზერი რომლიდანაც სანიშნების შემოტანა გსურთ: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>შენიშვნა:</b> ჯერ-ჯერობით მხოლოდ Html ფაილიდან შემოტანას შეუძლია სანიშნების საქაღალდეებით შემოტანა. Choose... არჩევა... Try to fetch icons for all bookmarks (may take a while) Fetching icons, please wait... ხატულების ამოკრეფა, გთხოვთ მოიცადოთ... Title სათაური Url ბმული Next შემდეგი Cancel გაუქმება <b>Importing from %1</b> <b>შემოტანა %1-დან</b> Finish დასრულება Please press Finish to complete importing process. შემოტანის პროცესის დასასრულებლად დააწკაპუნეთ ღილაკს დასრულება. Error! შეცდომა! The file doesn't contain any bookmark. Choose directory... დირექტორიის არჩევა... Choose file... ფაილის არჩევა... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox თავის სანიშნებს ინახავს <b>places.sqlite</b>SQLite მონაცემთა ბაზაში. ჩვეულებრივ ეს ფაილი გათავსებულია მდებარეობაში Please choose this file to begin importing bookmarks. გთხოვთ აირჩიეთ ფაილი რათა დაიწყოთ სანიშნების შემოტანა. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Google Chrome სანიშნებს ინახავს<b>Bookmarks</b> ტექსტურ ფაილში. ჩვეულებრივ ეს ფაილი განთავსებულია მდებარეობაში Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera სანიშნებს ინახავს<b>bookmarks.adr</b> ტექსტურ ფაილში. ჩვეულებრივ ეს ფაილი განთავსებულია მდებარეობაში You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes თქვენ სანიშნების შემოტანა შეგიძლიათ ნებისმიერი ბრაუზერიდან რომელსაც აქვს HTML-ად გამოტანის მხარდაჭერა. ამ ფაილს ჩვეულებრივ აქვს ეს სუფიქსები Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Explorer სანიშნებს ინახავს<b>Favorites</b> საქაღალდეში. ჩვეულებრივ ეს საქაღალდე განთავსებულია მდებარეობაში Please choose this folder to begin importing bookmarks. გთხოვთ აირჩიეთ ეს საქაღალდე რათა დაიწყოთ სანიშნების შემოტანა. No Error შეცდომა არ არის Unable to open file. ფაილის გახსნა ვერ მოხერხდა. Cannot evaluate JSON code. JSON კოდის გამოთვლა ვერ მოხერხდა. File does not exist. ფაილი არ არსებობს. Unable to open database. Is Firefox running? მონაცემთა ბაზის გახსნა ვერ მოხერხდა. Firefox გაშვებულია? Directory does not exist. The directory does not contain any bookmarks. BookmarksManager Bookmarks სანიშნები Optimize Database მონაცემთა ბაზის ოპტიმიზირება Import Bookmarks სანიშნების შემოტანა Add Folder საქაღალდის დამატება Title უსათაურო Url ბმული Expand All Collapse All Add new folder ახალი საქაღალდის დამატება Choose parent folder for new folder: Choose name for new bookmark folder: აირჩიეთ სახელი სანიშნების ახალი საქაღალდისთვის: Add new subfolder ახალი ქვე-საქაღალდის დამატება Choose name for new subfolder in bookmarks toolbar: აირჩიეთ სახელი ხელსაწყოთა ზოლში ახალი ქვე-საქაღალდისთვის: Rename Folder საქაღალდის გადარქმევა Choose name for folder: აირჩიეთ სახელი საქაღალდისთვის: Add Subfolder ქვე-საქაღალდის დამატება Rename folder საქაღალდის გადარქმევა Remove folder საქაღალდის წაშლა Open link in current &tab ბმულის გახსნა მიმდინარე &ჩანართში Open link in &new tab ბმულის გახნსა &ახალ ჩანართში Move bookmark to &folder სანიშნების გადატან &საქაღალდეში Change icon Rename bookmark სანიშნის გადარქმევა Remove bookmark სანიშნის წაშლა <b>Warning: </b>You already have bookmarked this page! <b>გაფრთხილება: </b>თქვენ უკვე ჩაინიშნეთ ეს გვერდი! Choose name and location of this bookmark. აირჩიეთ სახელი და მდებარეობა ამ სანიშნისთვის. Add New Bookmark ახალი სანიშნის დამატება Choose folder for bookmarks: აირჩიეთ საქაღალდე სანიშნებისთვის: Bookmark All Tabs ყველა ჩანართის ჩანიშვნა BookmarksModel Bookmarks In Menu სანიშნები მენიუში Bookmarks In ToolBar სანიშნები ხელსაწყოთა ზოლში Unsorted Bookmarks დაულაგებელი სანიშნები BookmarksSideBar Search... ძებნა... Open link in current &tab ბმულის გახნსა მიმდინარე &ჩანართში Open link in &new tab ბმულის გახნსა &ახალ ჩანრთში Copy address მისამართის კოპირება &Delete &წაშლა BookmarksToolbar &Bookmark Current Page მიმდინარე გვერდის &ჩანიშვნა Bookmark &All Tabs &ყველა ჩანართის ჩანიშვნა &Organize Bookmarks სანიშნების &ორგანიზება Show Most &Visited ხშირად &მონახულებულების ჩვენება Show Only Icons მხოლოდ ხატულების ჩვენება &Hide Toolbar ხელსაწყოთა ზოლის &დამალვა Open bookmark Open bookmark in new tab Move right მარჯვნივ გადატანა Move left მარცხნივ გადატანა Edit bookmark სანიშნის რედაქტირება Remove bookmark სანიშნის წაშლა Edit bookmark: სანიშნის რედაქტირება: Title: სათაური: Url: ბმული: Edit Bookmark სანიშნის რედაქტირება Most visited ხშირად მონახულებული Sites you visited the most საიტები რომლებიც ყველაზე ხშირად მოინახულეთ Empty ცარიელი BookmarksTree Bookmarks New Folder... BookmarksWidget Add to Speed Dial სწრაფ გამოძახებაზე დამატება Save შენახვა Name: სახელი: Folder: საქაღალდე: Remove from Speed Dial სწრაფი გამოძახებიდან წაშლა Remove წაშლა BrowsingLibrary Library ბიბლიოთეკა Search... ძებნა... History ისტორია Bookmarks სანიშნები RSS RSS Database Optimized მონაცემთა ბაზა ოპტიმიზირებულია Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 მონაცემთა ბაზა წარმატებით ოპტიმიზირდა.<br/><br/><b>ბაზის ზომა ადრე: </b>%1<br/><b>ბაზის ზომა ახლა: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>გაცემულია კომპანიაზე</b> Common Name (CN): ჩვეულებრივი სახელი (CN): Organization (O): ორგანიზაცია (O): Organizational Unit (OU): ორგანიზაციის ერთეული (OU): Serial Number: სერიული ნომერი: <b>Issued By</b> <b>გამცემი</b> <b>Validity</b> <b>საბუთიანობა<b> Issued On: გაცემის თარიღი: Expires On: ამოწურვის თარიღი: ClearPrivateData Clear Recent History უახლესი ისტორიის გასუფთავება Choose what you want to delete: აირჩიეთ რისი წაშლა გსურთ: Clear history ისტორიის გასუფთავება Clear cache კეშის გასუფთავება Clear icons ხატულების გასუფთავება <b>Clear Recent History</b> <b>უახლესი ისტორიის გასუფთავება<b> Earlier Today დღეს ადრე Week კვირა Month თვე All ყველა Clear web databases ვებ მონაცემთა ბაზის გასუფთავება Clear local storage ლოკალური საცავის გასუფთავება Clear cookies ფუნთუშების გასუფთავება ClickToFlash Object blocked by ClickToFlash ობიექტი დაიბლოკა ClickToFlash-ის გამოყენებით Show more information about object მეტი ინფორმაციის ჩვენება ამ ობიექტის შესახებ Delete object ობიექტის წაშლა Add %1 to whitelist %1-ის დამატება თეთრ სიაში Flash Object ფლეშ ობიექტი <b>Attribute Name</b> <b>ატრიბუტის სახელი</b> <b>Value</b> <b>მნიშვნელობა</b> No more information available. მეტი ინფორმაცია არ არის ხელმისაწვდომი. CookieManager Cookies ფუნთუშები Stored Cookies შენახული ფუნთუშები Find: ძებნა: These cookies are stored on your computer: თქვენს კომპიუტერში ინახება ეს ფუნთუშები: Server სერვერი Cookie name ფუნთუშის სახელი Name: სახელი: Value: მნიშვნელობა: Server: სერვერი: Path: მდებარეობა: Secure: დაცული: Expiration: ამოწურვა: <cookie not selected> <ფუნთუშა არ არჩეულა> Remove all cookies ყველა ფუნთუშის წასლა Remove cookies ფუნთუშების წაშლა Cookie Filtering ფუნთუშის ფილტრი <b>Cookie whitelist</b> <b>ფუნთუშების თეთრი სია</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) ამ სერვერიდან ფუნთუშები ყოველთვის შეინახება (იმ შემთხვევაშიც თუ თქვენ გამორთული გაქვთ ფუნთუშების შენახვა) Add დამატება Remove წაშლა <b>Cookie blacklist</b> <b>ფუნთუშების შავი სია</b> Cookies from these servers will NEVER be accepted ამ სერვერიდან ფუნთუშები არასდროს შეინახება Settings <b>Cookie Settings</b> Allow storing of cookies Delete cookies on close Match domain exactly Filter tracking cookies <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! Search ძებნა Confirmation თანხმობა Are you sure to delete all cookies on your computer? დარწმუნებული ხართ რომ თქვენ კომპიუტერზე ყველა ფუნთუშის წაშლა გსურთ? Secure only მხოლოდ დაცული All connections ყველა კავშირი Session cookie სესიის ფუნთუშა Remove cookie ფუნთუშის წაშლა Add to whitelist თეთრ სიაში დამატება Add to blacklist შავ სიაში დამატება DownloadFileHelper Save file as... ფაილის შენახვა როგორც... NoNameDownload NoNameDownload DownloadItem Remaining time unavailable დარჩენილი დრო გაუგებარია Error: Cannot write to file! შეცდომა: ფაილში ჩაწერა ვერ მოხერხდა! Done - %1 დასრულდა - %1 Cancelled გაუქმდა few seconds რამდენიმე წამი %n seconds %n minutes %n hours Unknown speed სიჩქარე უცნობია kB/s MB/s GB/s Unknown size ზომა უცნობია %2 - unknown size (%3) %2 - ზომა უცნობია (%3) Remaining %1 - %2 of %3 (%4) დარჩენილი %1 - %2 %3-დან (%4) Cancelled - %1 გაუქმდა - %1 Delete file ფაილის წაშლა Do you want to also delete dowloaded file? გსურთ ჩამოტვირთული ფაილის წაშლა? Open File ფაილის გახსნა Open Folder საქაღალდის გახსნა Go to Download Page ჩამოტვირთვის გვერდზე გადასვლა Copy Download Link ჩამოტვირთვის ბმულის კოპირება Cancel downloading ჩამოტვირთვის გაუქმება Remove Error შეცდომა Not found ვერ მოიძებნა Sorry, the file %1 was not found! ბოდიში, ფაილი %1 ვერ მოიძებნა! Error: შეცდომა: DownloadManager Download Manager ჩამოტვირთვების მმართველი Clear გასუფთავება %1% of %2 files (%3) %4 remaining %1% ფაილი %2-იდან დარჩენილია (%3) %4 %1% - Download Manager Download Finished ჩამოტვირთვა დასრულდა All files have been successfully downloaded. ყველა ფაილი წარმატებით ჩამოიტვირთა. Warning გაფრთხილება Are you sure to quit? All uncompleted downloads will be cancelled! დარწმუნებული ხართ რომ გამოსვლა გსურთ? ყველა დაუსრულებული ჩამოტვირთვა გაუქმდება! DownloadOptionsDialog Opening იხსნება Copy download link You have chosen to open თქვენ აირჩიეთ გახნა which is a: რომელიც არის: What should QupZilla do with this file? როგორ მოექცეს QupZilla ამ ფაილს? Open... გახსნა... Save File ფაილის შენახვა Download with External Manager from: დან: Opening %1 %1 იხსნება Download link copied. EditSearchEngine Name: სახელი: Url: ბმული: Shortcut: მალსახმობი: Icon: ხატულა: <b>Note: </b>%s in url or post data represent searched string Post Data: Change... FileSchemeReply No Error Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. FtpDownloader Cancelled! FtpSchemeReply Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. Unknown command HTML5PermissionsDialog HTML5 Permissions Notifications Site Behaviour Remove Geolocation Allow Deny HTML5PermissionsNotification Remember Allow Deny this site Allow %1 to show desktop notifications? Allow %1 to locate your position? History No Named Page January February March April May June July August September October November December HistoryManager History ისტორია Delete წაშლა Clear All History ისტორიის გასუფთავება Optimize Database მონაცემთა ბაზის ოპტიმიზირება Confirmation თანხმობა Are you sure to delete all history? დარწმუნებული ხართ რომ ისტორიის სრულად გასუფთავება გსურთ? HistoryModel Title Address Visit Date Visit Count Today This Week This Month HistorySideBar Search... ძებნა... HistoryView Open link in current tab Open link in new tab Copy title Copy address Remove IconChooser Choose icon... From file Image (.png, .jpg, .jpeg, .gif) Choose file... From database Site Url: Image files JsOptions JavaScript Options Allow JavaScript to: Close windows Open popup windows Change window size Hide menu bar Hide status bar Hide tool bar Access clipboard LicenseViewer License Viewer ლიცენზიის მნახველი LocationBar Enter URL address or search on %1 შეიყვანეთ საიტის მისამართი ან მოძებნეთ %1-ს გამოყენებით Paste And &Go ჩასმა და &გადასვლა Clear All ყველას წაშლა .co.uk Append domain name on ALT + Enter = Should be different for every country .ge Show information about this page ინფორმაციის ჩვენება ამ გვერდის შესახებ LocationCompleterView Switch to tab MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? Always perform this check when starting QupZilla. Default Browser QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. MasterPasswordDialog Encrypted DataBase Settings Set/Change Master Password... Clear Master Password... This backend does not work without a master password. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Current Password: New Password: Confirm Password: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. Warning! You entered a wrong password! New/Confirm password fields do not match! Some data has not been decrypted. The master password was not cleared! Are you sure to clear master password and decrypt data? NavigationBar No Named Page უსათაურო გვერდი Back უკან Forward წინ Home სახლი New Tab ახალი ჩანართი Main Menu მთავარი მენიუ Exit Fullscreen მთელი ეკრანიდან გამოსვლა Clear history ისტორიის გასუფთავება NetworkManager SSL Certificate Error! SSL სერტიფიკატის შეცდომა! The page you are trying to access has the following errors in the SSL certificate: გვერდს რომლის გახსნასაც ცდილობთ SSL სერტიფიკატში აქვს შემდეგი შეცდომები: <b>Organization: </b> <b>ორგანიზაცია: </b> <b>Domain Name: </b> <b>დომეინ სახელი: </b> <b>Expiration Date: </b> <b>ამოწურვის თარიღი: </b> <b>Error: </b> <b>შეცდომა: </b> Would you like to make an exception for this certificate? გსურთ ამ სერტიფიკატისთვის გამონაკლისის გაკეთება? Authorisation required Username: მომხმარებლის სახელი: Password: პაროლი: Save username and password on this site მომხმარებლის სახელის და პაროლის დამახსოვრება ამ საიტზე A username and password are being requested by %1. The site says: "%2" %1 ითხოვს მომხმარებლის სახელს და პაროლს. საიტის შეტყობინება: "%2" FTP authorisation required Login anonymously A username and password are being requested by %1:%2. Proxy authorisation required Remember username and password for this proxy. A username and password are being requested by proxy %1. %1 პროქსი ითხოვს მომხმარებლის სახელს და პაროლს. PageScreen Page Screen გვერდის ასლი Format: Location: Browse... Save as %1 Choose location... File '%1' already exists. Do you want to overwrite it? File already exists PluginsList Application Extensions პროგრამის გაფართოებები Allow Application Extensions to be loaded პროგრამის გაფართოებების ჩატვირთვის დაშვება Settings პარამეტრები WebKit Plugins WebKit მოდულები <b>Click To Flash Plugin</b> <b>Click To Flash მოდული</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Click To Flash არის მოდული რომელიც ბლოკავს საიტის Flash შიგთავსის ავტომატურ ჩატვირთვას. თქვენ ყოველთვის შეგიძლიათ მათი ხელით ჩატვირთვა Flash play-ს ხატულაზე დაწკაპუნებით. Whitelist თეთრი სია Add დამატება Remove წაშლა Allow Click To Flash Click To Flash გაშვება PluginsManager Add site to whitelist Server without http:// (ex. youtube.com) Error! Cannot load extension! PopupWebView Inspect Element PopupWindow File &Save Page As... Save Page Screen Send Link... &Print... Close Edit &Undo &Redo &Cut C&opy &Paste Select All Find View &Stop &Reload Zoom &In Zoom &Out Reset &Page Source %1 - QupZilla %1 - QupZilla Preferences Preferences პარამეტრები QupZilla QupZilla General საერთო Appearance იერსახე Tabs ჩანართები Browsing ბრაუზინგი Fonts შრიფტები Keyboard Shortcuts Downloads ჩამოტვირთვები Password Manager პაროლების მმართველი Privacy კონფიდენციალურობა Notifications შეტყობინებები Extensions გაფართოებები Other სხვა Use current მიმდინარე გვერდის გამოყენება Note: You cannot delete active profile. შენიშვნა: თქვენ არ შეგიძლიათ აქტიური პროფილის წაშლა. Create New ახლის შექმნა Delete წაშლა <b>Launching</b> <b>გაშვება</b> After launch: გაშვების შემდეგ: Open blank page გაიხსნას ცარიელი გვერდი Open homepage გაიხსნას საწყისი გვერდი Open speed dial გაიხსნას სწრაფი გამოძახება Restore session აღდგეს სესია Homepage: საწყისი გვერდი: On new tab: ახალ ჩანართზე: Open blank tab გაიხსნას ცარიელი გვერდი Open other page... გაიხსნას სხვა გვერდი... <b>Profiles</b> <b>პროფილები</b> Startup profile: საწყისი პროფილი: Check for updates on start განახლებების შემოწმება ჩართვისას Active profile: აქტიური პროფილები: In order to change language, you must restart browser. ენის შესაცვლელად, თქვენ უნდა გადატვირთოთ ბრაუზერი. <b>Language</b> <b>ენა</b> Available translations: ხელმისაწვდომი თარგმანები: Don't load tabs until selected არ ჩაიტვირთოს ჩანართების სანამ არ აირჩევა Check to see if QupZilla is the default browser on startup Check Now Themes თემები Advanced options დამატებითი პარამეტრები <b>Browser Window</b> <b>ბრაუზერის ფანჯარა</b> Show StatusBar on start სტატუსის ზოლის ჩვენება დაწყებისას Show Bookmarks ToolBar on start სანიშნების ხელსაწყოთა ზოლის ჩვენება ჩართვისას Show Navigation ToolBar on start ნავიგაციის ხელსაწყოთა ზოლის ჩვენება ჩართვისას <b>Navigation ToolBar</b> <b>ნავიგაციის ხელსაწყოთა ზოლი</b> Show Home button სახლის ღილაკის ჩვენება Show Back / Forward buttons წინ / უკან წასვლის ღილაკების ჩვენება <b>Background<b/> <b>ფონი<b/> Use transparent background გამჭვირვალე ფონის გამოყენება Show web search bar Show Add Tab button ჩანართის დამატების ღილაკის ჩვენება Show Reload / Stop buttons Tabs behaviour Show tab previews Make tab previews animated Hide tabs when there is only one tab ჩანართების დამალვა როდესაც მხოლოდ ერთი ჩანართია გახსნილი Activate last tab when closing active tab ბოლო ჩანართის გააქტიურება აქტიური ჩანართის დახურვისას Open new tabs after active tab ახალი ჩანართების გახსნა აქტიური ჩანართის შემდეგ Open new empty tabs after active tab Automatically switch to newly opened tab Don't quit upon closing last tab პრგორამა არ გამოირთოს ბოლო ჩანართის დახურვისას Ask when closing multiple tabs თანხმობა ბევრი ჩანართის დახურვისას Closed tabs list instead of opened in tab bar გახსნილების ნაცვლად დახურული ჩანართების ჩვენება ჩანართების ზოლში Address Bar behaviour Suggest when typing into address bar: History and Bookmarks History Bookmarks Nothing Press "Shift" to not switch the tab but load the url in the current tab. Propose to switch tab if completed url is already loaded. Always show go icon Select all text by double clicking in address bar ტექსტის სრულად მონიშვნა მისამართების ზოლზე ორჯერ დაწკაპუნებით Select all text by clicking in address bar ტექსტის სრულად მონიშვნა მისამართების ზოლზე დაწკაპუნებით Search with Default Engine Show loading progress in address bar Fill Bottom Top Custom color: Select color ... ... Reset Web Configuration ვებ კონფიგურაცია Allow Netscape Plugins (Flash plugin) Netscape-ს მოდულების დაშვება (Flash მოდული) Allow JavaScript JavaScript-ის დაშვება Allow JAVA JAVA-ს დაშვება Allow DNS Prefetch DNS Prefetch-ის დაშვება Enable XSS Auditing try to detect possible XSS attacks when executing javascript XSS აუდიტის დაშვება Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements ელემენტის ფონის ამობეჭდვა Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key ბმულების შეცვა ფოკუსის ჯაჭვში Animated scrolling Enable caret browsing Enable spatial navigation Zoom text only მხოლოდ ტექსტის მასშტაბირება Mouse wheel scrolls მაუსის ბორბალი ტრიალებს lines on page ხაზს გვერდზე Default zoom on pages: ნაგულისხმევი მასშტაბირება გვერდებზე: Local Storage ლოკალური საცავი Maximum მაქსიმუმი 50 MB 50 მბ 1 1 Maximum pages in cache: მაქსიმალური გვერდები კეშში: Allow storing network cache on disk ქსელის კეშის დისკზე შენახვის დაშვება Store cache in: Allow saving history ისტორიის შენახვის დაშვება Delete history on close ისტორიის წაშლა დახურვისას Allow local storage of HTML5 web content HTML5 ვებ შიგთავსის ლოკალურად შენახვის დაშვება Delete locally stored HTML5 web content on close ლოკალურად შენახული HTML5 ვებ შიგთავსის წაშლა დახრვისას Delete now ახლავე წაშლა Proxy Configuration პროქსი კონფიგურაცია Proxy Auto-Config (.pac) file Reload HTTP HTTP SOCKS5 SOCKS5 Port: პორტი: Username: მომხმარებლის სახელი: Password: პაროლი: Don't use on: არ გამოიყენო: Manual configuration ხელით კონფიგურირება System proxy configuration სისტემის პროქსი კონფიგურაცია Do not use proxy არ გამოიყენო პროქსი <b>Exceptions</b> <b>გამონაკლისები</b> Server: სერვერი: Use different proxy for https connection სხვა პროქსის გამოყენება https კავშირებისთვის Use script for automatic configuration: <b>Font Families</b> <b>შრიფტების ოჯახები</b> Standard სტანდარტული Fixed ფიქსირებული Serif Serif Sans Serif Sans Serif Cursive ხელნაწერი Fantasy ფანტაზია <b>Font Sizes</b> <b>შრიფტების ზომები</b> Fixed Font Size ფიქსირებული შრიფტის ზომა Default Font Size ნაგულისხმევი შრიფტის ზომა Minimum Font Size შრიფტის მინიმალური ზომა Minimum Logical Font Size ლოგიკური შრიფტის მინიმალური ზომა <b>Shortcuts</b> Switch to tabs with Alt + number of tab Load speed dials with Ctrl + number of speed dial Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>ჩამოტვირთვის მდებარეობა</b> Ask everytime for download location ყოველთვის შემეკითხე ჩამოტვირთვის მდებარეობა Use defined location: განსაზღვრული მდებარეობის გამოყენება: <b>Download Options</b> <b>ჩამოტვირთვის პარამეტრები</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) სისტემის ადგილობრივი დიალოგების გამოყენება (შესაძლოა ან შესაძლოა არ გამოიწვიოს პრობლემები SSL დაცული შიგთავსის ჩამოტვირთვისას) Close download manager when downloading finishes ჩამოტვირთვების მმართველის დახურვა ჩამოტვირთვის დასრულებისას <b>External download manager</b> <b>ჩამოტვირთვების გარე მმართველი</b> Use external download manager ჩამოტვირთვების გარე მმართველის გამოყენება Executable: გამშვები: Arguments: არგუმენტები: Leave blank if unsure <b>%d</b> will be replaced with URL to be downloaded <b>AutoFill options</b> <b>ავტო-შევსების პარამეტრები</b> Allow saving passwords from sites საიტებიდან პაროლების შენახვის დაშვება Send Referer header to servers Referer სათაურის გაგზავნა სერვერებისთვის <b>Cookies</b> <b>ფუნთუშები</b> Send Do Not Track header to servers Do Not Track სათაურის გაგზავნა სერვერებისთვის <b>Other</b> <b>სხვა</b> Manage CA certificates Certificate Manager <b>SSL Certificates</b> <b>SSL სერტიფიკატები</b> <b>JavaScript</b> Manage JavaScript privacy options JavaScript options Cookies Manager ფუნთუშების მმართველი Manage Cookies <b>HTML5 Permissions</b> Manage HTML5 permissions HTML5 Permissions <b>Notifications</b> <b>შეტყობინებები</b> Use OSD Notifications OSD შეტყობინებების გამოყენება Use Native System Notifications (Linux only) სისტემის ადგილობრივი შეტყობინებების გამოყენება (მხოლოდ Linux) Do not use Notifications არ გამოიყენო შეტყობინებები Expiration timeout: ამოწურვის ვადა: seconds წამი <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>შენიშვნა: </b>თქვენ შეგიძლიათ OSD შეტყობინების მდებარეობის შეცვლა მისი გადათრევით. StyleSheet automatically loaded with all websites: ყველა ვებ-გვერდთან ავტომატურად ჩატვირთული სტილი: Languages ენები <b>Preferred language for web sites</b> <b>სასურველი ენები ვებ-საიტებისთვის</b> <b>Change browser identification</b> User Agent Manager Default Set as default OSD Notification OSD შეტყობინებები Drag it on the screen to place it where you want. გადაათრიეთ ეკრანზე რათა განათავსოთ თქვენთვის სასურველ ადგილზე. Choose download location... ჩამოსატვირთი მდებარეობის არჩევა... Choose stylesheet location... სტილის მდებარეობის არჩევა... Deleted წაშლილია Choose executable location... აირჩიეთ გამშვების მდებარეობა... Choose cache path... New Profile ახალი პროფილი Enter the new profile's name: შეიყვანეთ ახალი პროფილის სახელი: Error! შეცდომა! This profile already exists! პროფილი უკვე არსებობს! Cannot create profile directory! პროფილის დირექტორიის შექმნა ვერ მოხერხდა! Confirmation დასტური Are you sure to permanently delete "%1" profile? This action cannot be undone! დარწმუნებული ხართ რომ "%1" პროფილის სამუდამოდ წასლა გსურთ? ამ მოქმედების გაუქმება შეუძლებელია! Select Color QObject Native System Notification სისტემის ადგილობრივი შეტყობინებები Save file as... The file is not an OpenSearch 1.1 file. ფაილი არ არის OpenSearch 1.1 ფაილი. <not set in certificate> <not set in certificate> Unknown size KB MB GB Executable: Arguments: Cannot start external program Cannot start external program! %1 QtWin Open new tab ახალი ჩანართის გახსნა Opens a new tab if browser is running თუ ბრაუზერი გაშვებულია გაიხსნება ახალი ჩანართი Open new window ახალი ფანჯრის გახსნა Opens a new window if browser is running თუ ბრაუზერი გაშვებულია გაიხსნება ახალი ფანჯარა Open download manager ჩამოტვირთვების მმართველის გახსნა Opens a download manager if browser is running თუ ბრაუზერი გაშვებულია გაიხსნება ჩამოტვირთვების მმართველი QupZilla QupZilla QupZilla Private Browsing Enabled კერძო ბრაუზინგი ჩართულია IP Address of current page მიმდინარე გვერდის IP მისამართი &About QupZilla QupZilla-ს &შესახებ Pr&eferences პარ&ამეტრები Quit გამოსვლა &File &ფაილი &New Window &ახალი ფანჯარა New Tab ახალი ჩანართი Open Location მდებარეობის გახსნა Open &File... Close Tab ჩანართის დახურვა Close Window ფანჯრის დახურვა &Save Page As... გვერდის &შენახვა როგორც... Save Page Screen გვერდის ასლის შენახვა Send Link... ბმულის გაგზავნა... &Print... &ამობეჭდვა... Import bookmarks... სანიშნების შემოტანა... &Edit &რედაქტირება &Undo &დაბრუნება &Redo &აღდგენა &Cut &ამოჭრა C&opy კ&ოპირება &Paste &ჩასმა Select &All ყველას &არჩევა &Find &პოვნა &View &ხედი &Navigation Toolbar &ნავიგაციის პანელი &Bookmarks Toolbar &სანიშნების პანელი Sta&tus Bar სტა&ტუსის ზოლი &Menu Bar &მენიუს ზოლი &Tabs on Top &Fullscreen &მთელ ეკრანზე &Stop &შეჩერება &Reload &გადატვირთვა Character &Encoding სიმბოლოების &კოდირება Enable &Caret Browsing Toolbars ხელსაწყოთა ზოლები Sidebars გვერდითა ზოლი Zoom &In მიახლ&ოება Zoom &Out დაშორ&ება Reset ჩამოყრა &Page Source &გვერდის წყარო Hi&story ის&ტორია &Back &უკან &Forward &წინ &Home &სახლი Show &All History მთელი &ისტორიის ჩვენება Closed Tabs დახურული ჩანართები Recently Visited ბოლოს მონახულებული Most Visited ხშირად მონახულებული &Bookmarks &სანიშნები Bookmark &This Page ამ &გვერდის ჩანიშვნა Bookmark &All Tabs &ყველა ჩანართის ჩანიშვნა Organize &Bookmarks &სანიშნების ორგანიზება &Tools &ხელსაწყოები &Web Search &ვებ ძებნა Page &Info გვერდის &ინფორმაცია &Download Manager &ჩამოტვირთვების მმართველი &Cookies Manager &ფუნთუშების მმართველი &AdBlock &AdBlock RSS &Reader RSS &წამკითხველი Web In&spector ვებ ინ&სპექტორი Clear Recent &History უახლესი &ისტორიის გასუფთავება New &Private Window &Help &დახმარება About &Qt &Qt-ს შესახებ Information about application ინფორმაცია პროგრამის შესახებ Configuration Information კონფიგურაციის ინფორმაცია Report &Issue &შეცდომის შეტყობინება Restore &Closed Tab &დახურული ჩანართის აღდგენა (Private Browsing) (პირადი ბრაუზინგი) Empty ცარიელი Restore All Closed Tabs ყველა დახურული ჩანართის აღდგენა Clear list სიის გასუფთავება Other სხვა %1 - QupZilla %1 - QupZilla HTML files HTML ფაილები Image files სურათის ფაილები Text files ტექსტური ფაილები All files ყველა ფაილი Open file... ფაილის გახსნა... QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? ახლა კვლავ გახსნილია %1 ჩანართი და თქვენი სესია არ აღდგება. დარწმუნებული ხართ რომ QupZilla-ს დახურვა გსურთ? Don't ask again მეტი აღარ შემეკითხო There are still open tabs რამდენიმე ჩანართი კვლავ გახსნილია QupZillaSchemeReply No Error შეცდომა არ არის Not Found ვერ მოიძებნა Report Issue შეცდომის შეტყობინება If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: თუ QupZilla-სთან პრობლემები გაქვთ, გთხოვთ პირველ რიგში ცადეთ ყველა გაფართოების გამორთვა. <br/>თუ ამან არ უშველა, მაშინ შეავსეთ ეს ფორმა: Your E-mail თქვენი ელ-ფოსტა Issue type შეცდომის ტიპი Issue description შეცდმის აღწერა Send გაგზავნა E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. ელ-ფოტა არასავალდებულოა<br/><b>შენიშვნა: </b>გთხოვთ პირველ რიგში წაიკითხეთ შეცდომის შეტყობინების შესახებ <a href=%1>აქ</a>. Please fill out all required fields! გთხოვთ შეავსეთ ყველა სავალდებულო ველი! Start Page საწყისი გვერდი Search on Web Search results provided by DuckDuckGo About QupZilla QupZilla-ს შესახებ <h1>Private Browsing</h1> Information about version ინფორმაცია ვერსიის შესახებ Copyright საავტორო უფლება Version ვერსია WebKit version WebKit-ის ვერსია Main developer მთავარი დეველოპერი Contributors მონაწილეები Translators მთარგმნელები Speed Dial სწრაფი გამოძახება Add New Page ახალი გვერდის დამატება Edit რედაქტირება Remove წაშლა Reload გადატვირთვა Are you sure to remove this speed dial? Load title from page სათაურის ჩატვირთვა გვერდიდან Url ბმული Title სათაური Apply მორგება Close დახურვა New Page ახალი გვერდი Speed Dial settings სწრაფი გამოძახების პარამეტრები Placement: ადგილმდებარეობა: Auto ავტო Cover დაფარვა Fit მორგება Fit Width სიგანეში მორგება Fit Height სიმაღლეში მორგება Use background image ფონის სურათის გამოყენება Select image სურათის არჩევა Maximum pages in a row: მაქსიმალური გვერდები მწკრივში: Change size of pages: გვერდების ზომის შეცვლა: Center speed dials Restore Session Oops, QupZilla crashed. We apologize for this. Would you like to restore the last saved state? Try removing one or more tabs that you think cause troubles Or you can start completely new session Configuration Information კონფიგურაციის ინფორმაცია This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. ეს გვერდი შეიცავს ინფორმაციას QupZilla-ს მიმდინარე კონფიგურაციის შესახებ - საჭიროს პრობლემის აღმოფხვრისთვის. გთხოვთ მოაყოლეთ ეს ინფორმაცია შეცდომის შეტყობინების გამოგზავნისას. Browser Identification ბრაუზერის იდენტიფიკაცია Paths მდებარეობები Build Configuration აწყობის კონფიგურაცია Preferences პარამეტრები Option პარამეტრი Value მნიშვნელობა Extensions გაფართოებები Name სახელი Author ავტორი Description აღწერილობა Application version პროგრამის ვერსია Qt version Qt ვერსია Build time აწყობის დრო Platform პლატფორმა Profile პროფილი Settings პარამეტრები Saved session შენახული სესაი Pinned tabs მიმაგრებული ჩანართები Data მონაცემები Themes თემები Translations მთარგმნელები Disabled გამორთული <b>Enabled</b> <b>ჩართული</b> Debug build გამართვისთვის აწყობილი WebGL support WebGL მხარდაჭერა Windows 7 API Windows 7-ის API KDE integration KDE-სთან ინტეგრაცია Portable build პორტატული ვერსია No available extensions. გაფართოებები არ არის ხელმისაწვდომი. RSSManager RSS Reader RSS წამკითხველი Empty ცარიელი Add feed არხის დამატება Edit feed არხის რედაქტირება Delete feed არხის წაშლა Optimize Database მონაცემთა ბაზის ოპტიმიზირება Reload გადატვირთვა News სიახლეები Loading... იტვირთება... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Add new feed ახალი არხის დამატება Please enter URL of new feed: გთხოვთ შეიყვანეთ ახალი არხის ბმული: New feed ახალი არხი Fill title and URL of a feed: Feed title: არხის სათაური: Feed URL: არხის ბმული: Edit RSS Feed RSS არხის რედაქტირება Open link in current tab ბმულის გახნსა მიმდინარე ჩანართში Open link in new tab ბმულის გახნსა ახალ ჩანრთში Error in fetching feed არხის მიღებისას დაფიქსირდა შეცდომა RSS feed duplicated შეიქმნა RSS არხის ასლი You already have this feed. თქვენ უკვე გაქვთ ეს არხი. RSSNotification Add this feed into Add RSS feed <b>"%1"</b> Internal Reader Other... Liferea not running Liferea must be running in order to add new feed. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Add feed into other application RSSWidget Add RSS Feeds from this site RSS არხების დამატება ამ საიტიდან Untitled feed უსათაურო არხი Add დამატება RecoveryWidget Start New Session Restore Window %1 RegisterQAppAssociation Warning! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) RssIcon Add RSS from this page... SSLManager Certificate Manager CA Authorities Certificates CA ავტორიტეტების სერტიფიკატები Show info ინფორმაციის ჩვენება This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. ეს არის CA ავტორიტეტების სერტიფიკატების სია რომელიც შენახულია სისტემის სტანდარტულ და მომხმარებლის მითითებულ მდებარეობებში. Local Certificates ლოკალური სერტიფიკატები Import Remove წაშლა This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. ეს არის ლოკალური სერტიფიკატების სია რომლებიც თქვენი მომხმარებლის პროფილში ინახება. ის ასევე შეიცავს ყველა სერტიფიკატს რომლებმაც მიიღეს გამონაკლისი. Settings პარამეტრები Add დამატება If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. თუ CA ავტორიტეტების სერტიფიკატები სისტემიდან ავტომატურად არ ჩაიტვირთა, თქვენ შეგიძლიათ მიუთითოთ მდებარეობა სადაც ეს სერტიფიკატები ინახება. <b>NOTE:</b> Setting this option is a high security risk! <b>შენიშვნა:</b> ამ პარამეტრის მონიშვნა არის უსაფრთხოების მაღალი რისკი! Ignore all SSL Warnings ყველა SSL გაფრთხილების იგნორირება All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. ყველა სერტიფიკატს უნდა ქონდეს .crt სუფიქსი. სერტიფიკატების მდებარეობების დამატების ან წაშლის შემდეგ, საჭიროა QupZilla-ს გადატვირთვა რათა მოხდეს ამ ცვლილებების გააქტიურება. Choose path... მდებარეობის არჩევა... Import certificate... Certificate Informations სერტიფიკატის ინფორმაცია SearchEnginesDialog Manage Search Engines საძიებო სისტემების მართვა Add... დამატება... Remove წაშლა Edit რედაქტირება Set as default Up მაღლა Down დაბლა Search Engine საძიებო სისტემა Shortcut მალსახმობი Defaults ნაგულისხმევი Add Search Engine საძიებო სისტემის დამატება Remove Engine You can't remove the default search engine.<br>Set a different engine as default before removing %1. Edit Search Engine საძიებო სისტემის რედაქტირება SearchEnginesManager Search Engine Added საძიებო სისტემა დაემატა Search Engine "%1" has been successfully added. "%1" საძიებო სისტემა წარმატებით დაემტა. Search Engine is not valid! საძიებო სისტემა არასწორია! Error შეცდომა Error while adding Search Engine <br><b>Error Message: </b> %1 საძიებო სისტემის დამატებისას დაფიქსირდა შეცდომა <br><b>შეცდომის შეტყობინება: </b> %1 SearchToolBar No results found. შედეგები არ არის. SearchToolbar Search: ძებნა: Search... ძებნა... Highlight გამოყოფა Case sensitive მთავრულის გათვალისწინებით SideBar Bookmarks სანიშნები History ისტორია SiteInfo Site Info საიტის ინფორმაცია General ზოგადი Media მედია Databases მონაცემთა ბაზები Security უსაფრთხოება Size: ზომა: Site address: საიტის მისამართი: Encoding: კოდირება: Meta tags of site: საიტის მეტა ტეგები: Tag ტეგი Value მნიშვნელობა <b>Security information</b> <b>უსაფრთხოების ინფორმაცია</b> Details დეტალები Image სურათი Image address სურათის მისამართი <b>Preview</b> <b>გადახედვა</b> <b>Database details</b> <b>მონაცემთა ბაზის შესახებ</b> Name: სახელი: Path: მდებარეობა: <database not selected> <database not selected> <not set in certificate> <სერტიფიკატში არ აყენია> No databases are used by this page. ეს გვერდი არ იყენეს მონაცემთა ბაზას. <b>Connection is Encrypted.</b> <b>კავშირი დაშიფრულია.</b> <b>Your connection to this page is secured with this certificate: </b> </b>თქვენი კავშირი ამ გვერდთან დაცულია ამ სერტიფიკატებით: </b> <b>Connection Not Encrypted.</b> </b>კავშირი არ არის დაშიფრული.</b> <b>Your connection to this page is not secured!</b> </b>თქვენი კავშირი ამ გვერდთან დაუცველია!</b> Copy Image Location სურათის მდებარეობის კოპირება Copy Image Name სურათის სახელის კოპირება Save Image to Disk სურათის შენახვა დისკზე Error! შეცდომა! This preview is not available! გადახედვა ხელმიუწვდომელია! Save image... სურათის შენხვა... Cannot write to file! ფაილში ჩაწერა ვერ მოხერხდა! Preview not available გადახედვა ხელმიუწვდომელია SiteInfoWidget More... მეტი... Your connection to this site is <b>secured</b>. თქვენი კავშირი ამ საიტთან <b>დაცულია</b>. Your connection to this site is <b>unsecured</b>. თქვენი კავშირი ამ საიტთან <b>დაუცველია</b>. This is your <b>%1</b> visit of this site. ეს არის თქვენი <b>%1</b> სტუმრობა ამ საიტზე. You have <b>never</b> visited this site before. თქვენ პირველად ხართ ამ საიტზე. first პირველი second მეორე third მესამე SourceViewer Source of წყარო - File ფაილი Load in page Save as... შენახვა როგორც... Close დახურვა Edit რედაქტირება Undo დაბრუნება Redo აღდგენა Cut ამოჭრა Copy კოპირება Paste ჩასმა Select All ყველას არჩევა Find პოვნა Go to Line... ხაზზე გადასვლა... View ხედი Reload გადატვირთვა Editable რედაქტირებადი Word Wrap სიტყვების გადატანა Source loaded in page Cannot load in page. Page has been closed. Save file... ფაილის შენახვა... Error! შეცდომა! Cannot write to file! ფაილში ჩაწერა ვერ მოხერხდა! Error writing to file ფაილის ჩაწერისას დაფიქსირდა შეცდომა Source successfully saved წყარო წარმატებით შეინახა Source reloaded წყარო გადაიტვირთა Cannot reload source. Page has been closed. წყაროს გადატვირთვა ვერ მოხერხდა. გვერი დაიხურა. Editable changed რედაქტირებადი შეიცვალა Word Wrap changed Enter line number შეიყვანეთ ხაზის ნომერი SourceViewerSearch Search: ძებნა: Search... ძებნა... Whole words SpeedDial Image files სურათის ფაილები Select image... სურათის არჩევა... Unable to load ჩატვირთვა ვერ მოხერხდა SpellCheckDialog SpellCheck <b>Dictionary path</b> Change... <b>User dictionary</b> Add Remove Using Hunspell library Choose dictionary path... Add new word... Add new word: Speller No suggestions Add to dictionary Settings SqueezeLabelV2 Copy კოპირება SslErrorDialog SSL Certificate Error! Only for this session TabBar &New tab &ახალი ჩანართი &Stop Tab ჩანართის &შეჩერება &Reload Tab ჩანართის &გადატვირთვა &Duplicate Tab ჩანართის &დუბლირება D&etach Tab Un&pin Tab მიმა&გრების მოხსნა &Pin Tab ჩანართის &მიმაგრება Re&load All Tabs ყველა ჩანართის გადა&ტვირთვა &Bookmark This Tab ამ ჩანართის &ჩანიშვნა Bookmark &All Tabs &ყველა ჩანართის ჩანიშვნა Close Ot&her Tabs ს&ხვა ჩანართების დახურვა Cl&ose დახ&ურვა Reloa&d All Tabs ყველა ჩანართის გადატვირთ&ვა Restore &Closed Tab &დახურული ჩანართის აღდგენა Close Tabs Do you really want to close other tabs? TabWidget New Tab ახალი ჩანართი List of tabs ჩანართების სია Loading... იტვირთება... No Named Page უსათაურო გვერდი Currently you have %1 opened tabs ახლა თქვენ გახსნილი გაქვთ %1 ჩანართი New tab ახალი ჩანართი Empty ცარიელი Restore All Closed Tabs ყველა დახურული ჩანართის აღდგენა Clear list სიის გასუფთავება TabbedWebView Loading... იტვირთება... %1 - QupZilla %1 - QupZilla Inspect Element ელემენტზე დაკვირვება ThemeManager <b>Name:</b> <b>სახელი:</b> <b>Author:</b> <b>ავტორი:</b> <b>Description:</b> <b>აღწერილობა:</b> License ლიცენზია ToolButton Stop შეჩერება Reload გადატვირთვა Updater Update available ხელმისაწვდომია განახლება New version of QupZilla is ready to download. QupZilla-ს ახალი ვერსია ჩამოსატვირთად მზადაა. Update განახლება UserAgentDialog User Agent Manager Change global User Agent Use different User Agents for specified sites Site User Agent Add Remove Edit Add new site Edit site Site domain: User Agent: WebInspectorDockWidget Web Inspector ვებ ინსპექტორი WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? Remember my choice for this protocol External Protocol Request To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Confirm form resubmission დასტური ფორმის ხელახლა გადაგზავნაზე Select files to upload... აირჩიეთ ასატვირთი ფაილები... Server refused the connection სერვერმა კავშირი უარყო Server closed the connection სერვერმა კავშირი დახურა Server not found სერვერი ვერ იქნა ნაპოვნი Connection timed out კავშირის ვადა ამოიწურა Untrusted connection არასანდო კავშირი Temporary network failure ქსელის დროებითი მარცხი Proxy connection refused პროქსი კავშირი უარყოფილია Proxy server not found პროქსი სერვერი ვერ იქნა ნაპოვნი Proxy connection timed out პროქსი კავშირის ვადა ამოიწურა Proxy authentication required საწიროა პროქის ავტორიზაცია Content not found შიგთავსი ვერ იქნა ნაპოვნი Unknown network error ქსელის უცნობის შეცდომა AdBlocked Content AdBlock-ით დაბლოკილი შიგთავსი Blocked by <i>%1</i> Content Access Denied შიგთავსთან წვდომა უარყოფილია Error code %1 შეცდომის კოდი %1 Failed loading page გვერდის ჩატვირთვა ჩაიშალა QupZilla can't load page. QupZilla can't load page from %1. QupZilla-ს არ შეუძლია გვერდის ჩატვირთვა %1-დან. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com შეამოწმეთ ჩაწერილი მისამართის სისწორე, მაგალითად <b>ww.</b>example.com <b>www.</b>example.com-ის ნაცვლად If you are unable to load any pages, check your computer's network connection. თუ თქვენ არ შეგიძლიათ არცერთი გვერდის ჩატვირთვა, შეამოწმეთ თქვენი კომპიუტერის ქსელთან კავშირი. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. თუ თქვენი კომპუტერი ან ქსელი დაცულია ქსელის ფარით ან პროქსით, დარწმუნდით რომ QupZilla-ს აქვს ინტერნეტთან წვდომის უფლება. Try Again ხელახლა ცდა JavaScript alert JavaScript შეტყობინება Prevent this page from creating additional dialogs ამ გვერდისთვის დამატებითი დიალოგების აკრძალვა Choose file... ფაილის არჩევა... Cannot read data from <b>%1</b>. Upload was cancelled! Cannot read file! WebSearchBar Manage Search Engines საძიებო სისტემების მართვა Add %1 ... დამატება %1 ... Paste And &Search ჩასმა და &ძებნა Clear All ყველას წაშლა Show suggestions Search when engine changed WebView No Named Page სათაურიანი გვერდი არ არის Create Search Engine საძიებო სისტემის შექმნა Cut Copy Paste Select All Default Left to Right Right to Left Bold Italic Underline &Reload &გადატვირთვა S&top შე&ჩერება Delete &Back &უკან &Forward &წინ This frame ეს ჩარჩო Show &only this frame &მხოლოდ ამ ჩარჩოს ჩვენება Show this frame in new &tab ამ ჩარჩოს ახალ &ჩანართში ჩვენება Print frame ჩარჩოს ამობეჭდვა Zoom &in მიახლო&ვება &Zoom out &დაშორება Reset ჩამოყრა Show so&urce of frame ჩარჩოს წყა&როს ჩვენება Book&mark page გვერდის ჩანი&შვნა &Save page as... გვერდის &შენახვა როგორც... &Copy page link გვერდის ბმულის &კოპირება Send page link... გვერდის ბმულის გაგზავნა... &Print page გვერდის &ამობეჭდვა Select &all ყველას &არჩევა Validate page გვერდის შემოწმება Show so&urce code წყარ&ოს კოდის ჩვენება Show info ab&out site საიტის შესა&ხებ ინფორმაციის ჩვენება Open link in new &tab ბმულის გახსნა ახალ &ჩანართში Open link in new &window ბმულის გახსნა ახალ &ფანჯარაში B&ookmark link ბმულის ჩ&ანიშვნა &Save link as... ბმულის &შენახვა როგორც... Send link... ბმულის გაგზავნა... &Copy link address ბმულის მისამართის &კოპირება Show i&mage ს&ურათის ჩვენება Copy im&age სურა&თის კოპირება Copy image ad&dress სურათის ბ&მულის კოპირება &Save image as... სურათის &შენახვა როგორც... Send image... სურათის გაგზავნა... Send text... ტექსტის გაგზავნა... Google Translate Google თარგმნა Dictionary ლექსიკონი Go to &web address &ვებ მისამართზე გადასვლა Search "%1 .." with %2 "%1 .."-ის მოძებნა %2-ს გამოყენებით Search with... ძებნა... &Play &დაკვრა &Pause &პაუზა Un&mute ხმის &ჩართვა &Mute &ხმის ჩახშობა &Copy Media Address მედიის მისამართის &კოპირება &Send Media Address მედიის მისამართის &გაგზავნა Save Media To &Disk მედიის &დისკზე შენახვა Check &Spelling Languages jsAlert Prevent this page from creating additional dialogs ამ გვერდისთვის დამატებითი დიალოგების შექმნის აკრძალვა qupzilla-1.6.0/translations/lg.ts000066400000000000000000010432521226107126500170630ustar00rootroot00000000000000 AboutDialog About QupZilla Okwanjula QupZilla Authors Abaagiwandika Authors and Contributors Abaagiwandika N'abalala Abaagikolako < About QupZilla < Okwanjula QupZilla <p><b>Application version %1</b><br/> <p><b>Luwandika lwa puloguramu %1</b><br/> <b>WebKit version %1</b></p> <b>Luwandika lwa WebKit %1</b></p> <small>Build time: %1 </small></p> <small>Oluwandika luno lwamalirizibwa nga: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Muwandisi omukulu:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Abalala abaagikolako:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Abaagivvuunula:</b><br/>%1</p> AcceptLanguage Preferred Languages Nnimi ze Wekubirira Add... Yongera ko... Remove Lugyemu Up Lwambuse Down Lusse Personal [%1] AdBlockAddSubscriptionDialog Add Subscription Nona Mateeka Title: Linnya: Address: Ndagiriro: Add new subscription to AdBlock: AdBlock gyongereko mateeka: AdBlockCustomList Custom Rules Mateeka Gago AdBlockDialog AdBlock Configuration Teekateeka AdBlock Enable AdBlock AdBlock Ekole Search... Noonya... Options Ebisoboka AdBlock AdBlock Use only essential part of EasyList (for performance reasons) Add Rule Kola Tteeka Remove Rule Gyawo Tteeka Add Subscription Nona Mateeka Remove Subscription Gyawo Mateeka Manone Update Subscriptions Tuukanisa Mateeka Manone Learn about writing rules... Yiga okuwandika mateeka... AdBlockIcon AdBlock lets you block unwanted content on web pages adBlock ogyeyambisa kubuutikira birango by'otowetaaga ku mpapula za ku yintaneti Blocked popup window Kadirisa akatutunuka akabuutikidwa AdBlock blocked unwanted popup window. AdBlock ebuutikide kadirisa akututunuka k'otowetaaga. AdBlock AdBlock Show AdBlock &Settings Kebera &Nteekateeka ya AdBlock Disable on %1 Eby'oku %1 ebikkirize Disable only on this page Ebya ku lupapula luno byo ebikkirize Blocked Popup Windows Budirisa obututunuka obubuutikidwa %1 with (%2) No content blocked Tewali bibuutikidwa Blocked URL (AdBlock Rule) - click to edit rule URL ebuutikidwa (ku tteeka lya AdBlock) - nyiga wano okulikyusamu AdBlockManager Do you want to add <b>%1</b> subscription? AdBlock Subscription Mateeka ga AdBlock Amanone EasyList AdBlockTreeWidget Add Rule Kola Tteeka Remove Rule Gyawo Tteeka Add Custom Rule Yiya Tteeka Eriryo Please write your rule here: Tteeka lyo liwandike wano: %1 (recently updated) AddAcceptLanguage Add Language Yongerako Lulimi Choose preferred language for web sites Londa lulimi mwosinga okwagala okusomera eby'oku yintaneti Personal definition: Wetegekere olutali mu lukalala: AesInterface Warning! Kulabula! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. AutoFill Database (plaintext) Database (encrypted) Enter Master Password Permission is required, please enter Master Password: Warning! Kulabula! Entered password is wrong! This backend needs a master password to be set! QupZilla just switches to its default backend AutoFillManager Passwords are stored in: Change backend Backend options Passwords Byama Server Kompyuta ewereza Username Linnya lya akawunti Password Kyama Import/Export Nona/Fulumya Show Passwords Ebyama Birabike Edit Kyusamu Remove Gyamu Remove All Gyawo Lukalala Lwonna Exceptions Ebyawulemu Import Passwords from File... Nona byama okuva mu fayiro... Export Passwords to File... Sindika byama mu fayiro... Search Noonya Change backend... Change backend: Are you sure that you want to show all passwords? Okukasa oyagala ebyama byonna birabike Hide Passwords Ebyama bikisibwe Confirmation Kukakasa Are you sure to delete all passwords on your computer? Okukakasa oyagala ebyama byonna bigyibwe ku kompyuta? Edit password Ekyama kikyusemu Change password: Ekyama kikyusize ddala: Choose file... Londa fayiro... Cannot read file! Fayiro ennemye okusoma! Successfully imported Kikoledwa Error while importing! Okunona kuzzemu kiremya! Cannot write to file! Nnemedwa okuwandika mu fayiro! Successfully exported Kikoledwa AutoFillNotification Update Tuukanisa Remember Kijjukire Never For This Site Ekya Wano Tokijjukiranga Not Now Ssi Kakati on %1 for <b>%1</b> Do you want QupZilla to update saved password %1? QupZilla etuukanise ekyama ekiterekedwa n'ekipya %1? Do you want QupZilla to remember the password %1 %2? QupZilla ejjukire ekyama %1 %2? AutoFillWidget Choose username to login Londa akawunti ey'okuyingira Login Yingira Login as <b>%1</b> Yingirira ku akawunti eya <b>%1</b> BookmarkIcon Bookmark this Page Kwata Kifo Kino Edit this bookmark Kakwatakifo kano kayusemu BookmarksImportDialog Import Bookmarks Nona bukwatakifo <b>Import Bookmarks</b> <b>Nona Bukwatakifo</b> From File Okuva mu Fayiro Internet Explorer Internet Explorer Choose browser from which you want to import bookmarks: Londako kalambulanetti mwoyagala okunona bukwatakifo: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Genderera:</b> Kakano fayiro zokka z'oyinza okulonda ng'ennono ya bukwatakifo, okugyako nga onona obusangibwa mu fayiro za HTML. Olwo osobola okulonda tterekero nga ye nnono ya bukwatakifo. Choose... Londa... Try to fetch icons for all bookmarks (may take a while) Egezeko okunona n'obufaananyi obugendera ku bukwatakifo buno (kiyinza kulwawo) Fetching icons, please wait... Nnona bufaananyi, ŋumiikirizako... Title Linnya Url Ndagiriro eya URL Next Ekiddako Cancel Sazamu <b>Importing from %1</b> <b>Nnona bukwatakifo okuva mu %1</b> Finish Maliriza Please press Finish to complete importing process. Nyiga ku kigambo Maliriza omulimu ogw'okunona gusobole okuggwa. Error! Kiremya! The file doesn't contain any bookmark. Fayiro temuli bukwatakifo. Choose directory... Londa tterekero... Choose file... Londa fayiro... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox obukwatakifo ebuterekera mu ggwanika lya data ery'ekika kya SQLite eyitibwa <b>placs.sqlite</b>. Fayiro eyo etera okusangibwa mu Please choose this file to begin importing bookmarks. Noonya fayiro gye wetaaga osobole okuyingiza bukwatakifo. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Google Chrome obukwatakifo ebuterekera mu fayiro ey'ebigambo eyitibwa <b>bookmarks</b>. Fayiro eyo etera okusangibwa mu Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera obukwatakifo ebuterekera mu fayiro ey'ebigambo eyitibwa <b>bookmarks.adr</b>. Fayiro eyo etera okusangibwa mu You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Obukwatakifo osobola okubunona mu kalambulanetti yonna emanyi okugabana ebyayo nga yeyambisa HTML. Fayiro erimu obukwatakifo erinnya lya yo litera okubako kamu ku bufundikira buno Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Explorer obukwatakifo ebuterekera mu tterekero eriyitibwa <b>Favorites</b>. Eryo litera okusangibwa mu Please choose this folder to begin importing bookmarks. Noonya tterekero lye wetaaga osobole okunona bukwatakifo. No Error Tewali Kiremya Unable to open file. Nnemedwa okubikkula fayiro. Cannot evaluate JSON code. Nnemedwa okuyungulula makulu mu JSON. File does not exist. Fayiro teriyo. Unable to open database. Is Firefox running? Nnemedwa okubikkula ggwanika lya data. Firefox yatandikidwa? Directory does not exist. Eryo tterekero teririyo. The directory does not contain any bookmarks. Tterekero teririmu bukwatakifo. BookmarksManager Bookmarks Bukwatakifo Optimize Database Tuukanisa Gwanika Lya Data Import Bookmarks Nona Bukwatakifo Add Folder Kolawo Tterekero Title Linnya Url Ndagiriro eya URL Expand All Byonna Birage Mu Bujjuvu Collapse All Byonna Birage Mu Bufunze Add new folder Kolawo tterekero ppya Choose parent folder for new folder: Londa tterekero mwe ligenda: Choose name for new bookmark folder: Tuuma tterekero lya bukwatakifo erikoledwa: Add new subfolder Kolawo tterekero munda mu linnaalyo Choose name for new subfolder in bookmarks toolbar: Tterekero ppya ery'oku lubaawo ery'obukwatakifo lituume: Rename Folder Tterekero Likyuse Linnya Choose name for folder: Tterekero lituume: Add Subfolder Kola Tterekero Mu Linnaaryo Rename folder Tterekero likyuse linnya Remove folder Gyawo tterekero Open link in current &tab Ekifo kibikkulire mu ka&timbe kano Open link in &new tab Ekifo kibikkulire mu katimbe &kapya Move bookmark to &folder Akakwatakifo kateeke mu &tterekero Change icon Kyusa kafaananyi Rename bookmark Akakwatakifo kakyuse linnya Remove bookmark Gyawo kakwatakifo <b>Warning: </b>You already have bookmarked this page! <b>Kujjukiza:</b>Ekifo kino wakikwata! Choose name and location of this bookmark. Akakwatakifo kano kutuume olonde ne gyekaba katerekebwa. Add New Bookmark Kolawo kakwatakifo Choose folder for bookmarks: Obukwatakifo bulondere tterekero: Bookmark All Tabs Buli katimbe ebikaliko bikolere bukwatakifo BookmarksModel Bookmarks In Menu Obukwatakifo obuli mu Menyu Bookmarks In ToolBar Obukwatakifo obuli mu lubaawo lw'ebiyamba Unsorted Bookmarks Obukwatakifo obutali busengeke BookmarksSideBar Search... Noonya... Open link in current &tab Ekifo kibikkulire mu ka&timbe kano Open link in &new tab Ekifo kibikkulire mu katimbe &kapya Copy address Ndagiriro gikoppe &Delete &Gyawo BookmarksToolbar &Bookmark Current Page &Olupapula luno lukolere kakwatakifo Bookmark &All Tabs Buli katimbe &ebikaliko bikolere bukwatakifo &Organize Bookmarks Obukwatakifo bu&sengeke Show Most &Visited Laga ebifo ebisinze ku&jjumbirwa Show Only Icons Laga bufaananyi bwokka &Hide Toolbar &Lubaawo lw'obukwatakifo lukisibwe Open bookmark Bikkula kakwatakifo Open bookmark in new tab Kakwatakifo kabikkulire mu katimbe kapya Move right Zza ku ddyo Move left Zza ku kkono Edit bookmark Akakwatakifo kakyusemu Remove bookmark Gyawo kakwatakifo Edit bookmark: Kyusamu kakwatakifo: Title: Linnya: Url: Ndagiriro ya URL: Edit Bookmark Kyusamu Kakwatakifo Most visited Awasinze kujjumbirwa Sites you visited the most Ebifo by'osinze okujjumbira Empty Wereere BookmarksTree Bookmarks Bukwatakifo New Folder... Tterekero Ppya... BookmarksWidget Add to Speed Dial Teeka mu Tuukirawo Save Kazza Name: Linnya: Folder: Tterekero: Remove from Speed Dial Gya mu Tuukirawo Remove Gyawo BrowsingLibrary Library Kuŋaanizo Search... Noonya... History Ebirabidwa Bookmarks Bukwatakifo RSS RSS Database Optimized Gwanika lya data lituukanisidwa Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 Gwanika lya data lituukanisidwa.<br/><br/><b>Obunene bwa lyo luli: </b>%1<br/><b>Obunene bwa lyo kakati: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Eweredwa</b> Common Name (CN): Linnya lya Bulijjo (CN): Organization (O): Kitongole (O): Organizational Unit (OU): Ttabi lya Kitongole (OU): Serial Number: Namba ya Mmatizo: <b>Issued By</b> <b>Eva Wa</b> <b>Validity</b> <b>Ebbanga ly'ekolera</b> Issued On: Yagabwa nga: Expires On: Ekoma nga: ClearPrivateData Clear Recent History Gyawo ebyakalabibwa Choose what you want to delete: Londamu by'oyagala okugyawo: Clear history Gyawo ebirabidwa Clear cache Gywao ebiri mu gwanika zzibizi Clear icons Gyawo bufaananyi obuterekedwa <b>Clear Recent History</b> <b>Gyawo ebyakalabibwa</b> Earlier Today Week Month All Clear web databases Gyawo ebiri mu mawanika ga data Clear local storage Gyawo puloguramu eno by'eterese ku kompyuta eno Clear cookies Gyawo bujjukiza ClickToFlash Object blocked by ClickToFlash Waliwo ClickToFlash ky'ebuutikidde Show more information about object Ndaga ebifa ku kibuutikidwa Delete object Ekibuutikidwa kigyibwewo Add %1 to whitelist %1 giteeke ku lukalala lw'ebikkirizibwa Flash Object Puloguramu ekozesa Fulasi <b>Attribute Name</b> <b>Value</b> No more information available. CookieManager Cookies Bujjukiza Stored Cookies Obujjukiza Obusigazidwa Find: Noonya: These cookies are stored on your computer: Obujjukiza buno busigazidwa ku kompyuta yo: Server Kompyuta ewereza Cookie name Linnya lya kajjukiza Name: Linnya: Value: Kye kakongojja: Server: Kompyuta ewereza: Path: Obusangiro: Secure: Obumizi: Expiration: Ka kwegyawo nga: <cookie not selected> <tonnalonda kajjukiza> Remove all cookies Gyawo obujjukiza bwonna Remove cookies Gyawo bujjukiza Cookie Filtering Kusunsula Bujjukiza <b>Cookie whitelist</b> <b>Lukalala lwa bujjukiza obwesigibwa</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Obujjukiza obusibuka ku kompyuta zino zijjanga okukkirizibwa (ne bw'obanga otegese nti QupZilla tesigaza bujjukiza) Add Yongerako Remove Gyawo <b>Cookie blacklist</b> <b>Lukalala lwa bujjukiza obutakkirizibwa</b> Cookies from these servers will NEVER be accepted Obujjukiza obusibuka ku kompyuta zino tezijjanga kukkizibwa Settings Nteekateeka <b>Cookie Settings</b> <b>Ebikwata ku bujjukiza</b> Allow storing of cookies Obujjukiza bukkirize okusigala ku kompyuta Delete cookies on close QupZilla bw'ogimala egyewo obujjukiza Match domain exactly Gaana obujjukiza obutava ku kompyuta eziri mu lukalala lw'ezesigibwa Filter tracking cookies Sunsulamu obujjukiza bwe b'eyambisa okulondoola by'olaba ku yintaneti <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! Search Noonya Confirmation Kukakasa Are you sure to delete all cookies on your computer? Okakasa oyagala obujjukiza bwonna kubugyawo? Secure only Kakozesa mikutu mimizi gyokka All connections Kakozesa mikutu gya ngeri zonna Session cookie Kajjukiza ka lukyala Remove cookie Gyawo kajjukiza Add to whitelist Teeka ku lukalala lw'ebyesigibwa Add to blacklist Teeka ku lukalala lw'ebitakkirizibwa DownloadFileHelper Save file as... Fayiro gitereke wano... NoNameDownload Tewali Kiwanulwa DownloadItem Remaining time unavailable Obudde obusigaddewo tebutegeerese Error: Cannot write to file! Kiremya: Nnemdwa kuwandika mu fayiro! Done - %1 Kuwedde - %1 Cancelled Gusazidwamu few seconds busikondabusikonda %n seconds %n minutes %n hours Unknown speed Obwangu tebutegeerese kB/s kB/s MB/s MB/s GB/s GB/s Unknown size Obunene tebutegeerese %2 - unknown size (%3) %2 - obunene tebutegeerese (%3) Remaining %1 - %2 of %3 (%4) Ebuleyo %1 - %2 ku %3 (%4) Cancelled - %1 Gusazidwamu - %1 Delete file Gyawo fayiro Do you want to also delete dowloaded file? Fayiro ewanudwa nayo egyibwewo? Open File Bikkula Fayiro Open Folder Bikkula Tterekero Go to Download Page Genda awali ebiwanulwa Copy Download Link Kwata ndagiriro ey'ekiwanulwa Cancel downloading Okuwanula kusazemu Remove Gyawo Error Kiremya Not found Tebizuuse Sorry, the file %1 was not found! Fayiro %1 embuze! Error: Kiremya: DownloadManager Download Manager Ekifuga Kuwanula Clear Yerula %1% of %2 files (%3) %4 remaining %1% ku fayiro %2 (%3) wasigadde %4 %1% - Download Manager Ekifuga Kuwanula - %1% Download Finished Okuwanula kuwedde All files have been successfully downloaded. Fayiro zonna ziwanudwa. Warning Kulabula Are you sure to quit? All uncompleted downloads will be cancelled! Okakasa oyagala okumala? Ebitannaggwa kuwanula byonna bijjakusazibwamu! DownloadOptionsDialog Opening Mbikkula Copy download link You have chosen to open Olonzewo okubikkula which is a: nga: What should QupZilla do with this file? Fayiro eno QupZilla egikole ki? Open... Gibikkule... Save File Fayiro Gitereke Download with External Manager Wanuza puloguramu ndala from: okuva ku: Opening %1 Mbikkula %1 Download link copied. EditSearchEngine Name: Linnya: Url: Ndagiriro ya URL: Shortcut: Okwanguya: Icon: Kafaananyi: <b>Note: </b>%s in url or post data represent searched string Post Data: Change... Kyusa... FileSchemeReply No Error Tewali Kiremya Up to higher level directory Genda mu tterekero lino mwe liri Show hidden files Fayiro nkise zirabike Name Linnya Size Bunene Last modified Lwe yasemba kukyusibwamu Index for %1 Folder is empty. Tterekero jjereere. FtpDownloader Cancelled! FtpSchemeReply Up to higher level directory Genda mu tterekero lino mwe liri Show hidden files Fayiro nkise zirabike Name Linnya Size Bunene Last modified Lwe yasemba okukyusibwamu Index for %1 Folder is empty. Tterekero jjereere. Unknown command Kiragiro tekitegeerese HTML5PermissionsDialog HTML5 Permissions Ndukusa za mu HTML5 Notifications Bubaka bwa puloguramu Site Nfo Behaviour Remove Gyawo Geolocation Eby'okumanyisa busangiro ku nsi Allow Kkiriza Deny Gaana HTML5PermissionsNotification Remember Jjukira Allow Kkiriza Deny Gaana this site nfo eno Allow %1 to show desktop notifications? %1 ekkirizibwe okuteekawo obubaka awakolerwawo? Allow %1 to locate your position? %1 ekkirizibwe okulaga w'oli ku nsi? History No Named Page Tewali Lupapula January Janwariyo February Febwariyo March Marisi April Apuli May Maayi June Juuni July Julayi August Agusito September Sebuttemba October Okitoba November Novemba December Desemba HistoryManager History Ebirabidwa Delete Gyawo Clear All History Yerula Lukalala Lw'ebirabidwa Optimize Database Tuukanisa Gwanika lya Data Confirmation Kukakasa Are you sure to delete all history? Okakasa nti oyagala okwerula lukalala lw'ebirabidwa? HistoryModel Title Linnya Address Ndagiriro Visit Date Lwelwalabwa Visit Count Mirundi Gye Lulabidwa Today Ebya Leero This Week Ebya Sabiiti Eno This Month Eya Mwezi Guno HistorySideBar Search... Noonya... HistoryView Open link in current tab Ekifo kibikkulire mu katimbe akaliwo Open link in new tab Ekifo kibikkulire mu katimbe kapya Copy title Erinnya likwate Copy address Ndagiriro gikwate Remove Gyawo IconChooser Choose icon... Londa kafaananyi... From file Okuva mu fayiro Image (.png, .jpg, .jpeg, .gif) Kifaananyi (.png .jpg .jpeg .gif) Choose file... Londa fayiro... From database Okuva mu gwanika lya data Site Url: Ndagiriro kwe lisangibwa: Image files Fayiro z'ebifaananyi JsOptions JavaScript Options Nteekateeka ya JavaScript Allow JavaScript to: JavaScript esobole: Close windows Okuggala madirisa Open popup windows Okuteekawo obututunuka Change window size Okukyusa bunene bw'amadirisa Hide menu bar Okukisa lubaawo lwa menyu Hide status bar Okukisa lubaawo olulaga ebibumbujja Hide tool bar Okukisa lubaawo lw'ebiyamba Access clipboard Okukolera mu ggwanika lya kiseerabuseera LicenseViewer License Viewer LocationBar Enter URL address or search on %1 Paste And &Go Paatiika Onoonyezewo Clear All .co.uk Append domain name on ALT + Enter = Should be different for every country Show information about this page Ndaga ebifa ku lupapula luno LocationCompleterView Switch to tab MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? Kakano QupZilla ssi ye kalambulanetti yo ya bulijjo. Wandiyagadde efuuke eya bulijjo? Always perform this check when starting QupZilla. Entegeka eno gikeberenga buli kutandika QupZilla. Default Browser Kalambulanetti ya Bulijjo QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. QupZilla kalambulanetti ey'omulembe eyanguya era nga mmizi, ekuuma byama byo, ate ekolebwa ku musingi gwa bbulabikugizo. QupZilla esaasaanyizibwa ku layisinsi eya GPL luwandika 3 oba olusingawo obugya (bw'obanga gy'oyagadde okukozesa ku by'ogikyusizaamu). Yesigamizidwa ku musingi gwa WebKit n'enzimba eya Qt. MasterPasswordDialog Encrypted DataBase Settings Set/Change Master Password... Clear Master Password... This backend does not work without a master password. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Current Password: New Password: Confirm Password: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. Warning! You entered a wrong password! New/Confirm password fields do not match! Some data has not been decrypted. The master password was not cleared! Are you sure to clear master password and decrypt data? NavigationBar No Named Page Back Ddayo Forward Weyongereyo Home Awatandikirwa New Tab Katimbe Kapya Main Menu Menyu Ey'okuntikko Exit Fullscreen Koma kubuna lutimbe Clear history Yerula lukalala lw'ebirabidwa NetworkManager SSL Certificate Error! Kiremya ku mmatizo ya SSL The page you are trying to access has the following errors in the SSL certificate: Olupapula lw'ogezako okutuukako mmatizo ya lwo eya SSL eriko kiremya ono: <b>Organization: </b> <b>Kibiina: </b> <b>Domain Name: </b> <b>Linnya lya twale lya kayungirizi: </b> <b>Expiration Date: </b> <b>Eggwako nga: </b> <b>Error: </b> <b>Kiremya: </b> Would you like to make an exception for this certificate? Mmatizo eno wandyagadde okugittira mu liiso ekkirizibwe? Authorisation required Username: Linnya lya akawunti: Password: Kyama: Save username and password on this site Kkiriza nfo no okujjukira kyama kyo n'erinnya lyo erya akawunti A username and password are being requested by %1. The site says: "%2" %1 ekusaba kyama n'erinnya lya akawunti. Nfo egamba nti: "%2" FTP authorisation required Login anonymously Yingira nga at'eyanjudde A username and password are being requested by %1:%2. %1 ekusaba kyama n'erinnya lya akawunti: %2 Proxy authorisation required Remember username and password for this proxy. A username and password are being requested by proxy %1. Kompyuta masanganzira %1 ekusaba kyama n'erinnya lya akawunti. PageScreen Page Screen Kifaananyi Format: Location: Browse... Save as %1 Choose location... File '%1' already exists. Do you want to overwrite it? File already exists PluginsList Application Extensions Puloguramu ez'okwongera ku QupZilla Allow Application Extensions to be loaded Kkiriza kwongera puloguramu ku QupZilla Settings Nteekateeka WebKit Plugins Ebyongerwako bya WebKit <b>Click To Flash Plugin</b> <b>Ekyongerwako 'Click To Flash'</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. 'Click To Flash' kapuloguramu ak'ongerwako akabuutikira puloguramu ezikozesa Fulasi ezisangibwa ku mpapula ezitalizimu. Puloguramu ekozesa Fulasi bw'oba oyagala ekole ekoona ku kabonero ka yo akagitandika. Whitelist Lukalala lw'ebikkirizibwa Add Yongerako Remove Gyawo Allow Click To Flash Kkiriza 'Click To Flash' PluginsManager Add site to whitelist Teeka nfo ku lukalala lw'ebikkirizibwa Server without http:// (ex. youtube.com) Linnya lya kompyuta nga tekuli http:// (okugeza youtube.com) Error! Kiremya! Cannot load extension! Nnemedwa okutandika kyongerwako! PopupWebView Inspect Element Kebera Buwandike Bw'ennono Bw'akatundu Kano PopupWindow File Fayiro &Save Page As... &Tereka Koppi ya Lupapula Luno Wano... Save Page Screen Lupapula Lukwate Kifaananyi Send Link... Ndagiriro eno baako b'ogisindikira... &Print... &Pulinta... Close Gala Edit Kyusamu &Undo &Julula &Redo &Zzawo &Cut &Situlawo C&opy K&oppa &Paste &Paatiika Select All Londa Byonna Find Noonya View Ndabika &Stop &Koma &Reload &Damu okubikkula Zoom &In Z&imbulukusa Zoom &Out K&endeeza Reset &Page Source &Bulambike obw'ennono obw'olupapula %1 - QupZilla %1 - QupZilla Preferences Preferences Nteekateeka QupZilla QupZilla General Bitalibimu Appearance Ndabika Tabs Butimbe Browsing Kulambula Intaneti Fonts Nkula Ya Nnukuta Keyboard Shortcuts Mapeesa Ag'anguya Mirimu Downloads Eby'okuwanula Password Manager Kutegeka Byama Privacy Kuuma Bibyo Notifications Bubaka Bwa Puloguramu Extensions Ebyongerwako Other Birala Use current Tegekawo Olulabika Kati Note: You cannot delete active profile. Genderera: Tosobola kugyawo mateeka agagobererwa kakano. Create New Kolawo Mapya Delete Gyawo <b>Launching</b> <b>Entandika</b> After launch: Nga yakatandika: Open blank page Tandikira ku lupapula lwereere Open homepage Tandikira ku lusookerwako Open speed dial Bikkula 'Tuukirawo' Restore session Tandikira ku byasemba kulabwa Homepage: Olusookerwako: On new tab: Bw'oggulawo katimbe kapya: Open blank tab Kabeere kereere Open other page... Kabikkule awalala... <b>Profiles</b> <b>Mateeka Agafuga QupZilla</b> Startup profile: Mateeka g'etandika nago: Check for updates on start Olutandika ekebere kulaba oba eriyo ntumbuzi Active profile: Mateeka g'egoberera kakano: In order to change language, you must restart browser. Okukyusa lulimi kyetaagisa kuddamu kutandika kalambulanetti eno. <b>Language</b> <b>Nnimi</b> Available translations: QupZilla esobola kukolera mu nnimi zino: Don't load tabs until selected Katimbe kapya omala ku kazza kungulu ebya mu ne biryoka bikimibwa Check to see if QupZilla is the default browser on startup QupZilla buli lw'etandika ekebere kulaba oba y'etegekedwa nga kalambulanetti eya bulijjo Check Now Kebera kakati Themes Ndyo z'endabika Advanced options Ebyetaagisa bumanyirivu <b>Browser Window</b> <b>Mu Ddirisa</b> Show StatusBar on start Olubaawo olulaga mbeera y'ebibumbujja lulabikirewo Show Bookmarks ToolBar on start Olubaawo lw'obukwatakifo lulabikirewo Show Navigation ToolBar on start Olubaawo olw'ebyokulambula lulabikirewo <b>Navigation ToolBar</b> <b>Lubaawo lwa Kulambula Intaneti</b> Show Home button Wabewo ppeesa erikuzza awatandikirwa Show Back / Forward buttons Wabwo mapeesa ag'okweyongerayo n'okudda mabega <b>Background<b/> <b>Bwaliriro<b/> Use transparent background Obwaliriro butangaale ng'ekirawuli Show web search bar Olubaawo olwanguya okunoonya lulabike Show Add Tab button Wabewo ppeesa ery'ongerawo butimbe Show Reload / Stop buttons Wabewo mapeesa agakomya n'agaddamu kubikkula lupapula Tabs behaviour Nneyisa ya butimbe Show tab previews Ekubbirengako ebiri mu butimbe obutalabika Make tab previews animated Okubbirako kusobole okubamu ebitambula Hide tabs when there is only one tab Katimbe bwe kabawo kamu kokka waleme kubawo kapande k'erinnnya lya ko Activate last tab when closing active tab Eky'okugyawo katimbe k'okebera kireetere katimbe akakaddako okubikkuka Open new tabs after active tab Open new empty tabs after active tab Automatically switch to newly opened tab Katimbe kapya kaddenga kungulu Don't quit upon closing last tab QupZilla esigalewo ng'ogyewo butimbe bwonna Ask when closing multiple tabs Bwe wabawo butimbe obusukka mu kamu QupZilla esookenga kukubuuza okukakasa nga ogiggalawo Closed tabs list instead of opened in tab bar Address Bar behaviour Nneyisa ya lubaawo okulabika ndagiriro Suggest when typing into address bar: Bw'obanga owandika awalabikira ndagiriro QupZilla ekulagenga ebifaanana by'owandika ebiri mu: History and Bookmarks Birabidwa ne mu Bukwatakifo History Birabidwa Bookmarks Bukwatakifo Nothing Ereme kubaako by'ekulaga Press "Shift" to not switch the tab but load the url in the current tab. Propose to switch tab if completed url is already loaded. Bw'owandika ndagiriro y'ekifo ekirabikira mu katimbe kalala, QuPzilla ekubuuze oba ekakuteere kungulu. Always show go icon Select all text by double clicking in address bar Okunyiga mirundi ebiri awali ndagiriro kitangaaze ebigambo ebiri awo byonna Select all text by clicking in address bar Bw'onyiga awalabikira ndagiriro, ebiwandikidw'awo byonna birondebwa Search with Default Engine Kozesa nfo enoonyesebwa eya bulijjo Show loading progress in address bar Awalabika ndagiriro wabewo ekiraga ogw'okubikkula ekifo we gutuuse Fill Kibunewo Bottom Kibeere wansi w'ebigambo Top Kibeere waggulu w'ebigambo Custom color: Weyiyize langi: Select color Londa langi ... ... Reset Zzawo langi eya bulijjo Web Configuration Ebisangibwa ku Intaneti Allow Netscape Plugins (Flash plugin) Ebyongerwako ebya Netscape (ebya Fulasi ) nabyo bisobole okukola Allow JavaScript Ebya JavaScript bikkirize bikole Allow JAVA Ebya JAVA bikkirizibwe Allow DNS Prefetch QupZilla ezuulirengawo ndagiriro nyunzi ez'okulupapula olwakabikkulwa kwe zigguka Enable XSS Auditing try to detect possible XSS attacks when executing javascript Kisoboke okusunsula mu bupuroguramu obukola nga tebusinzide ku nfo gy'obikkude Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Pulinta ekube n'ebiri ku bwaliriro bwa buli kitundu ky'olupapula Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Bw'otambuzisa mapeesa mu ddirisa lya puloguramu gakutwale ne ku nyunzi eziri ku lupapula lw'okebera Animated scrolling Enable caret browsing Kisoboke okutambulira mu lupapula lwa yintaneti nga weyambisa mapeesa gokka Enable spatial navigation Zoom text only Zimburukusako bigambo byokka Mouse wheel scrolls Okunyoola namuziga ey'okukasongosebwa kuleetere by'olaba okweseesa nyiriri lines on page waggulu oba wansi Default zoom on pages: Obuzimburukufu bwa by'olaba obwa bulijjo: Local Storage Kutereka Ku Kompyuta Eno Maximum Kkomo ly'obungi bw'ebiterekedwa mu gwanika 50 MB MB 50 1 1 Maximum pages in cache: Kkomo ly'empapula ezisobola kuterekebwa mu gwanika zzibizi: Allow storing network cache on disk Wabewo gwanika zzibizi ery'ebikeberwa ku yintaneti Store cache in: Gwanika eryo libeere wano: Allow saving history Kompyuta ekole lukalala lwa by'olabye Delete history on close Olukalala lwa by'olabye lugyibwengawo buli lw'omala QupZilla Allow local storage of HTML5 web content Ebya HTML5 bisobole okusigala ku kompyuta eno Delete locally stored HTML5 web content on close Oluva mu QupZilla nga n'ebya HTML5 ebisigadde ko bigyibwa wo Delete now Bigyewo Proxy Configuration Kuteekateeka Kompyuta Masanganzira Proxy Auto-Config (.pac) file Reload HTTP HTTP SOCKS5 SOCKS5 Port: Mukutu: Username: Linnya lya akawunti: Password: Kyama: Don't use on: Nteekateeka eno ereme kukolera ku: Manual configuration Wewandikire nteekateeka System proxy configuration Nteekateeka za masanganzira etuuka ku intaneti Do not use proxy Tokozesa masanganzira kutuuka ku intaneti <b>Exceptions</b> <b>Nteekateeka Zino Gye Zitaakolere</b> Server: Kompyuta Masanganzira: Use different proxy for https connection Kompyuta ndala y'eba ekola ku mikutu gya kika kya https Use script for automatic configuration: <b>Font Families</b> <b>Ndyo Za Nkula Za Nnukuta</b> Standard Fixed Serif Sans Serif Cursive Fantasy <b>Font Sizes</b> <b>Bunene Bwa Nnukuta</b> Fixed Font Size Default Font Size Minimum Font Size Minimum Logical Font Size <b>Shortcuts</b> <b>Ebyanguya</b> Switch to tabs with Alt + number of tab Okukyusa katimbe k'olaba nyiga ppeesa lya ALT okumu n'eririko namba efaanagana n'ekifo ky'akatimbe ke wetaaga Load speed dials with Ctrl + number of speed dial Mu Tuukirawo okugenda ku emu ku nfo ez'olesedwa nyiga ppeesa lya Ctrl okum n'eririko namba efaanagana n'ekifo ky'enfo eyo mu z'olesedwa Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>Ebiwanudwa Gye Bigenda</b> Ask everytime for download location Mbuuzanga buli lwe mbaako kye ŋenda okuwanula Use defined location: Bigendenga wano: <b>Download Options</b> <b>Ebinabangawo Mu Kuwanula</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Obubaka obwa mu kuwanula busibuke ku sisitemu yenyini so ssi QupZilla (Kiyinza kuleetawo kiremya ebiwanulwa bwe biba nga biva awantu awakozesa SSL) Close download manager when downloading finishes Ekifuga kuwanula kivewo okuwanula nga kuwedde <b>External download manager</b> <b>Ebifuga Kuwanula</b> Use external download manager Kozesa puloguramu etali ya QupZilla Executable: Puloguramu: Arguments: Agumenti: Leave blank if unsure Kino bw'oba ng a tokyekakasa leka wano nga wereere <b>%d</b> will be replaced with URL to be downloaded <b>AutoFill options</b> <b>Ebikkirizibwa Kujjukirwa</b> Allow saving passwords from sites Kkiriza nfo kujjukira byama Send Referer header to servers QupZilla ekkirize okusindikanga bubaka obumanyisa kompyuta okuli by'ogenda okulaba lupapula ki lw'ova kulaba <b>Cookies</b> <b>Obujjukiza</b> Send Do Not Track header to servers QupZilla eragirire kompyuta ez'oku yintaneti zireme okulondoola by'olaba <b>Other</b> <b>Birala</b> Manage CA certificates Certificate Manager Ekiteekateeka Mmatizo <b>SSL Certificates</b> <b>Mmatizo za SSL</b> <b>JavaScript</b> <b>JavaScript</b> Manage JavaScript privacy options Teekateeka ngeri ebya JavaScript gye bikuuma bibyo JavaScript options Nteekateeka za JavaScript Cookies Manager Teekateeka bya Bujjukiza Manage Cookies Teekateeka bya Bujjukiza <b>HTML5 Permissions</b> <b>Ndukusa za mu HTML5</b> Manage HTML5 permissions Teekateka ndukusa za mu HTML5 HTML5 Permissions Ndukusa za mu HTML5 <b>Notifications</b> <b>Bubaka</b> Use OSD Notifications Obubaka bujjirenga mu budirisa bwa OSD Use Native System Notifications (Linux only) Obubaka bukolerenga ku nteeekateeka ey'oku sisitemu eno (kikolera ku Linux yekka) Do not use Notifications Walemenga kubawo bubaka Expiration timeout: Obubaka buvawo luvanyuma lwa: seconds sikonda <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Genderera:</b>Okukyusa kadirisa ka OSD gye kalabikira kasike okutuuka w'oyagala kabeere. StyleSheet automatically loaded with all websites: Languages Nnimi <b>Preferred language for web sites</b> <b>Nnimi mw'osinga kwagala kusomera eby'oku intaneti</b> <b>Change browser identification</b> <b>Kyusa nneyanjula ya kalambulanneti</b> User Agent Manager Teekateeka Nneyanjula ya QupZilla Default Set as default OSD Notification Kadirisa ka OSD Drag it on the screen to place it where you want. Kasike okateeke w'oyagala kabeere. Choose download location... Londa ekifo ebiwanudwa mwe binaagendanga... Choose stylesheet location... Deleted Choose executable location... Choose cache path... New Profile Mateeka Mapya Enter the new profile's name: Wandika linnya lya mateeka mapya: Error! Kiremya! This profile already exists! Eriyo mateeka agamaze kutumwa linnya lino! Cannot create profile directory! Nnemedwa kukolawo tterekero lya mateeka! Confirmation Kukakasa Are you sure to permanently delete "%1" profile? This action cannot be undone! Okakasa oyagala okugyawo mateeka ga "%1"? Tojjakusobola kujjulula kikolwa kino! Select Color Londa Langi QObject Native System Notification Save file as... Fayiro gitereke wano... The file is not an OpenSearch 1.1 file. <not set in certificate> Unknown size KB MB GB Executable: Arguments: Cannot start external program Cannot start external program! %1 QtWin Open new tab Leeta katimbe kapya Opens a new tab if browser is running Kireetawo katimbe kapya Open new window Leeta ddirisa ppya Opens a new window if browser is running Wajja wo ddirisa ppya singa QupZilla eba ekola Open download manager Leeta ekifuga kuwanula Opens a download manager if browser is running Wajja wo ekifuga okuwanula singa QupZilla eba ekola QupZilla QupZilla QupZilla Private Browsing Enabled IP Address of current page Ndagiriro ya IP ey'olupapula olulabika kati &About QupZilla &Kwanjula QupZilla Pr&eferences Nt&eekateeka Quit Mala &File &Fayiro &New Window &Ddirisa Ppya New Tab Katimbe Kapya Open Location Bikkula Awantu Open &File... Bikkula &Fayiro... Close Tab Gyawo katimbe Close Window Gala Ddirisa &Save Page As... &Tereka Koppi ya Lupapula Luno Wano... Save Page Screen Lukwate Kifaananyi Send Link... Ndagiriro eno baako b'ogisindikira... &Print... Import bookmarks... Nona bukwatakifo... &Edit &Kyusamu &Undo &Julula &Redo &Zzawo &Cut &Situlawo C&opy K&oppa &Paste &Paatiika Select &All Londa &Byonna &Find &Noonya &View &Ndabika &Navigation Toolbar &Lubaawo Lwa Byakulambula &Bookmarks Toolbar Lubawo Lwa &Byabukwatakifo Sta&tus Bar Luba&wo Olulaga Mbeera Y'egibumbujja &Menu Bar Lubaawo Lwa &Menyu &Tabs on Top &Fullscreen &Buna Lutimbe &Stop &Koma &Reload &Damu kubikkula lupapula luno Character &Encoding &Nkongojja Ya Nukuta Enable &Caret Browsing Lambuza &Mapeesa Toolbars Mbawo z'ebiyamba Sidebars Budirisa Bwa Ku Mabbali Zoom &In &Zimburukusa Zoom &Out &Kendeeza Reset Zza Bugya &Page Source &Laga Buwandike Bw'ennono Bw'olupapula Hi&story Ebi&rabidwa &Back &Ddayo &Forward &Weyongereyo &Home &Awatandikirwa Show &All History Laga Byonn&a Ebirabidwa Closed Tabs Butimbe obwakagyibwawo Recently Visited Ebyakalabwa Most Visited Ebisinze Okulabwa Emirundi Emingi &Bookmarks &Bukwatakifo Bookmark &This Page K&wata kifo kino Bookmark &All Tabs Kwata Ebifo Ebiri mu Butimbe Bwonn&a Obuliwo Kakano Organize &Bookmarks Teekateeka &Bukwatakifo &Tools &Ebiyamba &Web Search Noonyeza ku &Yintaneti Page &Info Ma&yitire ga Lupapula Luno &Download Manager &Ekifuga Kuwanula &Cookies Manager &Teekateeka bya Bujjukiza &AdBlock &AdBlock RSS &Reader Web In&spector Ek&ikebera Buwandike Bw'ennono Clear Recent &History Yerula Lukalala &Lw'ebyakalabibwa New &Private Window &Help &Nyamba About &Qt Kwanjula &Qt Information about application Configuration Information Report &Issue Restore &Closed Tab Komyawo &Katimbe akaakagyibwawo (Private Browsing) Empty Wereere Restore All Closed Tabs Komyawo Butimbe Bwonna Obwakagyibwawo Clear list Lukalala Lwerule Other %1 - QupZilla %1 - QupZilla HTML files Fayiro eza HTML Image files Fayiro ez'ebifaananyi Text files Fayiro ez'ebigambo All files Fayiro ez'ebika byonna Open file... Bikkula fayiro... QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Okyalinawo obutimbe %1. QupZilla tejjakubujjukira. Okukasa oyagala okumala? Don't ask again Toddamu kusooka kumbuuza There are still open tabs Okyalinawo obutimbe QupZillaSchemeReply No Error Not Found Report Issue If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Your E-mail Issue type Issue description Send E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. Please fill out all required fields! Start Page Olutandikirwako Search on Web Search results provided by DuckDuckGo About QupZilla Kwanjula QupZilla <h1>Private Browsing</h1> Information about version Copyright Obuyinza bw'ebikugizo eby'obwa nannyini Version Luwandika WebKit version Luwandika lwa WebKit Main developer Contributors Translators Speed Dial Tuukirawo Add New Page Edit Kyusamu Remove Gyawo Reload Ddamu kulubikkula Are you sure to remove this speed dial? Load title from page Url Ndagiriro ya Url Title Apply Kazza Close Gala New Page Speed Dial settings Nteekateeka za Tuukirawo Placement: Auto Cover Fit Fit Width Fit Height Use background image Select image Maximum pages in a row: Change size of pages: Center speed dials Restore Session Oops, QupZilla crashed. Bambi, QupZilla etabuse. We apologize for this. Would you like to restore the last saved state? Tukwetondedde. Ebibadde birabika bikomezbwewo? Try removing one or more tabs that you think cause troubles Or you can start completely new session Configuration Information QupZilla bw'etegekedwa kakano This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Browser Identification Puloguramu kye yeyita ku yintaneti Paths Makubo Build Configuration Nteekateeka ezaakozesebwa mu kugikola Preferences Nteekateeka Option Kitegekebwa Value Butegeke bwa kyo Extensions Ebyongerwako Name Author Description Application version Luwandika lwa puloguramu Qt version Luwandika lwa Qt Build time Puloguramu lwe yakolebwa Platform Kika kya sisitemu kw'ekolera Profile Mateeka agagifuga nkola Settings Saved session Pinned tabs Data Data Themes Translations Disabled <b>Enabled</b> Debug build WebGL support Windows 7 API KDE integration Portable build No available extensions. RSSManager RSS Reader Empty Wereere Add feed Edit feed Delete feed Optimize Database Reload News Loading... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Add new feed Please enter URL of new feed: New feed Fill title and URL of a feed: Feed title: Feed URL: Edit RSS Feed Open link in current tab Ekifo kibikkulire mu katimbe akalabika kakano Open link in new tab Ekifo kibikkulire mu katimbe kapya Error in fetching feed RSS feed duplicated You already have this feed. RSSNotification Add this feed into Add RSS feed <b>"%1"</b> Internal Reader Other... Liferea not running Liferea must be running in order to add new feed. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Add feed into other application RSSWidget Add RSS Feeds from this site Untitled feed Add RecoveryWidget Start New Session Restore Window %1 RegisterQAppAssociation Warning! Kulabula! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) RssIcon Add RSS from this page... SSLManager Certificate Manager CA Authorities Certificates Show info This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Local Certificates Import Nona Remove This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Settings Nteekateeka Add If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. <b>NOTE:</b> Setting this option is a high security risk! Ignore all SSL Warnings All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Choose path... Import certificate... Nona mmatizo... Certificate Informations SearchEnginesDialog Manage Search Engines Add... Remove Edit Set as default Up Down Search Engine Shortcut Defaults Add Search Engine Remove Engine You can't remove the default search engine.<br>Set a different engine as default before removing %1. Edit Search Engine SearchEnginesManager Search Engine Added Search Engine "%1" has been successfully added. Search Engine is not valid! Error Kiremya Error while adding Search Engine <br><b>Error Message: </b> %1 SearchToolBar No results found. Tewali bizuulidwa. SearchToolbar Search: Noonya: Search... Noonya... Highlight Tangaaza Case sensitive Yawula wakati w'ennukuta nnene n'entono SideBar Bookmarks Bukwatakifo History Birabidwa SiteInfo Site Info General Media Databases Security Size: Site address: Encoding: Meta tags of site: Tag Value <b>Security information</b> Details Image Image address <b>Preview</b> <b>Database details</b> Name: Path: <database not selected> <not set in certificate> No databases are used by this page. <b>Connection is Encrypted.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Connection Not Encrypted.</b> <b>Your connection to this page is not secured!</b> Copy Image Location Copy Image Name Save Image to Disk Error! Kiremya! This preview is not available! Save image... Cannot write to file! Preview not available SiteInfoWidget More... Your connection to this site is <b>secured</b>. Your connection to this site is <b>unsecured</b>. This is your <b>%1</b> visit of this site. You have <b>never</b> visited this site before. first second third SourceViewer Source of File Fayiro Load in page Biteeke mu lupapula Save as... Bitereke wano... Close Gala Edit Kyusamu Undo Julula Redo Zawo Cut Situlawo Copy Koppa Paste Paatiika Select All Londa Byonna Find Noonya Go to Line... Genda ku lunyiriri namba... View Ndabika Reload Ddamu ku binona Editable Bisobole kukyusibwamu Word Wrap Mboozi z'emenyenga ddirisa gye likoma Source loaded in page Cannot load in page. Page has been closed. Sisobola ku biteeka mu lupapula, ssi lwe lulabika kati. Save file... Error! Kiremya! Cannot write to file! Error writing to file Source successfully saved Source reloaded Bizemu kunonebwa Cannot reload source. Page has been closed. Sisobola kuddamu kuwanula buwandike bw'ennono. Lupapula ssi lubikkule. Editable changed Kati bikyusikamu Word Wrap changed Mboozi kati z'emenya Enter line number Wandika namba ya lunyiriri SourceViewerSearch Search: Search... Whole words SpeedDial Image files Select image... Unable to load SpellCheckDialog SpellCheck <b>Dictionary path</b> Change... <b>User dictionary</b> Add Remove Using Hunspell library Choose dictionary path... Add new word... Add new word: Speller No suggestions Add to dictionary Settings SqueezeLabelV2 Copy SslErrorDialog SSL Certificate Error! Only for this session TabBar &New tab &Katimbe kapya &Stop Tab &Reload Tab &Damu Kubikkula Katimbe &Duplicate Tab D&etach Tab Un&pin Tab &Pin Tab Re&load All Tabs &Bookmark This Tab Bookmark &All Tabs Close Ot&her Tabs Gyawo Butimbe Bul&ala Cl&ose G&ala Reloa&d All Tabs Restore &Closed Tab Komyawo &Katimbe akaakagyibwawo Close Tabs Do you really want to close other tabs? TabWidget New Tab Katimbe Kapya List of tabs Lukalala lwa butimbe Loading... No Named Page Currently you have %1 opened tabs Kakano olinawo butimbe %1 New tab Katimbe kapya Empty Wereere Restore All Closed Tabs Zawo Butimbe Bwonna obwakagyibwawo Clear list Olukalala lwerule TabbedWebView Loading... %1 - QupZilla %1 - QupZilla Inspect Element Kebera Buwandike Bw'ennono Bw'akatundu Kano ThemeManager <b>Name:</b> <b>Lulyo:</b> <b>Author:</b> <b>Eyalukola:</b> <b>Description:</b> <b>Ebirufaako:</b> License ToolButton Stop Reload Updater Update available New version of QupZilla is ready to download. Update UserAgentDialog User Agent Manager Change global User Agent Use different User Agents for specified sites Site User Agent Add Remove Edit Add new site Edit site Site domain: User Agent: WebInspectorDockWidget Web Inspector Ekikebera Buwandike Bw'ennono WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? Remember my choice for this protocol External Protocol Request To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Confirm form resubmission Select files to upload... Server refused the connection Server closed the connection Kompyuta ewereza omukutu eguzibye Server not found Connection timed out Untrusted connection Temporary network failure Proxy connection refused Proxy server not found Proxy connection timed out Proxy authentication required Content not found Unknown network error AdBlocked Content Blocked by <i>%1</i> Content Access Denied Error code %1 Failed loading page QupZilla can't load page. QupZillaeremedwa okubikkula lupapula. QupZilla can't load page from %1. QupZilla eremedwa okubikkula olupapula oluli ku %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com If you are unable to load any pages, check your computer's network connection. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Try Again JavaScript alert Prevent this page from creating additional dialogs Choose file... Londa fayiro... Cannot read data from <b>%1</b>. Upload was cancelled! Cannot read file! WebSearchBar Manage Search Engines Add %1 ... Paste And &Search Paatiika &Onoonyzewo Clear All Show suggestions Search when engine changed WebView No Named Page Create Search Engine Cut Situlawo Copy Koppa Paste Paatiika Select All Londa Byonna Default Left to Right Right to Left Bold Italic Underline &Reload &Damu okubikkula S&top Ko&ma Delete Gyawo &Back &Ddayo &Forward &Weyongereyo This frame Show &only this frame Show this frame in new &tab Print frame Zoom &in Z&imbulukusa &Zoom out &Kendeeza Reset Show so&urce of frame Book&mark page &Kwata kifo kino &Save page as... &Tereka koppi ya lupapula luno wano... &Copy page link &Kwata ndagiriro y'olupapula luno Send page link... Ndagiriro ya lupapula luno baako b'ogisindikira... &Print page &Lusindike ku pulinta Select &all Londa &byonna Validate page Noonya nsobi mu buwandike bw'ennono bw'olupapula luno Show so&urce code Kebera buwandike bw'e&nnono Show info ab&out site Kebera m&ayitire g'ekifo kino Open link in new &tab Ekifo kibikkulire mu katimbe &kapya Open link in new &window Ekifo kibikkulire mu &ddirisa ppya B&ookmark link N&dagiriro eno gikolere kakwatakifo &Save link as... &Tereka koppi ya bino wano... Send link... Ndagiriro eno baako b'ogisindikira... &Copy link address &Ndagiriro eno gikwate Show i&mage Laga ki&faananyi kino kyokka Copy im&age Tereka koppi y'ekif&aananyi kino Copy image ad&dress Kwata n&dagiriro y'ekifaananyi kino &Save image as... &Tereka koppi y'ekifaananyi kino wano... Send image... Ekifaananyi kino baako b'okisindikira... Send text... Google Translate Dictionary Go to &web address Search "%1 .." with %2 Search with... &Play &Pause Un&mute &Mute &Copy Media Address &Send Media Address Save Media To &Disk Check &Spelling Languages Nnimi jsAlert Prevent this page from creating additional dialogs qupzilla-1.6.0/translations/my_MM.ts000066400000000000000000007413561226107126500175100ustar00rootroot00000000000000 AboutDialog About QupZilla Authors Authors and Contributors < About QupZilla <p><b>Application version %1</b><br/> <b>WebKit version %1</b></p> <small>Build time: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> AcceptLanguage Preferred Languages Add... Remove Up Down Personal [%1] AdBlockAddSubscriptionDialog Add Subscription Title: Address: Add new subscription to AdBlock: AdBlockCustomList Custom Rules AdBlockDialog AdBlock Configuration Enable AdBlock Search... Options AdBlock Add Rule Remove Rule Add Subscription Remove Subscription Update Subscriptions Learn about writing rules... AdBlockEasyList EasyList AdBlockIcon AdBlock lets you block unwanted content on web pages Blocked popup window AdBlock blocked unwanted popup window. AdBlock Show AdBlock &Settings Disable on %1 Disable only on this page Blocked Popup Windows %1 with (%2) No content blocked Blocked URL (AdBlock Rule) - click to edit rule AdBlockManager Do you want to add <b>%1</b> subscription? AdBlock Subscription AdBlockTreeWidget Add Rule Remove Rule Add Custom Rule Please write your rule here: %1 (recently updated) AddAcceptLanguage Add Language Choose preferred language for web sites Personal definition: AutoFillManager Passwords Server Username Password Import/Export Show Passwords Edit Remove Remove All Exceptions Import Passwords from File... Export Passwords to File... Search Are you sure that you want to show all passwords? Hide Passwords Confirmation Are you sure to delete all passwords on your computer? Edit password Change password: Choose file... Cannot read file! Successfully imported Error while importing! Cannot write to file! Successfully exported AutoFillNotification Update Remember Never For This Site Not Now on %1 for <b>%1</b> Do you want QupZilla to update saved password %1? Do you want QupZilla to remember the password %1 %2? AutoFillWidget Choose username to login Login Login as <b>%1</b> BookmarkIcon Bookmark this Page Edit this bookmark BookmarksImportDialog Import Bookmarks <b>Import Bookmarks</b> From File Choose browser from which you want to import bookmarks: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. Choose... Fetching icons, please wait... Title Url Next Cancel <b>Importing from %1</b> Finish Please press Finish to complete importing process. Error! The file doesn't contain any bookmark. Choose directory... Choose file... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Please choose this file to begin importing bookmarks. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Please choose this folder to begin importing bookmarks. No Error Unable to open file. Cannot evaluate JSON code. File does not exist. Unable to open database. Is Firefox running? BookmarksManager Bookmarks Optimize Database Import Bookmarks Add Folder Title Url Expand All Collapse All Add new folder Choose parent folder for new folder: Choose name for new bookmark folder: Add new subfolder Choose name for new subfolder in bookmarks toolbar: Rename Folder Choose name for folder: Add Subfolder Rename folder Remove folder Open link in current &tab Open link in &new tab Move bookmark to &folder Change icon Rename bookmark Remove bookmark <b>Warning: </b>You already have bookmarked this page! Choose name and location of this bookmark. Add New Bookmark Choose folder for bookmarks: Bookmark All Tabs BookmarksModel Bookmarks In Menu Bookmarks In ToolBar Unsorted Bookmarks BookmarksSideBar Search... Open link in current &tab Open link in &new tab Copy address &Delete BookmarksToolbar &Bookmark Current Page Bookmark &All Tabs &Organize Bookmarks Show Most &Visited Show Only Icons &Hide Toolbar Open bookmark Open bookmark in new tab Move right Move left Edit bookmark Remove bookmark Edit bookmark: Title: Url: Edit Bookmark Most visited Sites you visited the most Empty BookmarksTree Bookmarks New Folder... BookmarksWidget Add to Speed Dial Save Name: Folder: Remove from Speed Dial Remove BrowsingLibrary Library Search... History Bookmarks RSS Database Optimized Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 CertificateInfoWidget <b>Issued To</b> Common Name (CN): Organization (O): Organizational Unit (OU): Serial Number: <b>Issued By</b> <b>Validity</b> Issued On: Expires On: ClearPrivateData Clear Recent History Choose what you want to delete: Clear history Clear cache Clear icons Clear cookies from Adobe Flash Player <b>Clear Recent History</b> Earlier Today Week Month All Clear web databases Clear local storage Clear cookies ClickToFlash Object blocked by ClickToFlash Show more information about object Delete object Add %1 to whitelist Flash Object <b>Attribute Name</b> <b>Value</b> No more information available. CookieManager Cookies Stored Cookies Find: These cookies are stored on your computer: Server Cookie name Name: Value: Server: Path: Secure: Expiration: <cookie not selected> Remove all cookies Remove cookies Cookie Filtering <b>Cookie whitelist</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Add Remove <b>Cookie blacklist</b> Cookies from these servers will NEVER be accepted Settings <b>Cookie Settings</b> Allow storing of cookies Delete cookies on close Match domain exactly Filter tracking cookies <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable this options first! Search Confirmation Are you sure to delete all cookies on your computer? Secure only All connections Session cookie Remove cookie Add to whitelist Add to blacklist DownloadFileHelper Save file as... NoNameDownload DownloadItem Remaining time unavailable Error: Cannot write to file! Done - %1 Cancelled few seconds seconds minutes hours Unknown speed Unknown size %2 - unknown size (%3) Remaining %1 - %2 of %3 (%4) Cancelled - %1 Delete file Do you want to also delete dowloaded file? Open File Open Folder Go to Download Page Copy Download Link Cancel downloading Remove Error Not found Sorry, the file %1 was not found! Error: DownloadManager Download Manager Clear %1% of %2 files (%3) %4 remaining % - Download Manager Download Finished All files have been successfully downloaded. Warning Are you sure to quit? All uncompleted downloads will be cancelled! DownloadOptionsDialog Opening You have chosen to open which is a: What should QupZilla do with this file? Open... Save File Download with External Manager from: Opening %1 EditSearchEngine Name: Url: Shortcut: Icon: <b>Note: </b>%s in url represent searched string Change... FileSchemeReply No Error Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. FtpDownloader Cancelled! FtpSchemeReply Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. Unknown command HTML5PermissionsDialog HTML5 Permissions Notifications Site Behaviour Remove Geolocation Allow Deny HTML5PermissionsNotification Remember Allow Deny this site Allow %1 to show desktop notifications? Allow %1 to locate your position? History No Named Page January February March April May June July August September October November December HistoryManager History Delete Clear All History Optimize Database Confirmation Are you sure to delete all history? HistoryModel Title Address Visit Date Visit Count Today This Week This Month HistorySideBar Search... HistoryView Open link in current tab Open link in new tab Copy title Copy address Remove IconChooser Choose icon... From file Image (.png, .jpg, .jpeg, .gif) Choose file... From database Site Url: Image files JsOptions JavaScript Options Allow JavaScript to: Close windows Open popup windows Change window size Hide menu bar Hide status bar Hide tool bar Access clipboard LicenseViewer License Viewer LocationBar Enter URL address or search on %1 Paste And &Go Clear All .co.uk Append domain name on ALT + Enter = Should be different for every country Show information about this page LocationCompleterView Switch to tab MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? Always perform this check when starting QupZilla. Default Browser QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. NavigationBar No Named Page Back Forward Home New Tab Main Menu Exit Fullscreen Clear history NetworkManager SSL Certificate Error! The page you are trying to access has the following errors in the SSL certificate: <b>Organization: </b> <b>Domain Name: </b> <b>Expiration Date: </b> <b>Error: </b> Would you like to make an exception for this certificate? Authorisation required Username: Password: Save username and password on this site A username and password are being requested by %1. The site says: "%2" FTP authorisation required Login anonymously A username and password are being requested by %1:%2. Proxy authorisation required A username and password are being requested by proxy %1. PageScreen Page Screen Save Page Screen... PluginsList Application Extensions Allow Application Extensions to be loaded Settings WebKit Plugins <b>Click To Flash Plugin</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Whitelist Add Remove Allow Click To Flash PluginsManager Add site to whitelist Server without http:// (ex. youtube.com) Error! Cannot load extension! PopupWebView Inspect Element PopupWindow File &Save Page As... Save Page Screen Send Link... &Print... Close Edit &Undo &Redo &Cut C&opy &Paste Select All Find View &Stop &Reload Zoom &In Zoom &Out Reset &Page Source %1 - QupZilla Preferences Preferences QupZilla General Appearance Tabs Browsing Fonts Keyboard Shortcuts Downloads Password Manager Privacy Notifications Extensions Other Use current Note: You cannot delete active profile. Create New Delete <b>Launching</b> After launch: Open blank page Open homepage Open speed dial Restore session Homepage: On new tab: Open blank tab Open other page... <b>Profiles</b> Startup profile: Check for updates on start Active profile: In order to change language, you must restart browser. <b>Language</b> Available translations: Don't load tabs until selected Check to see if QupZilla is the default browser on startup Check Now Themes Advanced options <b>Browser Window</b> Show StatusBar on start Show Bookmarks ToolBar on start Show Navigation ToolBar on start <b>Navigation ToolBar</b> Show Home button Show Back / Forward buttons <b>Background<b/> Use transparent background Show web search bar Show Add Tab button Show Reload / Stop buttons Tabs behaviour Show tab previews Make tab previews animated Hide tabs when there is only one tab Activate last tab when closing active tab Open new tabs after active tab Open new empty tabs after active tab Automatically switch to newly opened tab Don't quit upon closing last tab Ask when closing multiple tabs Closed tabs list instead of opened in tab bar Address Bar behaviour Suggest when typing into address bar: History and Bookmarks History Bookmarks Nothing Press "Shift" to not switch the tab but load the url in the current tab. Propose to switch tab if completed url is already loaded. Select all text by double clicking in address bar Select all text by clicking in address bar Add .co.uk domain by pressing ALT key Search with Default Engine Show loading progress in address bar Fill Bottom Top Custom color: Select color ... Reset Web Configuration Allow Netscape Plugins (Flash plugin) Allow JavaScript Allow JAVA Allow DNS Prefetch Enable XSS Auditing try to detect possible XSS attacks when executing javascript Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Animated scrolling Enable caret browsing Zoom text only Mouse wheel scrolls lines on page Default zoom on pages: Local Storage Maximum 50 MB 1 Maximum pages in cache: Allow storing network cache on disk Store cache in: Allow saving history Delete history on close Allow local storage of HTML5 web content Delete locally stored HTML5 web content on close Delete now Proxy Configuration Proxy Auto-Config (.pac) file Reload HTTP SOCKS5 Port: Username: Password: Don't use on: Manual configuration System proxy configuration Do not use proxy <b>Exceptions</b> Server: Use different proxy for https connection Use script for automatic configuration: <b>Font Families</b> Standard Fixed Serif Sans Serif Cursive Fantasy <b>Font Sizes</b> Fixed Font Size Default Font Size Minimum Font Size Minimum Logical Font Size <b>Shortcuts</b> Switch to tabs with Alt + number of tab Load speed dials with Ctrl + number of speed dial <b>Download Location</b> Ask everytime for download location Use defined location: <b>Download Options</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Close download manager when downloading finishes <b>External download manager</b> Use external download manager Executable: Arguments: Leave blank if unsure <b>%d</b> will be replaced with URL to be downloaded <b>AutoFill options</b> Allow saving passwords from sites Send Referer header to servers <b>Cookies</b> Send Do Not Track header to servers <b>Other</b> Manage CA certificates Certificate Manager <b>SSL Certificates</b> <b>JavaScript</b> Manage JavaScript privacy options JavaScript options Cookies Manager Manage Cookies <b>HTML5 Permissions</b> Manage HTML5 permissions HTML5 Permissions <b>Notifications</b> Use OSD Notifications Use Native System Notifications (Linux only) Do not use Notifications Expiration timeout: seconds <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. StyleSheet automatically loaded with all websites: Languages <b>Preferred language for web sites</b> <b>Change browser identification</b> User Agent Manager QupZilla is default Make QupZilla default OSD Notification Drag it on the screen to place it where you want. Choose download location... Choose stylesheet location... Deleted Choose executable location... Choose cache path... New Profile Enter the new profile's name: Error! This profile already exists! Cannot create profile directory! Confirmation Are you sure to permanently delete "%1" profile? This action cannot be undone! Select Color QObject Native System Notification Save file as... The file is not an OpenSearch 1.1 file. <not set in certificate> Unknown size Executable: Arguments: Cannot start external program Cannot start external program! %1 QtWin Open new tab Opens a new tab if browser is running Open new window Opens a new window if browser is running Open download manager Opens a download manager if browser is running QupZilla QupZilla Private Browsing Enabled IP Address of current page &About QupZilla Pr&eferences Quit &File &New Window New Tab Open Location Open &File... Close Tab Close Window &Save Page As... Save Page Screen Send Link... &Print... Import bookmarks... &Edit &Undo &Redo &Cut C&opy &Paste Select &All &Find &View &Navigation Toolbar &Bookmarks Toolbar Sta&tus Bar &Menu Bar &Tabs on Top &Fullscreen &Stop &Reload Character &Encoding Enable &Caret Browsing Toolbars Sidebars Zoom &In Zoom &Out Reset &Page Source Hi&story &Back &Forward &Home Show &All History Closed Tabs Recently Visited Most Visited &Bookmarks Bookmark &This Page Bookmark &All Tabs Organize &Bookmarks &Tools &Web Search Page &Info &Download Manager &Cookies Manager &AdBlock RSS &Reader Web In&spector Clear Recent &History &Private Browsing New &Private Browsing Window &Help About &Qt Information about application Configuration Information Report &Issue Restore &Closed Tab (Private Browsing) Empty Restore All Closed Tabs Clear list Other %1 - QupZilla HTML files Image files Text files All files Open file... There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Don't ask again There are still open tabs QupZillaSchemeReply No Error Not Found Report Issue If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Your E-mail Issue type Issue description Send E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. Please fill out all required fields! Start Page Search on Web Search results provided by DuckDuckGo About QupZilla <h1>Private Browsing</h1> Information about version Copyright Version WebKit version Main developer Contributors Translators Speed Dial Add New Page Edit Remove Reload Are you sure to remove this speed dial? Load title from page Url Title Apply Close New Page Speed Dial settings Placement: Auto Cover Fit Fit Width Fit Height Use background image Select image Maximum pages in a row: Change size of pages: Center speed dials Restore Session Oops, QupZilla crashed. We apologize for this. Would you like to restore the last saved state? Try removing one or more tabs that you think cause troubles Or you can start completely new session Configuration Information This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Browser Identification Paths Build Configuration Preferences Option Value Extensions Name Author Description Application version Qt version Build time Platform Profile Settings Saved session Pinned tabs Data Themes Translations Disabled <b>Enabled</b> Debug build WebGL support Windows 7 API KDE integration Portable build No available extensions. RSSManager RSS Reader Empty Add feed Edit feed Delete feed Optimize Database Reload News Loading... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Add new feed Please enter URL of new feed: New feed Fill title and URL of a feed: Feed title: Feed URL: Edit RSS Feed Open link in current tab Open link in new tab Error in fetching feed RSS feed duplicated You already have this feed. RSSNotification Add this feed into Add RSS feed <b>"%1"</b> Internal Reader Other... Liferea not running Liferea must be running in order to add new feed. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Add feed into other application RSSWidget Add RSS Feeds from this site Untitled feed Add RecoveryWidget Start New Session Restore Window %1 RegisterQAppAssociation Warning! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) RssIcon Add RSS from this page... SSLManager Certificate Manager CA Authorities Certificates Show info This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Local Certificates Import Remove This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Settings Add If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. <b>NOTE:</b> Setting this option is a high security risk! Ignore all SSL Warnings All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Choose path... Import certificate... Certificate Informations SearchEnginesDialog Manage Search Engines Add... Remove Edit Set as default Up Down Search Engine Shortcut Defaults Add Search Engine Remove Engine You can't remove the default search engine.<br>Set a different engine as default before removing %1. Edit Search Engine SearchEnginesManager Search Engine Added Search Engine "%1" has been successfully added. Search Engine is not valid! Error Error while adding Search Engine <br><b>Error Message: </b> %1 SearchToolBar No results found. SearchToolbar Search: Search... Highlight Case sensitive SideBar Bookmarks History SiteInfo Site Info General Media Databases Security Size: Site address: Encoding: Meta tags of site: Tag Value <b>Security information</b> Details Image Image address <b>Preview</b> <b>Database details</b> Name: Path: <database not selected> <not set in certificate> No databases are used by this page. <b>Connection is Encrypted.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Connection Not Encrypted.</b> <b>Your connection to this page is not secured!</b> Copy Image Location Copy Image Name Save Image to Disk Error! This preview is not available! Save image... Cannot write to file! Preview not available SiteInfoWidget More... Your connection to this site is <b>secured</b>. Your connection to this site is <b>unsecured</b>. This is your <b>%1</b> visit of this site. You have <b>never</b> visited this site before. first second third SourceViewer Source of File Load in page Save as... Close Edit Undo Redo Cut Copy Paste Select All Find Go to Line... View Reload Editable Word Wrap Source loaded in page Cannot load in page. Page has been closed. Save file... Error! Cannot write to file! Error writing to file Source successfully saved Source reloaded Cannot reload source. Page has been closed. Editable changed Word Wrap changed Enter line number SourceViewerSearch Search: Search... Whole words SpeedDial Image files Select image... Unable to load SpellCheckDialog SpellCheck <b>Dictionary path</b> Change... <b>User dictionary</b> Add Remove Using Hunspell library Choose dictionary path... Add new word... Add new word: Speller No suggestions Add to dictionary Settings SqueezeLabelV2 Copy TabBar &New tab &Stop Tab &Reload Tab &Duplicate Tab Un&pin Tab &Pin Tab Re&load All Tabs &Bookmark This Tab Bookmark &All Tabs Close Ot&her Tabs Cl&ose Reloa&d All Tabs Bookmark &All Ta&bs Restore &Closed Tab TabWidget New Tab List of tabs Loading... No Named Page Currently you have %1 opened tabs New tab Empty Restore All Closed Tabs Clear list TabbedWebView Loading... %1 - QupZilla Inspect Element ThemeManager <b>Name:</b> <b>Author:</b> <b>Description:</b> License ToolButton Stop Reload Updater Update available New version of QupZilla is ready to download. Update UserAgentDialog User Agent Manager Change global User Agent Use different User Agents for specified sites Site User Agent Add Remove Edit Add new site Edit site Site domain: User Agent: WebInspectorDockWidget Web Inspector WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? Remember my choice for this protocol External Protocol Request To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Confirm form resubmission Select files to upload... Server refused the connection Server closed the connection Server not found Connection timed out Untrusted connection Temporary network failure Proxy connection refused Proxy server not found Proxy connection timed out Proxy authentication required Content not found Unknown network error AdBlocked Content Blocked by <i>%1</i> Content Access Denied Error code %1 Failed loading page QupZilla can't load page. QupZilla can't load page from %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com If you are unable to load any pages, check your computer's network connection. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Try Again JavaScript alert Prevent this page from creating additional dialogs Choose file... WebSearchBar Manage Search Engines Add %1 ... Paste And &Search Clear All Show suggestions Search when engine changed WebView No Named Page Create Search Engine Cut Copy Paste Select All &Reload S&top Delete &Back &Forward This frame Show &only this frame Show this frame in new &tab Print frame Zoom &in &Zoom out Reset Show so&urce of frame Book&mark page &Save page as... &Copy page link Send page link... &Print page Select &all Validate page Show so&urce code Show info ab&out site Open link in new &tab Open link in new &window B&ookmark link &Save link as... Send link... &Copy link address Show i&mage Copy im&age Copy image ad&dress &Save image as... Send image... Send text... Google Translate Dictionary Go to &web address Search "%1 .." with %2 Search with... &Play &Pause Un&mute &Mute &Copy Media Address &Send Media Address Save Media To &Disk Check &Spelling Languages jsAlert Prevent this page from creating additional dialogs qupzilla-1.6.0/translations/nb_NO.ts000066400000000000000000007472751226107126500174730ustar00rootroot00000000000000 AboutDialog About QupZilla Om QupZilla Authors Forfattere Authors and Contributors Forfattere og Medvirkere < About QupZilla < Om QupZilla <p><b>Application version %1</b><br/> <p><b>Programversjon %1</b><br/> <b>WebKit version %1</b></p> <b>WebKit versjon %1</b></p> <small>Build time: %1 </small></p> <small>Byggetid: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Hovedutvikler:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Medvirkere:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Oversettere:</b><br/>%1</p> AcceptLanguage Preferred Languages Foretrukne språk Add... Legg til... Remove Fjern Up Opp Down Ned Personal [%1] Personlig [%1] AdBlockAddSubscriptionDialog Add Subscription Legg til Abonnement Title: Tittel: Address: Adresse: Add new subscription to AdBlock: Legg til abonnement til AdBlock: AdBlockCustomList Custom Rules Egendefinerte Regler AdBlockDialog AdBlock Configuration AdBlock Konfigurasjon Enable AdBlock Slå på AdBlock Search... Søk... Options Valg AdBlock AdBlock Add Rule Legg til Regel Remove Rule Fjern Regel Add Subscription Legg til Abonnement Remove Subscription Fjern Abonnement Update Subscriptions Oppdater Abonnementer Learn about writing rules... Lær mer om å skrive regler... AdBlockEasyList EasyList EasyList AdBlockIcon AdBlock lets you block unwanted content on web pages AdBlock lar deg blokkere uønsket innhold på nettsider Blocked popup window Blokkerte sprettopp-vindu AdBlock blocked unwanted popup window. AdBlock blokkerte uønsket sprettopp-vindu. AdBlock AdBlock Show AdBlock &Settings Vis AdBlock &Innstillinger Disable on %1 Deaktiver på %1 Disable only on this page Slå av på denne siden Blocked Popup Windows Blokkerte Sprettopp-vinduer %1 with (%2) %1 med (%2) No content blocked Intet innhold blokkert Blocked URL (AdBlock Rule) - click to edit rule Blokkert URL (AdBlock Regel) - klikk for å redigere regel AdBlockManager Do you want to add <b>%1</b> subscription? Ønsker du å legge til abonnement på <b>%1</b>? AdBlock Subscription AdBlock Abonnement AdBlockTreeWidget Add Rule Legg til Regel Remove Rule Fjern Regel Add Custom Rule Legg til Tilpasset Regel Please write your rule here: Vennligst skriv regelen din her: %1 (recently updated) %1 (nylig oppdatert) AddAcceptLanguage Add Language Legg til Språk Choose preferred language for web sites Velg foretrukket språk for nettsider Personal definition: Personlig definisjon: AutoFillManager Passwords Passord Server Server Username Brukernavn Password Passord Import/Export Import/Eksport Show Passwords Vis Passord Edit Rediger Remove Fjern Remove All Fjern Alle Exceptions Unntak Import Passwords from File... Importer Passord fra Fil... Export Passwords to File... Eksporter Passord til Fil... Search Are you sure that you want to show all passwords? Er du sikker på at du ønsker å vise alle passordene? Hide Passwords Skjul Passordene Confirmation Bekreftelse Are you sure to delete all passwords on your computer? Er du sikker på at du vil slette alle passordene på din maskin? Edit password Rediger passord Change password: Endre Passord Choose file... Velg fil Cannot read file! Kan ikke lese fil! Successfully imported Suksessfull importering Error while importing! Feil under importering! Cannot write to file! Kan ikke skrive til fil! Successfully exported Eksportering suksessfull AutoFillNotification Update Remember Never For This Site Not Now on %1 på %1 for <b>%1</b> for <b>%1</b> Do you want QupZilla to update saved password %1? Do you want QupZilla to remember the password %1 %2? Ønsker du at QupZilla skal huske passordet %1 %2? AutoFillWidget Choose username to login Login Login as <b>%1</b> BookmarkIcon Bookmark this Page Legg til Bokmerke for denne Siden Edit this bookmark Rediger dette bokmerket BookmarksImportDialog Import Bookmarks Importer Bokmerker <b>Import Bookmarks</b> <b>Importer Bokmerker</b> From File Fra Fil Choose browser from which you want to import bookmarks: Velg nettleser du vil importere bokmerker fra: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Merk:</b> For øyeblikket kan man kun bruke import fra Html Fil for å importere bokmerke-mapper. Choose... Velg... Fetching icons, please wait... Henter ikoner, vennligst vent... Title Tittel Url Url Next Neste Cancel Kanseller <b>Importing from %1</b> <b>Importerer fra %1</b> Finish Ferdig Please press Finish to complete importing process. Vennligst trykk Ferdig for å fullføre importeringen. Error! Feil! The file doesn't contain any bookmark. Filen inneholder ingen bokmerker. Choose directory... Velg mappe... Choose file... Velg fil... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox lagrer sine bokmerker i <b>places.sqlite</b> SQLite database. Denne filen finner du normalt i Please choose this file to begin importing bookmarks. Vennligst velg denne mappen for å begynne import av bokmerker. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Google Chrome lagrer sine bokmerker i tekstfilen <b>Bookmarks</b>. Denne filen finner du normalt i Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera lagrer sine bokmerker i tekstfilen <b>bookmarks.adr</b>. Denne filen finner du normalt i You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Du kan importere bokmerker fra enhver nettleser som støtter HTML eksport. Denne filen har vanligvis disse filendelsene Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Explorer lagrer sine bokmerker i mappen <b>Favoritter</b>. Denne mappen finner du normalt i Please choose this folder to begin importing bookmarks. Vennligst velg denne mappen for å begynne importering av bokmerker. No Error Ingen Feil Unable to open file. Kan ikke åpne fil. Cannot evaluate JSON code. Kan ikke evaluere JSON kode. File does not exist. Filen eksisterer ikke Unable to open database. Is Firefox running? Kan ikke åpne databasen. Kjører Firefox? BookmarksManager Bookmarks Bokmerker Optimize Database Optimaliser Database Import Bookmarks Importer Bokmerker Add Folder Legg til Mappe Title Tittel Url Url Expand All Utvid Alle Collapse All Slå Sammen Alle Add new folder Legg til ny mappe Choose parent folder for new folder: Velg overordnet mappe for den nye mappen: Choose name for new bookmark folder: Velg mappe for ny bokmerke-mappe: Add new subfolder Legg til ny undermappe Choose name for new subfolder in bookmarks toolbar: Velg navn for ny undermappe i verktølinja for bokmerker: Rename Folder Gi Mappen Nytt Navn Choose name for folder: Velg navn for mappe: Add Subfolder Legg til Undermappe Rename folder Gi mappen nytt navn Remove folder Fjern mappen Open link in current &tab Åpne link i nåværende &fane Open link in &new tab Move bookmark to &folder Change icon Rename bookmark Remove bookmark <b>Warning: </b>You already have bookmarked this page! <b>Advarsel:</b> Du har allerede lagret bokmerke av denne siden! Choose name and location of this bookmark. Velg navn og plass for dette bokmerket. Add New Bookmark Choose folder for bookmarks: Bookmark All Tabs BookmarksModel Bookmarks In Menu Bookmarks In ToolBar Unsorted Bookmarks BookmarksSideBar Search... Open link in current &tab Open link in &new tab Copy address &Delete BookmarksToolbar &Bookmark Current Page Bookmark &All Tabs &Organize Bookmarks Show Most &Visited Show Only Icons &Hide Toolbar Open bookmark Open bookmark in new tab Move right Move left Edit bookmark Remove bookmark Edit bookmark: Title: Url: Edit Bookmark Most visited Sites you visited the most Empty BookmarksTree Bookmarks New Folder... BookmarksWidget Add to Speed Dial Save Name: Folder: Remove from Speed Dial Remove BrowsingLibrary Library Search... History Bookmarks RSS RSS Database Optimized Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 CertificateInfoWidget <b>Issued To</b> Common Name (CN): Organization (O): Organizational Unit (OU): Serial Number: <b>Issued By</b> <b>Validity</b> Issued On: Expires On: ClearPrivateData Clear Recent History Choose what you want to delete: Clear history Clear cache Clear icons Clear cookies from Adobe Flash Player <b>Clear Recent History</b> Earlier Today Week Month All Clear web databases Clear local storage Clear cookies ClickToFlash Object blocked by ClickToFlash Show more information about object Delete object Add %1 to whitelist Flash Object <b>Attribute Name</b> <b>Value</b> No more information available. CookieManager Cookies Informasjonskapsler Stored Cookies Find: These cookies are stored on your computer: Server Server Cookie name Name: Value: Server: Server: Path: Secure: Expiration: <cookie not selected> Remove all cookies Remove cookies Cookie Filtering <b>Cookie whitelist</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Add Remove <b>Cookie blacklist</b> Cookies from these servers will NEVER be accepted Settings <b>Cookie Settings</b> Allow storing of cookies Delete cookies on close Match domain exactly Filter tracking cookies <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable this options first! Search Confirmation Are you sure to delete all cookies on your computer? Secure only All connections Session cookie Remove cookie Add to whitelist Add to blacklist DownloadFileHelper Save file as... NoNameDownload DownloadItem Remaining time unavailable Error: Cannot write to file! Done - %1 Cancelled few seconds seconds minutes hours Unknown speed Unknown size %2 - unknown size (%3) Remaining %1 - %2 of %3 (%4) Cancelled - %1 Delete file Do you want to also delete dowloaded file? Open File Open Folder Go to Download Page Copy Download Link Cancel downloading Remove Error Not found Sorry, the file %1 was not found! Error: DownloadManager Download Manager Clear %1% of %2 files (%3) %4 remaining % - Download Manager Download Finished All files have been successfully downloaded. Warning Are you sure to quit? All uncompleted downloads will be cancelled! DownloadOptionsDialog Opening You have chosen to open which is a: What should QupZilla do with this file? Open... Save File Download with External Manager from: Opening %1 EditSearchEngine Name: Url: Url: Shortcut: Icon: <b>Note: </b>%s in url represent searched string Change... FileSchemeReply No Error Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. FtpDownloader Cancelled! FtpSchemeReply Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. Unknown command HTML5PermissionsDialog HTML5 Permissions Notifications Site Behaviour Remove Geolocation Allow Deny HTML5PermissionsNotification Remember Allow Deny this site Allow %1 to show desktop notifications? Allow %1 to locate your position? History No Named Page January February March April May June July August September October November December HistoryManager History Delete Clear All History Optimize Database Confirmation Are you sure to delete all history? HistoryModel Title Address Visit Date Visit Count Today This Week This Month HistorySideBar Search... HistoryView Open link in current tab Open link in new tab Copy title Copy address Remove IconChooser Choose icon... From file Image (.png, .jpg, .jpeg, .gif) Choose file... From database Site Url: Image files JsOptions JavaScript Options Allow JavaScript to: Close windows Open popup windows Change window size Hide menu bar Hide status bar Hide tool bar Access clipboard LicenseViewer License Viewer LocationBar Enter URL address or search on %1 Paste And &Go Clear All .co.uk Append domain name on ALT + Enter = Should be different for every country Show information about this page LocationCompleterView Switch to tab MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? Always perform this check when starting QupZilla. Default Browser QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. NavigationBar No Named Page Back Forward Home New Tab Main Menu Exit Fullscreen Clear history NetworkManager SSL Certificate Error! The page you are trying to access has the following errors in the SSL certificate: <b>Organization: </b> <b>Domain Name: </b> <b>Expiration Date: </b> <b>Error: </b> Would you like to make an exception for this certificate? Authorisation required Username: Password: Save username and password on this site A username and password are being requested by %1. The site says: "%2" FTP authorisation required Login anonymously A username and password are being requested by %1:%2. Proxy authorisation required A username and password are being requested by proxy %1. PageScreen Page Screen Save Page Screen... PluginsList Application Extensions Allow Application Extensions to be loaded Settings WebKit Plugins <b>Click To Flash Plugin</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Whitelist Add Remove Allow Click To Flash PluginsManager Add site to whitelist Server without http:// (ex. youtube.com) Error! Cannot load extension! PopupWebView Inspect Element PopupWindow File &Save Page As... Save Page Screen Send Link... &Print... Close Edit &Undo &Redo &Cut C&opy &Paste Select All Find View &Stop &Reload Zoom &In Zoom &Out Reset &Page Source %1 - QupZilla %1 - QupZilla Preferences Preferences QupZilla QupZilla General Appearance Tabs Browsing Fonts Keyboard Shortcuts Downloads Password Manager Privacy Notifications Extensions Other Use current Note: You cannot delete active profile. Create New Delete <b>Launching</b> After launch: Open blank page Open homepage Open speed dial Restore session Homepage: On new tab: Open blank tab Open other page... <b>Profiles</b> Startup profile: Check for updates on start Active profile: In order to change language, you must restart browser. <b>Language</b> Available translations: Don't load tabs until selected Check to see if QupZilla is the default browser on startup Check Now Themes Advanced options <b>Browser Window</b> Show StatusBar on start Show Bookmarks ToolBar on start Show Navigation ToolBar on start <b>Navigation ToolBar</b> Show Home button Show Back / Forward buttons <b>Background<b/> Use transparent background Show web search bar Show Add Tab button Show Reload / Stop buttons Tabs behaviour Show tab previews Make tab previews animated Hide tabs when there is only one tab Activate last tab when closing active tab Open new tabs after active tab Open new empty tabs after active tab Automatically switch to newly opened tab Don't quit upon closing last tab Ask when closing multiple tabs Closed tabs list instead of opened in tab bar Address Bar behaviour Suggest when typing into address bar: History and Bookmarks History Bookmarks Nothing Press "Shift" to not switch the tab but load the url in the current tab. Propose to switch tab if completed url is already loaded. Select all text by double clicking in address bar Select all text by clicking in address bar Add .co.uk domain by pressing ALT key Search with Default Engine Show loading progress in address bar Fill Bottom Top Custom color: Select color ... Reset Web Configuration Allow Netscape Plugins (Flash plugin) Allow JavaScript Allow JAVA Allow DNS Prefetch Enable XSS Auditing try to detect possible XSS attacks when executing javascript Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Animated scrolling Enable caret browsing Zoom text only Mouse wheel scrolls lines on page Default zoom on pages: Local Storage Maximum 50 MB 50 MB 1 1 Maximum pages in cache: Allow storing network cache on disk Store cache in: Allow saving history Delete history on close Allow local storage of HTML5 web content Delete locally stored HTML5 web content on close Delete now Proxy Configuration Proxy Auto-Config (.pac) file Reload HTTP HTTP SOCKS5 Port: Port: Username: Password: Don't use on: Manual configuration System proxy configuration Do not use proxy <b>Exceptions</b> Server: Use different proxy for https connection Use script for automatic configuration: <b>Font Families</b> Standard Fixed Serif Serif Sans Serif Sans Serif Cursive Fantasy Fantasy <b>Font Sizes</b> Fixed Font Size Default Font Size Minimum Font Size Minimum Logical Font Size <b>Shortcuts</b> Switch to tabs with Alt + number of tab Load speed dials with Ctrl + number of speed dial <b>Download Location</b> Ask everytime for download location Use defined location: <b>Download Options</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Close download manager when downloading finishes <b>External download manager</b> Use external download manager Executable: Arguments: Leave blank if unsure <b>%d</b> will be replaced with URL to be downloaded <b>AutoFill options</b> Allow saving passwords from sites Send Referer header to servers <b>Cookies</b> Send Do Not Track header to servers <b>Other</b> Manage CA certificates Certificate Manager <b>SSL Certificates</b> <b>JavaScript</b> <b>JavaScript</b> Manage JavaScript privacy options JavaScript options Cookies Manager Manage Cookies <b>HTML5 Permissions</b> Manage HTML5 permissions HTML5 Permissions <b>Notifications</b> Use OSD Notifications Use Native System Notifications (Linux only) Do not use Notifications Expiration timeout: seconds <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. StyleSheet automatically loaded with all websites: Languages <b>Preferred language for web sites</b> <b>Change browser identification</b> User Agent Manager QupZilla is default Make QupZilla default OSD Notification Drag it on the screen to place it where you want. Choose download location... Choose stylesheet location... Deleted Choose executable location... Choose cache path... New Profile Enter the new profile's name: Error! This profile already exists! Cannot create profile directory! Confirmation Are you sure to permanently delete "%1" profile? This action cannot be undone! Select Color QObject Native System Notification Save file as... The file is not an OpenSearch 1.1 file. <not set in certificate> Unknown size Executable: Arguments: Cannot start external program Cannot start external program! %1 QtWin Open new tab Opens a new tab if browser is running Open new window Opens a new window if browser is running Open download manager Opens a download manager if browser is running QupZilla QupZilla QupZilla Private Browsing Enabled IP Address of current page &About QupZilla Pr&eferences Quit &File &New Window New Tab Open Location Open &File... Close Tab Close Window &Save Page As... Save Page Screen Send Link... &Print... Import bookmarks... &Edit &Undo &Redo &Cut C&opy &Paste Select &All &Find &View &Navigation Toolbar &Bookmarks Toolbar Sta&tus Bar &Menu Bar &Tabs on Top &Fullscreen &Stop &Reload Character &Encoding Enable &Caret Browsing Toolbars Sidebars Zoom &In Zoom &Out Reset &Page Source Hi&story &Back &Forward &Home Show &All History Closed Tabs Recently Visited Most Visited &Bookmarks Bookmark &This Page Bookmark &All Tabs Organize &Bookmarks &Tools &Web Search Page &Info &Download Manager &Cookies Manager &AdBlock RSS &Reader Web In&spector Clear Recent &History &Private Browsing New &Private Browsing Window &Help About &Qt Information about application Configuration Information Report &Issue Restore &Closed Tab (Private Browsing) Empty Restore All Closed Tabs Clear list Other %1 - QupZilla HTML files Image files Text files All files Open file... There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Don't ask again There are still open tabs QupZillaSchemeReply No Error Not Found Report Issue If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Your E-mail Issue type Issue description Send E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. Please fill out all required fields! Start Page Search on Web Search results provided by DuckDuckGo About QupZilla <h1>Private Browsing</h1> Information about version Copyright Version WebKit version Main developer Contributors Translators Speed Dial Add New Page Edit Remove Reload Are you sure to remove this speed dial? Load title from page Url Title Apply Close New Page Speed Dial settings Placement: Auto Cover Fit Fit Width Fit Height Use background image Select image Maximum pages in a row: Change size of pages: Center speed dials Restore Session Oops, QupZilla crashed. We apologize for this. Would you like to restore the last saved state? Try removing one or more tabs that you think cause troubles Or you can start completely new session Configuration Information This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Browser Identification Paths Build Configuration Preferences Option Value Extensions Name Author Description Application version Qt version Build time Platform Profile Settings Saved session Pinned tabs Data Themes Translations Disabled <b>Enabled</b> Debug build WebGL support Windows 7 API KDE integration Portable build No available extensions. RSSManager RSS Reader Empty Add feed Edit feed Delete feed Optimize Database Reload News Loading... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Add new feed Please enter URL of new feed: New feed Fill title and URL of a feed: Feed title: Feed URL: Edit RSS Feed Open link in current tab Open link in new tab Error in fetching feed RSS feed duplicated You already have this feed. RSSNotification Add this feed into Add RSS feed <b>"%1"</b> Internal Reader Other... Liferea not running Liferea must be running in order to add new feed. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Add feed into other application RSSWidget Add RSS Feeds from this site Untitled feed Add RecoveryWidget Start New Session Restore Window %1 RegisterQAppAssociation Warning! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) RssIcon Add RSS from this page... SSLManager Certificate Manager CA Authorities Certificates Show info This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Local Certificates Import Remove This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Settings Add If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. <b>NOTE:</b> Setting this option is a high security risk! Ignore all SSL Warnings All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Choose path... Import certificate... Certificate Informations SearchEnginesDialog Manage Search Engines Add... Remove Edit Set as default Up Down Search Engine Shortcut Defaults Add Search Engine Remove Engine You can't remove the default search engine.<br>Set a different engine as default before removing %1. Edit Search Engine SearchEnginesManager Search Engine Added Search Engine "%1" has been successfully added. Search Engine is not valid! Error Error while adding Search Engine <br><b>Error Message: </b> %1 SearchToolBar No results found. SearchToolbar Search: Search... Highlight Case sensitive SideBar Bookmarks History SiteInfo Site Info General Media Databases Security Size: Site address: Encoding: Meta tags of site: Tag Value <b>Security information</b> Details Image Image address <b>Preview</b> <b>Database details</b> Name: Path: <database not selected> <not set in certificate> No databases are used by this page. <b>Connection is Encrypted.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Connection Not Encrypted.</b> <b>Your connection to this page is not secured!</b> Copy Image Location Copy Image Name Save Image to Disk Error! This preview is not available! Save image... Cannot write to file! Preview not available SiteInfoWidget More... Your connection to this site is <b>secured</b>. Your connection to this site is <b>unsecured</b>. This is your <b>%1</b> visit of this site. You have <b>never</b> visited this site before. first second third SourceViewer Source of File Load in page Save as... Close Edit Undo Redo Cut Copy Paste Select All Find Go to Line... View Reload Editable Word Wrap Source loaded in page Cannot load in page. Page has been closed. Save file... Error! Cannot write to file! Error writing to file Source successfully saved Source reloaded Cannot reload source. Page has been closed. Editable changed Word Wrap changed Enter line number SourceViewerSearch Search: Search... Whole words SpeedDial Image files Select image... Unable to load SpellCheckDialog SpellCheck <b>Dictionary path</b> Change... <b>User dictionary</b> Add Remove Using Hunspell library Choose dictionary path... Add new word... Add new word: Speller No suggestions Add to dictionary Settings SqueezeLabelV2 Copy TabBar &New tab &Stop Tab &Reload Tab &Duplicate Tab Un&pin Tab &Pin Tab Re&load All Tabs &Bookmark This Tab Bookmark &All Tabs Close Ot&her Tabs Cl&ose Reloa&d All Tabs Bookmark &All Ta&bs Restore &Closed Tab TabWidget New Tab List of tabs Loading... No Named Page Currently you have %1 opened tabs New tab Empty Restore All Closed Tabs Clear list TabbedWebView Loading... %1 - QupZilla Inspect Element ThemeManager <b>Name:</b> <b>Author:</b> <b>Description:</b> License ToolButton Stop Reload Updater Update available New version of QupZilla is ready to download. Update UserAgentDialog User Agent Manager Change global User Agent Use different User Agents for specified sites Site User Agent Add Remove Edit Add new site Edit site Site domain: User Agent: WebInspectorDockWidget Web Inspector WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? Remember my choice for this protocol External Protocol Request To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Confirm form resubmission Select files to upload... Server refused the connection Server closed the connection Server not found Connection timed out Untrusted connection Temporary network failure Proxy connection refused Proxy server not found Proxy connection timed out Proxy authentication required Content not found Unknown network error AdBlocked Content Blocked by <i>%1</i> Content Access Denied Error code %1 Failed loading page QupZilla can't load page. QupZilla can't load page from %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com If you are unable to load any pages, check your computer's network connection. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Try Again JavaScript alert Prevent this page from creating additional dialogs Choose file... WebSearchBar Manage Search Engines Add %1 ... Paste And &Search Clear All Show suggestions Search when engine changed WebView No Named Page Create Search Engine Cut Copy Paste Select All &Reload S&top Delete &Back &Forward This frame Show &only this frame Show this frame in new &tab Print frame Zoom &in &Zoom out Reset Show so&urce of frame Book&mark page &Save page as... &Copy page link Send page link... &Print page Select &all Validate page Show so&urce code Show info ab&out site Open link in new &tab Open link in new &window B&ookmark link &Save link as... Send link... &Copy link address Show i&mage Copy im&age Copy image ad&dress &Save image as... Send image... Send text... Google Translate Dictionary Go to &web address Search "%1 .." with %2 Search with... &Play &Pause Un&mute &Mute &Copy Media Address &Send Media Address Save Media To &Disk Check &Spelling Languages jsAlert Prevent this page from creating additional dialogs qupzilla-1.6.0/translations/nl_NL.ts000066400000000000000000010561751226107126500174730ustar00rootroot00000000000000 AboutDialog About QupZilla Over QupZilla Authors Auteurs Authors and Contributors Auteurs en bijdragers < About QupZilla < Over QupZilla <p><b>Application version %1</b><br/> <p><b>Programma-versie %1</b><br/> <b>WebKit version %1</b></p> <b>WebKit-versie %1</b></p> <small>Build time: %1 </small></p> <small>Bouwtijd: %1</small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Hoofdontwikkelaar:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Bijdragers</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Vertalers:</b><br/>%1</p> AcceptLanguage Preferred Languages Voorkeurstalen Add... Voeg toe... Remove Verwijder Up Omhoog Down Omlaag Personal [%1] Persoonlijk [%1] AdBlockAddSubscriptionDialog Add Subscription Voeg abonnement toe Title: Titel: Address: Adres: Add new subscription to AdBlock: Voeg nieuw abonnement toe aan Advertentieblokkeerder: AdBlockCustomList Custom Rules Aangepaste regels AdBlockDialog AdBlock Configuration Advertentieblokkeerder-instellingen Enable AdBlock Schakel advertentieblokkeerder in Search... Zoeken... Options Opties AdBlock Advertentieblokkeerder Use only essential part of EasyList (for performance reasons) Alleen het essentiele deel van EasyList gebruiken (om snelheidsredenen) Add Rule Voeg regel toe Remove Rule verwijder Regel Add Subscription Voeg abonnement toe Remove Subscription Verwijder abonnement Update Subscriptions Werk abonnementen bij Learn about writing rules... Lees meer over het schrijven van regels... AdBlockIcon AdBlock lets you block unwanted content on web pages Advertentieblokkeerder laat u ongewenste inhoud op pagina's blokkeren Blocked popup window Geblokkeerd popup-venster AdBlock blocked unwanted popup window. Advertentieblokkeerder blokkeerde een ongewenst popup-venster. AdBlock Advertentieblokkeerder Show AdBlock &Settings Toon &instellingen Disable on %1 Uitschakelen op %1 Disable only on this page Schakel alleen deze pagina uit Blocked Popup Windows Geblokkeerde popup-vensters %1 with (%2) %1 met (%2) No content blocked Geen inhoud geblokkeerd Blocked URL (AdBlock Rule) - click to edit rule Geblokkeerde URL (AdBlock-regel) - klik om regel aan te passen AdBlockManager Do you want to add <b>%1</b> subscription? Wilt u abonnement <b>%1</b> toevoegen? AdBlock Subscription Advertentieblokkeerder-abonnement EasyList Eenvoudige lijst AdBlockTreeWidget Add Rule Voeg regel toe Remove Rule verwijder Regel Add Custom Rule Aangepaste regels Please write your rule here: Schrijf AUB de regels hier: %1 (recently updated) %1 (Onlangs bijgewerkt) AddAcceptLanguage Add Language Voeg taal toe Choose preferred language for web sites Kies uw voorkeurstaal voor websites Personal definition: Persoonlijke omschrijving: AesInterface Warning! Waarschuwing! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. Data is versleuteld met een nieuwere versie van QupZilla. Installeer alstublieft de nieuwste versie van QupZilla. AutoFill Database (plaintext) Database (platte tekst) Database (encrypted) Database (versleuteld) Enter Master Password Vul hoofdwachtwoord in Permission is required, please enter Master Password: Toestemming is vereist, vul alstublieft het hoofdwachtwoord in: Warning! Waarschuwing! Entered password is wrong! Het ingevulde wachtwoord is fout! This backend needs a master password to be set! QupZilla just switches to its default backend Dit backend vereist een ingesteld hoofdwachtwoord! QupZilla zal omschakelen naar het standaardbackend. AutoFillManager Passwords are stored in: Wachtwoorden worden opgeslagen in: Change backend Verander backend Backend options Backend-instellingen Passwords Wachtwoorden Server Server Username Gebruikersnaam Password Wachtwoord Import/Export Importeer/Exporteer Show Passwords Toon wachtwoorden Edit Bewerk Remove Verwijder Remove All Verwijder alles Exceptions Uitzonderingen Import Passwords from File... Importeer wachtwoorden uit bestand... Export Passwords to File... Exporteer wachtwoorden naar bestand... Search Zoeken Change backend... Verander backend... Change backend: Verander backend: Are you sure that you want to show all passwords? Weet u zeker dat u alle wachtwoorden wilt tonen? Hide Passwords Verberg wachtwoorden Confirmation Bevestiging Are you sure to delete all passwords on your computer? Weet u zeker dat u alle wachtwoorden op uw computer wilt verwijderen? Edit password Bewerk wachtwoord Change password: Verander wachtwoord: Choose file... Kies bestand... Cannot read file! Kan bestand niet lezen! Successfully imported Succesvol geimporteerd Error while importing! Fout tijdens importeren! Cannot write to file! Kan niet naar bestand schrijven! Successfully exported Succesvol geexporteerd AutoFillNotification Update Bijwerken Remember Onthouden Never For This Site Nooit voor deze Site Not Now Niet Nu on %1 op %1 for <b>%1</b> voor <b>%1</b> Do you want QupZilla to update saved password %1? Wil je dat Qupzilla je opgeslagen wachtwoorden bijwerkt %1? Do you want QupZilla to remember the password %1 %2? Wil je dat Qupzilla je wachtwoord onthoudt %1 %2? AutoFillWidget Choose username to login Kies gebruikersnaam op inteloggen Login Inloggen Login as <b>%1</b> Inloggen als <b>%1</b> BookmarkIcon Bookmark this Page Bladwijzer deze pagina Edit this bookmark Bewerk deze bladwijzer BookmarksImportDialog Import Bookmarks Importeer bladwijzers <b>Import Bookmarks</b> <b>Importeer bladwijzers</b> From File Uit bestand Internet Explorer Internet Explorer Choose browser from which you want to import bookmarks: Kies de browser waaruit u bladwijzers wilt importeren: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Noot:</b> Op dit moment kunnen bladwijzermappen alleen geimporteerd worden d.m.v. een HTML-bestand. Choose... Kies... Try to fetch icons for all bookmarks (may take a while) Probeer om pictogrammen te verkrijgen voor alle bladwijzers (kan enige tijd duren) Fetching icons, please wait... Verkrijgen van pictogrammen, wacht alstublieft... Title Titel Url URL Next Volgende Cancel Annuleren <b>Importing from %1</b> <b>Bezig met importeren uit %1</b> Finish Afronden Please press Finish to complete importing process. Klik alstublieft op Afronden om het import-proces te voltooiien. Error! Fout! The file doesn't contain any bookmark. Het bestand bevat geen enkele bladwijzer. Choose directory... Kies map... Choose file... Kies bestand... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox bewaart haar bladwijzers in <b>places.sqlite</b> SQLite-datebase. Dit bestand is meestal te vinden in Please choose this file to begin importing bookmarks. Kies alstublieft dit bestand om het importeren te starten. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Google Chrome bewaart haar bladwijzers in <b>Bookmarks</b>-tekstbestand. Dit bestand is meestal te vinden in Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera bewaart haar bladwijzers in <b>bookmarks.adr</b>-tekstbestand. Dit bestand is meestal te vinden in You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes U kunt bladwijzers importeren uit elke browser die HTML-exportering ondersteund. Het bestand heeft meestal deze extensies Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Explorer bewaart haar bladwijzers in <b>Favorieten</b>-map. Dit bestand is meestal te vinden in Please choose this folder to begin importing bookmarks. Kies alstublieft deze map om het importeren te starten. No Error Geen fout Unable to open file. Kan bestand niet openen. Cannot evaluate JSON code. Kan JSON-code niet evalueren. File does not exist. Bestand bestaat niet. Unable to open database. Is Firefox running? Database kan niet worden geopend. Is Firefox actief? Directory does not exist. Map bestaat niet. The directory does not contain any bookmarks. De map bevat geen enkele bladwijzer. BookmarksManager Bookmarks Bladwijzers Optimize Database Optimaliseer database Import Bookmarks Importeer bladwijzers Add Folder Voeg map toe Title Titel Url URL Expand All Klap alles uit Collapse All Klap alles in Add new folder Voeg nieuwe map toe Choose parent folder for new folder: Kies hoofdmap voor nieuwe map: Choose name for new bookmark folder: Kies naam voor nieuwe bladwijzermap: Add new subfolder Voeg nieuwe submap toe Choose name for new subfolder in bookmarks toolbar: Kies naam voor nieuwe submap op bladwijzerwerkbalk: Rename Folder Hernoem map Choose name for folder: Kies naam voor map: Add Subfolder Voeg submap toe Rename folder Hernoem map Remove folder Verwijder map Open link in current &tab Open link in huidige &tab Open link in &new tab Open link in &nieuw tabblad Move bookmark to &folder Verplaats bladwijzer naar &map Change icon Verander pictogram Rename bookmark Hernoem bladwijzer Remove bookmark Verwijder bladwijzer <b>Warning: </b>You already have bookmarked this page! <b>Waarschuwing: </b>U heeft deze pagina al in uw bladwijzers! Choose name and location of this bookmark. Kies naam en locatie van deze bladwijzer. Add New Bookmark Voeg nieuwe bladwijzer toe Choose folder for bookmarks: Kies map voor bladwijzers: Bookmark All Tabs Bladwijzer alle tabbladen BookmarksModel Bookmarks In Menu Bladwijzers in menu Bookmarks In ToolBar Bladwijzers op werkbalk Unsorted Bookmarks Ongesorteerde bladwijzers BookmarksSideBar Search... Zoeken... Open link in current &tab Open link in huidig &tabblad Open link in &new tab Open link in &nieuw tabblad Copy address Kopieer adres &Delete &Verwijder BookmarksToolbar &Bookmark Current Page Voeg &huidige pagina toe Bookmark &All Tabs Voeg &alle tabbladen toe &Organize Bookmarks &Beheer bladwijzers Show Most &Visited Toon meest &bezocht Show Only Icons Toon alleen pictogrammen &Hide Toolbar &Verberg werkbalk Open bookmark Open bladwijzer Open bookmark in new tab Open bladwijzer in nieuw tabblad Move right Verplaats naar rechts Move left Verplaats naar links Edit bookmark Bewerk bladwijzer Remove bookmark Verwijder bladwijzer Edit bookmark: Bewerk bladwijzer: Title: Titel: Url: Url: Edit Bookmark Bewerk bladwijzer Most visited Meest bezocht Sites you visited the most Websites die u het meest bezocht heeft Empty Leeg BookmarksTree Bookmarks Bladwijzers New Folder... Nieuwe Map... BookmarksWidget Add to Speed Dial Voeg toe aan Snelkiezer Save Sla op Name: Naam: Folder: Map: Remove from Speed Dial Verwijder uit Snelkiezer Remove Verwijder BrowsingLibrary Library Bibliotheek Search... Zoeken... History Geschiedenis Bookmarks Bladwijzers RSS RSS Database Optimized Database geoptimaliseerd Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 Database succesvol geoptimaliseerd.<br/><br/><b>Database-grootte vooraf: </b>%1<br/><b>Database-grootte nadien: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Uitgegeven aan</b> Common Name (CN): Algemene naam (CN): Organization (O): Organisatie (O): Organizational Unit (OU): Organisatie-eenheid (OU): Serial Number: Licentienummer: <b>Issued By</b> <b>Uitgegeven door</b> <b>Validity</b> <b>Deugdelijkheid</b> Issued On: Uitgegeven op: Expires On: Vervalt op: ClearPrivateData Clear Recent History Verwijder recente geschiedenis Choose what you want to delete: Kies wat u wilt verwijderen: Clear history Verwijder geschiedenis Clear cache Verwijder cache Clear icons Verwijder pictogrammen <b>Clear Recent History</b> <b>Verwijder recente geschiedenis</b> Earlier Today Eerder vandaag Week Week Month Maand All Alles Clear web databases Verwijder web-databases Clear local storage Verwijder lokale opslag Clear cookies Verwijder cookies ClickToFlash Object blocked by ClickToFlash Object geblokkeerd door KlikVoorFlash Show more information about object Toon meer informatie over object Delete object Verwijder object Add %1 to whitelist Voeg %1 toe aan witte lijst Flash Object Flash-object <b>Attribute Name</b> <b>Naam van attribuut</b> <b>Value</b> <b>Waarde</b> No more information available. Geen verdere informatie beschikbaar. CookieManager Cookies Cookies Stored Cookies Opgeslagen cookies Find: Zoeken: These cookies are stored on your computer: Deze cookies zijn opgeslagen op uw computer: Server Server Cookie name Cookie-naam Name: Naam: Value: Waarde: Server: Server: Path: Pad: Secure: Beveiligd: Expiration: Vervaltijd: <cookie not selected> <cookie niet geselecteerd> Remove all cookies Verwijder allen Remove cookies Verwijder cookies Cookie Filtering Cookie-filtering <b>Cookie whitelist</b> <b>Cookies: witte lijst</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Cookies van deze servers zullen ALTIJD worden geaccepteerd (ook als u cookies opslaan uitgeschakeld heeft) Add Voeg toe Remove Verwijder <b>Cookie blacklist</b> <b>Cookies: zwarte lijst</b> Cookies from these servers will NEVER be accepted Cookies van deze servers zullen NOOIT worden geaccepteerd Settings Instellingen <b>Cookie Settings</b> <b>Cookie Instellingen</b> Allow storing of cookies Opslaan van cookies toestaan Delete cookies on close Verwijder cookies bij afsluiten Match domain exactly Domeinnaam moet precies overeenkomen Filter tracking cookies Filter traceer cookies <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! <b>Waarschuwing:</b> Kom exact overeen met domeinnaam en filter traceercookies-instellingen kunnen leiden tot het weigeren van cookies van sommige sites. Als u problemen heeft met cookies, probeer dan eerst om deze instellingen uit te schakelen! Search Zoeken Confirmation Bevestiging Are you sure to delete all cookies on your computer? Weet u zeker dat alle cookies op uw computer wilt verwijderen? Secure only Alleen beveiligde All connections Alle verbindingen Session cookie Sessie-cookie Remove cookie Verwijder cookie Add to whitelist Voeg toe aan witte lijst Add to blacklist Voeg toe aan zwarte lijst DownloadFileHelper Save file as... Bestand opslaan als... NoNameDownload GeenNaamVoorDownload DownloadItem Remaining time unavailable Resterende tijd niet beschikbaar Error: Cannot write to file! Fout: Kan niet schrijven naar bestand! Done - %1 Voltooid - %1 Cancelled Geannuleerd few seconds enkele seconden %n seconds %n minutes %n hours Unknown speed Onbekende snelheid kB/s kB/s MB/s MB/s GB/s GB/s Unknown size Onbekende grootte %2 - unknown size (%3) %2 - onbekende grootte (%3) Remaining %1 - %2 of %3 (%4) Resterend: %1 - %2 van %3 (%4) Cancelled - %1 Geannuleerd - %1 Delete file Verwijder bestand Do you want to also delete dowloaded file? Wilt u tevens het gedownloade bestand verwijderen? Open File Open bestand Open Folder Open map Go to Download Page Ga naar Download-pagina Copy Download Link Kopieer downloadlink Cancel downloading Zrušit stahování Remove Verwijder Error Fout Not found Niet gevonden Sorry, the file %1 was not found! Sorry, het bestand %1 werd niet gevonden! Error: Fout: DownloadManager Download Manager Download-manager Clear Wis %1% of %2 files (%3) %4 remaining %1% van %2 bestanden (%3) %4 resterend %1% - Download Manager %1% - Downloadbeheerder Download Finished Download voltooid All files have been successfully downloaded. Alle bestanden zijn met succes gedownload. Warning Waarschuwing Are you sure to quit? All uncompleted downloads will be cancelled! Weet u zeker dat u wilt afsluiten? Alle onvoltooide downloads zullen geannuleerd worden! DownloadOptionsDialog Opening Openen Copy download link Kopieer downloadlink You have chosen to open U heeft gekozen voor openen which is a: dit is een: What should QupZilla do with this file? Wat zal QupZilla doen met dit bestand? Open... Openen... Save File Bestand opslaan Download with External Manager Download met externe downloadmanager from: van: Opening %1 Openen van %1 Download link copied. Downloadlink gekopieerd. EditSearchEngine Name: Naam: Url: URL: Shortcut: Snelkoppeling: Icon: Pictogram: <b>Note: </b>%s in url or post data represent searched string <b>Noot: </b>%s in de URL- of post-date reflecteert de gezochte string Post Data: Post-data: Change... Verander... FileSchemeReply No Error Geen fout Up to higher level directory Tot een hoger niveau map Show hidden files Toon verborgen bestand Name Naam Size Grootte Last modified Laatst veranderd Index for %1 Index voor %1 Folder is empty. Map is leeg. FtpDownloader Cancelled! Geannuleerd! FtpSchemeReply Up to higher level directory Tot een hoger niveau map Show hidden files Toon verborgen bestanden Name Naam Size Grootte Last modified Laatst veranderd Index for %1 Index voor %1 Folder is empty. Map is leeg. Unknown command Onbekende opdracht HTML5PermissionsDialog HTML5 Permissions HTML5-toestemmingen Notifications Meldingen Site Site Behaviour Gedrag Remove Verwijder Geolocation Geolocatie Allow Toestaan Deny Weigeren HTML5PermissionsNotification Remember Onthouden Allow Toestaan Deny Weigeren this site deze site Allow %1 to show desktop notifications? Toestaan %1 om desktop meldingen te tonen? Allow %1 to locate your position? Toestaan %1 om uw positie te bepalen? History No Named Page Niet-benoemde pagina January January February Februari March Maart April April May Mei June Juni July Juli August Augustus September September October Oktober November November December December HistoryManager History Geschiedenis Delete Verwijder Clear All History Verwijder alles Optimize Database Optimaliseer database Confirmation Bevestiging Are you sure to delete all history? Weet u zeker dat u alle geschiedenis wilt verwijderen? HistoryModel Title Titel Address Adres Visit Date Datum van Bezoek Visit Count Aantal Bezoeken Today Vandaag This Week Deze Week This Month Deze Maand HistorySideBar Search... Zoeken... HistoryView Open link in current tab Open link in huidig tabblad Open link in new tab Open link in nieuw tabblad Copy title Kopieer Titel Copy address Kopieer adres Remove Verwijder IconChooser Choose icon... Kies icon... From file Uit bestand Image (.png, .jpg, .jpeg, .gif) Afbeelding (.png, .jpg, .jpeg, .gif) Choose file... Kies bestand... From database Uit Database Site Url: Site Url: Image files Afbeeldingsbestanden JsOptions JavaScript Options JavaScript-instellingen Allow JavaScript to: Sta JavaScript toe om: Close windows Sluit venster Open popup windows Popup-vensters te openen Change window size Venstergrootte te veranderen Hide menu bar Verberg menubalk Hide status bar Verberg statusbalk Hide tool bar Verberg werkbalk Access clipboard Toegang klembord LicenseViewer License Viewer Licentie-toner LocationBar Enter URL address or search on %1 Voer URL-adres in of zoek op %1 Paste And &Go Plak en &ga Clear All Wis alles .co.uk Append domain name on ALT + Enter = Should be different for every country .nl Show information about this page Toon informatie over deze pagina LocationCompleterView Switch to tab Schakel na tabblad MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? Qupzilla is niet de standaard browser. Wil je graag dat Qupzilla dat wordt? Always perform this check when starting QupZilla. Altijd deze check uitvoeren wanneer Qupzilla opstart. Default Browser Standaard Browser QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. QupZilla is een nieuwe, snelle en veilige open-source webbrowser. QupZilla is gelicenseerd onder GPL-versie 3 of (naar uw keuze) een latere versie. Het is gebaseerd op de WebKit-kern en het Qt Framework. MasterPasswordDialog Encrypted DataBase Settings Versleutelde DataBase-instellingen Set/Change Master Password... Stel in/Verander hoofdwachtwoord... Clear Master Password... Verwijder hoofdwachtwoord... This backend does not work without a master password. Dit backend werkt niet zonder een hoofdwachtwoord. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. Deze optie verwijdert het hoofdwachtwoord en verplaatst alle ontsleutelde data naar het "DataBase (Platte tekst)"-backend en schakelt ernaar om. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Het hoofdwachtwoord wordt gebruikt om website-wachtwoorden en formulierdata te beschermen. Als u een hoofdwachtwoord instelt zal u ernaar eenmaal per sessie naar worden gevraagd. Current Password: Huidige wachtwoord: New Password: Nieuwe wachtwoord: Confirm Password: Bevestig wachtwoord: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. <b>Noot:</b> Het hoofdwachtwoord is niet her-instelbaar. Vergeet het alstublieft niet. Warning! Waarschuwing! You entered a wrong password! U heeft een verkeerd wachtwoord ingevuld! New/Confirm password fields do not match! Nieuwe/Bevestig wachtwoord-velden komen niet overeen! Some data has not been decrypted. The master password was not cleared! Sommige data is niet ontsleuteld. Het hoofdwachtwoord was niet verwijderd! Are you sure to clear master password and decrypt data? Weet u zeker dat u het hoofdwachtwoord wilt verwijderen en de data wilt ontgrendelen? NavigationBar No Named Page Niet-benoemde pagina Back Terug Forward Vooruit Home Startpagina New Tab Nieuw tabblad Main Menu Hoofdmenu Exit Fullscreen Verlaat volledig scherm Clear history Verwijder geschiedenis NetworkManager SSL Certificate Error! SSL-certificaatfout! The page you are trying to access has the following errors in the SSL certificate: De pagina die u probeert te bereiken heeft de volgende fouten in het SSL-certificaat: <b>Organization: </b> <b>Organisatie: </b> <b>Domain Name: </b> <b>Domeinnaam: </b> <b>Expiration Date: </b> <b>Vervaldatum: </b> <b>Error: </b> <b>Fout: </b> Would you like to make an exception for this certificate? Wilt u een uitzondering maken voor dit certificaat? Authorisation required Toestemming nodig Username: Gebruikersnaam: Password: Wachtwoord: Save username and password on this site Sla gebruikersnaam en wachtwoord van deze site op A username and password are being requested by %1. The site says: "%2" Er wordt om een gebruikersnaam en wachtwoord gevraagd door %1. De site zegt: "%2" FTP authorisation required Ftp toestemming nodig Login anonymously Login anoniem A username and password are being requested by %1:%2. Er wordt om een gebruikersnaam en wachtwoord gevraagd door %1:%2. Proxy authorisation required Proxy toestemming nodig Remember username and password for this proxy. Gebruikersnaam en wachtwoord onthouden voor deze proxy. A username and password are being requested by proxy %1. Er wordt om een gebruikersnaam en wachtwoord gevraagd door proxy %1. PageScreen Page Screen Schermafbeelding Format: Opmaak: Location: Locatie: Browse... Blader... Save as %1 Sla op als %1 Choose location... Kies locatie... File '%1' already exists. Do you want to overwrite it? Bestand '%1' bestaat al. Wilt u het overschrijven? File already exists Bestand bestaat al PluginsList Application Extensions Programma-Plugins Allow Application Extensions to be loaded Sta toe om programma-plugins te laden Settings Instellingen WebKit Plugins WebKit-Plugins <b>Click To Flash Plugin</b> <b>Flash laden na aanklikken-plugin</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Klik Voor Flash is een plugin welke het automatisch laden blokkeert van Flash-inhoud op een pagina. U kunt deze altijd handmatig laden door te klikken op het Flash-afspeelpictogram. Whitelist Witte lijst Add Voeg toe Remove Verwijder Allow Click To Flash Sta Klik Voor Flash toe PluginsManager Add site to whitelist Voeg site toe aan witte lijst Server without http:// (ex. youtube.com) Server zonder http:// (ex. youtube.com) Error! Fout! Cannot load extension! Kan plugin niet laden! PopupWebView Inspect Element Inspecteer element PopupWindow File Bestand &Save Page As... &Sla pagina op als... Save Page Screen Sla schermafbeelding op Send Link... Verstuur link... &Print... &Print... Close Sluit Edit Bewerk &Undo &Maak ongedaan &Redo &Herhaal &Cut &Knip C&opy K&opieer &Paste &Plak Select All Selecteer alles Find Vind View Toon &Stop &Stop &Reload &Herlaad Zoom &In Zoom &in Zoom &Out Zoom &uit Reset Herstart &Page Source &Pagina-broncode %1 - QupZilla %1 - QupZilla Preferences Preferences Instellingen QupZilla QupZilla General Algemeen Appearance Uiterlijk Tabs Tabbladen Browsing Navigeren Fonts Lettertypen Keyboard Shortcuts Sneltoetsen Downloads Downloads Password Manager Wachtwoordbeheerder Privacy Privacy Notifications Meldingen Extensions Extensies Other Overig Use current Gebruik huidig Note: You cannot delete active profile. Noot: U kunt het actieve profiel niet verwijderen. Create New Maak nieuw profiel aan Delete Verwijder <b>Launching</b> <b>Opstarten</b> After launch: Na opstarten: Open blank page Open lege pagina Open homepage Open startpagina Open speed dial Open snelkiezer Restore session Herstel sessie Homepage: Startpagina: On new tab: Op nieuw tabblad: Open blank tab Open leeg tabblad Open other page... Open andere pagina... <b>Profiles</b> <b>Profielen</b> Startup profile: Opstartprofiel: Check for updates on start Controleer op updates bij opstarten Active profile: Actief profiel: In order to change language, you must restart browser. Om de gekozen taal toe te passen, moet u de browser herstarten. <b>Language</b> <b>Taal</b> Available translations: Beschikbare vertalingen: Don't load tabs until selected Laad tabbladen niet totdat ze zijn aangeklikt Check to see if QupZilla is the default browser on startup Controleer bij startup als Qupzilla de standaard Browser is Check Now Controleer Nu Themes Thema's Advanced options Geavanceerde instellingen <b>Browser Window</b> <b>Browser-venster</b> Show StatusBar on start Toon Statusbalk bij opstarten Show Bookmarks ToolBar on start Toon Bladwijzerwerkbalk bij opstarten Show Navigation ToolBar on start Toon Navigatiewerkbalk bij opstarten <b>Navigation ToolBar</b> <b>Navigatiewerkbalk</b> Show Home button Toon startpagina-knop Show Back / Forward buttons Toon Terug/Vooruit-knoppen <b>Background<b/> <b>Achtergrond</b> Use transparent background Gebruik transparante achtergrond Show web search bar Toon web-zoekbalk Show Add Tab button Toon Voeg tabblad toe-knop Show Reload / Stop buttons Toon Herlaad/Stop-knop Tabs behaviour Tabbladen-gedrag Show tab previews Toon tabblad voorbeeld Make tab previews animated Voorzie tabblad-voorbeelden van effect Hide tabs when there is only one tab Verberg tabbladen wanneer er maar 1 tabblad is Activate last tab when closing active tab Activeer laatste tabblad na sluiten van actieve tab Open new tabs after active tab Open nieuwe tabbladen achter actief tabblad Open new empty tabs after active tab Open nieuw leeg tabblad achter actief tabblad Automatically switch to newly opened tab Schakel automatisch over naar nieuw geopend tabblad Don't quit upon closing last tab Sluit niet af na sluiten van laatste tabblad Ask when closing multiple tabs Vraag bij sluiten van meerdere tabbladen Closed tabs list instead of opened in tab bar Gesloten tabbladenlijst i.p.v. openen in tabbladbalk Address Bar behaviour Adresbalk-gedrag Suggest when typing into address bar: Voorstellen wanneer u typt in de adresbalk: History and Bookmarks Geschiedenis en Bladwijzers History Geschiedenis Bookmarks Bladwijzers Nothing Niets Press "Shift" to not switch the tab but load the url in the current tab. Druk "Shift" om niet van tabblad te veranderen.maar laad url in huidige tabblad. Propose to switch tab if completed url is already loaded. Voorstel om naar tabblad te schakelen als url al is geladen Always show go icon Toon altijd 'Ga'-pictogram Select all text by double clicking in address bar Selecteer alle tekst door te dubbelklikken in de adresbalk Select all text by clicking in address bar Selecteer alle tekst door te klikken in de adresbalk Search with Default Engine Zoek met standaard zoekmachine Show loading progress in address bar Toon voortgang van laden in de adresbalk Fill Vul Bottom Onder Top Boven Custom color: Aangepaste kleur: Select color Selecteer kleur ... ... Reset Herstart Web Configuration Web-instellingen Allow Netscape Plugins (Flash plugin) Sta Netscape-plugins toe (Flash-plugin) Allow JavaScript Sta JavaScript toe Allow JAVA Sta JAVA toe Allow DNS Prefetch Sta DNS-prefetch toe Enable XSS Auditing try to detect possible XSS attacks when executing javascript Schakel XSS-auditing in Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Print element-achtergrond Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Sluit links in in focus-ketting Animated scrolling Scrollen met effect Enable caret browsing Navigeren met navigatietoetsen Enable spatial navigation Schakel navigeren met navigatietoetsen in Zoom text only Zoom alleen tekst Mouse wheel scrolls Muiswiel scrollt lines on page regels op pagina Default zoom on pages: Standaardzoom op pagina's: Local Storage Lokale opslag Maximum Maximum 50 MB 50 MB 1 1 Maximum pages in cache: Maximum pagina's in cache: Allow storing network cache on disk Sta toe dat netwerkcache op schijf wordt opgeslagen Store cache in: Sla cache op in: Allow saving history Sta opslag van geschiedenis toe Delete history on close Verwijder geschiedenis bij afsluiten Allow local storage of HTML5 web content Sta lokale opslag van HTML5-webinhoud toe Delete locally stored HTML5 web content on close Verwijder lokaal opgeslagen HTML5-webinhoud na afsluiten Delete now Verwijder nu Proxy Configuration Proxy-instellingen Proxy Auto-Config (.pac) file Proxy automatische configuratie-bestand (.pac) Reload Herladen HTTP HTTP SOCKS5 SOCKS5 Port: Poort: Username: Gebruikersnaam: Password: Wachtwoord: Don't use on: Gebruik niet op: Manual configuration Handmatige instellingen System proxy configuration Systeemproxy-instellingen Do not use proxy Gebruik geen proxy <b>Exceptions</b> <b>Uitzonderingen</b> Server: Server: Use different proxy for https connection Gebruik andere proxy voor https-verbinding Use script for automatic configuration: Gebruik script voor automatische configuratie: <b>Font Families</b> <b>Lettertype-families</b> Standard Standaard Fixed Vast Serif Met schreef Sans Serif Schreefloos Cursive Cursief Fantasy Fantasie <b>Font Sizes</b> <b>Lettertype-groottes</b> Fixed Font Size Vastgezette lettergrootte Default Font Size Standaard lettergrootte Minimum Font Size Minimale lettergrootte Minimum Logical Font Size Minimale logische lettergrootte <b>Shortcuts</b> <b>Sneltoetsen</b> Switch to tabs with Alt + number of tab Schakel naar tabblad met Alt + nummer van tabblad Load speed dials with Ctrl + number of speed dial Laad snelkiezer met Ctrl + nummer of snelkies Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>Downloadlocatie</b> Ask everytime for download location Vraag elke keer om downloadlocatie Use defined location: Gebruik de volgende locatie: <b>Download Options</b> <b>Download-instellingen</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Gebruik systeem bestands-dialoogvenster (kan wellicht problemen veroorzaken met het downloaden van SSL-beveiligde inhoud) Close download manager when downloading finishes Sluit downloadbeheerder wanneer downloaden voltooid is <b>External download manager</b> <b>Externe downloadmanager</b> Use external download manager Gebruik externe downloadmanager Executable: Uitvoerbaar: Arguments: Argumenten: Leave blank if unsure Laat leeg als je niet zeker weet <b>%d</b> will be replaced with URL to be downloaded <b>%d</b> zal worden vervangen door url om te downloaden <b>AutoFill options</b> <b>AutoAanvullen-instellingen</b> Allow saving passwords from sites Sta opslaan van wachtwoorden van sites toe Send Referer header to servers Verstuur refereerkop naar servers <b>Cookies</b> <b>Cookies</b> Send Do Not Track header to servers Stuur Track Me Niet-header naar servers <b>Other</b> <b>Overig</b> Manage CA certificates Beheerder CA Certificaten Certificate Manager Certificaat Beheerder <b>SSL Certificates</b> <b>SSL-certificaten</b> <b>JavaScript</b> <b>JavaScript</b> Manage JavaScript privacy options Beheer JavaScript privacy-instellingen JavaScript options JavaScript-instellingen Cookies Manager Cookies-beheerder Manage Cookies Cookies-beheerder <b>HTML5 Permissions</b> <b>HTML5-oestemmingen</b> Manage HTML5 permissions Beheer HTML5-toestemmingen HTML5 Permissions HTML5-toestemmingen <b>Notifications</b> <b>Meldingen</b> Use OSD Notifications Gebruik OSD-meldingen Use Native System Notifications (Linux only) Gebruik systeemmeldingen (geldt alleen voor Linux) Do not use Notifications Gebruik geen meldingen Expiration timeout: Vervaltijd-timeout: seconds seconden <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Noot: </b> U kunt de positie van OSD-meldingen veranderen door deze te verslepen op het scherm. StyleSheet automatically loaded with all websites: Stijlblad welke automatisch geladen wordt met alle websites: Languages Talen <b>Preferred language for web sites</b> <b>Voorkeurstalen voor websites</b> <b>Change browser identification</b> <b> Verander browser-identificatie</b> User Agent Manager Browseridentificatie-beheerder Default Standaard Set as default Stel in als standaard OSD Notification OSD-melding Drag it on the screen to place it where you want. Versleep het op het scherm en plaats het waar U wilt. Choose download location... Kies downloadlocatie... Choose stylesheet location... Kies locatie van stijlblad... Deleted Verwijderd Choose executable location... Kies locatie van uitvoerbaar bestand... Choose cache path... Kies cache pad... New Profile Nieuw profiel Enter the new profile's name: Voer de nieuw profielnaam in: Error! Fout! This profile already exists! Dit profiel bestaat reeds! Cannot create profile directory! Kan profielmap niet aanmaken! Confirmation Bevestiging Are you sure to permanently delete "%1" profile? This action cannot be undone! Weet u zeker dat u profiel "%1"wilt verwijderen? Deze actie kan niet ongedaan worden gemaakt! Select Color Selecteer kleur QObject Native System Notification Natieve systeemmelding Save file as... Bestand opslaan als... The file is not an OpenSearch 1.1 file. Dit bestand is geen OpenSearch 1.1-bestand. <not set in certificate> <niet aangegeven in certificaat> Unknown size Onbekende grootte KB KB MB MB GB GB Executable: Uitvoerbaar: Arguments: Argumenten: Cannot start external program Kan externe programma niet starten Cannot start external program! %1 Kan externe programma niet starten! %1 QtWin Open new tab Open nieuw tabblad Opens a new tab if browser is running Opent een nieuw tabblad wanneer browser draait Open new window Open nieuw venster Opens a new window if browser is running Opent een nieuw venster wanneer browser draait Open download manager Open downloadbeheerder Opens a download manager if browser is running Opent een downloadbeheerder wanneer browser draait QupZilla QupZilla QupZilla Private Browsing Enabled Incognito browsen ingeschakeld IP Address of current page IP-adres van huidige pagina &About QupZilla &Over QupZilla Pr&eferences &Instellingen Quit Sluit af &File &Bestand &New Window &Nieuw venster New Tab Nieuw tabblad Open Location Open locatie Open &File... &Open bestand... Close Tab Sluit tabblad Close Window Sluit venster &Save Page As... &Sla pagina op als... Save Page Screen Sla pagina-schermafbeelding op Send Link... Verstuur link... &Print... &Afdrukken... Import bookmarks... Importeer bladwijzers... &Edit Be&werken &Undo &Maak ongedaan &Redo &Herhaal &Cut &Knip C&opy K&opieer &Paste &Plak Select &All Selecteer &alles &Find &Zoek &View &Beeld &Navigation Toolbar &Navigatiewerkbalk &Bookmarks Toolbar &Bladwijzerwerkbalk Sta&tus Bar Sta&tusbalk &Menu Bar &Menubalk &Tabs on Top &Tabbladen bovenaan &Fullscreen &Volledig scherm &Stop &Stop &Reload &Herlaad Character &Encoding &Karakter-tekenset Enable &Caret Browsing Navigeren met &navigatietoetsen Toolbars Werkbalken Sidebars Zijpanelen Zoom &In Zoo&m in Zoom &Out Z&oom uit Reset Zet terug &Page Source &Pagina-broncode Hi&story &Geschiedenis &Back &Terug &Forward &Vooruit &Home &Startpagina Show &All History Toon &alle geschiedenis Closed Tabs Gesloten tabbladen Recently Visited Onlangs bezocht Most Visited Meest bezocht &Bookmarks &Bladwijzers Bookmark &This Page Voeg &deze pagina toe Bookmark &All Tabs Voeg &alle tabbladen toe Organize &Bookmarks Beheer &bladwijzers &Tools &Hulpmiddelen &Web Search &Webzoeken Page &Info Pagina-&info &Download Manager &Downloadbeheerder &Cookies Manager &Cookies-beheerder &AdBlock &Advertentieblokkeerder RSS &Reader &RSS-lezer Web In&spector Web-in&specteur Clear Recent &History Wis recente &geschiedenis New &Private Window Nieuw &incognito-venster &Help &Help About &Qt Over &Qt Information about application Informatie over programma Configuration Information Informatie over configuratie Report &Issue Rapporteer &probleem Restore &Closed Tab Herstel &gesloten tabblad (Private Browsing) (Incognito browsen) Empty Leeg Restore All Closed Tabs Herstel alle gesloten tabbladen Clear list Wis lijst Other Overig %1 - QupZilla %1 - QupZilla HTML files HTML-bestanden Image files Afbeeldingsbestanden Text files Tekstbestanden All files Alle bestanden Open file... Open bestand... QupZilla %1 (%2) QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Er zijn nog steeds %1 openstaande tabbladen en uw sessie wordt niet opgeslagen. Weet u zeker dat u QupZilla wilt afsluiten? Don't ask again Vraag nooit meer There are still open tabs Er zijn nog openstaande tabbladen QupZillaSchemeReply No Error Geen fout Not Found Niet gevonden Report Issue Rapporteer probleem If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Indien u problemen ondervindt met QupZilla, probeer dan alstublieft eerst alle extensies uit te schakelen. <br/>Indien dit het niet oplost, vul dan dit formulier in: Your E-mail Uw e-mailadres Issue type Probleemtype Issue description Probleembeschrijving Send Verzenden E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. E-mail is optioneel<br/><b>Noot: </b>Lees alstublieft eerst hoe een bug-rapportage aan te maken<a href=%1>here</a>. Please fill out all required fields! Vul alstublieft alle verplichte velden in! Start Page Startpagina Search on Web Zoek op het internet Search results provided by DuckDuckGo Zoekresultaten worden gegeven door DuckDuckGo About QupZilla Over QupZilla <h1>Private Browsing</h1> <h1>Incognito browsen</h1> Information about version Informatie over versie Copyright Copyright Version Versie WebKit version WebKit-versie Main developer Hoofdontwikkelaar Contributors Bijdragers Translators Vertalers Speed Dial Snelkiezer Add New Page Voeg nieuwe pagina toe Edit Bewerk Remove Verwijder Reload Herlaad Are you sure to remove this speed dial? Weet u zeker dat u deze snelkiezer wilt verwijderen? Load title from page Laad titel van pagina Url URL Title Titel Apply Toepassen Close Sluiten New Page Nieuwe pagina Speed Dial settings Snelkiezer-instellingen Placement: Plaatsing: Auto Auto Cover Overlappend Fit Passend Fit Width Passend in breedte Fit Height Passend in hoogte Use background image Gebruik achtergrondafbeelding Select image Selecteer afbeelding Maximum pages in a row: Maximaal aantal pagina's in een rij: Change size of pages: Verander grootte van pagina's: Center speed dials Centreer snelkiezers Restore Session Herstel sessie Oops, QupZilla crashed. Oeps, QupZilla crashte. We apologize for this. Would you like to restore the last saved state? Onze excuses hiervoor. Wilt u de laatst opgeslagen sessie herstellen? Try removing one or more tabs that you think cause troubles Probeer één of meerdere tabbladen te sluiten die u verdenkt van het veroorzaken van problemen Or you can start completely new session Of u kunt een compleet nieuwe sessie starten Configuration Information Informatie over configuratie This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Deze pagina bevat informatie over QupZilla's huidige configuratie - nuttig voor probleemoplossing. Verstuur deze informatie mee bij het verzenden van bug-rapporten. Browser Identification Browser-identificatie Paths Paden Build Configuration Bouwconfiguratie Preferences Instellingen Option Optie Value Waarde Extensions Extensies Name Naam Author Auteur Description Beschrijving Application version Programma-versie Qt version Qt-versie Build time Bouwtijd Platform Platform Profile Profiel Settings Instellingen Saved session Opgeslagen sessie Pinned tabs Vastgezette tabbladen Data Data Themes Thema's Translations Vertalingen Disabled Uitgeschakeld <b>Enabled</b> <b>Ingeschakeld</b> Debug build Debugbare bouw WebGL support WebGL-ondersteuning Windows 7 API Windows 7-API KDE integration KDE-integratie Portable build Meeneembare bouw No available extensions. Geen beschikbare extensies. RSSManager RSS Reader RSS-lezer Empty Leeg Add feed Voeg feed toe Edit feed Bewerk feed Delete feed Verwijder feed Optimize Database Optimaliseer database Reload Herlaad News Nieuws Loading... Bezig met laden... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. U heeft geen RSS-feeds.<br/> Voeg enkele toe via het RSS-icoon op de navigatiewerkbalk op een site die feeds levert. Add new feed Voeg nieuwe feed toe Please enter URL of new feed: Voer de URL van de nieuwe feed in: New feed Nieuwe feed Fill title and URL of a feed: Voer titel en URL in van een feed: Feed title: Feed-titel: Feed URL: Feed-URL: Edit RSS Feed Bewerk RSS-feed Open link in current tab Open link in huidig tabblad Open link in new tab Open link in nieuw tabblad Error in fetching feed Fout bij ophalen van feed RSS feed duplicated Duplicaat van RSS-feed You already have this feed. U heeft deze feed al. RSSNotification Add this feed into Voeg deze feed toe aan Add Voeg toe RSS feed <b>"%1"</b> RSS-feed <b>"%1"</b> Internal Reader Interne lezer Other... Overig... Liferea not running Liferea is niet actief Liferea must be running in order to add new feed. Liferea moet worden uitgevoerd om een nieuwe feed toe te voegen. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Om deze RSS-feed toe te voegen in een andere applicatie, kunt u deze informatie gebruiken:<br/><br/><b>Naam: </b>%1<br/><b>Url: <b>%2<br/><br/>URL-adres van deze feed is gekopieerd naar uw klembord. Add feed into other application Voeg feed toe in andere applicatie RSSWidget Add RSS Feeds from this site Voeg RSS-feeds toe van deze site Untitled feed Feed zonder titel Add Voeg toe RecoveryWidget Start New Session Start nieuwe sessie Restore Herstel laatste sessie Window %1 Venster %1 RegisterQAppAssociation Warning! Waarschuwing! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) Er zijn enkele problemen. Herinstalleer Qupzilla a.u.b. Misschien dat herstarten met beheerdersrechten wonderen verricht! ;) RssIcon Add RSS from this page... Voeg RSS toe van deze pagina... SSLManager Certificate Manager Certificaat-beheerder CA Authorities Certificates CA-overheidscertificaten Show info Toon info This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Dit is een lijst van CA-overheidscertificaten die opgeslagen zijn in systeempaden en gebruikers-gespecificeerde paden. Local Certificates Lokale certificaten Import Importeer Remove Verwijder This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Dit is een lijst van lokale certificaten opgeslagen in het gebruikersprofiel. Deze lijst bevat tevens alle certificaten die een uitzondering hebben ontvangen. Settings Instellingen Add Voeg toe If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Wanneer CA-instellingen-certificaten niet automatisch geladen werden van uw systeem, kunt u bij deze handmatig paden opgeven die certificaten bevatten. <b>NOTE:</b> Setting this option is a high security risk! <b>NOOT:</b> deze instelling instellen is een groot veiligheidsrisico! Ignore all SSL Warnings Negeer alle SSL-waarschuwingen All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Alle certificaten moeten een .crt-extensie hebben. Na het toevoegen of verwijderen van paden, is het noodzakelijk om de browser te herstarten zodat de wijzigingen worden toegepast. Choose path... Kies pad... Import certificate... Importeer certificaat... Certificate Informations Certificaat-informatie SearchEnginesDialog Manage Search Engines Beheer zoekmachines Add... Voeg toe... Remove Verwijder Edit Bewerk Set as default Stel in als standaard Up Omhoog Down Omlaag Search Engine Zoekmachine Shortcut Sleutel Defaults Standaardwaarden Add Search Engine Voeg zoekmachine toe Remove Engine Verwijder zoekmachine You can't remove the default search engine.<br>Set a different engine as default before removing %1. U kunt de standaard zoekmachine niet verwijderen.<br> Stel een andere machine als standaard in voordat u de oude, %1, verwijdert. Edit Search Engine Bewerk zoekmachine SearchEnginesManager Search Engine Added Zoekmachine toegevoegd Search Engine "%1" has been successfully added. Zoekmachine "%1" is succesvol toegevoegd. Search Engine is not valid! Zoekmachine is ongeldig! Error Fout Error while adding Search Engine <br><b>Error Message: </b> %1 Fout tijdens het toevoegen van de zoekmachine. <br><b>Foutmelding:</b> %1 SearchToolBar No results found. Geen resultaten gevonden. SearchToolbar Search: Zoeken: Search... Zoeken... Highlight Markeer Case sensitive Hoofdlettergevoelig SideBar Bookmarks Bladwijzers History Geschiedenis SiteInfo Site Info Website-informatie General Algemeen Media Media Databases Databases Security Beveiliging Size: Grootte: Site address: Website-adres: Encoding: Tekenset: Meta tags of site: Metatags van website: Tag Tag Value Waarde <b>Security information</b> <b>Beveiligingsinformatie</b> Details Details Image Afbeelding Image address Afbeeldingsadres <b>Preview</b> <b>Voorbeeld</b> <b>Database details</b> <b>Database-details</b> Name: Naam: Path: Pad: <database not selected> <database niet geselecteerd> <not set in certificate> <niet ingesteld in certificaat> No databases are used by this page. Er zijn geen databases in gebruik door deze pagina. <b>Connection is Encrypted.</b> <b>Verbinding is beveiligd.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Uw verbinding met deze pagina is beveiligd met dit certifitcaat: </b> <b>Connection Not Encrypted.</b> <b>Verbinding niet beveiligd.</b> <b>Your connection to this page is not secured!</b> <b>Uw verbinding met deze pagina is niet beveiligd!</b> Copy Image Location Kopieer afbeeldingslocatie Copy Image Name Kopieer afbeeldingsnaam Save Image to Disk Sla afbeelding op op schijf Error! Fout! This preview is not available! Dit voorbeeld is niet beschikbaar! Save image... Sla afbeelding op... Cannot write to file! Kan niet schrijven naar bestand! Preview not available Voorbeeld niet beschikbaar SiteInfoWidget More... Meer... Your connection to this site is <b>secured</b>. Uw verbinding met deze site is <b>beveiligd</b>. Your connection to this site is <b>unsecured</b>. Uw verbinding met deze site is <b>onbeveiligd</b>. This is your <b>%1</b> visit of this site. Dit is uw <b>%1</b> bezoek aan deze site. You have <b>never</b> visited this site before. U heeft deze site nog <b>nooit</b> eerder bezocht. first eerste second tweede third derde SourceViewer Source of Bron van File Bestand Load in page Laad in pagina Save as... Sla op als... Close Sluit Edit Bewerk Undo Ongedaan maken Redo Herhalen Cut Knip Copy Kopieren Paste Plakken Select All Selecteer alles Find Vind Go to Line... Ga naar regel... View Toon Reload Herlaad Editable Bewerkbaar Word Wrap Woordwikkel Source loaded in page Bron geladen in pagina Cannot load in page. Page has been closed. Kan pagina niet laden. Pagina is gesloten. Save file... Sla bestand op... Error! Fout! Cannot write to file! Kan niet naar bestand schrijven! Error writing to file Fout bij schrijven naar bestand Source successfully saved Bron succesvol opgeslagen Source reloaded Bron herladen Cannot reload source. Page has been closed. Kan bron niet herladen; pagina is gesloten. Editable changed Bewerkbaar veranderd Word Wrap changed Woordwikkel veranderd Enter line number Vul regelnummer in SourceViewerSearch Search: Zoeken: Search... Zoeken... Whole words Volledige Woorden SpeedDial Image files Afbeeldingsbestanden Select image... Selecteer afbeelding... Unable to load Niet in staat om te laden SpellCheckDialog SpellCheck SpellingsControle <b>Dictionary path</b> <b>Woordenboek pad</b> Change... Verander... <b>User dictionary</b> <b>Gebruikers woordenboek</b> Add Voeg toe Remove Verwijder Using Hunspell library Gebruik Hunspell bibliotheek Choose dictionary path... Kies woordenboek pad... Add new word... Voeg nieuw woord toe... Add new word: Voeg nieuw woord toe: Speller No suggestions Geen suggesties Add to dictionary Voeg toe aan woordenboek Settings Instellingen SqueezeLabelV2 Copy Kopieer SslErrorDialog SSL Certificate Error! SSL-certificaatfout! Only for this session Alleen voor deze sessie TabBar &New tab &Nieuw tabblad &Stop Tab &Stop tabblad &Reload Tab &Herlaad tabblad &Duplicate Tab &Dupliceer tabblad D&etach Tab Koppel tabblad af Un&pin Tab &Maak tabblad los &Pin Tab &Zet tabblad vast Re&load All Tabs &Herlaad alle tabbladen &Bookmark This Tab &Bladwijzer dit tabblad Bookmark &All Tabs &Bladwijzer alle tabbladen Close Ot&her Tabs Sluit &andere tabbladen Cl&ose &Sluit Reloa&d All Tabs &Herlaad alle tabbladen Restore &Closed Tab Herstel &gesloten tabblad Close Tabs Tabbladen sluiten Do you really want to close other tabs? Weet u zeker dat u andere tabbladen wilt sluiten? TabWidget New Tab Nieuw tabblad List of tabs Lijst van tabbladen Loading... Bezig met laden... No Named Page Niet-benoemde pagina Currently you have %1 opened tabs U heeft momenteel %1 geopende tabbladen New tab Nieuw tabblad Empty Leeg Restore All Closed Tabs Herstel alle gesloten tabbladen Clear list Wis lijst TabbedWebView Loading... Aan het laden... %1 - QupZilla %1 - QupZilla Inspect Element Inspecteer element ThemeManager <b>Name:</b> <b>Naam:</b> <b>Author:</b> <b>Auteur:</b> <b>Description:</b> <b>Beschrijving:</b> License Licentie ToolButton Stop Stop Reload Herlaad Updater Update available Update beschikbaar New version of QupZilla is ready to download. Nieuwe versie van QupZilla staat klaar om te downloaden. Update Bijwerken UserAgentDialog User Agent Manager Browseridentificatie-beheerder Change global User Agent Verander globale browseridentificatie Use different User Agents for specified sites Gebruik andere browseridentificaties voor opgegeven websites Site Site User Agent Browseridentificatie Add Voeg toe Remove Verwijder Edit Bewerk Add new site Voeg nieuwe site toe Edit site Bewerk site Site domain: Site domein: User Agent: Browseridentificatie: WebInspectorDockWidget Web Inspector Web-inspecteur WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? QupZilla kan niet overweg met <b>%1:</b> koppeling. De gevraagde koppeling is <ul><li>%2</li></ul>Wilt u dat QupZilla probeerd deze link te openen in systeemtoepassing? Remember my choice for this protocol Onthoud mijn keuze voor dit protocol External Protocol Request Externe Protocol Verzoek To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Om deze pagina weer te geven, Qupzilla moet verzoek opnieuw verzenden (zoals het zoeken op het maken van een winkel,wat al gedaan is.) Confirm form resubmission Bevestig herindiening forumlier Select files to upload... Selecteer bestanden om te uploaden... Server refused the connection Server weigerde de verbinding Server closed the connection Server sloot de verbinding Server not found Server niet gevonden Connection timed out Verbinding onderbroken Untrusted connection Onbeveiligde verbinding Temporary network failure Tijdelijke netwerkfout Proxy connection refused Proxy-verbinding geweigerd Proxy server not found Proxy-server niet gevonden Proxy connection timed out Proxy-verbinding tijdsonderbreking Proxy authentication required Proxy-authenticatie benodigd Content not found Inhoud niet gevonden Unknown network error Onbekende netwerkfout AdBlocked Content Geblokkeerde inhoud Blocked by <i>%1</i> Geblokkeerd door <i>%1</i> Content Access Denied Inhoudstoegang geweigerd Error code %1 Foutcode %1 Failed loading page Mislukt om pagina te laden QupZilla can't load page. QupZilla kan de pagina niet laden. QupZilla can't load page from %1. QupZilla kan de pagina niet laden van %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Controleer het adres op typfouten zoals <b>ww.</b>voorbeeld.nl in plaats van <b>www.</b>voorbeeld.nl If you are unable to load any pages, check your computer's network connection. Indien u niet in staat bent om eender welke pagina te laden, controleer dan uw netwerkverbinding. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Indien uw computer of netwerk beveiligd is door een firewall of proxy, zorg dan dat QupZilla toestemming heeft om het web te benaderen. Try Again Probeer nogmaals JavaScript alert JavaScript-waarschuwing Prevent this page from creating additional dialogs Voorkom dat deze pagina extra dialoogvensters aanmaakt Choose file... Kies bestand... Cannot read data from <b>%1</b>. Upload was cancelled! Kan geen data lezen van <b>%1</b>. Upload is geannuleerd! Cannot read file! Kan bestand niet lezen! WebSearchBar Manage Search Engines Beheer zoekmachines Add %1 ... Voeg %1 toe... Paste And &Search Plak en &zoek Clear All Wis alles Show suggestions Toon suggesties Search when engine changed Zoek wanneer machine veranderd WebView No Named Page Niet benoemde pagina Create Search Engine Creeër zoekmachine Cut Knip Copy Kopieer Paste Plak Select All Selecteer alles Default Standaard Left to Right Links-naar-rechts Right to Left Rechts-naar-links Bold Vet Italic Cursief Underline Onderstreep &Reload &Herlaad S&top &Stop Delete Verwijder &Back &Terug &Forward &Vooruit This frame Dit frame Show &only this frame Toon &alleen dit frame Show this frame in new &tab Toon dit frame in nieuw &tabblad Print frame Druk frame af Zoom &in Zoom &in &Zoom out &Zoom uit Reset Zet terug Show so&urce of frame Toon &bron van frame Book&mark page &Bladwijzer pagina &Save page as... &Sla pagina op als... &Copy page link &Kopieer paginalink Send page link... Verstuur paginalink... &Print page &Print pagina Select &all &Selecteer alles Validate page Valideer pagina Show so&urce code &Toon broncode Show info ab&out site Toon info &over site Open link in new &tab Open link in nieuw &tabblad Open link in new &window Open link in nieuw &venster B&ookmark link B&ladwijzer link &Save link as... &Sla link op als... Send link... Verstuur link... &Copy link address &Kopieer linkadres Show i&mage Toon af&beelding Copy im&age &Kopieer afbeelding Copy image ad&dress Kopieer af&beeldingsadres &Save image as... &Sla afbeelding op als... Send image... Verstuur afbeelding... Send text... Verstuur tekst... Google Translate Google Vertalen Dictionary Woordenboek Go to &web address Ga naar &webadres Search "%1 .." with %2 Zoek "%1 .." met %2 Search with... Zoek met... &Play &Speel af &Pause &Pauzeer Un&mute Ont&demp &Mute &Demp &Copy Media Address &Kopieer media-adres &Send Media Address &Verstuur media-adres Save Media To &Disk Sla media op naar &schijf Check &Spelling Controleer &Spelling Languages Talen jsAlert Prevent this page from creating additional dialogs Voorkom dat deze pagina extra dialoogvensters aanmaakt qupzilla-1.6.0/translations/nqo.ts000066400000000000000000011353721226107126500172630ustar00rootroot00000000000000 AboutDialog About QupZilla ߞߎߖ߭ߌߟߊ ߞߊ߲߬ Authors ߞߍߓߊ߮ ߟߎ߬ Authors and Contributors ߞߍߓߊ߮ ߣߌ߫ ߡߊ߬ߜߍ߲߬ߠߌ߲߬ߠߊ ߟߎ߬ < About QupZilla < ߞߎߖ߭ߌߟߊ ߞߊ߲߬ <p><b>Application version %1</b><br/> <p><b>ߓߟߏߦߊߟߌ ߓߐߞߏ߫ %1</b><br/> <b>WebKit version %1</b></p> <b>ߓߟߐߟߐߓߘߐ ߓߐߞߏ %1 </b></p> <small>Build time: %1 </small></p> <small>ߟߐ߬ߟߌ ߕߎ߬ߡߊ: %1</small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>ߘߐ߬ߦߙߌ߬ߥߟߊ߬ ߖߏߣߊ:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>ߘߍ߬ߡߍ߲߬ߠߌ߲߬ߠߊ ߟߎ߬:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>ߘߟߊߡߌߣߊߟߌߟߊ ߟߎ߬</b><br/>%1</p> AcceptLanguage Preferred Languages ߘߌߦߊߣߊ߲߫ ߞߊ߲ Add... ߊ߬ ߝߙߊ߬... Remove ߊ߬ ߖߐ߬ߛߌ߬ Up ߦߟߍ߬ Down ߖߌ߰ Personal [%1] ߘߎ߲߬ߘߎ߬ߡߊ [%1] AdBlockAddSubscriptionDialog Add Subscription ߡߊ߬ߝߘߎ߬ߟߌ ߘߏ߫ ߝߙߊ߬ Title: ߛߟߊߟߊ: Address: ߛߊ߲߬ߓߊ߬ߕߐ߮: Add new subscription to AdBlock: ߡߊ߬ߝߘߎ߬ߟߌ ߜߘߍ߫ ߝߙߊ߬ ߓߊߟߊ߲ߠߊ ߢߍ߫: AdBlockCustomList Custom Rules ߞߎ߬ߙߎ߲߬ߘߎ߬ ߟߊߘߎ߲߬ߘߎ߬ߡߦߊ߬ߣߍ߲ ߠߎ߬ AdBlockDialog AdBlock Configuration ߓߊߟߊ߲ߠߊ ߞߎ߲߬ߠߊ߬ߛߌ߰ߟߌ Enable AdBlock ߓߊߟߊ߲ߠߊ ߓߌ߬ߟߵߊ߬ ߟߊ߫ Search... ߊ߬ ߢߌߣߌ߲߫... Options ߢߣߊߕߊߟߌ ߟߎ߬ AdBlock ߓߊߟߊ߲ߠߊ Use only essential part of EasyList (for performance reasons) ߛߙߍߘߍߣߐ߮ ߝߊ߲߭ ߕߣߐ߬ߡߊ߬ ߘߏ߫ ߟߊߓߊ߯ߙߊ߫ ߕߋ߲߬ ߘߐߙߐ߲߫ (ߝߊߘߌ߲ߧߊ ߞߏߛߐ߲߬) Add Rule ߞߎ߬ߙߎ߲߬ߘߎ ߘߏ߫ ߝߙߊ߬ Remove Rule ߞߎ߬ߙߎ߲߬ߘߎ ߖߐ߬ߛߌ߬ Add Subscription ߛߙߘߍ ߝߙߊ߬ Remove Subscription ߛߙߘߍ ߖߐ߬ߛߌ߬ Update Subscriptions ߛߙߘߍ ߟߎ߬ ߟߏ߲ߘߐߦߊ߫ Learn about writing rules... ߘߏ߫ ߟߐ߲߫ ߞߎ߬ߙߎ߲߬ߘߎ߬ ߛߓߍ ߞߊ߲߬... AdBlockIcon AdBlock lets you block unwanted content on web pages ߓߊߟߊ߲ߠߊ ߦߴߌ ߘߍ߬ߡߍ߲߬ ߠߊ߫ ߌ ߜߏߦߊߣߊ߲߫ ߝߋ߲߫ ߠߎ߬ ߟߋ߬ ߓߊߟߊ߲ ߡߊ߬ ߓߟߐߟߐ ߞߐߜߍ ߟߎ߬ ߞߊ߲߬ Blocked popup window ߝߢߐߘߊߙߋ߲߫ ߓߊߟߊ߲ߣߍ߲ AdBlock blocked unwanted popup window. ߓߊߟߊ߲ߠߊ ߦߴߌ ߘߍ߬ߡߍ߲߬ ߠߴߌ ߜߏߦߊߣߊ߲߫ ߝߢߐߘߊߙߋ߲ ߠߎ߬ ߟߋ߬ ߓߊߟߊ߲߫ ߠߊ߫. AdBlock ߓߊߟߊ߲ߠߊ Show AdBlock &Settings ߓߊߟߊ߲ߠߊ ߞߐߕߐ߯ߘߐߛߙߋ ߟߎ߬ ߟߊߟߐ߲߫ Disable on %1 %1 ߓߐ߫ ߊ߬ ߟߊ߫ Disable only on this page ߊ߬ ߓߐ߫ ߊ߬ ߟߊ߫ ߞߐߜߍ ߣߌ߲߬ ߘߐߙߐ߲߫ ߞߊ߲߬ Blocked Popup Windows ߝߢߐߘߊߙߋ߲߫ ߓߊߟߊ߲ߣߍ߲ %1 with (%2) %1 ߣߌ߫ (%2) No content blocked ߞߣߐߘߐ߫ ߛߌ߫ ߓߊߟߊ߲ߣߍ߲߫ ߕߍ߫ Blocked URL (AdBlock Rule) - click to edit rule ߛߘߌ߬ߜߋ߲߬ ߓߊߟߊ߲ߣߍ߲ (ߓߊߟߊ߲ߠߊ ߞߎ߬ߙߎ߲߬ߘߎ) - ߊ߬ ߛߐ߲߬ߞߌ߲߬ ߞߵߊ߬ ߡߊߦߟߍ߬ߡߊ߲߬ AdBlockManager Do you want to add <b>%1</b> subscription? ߦߴߊ߬ ߝߍ߬ ߞߊ߬ ߛߙߍߘߍ <b>%1</b> ߝߙߊ߬ ߢߍ؟ AdBlock Subscription ߓߊߟߊ߲ߠߊ ߛߙߍߘߍ EasyList ߛߙߍߘߍߣߐ߮ AdBlockTreeWidget Add Rule ߞߎ߬ߙߎ߲߬ߘߎ ߘߏ߫ ߝߙߊ߬ Remove Rule ߞߎ߬ߙߎ߲߬ߘߎ ߖߐ߬ߛߌ߬ Add Custom Rule ߞߎ߬ߙߎ߲߬ߘߎ߬ ߟߊߘߎ߲߬ߘߎ߬ߡߦߊ߬ߣߍ߲ ߝߙߊ߬ Please write your rule here: ߌ ߟߊ߫ ߞߎ߬ߙߎ߲߬ߘߎ ߛߓߍ߫ ߦߊ߲߬ ߖߊ߰ߣߌ߬: %1 (recently updated) %1 (ߟߏ߲ߘߐߦߊߟߌ߫ ߞߍߛߊ߲) AddAcceptLanguage Add Language ߞߊ߲ ߝߙߊ߬ Choose preferred language for web sites ߘߌߦߊߣߊ߲߫ ߞߊ߲ ߛߎߥߊ߲ߘߌ߫ ߞߍߦߙߐ ߢߍ߫ Personal definition: ߘߎ߲߬ߘߎ߬ߡߊ߬ ߡߊ߬ߡߌ߬ߣߊ߬ߟߌ: AesInterface Warning! ߖߊ߲߬ߕߏ߬ߟߌ߹ Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. ߟߐ߲ߕߊ ߓߘߊ߫ ߟߊߞߊ߲ߘߊ߫ ߞߎߖ߭ߌߟߊ ߟߊ߫ ߓߐߞߏ߫ ߞߎߘߊ ߘߐ߫ ߞߎߖ߭ߌߟߊ ߓߐߞߏ ߞߐߟߕߊ ߏ߬ ߡߊߞߍ߫ ߌ ߞߎ߲߬. AutoFill Database (plaintext) ߟߐ߲ߕߊߓߘߐ(ߞߟߏߜߍ߫ ߔߋߔߋ) Database (encrypted) ߟߐ߲ߕߊߓߘߐ(ߦߙߍߞߍߣߍ߲) Enter Master Password ߞߎ߲߬ߕߌ߰ ߕߊߡߌ߲ߞߊ߲ ߠߊߘߏ߲߬ Permission is required, please enter Master Password: ߟߊ߬ߘߌߢߍ ߦߋ߫ ߛߋ߲ߛߋߘߋ߲ ߠߋ߬ ߘߌ߫߸ ߞߎ߬ߕߌ߰ ߕߊߡߌ߲ߞߊ߲ ߠߊߘߏ߲߰ ߖߊ߰ߣߌ߬: Warning! ߖߊ߲߬ߕߏ߬ߟߌ߹ Entered password is wrong! ߕߊ߬ߡߌ߲߬ߞߊ߲߬ ߠߊߘߏ߲߬ߣߍ߲ ߓߍ߲߬ߣߍ߲߬ ߕߍ߫߹ This backend needs a master password to be set! QupZilla just switches to its default backend ߟߊ߬ߞߎߙߊ߲ ߢߌ߲߬ ߣߌ߫ ߞߎ߲߬ߕߌ߰ ߕߊߡߌ߲ߞߊ߲ ߠߋ߬ ߦߊ߫ ߞߊ߲߫ ߦߊ߬ߣߴߊ߬ ߦߋ߫ ߡߊߝߊ߬ߟߋ߲߬߹ ߞߎߖ߭ߌߟߌ ߕߊ߬ߡߌ߲߬ߕߐ߫ ߊ߬ ߟߊ߫ ߟߊ߬ߞߎ߬ߙߊ߲߬ ߖߏߣߡߊ ߟߋ߬ ߘߐ߫ ߕߋ߲߬ ߘߐߙߐ߲߫ AutoFillManager Passwords are stored in: ߕߊ߬ߡߌ߲߬ߞߊ߲ ߓߘߊ߫ ߟߊߡߊ߲߬ߘߌ߬ ߦߊ߲߬: Change backend ߟߊ߬ߞߎߙߊ߲ ߡߊߝߊ߬ߟߋ߲߬ Backend options ߟߊ߬ߞߎߙߊ߲ ߢߣߊߕߊߟߌ ߟߎ߬ Passwords ߕߊ߬ߡߌ߲߬ߞߊ߲ ߠߎ߬ Server ߛߐߘߊ Username ߟߐ߲ߕߐ߮ Password ߕߊ߬ߡߌ߲߬ߞߊ߲ Import/Export ߟߊ߬ߛߣߍ߬ߟߌ\ߟߊ߬ߓߐ߬ߟߌ Show Passwords ߕߊ߬ߡߌ߲߬ߞߊ ߠߎ߬ ߟߊߟߐ߲߫ Edit ߊ߬ ߡߊߦߟߍ߬ߡߊ߲߬ Remove ߊ߬ ߖߐ߬ߛߌ߬ Remove All ߊ߬ ߓߍ߯ ߖߐ߬ߛߌ߬ Exceptions ߢߌ߬ߣߊ߬ߓߐ߬ߟߌ Import Passwords from File... ߕߊ߬ߡߌ߲߬ߞߊ߲ ߠߊߛߣߍ߫ ߞߊ߬ ߓߐ߫ ߞߐߕߐ߯ߘߐ ߘߐ߫... Export Passwords to File... ߕߊ߬ߡߌ߲߬ߞߊ߲ ߠߊߕߊ߯ ߞߐߕߐ߯ߘߐ ߘߐ߫... Search ߊ߬ ߢߌߣߌ߲߫ Change backend... ߟߊ߬ߞߎߙߊ߲ ߡߊߝߊ߬ߟߋ߲߬ Change backend: ߟߊ߬ߞߎߙߊ߲ ߡߊߝߊ߬ߟߋ߲߬: Are you sure that you want to show all passwords? ߦߴߊ߬ ߝߍ߬ ߞߊ߬ ߕߊ߬ߡߌ߲߬ߞߊ ߓߍ߯ ߟߋ߬ ߟߊߟߐ߲߫ ߣߌ߲߬ ߢߍ؟ Hide Passwords ߕߊ߬ߡߌ߲߬ߞߊ߲ ߠߎ߬ ߢߡߊߘߏ߲߰ Confirmation ߟߊ߬ߘߌ߬ߢߍ߬ߟߌ Are you sure to delete all passwords on your computer? ߦߴߊ߬ ߝߍ߬ ߞߊ߬ ߕߊ߬ߡߌ߲߬ߞߊ߲ ߓߍ߯ ߟߋ߬ ߖߐ߬ߛߵߌ ߟߊ߫ ߕߟߋ߬ߓߊ ߟߊ߫ ߝߋߎ߫؟ Edit password ߕߊ߬ߡߌ߲߬ߞߊ߲ ߡߊߦߟߍ߬ߡߊ߲߬ Change password: ߕߊ߬ߡߌ߲߬ߞߊ߲ ߡߊߝߊ߬ߟߋ߲߬ Choose file... ߞߐߕߐ߯ߘߐ ߛߎߥߊ߲ߘߌ߫... Cannot read file! ߊ߬ ߕߍ߫ ߛߋ߫ ߞߐߕߐ߯ߘߐ ߘߐߞߊ߬ߙߊ߲߬ ߠߊ߫߹ Successfully imported ߟߊ߬ߛߣߍ߬ߟߌ ߓߘߊ߫ ߞߍ߫ ߞߏߢߊ߬ Error while importing! ߟߊ߬ߛߣߍ߬ߟߌ߬ ߕߎߡߊ ߝߌ߬ߟߌ߹ Cannot write to file! ߛߓߍߟߌ߫ ߕߍ߫ ߛߋ߫ ߞߍ߫ ߟߊ߫ ߞߐߕߐ߯ߘߐ ߘߐ߫߹ Successfully exported ߟߊ߬ߓߐ߬ߟߌ ߓߘߊ߫ ߞߍ߫ ߞߏߢߊ߬ AutoFillNotification Update ߟߏ߲ߘߐߦߊߟߌ Remember ߊ߬ ߦߟߌߕߏ߫ Never For This Site ߊ߬ ߞߊ߫ ߞߍ߫ ߞߍߦߙߐ ߣߌ߲߬ ߠߊ߫ ߡߎ߰ߡߍ߫ Not Now ߛߌߛߍ߲߬ ߕߍ߫ on %1 %1 ߞߊ߲߬ for <b>%1</b> <b>%1</b> ߢߍ߫ Do you want QupZilla to update saved password %1? ߦߴߊ߬ ߝߍ߬ ߞߎߖ߭ߌߟߊ ߦߋ߫ ߕߊ߬ߡߌ߲߬ߞߊ߲ %1 ߟߏ߲ߘߐߦߊ߫ ߟߋ߬ ߢߍ؟ Do you want QupZilla to remember the password %1 %2? ߦߴߊ߬ ߝߍ߬ ߞߎߖ߭ߌߟߊ ߦߴߊ߬ ߖߊ߲߬ߕߏ߬ ߕߊ߬ߡߌ߲߬ߞߊ߲ %1 %2 ߘߐ߫ ߟߋ߬ ߢߍ؟ AutoFillWidget Choose username to login ߌ ߜߊ߲߬ߞߎ߲߬ ߟߐ߲ߕߐ߮ ߛߎߥߊ߲ߘߌ߫ Login ߜߊ߲߬ߞߎ߲߬ߠߌ Login as <b>%1</b> ߌ ߜߊ߲߬ߞߎ߲߬ <b>%1</b> ߘߌ߫ BookmarkIcon Bookmark this Page ߞߐߜߍ ߣߌ߲߬ ߡߊߦߋߙߋ߲߫ Edit this bookmark ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߣߌ߲߬ ߡߊߦߟߍ߬ߡߊ߲߬ BookmarksImportDialog Import Bookmarks ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߠߎ߬ ߟߊߛߣߍ߫ <b>Import Bookmarks</b> <b>ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߠߎ߬ ߟߊߛߣߍ߫</b> From File ߞߊ߬ ߝߙߊ߫ ߞߐߕߐ߯ߘߐ ߟߊ߫ Internet Explorer ߓߟߐߟߐ߫ ߘߐߛߏ߯ߙߋ Choose browser from which you want to import bookmarks: ߛߏ߲߯ߓߊߟߊ߲ ߘߏ߫ ߛߎߥߊ߲ߘߌ߫ ߦߴߊ߬ ߝߍ߬ ߞߊ߬ ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߠߎ߬ ߟߊߛߣߍߕߐ߫ ߡߍ߲ ߘߐ߫: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>ߦߟߌߣߐ:</b>. ߕߋ߲߭ߕߋ߲߬ ߞߟߏߜߍ߫ ߛߘߌ߫ ߡߊߜߍ߲ ߝߐߞߊ߲ ߞߐߕߐ߯ߘߐ ߘߐߙߐ߲߫ ߠߊ߫ ߟߊ߬ߛߣߍ߬ߟߌ ߟߋ߬ ߘߌ߫ ߛߋ߫ ߞߐߜߍ߫ ߡߊߦߋߙߋ߲߫ ߞߐߕߐ߮ ߟߎ߬ ߟߊߛߣߍ߫ ߟߴߊ߬ ߝߍ߬. Choose... ߊ߬ ߛߎߥߊ߲ߘߌ߫... Try to fetch icons for all bookmarks (may take a while) ߞߎ߬ߘߎ ߘߏ߫ ߢߌߣߌ߲߫ ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߓߍ߯ ߢߍ߫ (ߏ߬ ߘߌ߫ ߛߋ߫ ߕߎ߬ߡߊ߬ߣߍ߲ ߕߊ߬ ߟߊ߫) Fetching icons, please wait... ߕߐ߯ߡߊߦߋߙߋ߲ ߠߎ߬ ߟߊߘߍ߭ ߌߘߐ߫߸ ߌ ߡߎ߬ߢߎ߲߬ ߖߊ߰ߣߌ߬... Title ߛߟߊߟߊ Url ߛߘߌ߬ߜߋ߲ Next ߟߊ߬ߕߎ߲߬ߠߊ Cancel ߊ߬ ߘߐߛߊ߬ <b>Importing from %1</b> <b>ߟߊ߬ߛߣߍ߬ߟߌ ߞߊ߬ ߝߙߊ߫ %1 ߟߊ߫</b> Finish ߊ߬ ߟߊߓߊ߲߫ Please press Finish to complete importing process. ߊ߬ ߟߊߓߊ߲߫ ߛߐ߲߬ߞߌ߲߬ ߞߊ߬ ߟߊ߬ߛߣߍ߬ߟߌ ߕߎ߬ߜߍ߬ߕߎߜߍ ߟߊߓߊ߲߫ ߖߊ߰ߣߌ߬. Error! ߝߌ߬ߟߌ߹ The file doesn't contain any bookmark. ߞߐߜߍ߫ ߡߊߦߋߙߋ߲߫ ߛߌ߫ ߕߍ߫ ߞߐߕߐ߯ߘߐ ߣߌ߲߬ ߘߐ߫. Choose directory... ߓߏ߲߬ߘߏ߲ ߛߎߥߊ߲ߘߌ߫... Choose file... ߞߐߕߐ߯ߘߐ ߛߎߥߊ߲ߘߌ߫... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in ߡߏߖ߭ߌߟߊ ߝߦߊߝߐߞ ߦߴߊ߬ ߟߊ߫ ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߠߎ߬ ߟߊߘߊ߬ߙߏ߬ ߟߊ߫ <b>sqlite ߦߙߐ</b> ߟߋ߬ ߘߐ߫ SQLite ߟߐ߲ߕߊߓߘߐ ߘߐ߫ ߞߊ߬ߣߌ߲߬. ߏ߬ ߘߏ߲߬ ߦߋ߫ ߞߍ߫ ߟߊ߫ ߕߎ߬ߡߊ߬ ߛߌߦߊߡߊ߲߫ Please choose this file to begin importing bookmarks. ߞߐߕߐ߯ߘߐ ߣߌ߲߬ ߛߎߥߊ߲ߘߌ߫ ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߠߎ߬ ߟߊߛߣߍ߫ ߘߐ߫ ߖߊ߰ߣߌ߬. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in ߜ߭ߎߜ߭ߟ ߞߙߏߡߎ߬ ߦߴߊ߬ ߟߊ߫ ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߠߎ߫ ߟߊߘߊ߬ߙߏ߬ ߟߊ߫ <b>ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߠߎ߬</b> ߞߐߕߐߘߐ߫ ߞߟߏߜߍߡߊ ߟߋ߬ ߘߐ߫. ߞߐߕߐ߯ߘߐ ߏ߰ ߞߍ߫ ߟߊ߫ Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in ߏߓߋߙߊ ߦߴߊ߬ ߟߊ߫ ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߠߎ߫ ߟߊߘߊ߬ߙߏ߬ ߟߊ߫ <b>ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߠߎ߬.adr</b> ߞߐߕߐߘߐ߫ ߞߟߏߜߍߡߊ ߟߋ߬ ߘߐ߫. ߞߐߕߐ߯ߘߐ ߏ߰ ߞߍ߫ ߟߊ߫ You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes ߌ ߘߌ߫ ߛߋ߫ ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߠߊߛߣߍ߫ ߟߊ߫ ߛߏ߲߯ߓߊߟߊ߲ ߓߍ߯ ߟߊ߫ ߣߌ߫ ߞߟߏߜߍ߫ ߛߘߌ߫ ߡߊߜߍ߲ ߝߐߞߊ߲ ߟߊ߬ߓߐ߬ߟߌ ߘߌ߫ ߛߋ߫ ߞߍ߫ ߟߴߊ߬ ߟߊ߫ ߞߊ߬ߣߌ߲߬. ߕߎ߬ߡߊ߬ ߛߌߦߊߡߊ߲߫ ߞߐߕߐ߯ߘߐ ߏ߬ ߖߊ߬ߡߎ߲ ߠߎ߰ ߞߍ߫ ߟߊ߫ Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in ߓߟߐߟߐ߫ ߘߐߛߏ߯ߙߋ ߦߴߊ߬ ߟߊ߫ ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߠߎ߬ ߟߊߡߊ߲߬ߘߌ߬ ߟߊ߫ <b>ߞߙߍߞߙߍߣߍ߲ ߠߎ߬</b> ߞߐߕߐ߮ ߟߋ߬ ߘߐ߫. ߞߐߕߐ߮ ߏ߰ ߞߍ߫ ߟߊ߫ ߊ߬ ߛߌߦߊߡߊ߲ ߘߐ߫ Please choose this folder to begin importing bookmarks. ߞߐߕߐ߮ ߣߌ߲߬ ߛߎߥߊ߲ߘߌ߫ ߖߊ߬ߣߌ߬ ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߠߎ߬ ߟߊߛߣߍ ߘߐ߫. No Error ߝߟߌ߬ ߕߴߊ߬ ߘߐ߫ Unable to open file. ߞߐߕߐ߯ߘߐ ߕߍ߫ ߛߋ߫ ߘߊߦߟߍ߬ ߟߊ߫. Cannot evaluate JSON code. ߖ߭ߝ߭ߊߛߓߍߟߌ ߝߋ߲ ߖߐ߬ߢߊ ߘߏߞߊ߲ ߕߍ߫ ߛߋ߫ ߞߘߐߓߐ߫ ߟߊ߫. File does not exist. ߞߐߕߐ߯ߘߐ ߕߍ߫ ߦߋ߲߬. Unable to open database. Is Firefox running? ߟߐ߲ߕߊߓߘߐ ߕߍ߫ ߛߋ߫ ߘߊߦߟߍ߬ ߟߊ߫. ߝߦߊߝߐߞ ߟߥߊߟߌߣߍ߲߫ ߢߍ؟ Directory does not exist. ߓߏ߲߬ߘߏ߲߬ ߕߍ߫ ߦߋ߲߬. The directory does not contain any bookmarks. ߞߐߜߍ߫ ߡߊߦߋߙߋ߲߫ ߛߌ߫ ߕߍ߫ ߓߏ߲߬ߘߏ߲ ߘߐ߫. BookmarksManager Bookmarks ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߠߎ߬ Optimize Database ߟߐ߲ߕߊߓߘߐ ߟߊߢߊ߬ Import Bookmarks ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߠߎ߬ ߟߊߛߣߍ߫ Add Folder ߞߐߕߐ߮ ߝߙߊ߬ Title ߛߟߊߟߊ Url ߛߘߌ߬ߜߋ߲ Expand All ߊ߬ ߓߍ߯ ߘߓߐ߫ Collapse All ߊ߬ ߓߍ߯ ߟߊߘߐ߯ߦߊ߫ Add new folder ߞߐߕߐ߮ ߞߎߘߊ ߝߙߊ߬ Choose parent folder for new folder: ߞߐߕߐ߮ ߞߎߘߊ ߞߐߕߐ߯ ߡߊ߲ߛߊ ߛߎߥߊ߲ߘߌ߫: Choose name for new bookmark folder: ߕߐ߮ ߘߏ߫ ߛߎߥߊ߲ߘߌ߫ ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߞߐߕߐ߮ ߢߍ߫: Add new subfolder ߘߎ߬ߟߊ߬ ߞߐߕߐ߯ ߞߎߘߊ ߝߙߊ߬ Choose name for new subfolder in bookmarks toolbar: ߕߐ߯ ߞߎߘߊ߫ ߛߎߥߊ߲ߘߌ߫ ߘߎ߬ߟߊ߬ ߞߐߕߐ߮ ߢߍ߫ ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߡߙߎߝߋ ߘߐ߫: Rename Folder ߞߐߕߐ߮ ߕߐ߮ ߦߟߍ߬ߡߊ߲߬ Choose name for folder: ߕߐ߮ ߘߏ߫ ߛߎߥߊ߲ߘߌ߫ ߞߐߕߐ߮ ߢߍ߫: Add Subfolder ߘߎ߬ߟߊ߬ ߞߐߕߐ߮ ߝߙߊ߬ Rename folder ߞߐߕߐ߮ ߕߐ߮ ߦߟߍ߬ߡߊ߲߬ Remove folder ߞߐߕߐ߮ ߖߐ߬ߛߌ߬ Open link in current &tab ߛߘߌ߬ߜߋ߲ ߘߊߦߟߍ߬ ߛߏߙߌ߲ߘߐ ߣߌ߲߬ ߘߐ߫ Open link in &new tab ߛߘߌ߬ߜߋ߲ ߘߊߦߟߍ߬ ߛߏ߬ߙߌ߲߬ߘߐ߬ ߞߎߘߊ߫ ߘߐ߫ Move bookmark to &folder ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߖߐ߬ߛߌ߬ ߞߐߕߐ߮ ߘߐ߫ Change icon ߕߐ߯ߡߊߦߋߙߋ߲ ߡߊߝߊ߬ߟߋ߲߬ Rename bookmark ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߕߐ߮ ߦߟߍ߬ߡߊ߲߬ Remove bookmark ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߖߐ߬ߛߌ߬ <b>Warning: </b>You already have bookmarked this page! <b>ߖߊ߲߬ߕߏ߬ߟߌ: </b> ߌ ߓߘߊ߫ ߞߐߜߍ߫ ߣߌ߲߬ ߡߊߦߋߙߋ߲߫ ߞߊ߬ ߓߊ߲߫߹ Choose name and location of this bookmark. ߕߐ߮ ߘߏ߫ ߣߌ߫ ߦߌߟߊ ߘߏ߫ ߛߎߥߊ߲ߘߌ߫ ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߣߌ߲߬ ߢߍ߫. Add New Bookmark ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߞߎߘߊ ߝߙߊ߬ Choose folder for bookmarks: ߞߐߕߐ߮ ߛߎߥߊ߲ߘߌ߫ ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߢߍ߫: Bookmark All Tabs ߛߏ߬ߙߌ߲߬ߘߏ ߓߍ߯ ߡߊߦߋߙߋ߲߫ BookmarksModel Bookmarks In Menu ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߟߐ߬ߥߟߊ Bookmarks In ToolBar ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߡߙߎߝߋ Unsorted Bookmarks ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߘߐߓߍ߲߬ߓߊߟߌ ߟߎ߬ BookmarksSideBar Search... ߊ߬ ߢߌߣߌ߲߫... Open link in current &tab ߛߘߌ߬ߜߋ߲ ߘߊߦߟߍ߬ ߛߏ߬ߙߌ߲߬ߘߐ ߣߌ߲߬ ߘߐ߫ Open link in &new tab ߛߘߌ߬ߜߋ߲ ߘߊߦߟߍ߬ ߛߏ߬ߙߌ߲߬ߘߐ߬ ߞߎߘߊ߫ ߘߐ߫ Copy address ߛߊ߲߬ߓߊ߬ߕߐ߮ ߓߊߓߌߟߊ߫ &Delete ߊ߬ ߖߐ߬ߛߌ߬ BookmarksToolbar &Bookmark Current Page ߞߐߜߍ߫ ߣߌ߲߬ ߡߊߦߋߙߋ߲߫ Bookmark &All Tabs ߞߐߜߍ ߓߍ߯ ߡߊߦߋߙߋ߲߫ &Organize Bookmarks ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߠߎ߬ ߘߐߓߍ߲߬ Show Most &Visited ߡߊ߬ߝߟߍ߬ߟߌ߬ ߥߙߍߓߊ ߟߎ߬ ߟߊߟߐ߲߫ Show Only Icons ߕߐ߯ߡߊߦߋߙߋ߲ ߘߐߙߐ߲߫ ߠߊߟߐ߲߫ &Hide Toolbar ߡߙߎߝߋ ߢߡߊߘߏ߲߰ Open bookmark ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߘߊߦߟߍ߬ Open bookmark in new tab ߛߘߌ߬ߜߋ߲ ߘߊߦߟߍ߬ ߛߏ߬ߙߌ߲߬ߘߐ߬ ߞߎߘߊ߫ ߘߐ߫ Move right ߕߊ߯ ߞߌߣߌ߲ߓߟߏ ߝߍ߬ Move left ߕߊ߯ ߣߎߡߊ߲ߓߟߏ ߝߍ߬ Edit bookmark ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߡߊߦߟߍ߬ߡߊ߲߬ Remove bookmark ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߖߐ߬ߛߌ߬ Edit bookmark: ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߡߊߦߟߍ߬ߡߊ߲߬ Title: ߛߟߊߟߊ: Url: ߛߘߌ߬ߜߋ߲: Edit Bookmark ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߡߊߦߟߍ߬ߡߊ߲߬ Most visited ߓߐߒߡߊߟߌ߫ ߥߙߍߓߊ Sites you visited the most ߌ ߟߊ߫ ߞߍߦߙߐ ߘߐߜߍߣߍ߲ߓߊ Empty ߘߐߞߏߟߏ߲ BookmarksTree Bookmarks ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߠߎ߬ New Folder... ߞߐߕߐ߯ ߞߎߘߊ... BookmarksWidget Add to Speed Dial ߊ߬ ߝߙߊ߬ ߞߟߌߟߌ߫ ߞߊߟߌ߲ ߠߊ߫ Save ߊ߬ ߟߊߞߎ߲߬ߘߎ߬ Name: ߕߐ߮: Folder: ߞߐߕߐ߮: Remove from Speed Dial ߊ߬ ߖߐ߬ߛߌ߬ ߞߟߌߟߌ߫ ߞߊߟߌ߲ ߘߐ߫ Remove ߊ߬ ߖߐ߬ߛߌ߬ BrowsingLibrary Library ߟߍߙߘߊ Search... ߊ߬ ߢߌߣߌ߲߫... History ߞߊ߬ߞߘߐ Bookmarks ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߠߎ߬ RSS ߟߊ߬ߕߌ߬ߡߌ߲߬ߠߌ ߝߙߋ߬ߟߌ߬ ߜߍ (ߟ.ߝ.ߜ) Database Optimized ߟߐ߲ߕߊߓߘߐ ߟߊߢߊ߬ߣߍ߲ Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 ߟߐ߲ߕߊߓߘߐ ߓߘߊ߫ ߟߊߢߊ߬ ߞߏߢߊ߬. <br/><br/><b>ߟߐ߲ߕߊߓߘߐ ߢߊ߲ߞߊ߲ ߢߍߕߊ: </b>%1<br/><b>ߟߐ߲ߕߊߓߘߐ ߢߊ߲ߞߊ߲ ߞߐߝߍߕߊ: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>ߊ߬ ߓߐߣߍ߲߫</b> Common Name (CN): ߝߘߏ߬ߓߊ߬ ߕߐ߮ (ߝ.ߕ): Organization (O): ߛߌ߲߬ߝߏ߲߬ߧߊ߬ߟߌ (ߛ): Organizational Unit (OU): ߛߌ߲߬ߝߏ߬ߧߊ߬ߟߌ߬ ߘߍ߬ߣߍ߲ (ߛ.ߘ): Serial Number: ߓߐߟߌ߫ ߝߙߍߕߍ: <b>Issued By</b> <b>ߊ߬ ߝߙߊߣߍ߲߫</b> <b>Validity</b> <b>ߕߣߐ߬ߓߐ߬ ߕߎߡߊ</b> Issued On: ߊ߬ ߟߊߣߊ߬ ߘߊ߫: Expires On: ߊ߬ ߓߊ߲߫ ߘߊ߫: ClearPrivateData Clear Recent History ߞߊ߬ߞߘߐ߬ ߞߎߘߊ ߖߐ߬ߛߌ߬ Choose what you want to delete: ߖߐ߬ߛߌ߬ߕߊ ߛߎߥߊ߲ߘߌ߫: Clear history ߞߊ߬ߞߘߐ ߖߐ߬ߛߌ߬ Clear cache ߘߋ߲߬ߞߊ ߘߐߞߊ߬ Clear icons ߕߐ߯ߡߊߦߋߙߋ߲ ߠߎ߬ ߖߐ߬ߛߌ߬ <b>Clear Recent History</b> <b>ߞߊ߬ߞߘߐ߬ ߞߎߘߊ ߖߐ߬ߛߌ߬</b> Earlier Today ߓߌ߬ ߟߋ߬ Week ߞߎ߲߬ߢߐ߲߮ Month ߛߊ߲߬ߓߏߟߏ߲ All ߓߍ߯ Clear web databases ߓߟߐߟߐ ߟߐ߲ߕߊߓߘߐ ߖߐ߬ߛߌ߬ Clear local storage ߦߌߟߊߟߊ߫ ߟߊߡߊ߲ߘߟߌ ߖߐ߬ߛߌ߬ Clear cookies ߛߊ߲߬ߓߊ ߟߎ߫ ߖߐ߬ߛߌ߬ ClickToFlash Object blocked by ClickToFlash ߝߋ߲ ߘߏ߫ ߓߘߊ߫ ߓߊߟߊ߲߫ ߦߋߞߎߛߐ߲ߞߌ߲ ߓߟߏ߫ Show more information about object ߝߋ߲ ߣߌ߲߬ ߞߌ߬ߓߊ߬ߙߏ ߟߎ߬ ߟߊߟߐ߲߫ Delete object ߝߋ߲ ߖߐ߬ߛߌ߬ Add %1 to whitelist %1 ߝߙߊ߬ ߛߙߍߘߍ߫ ߜߍ ߟߊ߫ Flash Object ߦߟߋߞߋ ߝߋ߲ <b>Attribute Name</b> <b>ߕߐ߮ ߟߊ߲߬ߓߋ߬ߣߍ߲</b> <b>Value</b> <b>ߡߐ߬ߟߐ߲</b> No more information available. ߞߌ߬ߓߊ߬ߙߏ߬ ߜߘߍ߫ ߕߍ߫ ߡߊߛߐ߬ߘߐ߲߬. CookieManager Cookies ߛߊ߲߬ߓߊ ߟߎ߬ Stored Cookies ߛߊ߲߬ߓߊ߬ ߟߊߡߊ߲߬ߘߌ߬ߣߍ߲ ߠߎ߬ Find: ߊ߬ ߢߌߣߌ߲߫: These cookies are stored on your computer: ߛߊ߲߬ߓߊ ߢߌ߲߬ ߠߎ߬ ߟߊߡߊ߲߬ߘߌ߬ߣߍ߲ ߕߟߋ߬ߓߊ ߟߋ߬ ߟߊ߫: Server ߛߐߘߊ Cookie name ߛߊ߲߬ߓߊ ߕߐ߮ Name: ߕߐ߮: Value: ߡߐ߬ߟߐ߲: Server: ߛߐߘߊ: Path: ߛߌߟߊ: Secure: ߞߊ߲ߘߦߊ: Expiration: ߓߊ߲ߠߌ߲: <cookie not selected> <ߛߊ߲߬ߓߊ߬ ߓߊߕߐߡߐ߲ߓߊߟߌ> Remove all cookies ߛߊ߲߬ߓߊ ߓߍ߯ ߖߐ߬ߛߌ߬ Remove cookies ߛߊ߲߬ߓߊ ߟߎ߫ ߖߐ߬ߛߌ߬ Cookie Filtering ߛߊ߲߬ߓߊ ߟߎ߬ ߛߍ߲ߛߍ߲ߠߌ <b>Cookie whitelist</b> <b>ߛߙߍߘߍ߫ ߜߍ ߛߊ߲߬ߓߊ</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) ߛߊ߲߬ߓߊ ߡߍ߲ ߠߎ߬ ߝߙߊߕߐ߫ ߛߐߘߊ ߢߌ߲߬ ߠߊ߫߸ ߏ߬ ߘߌ߫ ߟߊߘߌ߬ߢߍ߫ ߕߎ߬ߡߊ߬ ߓߍ߯ (ߤߊߟߌ߬ ߣߴߌ ߞߊ߬ ߛߊ߲߬ߓߊ߬ ߟߊߞߎ߲߬ߘߎ߬ߣߍ߲ ߠߎ߬ ߓߐ߫ ߊ߬ ߟߊ߫) Add ߊ߬ ߝߙߊ߬ Remove ߊ߬ ߖߐ߬ߛߌ߬ <b>Cookie blacklist</b> <b>ߖߛߎ߬ߞߊ߬ߛߌ߬ ߛߙߍߘߍ</b> Cookies from these servers will NEVER be accepted ߛߊ߲߬ߓߊ ߡߍ߲ ߠߎ߬ ߝߙߊߕߐ߫ ߛߐߘߊ ߟߊ߫߸ ߏ߬ ߟߎ߬ ߕߍߣߊ߬ ߟߊߘߌ߬ߢߍ߬ ߟߊ߫ ߡߎ߰ߡߍ߫ Settings ߞߐߕߐ߯ߘߐߛߙߋ ߟߎ߬ <b>Cookie Settings</b> <b>ߛߊ߲߬ߓߊ ߞߐߕߐ߯ߘߐߛߙߋ ߟߎ߬</b> Allow storing of cookies ߛߊ߲߬ߓߊ ߟߎ߬ ߟߊߞߎ߲߬ߘߎ ߟߊߘߌ߬ߢߍ߬ Delete cookies on close ߛߊ߲߬ߓߊ ߟߎ߫ ߖߐ߬ߛߌ߬ ߕߎ߲߯ߠߌ ߘߐ߫ Match domain exactly ߊ߬ ߓߍ߲߬ ߡߙߊ߬ߘߊ ߡߊ߬ ߔߋߙߊ߫ Filter tracking cookies ߛߊ߲߬ߓߊ߬ ߞߍ߬ߙߍ߲߬ߘߍ߬ߕߍ߰ߟߊ ߟߎ߬ ߛߍ߲ߛߍ߲߫ <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! <b>ߖߊ߲߬ߕߏ߬ߟߌ:</b>ߡߙߊ߬ߘߊ ߟߎ߫ ߓߍ߲߭ ߕߋߙߎ߫ ߊ߬ ߣߌ߫ ߞߊ߬ ߣߐ߬ߣߐ߬ߟߊ߬ ߛߊ߲ߓߊ ߟߎ߬ ߛߍ߲ߛߍ߲߫߸ ߏ߬ ߘߌ߫ ߛߋ߫ ߛߊ߲߬ߓߊ ߘߏ߫ ߟߎ߫ ߘߐߕߌߢߍ߫ ߟߊ߫ ߔߛߐߞߐ߫. ߣߌ߫ ߝߙߋߞߋ ߓߌ߬ߟߊ߬ ߘߊ߫ ߛߊ߲߬ߓߊ ߟߎ߬ ߘߐ߫߸ ߦߋ߫ ߢߣߊߕߊߟߌ ߢߌ߲߬ ߓߍ߯ ߓߐ߫ ߊ߬ ߟߊ߫ ߝߟߐ߫߹ Search ߊ߬ ߢߌߣߌ߲߫ Confirmation ߟߊ߬ߘߌ߬ߢߍ߬ߟߌ Are you sure to delete all cookies on your computer? ߦߴߊ߬ ߝߍ߬ ߞߊ߬ ߛߊ߲߬ߓߊ ߓߍ߯ ߟߋ߬ ߖߐ߬ߛߵߌ ߟߊ߫ ߕߟߋ߬ߓߊ ߟߊ߫ ߝߋߎ߫؟ Secure only ߊ߬ ߟߊߞߊ߲ߘߊ߫ ߘߐߙߐ߲߫ All connections ߜߊ߲߬ߞߎ߲߬ߠߌ ߓߍ߯ Session cookie ߞߎ߲߬ߘߊ ߛߊ߲߬ߓߊ Remove cookie ߛߊ߲߬ߓߊ ߖߐ߬ߛߌ߬ Add to whitelist ߊ߬ ߝߙߊ߬ ߛߙߍߘߍ߫ ߜߍ ߟߊ߫ Add to blacklist ߊ߬ ߝߙߊ߬ ߛߙߍߘߍ߫ ߝߌ߲ ߠߊ߫ DownloadFileHelper Save file as... ߞߐߕߐ߯ߘߐ ߟߊߞߎ߲߬ߘߎ߫ ߕߊ߲߬... NoNameDownload ߟߊ߬ߖߌ߰ߟߌ߬ ߕߐ߯ߒߕߊ߲ DownloadItem Remaining time unavailable ߕߎ߬ߡߊ ߕߐ߭ ߛߐ߬ߘߐ߲߬ߓߊߟߌ Error: Cannot write to file! ߝߌ߬ߟߌ: ߛߓߍߟߌ߫ ߕߍ߫ ߛߐ߲߬ ߞߍ߫ ߟߊ߫ ߞߐߕߐ߯ߘߐ ߘߐ߫߹ Done - %1 ߊ߬ ߞߍ߫ - %1 Cancelled ߘߐ߬ߛߊ߬ߣߍ߲ few seconds ߝߌߟߊ߲߫ ߘߊ߲ߘߐ߫ %n seconds %n minutes %n hours Unknown speed ߓߏ߬ߙߌ߬ߛߋ߲߬ ߟߐ߲ߓߊߟߌ kB/s ߥ.ߛ\ߝ MB/s ߞ.ߛ\ߝ GB/s ߝ.ߛ\ߝ Unknown size ߢߊ߲ߞߊ߲߫ ߟߐ߲ߓߊߟߌ %2 - unknown size (%3) %2 - ߢߊ߲ߞߊ߲ ߟߐ߲ߓߊߟߌ (%3) Remaining %1 - %2 of %3 (%4) ߊ߬ ߕߐ߭ %1 - %2 ߞߵߏ߬ ߓߐ߫ %3 (%4) ߘߐ߫ Cancelled - %1 ߘߐ߬ߛߊ߬ߣߍ߲ - %1 Delete file ߞߐߕߐ߯ߘߐ ߖߐ߬ߛߌ߬ Do you want to also delete dowloaded file? ߦߴߊ߬ ߝߍ߬ ߞߊ߬ ߞߐߕߐ߯ߘߐ ߟߊߖߌ߰ߣߍ߲ ߠߎ߬ ߝߣߊ߫ ߖߐ߬ߛߌ߫ ߟߋ߬ ߢߍ؟ Open File ߞߐߕߐ߯ߘߐ ߘߊߦߟߍ߬ Open Folder ߞߐߕߐ߮ ߘߊߦߟߍ߬ Go to Download Page ߕߊ߯ ߟߊ߬ߖߌ߰ߟߌ߬ ߞߐߜߍ ߘߐ߫ Copy Download Link ߟߊ߬ߖߌ߰ߟߌ߬ ߛߘߌߜߋ߲ ߓߊߓߌߟߊ߫ Cancel downloading ߟߊ߬ߖߌ߰ߟߌ ߘߐߛߊ߬ Remove ߊ߬ ߖߐ߬ߛߌ߬ Error ߝߌ߬ߟߌ Not found ߛߐ߬ߘߐ߲߬ߓߊߟߌ Sorry, the file %1 was not found! ߥߊߦߌߞߊ߬߸ ߞߐߕߐ߯ߘߐ %1 ߡߊ߫ ߛߐ߬ߘߐ߲߬߹ Error: ߝߌ߬ߟߌ: DownloadManager Download Manager ߟߊ߬ߖߌ߰ߟߌ ߞߎ߲߬ߠߊ߬ߛߌ߰ߟߊ Clear ߊ߬ ߖߐ߬ߛߌ߬ %1% of %2 files (%3) %4 remaining ߞߐߕߐ߯ߘߐ %1% ߘߐ߫ %2 ߊ߬ ߕߐ߭ (%3) %4 %1% - Download Manager %1% - ߟߊ߬ߖߌ߰ߟߌ ߞߎ߲߬ߠߊ߬ߛߌ߰ߟߊ Download Finished ߟߊ߬ߖߌ߰ߟߌ ߓߘߊ߫ ߓߊ߲߫ All files have been successfully downloaded. ߞߐߕߐ߯ߘߐ ߓߍ߯ ߓߘߊ߫ ߟߊߖߌ߰ ߞߏߢߊ߬. Warning ߖߊ߲߬ߕߏ߬ߟߌ Are you sure to quit? All uncompleted downloads will be cancelled! ߓߐߟߌ߫ ߟߐ߮ ߟߵߌ ߟߊ߫ ߝߋߎ߫؟ ߟߊ߬ߖߌ߰ߟߌ߬ ߓߊ߲ߓߊߟߌ ߟߎ߬ ߘߌ߫ ߘߐߛߊ߬ ߏ߬ ߘߐ߫ ߘߋ߬߹ DownloadOptionsDialog Opening ߘߊߦߟߍߟߌ Copy download link ߟߊ߬ߖߌ߰ߟߌ߬ ߛߘߌߜߋ߲ ߓߊߓߌߟߊ߫ You have chosen to open ߌ ߓߘߊ߫ ߘߊߦߟߍߟߌ ߛߎߥߊ߲ߘߌ߫ which is a: ߏ߬ ߦߋ߫ ߞߋߟߋ߲߫: What should QupZilla do with this file? ߦߴߊ߬ ߝߍ߬ ߞߎߖ߭ߌߟߌ ߦߋ߫ ߡߎ߲߬ ߞߍ߫ ߞߐߕߐ߯ߘߐ ߣߌ߲߬ ߠߊ߫؟ Open... ߊ߬ ߘߊߦߟߍ߬ Save File ߞߐߕߐ߯ߘߐ ߟߊߞߎ߲߬ߘߎ߬ Download with External Manager ߊ߬ ߟߊߖߌ߰ ߞߐߞߊ߲߫ ߞߎߠߊߛߌ߯ߟߊ ߝߍ߬ from: ߞߊ߬ ߝߙߊ߫: Opening %1 %1 ߘߊߦߟߍߟߌ Download link copied. ߟߊ߬ߖߌ߰ߟߌ߬ ߛߘߌߜߋ߲ ߓߘߊ߫ ߓߊߓߌߟߊ߫ EditSearchEngine Name: ߕߐ߮: Url: ߛߘߌ߬ߜߋ߲ Shortcut: ߛߌߟߊߛߎߘߎ߲ Icon: ߕߐ߯ߡߊߦߋߙߋ߲: <b>Note: </b>%s in url or post data represent searched string <b>ߦߟߌߣߐ: </b> ߖߟߎ߬ߡߊ߬ ߢߌߣߌ߲ߣߍ߲ %s ߥߟߊ߫ ߞߐߟߊ߫ ߟߐ߲ߕߊ ߦߋ߫ ߛߘߌ߬ߜߋ߲ ߘߐ߫ Post Data: ߞߐߟߊ߫ ߟߐ߲ߕߊ: Change... ߊ߬ ߡߊߝߊ߬ߟߋ߲߬... FileSchemeReply No Error ߝߟߌ߬ ߕߍ߫ Up to higher level directory ߦߟߍ߬ ߓߏߟߏ߲ߓߐ ߟߎ߬ ߘߐ߫ Show hidden files ߞߐߕߐ߯ߘߐ߫ ߢߡߊߘߏ߲߰ߣߍ߲ ߠߎ߬ ߟߊߟߐ߲߫ Name ߕߐ߮ Size ߢߊ߲ߞߊ߲ Last modified ߡߝߊ߬ߟߋ߲߬ߠߌ߬ ߟߊߓߊ߲ Index for %1 ߊ߬ ߕߐ߬ߡߊ߬ߛߙߋ߬ %1 ߢߍ߫ Folder is empty. ߞߐߕߐ߮ ߓߘߊ߫ ߘߐߞߊ߬. FtpDownloader Cancelled! ߘߐ߬ߛߊ߬ߣߍ߲߹ FtpSchemeReply Up to higher level directory ߦߟߍ߬ ߓߏߟߏ߲ߓߐ ߟߎ߬ ߘߐ߫ Show hidden files ߞߐߕߐ߯ߘߐ߫ ߢߡߊߘߏ߲߰ߣߍ߲ ߠߎ߬ ߟߊߟߐ߲߫ Name ߕߐ߮ Size ߢߊ߲ߞߊ߲ Last modified ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߬ ߟߊߓߊ߲ Index for %1 ߊ߬ ߕߐ߬ߡߊ߬ߛߙߋ߬ %1 ߢߍ߫ Folder is empty. ߞߐߕߐ߮ ߓߘߊ߫ ߘߐߞߊ߬. Unknown command ߡߊ߬ߞߟߌ߬ߟߌ߬ ߟߐ߲ߓߊߟߌ HTML5PermissionsDialog HTML5 Permissions ߞߟߏߜߍߛߘߌ߫ ߡߊߜߍ߲ ߝߐߞߊ߲ ߅ ߘߌ߬ߢߍ߬ߟߌ ߟߎ߬ Notifications ߦߟߌߣߐߦߊߟߌ ߟߎ߬ Site ߞߍߦߙߐ Behaviour ߖߏ߮ Remove ߊ߬ ߖߐ߬ߛߌ߬ Geolocation ߘߎ߰ ߦߌߟߊߟߐ߲ Allow ߊ߬ ߟߊߘߌ߬ߢߍ߬ Deny ߌ ߓߊ߲߬ HTML5PermissionsNotification Remember ߌ ߦߟߌߕߐ߫ Allow ߊ߬ ߟߊߘߌ߬ߢߍ߬ Deny ߌ ߓߊ߲߬ this site ߞߍߦߙߐ ߣߌ߲߬ Allow %1 to show desktop notifications? ߞߊ߬ %1 ߕߏ߫ ߊ߬ ߦߋ߫ ߛߓߍߘߊ ߦߟߌߣߐߦߊ ߟߎ߬ ߟߊߟߐ߲߫ ߢߍ؟ Allow %1 to locate your position? ߞߊ߬ %1 ߕߏ߫ ߊ߬ ߦߴߌ ߞߍߦߙߐ ߦߌ߬ߘߊ߬؟ History No Named Page ߞߐߜߍ߫ ߕߐ߯ߟߓߊߟߌ January ߓߌ߲ߠߊߥߎߟߋ߲ February ߞߏ߲ߞߏߜߍ March ߕߙߊߓߊ April ߞߏ߲ߞߏߘߓߌ May ߘߓߊ߬ߕߊ June ߛߊ߬ߥߌ߬ߥߙߊ July ߞߊ߬ߙߌ߬ߝߐ August ߘߓߊ߬ߓߌߟߊ September ߕߎߟߊߝߌ߲ October ߞߏ߲ߓߌߕߌ߮ November ߣߍߣߍߓߊ December ߞߏߟߌ߲ߞߏߟߌ߲ HistoryManager History ߞߊ߬ߞߘߐ Delete ߊ߬ ߖߐ߬ߛߌ߬ Clear All History ߞߊ߬ߞߘߐ ߟߎ߬ ߓߍ߯ ߖߐ߬ߛߌ߬ Optimize Database ߟߐ߲ߕߊߓߘߐ ߟߊߢߊ߬ Confirmation ߟߊ߬ߘߌ߬ߢߍ߬ߟߌ Are you sure to delete all history? ߦߴߊ߬ ߝߍ߬ ߞߊ߬ ߞߊ߬ߞߘߐ ߓߍ߯ ߖߐ߬ߛߌ߫ ߟߋ߬ ߝߋߎ߫؟ HistoryModel Title ߛߟߊߟߊ Address ߛߊ߲߬ߓߊ߬ߕߐ߮ Visit Date ߝߟߍߟߌ߫ ߕߎߡߊ Visit Count ߘߐ߬ߜߍ߬ߟߌ ߖߊ߬ߕߋ Today ߓߌ߬ This Week ߟߐ߯ߕߍ ߣߌ߲߬ This Month ߛߊ߲߬ߓߏߟߏ߲ ߣߌ߲߬ HistorySideBar Search... ߊ߬ ߢߌߣߌ߲߫... HistoryView Open link in current tab ߛߘߌ߬ߜߋ߲ ߘߊߦߟߍ߬ ߛߏ߬ߙߌ߲߬ߘߐ ߣߌ߲߬ ߘߐ߫ Open link in new tab ߛߘߌ߬ߜߋ߲ ߘߊߦߟߍ߬ ߛߏ߬ߙߌ߲߬ߘߐ߬ ߞߎߘߊ߫ ߘߐ߫ Copy title ߛߟߊߟߊ ߓߊߓߌߟߊ߫ Copy address ߛߊ߲߬ߓߊ߬ߕߐ߮ ߓߊߓߌߟߊ߫ Remove ߊ߬ ߖߐ߬ߛߌ߬ IconChooser Choose icon... ߕߐ߯ߡߊߦߋߙߋ߲ ߛߎߥߊ߲ߘߌ߫... From file ߞߊ߬ ߝߙߊ߫ ߞߐߕߐ߯ߘߐ ߟߊ߫ Image (.png, .jpg, .jpeg, .gif) ߖߌ߬ߦߊ ߡߍ߲ ߠߎ߫ ߖߊ߬ߡߎ߲ ߦߋ߫ ߕߊ߲߬ (.png, .jpg, .jpeg, .gif) Choose file... ߞߐߕߐ߯ߘߐ ߛߎߥߊ߲ߘߌ߫ From database ߞߊ߬ ߝߙߊ߫ ߟߐ߲ߕߊߓߘߐ ߟߊ߫ Site Url: ߞߍߦߙߐ ߛߘߌ߬ߜߋ߲ Image files ߖߌ߬ߦߊ ߞߐߕߐ߯ߘߐ ߟߎ߬ JsOptions JavaScript Options ߖ߭ߝ߭ߊߣߐ߬ߣߐ߬ߟߊ ߢߣߊߕߊߟߌ ߟߎ߬ Allow JavaScript to: ߖ߭ߝ߭ߊߣߐ߬ߣߐ߬ߟߊ ߟߊߘߌ߬ߢߍ߬ ߞߊ߬: Close windows ߝߢߐߘߊ ߟߎ߬ ߕߎ߲߯ Open popup windows ߝߢߐߘߊߙߋ߲ ߠߎ߬ ߘߊߦߟߍ߬ Change window size ߝߢߐߘߊ ߟߐ߬ߜߊ߲ ߡߊߝߊ߬ߟߋ߲߬ Hide menu bar ߟߐ߬ߥߟߊ߬ ߡߙߎߝߋ ߢߡߊߕߎ߲߯ Hide status bar ߛߌ߰ߞߊ߲߬ ߡߙߎߝߋ ߢߡߊߕߎ߲߯ Hide tool bar ߖߐ߯ߙߊ߲߫ ߡߙߎߝߋ ߢߡߊߕߎ߲߯ Access clipboard ߞߓߊ߬ߞߘߐ߬ߘߏ߲ ߡߊߛߐ߬ߘߐ߲߬ LicenseViewer License Viewer ߟߊ߬ߘߌߢߍ ߦߋߟߊ߲ LocationBar Enter URL address or search on %1 ߛߘߌ߬ߜߋ߲ ߛߊ߬ߓߊ߬ߕߐ߮ ߟߊߘߏ߲߬ ߥߟߊ߫ ߦߴߊ߬ ߢߌߣߌ߲߫ %1 ߟߊ߫ Paste And &Go ߊ߬ ߣߙߊ߫ ߞߵߊ߬ ߢߌߣߌ߲߫ Clear All ߊ߬ ߓߍ߯ ߖߐ߬ߛߌ߬ .co.uk Append domain name on ALT + Enter = Should be different for every country .nqo Show information about this page ߞߐߜߍ ߣߌ߲߬ ߞߌ߬ߓߊ߬ߙߏ ߟߊߟߐ߲߫ LocationCompleterView Switch to tab ߛߏ߬ߙߌ߲߬ߘߐ ߟߎ߬ ߟߊߡߌ߬ߣߊߡߌ߬ߣߊ߬ MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? ߞߎߖ߭ߌߟߊ ߕߴߌ ߟߊ߫ ߛߏ߲߯ߓߊߟߊ߲ ߖߏߣߡߊ ߟߋ߬ ߘߌ߫ ߕߋ߲߬. ߦߴߊ߬ ߝߍ߬ ߞߵߊ߬ ߞߌ߫ ߟߊ߫ ߛߏ߲߯ߓߊߟߊ߲߫ ߖߏߣߡߊ ߘߌ߫ ߓߊ߬؟ Always perform this check when starting QupZilla. ߞߊ߬ ߛߊߞߍߟߌ ߣߌ߲߬ ߞߍ߫ ߞߎߖ߭ߌߟߊ ߟߊߥߟߌ߬ ߕߎߡߊ ߓߍ߯ ߟߊ߫. Default Browser ߛߏ߲߯ߓߊߟߊ߲߫ ߖߏߣߡߊ QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. ߞߎߖ߭ߌߟߊ ߦߋ߫ ߛߎ߲-ߘߊߦߟߍ ߛߏ߲߯ߓߊߟߊ߲ ߞߎߘߊ ߟߋ߬ ߘߌ߫ ߡߍ߲ ߠߊߞߊ߲ߘߊߣߍ߲ ߞߏߛߓߍ߫. ߞߎߖ߭ߌߟߊ ߟߊ߬ߘߌߢߍ ߝߙߊߣߍ߲ ߞߙߎ ߝߘߏ߬ߓߊ߬ ߟߊߘߌߢߍ ߞ.ߝ.ߟ ߟߋ߬ ߟߊ߫ ߊ߬ ߓߐߞߏ ߃ߣߊ߲ ߣߴߏ߬ ߛߊ߲ߘߐߕߊ ߟߎ߬ ߞߊ߬ߣߌ߲߬. ߊ߬ ߓߎ߲ߓߎ߲ߣߍ߲߫ WebKit ߞߟߏ ߣߌ߫ Qt Framework ߟߋ߫ ߡߊ߬. MasterPasswordDialog Encrypted DataBase Settings ߟߐ߲ߕߊߓߘߐ ߦߙߍߞߍߟߌ ߞߐߕߐ߯ߘߐߛߙߋ ߟߎ߬ Set/Change Master Password... ߞߎ߲߬ߕߌ߰ ߕߊߡߌ߲ߞߊ߲ ߡߊߦߟߍ߬ߡߊ߲߬... Clear Master Password... ߞߎ߲߬ߕߌ߰ ߕߊߡߌ߲ߞߊ߲ ߖߐ߬ߛߌ߬... This backend does not work without a master password. ߟߊ߬ߞߎߙߊ߲ ߣߌ߲߬ ߕߍ߫ ߛߋ߫ ߓߊ߯ߙߊ߫ ߟߊ߫ ߞߎ߲߬ߕߌ߰ ߕߊߡߌ߲ߞߊ߲ ߞߐ߫ This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. ߢߣߊߕߊߟߌ ߣߌ߲߬ ߦߋ߫ ߞߎ߲߬ߕߌ߰ ߕߊߡߌ߲ߞߊ߲ ߖߐ߬ߛߌ߬ ߟߊ߫ ߟߋ߬ ߊ߬ ߣߌ߫ ߞߊ߬ ߟߐ߲ߕߊ ߦߙߍߞߍߣߍ߲ ߖߐ߬ߛߌ߬ ߞߵߊ߬ ߓߐ߫ "ߟߐ߲ߕߊߓߘߐ (ߞߟߏߜߍ߫ ߛߏߘߊ)" ߟߊ߬ߞߎߙߊ߲ ߘߐ߫߸ ߊ߬ ߣߌ߫ ߞߵߊ߬ߟߎ߬ ߟߊߕߊ߬ߡߌ߲߬. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. ߞߎ߲߬ߕߌ߰ ߕߊߡߌ߲ߞߊ߲ ߦߋ߫ ߞߍ߫ ߟߊ߫ ߞߊ߬ ߞߍߦߙߐ ߟߋ߬ ߟߊߞߊ߲ߘߊ߫ ߟߊ߫ ߊ߬ ߣߴߊ߬ ߟߐ߲ߕߊ ߟߎ߬. ߣߴߌ ߞߊ߬ ߞߎ߲߬ߕߌ߰ ߕߊߡߌ߲ߞߊ߲ ߡߊߦߟߍ߬ߡߊ߲߬ ߌ ߘߌ߫ ߢߌ߬ߣߌ߲߬ߞߊ߫ ߊ߬ ߟߊ߫ ߞߎ߲߬ߘߊ ߟߎ߬ ߟߊ߫ ߛߋ߲ߢߊ߬ ߞߋߟߋ߲߫. Current Password: ߛߋ߲߬ߠߊ߬ ߕߊߡߌ߲ߞߊ߲: New Password: ߕߊ߬ߡߌ߲߬ߞߊ߲߬ ߞߎߘߊ: Confirm Password: ߕߊ߬ߡߌ߲߬ߞߊ߲ ߛߓߍ߫ ߌߞߐ߫: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. <b>ߦߟߌߣߐ:</b> ߞߎ߲߬ߕߌ߰ ߕߊߡߌ߲ߞߊ߲ ߕߍ߫ ߛߋ߫ ߟߊߞߎߘߦߊ߫߸ ߏ߬ ߘߐ߫ ߌ ߞߣߊ߫ ߢߌ߬ߣߵߊ߬ ߞߐ߫ ߖߊ߰ߣߌ߬. Warning! ߖߊ߲߬ߕߏ߬ߟߌ߹ You entered a wrong password! ߌ ߓߘߊ߫ ߕߊ߬ߡߌ߲߬ߞߊ߬ ߞߏߙߏ߲ ߘߏ߫ ߟߋ߬ ߟߊߘߏ߲߬ ߣߌ߲߬߹ New/Confirm password fields do not match! ߕߊ߬ߡߌ߲߬ߞߊ߲ ߞߎߘߊ ߥߟߴߊ߬ ߟߊߘߌ߬ߢߍ߬ߟߌ ߡߊ߫ ߓߍ߲߬߹ Some data has not been decrypted. The master password was not cleared! ߟߐ߲ߕߊ ߘߏ߫ ߟߎ߫ ߡߊ߬ ߦߙߍߞߍ߫. ߞߎ߲߬ߕߌ߰ ߕߊߡߌ߲ߞߊ߲ ߡߊ߫ ߖߐ߬ߛߌ߬߹ Are you sure to clear master password and decrypt data? ߦߴߊ߬ ߝߍ߬ ߞߊ߬ ߞߎ߲߬ߕߌ߰ ߕߊߡߌ߲ߞߊ߲ ߣߌ߫ ߟߐ߲ߕߊ߫ ߦߙߍߞߍߓߊߟߌ ߖߐ߬ߛߌ߫ ߟߋ߬ ߢߍ؟ NavigationBar No Named Page ߕߐ߮ ߕߍ߫ ߞߐߜߍ ߟߊ߫ Back ߛߊ߬ߦߌ߲߬ Forward ߟߊ߬ߕߎ߲߬ߠߊ Home ߓߏ߬ߟߏ߲ New Tab ߛߏ߬ߙߌ߲߬ߘߐ߬ ߞߎߘߊ Main Menu ߟߐ߬ߥߟߊ߬ ߢߣߊߡߊ Exit Fullscreen ߓߐ߫ ߥߊ߲߬ߥߊ߬ߝߊ ߘߐ߫ Clear history ߞߊ߬ߞߘߐ ߖߐ߬ߛߌ߬ NetworkManager SSL Certificate Error! ߓߟߐߟߐ ߥߏ߬ߦߏ ߟߊߞߊ߲ߘߊߟߊ߲ ߟߊߜߍߟߌ ߝߌ߬ߟߌ߹ The page you are trying to access has the following errors in the SSL certificate: ߦߴߊ߬ ߝߍ߬ ߞߊ߬ ߞߐߜߍ ߡߍ߲ ߠߊߛߐ߬ߘߐ߲߫ ߣߌ߲߬߸ ߝߌ߬ߟߌ ߡߍ߲߬ ߠߎ߬ ߟߋ߬ ߊ߬ ߓߟߐߟߐ߫ ߥߦߏ ߟߊߞߊ߲ߘߊ ߟߊߜߍߟߊ߲ ߘߐ߫: <b>Organization: </b> <b>ߛߌ߲߬ߝߏ߬ߧߊ߬ߟߌ: </b> <b>Domain Name: </b> <b>ߡߙߊ߬ߘߊ ߕߐ߮: </b> <b>Expiration Date: </b> <b>ߓߊ߲߫ ߕߎߡߊ: </b> <b>Error: </b> <b>ߝߌ߬ߟߌ: </b> Would you like to make an exception for this certificate? ߦߴߊ߬ ߝߍ߬ ߞߊ߬ ߟߊ߬ߜߍ߬ߟߊ߲ ߣߌ߲߬ ߞߍ߫ ߢߌ߬ߣߊ߬ߓߐ߬ߕߊ ߘߏ߫ ߟߋ߬ ߘߌ߫ ߢߍ؟ Authorisation required ߟߊ߬ߘߌ߬ߢߍ߬ߟߌ߫ ߢߊ߲߬ߞߐ߬ߓߊߟߌ Username: ߟߐ߲ߕߐ߮: Password: ߕߊ߬ߡߌ߲߬ߞߊ߲: Save username and password on this site ߟߐ߲ߕߐ߮ ߣߌ߫ ߕߊ߬ߡߌ߲߬ߞߊ߲ ߠߊߞߎ߲߬ߘߎ߬ ߞߍߦߙߐ ߣߌ߲߬ ߢߍ߫ A username and password are being requested by %1. The site says: "%2" ߟߐ߲ߕߐ߮ ߣߌ߫ ߕߊ߬ߡߌ߲߬ߞߊ ߢߌߣߌ߲ߣߍ߲߫ %1 ߓߟߏ߫. ߞߍߦߙߐ ߞߊ߲߫ ߞߏ߫: "%2" FTP authorisation required ߞߐߕߐ߯ߘߐ ߟߊߘߌ߫ ߝߐߞߊ߲ ߟߊ߬ߘߌ߬ߢߍ߬ߟߌ ߟߊߢߌߣߌ߲ߣߍ߲߫ Login anonymously ߜߊ߲߬ߞߎ߲߬ߠߌ߬ ߕߐ߯ߒߕߊ߲ A username and password are being requested by %1:%2. ߟߐ߲ߕߐ߮ ߣߌ߫ ߕߊ߬ߡߌ߲߬ߞߊ ߢߌߣߌ߲ߣߍ߲߫ %1 ߓߟߏ߫: %2. Proxy authorisation required ߕߍߟߐ ߟߊ߬ߘߌ߬ߢߍ߬ߟߌ ߟߊߢߌߣߌ߲ߣߍ߲߫ Remember username and password for this proxy. ߌ ߦߟߌߕߏ߫ ߟߐ߲ߕߐ߮ ߣߌ߫ ߕߊ߬ߡߌ߲߬ߞߊ߲ ߘߐ߫ ߕߍߟߐ ߣߌ߲߬ ߢߍ߫. A username and password are being requested by proxy %1. ߟߐ߲ߕߐ߮ ߣߌ߫ ߕߊ߬ߡߌ߲߬ߞߊ ߢߌߣߌ߲ߣߍ߲߫ ߕߍߟߐ %1 ߓߟߏ߫. PageScreen Page Screen ߥߊ߲߬ߥߊ߬ ߜߌߙߌ߲ߘߌ Format: ߖߐ߬ߢߊ Location: ߘߊ߫ ߦߙߐ: Browse... ߊ߬ ߛߏ߲߯ߓߊ߫ Save as %1 ߊ߬ ߟߊߞߎ߲߬ߘߎ߬ %1 ߘߌ߫ Choose location... ߊ߬ ߦߌߟߊ ߛߎߥߊ߲ߘߌ߫... File '%1' already exists. Do you want to overwrite it? ߞߐߕߐ߯ߘߐ '%1' ߓߍ߫ ߦߋ߲߬ ߞߊ߬ ߓߊ߲߫؟ ߦߴߊ߬ ߝߍ߬ ߞߵߊ߬ ߘߐߖߍ߲ߛߍ߲߫ ߠߋ߬؟ File already exists ߞߐߕߐ߯ߘߐ ߣߌ߲߬ ߓߍ߫ ߦߋ߲߬ ߞߊ߬ ߓߊ߲߫ PluginsList Application Extensions ߓߟߏߦߊߟߌ ߖߊ߬ߡߎ߲ ߠߎ߬ Allow Application Extensions to be loaded ߞߎߖ߭ߌߟߊ ߕߏ߫ ߊ߬ ߦߴߊ߬ ߖߊ߬ߡߎ߲ ߠߎ߬ ߟߊߦߟߍ߬ Settings ߞߐߕߐ߯ߘߐߛߙߋ ߟߎ߬ WebKit Plugins ߓߟߐߟߓߐߘߐ ߛߐߙߐ߲ߕߊ ߟߎ߬ <b>Click To Flash Plugin</b> <b>ߊ߬ ߛߐ߲߬ߞߌ߲߬ ߦߟߋߞߎ ߛߐߙߐ߲ߝߍ ߢߍ߫</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. ߦߟߋߞߎߛߐ߲ߞߌ߲ ߦߋ߫ ߖߊ߬ߡߎ߲߬ ߠߋ߬ ߘߌ߫ ߡߍ߲ ߞߐߜߍ ߟߎ߬ ߞߣߐߘߐ߫ ߦߟߋߞߎ ߟߎ߬ ߟߊߦߟߍ߬ ߟߴߊ߬ ߖߘߍ߬ ߢߍ߫. ߌ ߘߌ߫ ߛߴߊ߬ ߟߊߦߟߍ߬ ߟߊ߫ ߌ ߓߟߏ߫ ߟߊ߫ ߊ߬ ߛߐ߲߬ߞߌ߲ ߘߐ߫ ߦߟߋߞߎ߫ ߘߐߞߊߙߊ߲߫ ߞߘߎ ߞߊ߲߬. Whitelist ߛߙߍߘߍ߫ ߜߍ Add ߊ߬ ߝߙߊ߬ Remove ߊ߬ ߖߐ߬ߛߌ߬ Allow Click To Flash ߦߟߋߞߎߛߐ߲ߞߌ߲ ߠߊߘߌ߬ߢߍ߬ PluginsManager Add site to whitelist ߞߍߦߙߐ ߝߙߊ߬ ߛߙߍߘߍ߫ ߜߍ ߘߐ߫ Server without http:// (ex. youtube.com) ߛߐߘߊ ߞߟߏߜߍ߫ ߛߘߌߜߋ߲ ߟߊߕߊ߯ ߝߐߞߊ߲ ߕߍ߫ ߡߍ߲ ߠߊ߫ ߡߌ߬ߛߊ߬ߟߌ߬ ߘߐ߫ (ex. youtube.com) Error! ߝߌ߬ߟߌ߹ Cannot load extension! ߖߊ߬ߡߎ߲ ߕߍ߫ ߛߐ߲߬ ߟߊߦߟߍ߬ ߟߊ߫ PopupWebView Inspect Element ߝߌ߬ߛߌ ߜߋߟߎ߲߫ PopupWindow File ߞߐߕߐ߯ߘߐ &Save Page As... ߞߐߜߍ ߟߊߞߎ߲߬ߘߎ߫ ߕߊ߲߬... Save Page Screen ߥߊ߲߬ߥߊ߲߬ ߜߌߙߌ߲ߘߌ ߟߊߞߎ߲߬ߘߎ߬ Send Link... ߛߘߌ߬ߜߋ߲ ߠߊߕߊ߯... &Print... ߊ߬ ߜߌ߬ߙߌ߲߬ߘߌ... Close ߊ߬ ߘߊߕߎ߲߯ Edit ߊ߬ ߡߊߦߟߍ߬ߡߊ߲߬ &Undo ߊ߬ ߘߐߛߊ߬ &Redo ߘߐ߬ߛߊ ߘߐߛߊ߬ &Cut ߊ߬ ߕߍ߰ C&opy ߊ߬ ߓߊߓߌߟߊ߫ &Paste ߊ߬ ߣߙߊ߬ Select All ߊ߬ ߓߍ߯ ߓߊߕߐߡߐ߲߫ Find ߊ߬ ߢߌߣߌ߲߫ View ߦߋߘߊ &Stop ߊ߬ ߟߊߟߐ߬ &Reload ߊ߬ ߢߟߊߕߍ߰ Zoom &In ߊ߬ ߟߊߓߏ߲߬ߧߊ߬ Zoom &Out ߊ߬ ߟߊߘߐ߯ߦߊ߫ Reset ߊ߬ ߟߊߞߎߘߦߊ߫ &Page Source ߞߐߜߍ ߛߎ߲ %1 - QupZilla %1 - ߞߎߖ߭ߌߟߊ Preferences Preferences ߢߣߊߕߊ ߟߎ߬ QupZilla ߞߎߖ߭ߌߟߊ General ߝߘߏ߬ߓߊ Appearance ߦߋߢߊ Tabs ߛߏ߬ߙߌ߲߬ߘߐ ߟߎ߬ Browsing ߛߏ߲߯ߓߊߟߌ Fonts ߛߓߍߢߌ߲ ߠߎ߬ Keyboard Shortcuts ߛߓߍߘߋ߲ߥߟߊ ߛߌߟߊߛߎߘߎ߲ Downloads ߟߊ߬ߖߌ߰ߟߌ ߟߎ߬ Password Manager ߕߊ߬ߡߌ߲߬ߞߊ߲ ߞߎ߬ߠߊ߬ߛߌ߰ߟߊ Privacy ߘߎ߲߬ߘߎ߬ߡߊ߲ Notifications ߦߟߌ߬ߣߐ߬ߦߊ ߟߎ߬ Extensions ߖߊ߬ߡߎ߲ ߠߎ߬ Other ߜߘߍ߫ Use current ߛߋ߲߬ߠߊ߬ ߞߐߜߍ Note: You cannot delete active profile. ߦߟߌߣߐ: ߌ ߕߍ߫ ߛߋ߫ ߢߊߞߙߍ߫ ߟߊߓߊ߯ߙߊߣߍ߲ ߖߐ߬ߛߌ߬ ߟߊ߫. Create New ߞߎߘߊ߫ ߛߌ߲ߘߌ߫ Delete ߊ߬ ߖߐ߬ߛߌ߬ <b>Launching</b> <b>ߟߊ߬ߥߟߌ߬ߟߌ</b> After launch: ߟߊߥߟߌ߬ߟߌ ߞߐ߫: Open blank page ߞߐߜߍ߫ ߜߍߡߊ߲ ߘߊߦߟߍ߬ Open homepage ߟߊ߬ߛߣߍ߬ߟߌ߬ ߞߐߜߍ ߘߊߦߟߍ߬ Open speed dial ߞߌߟߌ߫ ߞߊߟߌ߲ ߘߊߦߟߍ߬ Restore session ߞߎ߲߬ߘߊ ߟߊߛߊ߬ߦߌ߬ Homepage: ߟߊ߬ߛߣߍ߬ߟߌ߬ ߞߐߜߍ: On new tab: ߛߏ߬ߙߌ߲߬ߘߐ߬ ߞߎߘߊ ߘߐ߫: Open blank tab ߛߏ߬ߙߌ߲߬ߘߐ߬ ߜߍ ߘߊߦߟߍ߬ Open other page... ߞߐߜߍ߫ ߜߘߍ߫ ߘߊߦߟߍ߬... <b>Profiles</b> <b>ߢߊߞߙߍ ߟߎ߬</b> Startup profile: ߟߊ߬ߥߟߌ߬ߟߌ ߢߊߞߙߍ: Check for updates on start ߟߏ߲ߘߐߦߊߟߌ ߟߎ߬ ߛߊߞߍ߫ ߟߊߥߟߌ߬ߟߌ ߘߐ߫ Active profile: ߢߊߞߙߍ߫ ߟߊߓߊ߯ߙߊߣߍ߲: In order to change language, you must restart browser. ߣߴߌ ߦߴߊ߬ ߝߍ߬ ߞߊ߲ ߦߋ߫ ߡߊߝߊ߬ߟߋ߲߬߸ ߝߴߌ ߦߋ߫ ߛߏ߲߯ߓߊߟߊ߲ ߠߊߥߌ߬ߟߌ ߟߵߏ߬ ߘߐ߫. <b>Language</b> <b>ߞߊ߲</b> Available translations: ߘߟߊߡߌߣߊߟߌ ߡߊߛߐ߬ߘߐ߲߬ߣߍ߲ ߠߎ߬: Don't load tabs until selected ߛߏ߬ߙߌ߲߬ߘߐ߬ ߓߊߕߐߡߐ߲ߓߊߟߌ ߝߋ߲߫ ߞߊ߫ ߟߊߦߟߍ߬ Check to see if QupZilla is the default browser on startup ߊ߬ ߡߊߝߟߍ߫ ߣߌ߫ ߞߎߖ߭ߌߟߊ ߦߴߌ ߟߊ߫ ߛߏ߲߯ߓߊߟߊ߲ ߖߏߣߡߊ ߟߋ߬ ߘߌ߫ Check Now ߊ߬ ߛߊߞߍ߫ ߛߍߣߍ߲߬ Themes ߘߊߞߎ߲ ߠߎ߬ Advanced options ߢߣߊߕߊߟߌ ߢߍߕߊ ߟߎ߬ <b>Browser Window</b> <b>ߛߏ߲߯ߓߊߟߌ ߝߢߐߘߊ</b> Show StatusBar on start ߛߌ߰ߞߊ߲߬ ߡߙߎߝߋ ߟߊߟߐ߲߫ ߟߊ߬ߟߥߟߌ߬ߟߌ ߘߐ߫ Show Bookmarks ToolBar on start ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߡߙߎߝߋ ߟߊߟߐ߲߫ ߟߊ߬ߥߟߌ߬ߟߌ ߘߐ߫ Show Navigation ToolBar on start ߛߏ߲߯ߓߊߟߌ߫ ߡߙߎߝߋ ߟߊߟߐ߲߫ ߟߊ߬ߥߟߌ߬ߟߌ ߘߐ߫ <b>Navigation ToolBar</b> <b>ߛߏ߲߯ߓߊߟߌ߫ ߡߙߎߝߋ</b> Show Home button ߓߏ߬ߟߏ߲ ߞߎ߬ߘߎ ߟߊߟߐ߲߫ Show Back / Forward buttons ߛߊ߬ߦߌ߬ߟߌ\ߟߊ߬ߕߎ߲߬ߠߊ ߞߎ߬ߘߎ ߟߊߟߐ߲߫ <b>Background<b/> <b>ߢߊߞߕߐߡߊ<b/> Use transparent background ߢߊߞߕߐߡߊ߫ ߢߊߘߐߛߊ߲ߠߊ ߟߊߓߊ߯ߙߊ߫ Show web search bar ߓߟߐߟߐ߫ ߢߌߣߌ߲ߠߌ ߡߙߎߝߋ ߟߊߟߐ߲߫ Show Add Tab button ߛߏ߬ߙߌ߲߬ߘߐ ߝߙߊ߬ ߞߘߎ ߟߊߟߐ߲߫ Show Reload / Stop buttons ߢߟߊߕߍ߯ߟߌ\ߟߊ߬ߟߐ߬ߟߌ߬ ߞߘߎ ߟߊߟߐ߲߫ Tabs behaviour ߛߏ߬ߙߌ߲߬ߘߐ ߖߏ߮ Show tab previews ߛߏ߬ߙߌ߲߬ߘߐ߬ ߟߎ߬ ߢߍߛߐ߲ ߢߌߣߊߣߍ߲ ߠߊ߫ ߕߊ߬ߡߌ߲߬ߒߞߊ߲ ߘߐ߫ Make tab previews animated ߛߏ߬ߙߌ߲߬ߘߐ ߟߎ߬ ߢߍߛߐ߲ ߠߊߡߊ߰ߡߊ߰ Hide tabs when there is only one tab ߛߏ߲߬ߙߌ߲߬ߘߐ߬ ߡߙߎߝߋ ߢߡߊߕߎ߲߯ ߣߴߊ߬ ߕߏ߫ ߘߊ߫ ߛߏ߬ߙߌ߲߬ߘߐ߬ ߞߋߟߋ߲߫ ߔߋ߫ ߡߊ߬ Activate last tab when closing active tab ߛߏ߬ߙߌ߲߬ߘߐ߬ ߞߘߐ ߟߎ߬ ߟߊߓߊ߯ߙߊ߫ ߣߌ߫ ߛߋ߲߬ߠߊ߬ ߛߏߙߌ߲ߘߐ ߕߎ߲߯ ߘߊ߫ Open new tabs after active tab ߛߏ߬ߙߌ߲߬ߘߐ߬ ߞߎߘߊ ߘߊߦߟߍ߬ ߛߋ߲߬ߠߊ߬ߕߊ ߞߕߐ߫ Open new empty tabs after active tab ߛߏ߬ߙߌ߲߬ߘߐ߬ ߘߐߞߏߟߏ߲ ߠߎ߬ ߘߊߦߟߍ߬ ߦߊ߬ߣߌ߫ ߛߏ߬ߙߌ߲߬ߘߐ ߟߎ߬ ߦߋ߫ ߘߐߓߍ߲߬ Automatically switch to newly opened tab ߌ ߦߟߍ߬ߡߊ߲߬ ߛߏ߬ߙߌ߲߬ߘߐ߬ ߞߎߘߊ ߘߐ߫ ߌߞߘߐ߫ Don't quit upon closing last tab ߌ ߞߊ߫ ߓߐ߫ ߛߏ߬ߙߌ߲߬ߘߐ߬ ߟߊߓߊ߲߫ ߘߊߕߎ߲߮ ߞߐ߫ Ask when closing multiple tabs ߢߌ߬ߣߌ߲߬ߞߊ߬ߟߌ ߞߍ߫ ߛߏ߬ߙߌ߲߬ߘߐ߬ ߥߙߍ ߟߎ߬ ߘߊߕߎ߲߯ ߡߊ߬ ߞߋߟߋ߲߫ ߘߌ߫ Closed tabs list instead of opened in tab bar ߛߏ߬ߙߌ߲߬ߘߐ ߟߎ߬ ߛߙߍߘߍ ߘߊߕߎ߲߯ ߦߊ߬ߣߵߌ ߦߴߊ߬ߟߎ߬ ߘߊߦߟߍ߬ ߛߏ߬ߙߌ߲߬ߘߐ߬ ߡߙߎߝߋ߫ ߘߐ߫ Address Bar behaviour ߛߊ߲߬ߓߊ߬ߕߐ߰ ߞߣߍ ߖߏ߮ Suggest when typing into address bar: ߣߌ߫ ߛߓߍߟߌ ߞߍ߫ ߘߊ߫ ߛߊ߲߬ߓߊ߬ߕߐ߰ ߡߙߎߝߋ ߘߐ߫ ߞߊ߬ ߢߍߛߌ ߟߎ߬ ߟߊߟߐ߲߫: History and Bookmarks ߞߊ߬ߞߘߐ ߣߌ߫ ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߠߎ߬ History ߞߊ߬ߞߘߐ Bookmarks ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߠߎ߬ Nothing ߝߏߛߌ߬ Press "Shift" to not switch the tab but load the url in the current tab. "Shift" ߘߌ߯ ߖߐ߲߬ߛߊ߬ ߌ ߞߊߣߊ߬ ߓߐ߫ ߛߏ߬ߙߌ߲߬ߘߐ ߘߐ߫ ߒ߬ߞߊ߬ ߛߊ߫ ߛߘߌ߬ߜߋ߲ ߘߌ߫ ߘߊߦߟߍ߬ ߛߋ߲߬ߠߊ߬ ߛߏߙߌ߲ߘߐ ߘߐ߫. Propose to switch tab if completed url is already loaded. ߛߏ߬ߙߌ߲߬ߘߐ ߡߊߝߊ߬ߟߋ߲߬ ߣߌ߫ ߛߘߌ߬ߜߋ߲߬ ߘߝߊߣߍ߲ ߟߊߦߟߍ߬ߣߍ߲߫ ߞߊ߬ ߓߊ߲߫. Always show go icon ߕߊ߯ߟߌ߫ ߞߘߎ ߟߊߟߐ߲߫ ߕߎ߬ߡߊ߬ ߓߍ߯ Select all text by double clicking in address bar ߞߟߏߜߍ ߓߍ߯ ߓߊߕߐߡߐ߲߫ ߛߐ߲߬ߞߌ߲߬ ߝߌ߬ߟߊ߬ߣߍ߲ ߘߐ߫ ߛߊ߲ߓߊ߬ߕߐ߰ ߞߣߍ ߘߐ߫ Select all text by clicking in address bar ߞߟߏߜߍ ߓߍ߯ ߓߊߕߐߡߐ߲߫ ߊ߬ ߛߐ߲߬ߞߌ߲ ߘߐ߫ ߛߊ߲ߓߊ߬ߕߐ߰ ߞߣߍ ߘߐ߫ Search with Default Engine ߊ߬ ߢߌߣߌ߲߫ ߢߌߣߌ߲ߠߌ߫ ߣߌߘߐ ߖߏߣߡߊ ߘߐ߫ Show loading progress in address bar ߟߊ߬ߦߟߍ߬ߟߌ ߕߎ߬ߜߍ߬ߕߎ߬ߜߍ߬ߟߌ ߟߊߟߐ߲߫ ߛߊ߬ߓߊ߬ߕߐ߰ ߡߙߎߝߋ ߘߐ߫ Fill ߊ߬ ߘߐߞߍ߫ Bottom ߞߎ߬ߘߎ Top ߝߟߐߡߊ Custom color: ߞߎ߬ߙߎ߲߬ߘߎ ߞߐ߬ߟߐ: Select color ߞߐ߬ߟߐ ߓߊߕߐߡߐ߲߫ ... ... Reset ߊ߬ ߟߊߞߎߘߦߊ߫ Web Configuration ߓߟߐߟߐ߫ ߢߊߘߐߦߊߟߌ Allow Netscape Plugins (Flash plugin) Netscape ߛߐߙߐ߲ߝߍ ߟߎ߬ ߟߊߘߌ߬ߢߍ߬ (ߦߟߋߞߎ ߛߐߙߐ߲ߝߍ) Allow JavaScript ߖ߭ߝ߭ߊߣߐ߬ߣߐ߬ߟߊ ߟߊߘߌ߬ߢߍ߬ Allow JAVA ߖ߭ߝ߭ߊ ߟߊߘߌ߬ߢߍ߬ Allow DNS Prefetch ߡߙߊ߬ߘߊ ߞߊ߲ߞߋ ߕߐ߮ ߡ.ߞ.ߕ ߕߐ߬ߡߊ߬ߛߙߋ߬ߟߌ ߟߊߘߌ߬ߢߍ߬ Enable XSS Auditing try to detect possible XSS attacks when executing javascript ߞߐߜߍ߫ ߕߐߢߍߟߊ ߞߣߐ߬ߜߍ߲߬ߠߌ ߓߌ߬ߟߵߊ߬ ߟߊ߫ Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements ߢߊߞߕߐߡߊ ߝߛߌ ߜߌ߬ߙߌ߲߬ߘߌ߬ Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key ߛߘߌ߬ߜߋ߲ ߠߎ߬ ߟߊߡߌ߬ߣߊߡߌ߬ߣߊ߬ ߛߏ߲߯ߓߊߟߌ ߘߐ߫ ߜߊ߲ߠߌ߫ ߞߘߎ ߛߙߊ߫ ߘߐ߫ Animated scrolling ߘߐ߬ߖߊ߰ߟߊ߬ߟߌ ߡߊ߰ߡߊ߰ߟߌ߬ߟߊ Enable caret browsing ߕߊ߲߬ߓߊ߬ߞߎ߲ ߠߊ߫ ߛߏ߲߯ߓߊߟߌ ߓߌ߬ߟߵߊ߬ ߟߊ߫ Enable spatial navigation ߝߏ߬ߣߊ߲߬ߕߍ߬ ߛߏ߲߯ߓߊߟߌ ߓߌ߬ߟߵߊ߬ ߟߊ߫ Zoom text only ߞߟߏߜߍ ߘߐߙߐ߲߫ ߠߊߓߏ߲߬ߧߊ߬ Mouse wheel scrolls ߢߌߣߊߣߍ߲ ߞߘߎߞߘߎߟߊ߲ ߠߋ߬ ߝߋ߲ ߠߎ߬ ߘߐߖߊ߯ߟߊ߫ ߟߊ߫ lines on page ߛߌ߬ߕߊ߬ߙߌ ߁ ߠߴߊ߬ ߞߐߜߍ߫ Default zoom on pages: ߞߐߜߍ ߟߎ߬ ߟߊ߬ߓߏ߲߬ߧߊ߬ߟߌ ߖߏߣߡߊ: Local Storage ߦߌߟߊߟߊ߫ ߟߊߡߊ߲ߘߌߟߌ Maximum ߛߊ߲ߘߐߕߊ 50 MB ߞߋ߲߬ߥߟߎ߬ ߛߋ߬ߓߊ߬ ߅߀ 1 ߁ Maximum pages in cache: ߞߐߜߍ߫ ߛߊ߲ߘߐߕߊ ߡߍ߲ ߠߎ߬ ߘߌ߫ ߞߍ߫ ߜߍߞߟߐ ߘߐ: Allow storing network cache on disk ߞߙߏ߬ߝߏ ߕߏ߫ ߊ߬ ߦߋ߫ ߜߍߞߟߐ ߟߊߡߊ߲߬ߘߌ߬ ߝߍ߬ߜߍ ߞߊ߲߬ Store cache in: ߜߍߞߟߐ ߟߊߡߊ߲߬ߘߌ߫ ߦߊ߲߬: Allow saving history ߞߊ߬ߞߘߐ ߟߊߞߎ߲߬ߘߎ ߟߊߘߌ߬ߢߍ߬ Delete history on close ߞߊ߬ߞߘߐ ߖߐ߬ߛߌ߬ ߕߎ߲߯ߠߌ ߘߐ߫ Allow local storage of HTML5 web content ߞߟߏߜߍ߫ ߛߘߌ߫ ߡߊߜߍ߲ ߝߐߞߊ߲ ߅ ߟߊ߫ ߦߌߟߊߟߊ߫ ߞߣߐߘߐ ߟߊߡߊ߲ߘߟߌ ߟߊߘߌ߬ߢߍ߬ Delete locally stored HTML5 web content on close ߞߟߏߜߍ߫ ߛߘߌ߫ ߡߊߜߍ߲ ߝߐߞߊ߲ ߅ ߟߊ߫ ߦߌߟߊߟߊ߫ ߟߊߡߊ߲ߘߟߌ ߖߐ߬ߛߌ߬ ߘߊߕߎ߲߯ߠߌ ߘߐ߫ Delete now ߊ߬ ߖߐ߬ߛߌ߫ ߕߋ߲߬ Proxy Configuration ߕߍߟߐ ߢߊߘߐߦߊߟߌ Proxy Auto-Config (.pac) file ߕߍߟߐ ߖߘߍ߬ߡߊ߬ ߢߊߘߐߦߟߊ ߞߐߕߐ߯ߘߐ Reload ߊ߬ ߢߟߊߕߍ߰ HTTP ߞߟߏߜߍ߫ ߛߘߌߜߋ߲ ߟߊߕߊ߯ ߝߐߞߊ߲ SOCKS5 ߜߊ߬ߔߐ߬ߍ߬ߘߐ߬ ߅ Port: ߥߏ߬ߘߊ: Username: ߟߐ߲ߕߐ߮: Password: ߕߊ߬ߡߌ߲߬ߞߊ߲: Don't use on: ߊ߬ ߞߊ߫ ߟߊߓߊ߯ߙߊ߫: Manual configuration ߓߟߏߟߊ߫ ߢߊߘߐߦߊߟߌ System proxy configuration ߞߊ߲ߞߋ ߟߊ߫ ߕߍߟߐ ߢߊߘߐߦߊߟߌ Do not use proxy ߕߍߟߐ ߝߋ߲߫ ߞߊ߫ ߟߊߓߊ߯ߙߊ߫ <b>Exceptions</b> <b>ߖߊ߬ߡߎ߲ ߠߎ߬</b> Server: ߛߐߘߊ: Use different proxy for https connection ߕߍߟߐ߫ ߜߘߍ߫ ߟߊߓߊ߯ߙߊ߫ ߞߟߏߜߍ߫ ߛߘߌߜߋ߲ ߟߊߕߊ߯ ߝߐߞߊ߲ ߠߊߞߊ߲ߘߊߣߍ߲ ߜߊ߲߬ߞߎ߲߬ߠߌ ߢߍ߫ Use script for automatic configuration: ߛߓߍߢߌ߲ ߠߊߓߊ߯ߙߊ߫ ߞߍߒߖߘߍߡߊ ߢߊߘߐߦߊߟߌ ߢߍ߫ <b>Font Families</b> <b>ߛߓߍߢߌ߲߫ ߞߙߎ ߟߎ߬</b> Standard ߖߏߣߡߊ Fixed ߞߊ߲߬ߞߊ߲߬ ߓߊߟߊ߲ߣߍ߲ Serif ߞߙߋߡߊ Sans Serif ߞߙߋߒߕߊ߲ Cursive ߕߣߍ߬ߣߍ߬ߟߌ Fantasy ߡߊ߬ߢߍ߰ߙߍ <b>Font Sizes</b> <b>ߛߓߍߢߌ߲ ߟߐߜߊ߲ ߠߎ߬</b> Fixed Font Size ߛߓߍߢߌ߲߫ ߟߐ߬ߜߊ߲߬ ߓߊ߲ߓߊߣߍ߲ Default Font Size ߛߓߍߢߌ߲߫ ߟߐ߲߬ߜߊ߲߬ ߖߏߣߡߊ Minimum Font Size ߛߓߍߢߌ߲߫ ߟߐ߲߬ߜߊ߲ ߘߐ߰ߡߊ߲߬ߣߍ߲ Minimum Logical Font Size ߛߓߍߢߌ߲ ߟߐ߬ߜߊ߲߬ ߘߐ߰ߡߊ߲߬ߣߍ߲ ߖߌ߰ߣߍ߲ <b>Shortcuts</b> <b>ߛߌߟߊߛߎߘߎ߲ ߠߎ߬</b> Switch to tabs with Alt + number of tab ߛߏ߬ߙߌ߲߬ߘߐ ߟߎ߬ ߘߐߖߊ߯ߟߊ߫ Alt ߣߌ߫ ߛߏ߬ߙߌ߲߬ߘߐ ߝߙߍߕߍ ߟߎ߬ ߘߌ߮ ߘߐ߫ Load speed dials with Ctrl + number of speed dial ߞߟߌߟߌ߫ ߞߊߟߌ߲ ߠߊߦߟߍ߬ Ctrl ߣߌ߫ ߞߟߌߟߌ߫ ߞߊߟߌ߲ ߝߙߍߕߍ ߟߊ߫ Add .co.uk domain by pressing ALT key in address bar .co.uk ߡߙߊ߬ߘߊ ߝߙߊ߬ ߛߊߞߍߟߌ ߞߘߎ (ߛߊߞ) ߘߌ߯ ߘߐ߫ ߛߊ߲߬ߓߊ߬ߕߐ߰ ߡߙߎߝߋ ߞߣߐ߫ <b>Download Location</b> <b>ߟߊ߬ߖߌ߰ߟߌ߬ ߞߍߦߙߐ</b> Ask everytime for download location ߢߌ߬ߣߌ߲߬ߞߊ߬ߟߌ ߞߍ߫ ߟߊ߬ߖߌ߰ߟߌ߬ ߦߙߐ߬ ߞߏ ߘߐ߫ Use defined location: ߦߌߟߊ ߘߊ߲߬ߣߊ߬ߕߍ߰ߣߍ߲ ߠߊߓߊ߯ߙߊ߫: <b>Download Options</b> <b>ߟߊ߬ߖߌ߰ߟߌ ߢߣߊߕߊߟߌ ߟߎ߬</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) ߞߊ߲ߞߋ ߟߊ߫ ߞߐߕߐ߯ߘߐ߫ ߛߏ߲ߓߊ߯ߟߊ߲ ߠߊߓߊ߯ߙߊ߫ (ߊ߬ ߘߌ߫ ߛߋ߫ ߟߊ߬ߖߌ߰ߟߌ߬ ߟߊߞߊ߲ߘߊ ߘߐߝߛߏ߬ߝߛߊ߬ ߟߊ߫) Close download manager when downloading finishes ߟߊ߬ߖߌ߰ߟߌ ߞߎ߲߬ߠߊ߬ߛߌ߰ߟߊ ߘߊߕߎ߲߯ ߟߊ߬ߖߌ߬ߟߌ ߓߊ߲ ߞߐ߫ <b>External download manager</b> <b>ߞߐߞߊ߲߫ ߟߊߖߌ߯ߟߌ ߞߎ߲߬ߠߊ߬ߛߌ߰ߟߊ</b> Use external download manager ߞߐߞߊ߲߫ ߟߊߖߌ߯ߟߌ ߞߎ߲߬ߠߊ߬ߛߌ߰ߟߊ ߟߊߓߊ߯ߙߊ߫ Executable: ߟߥߊ߬ߟߌ߬ߕߊ: Arguments: ߟߐ߬ߦߙߌ ߟߎ߬: Leave blank if unsure ߊ߬ ߘߐߞߏߟߏ߲ ߕߏ߫ ߣߴߌ ߜߍߣߍ߲߫ ߕߴߊ߬ ߡߊ߬ <b>%d</b> will be replaced with URL to be downloaded <b>%d</b>ߘߌ߫ ߡߊߝߊ߬ߟߋ߲߬ ߛߘߌ߬ߜߋ߲ ߠߊߖߌ߰ߕߊ ߟߊ߫ <b>AutoFill options</b> <b>ߖߘߍ߬ߡߊ߬ ߛߓߍߟߌ ߢߣߊߕߊߟߌ ߟߎ߬</b> Allow saving passwords from sites ߕߊ߬ߡߌ߲߬ߞߊ߲ ߠߎ߬ ߟߊߞߎ߲߬ߘߎ ߟߊߘߌ߬ߢߍ߬ ߞߍߦߙߐ ߟߎ߬ ߟߊ߫ Send Referer header to servers ߛߐߘߊ ߟߎ߬ ߟߊ߫ ߛߟߊߟߊ ߟߊߕߊ߯ <b>Cookies</b> <b>ߛߊ߲߬ߓߊ ߟߎ߬</b> Send Do Not Track header to servers ߛߌߟߊߒߕߊ߲ ߛߟߊߟߊ ߟߊߕߊ߯ ߛߐߘߊ ߟߎ߫ ߡߊ߬ <b>Other</b> <b>ߜߘߍ߫</b> Manage CA certificates ߡߙߊ߬ߟߌ ߟߊߜߍߘߊ ߟߊ߬ߜߍ߬ߟߊ߲ ߞߎ߲߬ߠߊ߬ߛߌ߰ Certificate Manager ߟߊ߬ߜߍ߬ߟߊ߲ <b>SSL Certificates</b> <b>ߓߟߐߟߐ ߥߏ߬ߦߊ ߟߊߞߊ߲ߘߊߟߊ߲ ߟߊߜߍߟߊ߲</b> <b>JavaScript</b> <b>ߖ߭ߝ߭ߊߣߐߣߐߟߊ</b> Manage JavaScript privacy options ߖ߭ߝ߭ߊߣߐ߬ߣߐ߬ߟߊ ߘߎ߲߬ߘߎ߲߬ߡߊ߬ ߢߣߊߕߊߟߌ ߟߎ߬ ߞߎ߲߬ߠߊߛߌ߰ JavaScript options ߖ߭ߝ߭ߊߣߐ߬ߣߐ߬ߟߊ ߢߣߊߕߊߟߌ ߟߎ߬ Cookies Manager ߛߊ߲߬ߓߊ ߟߎ߫ ߞߎ߲߬ߠߊ߬ߛߌ߰ߟߌ Manage Cookies ߛߊ߲߬ߓߊ ߟߎ߫ ߞߎ߲߬ߠߊߛߌ߰ <b>HTML5 Permissions</b> <b>ߞߟߏߜߍ߫ ߛߘߌ߫ ߡߊߜߍ߲ ߝߐߞߊ߲ ߅</b> Manage HTML5 permissions ߞߟߏߜߍ߫ ߛߘߌ߫ ߡߊߜߍ߲ ߝߐߞߊ߲ ߅ ߘߌ߬ߢߍ߬ߟߌ ߟߎ߬ ߞߎ߲߬ߠߊߛߌ߰ HTML5 Permissions ߞߟߏߜߍ߫ ߛߘߌ߫ ߡߊߜߍ߲ ߝߐߞߊ߲ ߅ ߘߌ߬ߢߍ߬ߟߌ ߟߎ߬ <b>Notifications</b> <b>ߦߟߌߣߐߦߊ ߟߎ߬</b> Use OSD Notifications ߥߊ߲߬ߥߊ߲ ߘߐ߬ߓߍ߲߬ߠߌ߬ ߘߊ ߦߟߌߣߐߦߊ ߟߎ߬ ߟߊߟߐ߲߫ Use Native System Notifications (Linux only) ߞߊ߲ߞߋ ߟߊ߫ ߦߟߌߣߐߦߊߟߌ ߟߎ߬ ߟߊߓߊ߯ߙߊ߫ (ߟߎߣߌߞ ߘߐߙߐ߲߫ ߢߍ߫) Do not use Notifications ߦߟߌߣߐߦߊ ߟߎ߬ ߞߊ߫ ߟߊߓߊ߯ߙߊ߫ Expiration timeout: ߓߊ߲ߠߌ ߕߎ߬ߡߊ: seconds ߝߌߟߊ߲ <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>ߦߟߌߣߐ: </b>ߌ ߘߌ߫ ߥߊ߲߬ߥߊ߲ ߘߐ߬ߓߍ߲߬ߠߌ߬ ߘߊ ߦߟߌߣߐߦߊߟߌ ߦߙߐ ߡߊߝߊ߬ߟߋ߲߬ ߠߊ߫ ߕߏ߬ߙߏ߲߬ߘߏ߬ߟߌ ߣߌ߫ ߟߊߟߌ ߘߐ߫ ߥߊ߲߬ߥߊ߲ ߞߊ߬. StyleSheet automatically loaded with all websites: ߦߙߋߟߋ߲߫ ߞߟߊߘߊ ߘߌ߫ ߟߊߦߟߍ߬ ߊ߬ ߖߘߍ߬ ߢߍ߫ ߞߍߦߙߐ ߓߍ߯ ߞߊ߲߬: Languages ߞߊ߲ ߠߎ߬ <b>Preferred language for web sites</b> <b>ߌ ߘߌߦߊߣߊ߲߫ ߞߊ߲ ߞߍߦߙߐ ߣߌ߲߬ ߠߊ߫</b> <b>Change browser identification</b> <b>ߛߏ߲߯ߓߊߟߊ߲ ߞߋ߬ߟߋ߲߬ߧߊ߬ߟߊ߲ ߡߊߦߟߍ߬ߡߊ߲߬</b> User Agent Manager ߕߣߐ߬ߓߐ߬ߟߊ߫ ߞߣߐ߬ߜߍ߲߬ߓߊ߮ ߞߎ߲߬ߠߊ߬ߛߌ߰ߟߊ Default ߖߏߣߡߊ Set as default ߊ߬ ߞߍ߫ ߖߏߣߡߊ ߘߌ߫ OSD Notification ߥߊ߲߬ߥߊ߲ ߘߐ߬ߓߍ߲߬ߠߌ߬ ߘߊ ߦߟߌߣߐߦߊ ߟߎ߬ Drag it on the screen to place it where you want. ߊ߬ ߕߏ߬ߙߏ߲߬ߘߏ߬ ߞߵߊ߬ ߟߊ߫ ߥߊ߲߬ߥߊ߲ ߞߊ߲߬ ߌ ߘߌߦߊ߲ߣߊ߲߫ ߝߊ߲ ߘߏ߫ ߘߐ߫. Choose download location... ߟߊ߬ߖߌ߰ߟߌ߬ ߘߊ ߛߎߥߊ߲ߘߌ߫... Choose stylesheet location... ߦߙߋߟߋ߲߫ ߞߟߊߘߊ ߦߌߟߊ ߛߎߥߊ߲ߘߌ߫... Deleted ߖߐ߬ߛߌ߬ߣߍ߲ Choose executable location... ߟߥߊ߬ߟߌ߬ߕߊ ߦߌߟߊ ߛߎߥߊ߲ߘߌ߫... Choose cache path... ߜߍߞߟߐ ߛߌߟߊ ߛߎߥߊ߲ߘߌ߫... New Profile ߢߊߞߙߍ߫ ߞߎߘߊ Enter the new profile's name: ߢߊߞߙߍ ߣߌ߲߬ ߕߐ߯ ߞߎߘߊ ߟߊߘߏ߲߬: Error! ߝߌ߬ߟߌ߹ This profile already exists! ߢߊߞߙߍ ߣߌ߲߬ ߦߋ߲߬ ߞߊ߬ ߓߊ߲߫߹ Cannot create profile directory! ߢߊߞߙߍ߫ ߓߏ߲ߘߏ߲ ߕߍ߫ ߛߋ߫ ߛߌ߲ߘߌ߫ ߟߊ߫߹ Confirmation ߟߊ߬ߘߌ߬ߢߍ߬ߟߌ Are you sure to permanently delete "%1" profile? This action cannot be undone! ߦߴߊ߬ ߝߍ߬ ߞߊ߬ ߢߊߞߙߍ "%1" ߖߐ߬ߛߌ߬ ߟߋ߬ ߝߛߊߦߌ߫؟ ߒ߬ߓߊ߬ ߣߴߏ߬ ߞߍ߫ ߘߊ߫߸ ߊ߬ ߕߍ߫ ߘߐ߲߬ ߠߊߛߊ߬ߦߌ߬ ߟߊ߫ ߏ߬ ߞߐ߫ ߘߋ߬߹ Select Color ߞߐ߬ߟߐ ߛߎߥߊ߲ߘߌ߫ QObject Native System Notification ߞߊ߲ߞߋ ߟߊ߫ ߦߟߌߣߐߦߊߟߌ Save file as... ߞߐߕߐ߯ߘߐ ߟߊߞߎ߲߬ߘߎ߫ ߕߊ߲߬... The file is not an OpenSearch 1.1 file. ߞߐߕߐ߯ߘߐ ߕߍ߫ ߘߊߦߟߍߢߌߣߌ߲ ߁.߁ ߝߋ߲߫ ߘߌ߫. <not set in certificate> <not set in certificate> Unknown size ߢߊ߲ߞߊ߲ ߟߐ߲ߓߊߟߌ KB ߥ.ߝ MB ߞ.ߝ GB ߝ.ߝ Executable: ߟߥߊߟߌߕߊ: Arguments: ߟߐ߬ߦߙߌ ߟߎ߬: Cannot start external program ߞߐߞߊ߲߫ ߢߍߥߟߊ ߡߊ߫ ߛߋ߫ ߟߊߥߟߌ߬ ߟߊ߫ Cannot start external program! %1 ߞߐߞߊ߲߫ ߢߍߥߟߊ߫ ߕߍ߫ ߛߋ߫ ߟߊߥߟߌ߬ ߟߊ߫߹ %1 QtWin Open new tab ߛߏ߬ߙߌ߲߬ߘߐ߬ ߞߎߘߊ߫ ߘߊߦߟߍ߬ Opens a new tab if browser is running ߛߏ߬ߙߌ߲߬ߘߐ߬ ߞߎߘߊ߫ ߘߊߦߟߍ߬ ߣߌ߫ ߛߏ߲߯ߓߊߟߊ߲ ߠߊߥߟߌ߬ߣߍ߲߬ Open new window ߝߢߐߘߊ߫ ߞߎߘߊ ߘߊߦߟߍ߬ Opens a new window if browser is running ߝߢߐߘߊ߫ ߞߎߘߊ ߘߊߦߟߍ߬ ߣߌ߫ ߛߏ߲߯ߓߊߟߊ߲ ߠߊߥߟߌ߬ߣߍ߲߬ Open download manager ߟߊ߬ߖߌ߰ߟߌ ߞߎ߬ߠߊ߬ߛߌ߰ߟߊ ߘߊߦߟߍ߬ Opens a download manager if browser is running ߟߊ߬ߖߌ߰ߟߌ ߞߎ߲߬ߠߊ߬ߛߌ߰ߟߊ ߘߊߦߟߍ߬ ߣߌ߫ ߛߏ߲߯ߓߊߟߊ߲ ߠߊߥߟߌ߬ߣߍ߲߬ QupZilla QupZilla ߞߎߖ߭ߌߟߊ Private Browsing Enabled ߘߎ߲߬ߘߎ߬ߡߊ߬ ߛߏ߲߯ߓߊߟߌ ߓߌ߬ߟߵߊ߬ ߟߊ߫ IP Address of current page ߛߋ߲߬ߠߊ߬ ߞߐߜߍ߲ ߣߌ߲߫ ߓߟߐߟߐ߫ ߝߐߞߊ߲ &About QupZilla ߞߎߖ߭ߌߟߊ ߞߊ߲߬ Pr&eferences ߢߣߊߕߊ ߟߎ߬ Quit ߓߐ߫ &File ߞߐߕߐ߯ߘߐ &New Window ߝߢߐߘߊ߫ ߞߎߘߊ New Tab ߛߏ߬ߙߌ߲߬ߘߐ߬ ߞߎߘߊ Open Location ߦߌߟߊߟߐ߲ߠߌ ߘߊߦߟߍ߬ Open &File... ߞߐߕߐ߯ߘߐ ߘߊߦߟߍ߬... Close Tab ߛߏ߬ߙߌ߲߬ߘߐ ߘߊߕߎ߲߯ Close Window ߝߢߐߘߊ ߘߊߕߎ߲߯ &Save Page As... ߞߐߜߍ ߟߊߞߎ߲߬ߘߎ߫ ߕߊ߲߬... Save Page Screen ߥߊ߲߬ߥߊ߲߬ ߜߌߙߌ߲ߘߌ ߟߊߞߎ߲߬ߘߎ߬ Send Link... ߛߘߌ߬ߜߋ߲ ߠߊߕߊ߯... &Print... ߊ߬ ߜߌ߬ߙߌ߲߬ߘߌ߬ Import bookmarks... ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߠߎ߬ ߟߊߛߣߍ߫... &Edit ߊ߬ ߡߊߦߟߍ߬ߡߊ߲߬ &Undo ߊ߬ ߘߐߛߊ߬ &Redo ߘߐ߬ߛߊ ߘߐߛߊ߬ &Cut ߊ߬ ߕߍ߰ C&opy ߊ߬ ߓߊߓߌߟߊ߫ &Paste ߊ߬ ߣߙߊ߫ Select &All ߊ߬ ߓߍ߯ ߓߊߕߐߡߐ߲߫ &Find ߊ߬ ߢߌߣߌ߲߫ &View ߦߋߘߊ &Navigation Toolbar ߛߏ߲߯ߓߊߟߌ߫ ߡߙߎߝߋ &Bookmarks Toolbar ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߡߙߎߝߋ Sta&tus Bar ߛߌ߰ߞߊ߲߬ ߡߙߎߝߋ &Menu Bar ߟߐ߬ߥߟߊ߬ ߡߙߎߝߋ &Tabs on Top ߛߏ߬ߙߌ߲߬ߘߐ߬ ߝߟߐߡߊ &Fullscreen ߥߊ߲߬ߥߊ߲߬ߝߊ &Stop ߊ߬ ߟߊߟߐ߬ &Reload ߊ߬ ߢߟߊߕߍ߰ Character &Encoding ߛߓߍߢߌ߲ ߠߎ߬ ߟߊߘߏߦߊߟߌ Enable &Caret Browsing ߛߓߍߘߋ߲ߥߟߊ ߟߊ߫ ߛߏ߲߯ߓߊߟߌ ߓߌ߬ߟߵߊ߬ ߟߊ߫ Toolbars ߖߐ߯ߙߊ߲ ߠߎ߬ ߡߙߎߝߋ Sidebars ߞߙߍ߬ߝߍ߬ ߡߙߎߝߋ ߟߎ߬ Zoom &In ߊ߬ ߟߊߓߏ߲߬ߧߊ߬ Zoom &Out ߊ߬ ߟߊߘߐ߯ߦߊ߫ Reset ߊ߬ ߟߊߞߎߘߦߊ߫ &Page Source ߞߐߜߍ߫ ߛߎ߲ Hi&story ߞߊ߬ߞߘߐ &Back ߞߐ߲߬ߣߍ߲ &Forward ߟߊ߬ߕߎ߲߬ߠߊ &Home ߓߏ߬ߟߏ߲ Show &All History ߞߊ߬ߞߘߐ ߟߎ߬ ߓߍ߯ ߟߊߟߐ߲߫ Closed Tabs ߛߏ߬ߙߌ߲߬ߘߐ߬ ߕߎ߲߯ߣߍ߲ ߠߎ߬ Recently Visited ߘߐߖߊ߯ߟߊ߫ ߛߊ߲ Most Visited ߘߐߖߊ߯ߟߊߣߍ߲ߓߊ &Bookmarks ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ Bookmark &This Page ߞߐߜߍ ߣߌ߲߬ ߡߊߦߋߙߋ߲߫ Bookmark &All Tabs ߛߏ߬ߙߌ߲߬ߘߐ ߓߍ߯ ߡߊߦߋߙߋ߲߫ Organize &Bookmarks ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߠߎ߬ ߘߐߓߍ߲߬ &Tools ߖߐ߯ߙߊ߲ ߠߎ߬ &Web Search ߓߟߐߟߐ߫ ߢߌߣߌ߲ߠߌ Page &Info ߞߐߜߍ ߞߌ߬ߓߊ߬ߙߏ &Download Manager ߟߊ߬ߖߌ߰ߟߌ ߞߎ߲߬ߠߊ߬ߛߌ߰ߟߊ &Cookies Manager ߛߊ߲߬ߓߊ ߟߎ߫ ߞߎ߲߬ߠߊ߬ߛߌ߰ߟߊ &AdBlock ߓߊߟߊ߲ߠߊ RSS &Reader ߟߊ߬ߕߌ߬ߡߌ߲߬ߠߌ ߝߙߋ߬ߟߌ߬ ߜߍ (ߟ.ߝ.ߜ) ߘߐ߬ߞߊ߬ߙߊ߲߬ߠߌ߲߬ߠߊ Web In&spector ߓߟߐߟߐ߫ ߞߣߐߜߍ߲ߠߊ Clear Recent &History ߞߊ߬ߞߘߐ߬ ߞߎߘߊ ߖߐ߬ߛߌ߬ New &Private Window ߘߎ߲߬ߘߎ߬ߡߊ߬ ߝߢߐߘߊ߫ ߞߎߘߊ &Help ߘߍ߬ߡߍ߲߬ߠߌ About &Qt ߝߙߍߛߏ߯ߓߊߟߊ߲ ߞߊ߲߬ Information about application ߓߟߏߦߊߟߌ ߞߌ߬ߓߊ߬ߙߏ Configuration Information ߢߊߘߐߦߊߟߌ ߞߌ߬ߓߊ߬ߙߏ Report &Issue ߘߊ߲߬ߕߍ߰ߟߌ ߘߏ߫ ߞߍ߫ Restore &Closed Tab ߛߏ߲߬ߙߌ߲߬ߘߐ߬ ߕߎ߲߯ߣߍ߲ ߠߎ߬ ߟߊߛߊ߬ߦߌ߲߬ (Private Browsing) (ߘߎ߲߬ߘߎ߬ߡߊ߬ ߛߏ߲߯ߓߊߟߌ) Empty ߘߐߞߏߟߏ߲ Restore All Closed Tabs ߛߏ߬ߙߌ߲߬ߘߐ߬ ߕߎ߲߯ߣߍ߲ ߓߍ߯ ߟߊߛߊ߬ߦߌ߲߬ Clear list ߛߙߍߘߍ ߖߐ߬ߛߌ߬ Other ߜߘߍ߫ %1 - QupZilla %1 - ߞߎߖ߭ߌߟߊ HTML files ߞߟߏߜߍ߫ ߛߘߌߜߋ߲ ߡߊߜߍ߲ ߝߐߞߊ߲ ߞߐߕߐ߯ߘߐ ߟߎ߬ Image files ߖߌ߬ߦߊ ߞߐߕߐ߯ߘߐ ߟߎ߬ Text files ߞߟߏߜߍ߫ ߞߐߕߐ߯ߘߐ ߟߎ߬ All files ߞߐߕߐ߯ߘߐ ߓߍ߯ Open file... ߞߐߕߐ߯ߘߐ ߘߊߦߟߍ߬ QupZilla %1 (%2) ߞߎߖ߭ߌߟߊ %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? ߛߏ߬ߙߌ߲߬ߘߐ߬ %1 ߘߊߦߟߍ߬ߣߍ߲߬ ߝߟߐ߫߸ ߏ߬ ߘߐ߫ ߌ ߟߊ߫ ߞߎ߲߬ߘߊ ߕߍ߫ ߛߋ߫ ߘߊߕߎ߲߯ ߠߊ߫. ߦߴߊ߬ ߝߍ߬ ߞߊ߬ ߞߎߖ߭ߌߟߊ ߘߊߕߎ߲߯ ߠߋ߬ ߢߍ؟ Don't ask again ߒ ߞߊ߫ ߢߌ߬ߣߌ߲߬ߞߊ߫ ߏ߬ ߞߐ߫ There are still open tabs ߛߏ߬ߙߌ߲߬ߘߐ ߘߏ߫ ߟߎ߫ ߘߊߦߟߍ߬ߣߍ߲߬ ߝߟߐ߫ QupZillaSchemeReply No Error ߝߟߌ߬ ߕߍ߫ Not Found ߊ߬ ߡߊ߫ ߛߐ߬ߘߐ߲߬ Report Issue ߝߙߋߞߋ ߘߏ߫ ߘߊ߲߬ߕߍ߰ If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: ߣߌ߫ ߝߙߋߞߋ ߘߏ߫ ߞߵߌ ߛߐ߬ߘߐ߲߬ ߞߎߖ߭ߌߟߊ ߘߐ߫߸ ߦߋ߫ ߛߐ߰ ߖߊ߬ߡߎ߲ ߠߎ߬ ߓߍ߯ ߓߐ߫ ߡߵߊ߬ ߟߊ߫ ߝߟߐ߫ ߖߊ߰ߣߌ߲߬.<br/>ߣߴߏ߬ ߡߊ߫ ߊ߬ ߢߊ߬߸ ߒ߬ߓߊ߬ ߛߓߍߟߝߊߕߊ ߣߌ߲߬ ߠߊߝߊ߫: Your E-mail ߌ ߟߊ߫ ߢߎߡߍߙߋ߲ߞߏ߲ߘߏ Issue type ߝߙߋߞߋ ߛߎ߮ Issue description ߝߙߋߞߋ ߡߊ߲߬ߞߕߎ߬ߟߌ Send ߊ߬ ߟߊߕߊ߯ E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. ߢߎߡߍߙߋ߲ߞߏ߲ߘߏ ߕߍ߫ ߘߌߦߊߜߏߦߊ߫ ߘߌ߫<br/><b>ߦߟߌߣߐ: </b>ߝߛߏ߬ߝߛߊ ߘߊ߲߬ߕߍ߰ߟߌ ߛߓߍ߫ <a href=%1>ߦߊ߲߬</a> ߝߟߐ߫ ߖߊ߰ߣߌ߲߬. Please fill out all required fields! ߘߌߦߊߜߏߦߊ߫ ߞߣߍ ߟߎ߬ ߘߐߞߍ߫ ߖߊ߰ߣߌ߲߬߹ Start Page ߞߐߜߍ߫ ߖߏߣߊ Search on Web ߊ߬ ߢߌߣߌ߲߫ ߓߟߐߟߐ ߟߊ߫ Search results provided by DuckDuckGo ߞߐߖߋߓߌ ߡߍ߲ ߝߙߊߣߍ߲ DuckDuckGo ߟߊ߫ About QupZilla ߞߎߔߑߖߌߟߊ ߞߊ߲߬ <h1>Private Browsing</h1> <h1>ߘߎ߲߬ߘߎ߬ߡߊ߬ ߛߏ߲߯ߓߊߟߌ</h1> Information about version ߓߐߞߏ ߞߌ߬ߓߊ߬ߙߏ Copyright ߦߟߌߕߣߐ Version ߓߐߞߏ WebKit version ߓߟߐߟߓߐߘߐ ߓߐߞߏ Main developer ߘߐ߬ߦߙߌ߬ߥߟߊ߬ ߢߣߊߡߊ Contributors ߡߊ߬ߜߍ߲߬ߠߌ߲߬ߠߊ ߟߎ߬ Translators ߘߟߊߡߌߣߟߊ ߟߎ߬ Speed Dial ߞߟߌߟߌ߫ ߞߊߟߌ߲ Add New Page ߞߐߜߍ߫ ߜߘߍ߫ ߝߙߊ߬ Edit ߊ߬ ߡߊߝߊ߬ߟߋ߲߬ Remove ߊ߬ ߖߐ߬ߛߌ߬ Reload ߊ߬ ߢߟߊߕߍ߰ Are you sure to remove this speed dial? ߞߌߟߌ ߞߊߟߌ߲ ߣߌ߲߬ ߖߐ߬ߛߌ߬ ߟߐ߮ ߟߴߌ ߟߊ߫ ߢߍ؟ Load title from page ߛߟߊߟߊ ߟߊߦߟߍ߬ ߞߊ߬ ߝߙߊ߫ ߞߐߜߍ ߟߊ߫ Url ߛߘߌ߬ߜߋ߲ Title ߛߟߊߟߊ Apply ߊ߬ ߓߟߏߦߊ߫ Close ߊ߬ ߘߊߕߎ߲߯ New Page ߞߐߜߍ߫ ߞߎߘߊ Speed Dial settings ߞߟߌߟߌ߫ ߞߊߟߌ߲߫ ߞߐߕߐ߯ߘߐߛߙߋ ߟߎ߬ Placement: ߟߐ߬ߘߎ߮: Auto ߞߍߒߖߘߍߡߊ Cover ߊ߬ ߡߊߕߎ߲߯ Fit ߊ߬ ߓߍ߲߬ ߊ߬ ߡߊ߬ Fit Width ߞߊ߲߬ߞߊ߲ ߓߍ߲߬ ߊ߬ ߡߊ߬ Fit Height ߊ߬ ߟߐ߬ߜߊ߲ ߓߍ߲߬ ߊ߬ ߡߊ߬ Use background image ߢߊߞߕߐߡߊ߫ ߖߌߦߊ ߟߊߓߊ߯ߙߊ߫ Select image ߖߌ߬ߦߊ ߓߊߕߐߡߐ߲߫ Maximum pages in a row: ߛߊ߯ߘߐ ߟߎ߬ ߞߣߐߘߐ ߛߊ߲ߘߐߕߊ: Change size of pages: ߞߐߜߍ ߟߎ߫ ߟߐ߬ߜߊ߲ ߡߊߝߊ߬ߟߋ߲߬: Center speed dials ߞߌߟߌ߫ ߞߊߟߌ߲ ߠߎ߬ ߕߊ߲ߓߊ߲ Restore Session ߞߎ߲߬ߘߊ ߟߊߛߊ߬ߦߌ߲߬ Oops, QupZilla crashed. ߏ߫ߏ߰߹ ߞߎߖ߭ߌߟߊ ߓߘߊ߫ ߖߍ߲ߛߍ߲߫ We apologize for this. Would you like to restore the last saved state? ߊߟߎ߫ ߘߌ߫ ߦߊߝߊ߬ ߒ߬ ߡߊ߬ ߏ߬ ߘߐ߫߸ ߦߴߊ߬ ߝߍ߬ ߞߊ߬ ߟߌ߬ߤߟߊ߬ ߟߊߞߎ߲߬ߘߎ߬ߣߍ߲ ߠߊߛߊ߬ߦߌ߲߬ ߢߍ؟ Try removing one or more tabs that you think cause troubles ߛߏ߬ߙߌ߲߬ߘߐ߬ ߞߋߟߋ߲߫ ߖߐ߬ߛߌ ߥߟߴߊ߬ߟߎ߬ ߥߙߍ߸ ߏ߬ ߦߋ߫ ߞߏ ߟߎ߬ ߘߐߓߎ߬ߘߎ߲߬ ߠߊ߫ ߟߋ߬. Or you can start completely new session ߥߟߊ߫ ߌ ߘߌ߫ ߛߋ߫ ߞߎ߲߬ߘߊ߬ ߞߎߘߊ ߖߎ߰ߕߍ߰ ߟߊ߫ Configuration Information ߢߊߘߐߦߊߟߌ ߞߌ߬ߓߊ߬ߙߏ This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. ߞߎߔߑߖߌߟߊ ߟߊ߫ ߢߊߘߐߦߊߟߌ ߞߌ߬ߓߊ߬ߙߏ ߟߎ߬ ߦߋ߫ ߞߐߜߍ ߣߌ߲߬ ߘߐ߫ ߡߊ߬ߜߍ߲߬ߠߌ ߢߍ߫ ߞߊ߬ߣߌ߲߬ - ߒ߬ߓߊ߬ ߖߊ߰ߣߌ߲߬ ߦߋ߫ ߣߌ߲߬ ߓߌ߬ߟߊ߬ ߝߛߏ߬ߝߛߊ ߟߎ߬ ߘߊ߲߬ߕߍ߰ߟߌ߬ ߛߓߍ ߟߎ߬ ߘߐ߫. Browser Identification ߛߏ߲߯ߓߊߟߊ߲ ߡߊߟߐ߲ߠߌ Paths ߞߍߘߊ ߟߎ߬ Build Configuration ߟߐ߬ߟߌ ߢߊߘߐߦߊߟߌ Preferences ߢߣߊߕߊ ߟߎ߬ Option ߢߣߊߕߊߟߌ Value ߡߐ߬ߟߐ߲ Extensions ߖߊ߬ߡߎ߲ ߠߎ߬ Name ߕߐ߮ Author ߞߍߓߊ߮ Description ߡߊ߲߬ߞߕߎ߬ߟߌ Application version ߓߟߏߦߊߟߌ ߓߐߞߏ Qt version ߝߙߍߛߏ߯ߓߊߟߊ߲ ߓߐߞߏ Build time ߟߐ߬ߟߌ ߕߎ߬ߡߊ Platform ߝߘߏ߬ߓߊ߬ߘߊ Profile ߢߊߞߙߍ Settings ߞߐߕߐ߯ߘߐߛߙߋ ߟߎ߬ Saved session ߞߎ߲߬ߘߊ ߟߊߞߎ߲߬ߘߎ߬ Pinned tabs ߛߏ߬ߙߌ߲߬ߘߐ߬ ߜߊ߲ߜߊ߲ߣߍ߲ ߠߎ߬ Data ߟߐ߲ߕߊ Themes ߘߊߞߎ߲ ߠߎ߬ Translations ߘߟߊߡߌߣߊߟߌ ߟߎ߬ Disabled ߊ߬ ߕߴߊ߬ ߟߊ߫ <b>Enabled</b> <b>ߊ߬ ߓߌ߬ߟߵߊ߬ ߟߊ߫</b> Debug build ߟߐ߬ߟߌ ߝߛߏ߬ߝߛߊ߬ߓߐ߬ WebGL support ߓߟߐߦߋߜߍ ߞߊߘߊ߲ߓߐ Windows 7 API ߝߢߐߘߊ ߇ ߢߍߥߟߊߦߊߟߌ ߓߟߏߦߊ ߢߊߘߐߟߊ (ߥ.ߓ.ߢ) KDE integration ߝߢߐߘߊ߫ ߓߐ߰ߝߍ ߟߊߘߍ߰ߟߌ Portable build ߓߟߏߟߕߊ No available extensions. ߖߊ߬ߡߎ߲߬ ߝߋ߲߫ ߡߊ߫ ߡߊߛߐ߬ߘߐ߲߬. RSSManager RSS Reader RSS ߘߐ߬ߞߊ߬ߙߊ߲߬ߠߌ߲߬ߠߊ Empty ߘߐߞߏߟߏ߲ Add feed ߝߎߝߎ ߝߙߊ߬ Edit feed ߝߎߝߎ ߡߊߝߊ߬ߟߋ߲߬ Delete feed ߝߎߝߎ ߖߐ߬ߛߌ߬ Optimize Database ߟߐ߲ߕߊߓߘߐ ߟߊߢߊ߬ Reload ߊ߬ ߢߟߊߕߍ߰ News ߞߍߞߎߘߊ ߟߎ߬ Loading... ߟߊ߬ߦߟߍ߬ߟߌ... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. RSS ߝߎߝߎ߫ ߛߌ߫ ߕߴߌ ߞߎ߲߬.<br/> ߘߏ߯ߣߌ߲߫ ߝߙߊ߬ RSS ߕߐ߯ߡߊߦߋߙߋ߲ ߘߙߊ߫ ߘߐ߫߸ ߏ߬ ߡߍ߲ ߛߏ߲߯ߓߊߟߌ ߡߙߎߝߋ ߘߐ߫߸ ߘߊߥߎ߲ߠߌ߫ ߝߋ߲ ߠߎ߬ ߟߐ߬ߒ߬ߢߍ߬ ߞߍߦߙߐ ߘߐ߫. Add new feed ߝߎߝߎ߫ ߞߎߘߊ ߝߙߊ߬ Please enter URL of new feed: ߛߘߌ߬ߜߋ߲ ߠߊߘߏ߲߬ ߝߎߝߎ߫ ߞߎߘߊ ߢߍ߫: New feed ߝߎߝߎ߫ ߞߎߘߊ Fill title and URL of a feed: ߛߟߊߟߊ ߓߍ߲߬ ߛߘߌ߬ߜߋ߲ ߡߊ߬ ߝߎߝߎ߫ ߢߍ߫: Feed title: ߝߎߝߎ ߛߟߊߟߊ: Feed URL: ߝߎߝߎ߫ ߛߘߌ߬ߜߋ߲: Edit RSS Feed ߟߊ߬ߕߌ߬ߡߌ߲߬ߠߌ ߝߙߋ߬ߟߌ߬ ߜߍ (ߟ.ߝ.ߜ) ߝߎߝߎ ߡߊߝߊ߬ߟߋ߲߬ Open link in current tab ߛߘߌ߬ߜߋ߲ ߘߊߦߟߍ߬ ߛߏ߬ߙߌ߲߬ߘߐ ߣߌ߲߬ ߘߐ߫ Open link in new tab ߛߘߌ߬ߜߋ߲ ߘߊߦߟߍ߬ ߛߏ߬ߙߌ߲߬ߘߐ߬ ߞߎߘߊ߫ ߘߐ߫ Error in fetching feed ߝߎߝߎ ߟߊߦߍ߬ߟߍ ߝߌ߬ߟߌ RSS feed duplicated ߟߊ߬ߕߌ߬ߡߌ߲߬ߠߌ ߝߙߋ߬ߟߌ߬ ߜߍ (ߟ.ߝ.ߜ) ߝߎߝߎ ߓߊߟߌߣߍ߲ You already have this feed. ߝߎߝߎ ߡߍ߲߬ ߌ ߞߎ߲߬ ߞߊ߬ ߓߊ߲߫. RSSNotification Add this feed into ߝߎߝߎ ߣߌ߲߬ ߝߙߊ߬ Add ߊ߬ ߝߙߊ߬ RSS feed <b>"%1"</b> ߟߊ߬ߕߌ߬ߡߌ߲߬ߠߌ ߝߙߋ߬ߟߌ߬ ߜߍ (ߟ.ߝ.ߜ) ߝߎߝߎ <b>"%1"</b> Internal Reader ߞߣߐ߫ ߘߐߞߊߙߊ߲ߠߊ Other... ߜߘߍ߫... Liferea not running ߟߌߝߙߋߊ ߡߊ߫ ߟߊߥߟߌ߬ Liferea must be running in order to add new feed. Liferea ߞߊ߫ ߞߊ߲߫ ߠߋ߬ ߞߊ߬ ߟߊߥߟߌ߬ ߝߟߐ߫ ߦߊ߬ߣߌ߫ ߝߎߝߎ߫ ߞߎߘߊ ߘߏ߫ ߦߋ߫ ߝߙߊ߬. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. ߣߴߌ ߦߴߊ߬ ߝߍ߬ ߞߊ߬ ߟߊ߬ߕߌ߬ߡߌ߲߬ߠߌ ߝߙߋ߬ߟߌ߬ ߜߍ (ߟ.ߝ.ߜ) ߝߎߝߎ ߣߌ߲߬ ߝߙߊ߬ ߓߟߏߦߊߟߌ ߜߘߍ߫ ߟߊ߫߸ ߒ߬ߓߊ߬ ߞߌ߬ߓߊ߬ߙߏ ߣߌ߲߬ ߘߐߜߍ߫ ߖߊ߰ߣߌ߬:<br/><br/><b>ߛߟߊߟߊ</b>%1<br/><b>ߛߘߌ߬ߜߋ߲:</b>%2<br/><br/>ߝߎߝߎ ߛߘߌ߬ߜߋ߲ ߛߊ߲߬ߓߊ߬ߕߐ߮ ߓߘߊ߫ ߓߊߓߌߟߊ߫ ߌ ߟߊ߫ ߞߓߊ߬ߞߘߐ߬ߘߏ߲ ߘߐ߫. Add feed into other application ߝߎߝߎ ߝߙߊ߬ ߓߟߏߦߊߟߌ߫ ߜߘߍ߫ ߘߐ߫ RSSWidget Add RSS Feeds from this site ߟߊ߬ߕߌ߬ߡߌ߲߬ߠߌ ߝߙߋ߬ߟߌ߬ ߜߍ (ߟ.ߝ.ߜ) ߝߎߝߎ ߝߙߊ߬ ߞߍߦߙߐ ߣߌ߲߬ ߢߍ߫ Untitled feed ߝߎߝߎ ߛߟߊߒߕߊ߲ Add ߊ߬ ߝߙߊ߬ RecoveryWidget Start New Session ߞߎ߲߬ߘߊ߬ ߞߎߘߊ ߟߊߥߟߌ߬ Restore ߊ߬ ߟߊߛߊ߬ߦߌ߲߬ Window %1 ߝߢߐߘߊ %1 RegisterQAppAssociation Warning! ߖߊ߲߬ߕߏ߬ߟߌ߹ There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) ߝߙߋߞߋ ߘߏ߫ ߊ߬ ߘߐ߫ ߞߏ߬ߘߌ߫. ߞߎߖ߭ߌߟߊ ߡߊߞߍ߫ ߌߞߐ߫ ߖߊ߰ߣߌ߬. ߞߎ߲߬ߠߊ߬ߛߌ߰ߟߌ߬ ߤߊߞߍ߫ ߦߴߌ ߢߣߊ߫ ߛߎߓߊ߯ߦߊ߫ ߟߋ߬ ߘߌ߫ ߢߍ߹ ߍ߬ߤߍ߬ߤߍ߬;). RssIcon Add RSS from this page... ߟߊ߬ߕߌ߬ߡߌ߲߬ߠߌ ߝߙߋ߬ߟߌ߬ ߜߍ (ߟ.ߝ.ߜ) ߝߙߊ߬ ߞߐߜߍ ߣߌ߲߬ ߠߊ߫... SSLManager Certificate Manager ߟߊ߬ߜߍ߬ߟߊ߲ CA Authorities Certificates ߡ.ߟ ߡߙߊ߬ߟߌ ߟߊߜߍߘߊ Show info ߞߌ߲߬ߓߊ߬ߙߏ ߟߊߟߐ߲߫ This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. ߡߙߊ߬ߟߌ ߟߊߜߍߘߊ ߛߙߍߘߍ ߟߎ߫ ߟߋ߬ ߞߊ߲ߞߋ߫ ߖߏߣߡߊ ߛߌߟߊ ߞߊ߲߬ ߊ߬ ߣߌ߫ ߕߣߐ߬ߓߐ߬ߟߊ ߟߊ߫ ߛߌߟߊ߫ ߓߟߏߡߊߞߊ߬ߣߍ߲ ߠߎ߬ ߘߏ߫ ߞߊ߲߬. Local Certificates ߦߌߟߊߟߊ߫ ߟߊߜߍߟߊ߲ ߠߎ߬ Import ߊ߬ ߟߊ߬ߛߣߍ߬ Remove ߊ߬ ߖߐ߬ߛߌ߬ This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. ߟߊ߬ߜߍ߬ߟߌ ߦߌߟߊ ߛߙߍߘߍ ߘߏ߫ ߟߎ߫ ߟߋ߬ ߣߌ߲߬ ߡߍ߲ ߠߎ߬ ߟߊߡߊ߲߬ߘߌ߬ߣߍ߲ ߌ ߟߊ߫ ߕߣߐ߬ߓߐ߬ߟߌ߬ ߢߊߞߙߍ ߘߐ߫. ߟߊ߬ߜߍ߬ߟߊ߲ ߕߐ߭ ߓߍ߯ ߊ߬ ߘߐ߫߸ ߡߍ߲ ߠߎ߫ ߞߊ߬ ߢߌ߬ߣߊ߬ߓߐ߬ߟߌ ߛߐ߬ߘߐ߲߬ ߞߊ߬ߣߌ߲߬. Settings ߞߐߕߐ߯ߘߐߛߙߋ ߟߎ߬ Add ߊ߬ ߝߙߊ߬ If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. ߣߌ߫ ߞߊ߲ߞߋ ߡߊ߫ ߛߋ߫ ߡߙߊ߬ߟߌ ߟߊߜߍߘߊ ߟߊߦߟߍ߬ ߟߴߊ߬ ߖߘߍ߬ ߢߍ߫߸ ߌ ߘߌ߫ ߛߋ߫ ߊ߬ ߛߐ߬ߘߐ߲߬ ߛߌߟߊ ߦߌ߬ߘߊ߬ ߟߊ߫ ߊ߬ ߟߊ߫. <b>NOTE:</b> Setting this option is a high security risk! <b>ߦߟߌߣߐ:</b> ߦߙߐ ߣߌ߲߬ ߘߐߞߍ ߦߋ߫ ߖߘߐ߬ ߓߟߋߓߟߋ ߟߋ߬ ߘߌ߫ ߌ ߟߊ߫ ߞߊ߲ߘߦߊ ߘߐ߫߹ Ignore all SSL Warnings ߢߌ߬ߣߊ߬ SSL ߖߊ߲߬ߕߏ߬ߟߌ ߟߎ߬ ߞߐ߫ All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. ߟߊ߬ߜߍ߬ߟߊ߲ ߓߍ߯ ߣߌ߫ crt suffix ߟߋ߬ ߞߊ߫ ߞߊ߲߫. ߣߴߌ ߓߊ߲߫ ߘߊ߫ ߟߊ߬ߜߍ߬ߟߊ߲ ߛߌߟߊ ߖߐ߬ߛߌ߬ ߟߊ߫ ߥߟߊ߫ ߞߵߊ߬ ߝߙߊ߬߸ ߞߎߖ߭ߌߟߊ ߟߊߥߌ߬ߟߌ ߘߌ߫ ߞߴߌ ߡߊ߬ ߛߋ߲ߛߋߘߋ߲ ߘߌ߫ ߏ߬ ߘߐ߫ ߦߊ߬ߣߌ߫ ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߠߌ߲ ߠߎ߬ ߦߋ߫ ߕߊ߬. Choose path... ߞߍߘߊ ߛߎߥߊ߲ߘߌ߫... Import certificate... ߟߊ߬ߜߍ߬ߟߊ߲ ߠߊߛߣߍ߫... Certificate Informations ߟߊ߬ߜߍ߬ߟߊ߲ ߞߌ߬ߓߊ߬ߙߏ SearchEnginesDialog Manage Search Engines ߢߌߣߌ߲ߠߌ߫ ߣߌߘߐ ߟߎ߬ ߞߎ߲߬ߠߊߛߌ߰ Add... ߊ߬ ߝߙߊ߬... Remove ߊ߬ ߖߐ߬ߛߌ߬ Edit ߊ߬ ߡߊߦߟߍ߬ߡߊ߲߬ Set as default ߊ߬ ߞߍ߫ ߖߏߣߡߊ ߘߌ߫ Up ߦߟߍ߬ Down ߖߌ߰ Search Engine ߢߌߣߌ߲ߠߌ߫ ߣߌߘߐ Shortcut ߛߌߟߊߛߎߘߎ߲ Defaults ߖߣߏߡߊ ߟߎ߬ Add Search Engine ߢߌߣߌ߲ߠߌ߫ ߣߌߘߐ ߝߙߊ߬ Remove Engine ߣߌߘߐ ߖߐ߬ߛߌ߬ You can't remove the default search engine.<br>Set a different engine as default before removing %1. ߌ ߡߊ߫ ߛߋ߫ ߢߌߣߌ߲ߠߌ߫ ߣߌߘߐ߫ ߖߐ߬ߛߌ߬ ߟߊ߫.<br>ߣߌߘߐ߫ ߜߘߍ߫ ߞߍ߫ ߖߏߣߡߊ ߘߌ߫ ߦߊ߬ߣߵߌ ߦߋ߫ %1 ߖߐ߬ߛߌ߬. Edit Search Engine ߢߌߣߌ߲ߠߌ߫ ߣߌߘߐ ߡߊߦߟߍ߬ߡߊ߲߬ SearchEnginesManager Search Engine Added ߢߌߣߌ߲ߠߌ߫ ߣߌߘߐ ߝߙߊ߬ߣߍ߲ Search Engine "%1" has been successfully added. ߢߌߣߌ߲ߠߌ ߣߌߘߐ "%1" ߓߘߊ߫ ߝߙߊ߬ ߞߏߢߊ߬ ߕߐߟߍ߫. Search Engine is not valid! ߢߌߣߌ߲ߠߌ ߣߌߘߐ ߓߍ߲߬ߣߍ߲߬ ߕߍ߫߹ Error ߝߌ߬ߟߌ Error while adding Search Engine <br><b>Error Message: </b> %1 ߢߌߣߌ߲ߠߌ߫ ߣߌߘߐ ߝߙߊ߬ ߕߎߡߊ ߝߌ߬ߟߌ <br><b>ߝߌ߬ߟߌ ߞߋߛߓߍ: </b> %1 SearchToolBar No results found. ߖߋ߬ߓߌ߬ ߡߊ߫ ߛߐ߬ߘߐ߲߬. SearchToolbar Search: ߢߌߣߌ߲ߠߌ: Search... ߢߌߣߌ߲ߠߌ... Highlight ߓߐߢߐ߲߯ߡߊ߫ ߜߍߟߍ߲ Case sensitive ߛߓߍߢߌ߲ ߟߊ߬ߞߏ߬ߟߐ߲߬ߠߊ SideBar Bookmarks ߞߐߜߍ߫ ߡߊߦߋߙߋ߲ ߠߎ߬ History ߞߊ߬ߞߘߐ SiteInfo Site Info ߞߍߦߙߐ ߞߌ߬ߓߊ߬ߙߏ General ߝߘߏ߬ߓߊ Media ߞߎ߲߬ߠߊ߬ߝߎߟߋ߲ Databases ߟߐ߲ߕߊߓߘߐ Security ߞߊ߲ߘߦߊ Size: ߟߐ߬ߜߊ߲: Site address: ߞߍߦߙߐ ߛߊ߲߬ߓߊ߬ߕߐ߮ Encoding: ߟߊ߬ߘߏ߬ߦߊ߬ߟߌ: Meta tags of site: ߞߍߦߙߐ ߞߘߎ߬ ߓߟߋߓߟߋ: Tag ߛߏ߬ߙߌ߲߬ߘߐ߬ߓߊ Value ߡߐ߬ߟߐ߲ <b>Security information</b> <b>ߞߊ߲ߘߦߊ ߞߌ߬ߓߊ߬ߙߏ</b> Details ߕߐ߬ߝߍ߬ߦߊ ߟߎ߬ Image ߖߌ߬ߦߊ Image address ߖߌ߬ߦߊ߫ ߛߊ߲߬ߓߊ߬ߕߐ߮ <b>Preview</b> <b>ߢߍߓߌߟߊ</b> <b>Database details</b> <b>ߟߐ߲ߕߊߓߘߐ ߕߐ߬ߝߍ߬ߦߊ ߟߎ߬</b> Name: ߕߐ߮: Path: ߞߍߘߊ: <database not selected> <ߟߐ߲ߕߊߓߘߐ߫ ߓߊߕߐߡߐ߲ߓߊߟߌ> <not set in certificate> <ߊ߬ ߕߍ߫ ߟߊ߬ߜߍ߲߬ߟߊ߲ ߘߐ߫> No databases are used by this page. ߟߐ߲ߕߊߓߘߐ ߡߊ߫ ߟߊߓߊ߯ߙߊ߫ ߞߐߜߍ ߣߌ߲߬ ߘߐ߫. <b>Connection is Encrypted.</b> <b>ߜߊ߲߬ߞߎ߲߬ߠߌ ߘߏ߰ߣߍ߲.</b> <b>Your connection to this page is secured with this certificate: </b> <b>ߌ ߟߊ߫ ߜߊ߲߬ߞߎ߲߬ߠߌ ߟߊߞߊ߲ߘߊߣߍ߲ ߠߋ߬ ߞߐߜߍ ߣߌ߲߬ ߘߐ߫ ߟߊ߬ߜߍ߬ߟߊ߲ ߘߐ߫ ߟߊ߫: </b> <b>Connection Not Encrypted.</b> <b>ߜߊ߲߬ߞߎ߲߬ߠߌ ߘߏ߲߰ߓߊߟߌ.</b> <b>Your connection to this page is not secured!</b> <b>ߌ ߟߊ߫ ߜߊ߲߬ߞߎ߲߬ߠߌ ߟߊߞߊ߲ߘߊߣߍ߲߫ ߕߍ߫ ߞߐߜߍ ߣߌ߲߬ ߘߐ߫߹</b> Copy Image Location ߖߌ߬ߦߊ ߛߊ߲߬ߓߊ߬ߕߐ߮ ߓߊߓߌߟߊ߫ Copy Image Name ߖߌ߬ߦߊ ߕߐ߮ ߓߊߓߌߟߊ߫ Save Image to Disk ߖߌ߬ߦߊ ߟߊߞߎ߲߬ߘߎ߫ ߝߍ߬ߜߍ ߞߊ߲߬ Error! ߝߌ߬ߟߌ߹ This preview is not available! ߢߍߓߌߟߊ ߣߌ߲߬ ߕߍ߫ ߡߊߛߐ߬ߘߐ߲߬߹ Save image... ߖߌ߬ߦߊ ߟߊߞߎ߲߬ߘߎ߬... Cannot write to file! ߛߓߍߟߌ߫ ߕߍ߫ ߛߋ߫ ߞߍ߫ ߟߊ߫ ߞߐߕߐ߯ߘߐ ߘߐ߫ Preview not available ߢߍߓߌߟߊ߫ ߡߊߛߐ߬ߘߐ߲߬ߓߊߟߌ SiteInfoWidget More... ߜߘߍ߫... Your connection to this site is <b>secured</b>. ߌ ߟߊ߫ ߜߊ߲߬ߞߎ߲߬ߠߌ <b>ߟߊߞߊ߲ߘߊߣߍ߲߫</b> ߠߋ߬ ߞߐߜߍ ߣߌ߲߬ ߘߐ߫. Your connection to this site is <b>unsecured</b>. ߌ ߟߊ߫ ߜߊ߲߬ߞߎ߲߬ߠߌ <b>ߟߊߞߊ߲ߘߓߊߟߌ</b> ߟߋ߬ ߞߐߜߍ ߣߌ߲߬ ߘߐ߫. This is your <b>%1</b> visit of this site. ߣߌ߲߬ ߦߴߌ ߛߋ߲߬ߢߊ߬ <b>%1</b> ߟߋ߬ ߘߌ߫ ߓߐߒߡߊߟߌ ߟߊ߫ ߞߍߦߙߐ ߣߌ߲߬ ߘߐ߫. You have <b>never</b> visited this site before. ߌ ߡߊ߫ ߛߋ߫ ߞߍߦߙߐ ߣߌ߲߬ ߘߐ߫ ߡߎߣߎ߲߬ <b>ߝߛߍߞߘߎ߫</b>. first ߝߟߐ second ߝߌߟߊߣߊ߲ third ߛߓߊߣߊ߲ SourceViewer Source of ߓߐߛߎ߲ File ߞߐߕߐ߯ߘߐ Load in page ߞߐߜߍ ߘߐ߫ ߟߊ߬ߦߟߍ߬ߟߌ Save as... ߊ߬ ߟߊߞߎ߲߬ߘߎ߫ ߕߊ߲߬... Close ߊ߬ ߘߊߕߎ߲߯ Edit ߊ߬ ߡߊߦߟߍ߬ߡߊ߲߬ Undo ߊ߬ ߘߐߛߊ߬ Redo ߘߐ߬ߛߊ ߘߐߛߊ߬ Cut ߊ߬ ߕߍ߰ Copy ߊ߬ ߓߊߓߌߟߊ߫ Paste ߊ߬ ߣߙߊ߫ Select All ߊ߬ ߓߍ߯ ߓߊߕߐߡߐ߲߫ Find ߊ߬ ߢߌߣߌ߲߫ Go to Line... ߕߊ߯ ߛߐ߲ߜߐ ߟߊ߫... View ߟߊ߬ߟߐ߲߬ߠߌ Reload ߊ߬ ߢߟߊߕߍ߰ Editable ߡߊ߬ߦߟߍ߬ߡߊ߲߬ߕߊ Word Wrap ߛߊ߬ߦߌ߲߬ ߛߐ߲ߜߐ߫ ߞߎߘߊ ߟߊ߫ Source loaded in page ߓߊߛߎ߲߫ ߠߊߦߟߍ߬ߣߍ߲ ߞߐߜߍ ߘߐ߫ Cannot load in page. Page has been closed. ߞߐߜߍ ߟߊ߬ߦߟߍ߬ߟߌ ߕߍ߫ ߛߋ߫ ߞߍ߫ ߟߊ߫. ߞߐߜߍ߫ ߖߍ߬ߘߍ ߓߘߊ߫ ߕߎ߲߯. Save file... ߞߐߕߐ߯ߘߐ ߟߊߞߎ߲߬ߘߎ߬... Error! ߝߌ߬ߟߌ߹ Cannot write to file! ߛߓߍߟߌ߫ ߕߍ߫ ߛߋ߫ ߞߍ߫ ߟߊ߫ ߞߐߕߐ߯ߘߐ ߘߐ߫߹ Error writing to file ߞߐߕߐ߯ߘߐ ߞߣߐ߫ ߛߓߍߟߌ ߝߌ߬ߟߌ Source successfully saved ߓߊߛߎ߲ ߓߘߊ߫ ߟߊߞߎ߲߬ߘߎ߬ ߞߏߢߊ߬ Source reloaded ߓߊߛߎ߲߫ ߢߟߊߕߍ߰ߣߍ߲ Cannot reload source. Page has been closed. ߓߊߛߎ߲ ߕߍ߫ ߛߋ߫ ߢߟߊߕߍ߬ ߟߊ߫. ߞߐߜߍ ߖߍ߬ߘߍ ߓߘߊ߫ ߕߎ߲߯. Editable changed ߡߝߊ߬ߟߋ߲߬ߠߌ߬ ߡߊߦߟߍ߬ߡߊ߲߬ߕߊ Word Wrap changed ߛߐ߲ߜߐ ߟߊߛߊ߬ߦߌ߲ ߓߘߊ߫ ߡߊߝߊ߬ߟߋ߲߬ Enter line number ߛߐ߲ߜߐ ߝߙߍߕߍ ߟߊߘߏ߲߬ SourceViewerSearch Search: ߊ߬ ߢߌߣߌ߲߫: Search... ߊ߬ ߢߌߣߌ߲߫... Whole words ߞߎߡߊߘߋ߲ ߡߎ߰ߡߍ SpeedDial Image files ߖߌ߬ߦߊ ߞߐߕߐ߯ߘߐ ߟߎ߬ Select image... ߖߌ߬ߦߊ ߓߊߕߐߡߐ߲߫... Unable to load ߕߍ߫ ߛߋ߫ ߢߟߊߕߍ߰ ߟߊ߫ SpellCheckDialog SpellCheck ߛߓߍߢߊ ߛߊߞߍ߫ <b>Dictionary path</b> <b>ߞߘߐߝߐߟߊ߲ ߛߌߟߊ</b> Change... ߊ߬ ߡߊߝߊ߬ߟߋ߲߬... <b>User dictionary</b> <b>ߕߣߐ߬ߓߐ߬ ߟߊ߫ ߞߘߐߝߐߟߊ߲</b> Add ߊ߬ ߝߙߊ߬ Remove ߊ߬ ߖߐ߬ߛߌ߬ Using Hunspell library Hunspell ߓߏ߲߬ߘߏ߲߬ ߠߊߓߊ߯ߙߊߣߍ߲ Choose dictionary path... ߞߘߐߝߐߟߊ߲ ߛߐ߬ߘߐ߲߬ ߛߌߟߊ ߛߎߥߊ߲ߘߌ߫... Add new word... ߞߎߡߊߘߋ߲߫ ߞߎߘߊ ߝߙߊ߬... Add new word: ߞߎߡߊߘߋ߲߫ ߞߎߘߊ ߝߙߊ߬: Speller No suggestions ߢߍߛߟߌ߫ ߕߍ߫ Add to dictionary ߞߘߐߝߐߟߊ߲ ߝߙߊ߬ Settings ߞߐߕߐ߯ߘߐߛߙߋ ߟߎ߬ SqueezeLabelV2 Copy ߊ߬ ߓߊߓߌߟߊ߫ SslErrorDialog SSL Certificate Error! ߓߟߐߟߐ ߥߏ߬ߦߏ ߟߊߞߊ߲ߘߊߟߊ߲ ߟߊߜߍߟߌ ߝߌ߬ߟߌ߹ Only for this session ߞߎ߲߬ߘߊ ߣߌ߲߬ ߘߐߙߐ߲߫ ߢߍ߫ TabBar &New tab ߛߏ߬ߙߌ߲߬ߘߐ߬ ߞߎߘߊ &Stop Tab ߛߏ߬ߙߌ߲߬ߘߐ ߘߊߕߎ߲߯ &Reload Tab ߛߏ߬ߙߌ߲߬ߘߐ ߢߟߊߕߍ߰ &Duplicate Tab ߛߏ߬ߙߌ߲߬ߘߐ ߓߊߟߌ߫ D&etach Tab ߛߏ߬ߙߌ߲߬ߘߐ ߓߐ߬ߛߌ߬ Un&pin Tab ߛߏ߬ߙߌ߲߬ߘߐ ߣߌ߲߬ ߓߐ߬ߛߌ߬ &Pin Tab ߛߏ߬ߙߌ߲߬ߘߐ ߜߊ߲ߜߊ߲߫ Re&load All Tabs ߛߏ߬ߙߌ߲߬ߘߐ ߓߍ߯ ߢߟߊߕߍ߰ &Bookmark This Tab ߛߏ߬ߙߌ߲߬ߘߐ ߣߌ߲߬ ߡߊߦߋߙߋ߲߫ Bookmark &All Tabs ߞߐߜߍ ߓߍ߯ ߡߊߦߋߙߋ߲߫ Close Ot&her Tabs ߛߏ߬ߙߌ߲߬ߘߐ߬ ߜߘߍ߫ ߕߎ߲߯ Cl&ose ߊ߬ ߕߎ߲߯ Reloa&d All Tabs ߛߏ߬ߙߌ߲߬ߘߐ ߓߍ߯ ߢߟߊߕߍ߰ Restore &Closed Tab ߛߏ߬ߙߌ߲߬ߘߐ ߕߎ߲߯ߣߍ߲ ߠߎ߬ ߟߊߛߊ߬ߦߌ߬ Close Tabs ߛߏ߬ߙߌ߲߬ߘߐ ߟߎ߬ ߕߎ߲߯ Do you really want to close other tabs? ߦߴߊ߬ ߝߍ߫ ߞߊ߬ ߛߏ߬ߙߌ߲߬ߘߐ ߟߎ߬ ߕߎ߲߯ ߠߋ߬ ߢߍ؟ TabWidget New Tab ߛߏ߬ߙߌ߲߬ߛߘߐ߬ ߞߎߘߊ List of tabs ߛߏ߲߬ߙߌ߲߬ߘߐ ߟߎ߬ ߛߙߍߘߍ Loading... ߢߟߊߕߍ߯ߟߌ... No Named Page ߕߐ߮ ߕߍ߫ ߞߐߜߍ ߟߊ߫ Currently you have %1 opened tabs ߛߏ߬ߙߌ߲߬ߘߐ߬ %1 ߟߋ߬ ߘߊߦߟߍ߬ߣߍ߲߫ ߕߋ߲߬ New tab ߛߏ߬ߙߌ߲߬ߘߐ߬ ߞߎߘߊ Empty ߘߐߞߏߟߏ߲ Restore All Closed Tabs ߛߏ߬ߙߌ߲߬ߘߐ߬ ߕߎ߲߯ߣߍ߲ ߓߍ߯ ߟߊߛߊ߬ߦߌ߬ Clear list ߛߙߍߘߍ ߖߐ߬ߛߌ߬ TabbedWebView Loading... ߢߟߊߕߍ߯ߟߌ... %1 - QupZilla %1 - ߞߎߖ߭ߌߟߊ Inspect Element ߝߌ߬ߛߌ ߜߋߟߎ߲߫ ThemeManager <b>Name:</b> <b>ߕߐ߮:</b> <b>Author:</b> <b>ߞߍߓߊ߮:</b> <b>Description:</b> <b>ߡߊ߲߬ߞߕߎ߬ߟߌ:</b> License ߟߊ߬ߘߌߢߍ ToolButton Stop ߌ ߟߐ߬ Reload ߊ߬ ߢߟߊߕߍ߰ Updater Update available ߟߏ߲ߘߐߦߊߟߌ ߛߐ߬ߘߐ߲߬ߣߍ߲ New version of QupZilla is ready to download. ߞߎߖ߭ߌߟߊ ߓߐߞߏ߫ ߞߎߘߊ ߘߏ߫ ߘߌ߫ ߛߋ߫ ߟߊߖߌ߰ ߟߊ߫. Update ߟߏ߲ߘߐߦߊߟߌ UserAgentDialog User Agent Manager ߕߣߐ߬ߓߐ߬ߟߊ߫ ߞߣߐ߬ߜߍ߲߬ߓߊ߮ ߞߎ߲߬ߠߊ߬ߛߌ߰ߟߊ Change global User Agent ߕߣߐ߬ߓߐ߬ߟߊ߫ ߞߣߐ߬ߜߍ߲߬ߓߊ߮ ߝߘߏ߬ߓߊ߬ ߡߝߊߟߋ߲ߠߌ Use different User Agents for specified sites ߕߣߐ߬ߓߐ߬ߟߊ߫ ߞߣߐ߬ߜߍ߲߬ߓߊ߮ ߘߏ߫ ߜߘߍ߫ ߟߎ߫ ߟߊߓߊ߯ߙߊ߫ ߞߍߦߙߐ߫ ߘߊ߲ߣߊߕߍ߰ߣߍ߲ ߠߎ߬ ߢߍ߫ Site ߞߍߦߙߐ User Agent ߕߣߐ߬ߓߐ߬ߟߊ߫ ߞߣߐ߬ߜߍ߲߬ߓߊ߮ Add ߊ߬ ߝߙߊ߬ Remove ߊ߬ ߖߐ߬ߛߌ߬ Edit ߊ߬ ߡߊߦߟߍ߬ߡߊ߲߬ Add new site ߞߍߦߙߐ ߜߘߍ߫ ߝߙߊ߬ Edit site ߞߍߦߙߐ ߡߊߦߟߍ߬ߡߊ߲߬ Site domain: ߞߍߦߙߐ ߕߦߊ User Agent: ߕߣߐ߬ߓߐ߬ߟߊ߫ ߞߣߐ߬ߜߍ߲߬ߓߊ߮: WebInspectorDockWidget Web Inspector ߓߟߐߟߐ ߜߋߟߎ߲ߓߊ߮ WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? ߞߎߖ߭ߌߟߊ ߕߍ߫ ߛߋ߫ ߛߘߌ߬ߜߋ߲߬ <b>%1:</b> ߞߎ߲߬ߠߊߛߌ߰ ߟߊ߫. ߛߘߌ߬ߜߋ߲߬ ߠߊߢߌߣߌ߲ߣߍ߲ ߦߋ߫ <ul><li>%2</li></ul>ߦߴߊ߬ ߝߍ߬ ߞߎߖ߭ߌߟߊ ߦߋ߫ ߛߘߌ߬ߜߋ߲ ߣߌ߲߬ ߘߊߦߟߍ߬ ߓߟߏߦߊߟߌ ߞߊ߲ߞߋ ߘߐ߫ ߟߋ߬ ߢߍ؟ Remember my choice for this protocol ߌ ߖߊ߲߬ߕߏ߫ ߝߐߞߊ߲ ߣߌ߲߬ ߘߐ߫ ߒ ߠߊ߫ ߛߎߥߊ߲ߘߌߣߍ߲ ߣߌ߲߬ ߢߍ߫ External Protocol Request ߞߐߞߊ߲߫ ߝߐߟߌ ߢߌ߬ߣߌ߲߬ߟߊ߲ To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) ߣߌ߫ ߦߴߊ߬ ߝߍ߬ ߞߊ߬ ߞߐߜߍ ߣߌ߲߬ ߠߊߟߐ߲߫߸ ߞߎߖ߭ߌߟߊ ߞߊ߫ ߞߊ߲߫ ߞߊ߬ ߢߌ߬ߣߌ߲߬ߞߊ߬ߟߌ ߟߋ߬ ߟߊߕߊ߯ ߌߞߐ߫ (ߦߏ߫ ߖߊ߬ߥߏ߬ ߢߌߣߌ߲ߠߌ ߡߍ߲ ߓߊ߲ߣߍ߲߫ ߞߍ߫ ߟߊ߫ ߛߌߛߍ߲߬.) Confirm form resubmission ߛߓߍߟߝߊߕߊ ߟߊߕߊ߯ߟߌ ߟߊߘߌ߬ߢߍ߬ Select files to upload... ߞߐߕߐ߯ߘߐ ߟߊߦߟߍ߬ߕߊ ߟߎ߬ ߓߊߕߐߡߐ߲߫... Server refused the connection ߛߐߘߊ ߓߘߴߊ߬ ߓߊ߲߬ ߜߊ߲߬ߞߎ߲߬ߠߌ ߡߊ߬ Server closed the connection ߛߐߘߊ ߓߘߊ߫ ߜߊ߲߬ߞߎ߲߬ߠߌ ߕߍ߰ Server not found ߛߐߘߊ ߛߐ߬ߘߐ߲߬ߓߊߟߌ Connection timed out ߜߊ߲߬ߞߎ߲߬ߠߌ ߕߎ߬ߡߊ߬ ߓߘߊ߫ ߕߊ߬ߡߌ߲߬ Untrusted connection ߜߊ߲߬ߞߎ߲߬ߠߌ߫ ߝߛߏ߬ߝߛߊ߬ߣߍ߲ Temporary network failure ߞߙߏ߬ߝߏ ߕߎ߬ߡߟߊ߬ ߝߙߋߞߋ Proxy connection refused ߜߊ߲߬ߞߎ߲߬ߠߌ ߡߊ߫ ߛߋ߫ ߞߍ߫ ߟߊ߫ ߕߍߟߐ ߟߊ߫ Proxy server not found ߕߍߟߐ ߛߐߘߊ ߛߐ߬ߘߐ߲߬ߓߊߟߌ Proxy connection timed out ߕߍߟߐ ߜߊ߲߬ߞߎ߲߬ߠߌ ߕߎ߬ߡߊ ߓߘߊ߫ ߕߊ߬ߡߌ߲߬ Proxy authentication required ߕߍߟߐ ߜߍߞߟߐߦߊߟߌ߫ ߡߊߢߌߣߌ߲ߣߍ߲ Content not found ߞߣߐߘߐ ߛߐ߬ߘߐ߲߬ߓߊߟߌ Unknown network error ߞߙߏ߬ߝߏ߫ ߝߟߌ߬ ߟߐ߲ߓߊߟߌ AdBlocked Content ߞߣߐߘߐ ߡߍ߲ ߓߊߟߊ߲ߣߍ߲ ߓߊߟߊ߲ߠߊ ߓߟߏ߫ Blocked by <i>%1</i> ߊ߬ ߓߘߊ߫ ߓߊߟߊ߲߫ <i>%1</i> ߓߟߏ߫ Content Access Denied ߛߐ߲߬ ߡߊ߫ ߞߍ߫ ߞߣߐߘߐ ߡߊߛߐ߬ߘߐ߲ ߡߊ߬ Error code %1 ߘߏߞߊ߲ ߝߌ߬ߟߌ %1 Failed loading page ߞߐߜߍ ߟߊ߬ߦߟߍ߬ߟߌ ߝߌ߬ߟߌ QupZilla can't load page. ߞߎߖ߭ߌߟߊ ߕߍ߫ ߛߋ߫ ߟߊߦߟߍ߬ ߟߊ߫. QupZilla can't load page from %1. ߞߎߖ߭ߌߟߊ ߕߍ߫ ߛߋ߫ ߞߐߜߍ %1 ߣߌ߲߬ ߠߊߦߟߍ߬ ߟߊ߫. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com ߛߊ߲߬ߓߊ߬ߕߐ߮ ߛߊߞߍ߫ ߛߓߍߟߌ ߝߌ߬ߟߌ ߟߎ߫ ߡߊ߬߸ ߡߌ߬ߛߊ߬ߟߌ߬ ߘߐ߫ ߞߊ߬ <b>ww.</b>example.com ߛߓߍ߫ ߝߌ߬ߟߌ ߡߊ߬ <b>www.</b>example.com ߣߐ߭ ߘߐ߫ If you are unable to load any pages, check your computer's network connection. ߣߴߌ ߡߊ߫ ߛߋ߫ ߞߐߜߍ߫ ߛߌ߫ ߟߊߦߟߍ߬ ߟߊ߫߸ ߌ ߟߊ߫ ߕߟߋ߬ߓߊ ߓߟߐߟߐ߫ ߜߊ߲ߞߎ߲ߠߌ ߛߊߞߍ߫ ߏ߬ ߘߐ߫. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. ߣߴߌ ߟߊ߫ ߕߟߋ߬ߓߊ ߟߊߞߊ߲ߘߊߣߍ߲߫ ߞߍ߫ ߘߊ߫ ߜߊ߬ߓߐߍ ߘߏ߫ ߓߟߏ߫ ߥߟߊ߫ ߕߍߟߐ ߘߏ߫߸ ߟߊ߫ ߊ߬ ߟߊ߫ ߞߏ߫ ߞߎߖ߭ߌߟߊ ߟߊߘߌ߬ߢߍ߬ߣߍ߲ ߓߟߐߟߐ߫ ߟߊߛߐߘߐ߲ ߡߊ߬. Try Again ߊ߬ ߘߐߜߍ߫ ߌߞߐ߫ JavaScript alert ߖ߭ߝ߭ߊߣߐ߬ߣߐ߬ߟߊ ߟߊ߬ߛߏ߬ߓߌ߬ߟߌ Prevent this page from creating additional dialogs ߞߐߜߍ ߣߌ߲߬ ߓߊ߬ߟߌ߬ ߘߊߘߐߝߙߊ߫ ߖߘߌߒߞߊ߲ ߘߏ߫ ߛߌ߲ߘߌ߫ ߟߊ߫ Choose file... ߞߐߕߐ߯ߘߐ ߛߎߥߊ߲ߘߌ߫... Cannot read data from <b>%1</b>. Upload was cancelled! ߟߐ߲ߕߊ ߡߊ߫ ߛߋ߫ ߘߐߞߊ߬ߙߊ߲߬ ߠߊ߫ ߞߊ߬ ߝߙߊ߫ <b>%1</b> ߟߊ߫. ߟߊ߬ߦߟߍ߬ߟߌ ߘߐߛߊ߬ ߘߊ߫ ߟߋ߬߹ Cannot read file! ߞߐߕߐ߯ߘߐ ߕߍ߫ ߛߋ߫ ߘߐߞߊ߬ߙߊ߲߬ ߠߊ߫߹ WebSearchBar Manage Search Engines ߢߌߣߌ߲ߠߌ ߣߌߘߐ ߞߎ߲߬ߠߊ߬ߛߌ߰ߟߌ Add %1 ... %1 ߝߙߊ߬... Paste And &Search ߊ߬ ߣߙߊ߫ ߞߵߊ߬ ߢߌߣߌ߲߫ Clear All ߊ߬ ߓߍ߯ ߖߐ߬ߛߌ߬ Show suggestions ߢߍߛߌ ߟߎ߬ ߟߊߟߐ߲߫ Search when engine changed ߊ߬ ߢߌߣߌ߲߫ ߣߌߘߐ ߟߊߦߟߍ߬ ߕߎߡߊ WebView No Named Page ߞߐߜߍ߫ ߕߐߒߕߊ߲ Create Search Engine ߢߌߣߌ߲ߠߌ߫ ߣߌߘߐ ߘߏ߫ ߛߌ߲ߘߌ߫ Cut ߊ߬ ߕߍ߰ Copy ߊ߬ ߓߊߓߌߟߊ߫ Paste ߊ߬ ߣߙߊ߫ Select All ߊ߬ ߓߍ߯ ߓߊߓߌߟߊ߫ Default ߖߏߣߡߊ Left to Right ߡߊ߬ߙߊ߲ ߞߊ߬ ߕߊ߯ ߞߌߣߌ߲ ߝߍ߬ Right to Left ߞߌߣߌ߲ ߞߊ߬ ߕߊ߯ ߡߊߙߊ߲ ߝߍ߬ Bold ߞߎ߲߬ߓߊ Italic ߖߍ߲߬ߞߍ߬ߟߌ Underline ߞߘߐߕߍ߰ߣߍ߲ &Reload ߊ߬ ߢߟߊߕߍ߰ S&top ߊ߬ ߟߊߟߐ߬ Delete ߊ߬ ߖߐ߬ߛߌ߬ &Back ߞߐ߲߬ߣߍ߲ &Forward ߟߊ߬ߕߎ߲߬ߠߊ This frame ߡߊ߬ߘߏ߲ ߣߌ߲߬ Show &only this frame ߡߊ߬ߘߏ߲ ߣߌ߲߬ ߘߐߙߐ߲߫ ߠߊߟߐ߲߫ Show this frame in new &tab ߡߊ߬ߘߏ߲ ߣߌ߲߬ ߠߊߟߐ߲߫ ߛߏ߬ߙߌ߲߬ߘߐ߬ ߞߎߘߊ ߘߏ߫ ߘߐ߫ Print frame ߡߊ߬ߘߏ߲ ߜߌ߬ߙߌ߲߬ߘߌ߬ Zoom &in ߊ߬ ߟߊߓߏ߲߬ߧߊ߬ &Zoom out ߊ߬ ߟߊߘߐ߯ߦߊ߫ Reset ߊ߬ ߟߊߞߎߘߦߊ߫ Show so&urce of frame ߡߊ߬ߘߏ߲ ߛߎ߲ ߠߊߟߐ߲߫ Book&mark page ߞߐߜߍ ߡߊߦߋߙߋ߲߫ &Save page as... ߞߐߜߍ ߟߊߞߎ߲߬ߘߎ߫ ߕߊ߲߬... &Copy page link ߞߐߜߍ ߛߘߌ߬ߜߋ߲ ߓߊߓߌߟߊ߫ Send page link... ߞߐߜߍ ߛߘߌ߬ߜߋ߲ ߠߊߕߊ߯... &Print page ߞߐߜߍ ߜߌ߬ߙߌ߲߬ߘߌ߬ Select &all ߊ߬ ߓߍ߯ ߓߊߕߐߡߐ߲߫ Validate page ߞߐߜߍ ߕߐ߬ߡߐ߲߬ Show so&urce code ߓߊߛߎ߲ ߘߏߞߊ߲ ߠߊߟߐ߲߫ Show info ab&out site ߞߍߦߙߐ ߞߌ߬ߓߊ߬ߙߏ ߟߊߟߐ߲߫ Open link in new &tab ߛߘߌ߬ߜߋ߲ ߘߊߦߟߍ߬ ߛߏ߬ߙߌ߲߬ߘߐ߬ ߞߎߘߊ߫ ߘߐ߫ Open link in new &window ߛߘߌ߬ߜߋ߲ ߘߊߦߟߍ߬ ߝߢߐߘߊ߫ ߞߎߘߊ߫ ߘߐ߫ B&ookmark link ߛߘߌ߬ߜߋ߲ ߡߊߦߋߙߋ߲߫ &Save link as... ߛߘߌ߬ߜߋ߲ ߟߊߞߎ߲߬ߘߎ߫ ߕߊ߲߬... Send link... ߛߘߌ߬ߜߋ߲ ߠߊߕߊ߯... &Copy link address ߛߘߌ߬ߜߋ߲ ߛߊ߲߬ߓߊ߬ߕߐ߮ ߓߊߓߌߟߊ߫ Show i&mage ߖߌ߬ߦߊ ߟߊߟߐ߲߫ Copy im&age ߖߌ߬ߦߊ ߓߊߓߌߟߊ߫ Copy image ad&dress ߖߌ߬ߦߊ ߛߊ߲߬ߓߊ߬ߕߐ߮ ߓߊߓߌߟߊ߫ &Save image as... ߖߌ߬ߦߊ ߟߊߞߎ߲߬ߘߎ߫ ߕߊ߲߬... Send image... ߖߌ߬ߦߊ ߟߊߕߊ߯... Send text... ߞߟߏߜߍ ߟߊߕߊ߯... Google Translate ߜ߭ߎߜߟ ߘߟߊߡߌߣߟߊ Dictionary ߓߏ߲߬ߘߏ߲ Go to &web address ߕߊ߯ ߓߟߐߟߐ߫ ߛߊ߲߬ߓߊ߬ߕߐ ߟߊ߫ Search "%1 .." with %2 "%1 .." ߣߌ߫ %2 ߢߌߣߌ߲߫ Search with... ߊ߬ ߣߌ߫ ߣߌ߲߬ ߢߌߣߌ߲߫... &Play ߊ߬ ߘߐߞߊ߬ߙߊ߲߬ &Pause ߊ߬ ߟߊߘߎ߲߫ Un&mute ߊ߬ ߟߊߞߎߡߊ߫ &Mute ߊ߬ ߕߍ߰ &Copy Media Address ߞߎ߲߬ߠߊ߬ߝߎߟߋ߲ ߛߊ߲߬ߓߊ߬ߕߐ߮ ߓߊߓߌߟߊ߫ &Send Media Address ߞߎ߲߬ߠߊ߬ߝߎߟߋ߲ ߛߊ߲߬ߓߊ߬ߕߐ߮ ߟߊߕߊ߯ Save Media To &Disk ߞߎ߲߬ߠߊ߬ߝߎߟߋ߲ ߠߊߞߎ߲߬ߘߎ߫ ߝߍ߬ߜߍ ߞߊ߲߬ Check &Spelling ߛߓߍߢߊ ߛߊߞߍ߫ Languages ߞߊ߲ ߠߎ߬ jsAlert Prevent this page from creating additional dialogs ߞߐߜߍ ߣߌ߲߬ ߓߊ߬ߟߌ߬ ߘߊߘߐߝߙߊ߫ ߖߘߌߒߞߊ߲ ߘߏ߫ ߛߌ߲ߘߌ߫ ߟߊ߫ qupzilla-1.6.0/translations/pl_PL.ts000066400000000000000000010522621226107126500174700ustar00rootroot00000000000000 AboutDialog About QupZilla O QupZilli Authors Autorzy Authors and Contributors Autorzy i Współtwórcy < About QupZilla < O QupZilli <p><b>Application version %1</b><br/> <p><b>Wersja programu %1</b><br/> <b>WebKit version %1</b></p> <b>Wersja WebKit %1</b></p> <small>Build time: %1 </small></p> <small>Skompilowano: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Główny programista:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Współtwócy:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Tłumacze:</b><br/>%1</p> AcceptLanguage Preferred Languages Preferowany język Add... Dodaj... Remove Usuń Up Do góry Down Na dół Personal [%1] Osobisty [%1] AdBlockAddSubscriptionDialog Add Subscription Dodaj zestaw filtrów Title: Tytuł: Address: Adres: Add new subscription to AdBlock: Dodaj nowy zestaw filtrów AdBlock: AdBlockCustomList Custom Rules Własne filtry AdBlockDialog AdBlock Configuration Ustawienia AdBlock Enable AdBlock Włącz AdBlock Search... Szukaj... Options Opcje AdBlock AdBlock Use only essential part of EasyList (for performance reasons) Add Rule Dodaj filtr Remove Rule Usuń filtr Add Subscription Dodaj zestaw filtrów Remove Subscription Usuń zestaw filtrów Update Subscriptions Aktualizuj zestaw filtrów Learn about writing rules... Pomoc dotycząca pisania filtrów... AdBlockIcon AdBlock lets you block unwanted content on web pages AdBlock pozwala na blokowanie niechcianej zawartości stron www Blocked popup window Zablokowano wyskakujące okno AdBlock blocked unwanted popup window. AdBlock zablokował niechciane wyskakujące okno. AdBlock AdBlock Show AdBlock &Settings Otwórz &ustawienia AdBlocka Disable on %1 Wyłącz w %1 Disable only on this page Wyłącz tylko na tej stronie Blocked Popup Windows Zablokowane wyskakujące okna %1 with (%2) %1 z (%2) No content blocked Brak zablokowanej zawartości Blocked URL (AdBlock Rule) - click to edit rule Blokowany adres (AdBlock filtr) - kliknij aby edytować AdBlockManager Do you want to add <b>%1</b> subscription? Czy dodać zestaw filtrów <b>%1</b>? AdBlock Subscription Zestaw filtrów AdBlock EasyList EasyList AdBlockTreeWidget Add Rule Dodaj filtr Remove Rule Usuń filtr Add Custom Rule Dodaj własny filtr Please write your rule here: Wpisz swój filtr tutaj: %1 (recently updated) %1 (ostatnio aktualizowany) AddAcceptLanguage Add Language Dodaj język Choose preferred language for web sites Wybierz preferowany język dla stron Personal definition: Własna definicja: AesInterface Warning! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. AutoFill Database (plaintext) Database (encrypted) Enter Master Password Permission is required, please enter Master Password: Warning! Entered password is wrong! This backend needs a master password to be set! QupZilla just switches to its default backend AutoFillManager Passwords are stored in: Change backend Backend options Passwords Hasła Server Serwer Username Nazwa użytkownika Password Hasło Import/Export Importuj/Eksportuj Show Passwords Pokaż hasła Edit Edytuj Remove Usuń Remove All Usuń wszystko Exceptions Wyjątki Import Passwords from File... Importuj hasła z pliku... Export Passwords to File... Eksportuj hasła do pliku... Search Szukaj Change backend... Change backend: Are you sure that you want to show all passwords? Czy na pewno chcesz pokazać wszystkie hasła? Hide Passwords Ukryj hasła Confirmation Potwierdzenie Are you sure to delete all passwords on your computer? Czy na pewno chcesz usunąć wszystkie hasła zapisane na komputerze? Edit password Edytuj hasło Change password: Zmień hasło: Choose file... Wybierz plik... Cannot read file! Nie można odczytać pliku! Successfully imported Importowanie udane Error while importing! Błąd podczas importowania! Cannot write to file! Nie można zapisać do pliku! Successfully exported Eksportowanie udane AutoFillNotification Update Aktualizuj Remember Zapamiętaj Never For This Site Nigdy dla tej strony Not Now Nie teraz on %1 for <b>%1</b> dla <b>%1</b> Do you want QupZilla to update saved password %1? czy chcesz aby QupZilla zaktualizowała zapisane hasło &1? Do you want QupZilla to remember the password %1 %2? czy chcesz aby QupZilla zapamiętała hasło %1 %2 ? AutoFillWidget Choose username to login Wybierz nazwę użytkownika do logowania Login Loguj Login as <b>%1</b> Zaloguj jako <b>%1</b> BookmarkIcon Bookmark this Page Dodaj do zakładek Edit this bookmark Edytuj zakładki BookmarksImportDialog Import Bookmarks Importuj Zakładki <b>Import Bookmarks</b> <b>Importuj Zakładki</b> From File Z Pliku Internet Explorer Choose browser from which you want to import bookmarks: Wybierz przeglądarkę, z której chcesz zaimportować zakładki: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Notka:</b> Aktualnie można importować jedynie z pliku html. Choose... Wybierz... Try to fetch icons for all bookmarks (may take a while) Fetching icons, please wait... Pobieranie ikon, proszę czekać ... Title Tytuł Url Adres Next Dalej Cancel Anuluj <b>Importing from %1</b> <b>Importuj z %1</b> Finish Zakończ Please press Finish to complete importing process. Proszę nacisnąć przycisk Zakończ, aby zakończyć proces importu. Error! Błąd! The file doesn't contain any bookmark. Plik nie zawiera żadnej zakładki. Choose directory... Wybierz katalog... Choose file... Wybierz plik... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox przechowuje swoje zakładki w bazie SQLite <b>places.sqlite</b>. Ten plik znajduję się zazwyczaj w Please choose this file to begin importing bookmarks. Proszę wybrać ten plik, aby rozpocząć importowanie zakładek. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Google Chrome przechowuj swoje zakładki w pliku tekstowym <b>Zakładki</b>. Ten plik znajduję sie zazwyczaj w Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera przechowuje swoje zakładki w pliku tekstowym <b>bookmarks.adr</b>. Ten plik znajduję się w You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Można zaimportować zakładki z dowolnej przeglądarki, która do pozwala na ich eksport do pliku HTML. Plik ten ma zwykle rozszerzenie Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Explorer przechowuje zakładki w katalogu <b>Ulubione</b>. Katalog ten znajduję się w Please choose this folder to begin importing bookmarks. Proszę wybrać ten katalog aby rozpocząć import zakładek. No Error Brak błędów Unable to open file. Nie można otworzyć pliku. Cannot evaluate JSON code. Nie można przetworzyć kodu JSON. File does not exist. Plik nie istnieje. Unable to open database. Is Firefox running? Nie można otworzyć bazy danych. Firefox jest uruchomiony? Directory does not exist. The directory does not contain any bookmarks. BookmarksManager Bookmarks Zakładki Optimize Database Optymalizuj bazę danych Import Bookmarks Importuj zakładki Add Folder Dodaj katalog Title Tytuł Url Adres Expand All Rozwiń wszystko Collapse All Zwiń wszystko Add new folder Dodaj nowy katalog Choose parent folder for new folder: Wybierz folder nadrzędny dla nowego folderu: Choose name for new bookmark folder: Wybierz nazwę dla nowego katalogu zakładek: Add new subfolder Dodaj nowy podkatalog Choose name for new subfolder in bookmarks toolbar: Wybierz nazwę dla nowego podkatalogu w pasku zakładek: Rename Folder Zmień nazwę katalogu Choose name for folder: Wybierz nazwę dla katalogu: Add Subfolder Dodaj podkatalog Rename folder Zmień nazwę katalogu Remove folder Usuń katalog Open link in current &tab Otwórz odnośnik w bieżącej &karcie Open link in &new tab Otwórz odnośnik w &nowej karcie Move bookmark to &folder Przenieś zakładkę do &katalogu Change icon Zmień ikonę Rename bookmark Zmien nazwę zakładki Remove bookmark Usuń zakładkę <b>Warning: </b>You already have bookmarked this page! <b>Uwaga: </b> Stona znajduję się już w zakładkach! Choose name and location of this bookmark. Wybierz nazwę i położenie dla zakładki. Add New Bookmark Dodaj zakładkę Choose folder for bookmarks: Wybierz katalog dla zakładek: Bookmark All Tabs Dodaj wszystkie karty do zakładek BookmarksModel Bookmarks In Menu Zakładki w menu Bookmarks In ToolBar Pasek zakładek Unsorted Bookmarks Nieposortowane zakładki BookmarksSideBar Search... Szukaj... Open link in current &tab Otwórz odnośnik w bieżącej &karcie Open link in &new tab Otwórz odnośnik w &nowej karcie Copy address Kopiuj adres &Delete &Usuń BookmarksToolbar &Bookmark Current Page Dodaj &do zakładek Bookmark &All Tabs Dodaj &wszystkie karty do zakładek &Organize Bookmarks &Zarządzaj zakładkami Show Most &Visited Zobacz &najczęściej odwiedzane Show Only Icons Pokaż tylko Ikony &Hide Toolbar Ukry&j pasek Open bookmark Otwórz zakładkę Open bookmark in new tab Otwórz zakładkę w nowej karcie Move right Przesuń w prawo Move left Przesuń w lewo Edit bookmark Edytuj zakładkę Remove bookmark Usuń zakładkę Edit bookmark: Edytuj zakładkę: Title: Tytuł: Url: Adres: Edit Bookmark Edytuj zakładkę Most visited Najczęściej odwiedzane Sites you visited the most Strony które często odwiedzasz Empty Pusto BookmarksTree Bookmarks Zakładki New Folder... Nowy katalog... BookmarksWidget Add to Speed Dial Dodaj do szybkiego wybierania Save Zapisz Name: Nazwa: Folder: Katalog: Remove from Speed Dial Usuń z szybkiego wybierania Remove Usuń BrowsingLibrary Library Biblioteka Search... Szukaj... History Historia Bookmarks Zakładki RSS RSS Database Optimized Optymalizuj bazę danych Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 Baza danych zoptymalizowana poprawnie.<br/><br/><b>Rozmiar przed: </b>%1<br/><b>Rozmiar po: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Wystawiony dla</b> Common Name (CN): Zwykła nazwa (CN): Organization (O): Organizacja (O): Organizational Unit (OU): Jednostka organizacyjna (OU): Serial Number: Numer seryjny: <b>Issued By</b> <b>Wystawiony przez</b> <b>Validity</b> <b>Ważność</b> Issued On: Wydane na: Expires On: Wygasa w dniu: ClearPrivateData Clear Recent History Wyczyść historię Choose what you want to delete: Wybierz co chcesz usunąć: Clear history Usuń historię Clear cache Wyczyść pamięć podręczną Clear icons Usuń ikony <b>Clear Recent History</b> <b>Wyczyść historię</b> Earlier Today Z dzisiaj Week Z tygodnia Month Z miesiąca All Wszystko Clear web databases Wyczyść bazy danych www Clear local storage Wyczyśc lokalnie przechowywane dane Clear cookies Usuń cisteczka ClickToFlash Object blocked by ClickToFlash Obiekt zablokowany przez ClickToFlash Show more information about object Pokaż więcej informacji o obiekcie Delete object Usuń obiekt Add %1 to whitelist Dodaj %1 do zaufanej listy Flash Object Obiekt Flash <b>Attribute Name</b> <b>Nazwa atrybutu</b> <b>Value</b> <b>Wartość</b> No more information available. Nie ma więcej dostępnych informacji. CookieManager Cookies Ciasteczka Stored Cookies Przechowywane ciasteczka Find: Znajdź: These cookies are stored on your computer: Ciasteczka przechowywane na komputerze: Server Serwer Cookie name Nazwa ciasteczka Name: Nazwa: Value: Wartość: Server: Serwer: Path: Ścieżka: Secure: Bezpieczne: Expiration: Wygasa: <cookie not selected> <nie wybrano ciasteczka> Remove all cookies Usuń wszystkie ciasteczka Remove cookies Usuń ciasteczka Cookie Filtering Filtrowanie ciasteczek <b>Cookie whitelist</b> <b>Biała lista ciasteczek</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Ciasteczka z tych serwerów będą ZAWSZE akceptowane(nawet gdy opcja zapisywania ciasteczek jest wyłączona) Add Dodaj Remove Usuń <b>Cookie blacklist</b> <b>Czarna lista ciasteczek</b> Cookies from these servers will NEVER be accepted Ciasteczka z tych serwerów nie będą NIGDY akceptowane Settings Ustawienia <b>Cookie Settings</b> <b>Ustawienia Cookies</b> Allow storing of cookies Zezwól na zapisywanie cookies Delete cookies on close Usuń cookies przy zamykaniu programu Match domain exactly Dokładnie dopasowuj domeny Filter tracking cookies Filtruj śledźące ciasteczka <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! Search Szukaj Confirmation Potwierdzenie Are you sure to delete all cookies on your computer? Czy na pewno usunąć wszystkie ciasteczka z komputera? Secure only Tylko bezpieczne All connections Wszystkie połączenia Session cookie Ciasteczko sesji Remove cookie Usuń ciasteczko Add to whitelist Dodaj do białej listy Add to blacklist Dodaj do czarnej listy DownloadFileHelper Save file as... Zapisz plik jako... NoNameDownload Bez nazwy DownloadItem Remaining time unavailable Pozostały czas niedostępny Error: Cannot write to file! Błąd: Nie można zapisać do pliku! Done - %1 Ukończono - %1 Cancelled Anulowano few seconds kilka sekund %n seconds %n minutes %n hours Unknown speed Nieznana prędkość kB/s MB/s GB/s Unknown size Nieznany rozmiar %2 - unknown size (%3) %2 - nieznany rozmiar (%3) Remaining %1 - %2 of %3 (%4) Pozostało %1 - %2 z %3 (%4) Cancelled - %1 Anulowano - %1 Delete file Usuń plik Do you want to also delete dowloaded file? Czy chcesz także usunąć pobrany plik? Open File Otwórz plik Open Folder Otwórz katalog Go to Download Page Przejdź do strony pobierania Copy Download Link Skopiuj odnośnik pobieranie Cancel downloading Anuluj pobieranie Remove Usuń Error Błąd Not found Nie znaleziono Sorry, the file %1 was not found! Przepraszamy plik %1 nie został znaleziony! Error: Błąd: DownloadManager Download Manager Menedżer pobierania Clear Wyczyść %1% of %2 files (%3) %4 remaining %1% z %2 plików (%3) %4 pozostało %1% - Download Manager Download Finished Pobieranie ukończone All files have been successfully downloaded. Wszystkie pliki pobrano prawidłowo. Warning Uwaga Are you sure to quit? All uncompleted downloads will be cancelled! Czy na pewno chcesz zamknąć? Wszystkie pobierane pliki będą anulowane! DownloadOptionsDialog Opening Otwieranie Copy download link You have chosen to open Wybrano do otwarcia which is a: który jest: What should QupZilla do with this file? Co QupZilla ma zrobić z tym plikiem? Open... Otwórz... Save File Zapisz plik Download with External Manager Pobierz za pomocą zewnętrznego programu from: z: Opening %1 Otwieranie %1 Download link copied. EditSearchEngine Name: Nazwa: Url: Adres: Shortcut: Skrót: Icon: Ikona: <b>Note: </b>%s in url or post data represent searched string Post Data: Change... Zmień... FileSchemeReply No Error Brak Błedu Up to higher level directory Przejdź do wyższego katalogu Show hidden files Pokaż ukryte pliki Name Nazwa Size Rozmiar Last modified Ostatnio modyfikowano Index for %1 Folder is empty. Folder jest pusty. FtpDownloader Cancelled! Anulowano! FtpSchemeReply Up to higher level directory Przejdź do wyższego katalogu Show hidden files Pokaż ukryte pliki Name Nazwa Size Rozmiar Last modified Ostatnio zmodyfikowano Index for %1 Folder is empty. Katalog jest pusty. Unknown command Nieznana komenda HTML5PermissionsDialog HTML5 Permissions Zezwól na HTML5 Notifications Powiadomienia Site Strona Behaviour Zachowanie Remove Usuń Geolocation Geolokalizacja Allow Zezwól Deny Zabroń HTML5PermissionsNotification Remember Zapamiętaj Allow Zezwól Deny Zabroń this site ta strona Allow %1 to show desktop notifications? Zezwolić aby %1 wyświetlał powiadomienia na pulpicie ? Allow %1 to locate your position? Zezwól %1 by lokalizował twoją pozycję ? History No Named Page Strona bez nazwy January Styczeń February Luty March Marzec April Kwiecień May Maj June Czerwiec July Lipiec August Sierpień September Wrzesień October Październik November Listopad December Grudzień HistoryManager History Historia Delete Usuń Clear All History Wyczyść całą historię Optimize Database Optymalizuj bazę danych Confirmation Potwierdź Are you sure to delete all history? Czy na pewno chcesz usunąć całą historię? HistoryModel Title Tytuł Address Adres Visit Date Data ostatniej wizyty Visit Count Licznik odwiedzin Today Dzisiaj This Week W tym tygodniu This Month W tym miesiącu HistorySideBar Search... Szukaj... HistoryView Open link in current tab Otwórz odnośnik w bieżącej karcie Open link in new tab Otwórz odnośnik w nowej karcie Copy title Kopiuj tytuł Copy address Kopiuj adres Remove Usuń IconChooser Choose icon... Wybierz ikonę... From file Z pliku Image (.png, .jpg, .jpeg, .gif) Obraz (.png, .jpg, .jpeg, .gif) Choose file... Wybierz plik... From database Z bazy danych Site Url: Adres strony: Image files Obrazki JsOptions JavaScript Options Ustawienia JavaScript Allow JavaScript to: Pozwól JavaScript na : Close windows Zamknij okna Open popup windows Otwórz wyskakujące okienka Change window size Zmień rozmiar okna Hide menu bar Schowaj pasek menu Hide status bar Schowaj pasek statusu Hide tool bar Schowaj pasek narzędziowy Access clipboard Otwórz schowek LicenseViewer License Viewer Podgląd licencji LocationBar Enter URL address or search on %1 Wpisz adres URL lub szukaj na %1 Paste And &Go Wklej i &przejdź Clear All Wyczyść wszystko .co.uk Append domain name on ALT + Enter = Should be different for every country .pl Show information about this page Pokaż informacje o stronie LocationCompleterView Switch to tab Przejdź do karty MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? QupZilla nie jest w tej chwili twoja domyślna przeglądarką. Czy chcesz aby stała się domyślna ? Always perform this check when starting QupZilla. Zawsze sprawdzaj przy uruchamianiu QupZilli. Default Browser Domyślna Przeglądarka QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. QupZilla jest nową, szybką i bezpieczną otwarto źródłową przeglądarką. Qupzilla podlega licencji GPL w wersji 3 lub późniejszej. Przeglądarka bazuje na silniku WebKit oraz Frameworku Qt. MasterPasswordDialog Encrypted DataBase Settings Set/Change Master Password... Clear Master Password... This backend does not work without a master password. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Current Password: New Password: Confirm Password: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. Warning! You entered a wrong password! New/Confirm password fields do not match! Some data has not been decrypted. The master password was not cleared! Are you sure to clear master password and decrypt data? NavigationBar No Named Page Strona bez nazwy Back Wstecz Forward Dalej Home Strona startowa New Tab Nowa karta Main Menu Menu główne Exit Fullscreen Zamknij pełny ekran Clear history Usuń historię NetworkManager SSL Certificate Error! Błąd certyfikatu SSL! The page you are trying to access has the following errors in the SSL certificate: Strona, którą próbujesz obejrzeć, ma następujące błędy w certyfikacie SSL: <b>Organization: </b> <b>Organizacja: </b> <b>Domain Name: </b> <b>Domena: </b> <b>Expiration Date: </b> <b>Ważny do: </b> <b>Error: </b> <b>Błąd: </b> Would you like to make an exception for this certificate? Chcesz zrobić wyjątek dla tego certyfikatu? Authorisation required Wymagana autoryzacja Username: Nazwa użytkownika: Password: Hasło: Save username and password on this site Zapisać użytkownika i hasło dla tej strony A username and password are being requested by %1. The site says: "%2" Nazwa użytkownika i hasło jest wymagane dla %1. Komentarz: "%2" FTP authorisation required Wymagana autoryzacja FTP Login anonymously Loguj anonimowo A username and password are being requested by %1:%2. Nazwa użytkownika i hasło są wymagane dla %1:%2. Proxy authorisation required Wymagana autoryzacja proxy Remember username and password for this proxy. A username and password are being requested by proxy %1. Nazwa użytkownika i hasło są wymagane dla proxy %1. PageScreen Page Screen Obrazek strony Format: Location: Lokalizacja: Browse... Przeglądaj... Save as %1 Zapisz jako %1 Choose location... Wybierz lokalizację... File '%1' already exists. Do you want to overwrite it? Plik '%1' już istnieje. Czy chcesz go nadpisać ? File already exists Plik już istnieje PluginsList Application Extensions Rozszerzenia aplikacji Allow Application Extensions to be loaded Pozwól na ładowanie rozszerzeń Settings Ustawienia WebKit Plugins Wtyczki WebKit <b>Click To Flash Plugin</b> <b>Kliknij by uruchomić Flash</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Click To Flash jest wtyczką, która blokuje automatyczne uruchamianie Flasha. Zawsze można go załadować ręcznie, klikając na ikonę Flash. Whitelist Biała lista Add Dodaj Remove Usuń Allow Click To Flash Pozwól na Click To Flash PluginsManager Add site to whitelist Dodaj stronę do białej listy Server without http:// (ex. youtube.com) Serwer bez http:// (np. youtube.com) Error! Błąd! Cannot load extension! Nie można załadować rozszerzenia ! PopupWebView Inspect Element Zbadaj element PopupWindow File Plik &Save Page As... &Zapisz stronę jako... Save Page Screen Zapisz obraz strony Send Link... Wyslij odnośnik... &Print... &Drukuj... Close Zamknij Edit Edytuj &Undo &Cofnij &Redo %Dalej &Cut &Wytnij C&opy K&opiuj &Paste W&klej Select All Zaznacz Wszystko Find Znajdz View Pokaż &Stop &Zatrzymaj &Reload &Odśwież Zoom &In Po&większ Zoom &Out Po&mniejsz Reset Reset &Page Source &Źródło Strony %1 - QupZilla %1 - QupZilla Preferences Preferences Ustawienia QupZilla QupZilla General Główne Appearance Wygląd Tabs Karty Browsing Przeglądanie Fonts Czcionki Keyboard Shortcuts Skróty Klawiszowe Downloads Pobieranie Password Manager Menedżer haseł Privacy Prywatność Notifications Powiadomienia Extensions Rozszerzenia Other Inne Use current Użyj bieżącej Note: You cannot delete active profile. Notka: Nie można usunąć aktywnego profilu. Create New Nowy profil Delete Usuń <b>Launching</b> <b>Uruchamianie</b> After launch: Po uruchomieniu: Open blank page Otwórz pustą stronę Open homepage Otwórz stronę domową Open speed dial Otwórz szybkie wybieranie Restore session Przywróć sesję Homepage: Strona domowa: On new tab: W nowej karcie: Open blank tab Otwórz pustą stronę Open other page... Otwórz inną stronę... <b>Profiles</b> <b>Profile</b> Startup profile: Wybierz profil: Check for updates on start Sprawdź aktualizacje podczas uruchamiania Active profile: Aktywny profil: In order to change language, you must restart browser. Aby zmienić język należy uruchomić ponownie przeglądarke. <b>Language</b> <b>Język</b> Available translations: Dostępne tłumaczenia: Don't load tabs until selected Nie ładuj kart zanim bedą zaznaczone Check to see if QupZilla is the default browser on startup Sprawdzaj czy QupZilla jest domyślna przeglądarką podczas uruchamiania. Check Now Sprawdź teraz Themes Motywy Advanced options Zaawansowane ustawienia <b>Browser Window</b> <b>Okno przeglądarki</b> Show StatusBar on start Pokaż StatusBar po uruchomieniu Show Bookmarks ToolBar on start Pokaż panel zakładek po uruchomieniu Show Navigation ToolBar on start Pokaż panel nawigacyjny po uruchomieniu <b>Navigation ToolBar</b> <b>Panel nawigacyjny</b> Show Home button Pokaż przycisk Strony startowej Show Back / Forward buttons Pokaż przyciski Cofnij / Dalej <b>Background<b/> <b>Tło<b/> Use transparent background Użyj przezroczystego tła Show web search bar Pokaż pasek wyszukiwania Show Add Tab button Pokaż przcisk Nowa karta Show Reload / Stop buttons Pokaż przyciski Odśwież / Stop Tabs behaviour Zachowanie kart Show tab previews Pokazuj podgląd kart Make tab previews animated Animowany podgląd kart Hide tabs when there is only one tab Ukryj pasek kart gdy otwarta jest tylko jedna Activate last tab when closing active tab Aktywuj poprzednią kartę podczas zamykania aktywnej karty Open new tabs after active tab Otwieraj nowe karty tuż za kartą aktywną Open new empty tabs after active tab Otwieraj nowe puste karty tuż za kartą aktywną Automatically switch to newly opened tab Automatycznie przełączaj na nowo otwartą kartę Don't quit upon closing last tab Nie zamykaj przeglądarki po zamknięciu ostatniej karty Ask when closing multiple tabs Pytaj przy zamykaniu wielu kart Closed tabs list instead of opened in tab bar W liście kart wyświetlaj zamknięte zamiast otwarych Address Bar behaviour Zachowanie paska adresu Suggest when typing into address bar: Podpowiadaj kiedy wpisuje w pasek adresu: History and Bookmarks Historia i Zakładki History Historia Bookmarks Zakładki Nothing Nic Press "Shift" to not switch the tab but load the url in the current tab. Wciśnij "Shift" aby program otworzył adres w aktywnej karcie. Propose to switch tab if completed url is already loaded. Zaproponuj aby przełączyć kartę, jeśli się już załaduje. Always show go icon Select all text by double clicking in address bar Zaznacz cały tekst klikając podwójnie na pasek adresu Select all text by clicking in address bar Zaznacz cały tekst po kliknięciu na pasek adresu Search with Default Engine Szukaj domyślna wyszukiwarką Show loading progress in address bar Pokaż proces ładowania w pasku adresu. Fill Wypełnij Bottom Dół Top Góra Custom color: Własny kolor: Select color Wybierz kolor ... ... Reset Reset Web Configuration Ustawienia Web Allow Netscape Plugins (Flash plugin) Zezów na pluginy od Netscape(Flash plugin) Allow JavaScript Pozwól na JavaScript Allow JAVA Pozwól uruchamiać JAVA Allow DNS Prefetch Włącz DNS Prefetch Enable XSS Auditing try to detect possible XSS attacks when executing javascript Pozwól kontrolować XSS Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Drukuj element tła Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Odnośniki w kolejce skupienia Animated scrolling Płynne przewijanie Enable caret browsing Przeglądanie z użyciem kursora Enable spatial navigation Zoom text only Powiększ tylko tekst Mouse wheel scrolls Kółko myszy przewija lines on page linii na stronie Default zoom on pages: Domyślne powiększenie na stronach: Local Storage Lokalna przestrzeń dyskowa Maximum Maksymalnie 50 MB 50 MB 1 1 Maximum pages in cache: Maksymalna ilość stron w pamięci podręcznej: Allow storing network cache on disk Włącz pamięć podręczną dysku Store cache in: Trzymaj cache w: Allow saving history Pozwól zapisywać historię Delete history on close Usuń historię przy zamykaniu przeglądarki Allow local storage of HTML5 web content Włącz magazym lokalny dla zawartości HTML5 Delete locally stored HTML5 web content on close Wyczyść magazym lokalny z zawartością HTML5 przy zamykaniu Delete now Wyczyść teraz Proxy Configuration Ustawienia proxy Proxy Auto-Config (.pac) file Proxy Auto-Config plik (.pac) Reload Odśwież HTTP HTTP SOCKS5 SOCKS5 Port: Port: Username: Nazwa użytkownika: Password: Hasło: Don't use on: Nie używaj dla: Manual configuration Konfiguracja ręczna System proxy configuration Ustawienia systemowe Do not use proxy Nie używaj proxy <b>Exceptions</b> <b>Rozszerzenia</b> Server: Serwer: Use different proxy for https connection Użyj innego proxy dla połączeń https Use script for automatic configuration: Użyj skryptu do automatycznej konfiguracji: <b>Font Families</b> <b>Rodzaje czcionek</b> Standard Standardowa Fixed Proporcjonalna Serif Szeryfowa Sans Serif Bezszeryfowa Cursive Kursywa Fantasy Fantazyjna <b>Font Sizes</b> <b>Rozmiary czcionek</b> Fixed Font Size Rozmiar czcionki proporcjonalnej Default Font Size Rozmiar czcionki domyślnej Minimum Font Size Minimalny rozmiar czcionki Minimum Logical Font Size Minimalny logiczny rozmiar czcionki <b>Shortcuts</b> <b>Skróty</b> Switch to tabs with Alt + number of tab Przełączaj karty za pomocą Alt+numer karty Load speed dials with Ctrl + number of speed dial Ładuj speed dial za pomocą Ctrl + numer speed dial Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>Lokalizacja dla pobierania</b> Ask everytime for download location Zawsze pytaj gdzie zapisać pobierane Use defined location: Użyj określonej lokalizacji: <b>Download Options</b> <b>Opcje pobierania</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Użyj systemowych okien dialogowych (może powodować problemy z pobieraniem treści zabezpieczonych protokołem SSL) Close download manager when downloading finishes Zamknij menedżer pobierania po ukończeniu pobierania <b>External download manager</b> <b>Zewnętrzny menedżer pobierania</b> Use external download manager Używaj zewnętrznego menedżera pobierania Executable: Program: Arguments: Argumenty: Leave blank if unsure Jeśli nie masz pewności to zostaw puste <b>%d</b> will be replaced with URL to be downloaded <b>AutoFill options</b> <b>Opcje autouzupełniania</b> Allow saving passwords from sites Pozwól na zapisywanie haseł dla stron Send Referer header to servers Wysyłaj nagłówek odsyłający do serwerów <b>Cookies</b> <b>Ciasteczka</b> Send Do Not Track header to servers Wysyłaj serwerom nagłówek Do Not Track <b>Other</b> <b>Inne</b> Manage CA certificates Zarządzanie certyfikatami CA Certificate Manager Menedżer cartyfikatów <b>SSL Certificates</b> <b>Certyfikaty SSL</b> <b>JavaScript</b> <b>JavaScript</b> Manage JavaScript privacy options Ustawienia prywatności JavaScript JavaScript options Ustawienia JavaScript Cookies Manager Menedżer ciasteczek Manage Cookies Zarządzaj Cookies <b>HTML5 Permissions</b> <b>Zezwól na HTML5</b> Manage HTML5 permissions Zarządzaj dostępem HTML5 HTML5 Permissions Zezwól na HTML5 <b>Notifications</b> <b>Powiadomienia</b> Use OSD Notifications Użyj powiadomień OSD Use Native System Notifications (Linux only) Użyj natywnych powiadomień systemowych (tylko Linux) Do not use Notifications Nie pokazuj powiadomień Expiration timeout: Czas do wygaśnięcia: seconds sekund <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Uwaga: </b>Możesz zmienić położenie powiadomień OSD, przenosząc je po ekranie. StyleSheet automatically loaded with all websites: Styl automatycznie ładowany z wszystkimi stronami: Languages Języki <b>Preferred language for web sites</b> <b>Język preferowany dla stron</b> <b>Change browser identification</b> <b>Zmień identyfikator przeglądarki</b> User Agent Manager Menadżer User Agenta Default Domyślne Set as default Ustaw jako domyślne OSD Notification Powiadomienia OSD Drag it on the screen to place it where you want. Przenieś to w miejsce które chcesz. Choose download location... Wybierz miejsce pobierania... Choose stylesheet location... Wybierz położenie stylu... Deleted Wyczyszczono Choose executable location... Wybierz program... Choose cache path... Wybierz katalog dla cache... New Profile Nowy profil Enter the new profile's name: Wpisz nową nazwe profilu: Error! Błąd! This profile already exists! Taki profil już istnieje! Cannot create profile directory! Nie można utworzyć katalogu profilu! Confirmation Potwierdzenie Are you sure to permanently delete "%1" profile? This action cannot be undone! Czy jesteś pewny że chcesz usunąć profil "%1"? Akcji ten nie będzie można cofnąć! Select Color Wybierz kolor QObject Native System Notification Natywne powiadomienia systemowe Save file as... Zapisz plik jako... The file is not an OpenSearch 1.1 file. Ten plik nie jest zgodny z OpenSearch 1.1. <not set in certificate> <nie wpisano w certyfikat> Unknown size Nieznany rozmiar KB MB GB Executable: Program: Arguments: Argumenty: Cannot start external program Nie można uruchomić zewnętrznego programu Cannot start external program! %1 Nie można uruchomić zewnętrznego programu! %1 QtWin Open new tab Otwórz nową kartę Opens a new tab if browser is running Otwiera nową kartę, jeżeli aplikacja jest uruchomiona Open new window Otwórz nowe okno Opens a new window if browser is running Otwiera nowe okno, jeśli aplikacja jest uruchomiona Open download manager Otwórz menedżer pobierania Opens a download manager if browser is running Otwiera menedżer pobierania, jeżeli aplikacja jest uruchomiona QupZilla QupZilla QupZilla Private Browsing Enabled Przeglądanie w trybie prywatnym jest włączone IP Address of current page Adres IP aktualnej strony &About QupZilla &O QupZilli Pr&eferences Us&tawienia Quit Zamknij &File &Plik &New Window &Nowe okno New Tab Nowa karta Open Location Otwórz lokalizację Open &File... Otwórz &plik Close Tab Zamknij kartę Close Window Zamknij okno &Save Page As... &Zapisz stronę jako... Save Page Screen Zapisz obraz strony Send Link... Wyslij odnośnik... &Print... &Drukuj... Import bookmarks... Importuj zakładki... &Edit &Edycja &Undo &Cofnij &Redo &Dalej &Cut &Wytnij C&opy &Kopiuj &Paste &Wklej Select &All Zaznacz &wszystko &Find &Znajdź &View &Widok &Navigation Toolbar Pasek &nawigacyjny &Bookmarks Toolbar Pasek &zakładek Sta&tus Bar Pasek &statusu &Menu Bar &Menu &Tabs on Top &Karty na wierzchu &Fullscreen &Pełny ekran &Stop Zatrzym&aj &Reload &Odśwież Character &Encoding Kodo&wanie znaków Enable &Caret Browsing Przeglądanie z Użyciem &Kursora Toolbars Paski narzędzi Sidebars Pasek boczny Zoom &In Po&większ Zoom &Out Po&mniejsz Reset Resetuj &Page Source Źródło &strony Hi&story Hi&storia &Back &Wstecz &Forward &Dalej &Home &Strona startowa Show &All History Pokaż całą &historię Closed Tabs Zamknięte karty Recently Visited Ostatnio odwiedzone Most Visited Najczęściej odwiedzane &Bookmarks &Zakładki Bookmark &This Page Dodaj &stronę do zakładek Bookmark &All Tabs Dodaj &wszystkie karty do zakładek Organize &Bookmarks &Zarządzaj zakładkami &Tools &Narzędzia &Web Search Szukaj w &sieci Page &Info &Informacje o stronie &Download Manager Menedżer &pobierania &Cookies Manager Menedżer &ciasteczek &AdBlock &AdBlock RSS &Reader &Czytnik RSS Web In&spector Web In&spektor Clear Recent &History Wyczyść &historię New &Private Window Nowe %Okno prywatne &Help &Pomoc About &Qt O &Qt Information about application Informacje o aplikacji Configuration Information Informacje o konfiguracji Report &Issue Zgłoś &błąd Restore &Closed Tab Przywróć zamknięte &karty (Private Browsing) (Tryb prywatny) Empty Pusty Restore All Closed Tabs Przywróć wszystkie zamknięte karty Clear list Wyczyść listę Other Inne %1 - QupZilla %1 - QupZilla HTML files Pliki HTML Image files Obrazki Text files Pliki tekstowe All files Wszystkie pliki Open file... Otwórz plik... QupZilla %1 (%2) QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Nadal jest otwarta %1 liczba kart które nie zostaną zapisane. Czy na pewno chcesz zamknąć QupZille? Don't ask again Nie pytaj ponownie There are still open tabs Nadal są otwarte karty QupZillaSchemeReply No Error Brak błędów Not Found Nie znaleziono Report Issue Zgłoś błąd If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Jeśli QupZilla sprawia problemy, spróbuj najpierw wyłączyć wszystkie rozszerzenia. <br />Jeśli problem nie zniknie, zgłoś go przy użyciu formularza: Your E-mail Twój E-mail Issue type Typ błędu Issue description Opis błędu Send Wyślij E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. Adres e-mail nie jest obowiązkowy<br/><b>Uwaga: </b>Proszę najpierw zapoznać się z <a href=%1>przewodnikiem</a> jak zgłaszać błędy. Please fill out all required fields! Należy wypełnić wszystkie wymagane pola! Start Page Strona startowa Search on Web Szukaj w sieci Search results provided by DuckDuckGo Wyniki wyszukiwania dostarczone przez DuckDuckGo About QupZilla O QupZilli <h1>Private Browsing</h1> <h1>Tryb prywatny</h1> Information about version Informacje o wersji Copyright Prawa autorskie Version Wersja WebKit version Wersja WebKit Main developer Główny programista Contributors Współtwórcy Translators Tłumacze Speed Dial Speed Dial Add New Page Dodaj Nową Stronę Edit Edytuj Remove Usuń Reload Odśwież Are you sure to remove this speed dial? Czy na pewno usunąć speed dial ? Load title from page Pobierz tytuł ze strony Url Adres Title Tytuł Apply Potwierdź Close Zamknij New Page Nowa strona Speed Dial settings Ustawienia szybkiego wybierania Placement: Położenie: Auto Auto Cover Zmieść Fit Dopasuj Fit Width Dopasuj szerokość Fit Height Dopasuj wysokość Use background image Użyj obrazu tła Select image Wybierz obraz Maximum pages in a row: Maksymalna ilość stron w wierszu: Change size of pages: Zmień rozmiar miniatur: Center speed dials Otwórz Speed Dial Restore Session Przywróć sesje Oops, QupZilla crashed. Upss, QupZilla zaliczyła wpadkę. We apologize for this. Would you like to restore the last saved state? Przepraszamy za to. Czy chcesz przywrócić swój zapisany stan ? Try removing one or more tabs that you think cause troubles Spróbuj zamknąć jedną lub więcej kart jeżeli myślisz że powodują problemy Or you can start completely new session lub uruchom kompletnie nową sesję Configuration Information Informacje Konfiguracji This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Strona zawiera informacje o bieżącej konfiguracji QupZilli - przydatne podczas rozwiązywania problemów. Należy dołączyć je do wysyłanego raportu z opisem błędu. Browser Identification Identyfikator przeglądarki Paths Ścieżki Build Configuration Build Configuration Preferences Ustawienia Option Opcje Value Wartość Extensions Rozszerzenia Name Imię Author Autor Description Opis Application version Wersja programu Qt version Wersja Qt Build time Zbudowana Platform Platforma Profile Profil Settings Ustawienia Saved session Zapisana sesja Pinned tabs Przypięte karty Data Data Themes Motywy Translations Tłumaczenia Disabled Wyłącz <b>Enabled</b> <b>Włącz</b> Debug build Debug build WebGL support Działanie WebGL Windows 7 API Windows 7 API KDE integration Integracja z KDE Portable build Portable No available extensions. Brak dostępnych rozszerzeń. RSSManager RSS Reader Czytnik RSS Empty Pusty Add feed Dodaj kanał Edit feed Edytuj kanał Delete feed Usuń kanał Optimize Database Optymalizuj bazę danych Reload Odśwież News Aktualności Loading... Wczytywanie... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Nie masz żadnych kanałów RSS.<br/> Dodawaj kanały klikając na ikonę RSS pasku nawigacyjnym. Add new feed Dodaj nowy kanał Please enter URL of new feed: Proszę podać adres nowego kanału: New feed Nowy kanał Fill title and URL of a feed: Wypełnij tytuł i adres kanału: Feed title: Tytuł kanału: Feed URL: Adres kanału: Edit RSS Feed Edycja kanału RSS Open link in current tab Otwórz odnośnik w bieżącej karcie Open link in new tab Otwórz odnośnik w nowej karcie Error in fetching feed Błąd podczas pobierania aktualności RSS feed duplicated Zduplikowane kanały RSS You already have this feed. Posiadasz już ten kanał. RSSNotification Add this feed into Dodaj ten kanał do Add Dodaj RSS feed <b>"%1"</b> Kanał RSS <b>"%1"</b> Internal Reader Wewnętrzny czytnik RSS Other... Inny... Liferea not running Czytnik Liferea nie jest uruchomiony Liferea must be running in order to add new feed. Aby dodać nowy kanał RSS, czytnik Liferea musi być uruchomiony. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Aby dodać kanał RSS do innego programu, należy użyć informacji:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Adres tego kanału RSS został skopiowany do schowka. Add feed into other application Dodaj kanał RSS do innego programu RSSWidget Add RSS Feeds from this site Dodaj kanał RSS z tej strony Untitled feed Kanał bez tytułu Add Dodaj RecoveryWidget Start New Session Uruchom nową sesję Restore Przywróć Window %1 Okno %1 RegisterQAppAssociation Warning! Uwaga! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) Napotkano nieznane problemy. Prosimy przeinstalować QupZille.⏎ Może uruchomienie z prawami administratora coś poradzi ;) RssIcon Add RSS from this page... Dodaj kanał RSS... SSLManager Certificate Manager Menedżer cartyfikatów CA Authorities Certificates Certyfikaty urzędów certyfikacji Show info Informacje This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Poniżej znajduje się lista caertyfikatów urzędów certyfikacji zapisanych w domyslnej lokalizacji systemowej oraz określonej przez użytkownika. Local Certificates Lokalne certyfikaty Import Import Remove Usuń This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Poniżej znajduje się lista certyfikatów urzędów certyfikacji zapisanych w profilu użytkownika. Zawiera również wszystkie certyfikaty, które otrzymały wyjątek. Settings Ustawienia Add Dodaj If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Jeżeli certyfikaty urzędów certyfikacji nie zostały automatycznie pobrane z systemu, można określić ścieżki ręcznie, gdzie certyfikaty są przechowywane. <b>NOTE:</b> Setting this option is a high security risk! <b>NOTKA:</b>Ustawienie tej opcji jest bardzo ryzykowne! Ignore all SSL Warnings Ignoruj wszystkie ostrzeżenia SSL All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Wszystkie certyfikaty muszą mieć rozszerzenie .crt. Po dodaniu lub usunięciu ścieżki certyfikatu, konieczne jest ponowne uruchomienie QupZilli w celu uwzględnienia zmian. Choose path... Wybierz ścieżkę... Import certificate... Import certyfikatu... Certificate Informations Informacje o certyfikacie SearchEnginesDialog Manage Search Engines Zarządzaj wyszukiwarkami Add... Dodaj... Remove Usuń Edit Edytuj Set as default Ustaw jako domyślne Up W górę Down W dół Search Engine Wyszukiwarka Shortcut Skrót Defaults Domyślne Add Search Engine Dodaj wyszukiwarkę Remove Engine Usuń silnik You can't remove the default search engine.<br>Set a different engine as default before removing %1. Możesz usunąć domyślny silnik wyszukiwania.<br>Wybierz inny silnik wyszukiwania zanim usuniesz %1. Edit Search Engine Edytuj wyszukiwarkę SearchEnginesManager Search Engine Added Dodaj wyszukiwarkę Search Engine "%1" has been successfully added. Wyszukiwarka "%1" została pomyślnie dodana. Search Engine is not valid! Wyszukiwarka nie jest prawidłowa! Error Błąd Error while adding Search Engine <br><b>Error Message: </b> %1 Błąd podczas dodawania wyszukiwarki <br><b> Treść błędu: </b> %1 SearchToolBar No results found. Nic nie znaleziono. SearchToolbar Search: Szukaj: Search... Szukaj... Highlight Podświetl Case sensitive Rozróżniaj wielkość SideBar Bookmarks Zakładki History Historia SiteInfo Site Info Informacje o stronie General Główne Media Media Databases Baza danych Security Zabezpieczenia Size: Rozmiar: Site address: Adres strony: Encoding: Kodowanie: Meta tags of site: Meta tagi na stronie: Tag Tag Value Wartość <b>Security information</b> <b>Informacje o zabezpieczeniach</b> Details Szczególy Image Obrazy Image address Adres obrazków <b>Preview</b> <b>Podgląd</b> <b>Database details</b> <b>Detale bazy danych</b> Name: Nazwa: Path: Ścieżka: <database not selected> <nie wybrano bazy danych> <not set in certificate> <brak certyfikatu> No databases are used by this page. Strona nie używa żadnej bazy danych. <b>Connection is Encrypted.</b> <b>Połączenie jest szyfrowane.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Twoje połączenie z tą witryną jest zabezpieczone przez ten certyfikat: </b> <b>Connection Not Encrypted.</b> <b>Połączenie nie jest szyfrowane.</b> <b>Your connection to this page is not secured!</b> <b>Twoje połączenie z tą stroną nie jest szyfrowane</b> Copy Image Location Kopiuj adres obrazka Copy Image Name Kopuj nazwe obrazka Save Image to Disk Zapisz obraz na dysk Error! Błąd! This preview is not available! Podgląd nie jest dostępny! Save image... Zapisz obrazek... Cannot write to file! Nie można zapisać do pliku! Preview not available Podgląd nie dostępny SiteInfoWidget More... Więcej... Your connection to this site is <b>secured</b>. Twoje połączenie z tą stroną jest <b>zabezpieczone</b>. Your connection to this site is <b>unsecured</b>. Twoje połączenie z tą stroną jest <b>nie zabezpieczone</b>. This is your <b>%1</b> visit of this site. To jest twója <b>%1</b> wizyta na tej stronie. You have <b>never</b> visited this site before. <b>Nigdy</b> nie byłeś na tej stronie. first pierwsza second druga third trzecia SourceViewer Source of Kod źródłowy File Plik Load in page Ładuj na stronie Save as... Zapisz jako... Close Zamknij Edit Edycja Undo Cofnij Redo Dalej Cut Wytnij Copy Kopiuj Paste Wklej Select All Zaznacz wszystko Find Znajdź Go to Line... Idź do linii... View Widok Reload Odśwież Editable Modyfikowalne Word Wrap Zawijanie wierszy Source loaded in page Załadowano źródło do strony Cannot load in page. Page has been closed. Nie można załadować na stronie. Strona została zamknięta. Save file... Zapisz plik... Error! Błąd! Cannot write to file! Nie można zapisać do pliku! Error writing to file Błąd zapisu do pliku Source successfully saved Źródło poprawnie zapisane Source reloaded Źródło odświeżone Cannot reload source. Page has been closed. Nie można odświeżyć źródła. Strona została zamknięta. Editable changed Zezwolenie na modyfikacje Word Wrap changed Zawijanie linii zmienione Enter line number Wpisz numer linii SourceViewerSearch Search: Szukaj: Search... Szukaj... Whole words Całe słowa SpeedDial Image files Obrazki Select image... Wybierz obraz... Unable to load Nie można wczytać SpellCheckDialog SpellCheck Sprawdzanie pisowni <b>Dictionary path</b> <b>Ścieżka słownika</b> Change... Zmień... <b>User dictionary</b> <b>Słownik Uzytkownika</b> Add Dodaj Remove Usuń Using Hunspell library Choose dictionary path... Wybierz ścieżkę do katalogu... Add new word... Dodaj nowe słowo... Add new word: Dodaj nowe słowo: Speller No suggestions Brak sugestii Add to dictionary Dodaj do słownika Settings Ustawienia SqueezeLabelV2 Copy Kopiuj SslErrorDialog SSL Certificate Error! Only for this session TabBar &New tab &Nowa karta &Stop Tab &Zatrzymaj kartę &Reload Tab &Odśwież kartę &Duplicate Tab &Duplikuj kartę D&etach Tab Un&pin Tab Ode&pnij kartę &Pin Tab Przypn&ij kartę Re&load All Tabs Odśwież &wszystkie karty &Bookmark This Tab Dodaj &kartę do zakładek Bookmark &All Tabs Dodaj &wszystkie karty do zakładek Close Ot&her Tabs Zam&knij inne karty Cl&ose Zam&knij Reloa&d All Tabs Odśwież wszystkie ka&rty Restore &Closed Tab Przywróć zamknięte &karty Close Tabs Do you really want to close other tabs? TabWidget New Tab nowa karta List of tabs Lista kart Loading... Wczytywanie... No Named Page Strona bez nazwy Currently you have %1 opened tabs Aktualnie otwartych kart: %1 New tab Nowa karta Empty Pusta Restore All Closed Tabs Przywróć wszystkie zamknięte karty Clear list Wyczyść listę TabbedWebView Loading... Wczytywanie... %1 - QupZilla %1 - QupZilla Inspect Element Zbadaj element ThemeManager <b>Name:</b> <b>Nazwa:</b> <b>Author:</b> <b>Autor:</b> <b>Description:</b> <b>Opis:</b> License Licencja ToolButton Stop Zatrzymaj Reload Odśwież Updater Update available Dostępna aktualizacja New version of QupZilla is ready to download. Nowa wersja QupZilli jest gotowa do pobrania. Update Aktualizuj UserAgentDialog User Agent Manager Menadżer User Agenta Change global User Agent Zmień User Agent Use different User Agents for specified sites Użyj innych User Agntów dla wybranych stron Site Strona User Agent User Agent Add Dodaj Remove Usuń Edit Edytuj Add new site Dodaj nową stronę Edit site Edytuj stronę Site domain: Domena strony: User Agent: User Agent WebInspectorDockWidget Web Inspector Web Inspektor WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? QupZilla nie może otworzyć odnośnika<b>%1:</b>. Żądany odnośnik to <ul><li>%2</li></ul>. Czy otworzyć ten odnośnik w programie systemowym? Remember my choice for this protocol Zapamiętaj wybór dla tego protokołu External Protocol Request Żądanie zewnętrznego protokołu To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Aby pokazać te witrynę QupZilla musi wysłać formularz ponownie⏎ Czy chcesz kontynuować ? Confirm form resubmission Potwierdź ponowne przesłanie formularza Select files to upload... Wybierz pliki do wysłania... Server refused the connection Serwer odrzucił połączenie Server closed the connection Serwer przerwał połączenie Server not found Serwer nie znaleziony Connection timed out Przekroczono limit czasu połączenia Untrusted connection Niezaufane połączenie Temporary network failure Chwilowy błąd sieci Proxy connection refused Połączenie proxy przerwane Proxy server not found Nie znaleziono serwera proxy Proxy connection timed out Przekroczono limit czasu połączenia proxy Proxy authentication required Wymagana aututentykacja proxy Content not found Zawartość nie znaleziona Unknown network error Nieznany błąd połączenia AdBlocked Content AdBlock zablokował Blocked by <i>%1</i> Zablokowane przez <i>%1</i> Content Access Denied Dostęp zablokowany Error code %1 Kod błędu %1 Failed loading page Błąd ładowania strony QupZilla can't load page. QupZilla nie może załadować strony. QupZilla can't load page from %1. QupZilla nie może załadować strony z serwera %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Sprawdź czy adres został wpisnay poprawnie, gdzie zamiast np. <b>ww.</b>serwer.pl powinno być <b>www.</b>serwer.pl If you are unable to load any pages, check your computer's network connection. Jeśli nie możesz otworzyć żadnej strony, sprawdź swoje połączenie z internetem. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Jeśli twój komputer lub sieć jest zabezpieczona za pomocą firewalla lub proxy, upewnij się że QupZilla ma zezwolenie na dostęp do sieci. Try Again Spróbuj ponownie JavaScript alert Alarm JavaScript Prevent this page from creating additional dialogs Zapobiegaj otwieraniu dodatkowych okien dialogowych na tej stronie Choose file... Wybierz plik... Cannot read data from <b>%1</b>. Upload was cancelled! Nie można odczytać informacji z <b>%1</b>. Przesyłanie zostało anulowane! Cannot read file! Nie można odczytać pliku! WebSearchBar Manage Search Engines Zarządzaj wyszukiwarkami Add %1 ... Dodaj %1 ... Paste And &Search Wklej i &szukaj Clear All Wyczyść wszystko Show suggestions Pokaż sugestie Search when engine changed WebView No Named Page Strona bez nazwy Create Search Engine Utwórz Silnik wyszukiwania Cut Wytnij Copy Kopiuj Paste Wklej Select All Zaznacz Wszystko Default Domyślne Left to Right Od Lewej do Prawej Right to Left Od Prawej do Lewej Bold Pogrubiona Italic Kursywa Underline Podkreślenie &Reload &Odśwież S&top Za&trzymaj Delete Usuń &Back &Wstecz &Forward &Dalej This frame Ta ramka Show &only this frame P&okaż tylko tą ramkę Show this frame in new &tab Pokaż &tą ramkę w nowej karcie Print frame Drukuj ramkę Zoom &in Po&większ &Zoom out Po&mniejsz Reset Resetuj Show so&urce of frame Pokaż &źródło ramki Book&mark page Dodaj &stronę do zakładek &Save page as... &Zapisz stronę jako... &Copy page link &Kopiuj odnośnik strony Send page link... Wyślij odnośnik strony... &Print page &Drukuj stronę Select &all Zaznacz &wszystko Validate page Sprawdź poprawność strony Show so&urce code Pokaż &kod źródłowy Show info ab&out site Pokaż &informacje o stronie Open link in new &tab O&twórz odnośnik w nowej karcie Open link in new &window Ot&wórz odnośnik w nowym oknie B&ookmark link D&odaj odnośnik do zakładek &Save link as... &Zapisz odnośnik jako... Send link... Wyślij odnośnik... &Copy link address &Kopiuj adres odnośnika Show i&mage Pokaż o&brazek Copy im&age Kopiuj ob&razek Copy image ad&dress Kopiuj adres obr&azka &Save image as... &Zapisz obrazek jako... Send image... Wyślij obrazek... Send text... Wyślij tekst... Google Translate Tłumacz Google Dictionary Słownik Go to &web address Przejdź do adresu &www Search "%1 .." with %2 Szukaj "%1 .." z %2 Search with... Szukaj z... &Play O&dtwarzaj &Pause &Pauza Un&mute Włącz &dźwięk &Mute &Wycisz &Copy Media Address &Kopiuj adres filmu wideo &Send Media Address &Wyślij adres filmu wideo Save Media To &Disk &Zapisz film wideo na dysk Check &Spelling Sprawdzanie i Pisanie Languages Języki jsAlert Prevent this page from creating additional dialogs Zapobiegaj otwieraniu dodatkowych okien dialogowych na tej stronie qupzilla-1.6.0/translations/pt_BR.ts000066400000000000000000010500431226107126500174630ustar00rootroot00000000000000 AboutDialog About QupZilla Sobre QupZilla Authors Autores Authors and Contributors Autores e Contribuidores < About QupZilla < Sobre QupZilla <p><b>Application version %1</b><br/> <p><b>Versão do aplicativo: %1</b><br/> <b>WebKit version %1</b></p> <b>Versão WebKit: %1</b></p> <small>Build time: %1 </small></p> <small>Compilado em: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Programador principal:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Contribuidores:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Tradutores:</b><br/>%1</p> AcceptLanguage Preferred Languages Idiomas Preferencial Add... Adicionar... Remove Remover Up Para cima Down Para baixo Personal [%1] Personalizado [%1] AdBlockAddSubscriptionDialog Add Subscription Adicionar Inscrição Title: Título: Address: Endereço: Add new subscription to AdBlock: Adicionar nova inscrição: AdBlockCustomList Custom Rules Filtros Personalizados AdBlockDialog AdBlock Configuration Configuração AdBlock Enable AdBlock Ativar AdBlock Search... Procurar... Options Opções AdBlock AdBlock Use only essential part of EasyList (for performance reasons) Add Rule Adicionar Filtro Remove Rule Remover Filtro Add Subscription Adicionar Inscrição Remove Subscription Remover Inscrição Update Subscriptions Atualizar Inscrições Learn about writing rules... Aprenda mais sobre como escrever filtros... AdBlockIcon AdBlock lets you block unwanted content on web pages O AdBlock bloqueia conteúdos indesejados Blocked popup window Bloquear janelas popup AdBlock blocked unwanted popup window. O AdBlock bloqueou algumas janelas popups. AdBlock AdBlock Show AdBlock &Settings Configuraçõe&s do AdBlock Disable on %1 Desabilitar em %1 Disable only on this page Desabilitar só nessa página Blocked Popup Windows Popups Bloqueados %1 with (%2) %1 com (%2) No content blocked Nenhum conteúdo bloqueado Blocked URL (AdBlock Rule) - click to edit rule URL bloqueado - clique para editar AdBlockManager Do you want to add <b>%1</b> subscription? Você quer adicionar <b>%1</b> inscrições? AdBlock Subscription Inscrições do AdBlock EasyList AdBlockTreeWidget Add Rule Adicionar Filtro Remove Rule Remover Filtro Add Custom Rule Adicionar filtro personalizado Please write your rule here: Escreva aqui o seu filtro: %1 (recently updated) %1 (atualizado recentemente) AddAcceptLanguage Add Language Adicionar idioma Choose preferred language for web sites Escolha o idioma preferencial para as páginas web Personal definition: Personalizado: AesInterface Warning! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. AutoFill Database (plaintext) Database (encrypted) Enter Master Password Permission is required, please enter Master Password: Warning! Entered password is wrong! This backend needs a master password to be set! QupZilla just switches to its default backend AutoFillManager Passwords are stored in: Change backend Backend options Passwords Senhas Server Servidor Username Usuário Password Senha Import/Export Importar/Exportar Show Passwords Mostrar senhas Edit Editar Remove Remover Remove All Remover todas Exceptions Exceções Import Passwords from File... Importar senhas de arquivo... Export Passwords to File... Exportar senhas para arquivo... Search Procurar Change backend... Change backend: Are you sure that you want to show all passwords? Tem a certeza que deseja exibir todas as senhas? Hide Passwords Ocultar senhas Confirmation Confirmação Are you sure to delete all passwords on your computer? Você tem certeza que deseja apagar todas as senhas salvas em seu computador? Edit password Editar senha Change password: Alterar senha: Choose file... Escolha o arquivo... Cannot read file! Não foi possível ler o arquivo! Successfully imported Importado com sucesso Error while importing! Ocorreu um erro ao importar! Cannot write to file! Não foi possível escrever no arquivo! Successfully exported Exportado com sucesso AutoFillNotification Update Remember Never For This Site Not Now on %1 em %1 for <b>%1</b> para <b>%1</b> Do you want QupZilla to update saved password %1? Do you want QupZilla to remember the password %1 %2? Você deseja que o QupZilla lembre a senha %1 %2? AutoFillWidget Choose username to login Login Login as <b>%1</b> BookmarkIcon Bookmark this Page Adicionar essa página aos favoritos Edit this bookmark Editar este favorito BookmarksImportDialog Import Bookmarks Importar favoritos <b>Import Bookmarks</b> <b>Importar Favoritos</b> From File De Arquivo Internet Explorer Choose browser from which you want to import bookmarks: Escolha o navegador do que você deseja importar os favoritos: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Observação:</b> Atualmente, estamos importanto favoritos e pastas somente de arquivos HTML. Choose... Escolha... Try to fetch icons for all bookmarks (may take a while) Fetching icons, please wait... Carregando icons, por favor, aguarde... Title Título Url URL Next Próximo Cancel Cancelar <b>Importing from %1</b> <b>A importar de %1</b> Finish Terminar Please press Finish to complete importing process. Aperte o botão Terminar para concluir o processo. Error! Erro! The file doesn't contain any bookmark. O arquivo selecionado não possui nenhum favorito. Choose directory... Escolha o diretório... Choose file... Escolha arquivo... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in O Mozilla Firefox salva os favoritos em um banco de dados SQLite em <b>places.sqlite</b>, que geralmente fica em Please choose this file to begin importing bookmarks. Escolha o arquivo, para começar a importação dos favoritos. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in O Google Chrome salva os favoritos no arquivo <b>Bookmarks</b>, que geralmente fica em Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in O Opera salva os favoritos no arquivo <b>bookmarks.adr</b>, que geralmente fica em You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Pode importar os favoritos de qualquer navegador com suporte a exportação em HTML. Esses arquivos geralmente terminam com Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in O Internet Explorer salva os favoritos na pasta <b>Favoritos</b>, que geralmente fica em Please choose this folder to begin importing bookmarks. Por favor, escolha essa pasta para começar à importar os marcadores. No Error Sem erros Unable to open file. Não foi possível abrir o arquivo. Cannot evaluate JSON code. Incapaz de validar o código JSON. File does not exist. O arquivo não existe. Unable to open database. Is Firefox running? Não foi possível abrir o banco de dados. O Firefox está aberto? Directory does not exist. The directory does not contain any bookmarks. BookmarksManager Bookmarks Favoritos Optimize Database Otimizar banco de dados Import Bookmarks Importar Favoritos Add Folder Adicionar pasta Title Título Url URL Expand All Expandir tudo Collapse All Recolher tudo Add new folder Adicionar nova pasta Choose parent folder for new folder: Escolha o pai para a nova pasta: Choose name for new bookmark folder: Escolha o nome para a nova pasta: Add new subfolder Adicionar subpasta Choose name for new subfolder in bookmarks toolbar: Escolha o nome para a nova subpasta: Rename Folder Renomear pasta Choose name for folder: Escolha o nome da pasta: Add Subfolder Adicionar subpasta Rename folder Renomear pasta Remove folder Remover pasta Open link in current &tab Abrir link na guia a&tual Open link in &new tab Abrir ligação em uma &novo guia Move bookmark to &folder &Mover favorito para a pasta Change icon Mudar ícone Rename bookmark Renomear favorito Remove bookmark Remover favorito <b>Warning: </b>You already have bookmarked this page! <b>Aviso: </b>Você já tem essa página em seus favoritos! Choose name and location of this bookmark. Escolha o nome e a localização desse favorito. Add New Bookmark Adicionar Novo Favorito Choose folder for bookmarks: Escolha a pasta dos favoritos: Bookmark All Tabs AdicionarTodas As Guias Aos Favoritos BookmarksModel Bookmarks In Menu Favoritos no Menu Bookmarks In ToolBar Favoritos na Barra de Ferramentas Unsorted Bookmarks Favoritos Desorganizados BookmarksSideBar Search... Procurar... Open link in current &tab Abrir link na guia a&tual Open link in &new tab Abrir link em uma &nova guia Copy address Copiar endereço &Delete E&liminar BookmarksToolbar &Bookmark Current Page A&dicionar página atual aos favoritos Bookmark &All Tabs Adi&cionar todas as guias aos favoritos &Organize Bookmarks &Organizar favoritos Show Most &Visited Mostrar mais &visitados Show Only Icons Mostras Somente Icons &Hide Toolbar O&cultar barra de ferramentas Open bookmark Abrir favorito Open bookmark in new tab Abrir favorito em nova aba Move right Mover para a direita Move left Mover para a esquerda Edit bookmark Editar favorito Remove bookmark Remover favorito Edit bookmark: Editar favorito: Title: Título: Url: URL: Edit Bookmark Editar Favorito Most visited Mais visitados Sites you visited the most As páginas mais visitadas Empty Vazio BookmarksTree Bookmarks Favoritos New Folder... Nova Pasta... BookmarksWidget Add to Speed Dial Adicionar ao acesso rápido Save Salvar Name: Nome: Folder: Pasta: Remove from Speed Dial Remover do acesso rápido Remove Remover BrowsingLibrary Library Biblioteca Search... Procurar... History Histórico Bookmarks Favoritos RSS RSS Database Optimized Banco de Dados Otimizado Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 o banco de dados foi otimizado com sucesso.<br/><br/><b>Tamanho antes da otimização: </b>%1<br/><b>Tamanho após a otimização: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Emitido para</b> Common Name (CN): Nome comum (NC): Organization (O): Organização (O): Organizational Unit (OU): Unidade organizacional (UO): Serial Number: Número de série: <b>Issued By</b> <b>Emitido por</b> <b>Validity</b> <b>Validade</b> Issued On: Emitido em: Expires On: Expira em: ClearPrivateData Clear Recent History Limpar histórico recente Choose what you want to delete: Escolha o que você deseja apagar: Clear history Limpar histórico Clear cache Limpar cache Clear icons Limpar icons <b>Clear Recent History</b> <b>Limpar histórico recente</b> Earlier Today Hoje Week Semana Month Mês All Todos Clear web databases Limpar Banco de Dados da Web Clear local storage Limpar arquivos temporários Clear cookies Limpar cookies ClickToFlash Object blocked by ClickToFlash Objeto bloqueado pelo ClickToFlash Show more information about object Mostrar mais informações sobre o objeto Delete object Apagar objeto Add %1 to whitelist Adicionar %1 à whitelist Flash Object Objeto Flash <b>Attribute Name</b> <b>Nome do atributo</b> <b>Value</b> <b>Valor</b> No more information available. Não existem mais informações. CookieManager Cookies Cookies Stored Cookies Cookies Salvos Find: Localizar: These cookies are stored on your computer: Estes cookies estão guardados no computador: Server Servidor Cookie name Nome do cookie Name: Nome: Value: Valor: Server: Servidor: Path: Caminho: Secure: Seguro: Expiration: Termina em: <cookie not selected> <cookie não selecionado> Remove all cookies Remover todos os cookies Remove cookies Remover cookies Cookie Filtering Filtrar Cookie <b>Cookie whitelist</b> <b>Cookie Whitelist</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Cookies desses servidores SEMPRE serão aceitos (mesmo que você desabilite a função cookies) Add Adicionar Remove Remover <b>Cookie blacklist</b> <b>Cookies Blacklist</b> Cookies from these servers will NEVER be accepted Cookies desses servidores NUNCA serão aceitos (mesmo que você habilite a função cookies) Settings Configurações <b>Cookie Settings</b> <b>Configurações de Cookies</b> Allow storing of cookies Permitir o armazenamento de cookies Delete cookies on close Apagar cookies ao fechar Match domain exactly Combinar o domínio exatamente Filter tracking cookies <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! Search Procurar Confirmation Confirmação Are you sure to delete all cookies on your computer? Tem a certeza que pretende remover todos os cookies? Secure only Só os seguros All connections Todas as ligações Session cookie Cookie da sessão Remove cookie Remover cookie Add to whitelist Adicionar à whitelist Add to blacklist Adicionar à Blacklist DownloadFileHelper Save file as... Salvar arquivo como... NoNameDownload Download sem Nome DownloadItem Remaining time unavailable Tempo restante não disponível Error: Cannot write to file! Erro: incapaz de escrever no arquivo! Done - %1 Concluído - %1 Cancelled Cancelado few seconds poucos segundos %n seconds %n minutes %n hours Unknown speed Velocidade desconhecida kB/s MB/s GB/s Unknown size Tamanho desconhecido %2 - unknown size (%3) %2 - tamanho desconhecido (%3) Remaining %1 - %2 of %3 (%4) Falta(m) %1 - %2 de %3 (%4) Cancelled - %1 Cancelado - %1 Delete file Apagar arquivo Do you want to also delete dowloaded file? Também deseja apagar o arquivo em seu disco? Open File Abrir arquivo Open Folder Abrir pasta Go to Download Page Ir para a página do download Copy Download Link Copiar link do Download Cancel downloading Cancelar Remove Remover Error Erro Not found Não encontrado Sorry, the file %1 was not found! Desculpe, o arquivo %1 não foi encontrado! Error: Erro: DownloadManager Download Manager Gerenciados de Downloads Clear Limpar %1% of %2 files (%3) %4 remaining %1% de %2 arquivos - restam (%3) %4 %1% - Download Manager Download Finished Download concluído All files have been successfully downloaded. Todos os arquivos foram recebidos com sucesso. Warning Aviso Are you sure to quit? All uncompleted downloads will be cancelled! Tem a certeza que deseja sair? Os downloads que não foram finalizados, serão cancelados! DownloadOptionsDialog Opening Abrir Copy download link You have chosen to open Você escolheu abrir which is a: que é: What should QupZilla do with this file? O que o QupZilla deve fazer com esse arquivo? Open... Abrir... Save File Salvar Arquivo Download with External Manager Salvar Arquivo com Gerenciador de Downloads Externo from: de: Opening %1 Abrir %1 Download link copied. EditSearchEngine Name: Nome: Url: URL: Shortcut: Atalho: Icon: Icon: <b>Note: </b>%s in url or post data represent searched string Post Data: Change... Alterar... FileSchemeReply No Error Sem erros Up to higher level directory Ir para o diretório anterior Show hidden files Mostrar arquivos ocultos Name Nome Size Tamanho Last modified Modificado em Index for %1 Index para %1 Folder is empty. Nenhum arquivo na pasta selecionada. FtpDownloader Cancelled! FtpSchemeReply Up to higher level directory Show hidden files Mostrar arquivos ocultos Name Nome Size Tamanho Last modified Modificado em Index for %1 Folder is empty. Pasta está vazia. Unknown command Comando desconhecido HTML5PermissionsDialog HTML5 Permissions Permissões HTML5 Notifications Notificações Site Site Behaviour Remove Remover Geolocation Geolocalização Allow Permitir Deny Proibir HTML5PermissionsNotification Remember Lembrar Allow Permitir Deny Proibir this site este site Allow %1 to show desktop notifications? Permitir que %1 mostre notificações na área de trabalho? Allow %1 to locate your position? Permitir que %1 acesse sua posição? History No Named Page Página sem nome January Janeiro February Fevereiro March Março April Abril May Maio June Junho July Julho August Agosto September Setembro October Outubro November Novembro December Dezembro HistoryManager History Histórico Delete Apagar Clear All History Limpar Histórico Optimize Database Otimizar banco de dados Confirmation Confirmação Are you sure to delete all history? Tem certeza que deseja limpar todo o histórico? HistoryModel Title Título Address Endereço Visit Date Data de visita Visit Count Contador de visitas Today Hoje This Week Esta semana This Month Este mês HistorySideBar Search... Procurar... HistoryView Open link in current tab Abrir link na guia atual Open link in new tab Abrir link em uma nova guia Copy title Copiar título Copy address Copiar endereço Remove Remover IconChooser Choose icon... Escolher ícone... From file Escolher do seu computador Image (.png, .jpg, .jpeg, .gif) Imagem (.png, .jpg, .jpeg, .gif) Choose file... Escolher arquivo... From database Escolher do banco de dados Site Url: URL: Image files Imagens JsOptions JavaScript Options Opções JavaScript Allow JavaScript to: Permitir que o JavaScript: Close windows Feche janelas Open popup windows Abra janelas popup Change window size Redimensione janelas Hide menu bar Esconda a barra de menus Hide status bar Esconda a barra de status Hide tool bar Esconda a barra de ferramentas Access clipboard acesse a área de tranferência LicenseViewer License Viewer Visualizador de licença LocationBar Enter URL address or search on %1 Digite aqui o URL, ou então o que você deseja pesquisar no %1 Paste And &Go Colar e &ir Clear All Apagar tudo .co.uk Append domain name on ALT + Enter = Should be different for every country .com.br Show information about this page Mostrar informações desta página LocationCompleterView Switch to tab MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? O QupZilla não é seu navegador padrão. Deseja fazê-lo seu navegador padrão? Always perform this check when starting QupZilla. Sempre realizar esta verificação ao iniciar o QupZilla. Default Browser Navegador Padrão QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. QupZilla é um novo, rápido e seguro navegador de internet de código aberto. QupZilla é licenciado sob GPL versão 3 ou (à sua opção) qualquer versão posterior. É baseado no núcleo WebKit e no Framework Qt. MasterPasswordDialog Encrypted DataBase Settings Set/Change Master Password... Clear Master Password... This backend does not work without a master password. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Current Password: New Password: Confirm Password: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. Warning! You entered a wrong password! New/Confirm password fields do not match! Some data has not been decrypted. The master password was not cleared! Are you sure to clear master password and decrypt data? NavigationBar No Named Page Página sem nome Back Voltar Forward Avançar Home Página inicial New Tab Nova guia Main Menu Menu principal Exit Fullscreen Sair da Fullscreen Clear history Limpar histórico NetworkManager SSL Certificate Error! Erro de certificado SSL! The page you are trying to access has the following errors in the SSL certificate: A página que está a tentar acessar apresenta os seguintes erros no certificado SSL: <b>Organization: </b> <b>Organização: </b> <b>Domain Name: </b> <b>Domínio: </b> <b>Expiration Date: </b> <b>Data de expiração: </b> <b>Error: </b> <b>Erro: </b> Would you like to make an exception for this certificate? Deseja criar uma exceção para este certificado? Authorisation required Username: Usuário: Password: Senha: Save username and password on this site Salvar usuário e senha desse página A username and password are being requested by %1. The site says: "%2" %1 está solicitando usuário e senha. A página diz: "%2" FTP authorisation required Login anonymously Login anônimo A username and password are being requested by %1:%2. Um nome de usuário e senha estão sendo solicitados por %1:%2. Proxy authorisation required Remember username and password for this proxy. A username and password are being requested by proxy %1. O proxy %1 esta pedindo um usuário e uma senha. PageScreen Page Screen Page Screen Format: Location: Browse... Save as %1 Choose location... File '%1' already exists. Do you want to overwrite it? File already exists PluginsList Application Extensions Extensões Allow Application Extensions to be loaded Permitir carregar extensões Settings Configurações WebKit Plugins Plugins WebKit <b>Click To Flash Plugin</b> <b>Plugin ClickToFlash</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. O plugin ClickToFlash permite bloquear o conteúdo Flash das páginas web. Você pode abrir o plugin clicando no ícone Flash. Whitelist Lista de permissões Add Adicionar Remove Remover Allow Click To Flash Permitir ClickToFlash PluginsManager Add site to whitelist Adicionar página à lista de permissões Server without http:// (ex. youtube.com) Servidor sem http:// (ex: youtube.com) Error! Erro! Cannot load extension! Não foi possível carregar essa extensão! PopupWebView Inspect Element Inspecionar elemento PopupWindow File Arquivo &Save Page As... Save Page Screen Send Link... &Print... Im&primir... Close Fechar Edit Editar &Undo &Redo &Cut C&opy &Paste Select All Selecionar tudo Find Localizar View &Stop &Reload Zoom &In Zoom &Out Reset &Page Source %1 - QupZilla %1 - QupZilla Preferences Preferences Preferências QupZilla QupZilla General Geral Appearance Aparência Tabs Guias Browsing Navegação Fonts Fontes Keyboard Shortcuts Downloads Downloads Password Manager Gerenciador de senhas Privacy Privacidade Notifications Notificações Extensions Extensões Other Outras Use current Utilizar atual Note: You cannot delete active profile. Observação: Você não pode apagar o perfil que está ativo no momento. Create New Criar novo Delete Eliminar <b>Launching</b> <b>Iniciar</b> After launch: Ao iniciar: Open blank page Abrir página em branco Open homepage Abrir página inicial Open speed dial Abrir Acesso rápido Restore session Restaurar sessão Homepage: Página inicial: On new tab: Nova guia: Open blank tab Abrir guia em branco Open other page... Abrir outra página... <b>Profiles</b> <b>Perfis</b> Startup profile: Perfil ao iniciar: Check for updates on start Procurar atualizações ao iniciar Active profile: Perfil ativo: In order to change language, you must restart browser. Para poder mudar o idioma, você deve reiniciar o navegador. <b>Language</b> <b>Idioma</b> Available translations: Traduções disponíveis: Don't load tabs until selected Não carregar guias até ser selecionada Check to see if QupZilla is the default browser on startup Check Now Themes Temas Advanced options Opções avançadas <b>Browser Window</b> <b>Janela do navegador</b> Show StatusBar on start Mostrar barra de status ao iniciar Show Bookmarks ToolBar on start Mostrar barra de favoritos ao iniciar Show Navigation ToolBar on start Mostrar barra de navegação ao iniciar <b>Navigation ToolBar</b> <b>Barra de Navegação</b> Show Home button Mostrar botão Página inicial Show Back / Forward buttons Mostrar botões Voltar/Avançar <b>Background<b/> <b>Fundo</b> Use transparent background Utilizar plano de fundo transparente Show web search bar Mostrar barra de pesquisa na web Show Add Tab button Mostrar botão Nova Guia Show Reload / Stop buttons Tabs behaviour Show tab previews Pré visualizar guias Make tab previews animated Exibir animação Hide tabs when there is only one tab Ocultar guias caso exista apenas uma Activate last tab when closing active tab Ativar a última guia quando fechar guia atual Open new tabs after active tab Abrir guia após a atual Open new empty tabs after active tab Automatically switch to newly opened tab Alterar automaticamente para a mais nova guia aberta Don't quit upon closing last tab Não sair ao fechar a última guia Ask when closing multiple tabs Perguntar ao fechar várias guias Closed tabs list instead of opened in tab bar Lista de guias fechadas invés de abertos na barra dos favoritos Address Bar behaviour Suggest when typing into address bar: Sugerir enquanto estiver digitando na barra de endereço: History and Bookmarks Histórico e Favoritos History Histórico Bookmarks Favoritos Nothing Nada Press "Shift" to not switch the tab but load the url in the current tab. Propose to switch tab if completed url is already loaded. Always show go icon Select all text by double clicking in address bar Selecionar todo o texto ao clicar duas vezes na barra de endereço Select all text by clicking in address bar Selecionar todo o texto ao clicar na barra de endereço Search with Default Engine Procurar com o site de pesquisa padrão Show loading progress in address bar Mostrar o progresso do carregamento da página na barra de endereços Fill Preencher Bottom Em baixo Top Em cima Custom color: Cor personalizada: Select color Escolher cor ... ... Reset Restaurar Web Configuration Configuração web Allow Netscape Plugins (Flash plugin) Permitir Plugins NetScape (Flash plugin) Allow JavaScript Permitir JavaScript Allow JAVA Permitir Java Allow DNS Prefetch Permitir obtenção prévia de DNS Enable XSS Auditing try to detect possible XSS attacks when executing javascript Ativar auditoria XSS Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Imprimir os elementos do background Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Incluir ligações na cadeia de foco Animated scrolling Enable caret browsing Enable spatial navigation Zoom text only Ampliar apenas o texto Mouse wheel scrolls Roda do mouse move lines on page linhas na página Default zoom on pages: Tamanho padrão das páginas: Local Storage Armazenamento local Maximum Máximo 50 MB 50 MB 1 1 Maximum pages in cache: Número máximo de páginas em cache: Allow storing network cache on disk Permitir armazenamento da cache de rede no disco Store cache in: Allow saving history Permitir salvar histórico Delete history on close Limpar histórico ao fechar Allow local storage of HTML5 web content Permitir armazenamento local de conteúdo HTML5 Delete locally stored HTML5 web content on close Eliminar conteúdo HTML5 ao fechar o navegador Delete now Apagar agora Proxy Configuration Configuração de proxy Proxy Auto-Config (.pac) file Reload HTTP HTTP SOCKS5 SOCKS5 Port: Porta: Username: Usuário: Password: Senha: Don't use on: Não utilizar em: Manual configuration Configuração manual System proxy configuration Proxy do sistema Do not use proxy Não usar proxy <b>Exceptions</b> <b>Excessões</b> Server: Servidor: Use different proxy for https connection Usar proxy diferente para conexões https Use script for automatic configuration: <b>Font Families</b> <b>Famílias da Fonte</b> Standard Padrão Fixed Fixa Serif Serif Sans Serif Sans Serif Cursive Cursiva Fantasy Fantasia <b>Font Sizes</b> <b>Tamanho da fonte</b> Fixed Font Size Tamanho fixo da fonte Default Font Size Tamanho padrão da fonte Minimum Font Size Tamanho mínimo da fonte Minimum Logical Font Size Tamanho mínimo da fonte <b>Shortcuts</b> Switch to tabs with Alt + number of tab Load speed dials with Ctrl + number of speed dial Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>Localização de Downloads</b> Ask everytime for download location Sempre perguntar aonde salvar os arquivos Use defined location: Usar esta localização: <b>Download Options</b> <b>Opções de downloads</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Utilizar caixa de diálogo do sistema (pode interferir na transferência de conteúdo seguro SSL) Close download manager when downloading finishes Fechar gerenciador de download após finalizar todos os downloads <b>External download manager</b> <b>Gerenciador de Downloads exterbo</b> Use external download manager Usar gerenciador de downloads externos Executable: Executável: Arguments: Argumentos: Leave blank if unsure Deixe em branco caso não saiba o que colocar <b>%d</b> will be replaced with URL to be downloaded <b>AutoFill options</b> <b>Preenchimento automático</b> Allow saving passwords from sites Permitir salvar senha das páginas Send Referer header to servers Enviar endereço para os servidores <b>Cookies</b> <b>Cookies</b> Send Do Not Track header to servers Enviar aos servidores uma notificação que o monitoramento não está funcionando <b>Other</b> <b>Outros</b> Manage CA certificates Gerenciar certificados de autoridade Certificate Manager Gerenciador de Certificados <b>SSL Certificates</b> <b>Certificados SSL</b> <b>JavaScript</b> <b>JavaScript</b> Manage JavaScript privacy options JavaScript options Cookies Manager Gerenciador de cookies Manage Cookies <b>HTML5 Permissions</b> <b>Permissões HTML5</b> Manage HTML5 permissions Configurar permissões HTML5 HTML5 Permissions <b>Notifications</b> <b>Notificações</b> Use OSD Notifications Utilizar notificações Use Native System Notifications (Linux only) Utilizar notificações do sistema (somente para Linux) Do not use Notifications Não utilizar notificações Expiration timeout: Terminam em: seconds segundos <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Observação: </b> Você pode alterar a posição da notificação arrastando-a para o local desejado. StyleSheet automatically loaded with all websites: Carregar folha de estilo automaticamente ao entrar em todos os sites: Languages Idiomas <b>Preferred language for web sites</b> <b>Idioma preferido para páginas web</b> <b>Change browser identification</b> <b>Alterar a identificação do navegador</b> User Agent Manager Gerenciar User Agent Default Set as default OSD Notification Notificação Drag it on the screen to place it where you want. Arraste a notificação para a teça para a posicionar. Choose download location... Escolha o local dos downlods... Choose stylesheet location... Escolha a localização da folha de estilo... Deleted Eliminado Choose executable location... Escolha a localização do executável... Choose cache path... New Profile Novo perfil Enter the new profile's name: Digite o nome do novo perfil: Error! Erro! This profile already exists! Esse perfil já existe! Cannot create profile directory! Não foi possível criar a pasta para o seu perfil! Confirmation Confirmação Are you sure to permanently delete "%1" profile? This action cannot be undone! Tem a certeza que deseja eliminar o perfil "%1" permanentemente? Esta ação não pode ser desfeita! Select Color Escolher Cor QObject Native System Notification Notificações do sistema Save file as... Salvar arquivo como... The file is not an OpenSearch 1.1 file. Este não é um arquivo OpenSearch 1.1. <not set in certificate> <não definido no certificado> Unknown size Tamanho desconhecido KB MB GB Executable: Arguments: Cannot start external program Cannot start external program! %1 QtWin Open new tab Abrir uma nova guia Opens a new tab if browser is running Abre uma nova guia se o navegador estiver aberto Open new window Abrir uma nova janela Opens a new window if browser is running Abre uma nova janela se o navegador estiver aberto Open download manager Abrir o gerenciador de downloads Opens a download manager if browser is running Abrir o gerenciador de downloads, se o navegador estiver aberto QupZilla QupZilla QupZilla Private Browsing Enabled Navegação privada ativada IP Address of current page Endereço IP da página atual &About QupZilla Sobre QupZill&a Pr&eferences Pr&eferências Quit Sair &File &Arquivo &New Window &Nova Janela New Tab Nova guia Open Location Abrir localização Open &File... Close Tab Fechar guia Close Window Fechar Janela &Save Page As... Sal&var página como... Save Page Screen Salvar Page Screen Send Link... Enviar link... &Print... Im&primir... Import bookmarks... Importar favoritos... &Edit &Editar &Undo Desfaze&r &Redo &Refazer &Cut &Reortar C&opy C&opiar &Paste Co&lar Select &All Selecion&ar tudo &Find Pro&curar &View E&xibir &Navigation Toolbar Barra de &navegação &Bookmarks Toolbar &Barra de favoritos Sta&tus Bar Barra de sta&tus &Menu Bar Barra de &menu &Tabs on Top &Fullscreen T&ela Cheia &Stop &Parar &Reload Atualiza&r Character &Encoding Codificação dos caract&eres Enable &Caret Browsing Toolbars Barras de Ferramentas Sidebars Barra lateral Zoom &In Ampl&iar Zoom &Out Red&uzir Reset Restaurar &Page Source Código fonte da &Página Hi&story &Histórico &Back &Voltar &Forward &Avançar &Home Pági&na inicial Show &All History Mostr&ar todo o histórico Closed Tabs Guias Fechadas Recently Visited Vistados Recentemente Most Visited Mais visitados &Bookmarks &Favoritos Bookmark &This Page Adicionar essa página aos favori&tos Bookmark &All Tabs M&arcar todos os favoritos Organize &Bookmarks Orga&nizar favoritos &Tools Ferramen&tas &Web Search Procurar na &web Page &Info &Informações da página &Download Manager Gerenciador de &Downloads &Cookies Manager Gerenciador de &cookies &AdBlock &AdBlock RSS &Reader Leitor &RSS Web In&spector In&spetor web Clear Recent &History Apagar &histórico recente New &Private Window &Help Aj&uda About &Qt Sobre &Qt Information about application Informações do aplicativo Configuration Information Informações de Configurações Report &Issue Reportar pro&blema Restore &Closed Tab Restaurar guia &fechada (Private Browsing) (Navegação privada) Empty Vazio Restore All Closed Tabs Restaurar todos as guias fechadas Clear list Limpar lista Other Outras %1 - QupZilla %1 - QupZilla HTML files Arquivos HTML Image files Imagens Text files Arquivos de texto All files Todos os Arquivos Open file... Abrir arquivo... QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Ainda existe %1 guias abertas, e não será possível salvar a sua sessão. Tem certeza que deseja sair do QupZilla? Don't ask again Não perguntar novamente There are still open tabs Ainda existem guias abertas QupZillaSchemeReply No Error Sem erros Not Found Não encontrado Report Issue Reportar problema If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Se você estiver enfrentando problemas com o QupZilla, tente desabilitar as extensões.<br/>Se não funcionar, por favor, preencha o formulário abaixo: Your E-mail O seu Email Issue type Tipo do problema Issue description Descrição do problema Send Enviar E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. O Email é opicional<br/><b>Observação:</b>Por favor, leia como reportar um bug <a href=%1>aqui</a> antes. Please fill out all required fields! Por favor, preencha todos os campos abrigatórios! Start Page Página inicial Search on Web Procurar na Internet Search results provided by DuckDuckGo Resultados direto do DuckDuckGo About QupZilla Sobre QupZilla <h1>Private Browsing</h1> <h1>Navegação Privada</h1> Information about version Informações da versão Copyright Direitos autorais Version Versão WebKit version Versão WebKit Main developer Programador principal Contributors Contribuidores Translators Tradutores Speed Dial Acesso rápido Add New Page Adicionar nova página Edit Editar Remove Remover Reload Atualizar Are you sure to remove this speed dial? Você tem certeza que deseja remover o site selecionado do acesso rápido? Load title from page Carregar título da página Url URL Title Título Apply Aplicar Close Fechar New Page Nova página Speed Dial settings Configurações do Acesso Rápido Placement: Posicionamento: Auto Automático Cover Cover Fit Ajustar Fit Width Ajustar à largura Fit Height Ajustar à altura Use background image Utilizar imagem de fundo Select image Selecione imagem Maximum pages in a row: Máximo de páginas por linha: Change size of pages: Alterar tamanho das páginas: Center speed dials Centralizar acesso rápido Restore Session Restaurar Sessão Oops, QupZilla crashed. Oops, o QupZilla travou. We apologize for this. Would you like to restore the last saved state? Pedimos descupas pelo transtorno. Deseja restaurar as últimas guias abertas? Try removing one or more tabs that you think cause troubles Caso você acredite que alguma guia tenha causado o problema, tente desativá-la Or you can start completely new session Ou você pode criar uma nova sessão Configuration Information Informações de Configurações This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Essa página contém informações sobre as configurações atuais do QupZilla - que são importantes para sabermos a causa do problema. Por favor, inclua essas informações quanto for reportar um bug (por favor, escreva em Inglês). Browser Identification Identificação do navegador Paths Caminhos Build Configuration Configuração da compilação Preferences Preferências Option Opções Value Valor Extensions Extensões Name Nome Author Autor Description Descrição Application version Versão do Aplicativo Qt version Versão do Qt Build time Compilado Platform Plataforma Profile Perfil Settings Configurações Saved session Sessão salva Pinned tabs Separadores fixos Data Dados Themes Temas Translations Traduções Disabled Desabilitado <b>Enabled</b> <b>Habilitado</b> Debug build Compilar WebGL support Suporte WebGL Windows 7 API Windows 7 API KDE integration Integração com o KDE Portable build Compilação Portátil No available extensions. Não há extensões disponíveis. RSSManager RSS Reader Leitor RSS Empty Vazio Add feed Adicionar feed Edit feed Editar feed Delete feed Apagar feed Optimize Database Otimizar banco de dados Reload Atualizar News Notícias Loading... Carregando... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Ainda não possui nenhum feed RSS.<br/> Adicione os feeds clicando no símbolo RSS existente na barra de navegação, em sites que disponibilizam esse serviço. Add new feed Adicionar novo feed Please enter URL of new feed: Indique o URL do novo feed: New feed Novo feed Fill title and URL of a feed: Indique o título e o URL do feed: Feed title: Título: Feed URL: Feed URL: Edit RSS Feed Editar feed RSS Open link in current tab Abrir link na guia atual Open link in new tab Abrir ligação em nova guia Error in fetching feed Ocorreu um erro ao tentar baixar o feed RSS feed duplicated Feed RSS duplicado You already have this feed. Você já possui esse feed. RSSNotification Add this feed into Adicionar esse fedd no Add Adicionar RSS feed <b>"%1"</b> Feed RSS <b>"%1"</b> Internal Reader Leitor Interno Other... Outro... Liferea not running Liferea não está em execução Liferea must be running in order to add new feed. Liferea deve estar em execução para poder adicionar novos feeds. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Para adicionar esse feed RSS em outro aplicativo, por favor, use essa informação:<br/><br/><b>Título:</b>%1<br/><b>URL:</b>%2<br/><br/>A URL foi copiada para a sua área de transferência. Add feed into other application Adicionar feed em outro aplicativo RSSWidget Add RSS Feeds from this site Adicionar feed RSS desta página Untitled feed Feed sem título Add Adicionar RecoveryWidget Start New Session Começar Nova Sessão Restore Restaurar Window %1 Window %1 RegisterQAppAssociation Warning! Atenção! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) Há alguns problemas. Por favor reinstale o QupZilla.⏎ Talvez reiniciar com privilégios de administrador faça a mágica para você! :) RssIcon Add RSS from this page... SSLManager Certificate Manager Gerenciador de Certificados CA Authorities Certificates Autoridades de certificação Show info Mostrar informações This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Esta é a lista de autoridades de certificação existentes no sistema e nos caminhos do usuário. Local Certificates Certificados locais Import Importar Remove Remover This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Esta é a lista de certificados locais guardados no seu perfil. Também contém todos os certificados que foram excecionados. Settings Configurações Add Adicionar If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Se as autoridades de certificação não forem carregadas automaticamente, pode especificar os caminhos em que os certificados estão salvos. <b>NOTE:</b> Setting this option is a high security risk! <b>OBSERVAÇÃO:</b> esta opção apresenta um grande risco de segurança! Ignore all SSL Warnings Ignorar todos os avisos SSL All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Todos os certificados devem possuir a extensão .crt. Após adicionar ou remover os caminhos dos certificados, você terá que reiniciar o QupZilla para que as alterações possam ter efeito. Choose path... Escolha o caminho... Import certificate... Importar certificado... Certificate Informations Informações do certificado SearchEnginesDialog Manage Search Engines Gerenciador dos site de pesquisa Add... Adicionar... Remove Remover Edit Editar Set as default Definir padrão Up Para cima Down Para baixo Search Engine Site de pesquisa Shortcut Atalho Defaults Padrão Add Search Engine Adicionar site de pesquisa Remove Engine Remover sites You can't remove the default search engine.<br>Set a different engine as default before removing %1. Você não pode remover o site padrão. <br>Primeiro escolha um novo site de pesquisa padrão. Edit Search Engine Editar site de pesquisa SearchEnginesManager Search Engine Added Site de pesquisa adicionado Search Engine "%1" has been successfully added. O site de pesquisa "%1" foi adicionado com sucesso. Search Engine is not valid! O site de pesquisa digitado não é valido! Error Erro Error while adding Search Engine <br><b>Error Message: </b> %1 Ocorreu um erro ao adicionar o site de pequisa. <br><b>Mensagem de erro: </b> %1 SearchToolBar No results found. Nenhum resultado. SearchToolbar Search: Procurar: Search... Procurar... Highlight Realçar Case sensitive Diferenciar maiúsculas de minúsculas SideBar Bookmarks Favoritos History Histórico SiteInfo Site Info Informações do site General Geral Media Média Databases Banco de Dados Security Segurança Size: Tamanho: Site address: Endereço: Encoding: Codificação: Meta tags of site: Meta tags da página: Tag Tag Value Valor <b>Security information</b> <b>Informações de segurança</b> Details Detalhes Image Imagem Image address Endereço da imagem <b>Preview</b> <b>Preview</b> <b>Database details</b> <b>Detalhe do banco de dados</b> Name: Nome: Path: Atalho: <database not selected> <nenhum banco de dados selecionado> <not set in certificate> <não definido no certificado> No databases are used by this page. Essa página não usa nenhum banco de dados. <b>Connection is Encrypted.</b> <b>Conexão criptografada.</b> <b>Your connection to this page is secured with this certificate: </b> <b>A conexão para essa página é sgura por causa desse certificado.</b> <b>Connection Not Encrypted.</b> <b>Conexão Não Criptografada.</b> <b>Your connection to this page is not secured!</b> <b>A conexão para essa página não é segura.</b> Copy Image Location Copiar link da Imagem Copy Image Name Copiar Nome da Imagem Save Image to Disk Salvar imagem no disco Error! Erro! This preview is not available! Essa preview não está disponível! Save image... Salvar imagem... Cannot write to file! Não foi possível escrever no arquivo! Preview not available Preview não disponível SiteInfoWidget More... Mais... Your connection to this site is <b>secured</b>. A conexão para essa página é <b>segura</b>. Your connection to this site is <b>unsecured</b>. A conexão para essa página <b>não é segura</b>. This is your <b>%1</b> visit of this site. Esta é a sua <b>%1</b> visita nesse site. You have <b>never</b> visited this site before. Você <b>nunca</b> visitou esse site antes. first primeira second segunda third terceira SourceViewer Source of Código fonte de File Arquivo Load in page Save as... Salvar como... Close Fechar Edit Editar Undo Desfazer Redo Refazer Cut Recortar Copy Copiar Paste Colar Select All Selecionar tudo Find Localizar Go to Line... Ir para a linha... View Ver Reload Atualizar Editable Editável Word Wrap Translineação Source loaded in page Cannot load in page. Page has been closed. Save file... Salvar arquivo... Error! Erro! Cannot write to file! Não foi possível escrever no arquivo! Error writing to file Erro ao escrever no arquivo Source successfully saved Código fonte salvo com sucesso Source reloaded Código fonte recarregado Cannot reload source. Page has been closed. Não foi possível carregar o código fonte. A página foi fechada. Editable changed Editável alterado Word Wrap changed Translineação alterada Enter line number Indique o número da linha SourceViewerSearch Search: Procurar: Search... Procurar... Whole words Palavras completas SpeedDial Image files Imagens Select image... Selecione a imagem... Unable to load Não foi possível carregar SpellCheckDialog SpellCheck Verificar Ortografia <b>Dictionary path</b> Change... <b>User dictionary</b> Add Remove Using Hunspell library Choose dictionary path... Add new word... Add new word: Speller No suggestions Add to dictionary Settings SqueezeLabelV2 Copy Copiar SslErrorDialog SSL Certificate Error! Only for this session TabBar &New tab &Nova guia &Stop Tab Parar guia&s &Reload Tab Atualiza&r guia &Duplicate Tab &Duplicar guias D&etach Tab Un&pin Tab Des&fixar guia &Pin Tab &Fixar guia Re&load All Tabs Atualizar todas as guia&s &Bookmark This Tab Adicionar essa guia aos &favoritos Bookmark &All Tabs &Salvar todas as guias nos Favoritos Close Ot&her Tabs Fechar as o&utras guias Cl&ose F&echar Reloa&d All Tabs Atualizar to&das as guias Restore &Closed Tab Recuperar guia fe&chada Close Tabs Do you really want to close other tabs? TabWidget New Tab Nova Guia List of tabs Lista de guias Loading... Carregando... No Named Page Página sem nome Currently you have %1 opened tabs Atualmente, existe %1 guias abertas New tab Nova Guia Empty Vazio Restore All Closed Tabs Restaurar todas as guias fechadas Clear list Limpar a lista TabbedWebView Loading... Carregando... %1 - QupZilla %1 - QupZilla Inspect Element Inspecionar elemento ThemeManager <b>Name:</b> <b>Nome:</b> <b>Author:</b> <b>Autor:</b> <b>Description:</b> <b>Descrição:</b> License Licença ToolButton Stop Parar Reload Atualizar Updater Update available Atualização disponível New version of QupZilla is ready to download. Existe uma nova versão disponível. Update Atualizar UserAgentDialog User Agent Manager Gerenciar User Agent Change global User Agent Alterar o User Agent global Use different User Agents for specified sites Usar um User Agent diferente para os sites especificados abaixo Site Site User Agent User Agent Add Adicionar Remove Remover Edit Editar Add new site Adicionar um novo site Edit site Editar site Site domain: Domínio: User Agent: User Agent: WebInspectorDockWidget Web Inspector Inspetor web WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? O QupZilla não consegue entender <b>%1</b> links. Quem está pedindo é/são: <ul><li>%2</li></ul>. Você deseja que o QupZilla tente abrir esses links nos aplicativos do sistema? Remember my choice for this protocol Memorizar minha escolha para esse protocolo External Protocol Request Pedido de protocolo adicional To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Para exibir essa página, o QupZilla terá que reenviar a sua solicitação (ou seja, se você digitou alguma coisa, provavelmente terá que digitar novamente) Confirm form resubmission Confirmar envio de formulário Select files to upload... Selecione os arquivos que deseja enviar... Server refused the connection O servidor recusou a conexão Server closed the connection O servidor fechou a conexão Server not found Servidor não encontrado Connection timed out A conexão expirou Untrusted connection Conexão não confiável Temporary network failure Falha temporária de rede Proxy connection refused Conexão de proxy recusada Proxy server not found Servidor proxy não encontrado Proxy connection timed out A conexão proxy expirou Proxy authentication required Requer autorização de proxy Content not found Conteúdo não encontrado Unknown network error Erro de rede desconhecido AdBlocked Content Conteúdo bloqueado Blocked by <i>%1</i> Bloqueado por <i>%1</i> Content Access Denied Conteúdo Bloqueado Error code %1 Código de erro: %1 Failed loading page Falha ao carregar a página QupZilla can't load page. O QupZilla não foi capaz de carregar a página. QupZilla can't load page from %1. O QupZilla não conseguiu carregar a página %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Verifique se existem erros bobos no endereço digitado, como <b>ww.</b>exemplo.com invés de <b>www.</b>exemplo.com If you are unable to load any pages, check your computer's network connection. Se você não consegue carregar nenhuma página, verifique se o seu computador está conectado à Internet. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Se o computador estiver protegido por um firewall ou proxy, certifique-se que o QupZilla pode acessar à Internet. Try Again Tente novamente JavaScript alert Alerta JavaScript Prevent this page from creating additional dialogs Impedir que esta página crie mais caixas de diálogo Choose file... Escolher arquivo... Cannot read data from <b>%1</b>. Upload was cancelled! Cannot read file! WebSearchBar Manage Search Engines Gerenciador dos Sites de Pesquisa Add %1 ... Adicionar %1... Paste And &Search Colar e Pr&ocurar Clear All Apagar tudo Show suggestions Exibir Sugestões Search when engine changed Procurar quando alterar o site de pesquisa WebView No Named Page Página sem nome Create Search Engine Criar Motor de Busca Cut Copy Paste Select All Default Left to Right Right to Left Bold Italic Underline &Reload Atualiza&r S&top Pa&rar Delete &Back Volta&r &Forward &Avançar This frame Esta moldura Show &only this frame M&ostrar apenas esta moldura Show this frame in new &tab Mostrar es&ta moldura em uma nova guia Print frame Imprimir moldura Zoom &in Ampl&iar &Zoom out Redu&zir Reset Recuperar Show so&urce of frame Mostrar código fonte da mold&ura Book&mark page Adicionar essa página aos &favoritos &Save page as... Salva&r página como... &Copy page link &Copiar link da página Send page link... Enviar link da página... &Print page Im&primir Select &all Selecion&ar tudo Validate page Validar página Show so&urce code Exibir código fon&te Show info ab&out site Mostrar inf&ormações da página Open link in new &tab Abrir link em uma nova &guia Open link in new &window Abrir link em nova &janela B&ookmark link Salvar link nos fav&oritos &Save link as... &Salvar link como... Send link... Enviar link... &Copy link address &Copiar link Show i&mage Abrir i&magem Copy im&age Copi&ar imagem Copy image ad&dress Copiar link &da imagem &Save image as... Sa&lvar imagem como... Send image... Enviar imagem... Send text... Enviar texto... Google Translate Tradutor Google Dictionary Dicionário Go to &web address Ir para endereço &web Search "%1 .." with %2 Procurar "%1 ..." no %2 Search with... Procurar com... &Play Re&produzir &Pause &Pausa Un&mute Co&m som &Mute &Mudo &Copy Media Address &Copiar endereço multimídia &Send Media Address &Enviar endereço multimídia Save Media To &Disk Gravar arquivo no &disco Check &Spelling Languages jsAlert Prevent this page from creating additional dialogs Impedir que esta página crie mais caixas de diálogo qupzilla-1.6.0/translations/pt_PT.ts000066400000000000000000010576411226107126500175160ustar00rootroot00000000000000 AboutDialog About QupZilla Sobre o QupZilla Authors Autores Authors and Contributors Autores e colaboradores < About QupZilla < Sobre o QupZilla <p><b>Application version %1</b><br/> <p><b>Versão %1</b><br/> <b>WebKit version %1</b></p> <b>Versão WebKit: %1</b></p> <small>Build time: %1 </small></p> <small>Compilado em: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Programador principal:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Colaboradores:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Tradutores:</b><br/>%1</p> AcceptLanguage Preferred Languages Idiomas preferidos Add... Adicionar... Remove Remover Up Para cima Down Para baixo Personal [%1] Personalizado [%1] AdBlockAddSubscriptionDialog Add Subscription Adicionar subscrição Title: Título: Address: Endereço: Add new subscription to AdBlock: Adicionar nova subscrição AdBlock: AdBlockCustomList Custom Rules Regras personalizadas AdBlockDialog AdBlock Configuration Definições AdBlock Enable AdBlock Ativar AdBlock Search... Procurar... Options Opções AdBlock Adblock Use only essential part of EasyList (for performance reasons) Utilize apenas a lista principal EasyList (para melhor desempenho) Add Rule Adicionar regra Remove Rule Remover regra Add Subscription Adicionar subscrição Remove Subscription Remover subscrição Update Subscriptions Atualizar subscrições Learn about writing rules... Saber mais sobre as regras... AdBlockIcon AdBlock lets you block unwanted content on web pages O AdBlock permite-lhe bloquear o conteúdo das páginas web Blocked popup window Bloquear janelas emergentes AdBlock blocked unwanted popup window. O AdBlock bloqueou janelas emergentes. AdBlock Adblock Show AdBlock &Settings Mo&strar definições AdBlock Disable on %1 Desativar em %1 Disable only on this page Desativar nesta página Blocked Popup Windows Janelas emergentes bloqueadas %1 with (%2) %1 com (%2) No content blocked Nenhum conteúdo bloqueado Blocked URL (AdBlock Rule) - click to edit rule URL bloqueado (regra AdBlock) - clique para editar AdBlockManager Do you want to add <b>%1</b> subscription? Pretende adicionar a subscrição <b>%1</b>? AdBlock Subscription Subscrição AdBlock EasyList EasyList AdBlockTreeWidget Add Rule Adicionar regra Remove Rule Remover regra Add Custom Rule Adicionar regra personalizada Please write your rule here: Escreva aqui a sua regra: %1 (recently updated) %1 (atualizada recentemente) AddAcceptLanguage Add Language Adicionar idioma Choose preferred language for web sites Escolha o idioma preferencial para as páginas web Personal definition: Personalizado: AesInterface Warning! Aviso! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. Os dados foram cifrados com uma versão mais recente do QupZilla. Instale a versão mais recente da aplicação. AutoFill Database (plaintext) Base de dados (texto) Database (encrypted) Base de dados (cifrada) Enter Master Password Introduza a senha mestre Permission is required, please enter Master Password: Requer permissões. Introduza a senha mestre: Warning! Aviso! Entered password is wrong! A senha introduzida não está correta! This backend needs a master password to be set! QupZilla just switches to its default backend Esta infraestrutura requer uma senha mestre definida. O QupZilla ativou a infraestrutura pré-definida AutoFillManager Passwords are stored in: Guardar senhas em: Change backend Alterar infraestrutura Backend options Opções de infraestrutura Passwords Senhas Server Servidor Username Utilizador Password Senha Import/Export Importar/Exportar Show Passwords Mostrar senhas Edit Editar Remove Remover Remove All Remover todas Exceptions Exceções Import Passwords from File... Importar senhas do ficheiro... Export Passwords to File... Exportar senhas para o ficheiro... Search Procurar Change backend... Alterar infraestrutura... Change backend: Alterar infraestrutura: Are you sure that you want to show all passwords? Tem a certeza que pretende mostrar todas as senhas? Hide Passwords Ocultar senhas Confirmation Confirmação Are you sure to delete all passwords on your computer? Tem a certeza que pretende eliminar todas as senhas? Edit password Editar senha Change password: Alterar senha: Choose file... Escolha o ficheiro... Cannot read file! Incapaz de ler o ficheiro! Successfully imported Importado com sucesso Error while importing! Ocorreu um erro ao importar! Cannot write to file! Incapaz de escrever no ficheiro! Successfully exported Exportado com sucesso AutoFillNotification Update Atualizar Remember Memorizar Never For This Site Nunca para este sítio Not Now Agora não on %1 em %1 for <b>%1</b> para <b>%1</b> Do you want QupZilla to update saved password %1? Pretende que o Qupzilla atualize a senha %1? Do you want QupZilla to remember the password %1 %2? Pretende que o QupZilla memorize a senha %1 %2? AutoFillWidget Choose username to login Escolha o nome de utilizador Login Iniciar sessão Login as <b>%1</b> Iniciar como <b>%1</b> BookmarkIcon Bookmark this Page Adicionar página aos marcadores Edit this bookmark Editar este marcador BookmarksImportDialog Import Bookmarks Importar marcadores <b>Import Bookmarks</b> <b>Importar marcadores</b> From File Do ficheiro Internet Explorer Internet Explorer Choose browser from which you want to import bookmarks: Escolha o navegador do qual pretende importar os marcadores: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Nota:</b> atualmente, para importar pastas, tem que importar os marcadores de um ficheiro HTML. Choose... Escolha... Try to fetch icons for all bookmarks (may take a while) Tentar obter os ícones de todos os marcadores (pode demorar algum tempo) Fetching icons, please wait... A obter ícones... Title Título Url Url Next Seguinte Cancel Cancelar <b>Importing from %1</b> <b>A importar de %1</b> Finish Terminar Please press Finish to complete importing process. Prima Terminar para concluir o processo. Error! Erro! The file doesn't contain any bookmark. O ficheiro não contém quaisquer marcadores. Choose directory... Escolha o diretório... Choose file... Escolha o ficheiro... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in O Mozilla Firefox guarda os marcadores na base de dados SQLite em <b>places.sqlite</b>. Este ficheiro costuma estar em Please choose this file to begin importing bookmarks. Escolha o ficheiro para iniciar a importação de marcadores. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in O Google Chrome guarda os marcadores no ficheiro de texto <b>Bookmarks</b>. Este ficheiro costuma estar em Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in O Opera guarda os marcadores no ficheiro de texto <b>bookmarks.adr</b>. Este ficheiro costuma estar em You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Pode importar os marcadores de qualquer navegador com suporte a exportação em HTML. Estes ficheiros costumam ter os sufixos Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in O Internet Explorer guarda os marcadores na pasta de <b>Favoritos</b>. Esta pasta costuma estar em Please choose this folder to begin importing bookmarks. Escolha esta pasta para iniciar a importação de marcadores. No Error Sem erros Unable to open file. Incapaz de abrir ficheiro. Cannot evaluate JSON code. Incapaz de avaliar o código JSON. File does not exist. O ficheiro não existe. Unable to open database. Is Firefox running? Incapaz de abrir a base de dados. O Firefox está aberto? Directory does not exist. O diretório não existe. The directory does not contain any bookmarks. O diretório não contém quaisquer marcadores. BookmarksManager Bookmarks Marcadores Optimize Database Otimizar base de dados Import Bookmarks Importar marcadores Add Folder Adicionar pasta Title Título Url Url Expand All Expandir Collapse All Recolher Add new folder Adicionar nova pasta Choose parent folder for new folder: Escolha a pasta para colocar a nova pasta: Choose name for new bookmark folder: Escolha o nome para a nova pasta: Add new subfolder Adicionar subpasta Choose name for new subfolder in bookmarks toolbar: Escolha o nome para a nova subpasta: Rename Folder Mudar nome da pasta Choose name for folder: Escolha o nome da pasta: Add Subfolder Adicionar subpasta Rename folder Mudar nome da pasta Remove folder Remover pasta Open link in current &tab Abrir ligação no separador a&tual Open link in &new tab Abrir ligação em &novo separador Move bookmark to &folder &Mover marcador para a pasta Change icon Alterar ícone Rename bookmark Mudar nome do marcador Remove bookmark Remover marcador <b>Warning: </b>You already have bookmarked this page! <b>Aviso:</b> esta página já existe nos marcadores! Choose name and location of this bookmark. Escolha o nome e a localização deste marcador. Add New Bookmark Adicionar novo marcador Choose folder for bookmarks: Escolha a pasta dos marcadores: Bookmark All Tabs Adicionar separadores aos marcadores BookmarksModel Bookmarks In Menu Marcadores no menu Bookmarks In ToolBar Marcadores na barra de ferramentas Unsorted Bookmarks Marcadores não organizados BookmarksSideBar Search... Procurar... Open link in current &tab Abrir ligação no separador a&tual Open link in &new tab Abrir ligação em &novo separador Copy address Copiar endereço &Delete E&liminar BookmarksToolbar &Bookmark Current Page Adicionar página aos &marcadores Bookmark &All Tabs &Adicionar separadores aos marcadores &Organize Bookmarks &Organizar marcadores Show Most &Visited Mostrar mais &visitados Show Only Icons Só ícones &Hide Toolbar O&cultar barra de ferramentas Open bookmark Abrir marcador Open bookmark in new tab Abrir marcador em novo separador Move right Mover para a direita Move left Mover para a esquerda Edit bookmark Editar marcador Remove bookmark Remover marcador Edit bookmark: Editar marcador: Title: Título: Url: Url: Edit Bookmark Editar marcador Most visited Mais visitados Sites you visited the most As páginas mais visitadas Empty Vazio BookmarksTree Bookmarks Marcadores New Folder... Nova pasta... BookmarksWidget Add to Speed Dial Adicionar à ligação rápida Save Gravar Name: Nome: Folder: Pasta: Remove from Speed Dial Remover da ligação rápida Remove Remover BrowsingLibrary Library Biblioteca Search... Procurar... History Histórico Bookmarks Marcadores RSS RSS Database Optimized Base de dados otimizada Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 A base de dados foi otimizada.<br/><br/><b>Tamanho antes de otimização: </b>%1<br/><b>Tamanho após otimização: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Emitido para</b> Common Name (CN): Nome comum (NC): Organization (O): Organização (O): Organizational Unit (OU): Unidade organizacional (UO): Serial Number: Número de série: <b>Issued By</b> <b>Emitido por</b> <b>Validity</b> <b>Validade</b> Issued On: Emitido em: Expires On: Termina em: ClearPrivateData Clear Recent History Limpar histórico recente Choose what you want to delete: Escolha os itens a eliminar: Clear history Limpar histórico Clear cache Limpar cache Clear icons Limpar ícones <b>Clear Recent History</b> <b>Limpar histórico recente</b> Earlier Today Hoje Week Semana Month Mês All Tudo Clear web databases Limpar bases de dados web Clear local storage Limpar armazenamento local Clear cookies Limpar cookies ClickToFlash Object blocked by ClickToFlash Objeto bloqueado pelo ClickToFlash Show more information about object Mostrar mais informações do objeto Delete object Eliminar objeto Add %1 to whitelist Adicionar %1 à lista de permissões Flash Object Objeto Flash <b>Attribute Name</b> <b>Nome do atributo</b> <b>Value</b> <b>Valor</b> No more information available. Não existem mais informações. CookieManager Cookies Cookies Stored Cookies Cookies guardados Find: Localizar: These cookies are stored on your computer: Estes cookies estão guardados no computador: Server Servidor Cookie name Nome do cookie Name: Nome: Value: Valor: Server: Servidor: Path: Caminho: Secure: Seguro: Expiration: Termina em: <cookie not selected> <cookie não selecionado> Remove all cookies Remover todos os cookies Remove cookies Remover cookies Cookie Filtering Filtro de cookies <b>Cookie whitelist</b> <b>Lista de cookies permitidos</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Os cookies destes servidores serão sempre aceites (mesmo que a opção de guardar cookies esteja inativa) Add Adicionar Remove Remover <b>Cookie blacklist</b> <b>Lista de cookies rejeitados</b> Cookies from these servers will NEVER be accepted Os cookies destes servidores nunca serão aceites Settings Definições <b>Cookie Settings</b> <b>Definições de cookies</b> Allow storing of cookies Permitir armazenamento de cookies Delete cookies on close Eliminar cookies ao fechar Match domain exactly Coincidente com o domínio Filter tracking cookies Filtrar cookies de rastreio <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! <b>Aviso:</b> as opções Coincidente com o domínio e Filtrar cookies de rastreio podem recusar alguns cookies nos sítios visitados. Se ocorrem problemas, tente desativar estas opções! Search Procurar Confirmation Confirmação Are you sure to delete all cookies on your computer? Tem a certeza que pretende remover todos os cookies? Secure only Só os seguros All connections Todas as ligações Session cookie Cookie da sessão Remove cookie Remover cookie Add to whitelist Adicionar à lista de permissões Add to blacklist Adicionar à lista de rejeições DownloadFileHelper Save file as... Gravar ficheiro como... NoNameDownload Transferência sem nome DownloadItem Remaining time unavailable Tempo restante não disponível Error: Cannot write to file! Erro: incapaz de escrever no ficheiro! Done - %1 Concluído - %1 Cancelled Cancelado few seconds alguns segundos %n seconds %n segundo%n segundos %n minutes %n minuto%n minutos %n hours %n hora%n horas Unknown speed Velocidade desconhecida kB/s kB/s MB/s MB/s GB/s GB/s Unknown size Tamanho desconhecido %2 - unknown size (%3) %2 - tamanho desconhecido (%3) Remaining %1 - %2 of %3 (%4) Faltam %1 - %2 de %3 (%4) Cancelled - %1 Cancelado - %1 Delete file Eliminar ficheiro Do you want to also delete dowloaded file? Pretende também eliminar o ficheiro transferido? Open File Abrir ficheiro Open Folder Abrir pasta Go to Download Page Ir para a página de transferências Copy Download Link Copiar ligação da transferência Cancel downloading Cancelar transferência Remove Remover Error Erro Not found Não encontrado Sorry, the file %1 was not found! O ficheiro %1 não foi encontrado! Error: Erro: DownloadManager Download Manager Gestor de transferências Clear Limpar %1% of %2 files (%3) %4 remaining %1% de %2 ficheiro(s) - restam %4 (%3) %1% - Download Manager %1% - Gestor de transferências Download Finished Transferência concluída All files have been successfully downloaded. Todos os ficheiros foram transferidos com sucesso. Warning Aviso Are you sure to quit? All uncompleted downloads will be cancelled! Tem a certeza que pretende sair? As transferência não concluídas serão canceladas! DownloadOptionsDialog Opening Abrir Copy download link Copiar ligação da transferência You have chosen to open Optou por abrir which is a: que é: What should QupZilla do with this file? O que deve o QupZilla fazer com este ficheiro? Open... Abrir... Save File Gravar ficheiro Download with External Manager Utilizar gestor de transferências externo from: de: Opening %1 Abrir %1 Download link copied. Ligação copiada. EditSearchEngine Name: Nome: Url: Url: Shortcut: Atalho: Icon: Ícone: <b>Note: </b>%s in url or post data represent searched string <b>Nota: </b>%s no url ou nos dados enviados representa o texto procurado Post Data: Dados enviados: Change... Alterar... FileSchemeReply No Error Sem erros Up to higher level directory Subir um diretório Show hidden files Mostrar ficheiros ocultos Name Nome Size Tamanho Last modified Última modificação Index for %1 Índice de %1 Folder is empty. A pasta está vazia. FtpDownloader Cancelled! Cancelado! FtpSchemeReply Up to higher level directory Ir para o diretório superior Show hidden files Mostrar ficheiros ocultos Name Nome Size Tamanho Last modified Última modificação Index for %1 Índice de %1 Folder is empty. A pasta está vazia. Unknown command Comando desconhecido HTML5PermissionsDialog HTML5 Permissions Pernissões HTML5 Notifications Notificações Site Sítio Behaviour Comportamento Remove Remover Geolocation Geolocalização Allow Permitir Deny Recusar HTML5PermissionsNotification Remember Memorizar Allow Permitir Deny Recusar this site este sítio Allow %1 to show desktop notifications? Permitir que %1 mostre as notificações do ambiente de trabalho? Allow %1 to locate your position? Permitir que %1 aceda à sua localização? History No Named Page Página sem nome January janeiro February fevereiro March março April abril May maio June junho July julho August agosto September setembro October outubro November novembro December dezembro HistoryManager History Histórico Delete Eliminar Clear All History Limpar todo o histórico Optimize Database Otimizar base de dados Confirmation Confirmação Are you sure to delete all history? Tem a certeza que pretende eliminar o histórico? HistoryModel Title Título Address Endereço Visit Date Data da visita Visit Count N.º de visitas Today Hoje This Week Esta semana This Month Este mês HistorySideBar Search... Procurar... HistoryView Open link in current tab Abrir ligação no separador atual Open link in new tab Abrir ligação em novo separador Copy title Copiar título Copy address Copiar endereço Remove Remover IconChooser Choose icon... Escolha o ícone... From file Do ficheiro Image (.png, .jpg, .jpeg, .gif) Imagem (.png, .jpg, .jpeg, .gif) Choose file... Escolha o ficheiro... From database Da base de dados Site Url: Url: Image files Imagens JsOptions JavaScript Options Opções JavaScript Allow JavaScript to: Permitir aos JavaScripts: Close windows Fechar janelas Open popup windows Abrir janelas emergentes Change window size Alterar o tamanho da janela Hide menu bar Ocultar a barra de menu Hide status bar Ocultar a barra de estado Hide tool bar Ocultar a barra de ferramentas Access clipboard Aceder à área de transferência LicenseViewer License Viewer Visualizador de licença LocationBar Enter URL address or search on %1 Introduza o URL ou procure em %1 Paste And &Go Colar e &ir Clear All Limpar tudo .co.uk Append domain name on ALT + Enter = Should be different for every country .pt Show information about this page Mostrar informações desta página LocationCompleterView Switch to tab Trocar para separador MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? O QupZilla não é o navegador padrão. Pretende definir o QupZilla como navegador padrão? Always perform this check when starting QupZilla. Executar sempre esta análise ao iniciar o QupZilla. Default Browser Navegador padrão QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. O QupZilla é um navegador web rápido, seguro e de código livre. O QupZilla está sujeito aos termos da GPL versão 3 ou (por opção) qualquer versão posterior. O Qupzilla é baseado nas tecnologias WebKit e Qt. MasterPasswordDialog Encrypted DataBase Settings Definições das bases de dados cifradas Set/Change Master Password... Definir/mudar senha mestre... Clear Master Password... Eliminar senha mestre... This backend does not work without a master password. Esta infraestrutura não funciona sem uma senha mestre. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. Esta opção elimina a senha mestre, move todos os dados cifrados para uma base de dados em texto simples e ativa a opção. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. A senha mestre é utilizada para proteger as senhas de formulários e páginas web. Se definir uma senha mestre, esta será solicitada uma vez por sessão. Current Password: Senha atual: New Password: Nova senha: Confirm Password: Confirmação de senha: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. <b>Nota:</b> não pode redefinir a senha mestre. Não se esqueça da senha. Warning! Aviso! You entered a wrong password! Introduziu um senha inválida! New/Confirm password fields do not match! A senha nova e a sua confirmação não são iguais! Some data has not been decrypted. The master password was not cleared! Existem alguns dados que não foram decifrados. A senha mestre não foi eliminada! Are you sure to clear master password and decrypt data? Tem a certeza que deseja eliminar a senha mestre e desproteger os dados? NavigationBar No Named Page Página sem nome Back Recuar Forward Avançar Home Página inicial New Tab Novo separador Main Menu Menu principal Exit Fullscreen Sair de ecrã completo Clear history Limpar histórico NetworkManager SSL Certificate Error! Erro de certificado SSL! The page you are trying to access has the following errors in the SSL certificate: A página que está a tentar aceder apresenta os seguintes erros no certificado SSL: <b>Organization: </b> <b>Organização: </b> <b>Domain Name: </b> <b>Domínio: </b> <b>Expiration Date: </b> <b>Termina em: </b> <b>Error: </b> <b>Erro: </b> Would you like to make an exception for this certificate? Pretende criar uma exceção para este certificado? Authorisation required Requer autenticação Username: Utilizador: Password: Senha: Save username and password on this site Gravar utilizador e senha desta página A username and password are being requested by %1. The site says: "%2" %1 está a solicitar um utilizador e uma senha. A página reporta: "%2" FTP authorisation required Requer autenticação FTP Login anonymously Iniciar sessão em modo anónimo A username and password are being requested by %1:%2. Estão a ser solicitados o nome de utilizador e a senha para %1:%2. Proxy authorisation required Requer autenticação de proxy Remember username and password for this proxy. Memorizar utilizador e senha para este proxy. A username and password are being requested by proxy %1. O proxy %1 está a solicitar um utilizador e uma senha. PageScreen Page Screen Ecrã da página Format: Formato: Location: Localização: Browse... Procurar... Save as %1 Gravar como %1 Choose location... Escolha a localização... File '%1' already exists. Do you want to overwrite it? O ficheiro "%1" já existe. Substituir ficheiro? File already exists Ficheiro já existe PluginsList Application Extensions Extras da aplicação Allow Application Extensions to be loaded Permitir o carregamento dos extras da aplicação Settings Definições WebKit Plugins Plugins WebKit <b>Click To Flash Plugin</b> <b>Plugin ClickToFlash</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. O plugin ClickToFlash permite-lhe bloquear o conteúdo Flash das páginas web. Pode abrir o plugin carregando no ícone Flash. Whitelist Lista de permissões Add Adicionar Remove Remover Allow Click To Flash Permitir ClickToFlash PluginsManager Add site to whitelist Adicionar sítio à lista de permissões Server without http:// (ex. youtube.com) Servidor sem http:// (ex. youtube.com) Error! Erro! Cannot load extension! Incapaz de carregar extensão! PopupWebView Inspect Element Inspecionar elemento PopupWindow File Ficheiro &Save Page As... Gra&var página como... Save Page Screen Gravar ecrã da página Send Link... Enviar ligação... &Print... Im&primir... Close Fechar Edit Editar &Undo An&ular &Redo &Refazer &Cut &Cortar C&opy C&opiar &Paste Co&lar Select All Selecionar tudo Find Localizar View Ver &Stop &Parar &Reload &Recarregar Zoom &In Ampl&iar Zoom &Out Red&uzir Reset Restaurar &Page Source Código fonte da &página %1 - QupZilla %1 - QupZilla Preferences Preferences Preferências QupZilla QupZilla General Geral Appearance Aparência Tabs Separadores Browsing Navegação Fonts Tipo de letra Keyboard Shortcuts Atalhos de teclado Downloads Transferências Password Manager Gestor de senhas Privacy Privacidade Notifications Notificações Extensions Extras Other Outras Use current Utilizar atual Note: You cannot delete active profile. Nota: não pode eliminar o perfil ativo. Create New Criar novo Delete Eliminar <b>Launching</b> <b>Iniciar</b> After launch: Ao iniciar: Open blank page Abrir página em branco Open homepage Abrir pagina inicial Open speed dial Abrir ligação rápida Restore session Restaurar sessão Homepage: Página inicial: On new tab: Novo separador: Open blank tab Abrir separador vazio Open other page... Abrir outra página... <b>Profiles</b> <b>Perfis</b> Startup profile: Perfil de arranque: Check for updates on start Procurar atualizações ao iniciar Active profile: Perfil ativo: In order to change language, you must restart browser. Para utilizar o idioma, tem que reiniciar o navegador. <b>Language</b> <b>Idioma</b> Available translations: Traduções disponíveis: Don't load tabs until selected Não carregar separadores até selecionar Check to see if QupZilla is the default browser on startup Ao iniciar, verificar se o QupZilla é o navegador padrão do sistema Check Now Verificar agora Themes Temas Advanced options Opções avançadas <b>Browser Window</b> <b>Janela do navegador</b> Show StatusBar on start Mostrar barra de estado ao iniciar Show Bookmarks ToolBar on start Mostrar barra de marcadores ao iniciar Show Navigation ToolBar on start Mostrar barra de navegação ao iniciar <b>Navigation ToolBar</b> <b>Barra de navegação</b> Show Home button Mostrar botão Página inicial Show Back / Forward buttons Mostrar botões Recuar/Avançar <b>Background<b/> <b>Fundo</b> Use transparent background Utilizar fundo transparente Show web search bar Mostrar barra de procura web Show Add Tab button Mostrar botão Adicionar separador Show Reload / Stop buttons Mostrar botões Recarregar/Parar Tabs behaviour Comportamento dos separadores Show tab previews Mostrar antevisão das páginas Make tab previews animated Mostrar antevisão animada Hide tabs when there is only one tab Ocultar separadores se só existir um Activate last tab when closing active tab Ativar o último separador ao fechar o separador ativo Open new tabs after active tab Abrir separadores após o atual Open new empty tabs after active tab Abrir os separadores vazios após o separador ativo Automatically switch to newly opened tab Trocar automaticamente para o separador aberto Don't quit upon closing last tab Não sair ao fechar o último separador Ask when closing multiple tabs Perguntar ao fechar vários separadores Closed tabs list instead of opened in tab bar Na barra de separadores, mostrar lista de separadores fechados em vez dos abertos Address Bar behaviour Comportamento da barra de endereço Suggest when typing into address bar: Sugerir ao escrever na barra de endereço: History and Bookmarks Histórico e marcadores History Histórico Bookmarks Marcadores Nothing Nada Press "Shift" to not switch the tab but load the url in the current tab. Prima Shift para não trocar de separador e carregar o url no separador atal. Propose to switch tab if completed url is already loaded. Solicitar a troca de separador quando o url for carregado. Always show go icon Mostrar sempre o ícone Ir Select all text by double clicking in address bar Selecionar todo o texto ao clicar duas vezes na barra de endereço Select all text by clicking in address bar Selecionar todo o texto ao clicar na barra de endereço Search with Default Engine Procurar com o motor padrão Show loading progress in address bar Mostrar evolução na barra de endereço Fill Preencher Bottom Base Top Topo Custom color: Cor personalizada: Select color Escolha a cor ... ... Reset Restaurar Web Configuration Configuração web Allow Netscape Plugins (Flash plugin) Permitir plugins Netscape (Flash) Allow JavaScript Permitir JavaScript Allow JAVA Permitir Java Allow DNS Prefetch Permitir obtenção prévia de DNS Enable XSS Auditing try to detect possible XSS attacks when executing javascript Ativar auditoria XSS Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Imprimir elementos de segundo plano Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Incluir ligações na cadeia de foco Animated scrolling Deslocação animada Enable caret browsing Ativar navegação com cursor Enable spatial navigation Ativar navegação entre elementos Zoom text only Ampliar apenas o texto Mouse wheel scrolls Roda do rato move lines on page linhas na página Default zoom on pages: Tamanho padrão das páginas: Local Storage Armazenamento local Maximum Máximo 50 MB 50 MB 1 1 Maximum pages in cache: N.º máximo de páginas em cache: Allow storing network cache on disk Permitir armazenamento da cache de rede no disco Store cache in: Guardar cache em: Allow saving history Permitir gravação do histórico Delete history on close Eliminar histórico ao fechar Allow local storage of HTML5 web content Permitir armazenamento local de conteúdo HTML5 Delete locally stored HTML5 web content on close Eliminar conteúdo HTML5 ao fechar o navegador Delete now Eliminar agora Proxy Configuration Configuração de proxy Proxy Auto-Config (.pac) file Ficheiro de configuração automática de proxy (.pac) Reload Recarregar HTTP HTTP SOCKS5 SOCKS5 Port: Porta: Username: Utilizador: Password: Senha: Don't use on: Não utilizar em: Manual configuration Configuração manual System proxy configuration Proxy do sistema Do not use proxy Não utilizar proxy <b>Exceptions</b> <b>Exceções</b> Server: Servidor: Use different proxy for https connection Utilizar proxy distinta para ligações https Use script for automatic configuration: Utilizar script de configuração automática: <b>Font Families</b> <b>Famílias de letras</b> Standard Padrão Fixed Fixa Serif Serif Sans Serif Sans Serif Cursive Cursiva Fantasy Fantasia <b>Font Sizes</b> <b>Tamanho do tipo de letra</b> Fixed Font Size Tamanho das letras fixas Default Font Size Tamanho padrão das letras Minimum Font Size Tamanho mínimo das letras Minimum Logical Font Size Tamanho mínimo lógico das letras <b>Shortcuts</b> <b>Atalhos</b> Switch to tabs with Alt + number of tab Trocar de separador com Alt+número do separador Load speed dials with Ctrl + number of speed dial Carregar ligação rápida com Ctrl+número da ligação Add .co.uk domain by pressing ALT key in address bar Adicionar .pt ao premir a tecla Alt na barra de endereço <b>Download Location</b> <b>Localização das transferências</b> Ask everytime for download location Perguntar sempre Use defined location: Utilizar esta localização: <b>Download Options</b> <b>Opções de transferências</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Utilizar caixa de diálogo do sistema (pode interferir na transferência de conteúdo seguro SSL) Close download manager when downloading finishes Fechar gestor de transferências ao terminar <b>External download manager</b> <b>Gestor de transferências externo</b> Use external download manager Utilizar gestor de transferências externo Executable: Executável: Arguments: Argumentos: Leave blank if unsure Deixe em branco se não tiver certeza <b>%d</b> will be replaced with URL to be downloaded <b>%d</b> será substituido pelo URL a transferir <b>AutoFill options</b> <b>Preenchimento automático</b> Allow saving passwords from sites Permitir gravação de senhas das páginas Send Referer header to servers Enviar endereço para os servidores <b>Cookies</b> <b>Cookies</b> Send Do Not Track header to servers Enviar aos servidores uma notificação de não monitorização <b>Other</b> <b>Outros</b> Manage CA certificates Gerir certificados Certificate Manager Gestor de certificados <b>SSL Certificates</b> <b>Certificados SSL</b> <b>JavaScript</b> <b>JavaScript</b> Manage JavaScript privacy options Gerir opções dos JavaScript JavaScript options Opções JavaScript Cookies Manager Gestor de cookies Manage Cookies Gerir cookies <b>HTML5 Permissions</b> <b>Permissões HTML5</b> Manage HTML5 permissions Gerir permissões HTML5 HTML5 Permissions Permissões HTML5 <b>Notifications</b> <b>Notificações</b> Use OSD Notifications Utilizar notificações Use Native System Notifications (Linux only) Utilizar notificações do sistema (só para Linux) Do not use Notifications Não utilizar notificações Expiration timeout: Terminam em: seconds segundos <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Nota: </b>pode alterar a posição da notificação arrastando-a pelo ecrã. StyleSheet automatically loaded with all websites: A folha de estilo a carregar automaticamente nas páginas web: Languages Idiomas <b>Preferred language for web sites</b> <b>Idioma preferencial para páginas web</b> <b>Change browser identification</b> <b>Alterar identificação do navegador</b> User Agent Manager Gestão do agente do utilizador Default Padrão Set as default Definir como padrão OSD Notification Notificação Drag it on the screen to place it where you want. Arraste a notificação no ecrã para a posicionar. Choose download location... Escolha a localização das transferências... Choose stylesheet location... Escolha a localização da folha de estilo... Deleted Eliminado Choose executable location... Escolha a localização do executável... Choose cache path... Escolher caminho... New Profile Novo perfil Enter the new profile's name: Introduza o nome do novo perfil: Error! Erro! This profile already exists! Este perfil já existe! Cannot create profile directory! Incapaz de criar o diretório do perfil! Confirmation Confirmação Are you sure to permanently delete "%1" profile? This action cannot be undone! Tem a certeza que pretende eliminar o perfil "%1" permanentemente? Esta ação não pode ser anulada! Select Color Escolha a cor QObject Native System Notification Notificações do sistema Save file as... Gravar ficheiro como... The file is not an OpenSearch 1.1 file. Este não é um ficheiro OpenSearch 1.1. <not set in certificate> <não definido no certificado> Unknown size Tamanho desconhecido KB KB MB MB GB GB Executable: Executável: Arguments: Argumentos: Cannot start external program Incapaz de iniciar o programa externo Cannot start external program! %1 Incapaz de iniciar o programa externo! %1 QtWin Open new tab Abrir um novo separador Opens a new tab if browser is running Abre um novo separador se o navegador estiver aberto Open new window Abrir uma nova janela Opens a new window if browser is running Abre uma nova janela se o navegador estiver aberto Open download manager Abrir gestor de transferências Opens a download manager if browser is running Abre um gestor de transferências se o navegador estiver aberto QupZilla QupZilla QupZilla Private Browsing Enabled Navegação privada ativada IP Address of current page Endereço IP da página atual &About QupZilla Sobre o QupZill&a Pr&eferences Pr&eferências Quit Sair &File &Ficheiro &New Window &Nova janela New Tab Novo separador Open Location Abrir localização Open &File... Abrir &ficheiro... Close Tab Fechar separador Close Window Fechar janela &Save Page As... Gra&var página como... Save Page Screen Gravar ecrã da página Send Link... Enviar ligação... &Print... Im&primir... Import bookmarks... Importar marcadores... &Edit &Editar &Undo An&ular &Redo &Refazer &Cut &Cortar C&opy C&opiar &Paste Co&lar Select &All Selecion&ar tudo &Find Locali&zar &View &Ver &Navigation Toolbar Barra de &navegação &Bookmarks Toolbar &Barra de marcadores Sta&tus Bar Barra de es&tado &Menu Bar Barra de &menu &Tabs on Top &Separadores em cima &Fullscreen &Ecrã completo &Stop &Parar &Reload &Recarregar Character &Encoding Codificação de caract&eres Enable &Caret Browsing Ativar navegação &com cursor Toolbars Barras de ferramentas Sidebars Barra lateral Zoom &In Ampl&iar Zoom &Out Red&uzir Reset Restaurar &Page Source Código fonte da &página Hi&story Hi&stórico &Back &Recuar &Forward &Avançar &Home Pági&na inicial Show &All History Mostr&ar todo o histórico Closed Tabs Separadores fechados Recently Visited Recentes Most Visited Mais visitados &Bookmarks &Marcadores Bookmark &This Page Adicionar página aos marca&dores Bookmark &All Tabs &Adicionar separadores aos marcadores Organize &Bookmarks Organizar &marcadores &Tools Ferramen&tas &Web Search Procura &web Page &Info &Informações da página &Download Manager Gestor &de transferências &Cookies Manager Gestor de &cookies &AdBlock &Adblock RSS &Reader Leitor &RSS Web In&spector In&spetor web Clear Recent &History Limpar &histórico recente New &Private Window Nova janela &privada &Help Aj&uda About &Qt Sobre &Qt Information about application Informações da aplicação Configuration Information Informações de configuração Report &Issue Reportar pro&blema Restore &Closed Tab Restaurar separador fe&chado (Private Browsing) (Navegação privada) Empty Vazio Restore All Closed Tabs Restaurar todos os separadores fechados Clear list Limpar lista Other Outras %1 - QupZilla %1 - QupZilla HTML files Ficheiros HTML Image files Imagens Text files Ficheiros de texto All files Todos os ficheiros Open file... Abrir ficheiro... QupZilla %1 (%2) QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Ainda existem %1 separadores abertos e a sessão não será gravada. Tem a certeza que pretende sair? Don't ask again Não perguntar novamente There are still open tabs Ainda existem separadores abertos QupZillaSchemeReply No Error Sem erros Not Found Não encontrado Report Issue Reportar problema If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Se estiverem a ocorrer problemas no QupZilla, experimente desativar os extras. <br/>Se os erros persistirem, preencha este formulário: Your E-mail O seu endereço eletrónico Issue type Tipo de problema Issue description Descrição do problema Send Enviar E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. O endereço eletrónico é opcional. <br/><b>Nota: </b>antes de submeter um relatório de erro, consulte <a href=%1>isto</a>. Please fill out all required fields! Tem que preencher os campos obrigatórios! Start Page Página inicial Search on Web Procurar na web Search results provided by DuckDuckGo Resultados disponibilizados pelo DuckDuckGo About QupZilla Sobre o QupZilla <h1>Private Browsing</h1> <h1>Navegação privada</h1> Information about version Informações da versão Copyright Direitos de autor Version Versão WebKit version Versão WebKit Main developer Programador principal Contributors Contributos Translators Tradutores Speed Dial Ligação rápida Add New Page Adicionar nova página Edit Editar Remove Remover Reload Recarregar Are you sure to remove this speed dial? Tem a certeza que pretende eliminar esta ligação rápida? Load title from page Carregar título da página Url Url Title Título Apply Aplicar Close Fechar New Page Nova página Speed Dial settings Definições da ligação rápida Placement: Posicionamento: Auto Automático Cover Cobrir Fit Ajustar Fit Width Ajustar à largura Fit Height Ajustar à altura Use background image Utilizar imagem de fundo Select image Escolher imagem Maximum pages in a row: Máximo de páginas por linha: Change size of pages: Alterar tamanho das páginas: Center speed dials Centrar ligações rápidas Restore Session Restaurar sessão Oops, QupZilla crashed. O Qupzilla terminou abruptamente. We apologize for this. Would you like to restore the last saved state? Pedimos desculpa pelo sucedido. Pretende restaurar o último estado gravado? Try removing one or more tabs that you think cause troubles Tente remover um ou mais separadores (aqueles que acha que estão a originar o erro) Or you can start completely new session Ou inicie uma nova sessão Configuration Information Informações de configuração This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Esta página contém as informações sobre a atual configuração do Qupzilla (úteis para resolução de problemas). Inclua estas informações nos seus relatórios de erros. Browser Identification Identificação do navegador Paths Caminhos Build Configuration Configuração da compilação Preferences Preferências Option Opção Value Valor Extensions Extras Name Nome Author Autor Description Descrição Application version Versão da aplicação Qt version Versão Qt Build time Compilado Platform Plataforma Profile Perfil Settings Definições Saved session Sessão gravada Pinned tabs Separadores fixos Data Dados Themes Temas Translations Traduções Disabled Inativa <b>Enabled</b> <b>Ativa</b> Debug build Versão de depuração WebGL support Suporte WebGL Windows 7 API API Windows 7 KDE integration Integração KDE Portable build Versão portátil No available extensions. Sem extras disponíveis. RSSManager RSS Reader Leitor RSS Empty Vazio Add feed Adicionar fonte Edit feed Editar fonte Delete feed Eliminar fonte Optimize Database Otimizar base de dados Reload Recarregar News Notícias Loading... A carregar... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Ainda não possui quaisquer fontes RSS.<br/> Adicione as fontes com o ícone RSS existente na barra de navegação, nas páginas que disponham deste serviço. Add new feed Adicionar nova fonte Please enter URL of new feed: Introduza o URL da nova fonte: New feed Nova fonte Fill title and URL of a feed: Indique o título e o URL da fonte: Feed title: Título: Feed URL: URL: Edit RSS Feed Editar fonte RSS Open link in current tab Abrir ligação no separador atual Open link in new tab Abrir ligação em novo separador Error in fetching feed Ocorreu um erro ao obter a fonte RSS feed duplicated Fonte RSS duplicada You already have this feed. Esta fonte já existe. RSSNotification Add this feed into Adicionar esta fonte em Add Adicionar RSS feed <b>"%1"</b> Fonte RSS <b>"%1"</b> Internal Reader Leitor interno Other... Outro... Liferea not running O Liferea não está em execução Liferea must be running in order to add new feed. Para adicionar a nova fonte, o Liferea tem que estar em execução. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Para adicionar esta fonte RSS noutra aplicação, utilze estas informações:<br/><br/><b>Título: </b>%1<br/><b>Url: </b>%2<br/><br/>. O URL desta fonte foi copiado para a área de transferência. Add feed into other application Adicionar fonte noutra aplicação RSSWidget Add RSS Feeds from this site Adicionar fontes RSS desta página Untitled feed Fonte sem nome Add Adicionar RecoveryWidget Start New Session Iniciar nova sessão Restore Restaurar Window %1 Janela %1 RegisterQAppAssociation Warning! Aviso! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) Existem alguns problemas. Por favor reinstale o QupZilla. Experimente iniciar o QupZilla como administrador. Pode ser que tenha sorte! ;) RssIcon Add RSS from this page... Adicionar RSS desta página... SSLManager Certificate Manager Gestor de certificados CA Authorities Certificates Autoridades de certificação Show info Mostrar informações This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Esta é a lista de autoridades de certificação existentes no sistema e nos caminhos do utilizador. Local Certificates Certificados locais Import Importar Remove Remover This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Esta é a lista de certificados locais guardados no seu perfil. Também contém todos os certificados que foram excecionados. Settings Definições Add Adicionar If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Se as autoridades de certificação não forem carregadas automaticamente, pode especificar os caminhos em que os certificados estão guardados. <b>NOTE:</b> Setting this option is a high security risk! <b>Nota:</b> esta opção representa um risco de segurança elevado! Ignore all SSL Warnings Ignorar avisos SSL All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Todos os certificados devem possuir o sufixo .crt. Após adicionar ou remover os caminhos dos certificados, tem que reiniciar o QupZilla para que as alterações produzam efeito. Choose path... Escolha o caminho... Import certificate... Importar certificado... Certificate Informations Informações do certificado SearchEnginesDialog Manage Search Engines Gestão dos motores de procura Add... Adicionar... Remove Remover Edit Editar Set as default Definir como padrão Up Para cima Down Para baixo Search Engine Motor de procura Shortcut Atalho Defaults Pré-definido Add Search Engine Adicionar motor de procura Remove Engine Remover motor You can't remove the default search engine.<br>Set a different engine as default before removing %1. Não pode remover o motor de procura padrão.<br>Antes de remover %1 tem que definir um motor diferente. Edit Search Engine Editar motor de procura SearchEnginesManager Search Engine Added Motor de procura adicionado Search Engine "%1" has been successfully added. O motor de procura "%1" foi adicionado com sucesso. Search Engine is not valid! O motor de procura é inválido! Error Erro Error while adding Search Engine <br><b>Error Message: </b> %1 Ocorreu um erro ao adicionar o motor de procura. <br><b>Mensagem de erro: </b> %1 SearchToolBar No results found. Nenhum resultado. SearchToolbar Search: Procurar: Search... Procurar... Highlight Realçar Case sensitive Diferenciar maiúsculas de minúsculas SideBar Bookmarks Marcadores History Histórico SiteInfo Site Info Informações da página General Geral Media Multimédia Databases Bases de dados Security Segurança Size: Tamanho: Site address: Endereço: Encoding: Codificação: Meta tags of site: Meta tags da página: Tag Tag Value Valor <b>Security information</b> <b>Informações de segurança</b> Details Detalhes Image Imagem Image address Endereço da imagem <b>Preview</b> <b>Antevisão</b> <b>Database details</b> <b>Detalhes da base de dados</b> Name: Nome: Path: Caminho: <database not selected> <base de dados não selecionada> <not set in certificate> <não definido no certificado> No databases are used by this page. Não existem bases de dados nesta página. <b>Connection is Encrypted.</b> <b>Ligação codificada.</b> <b>Your connection to this page is secured with this certificate: </b> <b>A ligação a esta página está protegida por este certificado:</b> <b>Connection Not Encrypted.</b> <b>Ligação não codificada.</b> <b>Your connection to this page is not secured!</b> <b>A ligação a esta página não está protegida.</b> Copy Image Location Copiar localização da imagem Copy Image Name Copiar nome da imagem Save Image to Disk Gravar imagem no disco Error! Erro! This preview is not available! A antevisão não está disponível! Save image... Gravar imagem... Cannot write to file! Incapaz de escrever no ficheiro! Preview not available Antevisão não disponível SiteInfoWidget More... Mais... Your connection to this site is <b>secured</b>. A ligação a esta página é <b>segura</b>. Your connection to this site is <b>unsecured</b>. A ligação a esta página <b>não é segura</b>. This is your <b>%1</b> visit of this site. Esta é a sua <b>%1</b> visita a esta página. You have <b>never</b> visited this site before. Você <b>nunca</b> visitou esta página. first primeira second segunda third terceira SourceViewer Source of Código fonte de File Ficheiro Load in page Carregar na página Save as... Gravar como... Close Fechar Edit Editar Undo Anular Redo Refazer Cut Cortar Copy Copiar Paste Colar Select All Selecionar tudo Find Localizar Go to Line... Ir para a linha... View Ver Reload Recarregar Editable Editável Word Wrap Translineação Source loaded in page Código fonte carregado na página Cannot load in page. Page has been closed. Incapaz de carregar. A página foi fechada. Save file... Gravar ficheiro... Error! Erro! Cannot write to file! Incapaz de escrever no ficheiro! Error writing to file Erro ao escrever no ficheiro Source successfully saved Código fonte gravado com sucesso Source reloaded Código fonte recarregado Cannot reload source. Page has been closed. Incapaz de recarregar o código fonte. A página foi fechada. Editable changed Editável alterado Word Wrap changed Translineação alterada Enter line number Introduza o número da linha SourceViewerSearch Search: Procurar: Search... Procurar... Whole words Palavras completas SpeedDial Image files Imagens Select image... Selecione a imagem... Unable to load Incapaz de carregar SpellCheckDialog SpellCheck Correção ortográfica <b>Dictionary path</b> <b>Caminho do dicionário</b> Change... Alterar... <b>User dictionary</b> <b>Dicionário de utilizador</b> Add Adicionar Remove Remover Using Hunspell library Utilizando Hunspell Choose dictionary path... Escolha o caminho do dicionário... Add new word... Adicionar palavra... Add new word: Adicionar palavra: Speller No suggestions Nenhuma sugestão Add to dictionary Adicionar ao dicionário Settings Definições SqueezeLabelV2 Copy Copiar SslErrorDialog SSL Certificate Error! Erro de certificado SSL! Only for this session Apenas para esta sessão TabBar &New tab &Novo separador &Stop Tab Parar &separador &Reload Tab &Recarregar separador &Duplicate Tab &Duplicar separador D&etach Tab S&eparar separador Un&pin Tab Desa&fixar separador &Pin Tab Fi&xar separador Re&load All Tabs Re&carregar todos os separadores &Bookmark This Tab Adicionar separador aos &marcadores Bookmark &All Tabs &Adicionar separadores aos marcadores Close Ot&her Tabs Fechar os o&utros separadores Cl&ose F&echar Reloa&d All Tabs Recarregar to&dos os separadores Restore &Closed Tab Restaurar separador fe&chado Close Tabs Fechar separadores Do you really want to close other tabs? Deseja mesmo fechar os outros separadores? TabWidget New Tab Novo separador List of tabs Lista de separadores Loading... A carregar... No Named Page Página sem nome Currently you have %1 opened tabs Atualmente, tem %1 separadores abertos New tab Novo separador Empty Vazio Restore All Closed Tabs Restaurar todos os separadores fechados Clear list Limpar lista TabbedWebView Loading... A carregar... %1 - QupZilla %1 - QupZilla Inspect Element Inspecionar elemento ThemeManager <b>Name:</b> <b>Nome:</b> <b>Author:</b> <b>Autor:</b> <b>Description:</b> <b>Descrição:</b> License Licença ToolButton Stop Parar Reload Recarregar Updater Update available Atualização disponível New version of QupZilla is ready to download. Está disponível uma nova versão do QupZilla. Update Atualizar UserAgentDialog User Agent Manager Gestão do agente do utilizador Change global User Agent Alterar agente do utilizador Use different User Agents for specified sites Utilizar identificação diferente para os sítios especificados Site Sítio User Agent Agente do utilizador Add Adicionar Remove Remover Edit Editar Add new site Adicionar novo sítio Edit site Editar sítio Site domain: Domínio: User Agent: Agente do utilizador: WebInspectorDockWidget Web Inspector Inspetor web WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? O QupZilla não consegue manipular ligações <b>%1:</b>. A ligação solicitada é <ul><li>%2</li></ul>Pretende que o QupZilla tente abrir a ligação com uma aplicação do sistema? Remember my choice for this protocol Memorizar escolha para este protocolo External Protocol Request Pedido de protocolo externo To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Para mostrar esta página, o QupZilla tem que reenviar o pedido. (tal como fazer algo que já foi feito.) Confirm form resubmission Confirmar novo envio de formulário Select files to upload... Selecione os ficheiros a enviar... Server refused the connection O servidor recusou a ligação Server closed the connection O servidor fechou a ligação Server not found Servidor não encontrado Connection timed out A ligação expirou Untrusted connection Ligação não confiável Temporary network failure Falha temporária de rede Proxy connection refused Ligação de proxy recusada Proxy server not found Servidor proxy não encontrado Proxy connection timed out A ligação proxy expirou Proxy authentication required Requer autorização de proxy Content not found Conteúdo não encontrado Unknown network error Erro desconhecido AdBlocked Content Conteúdo bloqueado Blocked by <i>%1</i> Bloqueado por <i>%1</i> Content Access Denied Negado o acesso ao conteúdo Error code %1 Código de erro %1 Failed loading page Falha ao carregar a página QupZilla can't load page. O Qupzilla não conseguiu carregar a página. QupZilla can't load page from %1. O Qupzilla não conseguiu carregar a página %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Verifique se existem erros de inserção como <b>ww.</b>exemplo.com em vez de <b>www.</b>exemplo.com If you are unable to load any pages, check your computer's network connection. Se não consegue carregar quaisquer páginas, verifique a ligação de rede. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Se o computador estiver protegido por uma firewall ou proxy, certifique-se que o QupZilla pode aceder à Internet. Try Again Tente novamente JavaScript alert Alerta JavaScript Prevent this page from creating additional dialogs Impedir que esta página crie mais caixas de diálogo Choose file... Escolha o ficheiro... Cannot read data from <b>%1</b>. Upload was cancelled! Não foi possível ler os dados de <b>%1</b>. O envio foi cancelado! Cannot read file! Não foi possível ler o ficheiro! WebSearchBar Manage Search Engines Gestão dos motores de procura Add %1 ... Adicionar %1... Paste And &Search Colar e pr&ocurar Clear All Limpar tudo Show suggestions Mostrar sugestões Search when engine changed Procurar ao alterar o motor WebView No Named Page Página sem nome Create Search Engine Criar motor de procura Cut Cortar Copy Copiar Paste Colar Select All Selecionar tudo Default Pré-definida Left to Right Da esquerda para a direita Right to Left Da direita para a esquerda Bold Negrito Italic Ítálico Underline Sublinhado &Reload &Recarregar S&top Pa&rar Delete Eliminar &Back &Recuar &Forward &Avançar This frame Esta moldura Show &only this frame M&ostrar apenas esta moldura Show this frame in new &tab Mostrar es&ta moldura em novo separador Print frame Imprimir moldura Zoom &in Ampl&iar &Zoom out Redu&zir Reset Restaurar Show so&urce of frame Mostrar código fonte da mold&ura Book&mark page Adicionar página aos &marcadores &Save page as... &Gravar página como... &Copy page link &Copiar ligação da página Send page link... Enviar ligação da página... &Print page Im&primir página Select &all Selecion&ar tudo Validate page Validar página Show so&urce code Mos&trar código fonte Show info ab&out site Mostrar inf&ormações da página Open link in new &tab Abrir ligação em novo &separador Open link in new &window Abrir ligação em nova &janela B&ookmark link Adicionar ligação aos &marcadores &Save link as... &Gravar ligação como... Send link... Enviar ligação... &Copy link address &Copiar endereço da ligação Show i&mage &Mostrar imagem Copy im&age Copi&ar imagem Copy image ad&dress Copiar en&dereço da imagem &Save image as... &Gravar imagem como... Send image... Enviar imagem... Send text... Enviar texto... Google Translate Google Translate Dictionary Dicionário Go to &web address Ir para endereço &web Search "%1 .." with %2 Procurar "%1 ..." no %2 Search with... Procurar com... &Play Re&produzir &Pause &Pausa Un&mute Co&m som &Mute Se&m som &Copy Media Address &Copiar endereço multimédia &Send Media Address &Enviar endereço multimédia Save Media To &Disk Gravar multimédia no &disco Check &Spelling Correção &ortográfica Languages Idiomas jsAlert Prevent this page from creating additional dialogs Impedir que esta página crie mais caixas de diálogo qupzilla-1.6.0/translations/ro_RO.ts000066400000000000000000010412351226107126500175000ustar00rootroot00000000000000 AboutDialog About QupZilla Despre QupZilla Authors Autori Authors and Contributors Autori si Contribuitori < About QupZilla < Despre Qupzilla <p><b>Application version %1</b><br/> <p><b>Versiune aplicație %1</b><br/> <b>WebKit version %1</b></p> <b>Versiune WebKit %1</b></p> <small>Build time: %1 </small></p> <small>Versiune compilată: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Dezvoltatori principali:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Contribuitori:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Traducători:</b><br/>%1</p> AcceptLanguage Preferred Languages Limbi preferate Add... Adaugă... Remove Șterge Up Sus Down Jos Personal [%1] Personal [%1] AdBlockAddSubscriptionDialog Add Subscription Title: Address: Add new subscription to AdBlock: AdBlockCustomList Custom Rules AdBlockDialog AdBlock Configuration Configurare AdBlock Enable AdBlock Activează AdBlock Search... Caută... Options AdBlock AdBlock Use only essential part of EasyList (for performance reasons) Add Rule Adaugă regulă Remove Rule Add Subscription Remove Subscription Update Subscriptions Learn about writing rules... AdBlockIcon AdBlock lets you block unwanted content on web pages AdBlock vă permite să blocați conținut nedorit de pe pagini web Blocked popup window Fereastră popup blocată AdBlock blocked unwanted popup window. AdBlock a blocat o fereastră popup nedorită. AdBlock AdBock Show AdBlock &Settings Afișează &setări AdBlock Disable on %1 Disable only on this page Blocked Popup Windows Ferestre popup blocate %1 with (%2) %1 cu (%2) No content blocked Nici un conținut nu a fost blocat Blocked URL (AdBlock Rule) - click to edit rule Adresă blocată (regulă AdBlock) - click pentru a edita regula AdBlockManager Do you want to add <b>%1</b> subscription? AdBlock Subscription EasyList AdBlockTreeWidget Add Rule Remove Rule Add Custom Rule Please write your rule here: %1 (recently updated) AddAcceptLanguage Add Language Adaugă limbă Choose preferred language for web sites Alege limba preferată pentru siteuri web Personal definition: Definiție personală: AesInterface Warning! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. AutoFill Database (plaintext) Database (encrypted) Enter Master Password Permission is required, please enter Master Password: Warning! Entered password is wrong! This backend needs a master password to be set! QupZilla just switches to its default backend AutoFillManager Passwords are stored in: Change backend Backend options Passwords Parole Server Server Username Nume utilizator Password Parolă Import/Export Importare/Exportare Show Passwords Afișează parole Edit Editare Remove Șterge Remove All Șterge tot Exceptions Excepții Import Passwords from File... Importă parole din fișier... Export Passwords to File... Exportă parole în fișier... Search Change backend... Change backend: Are you sure that you want to show all passwords? Sunteți sigur că doriți să afișați toate parolele? Hide Passwords Ascunde parole Confirmation Confirmare Are you sure to delete all passwords on your computer? Sunteți sigur că doriți să ștergeți toate parolele de pe computer? Edit password Editează parolă Change password: Schimbă parolă: Choose file... Alege fișier... Cannot read file! Fișierul nu poate fi citit! Successfully imported Importat cu succes Error while importing! Eroare la import! Cannot write to file! Fișierul nu poate fi scris! Successfully exported Exportat cu succes AutoFillNotification Update Remember Never For This Site Not Now on %1 for <b>%1</b> Do you want QupZilla to update saved password %1? Do you want QupZilla to remember the password %1 %2? AutoFillWidget Choose username to login Login Login as <b>%1</b> BookmarkIcon Bookmark this Page Adaugă semn de carte pentru această pagină Edit this bookmark Editează acest semn de carte BookmarksImportDialog Import Bookmarks Importă semne de carte <b>Import Bookmarks</b> <b>Importă semne de carte</b> From File Din fișier Internet Explorer Choose browser from which you want to import bookmarks: Alegeți browser-ul din care doriți să importați semnele de carte: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Notă:</b> Deocamdată, doar importarea din fișiere HTML poate importa deasemenea directoare de semne de carte. Choose... Alege... Try to fetch icons for all bookmarks (may take a while) Fetching icons, please wait... Se descarcă iconițele, va rugăm așteptați... Title Titlu Url Url Next Următorul Cancel Renunță <b>Importing from %1</b> <b>Importă din %1</b> Finish Terminat Please press Finish to complete importing process. Te rugăm apasă Finish pentru a încheia procesul de import. Error! Eroare! The file doesn't contain any bookmark. Choose directory... Alege director... Choose file... Alege fișier... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox stochează semnele de carte în baza de date SQLite<b>places.sqlite</b>. Acest fișier este de obicei localzat în Please choose this file to begin importing bookmarks. Vă rugăm să alegeți acest fișier pentru a începe importul semnelor de carte. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Google Chrome stochează semnele de carte în fișierul text<b>Bookmarks</b>. Acest fișier este de obicei localzat în Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera stochează semnele de carte în fișierul text<b>bookmarks.adr</b>. Acest fișier este de obicei localzat în You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Puteți importa semne de carte din orice browser care suporta exportare HTML. Fișierul are de obicei următoarele sufixe Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Explorer stochează semnele de carte în directorul<b>Favorites</b>. Acest folder este de obicei localzat în Please choose this folder to begin importing bookmarks. Vă rugăm alegeți acest folder pentru a începe importul semnelor de carte. No Error Nici o eroare Unable to open file. Fișierul nu poate fi deschis. Cannot evaluate JSON code. Codul JSON nu poate fi evaluat. File does not exist. Fișierul nu există. Unable to open database. Is Firefox running? Baza de date nu poate fi deschisă. Firefox rulează? Directory does not exist. The directory does not contain any bookmarks. BookmarksManager Bookmarks Semne de carte Optimize Database Optimizează baza de date Import Bookmarks Importă semne de carte Add Folder Adaugă director Title Titlu Url Adresă Expand All Collapse All Add new folder Adaugă director nou Choose parent folder for new folder: Choose name for new bookmark folder: Alege nume pentru director-ul nou de semne de cărți: Add new subfolder Adaugă subdirector nou Choose name for new subfolder in bookmarks toolbar: Alege nume pentru subdirector nou în bara pentru semne de carte: Rename Folder Redenumește director Choose name for folder: Alegeți nume pentru director: Add Subfolder Adaugă subdirector Rename folder Redenumește director Remove folder Șterge director Open link in current &tab Deschide legătura în tab-ul &curent Open link in &new tab Deschide legătura în tab &nou Move bookmark to &folder Mută semnul de carte in &director Change icon Rename bookmark Redenumește semnul de carte Remove bookmark Șterge semnul de carte <b>Warning: </b>You already have bookmarked this page! <b>Avertisment: </b>Ați adăugat deja un semn de carte pentru această pagină! Choose name and location of this bookmark. Alege numele și locația acestui semn de carte. Add New Bookmark Adaugă semn de carte nou Choose folder for bookmarks: Alege director pentru semne de cărți: Bookmark All Tabs Adaugă semn de carte pentru toate tab-urile BookmarksModel Bookmarks In Menu Semne de carte în meniu Bookmarks In ToolBar Semne de carte în bara de unelte Unsorted Bookmarks Semne de carte nesortate BookmarksSideBar Search... Caută... Open link in current &tab Deschide legătura in &tab-ul curent Open link in &new tab Deschide legătura in tab &nou Copy address Copiază adresa &Delete &Șterge BookmarksToolbar &Bookmark Current Page Adaugă &semn de carte pentru pagina curentă Bookmark &All Tabs Adaugă &semn de carte pentru toate tab-urile &Organize Bookmarks &Organizează semne de carte Show Most &Visited Afișează cele mai &vizitate Show Only Icons Afișează doar iconițe &Hide Toolbar &Ascunde bara de unelte Open bookmark Open bookmark in new tab Move right Mută la dreapta Move left Mută la stânga Edit bookmark Editează semn de carte Remove bookmark Șterge semn de carte Edit bookmark: Editează semn de carte: Title: Titlu: Url: Adresă: Edit Bookmark Editează semn de carte Most visited Cele mei vizitate Sites you visited the most Site-uri pe care le-ați vizitat cel mai frecvent Empty Gol BookmarksTree Bookmarks New Folder... BookmarksWidget Add to Speed Dial Adaugă la Speed Dial Save Salvează Name: Nume: Folder: Director: Remove from Speed Dial Șterge din Speed Dial Remove Șterge BrowsingLibrary Library Librărie Search... Caută... History Istoric Bookmarks Semne de carte RSS RSS Database Optimized Baza de date a fost optimizată Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 Baza de date a fost optimizată su succes.<br/><br/><b>Dimensiunea bazei de date înainte: </b>%1<br/><b>Dimensiunea bazei de date după: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Atribuit lui</b> Common Name (CN): Nume comun (NC): Organization (O): Organizație (O): Organizational Unit (OU): Unitate organizațională (UO): Serial Number: Cod serial: <b>Issued By</b> <b>Emis de către</b> <b>Validity</b> <b>Validitate</b> Issued On: Emis la: Expires On: Expiră la: ClearPrivateData Clear Recent History Șterge istoric recent Choose what you want to delete: Alegeți ce doriți să ștergeți: Clear history Șterge istoric Clear cache Șterge cache Clear icons Șterge iconițe <b>Clear Recent History</b> <b>Șterge istoric recent</b> Earlier Today Mai devreme astăzi Week Săptămână Month Lună All Tot Clear web databases Șterge bazele de date web Clear local storage Șterge stocarea locală Clear cookies Șterge cookie-uri ClickToFlash Object blocked by ClickToFlash Obiect blocat de ClickToFlash Show more information about object Afișează mai multe informatii despre obiect Delete object Șterge obiect Add %1 to whitelist Adaugă %1 la whitelist Flash Object Obiect Flash <b>Attribute Name</b> <b>Nume atribut</b> <b>Value</b> <b>Valoare</b> No more information available. Nu sunt disponibile alte informații. CookieManager Cookies Cookie-uri Stored Cookies Cookie-uri stocate Find: Caută: These cookies are stored on your computer: Aceste cookie-uri sunt stocate pe calculatorul dvs.: Server Server Cookie name Nume cookie Name: Nume: Value: Valuare: Server: Server: Path: Cale: Secure: Securizat: Expiration: Expirare: <cookie not selected> <cookie neselectat> Remove all cookies Șterge toate cookie-urile Remove cookies Șterge cookie-uri Cookie Filtering Filtru cookie <b>Cookie whitelist</b> <b>Whitelist pentru cookie-uri</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Cookie-urile din acest server vor fi ÎNTOTDEAUNA acceptate (chiar daca ați dezactivat salvarea cookie-urilor) Add Adaugă Remove Șterge <b>Cookie blacklist</b> <b>Blacklist pentru cookie-uri</b> Cookies from these servers will NEVER be accepted Cookie-urile de la aceste servere nu vor fi NICIODATĂ acceptate Settings <b>Cookie Settings</b> Allow storing of cookies Delete cookies on close Match domain exactly Filter tracking cookies <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! Search Caută Confirmation Confirmare Are you sure to delete all cookies on your computer? Sunteți sigur că doriți să ștergeți toate cookie-urile de pe acest computer? Secure only Doar securizat All connections Toate conexiunile Session cookie Cookie de sesiune Remove cookie Șterge cookie Add to whitelist Adaugă la whitelist Add to blacklist Adaugă la blacklist DownloadFileHelper Save file as... Salvează fișier ca... NoNameDownload Download fără nume DownloadItem Remaining time unavailable Timpul rămas este indisponibil Error: Cannot write to file! Eroare: Nu se poate face scrierea in fișier! Done - %1 Complet - %1 Cancelled Oprit few seconds câteva secunde %n seconds %n minutes %n hours Unknown speed Viteză necunoscută kB/s MB/s GB/s Unknown size Dimensiune necunoscută %2 - unknown size (%3) %2 - dimensiune necunoscută (%3) Remaining %1 - %2 of %3 (%4) Rămas %1 - %2 of %3 (%4) Cancelled - %1 Oprite - %1 Delete file Șterge fișier Do you want to also delete dowloaded file? Doriți să ștergeți fișierele descărcate deasemenea? Open File Deschide fișier Open Folder Deschide folder Go to Download Page Du-te la pagina de descărcare Copy Download Link Copiază legătură de descărcare Cancel downloading Oprește descărcarea Remove Error Eroare Not found Nu a fost găsit Sorry, the file %1 was not found! Scuze, fișierul %1 nu a putut fi găsit! Error: Eroare: DownloadManager Download Manager Manager de descărcări Clear Șterge %1% of %2 files (%3) %4 remaining %1% din %2 fișiere (%3) %4 rămase %1% - Download Manager Download Finished Descărcare incheiată All files have been successfully downloaded. Toate fișierele au fost descărcate cu succes. Warning Avertisment Are you sure to quit? All uncompleted downloads will be cancelled! Sunteți sigur că doriți să iesiți? Toate descărcările incomplete vor fi oprite! DownloadOptionsDialog Opening Se deschide Copy download link You have chosen to open Ați ales să deschideți which is a: care este un: What should QupZilla do with this file? Ce ar trebui sa facă QupZilla cu acest fișier? Open... Deschide... Save File Salvează fișier Download with External Manager from: de la: Opening %1 Se deschide %1 Download link copied. EditSearchEngine Name: Nume: Url: Url: Shortcut: Scurtătură: Icon: Iconiță: <b>Note: </b>%s in url or post data represent searched string Post Data: Change... FileSchemeReply No Error Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. FtpDownloader Cancelled! FtpSchemeReply Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. Unknown command HTML5PermissionsDialog HTML5 Permissions Notifications Site Behaviour Remove Geolocation Allow Deny HTML5PermissionsNotification Remember Allow Deny this site Allow %1 to show desktop notifications? Allow %1 to locate your position? History No Named Page January February March April May June July August September October November December HistoryManager History Istoric Delete Șterge Clear All History Șterge toată istoria Optimize Database Optimizează baza de date Confirmation Confirmare Are you sure to delete all history? Sunteți sigur că doriți să ștergeți întregul istoric? HistoryModel Title Address Visit Date Visit Count Today This Week This Month HistorySideBar Search... Caută... HistoryView Open link in current tab Open link in new tab Copy title Copy address Remove IconChooser Choose icon... From file Image (.png, .jpg, .jpeg, .gif) Choose file... From database Site Url: Image files JsOptions JavaScript Options Allow JavaScript to: Close windows Open popup windows Change window size Hide menu bar Hide status bar Hide tool bar Access clipboard LicenseViewer License Viewer Vizualizator de licențe LocationBar Enter URL address or search on %1 Introdu adresă sau caută pe %1 Paste And &Go Lipește si &du-te Clear All Ștege tot .co.uk Append domain name on ALT + Enter = Should be different for every country .ro Show information about this page Afișează informații desprea această pagină LocationCompleterView Switch to tab MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? Always perform this check when starting QupZilla. Default Browser QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. MasterPasswordDialog Encrypted DataBase Settings Set/Change Master Password... Clear Master Password... This backend does not work without a master password. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Current Password: New Password: Confirm Password: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. Warning! You entered a wrong password! New/Confirm password fields do not match! Some data has not been decrypted. The master password was not cleared! Are you sure to clear master password and decrypt data? NavigationBar No Named Page Pagină fără nume Back Înapoi Forward Înainte Home Acasă New Tab Tab nou Main Menu Meniu principal Exit Fullscreen Ieși din ecran complet Clear history Șterge istoric NetworkManager SSL Certificate Error! Eroare certificat SSL! The page you are trying to access has the following errors in the SSL certificate: Pagina pe care doriți să o accesați are următoarele erori in certificiatul SSL: <b>Organization: </b> <b>Organizație: </b> <b>Domain Name: </b> <b>Nume domeniu: </b> <b>Expiration Date: </b> <b>Data expirării: </b> <b>Error: </b> <b>Eroare: </b> Would you like to make an exception for this certificate? Doriți să faceți o excepție pentru acest certificat? Authorisation required Username: Nume utilizator: Password: Parola: Save username and password on this site Salvează nume utilizator si parola pe acest site A username and password are being requested by %1. The site says: "%2" Un nume de utilizator și o parolă sunt cerute de %1. Site-ul spune: "%2" FTP authorisation required Login anonymously A username and password are being requested by %1:%2. Proxy authorisation required Remember username and password for this proxy. A username and password are being requested by proxy %1. Un nume de utilizator și o parolă sunt cerute de proxy %1. PageScreen Page Screen Ecranul paginii Format: Location: Browse... Save as %1 Choose location... File '%1' already exists. Do you want to overwrite it? File already exists PluginsList Application Extensions Extensiile alicației Allow Application Extensions to be loaded Permite incărcarea de extensii pentru aplicație Settings Setări WebKit Plugins Plugin-uri WebKit <b>Click To Flash Plugin</b> <b>Click pentru plugin Flash</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Click To Flash este un plugin care blochează auto-încărcarea de conținut Flash pe pagină. Puteți încărca conținutul manual dând click pe iconița de play. Whitelist Whitelist Add Adaugă Remove Șterge Allow Click To Flash Permite Click To Flash PluginsManager Add site to whitelist Server without http:// (ex. youtube.com) Error! Cannot load extension! PopupWebView Inspect Element PopupWindow File &Save Page As... Save Page Screen Send Link... &Print... Close Edit &Undo &Redo &Cut C&opy &Paste Select All Find View &Stop &Reload Zoom &In Zoom &Out Reset &Page Source %1 - QupZilla %1 - QupZilla Preferences Preferences Preferințe QupZilla QupZilla General General Appearance Aspect Tabs Tab-uri Browsing Navigare Fonts Font-uri Keyboard Shortcuts Downloads Descărcări Password Manager Manager de parole Privacy Intimitate Notifications Notificări Extensions Extensii Other Altele Use current Folosește curentul Note: You cannot delete active profile. Notă: Nu puteți șterge profilul activ. Create New Creează nou Delete Șterge <b>Launching</b> <b>Se lansează</b> After launch: După lansare: Open blank page Deschide pagină goală Open homepage Deschide pagină acasă Open speed dial Deschide Speed Dial Restore session Restaurează sesiune Homepage: Pagină acasă: On new tab: Pe tab nou: Open blank tab Deschide tab gol Open other page... Deschide altă pagină... <b>Profiles</b> <b>Profiluri</b> Startup profile: Profil de pornire: Check for updates on start Verifică actualizări la pornire Active profile: Profil activ: In order to change language, you must restart browser. Pentru a schimba limba trebuie să restartați browser-ul. <b>Language</b> <b>Limbă</b> Available translations: Traduceri disponibile: Don't load tabs until selected Nu incărca tab-uri până când nu sunt selectate Check to see if QupZilla is the default browser on startup Check Now Themes Teme Advanced options Opțiuni avansate <b>Browser Window</b> <b>Fereastra browser-ului</b> Show StatusBar on start Afișează bara de status la pornire Show Bookmarks ToolBar on start Afișează bara de semne de carte la pornire Show Navigation ToolBar on start Afișează bara de navigare la pornire <b>Navigation ToolBar</b> <b>Bară de navigare</b> Show Home button Afișeaza buton acasă Show Back / Forward buttons Afișează butoane Înainte/Înapoi <b>Background<b/> <b>Fundal<b/> Use transparent background Folosește fundal transparent Show web search bar Show Add Tab button Afișează buton de adăugare tab nou Show Reload / Stop buttons Tabs behaviour Show tab previews Make tab previews animated Hide tabs when there is only one tab Ascunde tab-urile când există un singur tab Activate last tab when closing active tab Activează ultimul tab la închiderea tab-ului activ Open new tabs after active tab Deschide tab-uri noi după tabul activ Open new empty tabs after active tab Automatically switch to newly opened tab Don't quit upon closing last tab Nu ieși la închiderea ultimului tab Ask when closing multiple tabs Întreabă la închiderea mai multor tab-uri Closed tabs list instead of opened in tab bar Listă de tab-uri închise in loc de cele deschise in bara de tab-uri Address Bar behaviour Suggest when typing into address bar: History and Bookmarks History Bookmarks Nothing Press "Shift" to not switch the tab but load the url in the current tab. Propose to switch tab if completed url is already loaded. Always show go icon Select all text by double clicking in address bar Selectează tot textul prin dublu-click pe bara de adrese Select all text by clicking in address bar Selectează tot textul dând click pe bara de adrese Search with Default Engine Show loading progress in address bar Fill Bottom Top Custom color: Select color ... ... Reset Web Configuration Configurare web Allow Netscape Plugins (Flash plugin) Permite plugin-uri Netscape (plugin Flash) Allow JavaScript Permite JavaScript Allow JAVA Permite JAVA Allow DNS Prefetch Permite DNS Prefetch Enable XSS Auditing try to detect possible XSS attacks when executing javascript Activează audit XSS Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Tipărește fundalul elementului Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Adaugă legături la lanțul de focalizare Animated scrolling Enable caret browsing Enable spatial navigation Zoom text only Apropie doar textul Mouse wheel scrolls Scrool cu rotița mose-ului lines on page linii pe pagină Default zoom on pages: Apropierea predefinită pe pagini: Local Storage Stocare locală Maximum Maxim 50 MB 50 MB 1 1 Maximum pages in cache: Număr maxim de pagini în cache: Allow storing network cache on disk Permite stocarea de date temporare de pe rețea pe disk Store cache in: Allow saving history Permite stocarea istoricului Delete history on close Șterge istoria la ieșire Allow local storage of HTML5 web content Permite stocare locală de conținut web HTML5 Delete locally stored HTML5 web content on close Șterge conținut web HTML5 stocat local la închidere Delete now Șterge acum Proxy Configuration Configurare proxy Proxy Auto-Config (.pac) file Reload HTTP HTTP SOCKS5 SOCKS5 Port: Port: Username: Nume utilizator: Password: Parola: Don't use on: Nu folosi pe: Manual configuration Configurare manuală System proxy configuration Configurare proxy sistem Do not use proxy Nu folosi proxy <b>Exceptions</b> <b>Excepții</b> Server: Server: Use different proxy for https connection Folosește proxy diferit pentru conexiuni http Use script for automatic configuration: <b>Font Families</b> <b>Familii de fonturi</b> Standard Standard Fixed Fixat Serif Serif Sans Serif Sans Serif Cursive Cursiv Fantasy Fantasy <b>Font Sizes</b> <b>Dimensiuni font</b> Fixed Font Size Dimensiune font fixă Default Font Size Dimensiune font implicită Minimum Font Size Dimensiune font minimă Minimum Logical Font Size Dimensiunea logică minimă a font-ului <b>Shortcuts</b> Switch to tabs with Alt + number of tab Load speed dials with Ctrl + number of speed dial Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>Locație de descărcare</b> Ask everytime for download location Întreabă de fiecare dată locația de descărcare Use defined location: Folosește locația definită: <b>Download Options</b> <b>Opțiuni de descărcare</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Folosește dialog-uri native sistemului (ar putea sau nu să cauzeze probleme cu descărcarea conținutului securizat SSL) Close download manager when downloading finishes Închide managerul de descărcări când descărcările iau sfârșit <b>External download manager</b> <b>Manager de descărcări extern</b> Use external download manager Folosește manager de descărcări extern Executable: Executabil: Arguments: Argumente: Leave blank if unsure <b>%d</b> will be replaced with URL to be downloaded <b>AutoFill options</b> <b>Optiuni de auto-umplere</b> Allow saving passwords from sites Permite salvarea parolelor de pe site-uri Send Referer header to servers Trimite antetul referer-ului server-ului <b>Cookies</b> <b>Cookie-uri</b> Send Do Not Track header to servers Trimite anteturi Do Not Track la servere <b>Other</b> <b>Altele</b> Manage CA certificates Certificate Manager <b>SSL Certificates</b> <b>Certificate SSL</b> <b>JavaScript</b> Manage JavaScript privacy options JavaScript options Cookies Manager Manager de cookie-uri Manage Cookies <b>HTML5 Permissions</b> Manage HTML5 permissions HTML5 Permissions <b>Notifications</b> <b>Notificari</b> Use OSD Notifications Folosește notificări OSD Use Native System Notifications (Linux only) Folosește notificări native de sistem (doar pentru Linux) Do not use Notifications Nu folosi notificări Expiration timeout: Timp limită de expirare: seconds secunde <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Notă: </b>Puteți schimba locația notificărilor OSD mutându-le pe ecran. StyleSheet automatically loaded with all websites: Foi de stil încărcate automat pe toate site-urile: Languages Limbi <b>Preferred language for web sites</b> <b>Limbi preferate pentru site-uri</b> <b>Change browser identification</b> User Agent Manager Default Set as default OSD Notification Notificări OSD Drag it on the screen to place it where you want. Trageți-o pe ecran pentru a o plasa unde doriți. Choose download location... Alegeți locația de descărcare... Choose stylesheet location... Alegeți locația foilor de stil... Deleted Șterse Choose executable location... Alegeți locația executabilului... Choose cache path... New Profile Profil nou Enter the new profile's name: Introduceti numele noului profil: Error! Eroare! This profile already exists! Acest profil deja există! Cannot create profile directory! Nu se poate creea directorul profilului! Confirmation Confirmare Are you sure to permanently delete "%1" profile? This action cannot be undone! Sunteți sigur că doriți să ștergeți profilul "%1"? Aceacstă acțiune nu poate fi anulată! Select Color QObject Native System Notification Notificări native de sistem Save file as... The file is not an OpenSearch 1.1 file. Acest fișier nu este un fișier OpenSearch 1.1. <not set in certificate> <nu a fost setat în certificat> Unknown size KB MB GB Executable: Arguments: Cannot start external program Cannot start external program! %1 QtWin Open new tab Deschide tab nou Opens a new tab if browser is running Deschide tab nou daca browserul ruleaza Open new window Deschide fereastră noua Opens a new window if browser is running Deschide fereastră nouă daca browserul rulează Open download manager Deschide manager de download-uri Opens a download manager if browser is running Deschide manager de download-uri daca browserul ruleaza QupZilla QupZilla QupZilla Private Browsing Enabled Navigare privată activată IP Address of current page Adresa IP a paginii curente &About QupZilla &Despre QupZilla Pr&eferences Pr&eferințe Quit Ieșire &File &Fișier &New Window &Fereastră nouă New Tab Tab nou Open Location Deschide locație Open &File... Close Tab Închide tab Close Window Închide fereastră &Save Page As... &Salvează pagina ca... Save Page Screen Salvează ecranul paginii Send Link... Trimite legătura... &Print... &Tipărește... Import bookmarks... Importă bookmark-uri... &Edit &Editare &Undo &Anulează &Redo &Refă &Cut &Taie C&opy C&opiază &Paste &Lipește Select &All Selectează &tot &Find &Caută &View &Vizualizare &Navigation Toolbar Bară de &navigare &Bookmarks Toolbar &Bară de semne de carte Sta&tus Bar Bară de &status &Menu Bar Bară de &meniu &Tabs on Top &Fullscreen Ecran &complet &Stop &Stop &Reload &Reîncarcă Character &Encoding &Encodarea caracterelor Enable &Caret Browsing Toolbars Bare de unelte Sidebars Bare laterale Zoom &In &Apropie Zoom &Out &Depărtează Reset Resetează &Page Source &Sursa paginii Hi&story &Istoric &Back &Înapoi &Forward &Inainte &Home &Acasă Show &All History &Arată tot istoricul Closed Tabs Tab-uri închise Recently Visited Recent vizitate Most Visited Cele mai vizitate &Bookmarks &Semne de carte Bookmark &This Page Pune un semn la aceas&tă pagină Bookmark &All Tabs Pune un &semn la toate tab-urile Organize &Bookmarks &Organizează semne de carte &Tools &Unelte &Web Search Căutare &web Page &Info &Informații despre pagină &Download Manager Manager de &descărcări &Cookies Manager Manager de &cookie-uri &AdBlock &AdBlock RSS &Reader Cititor &RSS Web In&spector In&spector Web Clear Recent &History Șterge &istoricul &recent New &Private Window &Help &Ajutor About &Qt Despre &Qt Information about application Informații despre aplicație Configuration Information Informații despre configurare Report &Issue Raportează &probleme Restore &Closed Tab Restaurează tab-uri &închise (Private Browsing) (Navigare privată) Empty Gol Restore All Closed Tabs Restaurează toate tab-urile închise Clear list Golește lista Other Altele %1 - QupZilla %1 - QupZilla HTML files Fișiere HTML Image files Fișiere imagine Text files Fișiere text All files Toate fișierele Open file... Deschide fișier... QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Mai sunt %1 tab-uri deschise și sesiunea dvs. nu va fi stocată. Sunteți sigur că doriți să închideți QupZilla? Don't ask again Nu întreba din nou There are still open tabs Încă sunt taburi deschise QupZillaSchemeReply No Error Nici o eroare Not Found Nu a fost gasit Report Issue Raportează problemă If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Dacă întâmpinați probleme cu QupZilla, vă rugăm încercați să dezactivați toate extensiile întâi. <br/>Dacă asta nu remediază problema, vă rugăm cumpletați următorul formular: Your E-mail E-mail personal Issue type Tipul problemei Issue description Descrierea problemei Send Trimite E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. E-mailul este opțional<br/><b>Notă:</b>Vă rog citiți întâi cum trebuie să faceți un raport de bug-uri <a href=%1>aici</a>. Please fill out all required fields! Te rog completeaza toate campurile! Start Page Pagina de start Search on Web Search results provided by DuckDuckGo About QupZilla Despre QupZilla <h1>Private Browsing</h1> Information about version Informații despre versiune Copyright Drepturi de autor Version Versiune WebKit version Versiune WebKit Main developer Dezvoltator principal Contributors Contribuitori Translators Traducători Speed Dial Speed Dial Add New Page Adauga pagina noua Edit Editeaza Remove Sterge Reload Reîncarcă Are you sure to remove this speed dial? Load title from page Url Url Title Titlu Apply Aplica Close Închide New Page Pagina noua Speed Dial settings Setari Speed Dial Placement: Amplasament: Auto Auto Cover Copertă Fit Potrivește Fit Width Potrivește pe lățime Fit Height Potrivește pe înălțime Use background image Folosește imagine de fundal Select image Selectează imagine Maximum pages in a row: Număr maxim de pagini pe un rând: Change size of pages: Modifică dimensiunea paginilor: Center speed dials Restore Session Oops, QupZilla crashed. We apologize for this. Would you like to restore the last saved state? Try removing one or more tabs that you think cause troubles Or you can start completely new session Configuration Information Informații despre configurare This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Această pagină conține informații despre configurarea curentă a QupZilla - relevante pentru remedierea problemelor. Vă rugăm să includeți aceste informații la trimiterea raport-urilor despre bug-uri. Browser Identification Identificarea browser-ului Paths Căi Build Configuration Configurarea compilării Preferences Preferințe Option Opțiune Value Valoare Extensions Extensii Name Nume Author Autor Description Descriere Application version Versiune aplicatie Qt version Versiune Qt Build time Data compilării Platform Platforma Profile Profil Settings Setări Saved session Sesiuni salvate Pinned tabs Tab-uri lipite Data Data Themes Teme Translations Traduceri Disabled Dezactivat <b>Enabled</b> <b>Activat</b> Debug build Compilare de debug WebGL support Suport WebGL Windows 7 API API Windows 7 KDE integration Integrare KDE Portable build Configurare portabilă No available extensions. Nu sunt extensii disponibile. RSSManager RSS Reader Cititor RSS Empty Gol Add feed Adaugă feed Edit feed Editează feed Delete feed Șterge feed Optimize Database Optimizează baza de date Reload Reîncarcă News Știri Loading... Se încarcă... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Nu aveți feed-uri RSS. Add new feed Adaugă feed nou Please enter URL of new feed: Va rugăm introduceți adresa noului feed: New feed Feed nou Fill title and URL of a feed: Introduceți titlul și adresa noului feed: Feed title: Titlul feed-ului: Feed URL: Adresa feed-ului: Edit RSS Feed Editează feed RSS Open link in current tab Deschide legătura in tab-ul curent Open link in new tab Deschide legătura in tab nou Error in fetching feed Eroare la descărcarea feed-ului RSS feed duplicated Feed RSS duplicat You already have this feed. Aveți deja acest feed. RSSNotification Add this feed into Add RSS feed <b>"%1"</b> Internal Reader Other... Liferea not running Liferea must be running in order to add new feed. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Add feed into other application RSSWidget Add RSS Feeds from this site Adaugă feed RSS de pe acest site Untitled feed Feed fără nume Add Adaugă RecoveryWidget Start New Session Restore Window %1 RegisterQAppAssociation Warning! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) RssIcon Add RSS from this page... SSLManager Certificate Manager CA Authorities Certificates Certificate de autorități CA Show info Afișează informații This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Aceasta este o listă de certificate de autorități CA stocată în calea de sistem standard și în căile specificate de autor. Local Certificates Certificate locale Import Remove Șterge This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Aceasta este o listă de certificate locale stocată în profilul user-ului dvs. Conține deasemenea toate certificatele care au primit o excepție. Settings Setări Add Adaugă If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Dacă certificatele de autorități CA nu au fost încărcate automat din sistem, puteți specifica căile în care sunt stocate certificatele manual. <b>NOTE:</b> Setting this option is a high security risk! <b>NOTĂ:</b> Setarea acestei opțiuni reprezintă un risc mare de securitate! Ignore all SSL Warnings Ignoră toate avertismentele SSL All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Toate certificatele trebuie să aibă un sufix .crt. După adăugarea sau ștergerea de căi pentru certificate, este necesar să restartați QupZilla pentru ca modificările să aibă efect. Choose path... Alege cale... Import certificate... Certificate Informations Informatii despre certificat SearchEnginesDialog Manage Search Engines Configurează motoare de căutare Add... Adauga... Remove Sterge Edit Editeaza Set as default Up Sus Down Jos Search Engine Motor de cautare Shortcut Scurtaturi Defaults Predefinite Add Search Engine Adauga motor de cautare Remove Engine You can't remove the default search engine.<br>Set a different engine as default before removing %1. Edit Search Engine Editeaza motor de cautare SearchEnginesManager Search Engine Added Motor de cautare adaugat Search Engine "%1" has been successfully added. Motorul de cautare "%1" a fost adaugat cu succes. Search Engine is not valid! Motorul de cautare nu este valid! Error Eroare Error while adding Search Engine <br><b>Error Message: </b> %1 Eroare in timpul adaugarii motorului de cautare <br><b>Cod eroare: </b> %1 SearchToolBar No results found. Nu exista rezultate. SearchToolbar Search: Cauta: Search... Cauta... Highlight Case sensitive Case sensitive SideBar Bookmarks Semne de carte History Istoric SiteInfo Site Info Informații site General General Media Media Databases Baze de date Security Securitate Size: Dimensiune: Site address: Adresa site-ului: Encoding: Encodare: Meta tags of site: Tag-uri meta ale site-ului: Tag Tag Value Valoare <b>Security information</b> <b>Informații de securitate</b> Details Detalii Image Imagine Image address Adresa imaginii <b>Preview</b> <b>Previzualizare</b> <b>Database details</b> <b>Detalii bază de date</b> Name: Nume: Path: Cale: <database not selected> <baza de date nu este selectată> <not set in certificate> <nu a fost setat in certificat> No databases are used by this page. Nu există baze de date folosite de către această pagină. <b>Connection is Encrypted.</b> <b>Conexiunea este encriptată.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Conexiunea dvs. la această pagină este securizată cu următorul certificat: </b> <b>Connection Not Encrypted.</b> <b>Conexiunea nu este encriptată.</b> <b>Your connection to this page is not secured!</b> <b>Conexiunea dvs. la această pagină nu este securizată!</b> Copy Image Location Copiază locația imaginii Copy Image Name Copiază numele imaginii Save Image to Disk Salvează imaginea pe disc Error! Eroare! This preview is not available! Această previzualizare este indisponibilă! Save image... Salvează imaginea... Cannot write to file! Fișierul nu poate fi scris! Preview not available Previzualizare indisponibilă SiteInfoWidget More... Mai mult... Your connection to this site is <b>secured</b>. Conexiunea la acest site este <b>securizata</b>. Your connection to this site is <b>unsecured</b>. Conexiunea la acest site este <b>nesecurizata</b>. This is your <b>%1</b> visit of this site. Este a <b>%1-a</b> vizitat a acestul site. You have <b>never</b> visited this site before. Nu ati mai vizitat niciodata acest site. first primul second al doilea third al treilea SourceViewer Source of Sursa File Fișier Load in page Save as... Salvează ca... Close Închide Edit Editare Undo Des-face Redo Re-face Cut Taie Copy Copiază Paste Lipește Select All Selectează tot Find Caută Go to Line... Du-te la lina... View Vizualizare Reload Reîncarcă Editable Editabil Word Wrap Limitarea cuvintelor Source loaded in page Cannot load in page. Page has been closed. Save file... Salvează fișier... Error! Eroare! Cannot write to file! Fișierul nu poate fi scris! Error writing to file Eroare la scrierea in fișier Source successfully saved Sursa a fost salvată cu succes Source reloaded Sursa a fost reîncărcată Cannot reload source. Page has been closed. Sursa nu poate fi reîncărcată. Pagina a fost închisă. Editable changed Editabil schimbat Word Wrap changed Limitarea cuvintelor schimbată Enter line number Introdu numărul liniei SourceViewerSearch Search: Caută: Search... Caută... Whole words SpeedDial Image files Fișiere imagine Select image... Selectează imagine... Unable to load Nu se poate incărca SpellCheckDialog SpellCheck <b>Dictionary path</b> Change... <b>User dictionary</b> Add Remove Using Hunspell library Choose dictionary path... Add new word... Add new word: Speller No suggestions Add to dictionary Settings SqueezeLabelV2 Copy Copiază SslErrorDialog SSL Certificate Error! Only for this session TabBar &New tab &Tab nou &Stop Tab &Opreste tab &Reload Tab &Reîncarcă tab &Duplicate Tab &Duplica tab D&etach Tab Un&pin Tab De&zlipește tab &Pin Tab &Lipește tab Re&load All Tabs Re&încarcă toate taburile &Bookmark This Tab Adaugă semn de &carte pentru acest tab Bookmark &All Tabs Adaugă &semn de carte pentru toate tab-urile Close Ot&her Tabs Închide &alte taburi Cl&ose In&chide Reloa&d All Tabs Reînc&arcă toate taburile Restore &Closed Tab Restaureaza &taburi inchise Close Tabs Do you really want to close other tabs? TabWidget New Tab Tab nou List of tabs Listă de tab-uri Loading... Se incarca... No Named Page Pagina fara nume Currently you have %1 opened tabs Aveti %1 taburi deschise New tab Tab nou Empty Gol Restore All Closed Tabs Restaureaza toate taburile inchise Clear list Golește lista TabbedWebView Loading... Se încarcă... %1 - QupZilla %1 - QupZilla Inspect Element Inspectează element ThemeManager <b>Name:</b> <b>Nume:</b> <b>Author:</b> <b>Autor:</b> <b>Description:</b> <b>Descriere:</b> License Licienta ToolButton Stop Stop Reload Reîncarcă Updater Update available Actualizări disponibile New version of QupZilla is ready to download. Noua versiune de QupZilla este gata de download. Update Actualizeaza UserAgentDialog User Agent Manager Change global User Agent Use different User Agents for specified sites Site User Agent Add Remove Edit Add new site Edit site Site domain: User Agent: WebInspectorDockWidget Web Inspector Inspector Web WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? Remember my choice for this protocol External Protocol Request To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Confirm form resubmission Confirmă retrimiterea formularului Select files to upload... Selectează fișierele pentru upload... Server refused the connection Server-ul a refuzat conexiunea Server closed the connection Server-ul a închis conexiunea Server not found Server-ul nu a fost găsit Connection timed out Conexiunea a depășit termenul limită Untrusted connection Conexiunea nu este de încredere Temporary network failure Eșuare temporară de rețea Proxy connection refused Conexiunea proxy a fost refuzată Proxy server not found Server-ul proxy nu a fost găsit Proxy connection timed out Conexiunea proxy a depășit termenul limită Proxy authentication required Autentificare proxy necesară Content not found Conținutul nu a fost găsit Unknown network error Eroare de rețea necunoscută AdBlocked Content Conținut blocat de AdBlock Blocked by <i>%1</i> Content Access Denied Acces interzis la conținut Error code %1 Cod eroare %1 Failed loading page Încărcarea paginii a eșuat QupZilla can't load page. QupZilla can't load page from %1. QupZilla nu poate încărca pagina de la %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Verificați adresa pentru erori de scriere, cum ar fi <b>ww.</b>example.com în loc de <b>www.</b>example.com If you are unable to load any pages, check your computer's network connection. Dacă nu puteți încărca nici o pagină, verificați conexiunea la internet. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Dacă computerul sau rețeaua dvs. este protejată de un firewall sau proxy, asigurați-vă că QupZilla are permisiunea de a accesa Web-ul. Try Again Încearcă din nou JavaScript alert Alertă Javascript Prevent this page from creating additional dialogs Interzice acestei pagini să deschidă dialoguri noi Choose file... Alege fișier... Cannot read data from <b>%1</b>. Upload was cancelled! Cannot read file! WebSearchBar Manage Search Engines Gestionarea motoarelor de căutare Add %1 ... Adaugă %1 ... Paste And &Search Lipește și &caută Clear All Golește tot Show suggestions Search when engine changed WebView No Named Page Pagină fără nume Create Search Engine Creează motor de căutare Cut Copy Paste Select All Default Left to Right Right to Left Bold Italic Underline &Reload &Reîncarcă S&top S&top Delete &Back &Înapoi &Forward Î&nainte This frame Cadrul acesta Show &only this frame Afișează &doar acest cadru Show this frame in new &tab Afișează acest cadru în &tab nou Print frame Tipărește cadru Zoom &in &Apropie &Zoom out &Depărtează Reset Resetează Show so&urce of frame Afișează &sursa cadrului Book&mark page Adaugă se&mn de carte &Save page as... &Salvează pagina ca... &Copy page link &Copiază legătura paginii Send page link... Trimite legătura paginii... &Print page &Tipărește pagina Select &all Selectează &tot Validate page Validează pagina Show so&urce code Afișează cod su&rsă Show info ab&out site Afișează informații &despre pagină Open link in new &tab Deschide legătura in &tab nou Open link in new &window Deschide legătura in &fereastră nouă B&ookmark link &Adaugă legătura la semne de carte &Save link as... &Salvează legătura ca... Send link... Trimite legătura... &Copy link address &Copiază adresa legăturii Show i&mage Afișează i&magine Copy im&age Copiază im&agine Copy image ad&dress Copiază adresa im&aginii &Save image as... &Salvează imaginea ca... Send image... Trimite imagine... Send text... Trimite text... Google Translate Traducere Google Dictionary Dicționar Go to &web address Du-te la &adresa web Search "%1 .." with %2 Caută "%1 .." cu %2 Search with... Caută cu... &Play &Pornește &Pause &Oprește Un&mute Un&mute &Mute &Mute &Copy Media Address &Copiază adresă media &Send Media Address &Trimite adresă media Save Media To &Disk Salvează media pe &disc Check &Spelling Languages jsAlert Prevent this page from creating additional dialogs Interzice acestei pagini să deschidă dialoguri noi qupzilla-1.6.0/translations/ru_RU.ts000066400000000000000000011313071226107126500175140ustar00rootroot00000000000000 AboutDialog About QupZilla О QupZilla Authors Авторы Authors and Contributors Авторы и участники < About QupZilla < О QupZilla <p><b>Application version %1</b><br/> <p><b>Версия приложения %1</b><br/> <b>WebKit version %1</b></p> <b>Версия Webkit %1</b></p> <small>Build time: %1 </small></p> <small>Дата сборки: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Главный разработчик:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Разработчики:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Переводчики:</b><br/>%1</p> AcceptLanguage Preferred Languages Предпочитаемые языки Add... Добавить Remove Удалить Up Вверх Down Вниз Personal [%1] Своё [%1] AdBlockAddSubscriptionDialog Add Subscription Добавить подписку Title: Заголовок: Address: Адрес: Add new subscription to AdBlock: Добавить новую подписку в AdBlock: AdBlockCustomList Custom Rules Пользовательские правила AdBlockDialog AdBlock Configuration Настройки AdBlock Enable AdBlock Включить AdBlock Search... Поиск... Options Опции AdBlock AdBlock Use only essential part of EasyList (for performance reasons) Используйте только необходимые части EasyList (из соображений производительности) Add Rule Добавить правило Remove Rule Удалить правило Add Subscription Добавить подписку Remove Subscription Удалить подписку Update Subscriptions Обновить подписки Learn about writing rules... Информация о написании правил... AdBlockIcon AdBlock lets you block unwanted content on web pages AdBlock позволяет блокировать нежелательное содержимое веб-страниц Blocked popup window Заблокировано всплывающее окно AdBlock blocked unwanted popup window. AdBlock заблокировал нежелательное всплывающее окно. AdBlock AdBlock Show AdBlock &Settings Настройки AdBlock Disable on %1 Отключить на %1 Disable only on this page Отключить только на этой странице Blocked Popup Windows Заблокированные всплывающие окна %1 with (%2) %1 из (%2) No content blocked Нет заблокированных элементов Blocked URL (AdBlock Rule) - click to edit rule Список заблокированного. Кликните, чтобы редактировать правило AdBlockManager Do you want to add <b>%1</b> subscription? Добавить подписку <b>%1</b>? AdBlock Subscription Подписка AdBlock EasyList EasyList AdBlockTreeWidget Add Rule Добавить правило Remove Rule Удалить правило Add Custom Rule Добавить пользовательское правило Please write your rule here: Пожалуйста, напишите своё правило здесь: %1 (recently updated) %1 (недавно обновлено) AddAcceptLanguage Add Language Добавить язык Choose preferred language for web sites Выберите предпочитаемый язык Personal definition: Своё определение: AesInterface Warning! Внимание! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. Данные зашифрованы с помощью новой версии QupZilla.⏎ Пожалуйста, установите последнюю версию QupZilla. AutoFill Database (plaintext) База данных (текст) Database (encrypted) База данных (с шифрованием) Enter Master Password Ввести мастер-пароль Permission is required, please enter Master Password: Требуется разрешение, пожалуйста, введите мастер-пароль: Warning! Внимание! Entered password is wrong! Неверный пароль! This backend needs a master password to be set! QupZilla just switches to its default backend Этот back-end требует ввода мастер-пароля! QupZilla переключится на back-end по умолчанию AutoFillManager Passwords are stored in: Пароли хранятся в: Change backend Изменить сервер Backend options Параметры баз данных Passwords Пароли Server Сервер Username Имя пользователя Password Пароль Import/Export Импорт/Экспорт Show Passwords Показать пароли Edit Редактировать Remove Удалить Remove All Удалить все Exceptions Исключения Import Passwords from File... Импортировать пароли из файла... Export Passwords to File... Экспортировать пароли в файл... Search Поиск... Change backend... Изменить сервер... Change backend: Изменить сервер: Are you sure that you want to show all passwords? Вы действительно хотите увидеть все пароли? Hide Passwords Скрыть пароли Confirmation Подтверждение Are you sure to delete all passwords on your computer? Вы уверены, что хотите удалить все пароли на данном компьютере? Edit password Редактировать пароль Change password: Изменить пароль: Choose file... Выберите файл... Cannot read file! Невозможно прочитать файл! Successfully imported Импорт завершён успешно! Error while importing! Ошибка при импорте! Cannot write to file! Невозможно выполнить запись в файл! Successfully exported Экспорт успешно завершён! AutoFillNotification Update Обновить Remember Запомнить Never For This Site Никогда для этого сайта Not Now Не сейчас on %1 на %1 for <b>%1</b> для <b>%1</b> Do you want QupZilla to update saved password %1? Вы хотите, чтобы QupZilla обновил сохранённый пароль %1? Do you want QupZilla to remember the password %1 %2? Вы хотите, чтобы QupZilla запомнил пароль %1 %2? AutoFillWidget Choose username to login Выберите имя пользователя для входа Login Войти Login as <b>%1</b> Вошли как <b>%1</b> BookmarkIcon Bookmark this Page Добавить в закладки Edit this bookmark Редактировать закладку BookmarksImportDialog Import Bookmarks Импорт закладок <b>Import Bookmarks</b> <b>Импортировать закладки</b> From File Из файла Internet Explorer Internet Explorer Choose browser from which you want to import bookmarks: Выберите браузер, из которого Вы хотите импортировать закладки: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Примечание:</b> Пока что, только импорт из HTML файла может импортировать папки для закладок. Choose... Выберите... Try to fetch icons for all bookmarks (may take a while) Попытаться извлечь иконки всех закладок (может занять некоторое время) Fetching icons, please wait... Получаю иконки, пожалуйста, подождите... Title Имя Url Адрес Next Далее Cancel Отмена <b>Importing from %1</b> <b>Импортирую из %1</b> Finish Завершить Please press Finish to complete importing process. Пожалуйста, нажмите "Завершить" чтобы закончить импорт. Error! Ошибка! The file doesn't contain any bookmark. Этот файл не содержит закладок. Choose directory... Выберите папку... Choose file... Выберите файл... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox хранит закладки в базе данных SQLite <b>places.sqlite</b>. Этот файл обычно расположен в Please choose this file to begin importing bookmarks. Пожалуйста, укажите расположение этого файла, чтобы начать импорт. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Google Chrome хранит закладки в текстовом файле <b>Bookmarks</b>. Этот файл обычно расположен в Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera хранит свои закладки в файле <b>bookmarks.adr</b>. Этот файл обычно расположен в You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Вы можете импортировать закладки из любого браузера, который поддерживает HTML экспорт. Этот файл обычно имеет расширение Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Explorer хранит закладки в папке <b>Избранное</b>. Эта папка обычно расположена в Please choose this folder to begin importing bookmarks. Пожалуйста, выберите эту папку, чтобы начать импорт. No Error Ошибок нет Unable to open file. Невозможно открыть файл. Cannot evaluate JSON code. Невозможно выполнить JSON код. File does not exist. Файл не существует. Unable to open database. Is Firefox running? Невозможно открыть базу данных. Может быть, запущен Firefox? Directory does not exist. Каталог не существует. The directory does not contain any bookmarks. Каталог не содержит никаких закладок. BookmarksManager Bookmarks Закладки Optimize Database Оптимизировать БД Import Bookmarks Импортировать закладки Add Folder Добавить папку Title Имя Url Адрес Expand All Развернуть все Collapse All Свернуть все Add new folder Добавить новую папку Choose parent folder for new folder: Выберите директорию для новой папки: Choose name for new bookmark folder: Введите имя для новой папки: Add new subfolder Добавить новую вложенную папку Choose name for new subfolder in bookmarks toolbar: Введите имя для новой вложенной папки: Rename Folder Переименовать папку Choose name for folder: Введите имя для папки: Add Subfolder Добавить подпапку Rename folder Переименовать папку Remove folder Удалить папку Open link in current &tab Открыть ссылку в &текущей вкладке Open link in &new tab Открыть ссылку в &новой вкладке Move bookmark to &folder Переместить закладку в &папку Change icon Изменить иконку Rename bookmark Переименовать закладку Remove bookmark Удалить закладку <b>Warning: </b>You already have bookmarked this page! <b>Внимание: </b>Вы уже добавили эту страницу в закладки! Choose name and location of this bookmark. Выберите имя и папку для этой закладки. Add New Bookmark Добавить закладку Choose folder for bookmarks: Выберите папку для закладок: Bookmark All Tabs Закладки для всех открытых страниц BookmarksModel Bookmarks In Menu Закладки в меню Bookmarks In ToolBar Закладки на панели инструментов Unsorted Bookmarks Неотсортированные закладки BookmarksSideBar Search... Поиск... Open link in current &tab Открыть ссылку в &текущей вкладке Open link in &new tab Открыть ссылку в &новой вкладке Copy address Копировать адрес &Delete &Удалить BookmarksToolbar &Bookmark Current Page &Добавить страницу в закладки Bookmark &All Tabs Закладки для &всех открытых страниц &Organize Bookmarks &Управление закладками Show Most &Visited Показать самые п&осещаемые Show Only Icons Показывать только иконки &Hide Toolbar &Скрыть панель инструментов Open bookmark Открыть закладку Open bookmark in new tab Открыть закладку в новой вкладке Move right Вправо Move left Влево Edit bookmark Редактировать закладку Remove bookmark Удалить закладку Edit bookmark: Редактировать закладку: Title: Заголовок: Url: Адрес: Edit Bookmark Редактировать закладку Most visited Самые посещаемые Sites you visited the most Самые посещаемые Вами сайты Empty Пусто BookmarksTree Bookmarks Закладки New Folder... Новая папка... BookmarksWidget Add to Speed Dial Добавить на страницу быстрого доступа Save Сохранить Name: Имя: Folder: Папка: Remove from Speed Dial Удалить со страницы быстрого доступа Remove Удалить BrowsingLibrary Library Библиотека Search... Поиск... History История Bookmarks Закладки RSS RSS Database Optimized Базы данных оптимизированы Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 БД успешно оптимизированы.<br/><br/><b>Размер раньше: </b>%1<br/><b>Размер сейчас: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Выдано для</b> Common Name (CN): Имя (И): Organization (O): Организация (О): Organizational Unit (OU): Подразделение (П): Serial Number: Серийный номер: <b>Issued By</b> <b>Выдано </b> <b>Validity</b> <b>Срок действия</b> Issued On: Выдано для: Expires On: Истекает: ClearPrivateData Clear Recent History Очистить недавнюю историю Choose what you want to delete: Выберите то, что вы хотите стереть: Clear history Очистить историю Clear cache Очистить кэш Clear icons Удалить иконки <b>Clear Recent History</b> <b>Стереть недавнюю историю</b> Earlier Today За сегодня Week За неделю Month За месяц All Всю Clear web databases Очистить сетевые базы данных Clear local storage Очистить локальное хранилище Clear cookies Очистить файлы cookie ClickToFlash Object blocked by ClickToFlash Объект заблокирован ClickToFlash Show more information about object Показать больше информации об объекте Delete object Удалить объект Add %1 to whitelist Добавить %1 в "белый" список Flash Object Flash-объект <b>Attribute Name</b> <b>Название атрибута</b> <b>Value</b> <b>Значение</b> No more information available. Больше нет доступной информации. CookieManager Cookies Cookies Stored Cookies Сохранённые Cookies Find: Найти: These cookies are stored on your computer: Эти файлы cookies хранятся на вашем компьютере: Server Сервер Cookie name Имя Name: Имя: Value: Значение: Server: Сервер: Path: Путь: Secure: Безопасность: Expiration: Срок действия: <cookie not selected> <cookie не выбран> Remove all cookies Удалить все cookies Remove cookies Удалить cookies Cookie Filtering Фильтр <b>Cookie whitelist</b> <b>Список разрешённых cookie</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Cookies с этих серверов будут всегда приниматься (даже если Вы отключили их сохранение) Add Добавить Remove Удалить <b>Cookie blacklist</b> <b>Список запрещённых cookie</b> Cookies from these servers will NEVER be accepted Cookies с этих серверов НИКОГДА не будут приниматься Settings Настройки <b>Cookie Settings</b> <b>Настройки Cookie</b> Allow storing of cookies Сохранять cookies Delete cookies on close Удалять cookies после закрытия Match domain exactly Требовать точное соответствие домена Filter tracking cookies Фильтрация шпионских Cookies <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! <b>Внимание:</b> При включенных опциях "Точное совпадение" и "cookies со сторонних сайтов"» могут возникнуть проблемы с некоторыми сайтами. Если возникают проблемы, отключите эти опции первым! Search Поиск... Confirmation Подтверждение Are you sure to delete all cookies on your computer? Вы точно хотите удалить все cookies? Secure only Только безопасные All connections Все соединения Session cookie Cookie за сеанс Remove cookie Удалить cookie Add to whitelist Добавить в список разрешённых Add to blacklist Добавить в список запрещённых DownloadFileHelper Save file as... Сохранить как... NoNameDownload Безымянная загрузка DownloadItem Remaining time unavailable Оставшееся время неизвестно Error: Cannot write to file! Ошибка! Невозможно выполнить запись в файл! Done - %1 Готово - %1 Cancelled Отменено few seconds несколько секунд %n seconds %n minutes %n hours Unknown speed Скорость неизвестна kB/s Кбит/с MB/s Мбит/с GB/s Гбит/с Unknown size Размер неизвестен %2 - unknown size (%3) %2 - неизвестный размер (%3) Remaining %1 - %2 of %3 (%4) Осталось %1 - %2 из %3 (%4) Cancelled - %1 Отменено - %1 Delete file Удалить файл Do you want to also delete dowloaded file? Вы хотите удалить скачанный файл? Open File Открыть файл Open Folder Открыть папку Go to Download Page Перейти к странице загрузки Copy Download Link Скопировать адрес загрузки Cancel downloading Отменить загрузку Remove Удалить Error Ошибка Not found Не найдено Sorry, the file %1 was not found! Извините, файл %1 не найден! Error: Ошибка: DownloadManager Download Manager Менеджер загрузок Clear Очистить %1% of %2 files (%3) %4 remaining %1% из %2 файлов (%3) %4 осталось %1% - Download Manager %1% - Менеджер загрузок Download Finished Загрузка завершена All files have been successfully downloaded. Все файлы были успешно загружены. Warning Внимание Are you sure to quit? All uncompleted downloads will be cancelled! Вы точно хотите выйти? Все незавершённые загрузки будут прерваны! DownloadOptionsDialog Opening Открываю Copy download link Скопировать адрес загрузки You have chosen to open Вы хотите открыть which is a: которая является: What should QupZilla do with this file? Что QupZilla должен сделать с этим файлом? Open... Открыть... Save File Сохранить файл Download with External Manager Скачать с помощью внешнего менеджера from: из: Opening %1 Открываю %1 Download link copied. Ссылка загрузки скопирована. EditSearchEngine Name: Имя: Url: Адрес: Shortcut: Сокращение: Icon: Значок: <b>Note: </b>%s in url or post data represent searched string <b>Примечание: </b>%s в url или отправленные данные представляют строку поиска Post Data: Отправленные данные: Change... Изменить... FileSchemeReply No Error Ошибок нет Up to higher level directory На уровень вверх Show hidden files Показать скрытые файлы Name Имя Size Размер Last modified Последнее изменение Index for %1 Индекс для %1 Folder is empty. Папка пуста. FtpDownloader Cancelled! Отменено! FtpSchemeReply Up to higher level directory На уровень вверх Show hidden files Показывать скрытые файлы Name Имя Size Размер Last modified Последнее изменение Index for %1 Индекс для %1 Folder is empty. Папка пуста. Unknown command Неизвестная команда HTML5PermissionsDialog HTML5 Permissions Разрешить HTML5 Notifications Уведомления Site Сайт Behaviour Поведение Remove Удалить Geolocation Местоположение Allow Разрешить Deny Запретить HTML5PermissionsNotification Remember Запомнить Allow Разрешить Deny Запретить this site этот сайт Allow %1 to show desktop notifications? Разрешить %1 показать уведомления рабочего стола? Allow %1 to locate your position? Разрешить %1 определять Ваше местоположение? History No Named Page Безымянная страница January Январь February Февраль March Март April Апрель May Май June Июнь July Июль August Август September Сентябрь October Октябрь November Ноябрь December Декабрь HistoryManager History История Delete Удалить Clear All History Стереть всю историю Optimize Database Оптимизировать БД Confirmation Подтверждение Are you sure to delete all history? Вы действительно хотите стереть всю историю? HistoryModel Title Заголовок Address Адрес Visit Date Дата посещения Visit Count Количество посещений Today Сегодня This Week На этой неделе This Month В этом месяце HistorySideBar Search... Поиск... HistoryView Open link in current tab Открыть ссылку в текущей вкладке Open link in new tab Открыть ссылку в новой вкладке Copy title Копировать заголовок Copy address Копировать адрес Remove Удалить IconChooser Choose icon... Выбрать иконку... From file Из файла Image (.png, .jpg, .jpeg, .gif) Изображение (.png, .jpg, .jpeg, .gif) Choose file... Выберите файл... From database Из базы данных Site Url: Адрес: Image files Файлы изображений JsOptions JavaScript Options Параметры JavaScript Allow JavaScript to: Разрешить JavaScript: Close windows Закрывать окна Open popup windows Открывать всплывающие окна Change window size Изменять размер окна Hide menu bar Скрывать панель меню Hide status bar Скрывать панель статуса Hide tool bar Скрывать панель инструментов Access clipboard Доступ к буферу обмена LicenseViewer License Viewer Просмотр лицензии LocationBar Enter URL address or search on %1 Введите адрес или используйте поиск в %1 Paste And &Go Вставить и перейти Clear All Очистить всё .co.uk Append domain name on ALT + Enter = Should be different for every country .ru Show information about this page Показать информацию о текущей странице LocationCompleterView Switch to tab Переключить вкладку MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? QupZilla не является браузером по умолчанию. Хотели бы Вы сделать её браузером по умолчанию? Always perform this check when starting QupZilla. Всегда выполнять такую ​​проверку при запуске QupZilla. Default Browser Браузер по умолчанию QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. QupZilla — новый, быстрый и безопасный веб-браузер с открытым исходным кодом. QupZilla распространяется под лицензией GPL v3 или (по вашему выбору) любой более поздней версии. Он основан на ядре WebKit и Qt Framework. MasterPasswordDialog Encrypted DataBase Settings Настройки зашифрованной БД Set/Change Master Password... Выбрать/изменить мастер-пароль Clear Master Password... Очистить мастер-паролей... This backend does not work without a master password. Этот back-end не работает без мастер-пароля. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. Этот параметр удаляет мастер-пароль и переводит все зашифрованные данные в базу данных в виде простого текста и переключается на неё. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Мастер-пароль используется для защиты паролей сайтов и форм. Если установить мастер-пароль, Вам будет предложено ввести его один раз за сессию. Current Password: Текущий пароль: New Password: Новый пароль: Confirm Password: Текущий пароль: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. <b>Примечание:</b> Мастер-пароль не может быть сброшен. Пожалуйста, храните его в надёжном месте. Warning! Внимание! You entered a wrong password! Вы ввели неверный пароль! New/Confirm password fields do not match! Новые или старые пароли не совпадают! Some data has not been decrypted. The master password was not cleared! Некоторые данные не были расшифрованы. Мастер-пароль не удалён! Are you sure to clear master password and decrypt data? Вы уверены, что хотите очистить мастер-пароль и дешифровать данные? NavigationBar No Named Page Безымянная страница Back Назад Forward Вперёд Home Домашняя страница New Tab Новая вкладка Main Menu Главное меню Exit Fullscreen Выйти из полноэкранного режима Clear history Очистить историю NetworkManager SSL Certificate Error! Ошибка сертификата SSL! The page you are trying to access has the following errors in the SSL certificate: Страница, на которую Вы пытаетесь зайти, имеет следующие ошибки в сертификате SSL: <b>Organization: </b> <b>Организация:</b> <b>Domain Name: </b> <b>Имя домена</b> <b>Expiration Date: </b> <b>Истекает: </b> <b>Error: </b> <b>Ошибка: </b> Would you like to make an exception for this certificate? Сделать исключение для данного сертификата? Authorisation required Необходима авторизация Username: Имя пользователя: Password: Пароль: Save username and password on this site Запомнить имя пользователя и пароль для этого сайта A username and password are being requested by %1. The site says: "%2" %1 требует имя пользователя и пароль. Сайт сказал: "%2" FTP authorisation required FTP необходима авторизация Login anonymously Войти анонимно A username and password are being requested by %1:%2. Имя пользователя и пароль запрашиваются %1:%2. Proxy authorisation required Прокси-сервер требует авторизацию Remember username and password for this proxy. Запомнить имя пользователя и пароль для этого прокси-сервера. A username and password are being requested by proxy %1. Прокси-сервер %1 требует имя пользователя и пароль. PageScreen Page Screen Снимок страницы Format: Формат: Location: Расположение: Browse... Обзор... Save as %1 Сохранить как %1 Choose location... Выберите расположение... File '%1' already exists. Do you want to overwrite it? Файл '%1' уже существует. Хотите перезаписать его? File already exists Файл уже существует PluginsList Application Extensions Расширения Allow Application Extensions to be loaded Использовать расширения Settings Настройки WebKit Plugins Расширения WebKit <b>Click To Flash Plugin</b> <b>Click To Flash Plugin</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Click To Flash - плагин, блокирующий автоматическую загрузку Flash-содержимого. Вы всегда можете просмотреть заблокированное содержимое, кликнув по значку "Play". Whitelist Белый список Add Добавить Remove Удалить Allow Click To Flash Использовать Click To Flash PluginsManager Add site to whitelist Добавить сайт в Белый список Server without http:// (ex. youtube.com) Сервер без http:// (Например: youtube.com) Error! Ошибка! Cannot load extension! Не удалось загрузить расширение! PopupWebView Inspect Element Исследовать элемент PopupWindow File Файл &Save Page As... &Сохранить как... Save Page Screen Сохранить снимок страницы Send Link... Отправить ссылку &Print... &Печать... Close Закрыть Edit Изменить &Undo &Отменить &Redo &Повторить &Cut &Вырезать C&opy &Копировать &Paste Вс&тавить Select All Выделить всё Find Найти View Вид &Stop &Остановить &Reload &Обновить Zoom &In У&величить Zoom &Out У&меньшить Reset Восстановить &Page Source &Исходный код страницы %1 - QupZilla %1 - QupZilla Preferences Preferences Настройки QupZilla QupZilla General Общие Appearance Внешний вид Tabs Вкладки Browsing Просмотр веб-страниц Fonts Шрифты Keyboard Shortcuts Сочетания клавиш Downloads Загрузки Password Manager Менеджер паролей Privacy Конфиденциальность Notifications Уведомления Extensions Расширения Other Прочее Use current Использовать текущий Note: You cannot delete active profile. Примечание: Нельзя удалить активный профиль. Create New Создать новый Delete Удалить <b>Launching</b> <b>Запуск</b> After launch: После запуска: Open blank page Открыть пустую страницу Open homepage Открыть домашнюю страницу Open speed dial Открыть страницу быстрого доступа Restore session Восстановить сессию Homepage: Домашняя страница: On new tab: В новой вкладке: Open blank tab Открыть пустую вкладку Open other page... Открыть другую страницу... <b>Profiles</b> <b>Профили</b> Startup profile: Профиль по умолчанию: Check for updates on start Проверять обновления при запуске Active profile: Активный профиль: In order to change language, you must restart browser. Чтобы изменить язык, необходимо перезапустить браузер. <b>Language</b> <b>Язык</b> Available translations: Выберите язык: Don't load tabs until selected Не загружать вкладки до выбранной Check to see if QupZilla is the default browser on startup Проверять, является ли QupZilla браузером по умолчанию Check Now Проверить сейчас Themes Темы Advanced options Расширенные настройки <b>Browser Window</b> <b>Окно браузера</b> Show StatusBar on start Показывать строку состояния при запуске Show Bookmarks ToolBar on start Показывать панель закладок при запуске Show Navigation ToolBar on start Показывать панель навигации при запуске <b>Navigation ToolBar</b> <b>Панель навигации</b> Show Home button Показывать кнопку "Домой" Show Back / Forward buttons Показать кнопки Вперёд/Назад <b>Background<b/> <b>Фон</b> Use transparent background Использовать прозрачный фон Show web search bar Показать панель поиска Show Add Tab button Показывать кнопку "Открыть новую вкладку" Show Reload / Stop buttons Показывать кнопки Обновить/Остановить Tabs behaviour Настройка вкладок Show tab previews Показывать эскизы вкладок Make tab previews animated Анимация эскизов вкладок Hide tabs when there is only one tab Скрывать панель вкладок, когда открыта только одна вкладка Activate last tab when closing active tab После закрытия текущей вкладки, переходить на последнюю посещённую Open new tabs after active tab Открыть новую вкладку после текущей Open new empty tabs after active tab Открывать новую пустую вкладку после текущей Automatically switch to newly opened tab Переключаться на открываемую вкладку Don't quit upon closing last tab Не закрывать браузер при закрытии последней вкладки Ask when closing multiple tabs Предупреждать при закрытии нескольких вкладок Closed tabs list instead of opened in tab bar Список закрытых вкладок вместо списка открытых в таб баре Address Bar behaviour Настройка панели адреса Suggest when typing into address bar: Автодополнять из: History and Bookmarks История и закладки History История Bookmarks Закладки Nothing Ничего Press "Shift" to not switch the tab but load the url in the current tab. Нажмите кнопку "Shift", чтобы открыть ссылку в текущей вкладке. Propose to switch tab if completed url is already loaded. Переходить на вкладку, если ссылка полностью загружена. Always show go icon Всегда показывать значок Перейти Select all text by double clicking in address bar Выделять весь текст, при двойном клике в адресной строке Select all text by clicking in address bar Выделять весь текст при клике в панели адреса Search with Default Engine Искать поисковой системой по умолчанию Show loading progress in address bar Показывать прогресс загрузки в адресной строке Fill Заполнять Bottom Внизу Top Вверху Custom color: Пользовательские цвета: Select color Выберите цвет ... ... Reset Восстановить Web Configuration Настройки Веб Allow Netscape Plugins (Flash plugin) Разрешить плагины Netscape (Flash плагин) Allow JavaScript Использовать JavaScript Allow JAVA Использовать Java Allow DNS Prefetch Разрешить предварительное получение DNS Enable XSS Auditing try to detect possible XSS attacks when executing javascript Включить XSS аудит Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Печатать фон элемента Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Включать ссылки в последовательность фокуса Animated scrolling Плавная прокрутка Enable caret browsing Включить режим активного курсора Enable spatial navigation Включить пространственную навигацию Zoom text only Масштабировать только текст Mouse wheel scrolls Прокручивать с помощью колёсика мыши lines on page строк на страницу Default zoom on pages: Масштабирование страницы по умолчанию: Local Storage Локальное хранилище Maximum Максимум 50 MB 50 Мб 1 1 Maximum pages in cache: Максимум страниц в кэше: Allow storing network cache on disk Сохранять кэш Store cache in: Хранить кэш в: Allow saving history Помнить историю посещений Delete history on close Очищать историю при закрытии Allow local storage of HTML5 web content Разрешить локальное хранение HTML5 контента Delete locally stored HTML5 web content on close Удалять локальные данные HTML5 при закрытии Delete now Удалить сейчас Proxy Configuration Прокси Proxy Auto-Config (.pac) file Файл Proxy Auto-Config (.pac) Reload Обновить HTTP HTTP SOCKS5 SOCKS5 Port: Порт: Username: Имя пользователя: Password: Пароль: Don't use on: Не использовать на: Manual configuration Ручные настройки System proxy configuration Системные настройки прокси Do not use proxy Не использовать прокси <b>Exceptions</b> <b>Исключения</b> Server: Сервер: Use different proxy for https connection Использовать другой прокси для https Use script for automatic configuration: Использовать скрипт автоматической настройки: <b>Font Families</b> <b>Семейства шрифтов</b> Standard Стандартный Fixed Фиксированный Serif С засечками Sans Serif Без засечек Cursive Курсив Fantasy Моноширинный <b>Font Sizes</b> <b>Размер шрифта</b> Fixed Font Size Фиксированный размер шрифта Default Font Size Размер шрифта по умолчанию Minimum Font Size Минимальный размер шрифта Minimum Logical Font Size Минимальный логический размер шрифта <b>Shortcuts</b> <b>Сочетания</b> Switch to tabs with Alt + number of tab Переключаться на вкладку с Alt + номер вкладки Load speed dials with Ctrl + number of speed dial Загружать закладки быстрого доступа с Ctrl + номер вкладки Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>Расположение загружаемых файлов</b> Ask everytime for download location Всегда выдавать запрос на сохранение файлов Use defined location: Путь для сохранения файлов: <b>Download Options</b> <b>Параметры загрузки</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Использовать системный диалог для файловых операций (могут возникнуть проблемы с закачкой файлов защищённых SSL) Close download manager when downloading finishes Закрывать менеджер загрузок после завершения всех загрузок <b>External download manager</b> <b>Внешний менеджер загрузки</b> Use external download manager Использовать внешний менеджер загрузки Executable: Исполняемый файл: Arguments: Параметры запуска: Leave blank if unsure Оставьте пустым, если не уверены <b>%d</b> will be replaced with URL to be downloaded <b>%d</b> будет заменён адрес для загрузки <b>AutoFill options</b> <b>Автозаполнение</b> Allow saving passwords from sites Сохранять пароли Send Referer header to servers Отправлять Referer заголовок серверам <b>Cookies</b> <b>Cookies</b> Send Do Not Track header to servers Сообщать веб-сайтам, что я не хочу, чтобы за мной следили <b>Other</b> <b>Остальное</b> Manage CA certificates Управление сертификатами Certificate Manager Менеджер сертификатов <b>SSL Certificates</b> <b>SSL Сертификаты</b> <b>JavaScript</b> <b>JavaScript</b> Manage JavaScript privacy options Управление параметрами конфиденциальности JavaScript JavaScript options Параметры JavaScript Cookies Manager Менеджер Cookies Manage Cookies Управление Cookies <b>HTML5 Permissions</b> <b>HTML5</b> Manage HTML5 permissions Управление HTML5 разрешениями HTML5 Permissions HTML5 разрешения <b>Notifications</b> <b>Уведомления</b> Use OSD Notifications Использовать экранные уведомления Use Native System Notifications (Linux only) Использовать системные уведомления (только для Linux) Do not use Notifications Без уведомлений Expiration timeout: Скрывать через: seconds секунд <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Примечание: </b>Вы можете изменить расположение экранных уведомлений, перетаскивая их по экрану. StyleSheet automatically loaded with all websites: Выберите таблицу стилей для всех сайтов: Languages Языки <b>Preferred language for web sites</b> <b>Предпочитаемый язык для веб-сайтов</b> <b>Change browser identification</b> <b>Настройки идентификации</b> User Agent Manager Управление User Agent Default По умолчанию Set as default Установить по умолчанию OSD Notification Экранные уведомления Drag it on the screen to place it where you want. Перетащите уведомление, в то место, где Вы хотите его разместить. Choose download location... Выберите папку для загрузок... Choose stylesheet location... Укажите местоположение таблицы стилей... Deleted Удалено Choose executable location... Выберите путь до исполнимого файла... Choose cache path... Выберите папку кэша... New Profile Новый профиль Enter the new profile's name: Введите имя профиля: Error! Ошибка! This profile already exists! Такой профиль уже существует! Cannot create profile directory! Невозможно создать папку для профиля! Confirmation Подтверждение Are you sure to permanently delete "%1" profile? This action cannot be undone! Вы точно хотите удалить профиль "%1"? Это действие необратимо! Select Color Выберите цвет QObject Native System Notification Родная система уведомлений Save file as... Сохранить как... The file is not an OpenSearch 1.1 file. Это не файл OpenSearch 1.1. <not set in certificate> <не установлен в сертификате> Unknown size Неизвестный размер KB Кбайт MB Мбайт GB Гбайт Executable: Исполняемый файл: Arguments: Параметры запуска: Cannot start external program Не удаётся запустить внешнюю программу Cannot start external program! %1 Не удаётся запустить внешнюю программу! %1 QtWin Open new tab Открыть новую вкладку Opens a new tab if browser is running Открывать новую вкладку, если браузер запущен Open new window Открыть новое окно Opens a new window if browser is running Открывать новое окно, если браузер запущен Open download manager Открыть менеджер загрузок Opens a download manager if browser is running Открывать менеджер загрузок, если браузер запущен QupZilla QupZilla QupZilla Private Browsing Enabled Режим инкогнито включен IP Address of current page IP-адрес текущей страницы &About QupZilla &О QupZilla Pr&eferences Н&астройки Quit Выход &File &Файл &New Window &Новое окно New Tab Новая вкладка Open Location Открыть ссылку Open &File... Открыть &файл... Close Tab Закрыть вкладку Close Window Закрыть окно &Save Page As... &Сохранить как... Save Page Screen Сохранить снимок страницы Send Link... Отправить ссылку... &Print... &Печать... Import bookmarks... Импорт закладок... &Edit &Правка &Undo &Отменить &Redo &Повторить &Cut &Вырезать C&opy &Копировать &Paste Вс&тавить Select &All В&ыделить всё &Find &Найти... &View &Вид &Navigation Toolbar Панель &навигации &Bookmarks Toolbar Панель &закладок Sta&tus Bar Строка состояния &Menu Bar Панель &меню &Tabs on Top &Вкладки сверху &Fullscreen &Полноэкранный режим &Stop &Остановить &Reload &Обновить Character &Encoding &Кодировка Enable &Caret Browsing Включить режим активного курсора Toolbars Панели инструментов Sidebars Боковые панели Zoom &In У&величить Zoom &Out У&меньшить Reset Восстановить &Page Source &Исходный код страницы Hi&story Ис&тория &Back &Назад &Forward &Вперёд &Home &Домашняя страница Show &All History Показать в&сю историю Closed Tabs Закрытые вкладки Recently Visited Недавно посещённые Most Visited Самые посещаемые &Bookmarks &Закладки Bookmark &This Page Добавить страницу в закладки Bookmark &All Tabs Закладки для &всех открытых страниц Organize &Bookmarks &Управление закладками &Tools &Инструменты &Web Search П&оиск в интернете Page &Info &Информация о странице &Download Manager &Менеджер загрузок &Cookies Manager Менеджер &Cookies &AdBlock &AdBlock RSS &Reader Чтение &RSS Web In&spector Веб Ин&спектор Clear Recent &History Стереть &недавнюю историю New &Private Window Новое &приватное окно &Help &Справка About &Qt О &Qt Information about application Информация о приложении Configuration Information Информация о конфигурации Report &Issue &Сообщить об ошибке Restore &Closed Tab Открыть &закрытую вкладку (Private Browsing) (Режим инкогнито) Empty Пусто Restore All Closed Tabs Открыть все закрытые вкладки Clear list Очистить список Other Прочее %1 - QupZilla %1 - QupZilla HTML files HTML-файлы Image files Файлы изображений Text files Текстовые файлы All files Все файлы Open file... Открыть файл... QupZilla %1 (%2) QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? У вас открыто %1 вкладок и Ваша сессия не сохранится. Вы действительно хотите выйти из QupZilla? Don't ask again Больше не спрашивать There are still open tabs Некоторые вкладки не закрыты QupZillaSchemeReply No Error Ошибок нет Not Found Не найдено Report Issue Сообщить об ошибке If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Если у Вас возникли проблемы с QupZilla, попробуйте отключить все расширения.<br/>Если это не помогло, пожалуйста, заполните эту форму: Your E-mail Ваш E-mail Issue type Тип проблемы Issue description Описание проблемы Send Отправить E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. E-mail не обязателен<br/><b>Примечание: </b>Пожалуйста, прочтите правила создания сообщения о ошибке <a href=%1>здесь </a>. Please fill out all required fields! Пожалуйста, заполните все обязательные поля! Start Page Начальная страница Search on Web Искать в интернете Search results provided by DuckDuckGo Результаты поиска предоставляемые DuckDuckGo About QupZilla О QupZilla <h1>Private Browsing</h1> <h1>Режим инкогнито</h1> Information about version О версии программы Copyright Права Version Версия WebKit version Версия WebKit Main developer Главный разработчик Contributors Внесли вклад Translators Переводчики Speed Dial Страница быстрого доступа Add New Page Добавить новую страницу Edit Изменить Remove Удалить Reload Обновить Are you sure to remove this speed dial? Вы действительно хотите удалить эту закладку? Load title from page Загрузить заголовок страницы Url Адрес Title Заголовок Apply Применить Close Закрыть New Page Новая страница Speed Dial settings Настройки страницы быстрого доступа Placement: Положение: Auto Автоматически Cover Заполнение Fit По размеру Fit Width По ширине Fit Height По высоте Use background image Использовать фоновое изображение Select image Выбрать изображение Maximum pages in a row: Ячеек в строке: Change size of pages: Размер ячеек: Center speed dials Выравнивать закладки Restore Session Восстановить сессию Oops, QupZilla crashed. Ой, QupZilla упал. We apologize for this. Would you like to restore the last saved state? Мы сожалеем. Хотите ли Вы восстановить сессию? Try removing one or more tabs that you think cause troubles Попробуйте закрыть вкладки, которые могут вызвать проблемы Or you can start completely new session Также Вы можете начать новую сессию Configuration Information Информация о конфигурации This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Эта страница содержит информацию о конфигурации QupZilla. Эта информация необходима для исправления ошибок. Пожалуйста, включите её в сообщение об ошибке. Browser Identification Идентификационная информация браузера Paths Пути Build Configuration Конфигурация сборки Preferences Настройки Option Опция Value Значение Extensions Расширения Name Название Author Автор Description Описание Application version Версия приложения Qt version Версия Qt Build time Дата сборки Platform Платформа Profile Профиль Settings Настройки Saved session Сохранённые сессии Pinned tabs Закреплённые вкладки Data Данные Themes Темы Translations Переводы Disabled Отключено <b>Enabled</b> <b>Включено</b> Debug build Сборка для отладки WebGL support Поддержка WebGL Windows 7 API Windows 7 API KDE integration Интеграция в KDE Portable build Портативная сборка No available extensions. Нет доступных расширений. RSSManager RSS Reader Чтение RSS Empty Пусто Add feed Добавить ленту Edit feed Редактировать ленту Delete feed Удалить ленту Optimize Database Оптимизировать БД Reload Обновить News Новости Loading... Загрузка... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. У вас нет RSS лент<br/> Пожалуйста, добавьте их с помощью значка RSS в панели навигации на сайте который предлагает RSS. Add new feed Добавить новую ленту Please enter URL of new feed: Пожалуйста, введите адрес новой ленты: New feed Новая лента Fill title and URL of a feed: Введите название и адрес ленты: Feed title: Название ленты: Feed URL: Адрес ленты: Edit RSS Feed Редактировать RSS ленту Open link in current tab Открыть ссылку в текущей вкладке Open link in new tab Открыть ссылку в новой вкладке Error in fetching feed Ошибка при загрузке ленты RSS feed duplicated RSS лента дублируется You already have this feed. Вы уже подписаны на эту ленту. RSSNotification Add this feed into Добавить эту ленту в Add Добавить RSS feed <b>"%1"</b> RSS лента <b>"%1"</b> Internal Reader Встроенное чтение Other... Другие... Liferea not running Liferea не работает Liferea must be running in order to add new feed. Liferea должна быть запущена для того, чтобы добавить новую ленту. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Для того чтобы добавить эту RSS-ленту в другие приложения, пожалуйста, используйте эту информацию:<b>Заголовок: </b>%1<br/><b>Адрес: </b>%2<br/><br/>Адрес ленты был скопирован в буфер обмена. Add feed into other application Добавить ленту в другие приложения RSSWidget Add RSS Feeds from this site Добавить RSS ленты с этого сайта Untitled feed Безымянная лента Add Добавить RecoveryWidget Start New Session Начать новую сессию Restore Восстановить Window %1 Окно %1 RegisterQAppAssociation Warning! Внимание! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) Есть некоторые проблемы. Пожалуйста, переустановите QupZilla. ⏎ Может быть, запуск с правами администратора приятно удивит Вас! ;) RssIcon Add RSS from this page... Добавить RSS с этой страницы... SSLManager Certificate Manager Менеджер сертификатов CA Authorities Certificates Сертификаты авторизации Show info Показать информацию This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Это список сертификатов авторизации расположенных в системных, а также определённых пользователем местах. Local Certificates Локальные сертификаты Import Импорт Remove Удалить This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Это список локальных сертификатов авторизации хранящихся в вашем профиле, а также все сертификаты, для которых вы сделали исключение. Settings Настройки Add Добавить If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Если сертификаты авторизации не были загружены из системы, вы можете определить их расположение вручную. <b>NOTE:</b> Setting this option is a high security risk! <b>Внимание: </b> Включение этой опции - большой риск для безопасности! Ignore all SSL Warnings Игнорировать все предупреждения SSL All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Все сертификаты должны иметь расширение .crt Чтобы применить изменения, необходимо перезапустить QupZilla. Choose path... Выберите папку... Import certificate... Импортировать сертификат... Certificate Informations Информация о сертификате SearchEnginesDialog Manage Search Engines Управление поисковыми системами Add... Добавить... Remove Удалить Edit Изменить Set as default Установить по умолчанию Up Вверх Down Вниз Search Engine Поисковая система Shortcut Сокращение Defaults По умолчанию Add Search Engine Добавить поисковую систему Remove Engine Удалить поисковую систему You can't remove the default search engine.<br>Set a different engine as default before removing %1. Вы не можете удалить поиск по умолчанию.<br>Установите другой поисковик перед удалением %1. Edit Search Engine Редактировать поисковую систему SearchEnginesManager Search Engine Added Поисковая система добавлена Search Engine "%1" has been successfully added. Вы успешно добавили поисковую систему "%1". Search Engine is not valid! Поисковая система не является допустимой! Error Ошибка Error while adding Search Engine <br><b>Error Message: </b> %1 При добавлении поисковой системы возникла ошибка <br><b>Сообщение об ошибке</b> %1 SearchToolBar No results found. Результатов нет. SearchToolbar Search: Найти: Search... Поиск... Highlight Подсветить найденное Case sensitive С учётом регистра SideBar Bookmarks Закладки History История SiteInfo Site Info Информация о странице General Общее Media Медиа Databases Базы данных Security Безопасность Size: Размер: Site address: Адрес сайта: Encoding: Кодировка: Meta tags of site: Мета-теги сайта: Tag Тег Value Значение <b>Security information</b> <b>Информация о безопасности</b> Details Подробнее Image Изображение Image address Адрес изображения <b>Preview</b> <b>Предварительный просмотр</b> <b>Database details</b> <b>Подробности о базах данных</b> Name: Название: Path: Путь: <database not selected> <база данных не выбрана> <not set in certificate> <Не установлено в сертификате> No databases are used by this page. Эта страница не использует базы данных. <b>Connection is Encrypted.</b> <b>Соединение зашифровано</b> <b>Your connection to this page is secured with this certificate: </b> <b>Ваше соединение с этой страницей безопасно с этим сертификатом: </b> <b>Connection Not Encrypted.</b> <b>Соединение не зашифровано</b> <b>Your connection to this page is not secured!</b> <b>Соединение с этой страницей небезопасно!</b> Copy Image Location Скопировать расположение изображения Copy Image Name Копировать имя изображения Save Image to Disk Сохранить изображение на диск Error! Ошибка! This preview is not available! Предпросмотр не доступен! Save image... Сохранить изображение... Cannot write to file! Невозможно выполнить запись в файл! Preview not available Предпросмотр не доступен SiteInfoWidget More... Подробнее... Your connection to this site is <b>secured</b>. Соединение с этим сайтом <b>безопасно</b>. Your connection to this site is <b>unsecured</b>. Соединение с этим сайтом <b>небезопасно</b>. This is your <b>%1</b> visit of this site. Это ваш <b>%1</b> визит на сайт. You have <b>never</b> visited this site before. Вы <b>никогда</b> не посещали этот сайт раньше. first первый second второй third третий SourceViewer Source of Исходный код File Файл Load in page Загрузить страницу Save as... Сохранить как... Close Закрыть Edit Редактировать Undo Отменить Redo Повторить Cut Вырезать Copy Копировать Paste Вставить Select All Выделить всё Find Найти Go to Line... Перейти к строке... View Вид Reload Обновить Editable Редактируемый Word Wrap Перенос слов Source loaded in page Источник загружен со страницы Cannot load in page. Page has been closed. Не удалось загрузить страницу. Страница была закрыта. Save file... Сохранить файл... Error! Ошибка! Cannot write to file! Невозможно записать в файл! Error writing to file Ошибка записи в файл Source successfully saved Исходный код успешно сохранён Source reloaded Исходный код обновлён Cannot reload source. Page has been closed. Не удаётся загрузить код. Страница была закрыта. Editable changed Опция "Редактируемый" изменилась Word Wrap changed Опция "Перенос слов" изменена Enter line number Введите номер строки SourceViewerSearch Search: Поиск: Search... Поиск... Whole words Целые слова SpeedDial Image files Файлы изображений Select image... Выбрать изображение... Unable to load Невозможно загрузить SpellCheckDialog SpellCheck Проверять орфографию <b>Dictionary path</b> <b>Папка словаря</b> Change... Изменить... <b>User dictionary</b> <b>Пользовательский словарь</b> Add Добавить Remove Удалить Using Hunspell library Используйте Hunspell библиотеку Choose dictionary path... Выберите папку словаря ... Add new word... Добавить слово... Add new word: Добавить новое слово: Speller No suggestions Нет предложений Add to dictionary Добавить словарь Settings Настройки SqueezeLabelV2 Copy Копировать SslErrorDialog SSL Certificate Error! Ошибка сертификата SSL! Only for this session Только для этой сессии TabBar &New tab &Новая вкладка &Stop Tab &Прервать загрузку &Reload Tab &Обновить вкладку &Duplicate Tab &Клонировать вкладку D&etach Tab Отключить вкладку Un&pin Tab О&ткрепить вкладку &Pin Tab П&рикрепить вкладку Re&load All Tabs О&бновить все вкладки &Bookmark This Tab Добавить &закладку для этой страницы Bookmark &All Tabs Закладки для &всех открытых страниц Close Ot&her Tabs Закрыть &остальные вкладки Cl&ose &Закрыть Reloa&d All Tabs Об&новить все вкладки Restore &Closed Tab Открыть &закрытую вкладку Close Tabs Закрыть вкладки Do you really want to close other tabs? Вы действительно хотите закрыть другие вкладки? TabWidget New Tab Новая вкладка List of tabs Список вкладок Loading... Загрузка... No Named Page Безымянная страница Currently you have %1 opened tabs Открыто %1 вкладок New tab Новая вкладка Empty Пусто Restore All Closed Tabs Открыть все закрытые вкладки Clear list Очистить список TabbedWebView Loading... Загрузка... %1 - QupZilla %1 - QupZilla Inspect Element Исследовать элемент ThemeManager <b>Name:</b> <b>Название:</b> <b>Author:</b> <b>Автор: </b> <b>Description:</b> <b>Описание:</b> License Лицензия ToolButton Stop Остановить Reload Обновить Updater Update available Доступно обновление New version of QupZilla is ready to download. Новая версия QupZilla доступна для загрузки. Update Обновление UserAgentDialog User Agent Manager Управление User Agent Change global User Agent Изменить User Agent Use different User Agents for specified sites Использовать различные User Agents для разных сайтов Site Сайт User Agent User Agent Add Добавить Remove Удалить Edit Редактировать Add new site Добавить сайт Edit site Редактировать Site domain: Домен: User Agent: User Agent: WebInspectorDockWidget Web Inspector Веб-инспектор WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? QupZilla не может обработать <b>%1:</b> ссылки. Запрашиваемая ссылка <ul><li>%2</li></ul>Вы хотите, чтобы QupZilla попыталась открыть эту ссылку с помощью системной программы? Remember my choice for this protocol Запомнить мой выбор протокола External Protocol Request Внешний запрос протокола To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Чтобы показать эту страницу, QupZilla должен переслать запрос, который повторит действие, которое уже совершено (например, поиск или покупку чего-либо) Confirm form resubmission Подтвердите повторную отправку формы Select files to upload... Выберите файлы для загрузки... Server refused the connection Сервер отказал в соединении Server closed the connection Сервер закрыл соединение Server not found Сервер не найден Connection timed out Время ожидания соединения истекло Untrusted connection Ненадёжное соединение Temporary network failure Временный сбой сети Proxy connection refused Подключение к прокси отклонено Proxy server not found Прокси-сервер не найден Proxy connection timed out Вышел временной лимит подключения Proxy authentication required Прокси-сервер требует авторизацию Content not found Содержимое не найдено Unknown network error Неизвестная ошибка сети AdBlocked Content Содержимое заблокировано AdBlock'ом Blocked by <i>%1</i> Заблокировано <i>%1</i> Content Access Denied Доступ к содержанию запрещён Error code %1 Код ошибки %1 Failed loading page Невозможно загрузить страницу QupZilla can't load page. QupZilla не может загрузить эту страницу. QupZilla can't load page from %1. QupZilla не может загрузить страницу %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Проверьте адрес страницы на ошибки (Например, <b>ww</b>.example.com вместо <b>www</b>.example.com) If you are unable to load any pages, check your computer's network connection. Если страницы не загружаются, проверьте своё интернет соединение. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Если ваш компьютер или сеть защищена с помощью фаервола или прокси, удостоверьтесь, что QupZilla может выходить в Internet. Try Again Попробовать снова JavaScript alert Предупреждение JavaScript Prevent this page from creating additional dialogs Запретить странице создавать дополнительные диалоги Choose file... Выберите файл... Cannot read data from <b>%1</b>. Upload was cancelled! Не удалось прочитать данные из <b>%1</b>. Загрузка была отменена! Cannot read file! Невозможно прочитать файл! WebSearchBar Manage Search Engines Управление поисковыми системами Add %1 ... Добавить %1... Paste And &Search Вставить и &найти Clear All Очистить всё Show suggestions Показывать подсказки Search when engine changed Начать поиск, когда поисковая система изменена WebView No Named Page Безымянная страница Create Search Engine Добавить поисковую систему Cut Вырезать Copy Копировать Paste Вставить Select All Выделить всё Default По умолчанию Left to Right Слева направо Right to Left Справа налево Bold Полужирный Italic Курсив Underline Подчёркнутый &Reload Об&новить S&top Ос&тановить Delete Удалить &Back &Назад &Forward &Вперёд This frame Этот фрейм Show &only this frame Показывать &только этот фрейм Show this frame in new &tab Показывать фрейм в новой вкладк&е Print frame Распечатать фрейм Zoom &in &Увеличить &Zoom out &Уменьшить Reset Восстановить Show so&urce of frame &Показать код фрейма Book&mark page Добавить в &закладки &Save page as... &Сохранить страницу как... &Copy page link Копировать &ссылку страницы Send page link... Отправить адрес страницы... &Print page &Распечатать страницу Select &all В&ыделить всё Validate page Проверить страницу Show so&urce code Исх&одный код страницы Show info ab&out site Информа&ция о странице Open link in new &tab Открыть &в новой вкладке Open link in new &window Открыть в &новом окне B&ookmark link Добавить ссылку в &закладки &Save link as... С&охранить ссылку как... Send link... Отправить ссылку... &Copy link address &Копировать адрес Show i&mage О&ткрыть изображение Copy im&age Коп&ировать изображение Copy image ad&dress Ко&пировать ссылку на изображение &Save image as... С&охранить изображение как... Send image... Отправить изображение... Send text... Отправить текст... Google Translate Google перевод Dictionary Словарь Go to &web address Перейти по &ссылке Search "%1 .." with %2 Искать "%1" в %2 Search with... Искать с помощью... &Play Про&играть &Pause &Пауза Un&mute &Включение &Mute &Отключение &Copy Media Address Копировать &ссылку медиаконтента &Send Media Address &Отправить ссылку медиаконтента Save Media To &Disk &Сохранить медиаконтент Check &Spelling Проверка &орфографии Languages Языки jsAlert Prevent this page from creating additional dialogs Запретить странице создавать дополнительные диалоги qupzilla-1.6.0/translations/sk_SK.ts000066400000000000000000010576121226107126500175000ustar00rootroot00000000000000 AboutDialog About QupZilla O QupZille Authors Autori Authors and Contributors Autori a prispievatelia < About QupZilla < O QupZille <p><b>Application version %1</b><br/> <p><b>Verzia programu %1</b><br/> <b>WebKit version %1</b></p> <b>Verzia WebKitu %1</b></p> <small>Build time: %1 </small></p> <small>Dátum zostavenia: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Hlavný vývojár:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Prispievatelia:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Prekladatelia:</b><br/>%1</p> AcceptLanguage Preferred Languages Preferované jazyky Add... Pridať... Remove Odstrániť Up Vyššie Down Nižšie Personal [%1] Vlastné [%1] AdBlockAddSubscriptionDialog Add Subscription Pridať sadu filtrov Title: Názov: Address: Adresa: Add new subscription to AdBlock: Pridať sadu filtrov do AdBlocku: AdBlockCustomList Custom Rules Vlastné pravidlá AdBlockDialog AdBlock Configuration Natavenia AdBlocku Enable AdBlock Povoliť AdBlock Search... Hľadať... Options Možnosti AdBlock AdBlock Use only essential part of EasyList (for performance reasons) Add Rule Pridať pravidlo Remove Rule Odstrániť pravidlo Add Subscription Pridať sadu filtrov Remove Subscription Odstrániť sadu filtrov Update Subscriptions Aktualizovať sadu filtrov Learn about writing rules... Zistiť viac o písaní pravidiel... AdBlockIcon AdBlock lets you block unwanted content on web pages AdBlock blokuje nevyžiadaný obsah na stránkach Blocked popup window Zablokované vyskakovacie okno AdBlock blocked unwanted popup window. AdBlock zablokoval nevyžiadané vyskakovacie okno. AdBlock AdBlock Show AdBlock &Settings Zobraziť na&stavenia AdBlocku Disable on %1 Vypnúť na %1 Disable only on this page Vypnúť len na tejto stránke Blocked Popup Windows Zablokované vyskakovacie okná %1 with (%2) %1 s (%2) No content blocked Žiadny obsah neblokovaný Blocked URL (AdBlock Rule) - click to edit rule Blokovaná URL (AdBlock pravidlo) - kliknutím upravíte pravidlo AdBlockManager Do you want to add <b>%1</b> subscription? Chcete pridať <b>%1</b> sadu filtrov? AdBlock Subscription AdBlock sada filtrov EasyList EasyList AdBlockTreeWidget Add Rule Pridať pravidlo Remove Rule Odstrániť pravidlo Add Custom Rule Pridať vlastné pravidlo Please write your rule here: Prosím, sem napíšte vlastné pravidlo: %1 (recently updated) %1 (aktualizované) AddAcceptLanguage Add Language Pridať jazyk Choose preferred language for web sites Vyberte preferovaný jazyk pre webové stránky Personal definition: Vlastná definícia: AesInterface Warning! Varovanie! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. Dáta boli zašifrované novšou verziou programu QupZilla. Prosím nainštalujte najnovšiu verziu QupZilly. AutoFill Database (plaintext) Databáza (čistý text) Database (encrypted) Databáza (zašifrovaná) Enter Master Password Zadajte hlavné heslo Permission is required, please enter Master Password: Vyžadujú sa oprávnenia, prosím zadajte hlavné heslo: Warning! Varovanie! Entered password is wrong! Zadané heslo je zlé! This backend needs a master password to be set! QupZilla just switches to its default backend Tento backend potrebuje, aby bolo zadané hlavné heslo! QupZilla len prepne do východzieho backendu. AutoFillManager Passwords are stored in: Heslá sú uložené v: Change backend Zmeniť beckend Backend options Možnosti beckendu Passwords Heslá Server Server Username Meno používateľa Password Heslo Import/Export Import/Export Show Passwords Zobraziť heslá Edit Upraviť Remove Odstrániť Remove All Odstrániť všetko Exceptions Výnimky Import Passwords from File... Imporotovať heslá zo súboru... Export Passwords to File... Exportovať heslá do súboru... Search Hľadať Change backend... Zmeniť beckend... Change backend: Zmeniť beckend: Are you sure that you want to show all passwords? Ste si istý, že chcete zobraziť všetky heslá? Hide Passwords Skryť heslá Confirmation Potvrdenie Are you sure to delete all passwords on your computer? Ste si istý, že chcete vymazať všetky heslá vo vašom počítači? Edit password Upraviť heslo Change password: Zmeniť heslo: Choose file... Vyberte súbor... Cannot read file! Nie je možné čítať zo súboru! Successfully imported Importovanie úspešné Error while importing! Chyba počas importovania! Cannot write to file! Nie je možný zápis do súboru! Successfully exported Exportovanie úspešné AutoFillNotification Update Aktualizácia Remember Zapamätať Never For This Site Nikdy pre túto stránku Not Now Nie teraz on %1 na %1 for <b>%1</b> pre <b>%1</b> Do you want QupZilla to update saved password %1? Chcete aby QupZilla aktualizovala uložené heslo %1? Do you want QupZilla to remember the password %1 %2? Chcete aby si QupZilla zapamätala heslo %1 %2? AutoFillWidget Choose username to login Vyberte meno používateľa na prihlásenie Login Prihlásiť Login as <b>%1</b> Prihlásiť ako <b>%1</b> BookmarkIcon Bookmark this Page Pridať túto stránku do záložiek Edit this bookmark Upraviť túto záložku BookmarksImportDialog Import Bookmarks Import záložiek <b>Import Bookmarks</b> <b>Import záložiek</b> From File Zo súboru Internet Explorer Internet Explorer Choose browser from which you want to import bookmarks: Vyberte prehliadač, z ktorého chcete importovať záložky: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Poznámka:</b> Momentálne iba import z html súboru importuje aj priečinky záložiek. Choose... Vybrať... Try to fetch icons for all bookmarks (may take a while) Pokúsiť sa získať ikony pre všetky záložky (môže chvíľu trvať) Fetching icons, please wait... Získavajú sa ikony, prosím čakajte... Title Názov Url Url Next Ďalej Cancel Zrušiť <b>Importing from %1</b> <b>Importovať z %1</b> Finish Dokončené Please press Finish to complete importing process. Prosím stlačte Dokončiť pre dokončenie importu. Error! Chyba! The file doesn't contain any bookmark. Tento súbor neobsahuje žiadne záložky. Choose directory... Vyberte priečinok... Choose file... Vyberte súbor... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox ukladá svoje záložky v SQLite databáze <b>places.sqlite</b>. Tento súbor sa obvykle nachádza v Please choose this file to begin importing bookmarks. Prosím vyberte súbor pre zahájenie importu záložiek. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Google Chrome ukladá svoje záložky v textovom súbore <b>places.sqlite</b>. Tento súbor sa obvykle nachádza v Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera ukladá svoje záložky v textovom súbore <b>places.sqlite</b>. Tento súbor sa obvykle nachádza v You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Záložky môžete importovať z ktoréhokoľvek prehliadača, ktorý podporuje export do HTML. Tento súbor má zvyčajn tieto prípony Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Explorer ukladá svoje záložky v priečinku <b>places.sqlite</b>. Tento priečinok sa obvykle nachádza v Please choose this folder to begin importing bookmarks. Prosím vyberte priečinok pre zahájenie importu. No Error Žiadna chyba Unable to open file. Nepodarilo sa otvoriť súbor. Cannot evaluate JSON code. Nie je možné spustiť JSON kód. File does not exist. Súbor neexistuje. Unable to open database. Is Firefox running? Nepodarilo sa otvoriť databázu. Je Firefox zapnutý? Directory does not exist. Priečinok neexistuje. The directory does not contain any bookmarks. Priečinok neobsahuje žiadne záložky. BookmarksManager Bookmarks Záložky Optimize Database Optimalizovať databázu Import Bookmarks Import záložiek Add Folder Pridať priečinok Title Nadpis Url Url adresa Expand All Rozbaliť všetko Collapse All Všetko zbaliť Add new folder Pridať nový priečinok Choose parent folder for new folder: Vyberte nadradený priečinok pre nový priečinok: Choose name for new bookmark folder: Vyberte názov nového priečinka záložiek: Add new subfolder Pridať nový podpriečinok Choose name for new subfolder in bookmarks toolbar: Vyberte názov nového podpriečinka v paneli záložiek: Rename Folder Premenovať priečinok Choose name for folder: Vyberte názov priečinka: Add Subfolder Pridať podpriečinok Rename folder Premenovať priečinok Remove folder Odstrániť priečinok Open link in current &tab Otvoriť odkaz na &aktuálnej karte Open link in &new tab Otvoriť odkaz na &novej karte Move bookmark to &folder Presunúť záložku do &priečinka Change icon Zmeniť ikonu Rename bookmark Premenovať záložku Remove bookmark Odstrániť záložku <b>Warning: </b>You already have bookmarked this page! <b>Varovanie: </b>Túto stránku už máte v záložkách! Choose name and location of this bookmark. V\berte názov a umiestnenie záložky. Add New Bookmark Pridať novú záložku Choose folder for bookmarks: Vyberte priečinok pre záložky: Bookmark All Tabs Pridať všetky karty do záložiek BookmarksModel Bookmarks In Menu Záložky v menu Bookmarks In ToolBar Záložky na paneli nástrojov Unsorted Bookmarks Nepotriedené záložky BookmarksSideBar Search... Hľadať... Open link in current &tab Otvoriť odkaz na &aktuálnej karte Open link in &new tab Otvoriť odkaz na &novej karte Copy address Kopírovať adresu &Delete O&dstrániť BookmarksToolbar &Bookmark Current Page Pridať &stránku do záložiek Bookmark &All Tabs Pridať všetky k&arty do záložiek &Organize Bookmarks &Organizovať záložky Show Most &Visited Zobraziť najna&vštevovanejšie Show Only Icons Zobraziť len ikony &Hide Toolbar Skr&yť panel nástrojov Open bookmark Otvoriť záložku Open bookmark in new tab Otvoriť záložku na novej karte Move right Posunúť doprava Move left Posunúť doľava Edit bookmark Upraviť záložku Remove bookmark Odstrániť záložku Edit bookmark: Upraviť záložku: Title: Názov: Url: Url: Edit Bookmark Upraviť záložku Most visited Najnavštevovanejšie Sites you visited the most Najnavštevovanejšie stránky Empty Prázdny BookmarksTree Bookmarks Záložky New Folder... Nový priečinok... BookmarksWidget Add to Speed Dial Pridať do rýchlej voľby Save Uložiť Name: Názov: Folder: Priečinok: Remove from Speed Dial Odstrániť z rýchlej voľby Remove Odstrániť BrowsingLibrary Library Knižnica Search... Hľadať... History História Bookmarks Záložky RSS RSS Database Optimized Databáza optimalizovaná Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 Databáza úspešne zoptimalizovaná.<br/><br/><b>Veľkosť databázy pred: </b>%1<br/><b>Veľkosť databázy po: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Vydané pre</b> Common Name (CN): Bežné meno (CN): Organization (O): Organizácia (O): Organizational Unit (OU): Organizačná jednotka (OU): Serial Number: Sériové číslo: <b>Issued By</b> <b>Vydal</b> <b>Validity</b> <b>Platnosť</b> Issued On: Vydané dňa: Expires On: Platný do: ClearPrivateData Clear Recent History Vymazať nedávnu históriu Choose what you want to delete: Vyberte, čo chcete vymazať: Clear history Vymazať históriu Clear cache Vymazať vyrovnávaciu pamäť Clear icons Vymazať ikony <b>Clear Recent History</b> <b>Vymazať nedávnu históriu</b> Earlier Today Dnes Week Týždeň Month Mesiac All Všetko Clear web databases Vymazať webové databázy Clear local storage Vymazať lokálne úložiská Clear cookies Vymazať cookies ClickToFlash Object blocked by ClickToFlash Objekt blokovaný ClickToFlash pluginom Show more information about object Zobraziť viacej informácií o objekte Delete object Vymazať objekt Add %1 to whitelist Pridať %1 na zoznam výnimiek Flash Object Flash objekt <b>Attribute Name</b> <b>Názov atribútu</b> <b>Value</b> <b>Hodnota</b> No more information available. Žiadne ďalšie informácie. CookieManager Cookies Cookies Stored Cookies Uložené cookies Find: Nájsť: These cookies are stored on your computer: Tieto cookies sú uložené na vašom počítači: Server Server Cookie name Názov cookie Name: Názov: Value: Hodnota: Server: Server: Path: Cesta: Secure: Zabezpečenie: Expiration: Platnosť do: <cookie not selected> <nebolo vybraté cookie> Remove all cookies Odstrániť všetky cookies Remove cookies Odstrániť cookies Cookie Filtering Filtrovanie cookies <b>Cookie whitelist</b> <b>Biela listina</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Cookies z týchto serverov budú VŽDY uložené (aj keď máte zakázané ukladanie cookies) Add Pridať Remove Odstrániť <b>Cookie blacklist</b> <b>Čieran listina</b> Cookies from these servers will NEVER be accepted Cookies z týchto serverov budú VŽDY odmietnuté Settings Nastavenia <b>Cookie Settings</b> <b>Nastavenia cookies</b> Allow storing of cookies Povoliť ukladanie cookies Delete cookies on close Pri zavretí vymazať cookies Match domain exactly Vyžadovať presnú zhodu domény Filter tracking cookies Filtrovať sledovacie cookies <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! Search Hľadať Confirmation Potvrdenie Are you sure to delete all cookies on your computer? Ste si istý, že chcete vymazať všetky cookies z vášho počítača? Secure only Len zabezpečené All connections Všetky pripojenia Session cookie Cookie relácie Remove cookie Odstrániť cookie Add to whitelist Pridať do bielej listiny Add to blacklist Pridať do čiernej listiny DownloadFileHelper Save file as... Uložiť súbor ako... NoNameDownload BezNázvu DownloadItem Remaining time unavailable Zostávajúci čas neznámy Error: Cannot write to file! Chyba: Nedá sa zapisovať do súboru! Done - %1 Dokončené - %1 Cancelled Zrušené few seconds pár sekúnd %n seconds %n minutes %n hours Unknown speed Rýchslosť neznáma kB/s kB/s MB/s MB/s GB/s GB/s Unknown size Veľkosť neznáma %2 - unknown size (%3) %2 - veľkosť neznáma (%3) Remaining %1 - %2 of %3 (%4) Zostáva %1 - %2 z %3 (%4) Cancelled - %1 Zrušene - %1 Delete file Vymazať súbor Do you want to also delete dowloaded file? Chcete vymazať sťahovaný súbor? Open File Otvoriť súbor Open Folder Otvoriť priečinok Go to Download Page Prejsť na stránku sťahovania Copy Download Link Skopírovať odkaz sťahovania Cancel downloading Zrušiť sťahovanie Remove Odstrániť Error Chyba Not found Nenájdené Sorry, the file %1 was not found! Prepáčte, súbor %1 nebol nájdený! Error: Chyba: DownloadManager Download Manager Správca sťahovania Clear Vyčistiť %1% of %2 files (%3) %4 remaining %1% z %2 súborov (%3) %4 zostávajú %1% - Download Manager %1% - Správca sťahovania Download Finished Sťahovanie dokončené All files have been successfully downloaded. Všetky súbory boli úspešne stiahnuté. Warning Varovanie Are you sure to quit? All uncompleted downloads will be cancelled! Ste si istý, že chcete ukončiť? Všetky nedokončené sťahovania budú zrušené! DownloadOptionsDialog Opening Otvára sa Copy download link You have chosen to open Vybrali ste otvoriť which is a: ktorý je: What should QupZilla do with this file? Čo by mala QupZilla urobiť s týmto súborom? Open... Otvoriť... Save File Uložiť súbor Download with External Manager Stiahnuť pomocou externého manažéra from: z: Opening %1 Otvára sa %1 Download link copied. EditSearchEngine Name: Názov: Url: Url: Shortcut: Skratka: Icon: Ikona: <b>Note: </b>%s in url or post data represent searched string Post Data: Change... Zmeniť... FileSchemeReply No Error Žiadna chyba Up to higher level directory O priečinok vyššie Show hidden files Zobraziť skryté súbory Name Meno Size Veľkosť Last modified Zmenené Index for %1 Index pre %1 Folder is empty. Priečinok je prázdny. FtpDownloader Cancelled! Zrušené! FtpSchemeReply Up to higher level directory O priečinok vyššie Show hidden files Zobraziť skryté súbory Name Meno Size Veľkosť Last modified Posledná úprava Index for %1 Zoznam pre %1 Folder is empty. Priečinok je prázdny. Unknown command Neznámy príkaz HTML5PermissionsDialog HTML5 Permissions HTML5 oprávnenia Notifications Oznámenia Site Stránka Behaviour Správanie Remove Odstrániť Geolocation Geolocation Allow Povoliť Deny Zakázať HTML5PermissionsNotification Remember Zapamätať Allow Povoliť Deny Zakázať this site táto stránka Allow %1 to show desktop notifications? Povoliť %1 zobrazovanie oznámení na ploche? Allow %1 to locate your position? Povoliť %1 zistiť vašu polohu? History No Named Page Stránka bez mena January Január February Február March Marec April Apríl May Máj June Jún July Júl August August September September October Október November November December December HistoryManager History História Delete Vymazať Clear All History Vymazať celú históriu Optimize Database Optimalizovať databázu Confirmation Potvrdenie Are you sure to delete all history? Ste si istý, že chcete vymazať celú históriu? HistoryModel Title Názov Address Adresa Visit Date Dátum návštevy Visit Count Počet návštev Today Dnes This Week Tento týždeň This Month Tento mesiac HistorySideBar Search... Hľadať... HistoryView Open link in current tab Otvoriť odkaz v aktuálnej karte Open link in new tab Otvoriť odkaz na novej karte Copy title Kopírovať názov Copy address Kopírovať adresu Remove Odstrániť IconChooser Choose icon... Vyberte ikonu... From file Zo súboru Image (.png, .jpg, .jpeg, .gif) Obrázok (.png, .jpg, .jpeg, .gif) Choose file... Vyberte súbor... From database Z databázy Site Url: Adresa stránky: Image files Obrázky JsOptions JavaScript Options Nastavenia JavaSkriptu Allow JavaScript to: Povoliť JavaSkriptu: Close windows Zavrieť okno Open popup windows Otvárať vyskakovacie okná Change window size Zmeniť veľkosť okna Hide menu bar Skryť panel ponuky Hide status bar Skryť stavový riadok Hide tool bar Skryť panel nástrojov Access clipboard Pristupovať do schránky LicenseViewer License Viewer Prehliadač licencie LocationBar Enter URL address or search on %1 Zadajte URL adresu alebo vyhľadajte na %1 Paste And &Go Vložiť a ísť &na Clear All Všetko vymazať .co.uk Append domain name on ALT + Enter = Should be different for every country .sk Show information about this page Zobraziť informácie o tejto stránke LocationCompleterView Switch to tab Prepnúť kartu MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? QupZilla nie je momentálne predvoleným prehliadačom. Chcete nastaviť QupZillu ako predvolený prehliadač? Always perform this check when starting QupZilla. Kontrolovať pri každom spustení aplikácie. Default Browser Predvolený prehliadač QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. QupZilla je nový, rýchly a bezpečný open-source WWW prehliadač. QupZilla je licencovaná pod GPL verziou 3 alebo (podľa vašej voľby) akejkoľvek vyššej verzie. Prehliadač je založený na jádre WebKit a Qt Frameworku. MasterPasswordDialog Encrypted DataBase Settings Nastavenia šifrovanej databázy Set/Change Master Password... Nastaviť/zmeniť hlavné heslo... Clear Master Password... Odstrániť hlavné heslo... This backend does not work without a master password. Tento backend bez hlavného hesla nepracuje. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. Táto možnosť odstráni hlavné heslo a presunie všetky zašifrované dáta do backendu "Databáza (čistý text)", a prepne doňho. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Hlavné heslo sa používa na ochránenie hesiel k stránkam a vyplnených údajov. Ak nastavíte hlavné heslo, budete vyzvaný k jeho zadaniu raz za reláciu. Current Password: Aktuálne heslo: New Password: Nové heslo: Confirm Password: Potvrďte heslo: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. <b>Upozornenie:</b> Hlavné heslo nie je zresetovateľné. Nezabudnite ho, prosím. Warning! Varovanie! You entered a wrong password! Zadali ste zlé heslo! New/Confirm password fields do not match! Nové a potvrdené heslo sa nezhodujú! Some data has not been decrypted. The master password was not cleared! Niektoré dáta neboli odšifrované. Hlavné heslo nebolo odstránené! Are you sure to clear master password and decrypt data? Ste si istý, že chcete odstrániť hlavné heslo a odšifrovať dáta? NavigationBar No Named Page Stránka bez názvu Back Späť Forward Dopredu Home Domov New Tab Nová karta Main Menu Hlavné menu Exit Fullscreen Ukončiť režim celej obrazovky Clear history Vymazať históriu NetworkManager SSL Certificate Error! Chyba SSL certifikátu! The page you are trying to access has the following errors in the SSL certificate: Stránka, ktorú sa snažíte zobraziť obsahuje nasledujúce chyby v SSL certifikáte: <b>Organization: </b> <b>Organizácia: </b> <b>Domain Name: </b> <b>Názov domény: </b> <b>Expiration Date: </b> <b>Platnosť do: </b> <b>Error: </b> <b>Chyba: </b> Would you like to make an exception for this certificate? Chcete prideliť výnimku tomuto certifikátu? Authorisation required Požadovaná autorizácia Username: Meno používateľa: Password: Heslo: Save username and password on this site Uložiť meno a heslo pre túto stránku A username and password are being requested by %1. The site says: "%2" %1 požaduje meno používateľa a heslo. Stránka hovorí: "%2" FTP authorisation required Požadovaná FTP autoizácia Login anonymously Anonymné prihlásenie A username and password are being requested by %1:%2. Server %1:%2 požaduje užívateľské meno a heslo. Proxy authorisation required Vyžadovaná proxy autorizácia Remember username and password for this proxy. A username and password are being requested by proxy %1. Proxy %1 požaduje meno používateľa a heslo. PageScreen Page Screen Obraz stránky Format: Formát: Location: Umiestnenie: Browse... Prehľadávať... Save as %1 Uložiť ako %1 Choose location... Vybrať umiestnenie: File '%1' already exists. Do you want to overwrite it? Súbor '%1' už existuje. Chcete ho prepísať? File already exists Súbor už existuje. PluginsList Application Extensions Rozšírenia programu Allow Application Extensions to be loaded Povoliť načítanie rozšírení programu Settings Nastavenia WebKit Plugins WebKit pluginy <b>Click To Flash Plugin</b> <b>Click To Flash Plugin</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Click To Flash je plugin, ktorý blokuje automatické načítavanie Flash obsahu na stánke. Vždy ho môžete dať načítať manuálne kliknutím na play ikonku Flashu. Whitelist Zoznam výnimiek Add Pridať Remove Odstrániť Allow Click To Flash Povoliť Click To Flash PluginsManager Add site to whitelist Pridať stránku do zoznamu výnimiek Server without http:// (ex. youtube.com) Server bez http:// (napr. youtube.com) Error! Chyba! Cannot load extension! Nemožno načítať rozšírenie! PopupWebView Inspect Element Skontrolujte prvok PopupWindow File Súbor &Save Page As... &Uložiť stránku ako... Save Page Screen Uložiť snímku stránky Send Link... Odoslať odkaz... &Print... &Tlačiť... Close Zavrieť Edit Upraviť &Undo &Späť &Redo &Vpred &Cut &Vystrihnúť C&opy &Kopírovať &Paste &Prilepiť Select All Vybrať všetko Find Nájsť View Zobraziť &Stop &Zastaviť &Reload &Obnoviť Zoom &In Zoo&m + Zoom &Out Z&oom - Reset Pôvodný &Page Source Zdrojový &kód stránky %1 - QupZilla %1 - QupZilla Preferences Preferences Nastavenia QupZilla QupZilla General Všeobecné Appearance Vzhľad Tabs Karty Browsing Prehliadanie Fonts Písma Keyboard Shortcuts Klávesové skratky Downloads Sťahovanie Password Manager Správca hesiel Privacy Súkromie Notifications Oznámenia Extensions Rozšírenia Other Ostatné Use current Použiť aktuálnu Note: You cannot delete active profile. Poznámka: Nemôžete vymazať aktívny profil. Create New Vytvoriť nový Delete Odstrániť <b>Launching</b> <b>Spúšťanie</b> After launch: Po spustení: Open blank page Otvoriť prázdnu stránku Open homepage Otvoriť domovskú stránku Open speed dial Otvoriť rýchlu voľbu Restore session Obnoviť reláciu Homepage: Domovská stránka: On new tab: Na novej karte: Open blank tab Otvoriť prázdnu stránku Open other page... Otvoriť inú stránku... <b>Profiles</b> <b>Profily</b> Startup profile: Štartový profil: Check for updates on start Kontrolovať aktualizácie pri spustení Active profile: Aktivovať profil: In order to change language, you must restart browser. Pre zmenu jazyka musíte reštartovať prehliadač. <b>Language</b> <b>Jazyk</b> Available translations: Dostupné preklady: Don't load tabs until selected Nenačítať karty kým nie sú vybrané Check to see if QupZilla is the default browser on startup Kontrolovať pri spustení, či je QupZilla predvoleným prehliadačom Check Now Skontrolovať teraz Themes Témy Advanced options Pokročilé nastavenia <b>Browser Window</b> <b>Okno prehliadača</b> Show StatusBar on start Zobraziť stavový riadok pri spustení Show Bookmarks ToolBar on start Zobraziť panel záložiek pri spustení Show Navigation ToolBar on start Zobraziť navigačný panel pri spustení <b>Navigation ToolBar</b> <b>Navigačný panel</b> Show Home button Zobraziť tlačidlo Domov Show Back / Forward buttons Zobraziť tlačidlá Späť / Dopredu <b>Background<b/> <b>Pozadie<b/> Use transparent background Použiť priesvitné pozadie Show web search bar Zobraziť vyhľadávací riadok Show Add Tab button Zobraziť tlačidlo Pridať kartu Show Reload / Stop buttons Zobraziť tlačítka Obnoviť / Zastaviť Tabs behaviour Správanie kariet Show tab previews Zobraziť náhľad kariet Make tab previews animated Animovať náhľady kariet Hide tabs when there is only one tab Skryť zoznam kariet, keď je otvorená len jedna karta Activate last tab when closing active tab Aktivovať naposledy pozeranú kartu po zavretí aktuálnej Open new tabs after active tab Otvárať nové karty za aktívnou kartou Open new empty tabs after active tab Otvoriť nové prázdne karty za aktívnou kartou Automatically switch to newly opened tab Automaticky prepnúť na novo otvorenú kartu Don't quit upon closing last tab Neukončiť pri zatvorení poslednej karty Ask when closing multiple tabs Pýtať sa pri zatváraní viacerých kariet Closed tabs list instead of opened in tab bar Zoznam zatvorených, namiesto otvorených kariet v paneli kariet Address Bar behaviour Správanie adresného riadku Suggest when typing into address bar: Napovedanie pri písaní v paneli adresy: History and Bookmarks História a záložky History História Bookmarks Záložky Nothing Nič Press "Shift" to not switch the tab but load the url in the current tab. Stlačte "Shift" aby ste načítali adresu v aktuálnej karte. Propose to switch tab if completed url is already loaded. Ponúkať prepnutie na kartu ak je adresa stránky už načítaná. Always show go icon Vždy zobraziť ikonu Prejsť Select all text by double clicking in address bar Označiť všetok text dvojitým kliknutím do panelu adresy Select all text by clicking in address bar Označiť všetok text kliknutím do panelu adresy Search with Default Engine Vyhľadávať pomocou predvoleného prehliadača Show loading progress in address bar Zobraziť priebeh načítavania v adresnom riadku Fill Vyplniť Bottom Dole Top Navrchu Custom color: Vlastná farba: Select color Vyberte farbu ... ... Reset Pôvodný Web Configuration Konfigurácia webu Allow Netscape Plugins (Flash plugin) Povoliť Netscape pluginy (Flash plugin) Allow JavaScript Povoliť JavaScript Allow JAVA Povoliť JAVU Allow DNS Prefetch Povoliť DNS Prefetch Enable XSS Auditing try to detect possible XSS attacks when executing javascript Povoliť kontrolu XSS Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Tlačiť pozadie prvkov Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Označovať odkazy tabulátorom Animated scrolling Animované posúvanie Enable caret browsing Zapnúť prechádzanie stránky Enable spatial navigation Povoliť priestorovú navigáciu Zoom text only Približovať len text Mouse wheel scrolls Koliesko myši posunie lines on page riadky na stránke Default zoom on pages: Predvolené priblíženie stránok: Local Storage Lokálne úložisko Maximum Maximálne 50 MB 50 MB 1 1 Maximum pages in cache: Maximum stránok v cache: Allow storing network cache on disk Povoliť ukladanie sieťovej cache na disk Store cache in: Uložiť cache v: Allow saving history Povoliť ukladanie histórie Delete history on close Vymazať históriu pri zatvorení Allow local storage of HTML5 web content Povoliť HTML 5 lokálne úložisko Delete locally stored HTML5 web content on close Zmazať lokálne úložisko pri zatváraní prehliadača Delete now Vymazať teraz Proxy Configuration Konfigurácia proxy Proxy Auto-Config (.pac) file Súbor automatickej konfigurácie proxy (.pac) Reload Načítať znovu HTTP HTTP SOCKS5 SOCKS5 Port: Port: Username: Meno: Password: Heslo: Don't use on: Nepoužívať na: Manual configuration Ručné nastavenie System proxy configuration Systémové nastavenia proxy Do not use proxy Nepoužívať proxy <b>Exceptions</b> <b>Výnimky</b> Server: Server: Use different proxy for https connection Použiť iný proxy pre https pripojenie Use script for automatic configuration: Použiť skript pre automatickú konfiguráciu: <b>Font Families</b> <b>Typy písiem</b> Standard Štandardné Fixed Neproporcionálne Serif Serif Sans Serif Sans Serif Cursive Kurzíva Fantasy Fantasy <b>Font Sizes</b> <b>Veľkosti písma</b> Fixed Font Size Proporcionálne písmo Default Font Size Predvolená veľkosť písma Minimum Font Size Minimálna veľkosť Minimum Logical Font Size Minimálna logická veľkosť <b>Shortcuts</b> <b>Skratky</b> Switch to tabs with Alt + number of tab Prepínať na karty pomocou Alt + poradie karty Load speed dials with Ctrl + number of speed dial Načítať stránky pomocou rýchlej voľby Ctrl + poradie voľby Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>Umiestnenie sťahovania</b> Ask everytime for download location Vždy sa opýtať kam súbor uložiť Use defined location: Uložiť všetky súbory do: <b>Download Options</b> <b>Možnosti sťahovania</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Použiť natívny systémový súborový dialóg (môže - nemusí robiť problémy pri sťahovaní SSL zabezpečeného obsahu) Close download manager when downloading finishes Zavrieť správcu sťahovania po ukončení sťahovania <b>External download manager</b> <b>Externý správca sťahovania</b> Use external download manager Používať externého správcu sťahovania Executable: Program: Arguments: Argumenty: Leave blank if unsure Ak si nie ste istý, nevyplňujte <b>%d</b> will be replaced with URL to be downloaded <b>%d</b> bude nahradené s URL adresou k stiahnutiu <b>AutoFill options</b> <b>Možnosti autodoplňovania</b> Allow saving passwords from sites Povoliť ukladanie hesiel zo stránok Send Referer header to servers Zasielať servrom Referer hlavičku <b>Cookies</b> <b>Cookies</b> Send Do Not Track header to servers Zasielať servrom Do Not Track hlavičku <b>Other</b> <b>Ostatné</b> Manage CA certificates Spravovať CA certifikáty Certificate Manager Správca certifikátov <b>SSL Certificates</b> <b>SSL Certifikáty</b> <b>JavaScript</b> <b>JavaSkript</b> Manage JavaScript privacy options Spravovať nastavenia súkromia JavaSkriptu JavaScript options Nastavenia JavaSkriptu Cookies Manager Správca cookies Manage Cookies Spravovať cookies <b>HTML5 Permissions</b> <b>Povolenia HTML5</b> Manage HTML5 permissions Spravovať HTML5 povolenia HTML5 Permissions HTML5 oprávnenia <b>Notifications</b> <b>Oznámenia</b> Use OSD Notifications Použiť OSD oznámenia Use Native System Notifications (Linux only) Používať natívne systémové oznámenia (len pre Linux) Do not use Notifications Nepoužívať oznámenia Expiration timeout: Doba zobrazenia: seconds sekúnd <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Poznámka: </b>Môžte zmeniť pozíciu OSD oznámenia pretiahnutím ho na obrazovke. StyleSheet automatically loaded with all websites: Štýl automaticky načítať so všetkámi stránkami: Languages Jazyky <b>Preferred language for web sites</b> <b>Preferovaný jazyk pre webové stránky</b> <b>Change browser identification</b> <b>Zmeniť identifikáciu prehliadača</b> User Agent Manager User Agent Správca Default Predvolené Set as default Nastaviť ako predvolené OSD Notification OSD oznámenia Drag it on the screen to place it where you want. Pretiahnete ho na obrazovke na miesto, kde ho chcete mať. Choose download location... Vyberte umiestnenie pre sťahovanie... Choose stylesheet location... Vyberte umiestnenie štýlu... Deleted Vymazaný Choose executable location... Vyberte cestu k programu... Choose cache path... Vyberte cestu ku cache... New Profile Nový profil Enter the new profile's name: Zadajte názov nového profilu: Error! Chyba! This profile already exists! Tento profil už existuje! Cannot create profile directory! Nedá sa vytvoriť priečinok profilu! Confirmation Potvrdenie Are you sure to permanently delete "%1" profile? This action cannot be undone! Ste si istý, že chcete trvalo vymazať profil "%1"? Táto akcia sa nebude dať vrátiť späť! Select Color Vyberte farbu QObject Native System Notification Nativné systémové oznámenie Save file as... Uložiť súbor ako... The file is not an OpenSearch 1.1 file. Tento súbor nie je kompatibilný s OpenSearh 1.1. <not set in certificate> <nie je súčasťou certifikátu> Unknown size Neznáma veľkosť KB kB MB MB GB GB Executable: Program: Arguments: Argumenty: Cannot start external program Nemožno spustiť externý program Cannot start external program! %1 Nemožno spustiť externý program! %1 QtWin Open new tab Otvoriť novú kartu Opens a new tab if browser is running Otvorí novú kartu ak je prehliadač spustený Open new window Otvoriť nové okno Opens a new window if browser is running Otvorí nové okno ak je prehliadač spustený Open download manager Otvoriť správcu sťahovania Opens a download manager if browser is running Otvorí správcu sťahovania ak je prehliadač spustený QupZilla QupZilla QupZilla Private Browsing Enabled Súkromné prehliadanie je zapnuté IP Address of current page IP adresa aktuálnej stránky &About QupZilla &O QupZille Pr&eferences Nastav&enia Quit Koniec &File &Súbor &New Window &Nové okno New Tab Nová karta Open Location Otvoriť umiestnenie Open &File... Otvoriť &súbor... Close Tab Zatvoriť kartu Close Window Zatvoriť okno &Save Page As... &Uložiť stránku ako... Save Page Screen Uložiť obrázok stránky Send Link... Poslať odkaz... &Print... &Tlačiť... Import bookmarks... Importovať záložky... &Edit Úpr&avy &Undo &Späť &Redo &Dopredu &Cut &Vystrihnúť C&opy &Kopírovať &Paste &Prilepiť Select &All Vybrať vš&etko &Find &Nájsť &View &Zobraziť &Navigation Toolbar Panel &navigácie &Bookmarks Toolbar Panel &záložiek Sta&tus Bar Stavový &riadok &Menu Bar &Menu panel &Tabs on Top &Karty navrchu &Fullscreen &Celá obrazovka &Stop Za&staviť &Reload &Obnoviť Character &Encoding Kódovani&e znakov Enable &Caret Browsing Zapnúť &prechádzanie stránky Toolbars Panely nástrojov Sidebars Bočné panely Zoom &In Priblíž&iť Zoom &Out &Oddialiť Reset Resetovať &Page Source Zdrojový &kód stránky Hi&story &História &Back &Späť &Forward &Dopredu &Home Do&mov Show &All History Zobraziť celú &históriu Closed Tabs Zatvorené karty Recently Visited Nedávno navštívené Most Visited Najnavštevovanejšie &Bookmarks &Záložky Bookmark &This Page Pridať túto &stránku do záložiek Bookmark &All Tabs Pridať &všetky karty do záložiek Organize &Bookmarks &Organizovať záložky &Tools &Nástroje &Web Search Hladať na &webe Page &Info &Informácie o stránke &Download Manager Správca &sťahovania &Cookies Manager Správca &cookies &AdBlock &AdBlock RSS &Reader &RSS čítačka Web In&spector Web In&špektor Clear Recent &History Vymazať nedávnu &históriu New &Private Window Nové okno súkromného &prehliadania &Help Nápo&veda About &Qt O &Qt Information about application Informácie o aplikácií Configuration Information Informácie o konfigurácií Report &Issue Nahlásiť &problém Restore &Closed Tab Obnoviť zatvorenú &kartu (Private Browsing) (Súkromné prehliadanie) Empty Prázdne Restore All Closed Tabs Obnoviť všetky zatvorené karty Clear list Vyčistiť zoznam Other Ostatné %1 - QupZilla %1 - QupZilla HTML files HTML súbory Image files Obrázky Text files Textové súbory All files Všetky súbory Open file... Otvoriť súbor... QupZilla %1 (%2) QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Stále je otvorených %1 kariet, ale Vaša relácia nebude uložená. Ste si istý, že chcete ukončiť QupZillu? Don't ask again Znovu sa už nepýtať There are still open tabs Stále sú otvorené karty QupZillaSchemeReply No Error Žiadna chyba Not Found Nenájdené Report Issue Nahlásiť problém If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Pokiaľ máte problém s používaním QupZilly, zakážte prosím všetky doplnky. <br/> Pokiaľ problém pretrváva, vyplňte tento formulár: Your E-mail Váš E-mail Issue type Typ problému Issue description Popis problému Send Odoslať E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. E-mail je nepovinný<br/><b>Poznámka: </b>Prosím,najskôr si <a href=%1>tu</a> prečítajte ako nahlásiť chybu. Please fill out all required fields! Prosím vyplňte všetky povinné polia! Start Page Štartovacia stránka Search on Web Hšadať na webe Search results provided by DuckDuckGo Výsledky hľadania poskytuje DuckDuckGo About QupZilla O QupZille <h1>Private Browsing</h1> <h1>Súkromné prehliadanie</h1> Information about version Informácie o verzii Copyright Copyright Version Verzia WebKit version Verzia WebKitu Main developer Hlavný vývojár Contributors Prispievatelia Translators Prekladatelia Speed Dial Rýchla voľba Add New Page Pridať novú stránku Edit Upraviť Remove Odstrániť Reload Obnoviť Are you sure to remove this speed dial? Ste si istý, že chcete zmazať túto stránku? Load title from page Načítať názov zo stránky Url Url Title Názov Apply Uložiť Close Zatvoriť New Page Nová stránka Speed Dial settings Nastavenie rýchlej voľby Placement: Umiestnenie: Auto Auto Cover Krytie Fit Prispôsobiť Fit Width Prispôsobiť sa šírke Fit Height Prispôsobiť sa výške Use background image Použiť obrázok na pozadí Select image Vybrať obrázok Maximum pages in a row: Maximálny počet stránok v rade: Change size of pages: Zmeniť veľkosť stránok: Center speed dials Vycentrovať náhľady stránok Restore Session Obnoviť reláciu Oops, QupZilla crashed. Oops, QupZilla spadla. We apologize for this. Would you like to restore the last saved state? Ospravedlňujeme sa. Chcete obnoviť poslednú uloženú reláciu? Try removing one or more tabs that you think cause troubles Skúste odstrániť jednu alebo viac kariet, o ktorých si myslíte, že môžu spôsobovať problémy Or you can start completely new session Alebo môžete začať úplne novú reláciu Configuration Information Informácie o konfigurácií This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Táto stránka obsahuje informácie o aktuálnej konfigurácii QupZilly - dôležité informácie k riešeniu problémov. Priložte prosím tieto informácie k hláseniu problémov. Browser Identification Identifikácia prehliadača Paths Cesty Build Configuration Konfigurácia zostavenia Preferences Nastavenia Option Možnosť Value Hodnota Extensions Rozšírenia Name Meno Author Autor Description Popis Application version Verzia aplikácie Qt version Verzia QT Build time Zostavené Platform Platforma Profile Profil Settings Nastavenia Saved session Uložené relácie Pinned tabs Pripnuté karty Data Dáta Themes Témy Translations Preklady Disabled Zakázané <b>Enabled</b> <b>Povolené</b> Debug build Debug nastavenia WebGL support Podpora WebGL Windows 7 API Windows 7 API KDE integration KDE integrácia Portable build Portable zostavenie No available extensions. Žiadne dostupné doplnky. RSSManager RSS Reader RSS čítačka Empty Prázdne Add feed Pridať kanál Edit feed Upraviť odber Delete feed Vymazať odber Optimize Database Optimalizovať databázu Reload Obnoviť News Novinky Loading... Načítava sa... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Nemáte žiadne RSS odbery.<br/> Prosím pridajte nejaké kliknutím na RSS ikonku v navigačnom paneli na stránke ktorá poskytuje odbery. Add new feed Pridať nový kanál Please enter URL of new feed: Prosím zadajte URL nového kanálu: New feed Nový kanál Fill title and URL of a feed: Vyplňte názov a URL odberu: Feed title: Názov odberu: Feed URL: URL odberu: Edit RSS Feed Upraviť RSS odber Open link in current tab Otvoriť odkaz v aktuálnej karte Open link in new tab Otvoriť odkaz na novej karte Error in fetching feed Chyba pri získavaní odberu RSS feed duplicated Duplikovaný RSS odber You already have this feed. Tento odber už máte. RSSNotification Add this feed into Pridať tento kanál do Add Pridať RSS feed <b>"%1"</b> RSS kanál <b>"%1"</b> Internal Reader Interná čítačka Other... Ostatné... Liferea not running Liferea nie je spustená Liferea must be running in order to add new feed. Liferea musí byť spustená, aby bolo možné pridať nový kanál. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Pre pridanie tohto RSS kanálu do inej aplikácie použijete tieto informácie:<br/><br/><b>Názov: </b>%1<br/><b>Url: </b>%2<br/><br/>Url adresa tohto kanálu bola skopírovaná do schránky. Add feed into other application Pridať kanál do inej aplikácie RSSWidget Add RSS Feeds from this site Pridať RSS odber z tejto stránky Untitled feed Kanál bez názvu Add Pridať RecoveryWidget Start New Session Začať novú reláciu Restore Obnoviť Window %1 Okno %1 RegisterQAppAssociation Warning! Upozornenie! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) Vyskytol sa problém. Skuste preinštalovať QupZillu. Je tiež možné, že spustením QupZilly v administratórskom režíme sa tento problém vyrieši!;) RssIcon Add RSS from this page... Pridať RSS kanál z tejto stránky... SSLManager Certificate Manager Správca certifikátov CA Authorities Certificates Certifikáty CA autorít Show info Zobraziť informácie This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Toto je zoznam certifikátov CA autorít uložených v štandardných systémových a používateľom špecifikovaných cestách. Local Certificates Lokálne certifikáty Import Importovať Remove Odobrať This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Toto je zoznam lokálnych certifikátov uložených v používateľovom profile. Tento zoznam taktiež obsahuje všetky certifikáty, ktoré obdržali výnimku. Settings Nastavenia Add Pridať If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Ak neboli certifikáty CA autorít automaticky načítané zo systému, môžete manuálne špecifikovať cesty, kde sú certifikáty uložené. <b>NOTE:</b> Setting this option is a high security risk! <b>Poznámka:</b> Zaškrtnutím tejto možnosti je veľké bezpečnostné riziko! Ignore all SSL Warnings Ignorovať všetky SSL varovania All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Všetky certifikáty musia mať príponu .crt. Po pridaní či odobratí ciest k certifikátom je nutné reštartovať prehliadač pre nadobudnutie zmien. Choose path... Vyberte cestu... Import certificate... Importovať certifikát... Certificate Informations Informácie o certifkáte SearchEnginesDialog Manage Search Engines Spravovať vyhľadávače Add... Pridať... Remove Odstrániť Edit Upraviť Set as default Nastaviť ako predvolený Up Vyššie Down Nižšie Search Engine Vyhľadávač Shortcut Zástupca Defaults Predvolené Add Search Engine Pridať vyhľadávač Remove Engine Odstrániť vyhľadávač You can't remove the default search engine.<br>Set a different engine as default before removing %1. Nie je možné odstrániť predvolený prehliadač. <br>Nastavte iný prehliadač ako predvolený pred odstránením %1. Edit Search Engine Upraviť vyhľadávač SearchEnginesManager Search Engine Added Pridaný vyhľadávač Search Engine "%1" has been successfully added. Vyhľadávač "%1" bol úspešne pridaný. Search Engine is not valid! Vyhľadávač nie je platný! Error Chyba Error while adding Search Engine <br><b>Error Message: </b> %1 Chyba pri pridávaní vyhľadávača <br><b>Chybová správa: </b> %1 SearchToolBar No results found. Žiadne výsledky. SearchToolbar Search: Hľadať: Search... Hľadať... Highlight Zvýrazniť Case sensitive Rozlišovať veľkosť SideBar Bookmarks Záložky History História SiteInfo Site Info Informácie o stránke General Všeobecné Media Médiá Databases Databázy Security Zabezpečenie Size: Veľkosť: Site address: Adresa stránky: Encoding: Kódovanie: Meta tags of site: Meta tagy stránky: Tag Tag Value Hodnota <b>Security information</b> <b>Informácie o zabezpečení</b> Details Podrobnosti Image Obrázok Image address Adresy obrázkov <b>Preview</b> <b>Náhľad</b> <b>Database details</b> <b>Detaily databázy</b> Name: Názov: Path: Cesta: <database not selected> <nebola vybratá databáza> <not set in certificate> <nie je súčasťou certifikátu> No databases are used by this page. Táto stránka nepoužíva žiadnu databázu. <b>Connection is Encrypted.</b> <b>Pripojenie je zabezpečené.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Vaše pripojenie na túto stránku je zabezpečené certifikátom: </b> <b>Connection Not Encrypted.</b> <b>Pripojenie nie je zabezpečené.</b> <b>Your connection to this page is not secured!</b> <b>Vaše pripojenie na túto stránku nie je zabezpečené!</b> Copy Image Location Kopírovať adresu obrázku Copy Image Name Kopírovať názov obrázku Save Image to Disk Uložiť obrázok na disk Error! Chyba! This preview is not available! Tento náhlad nie je k dispozícií! Save image... Uložiť obrázok... Cannot write to file! Nedá sa zapisovať do súboru! Preview not available Náhlad nie je k dispozícií SiteInfoWidget More... Viac... Your connection to this site is <b>secured</b>. Vaše pripojenie na túto stránku je <b>zabezpečené</b>. Your connection to this site is <b>unsecured</b>. Vaše pripojenie na túto stránku je <b>nezabezpečené</b>. This is your <b>%1</b> visit of this site. Toto je vaša <b>%1</b> návšteva tejto stránky. You have <b>never</b> visited this site before. Túto stránku ste <b>nikdy</b> predtým nenavštívili. first prvá second druhá third tretia SourceViewer Source of Zdrojový kód File Súbor Load in page Načítať v stránke Save as... Uložiť ako... Close Zatvoriť Edit Úpravy Undo Späť Redo Dopredu Cut Vystrihnúť Copy Kopírovať Paste Prilepiť Select All Vybrať všetko Find Nájsť Go to Line... Prejsť na riadok... View Zobraziť Reload Obnoviť Editable Povoliť úpravy Word Wrap Zalamovať riadky Source loaded in page Načítaný zdroj v stránke Cannot load in page. Page has been closed. Nemožno načítať stránku. Stránka bolo zavretá. Save file... Uložiť súbor... Error! Chyba! Cannot write to file! Nedá sa zapisovať do súboru! Error writing to file Chyba pri zapisovaní do súboru Source successfully saved Zdrojový kód úspečne uložený Source reloaded Zdrojový kód obnovený Cannot reload source. Page has been closed. Nemožno obnoviť zdroj. Stránka bola zavretá. Editable changed Povolenie úprav zmenené Word Wrap changed Zalamovanie riadkov zmenené Enter line number Zadajte číslo riadku SourceViewerSearch Search: Hľadať: Search... Hľadať... Whole words Celé slová SpeedDial Image files Obrázky Select image... Vybrať obrázok... Unable to load Nepodarilo sa načítať SpellCheckDialog SpellCheck Kontrola pravopisu <b>Dictionary path</b> <b>Cesta k slovníku</b> Change... Zmeniť... <b>User dictionary</b> <b>Užívateľský slovník</b> Add Pridať Remove Odstrániť Using Hunspell library Používať knižnicu Hunspell Choose dictionary path... Vyberte cestu k slovníku... Add new word... Pridať nové slovo... Add new word: Pridať nové slovo: Speller No suggestions Žiadne návrhy Add to dictionary Pridať do slovníka Settings Nastavenia SqueezeLabelV2 Copy Kopírovať SslErrorDialog SSL Certificate Error! Only for this session TabBar &New tab &Nová karta &Stop Tab &Zastaviť kartu &Reload Tab &Obnoviť kartu &Duplicate Tab &Duplikovať kartu D&etach Tab V&yňať kartu Un&pin Tab Odo&pnúť kartu &Pin Tab Pri&pnúť kartu Re&load All Tabs Obnoviť všet&ky karty &Bookmark This Tab Pridať do záložiek &túto kartu Bookmark &All Tabs Pridať do záložiek &všetky karty Close Ot&her Tabs Zatvo&riť ostatné karty Cl&ose Zatvor&iť Reloa&d All Tabs Obnoviť všet&ky karty Restore &Closed Tab Obnoviť zatvorenú &kartu Close Tabs Do you really want to close other tabs? TabWidget New Tab Nová karta List of tabs Zoznam kariet Loading... Načítava sa... No Named Page Nepomenovaná tránka Currently you have %1 opened tabs Momentálne máte otvorených %1 kariet New tab Nová karta Empty Prázdny Restore All Closed Tabs Obnoviť všetky zatvorené karty Clear list Vyčistiť zoznam TabbedWebView Loading... Načítam... %1 - QupZilla %1 - QupZilla Inspect Element Skontrolovať objekt ThemeManager <b>Name:</b> <b>Názov:</b> <b>Author:</b> <b>Autor:</b> <b>Description:</b> <b>Popis:</b> License Licencia ToolButton Stop Zastaviť Reload Obnoviť Updater Update available Je dostupná aktualizácia New version of QupZilla is ready to download. Nová verzia QupZilly je pripravená na stiahnutie. Update Aktualizovať UserAgentDialog User Agent Manager User Agent Správca Change global User Agent Zmeniť globálny User Agent Use different User Agents for specified sites Používať rôzne User Agenty pre zvolené stránky Site Stránka User Agent User Agent Add Pridať Remove Odstrániť Edit Upraviť Add new site Pridať novú stránku Edit site Upraviť stránku Site domain: Doména stránky: User Agent: User Agent: WebInspectorDockWidget Web Inspector Web inšpektor WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? QupZilla nemôže otvoriť <b>%1:</b> odkazy. Vyžiadany odkaz je <ul><li>%2</li></ul>Chcete aby QupZila otvorila tento odkaz v systémovej aplikácií? Remember my choice for this protocol Zapamätať moju výber pre tento protokol External Protocol Request Externý protokol To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Pre zobrazenie tejto stránky musí QupZilla znovu odoslať požiadavku na server (ako napr. hľadanie pri nakupovaní, ktoré už prebehlo) Confirm form resubmission Potvrdenie opätovného zaslania formuláru Select files to upload... Vybrať súbory na nahratie... Server refused the connection Server odmietol spojenie Server closed the connection Server ukončil spojenie Server not found Server nenájdený Connection timed out Spojenie vypršalo Untrusted connection Nedôveryhodné spojenie Temporary network failure Dočasná chyba siete Proxy connection refused Proxy server odmietol spojenie Proxy server not found Proxy server nenájdený Proxy connection timed out Vypršal čas proxy pripojenia Proxy authentication required Požadovaná proxy autorizácia Content not found Nenájdený obsah Unknown network error Neznáma sieťová chyba AdBlocked Content AdBlock obsah Blocked by <i>%1</i> Blokované s <i>%1</i> Content Access Denied Prístup k obsahu odmietnutý Error code %1 Chybový kód %1 Failed loading page Zlyhalo načítanie stránky QupZilla can't load page. QupZilla nemôže načítať stránku. QupZilla can't load page from %1. QupZilla nemôže načítať stránku zo %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Skontrolujte, či je adresa napísaná správne a neobsahuje chyby ako <b>ww.</b>priklad.sk namiesto <b>www.</b>server.sk If you are unable to load any pages, check your computer's network connection. Ak sa vám nezobrazujú žiadne stránky, skontrolujte sieťové pripojenie vášho počítača. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Ak je váš počítač alebo sieť chránená firewallom alebo proxy severom, uistite sa že má QupZilla prístup na internet. Try Again Skúsiť znova JavaScript alert JavaScript upozornenie Prevent this page from creating additional dialogs Zabrániť tejto stránke vo vytváraní ďalších dialógov Choose file... Vybrať súbor... Cannot read data from <b>%1</b>. Upload was cancelled! Nedajú sa čítať dáta z <b>%1</b>. Odovzdávanie bolo zrušené! Cannot read file! Súbor sa nedá čítať! WebSearchBar Manage Search Engines Spravovať vyhľadávače Add %1 ... Pridať %1 ... Paste And &Search Prilepiť a &hľadať Clear All Všetko vymazať Show suggestions Zobraziť našepkávač Search when engine changed Vyhľadávať pri zmene vyhľadávača WebView No Named Page Nepomenovaná stránka Create Search Engine Vytvoriť vyhľadávač Cut Vystrihnúť Copy Kopírovať Paste Prilepiť Select All Vybrať všetko Default Predvolené Left to Right Z ľava do prava Right to Left Z prava do ľava Bold Hrubé Italic Kurzíva Underline Podčiarknuté &Reload &Obnoviť S&top Zas&taviť Delete Vymazať &Back &Späť &Forward &Dopredu This frame Tento rám Show &only this frame Zobraziť &len tento rám Show this frame in new &tab Zobraziť tento rámec na &novej karte Print frame Vytlačiť rám Zoom &in Zoo&m + &Zoom out Z&oom - Reset Resetovať Show so&urce of frame Zobraziť &zdrojový kód rámu Book&mark page Pridať s&tránku do záložiek &Save page as... Uložiť &stránku ako... &Copy page link Kpírovať &adresu stránky Send page link... Odoslať adresu stránky... &Print page &Vytlačiť stránku Select &all Vybr&ať všetko Validate page Skontrolovať stránku Show so&urce code Zobraziť zdro&jový kód Show info ab&out site Z&obraziť informácie o stránke Open link in new &tab Otvoriť odkaz na &novej karte Open link in new &window Otvoriť odkaz v novom &okne B&ookmark link Pridať &odkaz do záložiek &Save link as... &Uložiť odkaz ako... Send link... Odoslať odkaz... &Copy link address &Kopírovať adresu odkazu Show i&mage Zobraziť o&brázok Copy im&age Kopírov&ať obrázok Copy image ad&dress Kopírovať a&dresu obrázku &Save image as... &Uložiť obrázok ako... Send image... Odoslať obrázok... Send text... Poslať text... Google Translate Google Translate Dictionary Slovník Go to &web address Ísť na web&ovú adresu Search "%1 .." with %2 Hľadať "%1 .." s %2 Search with... Hľadať s... &Play &Prehrať &Pause &Pauza Un&mute &Zrušiť stíšenie &Mute &Stíšiť &Copy Media Address &Kopírovať adresu média &Send Media Address &Odoslať adresu média Save Media To &Disk &Uložiť médium na disk Check &Spelling Kontrolovať &Pravopis Languages Jazyky jsAlert Prevent this page from creating additional dialogs Zabrániť tejto stránke vo vytváraní ďalších dialógov qupzilla-1.6.0/translations/sr_BA.ts000066400000000000000000011272451226107126500174540ustar00rootroot00000000000000 AboutDialog About QupZilla О Капзили Authors Програмери Authors and Contributors Програмери и сарадници < About QupZilla < О Капзили <p><b>Application version %1</b><br/> <p><b>Издање програма %1</b><br/> <b>WebKit version %1</b></p> <b>Издање Вебкита %1</b></p> <small>Build time: %1 </small></p> <small>Датум компајлирања: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Главни програмер:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Сарадници:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Преводиоци:</b><br/>%1</p> AcceptLanguage Preferred Languages Приоритетни језици Add... Додај... Remove Уклони Up Горе Down Доље Personal [%1] Лично [%1] AdBlockAddSubscriptionDialog Add Subscription Додај претплату Title: Наслов: Address: Адреса: Add new subscription to AdBlock: Додај нову претплату на АдБлок: AdBlockCustomList Custom Rules Посебни филтери AdBlockDialog AdBlock Configuration Подешавања Адблока Enable AdBlock Укључи Адблок Search... Тражи... Options Опције AdBlock Адблок Use only essential part of EasyList (for performance reasons) Користи само суштински дио EasyList (повећава брзину учитавања) Add Rule Додај филтер Remove Rule Уклони филтер Add Subscription Додај претплату Remove Subscription Уклони претплату Update Subscriptions Ажурирај претплате Learn about writing rules... Научите правити филтере... AdBlockIcon AdBlock lets you block unwanted content on web pages Адблок вам омогућује да блокирате непожељни садржај на веб страницама Blocked popup window Блокиран искачући прозор AdBlock blocked unwanted popup window. Адблок је блокирао нежељени искачући прозор. AdBlock Адблок Show AdBlock &Settings Прикажи Адблокова &подешавања Disable on %1 Онемогући на %1 Disable only on this page Онемогући само на овој страници Blocked Popup Windows Блокирани искачући прозори %1 with (%2) %1 са (%2) No content blocked Нема блокираног садржаја Blocked URL (AdBlock Rule) - click to edit rule Блокирани УРЛ (Адблоков филтер) - кликни да уредиш филтер AdBlockManager Do you want to add <b>%1</b> subscription? Желите ли да додате претплату на <b>%1</b>? AdBlock Subscription АдБлок претплата EasyList EasyList AdBlockTreeWidget Add Rule Додај филтер Remove Rule Уклони филтер Add Custom Rule Додај посебни филтер Please write your rule here: Упишите ваш филтерски израз овдје: %1 (recently updated) %1 (недавно ажурирано) AddAcceptLanguage Add Language Додај језик Choose preferred language for web sites Изаберите приоритетни језик за веб странице Personal definition: Посебна дефиниција: AesInterface Warning! Упозорење! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. Подаци су шифровани новијим издањем Капзиле. Инсталирајте најновије издање. AutoFill Database (plaintext) Текстуалну базу Database (encrypted) Шифровану базу Enter Master Password Унесите главну лозинку Permission is required, please enter Master Password: Потребна је дозвола, унесите главну лозинку: Warning! Упозорење! Entered password is wrong! Унесена лозинка је погрешна! This backend needs a master password to be set! QupZilla just switches to its default backend Ова позадина захтијева да главна лозинка буде постављена! Капзила враћа подразумијевану позадину AutoFillManager Passwords are stored in: Лозинке се смјештају у: Change backend Промијени позадину Backend options Опције позадине Passwords Лозинке Server сајт Username корисничко име Password лозинка Import/Export Увоз/извоз Show Passwords Прикажи лозинке Edit Уреди Remove Уклони Remove All Уклони све Exceptions Изузеци Import Passwords from File... Увези лозинке из фајла... Export Passwords to File... Извези лозинке у фајл... Search Тражи Change backend... Промјена позадине... Change backend: За позадину користи: Are you sure that you want to show all passwords? Желите ли заиста да прикажете све лозинке? Hide Passwords Сакриј лозинке Confirmation Потврда Are you sure to delete all passwords on your computer? Желите ли заиста да обришете све лозинке са вашег рачунара? Edit password Уреди лозинку Change password: Измијени лозинку: Choose file... Изабери фајл... Cannot read file! Не могу да очитам фајл! Successfully imported Успјешно увезено Error while importing! Грешка приликом увоза! Cannot write to file! Не могу да упишем у фајл! Successfully exported Успјешно извезено AutoFillNotification Update Ажурирај Remember Упамти Never For This Site Никад за овај сајт Not Now Не сада on %1 на %1 for <b>%1</b> за <b>%1</b> Do you want QupZilla to update saved password %1? Желите ли да Капзила ажурира лозинку %1? Do you want QupZilla to remember the password %1 %2? Желите ли да Капзила упамти лозинку %1 %2? AutoFillWidget Choose username to login Корисничко име за пријаву Login Пријава Login as <b>%1</b> Пријави се као <b>%1</b> BookmarkIcon Bookmark this Page Обиљежи ову страницу Edit this bookmark Уреди овај обиљеживач BookmarksImportDialog Import Bookmarks Увоз обиљеживача <b>Import Bookmarks</b> <b>Увоз обиљеживача</b> From File Из фајла Internet Explorer Интернет Експлорер Choose browser from which you want to import bookmarks: Изаберите прегледач из кога желите да увезете обиљеживаче: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Напомена:</b> Тренутно само увоз из ХТМЛ фајла подржава и увожење фасцикли. Choose... Изабери... Try to fetch icons for all bookmarks (may take a while) Покушај да добавиш иконе за све обиљеживаче (може да потраје) Fetching icons, please wait... Добављам иконе, сачекајте... Title име Url урл Next Сљедеће Cancel Поништи <b>Importing from %1</b> <b>Увозим из %1</b> Finish Заврши Please press Finish to complete importing process. Притисните „Заврши“ да бисте завршили процес увоза. Error! Грешка! The file doesn't contain any bookmark. Фајл не садржи ниједан обиљеживач. Choose directory... Изабери директоријум... Choose file... Изабери фајл... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Мозилин Фајерфокс успрема обиљеживаче у <b>places.sqlite</b> Скулајт бази података. Овај фајл се обично налази у Please choose this file to begin importing bookmarks. Изаберите овај фајл да бисте отпочели увозе обиљеживача. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Гуглов Хроум успрема обиљеживаче у <b>Bookmarks</b> текстуалном фајлу. Овај фајл се обично налази у Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Опера успрема обиљеживаче у <b>bookmarks.adr</b> текстуалном фајлу. Овај фајл се обично налази у You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Можете увести обиљеживаче из било ког прегледача који подржава извоз у ХТМЛ-у. Овај фајл обично има ове суфиксе Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Интернет Експлорер успрема обиљеживаче у фасцикли <b>Favorites</b>. Овај фајл се обично налази у Please choose this folder to begin importing bookmarks. Изаберите ову фасциклу да бисте отпочели увоз обиљеживача. No Error Нема грешке Unable to open file. Не могу да отворим фајл. Cannot evaluate JSON code. Не могу да обрадим ЈСОН фајл. File does not exist. Фајл не постоји. Unable to open database. Is Firefox running? Не могу да отворим базу података. Да ли је Фајерфокс покренут? Directory does not exist. Директоријум не постоји. The directory does not contain any bookmarks. Директоријум не садржи ниједан обиљеживач. BookmarksManager Bookmarks Обиљеживачи Add Folder Додај фасциклу Title име Url урл Expand All Рашири све Import and Export Увоз и извоз Collapse All Сажми све Import Bookmarks... Увези обиљеживаче... Export Bookmarks to HTML... Извези обиљеживаче у ХТМЛ... Export to HTML... Извоз у ХТМЛ... Add new folder Додај нову фасциклу Choose parent folder for new folder: Родитељска фасцикла: Choose name for new bookmark folder: Име нове фасцикле обиљеживача: Add new subfolder Додајте нову подфасциклу Choose name for new subfolder in bookmarks toolbar: Име нове подфасцикле у траци обиљеживача: Rename Folder Преименуј фасциклу Choose name for folder: Име за фасциклу: Add Subfolder Додај подфасциклу Rename folder Преименуј фасциклу Remove folder Уклони фасциклу Open link in current &tab Отвори везу у &текућем језичку Open link in &new tab Отвори везу у &новом језичку Move bookmark to &folder Помјери обиљеживач у &фасциклу Change icon Промијени икону Rename bookmark Преименуј обиљеживач Remove bookmark Уклони обиљеживач <b>Warning: </b>You already have bookmarked this page! <b>Упозорење: </b>Већ сте обиљежили ову страницу! Choose name and location of this bookmark. Одредите име и локацију за овај обиљеживач. Add New Bookmark Додавање обиљеживача Choose folder for bookmarks: Изаберите фасциклу обиљеживача: Bookmark All Tabs Обиљежи све језичке BookmarksModel Bookmarks In Menu Обиљеживачи у менију Bookmarks In ToolBar Обиљеживачи у траци алатки Unsorted Bookmarks Неразврстани обиљеживачи BookmarksSideBar Search... Тражи... Open link in current &tab Отвори везу у &текућем језичку Open link in &new tab Отвори везу у &новом језичку Copy address Копирај адресу &Delete &Обриши BookmarksToolbar &Bookmark Current Page О&биљежи текућу страницу Bookmark &All Tabs Обиљежи све &језичке &Organize Bookmarks &Организуј обиљеживаче Show Most &Visited Прикажи &најпосјећеније Show Only Icons Прикажи само иконе &Hide Toolbar &Сакриј траку обиљеживача Open bookmark Отвори Open bookmark in new tab Отвори у новом језичку Move right Помјери десно Move left Помјери лијево Edit bookmark Уреди обиљеживач Remove bookmark Уклони обиљеживач Edit bookmark: Уреди обиљеживач: Title: Име: Url: Урл: Edit Bookmark Уређивање обиљеживача Most visited Најпосјећеније Sites you visited the most Сајтови које сте највише посјећивали Empty Празно BookmarksTree Bookmarks Обиљеживачи New Folder... Нова фасцикла... BookmarksWidget Add to Speed Dial Додај на брзо бирање Save Сачувај Name: Име: Folder: Фасцикла: Remove from Speed Dial Уклони са брзог бирања Remove Уклони BrowsingLibrary Library Библиотека Search... Тражи... History Историјат Bookmarks Обиљеживачи RSS РСС CertificateInfoWidget <b>Issued To</b> <b>Издат за</b> Common Name (CN): Заједничко име (CN): Organization (O): Организација (O): Organizational Unit (OU): Организациона јединица (OU): Serial Number: Серијски број: <b>Issued By</b> <b>Издавач</b> <b>Validity</b> <b>Ваљаност</b> Issued On: Датум издавања: Expires On: Датум истека: ClearPrivateData Clear Recent History Брисање приватних података Choose what you want to delete: Обриши сљедеће ставке: Clear history историјат посјећених страница Clear cache кеш Clear icons иконе <b>Clear Recent History</b> <b>Обриши недавни историјат</b> Earlier Today раније данас Week недјеље Month мјесеца All Све Clear web databases веб базе Optimize database Оптимизуј базу података Clear local storage локално складиште Clear cookies колачиће Clear Private Data Брисање приватних података Are you sure to clear selected private data? Желите ли заиста да обришете изабране приватне податке? Database Optimized База података је оптимизована Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 База података је успјешно оптимизована.<br/><br/><b>Величина базе прије: </b>%1<br/><b>Величина базе након: </b>%2 ClickToFlash Object blocked by ClickToFlash Објекат блокирао Кликни-за-флеш Show more information about object Прикажи још података о објекту Delete object Обриши објекат Add %1 to whitelist Додај %1 на списак дозвољених Flash Object Флеш објекат <b>Attribute Name</b> <b>Својство</b> <b>Value</b> <b>Вриједност</b> No more information available. Нема више доступних података. CookieManager Cookies Колачићи Stored Cookies Успремљени колачићи Find: Нађи: These cookies are stored on your computer: Ови колачићи су успремљени на вашем рачунару: Server сајт Cookie name име колачића Name: Име: Value: Вриједност: Server: Сервер: Path: Путања: Secure: Безбједност: Expiration: Истиче: <cookie not selected> <колачић није изабран> Remove all cookies Уклони све колачиће Remove cookies Уклони колачиће Cookie Filtering Филтрирање колачића <b>Cookie whitelist</b> <b>Списак дозвољених колачића</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Колачићи са ових сервера ће УВИЈЕК бити прихватани (чак и ако искључите успремање колачића) Add Додај Remove Уклони <b>Cookie blacklist</b> <b>Списак недозвољених колачића</b> Cookies from these servers will NEVER be accepted Колачићи са ових сервера НИКАД неће бити прихватани Settings Подешавања <b>Cookie Settings</b> <b>Поставке колачића</b> Allow storing of cookies Дозволи успремање колачића Delete cookies on close Обриши колачиће по затварању Match domain exactly Поклапај домен тачно Filter tracking cookies Пречишћај колачиће пратиоце <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! <b>Упозорење:</b> Тачно поклапање домена и пречишћање колачића пратиоца може довести до одбијања неких колачића са сајтова. Ако имате проблема са колачићима, искључите ове опције! Search Тражи Confirmation Потврда Are you sure to delete all cookies on your computer? Желите ли заиста да обришете све колачиће са вашег рачунара? Secure only Само безбиједне везе All connections Све везе Session cookie Колачић сесије Remove cookie Уклони колачић Add to whitelist Додавање у дозвољене Add to blacklist Додавање у недозвољене DownloadFileHelper Save file as... Сачувај фајл као... NoNameDownload Неименовано_преузимање DownloadItem Remaining time unavailable Преостало вријеме није доступно Error: Cannot write to file! Грешка: не могу да упишем фајл! Done - %1 Готово - %1 Cancelled Отказано few seconds неколико секунди %n seconds %n секунда %n секунде %n секунди %n minutes %n минута %n минуте %n минута %n hours %n сат %n сата %n сати Unknown speed Брзина није позната kB/s kB/s MB/s MB/s GB/s GB/s Unknown size Величина није позната %2 - unknown size (%3) %2 - непознате величине (%3) Remaining %1 - %2 of %3 (%4) Преостало %1 - %2 од %3 (%4) Cancelled - %1 Отказано - %1 Delete file Обриши фајл Do you want to also delete dowloaded file? Желите ли да обришете и преузети фајл такође? Open File Отвори фајл Open Folder Отвори фасциклу Go to Download Page Иди на страницу преузимања Copy Download Link Копирај везу преузимања Cancel downloading Откажи преузимање Remove Уклони Error Грешка Not found Није нађено Sorry, the file %1 was not found! Фајл %1 није нађен! Error: Грешка: DownloadManager Download Manager Менаџер преузимања Clear Очисти %1% of %2 files (%3) %4 remaining %1% од %2 фајлова (%3) %4 до завршетка %1% - Download Manager %1% - менаџер преузимања Download Finished Преузимање је завршено All files have been successfully downloaded. Сви фајлови су успјешно преузети. Warning Упозорење Are you sure to quit? All uncompleted downloads will be cancelled! Желите ли заиста да напустите? Сва незавршена преузимања ће бити отказана! DownloadOptionsDialog Opening Отварам Copy download link Копирај везу преузимања You have chosen to open Изабрали сте да отворите which is a: који је: What should QupZilla do with this file? Шта да радим са овим фајлом? Open... Отвори... Save File Сачувај фајл Download with External Manager Преузми спољашњим менаџером from: са: Opening %1 Отварам %1 Download link copied. Веза је копирана. EditSearchEngine Name: Име: Url: Урл: Shortcut: Пречица: Icon: Икона: <b>Note: </b>%s in url or post data represent searched string <b>Напомена:</b> %s у УРЛ-у или ПОСТ подацима представља тражени израз Post Data: ПОСТ подаци: Change... Промијени... FileSchemeReply No Error Нема грешке Up to higher level directory У родитељску фасциклу Show hidden files Прикажи скривене фајлове Name Име Size Величина Last modified Измијењено Index for %1 Индекс од %1 Folder is empty. Фасцикла је празна. FtpDownloader Cancelled! Отказано! FtpSchemeReply Up to higher level directory У родитељску фасциклу Show hidden files Прикажи скривене фајлове Name Име Size Величина Last modified Измијењено Index for %1 Индекс од %1 Folder is empty. Фасцикла је празна. Unknown command Непозната наредба HTML5PermissionsDialog HTML5 Permissions ХТМЛ5 дозволе Notifications Обавјештења Site сајт Behaviour радња Remove Уклони Geolocation Геолокација Allow дозволи Deny одбиј HTML5PermissionsNotification Remember Упамти Allow Дозволи Deny Одбиј this site овај сајт Allow %1 to show desktop notifications? Дозволи да %1 приказује обавјештења на радној површи? Allow %1 to locate your position? Дозволи да %1 пронађе ваш положај? History No Named Page Неименована страница January Јануар February Фебруар March Март April Април May Мај June Јун July Јул August Август September Септембар October Октобар November Новембар December Децембар HistoryManager History Историјат Delete Обриши Clear All History Обриши историјат Confirmation Потврда Are you sure to delete all history? Желите ли заиста да обришете читав историјат? HistoryModel Title Наслов Address Адреса Visit Date Датум посјете Visit Count Број посјета Today Данас This Week Ове недјеље This Month Овога мјесеца HistorySideBar Search... Тражи... HistoryView Open link in current tab Отвори везу у текућем језичку Open link in new tab Отвори везу у новом језичку Copy title Копирај наслов Copy address Копирај адресу Remove Уклони IconChooser Choose icon... Изабери икону... From file Из фајла Image (.png, .jpg, .jpeg, .gif) Слика (.png, .jpg, .jpeg, .gif) Choose file... Изабери фајл... From database Из базе Site Url: Урл сајта: Image files Фајлови слика JsOptions JavaScript Options Опције Јаваскрипти Allow JavaScript to: Дозволи јаваскрипти да: Close windows затвори прозор Open popup windows отвори искачући прозор Change window size промијени величину прозора Hide menu bar сакрије траку менија Hide status bar сакрије траку стања Hide tool bar сакрије траку алатки Access clipboard приступи клипборду LicenseViewer License Viewer Прегледач лиценце LocationBar Enter URL address or search on %1 Унесите УРЛ адресу или тражите на %1 Paste And &Go Налијепи и &иди Clear All Очисти све .co.uk Append domain name on ALT + Enter = Should be different for every country .rs.ba Show information about this page Прикажи податке о овој страници LocationCompleterView Switch to tab Активирај језичак MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? Капзила тренутно није ваш подразумијевани прегледач веба. Да ли желите да поставите за подразумијеваног прегледача? Always perform this check when starting QupZilla. Увијек изврши ову провјеру по покретању Капзиле. Default Browser Подразумијевани прегледач QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. Капзила је нов, брз и сигуран веб прегледач отвореног кода. Лиценциран под издањем 3 ГПЛ лиценце или (по вашем нахођењу) било којим каснијим издањем лиценце. Базиран на ВебКит језгру и Кут радном окружењу. MasterPasswordDialog Encrypted DataBase Settings Поставке шифроване базе података Set/Change Master Password... Постави/промијени главну лозинку... Clear Master Password... Уклони главну лозинку... This backend does not work without a master password. Ова позадина не ради ако главна лозинка није постављена. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. Ово ће уклонити главну лозинку и премјестити шифроване податке у позадину „Текстуална база“ и активирати је. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Главна лозинка штити лозинке за сајтове и податке формулара. Ако је поставите, биће вам затражена једном по сесији. Current Password: Текућа лозинка: New Password: Нова лозинка: Confirm Password: Потврди лозинку: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. <b>Напомена:</b> Главну лозинку не можете повратити ако је заборавите. Warning! Упозорење! You entered a wrong password! Унијели сте погрешну лозинку! New/Confirm password fields do not match! Лозинке се не поклапају! Some data has not been decrypted. The master password was not cleared! Дио података није дешифрован. Главна лозинка није уклоњена! Are you sure to clear master password and decrypt data? Желите ли заиста да уклоните главну лозинку и дешифрујете податке? NavigationBar No Named Page Неименована страница Back Назад Forward Напријед Home Домаћа New Tab Нови језичак Main Menu Главни мени Exit Fullscreen Напусти цио екран Clear history Обриши историјат NetworkManager SSL Certificate Error! Грешка ССЛ сертификата! The page you are trying to access has the following errors in the SSL certificate: Страница којој покушавате да приступите има сљедеће грешке у ССЛ сертификату: <b>Organization: </b> <b>Организација: </b> <b>Domain Name: </b> <b>Име домена: </b> <b>Expiration Date: </b> <b>Датум истека: </b> <b>Error: </b> <b>Грешка: </b> Would you like to make an exception for this certificate? Желите ли да направите изузетак за овај сертификат? Authorisation required Потребно овлашћење Username: Корисничко име: Password: Лозинка: Save username and password on this site Сачувај корисничко име и лозинку на овом сајту A username and password are being requested by %1. The site says: "%2" %1 захтијева корисничко име и лозинку. Сајт каже: „%2“ FTP authorisation required Потребно је овлашћење за ФТП Login anonymously Анонимна пријава A username and password are being requested by %1:%2. %1:%2 захтијева корисничко име и шифру. Proxy authorisation required Потребно је овлашћење за прокси Remember username and password for this proxy. Запамти корисничко име и лозинку за овај прокси. A username and password are being requested by proxy %1. Прокси %1 захтијева корисничко име и шифру. PageScreen Page Screen Снимак странице Format: Сачувај као: Location: Сачувај у: Browse... Прегледај... Save as %1 %1 Choose location... Одабир одредишта... File '%1' already exists. Do you want to overwrite it? Фајл „%1“ већ постоји. Желите ли да га пребришете? File already exists Фајл већ постоји PluginsList Application Extensions Програмски прикључци Allow Application Extensions to be loaded Дозволи учитавање програмских прикључака Settings Подешавања WebKit Plugins Вебкитови прикључци <b>Click To Flash Plugin</b> <b>„Кликни-за-флеш“ прикључак</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Кликни-за-флеш је прикључак који зауставља аутоматско учитавање флеш садржаја на страници. Увијек га можете учитати ручно кликом на икону за покретање флеш садржаја. Whitelist списак дозвољених Add Додај Remove Уклони Allow Click To Flash Дозволи Кликни-за-флеш PluginsManager Add site to whitelist Додавање у дозвољене Server without http:// (ex. youtube.com) Адреса сервера без „http://“ (нпр. youtube.com) Error! Грешка! Cannot load extension! Не могу да учитам проширење! PopupWebView Inspect Element Провјери елемент PopupWindow File Фајл &Save Page As... &Сачувај страницу као... Save Page Screen Сачувај снимак странице Send Link... Пошаљи везу... &Print... &Штампај... Close Затвори Edit Уређивање &Undo &Опозови &Redo &Понови &Cut &Исијеци C&opy &Копирај &Paste &Налијепи Select All Изабери све Find Нађи View Приказ &Stop &Заустави &Reload &Учитај поново Zoom &In У&величај Zoom &Out У&мањи Reset Стварна величина &Page Source &Извор странице %1 - QupZilla %1 - Капзила Preferences Preferences Подешавања QupZilla Капзила General Опште Appearance Изглед Tabs Језичци Browsing Прегледање Fonts Фонтови Keyboard Shortcuts Пречице тастатуре Downloads Преузимања Password Manager Менаџер лозинки Privacy Приватност Notifications Обавјештења Extensions Проширења Other Остало Use current Користи текућу Note: You cannot delete active profile. Напомена: Не можете обрисати активни профил. Create New Направи нови Delete Обриши <b>Launching</b> <b>Покретање</b> After launch: По покретању: Open blank page отвори празну страницу Open homepage отвори домаћу страницу Open speed dial отвори брзо бирање Restore session обнови сесију Homepage: Домаћа страница: On new tab: На новом језичку: Open blank tab отвори празан језичак Open other page... отвори другу страницу... <b>Profiles</b> <b>Профили</b> Startup profile: Почетни профил: Check for updates on start Потражи надоградње по покретању Active profile: Активни профил: In order to change language, you must restart browser. Да бисте промијенили језик, морате поново покренути прегледач. <b>Language</b> <b>Језик</b> Available translations: Доступни преводи: Don't load tabs until selected Не учитавај језичке док не буду изабрани Check to see if QupZilla is the default browser on startup Провјера подразумијеваног прегледача по старту Check Now Провјери одмах Themes Теме Advanced options Напредне опције <b>Browser Window</b> <b>Прозор прегледача</b> Show StatusBar on start Прикажи траку стања по покретању Show Bookmarks ToolBar on start Прикажи траку обиљеживача по покретању Show Navigation ToolBar on start Прикажи траку навигације по покретању <b>Navigation ToolBar</b> <b>Трака навигације</b> Show Home button Прикажи дугме Домаћа Show Back / Forward buttons Прикажи дугмад Назад / Напријед <b>Background<b/> <b>Позадина<b/> Use transparent background Користи прозирну позадину Show web search bar Прикажи траку веб претраге Show Add Tab button Прикажи дугме Додај језичак Show Reload / Stop buttons Прикажи дугмад Поново учитај / Заустави Tabs behaviour Понашање језичака Show tab previews Приказуј прегледе језичака Make tab previews animated Анимирај прегледе језичака Hide tabs when there is only one tab Сакриј траку са језичцима када има само један Activate last tab when closing active tab Активирај претходно коришћен језичак при затварању текућег Open new tabs after active tab Отварај нове језичке послије активног Open new empty tabs after active tab Отварај празне језичке послије активног Automatically switch to newly opened tab Аутоматски фокусирај новоотворени језичак Don't quit upon closing last tab Не напуштај по затварању посљедњег језичка Ask when closing multiple tabs Потврди затварање прозора са више језичака Closed tabs list instead of opened in tab bar Списак затворених умјесто списка отворених језичака на траци језичака Address Bar behaviour Понашање траке адресе Suggest when typing into address bar: При куцању у траци адресе предлажи: History and Bookmarks историјат и обиљеживаче History историјат Bookmarks обиљеживаче Nothing ништа Press "Shift" to not switch the tab but load the url in the current tab. Притисните Shift тастер да учитате УРЛ у текућем језичку. Propose to switch tab if completed url is already loaded. Предлажи активирање језичка ако је УРЛ већ отворен. Always show go icon Увијек приказуј икону „иди на сајт“ Select all text by double clicking in address bar Изабери сав текст двокликом у траци адресе Select all text by clicking in address bar Изабери сав текст кликом у траци адресе Search with Default Engine Тражи помоћу подразумијеваног мотора Show loading progress in address bar Прикажи напредак учитавања у траци адресе Fill Испун Bottom Дно Top Врх Custom color: Посебна боја: Select color Изабери боју ... ... Reset Подразумијевана Web Configuration Веб поставке Allow Netscape Plugins (Flash plugin) Дозволи Нетскејпове прикључке (Флеш) Allow JavaScript Дозволи Јаваскрипте Allow JAVA Дозволи Јаву Allow DNS Prefetch Предохватање ДНС уноса Enable XSS Auditing try to detect possible XSS attacks when executing javascript Укључи ИксСС провјеравање Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Штампај позадину елемента Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Укључи везе у ланац фокуса Animated scrolling Анимирано клизање Enable caret browsing Прегледање помоћу курсора Enable spatial navigation Просторна навигација Zoom text only Увеличавај само текст Mouse wheel scrolls Точкић миша клиза lines on page линија на страници Default zoom on pages: Подразумијевано увеличање страница: Local Storage Локално складиште Maximum Највише 50 MB 50 MB 1 1 Maximum pages in cache: Највише страница у кешу: Allow storing network cache on disk Дозволи смјештање мрежног кеша на диск Store cache in: Смјештај кеш у: Allow saving history Дозволи чување историјата Delete history on close Обриши историјат по затварању Allow local storage of HTML5 web content Дозволи локално смјештање ХТМЛ5 веб садржаја Delete locally stored HTML5 web content on close Обриши локални ХТМЛ5 веб садржај по затварању Delete now Обриши сада Proxy Configuration Поставке проксија Proxy Auto-Config (.pac) file Фајл ауто-поставки проксија (.pac) Reload Учитај поново HTTP ХТТП SOCKS5 СОЦКС5 Port: Порт: Username: Корисничко име: Password: Лозинка: Don't use on: Не користи на: Manual configuration Ручне поставке System proxy configuration Системске поставке Do not use proxy Не користи прокси <b>Exceptions</b> <b>Изузеци</b> Server: Сервер: Use different proxy for https connection Користи други прокси за ХТТПС везу Use script for automatic configuration: Користи скрипту за аутоматску поставу: <b>Font Families</b> <b>Породице фонта</b> Standard Стандардни Fixed Фиксни Serif Серифни Sans Serif Бесерифни Cursive Курзивни Fantasy Фантазијски <b>Font Sizes</b> <b>Величине фонта</b> Fixed Font Size Фиксни фонт Default Font Size Подразумијевани фонт Minimum Font Size Најмања величина Minimum Logical Font Size Најмања могућа величина <b>Shortcuts</b> <b>Пречице</b> Switch to tabs with Alt + number of tab Активирај језичке са Alt + број језичка Load speed dials with Ctrl + number of speed dial Учитавај брза бирања са Ctrl + број брзог бирања Add .co.uk domain by pressing ALT key in address bar Додај .rs.ba домен притиском на ALT тастер <b>Download Location</b> <b>Одредиште преузимања</b> Ask everytime for download location Питај сваки пут за одредиште Use defined location: Користи одредиште: <b>Download Options</b> <b>Опције преузимања</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Користи системски дијалог фајлова (може проузрочити проблеме за преузимање ССЛ безбиједног садржаја) Close download manager when downloading finishes Затвори менаџера преузимања када се преузимање заврши <b>External download manager</b> <b>Спољашњи менаџер преузимања</b> Use external download manager Користи спољашњи менаџер преузимања Executable: Извршна: Arguments: Аргументи: Leave blank if unsure Оставите празно ако нисте сигурни <b>%d</b> will be replaced with URL to be downloaded <b>%d</b> ће бити замијењено адресом преузимања <b>AutoFill options</b> <b>Опције аутоматске попуне</b> Allow saving passwords from sites Дозволи успремање лозинки са сајтова Send Referer header to servers Шаљи заглавље пратиоца серверима <b>Cookies</b> <b>Колачићи</b> Send Do Not Track header to servers Шаљи ДНТ (Не Прати Ме) заглавље серверима <b>Other</b> <b>Разно</b> Manage CA certificates Управљај сертификатима Certificate Manager Менаџер сертификата <b>SSL Certificates</b> <b>ССЛ сертификати</b> <b>JavaScript</b> <b>Јаваскрипте</b> Manage JavaScript privacy options Управљај поставкама приватности JavaScript options Поставке јаваскрипти Cookies Manager Менаџер колачића Manage Cookies Управљај колачићима <b>HTML5 Permissions</b> <b>ХТМЛ5 дозволе</b> Manage HTML5 permissions Управљај ХТМЛ5 одобрењима HTML5 Permissions ХТМЛ5 дозволе <b>Notifications</b> <b>Обавјештења</b> Use OSD Notifications Користи ОСД обавјештења Use Native System Notifications (Linux only) Користи изворна системска обавјештења (само за Линукс) Do not use Notifications Не користи ОСД обавјештења Expiration timeout: Вријеме истека: seconds секунди <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Напомена: </b>Можете промијенити положај ОСД обавјештења превлачењем по екрану. StyleSheet automatically loaded with all websites: Опис стила који ће аутоматски бити учитан за све сајтове: Languages Језици <b>Preferred language for web sites</b> <b>Приоритетни језик за веб странице</b> <b>Change browser identification</b> <b>Промjена идентификације прегледача</b> User Agent Manager Менаџер идентификације прегледача Default Подразумијеван Set as default Постави за подразумијеван OSD Notification ОСД обавјештење Drag it on the screen to place it where you want. Превуците га по екрану на жељени положај. Choose download location... Одабир одредишта за преузимање... Choose stylesheet location... Одабир фајла описа стила... Deleted Обрисано Choose executable location... Одабир локације извршног фајла... Choose cache path... Одабир путање за кеш... New Profile Нови профил Enter the new profile's name: Унесите име новог профила: Error! Грешка! This profile already exists! Овај профил већ постоји! Cannot create profile directory! Не могу да направим директоријум профила! Confirmation Потврда Are you sure to permanently delete "%1" profile? This action cannot be undone! Желите ли заиста трајно да обришете „%1“ профил? Ова радња не може да се поништи! Select Color Избор боје QObject Native System Notification Изворна системска обавјештења Save file as... Сачувај фајл као... The file is not an OpenSearch 1.1 file. Овај фајл није OpenSearch 1.1 фајл. <not set in certificate> <није постављено у сертификату> Unknown size Величина није позната KB KB MB MB GB GB Executable: Извршна: Arguments: Аргументи: Cannot start external program Не могу да покренем спољашњи програм Cannot start external program! %1 Не могу да покренем спољашњи програм! %1 QtWin Open new tab Отвори нови језичак Opens a new tab if browser is running Отвара нови језичак ако је прегледач покренут Open new window Отвори нови прозор Opens a new window if browser is running Отвара нови прозор ако је прегледач покренут Open download manager Отвори менаџера преузимања Opens a download manager if browser is running Отвара менаџера преузимања ако је прегледач покренут QupZilla QupZilla Капзила Private Browsing Enabled Приватно прегледање је омогућено IP Address of current page ИП адреса текуће странице &About QupZilla &О Капзили Pr&eferences По&дешавања Quit Напусти &File &Фајл &New Window &Нови прозор New Tab Нови језичак Open Location Отвори локацију Open &File... Отвори &фајл... Close Tab Затвори језичак Close Window Затвори прозор &Save Page As... &Сачувај страницу као... Save Page Screen Сачувај снимак странице Send Link... Пошаљи везу... &Print... &Штампај... Import bookmarks... Увези обиљеживаче... &Edit &Уређивање &Undo &Опозови &Redo &Понови &Cut &Исијеци C&opy &Копирај &Paste &Налијепи Select &All Изабери &све &Find Н&ађи &View &Приказ &Navigation Toolbar Трака &навигације &Bookmarks Toolbar Трака &обиљеживача Sta&tus Bar Трака &стања &Menu Bar Трака &менија &Tabs on Top &Језичци на врху &Fullscreen &Цио екран &Stop &Заустави &Reload &Учитај поново Character &Encoding &Кодирање знакова Enable &Caret Browsing Прегледање ку&рсором Toolbars Траке алатки Sidebars Бочне траке Zoom &In У&величај Zoom &Out У&мањи Reset Стварна величина &Page Source &Извор странице Hi&story &Историјат &Back На&зад &Forward На&пријед &Home &Домаћа Show &All History Прикажи &сав историјат Closed Tabs Затворени језичци Recently Visited Недавно посјећено Most Visited Најпосјећеније &Bookmarks &Обиљеживачи Bookmark &This Page Обиљежи овај &језичак Bookmark &All Tabs Обиљежи &све језичке Organize &Bookmarks &Организуј обиљеживаче &Tools Ала&тке &Web Search Претрага &веба Page &Info Подаци о &сајту &Download Manager Менаџер &преузимања &Cookies Manager Менаџер &колачића &AdBlock &Адблок RSS &Reader Читач РСС &довода Web In&spector Веб и&нспектор Clear Recent &History &Обриши приватне податке New &Private Window Нови п&риватни прозор &Help По&моћ About &Qt О &Куту Information about application Подаци о програму Configuration Information Поставке програма Report &Issue &Пријави проблем Restore &Closed Tab &Обнови затворени језичак (Private Browsing) (приватно прегледање) Empty Празно Restore All Closed Tabs Обнови све затворене језичке Clear list Очисти списак Other Остало %1 - QupZilla %1 - Капзила HTML files ХТМЛ фајлови Image files Фајлови слика Text files Фајлови текста All files Сви фајлови Open file... Отвори фајл... QupZilla %1 (%2) Капзила %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Још увијек имате %1 отворених језичака а ваша сесија неће бити сачувана. Желите ли заиста да напустите Капзилу? Don't ask again Не питај поново There are still open tabs Још увијек имате отворених језичака QupZillaSchemeReply No Error Нема грешке Not Found Није нађено Report Issue Пријави проблем If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Ако имате проблема са Капзилом најприје покушајте да онемогућите проширења. <br/>Ако то не помогне, онда попуните овај формулар: Your E-mail Ваша е-адреса Issue type Тип проблема Issue description Опис проблема Send Пошаљи E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. Е-адреса није обавезна<br/><b>Напомена: </b>Најприје <a href=%1>овдје</a> прочитајте како направити извјештај о грешци. Please fill out all required fields! Попуните сва обавезна поља! Start Page Почетна страница Search on Web Тражи на вебу Search results provided by DuckDuckGo Резултате претраге обезбјеђује ДакДакГоу About QupZilla О Капзили <h1>Private Browsing</h1> <h1>Приватно прегледање</h1> Information about version Подаци о издању Copyright Ауторска права Version Издање WebKit version Издање Вебкита Main developer Главни програмер Contributors Сарадници Translators Преводиоци Speed Dial Брзо бирање Add New Page Додај нову страницу Edit Уреди Remove Уклони Reload Учитај поново Are you sure to remove this speed dial? Желите ли заиста да уклоните ово брзо бирање? Load title from page Учитај наслов са странице Url Урл Title Име Apply Примијени Close Затвори New Page Нова страница Speed Dial settings Поставке брзог бирања Placement: Положај: Auto Ауто Cover Прекриј Fit Уклопи Fit Width Уклопи ширину Fit Height Уклопи висину Use background image Слика за позадину Select image Изабери слику Maximum pages in a row: Највише брзих бирања у реду: Change size of pages: Промијени величину брзих бирања: Center speed dials Центрирај брза бирања Restore Session Обнови сесију Oops, QupZilla crashed. Упс, Капзила се срушила. We apologize for this. Would you like to restore the last saved state? Извињавамо се због овога. Желите ли да обновите посљедње сачувано стање? Try removing one or more tabs that you think cause troubles Покушајте да уклоните један или више језичака за које мислите да узрокују проблеме Or you can start completely new session Или можете покренути нову сесију Configuration Information Подаци о поставкама This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Ова страница садржи податке о текућим Капзилиним подешавањима битним за рјешавање проблема. Укључите ове податке приликом слања извјештаја о грешци. Browser Identification Идентификација прегледача Paths Путање Build Configuration Параметри компајлирања Preferences Подешавања Option Поставка Value Вриједност Extensions Проширења Name Име Author Аутор Description Опис Application version Издање програма Qt version Издање Кут-а Build time Датум компајлирања Platform Платформа Profile Профил Settings Подешавања Saved session Сачуване сесије Pinned tabs Закачени језичци Data Подаци Themes Теме Translations Преводи Disabled искључено <b>Enabled</b> <b>укључено</b> Debug build Проналажење грешака WebGL support ВебГЛ подршка Windows 7 API Виндоуз 7 АПИ KDE integration Интеграција у КДЕ Portable build Преносно издање No available extensions. Нема доступних проширења. RSSManager RSS Reader Читач РСС довода Empty Празно Add feed Додај довод Edit feed Уреди довод Delete feed Обриши довод Reload Учитај поново News новости Loading... Учитавам... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Немате ниједан РСС довод.<br/> Додајте их помоћу РСС иконе у траци навигације на сајту који нуди доводе. Add new feed Додавање новог довода Please enter URL of new feed: Унесите УРЛ новог довода: New feed Нови довод Fill title and URL of a feed: Унесите име и УРЛ довода: Feed title: Име довода: Feed URL: УРЛ довода: Edit RSS Feed Уређивање РСС довода Open link in current tab Отвори везу у текућем језичку Open link in new tab Отвори везу у новом језичку Error in fetching feed Грешка приликом добављања довода RSS feed duplicated РСС довод је удвостручен You already have this feed. Већ имате овај довод. RSSNotification Add this feed into Додај овај довод у Add Додај RSS feed <b>"%1"</b> РСС довод <b>„%1“</b> Internal Reader Унутрашњи читач Other... Остали... Liferea not running Лајфри није покренут Liferea must be running in order to add new feed. Лајфри мора бити покренут да бисте могли да додате нови довод. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Да бисте додали овај довод у остале програме користите ове податке:<br/><br/><b>Наслов: </b>%1<br/><b>Урл: </b>%2<br/><br/>Урл адреса довода је копирана на ваш клипборд. Add feed into other application Додавање довода у други програм RSSWidget Add RSS Feeds from this site Додај РСС доводе са овог сајта Untitled feed Неименован довод Add Додај RecoveryWidget Start New Session Почни нову сесију Restore Обнови Window %1 Прозор %1 RegisterQAppAssociation Warning! Упозорење! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) Појавио се проблем. Поново инсталирајте Капзилу, или је покушајте покренути са административним привилегијама. RssIcon Add RSS from this page... Додај РСС са ове странице... SSLManager Certificate Manager Менаџер сертификата CA Authorities Certificates Сертификати издавача Show info Прикажи инфо This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Ово је списак издавача сертификата за овлашћења смјештених на системски уобичајеној путањи и кориснички одређеној путањи. Local Certificates Локални сертификати Import Увези Remove Уклони This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Ово је списак локалних сертификата сачуваних на вашем рачунару. Такође садржи све сертификате који су примили изузетак. Settings Подешавања Add Додај If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Ако сертификати издавача нису аутоматски учитани са система, можете ручно одредити путање гдје су сертификати смјештени. <b>NOTE:</b> Setting this option is a high security risk! <b>НАПОМЕНА:</b> Постављање ове опције је велики безбједносни ризик! Ignore all SSL Warnings Занемари сва ССЛ упозорења All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Сви сертификати морају имати .crt наставак. Након додавања или уклањања путања сертификата потребно је да поново покренете Капзилу како би измјене имале ефекта. Choose path... Изабери путању... Import certificate... Увоз сертификата... Certificate Informations Подаци о сертификату SearchEnginesDialog Manage Search Engines Менаџер мотора претраге Add... Додај... Remove Уклони Edit Уреди Set as default Подразумијеван Up Горе Down Доље Search Engine Мотор претраге Shortcut Пречица Defaults Подразумијевано Add Search Engine Додај мотор претраге Remove Engine Уклони You can't remove the default search engine.<br>Set a different engine as default before removing %1. Не можете да уклоните подразумијевани мотор претраге.<br>Поставите други мотор као подразумијеван прије уклањања %1. Edit Search Engine Уреди мотор претраге SearchEnginesManager Search Engine Added Мотор претраге је додат Search Engine "%1" has been successfully added. Мотор претраге „%1“ је успјешно додат. Search Engine is not valid! Мотор претраге није исправан! Error Грешка Error while adding Search Engine <br><b>Error Message: </b> %1 Грешка приликом додавања мотора претраге <br><b>Порука грешке: </b> %1 SearchToolBar No results found. Ништа није нађено. SearchToolbar Search: Тражи: Search... Тражи... Highlight Истакни Case sensitive Разликуј величину слова SideBar Bookmarks Обиљеживачи History Историјат SiteInfo Site Info Подаци о сајту General Опште Media Медији Databases Базе Security Безбједност Size: Величина: Site address: Адреса сајта: Encoding: Кодирање: Meta tags of site: Мета ознаке сајта: Tag ознака Value вриједност <b>Security information</b> <b>Подаци о безбједности</b> Details Детаљи Image слика Image address адреса слике <b>Preview</b> <b>Преглед</b> <b>Database details</b> <b>Детаљи базе података</b> Name: Име: Path: Путања: <database not selected> <база података није изабрана> <not set in certificate> <није постављено у сертификату> No databases are used by this page. Ова страница не користи базе података. <b>Connection is Encrypted.</b> <b>Веза је шифрована.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Ваша веза са овом страницом је обезбјеђена овим сертификатом: </b> <b>Connection Not Encrypted.</b> <b>Веза није шифрована.</b> <b>Your connection to this page is not secured!</b> <b>Ваша веза са овом страницом није безбиједна!</b> Copy Image Location Копирај локацију слике Copy Image Name Копирај име слике Save Image to Disk Сачувај слику на диск Error! Грешка! This preview is not available! Овај преглед није доступан! Save image... Сачувај слику... Cannot write to file! Не могу да упишем у фајл! Preview not available Преглед није доступан SiteInfoWidget More... Више... Your connection to this site is <b>secured</b>. Веза са овим сајтом је <b>безбиједна</b>. Your connection to this site is <b>unsecured</b>. Веза са овим сајтом <b>није безбиједна</b>. This is your <b>%1</b> visit of this site. Ово је ваша <b>%1</b> посјета овом сајту. You have <b>never</b> visited this site before. <b>Нисте</b> досад посјећивали овај сајт. first прва second друга third трећа SourceViewer Source of Изворни кôд документа File Фајл Load in page Учитај у страницу Save as... Сачувај као... Close Затвори Edit Уређивање Undo Опозови Redo Понови Cut Исијеци Copy Копирај Paste Налијепи Select All Изабери све Find Нађи Go to Line... Иди на линију... View Приказ Reload Учитај поново Editable Уређивање Word Wrap Прелом текста Source loaded in page Изворни кôд учитан у страницу Cannot load in page. Page has been closed. Не могу да учитам: страница је затворена. Save file... Сачувај фајл... Error! Грешка! Cannot write to file! Не могу да упишем у фајл! Error writing to file Грешка уписивања у фајл Source successfully saved Изворни кôд је успјешно сачуван Source reloaded Изворни кôд је поново учитан Cannot reload source. Page has been closed. Не могу да учитам извор поново. Страница је затворена. Editable changed Уређивање је промијењено Word Wrap changed Прелом текста је промијењен Enter line number Унесите број линије SourceViewerSearch Search: Тражи: Search... Тражи... Whole words Цијеле ријечи SpeedDial Image files Фајлови слика Select image... Изабери слику... Unable to load Не могу да учитам SpellCheckDialog SpellCheck Провјера правописа <b>Dictionary path</b> <b>Путања рјечника</b> Change... Промијени... <b>User dictionary</b> <b>Кориснички рјечник</b> Add Додај Remove Уклони Using Hunspell library Користим Hunspell библиотеку Choose dictionary path... Одабир путање рјечника... Add new word... Додавање нове ријечи... Add new word: Додај нову ријеч: Speller No suggestions Нема приједлога Add to dictionary Додај у рјечник Settings Поставке SqueezeLabelV2 Copy Копирај SslErrorDialog SSL Certificate Error! Грешка ССЛ сертификата! Only for this session Само за ову сесију TabBar &New tab &Нови језичак &Stop Tab &Заустави учитавање &Reload Tab &Учитај поново &Duplicate Tab У&двостручи језичак D&etach Tab &Одвоји језичак Un&pin Tab Отк&ачи језичак &Pin Tab За&качи језичак Re&load All Tabs Учитај поново &све језичке &Bookmark This Tab &Обиљежи овај језичак Bookmark &All Tabs Обиљежи с&ве језичке Close Ot&her Tabs Затвори ос&тале језичке Cl&ose З&атвори Reloa&d All Tabs &Учитај поново све језичке Restore &Closed Tab &Врати затворени језичак Close Tabs Затварање језичака Do you really want to close other tabs? Желите ли заиста да затворите остале језичке? TabWidget New Tab Нови језичак List of tabs Списак језичака Loading... Учитавам... No Named Page Неименована страница Currently you have %1 opened tabs Имате %1 отворених језичака New tab Нови језичак Empty Празно Restore All Closed Tabs Врати све затворене језичке Clear list Очисти списак TabbedWebView Loading... Учитавам... %1 - QupZilla %1 - Капзила Inspect Element Провјери елемент ThemeManager <b>Name:</b> <b>Име:</b> <b>Author:</b> <b>Аутор:</b> <b>Description:</b> <b>Опис:</b> License Лиценца ToolButton Stop Заустави Reload Учитај поново Updater Update available Надоградња је доступна New version of QupZilla is ready to download. Ново издање Капзиле је спремно за преузимање. Update Ажурирај UserAgentDialog User Agent Manager Менаџер идентификације прегледача Change global User Agent Промијени идентификацију глобално Use different User Agents for specified sites Користите различите идентификације за одређене сајтове Site сајт User Agent идентификација Add Додај Remove Уклони Edit Уреди Add new site Додавање новог сајта Edit site Уређивање сајта Site domain: Домен сајта: User Agent: Идентификација: WebInspectorDockWidget Web Inspector Веб инспектор WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? Капзила не може да рукује <b>%1:</b> везама. Захтијевана веза је <ul><li>%2</li></ul>Желите ли да Капзила покуша да отвори ову везу помоћу системског програма? Remember my choice for this protocol Запамти мој избор за за овај протокол External Protocol Request Захтјев за спољашњи протокол To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Да би приказала ову страницу Капзила мора поново да пошаље захтјев за учитавањем. Confirm form resubmission Потврда поновног слања Select files to upload... Изабери фајлове за слање... Server refused the connection Сервер је одбио везу Server closed the connection Сервер је затворио везу Server not found Сервер није нађен Connection timed out Истекло вријеме повезивања Untrusted connection Неповјерљива веза Temporary network failure Привремени неуспјех мреже Proxy connection refused Веза са проксијем одбијена Proxy server not found Сервер проксија није нађен Proxy connection timed out Истекло вријеме повезивања са проксијем Proxy authentication required Прокси захтијева аутентификацију Content not found Садржај није нађен Unknown network error Непозната грешка мреже AdBlocked Content Блокиран садржај Blocked by <i>%1</i> Блокирано филтером <i>%1</i> Content Access Denied Приступ садржају одбијен Error code %1 Кôд грешке %1 Failed loading page Неуспјех учитавања странице QupZilla can't load page. Капзила не може да учита страницу. QupZilla can't load page from %1. Капзила не може да учита страницу са %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Провјерите да ли сте погрешно укуцали адресу, на примјер <b>ww.</b>example.com умјесто <b>www.</b>example.com If you are unable to load any pages, check your computer's network connection. Ако не можете да учитате ниједну страницу, провјерите везу вашег рачунара са интернетом. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Ако су ваш рачунар или мрежа заштићени заштитним зидом или проксијем, провјерите да ли је Капзили дозвољен приступ интернету. Try Again Покушај поново JavaScript alert Јаваскрипт упозорење Prevent this page from creating additional dialogs Не дозволи овој страници да прави још дијалога Choose file... Изабери фајл... Cannot read data from <b>%1</b>. Upload was cancelled! Не могу да очитам податке са <b>%1</b>. Слање је отказано! Cannot read file! Не могу да очитам фајл! WebSearchBar Manage Search Engines Управљај моторима претраге Add %1 ... Додај %1 ... Paste And &Search Налијепи и &тражи Clear All Очисти све Show suggestions Приказуј приједлоге Search when engine changed Претражуј по промјени мотора WebView No Named Page Неименована страница Create Search Engine Направи мотор претраге Cut Исијеци Copy Копирај Paste Налијепи Select All Изабери све Default Подразумијеван Left to Right С лијева на десно Right to Left С десна на лијево Bold Подебљан Italic Курзиван Underline Подвучен &Reload &Учитај поново S&top Заус&тави Delete Обриши &Back На&зад &Forward На&пријед This frame Оквир Show &only this frame П&рикажи само овај оквир Show this frame in new &tab Прикажи овај оквир у новом &језичку Print frame Штампај оквир Zoom &in У&вличај &Zoom out У&мањи Reset Стварна величина Show so&urce of frame Прикажи извор о&квира Book&mark page &Обиљежи страницу &Save page as... &Сачувај страницу као... &Copy page link &Копирај везу странице Send page link... Пошаљи везу странице... &Print page &Штампај страницу Select &all Из&абери све Validate page Провјера кôда Translate page Преведи страницу Show so&urce code Прикажи &изворни кôд Show info ab&out site По&даци о сајту Open link in new &tab Отвори везу у новом &језичку Open link in new &window Отвори везу у новом &прозору B&ookmark link &Обиљежи везу &Save link as... &Сачувај везу као... Send link... Пошаљи везу... &Copy link address &Копирај везу Show i&mage П&рикажи слику Copy im&age К&опирај слику Copy image ad&dress Копирај &адресу слике &Save image as... Сачувај с&лику као... Send image... Пошаљи слику... Send text... Пошаљи текст... Google Translate Гуглов преводилац Dictionary Рјечник Go to &web address Иди на &веб адресу Search "%1 .." with %2 Тражи „%1“ на %2 Search with... Тражи на... &Play &Пусти &Pause &Паузирај Un&mute Вра&ти звук &Mute У&тишај &Copy Media Address &Копирај адресу медија &Send Media Address П&ошаљи адресу медија Save Media To &Disk &Сачувај медиј на диск Check &Spelling &Провјера правописа Languages Језици jsAlert Prevent this page from creating additional dialogs Не дозволи овој страници да прави још дијалога qupzilla-1.6.0/translations/sr_BA@latin.ts000066400000000000000000010565761226107126500206140ustar00rootroot00000000000000 AboutDialog About QupZilla O Kapzili Authors Programeri Authors and Contributors Programeri i saradnici < About QupZilla < O Kapzili <p><b>Application version %1</b><br/> <p><b>Izdanje programa %1</b><br/> <b>WebKit version %1</b></p> <b>Izdanje Vebkita %1</b></p> <small>Build time: %1 </small></p> <small>Datum kompajliranja: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Glavni programer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Saradnici:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Prevodioci:</b><br/>%1</p> AcceptLanguage Preferred Languages Prioritetni jezici Add... Dodaj... Remove Ukloni Up Gore Down Dolje Personal [%1] Lično [%1] AdBlockAddSubscriptionDialog Add Subscription Dodaj pretplatu Title: Naslov: Address: Adresa: Add new subscription to AdBlock: Dodaj novu pretplatu na AdBlok: AdBlockCustomList Custom Rules Posebni filteri AdBlockDialog AdBlock Configuration Podešavanja Adbloka Enable AdBlock Uključi Adblok Search... Traži... Options Opcije AdBlock Adblok Use only essential part of EasyList (for performance reasons) Koristi samo suštinski dio EasyList (povećava brzinu učitavanja) Add Rule Dodaj filter Remove Rule Ukloni filter Add Subscription Dodaj pretplatu Remove Subscription Ukloni pretplatu Update Subscriptions Ažuriraj pretplate Learn about writing rules... Naučite praviti filtere... AdBlockIcon AdBlock lets you block unwanted content on web pages Adblok vam omogućuje da blokirate nepoželjni sadržaj na veb stranicama Blocked popup window Blokiran iskačući prozor AdBlock blocked unwanted popup window. Adblok je blokirao neželjeni iskačući prozor. AdBlock Adblok Show AdBlock &Settings Prikaži Adblokova &podešavanja Disable on %1 Onemogući na %1 Disable only on this page Onemogući samo na ovoj stranici Blocked Popup Windows Blokirani iskačući prozori %1 with (%2) %1 sa (%2) No content blocked Nema blokiranog sadržaja Blocked URL (AdBlock Rule) - click to edit rule Blokirani URL (Adblokov filter) - klikni da urediš filter AdBlockManager Do you want to add <b>%1</b> subscription? Želite li da dodate pretplatu na <b>%1</b>? AdBlock Subscription AdBlok pretplata EasyList EasyList AdBlockTreeWidget Add Rule Dodaj filter Remove Rule Ukloni filter Add Custom Rule Dodaj posebni filter Please write your rule here: Upišite vaš filterski izraz ovdje: %1 (recently updated) %1 (nedavno ažurirano) AddAcceptLanguage Add Language Dodaj jezik Choose preferred language for web sites Izaberite prioritetni jezik za veb stranice Personal definition: Posebna definicija: AesInterface Warning! Upozorenje! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. Podaci su šifrovani novijim izdanjem Kapzile. Instalirajte najnovije izdanje. AutoFill Database (plaintext) Tekstualnu bazu Database (encrypted) Šifrovanu bazu Enter Master Password Unesite glavnu lozinku Permission is required, please enter Master Password: Potrebna je dozvola, unesite glavnu lozinku: Warning! Upozorenje! Entered password is wrong! Unesena lozinka je pogrešna! This backend needs a master password to be set! QupZilla just switches to its default backend Ova pozadina zahtijeva da glavna lozinka bude postavljena! Kapzila vraća podrazumijevanu pozadinu AutoFillManager Passwords are stored in: Lozinke se smještaju u: Change backend Promijeni pozadinu Backend options Opcije pozadine Passwords Lozinke Server sajt Username korisničko ime Password lozinka Import/Export Uvoz/izvoz Show Passwords Prikaži lozinke Edit Uredi Remove Ukloni Remove All Ukloni sve Exceptions Izuzeci Import Passwords from File... Uvezi lozinke iz fajla... Export Passwords to File... Izvezi lozinke u fajl... Search Traži Change backend... Promjena pozadine... Change backend: Za pozadinu koristi: Are you sure that you want to show all passwords? Želite li zaista da prikažete sve lozinke? Hide Passwords Sakrij lozinke Confirmation Potvrda Are you sure to delete all passwords on your computer? Želite li zaista da obrišete sve lozinke sa vašeg računara? Edit password Uredi lozinku Change password: Izmijeni lozinku: Choose file... Izaberi fajl... Cannot read file! Ne mogu da očitam fajl! Successfully imported Uspješno uvezeno Error while importing! Greška prilikom uvoza! Cannot write to file! Ne mogu da upišem u fajl! Successfully exported Uspješno izvezeno AutoFillNotification Update Ažuriraj Remember Upamti Never For This Site Nikad za ovaj sajt Not Now Ne sada on %1 na %1 for <b>%1</b> za <b>%1</b> Do you want QupZilla to update saved password %1? Želite li da Kapzila ažurira lozinku %1? Do you want QupZilla to remember the password %1 %2? Želite li da Kapzila upamti lozinku %1 %2? AutoFillWidget Choose username to login Korisničko ime za prijavu Login Prijava Login as <b>%1</b> Prijavi se kao <b>%1</b> BookmarkIcon Bookmark this Page Obilježi ovu stranicu Edit this bookmark Uredi ovaj obilježivač BookmarksImportDialog Import Bookmarks Uvoz obilježivača <b>Import Bookmarks</b> <b>Uvoz obilježivača</b> From File Iz fajla Internet Explorer Internet Eksplorer Choose browser from which you want to import bookmarks: Izaberite pregledač iz koga želite da uvezete obilježivače: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Napomena:</b> Trenutno samo uvoz iz HTML fajla podržava i uvoženje fascikli. Choose... Izaberi... Try to fetch icons for all bookmarks (may take a while) Pokušaj da dobaviš ikone za sve obilježivače (može da potraje) Fetching icons, please wait... Dobavljam ikone, sačekajte... Title ime Url url Next Sljedeće Cancel Poništi <b>Importing from %1</b> <b>Uvozim iz %1</b> Finish Završi Please press Finish to complete importing process. Pritisnite „Završi“ da biste završili proces uvoza. Error! Greška! The file doesn't contain any bookmark. Fajl ne sadrži nijedan obilježivač. Choose directory... Izaberi direktorijum... Choose file... Izaberi fajl... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilin Fajerfoks usprema obilježivače u <b>places.sqlite</b> Skulajt bazi podataka. Ovaj fajl se obično nalazi u Please choose this file to begin importing bookmarks. Izaberite ovaj fajl da biste otpočeli uvoze obilježivača. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Guglov Hroum usprema obilježivače u <b>Bookmarks</b> tekstualnom fajlu. Ovaj fajl se obično nalazi u Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera usprema obilježivače u <b>bookmarks.adr</b> tekstualnom fajlu. Ovaj fajl se obično nalazi u You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Možete uvesti obilježivače iz bilo kog pregledača koji podržava izvoz u HTML-u. Ovaj fajl obično ima ove sufikse Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Eksplorer usprema obilježivače u fascikli <b>Favorites</b>. Ovaj fajl se obično nalazi u Please choose this folder to begin importing bookmarks. Izaberite ovu fasciklu da biste otpočeli uvoz obilježivača. No Error Nema greške Unable to open file. Ne mogu da otvorim fajl. Cannot evaluate JSON code. Ne mogu da obradim JSON fajl. File does not exist. Fajl ne postoji. Unable to open database. Is Firefox running? Ne mogu da otvorim bazu podataka. Da li je Fajerfoks pokrenut? Directory does not exist. Direktorijum ne postoji. The directory does not contain any bookmarks. Direktorijum ne sadrži nijedan obilježivač. BookmarksManager Bookmarks Obilježivači Add Folder Dodaj fasciklu Title ime Url url Expand All Raširi sve Import and Export Uvoz i izvoz Collapse All Sažmi sve Import Bookmarks... Uvezi obilježivače... Export Bookmarks to HTML... Izvezi obilježivače u HTML... Export to HTML... Izvoz u HTML... Add new folder Dodaj novu fasciklu Choose parent folder for new folder: Roditeljska fascikla: Choose name for new bookmark folder: Ime nove fascikle obilježivača: Add new subfolder Dodajte novu podfasciklu Choose name for new subfolder in bookmarks toolbar: Ime nove podfascikle u traci obilježivača: Rename Folder Preimenuj fasciklu Choose name for folder: Ime za fasciklu: Add Subfolder Dodaj podfasciklu Rename folder Preimenuj fasciklu Remove folder Ukloni fasciklu Open link in current &tab Otvori vezu u &tekućem jezičku Open link in &new tab Otvori vezu u &novom jezičku Move bookmark to &folder Pomjeri obilježivač u &fasciklu Change icon Promijeni ikonu Rename bookmark Preimenuj obilježivač Remove bookmark Ukloni obilježivač <b>Warning: </b>You already have bookmarked this page! <b>Upozorenje: </b>Već ste obilježili ovu stranicu! Choose name and location of this bookmark. Odredite ime i lokaciju za ovaj obilježivač. Add New Bookmark Dodavanje obilježivača Choose folder for bookmarks: Izaberite fasciklu obilježivača: Bookmark All Tabs Obilježi sve jezičke BookmarksModel Bookmarks In Menu Obilježivači u meniju Bookmarks In ToolBar Obilježivači u traci alatki Unsorted Bookmarks Nerazvrstani obilježivači BookmarksSideBar Search... Traži... Open link in current &tab Otvori vezu u &tekućem jezičku Open link in &new tab Otvori vezu u &novom jezičku Copy address Kopiraj adresu &Delete &Obriši BookmarksToolbar &Bookmark Current Page O&bilježi tekuću stranicu Bookmark &All Tabs Obilježi sve &jezičke &Organize Bookmarks &Organizuj obilježivače Show Most &Visited Prikaži &najposjećenije Show Only Icons Prikaži samo ikone &Hide Toolbar &Sakrij traku obilježivača Open bookmark Otvori Open bookmark in new tab Otvori u novom jezičku Move right Pomjeri desno Move left Pomjeri lijevo Edit bookmark Uredi obilježivač Remove bookmark Ukloni obilježivač Edit bookmark: Uredi obilježivač: Title: Ime: Url: Url: Edit Bookmark Uređivanje obilježivača Most visited Najposjećenije Sites you visited the most Sajtovi koje ste najviše posjećivali Empty Prazno BookmarksTree Bookmarks Obilježivači New Folder... Nova fascikla... BookmarksWidget Add to Speed Dial Dodaj na brzo biranje Save Sačuvaj Name: Ime: Folder: Fascikla: Remove from Speed Dial Ukloni sa brzog biranja Remove Ukloni BrowsingLibrary Library Biblioteka Search... Traži... History Istorijat Bookmarks Obilježivači RSS RSS CertificateInfoWidget <b>Issued To</b> <b>Izdat za</b> Common Name (CN): Zajedničko ime (CN): Organization (O): Organizacija (O): Organizational Unit (OU): Organizaciona jedinica (OU): Serial Number: Serijski broj: <b>Issued By</b> <b>Izdavač</b> <b>Validity</b> <b>Valjanost</b> Issued On: Datum izdavanja: Expires On: Datum isteka: ClearPrivateData Clear Recent History Brisanje privatnih podataka Choose what you want to delete: Obriši sljedeće stavke: Clear history istorijat posjećenih stranica Clear cache keš Clear icons ikone <b>Clear Recent History</b> <b>Obriši nedavni istorijat</b> Earlier Today ranije danas Week nedjelje Month mjeseca All Sve Clear web databases veb baze Optimize database Optimizuj bazu podataka Clear local storage lokalno skladište Clear cookies kolačiće Clear Private Data Brisanje privatnih podataka Are you sure to clear selected private data? Želite li zaista da obrišete izabrane privatne podatke? Database Optimized Baza podataka je optimizovana Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 Baza podataka je uspješno optimizovana.<br/><br/><b>Veličina baze prije: </b>%1<br/><b>Veličina baze nakon: </b>%2 ClickToFlash Object blocked by ClickToFlash Objekat blokirao Klikni-za-fleš Show more information about object Prikaži još podataka o objektu Delete object Obriši objekat Add %1 to whitelist Dodaj %1 na spisak dozvoljenih Flash Object Fleš objekat <b>Attribute Name</b> <b>Svojstvo</b> <b>Value</b> <b>Vrijednost</b> No more information available. Nema više dostupnih podataka. CookieManager Cookies Kolačići Stored Cookies Uspremljeni kolačići Find: Nađi: These cookies are stored on your computer: Ovi kolačići su uspremljeni na vašem računaru: Server sajt Cookie name ime kolačića Name: Ime: Value: Vrijednost: Server: Server: Path: Putanja: Secure: Bezbjednost: Expiration: Ističe: <cookie not selected> <kolačić nije izabran> Remove all cookies Ukloni sve kolačiće Remove cookies Ukloni kolačiće Cookie Filtering Filtriranje kolačića <b>Cookie whitelist</b> <b>Spisak dozvoljenih kolačića</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Kolačići sa ovih servera će UVIJEK biti prihvatani (čak i ako isključite uspremanje kolačića) Add Dodaj Remove Ukloni <b>Cookie blacklist</b> <b>Spisak nedozvoljenih kolačića</b> Cookies from these servers will NEVER be accepted Kolačići sa ovih servera NIKAD neće biti prihvatani Settings Podešavanja <b>Cookie Settings</b> <b>Postavke kolačića</b> Allow storing of cookies Dozvoli uspremanje kolačića Delete cookies on close Obriši kolačiće po zatvaranju Match domain exactly Poklapaj domen tačno Filter tracking cookies Prečišćaj kolačiće pratioce <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! <b>Upozorenje:</b> Tačno poklapanje domena i prečišćanje kolačića pratioca može dovesti do odbijanja nekih kolačića sa sajtova. Ako imate problema sa kolačićima, isključite ove opcije! Search Traži Confirmation Potvrda Are you sure to delete all cookies on your computer? Želite li zaista da obrišete sve kolačiće sa vašeg računara? Secure only Samo bezbijedne veze All connections Sve veze Session cookie Kolačić sesije Remove cookie Ukloni kolačić Add to whitelist Dodavanje u dozvoljene Add to blacklist Dodavanje u nedozvoljene DownloadFileHelper Save file as... Sačuvaj fajl kao... NoNameDownload Neimenovano_preuzimanje DownloadItem Remaining time unavailable Preostalo vrijeme nije dostupno Error: Cannot write to file! Greška: ne mogu da upišem fajl! Done - %1 Gotovo - %1 Cancelled Otkazano few seconds nekoliko sekundi %n seconds %n sekunda %n sekunde %n sekundi %n minutes %n minuta %n minute %n minuta %n hours %n sat %n sata %n sati Unknown speed Brzina nije poznata kB/s kB/s MB/s MB/s GB/s GB/s Unknown size Veličina nije poznata %2 - unknown size (%3) %2 - nepoznate veličine (%3) Remaining %1 - %2 of %3 (%4) Preostalo %1 - %2 od %3 (%4) Cancelled - %1 Otkazano - %1 Delete file Obriši fajl Do you want to also delete dowloaded file? Želite li da obrišete i preuzeti fajl takođe? Open File Otvori fajl Open Folder Otvori fasciklu Go to Download Page Idi na stranicu preuzimanja Copy Download Link Kopiraj vezu preuzimanja Cancel downloading Otkaži preuzimanje Remove Ukloni Error Greška Not found Nije nađeno Sorry, the file %1 was not found! Fajl %1 nije nađen! Error: Greška: DownloadManager Download Manager Menadžer preuzimanja Clear Očisti %1% of %2 files (%3) %4 remaining %1% od %2 fajlova (%3) %4 do završetka %1% - Download Manager %1% - menadžer preuzimanja Download Finished Preuzimanje je završeno All files have been successfully downloaded. Svi fajlovi su uspješno preuzeti. Warning Upozorenje Are you sure to quit? All uncompleted downloads will be cancelled! Želite li zaista da napustite? Sva nezavršena preuzimanja će biti otkazana! DownloadOptionsDialog Opening Otvaram Copy download link Kopiraj vezu preuzimanja You have chosen to open Izabrali ste da otvorite which is a: koji je: What should QupZilla do with this file? Šta da radim sa ovim fajlom? Open... Otvori... Save File Sačuvaj fajl Download with External Manager Preuzmi spoljašnjim menadžerom from: sa: Opening %1 Otvaram %1 Download link copied. Veza je kopirana. EditSearchEngine Name: Ime: Url: Url: Shortcut: Prečica: Icon: Ikona: <b>Note: </b>%s in url or post data represent searched string <b>Napomena:</b> %s u URL-u ili POST podacima predstavlja traženi izraz Post Data: POST podaci: Change... Promijeni... FileSchemeReply No Error Nema greške Up to higher level directory U roditeljsku fasciklu Show hidden files Prikaži skrivene fajlove Name Ime Size Veličina Last modified Izmijenjeno Index for %1 Indeks od %1 Folder is empty. Fascikla je prazna. FtpDownloader Cancelled! Otkazano! FtpSchemeReply Up to higher level directory U roditeljsku fasciklu Show hidden files Prikaži skrivene fajlove Name Ime Size Veličina Last modified Izmijenjeno Index for %1 Indeks od %1 Folder is empty. Fascikla je prazna. Unknown command Nepoznata naredba HTML5PermissionsDialog HTML5 Permissions HTML5 dozvole Notifications Obavještenja Site sajt Behaviour radnja Remove Ukloni Geolocation Geolokacija Allow dozvoli Deny odbij HTML5PermissionsNotification Remember Upamti Allow Dozvoli Deny Odbij this site ovaj sajt Allow %1 to show desktop notifications? Dozvoli da %1 prikazuje obavještenja na radnoj površi? Allow %1 to locate your position? Dozvoli da %1 pronađe vaš položaj? History No Named Page Neimenovana stranica January Januar February Februar March Mart April April May Maj June Jun July Jul August Avgust September Septembar October Oktobar November Novembar December Decembar HistoryManager History Istorijat Delete Obriši Clear All History Obriši istorijat Confirmation Potvrda Are you sure to delete all history? Želite li zaista da obrišete čitav istorijat? HistoryModel Title Naslov Address Adresa Visit Date Datum posjete Visit Count Broj posjeta Today Danas This Week Ove nedjelje This Month Ovoga mjeseca HistorySideBar Search... Traži... HistoryView Open link in current tab Otvori vezu u tekućem jezičku Open link in new tab Otvori vezu u novom jezičku Copy title Kopiraj naslov Copy address Kopiraj adresu Remove Ukloni IconChooser Choose icon... Izaberi ikonu... From file Iz fajla Image (.png, .jpg, .jpeg, .gif) Slika (.png, .jpg, .jpeg, .gif) Choose file... Izaberi fajl... From database Iz baze Site Url: Url sajta: Image files Fajlovi slika JsOptions JavaScript Options Opcije Javaskripti Allow JavaScript to: Dozvoli javaskripti da: Close windows zatvori prozor Open popup windows otvori iskačući prozor Change window size promijeni veličinu prozora Hide menu bar sakrije traku menija Hide status bar sakrije traku stanja Hide tool bar sakrije traku alatki Access clipboard pristupi klipbordu LicenseViewer License Viewer Pregledač licence LocationBar Enter URL address or search on %1 Unesite URL adresu ili tražite na %1 Paste And &Go Nalijepi i &idi Clear All Očisti sve .co.uk Append domain name on ALT + Enter = Should be different for every country .rs.ba Show information about this page Prikaži podatke o ovoj stranici LocationCompleterView Switch to tab Aktiviraj jezičak MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? Kapzila trenutno nije vaš podrazumijevani pregledač veba. Da li želite da postavite za podrazumijevanog pregledača? Always perform this check when starting QupZilla. Uvijek izvrši ovu provjeru po pokretanju Kapzile. Default Browser Podrazumijevani pregledač QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. Kapzila je nov, brz i siguran veb pregledač otvorenog koda. Licenciran pod izdanjem 3 GPL licence ili (po vašem nahođenju) bilo kojim kasnijim izdanjem licence. Baziran na VebKit jezgru i Kut radnom okruženju. MasterPasswordDialog Encrypted DataBase Settings Postavke šifrovane baze podataka Set/Change Master Password... Postavi/promijeni glavnu lozinku... Clear Master Password... Ukloni glavnu lozinku... This backend does not work without a master password. Ova pozadina ne radi ako glavna lozinka nije postavljena. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. Ovo će ukloniti glavnu lozinku i premjestiti šifrovane podatke u pozadinu „Tekstualna baza“ i aktivirati je. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Glavna lozinka štiti lozinke za sajtove i podatke formulara. Ako je postavite, biće vam zatražena jednom po sesiji. Current Password: Tekuća lozinka: New Password: Nova lozinka: Confirm Password: Potvrdi lozinku: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. <b>Napomena:</b> Glavnu lozinku ne možete povratiti ako je zaboravite. Warning! Upozorenje! You entered a wrong password! Unijeli ste pogrešnu lozinku! New/Confirm password fields do not match! Lozinke se ne poklapaju! Some data has not been decrypted. The master password was not cleared! Dio podataka nije dešifrovan. Glavna lozinka nije uklonjena! Are you sure to clear master password and decrypt data? Želite li zaista da uklonite glavnu lozinku i dešifrujete podatke? NavigationBar No Named Page Neimenovana stranica Back Nazad Forward Naprijed Home Domaća New Tab Novi jezičak Main Menu Glavni meni Exit Fullscreen Napusti cio ekran Clear history Obriši istorijat NetworkManager SSL Certificate Error! Greška SSL sertifikata! The page you are trying to access has the following errors in the SSL certificate: Stranica kojoj pokušavate da pristupite ima sljedeće greške u SSL sertifikatu: <b>Organization: </b> <b>Organizacija: </b> <b>Domain Name: </b> <b>Ime domena: </b> <b>Expiration Date: </b> <b>Datum isteka: </b> <b>Error: </b> <b>Greška: </b> Would you like to make an exception for this certificate? Želite li da napravite izuzetak za ovaj sertifikat? Authorisation required Potrebno ovlašćenje Username: Korisničko ime: Password: Lozinka: Save username and password on this site Sačuvaj korisničko ime i lozinku na ovom sajtu A username and password are being requested by %1. The site says: "%2" %1 zahtijeva korisničko ime i lozinku. Sajt kaže: „%2“ FTP authorisation required Potrebno je ovlašćenje za FTP Login anonymously Anonimna prijava A username and password are being requested by %1:%2. %1:%2 zahtijeva korisničko ime i šifru. Proxy authorisation required Potrebno je ovlašćenje za proksi Remember username and password for this proxy. Zapamti korisničko ime i lozinku za ovaj proksi. A username and password are being requested by proxy %1. Proksi %1 zahtijeva korisničko ime i šifru. PageScreen Page Screen Snimak stranice Format: Sačuvaj kao: Location: Sačuvaj u: Browse... Pregledaj... Save as %1 %1 Choose location... Odabir odredišta... File '%1' already exists. Do you want to overwrite it? Fajl „%1“ već postoji. Želite li da ga prebrišete? File already exists Fajl već postoji PluginsList Application Extensions Programski priključci Allow Application Extensions to be loaded Dozvoli učitavanje programskih priključaka Settings Podešavanja WebKit Plugins Vebkitovi priključci <b>Click To Flash Plugin</b> <b>„Klikni-za-fleš“ priključak</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Klikni-za-fleš je priključak koji zaustavlja automatsko učitavanje fleš sadržaja na stranici. Uvijek ga možete učitati ručno klikom na ikonu za pokretanje fleš sadržaja. Whitelist spisak dozvoljenih Add Dodaj Remove Ukloni Allow Click To Flash Dozvoli Klikni-za-fleš PluginsManager Add site to whitelist Dodavanje u dozvoljene Server without http:// (ex. youtube.com) Adresa servera bez „http://“ (npr. youtube.com) Error! Greška! Cannot load extension! Ne mogu da učitam proširenje! PopupWebView Inspect Element Provjeri element PopupWindow File Fajl &Save Page As... &Sačuvaj stranicu kao... Save Page Screen Sačuvaj snimak stranice Send Link... Pošalji vezu... &Print... &Štampaj... Close Zatvori Edit Uređivanje &Undo &Opozovi &Redo &Ponovi &Cut &Isijeci C&opy &Kopiraj &Paste &Nalijepi Select All Izaberi sve Find Nađi View Prikaz &Stop &Zaustavi &Reload &Učitaj ponovo Zoom &In U&veličaj Zoom &Out U&manji Reset Stvarna veličina &Page Source &Izvor stranice %1 - QupZilla %1 - Kapzila Preferences Preferences Podešavanja QupZilla Kapzila General Opšte Appearance Izgled Tabs Jezičci Browsing Pregledanje Fonts Fontovi Keyboard Shortcuts Prečice tastature Downloads Preuzimanja Password Manager Menadžer lozinki Privacy Privatnost Notifications Obavještenja Extensions Proširenja Other Ostalo Use current Koristi tekuću Note: You cannot delete active profile. Napomena: Ne možete obrisati aktivni profil. Create New Napravi novi Delete Obriši <b>Launching</b> <b>Pokretanje</b> After launch: Po pokretanju: Open blank page otvori praznu stranicu Open homepage otvori domaću stranicu Open speed dial otvori brzo biranje Restore session obnovi sesiju Homepage: Domaća stranica: On new tab: Na novom jezičku: Open blank tab otvori prazan jezičak Open other page... otvori drugu stranicu... <b>Profiles</b> <b>Profili</b> Startup profile: Početni profil: Check for updates on start Potraži nadogradnje po pokretanju Active profile: Aktivni profil: In order to change language, you must restart browser. Da biste promijenili jezik, morate ponovo pokrenuti pregledač. <b>Language</b> <b>Jezik</b> Available translations: Dostupni prevodi: Don't load tabs until selected Ne učitavaj jezičke dok ne budu izabrani Check to see if QupZilla is the default browser on startup Provjera podrazumijevanog pregledača po startu Check Now Provjeri odmah Themes Teme Advanced options Napredne opcije <b>Browser Window</b> <b>Prozor pregledača</b> Show StatusBar on start Prikaži traku stanja po pokretanju Show Bookmarks ToolBar on start Prikaži traku obilježivača po pokretanju Show Navigation ToolBar on start Prikaži traku navigacije po pokretanju <b>Navigation ToolBar</b> <b>Traka navigacije</b> Show Home button Prikaži dugme Domaća Show Back / Forward buttons Prikaži dugmad Nazad / Naprijed <b>Background<b/> <b>Pozadina<b/> Use transparent background Koristi prozirnu pozadinu Show web search bar Prikaži traku veb pretrage Show Add Tab button Prikaži dugme Dodaj jezičak Show Reload / Stop buttons Prikaži dugmad Ponovo učitaj / Zaustavi Tabs behaviour Ponašanje jezičaka Show tab previews Prikazuj preglede jezičaka Make tab previews animated Animiraj preglede jezičaka Hide tabs when there is only one tab Sakrij traku sa jezičcima kada ima samo jedan Activate last tab when closing active tab Aktiviraj prethodno korišćen jezičak pri zatvaranju tekućeg Open new tabs after active tab Otvaraj nove jezičke poslije aktivnog Open new empty tabs after active tab Otvaraj prazne jezičke poslije aktivnog Automatically switch to newly opened tab Automatski fokusiraj novootvoreni jezičak Don't quit upon closing last tab Ne napuštaj po zatvaranju posljednjeg jezička Ask when closing multiple tabs Potvrdi zatvaranje prozora sa više jezičaka Closed tabs list instead of opened in tab bar Spisak zatvorenih umjesto spiska otvorenih jezičaka na traci jezičaka Address Bar behaviour Ponašanje trake adrese Suggest when typing into address bar: Pri kucanju u traci adrese predlaži: History and Bookmarks istorijat i obilježivače History istorijat Bookmarks obilježivače Nothing ništa Press "Shift" to not switch the tab but load the url in the current tab. Pritisnite Shift taster da učitate URL u tekućem jezičku. Propose to switch tab if completed url is already loaded. Predlaži aktiviranje jezička ako je URL već otvoren. Always show go icon Uvijek prikazuj ikonu „idi na sajt“ Select all text by double clicking in address bar Izaberi sav tekst dvoklikom u traci adrese Select all text by clicking in address bar Izaberi sav tekst klikom u traci adrese Search with Default Engine Traži pomoću podrazumijevanog motora Show loading progress in address bar Prikaži napredak učitavanja u traci adrese Fill Ispun Bottom Dno Top Vrh Custom color: Posebna boja: Select color Izaberi boju ... ... Reset Podrazumijevana Web Configuration Veb postavke Allow Netscape Plugins (Flash plugin) Dozvoli Netskejpove priključke (Fleš) Allow JavaScript Dozvoli Javaskripte Allow JAVA Dozvoli Javu Allow DNS Prefetch Predohvatanje DNS unosa Enable XSS Auditing try to detect possible XSS attacks when executing javascript Uključi IksSS provjeravanje Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Štampaj pozadinu elementa Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Uključi veze u lanac fokusa Animated scrolling Animirano klizanje Enable caret browsing Pregledanje pomoću kursora Enable spatial navigation Prostorna navigacija Zoom text only Uveličavaj samo tekst Mouse wheel scrolls Točkić miša kliza lines on page linija na stranici Default zoom on pages: Podrazumijevano uveličanje stranica: Local Storage Lokalno skladište Maximum Najviše 50 MB 50 MB 1 1 Maximum pages in cache: Najviše stranica u kešu: Allow storing network cache on disk Dozvoli smještanje mrežnog keša na disk Store cache in: Smještaj keš u: Allow saving history Dozvoli čuvanje istorijata Delete history on close Obriši istorijat po zatvaranju Allow local storage of HTML5 web content Dozvoli lokalno smještanje HTML5 veb sadržaja Delete locally stored HTML5 web content on close Obriši lokalni HTML5 veb sadržaj po zatvaranju Delete now Obriši sada Proxy Configuration Postavke proksija Proxy Auto-Config (.pac) file Fajl auto-postavki proksija (.pac) Reload Učitaj ponovo HTTP HTTP SOCKS5 SOCKS5 Port: Port: Username: Korisničko ime: Password: Lozinka: Don't use on: Ne koristi na: Manual configuration Ručne postavke System proxy configuration Sistemske postavke Do not use proxy Ne koristi proksi <b>Exceptions</b> <b>Izuzeci</b> Server: Server: Use different proxy for https connection Koristi drugi proksi za HTTPS vezu Use script for automatic configuration: Koristi skriptu za automatsku postavu: <b>Font Families</b> <b>Porodice fonta</b> Standard Standardni Fixed Fiksni Serif Serifni Sans Serif Beserifni Cursive Kurzivni Fantasy Fantazijski <b>Font Sizes</b> <b>Veličine fonta</b> Fixed Font Size Fiksni font Default Font Size Podrazumijevani font Minimum Font Size Najmanja veličina Minimum Logical Font Size Najmanja moguća veličina <b>Shortcuts</b> <b>Prečice</b> Switch to tabs with Alt + number of tab Aktiviraj jezičke sa Alt + broj jezička Load speed dials with Ctrl + number of speed dial Učitavaj brza biranja sa Ctrl + broj brzog biranja Add .co.uk domain by pressing ALT key in address bar Dodaj .rs.ba domen pritiskom na ALT taster <b>Download Location</b> <b>Odredište preuzimanja</b> Ask everytime for download location Pitaj svaki put za odredište Use defined location: Koristi odredište: <b>Download Options</b> <b>Opcije preuzimanja</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Koristi sistemski dijalog fajlova (može prouzročiti probleme za preuzimanje SSL bezbijednog sadržaja) Close download manager when downloading finishes Zatvori menadžera preuzimanja kada se preuzimanje završi <b>External download manager</b> <b>Spoljašnji menadžer preuzimanja</b> Use external download manager Koristi spoljašnji menadžer preuzimanja Executable: Izvršna: Arguments: Argumenti: Leave blank if unsure Ostavite prazno ako niste sigurni <b>%d</b> will be replaced with URL to be downloaded <b>%d</b> će biti zamijenjeno adresom preuzimanja <b>AutoFill options</b> <b>Opcije automatske popune</b> Allow saving passwords from sites Dozvoli uspremanje lozinki sa sajtova Send Referer header to servers Šalji zaglavlje pratioca serverima <b>Cookies</b> <b>Kolačići</b> Send Do Not Track header to servers Šalji DNT (Ne Prati Me) zaglavlje serverima <b>Other</b> <b>Razno</b> Manage CA certificates Upravljaj sertifikatima Certificate Manager Menadžer sertifikata <b>SSL Certificates</b> <b>SSL sertifikati</b> <b>JavaScript</b> <b>Javaskripte</b> Manage JavaScript privacy options Upravljaj postavkama privatnosti JavaScript options Postavke javaskripti Cookies Manager Menadžer kolačića Manage Cookies Upravljaj kolačićima <b>HTML5 Permissions</b> <b>HTML5 dozvole</b> Manage HTML5 permissions Upravljaj HTML5 odobrenjima HTML5 Permissions HTML5 dozvole <b>Notifications</b> <b>Obavještenja</b> Use OSD Notifications Koristi OSD obavještenja Use Native System Notifications (Linux only) Koristi izvorna sistemska obavještenja (samo za Linuks) Do not use Notifications Ne koristi OSD obavještenja Expiration timeout: Vrijeme isteka: seconds sekundi <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Napomena: </b>Možete promijeniti položaj OSD obavještenja prevlačenjem po ekranu. StyleSheet automatically loaded with all websites: Opis stila koji će automatski biti učitan za sve sajtove: Languages Jezici <b>Preferred language for web sites</b> <b>Prioritetni jezik za veb stranice</b> <b>Change browser identification</b> <b>Promjena identifikacije pregledača</b> User Agent Manager Menadžer identifikacije pregledača Default Podrazumijevan Set as default Postavi za podrazumijevan OSD Notification OSD obavještenje Drag it on the screen to place it where you want. Prevucite ga po ekranu na željeni položaj. Choose download location... Odabir odredišta za preuzimanje... Choose stylesheet location... Odabir fajla opisa stila... Deleted Obrisano Choose executable location... Odabir lokacije izvršnog fajla... Choose cache path... Odabir putanje za keš... New Profile Novi profil Enter the new profile's name: Unesite ime novog profila: Error! Greška! This profile already exists! Ovaj profil već postoji! Cannot create profile directory! Ne mogu da napravim direktorijum profila! Confirmation Potvrda Are you sure to permanently delete "%1" profile? This action cannot be undone! Želite li zaista trajno da obrišete „%1“ profil? Ova radnja ne može da se poništi! Select Color Izbor boje QObject Native System Notification Izvorna sistemska obavještenja Save file as... Sačuvaj fajl kao... The file is not an OpenSearch 1.1 file. Ovaj fajl nije OpenSearch 1.1 fajl. <not set in certificate> <nije postavljeno u sertifikatu> Unknown size Veličina nije poznata KB KB MB MB GB GB Executable: Izvršna: Arguments: Argumenti: Cannot start external program Ne mogu da pokrenem spoljašnji program Cannot start external program! %1 Ne mogu da pokrenem spoljašnji program! %1 QtWin Open new tab Otvori novi jezičak Opens a new tab if browser is running Otvara novi jezičak ako je pregledač pokrenut Open new window Otvori novi prozor Opens a new window if browser is running Otvara novi prozor ako je pregledač pokrenut Open download manager Otvori menadžera preuzimanja Opens a download manager if browser is running Otvara menadžera preuzimanja ako je pregledač pokrenut QupZilla QupZilla Kapzila Private Browsing Enabled Privatno pregledanje je omogućeno IP Address of current page IP adresa tekuće stranice &About QupZilla &O Kapzili Pr&eferences Po&dešavanja Quit Napusti &File &Fajl &New Window &Novi prozor New Tab Novi jezičak Open Location Otvori lokaciju Open &File... Otvori &fajl... Close Tab Zatvori jezičak Close Window Zatvori prozor &Save Page As... &Sačuvaj stranicu kao... Save Page Screen Sačuvaj snimak stranice Send Link... Pošalji vezu... &Print... &Štampaj... Import bookmarks... Uvezi obilježivače... &Edit &Uređivanje &Undo &Opozovi &Redo &Ponovi &Cut &Isijeci C&opy &Kopiraj &Paste &Nalijepi Select &All Izaberi &sve &Find N&ađi &View &Prikaz &Navigation Toolbar Traka &navigacije &Bookmarks Toolbar Traka &obilježivača Sta&tus Bar Traka &stanja &Menu Bar Traka &menija &Tabs on Top &Jezičci na vrhu &Fullscreen &Cio ekran &Stop &Zaustavi &Reload &Učitaj ponovo Character &Encoding &Kodiranje znakova Enable &Caret Browsing Pregledanje ku&rsorom Toolbars Trake alatki Sidebars Bočne trake Zoom &In U&veličaj Zoom &Out U&manji Reset Stvarna veličina &Page Source &Izvor stranice Hi&story &Istorijat &Back Na&zad &Forward Na&prijed &Home &Domaća Show &All History Prikaži &sav istorijat Closed Tabs Zatvoreni jezičci Recently Visited Nedavno posjećeno Most Visited Najposjećenije &Bookmarks &Obilježivači Bookmark &This Page Obilježi ovaj &jezičak Bookmark &All Tabs Obilježi &sve jezičke Organize &Bookmarks &Organizuj obilježivače &Tools Ala&tke &Web Search Pretraga &veba Page &Info Podaci o &sajtu &Download Manager Menadžer &preuzimanja &Cookies Manager Menadžer &kolačića &AdBlock &Adblok RSS &Reader Čitač RSS &dovoda Web In&spector Veb i&nspektor Clear Recent &History &Obriši privatne podatke New &Private Window Novi p&rivatni prozor &Help Po&moć About &Qt O &Kutu Information about application Podaci o programu Configuration Information Postavke programa Report &Issue &Prijavi problem Restore &Closed Tab &Obnovi zatvoreni jezičak (Private Browsing) (privatno pregledanje) Empty Prazno Restore All Closed Tabs Obnovi sve zatvorene jezičke Clear list Očisti spisak Other Ostalo %1 - QupZilla %1 - Kapzila HTML files HTML fajlovi Image files Fajlovi slika Text files Fajlovi teksta All files Svi fajlovi Open file... Otvori fajl... QupZilla %1 (%2) Kapzila %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Još uvijek imate %1 otvorenih jezičaka a vaša sesija neće biti sačuvana. Želite li zaista da napustite Kapzilu? Don't ask again Ne pitaj ponovo There are still open tabs Još uvijek imate otvorenih jezičaka QupZillaSchemeReply No Error Nema greške Not Found Nije nađeno Report Issue Prijavi problem If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Ako imate problema sa Kapzilom najprije pokušajte da onemogućite proširenja. <br/>Ako to ne pomogne, onda popunite ovaj formular: Your E-mail Vaša e-adresa Issue type Tip problema Issue description Opis problema Send Pošalji E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. E-adresa nije obavezna<br/><b>Napomena: </b>Najprije <a href=%1>ovdje</a> pročitajte kako napraviti izvještaj o grešci. Please fill out all required fields! Popunite sva obavezna polja! Start Page Početna stranica Search on Web Traži na vebu Search results provided by DuckDuckGo Rezultate pretrage obezbjeđuje DakDakGou About QupZilla O Kapzili <h1>Private Browsing</h1> <h1>Privatno pregledanje</h1> Information about version Podaci o izdanju Copyright Autorska prava Version Izdanje WebKit version Izdanje Vebkita Main developer Glavni programer Contributors Saradnici Translators Prevodioci Speed Dial Brzo biranje Add New Page Dodaj novu stranicu Edit Uredi Remove Ukloni Reload Učitaj ponovo Are you sure to remove this speed dial? Želite li zaista da uklonite ovo brzo biranje? Load title from page Učitaj naslov sa stranice Url Url Title Ime Apply Primijeni Close Zatvori New Page Nova stranica Speed Dial settings Postavke brzog biranja Placement: Položaj: Auto Auto Cover Prekrij Fit Uklopi Fit Width Uklopi širinu Fit Height Uklopi visinu Use background image Slika za pozadinu Select image Izaberi sliku Maximum pages in a row: Najviše brzih biranja u redu: Change size of pages: Promijeni veličinu brzih biranja: Center speed dials Centriraj brza biranja Restore Session Obnovi sesiju Oops, QupZilla crashed. Ups, Kapzila se srušila. We apologize for this. Would you like to restore the last saved state? Izvinjavamo se zbog ovoga. Želite li da obnovite posljednje sačuvano stanje? Try removing one or more tabs that you think cause troubles Pokušajte da uklonite jedan ili više jezičaka za koje mislite da uzrokuju probleme Or you can start completely new session Ili možete pokrenuti novu sesiju Configuration Information Podaci o postavkama This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Ova stranica sadrži podatke o tekućim Kapzilinim podešavanjima bitnim za rješavanje problema. Uključite ove podatke prilikom slanja izvještaja o grešci. Browser Identification Identifikacija pregledača Paths Putanje Build Configuration Parametri kompajliranja Preferences Podešavanja Option Postavka Value Vrijednost Extensions Proširenja Name Ime Author Autor Description Opis Application version Izdanje programa Qt version Izdanje Kut-a Build time Datum kompajliranja Platform Platforma Profile Profil Settings Podešavanja Saved session Sačuvane sesije Pinned tabs Zakačeni jezičci Data Podaci Themes Teme Translations Prevodi Disabled isključeno <b>Enabled</b> <b>uključeno</b> Debug build Pronalaženje grešaka WebGL support VebGL podrška Windows 7 API Vindouz 7 API KDE integration Integracija u KDE Portable build Prenosno izdanje No available extensions. Nema dostupnih proširenja. RSSManager RSS Reader Čitač RSS dovoda Empty Prazno Add feed Dodaj dovod Edit feed Uredi dovod Delete feed Obriši dovod Reload Učitaj ponovo News novosti Loading... Učitavam... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Nemate nijedan RSS dovod.<br/> Dodajte ih pomoću RSS ikone u traci navigacije na sajtu koji nudi dovode. Add new feed Dodavanje novog dovoda Please enter URL of new feed: Unesite URL novog dovoda: New feed Novi dovod Fill title and URL of a feed: Unesite ime i URL dovoda: Feed title: Ime dovoda: Feed URL: URL dovoda: Edit RSS Feed Uređivanje RSS dovoda Open link in current tab Otvori vezu u tekućem jezičku Open link in new tab Otvori vezu u novom jezičku Error in fetching feed Greška prilikom dobavljanja dovoda RSS feed duplicated RSS dovod je udvostručen You already have this feed. Već imate ovaj dovod. RSSNotification Add this feed into Dodaj ovaj dovod u Add Dodaj RSS feed <b>"%1"</b> RSS dovod <b>„%1“</b> Internal Reader Unutrašnji čitač Other... Ostali... Liferea not running Lajfri nije pokrenut Liferea must be running in order to add new feed. Lajfri mora biti pokrenut da biste mogli da dodate novi dovod. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Da biste dodali ovaj dovod u ostale programe koristite ove podatke:<br/><br/><b>Naslov: </b>%1<br/><b>Url: </b>%2<br/><br/>Url adresa dovoda je kopirana na vaš klipbord. Add feed into other application Dodavanje dovoda u drugi program RSSWidget Add RSS Feeds from this site Dodaj RSS dovode sa ovog sajta Untitled feed Neimenovan dovod Add Dodaj RecoveryWidget Start New Session Počni novu sesiju Restore Obnovi Window %1 Prozor %1 RegisterQAppAssociation Warning! Upozorenje! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) Pojavio se problem. Ponovo instalirajte Kapzilu, ili je pokušajte pokrenuti sa administrativnim privilegijama. RssIcon Add RSS from this page... Dodaj RSS sa ove stranice... SSLManager Certificate Manager Menadžer sertifikata CA Authorities Certificates Sertifikati izdavača Show info Prikaži info This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Ovo je spisak izdavača sertifikata za ovlašćenja smještenih na sistemski uobičajenoj putanji i korisnički određenoj putanji. Local Certificates Lokalni sertifikati Import Uvezi Remove Ukloni This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Ovo je spisak lokalnih sertifikata sačuvanih na vašem računaru. Takođe sadrži sve sertifikate koji su primili izuzetak. Settings Podešavanja Add Dodaj If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Ako sertifikati izdavača nisu automatski učitani sa sistema, možete ručno odrediti putanje gdje su sertifikati smješteni. <b>NOTE:</b> Setting this option is a high security risk! <b>NAPOMENA:</b> Postavljanje ove opcije je veliki bezbjednosni rizik! Ignore all SSL Warnings Zanemari sva SSL upozorenja All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Svi sertifikati moraju imati .crt nastavak. Nakon dodavanja ili uklanjanja putanja sertifikata potrebno je da ponovo pokrenete Kapzilu kako bi izmjene imale efekta. Choose path... Izaberi putanju... Import certificate... Uvoz sertifikata... Certificate Informations Podaci o sertifikatu SearchEnginesDialog Manage Search Engines Menadžer motora pretrage Add... Dodaj... Remove Ukloni Edit Uredi Set as default Podrazumijevan Up Gore Down Dolje Search Engine Motor pretrage Shortcut Prečica Defaults Podrazumijevano Add Search Engine Dodaj motor pretrage Remove Engine Ukloni You can't remove the default search engine.<br>Set a different engine as default before removing %1. Ne možete da uklonite podrazumijevani motor pretrage.<br>Postavite drugi motor kao podrazumijevan prije uklanjanja %1. Edit Search Engine Uredi motor pretrage SearchEnginesManager Search Engine Added Motor pretrage je dodat Search Engine "%1" has been successfully added. Motor pretrage „%1“ je uspješno dodat. Search Engine is not valid! Motor pretrage nije ispravan! Error Greška Error while adding Search Engine <br><b>Error Message: </b> %1 Greška prilikom dodavanja motora pretrage <br><b>Poruka greške: </b> %1 SearchToolBar No results found. Ništa nije nađeno. SearchToolbar Search: Traži: Search... Traži... Highlight Istakni Case sensitive Razlikuj veličinu slova SideBar Bookmarks Obilježivači History Istorijat SiteInfo Site Info Podaci o sajtu General Opšte Media Mediji Databases Baze Security Bezbjednost Size: Veličina: Site address: Adresa sajta: Encoding: Kodiranje: Meta tags of site: Meta oznake sajta: Tag oznaka Value vrijednost <b>Security information</b> <b>Podaci o bezbjednosti</b> Details Detalji Image slika Image address adresa slike <b>Preview</b> <b>Pregled</b> <b>Database details</b> <b>Detalji baze podataka</b> Name: Ime: Path: Putanja: <database not selected> <baza podataka nije izabrana> <not set in certificate> <nije postavljeno u sertifikatu> No databases are used by this page. Ova stranica ne koristi baze podataka. <b>Connection is Encrypted.</b> <b>Veza je šifrovana.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Vaša veza sa ovom stranicom je obezbjeđena ovim sertifikatom: </b> <b>Connection Not Encrypted.</b> <b>Veza nije šifrovana.</b> <b>Your connection to this page is not secured!</b> <b>Vaša veza sa ovom stranicom nije bezbijedna!</b> Copy Image Location Kopiraj lokaciju slike Copy Image Name Kopiraj ime slike Save Image to Disk Sačuvaj sliku na disk Error! Greška! This preview is not available! Ovaj pregled nije dostupan! Save image... Sačuvaj sliku... Cannot write to file! Ne mogu da upišem u fajl! Preview not available Pregled nije dostupan SiteInfoWidget More... Više... Your connection to this site is <b>secured</b>. Veza sa ovim sajtom je <b>bezbijedna</b>. Your connection to this site is <b>unsecured</b>. Veza sa ovim sajtom <b>nije bezbijedna</b>. This is your <b>%1</b> visit of this site. Ovo je vaša <b>%1</b> posjeta ovom sajtu. You have <b>never</b> visited this site before. <b>Niste</b> dosad posjećivali ovaj sajt. first prva second druga third treća SourceViewer Source of Izvorni kôd dokumenta File Fajl Load in page Učitaj u stranicu Save as... Sačuvaj kao... Close Zatvori Edit Uređivanje Undo Opozovi Redo Ponovi Cut Isijeci Copy Kopiraj Paste Nalijepi Select All Izaberi sve Find Nađi Go to Line... Idi na liniju... View Prikaz Reload Učitaj ponovo Editable Uređivanje Word Wrap Prelom teksta Source loaded in page Izvorni kôd učitan u stranicu Cannot load in page. Page has been closed. Ne mogu da učitam: stranica je zatvorena. Save file... Sačuvaj fajl... Error! Greška! Cannot write to file! Ne mogu da upišem u fajl! Error writing to file Greška upisivanja u fajl Source successfully saved Izvorni kôd je uspješno sačuvan Source reloaded Izvorni kôd je ponovo učitan Cannot reload source. Page has been closed. Ne mogu da učitam izvor ponovo. Stranica je zatvorena. Editable changed Uređivanje je promijenjeno Word Wrap changed Prelom teksta je promijenjen Enter line number Unesite broj linije SourceViewerSearch Search: Traži: Search... Traži... Whole words Cijele riječi SpeedDial Image files Fajlovi slika Select image... Izaberi sliku... Unable to load Ne mogu da učitam SpellCheckDialog SpellCheck Provjera pravopisa <b>Dictionary path</b> <b>Putanja rječnika</b> Change... Promijeni... <b>User dictionary</b> <b>Korisnički rječnik</b> Add Dodaj Remove Ukloni Using Hunspell library Koristim Hunspell biblioteku Choose dictionary path... Odabir putanje rječnika... Add new word... Dodavanje nove riječi... Add new word: Dodaj novu riječ: Speller No suggestions Nema prijedloga Add to dictionary Dodaj u rječnik Settings Postavke SqueezeLabelV2 Copy Kopiraj SslErrorDialog SSL Certificate Error! Greška SSL sertifikata! Only for this session Samo za ovu sesiju TabBar &New tab &Novi jezičak &Stop Tab &Zaustavi učitavanje &Reload Tab &Učitaj ponovo &Duplicate Tab U&dvostruči jezičak D&etach Tab &Odvoji jezičak Un&pin Tab Otk&ači jezičak &Pin Tab Za&kači jezičak Re&load All Tabs Učitaj ponovo &sve jezičke &Bookmark This Tab &Obilježi ovaj jezičak Bookmark &All Tabs Obilježi s&ve jezičke Close Ot&her Tabs Zatvori os&tale jezičke Cl&ose Z&atvori Reloa&d All Tabs &Učitaj ponovo sve jezičke Restore &Closed Tab &Vrati zatvoreni jezičak Close Tabs Zatvaranje jezičaka Do you really want to close other tabs? Želite li zaista da zatvorite ostale jezičke? TabWidget New Tab Novi jezičak List of tabs Spisak jezičaka Loading... Učitavam... No Named Page Neimenovana stranica Currently you have %1 opened tabs Imate %1 otvorenih jezičaka New tab Novi jezičak Empty Prazno Restore All Closed Tabs Vrati sve zatvorene jezičke Clear list Očisti spisak TabbedWebView Loading... Učitavam... %1 - QupZilla %1 - Kapzila Inspect Element Provjeri element ThemeManager <b>Name:</b> <b>Ime:</b> <b>Author:</b> <b>Autor:</b> <b>Description:</b> <b>Opis:</b> License Licenca ToolButton Stop Zaustavi Reload Učitaj ponovo Updater Update available Nadogradnja je dostupna New version of QupZilla is ready to download. Novo izdanje Kapzile je spremno za preuzimanje. Update Ažuriraj UserAgentDialog User Agent Manager Menadžer identifikacije pregledača Change global User Agent Promijeni identifikaciju globalno Use different User Agents for specified sites Koristite različite identifikacije za određene sajtove Site sajt User Agent identifikacija Add Dodaj Remove Ukloni Edit Uredi Add new site Dodavanje novog sajta Edit site Uređivanje sajta Site domain: Domen sajta: User Agent: Identifikacija: WebInspectorDockWidget Web Inspector Veb inspektor WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? Kapzila ne može da rukuje <b>%1:</b> vezama. Zahtijevana veza je <ul><li>%2</li></ul>Želite li da Kapzila pokuša da otvori ovu vezu pomoću sistemskog programa? Remember my choice for this protocol Zapamti moj izbor za za ovaj protokol External Protocol Request Zahtjev za spoljašnji protokol To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Da bi prikazala ovu stranicu Kapzila mora ponovo da pošalje zahtjev za učitavanjem. Confirm form resubmission Potvrda ponovnog slanja Select files to upload... Izaberi fajlove za slanje... Server refused the connection Server je odbio vezu Server closed the connection Server je zatvorio vezu Server not found Server nije nađen Connection timed out Isteklo vrijeme povezivanja Untrusted connection Nepovjerljiva veza Temporary network failure Privremeni neuspjeh mreže Proxy connection refused Veza sa proksijem odbijena Proxy server not found Server proksija nije nađen Proxy connection timed out Isteklo vrijeme povezivanja sa proksijem Proxy authentication required Proksi zahtijeva autentifikaciju Content not found Sadržaj nije nađen Unknown network error Nepoznata greška mreže AdBlocked Content Blokiran sadržaj Blocked by <i>%1</i> Blokirano filterom <i>%1</i> Content Access Denied Pristup sadržaju odbijen Error code %1 Kôd greške %1 Failed loading page Neuspjeh učitavanja stranice QupZilla can't load page. Kapzila ne može da učita stranicu. QupZilla can't load page from %1. Kapzila ne može da učita stranicu sa %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Provjerite da li ste pogrešno ukucali adresu, na primjer <b>ww.</b>example.com umjesto <b>www.</b>example.com If you are unable to load any pages, check your computer's network connection. Ako ne možete da učitate nijednu stranicu, provjerite vezu vašeg računara sa internetom. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Ako su vaš računar ili mreža zaštićeni zaštitnim zidom ili proksijem, provjerite da li je Kapzili dozvoljen pristup internetu. Try Again Pokušaj ponovo JavaScript alert Javaskript upozorenje Prevent this page from creating additional dialogs Ne dozvoli ovoj stranici da pravi još dijaloga Choose file... Izaberi fajl... Cannot read data from <b>%1</b>. Upload was cancelled! Ne mogu da očitam podatke sa <b>%1</b>. Slanje je otkazano! Cannot read file! Ne mogu da očitam fajl! WebSearchBar Manage Search Engines Upravljaj motorima pretrage Add %1 ... Dodaj %1 ... Paste And &Search Nalijepi i &traži Clear All Očisti sve Show suggestions Prikazuj prijedloge Search when engine changed Pretražuj po promjeni motora WebView No Named Page Neimenovana stranica Create Search Engine Napravi motor pretrage Cut Isijeci Copy Kopiraj Paste Nalijepi Select All Izaberi sve Default Podrazumijevan Left to Right S lijeva na desno Right to Left S desna na lijevo Bold Podebljan Italic Kurzivan Underline Podvučen &Reload &Učitaj ponovo S&top Zaus&tavi Delete Obriši &Back Na&zad &Forward Na&prijed This frame Okvir Show &only this frame P&rikaži samo ovaj okvir Show this frame in new &tab Prikaži ovaj okvir u novom &jezičku Print frame Štampaj okvir Zoom &in U&vličaj &Zoom out U&manji Reset Stvarna veličina Show so&urce of frame Prikaži izvor o&kvira Book&mark page &Obilježi stranicu &Save page as... &Sačuvaj stranicu kao... &Copy page link &Kopiraj vezu stranice Send page link... Pošalji vezu stranice... &Print page &Štampaj stranicu Select &all Iz&aberi sve Validate page Provjera kôda Translate page Prevedi stranicu Show so&urce code Prikaži &izvorni kôd Show info ab&out site Po&daci o sajtu Open link in new &tab Otvori vezu u novom &jezičku Open link in new &window Otvori vezu u novom &prozoru B&ookmark link &Obilježi vezu &Save link as... &Sačuvaj vezu kao... Send link... Pošalji vezu... &Copy link address &Kopiraj vezu Show i&mage P&rikaži sliku Copy im&age K&opiraj sliku Copy image ad&dress Kopiraj &adresu slike &Save image as... Sačuvaj s&liku kao... Send image... Pošalji sliku... Send text... Pošalji tekst... Google Translate Guglov prevodilac Dictionary Rječnik Go to &web address Idi na &veb adresu Search "%1 .." with %2 Traži „%1“ na %2 Search with... Traži na... &Play &Pusti &Pause &Pauziraj Un&mute Vra&ti zvuk &Mute U&tišaj &Copy Media Address &Kopiraj adresu medija &Send Media Address P&ošalji adresu medija Save Media To &Disk &Sačuvaj medij na disk Check &Spelling &Provjera pravopisa Languages Jezici jsAlert Prevent this page from creating additional dialogs Ne dozvoli ovoj stranici da pravi još dijaloga qupzilla-1.6.0/translations/sr_RS.ts000066400000000000000000011262541226107126500175150ustar00rootroot00000000000000 AboutDialog About QupZilla О Капзили Authors Програмери Authors and Contributors Програмери и сарадници < About QupZilla < О Капзили <p><b>Application version %1</b><br/> <p><b>Издање програма %1</b><br/> <b>WebKit version %1</b></p> <b>Издање Вебкита %1</b></p> <small>Build time: %1 </small></p> <small>Датум компајлирања: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Главни програмер:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Сарадници:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Преводиоци:</b><br/>%1</p> AcceptLanguage Preferred Languages Приоритетни језици Add... Додај... Remove Уклони Up Горе Down Доле Personal [%1] Лично [%1] AdBlockAddSubscriptionDialog Add Subscription Додај претплату Title: Наслов: Address: Адреса: Add new subscription to AdBlock: Додај нову претплату на АдБлок: AdBlockCustomList Custom Rules Посебни филтери AdBlockDialog AdBlock Configuration Подешавања Адблока Enable AdBlock Укључи Адблок Search... Тражи... Options Опције AdBlock Адблок Use only essential part of EasyList (for performance reasons) Користи само суштински део EasyList (повећава брзину учитавања) Add Rule Додај филтер Remove Rule Уклони филтер Add Subscription Додај претплату Remove Subscription Уклони претплату Update Subscriptions Ажурирај претплате Learn about writing rules... Научите правити филтере... AdBlockIcon AdBlock lets you block unwanted content on web pages Адблок вам омогућује да блокирате непожељни садржај на веб страницама Blocked popup window Блокиран искачући прозор AdBlock blocked unwanted popup window. Адблок је блокирао нежељени искачући прозор. AdBlock Адблок Show AdBlock &Settings Прикажи Адблокова &подешавања Disable on %1 Онемогући на %1 Disable only on this page Онемогући само на овој страници Blocked Popup Windows Блокирани искачући прозори %1 with (%2) %1 са (%2) No content blocked Нема блокираног садржаја Blocked URL (AdBlock Rule) - click to edit rule Блокирани УРЛ (Адблоков филтер) - кликни да уредиш филтер AdBlockManager Do you want to add <b>%1</b> subscription? Желите ли да додате претплату на <b>%1</b>? AdBlock Subscription АдБлок претплата EasyList EasyList AdBlockTreeWidget Add Rule Додај филтер Remove Rule Уклони филтер Add Custom Rule Додај посебни филтер Please write your rule here: Упишите ваш филтерски израз овде: %1 (recently updated) %1 (недавно ажурирано) AddAcceptLanguage Add Language Додај језик Choose preferred language for web sites Изаберите приоритетни језик за веб странице Personal definition: Посебна дефиниција: AesInterface Warning! Упозорење! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. Подаци су шифровани новијим издањем Капзиле. Инсталирајте најновије издање. AutoFill Database (plaintext) Текстуалну базу Database (encrypted) Шифровану базу Enter Master Password Унесите главну лозинку Permission is required, please enter Master Password: Потребна је дозвола, унесите главну лозинку: Warning! Упозорење! Entered password is wrong! Унесена лозинка је погрешна! This backend needs a master password to be set! QupZilla just switches to its default backend Ова позадина захтева да главна лозинка буде постављена! Капзила враћа подразумевану позадину AutoFillManager Passwords are stored in: Лозинке се смештају у: Change backend Промени позадину Backend options Опције позадине Passwords Лозинке Server сајт Username корисничко име Password лозинка Import/Export Увоз/извоз Show Passwords Прикажи лозинке Edit Уреди Remove Уклони Remove All Уклони све Exceptions Изузеци Import Passwords from File... Увези лозинке из фајла... Export Passwords to File... Извези лозинке у фајл... Search Тражи Change backend... Промена позадине... Change backend: За позадину користи: Are you sure that you want to show all passwords? Желите ли заиста да прикажете све лозинке? Hide Passwords Сакриј лозинке Confirmation Потврда Are you sure to delete all passwords on your computer? Желите ли заиста да обришете све лозинке са вашег рачунара? Edit password Уреди лозинку Change password: Измени лозинку: Choose file... Изабери фајл... Cannot read file! Не могу да очитам фајл! Successfully imported Успешно увезено Error while importing! Грешка приликом увоза! Cannot write to file! Не могу да упишем у фајл! Successfully exported Успешно извезено AutoFillNotification Update Ажурирај Remember Упамти Never For This Site Никад за овај сајт Not Now Не сада on %1 на %1 for <b>%1</b> за <b>%1</b> Do you want QupZilla to update saved password %1? Желите ли да Капзила ажурира лозинку %1? Do you want QupZilla to remember the password %1 %2? Желите ли да Капзила упамти лозинку %1 %2? AutoFillWidget Choose username to login Корисничко име за пријаву Login Пријава Login as <b>%1</b> Пријави се као <b>%1</b> BookmarkIcon Bookmark this Page Обележи ову страницу Edit this bookmark Уреди овај обележивач BookmarksImportDialog Import Bookmarks Увоз обележивача <b>Import Bookmarks</b> <b>Увоз обележивача</b> From File Из фајла Internet Explorer Интернет Експлорер Choose browser from which you want to import bookmarks: Изаберите прегледач из кога желите да увезете обележиваче: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Напомена:</b> Тренутно само увоз из ХТМЛ фајла подржава и увожење фасцикли. Choose... Изабери... Try to fetch icons for all bookmarks (may take a while) Покушај да добавиш иконе за све обележиваче (може да потраје) Fetching icons, please wait... Добављам иконе, сачекајте... Title име Url урл Next Сљедеће Cancel Поништи <b>Importing from %1</b> <b>Увозим из %1</b> Finish Заврши Please press Finish to complete importing process. Притисните „Заврши“ да бисте завршили процес увоза. Error! Грешка! The file doesn't contain any bookmark. Фајл не садржи ниједан обележивач. Choose directory... Изабери директоријум... Choose file... Изабери фајл... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Мозилин Фајерфокс успрема обележиваче у <b>places.sqlite</b> Скулајт бази података. Овај фајл се обично налази у Please choose this file to begin importing bookmarks. Изаберите овај фајл да бисте отпочели увозе обележивача. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Гуглов Хроум успрема обележиваче у <b>Bookmarks</b> текстуалном фајлу. Овај фајл се обично налази у Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Опера успрема обележиваче у <b>bookmarks.adr</b> текстуалном фајлу. Овај фајл се обично налази у You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Можете увести обележиваче из било ког прегледача који подржава извоз у ХТМЛ-у. Овај фајл обично има ове суфиксе Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Интернет Експлорер успрема обележиваче у фасцикли <b>Favorites</b>. Овај фајл се обично налази у Please choose this folder to begin importing bookmarks. Изаберите ову фасциклу да бисте отпочели увоз обележивача. No Error Нема грешке Unable to open file. Не могу да отворим фајл. Cannot evaluate JSON code. Не могу да обрадим ЈСОН фајл. File does not exist. Фајл не постоји. Unable to open database. Is Firefox running? Не могу да отворим базу података. Да ли је Фајерфокс покренут? Directory does not exist. Директоријум не постоји. The directory does not contain any bookmarks. Директоријум не садржи ниједан обележивач. BookmarksManager Bookmarks Обележивачи Add Folder Додај фасциклу Title име Url урл Expand All Рашири све Import and Export Увоз и извоз Collapse All Сажми све Import Bookmarks... Увези обележиваче... Export Bookmarks to HTML... Извези обележиваче у ХТМЛ... Export to HTML... Извоз у ХТМЛ... Add new folder Додај нову фасциклу Choose parent folder for new folder: Родитељска фасцикла: Choose name for new bookmark folder: Име нове фасцикле обележивача: Add new subfolder Додајте нову подфасциклу Choose name for new subfolder in bookmarks toolbar: Име нове подфасцикле у траци обележивача: Rename Folder Преименуј фасциклу Choose name for folder: Име за фасциклу: Add Subfolder Додај подфасциклу Rename folder Преименуј фасциклу Remove folder Уклони фасциклу Open link in current &tab Отвори везу у &текућем језичку Open link in &new tab Отвори везу у &новом језичку Move bookmark to &folder Помјери обележивач у &фасциклу Change icon Промени икону Rename bookmark Преименуј обележивач Remove bookmark Уклони обележивач <b>Warning: </b>You already have bookmarked this page! <b>Упозорење: </b>Већ сте обележили ову страницу! Choose name and location of this bookmark. Одредите име и локацију за овај обележивач. Add New Bookmark Додавање обележивача Choose folder for bookmarks: Изаберите фасциклу обележивача: Bookmark All Tabs Обележи све језичке BookmarksModel Bookmarks In Menu Обележивачи у менију Bookmarks In ToolBar Обележивачи у траци алатки Unsorted Bookmarks Неразврстани обележивачи BookmarksSideBar Search... Тражи... Open link in current &tab Отвори везу у &текућем језичку Open link in &new tab Отвори везу у &новом језичку Copy address Копирај адресу &Delete &Обриши BookmarksToolbar &Bookmark Current Page О&бележи текућу страницу Bookmark &All Tabs Обележи све &језичке &Organize Bookmarks &Организуј обележиваче Show Most &Visited Прикажи &најпосјећеније Show Only Icons Прикажи само иконе &Hide Toolbar &Сакриј траку обележивача Open bookmark Отвори Open bookmark in new tab Отвори у новом језичку Move right Помери десно Move left Помери лево Edit bookmark Уреди обележивач Remove bookmark Уклони обележивач Edit bookmark: Уреди обележивач: Title: Име: Url: Урл: Edit Bookmark Уређивање обележивача Most visited Најпосећеније Sites you visited the most Сајтови које сте највише посећивали Empty Празно BookmarksTree Bookmarks Обележивачи New Folder... Нова фасцикла... BookmarksWidget Add to Speed Dial Додај на брзо бирање Save Сачувај Name: Име: Folder: Фасцикла: Remove from Speed Dial Уклони са брзог бирања Remove Уклони BrowsingLibrary Library Библиотека Search... Тражи... History Историјат Bookmarks Обележивачи RSS РСС CertificateInfoWidget <b>Issued To</b> <b>Издат за</b> Common Name (CN): Заједничко име (CN): Organization (O): Организација (O): Organizational Unit (OU): Организациона јединица (OU): Serial Number: Серијски број: <b>Issued By</b> <b>Издавач</b> <b>Validity</b> <b>Ваљаност</b> Issued On: Датум издавања: Expires On: Датум истека: ClearPrivateData Clear Recent History Брисање приватних података Choose what you want to delete: Обриши следеће ставке: Clear history историјат посећених страница Clear cache кеш Clear icons иконе <b>Clear Recent History</b> <b>Обриши недавни историјат</b> Earlier Today раније данас Week недеље Month месеца All Све Clear web databases веб базе Optimize database Оптимизуј базу података Clear local storage локално складиште Clear cookies колачиће Clear Private Data Брисање приватних података Are you sure to clear selected private data? Желите ли заиста да обришете изабране приватне податке? Database Optimized База података је оптимизована Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 База података је успешно оптимизована.<br/><br/><b>Величина базе пре: </b>%1<br/><b>Величина базе након: </b>%2 ClickToFlash Object blocked by ClickToFlash Објекат блокирао Кликни-за-флеш Show more information about object Прикажи још података о објекту Delete object Обриши објекат Add %1 to whitelist Додај %1 на списак дозвољених Flash Object Флеш објекат <b>Attribute Name</b> <b>Својство</b> <b>Value</b> <b>Вредност</b> No more information available. Нема више доступних података. CookieManager Cookies Колачићи Stored Cookies Успремљени колачићи Find: Нађи: These cookies are stored on your computer: Ови колачићи су успремљени на вашем рачунару: Server сајт Cookie name име колачића Name: Име: Value: Вредност: Server: Сервер: Path: Путања: Secure: Безбедност: Expiration: Истиче: <cookie not selected> <колачић није изабран> Remove all cookies Уклони све колачиће Remove cookies Уклони колачиће Cookie Filtering Филтрирање колачића <b>Cookie whitelist</b> <b>Списак дозвољених колачића</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Колачићи са ових сервера ће УВЕК бити прихватани (чак и ако искључите успремање колачића) Add Додај Remove Уклони <b>Cookie blacklist</b> <b>Списак недозвољених колачића</b> Cookies from these servers will NEVER be accepted Колачићи са ових сервера НИКАД неће бити прихватани Settings Подешавања <b>Cookie Settings</b> <b>Поставке колачића</b> Allow storing of cookies Дозволи успремање колачића Delete cookies on close Обриши колачиће по затварању Match domain exactly Поклапај домен тачно Filter tracking cookies Пречишћај колачиће пратиоце <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! <b>Упозорење:</b> Тачно поклапање домена и пречишћање колачића пратиоца може довести до одбијања неких колачића са сајтова. Ако имате проблема са колачићима, искључите ове опције! Search Тражи Confirmation Потврда Are you sure to delete all cookies on your computer? Желите ли заиста да обришете све колачиће са вашег рачунара? Secure only Само безбедне везе All connections Све везе Session cookie Колачић сесије Remove cookie Уклони колачић Add to whitelist Додавање у дозвољене Add to blacklist Додавање у недозвољене DownloadFileHelper Save file as... Сачувај фајл као... NoNameDownload Неименовано_преузимање DownloadItem Remaining time unavailable Преостало време није доступно Error: Cannot write to file! Грешка: не могу да упишем фајл! Done - %1 Готово - %1 Cancelled Отказано few seconds неколико секунди %n seconds %n секунда %n секунде %n секунди %n minutes %n минута %n минуте %n минута %n hours %n сат %n сата %n сати Unknown speed Брзина није позната kB/s kB/s MB/s MB/s GB/s GB/s Unknown size Величина није позната %2 - unknown size (%3) %2 - непознате величине (%3) Remaining %1 - %2 of %3 (%4) Преостало %1 - %2 од %3 (%4) Cancelled - %1 Отказано - %1 Delete file Обриши фајл Do you want to also delete dowloaded file? Желите ли да обришете и преузети фајл такође? Open File Отвори фајл Open Folder Отвори фасциклу Go to Download Page Иди на страницу преузимања Copy Download Link Копирај везу преузимања Cancel downloading Откажи преузимање Remove Уклони Error Грешка Not found Није нађено Sorry, the file %1 was not found! Фајл %1 није нађен! Error: Грешка: DownloadManager Download Manager Менаџер преузимања Clear Очисти %1% of %2 files (%3) %4 remaining %1% од %2 фајлова (%3) %4 до завршетка %1% - Download Manager %1% - менаџер преузимања Download Finished Преузимање је завршено All files have been successfully downloaded. Сви фајлови су успешно преузети. Warning Упозорење Are you sure to quit? All uncompleted downloads will be cancelled! Желите ли заиста да напустите? Сва незавршена преузимања ће бити отказана! DownloadOptionsDialog Opening Отварам Copy download link Копирај везу преузимања You have chosen to open Изабрали сте да отворите which is a: који је: What should QupZilla do with this file? Шта да радим са овим фајлом? Open... Отвори... Save File Сачувај фајл Download with External Manager Преузми спољашњим менаџером from: са: Opening %1 Отварам %1 Download link copied. Веза је копирана. EditSearchEngine Name: Име: Url: Урл: Shortcut: Пречица: Icon: Икона: <b>Note: </b>%s in url or post data represent searched string <b>Напомена:</b> %s у УРЛ-у или ПОСТ подацима представља тражени израз Post Data: ПОСТ подаци: Change... Промени... FileSchemeReply No Error Нема грешке Up to higher level directory У родитељску фасциклу Show hidden files Прикажи скривене фајлове Name Име Size Величина Last modified Измењено Index for %1 Индекс од %1 Folder is empty. Фасцикла је празна. FtpDownloader Cancelled! Отказано! FtpSchemeReply Up to higher level directory У родитељску фасциклу Show hidden files Прикажи скривене фајлове Name Име Size Величина Last modified Измењено Index for %1 Индекс од %1 Folder is empty. Фасцикла је празна. Unknown command Непозната наредба HTML5PermissionsDialog HTML5 Permissions ХТМЛ5 дозволе Notifications Обавештења Site сајт Behaviour радња Remove Уклони Geolocation Геолокација Allow дозволи Deny одбиј HTML5PermissionsNotification Remember Упамти Allow Дозволи Deny Одбиј this site овај сајт Allow %1 to show desktop notifications? Дозволи да %1 приказује обавештења на радној површи? Allow %1 to locate your position? Дозволи да %1 пронађе ваш положај? History No Named Page Неименована страница January Јануар February Фебруар March Март April Април May Мај June Јун July Јул August Август September Септембар October Октобар November Новембар December Децембар HistoryManager History Историјат Delete Обриши Clear All History Обриши историјат Confirmation Потврда Are you sure to delete all history? Желите ли заиста да обришете читав историјат? HistoryModel Title Наслов Address Адреса Visit Date Датум посете Visit Count Број посета Today Данас This Week Ове недеље This Month Овога месеца HistorySideBar Search... Тражи... HistoryView Open link in current tab Отвори везу у текућем језичку Open link in new tab Отвори везу у новом језичку Copy title Копирај наслов Copy address Копирај адресу Remove Уклони IconChooser Choose icon... Изабери икону... From file Из фајла Image (.png, .jpg, .jpeg, .gif) Слика (.png, .jpg, .jpeg, .gif) Choose file... Изабери фајл... From database Из базе Site Url: Урл сајта: Image files Фајлови слика JsOptions JavaScript Options Опције Јаваскрипти Allow JavaScript to: Дозволи јаваскрипти да: Close windows затвори прозор Open popup windows отвори искачући прозор Change window size промени величину прозора Hide menu bar сакрије траку менија Hide status bar сакрије траку стања Hide tool bar сакрије траку алатки Access clipboard приступи клипборду LicenseViewer License Viewer Прегледач лиценце LocationBar Enter URL address or search on %1 Унесите УРЛ адресу или тражите на %1 Paste And &Go Налепи и &иди Clear All Очисти све .co.uk Append domain name on ALT + Enter = Should be different for every country .co.rs Show information about this page Прикажи податке о овој страници LocationCompleterView Switch to tab Активирај језичак MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? Капзила тренутно није ваш подразумевани прегледач веба. Да ли желите да поставите за подразумеваног прегледача? Always perform this check when starting QupZilla. Увек изврши ову проверу по покретању Капзиле. Default Browser Подразумевани прегледач QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. Капзила је нов, брз и сигуран веб прегледач отвореног кода. Лиценциран под издањем 3 ГПЛ лиценце или (по вашем нахођењу) било којим каснијим издањем лиценце. Базиран на ВебКит језгру и Кут радном окружењу. MasterPasswordDialog Encrypted DataBase Settings Поставке шифроване базе података Set/Change Master Password... Постави/промени главну лозинку... Clear Master Password... Уклони главну лозинку... This backend does not work without a master password. Ова позадина не ради ако главна лозинка није постављена. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. Ово ће уклонити главну лозинку и преместити шифроване податке у позадину „Текстуална база“ и активирати је. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Главна лозинка штити лозинке за сајтове и податке формулара. Ако је поставите, биће вам затражена једном по сесији. Current Password: Текућа лозинка: New Password: Нова лозинка: Confirm Password: Потврди лозинку: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. <b>Напомена:</b> Главну лозинку не можете повратити ако је заборавите. Warning! Упозорење! You entered a wrong password! Унели сте погрешну лозинку! New/Confirm password fields do not match! Лозинке се не поклапају! Some data has not been decrypted. The master password was not cleared! Део података није дешифрован. Главна лозинка није уклоњена! Are you sure to clear master password and decrypt data? Желите ли заиста да уклоните главну лозинку и дешифрујете податке? NavigationBar No Named Page Неименована страница Back Назад Forward Напред Home Домаћа New Tab Нови језичак Main Menu Главни мени Exit Fullscreen Напусти цио екран Clear history Обриши историјат NetworkManager SSL Certificate Error! Грешка ССЛ сертификата! The page you are trying to access has the following errors in the SSL certificate: Страница којој покушавате да приступите има сљедеће грешке у ССЛ сертификату: <b>Organization: </b> <b>Организација: </b> <b>Domain Name: </b> <b>Име домена: </b> <b>Expiration Date: </b> <b>Датум истека: </b> <b>Error: </b> <b>Грешка: </b> Would you like to make an exception for this certificate? Желите ли да направите изузетак за овај сертификат? Authorisation required Потребно овлашћење Username: Корисничко име: Password: Лозинка: Save username and password on this site Сачувај корисничко име и лозинку на овом сајту A username and password are being requested by %1. The site says: "%2" %1 захтева корисничко име и лозинку. Сајт каже: „%2“ FTP authorisation required Потребно је овлашћење за ФТП Login anonymously Анонимна пријава A username and password are being requested by %1:%2. %1:%2 захтева корисничко име и шифру. Proxy authorisation required Потребно је овлашћење за прокси Remember username and password for this proxy. Запамти корисничко име и лозинку за овај прокси. A username and password are being requested by proxy %1. Прокси %1 захтева корисничко име и шифру. PageScreen Page Screen Снимак странице Format: Сачувај као: Location: Сачувај у: Browse... Прегледај... Save as %1 %1 Choose location... Одабир одредишта... File '%1' already exists. Do you want to overwrite it? Фајл „%1“ већ постоји. Желите ли да га пребришете? File already exists Фајл већ постоји PluginsList Application Extensions Програмски прикључци Allow Application Extensions to be loaded Дозволи учитавање програмских прикључака Settings Подешавања WebKit Plugins Вебкитови прикључци <b>Click To Flash Plugin</b> <b>„Кликни-за-флеш“ прикључак</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Кликни-за-флеш је прикључак који зауставља аутоматско учитавање флеш садржаја на страници. Увек га можете учитати ручно кликом на икону за покретање флеш садржаја. Whitelist списак дозвољених Add Додај Remove Уклони Allow Click To Flash Дозволи Кликни-за-флеш PluginsManager Add site to whitelist Додавање у дозвољене Server without http:// (ex. youtube.com) Адреса сервера без „http://“ (нпр. youtube.com) Error! Грешка! Cannot load extension! Не могу да учитам проширење! PopupWebView Inspect Element Провери елемент PopupWindow File Фајл &Save Page As... &Сачувај страницу као... Save Page Screen Сачувај снимак странице Send Link... Пошаљи везу... &Print... &Штампај... Close Затвори Edit Уређивање &Undo &Опозови &Redo &Понови &Cut &Исеци C&opy &Копирај &Paste &Налепи Select All Изабери све Find Нађи View Приказ &Stop &Заустави &Reload &Учитај поново Zoom &In У&величај Zoom &Out У&мањи Reset Стварна величина &Page Source &Извор странице %1 - QupZilla %1 - Капзила Preferences Preferences Подешавања QupZilla Капзила General Опште Appearance Изглед Tabs Језичци Browsing Прегледање Fonts Фонтови Keyboard Shortcuts Пречице тастатуре Downloads Преузимања Password Manager Менаџер лозинки Privacy Приватност Notifications Обавештења Extensions Проширења Other Остало Use current Користи текућу Note: You cannot delete active profile. Напомена: Не можете обрисати активни профил. Create New Направи нови Delete Обриши <b>Launching</b> <b>Покретање</b> After launch: По покретању: Open blank page отвори празну страницу Open homepage отвори домаћу страницу Open speed dial отвори брзо бирање Restore session обнови сесију Homepage: Домаћа страница: On new tab: На новом језичку: Open blank tab отвори празан језичак Open other page... отвори другу страницу... <b>Profiles</b> <b>Профили</b> Startup profile: Почетни профил: Check for updates on start Потражи надоградње по покретању Active profile: Активни профил: In order to change language, you must restart browser. Да бисте променили језик, морате поново покренути прегледач. <b>Language</b> <b>Језик</b> Available translations: Доступни преводи: Don't load tabs until selected Не учитавај језичке док не буду изабрани Check to see if QupZilla is the default browser on startup Провјера подразумијеваног прегледача по старту Check Now Провери одмах Themes Теме Advanced options Напредне опције <b>Browser Window</b> <b>Прозор прегледача</b> Show StatusBar on start Прикажи траку стања по покретању Show Bookmarks ToolBar on start Прикажи траку обележивача по покретању Show Navigation ToolBar on start Прикажи траку навигације по покретању <b>Navigation ToolBar</b> <b>Трака навигације</b> Show Home button Прикажи дугме Домаћа Show Back / Forward buttons Прикажи дугмад Назад / Напред <b>Background<b/> <b>Позадина<b/> Use transparent background Користи прозирну позадину Show web search bar Прикажи траку веб претраге Show Add Tab button Прикажи дугме Додај језичак Show Reload / Stop buttons Прикажи дугмад Поново учитај / Заустави Tabs behaviour Понашање језичака Show tab previews Приказуј прегледе језичака Make tab previews animated Анимирај прегледе језичака Hide tabs when there is only one tab Сакриј траку са језичцима када има само један Activate last tab when closing active tab Активирај претходно коришћен језичак при затварању текућег Open new tabs after active tab Отварај нове језичке после активног Open new empty tabs after active tab Отварај празне језичке после активног Automatically switch to newly opened tab Аутоматски фокусирај новоотворени језичак Don't quit upon closing last tab Не напуштај по затварању последњег језичка Ask when closing multiple tabs Потврди затварање прозора са више језичака Closed tabs list instead of opened in tab bar Списак затворених уместо списка отворених језичака на траци језичака Address Bar behaviour Понашање траке адресе Suggest when typing into address bar: При куцању у траци адресе предлажи: History and Bookmarks историјат и обележиваче History историјат Bookmarks обележиваче Nothing ништа Press "Shift" to not switch the tab but load the url in the current tab. Притисните Shift тастер да учитате УРЛ у текућем језичку. Propose to switch tab if completed url is already loaded. Предлажи активирање језичка ако је УРЛ већ отворен. Always show go icon Увек приказуј икону „иди на сајт“ Select all text by double clicking in address bar Изабери сав текст двокликом у траци адресе Select all text by clicking in address bar Изабери сав текст кликом у траци адресе Search with Default Engine Тражи помоћу подразумеваног мотора Show loading progress in address bar Прикажи напредак учитавања у траци адресе Fill Испун Bottom Дно Top Врх Custom color: Посебна боја: Select color Изабери боју ... ... Reset Подразумевана Web Configuration Веб поставке Allow Netscape Plugins (Flash plugin) Дозволи Нетскејпове прикључке (Флеш) Allow JavaScript Дозволи Јаваскрипте Allow JAVA Дозволи Јаву Allow DNS Prefetch Предохватање ДНС уноса Enable XSS Auditing try to detect possible XSS attacks when executing javascript Укључи ИксСС проверавање Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Штампај позадину елемента Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Укључи везе у ланац фокуса Animated scrolling Анимирано клизање Enable caret browsing Прегледање помоћу курсора Enable spatial navigation Просторна навигација Zoom text only Увеличавај само текст Mouse wheel scrolls Точкић миша клиза lines on page линија на страници Default zoom on pages: Подразумевано увеличање страница: Local Storage Локално складиште Maximum Највише 50 MB 50 MB 1 1 Maximum pages in cache: Највише страница у кешу: Allow storing network cache on disk Дозволи смјештање мрежног кеша на диск Store cache in: Смештај кеш у: Allow saving history Дозволи чување историјата Delete history on close Обриши историјат по затварању Allow local storage of HTML5 web content Дозволи локално смештање ХТМЛ5 веб садржаја Delete locally stored HTML5 web content on close Обриши локални ХТМЛ5 веб садржај по затварању Delete now Обриши сада Proxy Configuration Поставке проксија Proxy Auto-Config (.pac) file Фајл ауто-поставки проксија (.pac) Reload Учитај поново HTTP ХТТП SOCKS5 СОЦКС5 Port: Порт: Username: Корисничко име: Password: Лозинка: Don't use on: Не користи на: Manual configuration Ручне поставке System proxy configuration Системске поставке Do not use proxy Не користи прокси <b>Exceptions</b> <b>Изузеци</b> Server: Сервер: Use different proxy for https connection Користи други прокси за ХТТПС везу Use script for automatic configuration: Користи скрипту за аутоматску поставу: <b>Font Families</b> <b>Породице фонта</b> Standard Стандардни Fixed Фиксни Serif Серифни Sans Serif Бесерифни Cursive Курзивни Fantasy Фантазијски <b>Font Sizes</b> <b>Величине фонта</b> Fixed Font Size Фиксни фонт Default Font Size Подразумевани фонт Minimum Font Size Најмања величина Minimum Logical Font Size Најмања могућа величина <b>Shortcuts</b> <b>Пречице</b> Switch to tabs with Alt + number of tab Активирај језичке са Alt + број језичка Load speed dials with Ctrl + number of speed dial Учитавај брза бирања са Ctrl + број брзог бирања Add .co.uk domain by pressing ALT key in address bar Додај .co.rs домен притиском на ALT тастер <b>Download Location</b> <b>Одредиште преузимања</b> Ask everytime for download location Питај сваки пут за одредиште Use defined location: Користи одредиште: <b>Download Options</b> <b>Опције преузимања</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Користи системски дијалог фајлова (може проузрочити проблеме за преузимање ССЛ безбедног садржаја) Close download manager when downloading finishes Затвори менаџера преузимања када се преузимање заврши <b>External download manager</b> <b>Спољашњи менаџер преузимања</b> Use external download manager Користи спољашњи менаџер преузимања Executable: Извршна: Arguments: Аргументи: Leave blank if unsure Оставите празно ако нисте сигурни <b>%d</b> will be replaced with URL to be downloaded <b>%d</b> ће бити замењено адресом преузимања <b>AutoFill options</b> <b>Опције аутоматске попуне</b> Allow saving passwords from sites Дозволи успремање лозинки са сајтова Send Referer header to servers Шаљи заглавље пратиоца серверима <b>Cookies</b> <b>Колачићи</b> Send Do Not Track header to servers Шаљи ДНТ (Не Прати Ме) заглавље серверима <b>Other</b> <b>Разно</b> Manage CA certificates Управљај сертификатима Certificate Manager Менаџер сертификата <b>SSL Certificates</b> <b>ССЛ сертификати</b> <b>JavaScript</b> <b>Јаваскрипте</b> Manage JavaScript privacy options Управљај поставкама приватности JavaScript options Поставке јаваскрипти Cookies Manager Менаџер колачића Manage Cookies Управљај колачићима <b>HTML5 Permissions</b> <b>ХТМЛ5 дозволе</b> Manage HTML5 permissions Управљај ХТМЛ5 одобрењима HTML5 Permissions ХТМЛ5 дозволе <b>Notifications</b> <b>Обавештења</b> Use OSD Notifications Користи ОСД обавештења Use Native System Notifications (Linux only) Користи изворна системска обавештења (само за Линукс) Do not use Notifications Не користи ОСД обавештења Expiration timeout: Време истека: seconds секунди <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Напомена: </b>Можете променити положај ОСД обавештења превлачењем по екрану. StyleSheet automatically loaded with all websites: Опис стила који ће аутоматски бити учитан за све сајтове: Languages Језици <b>Preferred language for web sites</b> <b>Приоритетни језик за веб странице</b> <b>Change browser identification</b> <b>Промена идентификације прегледача</b> User Agent Manager Менаџер идентификације прегледача Default Подразумеван Set as default Постави за подразумеван OSD Notification ОСД обавештење Drag it on the screen to place it where you want. Превуците га по екрану на жељени положај. Choose download location... Одабир одредишта за преузимање... Choose stylesheet location... Одабир фајла описа стила... Deleted Обрисано Choose executable location... Одабир локације извршног фајла... Choose cache path... Одабир путање за кеш... New Profile Нови профил Enter the new profile's name: Унесите име новог профила: Error! Грешка! This profile already exists! Овај профил већ постоји! Cannot create profile directory! Не могу да направим директоријум профила! Confirmation Потврда Are you sure to permanently delete "%1" profile? This action cannot be undone! Желите ли заиста трајно да обришете „%1“ профил? Ова радња не може да се поништи! Select Color Избор боје QObject Native System Notification Изворна системска обавештења Save file as... Сачувај фајл као... The file is not an OpenSearch 1.1 file. Овај фајл није OpenSearch 1.1 фајл. <not set in certificate> <није постављено у сертификату> Unknown size Величина није позната KB KB MB MB GB GB Executable: Извршна: Arguments: Аргументи: Cannot start external program Не могу да покренем спољашњи програм Cannot start external program! %1 Не могу да покренем спољашњи програм! %1 QtWin Open new tab Отвори нови језичак Opens a new tab if browser is running Отвара нови језичак ако је прегледач покренут Open new window Отвори нови прозор Opens a new window if browser is running Отвара нови прозор ако је прегледач покренут Open download manager Отвори менаџера преузимања Opens a download manager if browser is running Отвара менаџера преузимања ако је прегледач покренут QupZilla QupZilla Капзила Private Browsing Enabled Приватно прегледање је омогућено IP Address of current page ИП адреса текуће странице &About QupZilla &О Капзили Pr&eferences По&дешавања Quit Напусти &File &Фајл &New Window &Нови прозор New Tab Нови језичак Open Location Отвори локацију Open &File... Отвори &фајл... Close Tab Затвори језичак Close Window Затвори прозор &Save Page As... &Сачувај страницу као... Save Page Screen Сачувај снимак странице Send Link... Пошаљи везу... &Print... &Штампај... Import bookmarks... Увези обележиваче... &Edit &Уређивање &Undo &Опозови &Redo &Понови &Cut &Исеци C&opy &Копирај &Paste &Налепи Select &All Изабери &све &Find Н&ађи &View &Приказ &Navigation Toolbar Трака &навигације &Bookmarks Toolbar Трака &обележивача Sta&tus Bar Трака &стања &Menu Bar Трака &менија &Tabs on Top &Језичци на врху &Fullscreen &Цио екран &Stop &Заустави &Reload &Учитај поново Character &Encoding &Кодирање знакова Enable &Caret Browsing Прегледање ку&рсором Toolbars Траке алатки Sidebars Бочне траке Zoom &In У&величај Zoom &Out У&мањи Reset Стварна величина &Page Source &Извор странице Hi&story &Историјат &Back На&зад &Forward На&пред &Home &Домаћа Show &All History Прикажи &сав историјат Closed Tabs Затворени језичци Recently Visited Недавно посећено Most Visited Најпосећеније &Bookmarks &Обележивачи Bookmark &This Page Обележи овај &језичак Bookmark &All Tabs Обележи &све језичке Organize &Bookmarks &Организуј обележиваче &Tools Ала&тке &Web Search Претрага &веба Page &Info Подаци о &сајту &Download Manager Менаџер &преузимања &Cookies Manager Менаџер &колачића &AdBlock &Адблок RSS &Reader Читач РСС &довода Web In&spector Веб и&нспектор Clear Recent &History &Обриши приватне податке New &Private Window Нови п&риватни прозор &Help По&моћ About &Qt О &Куту Information about application Подаци о програму Configuration Information Поставке програма Report &Issue &Пријави проблем Restore &Closed Tab &Обнови затворени језичак (Private Browsing) (приватно прегледање) Empty Празно Restore All Closed Tabs Обнови све затворене језичке Clear list Очисти списак Other Остало %1 - QupZilla %1 - QupZilla HTML files ХТМЛ фајлови Image files Фајлови слика Text files Фајлови текста All files Сви фајлови Open file... Отвори фајл... QupZilla %1 (%2) Капзила %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Још увек имате %1 отворених језичака а ваша сесија неће бити сачувана. Желите ли заиста да напустите Капзилу? Don't ask again Не питај поново There are still open tabs Још увек имате отворених језичака QupZillaSchemeReply No Error Нема грешке Not Found Није нађено Report Issue Пријави проблем If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Ако имате проблема са Капзилом најпре покушајте да онемогућите проширења. <br/>Ако то не помогне, онда попуните овај формулар: Your E-mail Ваша е-адреса Issue type Тип проблема Issue description Опис проблема Send Пошаљи E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. Е-адреса није обавезна<br/><b>Напомена: </b>Најпре <a href=%1>овде</a> прочитајте како направити извештај о грешци. Please fill out all required fields! Попуните сва обавезна поља! Start Page Почетна страница Search on Web Тражи на вебу Search results provided by DuckDuckGo Резултате претраге обезбеђује ДакДакГоу About QupZilla О Капзили <h1>Private Browsing</h1> <h1>Приватно прегледање</h1> Information about version Подаци о издању Copyright Ауторска права Version Издање WebKit version Издање Вебкита Main developer Главни програмер Contributors Сарадници Translators Преводиоци Speed Dial Брзо бирање Add New Page Додај нову страницу Edit Уреди Remove Уклони Reload Учитај поново Are you sure to remove this speed dial? Желите ли заиста да уклоните ово брзо бирање? Load title from page Учитај наслов са странице Url Урл Title Име Apply Примени Close Затвори New Page Нова страница Speed Dial settings Поставке брзог бирања Placement: Положај: Auto Ауто Cover Прекриј Fit Уклопи Fit Width Уклопи ширину Fit Height Уклопи висину Use background image Слика за позадину Select image Изабери слику Maximum pages in a row: Највише брзих бирања у реду: Change size of pages: Промени величину брзих бирања: Center speed dials Центрирај брза бирања Restore Session Обнови сесију Oops, QupZilla crashed. Упс, Капзила се срушила. We apologize for this. Would you like to restore the last saved state? Извињавамо се због овога. Желите ли да обновите последње сачувано стање? Try removing one or more tabs that you think cause troubles Покушајте да уклоните један или више језичака за које мислите да узрокују проблеме Or you can start completely new session Или можете покренути нову сесију Configuration Information Подаци о поставкама This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Ова страница садржи податке о текућим Капзилиним подешавањима битним за решавање проблема. Укључите ове податке приликом слања извештаја о грешци. Browser Identification Идентификација прегледача Paths Путање Build Configuration Параметри компајлирања Preferences Подешавања Option Поставка Value Вредност Extensions Проширења Name Име Author Аутор Description Опис Application version Издање програма Qt version Издање Кут-а Build time Датум компајлирања Platform Платформа Profile Профил Settings Подешавања Saved session Сачуване сесије Pinned tabs Закачени језичци Data Подаци Themes Теме Translations Преводи Disabled искључено <b>Enabled</b> <b>укључено</b> Debug build Проналажење грешака WebGL support ВебГЛ подршка Windows 7 API Виндоуз 7 АПИ KDE integration Интеграција у КДЕ Portable build Преносно издање No available extensions. Нема доступних проширења. RSSManager RSS Reader Читач РСС довода Empty Празно Add feed Додај довод Edit feed Уреди довод Delete feed Обриши довод Reload Учитај поново News новости Loading... Учитавам... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Немате ниједан РСС довод.<br/> Додајте их помоћу РСС иконе у траци навигације на сајту који нуди доводе. Add new feed Додавање новог довода Please enter URL of new feed: Унесите УРЛ новог довода: New feed Нови довод Fill title and URL of a feed: Унесите име и УРЛ довода: Feed title: Име довода: Feed URL: УРЛ довода: Edit RSS Feed Уређивање РСС довода Open link in current tab Отвори везу у текућем језичку Open link in new tab Отвори везу у новом језичку Error in fetching feed Грешка приликом добављања довода RSS feed duplicated РСС довод је удвостручен You already have this feed. Већ имате овај довод. RSSNotification Add this feed into Додај овај довод у Add Додај RSS feed <b>"%1"</b> РСС довод <b>„%1“</b> Internal Reader Унутрашњи читач Other... Остали... Liferea not running Лајфри није покренут Liferea must be running in order to add new feed. Лајфри мора бити покренут да бисте могли да додате нови довод. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Да бисте додали овај довод у остале програме користите ове податке:<br/><br/><b>Наслов: </b>%1<br/><b>Урл: </b>%2<br/><br/>Урл адреса довода је копирана на ваш клипборд. Add feed into other application Додавање довода у други програм RSSWidget Add RSS Feeds from this site Додај РСС доводе са овог сајта Untitled feed Неименован довод Add Додај RecoveryWidget Start New Session Почни нову сесију Restore Обнови Window %1 Прозор %1 RegisterQAppAssociation Warning! Упозорење! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) Појавио се проблем. Поново инсталирајте Капзилу, или је покушајте покренути са административним привилегијама. RssIcon Add RSS from this page... Додај РСС са ове странице... SSLManager Certificate Manager Менаџер сертификата CA Authorities Certificates Сертификати издавача Show info Прикажи инфо This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Ово је списак издавача сертификата за овлашћења смештених на системски уобичајеној путањи и кориснички одређеној путањи. Local Certificates Локални сертификати Import Увези Remove Уклони This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Ово је списак локалних сертификата сачуваних на вашем рачунару. Такође садржи све сертификате који су примили изузетак. Settings Подешавања Add Додај If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Ако сертификати издавача нису аутоматски учитани са система, можете ручно одредити путање где су сертификати смештени. <b>NOTE:</b> Setting this option is a high security risk! <b>НАПОМЕНА:</b> Постављање ове опције је велики безбедносни ризик! Ignore all SSL Warnings Занемари сва ССЛ упозорења All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Сви сертификати морају имати .crt наставак. Након додавања или уклањања путања сертификата потребно је да поново покренете Капзилу како би измене имале ефекта. Choose path... Изабери путању... Import certificate... Увоз сертификата... Certificate Informations Подаци о сертификату SearchEnginesDialog Manage Search Engines Менаџер мотора претраге Add... Додај... Remove Уклони Edit Уреди Set as default Подразумеван Up Горе Down Доле Search Engine Мотор претраге Shortcut Пречица Defaults Подразумевано Add Search Engine Додај мотор претраге Remove Engine Уклони You can't remove the default search engine.<br>Set a different engine as default before removing %1. Не можете да уклоните подразумевани мотор претраге.<br>Поставите други мотор као подразумеван пре уклањања %1. Edit Search Engine Уреди мотор претраге SearchEnginesManager Search Engine Added Мотор претраге је додат Search Engine "%1" has been successfully added. Мотор претраге „%1“ је успешно додат. Search Engine is not valid! Мотор претраге није исправан! Error Грешка Error while adding Search Engine <br><b>Error Message: </b> %1 Грешка приликом додавања мотора претраге <br><b>Порука грешке: </b> %1 SearchToolBar No results found. Ништа није нађено. SearchToolbar Search: Тражи: Search... Тражи... Highlight Истакни Case sensitive Разликуј величину слова SideBar Bookmarks Обележивачи History Историјат SiteInfo Site Info Подаци о сајту General Опште Media Медији Databases Базе Security Безбедност Size: Величина: Site address: Адреса сајта: Encoding: Кодирање: Meta tags of site: Мета ознаке сајта: Tag ознака Value вредност <b>Security information</b> <b>Подаци о безбедности</b> Details Детаљи Image слика Image address адреса слике <b>Preview</b> <b>Преглед</b> <b>Database details</b> <b>Детаљи базе података</b> Name: Име: Path: Путања: <database not selected> <база података није изабрана> <not set in certificate> <није постављено у сертификату> No databases are used by this page. Ова страница не користи базе података. <b>Connection is Encrypted.</b> <b>Веза је шифрована.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Ваша веза са овом страницом је обезбеђена овим сертификатом: </b> <b>Connection Not Encrypted.</b> <b>Веза није шифрована.</b> <b>Your connection to this page is not secured!</b> <b>Ваша веза са овом страницом није безбедна!</b> Copy Image Location Копирај локацију слике Copy Image Name Копирај име слике Save Image to Disk Сачувај слику на диск Error! Грешка! This preview is not available! Овај преглед није доступан! Save image... Сачувај слику... Cannot write to file! Не могу да упишем у фајл! Preview not available Преглед није доступан SiteInfoWidget More... Више... Your connection to this site is <b>secured</b>. Веза са овим сајтом је <b>безбедна</b>. Your connection to this site is <b>unsecured</b>. Веза са овим сајтом <b>није безбедна</b>. This is your <b>%1</b> visit of this site. Ово је ваша <b>%1</b> посета овом сајту. You have <b>never</b> visited this site before. <b>Нисте</b> досад посећивали овај сајт. first прва second друга third трећа SourceViewer Source of Изворни кôд документа File Фајл Load in page Учитај у страницу Save as... Сачувај као... Close Затвори Edit Уређивање Undo Опозови Redo Понови Cut Исеци Copy Копирај Paste Налепи Select All Изабери све Find Нађи Go to Line... Иди на линију... View Приказ Reload Учитај поново Editable Уређивање Word Wrap Прелом текста Source loaded in page Изворни кôд учитан у страницу Cannot load in page. Page has been closed. Не могу да учитам: страница је затворена. Save file... Сачувај фајл... Error! Грешка! Cannot write to file! Не могу да упишем у фајл! Error writing to file Грешка уписивања у фајл Source successfully saved Изворни кôд је успешно сачуван Source reloaded Изворни кôд је поново учитан Cannot reload source. Page has been closed. Не могу да учитам извор поново. Страница је затворена. Editable changed Уређивање је промењено Word Wrap changed Прелом текста је промењен Enter line number Унесите број линије SourceViewerSearch Search: Тражи: Search... Тражи... Whole words Целе речи SpeedDial Image files Фајлови слика Select image... Изабери слику... Unable to load Не могу да учитам SpellCheckDialog SpellCheck Провера правописа <b>Dictionary path</b> <b>Путања речника</b> Change... Промени... <b>User dictionary</b> <b>Кориснички речник</b> Add Додај Remove Уклони Using Hunspell library Користим Hunspell библиотеку Choose dictionary path... Одабир путање речника... Add new word... Додавање нове речи... Add new word: Додај нову реч: Speller No suggestions Нема предлога Add to dictionary Додај у речник Settings Поставке SqueezeLabelV2 Copy Копирај SslErrorDialog SSL Certificate Error! Грешка ССЛ сертификата! Only for this session Само за ову сесију TabBar &New tab &Нови језичак &Stop Tab &Заустави учитавање &Reload Tab &Учитај поново &Duplicate Tab У&двостручи језичак D&etach Tab &Одвоји језичак Un&pin Tab Отк&ачи језичак &Pin Tab За&качи језичак Re&load All Tabs Учитај поново &све језичке &Bookmark This Tab &Обележи овај језичак Bookmark &All Tabs Обележи с&ве језичке Close Ot&her Tabs Затвори ос&тале језичке Cl&ose З&атвори Reloa&d All Tabs &Учитај поново све језичке Restore &Closed Tab &Врати затворени језичак Close Tabs Затварање језичака Do you really want to close other tabs? Желите ли заиста да затворите остале језичке? TabWidget New Tab Нови језичак List of tabs Списак језичака Loading... Учитавам... No Named Page Неименована страница Currently you have %1 opened tabs Имате %1 отворених језичака New tab Нови језичак Empty Празно Restore All Closed Tabs Врати све затворене језичке Clear list Очисти списак TabbedWebView Loading... Учитавам... %1 - QupZilla %1 - Капзила Inspect Element Провери елемент ThemeManager <b>Name:</b> <b>Име:</b> <b>Author:</b> <b>Аутор:</b> <b>Description:</b> <b>Опис:</b> License Лиценца ToolButton Stop Заустави Reload Учитај поново Updater Update available Надоградња је доступна New version of QupZilla is ready to download. Ново издање Капзиле је спремно за преузимање. Update Ажурирај UserAgentDialog User Agent Manager Менаџер идентификације прегледача Change global User Agent Промени идентификацију глобално Use different User Agents for specified sites Користите различите идентификације за одређене сајтове Site сајт User Agent идентификација Add Додај Remove Уклони Edit Уреди Add new site Додавање новог сајта Edit site Уређивање сајта Site domain: Домен сајта: User Agent: Идентификација: WebInspectorDockWidget Web Inspector Веб инспектор WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? Капзила не може да рукује <b>%1:</b> везама. Захтевана веза је <ul><li>%2</li></ul>Желите ли да Капзила покуша да отвори ову везу помоћу системског програма? Remember my choice for this protocol Запамти мој избор за за овај протокол External Protocol Request Захтев за спољашњи протокол To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Да би приказала ову страницу Капзила мора поново да пошаље захтев за учитавањем. Confirm form resubmission Потврда поновног слања Select files to upload... Изабери фајлове за слање... Server refused the connection Сервер је одбио везу Server closed the connection Сервер је затворио везу Server not found Сервер није нађен Connection timed out Истекло време повезивања Untrusted connection Неповерљива веза Temporary network failure Привремени неуспех мреже Proxy connection refused Веза са проксијем одбијена Proxy server not found Сервер проксија није нађен Proxy connection timed out Истекло време повезивања са проксијем Proxy authentication required Прокси захтева аутентификацију Content not found Садржај није нађен Unknown network error Непозната грешка мреже AdBlocked Content Блокиран садржај Blocked by <i>%1</i> Блокирано филтером <i>%1</i> Content Access Denied Приступ садржају одбијен Error code %1 Кôд грешке %1 Failed loading page Неуспех учитавања странице QupZilla can't load page. Капзила не може да учита страницу. QupZilla can't load page from %1. Капзила не може да учита страницу са %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Проверите да ли сте погрешно укуцали адресу, на пример <b>ww.</b>example.com уместо <b>www.</b>example.com If you are unable to load any pages, check your computer's network connection. Ако не можете да учитате ниједну страницу, проверите везу вашег рачунара са интернетом. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Ако су ваш рачунар или мрежа заштићени заштитним зидом или проксијем, проверите да ли је Капзили дозвољен приступ интернету. Try Again Покушај поново JavaScript alert Јаваскрипт упозорење Prevent this page from creating additional dialogs Не дозволи овој страници да прави још дијалога Choose file... Изабери фајл... Cannot read data from <b>%1</b>. Upload was cancelled! Не могу да очитам податке са <b>%1</b>. Слање је отказано! Cannot read file! Не могу да очитам фајл! WebSearchBar Manage Search Engines Управљај моторима претраге Add %1 ... Додај %1 ... Paste And &Search Налепи и &тражи Clear All Очисти све Show suggestions Приказуј предлоге Search when engine changed Претражуј по промени мотора WebView No Named Page Неименована страница Create Search Engine Направи мотор претраге Cut Исеци Copy Копирај Paste Налепи Select All Изабери све Default Подразумеван Left to Right С лева на десно Right to Left С десна на лево Bold Подебљан Italic Курзиван Underline Подвучен &Reload &Учитај поново S&top Заус&тави Delete Обриши &Back На&зад &Forward На&пред This frame Оквир Show &only this frame П&рикажи само овај оквир Show this frame in new &tab Прикажи овај оквир у новом &језичку Print frame Штампај оквир Zoom &in У&величај &Zoom out У&мањи Reset Стварна величина Show so&urce of frame Прикажи извор о&квира Book&mark page &Обележи страницу &Save page as... &Сачувај страницу као... &Copy page link &Копирај везу странице Send page link... Пошаљи везу странице... &Print page &Штампај страницу Select &all Из&абери све Validate page Провера кôда Translate page Преведи страницу Show so&urce code Прикажи &изворни кôд Show info ab&out site По&даци о сајту Open link in new &tab Отвори везу у новом &језичку Open link in new &window Отвори везу у новом &прозору B&ookmark link &Обележи везу &Save link as... &Сачувај везу као... Send link... Пошаљи везу... &Copy link address &Копирај везу Show i&mage П&рикажи слику Copy im&age К&опирај слику Copy image ad&dress Копирај &адресу слике &Save image as... Сачувај с&лику као... Send image... Пошаљи слику... Send text... Пошаљи текст... Google Translate Гуглов преводилац Dictionary Речник Go to &web address Иди на &веб адресу Search "%1 .." with %2 Тражи „%1“ на %2 Search with... Тражи на... &Play &Пусти &Pause &Паузирај Un&mute Вра&ти звук &Mute У&тишај &Copy Media Address &Копирај адресу медија &Send Media Address П&ошаљи адресу медија Save Media To &Disk &Сачувај медиј на диск Check &Spelling &Провера правописа Languages Језици jsAlert Prevent this page from creating additional dialogs Не дозволи овој страници да прави још дијалога qupzilla-1.6.0/translations/sr_RS@latin.ts000066400000000000000000010561111226107126500206370ustar00rootroot00000000000000 AboutDialog About QupZilla O Kapzili Authors Programeri Authors and Contributors Programeri i saradnici < About QupZilla < O Kapzili <p><b>Application version %1</b><br/> <p><b>Izdanje programa %1</b><br/> <b>WebKit version %1</b></p> <b>Izdanje Vebkita %1</b></p> <small>Build time: %1 </small></p> <small>Datum kompajliranja: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Glavni programer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Saradnici:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Prevodioci:</b><br/>%1</p> AcceptLanguage Preferred Languages Prioritetni jezici Add... Dodaj... Remove Ukloni Up Gore Down Dole Personal [%1] Lično [%1] AdBlockAddSubscriptionDialog Add Subscription Dodaj pretplatu Title: Naslov: Address: Adresa: Add new subscription to AdBlock: Dodaj novu pretplatu na AdBlok: AdBlockCustomList Custom Rules Posebni filteri AdBlockDialog AdBlock Configuration Podešavanja Adbloka Enable AdBlock Uključi Adblok Search... Traži... Options Opcije AdBlock Adblok Use only essential part of EasyList (for performance reasons) Koristi samo suštinski deo EasyList (povećava brzinu učitavanja) Add Rule Dodaj filter Remove Rule Ukloni filter Add Subscription Dodaj pretplatu Remove Subscription Ukloni pretplatu Update Subscriptions Ažuriraj pretplate Learn about writing rules... Naučite praviti filtere... AdBlockIcon AdBlock lets you block unwanted content on web pages Adblok vam omogućuje da blokirate nepoželjni sadržaj na veb stranicama Blocked popup window Blokiran iskačući prozor AdBlock blocked unwanted popup window. Adblok je blokirao neželjeni iskačući prozor. AdBlock Adblok Show AdBlock &Settings Prikaži Adblokova &podešavanja Disable on %1 Onemogući na %1 Disable only on this page Onemogući samo na ovoj stranici Blocked Popup Windows Blokirani iskačući prozori %1 with (%2) %1 sa (%2) No content blocked Nema blokiranog sadržaja Blocked URL (AdBlock Rule) - click to edit rule Blokirani URL (Adblokov filter) - klikni da urediš filter AdBlockManager Do you want to add <b>%1</b> subscription? Želite li da dodate pretplatu na <b>%1</b>? AdBlock Subscription AdBlok pretplata EasyList EasyList AdBlockTreeWidget Add Rule Dodaj filter Remove Rule Ukloni filter Add Custom Rule Dodaj posebni filter Please write your rule here: Upišite vaš filterski izraz ovde: %1 (recently updated) %1 (nedavno ažurirano) AddAcceptLanguage Add Language Dodaj jezik Choose preferred language for web sites Izaberite prioritetni jezik za veb stranice Personal definition: Posebna definicija: AesInterface Warning! Upozorenje! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. Podaci su šifrovani novijim izdanjem Kapzile. Instalirajte najnovije izdanje. AutoFill Database (plaintext) Tekstualnu bazu Database (encrypted) Šifrovanu bazu Enter Master Password Unesite glavnu lozinku Permission is required, please enter Master Password: Potrebna je dozvola, unesite glavnu lozinku: Warning! Upozorenje! Entered password is wrong! Unesena lozinka je pogrešna! This backend needs a master password to be set! QupZilla just switches to its default backend Ova pozadina zahteva da glavna lozinka bude postavljena! Kapzila vraća podrazumevanu pozadinu AutoFillManager Passwords are stored in: Lozinke se smeštaju u: Change backend Promeni pozadinu Backend options Opcije pozadine Passwords Lozinke Server sajt Username korisničko ime Password lozinka Import/Export Uvoz/izvoz Show Passwords Prikaži lozinke Edit Uredi Remove Ukloni Remove All Ukloni sve Exceptions Izuzeci Import Passwords from File... Uvezi lozinke iz fajla... Export Passwords to File... Izvezi lozinke u fajl... Search Traži Change backend... Promena pozadine... Change backend: Za pozadinu koristi: Are you sure that you want to show all passwords? Želite li zaista da prikažete sve lozinke? Hide Passwords Sakrij lozinke Confirmation Potvrda Are you sure to delete all passwords on your computer? Želite li zaista da obrišete sve lozinke sa vašeg računara? Edit password Uredi lozinku Change password: Izmeni lozinku: Choose file... Izaberi fajl... Cannot read file! Ne mogu da očitam fajl! Successfully imported Uspešno uvezeno Error while importing! Greška prilikom uvoza! Cannot write to file! Ne mogu da upišem u fajl! Successfully exported Uspešno izvezeno AutoFillNotification Update Ažuriraj Remember Upamti Never For This Site Nikad za ovaj sajt Not Now Ne sada on %1 na %1 for <b>%1</b> za <b>%1</b> Do you want QupZilla to update saved password %1? Želite li da Kapzila ažurira lozinku %1? Do you want QupZilla to remember the password %1 %2? Želite li da Kapzila upamti lozinku %1 %2? AutoFillWidget Choose username to login Korisničko ime za prijavu Login Prijava Login as <b>%1</b> Prijavi se kao <b>%1</b> BookmarkIcon Bookmark this Page Obeleži ovu stranicu Edit this bookmark Uredi ovaj obeleživač BookmarksImportDialog Import Bookmarks Uvoz obeleživača <b>Import Bookmarks</b> <b>Uvoz obeleživača</b> From File Iz fajla Internet Explorer Internet Eksplorer Choose browser from which you want to import bookmarks: Izaberite pregledač iz koga želite da uvezete obeleživače: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Napomena:</b> Trenutno samo uvoz iz HTML fajla podržava i uvoženje fascikli. Choose... Izaberi... Try to fetch icons for all bookmarks (may take a while) Pokušaj da dobaviš ikone za sve obeleživače (može da potraje) Fetching icons, please wait... Dobavljam ikone, sačekajte... Title ime Url url Next Sljedeće Cancel Poništi <b>Importing from %1</b> <b>Uvozim iz %1</b> Finish Završi Please press Finish to complete importing process. Pritisnite „Završi“ da biste završili proces uvoza. Error! Greška! The file doesn't contain any bookmark. Fajl ne sadrži nijedan obeleživač. Choose directory... Izaberi direktorijum... Choose file... Izaberi fajl... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilin Fajerfoks usprema obeleživače u <b>places.sqlite</b> Skulajt bazi podataka. Ovaj fajl se obično nalazi u Please choose this file to begin importing bookmarks. Izaberite ovaj fajl da biste otpočeli uvoze obeleživača. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Guglov Hroum usprema obeleživače u <b>Bookmarks</b> tekstualnom fajlu. Ovaj fajl se obično nalazi u Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera usprema obeleživače u <b>bookmarks.adr</b> tekstualnom fajlu. Ovaj fajl se obično nalazi u You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Možete uvesti obeleživače iz bilo kog pregledača koji podržava izvoz u HTML-u. Ovaj fajl obično ima ove sufikse Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Eksplorer usprema obeleživače u fascikli <b>Favorites</b>. Ovaj fajl se obično nalazi u Please choose this folder to begin importing bookmarks. Izaberite ovu fasciklu da biste otpočeli uvoz obeleživača. No Error Nema greške Unable to open file. Ne mogu da otvorim fajl. Cannot evaluate JSON code. Ne mogu da obradim JSON fajl. File does not exist. Fajl ne postoji. Unable to open database. Is Firefox running? Ne mogu da otvorim bazu podataka. Da li je Fajerfoks pokrenut? Directory does not exist. Direktorijum ne postoji. The directory does not contain any bookmarks. Direktorijum ne sadrži nijedan obeleživač. BookmarksManager Bookmarks Obeleživači Add Folder Dodaj fasciklu Title ime Url url Expand All Raširi sve Import and Export Uvoz i izvoz Collapse All Sažmi sve Import Bookmarks... Uvezi obeleživače... Export Bookmarks to HTML... Izvezi obeleživače u HTML... Export to HTML... Izvoz u HTML... Add new folder Dodaj novu fasciklu Choose parent folder for new folder: Roditeljska fascikla: Choose name for new bookmark folder: Ime nove fascikle obeleživača: Add new subfolder Dodajte novu podfasciklu Choose name for new subfolder in bookmarks toolbar: Ime nove podfascikle u traci obeleživača: Rename Folder Preimenuj fasciklu Choose name for folder: Ime za fasciklu: Add Subfolder Dodaj podfasciklu Rename folder Preimenuj fasciklu Remove folder Ukloni fasciklu Open link in current &tab Otvori vezu u &tekućem jezičku Open link in &new tab Otvori vezu u &novom jezičku Move bookmark to &folder Pomjeri obeleživač u &fasciklu Change icon Promeni ikonu Rename bookmark Preimenuj obeleživač Remove bookmark Ukloni obeleživač <b>Warning: </b>You already have bookmarked this page! <b>Upozorenje: </b>Već ste obeležili ovu stranicu! Choose name and location of this bookmark. Odredite ime i lokaciju za ovaj obeleživač. Add New Bookmark Dodavanje obeleživača Choose folder for bookmarks: Izaberite fasciklu obeleživača: Bookmark All Tabs Obeleži sve jezičke BookmarksModel Bookmarks In Menu Obeleživači u meniju Bookmarks In ToolBar Obeleživači u traci alatki Unsorted Bookmarks Nerazvrstani obeleživači BookmarksSideBar Search... Traži... Open link in current &tab Otvori vezu u &tekućem jezičku Open link in &new tab Otvori vezu u &novom jezičku Copy address Kopiraj adresu &Delete &Obriši BookmarksToolbar &Bookmark Current Page O&beleži tekuću stranicu Bookmark &All Tabs Obeleži sve &jezičke &Organize Bookmarks &Organizuj obeleživače Show Most &Visited Prikaži &najposjećenije Show Only Icons Prikaži samo ikone &Hide Toolbar &Sakrij traku obeleživača Open bookmark Otvori Open bookmark in new tab Otvori u novom jezičku Move right Pomeri desno Move left Pomeri levo Edit bookmark Uredi obeleživač Remove bookmark Ukloni obeleživač Edit bookmark: Uredi obeleživač: Title: Ime: Url: Url: Edit Bookmark Uređivanje obeleživača Most visited Najposećenije Sites you visited the most Sajtovi koje ste najviše posećivali Empty Prazno BookmarksTree Bookmarks Obeleživači New Folder... Nova fascikla... BookmarksWidget Add to Speed Dial Dodaj na brzo biranje Save Sačuvaj Name: Ime: Folder: Fascikla: Remove from Speed Dial Ukloni sa brzog biranja Remove Ukloni BrowsingLibrary Library Biblioteka Search... Traži... History Istorijat Bookmarks Obeleživači RSS RSS CertificateInfoWidget <b>Issued To</b> <b>Izdat za</b> Common Name (CN): Zajedničko ime (CN): Organization (O): Organizacija (O): Organizational Unit (OU): Organizaciona jedinica (OU): Serial Number: Serijski broj: <b>Issued By</b> <b>Izdavač</b> <b>Validity</b> <b>Valjanost</b> Issued On: Datum izdavanja: Expires On: Datum isteka: ClearPrivateData Clear Recent History Brisanje privatnih podataka Choose what you want to delete: Obriši sledeće stavke: Clear history istorijat posećenih stranica Clear cache keš Clear icons ikone <b>Clear Recent History</b> <b>Obriši nedavni istorijat</b> Earlier Today ranije danas Week nedelje Month meseca All Sve Clear web databases veb baze Optimize database Optimizuj bazu podataka Clear local storage lokalno skladište Clear cookies kolačiće Clear Private Data Brisanje privatnih podataka Are you sure to clear selected private data? Želite li zaista da obrišete izabrane privatne podatke? Database Optimized Baza podataka je optimizovana Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 Baza podataka je uspešno optimizovana.<br/><br/><b>Veličina baze pre: </b>%1<br/><b>Veličina baze nakon: </b>%2 ClickToFlash Object blocked by ClickToFlash Objekat blokirao Klikni-za-fleš Show more information about object Prikaži još podataka o objektu Delete object Obriši objekat Add %1 to whitelist Dodaj %1 na spisak dozvoljenih Flash Object Fleš objekat <b>Attribute Name</b> <b>Svojstvo</b> <b>Value</b> <b>Vrednost</b> No more information available. Nema više dostupnih podataka. CookieManager Cookies Kolačići Stored Cookies Uspremljeni kolačići Find: Nađi: These cookies are stored on your computer: Ovi kolačići su uspremljeni na vašem računaru: Server sajt Cookie name ime kolačića Name: Ime: Value: Vrednost: Server: Server: Path: Putanja: Secure: Bezbednost: Expiration: Ističe: <cookie not selected> <kolačić nije izabran> Remove all cookies Ukloni sve kolačiće Remove cookies Ukloni kolačiće Cookie Filtering Filtriranje kolačića <b>Cookie whitelist</b> <b>Spisak dozvoljenih kolačića</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Kolačići sa ovih servera će UVEK biti prihvatani (čak i ako isključite uspremanje kolačića) Add Dodaj Remove Ukloni <b>Cookie blacklist</b> <b>Spisak nedozvoljenih kolačića</b> Cookies from these servers will NEVER be accepted Kolačići sa ovih servera NIKAD neće biti prihvatani Settings Podešavanja <b>Cookie Settings</b> <b>Postavke kolačića</b> Allow storing of cookies Dozvoli uspremanje kolačića Delete cookies on close Obriši kolačiće po zatvaranju Match domain exactly Poklapaj domen tačno Filter tracking cookies Prečišćaj kolačiće pratioce <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! <b>Upozorenje:</b> Tačno poklapanje domena i prečišćanje kolačića pratioca može dovesti do odbijanja nekih kolačića sa sajtova. Ako imate problema sa kolačićima, isključite ove opcije! Search Traži Confirmation Potvrda Are you sure to delete all cookies on your computer? Želite li zaista da obrišete sve kolačiće sa vašeg računara? Secure only Samo bezbedne veze All connections Sve veze Session cookie Kolačić sesije Remove cookie Ukloni kolačić Add to whitelist Dodavanje u dozvoljene Add to blacklist Dodavanje u nedozvoljene DownloadFileHelper Save file as... Sačuvaj fajl kao... NoNameDownload Neimenovano_preuzimanje DownloadItem Remaining time unavailable Preostalo vreme nije dostupno Error: Cannot write to file! Greška: ne mogu da upišem fajl! Done - %1 Gotovo - %1 Cancelled Otkazano few seconds nekoliko sekundi %n seconds %n sekunda %n sekunde %n sekundi %n minutes %n minuta %n minute %n minuta %n hours %n sat %n sata %n sati Unknown speed Brzina nije poznata kB/s kB/s MB/s MB/s GB/s GB/s Unknown size Veličina nije poznata %2 - unknown size (%3) %2 - nepoznate veličine (%3) Remaining %1 - %2 of %3 (%4) Preostalo %1 - %2 od %3 (%4) Cancelled - %1 Otkazano - %1 Delete file Obriši fajl Do you want to also delete dowloaded file? Želite li da obrišete i preuzeti fajl takođe? Open File Otvori fajl Open Folder Otvori fasciklu Go to Download Page Idi na stranicu preuzimanja Copy Download Link Kopiraj vezu preuzimanja Cancel downloading Otkaži preuzimanje Remove Ukloni Error Greška Not found Nije nađeno Sorry, the file %1 was not found! Fajl %1 nije nađen! Error: Greška: DownloadManager Download Manager Menadžer preuzimanja Clear Očisti %1% of %2 files (%3) %4 remaining %1% od %2 fajlova (%3) %4 do završetka %1% - Download Manager %1% - menadžer preuzimanja Download Finished Preuzimanje je završeno All files have been successfully downloaded. Svi fajlovi su uspešno preuzeti. Warning Upozorenje Are you sure to quit? All uncompleted downloads will be cancelled! Želite li zaista da napustite? Sva nezavršena preuzimanja će biti otkazana! DownloadOptionsDialog Opening Otvaram Copy download link Kopiraj vezu preuzimanja You have chosen to open Izabrali ste da otvorite which is a: koji je: What should QupZilla do with this file? Šta da radim sa ovim fajlom? Open... Otvori... Save File Sačuvaj fajl Download with External Manager Preuzmi spoljašnjim menadžerom from: sa: Opening %1 Otvaram %1 Download link copied. Veza je kopirana. EditSearchEngine Name: Ime: Url: Url: Shortcut: Prečica: Icon: Ikona: <b>Note: </b>%s in url or post data represent searched string <b>Napomena:</b> %s u URL-u ili POST podacima predstavlja traženi izraz Post Data: POST podaci: Change... Promeni... FileSchemeReply No Error Nema greške Up to higher level directory U roditeljsku fasciklu Show hidden files Prikaži skrivene fajlove Name Ime Size Veličina Last modified Izmenjeno Index for %1 Indeks od %1 Folder is empty. Fascikla je prazna. FtpDownloader Cancelled! Otkazano! FtpSchemeReply Up to higher level directory U roditeljsku fasciklu Show hidden files Prikaži skrivene fajlove Name Ime Size Veličina Last modified Izmenjeno Index for %1 Indeks od %1 Folder is empty. Fascikla je prazna. Unknown command Nepoznata naredba HTML5PermissionsDialog HTML5 Permissions HTML5 dozvole Notifications Obaveštenja Site sajt Behaviour radnja Remove Ukloni Geolocation Geolokacija Allow dozvoli Deny odbij HTML5PermissionsNotification Remember Upamti Allow Dozvoli Deny Odbij this site ovaj sajt Allow %1 to show desktop notifications? Dozvoli da %1 prikazuje obaveštenja na radnoj površi? Allow %1 to locate your position? Dozvoli da %1 pronađe vaš položaj? History No Named Page Neimenovana stranica January Januar February Februar March Mart April April May Maj June Jun July Jul August Avgust September Septembar October Oktobar November Novembar December Decembar HistoryManager History Istorijat Delete Obriši Clear All History Obriši istorijat Confirmation Potvrda Are you sure to delete all history? Želite li zaista da obrišete čitav istorijat? HistoryModel Title Naslov Address Adresa Visit Date Datum posete Visit Count Broj poseta Today Danas This Week Ove nedelje This Month Ovoga meseca HistorySideBar Search... Traži... HistoryView Open link in current tab Otvori vezu u tekućem jezičku Open link in new tab Otvori vezu u novom jezičku Copy title Kopiraj naslov Copy address Kopiraj adresu Remove Ukloni IconChooser Choose icon... Izaberi ikonu... From file Iz fajla Image (.png, .jpg, .jpeg, .gif) Slika (.png, .jpg, .jpeg, .gif) Choose file... Izaberi fajl... From database Iz baze Site Url: Url sajta: Image files Fajlovi slika JsOptions JavaScript Options Opcije Javaskripti Allow JavaScript to: Dozvoli javaskripti da: Close windows zatvori prozor Open popup windows otvori iskačući prozor Change window size promeni veličinu prozora Hide menu bar sakrije traku menija Hide status bar sakrije traku stanja Hide tool bar sakrije traku alatki Access clipboard pristupi klipbordu LicenseViewer License Viewer Pregledač licence LocationBar Enter URL address or search on %1 Unesite URL adresu ili tražite na %1 Paste And &Go Nalepi i &idi Clear All Očisti sve .co.uk Append domain name on ALT + Enter = Should be different for every country .co.rs Show information about this page Prikaži podatke o ovoj stranici LocationCompleterView Switch to tab Aktiviraj jezičak MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? Kapzila trenutno nije vaš podrazumevani pregledač veba. Da li želite da postavite za podrazumevanog pregledača? Always perform this check when starting QupZilla. Uvek izvrši ovu proveru po pokretanju Kapzile. Default Browser Podrazumevani pregledač QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. Kapzila je nov, brz i siguran veb pregledač otvorenog koda. Licenciran pod izdanjem 3 GPL licence ili (po vašem nahođenju) bilo kojim kasnijim izdanjem licence. Baziran na VebKit jezgru i Kut radnom okruženju. MasterPasswordDialog Encrypted DataBase Settings Postavke šifrovane baze podataka Set/Change Master Password... Postavi/promeni glavnu lozinku... Clear Master Password... Ukloni glavnu lozinku... This backend does not work without a master password. Ova pozadina ne radi ako glavna lozinka nije postavljena. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. Ovo će ukloniti glavnu lozinku i premestiti šifrovane podatke u pozadinu „Tekstualna baza“ i aktivirati je. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Glavna lozinka štiti lozinke za sajtove i podatke formulara. Ako je postavite, biće vam zatražena jednom po sesiji. Current Password: Tekuća lozinka: New Password: Nova lozinka: Confirm Password: Potvrdi lozinku: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. <b>Napomena:</b> Glavnu lozinku ne možete povratiti ako je zaboravite. Warning! Upozorenje! You entered a wrong password! Uneli ste pogrešnu lozinku! New/Confirm password fields do not match! Lozinke se ne poklapaju! Some data has not been decrypted. The master password was not cleared! Deo podataka nije dešifrovan. Glavna lozinka nije uklonjena! Are you sure to clear master password and decrypt data? Želite li zaista da uklonite glavnu lozinku i dešifrujete podatke? NavigationBar No Named Page Neimenovana stranica Back Nazad Forward Napred Home Domaća New Tab Novi jezičak Main Menu Glavni meni Exit Fullscreen Napusti cio ekran Clear history Obriši istorijat NetworkManager SSL Certificate Error! Greška SSL sertifikata! The page you are trying to access has the following errors in the SSL certificate: Stranica kojoj pokušavate da pristupite ima sljedeće greške u SSL sertifikatu: <b>Organization: </b> <b>Organizacija: </b> <b>Domain Name: </b> <b>Ime domena: </b> <b>Expiration Date: </b> <b>Datum isteka: </b> <b>Error: </b> <b>Greška: </b> Would you like to make an exception for this certificate? Želite li da napravite izuzetak za ovaj sertifikat? Authorisation required Potrebno ovlašćenje Username: Korisničko ime: Password: Lozinka: Save username and password on this site Sačuvaj korisničko ime i lozinku na ovom sajtu A username and password are being requested by %1. The site says: "%2" %1 zahteva korisničko ime i lozinku. Sajt kaže: „%2“ FTP authorisation required Potrebno je ovlašćenje za FTP Login anonymously Anonimna prijava A username and password are being requested by %1:%2. %1:%2 zahteva korisničko ime i šifru. Proxy authorisation required Potrebno je ovlašćenje za proksi Remember username and password for this proxy. Zapamti korisničko ime i lozinku za ovaj proksi. A username and password are being requested by proxy %1. Proksi %1 zahteva korisničko ime i šifru. PageScreen Page Screen Snimak stranice Format: Sačuvaj kao: Location: Sačuvaj u: Browse... Pregledaj... Save as %1 %1 Choose location... Odabir odredišta... File '%1' already exists. Do you want to overwrite it? Fajl „%1“ već postoji. Želite li da ga prebrišete? File already exists Fajl već postoji PluginsList Application Extensions Programski priključci Allow Application Extensions to be loaded Dozvoli učitavanje programskih priključaka Settings Podešavanja WebKit Plugins Vebkitovi priključci <b>Click To Flash Plugin</b> <b>„Klikni-za-fleš“ priključak</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Klikni-za-fleš je priključak koji zaustavlja automatsko učitavanje fleš sadržaja na stranici. Uvek ga možete učitati ručno klikom na ikonu za pokretanje fleš sadržaja. Whitelist spisak dozvoljenih Add Dodaj Remove Ukloni Allow Click To Flash Dozvoli Klikni-za-fleš PluginsManager Add site to whitelist Dodavanje u dozvoljene Server without http:// (ex. youtube.com) Adresa servera bez „http://“ (npr. youtube.com) Error! Greška! Cannot load extension! Ne mogu da učitam proširenje! PopupWebView Inspect Element Proveri element PopupWindow File Fajl &Save Page As... &Sačuvaj stranicu kao... Save Page Screen Sačuvaj snimak stranice Send Link... Pošalji vezu... &Print... &Štampaj... Close Zatvori Edit Uređivanje &Undo &Opozovi &Redo &Ponovi &Cut &Iseci C&opy &Kopiraj &Paste &Nalepi Select All Izaberi sve Find Nađi View Prikaz &Stop &Zaustavi &Reload &Učitaj ponovo Zoom &In U&veličaj Zoom &Out U&manji Reset Stvarna veličina &Page Source &Izvor stranice %1 - QupZilla %1 - Kapzila Preferences Preferences Podešavanja QupZilla Kapzila General Opšte Appearance Izgled Tabs Jezičci Browsing Pregledanje Fonts Fontovi Keyboard Shortcuts Prečice tastature Downloads Preuzimanja Password Manager Menadžer lozinki Privacy Privatnost Notifications Obaveštenja Extensions Proširenja Other Ostalo Use current Koristi tekuću Note: You cannot delete active profile. Napomena: Ne možete obrisati aktivni profil. Create New Napravi novi Delete Obriši <b>Launching</b> <b>Pokretanje</b> After launch: Po pokretanju: Open blank page otvori praznu stranicu Open homepage otvori domaću stranicu Open speed dial otvori brzo biranje Restore session obnovi sesiju Homepage: Domaća stranica: On new tab: Na novom jezičku: Open blank tab otvori prazan jezičak Open other page... otvori drugu stranicu... <b>Profiles</b> <b>Profili</b> Startup profile: Početni profil: Check for updates on start Potraži nadogradnje po pokretanju Active profile: Aktivni profil: In order to change language, you must restart browser. Da biste promenili jezik, morate ponovo pokrenuti pregledač. <b>Language</b> <b>Jezik</b> Available translations: Dostupni prevodi: Don't load tabs until selected Ne učitavaj jezičke dok ne budu izabrani Check to see if QupZilla is the default browser on startup Provjera podrazumijevanog pregledača po startu Check Now Proveri odmah Themes Teme Advanced options Napredne opcije <b>Browser Window</b> <b>Prozor pregledača</b> Show StatusBar on start Prikaži traku stanja po pokretanju Show Bookmarks ToolBar on start Prikaži traku obeleživača po pokretanju Show Navigation ToolBar on start Prikaži traku navigacije po pokretanju <b>Navigation ToolBar</b> <b>Traka navigacije</b> Show Home button Prikaži dugme Domaća Show Back / Forward buttons Prikaži dugmad Nazad / Napred <b>Background<b/> <b>Pozadina<b/> Use transparent background Koristi prozirnu pozadinu Show web search bar Prikaži traku veb pretrage Show Add Tab button Prikaži dugme Dodaj jezičak Show Reload / Stop buttons Prikaži dugmad Ponovo učitaj / Zaustavi Tabs behaviour Ponašanje jezičaka Show tab previews Prikazuj preglede jezičaka Make tab previews animated Animiraj preglede jezičaka Hide tabs when there is only one tab Sakrij traku sa jezičcima kada ima samo jedan Activate last tab when closing active tab Aktiviraj prethodno korišćen jezičak pri zatvaranju tekućeg Open new tabs after active tab Otvaraj nove jezičke posle aktivnog Open new empty tabs after active tab Otvaraj prazne jezičke posle aktivnog Automatically switch to newly opened tab Automatski fokusiraj novootvoreni jezičak Don't quit upon closing last tab Ne napuštaj po zatvaranju poslednjeg jezička Ask when closing multiple tabs Potvrdi zatvaranje prozora sa više jezičaka Closed tabs list instead of opened in tab bar Spisak zatvorenih umesto spiska otvorenih jezičaka na traci jezičaka Address Bar behaviour Ponašanje trake adrese Suggest when typing into address bar: Pri kucanju u traci adrese predlaži: History and Bookmarks istorijat i obeleživače History istorijat Bookmarks obeleživače Nothing ništa Press "Shift" to not switch the tab but load the url in the current tab. Pritisnite Shift taster da učitate URL u tekućem jezičku. Propose to switch tab if completed url is already loaded. Predlaži aktiviranje jezička ako je URL već otvoren. Always show go icon Uvek prikazuj ikonu „idi na sajt“ Select all text by double clicking in address bar Izaberi sav tekst dvoklikom u traci adrese Select all text by clicking in address bar Izaberi sav tekst klikom u traci adrese Search with Default Engine Traži pomoću podrazumevanog motora Show loading progress in address bar Prikaži napredak učitavanja u traci adrese Fill Ispun Bottom Dno Top Vrh Custom color: Posebna boja: Select color Izaberi boju ... ... Reset Podrazumevana Web Configuration Veb postavke Allow Netscape Plugins (Flash plugin) Dozvoli Netskejpove priključke (Fleš) Allow JavaScript Dozvoli Javaskripte Allow JAVA Dozvoli Javu Allow DNS Prefetch Predohvatanje DNS unosa Enable XSS Auditing try to detect possible XSS attacks when executing javascript Uključi IksSS proveravanje Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Štampaj pozadinu elementa Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Uključi veze u lanac fokusa Animated scrolling Animirano klizanje Enable caret browsing Pregledanje pomoću kursora Enable spatial navigation Prostorna navigacija Zoom text only Uveličavaj samo tekst Mouse wheel scrolls Točkić miša kliza lines on page linija na stranici Default zoom on pages: Podrazumevano uveličanje stranica: Local Storage Lokalno skladište Maximum Najviše 50 MB 50 MB 1 1 Maximum pages in cache: Najviše stranica u kešu: Allow storing network cache on disk Dozvoli smještanje mrežnog keša na disk Store cache in: Smeštaj keš u: Allow saving history Dozvoli čuvanje istorijata Delete history on close Obriši istorijat po zatvaranju Allow local storage of HTML5 web content Dozvoli lokalno smeštanje HTML5 veb sadržaja Delete locally stored HTML5 web content on close Obriši lokalni HTML5 veb sadržaj po zatvaranju Delete now Obriši sada Proxy Configuration Postavke proksija Proxy Auto-Config (.pac) file Fajl auto-postavki proksija (.pac) Reload Učitaj ponovo HTTP HTTP SOCKS5 SOCKS5 Port: Port: Username: Korisničko ime: Password: Lozinka: Don't use on: Ne koristi na: Manual configuration Ručne postavke System proxy configuration Sistemske postavke Do not use proxy Ne koristi proksi <b>Exceptions</b> <b>Izuzeci</b> Server: Server: Use different proxy for https connection Koristi drugi proksi za HTTPS vezu Use script for automatic configuration: Koristi skriptu za automatsku postavu: <b>Font Families</b> <b>Porodice fonta</b> Standard Standardni Fixed Fiksni Serif Serifni Sans Serif Beserifni Cursive Kurzivni Fantasy Fantazijski <b>Font Sizes</b> <b>Veličine fonta</b> Fixed Font Size Fiksni font Default Font Size Podrazumevani font Minimum Font Size Najmanja veličina Minimum Logical Font Size Najmanja moguća veličina <b>Shortcuts</b> <b>Prečice</b> Switch to tabs with Alt + number of tab Aktiviraj jezičke sa Alt + broj jezička Load speed dials with Ctrl + number of speed dial Učitavaj brza biranja sa Ctrl + broj brzog biranja Add .co.uk domain by pressing ALT key in address bar Dodaj .co.rs domen pritiskom na ALT taster <b>Download Location</b> <b>Odredište preuzimanja</b> Ask everytime for download location Pitaj svaki put za odredište Use defined location: Koristi odredište: <b>Download Options</b> <b>Opcije preuzimanja</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Koristi sistemski dijalog fajlova (može prouzročiti probleme za preuzimanje SSL bezbednog sadržaja) Close download manager when downloading finishes Zatvori menadžera preuzimanja kada se preuzimanje završi <b>External download manager</b> <b>Spoljašnji menadžer preuzimanja</b> Use external download manager Koristi spoljašnji menadžer preuzimanja Executable: Izvršna: Arguments: Argumenti: Leave blank if unsure Ostavite prazno ako niste sigurni <b>%d</b> will be replaced with URL to be downloaded <b>%d</b> će biti zamenjeno adresom preuzimanja <b>AutoFill options</b> <b>Opcije automatske popune</b> Allow saving passwords from sites Dozvoli uspremanje lozinki sa sajtova Send Referer header to servers Šalji zaglavlje pratioca serverima <b>Cookies</b> <b>Kolačići</b> Send Do Not Track header to servers Šalji DNT (Ne Prati Me) zaglavlje serverima <b>Other</b> <b>Razno</b> Manage CA certificates Upravljaj sertifikatima Certificate Manager Menadžer sertifikata <b>SSL Certificates</b> <b>SSL sertifikati</b> <b>JavaScript</b> <b>Javaskripte</b> Manage JavaScript privacy options Upravljaj postavkama privatnosti JavaScript options Postavke javaskripti Cookies Manager Menadžer kolačića Manage Cookies Upravljaj kolačićima <b>HTML5 Permissions</b> <b>HTML5 dozvole</b> Manage HTML5 permissions Upravljaj HTML5 odobrenjima HTML5 Permissions HTML5 dozvole <b>Notifications</b> <b>Obaveštenja</b> Use OSD Notifications Koristi OSD obaveštenja Use Native System Notifications (Linux only) Koristi izvorna sistemska obaveštenja (samo za Linuks) Do not use Notifications Ne koristi OSD obaveštenja Expiration timeout: Vreme isteka: seconds sekundi <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Napomena: </b>Možete promeniti položaj OSD obaveštenja prevlačenjem po ekranu. StyleSheet automatically loaded with all websites: Opis stila koji će automatski biti učitan za sve sajtove: Languages Jezici <b>Preferred language for web sites</b> <b>Prioritetni jezik za veb stranice</b> <b>Change browser identification</b> <b>Promena identifikacije pregledača</b> User Agent Manager Menadžer identifikacije pregledača Default Podrazumevan Set as default Postavi za podrazumevan OSD Notification OSD obaveštenje Drag it on the screen to place it where you want. Prevucite ga po ekranu na željeni položaj. Choose download location... Odabir odredišta za preuzimanje... Choose stylesheet location... Odabir fajla opisa stila... Deleted Obrisano Choose executable location... Odabir lokacije izvršnog fajla... Choose cache path... Odabir putanje za keš... New Profile Novi profil Enter the new profile's name: Unesite ime novog profila: Error! Greška! This profile already exists! Ovaj profil već postoji! Cannot create profile directory! Ne mogu da napravim direktorijum profila! Confirmation Potvrda Are you sure to permanently delete "%1" profile? This action cannot be undone! Želite li zaista trajno da obrišete „%1“ profil? Ova radnja ne može da se poništi! Select Color Izbor boje QObject Native System Notification Izvorna sistemska obaveštenja Save file as... Sačuvaj fajl kao... The file is not an OpenSearch 1.1 file. Ovaj fajl nije OpenSearch 1.1 fajl. <not set in certificate> <nije postavljeno u sertifikatu> Unknown size Veličina nije poznata KB KB MB MB GB GB Executable: Izvršna: Arguments: Argumenti: Cannot start external program Ne mogu da pokrenem spoljašnji program Cannot start external program! %1 Ne mogu da pokrenem spoljašnji program! %1 QtWin Open new tab Otvori novi jezičak Opens a new tab if browser is running Otvara novi jezičak ako je pregledač pokrenut Open new window Otvori novi prozor Opens a new window if browser is running Otvara novi prozor ako je pregledač pokrenut Open download manager Otvori menadžera preuzimanja Opens a download manager if browser is running Otvara menadžera preuzimanja ako je pregledač pokrenut QupZilla QupZilla Kapzila Private Browsing Enabled Privatno pregledanje je omogućeno IP Address of current page IP adresa tekuće stranice &About QupZilla &O Kapzili Pr&eferences Po&dešavanja Quit Napusti &File &Fajl &New Window &Novi prozor New Tab Novi jezičak Open Location Otvori lokaciju Open &File... Otvori &fajl... Close Tab Zatvori jezičak Close Window Zatvori prozor &Save Page As... &Sačuvaj stranicu kao... Save Page Screen Sačuvaj snimak stranice Send Link... Pošalji vezu... &Print... &Štampaj... Import bookmarks... Uvezi obeleživače... &Edit &Uređivanje &Undo &Opozovi &Redo &Ponovi &Cut &Iseci C&opy &Kopiraj &Paste &Nalepi Select &All Izaberi &sve &Find N&ađi &View &Prikaz &Navigation Toolbar Traka &navigacije &Bookmarks Toolbar Traka &obeleživača Sta&tus Bar Traka &stanja &Menu Bar Traka &menija &Tabs on Top &Jezičci na vrhu &Fullscreen &Cio ekran &Stop &Zaustavi &Reload &Učitaj ponovo Character &Encoding &Kodiranje znakova Enable &Caret Browsing Pregledanje ku&rsorom Toolbars Trake alatki Sidebars Bočne trake Zoom &In U&veličaj Zoom &Out U&manji Reset Stvarna veličina &Page Source &Izvor stranice Hi&story &Istorijat &Back Na&zad &Forward Na&pred &Home &Domaća Show &All History Prikaži &sav istorijat Closed Tabs Zatvoreni jezičci Recently Visited Nedavno posećeno Most Visited Najposećenije &Bookmarks &Obeleživači Bookmark &This Page Obeleži ovaj &jezičak Bookmark &All Tabs Obeleži &sve jezičke Organize &Bookmarks &Organizuj obeleživače &Tools Ala&tke &Web Search Pretraga &veba Page &Info Podaci o &sajtu &Download Manager Menadžer &preuzimanja &Cookies Manager Menadžer &kolačića &AdBlock &Adblok RSS &Reader Čitač RSS &dovoda Web In&spector Veb i&nspektor Clear Recent &History &Obriši privatne podatke New &Private Window Novi p&rivatni prozor &Help Po&moć About &Qt O &Kutu Information about application Podaci o programu Configuration Information Postavke programa Report &Issue &Prijavi problem Restore &Closed Tab &Obnovi zatvoreni jezičak (Private Browsing) (privatno pregledanje) Empty Prazno Restore All Closed Tabs Obnovi sve zatvorene jezičke Clear list Očisti spisak Other Ostalo %1 - QupZilla %1 - QupZilla HTML files HTML fajlovi Image files Fajlovi slika Text files Fajlovi teksta All files Svi fajlovi Open file... Otvori fajl... QupZilla %1 (%2) Kapzila %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Još uvek imate %1 otvorenih jezičaka a vaša sesija neće biti sačuvana. Želite li zaista da napustite Kapzilu? Don't ask again Ne pitaj ponovo There are still open tabs Još uvek imate otvorenih jezičaka QupZillaSchemeReply No Error Nema greške Not Found Nije nađeno Report Issue Prijavi problem If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Ako imate problema sa Kapzilom najpre pokušajte da onemogućite proširenja. <br/>Ako to ne pomogne, onda popunite ovaj formular: Your E-mail Vaša e-adresa Issue type Tip problema Issue description Opis problema Send Pošalji E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. E-adresa nije obavezna<br/><b>Napomena: </b>Najpre <a href=%1>ovde</a> pročitajte kako napraviti izveštaj o grešci. Please fill out all required fields! Popunite sva obavezna polja! Start Page Početna stranica Search on Web Traži na vebu Search results provided by DuckDuckGo Rezultate pretrage obezbeđuje DakDakGou About QupZilla O Kapzili <h1>Private Browsing</h1> <h1>Privatno pregledanje</h1> Information about version Podaci o izdanju Copyright Autorska prava Version Izdanje WebKit version Izdanje Vebkita Main developer Glavni programer Contributors Saradnici Translators Prevodioci Speed Dial Brzo biranje Add New Page Dodaj novu stranicu Edit Uredi Remove Ukloni Reload Učitaj ponovo Are you sure to remove this speed dial? Želite li zaista da uklonite ovo brzo biranje? Load title from page Učitaj naslov sa stranice Url Url Title Ime Apply Primeni Close Zatvori New Page Nova stranica Speed Dial settings Postavke brzog biranja Placement: Položaj: Auto Auto Cover Prekrij Fit Uklopi Fit Width Uklopi širinu Fit Height Uklopi visinu Use background image Slika za pozadinu Select image Izaberi sliku Maximum pages in a row: Najviše brzih biranja u redu: Change size of pages: Promeni veličinu brzih biranja: Center speed dials Centriraj brza biranja Restore Session Obnovi sesiju Oops, QupZilla crashed. Ups, Kapzila se srušila. We apologize for this. Would you like to restore the last saved state? Izvinjavamo se zbog ovoga. Želite li da obnovite poslednje sačuvano stanje? Try removing one or more tabs that you think cause troubles Pokušajte da uklonite jedan ili više jezičaka za koje mislite da uzrokuju probleme Or you can start completely new session Ili možete pokrenuti novu sesiju Configuration Information Podaci o postavkama This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Ova stranica sadrži podatke o tekućim Kapzilinim podešavanjima bitnim za rešavanje problema. Uključite ove podatke prilikom slanja izveštaja o grešci. Browser Identification Identifikacija pregledača Paths Putanje Build Configuration Parametri kompajliranja Preferences Podešavanja Option Postavka Value Vrednost Extensions Proširenja Name Ime Author Autor Description Opis Application version Izdanje programa Qt version Izdanje Kut-a Build time Datum kompajliranja Platform Platforma Profile Profil Settings Podešavanja Saved session Sačuvane sesije Pinned tabs Zakačeni jezičci Data Podaci Themes Teme Translations Prevodi Disabled isključeno <b>Enabled</b> <b>uključeno</b> Debug build Pronalaženje grešaka WebGL support VebGL podrška Windows 7 API Vindouz 7 API KDE integration Integracija u KDE Portable build Prenosno izdanje No available extensions. Nema dostupnih proširenja. RSSManager RSS Reader Čitač RSS dovoda Empty Prazno Add feed Dodaj dovod Edit feed Uredi dovod Delete feed Obriši dovod Reload Učitaj ponovo News novosti Loading... Učitavam... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Nemate nijedan RSS dovod.<br/> Dodajte ih pomoću RSS ikone u traci navigacije na sajtu koji nudi dovode. Add new feed Dodavanje novog dovoda Please enter URL of new feed: Unesite URL novog dovoda: New feed Novi dovod Fill title and URL of a feed: Unesite ime i URL dovoda: Feed title: Ime dovoda: Feed URL: URL dovoda: Edit RSS Feed Uređivanje RSS dovoda Open link in current tab Otvori vezu u tekućem jezičku Open link in new tab Otvori vezu u novom jezičku Error in fetching feed Greška prilikom dobavljanja dovoda RSS feed duplicated RSS dovod je udvostručen You already have this feed. Već imate ovaj dovod. RSSNotification Add this feed into Dodaj ovaj dovod u Add Dodaj RSS feed <b>"%1"</b> RSS dovod <b>„%1“</b> Internal Reader Unutrašnji čitač Other... Ostali... Liferea not running Lajfri nije pokrenut Liferea must be running in order to add new feed. Lajfri mora biti pokrenut da biste mogli da dodate novi dovod. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Da biste dodali ovaj dovod u ostale programe koristite ove podatke:<br/><br/><b>Naslov: </b>%1<br/><b>Url: </b>%2<br/><br/>Url adresa dovoda je kopirana na vaš klipbord. Add feed into other application Dodavanje dovoda u drugi program RSSWidget Add RSS Feeds from this site Dodaj RSS dovode sa ovog sajta Untitled feed Neimenovan dovod Add Dodaj RecoveryWidget Start New Session Počni novu sesiju Restore Obnovi Window %1 Prozor %1 RegisterQAppAssociation Warning! Upozorenje! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) Pojavio se problem. Ponovo instalirajte Kapzilu, ili je pokušajte pokrenuti sa administrativnim privilegijama. RssIcon Add RSS from this page... Dodaj RSS sa ove stranice... SSLManager Certificate Manager Menadžer sertifikata CA Authorities Certificates Sertifikati izdavača Show info Prikaži info This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Ovo je spisak izdavača sertifikata za ovlašćenja smeštenih na sistemski uobičajenoj putanji i korisnički određenoj putanji. Local Certificates Lokalni sertifikati Import Uvezi Remove Ukloni This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Ovo je spisak lokalnih sertifikata sačuvanih na vašem računaru. Takođe sadrži sve sertifikate koji su primili izuzetak. Settings Podešavanja Add Dodaj If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Ako sertifikati izdavača nisu automatski učitani sa sistema, možete ručno odrediti putanje gde su sertifikati smešteni. <b>NOTE:</b> Setting this option is a high security risk! <b>NAPOMENA:</b> Postavljanje ove opcije je veliki bezbednosni rizik! Ignore all SSL Warnings Zanemari sva SSL upozorenja All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Svi sertifikati moraju imati .crt nastavak. Nakon dodavanja ili uklanjanja putanja sertifikata potrebno je da ponovo pokrenete Kapzilu kako bi izmene imale efekta. Choose path... Izaberi putanju... Import certificate... Uvoz sertifikata... Certificate Informations Podaci o sertifikatu SearchEnginesDialog Manage Search Engines Menadžer motora pretrage Add... Dodaj... Remove Ukloni Edit Uredi Set as default Podrazumevan Up Gore Down Dole Search Engine Motor pretrage Shortcut Prečica Defaults Podrazumevano Add Search Engine Dodaj motor pretrage Remove Engine Ukloni You can't remove the default search engine.<br>Set a different engine as default before removing %1. Ne možete da uklonite podrazumevani motor pretrage.<br>Postavite drugi motor kao podrazumevan pre uklanjanja %1. Edit Search Engine Uredi motor pretrage SearchEnginesManager Search Engine Added Motor pretrage je dodat Search Engine "%1" has been successfully added. Motor pretrage „%1“ je uspešno dodat. Search Engine is not valid! Motor pretrage nije ispravan! Error Greška Error while adding Search Engine <br><b>Error Message: </b> %1 Greška prilikom dodavanja motora pretrage <br><b>Poruka greške: </b> %1 SearchToolBar No results found. Ništa nije nađeno. SearchToolbar Search: Traži: Search... Traži... Highlight Istakni Case sensitive Razlikuj veličinu slova SideBar Bookmarks Obeleživači History Istorijat SiteInfo Site Info Podaci o sajtu General Opšte Media Mediji Databases Baze Security Bezbednost Size: Veličina: Site address: Adresa sajta: Encoding: Kodiranje: Meta tags of site: Meta oznake sajta: Tag oznaka Value vrednost <b>Security information</b> <b>Podaci o bezbednosti</b> Details Detalji Image slika Image address adresa slike <b>Preview</b> <b>Pregled</b> <b>Database details</b> <b>Detalji baze podataka</b> Name: Ime: Path: Putanja: <database not selected> <baza podataka nije izabrana> <not set in certificate> <nije postavljeno u sertifikatu> No databases are used by this page. Ova stranica ne koristi baze podataka. <b>Connection is Encrypted.</b> <b>Veza je šifrovana.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Vaša veza sa ovom stranicom je obezbeđena ovim sertifikatom: </b> <b>Connection Not Encrypted.</b> <b>Veza nije šifrovana.</b> <b>Your connection to this page is not secured!</b> <b>Vaša veza sa ovom stranicom nije bezbedna!</b> Copy Image Location Kopiraj lokaciju slike Copy Image Name Kopiraj ime slike Save Image to Disk Sačuvaj sliku na disk Error! Greška! This preview is not available! Ovaj pregled nije dostupan! Save image... Sačuvaj sliku... Cannot write to file! Ne mogu da upišem u fajl! Preview not available Pregled nije dostupan SiteInfoWidget More... Više... Your connection to this site is <b>secured</b>. Veza sa ovim sajtom je <b>bezbedna</b>. Your connection to this site is <b>unsecured</b>. Veza sa ovim sajtom <b>nije bezbedna</b>. This is your <b>%1</b> visit of this site. Ovo je vaša <b>%1</b> poseta ovom sajtu. You have <b>never</b> visited this site before. <b>Niste</b> dosad posećivali ovaj sajt. first prva second druga third treća SourceViewer Source of Izvorni kôd dokumenta File Fajl Load in page Učitaj u stranicu Save as... Sačuvaj kao... Close Zatvori Edit Uređivanje Undo Opozovi Redo Ponovi Cut Iseci Copy Kopiraj Paste Nalepi Select All Izaberi sve Find Nađi Go to Line... Idi na liniju... View Prikaz Reload Učitaj ponovo Editable Uređivanje Word Wrap Prelom teksta Source loaded in page Izvorni kôd učitan u stranicu Cannot load in page. Page has been closed. Ne mogu da učitam: stranica je zatvorena. Save file... Sačuvaj fajl... Error! Greška! Cannot write to file! Ne mogu da upišem u fajl! Error writing to file Greška upisivanja u fajl Source successfully saved Izvorni kôd je uspešno sačuvan Source reloaded Izvorni kôd je ponovo učitan Cannot reload source. Page has been closed. Ne mogu da učitam izvor ponovo. Stranica je zatvorena. Editable changed Uređivanje je promenjeno Word Wrap changed Prelom teksta je promenjen Enter line number Unesite broj linije SourceViewerSearch Search: Traži: Search... Traži... Whole words Cele reči SpeedDial Image files Fajlovi slika Select image... Izaberi sliku... Unable to load Ne mogu da učitam SpellCheckDialog SpellCheck Provera pravopisa <b>Dictionary path</b> <b>Putanja rečnika</b> Change... Promeni... <b>User dictionary</b> <b>Korisnički rečnik</b> Add Dodaj Remove Ukloni Using Hunspell library Koristim Hunspell biblioteku Choose dictionary path... Odabir putanje rečnika... Add new word... Dodavanje nove reči... Add new word: Dodaj novu reč: Speller No suggestions Nema predloga Add to dictionary Dodaj u rečnik Settings Postavke SqueezeLabelV2 Copy Kopiraj SslErrorDialog SSL Certificate Error! Greška SSL sertifikata! Only for this session Samo za ovu sesiju TabBar &New tab &Novi jezičak &Stop Tab &Zaustavi učitavanje &Reload Tab &Učitaj ponovo &Duplicate Tab U&dvostruči jezičak D&etach Tab &Odvoji jezičak Un&pin Tab Otk&ači jezičak &Pin Tab Za&kači jezičak Re&load All Tabs Učitaj ponovo &sve jezičke &Bookmark This Tab &Obeleži ovaj jezičak Bookmark &All Tabs Obeleži s&ve jezičke Close Ot&her Tabs Zatvori os&tale jezičke Cl&ose Z&atvori Reloa&d All Tabs &Učitaj ponovo sve jezičke Restore &Closed Tab &Vrati zatvoreni jezičak Close Tabs Zatvaranje jezičaka Do you really want to close other tabs? Želite li zaista da zatvorite ostale jezičke? TabWidget New Tab Novi jezičak List of tabs Spisak jezičaka Loading... Učitavam... No Named Page Neimenovana stranica Currently you have %1 opened tabs Imate %1 otvorenih jezičaka New tab Novi jezičak Empty Prazno Restore All Closed Tabs Vrati sve zatvorene jezičke Clear list Očisti spisak TabbedWebView Loading... Učitavam... %1 - QupZilla %1 - Kapzila Inspect Element Proveri element ThemeManager <b>Name:</b> <b>Ime:</b> <b>Author:</b> <b>Autor:</b> <b>Description:</b> <b>Opis:</b> License Licenca ToolButton Stop Zaustavi Reload Učitaj ponovo Updater Update available Nadogradnja je dostupna New version of QupZilla is ready to download. Novo izdanje Kapzile je spremno za preuzimanje. Update Ažuriraj UserAgentDialog User Agent Manager Menadžer identifikacije pregledača Change global User Agent Promeni identifikaciju globalno Use different User Agents for specified sites Koristite različite identifikacije za određene sajtove Site sajt User Agent identifikacija Add Dodaj Remove Ukloni Edit Uredi Add new site Dodavanje novog sajta Edit site Uređivanje sajta Site domain: Domen sajta: User Agent: Identifikacija: WebInspectorDockWidget Web Inspector Veb inspektor WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? Kapzila ne može da rukuje <b>%1:</b> vezama. Zahtevana veza je <ul><li>%2</li></ul>Želite li da Kapzila pokuša da otvori ovu vezu pomoću sistemskog programa? Remember my choice for this protocol Zapamti moj izbor za za ovaj protokol External Protocol Request Zahtev za spoljašnji protokol To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Da bi prikazala ovu stranicu Kapzila mora ponovo da pošalje zahtev za učitavanjem. Confirm form resubmission Potvrda ponovnog slanja Select files to upload... Izaberi fajlove za slanje... Server refused the connection Server je odbio vezu Server closed the connection Server je zatvorio vezu Server not found Server nije nađen Connection timed out Isteklo vreme povezivanja Untrusted connection Nepoverljiva veza Temporary network failure Privremeni neuspeh mreže Proxy connection refused Veza sa proksijem odbijena Proxy server not found Server proksija nije nađen Proxy connection timed out Isteklo vreme povezivanja sa proksijem Proxy authentication required Proksi zahteva autentifikaciju Content not found Sadržaj nije nađen Unknown network error Nepoznata greška mreže AdBlocked Content Blokiran sadržaj Blocked by <i>%1</i> Blokirano filterom <i>%1</i> Content Access Denied Pristup sadržaju odbijen Error code %1 Kôd greške %1 Failed loading page Neuspeh učitavanja stranice QupZilla can't load page. Kapzila ne može da učita stranicu. QupZilla can't load page from %1. Kapzila ne može da učita stranicu sa %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Proverite da li ste pogrešno ukucali adresu, na primer <b>ww.</b>example.com umesto <b>www.</b>example.com If you are unable to load any pages, check your computer's network connection. Ako ne možete da učitate nijednu stranicu, proverite vezu vašeg računara sa internetom. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Ako su vaš računar ili mreža zaštićeni zaštitnim zidom ili proksijem, proverite da li je Kapzili dozvoljen pristup internetu. Try Again Pokušaj ponovo JavaScript alert Javaskript upozorenje Prevent this page from creating additional dialogs Ne dozvoli ovoj stranici da pravi još dijaloga Choose file... Izaberi fajl... Cannot read data from <b>%1</b>. Upload was cancelled! Ne mogu da očitam podatke sa <b>%1</b>. Slanje je otkazano! Cannot read file! Ne mogu da očitam fajl! WebSearchBar Manage Search Engines Upravljaj motorima pretrage Add %1 ... Dodaj %1 ... Paste And &Search Nalepi i &traži Clear All Očisti sve Show suggestions Prikazuj predloge Search when engine changed Pretražuj po promeni motora WebView No Named Page Neimenovana stranica Create Search Engine Napravi motor pretrage Cut Iseci Copy Kopiraj Paste Nalepi Select All Izaberi sve Default Podrazumevan Left to Right S leva na desno Right to Left S desna na levo Bold Podebljan Italic Kurzivan Underline Podvučen &Reload &Učitaj ponovo S&top Zaus&tavi Delete Obriši &Back Na&zad &Forward Na&pred This frame Okvir Show &only this frame P&rikaži samo ovaj okvir Show this frame in new &tab Prikaži ovaj okvir u novom &jezičku Print frame Štampaj okvir Zoom &in U&veličaj &Zoom out U&manji Reset Stvarna veličina Show so&urce of frame Prikaži izvor o&kvira Book&mark page &Obeleži stranicu &Save page as... &Sačuvaj stranicu kao... &Copy page link &Kopiraj vezu stranice Send page link... Pošalji vezu stranice... &Print page &Štampaj stranicu Select &all Iz&aberi sve Validate page Provera kôda Translate page Prevedi stranicu Show so&urce code Prikaži &izvorni kôd Show info ab&out site Po&daci o sajtu Open link in new &tab Otvori vezu u novom &jezičku Open link in new &window Otvori vezu u novom &prozoru B&ookmark link &Obeleži vezu &Save link as... &Sačuvaj vezu kao... Send link... Pošalji vezu... &Copy link address &Kopiraj vezu Show i&mage P&rikaži sliku Copy im&age K&opiraj sliku Copy image ad&dress Kopiraj &adresu slike &Save image as... Sačuvaj s&liku kao... Send image... Pošalji sliku... Send text... Pošalji tekst... Google Translate Guglov prevodilac Dictionary Rečnik Go to &web address Idi na &veb adresu Search "%1 .." with %2 Traži „%1“ na %2 Search with... Traži na... &Play &Pusti &Pause &Pauziraj Un&mute Vra&ti zvuk &Mute U&tišaj &Copy Media Address &Kopiraj adresu medija &Send Media Address P&ošalji adresu medija Save Media To &Disk &Sačuvaj medij na disk Check &Spelling &Provera pravopisa Languages Jezici jsAlert Prevent this page from creating additional dialogs Ne dozvoli ovoj stranici da pravi još dijaloga qupzilla-1.6.0/translations/sv_SE.ts000066400000000000000000010336631226107126500175050ustar00rootroot00000000000000 AboutDialog About QupZilla Om QupZilla Authors Utvecklare Authors and Contributors Utvecklare och bidragare < About QupZilla < Om QupZilla <p><b>Application version %1</b><br/> <p><b>Programversion %1</b><br/> <b>WebKit version %1</b></p> <b>Webkit-version %1</b></p> <small>Build time: %1 </small></p> <small>Byggdatum: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Huvudutvecklare:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Bidragare:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Översättare:</b><br/>%1</p> AcceptLanguage Preferred Languages Föredragna språk Add... Lägg till... Remove Ta bort Up Upp Down Ner Personal [%1] Personligt [%1] AdBlockAddSubscriptionDialog Add Subscription Title: Address: Add new subscription to AdBlock: AdBlockCustomList Custom Rules AdBlockDialog AdBlock Configuration AdBlock-inställningar Enable AdBlock Aktivera reklamblockering Search... Sök... Options AdBlock AdBlock Use only essential part of EasyList (for performance reasons) Add Rule Lägg till regel Remove Rule Add Subscription Remove Subscription Update Subscriptions Learn about writing rules... AdBlockIcon AdBlock lets you block unwanted content on web pages AdBlock låter dig blockera oönskat innehåll på webbsidor Blocked popup window Blockerat popup-fönster AdBlock blocked unwanted popup window. AdBlock blockerade ett oönskat popup-fönster. AdBlock AdBlock Show AdBlock &Settings Visa AdBlock-&inställningar Disable on %1 Disable only on this page Blocked Popup Windows Blockerade popup-fönster %1 with (%2) %1 med(%2) No content blocked Inget innehåll blockerat Blocked URL (AdBlock Rule) - click to edit rule Blockerad Url (AdBlock-regel) - klicka för att redigera regel AdBlockManager Do you want to add <b>%1</b> subscription? AdBlock Subscription EasyList AdBlockTreeWidget Add Rule Remove Rule Add Custom Rule Please write your rule here: %1 (recently updated) AddAcceptLanguage Add Language Lägg till språk Choose preferred language for web sites Välj föredraget språk för webbsidor Personal definition: Egen definition: AesInterface Warning! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. AutoFill Database (plaintext) Database (encrypted) Enter Master Password Permission is required, please enter Master Password: Warning! Entered password is wrong! This backend needs a master password to be set! QupZilla just switches to its default backend AutoFillManager Passwords are stored in: Change backend Backend options Passwords Lösenord Server Server Username Användarnamn Password Lösenord Import/Export Importera/Exportera Show Passwords Visa lösenord Edit Redigera Remove Ta bort Remove All Ta bort alla Exceptions Undantag Import Passwords from File... Importera lösenord från fil... Export Passwords to File... Exportera lösenord till fil... Search Change backend... Change backend: Are you sure that you want to show all passwords? Är du säker på att du vill visa alla lösenord? Hide Passwords Göm lösenord Confirmation Bekräftelse Are you sure to delete all passwords on your computer? Är du säker på att du vill ta bort alla lösenord? Edit password Redigera lösenord Change password: Byt lösenord: Choose file... Välj fil... Cannot read file! Kan ej läsa fil! Successfully imported Importeringen lyckades Error while importing! Fel vid importering! Cannot write to file! Kan ej skriva till fil! Successfully exported Exporteringen lyckades AutoFillNotification Update Remember Never For This Site Not Now on %1 for <b>%1</b> Do you want QupZilla to update saved password %1? Do you want QupZilla to remember the password %1 %2? AutoFillWidget Choose username to login Login Login as <b>%1</b> BookmarkIcon Bookmark this Page Lägg till denna sida i bokmärken Edit this bookmark Redigera detta bokmärke BookmarksImportDialog Import Bookmarks Importera bokmärken <b>Import Bookmarks</b> <b>Importera bokmärken</b> From File Från fil Internet Explorer Choose browser from which you want to import bookmarks: Välj vilken webbläsare du vill importera bokmärken från: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Observera:</b> För närvarande kan endast Importera från HTML-fil importera bokmärkesmappar. Choose... Välj... Try to fetch icons for all bookmarks (may take a while) Fetching icons, please wait... Hämtar ikoner, vänta... Title Titel Url Url Next Nästa Cancel Avbryt <b>Importing from %1</b> <b>Importerar från %1</b> Finish Avsluta Please press Finish to complete importing process. Tryck på Avsluta för att avsluta imporeringsprocessen. Error! Fel! The file doesn't contain any bookmark. Choose directory... Välj katalog... Choose file... Välj fil... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox sparar sina bokmärken i<b>places.sqlite</b> SQLite database. Denna fil hittas vanligen i Please choose this file to begin importing bookmarks. Välj denna fil för att börja importera bokmärken. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Google Chrome sparar sina bokmärken .i <b>Bokmärken</b> text file. Denna fil hittas vanligen i Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera sparar sina bokmärken i <b>bookmarks.adr</b> text file. Denna fil hittas vanligen i You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Du kan importera bokmärken från alla webbläsare som stödjer HTML-exportering. Denna fil har vanligen dessa suffix Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Explorer sparar sina bokmärken i <b>Favoriter</b> folder. Denna mapp hittas vanligen i Please choose this folder to begin importing bookmarks. Välj mapp för att börja importera bokmärken. No Error Inga fel Unable to open file. Kan ej öppna fil. Cannot evaluate JSON code. Kan ej utvärdera JSON-kod. File does not exist. Filen finns inte. Unable to open database. Is Firefox running? Kan inte öppna databasen. Är Firefox igång? Directory does not exist. The directory does not contain any bookmarks. BookmarksManager Bookmarks Bokmärken Optimize Database Optimera databas Import Bookmarks Importera bokmärken Add Folder Lägg till mapp Title Titel Url Url Expand All Collapse All Add new folder Lägg till ny mapp Choose parent folder for new folder: Choose name for new bookmark folder: Välj namn för den nya mappen: Add new subfolder Lägg till ny undermapp Choose name for new subfolder in bookmarks toolbar: Välj namn för den nya undermappen i bokmärkesverktygsraden: Rename Folder Döp om mappen Choose name for folder: Välj namn för mapp: Add Subfolder Lägg till undermapp Rename folder Ändra namn på mapp Remove folder Ta bort mapp Open link in current &tab Öppna länk i nuvarande &flik Open link in &new tab Öppna länk i&ny flik Move bookmark to &folder Flytta bokmärke till &mapp Change icon Rename bookmark Ändra namn på bokmärke Remove bookmark Ta bort bokmärke <b>Warning: </b>You already have bookmarked this page! <b>Varning: </b>Du har redan lagt till bokmärk för denna sida! Choose name and location of this bookmark. Välj namn och plats för detta bokmärke. Add New Bookmark Lägg till nytt bokmärk Choose folder for bookmarks: Välj mapp för bokmärken: Bookmark All Tabs Lägg till bokmärken för alla flikar BookmarksModel Bookmarks In Menu Bokmärken i meny Bookmarks In ToolBar Bokmärken i verktygsrad Unsorted Bookmarks Osorterade bokmärkn BookmarksSideBar Search... Sök... Open link in current &tab Öppna länk i nuvarande &flik Open link in &new tab Öppna länk i &ny flik Copy address Kopiera adress &Delete &Ta bort BookmarksToolbar &Bookmark Current Page &Lägg till bokmärke för nuvarande sida Bookmark &All Tabs Lägg till bokmärke för &alla flikar &Organize Bookmarks &Organisera bokmärken Show Most &Visited Visa mest &sedda Show Only Icons Visa endast ikoner &Hide Toolbar &Dölj verktygsrad Open bookmark Open bookmark in new tab Move right Flytta till höger Move left Flytta till vänster Edit bookmark Redigera bokmärke Remove bookmark Ta bort bokmärke Edit bookmark: Redigera bokmärke: Title: Titel: Url: Url: Edit Bookmark Redigera bokmärk Most visited Mest sedda Sites you visited the most Sidor du besökt mest Empty Tomt BookmarksTree Bookmarks New Folder... BookmarksWidget Add to Speed Dial Lägg till i Speed Dial Save Spara Name: Namn: Folder: Mapp: Remove from Speed Dial Ta bort från Speed Dial Remove Ta bort BrowsingLibrary Library Bibliotek Search... Sök... History Historik Bookmarks Bokmärken RSS RSS Database Optimized Databas optimerad Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 Databasen optimerad.<br/><br/><b>Databasens storlek före: </b>%1<br/><b>Databasens storlek efter: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Utfärdat till</b> Common Name (CN): Namn (CN): Organization (O): Organisation(O): Organizational Unit (OU): Organisationsenhet (OU): Serial Number: Serienummer: <b>Issued By</b> <b>Utfärdat av</b> <b>Validity</b> <b>Validitet</b> Issued On: Utfärdat: Expires On: Utgångsdatum: ClearPrivateData Clear Recent History Choose what you want to delete: Välj vad du vill ta bort: Clear history Rensa historik Clear cache Rensa cache Clear icons Rensa ikoner <b>Clear Recent History</b> <b>Rensa senaste historik</b> Earlier Today Tidigare idag Week Vecka Month Månad All Allt Clear web databases Rensa webbdatabaser Clear local storage Rensa lokal lagring Clear cookies Rensa kakor ClickToFlash Object blocked by ClickToFlash Objekt blockerat av ClickToFlash Show more information about object Visa mer informatiaon om objekt Delete object Ta bort objekt Add %1 to whitelist Lägg till %1 i whitelist Flash Object Flash-objekt <b>Attribute Name</b> <b>Attributens namn</b> <b>Value</b> <b>Värde</b> No more information available. Ingen mer information tillgänglig. CookieManager Cookies Kakor Stored Cookies Sparade kakor Find: Hitta: These cookies are stored on your computer: Dessa kakor är sparade på din dator: Server Server Cookie name Kaknamn Name: Namn: Value: Värde: Server: Server: Path: Sökväg: Secure: Säker: Expiration: Utgångsdatum: <cookie not selected> <ingen kaka vald> Remove all cookies Ta bort alla kakor Remove cookies Ta bort kakor Cookie Filtering Kakfiltrering <b>Cookie whitelist</b> <b>Kakvitlista</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Kakor från dessa servrar kommer ALLTID att accepteras (även om du inaktiverat sparning av kakor) Add Lägg till Remove Ta bort <b>Cookie blacklist</b> <b>Kaksvartlista</b> Cookies from these servers will NEVER be accepted Kakor från dessa servrar kommer ALDRIG att accepteras Settings <b>Cookie Settings</b> Allow storing of cookies Delete cookies on close Match domain exactly Filter tracking cookies <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! Search Sök Confirmation Bekräftelse Are you sure to delete all cookies on your computer? Är du säker på att du vill ta bort alla kakor från din dator? Secure only Endast säkra All connections Alla anslutningar Session cookie Sessionskaka Remove cookie Ta bort kakor Add to whitelist Lägg till i vitlistan Add to blacklist Lägg till i svartlistan DownloadFileHelper Save file as... Spara fil som... NoNameDownload Namnlös nedladdning DownloadItem Remaining time unavailable Återstående tid otillgänglig Error: Cannot write to file! Fel: Kan ej skriva till fil! Done - %1 Klar - %1 Cancelled Avbruten few seconds ett par sekunder %n seconds %n minutes %n hours Unknown speed Okänd hastighet kB/s MB/s GB/s Unknown size Okänd storlek %2 - unknown size (%3) %2 - okänd storlek (%3) Remaining %1 - %2 of %3 (%4) Återstående %1 - %2 av %3 (%4) Cancelled - %1 Avbruten - %1 Delete file Ta bort fil Do you want to also delete dowloaded file? Vill du också ta bort den nerladdade filen? Open File Öppna fil Open Folder Öppna mapp Go to Download Page Gå till nedladdningssidan Copy Download Link Kopiera nedladdningslänk Cancel downloading Avbryt nedladdning Remove Error Fel Not found Inte hittad Sorry, the file %1 was not found! Filen %1 hittades inte! Error: Fel: DownloadManager Download Manager Nedladdningshanterare Clear Rensa %1% of %2 files (%3) %4 remaining %1% av %2 filer (%3) %4 återstår %1% - Download Manager Download Finished Nedladdning klar All files have been successfully downloaded. Alla filer har laddats ner. Warning Varning Are you sure to quit? All uncompleted downloads will be cancelled! Är du säker på att du vill avsluta? Alla inkompletta nedladdningar kommer att avbrytas! DownloadOptionsDialog Opening Öppnar Copy download link You have chosen to open Du har valt att öppna which is a: som är en: What should QupZilla do with this file? Vad bör QupZilla göra med denna filer? Open... Öppna... Save File Spara fil Download with External Manager from: från: Opening %1 Öppnar %1 Download link copied. EditSearchEngine Name: Namn: Url: Url: Shortcut: Genväg: Icon: Ikon: <b>Note: </b>%s in url or post data represent searched string Post Data: Change... FileSchemeReply No Error Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. FtpDownloader Cancelled! FtpSchemeReply Up to higher level directory Show hidden files Name Size Last modified Index for %1 Folder is empty. Unknown command HTML5PermissionsDialog HTML5 Permissions Notifications Site Behaviour Remove Geolocation Allow Deny HTML5PermissionsNotification Remember Allow Deny this site Allow %1 to show desktop notifications? Allow %1 to locate your position? History No Named Page January February March April May June July August September October November December HistoryManager History Historik Delete Ta bort Clear All History Rensa all historik Optimize Database Optimera databas Confirmation Bekräftelse Are you sure to delete all history? Vill du verkligen ta bort all historik? HistoryModel Title Address Visit Date Visit Count Today This Week This Month HistorySideBar Search... Sök... HistoryView Open link in current tab Open link in new tab Copy title Copy address Remove IconChooser Choose icon... From file Image (.png, .jpg, .jpeg, .gif) Choose file... From database Site Url: Image files JsOptions JavaScript Options Allow JavaScript to: Close windows Open popup windows Change window size Hide menu bar Hide status bar Hide tool bar Access clipboard LicenseViewer License Viewer Licensvisare LocationBar Enter URL address or search on %1 Skriv Url-adress eller sök på %1 Paste And &Go Klistra in och &kör Clear All Rensa allt .co.uk Append domain name on ALT + Enter = Should be different for every country .se Show information about this page Visa information om denna sida LocationCompleterView Switch to tab MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? Always perform this check when starting QupZilla. Default Browser QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. MasterPasswordDialog Encrypted DataBase Settings Set/Change Master Password... Clear Master Password... This backend does not work without a master password. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Current Password: New Password: Confirm Password: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. Warning! You entered a wrong password! New/Confirm password fields do not match! Some data has not been decrypted. The master password was not cleared! Are you sure to clear master password and decrypt data? NavigationBar No Named Page Namnlös sida Back Bakåt Forward Framåt Home Hem New Tab Ny flik Main Menu Huvudmeny Exit Fullscreen Avsluta fullskärm Clear history Rensa historik NetworkManager SSL Certificate Error! SSL-certifikatsfel! The page you are trying to access has the following errors in the SSL certificate: Sidan du försöker nå har följande fel i SSL-certifikatet: <b>Organization: </b> <b>Organisation: </b> <b>Domain Name: </b> <b>Domännamn: </b> <b>Expiration Date: </b> <b>Utgångsdatum: </b> <b>Error: </b> <b>Fer: </b> Would you like to make an exception for this certificate? Vill du göra ett undantag för detta certifikat? Authorisation required Username: Användarnamn: Password: Lösenord: Save username and password on this site Spara användarnamn och lösenord för denna sida A username and password are being requested by %1. The site says: "%2" Ett användarnamn och lösenord efterfrågas av %1. Sidan säger "%2" FTP authorisation required Login anonymously A username and password are being requested by %1:%2. Proxy authorisation required Remember username and password for this proxy. A username and password are being requested by proxy %1. Ett användarnamn och lösenord efterfrågas av proxyn %1. PageScreen Page Screen Skärmbild Format: Location: Browse... Save as %1 Choose location... File '%1' already exists. Do you want to overwrite it? File already exists PluginsList Application Extensions Programtillägg Allow Application Extensions to be loaded Tillåt att programtillägg laddas Settings Inställningar WebKit Plugins WebKit-tillägg <b>Click To Flash Plugin</b> <b>Klicka-för-Flash-tillägg</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Klicka-för-Flash är ett tillägg som blockerar Flash-innehåll på sidor. Du kan alltid hämta dessa manuellt genom att klicka på Flash-ikonen. Whitelist Vitlista Add Lägg till Remove Ta bort Allow Click To Flash Tillåt Klicka-för-Flash PluginsManager Add site to whitelist Server without http:// (ex. youtube.com) Error! Cannot load extension! PopupWebView Inspect Element PopupWindow File &Save Page As... Save Page Screen Send Link... &Print... Close Edit &Undo &Redo &Cut C&opy &Paste Select All Find View &Stop &Reload Zoom &In Zoom &Out Reset &Page Source %1 - QupZilla %1 - QupZilla Preferences Preferences Inställningar QupZilla QupZilla General Allmänt Appearance Utseende Tabs Flikar Browsing Surfande Fonts Teckensnitt Keyboard Shortcuts Downloads Nedladdningar Password Manager Lösenordshanterare Privacy Integritet Notifications Notifikationer Extensions Insticksmoduler Other Annat Use current Använd nuvarande Note: You cannot delete active profile. Observera: Du kan inte ta bort aktiv profil. Create New Skapa ny Delete Ta bort <b>Launching</b> <b>Uppstart</b> After launch: Vid start: Open blank page Öppna tom sida Open homepage Öppna hemsida Open speed dial Öppna speed dial Restore session Återställ session Homepage: Hemsida: On new tab: På ny flik: Open blank tab Öppna tom flik Open other page... Öppna annan sida... <b>Profiles</b> <b>Profiler</b> Startup profile: Uppstartsprofil: Check for updates on start Leta efter uppdateringar vid start Active profile: Aktiv profil: In order to change language, you must restart browser. För att byta språk måste du starta om webbläsaren. <b>Language</b> <b>Språk</b> Available translations: Tillgängliga översätningar: Don't load tabs until selected Hämta inte flikar förrän de väljs Check to see if QupZilla is the default browser on startup Check Now Themes Teman Advanced options Avancerade alternativ <b>Browser Window</b> <b>Webbläsarfönster</b> Show StatusBar on start Visa statusrad vid start Show Bookmarks ToolBar on start Visa bokmärkesverktygsraden vid start Show Navigation ToolBar on start Visa navigeringsverktygsraden vid start <b>Navigation ToolBar</b> <b>Navigeringsverktygsrad</b> Show Home button Visa Hem-knapp Show Back / Forward buttons Visa Framåt/Bakåt-knappar <b>Background<b/> <b>Bakgrund<b/> Use transparent background Använd genomskinlig bakgrund Show web search bar Show Add Tab button Visa Ny Flik-knapp Show Reload / Stop buttons Tabs behaviour Show tab previews Make tab previews animated Hide tabs when there is only one tab Göm flikar när endast en är öppen Activate last tab when closing active tab Visa senaste flik när den aktiva fliken stängs Open new tabs after active tab Öppna nya flikar efter den aktiva fliken Open new empty tabs after active tab Automatically switch to newly opened tab Don't quit upon closing last tab Avsluta inte när den sista fliken stängs Ask when closing multiple tabs Fråga när flera flikar stängs Closed tabs list instead of opened in tab bar Lista över stängda flikar istället för öppna i flikraden Address Bar behaviour Suggest when typing into address bar: History and Bookmarks History Bookmarks Nothing Press "Shift" to not switch the tab but load the url in the current tab. Propose to switch tab if completed url is already loaded. Always show go icon Select all text by double clicking in address bar Markera all text vid dubbelklick i adressraden Select all text by clicking in address bar Markera all text vid enkelklick i adressraden Search with Default Engine Show loading progress in address bar Fill Bottom Top Custom color: Select color ... ... Reset Web Configuration Webbinställningar Allow Netscape Plugins (Flash plugin) Tillåt Netscape-insticksmoduler (Flash) Allow JavaScript Tillåt Javaskript Allow JAVA Tillåt Java Allow DNS Prefetch Hämta DNS-poster i förväg Enable XSS Auditing try to detect possible XSS attacks when executing javascript Tillått XSS-auditering Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Skriv ut elements bakgrunder Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Inkludera länkar i fokuskedjan Animated scrolling Enable caret browsing Enable spatial navigation Zoom text only Zooma endast text Mouse wheel scrolls Mushjulet skrollar lines on page rader på sidan Default zoom on pages: Standardzoom på sidor: Local Storage Lokal lagring Maximum Maximal 50 MB 50 MB 1 1 Maximum pages in cache: Maximalt antal sidor i cache: Allow storing network cache on disk Tillåt att nätverkscache lagras på hårddisken Store cache in: Allow saving history Tillåt att historik sparas Delete history on close Ta bort historik vid avslut Allow local storage of HTML5 web content Tillåt lokal lagring av HTML5-innehåll Delete locally stored HTML5 web content on close Ta bort lokalt sparade HTML5-data vid avslut Delete now Ta bort nu Proxy Configuration Proxyinställningar Proxy Auto-Config (.pac) file Reload HTTP HTTP SOCKS5 SOCKS5 Port: Port: Username: Användarnamn: Password: Lösenord: Don't use on: Använd inte på: Manual configuration Manuell inställning System proxy configuration Global proxyinställning Do not use proxy Använd inte proxy <b>Exceptions</b> <b>Undantag</b> Server: Server: Use different proxy for https connection Använd annan proxy för https-anslutningar Use script for automatic configuration: <b>Font Families</b> <b>Teckensnittsfamilerj</b> Standard Standard Fixed Fast bredd Serif Serif Sans Serif Sans Serif Cursive Kursivt Fantasy <b>Font Sizes</b> <b>Teckenstorlek</b> Fixed Font Size Fast Default Font Size Standard Minimum Font Size Minsta Minimum Logical Font Size Minsta logiska <b>Shortcuts</b> Switch to tabs with Alt + number of tab Load speed dials with Ctrl + number of speed dial Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>Nedladdningsdestination</b> Ask everytime for download location Fråga efter nedladdningsdestination varje gång Use defined location: Använd förinställd destination: <b>Download Options</b> <b>Nedladdningsinställningar</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Använd systemets egna filhanterare (skapar eventuellt problem vid nedladdning av SSL-säkrat material) Close download manager when downloading finishes Stäng nedladdningshanterare när alla nedladdningar avslutas <b>External download manager</b> <b>Extern nedladdningshanterare</b> Use external download manager Använd extern nedladdningshanterare Executable: Körbar fil: Arguments: Argument: Leave blank if unsure <b>%d</b> will be replaced with URL to be downloaded <b>AutoFill options</b> <b>Autofyll-alternativ</b> Allow saving passwords from sites Tillåt att lösenord lagras på sidor Send Referer header to servers Skicka Referer header till servrar <b>Cookies</b> <b>Kakor</b> Send Do Not Track header to servers Skicka DNT-instruktioner till servrar <b>Other</b> <b>Övrigt</b> Manage CA certificates Certificate Manager <b>SSL Certificates</b> <b>SSL-certifikat</b> <b>JavaScript</b> Manage JavaScript privacy options JavaScript options Cookies Manager Kakhanterare Manage Cookies <b>HTML5 Permissions</b> Manage HTML5 permissions HTML5 Permissions <b>Notifications</b> <b>Notifikationer</b> Use OSD Notifications Använd OSD-notifikationer Use Native System Notifications (Linux only) Använd systemets egna notifikationssystem (endast Linux) Do not use Notifications Använd inte notifikationer Expiration timeout: Tiden löper ut: seconds sekunder <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Observera: </b>Du kan ändra notifikationernas placering genom att dra runt dem på skärmen. StyleSheet automatically loaded with all websites: Stilmall som automatiskt laddas med alla webbsidor: Languages Språk <b>Preferred language for web sites</b> <b>Föredraget språk för hemsidor</b> <b>Change browser identification</b> User Agent Manager Default Set as default OSD Notification OSD-notifikationer Drag it on the screen to place it where you want. Flytta runt den på skämen för att placera den där du vill ha den. Choose download location... Välj nedladdningsdestination... Choose stylesheet location... Välj stilmallens plats... Deleted Borttagen Choose executable location... Välj den körbara filens plats... Choose cache path... New Profile Ny profil Enter the new profile's name: Välj namn på den nya profilen: Error! Fel! This profile already exists! Denna profil finns redan! Cannot create profile directory! Kan inte skapa profilensökväg! Confirmation Bekräftelse Are you sure to permanently delete "%1" profile? This action cannot be undone! Är du säker på att du permanent vill ta bort profilen"%1"? Detta kan ej göras ogjort! Select Color QObject Native System Notification Systemets egna notifikationer Save file as... The file is not an OpenSearch 1.1 file. Denna fil är inte en OpenSearch1.1 fil. <not set in certificate> <ej hittad i certifikat> Unknown size KB MB GB Executable: Arguments: Cannot start external program Cannot start external program! %1 QtWin Open new tab Öppna ny flik Opens a new tab if browser is running Öppna en ny flik om webbläsaren körs Open new window Öppna nytt fönster Opens a new window if browser is running Öppna ett nytt fönster om webbläsaren körs Open download manager Öppna nedladdningshanterare Opens a download manager if browser is running Öppna nedladdningshanterare om webbläsaren körs QupZilla QupZilla QupZilla Private Browsing Enabled Privat surfning aktiverat IP Address of current page Nuvarande sidans IP-adress &About QupZilla &Om QupZilla Pr&eferences &Inställningar Quit Avsluta &File &Fil &New Window &Nytt fönster New Tab Ny flik Open Location Öppna plats Open &File... Close Tab Stäng flik Close Window Stäng fönster &Save Page As... &Spara sida som... Save Page Screen Spara skärmbild Send Link... Skicka länk... &Print... &Skriv ut... Import bookmarks... Importera bokmärken... &Edit &Redigera &Undo &Ångra &Redo &Gör om &Cut &Klipp ut C&opy K&opiera &Paste K&listra in Select &All Markera &allt &Find &Hitta &View &Vy &Navigation Toolbar &Navigeringsverktygsrad &Bookmarks Toolbar &Bokmärkesverktygsrad Sta&tus Bar &Statusrad &Menu Bar &Menyrad &Tabs on Top &Fullscreen &Fullskärm &Stop &Stopp &Reload &Hämta om Character &Encoding &Teckenkodning Enable &Caret Browsing Toolbars Verktygsrader Sidebars Sidorader Zoom &In Zooma &in Zoom &Out Zooma &ut Reset Återställ &Page Source &Källkod Hi&story Hi&storik &Back &Bakåt &Forward &Framåt &Home &Hem Show &All History Visa &all historik Closed Tabs Stängda flikar Recently Visited Senast besökta Most Visited Mest besökta &Bookmarks &Bokmärken Bookmark &This Page Bokmärk &denna sida Bookmark &All Tabs Bokmärk &alla flikar Organize &Bookmarks Organisera &bokmärken &Tools &Verktyg &Web Search &Webbsökning Page &Info Sid&information &Download Manager &Nedladdningshanterare &Cookies Manager &Kakhanterare &AdBlock &Reklamblockering RSS &Reader RSS-&läsare Web In&spector Webb&inspektör Clear Recent &History Rensa senaste &historik New &Private Window &Help &Hjälp About &Qt Om &Qt Information about application Information om programmet Configuration Information Konfigurationsinformation Report &Issue Rapportera &problem Restore &Closed Tab Återställ &stängd flik (Private Browsing) (Privat surfning) Empty Tom Restore All Closed Tabs Återställ alla stängda flikar Clear list Rensa lista Other Annat %1 - QupZilla %1 - QupZilla HTML files HTML-filer Image files Bildfiler Text files Textfiler All files Alla filer< Open file... Öppna fil... QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Det finns fortfarande %1 öppna flikar och din session kommer inte att sparas. Är du säker på att du vill avsluta QupZilla? Don't ask again Fråga inte igen There are still open tabs Det finns fortfarande öppna flikar QupZillaSchemeReply No Error Inga fel Not Found Inte hittad Report Issue Rapportera problem If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Om du har problem med QupZilla, prova att inaktivera alla insticksmoduler först. <br/> Om detta inte löser problemet, fyll i i detta formulär: Your E-mail Din e-post Issue type Problemets art Issue description Problembeskrivning Send Skicka E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. E-post är valfritt<br/><b>Observera: </b>Var vänlig och läs hur man skriver en buggrapport <a href=%1>här</a> först. Please fill out all required fields! Var god och fyll i alla obligatoriska fält! Start Page Hemsida Search on Web Search results provided by DuckDuckGo About QupZilla Om QupZilla <h1>Private Browsing</h1> Information about version Information om version Copyright Upphovsrätt Version Version WebKit version WebKit-version Main developer Huvudutvecklare Contributors Bidragare Translators Översättare Speed Dial Speed Dial Add New Page Lägg till ny sida Edit Redigera Remove Ta bort Reload Hämta om Are you sure to remove this speed dial? Load title from page Hämta titel från sidan Url Url Title Titel Apply Verkställ Close Stäng New Page Ny sida Speed Dial settings Speed Dial-inställningar Placement: Placering: Auto Automatisk Cover Omslag Fit Passa in Fit Width Passa in bredd Fit Height Passa in höjd Use background image Använd bakgrundsbild Select image Välj bild Maximum pages in a row: Maximalt antal sidor på en rad: Change size of pages: Ändra storlek på sidor: Center speed dials Restore Session Oops, QupZilla crashed. We apologize for this. Would you like to restore the last saved state? Try removing one or more tabs that you think cause troubles Or you can start completely new session Configuration Information Konfigurationsinformation This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Denna sida innehåller information om QupZillas aktuella konfiguration - relevant för felsökning. Vänligen inkludera denna information i buggrapporter. Browser Identification Webbläsaridentifiering Paths Sökvägar Build Configuration Byggflaggor Preferences Inställningar Option Alternativ Value Värde Extensions Insticksmoduler Name Namn Author Författare Description Beskrivning Application version Programversion Qt version Qt-version Build time Byggdatum Platform Plattform Profile Profil Settings Inställningar Saved session Sparad session Pinned tabs Nålade flikar Data Data Themes Teman Translations Översättningar Disabled Inaktiverad <b>Enabled</b> <b>Aktiverad</b> Debug build WebGL support WebGL-stöd Windows 7 API Windows 7 API KDE integration KDE-integration Portable build No available extensions. Inga tillgängliga insticksmoduler RSSManager RSS Reader RSS-läsare Empty Tom Add feed Hämta flöde Edit feed Redigera flöde Delete feed Ta bort flöde Optimize Database Optimera databas Reload Hämta om News Nyheter Loading... Hämtar... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. Du har inga RSS-flöden.<br/> Lägg till flöden med RSS-ikonen i navigeringsraden från sidor som tillhandahåller flöden. Add new feed Lägg till nytt flöde Please enter URL of new feed: Skriv in flödets adress: New feed Nytt flöde Fill title and URL of a feed: Fyll i titel och url för ett flöde: Feed title: Flödets titel: Feed URL: Flödets adress: Edit RSS Feed Redigera RSS-flöde Open link in current tab Öppna länk i nuvarande flik Open link in new tab Öppna länk i ny flik Error in fetching feed Fel i flödeshämtning RSS feed duplicated RSS-flöde dubblerat You already have this feed. Du har redan detta flöde. RSSNotification Add this feed into Add RSS feed <b>"%1"</b> Internal Reader Other... Liferea not running Liferea must be running in order to add new feed. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Add feed into other application RSSWidget Add RSS Feeds from this site Lägg till RSS-flöden från denna sida Untitled feed Namnlöst flöde Add Lägg till RecoveryWidget Start New Session Restore Window %1 RegisterQAppAssociation Warning! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) RssIcon Add RSS from this page... SSLManager Certificate Manager CA Authorities Certificates CA Authorities-certifikat Show info Visa information This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Detta är en lista på CA Authorities-certifikat lagrade i systemets standardsökväg och användarspecificerade sökvägar. Local Certificates Lokala certifikat Import Remove Ta bort This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Detta är en lista på lokala certifikat lagrade i din användarprofil. Den innehåller också alla certifikat som erhållit ett undantag. Settings Inställningar Add Lägg till If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Om CA Authorities-certifikat inte laddades automatiskt kan du manuellt ställa in var certifikaten finns lagrade. <b>NOTE:</b> Setting this option is a high security risk! <b>Observera:</b> Denna inställningen är en hög säkerhetsrisk! Ignore all SSL Warnings Ignorera alla SSL-varningar All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. Alla certifikat måste ha .crt-suffix. Efter att ha lagt till eller tagit bort certifikats sökvägar måste QupZilla startas om för att ändringarna ska ha effekt. Choose path... Välj sökväg... Import certificate... Certificate Informations Certifikatinformation SearchEnginesDialog Manage Search Engines Hantera sökmotorer Add... Lägg till... Remove Ta bort Edit Redigera Set as default Up Upp Down Ner Search Engine Sökmotor Shortcut Genväg Defaults Förval Add Search Engine Lägg till sökmotor Remove Engine You can't remove the default search engine.<br>Set a different engine as default before removing %1. Edit Search Engine Redigera sökmotor SearchEnginesManager Search Engine Added Sökmotor tillagd Search Engine "%1" has been successfully added. Sökmotorn"%1" har lagts till. Search Engine is not valid! Sökmotorn är ogiltig! Error Fel Error while adding Search Engine <br><b>Error Message: </b> %1 Fel när sökmotor lades till<br><b>Felmeddelande</b>%1 SearchToolBar No results found. Inga resultat hittade. SearchToolbar Search: Sök: Search... Sök... Highlight Markera Case sensitive Skiftlägeskänslig SideBar Bookmarks Bokmärken History Historik SiteInfo Site Info Sidinformation General Allmänt Media Media Databases Databaser Security Säkerhet Size: Storlek: Site address: Sidadress: Encoding: Kodning: Meta tags of site: Metataggar på denna sidan: Tag Tagg Value Värde <b>Security information</b> <b>Säkerhetsinformation</b> Details Detaljer Image Bild Image address Bildadress <b>Preview</b> <b>Förhandsgranskning</b> <b>Database details</b> <b>Databasdetaljer</b> Name: Namn: Path: Sökväg: <database not selected> <databas inte vald> <not set in certificate> <ej hittad i certifikat> No databases are used by this page. Inga databaser används av denna sida. <b>Connection is Encrypted.</b> <b>Anslutningen är krypterad.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Din anslutning till denna sidan är säkrad med detta certifikat:</b> <b>Connection Not Encrypted.</b> <b>Anslutningen okrypterad.</b> <b>Your connection to this page is not secured!</b> <b>Din anslutning till denna sidan är osäker!</b> Copy Image Location Kopiera bildens plats Copy Image Name Kopiera bildens namn Save Image to Disk Spara bild till hårddisk Error! Fel! This preview is not available! Denna förhandsgranskning är inte tillgänglig! Save image... Spara bild... Cannot write to file! Kan ej skriva till fil! Preview not available Förhandsgranskning otillgänglig SiteInfoWidget More... Mer... Your connection to this site is <b>secured</b>. Din anslutning till denna sida är <b>säkrad</b>. Your connection to this site is <b>unsecured</b>. Din anslutning till denna sidan är <b>osäkrad</b>. This is your <b>%1</b> visit of this site. Detta är ditt<b>%1</b>besök på denna sidan. You have <b>never</b> visited this site before. Du har <b>aldrig</b>besökt denna sidan förut. first första second andra third tredje SourceViewer Source of Källa för File Fil Load in page Save as... Spara som... Close Stäng Edit Redigera Undo Ångra Redo Gör om Cut Klipp ut Copy Kopiera Paste Klistra in Select All Markera allt Find Hitta Go to Line... Gå till rad... View Visa Reload Hämta om Editable Redigeringsbar Word Wrap Ordinslagning Source loaded in page Cannot load in page. Page has been closed. Save file... Spara fil... Error! Fel! Cannot write to file! Kan ej skriva till fil! Error writing to file Fel vid skrivning till fil Source successfully saved Källa sparad Source reloaded Källa omladdad Cannot reload source. Page has been closed. Kan inte hämta om källa, sidan har stängts. Editable changed Word Wrap changed Ordinslag ändrad Enter line number Välj radnummer SourceViewerSearch Search: Sök: Search... Sök... Whole words SpeedDial Image files Bildfiler Select image... Välj bild... Unable to load Kan ej hämta SpellCheckDialog SpellCheck <b>Dictionary path</b> Change... <b>User dictionary</b> Add Remove Using Hunspell library Choose dictionary path... Add new word... Add new word: Speller No suggestions Add to dictionary Settings SqueezeLabelV2 Copy Kopiera SslErrorDialog SSL Certificate Error! Only for this session TabBar &New tab &Ny flik &Stop Tab &Stoppa flik &Reload Tab &Hämta om flik &Duplicate Tab &Duplicera flik D&etach Tab Un&pin Tab Av&nåla flik &Pin Tab &Nåla flik Re&load All Tabs &Hämta om alla flikar &Bookmark This Tab &Bokmärk denna flik Bookmark &All Tabs Bokmärk &alla flikar Close Ot&her Tabs Stäng &andra flikar Cl&ose &Stäng Reloa&d All Tabs Hämta &om alla flikar Restore &Closed Tab Återställ &stängd flik Close Tabs Do you really want to close other tabs? TabWidget New Tab Ny flik List of tabs Fliklista Loading... Hämtar... No Named Page Namnlös sida Currently you have %1 opened tabs Du har för närvarande %1 öppna flikar New tab Ny flik Empty Tom Restore All Closed Tabs Återställ alla stängda flikar Clear list Rensa lista TabbedWebView Loading... Hämtar... %1 - QupZilla %1 - QupZilla Inspect Element Granska element ThemeManager <b>Name:</b> <b>Namn:</b> <b>Author:</b> <b>Författare:</b> <b>Description:</b> <b>Beskrivning:</b> License Licens ToolButton Stop Stopp Reload Hämta om Updater Update available Uppdatering tillgänglig New version of QupZilla is ready to download. Ny version av QupZilla finns att hämta. Update Uppdatera UserAgentDialog User Agent Manager Change global User Agent Use different User Agents for specified sites Site User Agent Add Remove Edit Add new site Edit site Site domain: User Agent: WebInspectorDockWidget Web Inspector Webinspektör WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? Remember my choice for this protocol External Protocol Request To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Confirm form resubmission Skicka om formulärdata Select files to upload... Välj filer att ladda upp... Server refused the connection Servern vägrade ansluta Server closed the connection Servern avbröt anslutningen Server not found Servern hittades inte Connection timed out Anslutningen upphörde Untrusted connection Osäker anslutning Temporary network failure Temporärt nätverksfel Proxy connection refused Proxyanslutning vägrad Proxy server not found Proxyserver ej hittad Proxy connection timed out Proxyanslutning upphörde Proxy authentication required Proxyautentisering krävs Content not found Innehåll hittades inte Unknown network error Okänt nätverksfel AdBlocked Content Reklamblockerat innehåll Blocked by <i>%1</i> Content Access Denied Innehållsåtkomst nekad Error code %1 Felkod %1 Failed loading page Misslyckades med att hämta sidan QupZilla can't load page. QupZilla can't load page from %1. QupZilla kan inte hämta sidan från %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Kontrollera adressen efter stavfel såsom <b>ww.</b>exempel.se istället för <b>www.</b>exempel.se If you are unable to load any pages, check your computer's network connection. Om du inte kan hämta några sidor alls, kontrollera din dators nätverksanslutning. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Om din dator eller ditt nätverk är skyddat av en brandvägg eller proxy, kontrollera att QupZilla har tillåtelse att nå webben. Try Again Försök igen JavaScript alert JavaScript-varning Prevent this page from creating additional dialogs Förhindra att denna sidan skapar fler dialogrutor Choose file... Välj fil... Cannot read data from <b>%1</b>. Upload was cancelled! Cannot read file! WebSearchBar Manage Search Engines Hantera sökmotorer Add %1 ... Lägg till %1... Paste And &Search Klistra in och &sök Clear All Rensa allt Show suggestions Search when engine changed WebView No Named Page Namnlös sida Create Search Engine Skapa sökmotor Cut Copy Paste Select All Default Left to Right Right to Left Bold Italic Underline &Reload &Hämta om S&top &Stopp Delete &Back &Bakåt &Forward &Framåt This frame Denna ram Show &only this frame Visa &endast denna ramen Show this frame in new &tab Visa denna ramen i ny &flik Print frame Skriv ut ram Zoom &in Zooma &in &Zoom out Zooma &ut Reset Återställ Show so&urce of frame Visa ramens &källa Book&mark page Bok&märk sida &Save page as... &Spara sida som... &Copy page link &Kopiera sidlänk Send page link... Skicka sidlänk... &Print page &Skriv ut sida Select &all Markera &allt Validate page Validera sida Show so&urce code Visa &källkod Show info ab&out site Visa &information om denna sida Open link in new &tab Öppna länk i ny &flik Open link in new &window Öppna länk i nytt &fönster B&ookmark link Bokmärk &länk &Save link as... &Spara länk som... Send link... Skicka länk... &Copy link address &Kopiera länkadress Show i&mage Visa &bild Copy im&age Kopiera &bild Copy image ad&dress Kopiera bild&adress &Save image as... &Spara bild som... Send image... Skicka bild... Send text... Skicka text... Google Translate Google Översätt Dictionary Ordlista Go to &web address Gå till &webadress Search "%1 .." with %2 Sök efter"%1 .."på %2 Search with... Sök med... &Play &Spela upp &Pause &Paus Un&mute Slå &på ljud &Mute &Stäng av ljud &Copy Media Address &Kopiera medieadress &Send Media Address &Skicka medieadress Save Media To &Disk Spara media till &hårddisk Check &Spelling Languages jsAlert Prevent this page from creating additional dialogs Förhindra att denna sidan skapar fler dialogrutor qupzilla-1.6.0/translations/translations.pri000066400000000000000000000031031226107126500213340ustar00rootroot00000000000000TRANSLATIONS += $$PWD/ar_SA.ts \ $$PWD/bg_BG.ts \ $$PWD/bo_CN.ts \ $$PWD/ca_ES.ts \ $$PWD/cs_CZ.ts \ $$PWD/da_DK.ts \ $$PWD/de_DE.ts \ $$PWD/el_GR.ts \ $$PWD/es_AR.ts \ $$PWD/es_ES.ts \ $$PWD/es_VE.ts \ $$PWD/es_419.ts \ $$PWD/fa_IR.ts \ $$PWD/fr_FR.ts \ $$PWD/gl_ES.ts \ $$PWD/he_IL.ts \ $$PWD/hu_HU.ts \ $$PWD/id_ID.ts \ $$PWD/it_IT.ts \ $$PWD/ja_JP.ts \ $$PWD/ka_GE.ts \ $$PWD/lg.ts \ $$PWD/my_MM.ts \ $$PWD/nb_NO.ts \ $$PWD/nl_NL.ts \ $$PWD/nqo.ts \ $$PWD/pl_PL.ts \ $$PWD/pt_BR.ts \ $$PWD/pt_PT.ts \ $$PWD/ro_RO.ts \ $$PWD/ru_RU.ts \ $$PWD/sk_SK.ts \ $$PWD/sr_BA@latin.ts \ $$PWD/sr_BA.ts \ $$PWD/sr_RS@latin.ts \ $$PWD/sr_RS.ts \ $$PWD/sv_SE.ts \ $$PWD/uk_UA.ts \ $$PWD/zh_CN.ts \ $$PWD/zh_TW.ts \ updateqm.input = TRANSLATIONS updateqm.output = $$PWD/../bin/locale/${QMAKE_FILE_BASE}.qm updateqm.commands = $$QMAKE_LRELEASE -silent ${QMAKE_FILE_IN} -qm $$PWD/../bin/locale/${QMAKE_FILE_BASE}.qm updateqm.CONFIG += no_link target_predeps QMAKE_EXTRA_COMPILERS += updateqm qupzilla-1.6.0/translations/uk_UA.ts000066400000000000000000011334771226107126500174760ustar00rootroot00000000000000 AboutDialog About QupZilla Про QupZilla Authors Автори Authors and Contributors Автори та учасники < About QupZilla < Про QupZilla <p><b>Application version %1</b><br/> <p><b>Версія додатку %1</b><br/> <b>WebKit version %1</b></p> <b>Версія WebKit %1</b></p> <small>Build time: %1 </small></p> <small>Дата збирання: %1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>Головний розробник:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>Учасники:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>Перекладачі:</b><br/>%1</p> AcceptLanguage Preferred Languages Пріоритетні мови Add... Додати... Remove Видалити Up Вгору Down Вниз Personal [%1] Власна [%1] AdBlockAddSubscriptionDialog Add Subscription Додати підписку Title: Назва: Address: Url-адреса: Add new subscription to AdBlock: Додати нову підписку до AdBlock'у: AdBlockCustomList Custom Rules Правила користувача AdBlockDialog AdBlock Configuration Конфігурація AdBlock Enable AdBlock Використовувати AdBlock Search... Пошук... Options Опції AdBlock AdBlock Use only essential part of EasyList (for performance reasons) Add Rule Додати правило Remove Rule Видалити правило Add Subscription Додати підписку Remove Subscription Видалити підписку Update Subscriptions Оновити підписки Learn about writing rules... Дізнатись про написання правил... AdBlockIcon AdBlock lets you block unwanted content on web pages AdBlock дозволяє Вам блокувати небажаний контент на веб-сторінках Blocked popup window Заблоковано виринаюче вікно AdBlock blocked unwanted popup window. AdBlock заблокував небажане виринаюче вікно. AdBlock AdBlock Show AdBlock &Settings Показати &налаштування AdBlock Disable on %1 Відключити на %1 Disable only on this page Відключити лише на цій сторінці Blocked Popup Windows Заблоковані виринаючі вікна %1 with (%2) %1з (%2) No content blocked Нічого не заблоковано Blocked URL (AdBlock Rule) - click to edit rule Заблоковано URL (за правилом AdBlock) - клацніть, щоб відредагувати правило AdBlockManager Do you want to add <b>%1</b> subscription? Ви хочете додати підписку <b>%1</b>? AdBlock Subscription Підписка AdBlock EasyList EasyList AdBlockTreeWidget Add Rule Додати правило Remove Rule Видалити правило Add Custom Rule Додати правило користувача Please write your rule here: Будь ласка, напишіть Ваше правило тут: %1 (recently updated) %1 (нещодавно оновлено) AddAcceptLanguage Add Language Додати мову Choose preferred language for web sites Оберіть пріоритетну мову для веб-сайтів Personal definition: Власне визначення: AesInterface Warning! Попередження! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. Дані зашифровані за допомогою новї версії QupZilla. Будь ласка, встановіть останню версію QupZilla. AutoFill Database (plaintext) База даних (відкритий текст) Database (encrypted) База даних (зашифровано) Enter Master Password Введіть майстер-пароль Permission is required, please enter Master Password: Потрібен дозвіл, будь ласка, введіть майстер-пароль: Warning! Попередження! Entered password is wrong! Пароль неправильний! This backend needs a master password to be set! QupZilla just switches to its default backend AutoFillManager Passwords are stored in: Паролі зберігаються в: Change backend Змінити backend Backend options Опції Backend Passwords Паролі Server Сервер Username Ім’я користувача Password Пароль Import/Export Імпорт/Експорт Show Passwords Показати паролі Edit Редагувати Remove Видалити Remove All Видалити все Exceptions Винятки Import Passwords from File... Імпортувати паролі з файлу... Export Passwords to File... Експортувати паролі до файлу... Search Пошук Change backend... Змінити backend... Change backend: Змінити backend Are you sure that you want to show all passwords? Ви впевнені, що хочете показати усі паролі? Hide Passwords Приховати паролі Confirmation Підтвердження Are you sure to delete all passwords on your computer? Ви впевнені, що хочете видалити усі паролі з комп’ютера? Edit password Редагувати пароль Change password: Змінити пароль: Choose file... Виберіть файл... Cannot read file! Неможливо прочитати файл! Successfully imported Успішно імпортовано Error while importing! Помилка під час імпорту! Cannot write to file! Неможливо записати до файлу! Successfully exported Успішно експортовано AutoFillNotification Update Оновити Remember Запам’ятати Never For This Site Ніколи для цього сайту Not Now Не зараз on %1 на %1 for <b>%1</b> для <b>%1</b> Do you want QupZilla to update saved password %1? Чи хочете Ви, щоб QupZilla оновила збережений пароль %1? Do you want QupZilla to remember the password %1 %2? Чи хочете Ви, щоб QupZilla запам'ятала пароль %1 %2? AutoFillWidget Choose username to login Оберіть ім'я користувача, щоб увійти Login Увійти Login as <b>%1</b> Увійти як <b>%1</b> BookmarkIcon Bookmark this Page Додати до закладок цю сторінку Edit this bookmark Редагувати цю закладку BookmarksImportDialog Import Bookmarks Імпорт закладок <b>Import Bookmarks</b> <b>Імпорт закладок</b> From File З файлу Internet Explorer Internet Explorer Choose browser from which you want to import bookmarks: Оберіть браузер з якого ви хочете імпортувати закладки: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>Примітка:</b> Наразі, тільки "імпорт з Html-файлу" може імпортувати також папки закладок. Choose... Виберіть... Try to fetch icons for all bookmarks (may take a while) Спробувати витягнути іконки всіх закладок (може зайняти деякий час) Fetching icons, please wait... Отримую іконки, будь ласка, зачекайте... Title Назва Url Url-адреса Next Далі Cancel Відмінити <b>Importing from %1</b> <b>Імпортувати з %1</b> Finish Завершити Please press Finish to complete importing process. Будь ласка, натисніть "Завершити", щоб завершити процес імпорту. Error! Помилка! The file doesn't contain any bookmark. Файл не містить жодної закладки. Choose directory... Оберіть папку... Choose file... Оберіть файл... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox зберігає свої закладки в базі даних <b>places.sqlite</b> SQLite. Цей файл зазвичай розташований в Please choose this file to begin importing bookmarks. Будь ласка, виберіть цей файл, щоб імпортувати закладки. Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Google Chrome зберігає свої закладки в текстовому файлі <b>Bookmarks</b>. Цей файл зазвичай розташований в Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera зберігає свої закладки в <b>bookmarks.adr</b> текстовому файлі. Цей файл зазвичай розташований в You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes Ви можете імпортувати закладки з будь-якого браузера, що підтримує експорт у HTML. Файл має, зазвичай, таке розширення Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Explorer зберігає свої закладки в папці<b>Favorites</b>. Цей файл зазвичай розташований в Please choose this folder to begin importing bookmarks. Будь ласка виберіть цю папку, щоб почати імпорт закладок. No Error Без помилок Unable to open file. Не вдається відкрити файл. Cannot evaluate JSON code. Неможливо визначити JSON-код. File does not exist. Файл не існує. Unable to open database. Is Firefox running? Не вдається відкрити базу даних. Firefox працює? Directory does not exist. Каталогу не існує. The directory does not contain any bookmarks. Каталог не містить жодних закладкок. BookmarksManager Bookmarks Закладки Optimize Database Оптимізувати базу даних Import Bookmarks Імпортувати закладки Add Folder Додати папку Title Назва Url Url-адреса Expand All Розгорнути всі Collapse All Згорнути всі Add new folder Додати нову папку Choose parent folder for new folder: Оберіть батьківську папку для нової папки: Choose name for new bookmark folder: Оберіть назву для нової папки закладок: Add new subfolder Додати нову підпапку Choose name for new subfolder in bookmarks toolbar: Оберіть назву для нової підпапки на панелі закладок: Rename Folder Перейменувати папку Choose name for folder: Оберіть назву для папки: Add Subfolder Додати підпапку Rename folder Перейменувати папку Remove folder Видалити папку Open link in current &tab Відкрити посилання в поточній &вкладці Open link in &new tab Відкрити посилання в &новій вкладці Move bookmark to &folder Перемістити закладку до &папки Change icon Змінити іконку Rename bookmark Перейменувати закладку Remove bookmark Видалити заладку <b>Warning: </b>You already have bookmarked this page! <b>Попередження: </b>Ви вже додали до закладок цю сторінку! Choose name and location of this bookmark. Оберіть назву і розташування для цієї закладки. Add New Bookmark Додати нову закладку Choose folder for bookmarks: Оберіть папку для закладок: Bookmark All Tabs Додати до закладок всі вкладки BookmarksModel Bookmarks In Menu Закладки в меню Bookmarks In ToolBar Заладки на панелі інструментів Unsorted Bookmarks Несортовані закладки BookmarksSideBar Search... Пошук... Open link in current &tab Відкрити посилання в поточній &вкладці Open link in &new tab Відкрити посилання в &новій вкладці Copy address Копіювати адресу &Delete &Видалити BookmarksToolbar &Bookmark Current Page &Додати до закладок поточну сторінку Bookmark &All Tabs Додати до закладок &всі вкладки &Organize Bookmarks &Навести лад в закладках Show Most &Visited Показати найбільш &відвідувані Show Only Icons Показати лише іконки &Hide Toolbar &Приховати панель інструментів Open bookmark Відкрити закладку Open bookmark in new tab Відкрити закладку в новій вкладці Move right Перемістити вправо Move left Перемістити вліво Edit bookmark Редагування закладки Remove bookmark Видалити закладку Edit bookmark: Редагувати закладку: Title: Назва: Url: Url-адреса: Edit Bookmark Редагувати закладку Most visited Найбільш відвідувані Sites you visited the most Сайти, які Ви відвідували найчастіше Empty Порожньо BookmarksTree Bookmarks Закладки New Folder... Нова папка... BookmarksWidget Add to Speed Dial Додати до сторінки Speed Dial Save Зберегти Name: Назва: Folder: Папка: Remove from Speed Dial Видалити зі сторінки Speed Dial Remove Видалити BrowsingLibrary Library Бібліотека Search... Пошук... History Історія Bookmarks Закладки RSS RSS Database Optimized Базу даних оптимізовано Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 Базу даних успішно оптимізовано.<br/><br/><b>Розмір бази даних до: </b>%1<br/><b>Розмір бази даних після: </b>%2 CertificateInfoWidget <b>Issued To</b> <b>Видано для</b> Common Name (CN): Спільне ім’я (CN): Organization (O): Організація (О): Organizational Unit (OU): Підрозділ організації (OU): Serial Number: Серійний номер: <b>Issued By</b> <b>Видано</b> <b>Validity</b> <b>Чинність</b> Issued On: Видано: Expires On: Спливає: ClearPrivateData Clear Recent History Очистити недавню історію Choose what you want to delete: Оберіть, що Ви хочете видалити: Clear history Очистити історію Clear cache Очистити кеш Clear icons Очистити іконки <b>Clear Recent History</b> <b>Очистити недавню історію</b> Earlier Today За сьогодні Week За тиждень Month За місяць All Всю Clear web databases Очистити бази даних мережі Clear local storage Очистити місцеве сховище Clear cookies Очистити cookies ClickToFlash Object blocked by ClickToFlash Об’єкт заблоковано за допомогою ClickToFlash Show more information about object Показати більше інформації про об’єкт Delete object Видалити об’єкт Add %1 to whitelist Додати %1 до білого переліку Flash Object Flash-об’єкт <b>Attribute Name</b> <b>Назва атрибуту</b> <b>Value</b> <b>Значення</b> No more information available. Більше нема доступної інформації. CookieManager Cookies Cookies Stored Cookies Збережені cookies Find: Знайти: These cookies are stored on your computer: Ці cookies зберігаються на Вашому комп’ютері: Server Сервер Cookie name Назва cookie Name: Назва: Value: Значення: Server: Сервер: Path: Шлях: Secure: Безпечність: Expiration: Закінчення дії: <cookie not selected> <cookie не обрано> Remove all cookies Видалити всі cookies Remove cookies Видалити cookies Cookie Filtering Фільтрація cookie <b>Cookie whitelist</b> <b>Білий перелік cookie</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) Cookies з цих серверів будуть ЗАВЖДИ прийматися (навіть, якщо Ви відключили їх збереження) Add Додати Remove Видалити <b>Cookie blacklist</b> <b>Чорний перелік cookie</b> Cookies from these servers will NEVER be accepted Cookies з цих серверів НІКОЛИ не будуть прийматися Settings Налаштування <b>Cookie Settings</b> <b>Налаштування сookie</b> Allow storing of cookies Дозволити зберігання cookies Delete cookies on close Видаляти cookies під час закриття Match domain exactly Точна відповідність домену Filter tracking cookies Фільтрувати шпигунські cookies <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! Search Пошук Confirmation Підтвердження Are you sure to delete all cookies on your computer? Ви впевнені, що хочете видалити усі cookies з Вашого комп’ютера? Secure only Безпечні тільки на All connections Всі з’єднання Session cookie Сесійні cookie Remove cookie Видалити cookie Add to whitelist Додати до білого переліку Add to blacklist Додати до чорного переліку DownloadFileHelper Save file as... Зберегти файл як... NoNameDownload Безіменне завантаження DownloadItem Remaining time unavailable Час, що залишився недоступний Error: Cannot write to file! Помилка: неможливо записати до файлу! Done - %1 Виконано - %1 Cancelled Відмінено few seconds кілька секунд %n seconds %n minutes %n hours Unknown speed Швидкість невідома kB/s КБ/с MB/s МБ/с GB/s ГБ/s Unknown size Розмір невідомий %2 - unknown size (%3) %2 - розмір невідомий (%3) Remaining %1 - %2 of %3 (%4) Залишилось %1 - %2 з %3 (%4) Cancelled - %1 Відмінено - %1 Delete file Видалити файл Do you want to also delete dowloaded file? Ви хочете також видалити завантажений файл? Open File Відкрити файл Open Folder Відкрити папку Go to Download Page Перейти до сторінки завантаження Copy Download Link Копіювати посилання завантаження Cancel downloading Відмінити завантаження Remove Видалити Error Помилка Not found Не знайдено Sorry, the file %1 was not found! Вибачте, файл %1 не було знайлено! Error: Помилка: DownloadManager Download Manager Менеджер завантаження Clear Очистити %1% of %2 files (%3) %4 remaining %1% з %2 файлів (%3) %4 залишилось %1% - Download Manager %1% - Менеджер завантаження Download Finished Завантаження завершено All files have been successfully downloaded. Всі файли було успішно завантажено. Warning Попередження Are you sure to quit? All uncompleted downloads will be cancelled! Ви впевнені, що хочете вийти? Всі незавершені завантаження будуть скасовані! DownloadOptionsDialog Opening Відкриваю Copy download link Копіюйвати посилання на завантаження You have chosen to open Ви обрали відкрити which is a: що є: What should QupZilla do with this file? Що має QupZilla зробити з цим файлом? Open... Відкрити... Save File Зберегти файл Download with External Manager Завантажити зовнішнім менеджером завантаження from: з: Opening %1 Відкриваю %1 Download link copied. Посилання на завантаження скопійовано EditSearchEngine Name: Назва: Url: Url-адреса: Shortcut: Гарячі клавіши: Icon: Іконка: <b>Note: </b>%s in url or post data represent searched string Post Data: Розміщення даних: Change... Змінити... FileSchemeReply No Error Без помилок Up to higher level directory Перейти на рівень вище Show hidden files Показати приховані файли Name Назва Size Розмір Last modified Востаннє змінено Index for %1 Перелік для %1 Folder is empty. Папка порожня. FtpDownloader Cancelled! Відмінено! FtpSchemeReply Up to higher level directory Перейти на рівень вище Show hidden files Показати приховані файли Name Назва Size Розмір Last modified Востаннє змінено Index for %1 Перелік для %1 Folder is empty. Папка порожня. Unknown command Невідома команда HTML5PermissionsDialog HTML5 Permissions Дозволи HTML5 Notifications Сповіщення Site Сайт Behaviour Поведінка Remove Видалити Geolocation Геолокація Allow Дозволити Deny Заборонити HTML5PermissionsNotification Remember Запам’ятати Allow Дозволити Deny Заборонити this site цей сайт Allow %1 to show desktop notifications? Дозволити %1 показувати сповіщення на робочому столі? Allow %1 to locate your position? Дозволити %1 визначати ваше місцерозташування? History No Named Page Безіменна сторінка January Січень February Лютий March Березень April Квітень May Травень June Червень July Липень August Серпень September Вересень October Жовтень November Листопад December Грудень HistoryManager History Історія Delete Видалити Clear All History Очистити всю історію Optimize Database Оптимізувати базу даних Confirmation Підтвердження Are you sure to delete all history? Ви впевнені, що хочете видалити усю історію? HistoryModel Title Назва Address Url-адреса Visit Date Дата відвідування Visit Count Кількість відвідувань Today Сьогодні This Week Цього тижня This Month Цього місяця HistorySideBar Search... Пошук... HistoryView Open link in current tab Відкрити посилання в поточній вкладці Open link in new tab Відкрити посилання в новій вкладці Copy title Копіювати назву Copy address Копіювати Url-адресу Remove Видалити IconChooser Choose icon... Оберіть іконку... From file З файлу Image (.png, .jpg, .jpeg, .gif) Зображення (.png, .jpg, .jpeg, .gif) Choose file... Оберіть файл... From database З бази даних Site Url: Url-адреса сайту: Image files Файли зображень JsOptions JavaScript Options Налаштування JavaScript Allow JavaScript to: Дозволити JavaScript'у: Close windows Закривати вікна Open popup windows Відкривати виринаючі вікна Change window size Змінювати розмір вікна Hide menu bar Приховувати панель меню Hide status bar Приховувати панель статусу Hide tool bar Приховувати панель інструментів Access clipboard Мати доступ до буферу обміну LicenseViewer License Viewer Переглядач ліцензій LocationBar Enter URL address or search on %1 Введіть URL-адресу або шукайте за допомогою %1 Paste And &Go Вставити і &запустити Clear All Очистити все .co.uk Append domain name on ALT + Enter = Should be different for every country .com.ua Show information about this page Показати інформацію про цю сторінку LocationCompleterView Switch to tab Перемкнутись на вкладку MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? QupZilla не є Вашим браузером за замовчуванням. Чи хочете Ви зробити його таким? Always perform this check when starting QupZilla. Завжди виконувати перевірку під час запуску QupZill'и. Default Browser Браузер за замовчуванням QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. QupZilla - це новий, швидкий і безпечний веб-переглядач з відкритим кодом. QupZilla поширюється за ліцензією GPL 3-ї версії або (за Вашим бажанням) будь-якої пізнішої версії. Базується на ядрі WebKit і Qt Framework. MasterPasswordDialog Encrypted DataBase Settings Налаштування зашифрованої бази даних Set/Change Master Password... Вибрати/Змінити головний пароль... Clear Master Password... Очистити головний пароль... This backend does not work without a master password. Цей backend не працює без майстер-пароля. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Current Password: Поточний пароль: New Password: Новий пароль: Confirm Password: Підтвердження пароля: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. Warning! Попередження! You entered a wrong password! Ви ввели неправильний пароль! New/Confirm password fields do not match! Some data has not been decrypted. The master password was not cleared! Деякі дані не були розшифровані. Майстер-пароль не був очищений! Are you sure to clear master password and decrypt data? Ви впевнені, що бажаєте очистити майстер-пароль і дешифрувати дані? NavigationBar No Named Page Безіменна сторінка Back Назад Forward Вперед Home Домашня сторінка New Tab Нова вкладка Main Menu Головне меню Exit Fullscreen Вийти з повноекранного режиму Clear history Очистити історію NetworkManager SSL Certificate Error! Помилка сертифікату SSL! The page you are trying to access has the following errors in the SSL certificate: Сторінка, на яку Ви намагаєтесь зайти має наступні помилки в сертифікаті SSL: <b>Organization: </b> <b>Організація: </b> <b>Domain Name: </b> <b>Ім'я домену: </b> <b>Expiration Date: </b> <b>Строк дії спливає: </b> <b>Error: </b> <b>Помилка: </b> Would you like to make an exception for this certificate? Чи хочете Ви зробити виняток для цього сертифікату? Authorisation required Необхідна авторизація Username: Ім’я користувача: Password: Пароль: Save username and password on this site Зберегти ім’я користувача і пароль для цього сайту A username and password are being requested by %1. The site says: "%2" %1 вимагає ім’я користувача і пароль. Сайт каже: "%2" FTP authorisation required Необхідна авторизація FTP Login anonymously Логінитись анонімно A username and password are being requested by %1:%2. %1:%2 вимагає ім’я користувача і пароль. Proxy authorisation required Необхідна авторизація проксі Remember username and password for this proxy. Запам'ятати ім'я користувача та пароль для цього проксі-сервера. A username and password are being requested by proxy %1. Проксі %1 вимагає ім’я користувача і пароль. PageScreen Page Screen Скріншот сторінки Format: Формат: Location: Місцерозташування: Browse... Переглянути... Save as %1 Зберегти як %1 Choose location... Виберіть місцерозташування... File '%1' already exists. Do you want to overwrite it? Файл '%1' вже існує. Ви хочете перезаписати його? File already exists Файл вже існує PluginsList Application Extensions Розширення програми Allow Application Extensions to be loaded Дозволити запуск розширень програми Settings Налаштування WebKit Plugins Плагіни WebKit <b>Click To Flash Plugin</b> <b>Click To Flash Plugin</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Click To Flash - це плагін, що блокує автоматичне завантаження Flash-контенту на сторінці. Ви завжди можете запустити заблоковане натиснувши іконку "Flash play". Whitelist "Білий" перелік Add Додати Remove Видалити Allow Click To Flash Використовувати Click To Flash PluginsManager Add site to whitelist Додати сайт до білого переліку Server without http:// (ex. youtube.com) Сервер без http:// (напр. youtube.com) Error! Помилка! Cannot load extension! Неможливо завантажити розширення! PopupWebView Inspect Element Перевірити елемент PopupWindow File Файл &Save Page As... &Зберегти сторінку як... Save Page Screen Зберегти скріншот сторінки Send Link... Відправити посилання... &Print... &Надрукувати... Close Закрити Edit Редагувати &Undo Від&мінити дію &Redo Пов&торити дію &Cut &Вирізати C&opy К&опіювати &Paste Вс&тавити Select All Вибрати все Find Знайти View Вигляд &Stop &Зупинити &Reload &Перезавантажити Zoom &In З&більшити Zoom &Out З&меншити Reset Відновити &Page Source Вихідний код &сторінки %1 - QupZilla %1 - QupZilla Preferences Preferences Налаштування QupZilla QupZilla General Загальне Appearance Вигляд Tabs Вкладки Browsing Перегляд інтернету Fonts Шрифти Keyboard Shortcuts Клавіатурні скорочення Downloads Завантаження Password Manager Менеджер паролів Privacy Приватність Notifications Сповіщення Extensions Розширення Other Інше Use current Використовувати поточну Note: You cannot delete active profile. Примітка: Ви не можете видалити активний профіль. Create New Створити новий Delete Видалити <b>Launching</b> <b>Запуск</b> After launch: Після запуску: Open blank page Відкрити порожню сторінку Open homepage Відкрити домашню сторінку Open speed dial Відкрити сторінку "Speed Dial" Restore session Відновити сесію Homepage: Домашня сторінка: On new tab: В новій вкладці: Open blank tab Відкрити порожню вкладку Open other page... Відкрити іншу сторінку... <b>Profiles</b> <b>Профілі</b> Startup profile: Стартовий профіль: Check for updates on start Перевіряти наявність оновлень під час запуску Active profile: Активний профіль: In order to change language, you must restart browser. Щоб мова змінилась, Ви маєте перезапустити браузер. <b>Language</b> <b>Мова</b> Available translations: Наявні переклади: Don't load tabs until selected Не завантажувати вкладки до їх вибору Check to see if QupZilla is the default browser on startup Відмітьте, для перевірки під час запуску чи є QupZilla браузером за замовчуванням Check Now Перевірити зараз Themes Теми Advanced options Додаткові налаштування <b>Browser Window</b> <b>Вікно браузера</b> Show StatusBar on start Показувати панель статусу під час запуску Show Bookmarks ToolBar on start Показувати панель закладок під час запуску Show Navigation ToolBar on start Показувати панель навігації під час запуску <b>Navigation ToolBar</b> <b>Панель навігації</b> Show Home button Показувати кнопку "Домашня сторінка" Show Back / Forward buttons Показувати кнопки "Назад" / "Вперед" <b>Background<b/> <b>Фон<b/> Use transparent background Використовувати прозорий фон Show web search bar Показувати панель веб-пошуку Show Add Tab button Показувати кнопку "Додати вкладку" Show Reload / Stop buttons Показувати кнопки "Перезавантажити" / "Зупинити" Tabs behaviour Поведінка вкладок Show tab previews Показувати прев'ю вкладок Make tab previews animated Робити прев'ю вкладок анімованим Hide tabs when there is only one tab Ховати панель вкладок, коли відкрита лише одна вкладка Activate last tab when closing active tab Активувати останню вкладку, коли закривається активна вкладка Open new tabs after active tab Відкривати нові вкладки після поточної вкладки Open new empty tabs after active tab Відкривати нову порожню вкладку після активної вкладки Automatically switch to newly opened tab Автоматично перемикатись на нову вкладку Don't quit upon closing last tab Не виходити при закритті останньої вкладки Ask when closing multiple tabs Питати, коли закриваються багато вкладок Closed tabs list instead of opened in tab bar Закривати перелік вкладок замість відкриття в панелі вкладок Address Bar behaviour Поведінка рядку адреси Suggest when typing into address bar: Робити підказки під час набирання адреси: History and Bookmarks Історія і Закладки History Історія Bookmarks Закладки Nothing Нічого Press "Shift" to not switch the tab but load the url in the current tab. Натискати "Shift" щоб не перемикатись на іншу вкладку, а завантажити url-адресу в поточній вкладці. Propose to switch tab if completed url is already loaded. Пропонувати перемкнути вкладку, якщо повна url-адреса вже завантажена. Always show go icon Завжди показувати іконку переходу Select all text by double clicking in address bar Виділяти весь текст подвійним кліканням в адресному рядку Select all text by clicking in address bar Виділяти весь текст одинарним кліканням в адресному рядку Search with Default Engine Шукати за допомогою пошукового двигуна за замовчуванням Show loading progress in address bar Показувати поступ завантаження в адресному рядку Fill Заповнювати Bottom Низ Top Верх Custom color: Колір користувача: Select color Оберіть колір ... ... Reset Відновити Web Configuration Конфігурація нету Allow Netscape Plugins (Flash plugin) Дозволити плаґіни Netscape (Flash-плаґін) Allow JavaScript Дозволити JavaScript Allow JAVA Дозволити JAVA Allow DNS Prefetch Дозволити попереднє отримання DNS Enable XSS Auditing try to detect possible XSS attacks when executing javascript Дозволити аудит XSS Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements Друкувати фон елементу Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Включати посилання до послідовності перемикання фокусу Animated scrolling Анімоване прокручування Enable caret browsing Дозволити використання вставки адреси Enable spatial navigation Дозволити просторову навігацію Zoom text only Масштабувати лише текст Mouse wheel scrolls Колесо миші прокручує lines on page рядків на сторінку Default zoom on pages: Масштаб сторінок за замовчуванням: Local Storage Локальне сховище Maximum Максимум 50 MB 50 МБ 1 1 Maximum pages in cache: Максимум сторінок в кеші: Allow storing network cache on disk Дозволити зберігання кешу мережі на диску Store cache in: Зберігати кеш в: Allow saving history Дозволити зберігання історії Delete history on close Видаляти історію під час закриття Allow local storage of HTML5 web content Дозволити локальне зберігання HTML5-контент Delete locally stored HTML5 web content on close Видаляти локально збережений HTML5-контент під час закриття Delete now Видалити зараз Proxy Configuration Конфігурація проксі Proxy Auto-Config (.pac) file Файл Proxy Auto-Config (.pac) Reload Перезавантажити HTTP HTTP SOCKS5 SOCKS5 Port: Порт: Username: Ім'я користувача: Password: Пароль: Don't use on: Не використовувати на: Manual configuration Ручні налаштування System proxy configuration Системні налаштування проксі Do not use proxy Не використовувати proxy <b>Exceptions</b> <b>Винятки</b> Server: Сервер: Use different proxy for https connection Використовувати різні проксі для https-з'єднання Use script for automatic configuration: Використовувати скрипт для автоматичного налаштовування: <b>Font Families</b> <b>Шрифтові сім'ї</b> Standard Standard Fixed Fixed Serif Serif Sans Serif Sans Serif Cursive Cursive Fantasy Fantasy <b>Font Sizes</b> <b>Розміри шрифта</b> Fixed Font Size Фіксований розмір шрифта Default Font Size Розмір шрифта за замовчуванням Minimum Font Size Мінімальний розмір шрифта Minimum Logical Font Size Мінімальний логічний розмір шрифта <b>Shortcuts</b> <b>Гарячі клавіши</b> Switch to tabs with Alt + number of tab Перемикатись між вкладками за допомогою "Alt" і цифрових клавіш Load speed dials with Ctrl + number of speed dial Завантажувати сторінки зі "Speed Dial" за допомогою "Ctrl" і цифрових клавіш Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>Місцерозташування завантажень</b> Ask everytime for download location Щоразу питати про місцерозташування завантаження Use defined location: Використовувати визначене місце: <b>Download Options</b> <b>Опції завантаження</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) Використовувати системний файловий діалог (можуть виникнути проблеми із завантаженням SSL-захищеного контенту) Close download manager when downloading finishes Закрити менеджер завантаження коли завантаження закінчиться <b>External download manager</b> <b>Зовнішній менеджер завантаження</b> Use external download manager Використовувати зовнішній менеджер завантаження Executable: Виконуваний файл: Arguments: Параметри запуску: Leave blank if unsure Лишити порожнім якщо немає впевненості <b>%d</b> will be replaced with URL to be downloaded <b>%d</b> буде замінено URL-адресою завантаження <b>AutoFill options</b> <b>Опції автозаповення</b> Allow saving passwords from sites Дозволити зберігання паролів з сайтів Send Referer header to servers Відсилати серверам заголовок "Referer" <b>Cookies</b> <b>Cookies</b> Send Do Not Track header to servers Відсилати серверам заголовок "Не відстежувати" <b>Other</b> <b>Інше</b> Manage CA certificates Керування CA-сертифікатами Certificate Manager Менеджер сертифікатів <b>SSL Certificates</b> <b>SSL-сертифікати</b> <b>JavaScript</b> <b>JavaScript</b> Manage JavaScript privacy options Керувати налаштуваннями приватності JavaScript JavaScript options Налаштування JavaScript Cookies Manager Менеджер cookies Manage Cookies Керування Cookies'ами <b>HTML5 Permissions</b> <b>Дозволи HTML5</b> Manage HTML5 permissions Керування дозволами HTML5 HTML5 Permissions Дозволи HTML5 <b>Notifications</b> <b>Сповіщення</b> Use OSD Notifications Використовувати OSD-сповіщення Use Native System Notifications (Linux only) Використовувати рідні системні сповіщення (тільки для Linux) Do not use Notifications Не використовувати сповіщення Expiration timeout: Час відображення: seconds секунд <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>Примітка: </b>Ви можете змінити положення OSD сповіщеннь перетягуючи їх екраном. StyleSheet automatically loaded with all websites: Автоматично завантажувати StyleSheet разом з усіма веб-сайтами: Languages Мови <b>Preferred language for web sites</b> <b>Пріоритетна мова для веб-сайтів</b> <b>Change browser identification</b> <b>Змінити ідентифікацію браузера</b> User Agent Manager Менеджер User-Agent’ів Default За замовчуванням Set as default Встановити за замовчуванням OSD Notification OSD сповіщення Drag it on the screen to place it where you want. Перетягніть по екрану в місце, де Ви хочете щоб розміщувалося сповіщення. Choose download location... Виберіть місцерозташування завантаження... Choose stylesheet location... Виберіть місцерозташування таблиці стилів... Deleted Видалено Choose executable location... Виберіть місцерозташування виконуваного файлу... Choose cache path... Виберіть шлях для кешу... New Profile Новий профіль Enter the new profile's name: Введіть ім'я нового профілю: Error! Помилка! This profile already exists! Такий профіль вже існує! Cannot create profile directory! Неможливо створити папку профілю! Confirmation Підтвердження Are you sure to permanently delete "%1" profile? This action cannot be undone! Ви дійсно хочете остаточно видалити профіль "%1"? Ця дія не може бути відмінена! Select Color Оберіть колір QObject Native System Notification Рідна система сповіщення Save file as... Зберегти файл як... The file is not an OpenSearch 1.1 file. Цей файл не є файлом OpenSearch 1.1. <not set in certificate> <не встановлено в сертифікаті> Unknown size Розмір невідомий KB КБ MB МБ GB ГБ Executable: Виконуваний файл: Arguments: Параметри запуску: Cannot start external program Неможливо запустити зовнішню програму Cannot start external program! %1 Неможливо запустити зовнішню програму! %1 QtWin Open new tab Відкрити нову вкладку Opens a new tab if browser is running Відкриває нову вкладку, якщо браузер запущено Open new window Відкрити нове вікно Opens a new window if browser is running Відкриває нове вікно, якщо браузер запущено Open download manager Відкрити менеджер завантаження Opens a download manager if browser is running Відкриває менеджер завантаження, якщо браузер запущено QupZilla QupZilla QupZilla Private Browsing Enabled Приватний перегляд увімкнено IP Address of current page IP адреса поточної сторінки &About QupZilla &Про QupZilla Pr&eferences На&лаштування Quit Вихід &File &Файл &New Window &Нове вікно New Tab Нова вкладка Open Location Відкрити адресу Open &File... Відкрити &файл Close Tab Закрити вкладку Close Window Закрити вікно &Save Page As... &Зберегти сторінку як... Save Page Screen Зберегти скріншот сторінки Send Link... Відіслати посилання... &Print... &Надрукувати... Import bookmarks... Імпортувати закладки... &Edit З&міни &Undo Від&мінити дію &Redo Пов&торити дію &Cut &Вирізати C&opy К&опіювати &Paste Вс&тавити Select &All В&ибрати все &Find &Знайти &View &Вигляд &Navigation Toolbar Панель &навігації &Bookmarks Toolbar Панель &закладок Sta&tus Bar Панель ста&тусу &Menu Bar Панель &меню &Tabs on Top &Вкладки згори &Fullscreen &Повноекранний режим &Stop &Зупинити &Reload &Перезавантажити Character &Encoding &Кодування символів Enable &Caret Browsing Дозволити використання в&ставки адреси Toolbars Панелі інструментів Sidebars Бічні панелі Zoom &In З&більшити Zoom &Out З&меншити Reset Звичайно &Page Source Вихідний код &сторінки Hi&story &Історія &Back &Назад &Forward &Вперед &Home На &домашню сторінку Show &All History Показати в&сю історію Closed Tabs Закриті вкладки Recently Visited Нещодавно відвідані Most Visited Найчайстіше відвідувані &Bookmarks &Закладки Bookmark &This Page Додати &цю сторінку до закладок Bookmark &All Tabs Додати &всі вкладки до закладок Organize &Bookmarks Навести лад в &закладках &Tools Ін&струменти &Web Search &Веб-пошук Page &Info &Інформація про сторінку &Download Manager Менеджер &завантаження &Cookies Manager Менеджер &Cookies &AdBlock &AdBlock RSS &Reader RSS-&читалка Web In&spector Веб ін&спектор Clear Recent &History Очистити &недавню історію New &Private Window Нове вікно &приватного перегляду &Help &Довідка About &Qt Про &Qt Information about application Інформація про програму Configuration Information Інформація про конфігурацію Report &Issue Повідомити про &помилку Restore &Closed Tab Відновити &закриту вкладку (Private Browsing) (Приватний перегляд) Empty Порожньо Restore All Closed Tabs Відновити всі закриті вкладки Clear list Очистити перелік Other Інше %1 - QupZilla %1 - QupZilla HTML files HTML-файли Image files Файли зображень Text files Текстові файли All files Всі файли Open file... Відкрити файл... QupZilla %1 (%2) QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? Все ще маємо %1 відкритих вкладок і Вашу сесію не буде збережено. Ви дійсно хочете вийти з QupZilla? Don't ask again Не питати знову There are still open tabs Все ще маємо відкриті вкладки QupZillaSchemeReply No Error Жодних помилок Not Found Не знайдено Report Issue Повідомлення про проблему If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: Якщо у Вас виникли проблеми з QupZilla, будь ласка, спробуйте, спочатку, відключити всі розширення. <br/>Якщо це не змінить ситуацію, тоді, будь ласка, заповніть цю форму: Your E-mail Ваш E-mail Issue type Тип проблеми Issue description Опис проблеми Send Відіслати E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. Вказувати E-mail не обов’язково <br/><b>Примітка: </b>Будь ласка, спочатку прочитайте про те, як створювати звіт про помилку <a href=%1>тут</a>. Please fill out all required fields! Будь ласка, заповніть всі обов'язкові поля! Start Page Стартова сторінка Search on Web Шукати у Вебі Search results provided by DuckDuckGo Результати пошуку надані DuckDuckGo About QupZilla Про QupZill’у <h1>Private Browsing</h1> <h1>Приватний перегляд</h1> Information about version Інформація про версію Copyright Авторське право Version Версія WebKit version Версія WebKit Main developer Головний розробник Contributors Учасники Translators Перекладачі Speed Dial Speed Dial Add New Page Додати нову сторінку Edit Редагувати Remove Видалити Reload Перезавантажити Are you sure to remove this speed dial? Ви впевнені, що хочете видалити цю сторінку у Speed Dial? Load title from page Завантажити назву зі сторінки Url Url-адреса Title Назва Apply Застосувати Close Закрити New Page Нова сторінка Speed Dial settings Налаштування Speed Dial Placement: Розміщення: Auto Автоматично Cover Покрити повністю Fit Підігнати Fit Width Підігнати ширину Fit Height Підігнати висоту Use background image Використовувати фонове зображення Select image Оберіть зображення Maximum pages in a row: Максимальна кількість сторінок в рядку: Change size of pages: Змінити розмір сторінок: Center speed dials Центрувати "Speed Dials" Restore Session Відновити сесію Oops, QupZilla crashed. Ой, QupZilla впала. We apologize for this. Would you like to restore the last saved state? Ми просимо вибачення за це. Чи бажаєте Ви відновити останній збережений стан? Try removing one or more tabs that you think cause troubles Спробуйте вимкнути одну або декілька вкладок, які, на Вашу думку, спричиняють проблеми Or you can start completely new session Або Ви можете розпочати нову сесію Configuration Information Інформація про конфігурацію This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. Ця сторінка містить інфомацію про поточну конфігурацію QupZill'и - актуальна для усунення несправностей. Будь ласка, увімкніть цю інформацію коли заповнюватимете звіти про помилки. Browser Identification Ідентифікація браузера Paths Шляхи Build Configuration Конфігурація збірки Preferences Налаштування Option Опція Value Значення Extensions Розширення Name Назва Author Автор Description Опис Application version Версія програми Qt version Версія Qt Build time Дата збирання Platform Платформа Profile Профіль Settings Налаштування Saved session Збережена сесія Pinned tabs Закріплені вкладки Data Дані Themes Теми Translations Переклади Disabled Відключено <b>Enabled</b> <b>Підключено</b> Debug build Збірка для налагодження WebGL support Підтримка WebGL Windows 7 API Windows 7 API KDE integration Інтеграція з KDE Portable build Переносна збірка No available extensions. Немає доступних розширень. RSSManager RSS Reader RSS-читалка Empty Порожньо Add feed Додати стрічку Edit feed Редагувати стрічку Delete feed Видалити стрічку Optimize Database Оптимізувати базу даних Reload Перезавантажити News Новини Loading... Завантажується... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. У вас нема жодних RSS-стрічок.<br/> Будь ласка, додайте кілька за допомогою RSS-іконки в рядку навігації на сайті, що підтримує RSS. Add new feed Додати нову стрічку Please enter URL of new feed: Будь ласка, введіть URL-адресу нової стрічки: New feed Нова стрічка Fill title and URL of a feed: Заповніть назву і URL-адресу стрічки: Feed title: Назва стрічки: Feed URL: URL-адреса стрічки: Edit RSS Feed Редагувати RSS-стрічку Open link in current tab Відкрити посилання в поточній вкладці Open link in new tab Відкрити посилання в новій вкладці Error in fetching feed Помилка завантаження стрічки RSS feed duplicated RSS-стрічка продубльована You already have this feed. У Вас вже є ця стрічка. RSSNotification Add this feed into Додати цю стрічку до Add Додати RSS feed <b>"%1"</b> RSS-стрічка <b>"%1"</b> Internal Reader Внутрішня читалка Other... Інше... Liferea not running Liferea не запущено Liferea must be running in order to add new feed. Liferea має бути запущено, щоб додати нову стрічку. To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. Щоб додати цю RSS-стрічку до іншої програми, будь ласка, використовуйте цю інформацію:<br/><br/><b>Назва: </b>%1<br/><b>Url-адреса: </b>%2<br/><br/>Url-адресу стрічку було скопійовано до буферу обміну. Add feed into other application Додати стрічку до іншої програми RSSWidget Add RSS Feeds from this site Додати RSS-стрічки з цього сайту Untitled feed Неназвана стрічка Add Додати RecoveryWidget Start New Session Розпочати нову сесію Restore Відновити Window %1 Вікно %1 RegisterQAppAssociation Warning! Попередження! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) Є проблеми. Будь ласка, перевстановіть QupZill'у. Можливо, перезапуск з правами адміністратора створить диво! ;) RssIcon Add RSS from this page... Додати RSS-стрічку з цієї сторінки... SSLManager Certificate Manager Менеджер сертифікатів CA Authorities Certificates Сертифікати управління CA Show info Показати інформацію This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. Це перелік сертифікатів управління CA, що зберігаються за стандартними системними і користувацькими шляхами. Local Certificates Локальні сертифікати Import Імпорт Remove Видалити This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. Це перелік локальних сертифікатів, що зберігаються у Вашому профілі користувача. Він також містить всі сертифікати, для яких ви зробили виняток. Settings Налаштування Add Додати If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. Якщо сертифікати управління CA не було автоматично завантажено з системи, Ви можете вручну визначити шляхи до місця зберігання сертифікатів. <b>NOTE:</b> Setting this option is a high security risk! <b>ПРИМІТКА:</b> Встановлення цієї опції є дуже ризикованим для безпеки! Ignore all SSL Warnings Ігнорувати всі SSL-попередження All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. У всіх сертифікатів має бути розширення .crt. Після додавання або видалення шляхів до сертифікатів, необхідно перезапустити QupZill'у, щоб прийняті зміни вступили в силу. Choose path... Виберіть шлях... Import certificate... Імпортувати сертифікат... Certificate Informations Інформація про сертифікати SearchEnginesDialog Manage Search Engines Керування пошуковими двигунами Add... Додати... Remove Видалити Edit Редагувати Set as default Встановити за замовчуванням Up Вгору Down Вниз Search Engine Пошуковий двигун Shortcut Скорочення Defaults За замовчуванням Add Search Engine Додати пошуковий двигун Remove Engine Видалити двигун You can't remove the default search engine.<br>Set a different engine as default before removing %1. Ви не можете видалити пошуковий двигун за замовчуванням.<br>До видалення %1 встановіть інакший двигун. Edit Search Engine Редагувати пошуковий двигун SearchEnginesManager Search Engine Added Пошуковий двигун додано Search Engine "%1" has been successfully added. Пошуковий двигун "%1" було успішно додано. Search Engine is not valid! Пошуковий двигун не діє! Error Помилка Error while adding Search Engine <br><b>Error Message: </b> %1 Помилка під час додавання пошукового двигуна<br><b>Повідомлення про помилку: </b> %1 SearchToolBar No results found. Нічого не знайдено. SearchToolbar Search: Пошук: Search... Пошук... Highlight Підсвітити Case sensitive З урахуванням регістру SideBar Bookmarks Закладки History Історія SiteInfo Site Info Інформація про сайт General Загальне Media Медіа Databases Бази даних Security Захист Size: Розмір: Site address: Адреса сайту: Encoding: Кодування: Meta tags of site: Мета-теґи сайту: Tag Теґ Value Значення <b>Security information</b> <b>Інформація про захист</b> Details Подробиці Image Зображення Image address Адреса зображення <b>Preview</b> <b>Попередній перегляд</b> <b>Database details</b> <b>Подробиці баз даних</b> Name: Назва: Path: Шлях: <database not selected> <database не обрана> <not set in certificate> <not встановлено в сертифікаті> No databases are used by this page. Жодна з баз даних не використовується цією сторінкою. <b>Connection is Encrypted.</b> <b>З'єднання зашифровано.</b> <b>Your connection to this page is secured with this certificate: </b> <b>Ваше з'єднання з цією сторінкою захищено цим сертифікатом: </b> <b>Connection Not Encrypted.</b> <b>З'єднання не зашифровано.</b> <b>Your connection to this page is not secured!</b> <b>Ваше з'єднання з цією сторінкою не захищено!</b> Copy Image Location Копіювати розташування зображення Copy Image Name Копіювати назву зображення Save Image to Disk Зберегти зображення на диск Error! Помилка! This preview is not available! Попередній перегляд недоступний! Save image... Зберегти зображення... Cannot write to file! Неможливо записати до файлу! Preview not available Попередній перегляд недоступний SiteInfoWidget More... Детальніше... Your connection to this site is <b>secured</b>. Ваше з'єднання з цим сайтом <b>захищено</b>. Your connection to this site is <b>unsecured</b>. Ваше з'єднання з цим сайтом <b>не захищено</b>. This is your <b>%1</b> visit of this site. Це Ваш <b>%1</b> візит до цього сайту. You have <b>never</b> visited this site before. Ви <b>ніколи</b>раніше не відвідували цей сайт. first перший second другий third третій SourceViewer Source of Вихідний код File Файл Load in page Завантажити в сторінку Save as... Зберегти як... Close Закрити Edit Редагувати Undo Відмінити дію Redo Повторити дію Cut Вирізати Copy Копіювати Paste Вставити Select All Вибрати все Find Знайти Go to Line... Перейти до рядка... View Вигляд Reload Оновити Editable Може редагуватись Word Wrap Переносити слова Source loaded in page Вихідний код завантажено в сторінку Cannot load in page. Page has been closed. Неможливо завантажити в сторінку. Сторінка була закрита. Save file... Зберегти файл... Error! Помилка! Cannot write to file! Неможливо записати до файлу! Error writing to file Помилка запису до файлу Source successfully saved Вихідний код успішно збережено Source reloaded Вихідний код оновлено Cannot reload source. Page has been closed. Неможливо оновити вихідний код. Сторінка була закрита. Editable changed "Може редагуватись" змінено Word Wrap changed "Переносити слова" змінено Enter line number Введіть номер рядка SourceViewerSearch Search: Пошук: Search... Пошук... Whole words Цілі слова SpeedDial Image files Файли зображень Select image... Оберіть зображення... Unable to load Не вдається завантажити SpellCheckDialog SpellCheck Перевірка правопису <b>Dictionary path</b> <b>Шлях до словника</b> Change... Змінити... <b>User dictionary</b> <b>Словник користувача</b> Add Додати Remove Видалити Using Hunspell library Використання бібліотеки Hunspell Choose dictionary path... Оберіть шлях до словника... Add new word... Додати нове слово... Add new word: Додати нове слово: Speller No suggestions Нема пропозицій Add to dictionary Додати до словника Settings Налаштування SqueezeLabelV2 Copy Копіювати SslErrorDialog SSL Certificate Error! Помилка SSL-сертифіката! Only for this session Тільки для цієї сесії TabBar &New tab &Нова вкладка &Stop Tab &Зупинити вкладку &Reload Tab &Перезавантажити вкладку &Duplicate Tab &Дублювати вкладку D&etach Tab Від&чепити вкладку Un&pin Tab &Відкріпити вкладку &Pin Tab За&кріпити вкладку Re&load All Tabs Переза&вантажити всі вкладки &Bookmark This Tab Дода&ти до закладок цю вкладку Bookmark &All Tabs Додати до закладок &всі вкладки Close Ot&her Tabs Закрити &інші вкладки Cl&ose З&акрити Reloa&d All Tabs Перезаванта&жити всі вкладки Restore &Closed Tab Відновити зак&риту вкладку Close Tabs Закрити вкладки Do you really want to close other tabs? Справді бажаєте закрити інші вкладки? TabWidget New Tab Нова вкладка List of tabs Перелік вкладок Loading... Завантажується... No Named Page Безіменна сторінка Currently you have %1 opened tabs Наразі у Вас відкрито %1 вкладок New tab Нова вкладка Empty Порожня Restore All Closed Tabs Відновити всі закриті вкладки Clear list Очистити перелік TabbedWebView Loading... Завантажується... %1 - QupZilla %1 - QupZilla Inspect Element Перевірити елемент ThemeManager <b>Name:</b> <b>Назва:</b> <b>Author:</b> <b>Автор:</b> <b>Description:</b> <b>Опис:</b> License Ліцензія ToolButton Stop Зупинити Reload Перезавантажити Updater Update available Оновлення доступно New version of QupZilla is ready to download. Нова версія QupZill'и готова до завантаження. Update Оновлення UserAgentDialog User Agent Manager Менеджер User-Agent’ів Change global User Agent Змінити глобального User-Agent’а Use different User Agents for specified sites Використовувати інакшого User-Agent’а для окремих сайтів Site Сайт User Agent User-Agent Add Додати Remove Видалити Edit Редагувати Add new site Додати новий сайт Edit site Редагувати сайт Site domain: Домен сайту: User Agent: User Agent: WebInspectorDockWidget Web Inspector Веб-інспектор WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? QupZilla не може управитись з посиланнями <b>%1:</b>. Шукане посилання <ul><li>%2</li></ul>. Чи хочете Ви аби QupZilla спробувала відкрити це посилання за допомогою системної програми? Remember my choice for this protocol Запам'ятати мій вибір для цього протоколу External Protocol Request Запит зовнішнього протоколу To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) Щоб показати цю сторінку, QupZilla мусить перенадіслати запит, який зробить це знову (наприклад, для пошуку або для замовлення, які були зроблені раніше.) Confirm form resubmission Підтвердити повторне надсилання форми Select files to upload... Оберіть файли для завантаження... Server refused the connection Сервер відмовив у з'єднанні Server closed the connection Сервер закрив з'єднання Server not found Сервер не знайдено Connection timed out Час з'єднання сплив Untrusted connection Ненадійне з'єднання Temporary network failure Тимчасова помилка мережі Proxy connection refused У проксі-з'єднанні відмовлено Proxy server not found Проксі-сервер не знайдено Proxy connection timed out Час проксі-з'єднання сплив Proxy authentication required Необхідна проксі-автентифікація Content not found Контент не знайдено Unknown network error Невідома мережна помилка AdBlocked Content Контент заблоковано AdBlock'ом Blocked by <i>%1</i> Заблоковано <i>%1</i> Content Access Denied У доступі до контенту відмовлено Error code %1 Код помилки %1 Failed loading page Не вдалося завантажити сторінку QupZilla can't load page. QupZilla не може завантажити сторінку. QupZilla can't load page from %1. QupZilla не може завантажити сторінку з %1. Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com Перевірте адресу на друкарські помилки, на кшталт <b>ww.</b>example.com замість <b>www.</b>example.com If you are unable to load any pages, check your computer's network connection. Якщо Ви не можете завантажити жодну сторінку, перевірте мережеве з'єднання Вашого комп'ютера. If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. Якщо Ваш комп'ютер або мережа захищені файєрволом або проксі, переконайтесь, що QupZill'і дозволений доступ до Мережі. Try Again Спробуйте знову JavaScript alert Тривога JavaScript Prevent this page from creating additional dialogs Перешкоджати створенню додаткових діалогів на цій сторінці Choose file... Оберіть файл... Cannot read data from <b>%1</b>. Upload was cancelled! Неможливо прочитати дані з <b>%1</b>. Вивантаження було скасовано! Cannot read file! Неможливо прочитати файл! WebSearchBar Manage Search Engines Керування пошуковими двигунами Add %1 ... Додати %1 ... Paste And &Search Вставити і &Шукати Clear All Очистити все Show suggestions Показувати підказки Search when engine changed Перешукати коли двигун змінюється WebView No Named Page Безіменна сторінка Create Search Engine Створити пошуковий двигун Cut Вирізати Copy Копіювати Paste Вставити Select All Вибрати все Default За замовчуванням Left to Right Зліва направо Right to Left Справа наліво Bold Жирний Italic Похилий Underline Підкреслений &Reload &Перезавантажити S&top &Зупинити Delete Видалити &Back &Назад &Forward &Вперед This frame Цей фрейм Show &only this frame Показати &тільки цей фрейм Show this frame in new &tab Показати цей фрейм в новій &вкладці Print frame Надрукувати фрейм Zoom &in З&більшити &Zoom out &Зменшити Reset Відновити Show so&urce of frame Показати &вихідний код фрейму Book&mark page Додати &закладку на сторінку &Save page as... &Зберегти сторінку як... &Copy page link &Копіювати посилання на сторінку Send page link... Відправити посилання на сторінку... &Print page &Надрукувати сторінку Select &all Виділити &все Validate page Перевірити достовірність сторінки Show so&urce code Показати &вихідний код Show info ab&out site Показати інформацію &про сайт Open link in new &tab Відкрити посилання в новій &вкладці Open link in new &window Відкрити посилання в новому &вікні B&ookmark link Додати &закладку на посилання &Save link as... &Зберегти посилання як... Send link... Відправити посилання... &Copy link address &Копіювати адресу посилання Show i&mage Показати &зображення Copy im&age Копіювати &зображення Copy image ad&dress Копіювати &адресу зображення &Save image as... &Зберегти зображення як... Send image... Відправити зображення... Send text... Відправити текст... Google Translate Google-переклад Dictionary Словник Go to &web address Перейти до &веб-адреси Search "%1 .." with %2 Шукати "%1 .." в %2 Search with... Шукати з... &Play &Грати &Pause &Пауза Un&mute &Увімкнути звук &Mute &Вимкнути звук &Copy Media Address &Копіювати адресу медіа &Send Media Address &Відіслати адресу медіа Save Media To &Disk Зберегти медіаконтент на &диск Check &Spelling Перевіряти &правопис Languages Мови jsAlert Prevent this page from creating additional dialogs Перешкоджати створенню додаткових діалогів на цій сторінці qupzilla-1.6.0/translations/zh_CN.ts000066400000000000000000010502771226107126500174670ustar00rootroot00000000000000 AboutDialog About QupZilla 关于 QupZilla Authors 作者 Authors and Contributors 作者及贡献者 < About QupZilla < 关于 QupZilla <p><b>Application version %1</b><br/> <p><b>程序版本 %1</b><br/> <b>WebKit version %1</b></p> <b>WebKit 版本 %1</b></p> <small>Build time: %1 </small></p> <small>构建时间:%1</small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>主要开发人员:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>贡献人员:</b><br/>%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>翻译人员:</b><br/>%1</p> AcceptLanguage Preferred Languages 惯用语言 Add... 添加… Remove 删除 Up 上移 Down 下移 Personal [%1] 自定义 [%1] AdBlockAddSubscriptionDialog Add Subscription 添加订阅 Title: 标题: Address: 网址: Add new subscription to AdBlock: 添加新的订阅到 AdBlock: AdBlockCustomList Custom Rules 自定义规则 AdBlockDialog AdBlock Configuration AdBlock 配置 Enable AdBlock 启用 AdBlock Search... 查找… Options 选项 AdBlock AdBlock Use only essential part of EasyList (for performance reasons) Add Rule 添加规则 Remove Rule 删除规则 Add Subscription 添加订阅 Remove Subscription 删除订阅 Update Subscriptions 更新订阅 Learn about writing rules... 了解如何编写规则… AdBlockIcon AdBlock lets you block unwanted content on web pages AdBlock 为您阻止网页上任何不需要的内容 Blocked popup window 被阻止的弹窗 AdBlock blocked unwanted popup window. 被 AdBlock 阻止的不需要的弹窗。 AdBlock AdBlock Show AdBlock &Settings 显示 AdBlock 设置 (&S) Disable on %1 禁用于 %1 Disable only on this page 在此页停用 AdBlock Blocked Popup Windows 被阻止的弹窗 %1 with (%2) %1(触发 %2) No content blocked 没有内容受阻 Blocked URL (AdBlock Rule) - click to edit rule 受阻网址-单击以编辑规则 AdBlockManager Do you want to add <b>%1</b> subscription? 您想添加 <b>%1</b> 的订阅吗? AdBlock Subscription AdBlock 订阅 EasyList EasyList AdBlockTreeWidget Add Rule 添加规则 Remove Rule 删除规则 Add Custom Rule 添加自定义规则 Please write your rule here: 制定自定义规则: %1 (recently updated) %1(最近更新) AddAcceptLanguage Add Language 添加语言 Choose preferred language for web sites 网页首选语言 Personal definition: 自定义语言代码: AesInterface Warning! 警告! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. 数据是由更新的 QupZilla 版本加密的, 请安装 QupZilla 的最新版本。 AutoFill Database (plaintext) 数据库(纯文本) Database (encrypted) 数据库(加密) Enter Master Password 输入主密码 Permission is required, please enter Master Password: 访问许可被限制,请输入主密码: Warning! 警告! Entered password is wrong! 密码输错了! This backend needs a master password to be set! QupZilla just switches to its default backend AutoFillManager Passwords are stored in: 密码存储在: Change backend Backend options Passwords 密码 Server 服务器 Username 用户名 Password 密码 Import/Export 导入/导出 Show Passwords 显示密码 Edit 编辑 Remove 删除 Remove All 全部删除 Exceptions 例外 Import Passwords from File... 从文件导入密码… Export Passwords to File... 导出密码到文件… Search 搜索 Change backend... Change backend: Are you sure that you want to show all passwords? 您确定要显示所有密码? Hide Passwords 隐藏密码 Confirmation 请确认 Are you sure to delete all passwords on your computer? 您确定要删除计算机上的所有密码吗? Edit password 编辑密码 Change password: 更改密码: Choose file... 选择文件… Cannot read file! 无法读取文件! Successfully imported 成功导入 Error while importing! 导入出错! Cannot write to file! 无法写入到文件! Successfully exported 成功导出 AutoFillNotification Update 更新 (&U) Remember 记住 (&R) Never For This Site 永不记住此站点的密码 (&e) Not Now 暂不 on %1  %1 上 for <b>%1</b> <B>%1</B> Do you want QupZilla to update saved password %1? 您希望 QupZilla 更新已保存的 %1 的密码吗? Do you want QupZilla to remember the password %1 %2? 您希望 QupZilla 记住%2 %1 的密码吗? AutoFillWidget Choose username to login 选择要登录的用户 Login 登录 Login as <b>%1</b> 登录<B>%1</B> BookmarkIcon Bookmark this Page 将本页加为书签 Edit this bookmark 编辑此书签 BookmarksImportDialog Import Bookmarks 导入书签 <b>Import Bookmarks</b> <b>导入书签</b> From File 从文件 Internet Explorer Choose browser from which you want to import bookmarks: 请选择书签导入来源: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>注意:</b>目前,只要选择“从 HTML 文件导入”,就能导入书签文件夹。 Choose... 选择… Try to fetch icons for all bookmarks (may take a while) Fetching icons, please wait... 正在获取图标,请稍候… Title 标题 Url 网址 Next 下一步 Cancel 取消 <b>Importing from %1</b> <b>从%1导入</b> Finish 完成 Please press Finish to complete importing process. 请按“完成”以结束导入过程。 Error! 出错! The file doesn't contain any bookmark. 该文件不包含任何书签。 Choose directory... 选择目录… Choose file... 选择文件… Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox 浏览器的书签文件通常位于 <b>places.sqlite</b> SQLite 数据库。该文件通常位于 Please choose this file to begin importing bookmarks. 请选择此类文件开始导入书签。 Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in 谷歌浏览器(Google Chrome)的书签文件通常位于 <b>Bookmarks</b> 文本文件。该文件通常位于 Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera 的书签文件通常位于 <b>bookmarks.adr</b> 文本文件。该文件通常位于 You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes 您可以从任何支持 HTML 的浏览器中导入书签。此文件通常使用这些后缀: Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Explorer 的书签文件通常位于<b>收藏夹</b>文件夹。该文件夹通常位于 Please choose this folder to begin importing bookmarks. 选择此类文件夹开始导入书签。 No Error 未出错 Unable to open file. 无法打开文件。 Cannot evaluate JSON code. 无法执行 JSON 代码。 File does not exist. 文件不存在。 Unable to open database. Is Firefox running? 无法打开数据库。Firefox 是否正在运行? Directory does not exist. The directory does not contain any bookmarks. BookmarksManager Bookmarks 书签 Optimize Database 优化数据库 Import Bookmarks 导入书签 Add Folder 添加文件夹 Title 标题 Url 网址 Expand All 展开所有 Collapse All 收起所有 Add new folder 添加新文件夹 Choose parent folder for new folder: 为新文件夹选择父文件夹: Choose name for new bookmark folder: 输入新书签文件夹名称: Add new subfolder 添加新子文件夹 Choose name for new subfolder in bookmarks toolbar: 输入书签工具栏中新子文件夹的名称: Rename Folder 重命名文件夹 Choose name for folder: 输入新文件夹名称: Add Subfolder 添加子文件夹 Rename folder 重命名文件夹 Remove folder 删除文件夹 Open link in current &tab 在当前标签页打开链接 (&T) Open link in &new tab 在新标签页打开链接 (&N) Move bookmark to &folder 移动至文件夹 (&F) Change icon 更改图标 Rename bookmark 重命名书签 Remove bookmark 删除书签 <b>Warning: </b>You already have bookmarked this page! <b>警告:</b>您以前已将此页加为书签! Choose name and location of this bookmark. 选择书签的名称和位置。 Add New Bookmark 添加新书签 Choose folder for bookmarks: 为书签选择文件夹: Bookmark All Tabs 为所有标签页加为书签 BookmarksModel Bookmarks In Menu (书签菜单根目录) Bookmarks In ToolBar 书签工具栏 Unsorted Bookmarks 未分类书签 BookmarksSideBar Search... 查找… Open link in current &tab 在当前标签页打开链接 (&T) Open link in &new tab 在新标签页打开链接 (&N) Copy address 复制网址 &Delete 删除 (&D) BookmarksToolbar &Bookmark Current Page 将当前页加为书签 (&B) Bookmark &All Tabs 将全部标签页加为书签 (&A) &Organize Bookmarks 管理书签 (&O) Show Most &Visited 显示最常访问 (&V) Show Only Icons 只显示图标 &Hide Toolbar 隐藏工具栏 (&H) Open bookmark 打开书签 Open bookmark in new tab 在新标签页打开书签 Move right 右移 Move left 左移 Edit bookmark 编辑书签 Remove bookmark 删除书签 Edit bookmark: 编辑书签: Title: 标题: Url: 网址: Edit Bookmark 编辑书签 Most visited 最常访问 Sites you visited the most 您最常访问的网站 Empty (无页面) BookmarksTree Bookmarks 书签 New Folder... 新建文件夹… BookmarksWidget Add to Speed Dial 添加到快速拨号 Save 保存 Name: 名称: Folder: 文件夹: Remove from Speed Dial 从快速拨号中移除 Remove 删除 BrowsingLibrary Library Search... 查找… History 历史 Bookmarks 书签 RSS RSS 订阅 Database Optimized 优化数据库 Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 数据库成功优化。<br/><br/><b>优化前数据库大小:</b>%1<br/><b>优化后数据库大小:</b>%2 CertificateInfoWidget <b>Issued To</b> <b>发行给<b> Common Name (CN): 通用名(CN): Organization (O): 组织(O): Organizational Unit (OU): 组织单位(OU): Serial Number: 序列号: <b>Issued By</b> <b>发行者<b> <b>Validity</b> <b>有效性</b> Issued On: 签发日期:  Expires On: 过期日期: ClearPrivateData Clear Recent History 清除最近历史记录 Choose what you want to delete: 选择您想要删除的内容: Clear history 清除历史 Clear cache 清除缓存 Clear icons 清除图标 <b>Clear Recent History</b> <b>清除最近历史记录</b> Earlier Today 今天较早时 Week 本周 Month 本月 All 全部 Clear web databases 清除 Web 数据库 Clear local storage 清除本地存储 Clear cookies 清除 Cookie ClickToFlash Object blocked by ClickToFlash 被 ClickToFlash 阻止的对象 Show more information about object 显示有关对象的更多信息 Delete object 删除对象 Add %1 to whitelist 添加 %1 到白名单 Flash Object Flash 对象 <b>Attribute Name</b> <b>属性名</b> <b>Value</b> <b>数值</b> No more information available. 没有更多信息。 CookieManager Cookies Cookie Stored Cookies 存储的 Cookie Find: 查找: These cookies are stored on your computer: 这些 Cookie 存储在您的计算机上: Server 服务器 Cookie name Cookie 名称 Name: 名称: Value: 数值: Server: 服务器: Path: 路径: Secure: 安全: Expiration: 有效期: <cookie not selected> 〈没有选择 Cookie〉 Remove all cookies 删除所有 Cookie Remove cookies 删除 Cookie Cookie Filtering 过滤 Cookie <b>Cookie whitelist</b> <b>Cookie 白名单</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) 总是接受这些服务器的 Cookie(即使您已禁用保存 Cookie) Add 添加 Remove 删除 <b>Cookie blacklist</b> <b>Cookie 黑名单</b> Cookies from these servers will NEVER be accepted 永远<B>不</B>接受这些服务器的 Cookie Settings 设置 <b>Cookie Settings</b> <b>Cookie 设置</b> Allow storing of cookies 允许储存 Cookie Delete cookies on close 关闭时清除 Cookie Match domain exactly 精确核对域名 Filter tracking cookies 过滤 Tracking Cookie(跟踪 Cookie) <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! <b>警告:</b>“精确核对域名”和“过滤 Tracking Cookie(跟踪 Cookie)”选项可能导致拒绝一些站点的 Cookie。如果您发现了关于 Cookie 的问题,先试试关闭这两个选项! Search 输入查找内容 Confirmation 请确认 Are you sure to delete all cookies on your computer? 您确定要删除本浏览器中的所有 Cookie 吗? Secure only 只显示安全的 All connections 所有连接 Session cookie 临时 Cookie Remove cookie 删除 Cookie Add to whitelist 添加到白名单 Add to blacklist 添加到黑名单 DownloadFileHelper Save file as... 另存为… NoNameDownload 无命名下载 DownloadItem Remaining time unavailable 剩余时间未知 Error: Cannot write to file! 错误:无法写入文件! Done - %1 完成-%1 Cancelled 已取消 few seconds 几秒钟 %n seconds %n minutes %n hours Unknown speed 未知速度 kB/s MB/s GB/s Unknown size 未知大小 %2 - unknown size (%3) %2-未知大小(当前速率%3) Remaining %1 - %2 of %3 (%4) 剩余 %1-已下载%3中的%2(当前速率%4) Cancelled - %1 已取消-%1 Delete file 删除文件 Do you want to also delete dowloaded file? 要同时删除已下载的文件吗? Open File 打开 (&O) Open Folder 打开文件夹 (&F) Go to Download Page 转到下载页面 (&G) Copy Download Link 复制下载链接 (&L) Cancel downloading 取消下载 (&C) Remove 从列表中移除 (&e) Error 错误 Not found 未找到文件 Sorry, the file %1 was not found! 对不起,文件 %1 未找到! Error: 错误: DownloadManager Download Manager 下载管理器 Clear 清理 %1% of %2 files (%3) %4 remaining %2个文件中的%1%(当前速率%3)剩余时间%4 %1% - Download Manager %1%-下载管理器 Download Finished 下载完成 All files have been successfully downloaded. 所有文件均已成功下载。 Warning 警告 Are you sure to quit? All uncompleted downloads will be cancelled! 下载未完成,您确定要退出吗?未完成的下载将被取消! DownloadOptionsDialog Opening 正打开 Copy download link You have chosen to open 您选择要打开 which is a: 文件类型与大小: What should QupZilla do with this file? 需要个文件 QupZilla 怎么处理此文件? Open... 打开… Save File 保存文件 Download with External Manager 使用外部管理器下载 from: 它来自: Opening %1 正在打开 %1 Download link copied. EditSearchEngine Name: 名称: Url: 网址: Shortcut: 快捷键: Icon: 图标: <b>Note: </b>%s in url or post data represent searched string Post Data: Change... 更改… FileSchemeReply No Error 无错误 Up to higher level directory 上级目录 Show hidden files 显示隐藏文件 Name 名称 Size 大小 Last modified 最后修改 Index for %1 %1 的索引 Folder is empty. 文件夹是空的。 FtpDownloader Cancelled! 已取消! FtpSchemeReply Up to higher level directory 上级目录 Show hidden files 显示隐藏文件 Name 名称 Size 大小 Last modified 最后修改 Index for %1 %1 的索引 Folder is empty. 文件夹是空的。 Unknown command 未知命令 HTML5PermissionsDialog HTML5 Permissions HTML5 许可 Notifications 通知 Site 网站 Behaviour 行为 Remove 删除 Geolocation 地理位置 Allow 允许 (&A) Deny 拒绝 (&D) HTML5PermissionsNotification Remember 记住 (&R) Allow 允许 (&A) Deny 拒绝 (&D) this site 该站点 Allow %1 to show desktop notifications? 允许 %1 显示桌面通知? Allow %1 to locate your position? 允许 %1 锁定您的地理位置? History No Named Page 无命名页面 January 一月 February 二月 March 三月 April 四月 May 五月 June 六月 July 七月 August 八月 September 九月 October 十月 November 十一月 December 十二月 HistoryManager History 历史 Delete 删除 Clear All History 清除全部历史记录 Optimize Database 优化数据库 Confirmation 请确认 Are you sure to delete all history? 您确定要删除全部历史记录吗? HistoryModel Title 标题 Address 网址 Visit Date 访问日期 Visit Count 访问次数 Today 今天 This Week 本周 This Month 本月 HistorySideBar Search... 查找… HistoryView Open link in current tab 在当前标签页打开链接 (&T) Open link in new tab 在新标签页打开链接 (&N) Copy title 复制标题 Copy address 复制网址 Remove 删除 IconChooser Choose icon... 选择图标… From file 从文件 Image (.png, .jpg, .jpeg, .gif) 图像(.png, .jpg, .jpeg, .gif) Choose file... 选择文件… From database 从数据库 Site Url: 网站地址: Image files 图像文件 JsOptions JavaScript Options JavaScript 选项 Allow JavaScript to: 允许 JavaScript 进行如下操作: Close windows 关闭窗口 Open popup windows 打开弹窗 Change window size 改变窗口大小 Hide menu bar 隐藏菜单栏 Hide status bar 隐藏状态栏 Hide tool bar 隐藏工具栏 Access clipboard 访问剪贴板 LicenseViewer License Viewer 许可协议查看器 LocationBar Enter URL address or search on %1 输入网址或在 %1 上搜索 Paste And &Go 粘贴并转到 (&G) Clear All 全部清除 .co.uk Append domain name on ALT + Enter = Should be different for every country .com.cn Show information about this page 显示此页信息 LocationCompleterView Switch to tab 切换到标签页 MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? QupZilla 不是您的默认浏览器,是否将其设为您的默认浏览器? Always perform this check when starting QupZilla. 每次启动 QupZilla 时总是检查此设定。 Default Browser 默认浏览器 QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. QupZilla 是新出、高速、安全的开源 WWW 浏览器。QupZilla 基于 GPL 协议第3版或(如果您需要)任何之后的版本。它使用 WebKit 排版引擎。 MasterPasswordDialog Encrypted DataBase Settings Set/Change Master Password... Clear Master Password... This backend does not work without a master password. This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. Current Password: New Password: Confirm Password: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. Warning! You entered a wrong password! New/Confirm password fields do not match! Some data has not been decrypted. The master password was not cleared! Are you sure to clear master password and decrypt data? NavigationBar No Named Page 无命名页面 Back 后退 Forward 前进 Home 主页 New Tab 新建标签页 Main Menu 主菜单 Exit Fullscreen 退出全屏 Clear history 清除历史列表 NetworkManager SSL Certificate Error! SSL 证书错误! The page you are trying to access has the following errors in the SSL certificate: 您试图访问的网页有 SSL 证书错误: <b>Organization: </b> <b>机构:</b> <b>Domain Name: </b> <b>域名:</b> <b>Expiration Date: </b> <b>过期日期:</b> <b>Error: </b> <b>错误:</b> Would you like to make an exception for this certificate? 您想为这个证书添加例外吗? Authorisation required 要求授权 Username: 用户名: Password: 密码: Save username and password on this site 保存您在本网站的用户名和密码 A username and password are being requested by %1. The site says: "%2" %1请求输入用户名和密码。该网站信息:“%2” FTP authorisation required FTP 要求授权 Login anonymously 匿名登录 A username and password are being requested by %1:%2. %1请求输入用户名和密码:%2。 Proxy authorisation required 代理服务器要求授权 Remember username and password for this proxy. A username and password are being requested by proxy %1. 代理“%1”要求用户名和密码。 PageScreen Page Screen 网页屏幕 Format: 格式: Location: 位置: Browse... 浏览… Save as %1 另存为 %1 Choose location... 选择位置… File '%1' already exists. Do you want to overwrite it? 文件“%1”已存在,您想覆盖掉它吗? File already exists 文件已存在 PluginsList Application Extensions 应用扩展 Allow Application Extensions to be loaded 允许加载应用扩展 Settings 设置 WebKit Plugins WebKit 插件 <b>Click To Flash Plugin</b> <b>ClickToFlash(点击运行 Flash)插件</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon.  ClickToFlash(点击运行 Flash)插件会阻止 Flash 的播放,但您可以随时按一下 Flash 播放图标来手动加载它。 Whitelist 白名单 Add 添加 Remove 移除 Allow Click To Flash 启用 ClickToFlash(点击运行 Flash)扩展 PluginsManager Add site to whitelist 将网站添加到白名单 Server without http:// (ex. youtube.com) 不需要“http://”(如:youtube.com) Error! 出错! Cannot load extension! 无法加载扩展! PopupWebView Inspect Element 检察元素 PopupWindow File 文件[&F] &Save Page As... 页面另存为 (&A)… Save Page Screen 保存网页屏幕… Send Link... 发送链接… &Print... 打印 (&P)… Close 关闭 Edit 编辑[&E] &Undo 撤消 (&U) &Redo 重做 (&R) &Cut 剪切 (&t) C&opy 复制 (&C) &Paste 粘贴 (&P) Select All 全选 [&A] Find 查找 [&F] View 查看[&V] &Stop 停止 (&S) &Reload 刷新 (&R) Zoom &In 放大 (&+) Zoom &Out 缩小 (&-) Reset 重置大小 (&0) &Page Source 源代码 (&o) %1 - QupZilla %1 - QupZilla Preferences Preferences 首选项 QupZilla QupZilla General 常规 Appearance 外观 Tabs 标签页 位置栏 Browsing 浏览 Fonts 字体 Keyboard Shortcuts 快捷键 Downloads 下载 Password Manager 密码管理器 Privacy 隐私 Notifications 通知 Extensions 附加组件 Other 其它 Use current 使用当前页 Note: You cannot delete active profile. 注意:不能删除活动配置文件。 Create New 新建 Delete 删除 <b>Launching</b> <b>启动</b> After launch: 启动 QupZilla 后: Open blank page 打开空白页 Open homepage 打开主页 Open speed dial 打开快速拨号 Restore session 恢复会话 Homepage: 主页: On new tab: 新建标签页时: Open blank tab 打开空标签页 Open other page... 打开其它网页… <b>Profiles</b> <b>配置文件</b> Startup profile: 启用配置文件: Check for updates on start 启动时检查更新 Active profile: 当前配置文件: In order to change language, you must restart browser. 要改变语言,您必须重新启动浏览器。 <b>Language</b> <b>语言</b> Available translations: 可用翻译: Don't load tabs until selected 选择标签页前不要加载 Check to see if QupZilla is the default browser on startup 启动时检查 QupZilla 是否为您的默认浏览器 Check Now 立即检查 Themes 主题 Advanced options 高级选项 <b>Browser Window</b> <b>浏览器窗口</b> Show StatusBar on start 显示状态栏 Show Bookmarks ToolBar on start 显示书签工具栏 Show Navigation ToolBar on start 显示导航工具栏 <b>Navigation ToolBar</b> <b>导航工具栏</b> Show Home button 显示主页按钮 Show Back / Forward buttons 显示后退/前进按钮 <b>Background<b/> <b>背景<b/> Use transparent background 使用透明背景 Show web search bar 显示网页搜索栏 Show Add Tab button 显示新建标签页按钮 Show Reload / Stop buttons 显示刷新/停止按钮 Tabs behaviour 标签页行为 Show tab previews 显示标签页预览 Make tab previews animated 动画标签栏预览 Hide tabs when there is only one tab 只有一个标签页时隐藏标签栏 Activate last tab when closing active tab 关闭当前标签页时激活上次使用的标签页 Open new tabs after active tab 在当前标签页右侧打开新标签页(链接) Open new empty tabs after active tab 在当前标签页右侧新增空白标签页 Automatically switch to newly opened tab 自动切换到新打开的标签页 Don't quit upon closing last tab 关闭最后一个标签页后不退出 Ask when closing multiple tabs 关闭多个标签页时询问(如果启动选项中未选“恢复会话”) Closed tabs list instead of opened in tab bar (在标签栏右侧下拉菜单中)列出已关闭的标签页而非已打开的标签页 Address Bar behaviour 位置栏行为 Suggest when typing into address bar: 在位置栏输入时提供建议: History and Bookmarks 历史和书签 History 历史 Bookmarks 书签 Nothing Press "Shift" to not switch the tab but load the url in the current tab. 按住“Shift”键来在当前标签页中打开自动完成的 URL,而不切换标签页。 Propose to switch tab if completed url is already loaded. 当自动完成的 URL 已经在其它标签页载入时切换到该标签页。 Always show go icon 总是显示“转到”按钮 Select all text by double clicking in address bar 双击位置栏时选择所有文字 Select all text by clicking in address bar 单击位置栏时选择所有文字 Search with Default Engine 使用默认引擎搜索 Show loading progress in address bar 在位置栏中显示载入进度(不用于脚本载入进度) Fill 填充 Bottom 底部 Top 顶部 Custom color: 自定义颜色: Select color 选择颜色 ... Reset 重设 Web Configuration Web 配置 Allow Netscape Plugins (Flash plugin) 允许 NPAPI 插件(如 Flash 插件) Allow JavaScript 允许 JavaScript Allow JAVA 允许 Java Allow DNS Prefetch 允许 DNS 预解析 Enable XSS Auditing try to detect possible XSS attacks when executing javascript 启用 XSS 审计 Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements 打印 HTML 元素的背景 Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key Tab 焦点中包括链接 Animated scrolling 动画滚动 Enable caret browsing 启用光标浏览 Enable spatial navigation 使用方向键导航! Zoom text only 缩放时仅缩放文本 Mouse wheel scrolls 每次鼠标滚轮滚动 lines on page Default zoom on pages: 默认网页缩放: Local Storage 本地存储 Maximum 不超过 50 MB 50 MB 1 1 Maximum pages in cache: 至多缓存网页数: Allow storing network cache on disk 允许在磁盘上存储网络缓存 Store cache in: 将缓存保存在: Allow saving history 允许保存历史记录 Delete history on close 关闭时删除历史记录 Allow local storage of HTML5 web content 允许本地存储 HTML5 内容 Delete locally stored HTML5 web content on close 关闭时删除本地存储的 HTML5 网页内容 Delete now 立即删除 Proxy Configuration 代理服务器配置 Proxy Auto-Config (.pac) file 代理服务器自动配置文件(*.PAC) Reload 重新载入 HTTP HTTP SOCKS5 SOCKS5 Port: 端口: Username: 用户名: Password: 密码: Don't use on: 不用代理的网址: Manual configuration 手动配置 System proxy configuration 系统代理配置 Do not use proxy 不使用代理 <b>Exceptions</b> <b>例外</b> Server: 服务器: Use different proxy for https connection 对 HTTPS 连接方式使用不同代理服务器 Use script for automatic configuration: 使用自动配置脚本: <b>Font Families</b> <b>字体</b> Standard 标准 Fixed 等宽 Serif 衬线 Sans Serif 无衬线 Cursive 草书 Fantasy 艺术字 <b>Font Sizes</b> <b>字号</b> Fixed Font Size 固定字号 Default Font Size 默认字号 Minimum Font Size 最小字号 Minimum Logical Font Size 逻辑字体最小字号 <b>Shortcuts</b> <B>快捷键</B> Switch to tabs with Alt + number of tab 使用“Alt + 标签页序数”快捷键来切换到相应标签页 Load speed dials with Ctrl + number of speed dial 使用“Ctrl + 序数”快捷键来载入相应的快速拨号 Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>下载位置</b> Ask everytime for download location 每次询问下载位置 Use defined location: 使用选定的位置: <b>Download Options</b> <b>下载选项</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) 使用操作系统的文件对话框 (有可能在下载 SSL 保护内容时出问题) Close download manager when downloading finishes 下载完成后关闭下载管理器 <b>External download manager</b> <b>外部下载管理器</b> Use external download manager 使用外部下载管理器 Executable: 可执行文件: Arguments: 参数: Leave blank if unsure 如果不确定请留空 <b>%d</b> will be replaced with URL to be downloaded <B>%d</B>将被新下载的 URL 替换 <b>AutoFill options</b> <b>自动填写选项</b> Allow saving passwords from sites 允许保存网站密码 Send Referer header to servers 发送“引用者”标头到服务器 <b>Cookies</b> <b>Cookie</b> Send Do Not Track header to servers 发送“请勿跟踪”标头到服务器 <b>Other</b> <b>其它</b> Manage CA certificates 管理 CA(数字证书认证机构)证书 Certificate Manager 证书管理器 <b>SSL Certificates</b> <b>SSL 证书</b> <b>JavaScript</b> <B>JavaScript</B> Manage JavaScript privacy options 管理 JavaScript 隐私选项 JavaScript options JavaScript 选项 Cookies Manager Cookie 管理器 Manage Cookies 管理 Cookie <b>HTML5 Permissions</b> <B>HTML5 批准</B> Manage HTML5 permissions 管理 HTML5 许可 HTML5 Permissions HTML5 批准 <b>Notifications</b> <b>通知</b> Use OSD Notifications 使用 OSD(屏显气泡)通知 Use Native System Notifications (Linux only) 使用操作系统原生通知(仅供 Linux 使用) Do not use Notifications 不要使用通知 Expiration timeout: 到期超时: seconds <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>注意:</b>您可以在屏幕上拖动以改变 OSD(屏显气泡)​​通知的位置。 StyleSheet automatically loaded with all websites: 所有网站自动加载的 CSS 样式表: Languages 语言 <b>Preferred language for web sites</b> <b>显示页面的首选语言</b> <b>Change browser identification</b> <b>变更浏览器标识</b> User Agent Manager UA(用户代理)字符串管理器 Default 默认 Set as default 设为默认 OSD Notification OSD(屏显气泡)通知 Drag it on the screen to place it where you want. 在屏幕上拖动它到您想要的地方。 Choose download location... 请选择下载位置… Choose stylesheet location... 请选择 CSS 样式表位置… Deleted 已删除 Choose executable location... 请选择可执行文件… Choose cache path... 选择缓存路径… New Profile 新建配置文件 Enter the new profile's name: 输入新配置文件的名称: Error! 错误! This profile already exists! 此配置文件已经存在! Cannot create profile directory! 无法创建配置文件目录! Confirmation 请确认 Are you sure to permanently delete "%1" profile? This action cannot be undone! 您确定要永久删除用户配置文件“%1”吗?此操作无法恢复! Select Color 选择颜色 QObject Native System Notification 本机系统通知 Save file as... 文件另存为… The file is not an OpenSearch 1.1 file. 该文件不是 OpenSearch 1.1 文件。 <not set in certificate> 〈未于证书中给定〉 Unknown size 大小未知 KB MB GB Executable: 可执行文件: Arguments: 参数: Cannot start external program 无法启动外部程序 Cannot start external program! %1 无法启动外部程序!%1 QtWin Open new tab 打开新标签页 Opens a new tab if browser is running 打开新标签页(若浏览器正运行) Open new window 打开新窗口 Opens a new window if browser is running 打开新窗口(若浏览器正运行) Open download manager 打开下载管理器 Opens a download manager if browser is running 打开下载管理器(若浏览器正运行) QupZilla QupZilla QupZilla Private Browsing Enabled 隐私浏览已启用 IP Address of current page 当前页面的 IP 地址 &About QupZilla 关于 QupZilla (&A) Pr&eferences 首选项 (&e) Quit 退出 (&x) &File 文件 (&F) &New Window 新建窗口 (&N) New Tab 新建标签页 (&T) Open Location 打开位置 Open &File... 打开文件 (&O)… Close Tab 关闭标签页 Close Window 关闭窗口 &Save Page As... 页面另存为 (&A)… Save Page Screen 保存网页屏幕… Send Link... 发送链接… &Print... 打印 (&P)… Import bookmarks... 导入书签… &Edit 编辑 (&E) &Undo 撤消 (&U) &Redo 重做 (&R) &Cut 剪切 (&t) C&opy 复制 (&C) &Paste 粘贴 (&P) Select &All 全选 (&A) &Find 查找 (&F) &View 查看 (&V) &Navigation Toolbar 导航工具栏 (&N) &Bookmarks Toolbar 书签工具栏 (&B) Sta&tus Bar 状态栏 (&B) &Menu Bar 菜单栏 (&M) &Tabs on Top 标签页置于顶端 (&T) &Fullscreen 全屏 (&F) &Stop 停止 (&S) &Reload 刷新 (&R) Character &Encoding 字符编码 (&C) Enable &Caret Browsing 启用光标浏览 (&a) Toolbars 工具栏 (&T) Sidebars 侧栏 (&e) Zoom &In 放大 (&+) Zoom &Out 缩小 (&-) Reset 重置大小 (&0) &Page Source 源代码 (&o) Hi&story 历史 (&s) &Back 后退 (&B) &Forward 前进 (&F) &Home 主页 (&H) Show &All History 显示全部历史 (&A) Closed Tabs 最近关闭的标签页 Recently Visited 最近访问 Most Visited 最常访问 &Bookmarks 书签 (&B) Bookmark &This Page 将此页加为书签 (&T)… Bookmark &All Tabs 将所有标签页加为书签 (&A)… Organize &Bookmarks 管理书签 (&B) &Tools 工具 (&T) &Web Search 网页搜索 (&W) Page &Info 网页信息 (&I) &Download Manager 下载管理器 (&D) &Cookies Manager &Cookie 管理器 &AdBlock &AdBlock RSS &Reader RSS 阅读器 (&R) Web In&spector 网页检察器 (&s) Clear Recent &History 清除最近历史记录 (&H)… New &Private Window 新建隐私浏览窗口 (&P) &Help 帮助 (&H) About &Qt 关于 &Qt Information about application 软件信息 Configuration Information 配置信息 Report &Issue 报告问题 (&I) Restore &Closed Tab 还原最近关闭的标签页 (&U) (Private Browsing) (隐私浏览) Empty 空页面 Restore All Closed Tabs 还原全部最近关闭的标签页 Clear list 清除列表 Other 其它 %1 - QupZilla %1 - QupZilla HTML files HTML 文件 Image files 图像文件 Text files 文本文件 All files 全部文件 Open file... 打开文件… QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? 有%1个标签页已打开,(根据您当前的设置)该会话不会被保存。您确定退出 QupZilla 吗? Don't ask again 不要再询问 There are still open tabs 还有很多未关闭的标签页 QupZillaSchemeReply No Error 没有错误 Not Found 未找到 Report Issue 报告问题 If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: 如果您遇到 QupZilla 发生问题,请先尝试禁用全部附加组件。<BR />如果还未能解决问题,请填写此表单: Your E-mail 电子邮箱 Issue type 问题类型 Issue description 问题描述 Send 发送 E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. 可以不输入电子邮箱(但您将收不到反馈)。<BR/><B>注意:</B>请先单击<A Target="_blank" HRef=%1>此处</a>了解如何撰写错误报告。 Please fill out all required fields! 须填写全部必填字段! Start Page 起始页 Search on Web 搜索互联网 Search results provided by DuckDuckGo 搜索结果由 DuckDuckGo 提供 About QupZilla 关于 QupZilla <h1>Private Browsing</h1> <h1>隐私浏览</h1> Information about version 版本信息 Copyright 版权 Version 版本 WebKit version WebKit 版本 Main developer 主要开发者 Contributors 贡献人员 Translators 翻译人员 Speed Dial 快速拨号 Add New Page 添加新网页 Edit 编辑 Remove 删除 Reload 重新载入 Are you sure to remove this speed dial? 您确定要删除此快速拨号吗? Load title from page 从网页载入标题 Url 网址 Title 标题 Apply 应用 Close 关闭 New Page 新增网页 Speed Dial settings 快速拨号设置 Placement: 铺展方式: Auto 居中 Cover 拉伸 Fit 等比例拉伸 Fit Width 齐宽 Fit Height 齐高 Use background image 使用背景图片 Select image 选择图像 Maximum pages in a row: 每排最多页面数: Change size of pages: 更改页面的大小: Center speed dials 居中快速拨号项目 Restore Session 恢复会话 Oops, QupZilla crashed. 糟糕,QupZilla 刚才崩溃了。 We apologize for this. Would you like to restore the last saved state? 对此我们非常抱歉。您想恢复崩溃之前的会话吗? Try removing one or more tabs that you think cause troubles 试着去掉一个或多个可能引起问题的标签页 Or you can start completely new session 或者您可以开始全新会话 Configuration Information 配置信息 This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. 此页面包含 QupZilla 当前配置信息——与排除故障相关。请在提交错误报告时包含这些信息。 Browser Identification 浏览器标识(用户代理字符串) Paths 路径 Build Configuration 构建配置 Preferences 首选项 Option 选项 Value Extensions 附加组件 Name 名称 Author 作者 Description 描述 Application version 程序版本 Qt version Qt 版本 Build time 构建时间 Platform 操作平台 Profile 配置文件 Settings 设置 Saved session 已保存的会话 Pinned tabs 已固定的标签 Data 数据 Themes 主题 Translations 翻译 Disabled 禁用 <b>Enabled</b> <b>启用</b> Debug build 调试构建 WebGL support WebGL 支持 Windows 7 API Windows 7 API KDE integration KDE 整合 Portable build 便携式构建 No available extensions. 无可用附加组件。 RSSManager RSS Reader RSS 阅读器 Empty 空页面 Add feed 添加订阅 Edit feed 编辑订阅 Delete feed 删除订阅 Optimize Database 优化数据库 Reload 重新载入 News 新闻 Loading... 载入中… You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. 您没有任何 RSS 订阅源。<br/> 您可在浏览提供订阅的网站(会在地址栏右侧显示一个 RSS 图标)时添加 RSS 订阅源。 Add new feed 添加新订阅 Please enter URL of new feed: 输入新订阅的 URL: New feed 新订阅 Fill title and URL of a feed: 填写订阅源的标题和 URL: Feed title: 订阅源的标题: Feed URL: 订阅源的 URL: Edit RSS Feed 编辑 RSS 订阅 Open link in current tab 在当前标签页中打开链接 Open link in new tab 在新标签页中打开链接 Error in fetching feed 提取订阅错误 RSS feed duplicated RSS 订阅重复 You already have this feed. 您已有此订阅。 RSSNotification Add this feed into 添加订阅到 Add 添加 RSS feed <b>"%1"</b> RSS 订阅“<b>%1</b>” Internal Reader 内部阅读器 Other... 其它… Liferea not running Liferea 没有运行 Liferea must be running in order to add new feed. 必须在 Liferea 运行时才能添加新订阅。 To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. 添加此 RSS 订阅到其它程序,请使用这些信息:<BR /><BR /><B>标题:</B>%1<BR /><B>URL 网址:</B>%2<BR /><BR />此订阅的 URL 地址已经复制到剪贴板。 Add feed into other application 添加订阅到其它程序 RSSWidget Add RSS Feeds from this site 从这个网站添加 RSS 订阅 Untitled feed 无标题订阅 Add 添加 RecoveryWidget Start New Session 开始新会话 Restore 恢复 Window %1 窗口%1 RegisterQAppAssociation Warning! 警告! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) 出了些问题。请重新安装 QupZilla。 或许以管理员权限运行可以解决问题! RssIcon Add RSS from this page... 从此页添加 RSS 订阅… SSLManager Certificate Manager 证书管理器 CA Authorities Certificates CA 机构证书 Show info 显示信息 This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. 这是标准系统路径和用户指定路径中存储的 CA 机构(数字证书认证机构)的证书列表。 Local Certificates 本地证书 Import 导入 Remove 删除 This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. 这是一个存储在您用户配置文件中的本地证书列表,它也包含了所有被您设为例外的证书。 Settings 手动设置的证书 Add 添加 If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. 如果 CA 机构(数字证书认证机构)证书没有自动加载到系统中,您可以手动指定证书存储路径。 <b>NOTE:</b> Setting this option is a high security risk! <b>注意:</b>设置这个选项有很高的安全风险! Ignore all SSL Warnings 忽略所有 SSL 警告 All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. 所有证书必须有 .Crt 后缀。 添加或删除证书路径后,需要重新启动 QupZilla 才能生效。 Choose path... 选择路径… Import certificate... 导入证书… Certificate Informations 证书信息 SearchEnginesDialog Manage Search Engines 管理搜索引擎 Add... 添加… Remove 删除 Edit 编辑 Set as default 设为默认 Up 上移 Down 下移 Search Engine 搜索引擎 Shortcut 快捷键 Defaults 设为默认 Add Search Engine 添加搜索引擎 Remove Engine 删除引擎 You can't remove the default search engine.<br>Set a different engine as default before removing %1. 不能删除默认搜索引擎。<br>删除 %1 前请先将其它引擎设为默认。 Edit Search Engine 编辑搜索引擎 SearchEnginesManager Search Engine Added 搜索引擎已添加 Search Engine "%1" has been successfully added. 搜索引擎“%1”已成功添加。 Search Engine is not valid! 无效的搜索引擎! Error 错误 Error while adding Search Engine <br><b>Error Message: </b> %1 添加搜索引擎时出错<BR /><B>错误信息:</B>%1 SearchToolBar No results found. 没有找到结果。 SearchToolbar Search: 查找: Search... 输入查找内容… Highlight 高亮显示 Case sensitive 区分大小写 SideBar Bookmarks 书签 History 历史 SiteInfo Site Info 页面信息 General 常规 Media 媒体 Databases 数据库 Security 安全 Size: 大小: Site address: 网址: Encoding: 字符编码: Meta tags of site: Meta 标签: Tag 标签属性 Value 数值 <b>Security information</b> <b>安全信息</b> Details 详情 Image 图像 Image address 图像地址 <b>Preview</b> <b>预览</b> <b>Database details</b> <b>数据库详情</b> Name: 名称: Path: 路径: <database not selected> 〈没有选中数据库〉 <not set in certificate> 〈未于证书中给定〉 No databases are used by this page. 该网页未使用数据库。 <b>Connection is Encrypted.</b> <b>连接已加密。</b> <b>Your connection to this page is secured with this certificate: </b> <b>此安全连接使用此证书:</b> <b>Connection Not Encrypted.</b> <b>连接未加密。</b> <b>Your connection to this page is not secured!</b> <b>您到此网页的连接未被安全地保护!</b> Copy Image Location 复制图像位置 Copy Image Name 复制图像名称 Save Image to Disk 保存图像到磁盘 Error! 错误! This preview is not available! 此预览不可用! Save image... 保存图像… Cannot write to file! 无法写入文件! Preview not available 预览不可用 SiteInfoWidget More... 更多… Your connection to this site is <b>secured</b>. 到这个网站的连接是<b>安全</b>的。 Your connection to this site is <b>unsecured</b>. 到这个网站的连接是<b>不安全</b>的。 This is your <b>%1</b> visit of this site. 这是您第<b>%1</b>次访问该网站。 You have <b>never</b> visited this site before. 您以前<b>从未</b>访问过此网站。 first second third SourceViewer Source of 源码: File 文件[&F] Load in page 载入到页面中 Save as... 另存为 [&A]… Close 关闭 [&C] Edit 编辑[&E] Undo 撤消 [&U] Redo 重做 [&R] Cut 剪切 [&t] Copy 复制 [&C] Paste 粘贴 [&P] Select All 全选 [&A] Find 查找 [&F] Go to Line... 转到行 [&G]… View 查看[&V] Reload 重新载入 [&R] Editable 允许编辑 [&E] Word Wrap 自动换行 [&W] Source loaded in page 源码已被载入到页面中 Cannot load in page. Page has been closed. 页面已被锁定,无法将源码载入到页面中。 Save file... 保存为 Error! 错误! Cannot write to file! 无法写入文件! Error writing to file 写入文件时出错 Source successfully saved 源代码保存成功 Source reloaded 源代码已重新载入 Cannot reload source. Page has been closed. 无法重新载入源:网页已被关闭。 Editable changed “允许编辑”状态已切换 Word Wrap changed “自动换行”状态已切换 Enter line number 请输入行号: SourceViewerSearch Search: 查找: Search... 输入查找内容… Whole words 整词 SpeedDial Image files 图像文件 Select image... 选择图像… Unable to load 无法加载 SpellCheckDialog SpellCheck 拼写检查 <b>Dictionary path</b> <B>词典路径</B> Change... 改变… <b>User dictionary</b> <B>用户词典</B> Add 添加 Remove 删除 Using Hunspell library 使用 Hunspell 库 Choose dictionary path... 选择词典路径… Add new word... 添加新词… Add new word: 添加新词: Speller No suggestions 无建议 Add to dictionary 添加到词典 Settings 设置 SqueezeLabelV2 Copy 复制 SslErrorDialog SSL Certificate Error! Only for this session TabBar &New tab 新建标签页 (&N) &Stop Tab 停止 (&S) &Reload Tab 重新载入 (&R) &Duplicate Tab 再制 (&D) D&etach Tab 脱离本窗口 (&e) Un&pin Tab 取消固定 (&p) &Pin Tab 固定 (&P) Re&load All Tabs 重新载入全部标签页 (&A) &Bookmark This Tab 加为书签 (&B) Bookmark &All Tabs 将全部标签页加为书签 (&T) Close Ot&her Tabs 关闭其它标签页 (&O) Cl&ose 关闭 (&C) Reloa&d All Tabs 重新载入全部标签页 (&A) Restore &Closed Tab 还原最近关闭的标签页 (&U) Close Tabs Do you really want to close other tabs? TabWidget New Tab 新建标签页 List of tabs 标签列表 Loading... 载入中… No Named Page (无命名页面) Currently you have %1 opened tabs 目前已打开%1个标签页 New tab 空白标签页 Empty (无页面) Restore All Closed Tabs 还原全部关闭的标签页 (&R) Clear list 清除列表 (&C) TabbedWebView Loading... 载入中… %1 - QupZilla %1 - QupZilla Inspect Element 检察元素 (&n) ThemeManager <b>Name:</b> <b>名称:</b> <b>Author:</b> <b>作者:</b> <b>Description:</b> <b>描述:</b> License 许可协议 ToolButton Stop 停止 Reload 重新载入 Updater Update available 有可用更新 New version of QupZilla is ready to download. 有 QupZilla 新版本可供下载。 Update 立即更新 UserAgentDialog User Agent Manager 管理 UA(用户代理)字符串 Change global User Agent 更改全局 UA 字符串 Use different User Agents for specified sites 为特定网站使用专门设定的 UA 字符串 Site 网站 User Agent UA 字符串 Add 添加 Remove 删除 Edit 编辑 Add new site 添加新网站 Edit site 编辑网站 Site domain: 网站域名: User Agent: UA 字符串: WebInspectorDockWidget Web Inspector 网页检察器 WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? QupZilla 无法处理 URI 方案(URL 协议)<b>%1:</b>。请求的链接是 <ul><li>%2</li></ul>。是否使用系统程序打开此链接? Remember my choice for this protocol 记住我对该 URI 方案(URL 协议)的选择 External Protocol Request 外部协议请求 To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) 为显示此页 QupZilla 须重新发送请求 Confirm form resubmission 确定重新提交表单 Select files to upload... 选择要上传的文件… Server refused the connection 服务器拒绝了连接 Server closed the connection 服务器关闭了连接 Server not found 找不到服务器 Connection timed out 连接超时 Untrusted connection 不受信任的连接 Temporary network failure 临时网络故障 Proxy connection refused 代理服务器连接被拒绝 Proxy server not found 找不到代理服务器 Proxy connection timed out 代理服务器连接超时 Proxy authentication required 代理服务器要求身份验证 Content not found 未找到内容 Unknown network error 未知网络错误 AdBlocked Content AdBlock 阻止的内容 Blocked by <i>%1</i> 被规则 <i>%1</i> 阻止 Content Access Denied 内容访问被拒绝 Error code %1 错误代码 %1 Failed loading page 载入网页失败 QupZilla can't load page. QupZilla 无法加载网页。 QupZilla can't load page from %1. QupZilla 无法从 %1 加载网页。 Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com 检查输入错误的地址,如是否将<B>www.</B>example.com输成了<B>ww.</B>example.com If you are unable to load any pages, check your computer's network connection. 如果您无法载入任何网页,请检查您计算机的网络连接。 If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. 如果您的计算机或网络受到防火墙或代理的保护,确保 QupZilla 获准访问网络。</Li><Li>当然,如果说你关不掉或者说防火墙根本不在你的计算机上,那就自己珍重吧。 Try Again 重试 JavaScript alert 脚本警告 Prevent this page from creating additional dialogs 防止此页创建更多的对话框 Choose file... 选择文件… Cannot read data from <b>%1</b>. Upload was cancelled! 未能从<B>%1</B>读取文件,上传操作已被取消。 Cannot read file! 无法读取文件! WebSearchBar Manage Search Engines 管理搜索引擎 Add %1 ... 新增%1… Paste And &Search 粘贴并搜索 (&S) Clear All 全部清除 Show suggestions 显示建议 Search when engine changed 切换引擎时搜索 WebView No Named Page 无命名页面 Create Search Engine 创建搜索引擎 Cut 剪切 [&t] Copy 复制 [&C] Paste 粘贴 [&P] Select All 全选 [&A] Default 默认 Left to Right 左至右 Right to Left 右至左 Bold 粗体 Italic 罗马斜体 Underline 下划线 &Reload 重新载入 (&R) S&top 停止 (&t) Delete 删除 &Back 后退 (&B) &Forward 前进 (&F) This frame 该框架页 (&e) Show &only this frame 只显示此框架页 (&O) Show this frame in new &tab 在新标签页中显示此框架页 (&T) Print frame 打印框架页 (&P) Zoom &in 放大 (&I) &Zoom out 缩小 (&O) Reset 重置 (&0) Show so&urce of frame 显示框架页源代码 (&u) Book&mark page 加为书签 (&m) &Save page as... 页面另存为 (&S)… &Copy page link 复制网页链接 (&C) Send page link... 发送网页链接… &Print page 打印网页 (&P) Select &all 全选 (&A) Validate page 在 W3C 上验证网页 Show so&urce code 查看页面源代码 (&V) Show info ab&out site 查看页面信息 (&I) Open link in new &tab 在新标签页中打开 (&T) Open link in new &window 在新窗口中打开 (&W) B&ookmark link 将链接加为书签 (&o) &Save link as... 链接另存为 (&S)… Send link... 发送链接… &Copy link address 复制链接地址 (&C) Show i&mage 查看图像 (&V) Copy im&age 复制图像 (&a) Copy image ad&dress 复制图像地址 (&d) &Save image as... 图片另存为 (&S)… Send image... 发送图片… Send text... 发送选中的文本… Google Translate Google 翻译 Dictionary 词典 Go to &web address 转到网址 (&W) Search "%1 .." with %2 使用 %2 搜索“%1…” Search with... 用…搜索 &Play 播放 (&P) &Pause 暂停 (&P) Un&mute 取消静音 (&m) &Mute 静音 (&M) &Copy Media Address 复制媒体地址 (&C) &Send Media Address 发送媒体地址 (&S) Save Media To &Disk 保存媒体到磁盘 (&D) Check &Spelling 检查拼写 (&S) Languages 语言 jsAlert Prevent this page from creating additional dialogs 防止此页创建更多的对话框 qupzilla-1.6.0/translations/zh_TW.ts000066400000000000000000010451051226107126500175130ustar00rootroot00000000000000 AboutDialog About QupZilla 關於 QupZilla Authors 作者 Authors and Contributors 作者與貢獻者 < About QupZilla < 關於 QupZilla <p><b>Application version %1</b><br/> <p><b>應用程式版本 %1</b><br/> <b>WebKit version %1</b></p> <b>WebKit 版本 %1</b></p> <small>Build time: %1 </small></p> <small>組建時間:%1 </small></p> <p><b>Main developer:</b><br/>%1 &lt;%2&gt;</p> <p><b>主要開發者:</b><br/>%1 &lt;%2&gt;</p> <p><b>Contributors:</b><br/>%1</p> <p><b>貢獻者:</b><br/%1</p> <p><b>Translators:</b><br/>%1</p> <p><b>翻譯者:</b></br>%1</p> AcceptLanguage Preferred Languages 偏好語言 Add... 新增... Remove 移除 Up 往上移 Down 往下移 Personal [%1] 個人 [%1] AdBlockAddSubscriptionDialog Add Subscription 新增組合 Title: 標題: Address: 位址: Add new subscription to AdBlock: 新增組合至廣告封鎖: AdBlockCustomList Custom Rules 自訂規則 AdBlockDialog AdBlock Configuration AdBlock 設定 Enable AdBlock 啟用 AdBlock Search... 搜尋... Options 選項 AdBlock AdBlock Use only essential part of EasyList (for performance reasons) 只使用最主要部份的 EasyList (為了提高效能) Add Rule 新增規則 Remove Rule 移除規則 Add Subscription 新增組合 Remove Subscription 移除組合 Update Subscriptions 更新組合 Learn about writing rules... 學習攥寫技巧... AdBlockIcon AdBlock lets you block unwanted content on web pages AdBlock 讓您可封鎖網頁上不想要的內容 Blocked popup window 封鎖的彈出視窗 AdBlock blocked unwanted popup window. AdBlock 已封鎖不想要的彈出視窗。 AdBlock AdBlock Show AdBlock &Settings 顯示 AdBlock 設定(&S) Disable on %1 在%1中不允許 Disable only on this page 只在此頁中不允許 Blocked Popup Windows 封鎖的彈出視窗 %1 with (%2) %1 與 (%2) No content blocked 無封鎖任何內容 Blocked URL (AdBlock Rule) - click to edit rule 封鎖的網址 (廣告封鎖的規則) - 點擊以編輯規則 AdBlockManager Do you want to add <b>%1</b> subscription? 您想要將 <b>%1</b> 加入組合嗎? AdBlock Subscription 廣告封鎖組合 EasyList 建議清單 AdBlockTreeWidget Add Rule 新增規則 Remove Rule 移除規則 Add Custom Rule 新增自訂規則 Please write your rule here: 請在這裡輸入您的規則: %1 (recently updated) %1 (最近更新) AddAcceptLanguage Add Language 新增語言 Choose preferred language for web sites 選擇網站的偏好語言 Personal definition: 個人定義: AesInterface Warning! 警告! Data has been encrypted with a newer version of QupZilla. Please install latest version of QupZilla. 資料已由新版的Qupzilla加密, 請安裝最新版的Qupzilla。 AutoFill Database (plaintext) 資料庫(純文字) Database (encrypted) 資料庫 (已加密) Enter Master Password 輸入主控台密碼 Permission is required, please enter Master Password: 需要授權,請輸入您的主控台密碼: Warning! 警告! Entered password is wrong! 密碼錯誤! This backend needs a master password to be set! QupZilla just switches to its default backend 此後端需要設定主控台密碼!Qupzilla 將移轉到預設的後端 AutoFillManager Passwords are stored in: 密碼被儲存在: Change backend 更換後端 Backend options 後端選項 Passwords 密碼 Server 伺服器 Username 使用者名稱 Password 密碼 Import/Export 匯入/匯出 Show Passwords 顯示密碼 Edit 編輯 Remove 移除 Remove All 全部移除 Exceptions 例外 Import Passwords from File... 從檔案匯入密碼... Export Passwords to File... 將密碼匯出為檔案... Search 搜尋 Change backend... 更換後端... Change backend: 更換後端: Are you sure that you want to show all passwords? 確定要顯示所有密碼? Hide Passwords 隱藏密碼 Confirmation 確認 Are you sure to delete all passwords on your computer? 您確定要刪除所有電腦上的密碼嗎? Edit password 編輯密碼 Change password: 修改密碼: Choose file... 選擇檔案... Cannot read file! 無法讀取檔案! Successfully imported 成功匯入 Error while importing! 匯入時發生錯誤! Cannot write to file! 無法寫入檔案! Successfully exported 成功匯出 AutoFillNotification Update 更新 Remember 記住 Never For This Site 永不記住 Not Now 現在不要 on %1 於 %1 for <b>%1</b> 為 <b>%1</b> Do you want QupZilla to update saved password %1? 您想要QupZIlla更新已儲存密碼 %1嗎? Do you want QupZilla to remember the password %1 %2? 您想要QupZilla %1 %2 記得密碼嗎? AutoFillWidget Choose username to login 選擇登入的使用者名稱 Login 登入 Login as <b>%1</b> 以 <b>%1</b> 登入 BookmarkIcon Bookmark this Page 將此頁加到書籤 Edit this bookmark 編輯此書籤 BookmarksImportDialog Import Bookmarks 匯入書籤 <b>Import Bookmarks</b> <b>匯入書籤</b> From File 從檔案 Internet Explorer Internet Explorer Choose browser from which you want to import bookmarks: 選擇匯入書籤的來源瀏覽器: <b>Note:</b> Currently, only import from Html File can import also bookmark folders. <b>注意:</b>現在只有從 HTML 檔案匯入可以同時匯入書籤資料夾。 Choose... 選擇... Try to fetch icons for all bookmarks (may take a while) 嘗試取得所有書籤的圖示 (將需要一些時間) Fetching icons, please wait... 正在取得圖示,請稍候... Title 標題 Url 網址 Next 下一步 Cancel 取消 <b>Importing from %1</b> <b>正從 %1 匯入</b> Finish 完成 Please press Finish to complete importing process. 請按下「完成」以結束匯入程序。 Error! 錯誤! The file doesn't contain any bookmark. 此檔案並沒有包含任何書籤。 Choose directory... 選擇目錄... Choose file... 選擇檔案... Mozilla Firefox stores its bookmarks in <b>places.sqlite</b> SQLite database. This file is usually located in Mozilla Firefox 將它的書籤儲存在 <b>places.sqlite</b> SQLite 資料庫中。這份檔案通常位於 Please choose this file to begin importing bookmarks. 請選擇檔案開始匯入書籤。 Google Chrome stores its bookmarks in <b>Bookmarks</b> text file. This file is usually located in Google Chrome 將它的書籤儲存在 <b>Bookmarks</b> 文字檔案。這份檔案通常位於 Opera stores its bookmarks in <b>bookmarks.adr</b> text file. This file is usually located in Opera 將它的書籤儲存在 <b>bookmarks.adr</b> 文字檔案。這份檔案通常位於 You can import bookmarks from any browser that supports HTML exporting. This file has usually these suffixes 您可以從任何支援 HTML 匯出的瀏覽器中來匯入書籤。此檔案通常具有這些後綴名 Internet Explorer stores its bookmarks in <b>Favorites</b> folder. This folder is usually located in Internet Explorer 將它的書籤儲存在 <b>Favorites</b> (最愛) 資料夾。這個資料夾通常位於 Please choose this folder to begin importing bookmarks. 選擇此資料夾開始匯入書籤。 No Error 沒有錯誤 Unable to open file. 無法開啟檔案。 Cannot evaluate JSON code. 無法評估 JSON 代碼。 File does not exist. 檔案不存在。 Unable to open database. Is Firefox running? 無法開啟資料庫。是不是 Firefox 正在運行? Directory does not exist. 目錄不存在。 The directory does not contain any bookmarks. 該目錄不包含任何書籤。 BookmarksManager Bookmarks 書籤 Optimize Database 最佳化資料庫 Import Bookmarks 匯入書籤 Add Folder 新增資料夾 Title 標題 Url 網址 Expand All 全部展開 Collapse All 全部隱藏 Add new folder 新增資料夾 Choose parent folder for new folder: 選擇新資料夾的母資料夾 Choose name for new bookmark folder: 新的書籤資料夾名稱: Add new subfolder 新增子資料夾 Choose name for new subfolder in bookmarks toolbar: 新子資料夾在書籤工具列的名稱: Rename Folder 重新命名資料夾 Choose name for folder: 選擇資料夾的名稱: Add Subfolder 新增子資料夾 Rename folder 重新命名資料夾 Remove folder 移除資料夾 Open link in current &tab 在目前分頁中開啟連結(&T) Open link in &new tab 在新分頁中開啟連結(&N) Move bookmark to &folder 將書籤移動到資料夾(&F) Change icon 更換圖示 Rename bookmark 重新命名書籤 Remove bookmark 移除書籤 <b>Warning: </b>You already have bookmarked this page! <b>警告:</b>您已經將此網頁加入書籤了! Choose name and location of this bookmark. 選擇此書籤的名稱與位置。 Add New Bookmark 新增書籤 Choose folder for bookmarks: 選擇書籤資料夾: Bookmark All Tabs 將所有分頁加入書籤 BookmarksModel Bookmarks In Menu 選單中的書籤 Bookmarks In ToolBar 工具列中的書籤 Unsorted Bookmarks 未分類書籤 BookmarksSideBar Search... 搜尋... Open link in current &tab 在目前分頁中開啟連結(&T) Open link in &new tab 在新分頁中開啟連結(&N) Copy address 複製位址 &Delete 刪除(&D) BookmarksToolbar &Bookmark Current Page 將目前網頁加入書籤(&B) Bookmark &All Tabs 將所有分頁加入書籤(&A) &Organize Bookmarks 整理書籤(&O) Show Most &Visited 顯示最常造訪(&V) Show Only Icons 僅顯示圖示 &Hide Toolbar 隱藏工具列(&H) Open bookmark 開啟書籤 Open bookmark in new tab 在新分頁開啟書籤 Move right 往右移動 Move left 往左移動 Edit bookmark 編輯書籤 Remove bookmark 移除書籤 Edit bookmark: 編輯書籤: Title: 標題: Url: 網址: Edit Bookmark 編輯書籤 Most visited 最常造訪 Sites you visited the most 您最常造訪的網頁 Empty BookmarksTree Bookmarks 書籤 New Folder... 新增資料夾... BookmarksWidget Add to Speed Dial 新增到快速撥號 Save 儲存 Name: 名稱: Folder: 資料夾: Remove from Speed Dial 從快速撥號中移除 Remove 移除 BrowsingLibrary Library 收藏庫 Search... 搜尋... History 歷史 Bookmarks 書籤 RSS RSS Database Optimized 資料庫已最佳化 Database successfully optimized.<br/><br/><b>Database Size Before: </b>%1<br/><b>Database Size After: </b>%2 資料庫成功最佳化。<br/><br/><b>資料庫原始大小:</b>%1<br/><b>資料庫後來大小:</b>%2 CertificateInfoWidget <b>Issued To</b> <b>發給<b> Common Name (CN): 通用名稱 (CN): Organization (O): 組織 (O): Organizational Unit (OU): 組織單位 (OU): Serial Number: 序號: <b>Issued By</b> <b>發自<b> <b>Validity</b> <b>有效</b> Issued On: 發佈於: Expires On: 過期於: ClearPrivateData Clear Recent History 清除最近歷史 Choose what you want to delete: 選擇您想刪除的內容: Clear history 清除歷史 Clear cache 清除快取 Clear icons 清除圖示 <b>Clear Recent History</b> <b>清除最近歷史</b> Earlier Today 今日稍早 Week Month All 全部 Clear web databases 清除網站資料庫 Clear local storage 清除本地儲存 Clear cookies 清除 Cookie ClickToFlash Object blocked by ClickToFlash 物件被 ClickToFlash 封鎖 Show more information about object 顯示更多有關物件的資訊 Delete object 刪除物件 Add %1 to whitelist 將 %1 加入白名單 Flash Object Flash 物件 <b>Attribute Name</b> <b>特性名稱</b> <b>Value</b> <b>值</b> No more information available. 沒有提供其他資訊。 CookieManager Cookies Cookie Stored Cookies 儲存的 Cookie Find: 尋找: These cookies are stored on your computer: 這些 Cookie 已儲存在您的電腦上: Server 伺服器 Cookie name Cookie 名稱 Name: 名稱: Value: 值: Server: 伺服器: Path: 路徑: Secure: 安全: Expiration: 過期日: <cookie not selected> <沒有選擇任何 Cookie> Remove all cookies 移除所有 Cookie Remove cookies 移除 Cookie Cookie Filtering Cookie 過濾 <b>Cookie whitelist</b> <b>Cookie 白名單</b> Cookies from these servers will ALWAYS be accepted (even if you have disabled saving cookies) 來自這些伺服器的 Cookie 「總是」會被接受 (即使您已停用 Cookie 儲存功能) Add 新增 Remove 移除 <b>Cookie blacklist</b> <b>Cookie 黑名單</b> Cookies from these servers will NEVER be accepted 來自這些伺服器的 Cookie 將「永不」會被接受 Settings 設定 <b>Cookie Settings</b> <b>Cookie 設定</b> Allow storing of cookies 允許Cookie存取 Delete cookies on close 關閉時刪除Cookies Match domain exactly 正確的配對網域 Filter tracking cookies Cookie追蹤過濾 <b>Warning:</b> Match domain exactly and filter tracking cookies options can lead to deny some cookies from sites. If you have problems with cookies, try to disable these options first! <b>警告:</b>正確的配對網域及Cookie追蹤過濾選項可能導致有些來自網站的cookies被拒絕。如果您遇到了cookies相關的問題,請先取消這兩個選項! Search 搜尋 Confirmation 確認 Are you sure to delete all cookies on your computer? 確定要刪除電腦上所有的 Cookie? Secure only 僅安全 All connections 所有連結 Session cookie 作業階段 Cookie Remove cookie 移除 Cookie Add to whitelist 加到白名單 Add to blacklist 加到黑名單 DownloadFileHelper Save file as... 另存為... NoNameDownload 未命名下載 DownloadItem Remaining time unavailable 剩餘時間不可用 Error: Cannot write to file! 錯誤:無法寫入檔案! Done - %1 完成 - %1 Cancelled 已取消 few seconds 幾秒 %n seconds %n minutes %n hours Unknown speed 未知速度 kB/s kB/秒 MB/s MB/秒 GB/s GB/秒 Unknown size 未知大小 %2 - unknown size (%3) %2 - 未知大小 (%3) Remaining %1 - %2 of %3 (%4) 剩餘 %1-%2 / %3 (%4) Cancelled - %1 取消 - %1 Delete file 刪除檔案 Do you want to also delete dowloaded file? 您想同時刪除下載的檔案嗎? Open File 開啟檔案 Open Folder 開啟資料夾 Go to Download Page 前往下載頁面 Copy Download Link 複製下載連結 Cancel downloading 取消下載 Remove 移除 Error 錯誤 Not found 找不到 Sorry, the file %1 was not found! 抱歉,檔案 %1 找不到! Error: 錯誤: DownloadManager Download Manager 下載管理員 Clear 清除 %1% of %2 files (%3) %4 remaining %1% / %2 檔案 (%3) 剩餘 %4 %1% - Download Manager %1% - 下載管理員 Download Finished 下載已完成 All files have been successfully downloaded. 所有檔案皆成功下載。 Warning 警告 Are you sure to quit? All uncompleted downloads will be cancelled! 確定要退出嗎?退出後所有未完成的下載都會被取消下載! DownloadOptionsDialog Opening 開啟中 Copy download link 複製下載連結 You have chosen to open 您選擇開啟 which is a: 這是個: What should QupZilla do with this file? QupZilla 應該怎麼處理這個檔案? Open... 開啟... Save File 儲存檔案 Download with External Manager 使用外掛下載管理員進行下載 from: 來自: Opening %1 開啟 %1 中 Download link copied. 下載連結已複製 EditSearchEngine Name: 名稱: Url: 網址: Shortcut: 捷徑: Icon: 圖示: <b>Note: </b>%s in url or post data represent searched string Post Data: Change... 更換... FileSchemeReply No Error 沒有錯誤 Up to higher level directory 回到上一層目錄 Show hidden files 顯示隱藏檔案 Name 名稱 Size 大小 Last modified 最後更改 Index for %1 %1 的引索 Folder is empty. 此為空資料夾。 FtpDownloader Cancelled! 已取消! FtpSchemeReply Up to higher level directory 回到上層目錄 Show hidden files 顯示隱藏檔案 Name 名稱 Size 大小 Last modified 最新更改 Index for %1 %1的引索 Folder is empty. 此為空白資料夾。 Unknown command 未知指令 HTML5PermissionsDialog HTML5 Permissions HTML5權限 Notifications 通知 Site 網站 Behaviour 行為 Remove 移除 Geolocation 地理定位 Allow 允許 Deny 拒絕 HTML5PermissionsNotification Remember 記得 Allow 允許 Deny 拒絕 this site 這個網站 Allow %1 to show desktop notifications? 允許 %1 顯示桌面通知? Allow %1 to locate your position? 允許 %1 標記您的位置嗎? History No Named Page 無命名頁面 January 一月 February 二月 March 三月 April 四月 May 五月 June 六月 July 七月 August 八月 September 九月 October 十月 November 十一月 December 十二月 HistoryManager History 歷史 Delete 刪除 Clear All History 清除所有歷史 Optimize Database 最佳化資料庫 Confirmation 確認 Are you sure to delete all history? 您確定要刪除所有歷史嗎? HistoryModel Title 標題 Address 位址 Visit Date 查訪日期 Visit Count 查訪次數 Today 今日 This Week 本週 This Month 本月 HistorySideBar Search... 搜尋... HistoryView Open link in current tab 在目前分頁中開啟連結 Open link in new tab 在新分頁中開啟連結 Copy title 複製標題 Copy address 複製位址 Remove 移除 IconChooser Choose icon... 選擇圖示... From file 從檔案 Image (.png, .jpg, .jpeg, .gif) 影像(.png, .jpg, .jpeg, .gif) Choose file... 選擇檔案... From database 從資料庫 Site Url: 網站位址: Image files 影像檔案 JsOptions JavaScript Options JavaScript選項 Allow JavaScript to: 允許JavaScript: Close windows 關閉視窗 Open popup windows 開啟彈出視窗 Change window size 更變視窗大小 Hide menu bar 隱藏選單列 Hide status bar 隱藏狀態列 Hide tool bar 隱藏工具列 Access clipboard 存取剪貼簿 LicenseViewer License Viewer 授權檢視器 LocationBar Enter URL address or search on %1 輸入網址或在 %1 上搜尋 Paste And &Go 貼上並前往(&G) Clear All 全部清除 .co.uk Append domain name on ALT + Enter = Should be different for every country .co.uk Show information about this page 顯示有關此頁的資訊 LocationCompleterView Switch to tab 切換至分頁 MainApplication QupZilla is not currently your default browser. Would you like to make it your default browser? QupZilla並非您現在的預設網頁瀏覽器。是否要設為預設網頁瀏覽器? Always perform this check when starting QupZilla. 啟動QupZilla總是顯示此確認。 Default Browser 預設網頁瀏覽器 QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework. QupZilla 是一個新穎、快速、安全且開放原始碼的 WWW 瀏覽器。QupZilla 以 GPLv3 或是(在您的選擇下)更新的版本釋出。 QupZilla 是基於 WebKit 內核及 Qt 框架。 MasterPasswordDialog Encrypted DataBase Settings 加密資料庫設定 Set/Change Master Password... 設定/修改主控台密碼... Clear Master Password... 清除主控台密碼 This backend does not work without a master password. 此後端無主控台密碼則無法啟用 This option clears the master password and moves all encrypted data to the "DataBase (Plain Text)" backend, and switches to it. 此選項將清除主控台密碼與移動所有加密資料到「資料庫 (純文字)」後端,並移轉至此。 The Master Password is used to protect site passwords and form data. If you set a Master Password you will be asked to enter it once per session. 主控台密碼可以保護網站密碼與表單資料,若您設定了種控台密碼,您將在每個工作階段被要求輸入一次。 Current Password: 目前密碼: New Password: 新密碼: Confirm Password: 確認密碼: <b>Note:</b> The Master Password is not resettable. Do not forget it, please. <b>注意:</b> 主控台密碼是無法重設的,請務必記得。 Warning! 警告! You entered a wrong password! 您輸入了錯誤的密碼! New/Confirm password fields do not match! 新密碼/確認密碼區並不吻合! Some data has not been decrypted. The master password was not cleared! 有些資料無法解密,主控台密碼將不會被清除! Are you sure to clear master password and decrypt data? 確定要清除主控台密碼並解密資料嗎? NavigationBar No Named Page 未命名頁面 Back 上一頁 Forward 下一頁 Home 首頁 New Tab 新增分頁 Main Menu 主要選單 Exit Fullscreen 離開全螢幕 Clear history 清除歷史 NetworkManager SSL Certificate Error! SSL 憑證錯誤! The page you are trying to access has the following errors in the SSL certificate: 您試圖存取的頁面有下列 SSL 憑證錯誤: <b>Organization: </b> <b>組織:</b> <b>Domain Name: </b> <b>域名:</b> <b>Expiration Date: </b> <b>過期日:</b> <b>Error: </b> <b>錯誤:</b> Would you like to make an exception for this certificate? 您想讓這個憑證作為例外嗎? Authorisation required 需要授權 Username: 使用者名稱: Password: 密碼: Save username and password on this site 儲存這個網站上的使用者名稱以及密碼 A username and password are being requested by %1. The site says: "%2" %1 要求使用者名稱及密碼。該網站說:「%2」 FTP authorisation required 需要FTP授權 Login anonymously 使用匿名登入 A username and password are being requested by %1:%2. %1:%2 請求一組使用者名稱及密碼。 Proxy authorisation required 需要代理授權 Remember username and password for this proxy. A username and password are being requested by proxy %1. 代理 %1 要求使用者名稱及密碼。 PageScreen Page Screen 頁面畫面 Format: 格式: Location: 位置: Browse... 瀏覽... Save as %1 另存為 %1 Choose location... 選擇位置... File '%1' already exists. Do you want to overwrite it? 檔案「%1」已經存在,要覆寫嗎? File already exists 檔案已經存在 PluginsList Application Extensions 程式擴充功能 Allow Application Extensions to be loaded 允許載入應用程式擴充功能 Settings 設定 WebKit Plugins WebKit 外掛 <b>Click To Flash Plugin</b> <b>Click To Flash 外掛</b> Click To Flash is a plugin which blocks auto loading of Flash content at page. You can always load it manually by clicking on the Flash play icon. Click To Flash 是個可以封鎖自動載入內容 Flash 的外掛。您可以隨時按一下播放 Flash 播放圖示來手動載入 Flash 內容。 Whitelist 白名單 Add 新增 Remove 移除 Allow Click To Flash 允許 Click To Flash PluginsManager Add site to whitelist 將網站加入白名單 Server without http:// (ex. youtube.com) 伺服器沒有 http:// (例如 youtube.com) Error! 錯誤! Cannot load extension! 無法載入擴充功能! PopupWebView Inspect Element 審查元素 PopupWindow File 檔案 &Save Page As... 儲存頁面為...(&S) Save Page Screen 儲存視窗頁面 Send Link... 傳送連結... &Print... 列印...(&P) Close 關閉 Edit 編輯 &Undo 取消(&U) &Redo 重作(&R) &Cut 剪下(&C) C&opy 複製(&o) &Paste 貼上(&P) Select All 全選 Find 尋找 View 檢視 &Stop 停止(&S) &Reload 重新整理(&R) Zoom &In 拉近(&I) Zoom &Out 拉遠(&O) Reset 重置 &Page Source 頁面源碼(&P) %1 - QupZilla %1 - QupZilla Preferences Preferences 偏好設定 QupZilla QupZilla General 一般 Appearance 外觀 Tabs 分頁 Browsing 瀏覽 Fonts 字型 Keyboard Shortcuts 鍵盤快捷鍵 Downloads 下載 Password Manager 密碼管理員 Privacy 私密 Notifications 通知 Extensions 擴充功能 Other 其他 Use current 使用目前的 Note: You cannot delete active profile. 注意:您不能刪除正在運行的個人設定。 Create New 新增 Delete 刪除 <b>Launching</b> <b>啟動</b> After launch: 啟動後: Open blank page 開啟空白頁 Open homepage 開啟首頁 Open speed dial 開啟快速撥號 Restore session 回復作業階段 Homepage: 首頁: On new tab: 於新分頁: Open blank tab 開啟空白分頁 Open other page... 開啟其他頁面... <b>Profiles</b> <b>個人設定</b> Startup profile: 初始啟動個人設定: Check for updates on start 啟動時檢查更新 Active profile: 使用中個人設定: In order to change language, you must restart browser. 若要改變語言,您必須重新啟動瀏覽器。 <b>Language</b> <b>語言</b> Available translations: 可用的翻譯: Don't load tabs until selected 選取後才載入分頁 Check to see if QupZilla is the default browser on startup 啟動時檢查QupZilla是否為預設瀏覽器 Check Now 現在檢查 Themes 主題 Advanced options 進階選項 <b>Browser Window</b> <b>瀏覽器視窗</b> Show StatusBar on start 啟動時顯示狀態列 Show Bookmarks ToolBar on start 啟動時顯示書籤工具列 Show Navigation ToolBar on start 啟動時顯示導覽工具列 <b>Navigation ToolBar</b> <b>導覽工具列</b> Show Home button 顯示首頁按鈕 Show Back / Forward buttons 顯示上/下一頁按鈕 <b>Background<b/> <b>背景<b/> Use transparent background 使用透明背景 Show web search bar 顯示網頁搜尋欄 Show Add Tab button 顯示新增分頁按鈕 Show Reload / Stop buttons 顯示重新整理/停止按鈕 Tabs behaviour 分頁行為 Show tab previews 顯示分頁預覽 Make tab previews animated 讓分頁預覽動畫化 Hide tabs when there is only one tab 當只有一個分頁時隱藏分頁 Activate last tab when closing active tab 關閉分頁時切換至前一個使用的分頁 Open new tabs after active tab 在使用中分頁後方開啟新分頁 Open new empty tabs after active tab 在使用中分頁後方開啟新的空白分頁 Automatically switch to newly opened tab 自動切換至新增分頁 Don't quit upon closing last tab 當關閉最後一個分頁時不要退出 Ask when closing multiple tabs 關閉多個分頁時總是詢問 Closed tabs list instead of opened in tab bar 分頁列中顯示關閉的分頁清單而不是開啟過的 Address Bar behaviour 位址欄行為 Suggest when typing into address bar: 在輸入位址欄時顯示建議選項: History and Bookmarks 歷史紀錄以及書籤 History 歷史紀錄 Bookmarks 書籤 Nothing Press "Shift" to not switch the tab but load the url in the current tab. 按下"Shift"以使用現在的分頁載入位址而非新分頁。 Propose to switch tab if completed url is already loaded. 如果相同的位址已載入則建議切換分頁。 Always show go icon 永遠顯示前往按鈕 Select all text by double clicking in address bar 點兩下位址列全選文字 Select all text by clicking in address bar 當按下位址列時全選文字 Search with Default Engine 以預設的搜尋引擎搜尋 Show loading progress in address bar 在位址欄顯示載入進度 Fill 填充 Bottom 底部 Top 頂部 Custom color: 自訂顏色: Select color 選擇顏色 ... ... Reset 重置 Web Configuration 網頁組態 Allow Netscape Plugins (Flash plugin) 允許 Netscape 外掛 (Flash 外掛) Allow JavaScript 允許 JavaScript Allow JAVA 允許 JAVA Allow DNS Prefetch 允許 DNS 預取 Enable XSS Auditing try to detect possible XSS attacks when executing javascript 啟用 XSS 稽核 Print element background when you are printing page (on printer), it determine whether to also print background (color, image) of html elements 列印元素背景 Include links in focus chain focus also links on page (basically <a> elements) when pressing Tab key 聚焦鏈包含連結 Animated scrolling 平滑捲動 Enable caret browsing 允許鍵盤瀏覽 Enable spatial navigation 允許空間導覽 Zoom text only 僅縮放文字 Mouse wheel scrolls 滾動滑鼠滾輪捲動 lines on page 網頁的幾列 Default zoom on pages: 預設網頁縮放: Local Storage 本地儲存 Maximum 最大 50 MB 50 MB 1 1 Maximum pages in cache: 快取中的最大頁面: Allow storing network cache on disk 允許在磁碟上儲存網路快取 Store cache in: 儲存快取至: Allow saving history 允許儲存歷史 Delete history on close 關閉時刪除歷史 Allow local storage of HTML5 web content 允許 HTML5 網頁內容的本地端儲存 Delete locally stored HTML5 web content on close 關閉時刪除本地儲存的 HTML5 網頁內容 Delete now 現在刪除 Proxy Configuration 代理組態 Proxy Auto-Config (.pac) file 自動設定代理伺服器檔案(.pac) Reload 重新載入 HTTP HTTP SOCKS5 SOCKS5 Port: 埠: Username: 使用者名稱: Password: 密碼: Don't use on: 不要使用: Manual configuration 手動組態 System proxy configuration 系統代理組態 Do not use proxy 不使用代理 <b>Exceptions</b> <b>例外</b> Server: 伺服器: Use different proxy for https connection 使用不同的代理伺服器來連結 https Use script for automatic configuration: 自動設定用使用者腳本: <b>Font Families</b> <b>字族</b> Standard 標準 Fixed 等寬 Serif 襯線 Sans Serif 無襯線 Cursive 手寫 Fantasy 華麗 <b>Font Sizes</b> <b>字型大小</b> Fixed Font Size 等寬字型大小 Default Font Size 預設字型大小 Minimum Font Size 最小字型大小 Minimum Logical Font Size 最小邏輯字型大小 <b>Shortcuts</b> <b>快捷鍵</b> Switch to tabs with Alt + number of tab 使用"Alt"加上數字鍵切換分頁 Load speed dials with Ctrl + number of speed dial 使用"Ctrl"加上數字鍵載入快速撥號 Add .co.uk domain by pressing ALT key in address bar <b>Download Location</b> <b>下載位置</b> Ask everytime for download location 總是詢問下載位置 Use defined location: 使用自訂下載位置: <b>Download Options</b> <b>下載選項</b> Use native system file dialog (may or may not cause problems with downloading SSL secured content) 使用原生系統檔案對話框 (可能會導致下載 SSL 安全保護內容時發生問題) Close download manager when downloading finishes 下載完畢後關閉下載管理員 <b>External download manager</b> <b>外部下載管理員</b> Use external download manager 使用外部下載管理員 Executable: 可執行檔: Arguments: 參數: Leave blank if unsure 如果不確定請留空白 <b>%d</b> will be replaced with URL to be downloaded <b>%d</b>下載後將會被取代為URL <b>AutoFill options</b> <b>自動填寫選項</b> Allow saving passwords from sites 允許儲存網站密碼 Send Referer header to servers 傳送 Referer 標頭給伺服器 <b>Cookies</b> <b>Cookie</b> Send Do Not Track header to servers 傳送「不跟蹤」標頭給伺服器 <b>Other</b> <b>其他</b> Manage CA certificates 管理CA授權憑證 Certificate Manager 授權憑證管理員 <b>SSL Certificates</b> <b>SSL 憑證</b> <b>JavaScript</b> <b>JavaScript</b> Manage JavaScript privacy options 管理JavaScript隱私選項 JavaScript options JavaScript選項 Cookies Manager Cookie 管理員 Manage Cookies 管理 Cookies <b>HTML5 Permissions</b> <b>HTML5 權限</b> Manage HTML5 permissions 管理HTML5權限 HTML5 Permissions HTML5權限 <b>Notifications</b> <b>通知</b> Use OSD Notifications 使用 OSD 通知 Use Native System Notifications (Linux only) 使用原生系統通知 (僅限 Linux) Do not use Notifications 不要使用通知 Expiration timeout: 超過期限: seconds <b>Note: </b>You can change position of OSD Notification by dragging it on the screen. <b>注意:</b>您可以在螢幕上拖曳 OSD 通知來改變它的位置。 StyleSheet automatically loaded with all websites: 所有的網站該自動載入的樣式表: Languages 語言 <b>Preferred language for web sites</b> <b>進入網站時偏好的語言</b> <b>Change browser identification</b> <b>更改瀏覽器識別名稱</b> User Agent Manager 用戶代理程式管理員 Default 預設 Set as default 設定為預設 OSD Notification OSD 通知 Drag it on the screen to place it where you want. 在螢幕上拖曳它到您想要的位置。 Choose download location... 選擇下載位置... Choose stylesheet location... 選擇樣式表位置... Deleted 已刪除 Choose executable location... 選擇可執行檔位置... Choose cache path... 選擇快取路徑... New Profile 新增個人設定 Enter the new profile's name: 輸入新的個人設定名稱: Error! 錯誤! This profile already exists! 此個人設定已存在! Cannot create profile directory! 無法建立個人設定目錄! Confirmation 確認 Are you sure to permanently delete "%1" profile? This action cannot be undone! 您確定要永久移除「%1」個人設定嗎?這無法復原! Select Color 選擇顏色 QObject Native System Notification 原生系統通知 Save file as... 另存為... The file is not an OpenSearch 1.1 file. 此檔案不是個 OpenSearch 1.1 檔。 <not set in certificate> <憑證中沒有設定> Unknown size 未知大小 KB KB MB MB GB GB Executable: 可執行: Arguments: 衝突: Cannot start external program 無法啟動外部的程式 Cannot start external program! %1 無法啟動外部的程式! %1 QtWin Open new tab 開啟新分頁 Opens a new tab if browser is running 若瀏覽器正運行中便開啟新分頁 Open new window 開啟新視窗 Opens a new window if browser is running 若瀏覽器運行中便開啟新視窗 Open download manager 開啟下載管理員 Opens a download manager if browser is running 若瀏覽器運行中便開啟下載管理員 QupZilla QupZilla QupZilla Private Browsing Enabled 私密瀏覽已啟用 IP Address of current page 目前頁面的 IP 位址 &About QupZilla 關於 QupZilla (&A) Pr&eferences 偏好設定(&E) Quit 離開 &File 檔案(&F) &New Window 新增視窗(&N) New Tab 新分頁 Open Location 開啟位置 Open &File... 開啟檔案...(&F) Close Tab 關閉分頁 Close Window 關閉視窗 &Save Page As... 儲存頁面為(&S)... Save Page Screen 儲存螢幕頁面 Send Link... 傳送連結... &Print... 列印(&P)... Import bookmarks... 匯入書籤... &Edit 編輯(&E) &Undo 取消(&U) &Redo 重作(&R) &Cut 剪下(&C) C&opy 複製(&O) &Paste 貼上(&P) Select &All 全選(&A) &Find 尋找(&F) &View 檢視(&V) &Navigation Toolbar 導覽工具列(&N) &Bookmarks Toolbar 書籤列(&B) Sta&tus Bar 狀態列(&T) &Menu Bar 選單列(&M) &Tabs on Top 將分頁置頂(&T) &Fullscreen 全螢幕(&F) &Stop 停止(&S) &Reload 重新載入(&R) Character &Encoding 字元與編碼(&E) Enable &Caret Browsing 允許鍵盤瀏覽(&C) Toolbars 工具列 Sidebars 側邊列 Zoom &In 拉近(&I) Zoom &Out 拉遠(&O) Reset 重設 &Page Source 頁面源碼(&P) Hi&story 歷史(&S) &Back 上一頁(&B) &Forward 下一頁(&F) &Home 首頁(&H) Show &All History 顯示所有歷史(&A) Closed Tabs 關閉分頁 Recently Visited 最近瀏覽 Most Visited 最常造訪 &Bookmarks 書籤(&B) Bookmark &This Page 加入書籤(&T) Bookmark &All Tabs 所有分頁加入書籤(&A) Organize &Bookmarks 整理書籤(&B) &Tools 工具(&T) &Web Search 網頁搜尋(&W) Page &Info 網頁資訊(&I) &Download Manager 下載管理員(&D) &Cookies Manager Cookie 管理員(&C) &AdBlock AdBlock(&A) RSS &Reader RSS 閱讀器(&R) Web In&spector 網頁審視器(&S) Clear Recent &History 清除最近的歷史(&H) New &Private Window 新增私密瀏覽視窗(&P) &Help 幫助(&H) About &Qt 關於 Qt(&Q) Information about application 應用程式的相關資訊 Configuration Information 設定資訊 Report &Issue 回報問題(&I) Restore &Closed Tab 還原關閉分頁(&C) (Private Browsing) (私密瀏覽) Empty Restore All Closed Tabs 還原所有關閉分頁 Clear list 清除清單 Other 其他 %1 - QupZilla %1 - QupZilla HTML files HTML 檔案 Image files 影像檔案 Text files 文字檔案 All files 所有檔案 Open file... 開啟檔案... QupZilla %1 (%2) QupZilla %1 (%2) There are still %1 open tabs and your session won't be stored. Are you sure to quit QupZilla? 您仍有 %1 個開啟的分頁,但是您的作業階段不會被儲存。 您確定要退出 QupZilla 嗎? Don't ask again 不要再詢問 There are still open tabs 仍然有開啟中分頁 QupZillaSchemeReply No Error 沒有錯誤 Not Found 未找到 Report Issue 報告問題 If you are experiencing problems with QupZilla, please try to disable all extensions first. <br/>If this does not fix it, then please fill out this form: 如果拰在使用QupZilla時遇到問題,請先停用所有擴充功能。<br/>如果問題人然存在,請填寫此表單:: Your E-mail 您的E-mail Issue type 問題類型 Issue description 問題描述 Send 提交 E-mail is optional<br/><b>Note: </b>Please read how to make a bug report <a href=%1>here</a> first. 電子信箱的提交是可選的。<b>注意</b>請先閱讀<a href=%1>"如何提交錯誤"</a> 。 Please fill out all required fields! 請填寫所有必填欄位! Start Page 起始頁 Search on Web 在網頁中搜尋 Search results provided by DuckDuckGo 搜尋由DuckDuckGo提供的結果 About QupZilla 關於 QupZilla <h1>Private Browsing</h1> <h1>私密瀏覽</h1> Information about version 版本資訊 Copyright 版權所有 Version 版本 WebKit version WebKit 版本 Main developer 主要開發群 Contributors 貢獻團隊 Translators 翻譯團隊 Speed Dial 快速撥號 Add New Page 新增頁面 Edit 編輯 Remove 移除 Reload 重新載入 Are you sure to remove this speed dial? 您確定要移除此快速撥號? Load title from page 從網頁載入標題 Url 網址 Title 標題 Apply 套用 Close 關閉 New Page 新頁面 Speed Dial settings 快速撥號設定 Placement: 放置: Auto 自動 Cover 覆蓋 Fit 適應 Fit Width 適應寬度 Fit Height 適應高度 Use background image 使用背景影像 Select image 選取影像 Maximum pages in a row: 每列最大的頁數: Change size of pages: 變更頁面的大小: Center speed dials 中央快速撥號 Restore Session 回復會話 Oops, QupZilla crashed. 噢!QupZilla部正常關閉了。 We apologize for this. Would you like to restore the last saved state? 我們對此感到抱歉。您想要回復上次儲存的情形嗎? Try removing one or more tabs that you think cause troubles 試著移除一個或多個讓您感到困擾的分頁 Or you can start completely new session 或是您可以開啟另一個全新的會話 Configuration Information 設定資訊 This page contains information about QupZilla's current configuration - relevant for troubleshooting. Please include this information when submitting bug reports. 此頁包涵QupZilla現在的設定相關訊息(也許有關解決問題)。回報問題給我們時請附上這些資訊。 Browser Identification 瀏覽器識別 Paths 路徑 Build Configuration 建立設定 Preferences 偏好設定 Option 選項 Value 數值 Extensions 擴充功能 Name 名稱 Author 作者 Description 描述 Application version 軟體版本 Qt version Qt 版本 Build time 建構時間 Platform 平台 Profile 個人設定 Settings 設定 Saved session 儲存的交談 Pinned tabs 固定分頁 Data 資料 Themes 主題 Translations 翻譯 Disabled 已停用 <b>Enabled</b> <b>已啟用</b> Debug build 除錯組建 WebGL support WebGL 支援 Windows 7 API Windows 7 API KDE integration KDE 整合 Portable build 可攜版組建 No available extensions. 無可用擴充功能。 RSSManager RSS Reader RSS 閱讀器 Empty 空白 Add feed 新增饋流 Edit feed 編輯饋流 Delete feed 刪除饋流 Optimize Database 最佳化資料庫 Reload 重新載入 News 新聞 Loading... 正載入中... You don't have any RSS Feeds.<br/> Please add some with RSS icon in navigation bar on site which offers feeds. 您沒有訂閱任何 RSS 饋流。<br/>請加入一些導覽列中有 RSS 圖示的網站,它們有提供饋流。 Add new feed 新增饋流 Please enter URL of new feed: 請輸入新饋流的網址: New feed 新饋流 Fill title and URL of a feed: 填寫標題和饋流的網址: Feed title: 饋流標題: Feed URL: 饋流網址: Edit RSS Feed 編輯 RSS 饋流 Open link in current tab 在目前分頁中開啟連結 Open link in new tab 在新分頁中開啟連結 Error in fetching feed 擷取饋流時發生錯誤 RSS feed duplicated RS 饋流已重複 You already have this feed. 您已經訂閱過這道饋流。 RSSNotification Add this feed into 新增此訂閱至 Add 新增 RSS feed <b>"%1"</b> RSS訂閱 <b>"%1"</b> Internal Reader 內建的閱讀器 Other... 其他... Liferea not running Liferea 沒有執行 Liferea must be running in order to add new feed. 必須執行Liferea才能新增訂閱。 To add this RSS feed into other application, please use this information:<br/><br/><b>Title: </b>%1<br/><b>Url: </b>%2<br/><br/>Url address of this feed has been copied into your clipboard. 如果要新增此RSS訂閱至其他程式,請參照資訊"<br/><br/><b>標題:</b>%1<br/><b>位址: </b>%2<br/><br/>此訂閱的位址已複製到剪貼板上。 Add feed into other application 新增訂閱至其他程式 RSSWidget Add RSS Feeds from this site 從這個網站新增 RSS 饋流 Untitled feed 未命名饋流 Add 新增 RecoveryWidget Start New Session 開啟新會話 Restore 回復 Window %1 視窗 %1 RegisterQAppAssociation Warning! 警告! There are some problems. Please, reinstall QupZilla. Maybe relaunch with administrator right do a magic for you! ;) 有問題發生了。請重新安裝QupZilla。 也許用系統管理員重新啟動QupZilla會奇蹟似的復活! ;) RssIcon Add RSS from this page... 從本網頁加入 RSS... SSLManager Certificate Manager 授權憑證管理員 CA Authorities Certificates CA 授權憑證 Show info 顯示訊息 This is a list of CA Authorities Certificates stored in the standard system path and in user specified paths. 這是個標準系統路徑和使用者指定路徑中的 CA 授權憑證清單。 Local Certificates 本地憑證 Import 匯入 Remove 移除 This is a list of Local Certificates stored in your user profile. It also contains all certificates, that have received an exception. 這是個儲存在您使用者個人設定中的本地端憑證清單。它包含所有的憑證,以及您儲存過的例外。 Settings 設定 Add 新增 If CA Authorities Certificates were not automatically loaded from the system, you can specify paths manually where the certificates are stored. 如果 CA 授權憑證無法自動從系統中載入,您可以手動指定憑證儲存的路徑。 <b>NOTE:</b> Setting this option is a high security risk! <b>注意:</b>設定這個選項將認您處在高安全風險之中! Ignore all SSL Warnings 忽略所有 SSL 警告 All certificates must have .crt suffix. After adding or removing certificate paths, it is neccessary to restart QupZilla in order to take effect the changes. 所有憑證的都必須有 .crt 後綴檔名。新增或移除憑證路徑後,需要重新啟動 QupZilla 才能生效。 Choose path... 選擇路徑... Import certificate... 匯入授權憑證... Certificate Informations 憑證訊息 SearchEnginesDialog Manage Search Engines 管理搜尋引擎 Add... 新增... Remove 移除 Edit 編輯 Set as default 設定為預設 Up 往上 Down 往下 Search Engine 搜尋引擎 Shortcut 捷徑 Defaults 預設 Add Search Engine 新增搜尋引擎 Remove Engine 移除引擎 You can't remove the default search engine.<br>Set a different engine as default before removing %1. 您無法移除預設的搜尋引擎。<br>在移除%1前請先將預設設成其他的引擎。 Edit Search Engine 編輯搜尋引擎 SearchEnginesManager Search Engine Added 搜尋引擎已加入 Search Engine "%1" has been successfully added. 搜尋引擎「%1」已成功加入。 Search Engine is not valid! 無效的搜尋引擎! Error 錯誤 Error while adding Search Engine <br><b>Error Message: </b> %1 新增搜尋引擎時發生錯誤 <br><b>錯誤訊息:</b> %1 SearchToolBar No results found. 無搜尋結果。 SearchToolbar Search: 搜尋: Search... 搜尋... Highlight 突顯 Case sensitive 區分大小寫 SideBar Bookmarks 書籤 History 歷史 SiteInfo Site Info 網站訊息 General 通用規則 Media 多媒體 Databases 資料庫 Security 安全 Size: 大小: Site address: 網站位址: Encoding: 編碼: Meta tags of site: 網站的 Meta 標籤: Tag 標籤 Value 數值 <b>Security information</b> <b>安全資訊</b> Details 細節 Image 影像 Image address 影像位址 <b>Preview</b> <b>預覽</b> <b>Database details</b> <b>資料庫細節</b> Name: 名稱: Path: 路徑: <database not selected> < 無選取資料庫> <not set in certificate> < 沒有設置憑證> No databases are used by this page. 此頁沒有使用任何資料庫。 <b>Connection is Encrypted.</b> <b>連結是有加密的。</b> <b>Your connection to this page is secured with this certificate: </b> <B>您與此頁的連線已透過此憑證而更安全:</b> <b>Connection Not Encrypted.</b> <b>連結沒有加密。</b> <b>Your connection to this page is not secured!</b> <b>您連結到這個網頁不安全啊!</b> Copy Image Location 複製影像位址 Copy Image Name 複製影像名稱 Save Image to Disk 儲存影像至磁碟中 Error! 錯誤! This preview is not available! 無法使用預覽! Save image... 儲存影像... Cannot write to file! 無法寫入檔案! Preview not available 預覽不可用 SiteInfoWidget More... 更多... Your connection to this site is <b>secured</b>. 您連結的網站是<b>安全</b>的。 Your connection to this site is <b>unsecured</b>. 您連結的網站是<b>不安全</b>的。 This is your <b>%1</b> visit of this site. 這是您<b>%1</b>次造訪此網站。 You have <b>never</b> visited this site before. 您<b>從未</b>造訪過此網站。 first 第一 second 第二 third 第三 SourceViewer Source of 源碼來自 File 檔案 Load in page 載入至頁面 Save as... 另存為... Close 關閉 Edit 編輯 Undo 取消 Redo 重作 Cut 剪下 Copy 複製 Paste 貼上 Select All 全選 Find 尋找 Go to Line... 前往列... View 檢視 Reload 重新載入 Editable 可編輯 Word Wrap 自動換列 Source loaded in page 源碼已載入至頁面 Cannot load in page. Page has been closed. 無法載入至頁面。頁面已關閉。 Save file... 儲存檔案... Error! 錯誤! Cannot write to file! 無法寫入檔案! Error writing to file 寫入檔案時發生錯誤 Source successfully saved 源碼儲存成功 Source reloaded 源碼已重新載入 Cannot reload source. Page has been closed. 無法重新載入源碼。網頁已關閉。 Editable changed 可編輯已改變 Word Wrap changed 自動換列已變更 Enter line number 輸入列號 SourceViewerSearch Search: 搜尋: Search... 搜尋... Whole words 搜尋整個詞 SpeedDial Image files 影像檔案 Select image... 選擇影像... Unable to load 無法載入 SpellCheckDialog SpellCheck 拼字檢查 <b>Dictionary path</b> <b>目錄路徑</b> Change... 更換... <b>User dictionary</b> <b>使用者目錄</b> Add 新增 Remove 移除 Using Hunspell library 使用Humspell字庫 Choose dictionary path... 選擇目錄路徑... Add new word... 新增單字... Add new word: 新增單字: Speller No suggestions 沒有建議單字 Add to dictionary 新增至目錄 Settings 設定 SqueezeLabelV2 Copy 複製 SslErrorDialog SSL Certificate Error! SSL認證錯誤! Only for this session 僅限於此工作階段 TabBar &New tab 新分頁(&N) &Stop Tab 停止分頁(&S) &Reload Tab 重新載入分頁(&R) &Duplicate Tab 製作分頁複本(&D) D&etach Tab 脫離分頁(&e) Un&pin Tab 取消分頁釘(&P) &Pin Tab 釘住分頁(&P) Re&load All Tabs 重新載入所有分頁(&L) &Bookmark This Tab 將此分頁加入書籤(&B) Bookmark &All Tabs 將所有分頁加入書籤(&A) Close Ot&her Tabs 關閉其他分頁(&H) Cl&ose 關閉(&O) Reloa&d All Tabs 重新載入所有分頁(&D) Restore &Closed Tab 還原關閉的分頁(&C) Close Tabs Do you really want to close other tabs? TabWidget New Tab 新分頁 List of tabs 分頁清單 Loading... 正載入中... No Named Page 未命名頁面 Currently you have %1 opened tabs 現在您有 %1 個開啟的分頁 New tab 新分頁 Empty 空頁面 Restore All Closed Tabs 還原所有關閉的分頁 Clear list 清除清單 TabbedWebView Loading... 載入中... %1 - QupZilla %1 - QupZilla Inspect Element 審查元素 ThemeManager <b>Name:</b> <b>名稱:</b> <b>Author:</b> <b>作者:</b> <b>Description:</b> <b>描述:</b> License 授權 ToolButton Stop 停止 Reload 重新載入 Updater Update available 有可用更新 New version of QupZilla is ready to download. 新版本 QupZilla 已準備好可下載。 Update 更新 UserAgentDialog User Agent Manager 用戶代理程式管理員 Change global User Agent 更改全域用戶代理 Use different User Agents for specified sites 在特定的網站上使用不同的用戶代理 Site 網站 User Agent 用戶代理 Add 新增 Remove 移除 Edit 編輯 Add new site 新增網站 Edit site 編輯網站 Site domain: 網站域名: User Agent: 用戶代理: WebInspectorDockWidget Web Inspector 網頁審視器 WebPage QupZilla cannot handle <b>%1:</b> links. The requested link is <ul><li>%2</li></ul>Do you want QupZilla to try open this link in system application? QupZilla 無法處理 <b>%1:</b> 連結。請求的連結為 <ul><li>%2</li></ul>您想要讓 QupZilla 以系統應用程式試著開啟此連結嗎? Remember my choice for this protocol 記住我對此協定的選擇 External Protocol Request 外部協定請求 To show this page, QupZilla must resend request which do it again (like searching on making an shopping, which has been already done.) QupZilla必須重新送出請求才能顯示此頁 (像是在進行已進行過的搜尋。) Confirm form resubmission 確認表單要重新再次提交 Select files to upload... 選擇要上傳的檔案... Server refused the connection 伺服器已拒絕連結 Server closed the connection 伺服器已關閉連結 Server not found 找不到伺服器 Connection timed out 連線逾時 Untrusted connection 不受信任的連結 Temporary network failure 網路連線暫時失敗 Proxy connection refused 代理連線遭拒絕 Proxy server not found 找不到代理伺服器 Proxy connection timed out 代理連線逾時 Proxy authentication required 需要代理驗證 Content not found 找不到內容 Unknown network error 未知網路錯誤 AdBlocked Content 被 AdBlock 封鎖的內容 Blocked by <i>%1</i> 被<i>%1</i>封鎖 Content Access Denied 讀取內容被拒 Error code %1 錯誤代碼 %1 Failed loading page 載入頁面失敗 QupZilla can't load page. QupZilla無法載入此頁。 QupZilla can't load page from %1. QupZilla 無法從 %1 載入網頁。 Check the address for typing errors such as <b>ww.</b>example.com instead of <b>www.</b>example.com 檢查位址是否有輸入錯誤,如打成了 <b>ww.</b>example.com,而不是 <B>www.</b>example.com If you are unable to load any pages, check your computer's network connection. 如果無法載入任何頁面,請檢查您的電腦的網路連接。 If your computer or network is protected by a firewall or proxy, make sure that QupZilla is permitted to access the Web. 如果您的電腦或網路受到防火牆或代理的保護,請確認 QupZilla 是否准許存取網路。 Try Again 重試 JavaScript alert JavaScript 警告 Prevent this page from creating additional dialogs 防止此頁建立額外的對話窗 Choose file... 選擇檔案... Cannot read data from <b>%1</b>. Upload was cancelled! 無法讀取來自<b>%1</b>的資料,取消上傳! Cannot read file! 無法讀取檔案! WebSearchBar Manage Search Engines 管理搜尋引擎 Add %1 ... 新增 %1 ... Paste And &Search 貼上並搜尋(&S) Clear All 全部清除 Show suggestions 顯示支援 Search when engine changed 當搜尋引擎變更時進行搜尋 WebView No Named Page 未命名網頁 Create Search Engine 建立搜尋引擎 Cut 剪下 Copy 複製 Paste 貼上 Select All 全選 Default 預設 Left to Right 左到右 Right to Left 又到左 Bold 粗體 Italic 斜體 Underline 底線 &Reload 重新載入(&R) S&top 停止(&T) Delete 刪除 &Back 上一頁(&B) &Forward 下一頁(&F) This frame 這個框架 Show &only this frame 僅顯示此框架(&O) Show this frame in new &tab 在新分頁中顯示此框架(&T) Print frame 列印此框架 Zoom &in 拉近(&I) &Zoom out 拉遠(&Z) Reset 重置 Show so&urce of frame 顯示此框架的原始碼(&u) Book&mark page 加入書籤(&m) &Save page as... 另存網頁為(&S)... &Copy page link 複製網頁連結(&C) Send page link... 傳送網頁連結... &Print page 列印網頁(&P) Select &all 全選(&A) Validate page 驗證此頁 Show so&urce code 顯示源碼(&U) Show info ab&out site 顯示有關網站的資訊(&O) Open link in new &tab 在新分頁中開啟連結(&T) Open link in new &window 在新視窗中開啟連結(&W) B&ookmark link 書籤連結(&O) &Save link as... 另存連結為(&S)... Send link... 傳送連結... &Copy link address 複製連結位址(&C) Show i&mage 顯示影像(&M) Copy im&age 複製影像(&A) Copy image ad&dress 複製圖片位址(&d) &Save image as... 影像另存為(&S)... Send image... 傳送影像... Send text... 傳送文字... Google Translate Google 翻譯 Dictionary 字典 Go to &web address 前往網址(&W) Search "%1 .." with %2 使用 %2 搜尋「%1 ..」 Search with... 以此搜尋... &Play 播放(&P) &Pause 暫停(&P) Un&mute 取消靜音(&M) &Mute 靜音(&M) &Copy Media Address 複製媒體位址(&C) &Send Media Address 傳送媒體位址(&S) Save Media To &Disk 儲存媒體至磁碟中(&D) Check &Spelling 檢查拼音(&S) Languages 語言 jsAlert Prevent this page from creating additional dialogs 防止此頁建立額外對話窗 qupzilla-1.6.0/windows/000077500000000000000000000000001226107126500150535ustar00rootroot00000000000000qupzilla-1.6.0/windows/AllAssociation.nsh000066400000000000000000000334471226107126500205050ustar00rootroot00000000000000/* _____________________________________________________________________________ All Association _____________________________________________________________________________ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Date: 2012-Nov-18, S. Razi Alavizadeh, v0.1 ; ; Some Codes are based on code taken from: ; ; http://nsis.sourceforge.net/File_Association ; ; Ability to register protocol and extention associations. ; ; It supports old association method and new method by using ; ; IApplicationAssociationRegistration APIs. ; ; that needed 'AppAssocReg' plugins, downloadable from: ; ; http://nsis.sourceforge.net/SetVistaDefaultApp_plug-in ; ; and also add support for set as default backuped association when ; ; uninstalling. This needed 'Registery' plugins. ; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Requirment: 1. 'AppAssocReg' plugins. 2. 'Registery' plugins. Usage in script: 1. !include "AllAssociation.nsh" 2. [Section|Function] ${AllAssociationFunction} "Param1" "Param2" "..." $var [SectionEnd|FunctionEnd] AllAssociationFunction=[RegisterAssociation|UnRegisterAssociation|CreateProgId|UpdateSystemIcons|SetAsDefaultNoAppName] _____________________________________________________________________________ ${RegisterAssociation} "[assoc_name]" "[executable]" "[prog_id]" "[description]" "[icon]" "[type]" "[assoc_name]" ; assoc_name, which is file format's extention if type is "file" and is protocol's name if type is "protocol". ; "[executable]" ; executable which opens the file format or is protocol handler. ; "[prog_id]" ; registery internal id for assoc_name, on Vista+ if type is "protocol" this is our registered ProgId for assoc_name and is used for comparison. ; "[description]" ; description for the assoc_name. This will be display in Windows Explorer. ; "[icon]" ; icon path for this association. ; "[type]" ; type of association. "file" for extention and "protocol" for protocol handler. ; ${UnRegisterAssociation} "[assoc_name]" "[prog_id]" "[executable]" "[type]" "[assoc_name]" ; assoc_name, which is file format's extention if type is "file" and is protocol's name if type is "protocol". ; "[prog_id]" ; registery internal id for assoc_name ; "[executable]" ; executable which opens the file format or is protocol handler. ; "[type]" ; type of association. "file" for extention and "protocol" for protocol handler. ; ${CreateProgId} "[prog_id]" "[executable]" "[description]" "[icon]" "[prog_id]" ; registery internal id for assoc_name ; "[executable]" ; executable which opens the file format or is protocol handler. ; "[description]" ; description for the assoc_name. This will be display in Windows Explorer. ; "[icon]" ; icon path for this prog_id. ; ${SetAsDefaultNoAppName} "[prog_id]" "[assoc_name]" "[type]" "[prog_id]" ; registery internal id for assoc_name ; "[assoc_name]" ; assoc_name, which is file format's extention if type is "file" and is protocol's name if type is "protocol". ; "[type]" ; type of association. "file" for extention and "protocol" for protocol handler. ; ${UpdateSystemIcons} ; it has not arguments and just notifies OS for updating icons for new associations. _____________________________________________________________________________ Macros _____________________________________________________________________________ Change log window verbosity (default: 3=no script) Example: !include "AllAssociation.nsh" !insertmacro RegisterAssociation ${AllAssociation_VERBOSE} 4 # all verbosity !insertmacro UnRegisterAssociation ${AllAssociation_VERBOSE} 3 # no script */ !ifndef AllAssociation_INCLUDED !define AllAssociation_INCLUDED !include Util.nsh !verbose push !verbose 3 !ifndef _AllAssociation_VERBOSE !define _AllAssociation_VERBOSE 3 !endif !verbose ${_AllAssociation_VERBOSE} !define AllAssociation_VERBOSE `!insertmacro AllAssociation_VERBOSE` !verbose pop !macro AllAssociation_VERBOSE _VERBOSE !verbose push !verbose 3 !undef _AllAssociation_VERBOSE !define _AllAssociation_VERBOSE ${_VERBOSE} !verbose pop !macroend ; define some registery macros !define RegistryRead `!insertmacro RegistryRead` !macro RegistryRead _PATH _VALUE _STRING _TYPE registry::_Read /NOUNLOAD `${_PATH}` `${_VALUE}` Pop ${_STRING} Pop ${_TYPE} !macroend !define RegistryWrite `!insertmacro RegistryWrite` !macro RegistryWrite _PATH _VALUE _STRING _TYPE _ERR registry::_Write /NOUNLOAD `${_PATH}` `${_VALUE}` `${_STRING}` `${_TYPE}` Pop ${_ERR} !macroend !define RegistryFind `!insertmacro RegistryFind` !macro RegistryFind _HANDLE _PATH _VALUEORKEY _STRING _TYPE registry::_Find /NOUNLOAD `${_HANDLE}` Pop ${_PATH} Pop ${_VALUEORKEY} Pop ${_STRING} Pop ${_TYPE} !macroend !define RegistryOpen `!insertmacro RegistryOpen` !macro RegistryOpen _PATH _OPTIONS _HANDLE registry::_Open /NOUNLOAD `${_PATH}` `${_OPTIONS}` Pop ${_HANDLE} !macroend !macro RegisterAssociationCall _EXTENSION _EXECUTABLE _PROG_ID _DESCRIPTION _ICON _TYPE !verbose push !verbose ${_AllAssociation_VERBOSE} Push `${_EXECUTABLE}` Push `${_PROG_ID}` Push `${_DESCRIPTION}` Push `${_ICON}` ${CallArtificialFunction} CreateProgId_ Push `${_PROG_ID}` Push `${_EXECUTABLE}` Push `${_EXTENSION}` Push `${_TYPE}` ${CallArtificialFunction} RegisterAssociation_ !verbose pop !macroend !macro UnRegisterAssociationCall _EXTENSION _PROG_ID _EXECUTABLE _TYPE !verbose push !verbose ${_AllAssociation_VERBOSE} Push `${_EXTENSION}` Push `${_EXECUTABLE}` Push `${_PROG_ID}` Push `${_TYPE}` ${CallArtificialFunction} UnRegisterAssociation_ ; backuped ProgId was pushed from UnRegisterAssociation_ Push `${_EXTENSION}` Push `${_TYPE}` ; type of association ${CallArtificialFunction} SetAsDefaultNoAppName_ !verbose pop !macroend !macro CreateProgIdCall _PROG_ID _EXECUTABLE _DESCRIPTION _ICON !verbose push !verbose ${_AllAssociation_VERBOSE} Push `${_EXECUTABLE}` Push `${_PROG_ID}` Push `${_DESCRIPTION}` Push `${_ICON}` ${CallArtificialFunction} CreateProgId_ !verbose pop !macroend !macro SetAsDefaultNoAppNameCall _PROG_ID _EXTENSION _TYPE !verbose push !verbose ${_AllAssociation_VERBOSE} Push `${_PROG_ID}` Push `${_EXTENSION}` Push `${_TYPE}` ${CallArtificialFunction} SetAsDefaultNoAppName_ !verbose pop !macroend !define SetAsDefaultNoAppName `!insertmacro SetAsDefaultNoAppNameCall` !define un.SetAsDefaultNoAppName `!insertmacro SetAsDefaultNoAppNameCall` !macro SetAsDefaultNoAppName !macroend !macro un.SetAsDefaultNoAppName !macroend !macro SetAsDefaultNoAppName_ !verbose push !verbose ${_AllAssociation_VERBOSE} Pop $R0 ; TYPE Pop $R1 ; EXTENSION Pop $R2 ; PROG_ID StrCmp $R2 "No ProgId Pushed" NoBackupedProgId 0 StrCmp $R2 "" NoBackupedProgId 0 StrCmp $R1 "" NoBackupedProgId 0 ${RegistryOpen} "HKLM\SOFTWARE\RegisteredApplications" "/K=0 /V=1 /S=0 /B=1" $R8 ; R8 = first registery handle StrCmp $R8 0 close 0 loop1: ${RegistryFind} "$R8" $1 $R3 $3 $4 ; $R3 = AppRegisteredName StrCmp $1 "" close 0 ${RegistryOpen} "HKLM\$3" "/K=0 /V=1 /S=0 /B=1 /N='$R1'" $R9 ; R9 = second registery handle StrCmp $R9 0 loop1 0 loop2: ${RegistryFind} "$R9" $1 $2 $R4 $4 ; $R4 = ProgId registered for EXTENSION StrCmp $1 "" loop1 0 StrCmp $R4 "$R2" 0 loop2 AppAssocReg::SetAppAsDefault "$R3" "$R1" "$R0" close: registry::_Close /NOUNLOAD "$R9" registry::_Close /NOUNLOAD "$R8" registry::_Unload NoBackupedProgId: !verbose pop !macroend !define CreateProgId `!insertmacro CreateProgIdCall` !define un.CreateProgId `!insertmacro CreateProgIdCall` !macro CreateProgId !macroend !macro un.CreateProgId !macroend !macro CreateProgId_ !verbose push !verbose ${_AllAssociation_VERBOSE} Pop $R0 ;ICON Pop $R1 ;DESCRIPTION Pop $R2 ;PROG_ID Pop $R3 ;EXECUTABLE ReadRegStr $0 HKCR $R2 "" ; StrCmp $0 "" 0 JustSkip ; if icon and description are present then just skip WriteRegStr HKCR "$R2" "" "$R1" WriteRegStr HKCR "$R2\shell" "" "open" WriteRegStr HKCR "$R2\DefaultIcon" "" "$R0" ;JustSkip: WriteRegStr HKCR "$R2\shell\open\command" "" '"$R3" "%1"' WriteRegStr HKCR "$R2\shell\edit" "" "Edit $R1" WriteRegStr HKCR "$R2\shell\edit\command" "" '"$R3" "%1"' !verbose pop !macroend !define RegisterAssociation `!insertmacro RegisterAssociationCall` !define un.RegisterAssociation `!insertmacro RegisterAssociationCall` !macro RegisterAssociation !macroend !macro un.RegisterAssociation !macroend !macro RegisterAssociation_ !verbose push !verbose ${_AllAssociation_VERBOSE} Pop $R0 ;type = file or protocol Pop $R1 ;association name = ext or protocol Pop $R2 ;exe Pop $R3 ;prog_id StrCmp "$R0" "file" 0 NoFile ; file ReadRegStr $1 HKCR $R1 "" ; read current file association StrCmp "$1" "" NoFileExtBackup ; is it empty StrCmp "$1" "$R3" NoFileExtBackup ; it is our own WriteRegStr HKCR $R1 "backup_val" "$1" ; backup current value NoFileExtBackup: WriteRegStr HKCR $R1 "" "$R3" ; set our file association Goto VistaPlus NoFile: ; Protocol StrCmp "$R0" "protocol" 0 NotSupported ; write protocol flag WriteRegStr HKCR $R1 "URL Protocol" "" ;get prog_id of current default AppAssocReg::QueryCurrentDefault $R1 "protocol" "user" Pop $1 StrCmp "$1" "method failed" NoProgID 0 StrCmp "$1" "method not available" NoProgID 0 StrCmp "$1" "$R3" NoProgID 0 ; it is our own WriteRegStr HKCR "$R1\shell\open\command" "backup_progid" "$1" ; backup current progid NoProgID: ; ReadRegStr $1 HKCR "$R1\shell\open\command" "" ; read current protocol association ; some applications write this as REG_EXPAND_SZ and don't work with REG_SZ (e.g.: some version of Opera) ${RegistryRead} "HKCR\$R1\shell\open\command" "" '$1' '$0' ; read current protocol association and its registery type StrCmp "$1" "" NoProtocolBackup ; is it empty StrCmp "$1" '"$R2" "%1"' NoProtocolBackup ; it is our own ;WriteRegStr HKCR "$R1\shell\open\command" "backup_val" "$1" ; backup current value ${RegistryWrite} "HKCR\$R1\shell\open\command" "backup_val" '$1' '$0' '$2'; backup current value and its registery type NoProtocolBackup: WriteRegStr HKCR "$R1\shell\open\command" "" '"$R2" "%1"' ; set our file association ;Goto VistaPlus ; TODO: type = startMenu or type = mime VistaPlus: ;Vista and newer need some more works AppAssocReg::SetAppAsDefault "${PRODUCT_NAME}" "$R1" "$R0" NotSupported: registry::_Unload !verbose pop !macroend !define UnRegisterAssociation `!insertmacro UnRegisterAssociationCall` !define un.UnRegisterAssociation `!insertmacro UnRegisterAssociationCall` !macro UnRegisterAssociation !macroend !macro un.UnRegisterAssociation !macroend !macro UnRegisterAssociation_ !verbose push !verbose ${_AllAssociation_VERBOSE} Pop $R3 ;type = file or protocol Pop $R2 ;prog_id Pop $R1 ;exe Pop $R0 ;association name = ext or protocol StrCmp "$R3" "file" 0 NoFile ; file ReadRegStr $1 HKCR $R0 "" StrCmp $1 $R2 0 NoOwn ; only do this if we own it ReadRegStr $1 HKCR $R0 "backup_val" StrCmp $1 "" 0 RestoreFile ; if backup="" then delete the whole key Push `"No ProgId Pushed"` DeleteRegKey HKCR $R0 Goto NoOwn RestoreFile: Push `$1` WriteRegStr HKCR $R0 "" $1 DeleteRegValue HKCR $R0 "backup_val" DeleteRegKey HKCR $R2 ;Delete key with association name settings Goto NoOwn NoFile: ; Protocol StrCmp "$R3" "protocol" 0 NoOwn ReadRegStr $1 HKCR "$R0\shell\open\command" "" StrCmp $1 '"$R1" "%1"' 0 NoOwn ; only do this if we own it ; ReadRegStr $1 HKCR "$R0\shell\open\command" "backup_val" ${RegistryRead} "HKEY_CLASSES_ROOT\$R0\shell\open\command" "backup_val" '$1' '$0' ; read current protocol association and its registery type StrCmp $1 "" 0 RestoreProtocol ; if backup="" then delete the whole key Push `"No ProgId Pushed"` DeleteRegKey HKCR "$R0\shell\open\command" Goto NoOwn RestoreProtocol: ReadRegStr $2 HKCR "$R0\shell\open\command" "backup_progid" StrCmp $2 "" 0 HasProgId Push `"No ProgId Pushed"` Goto NoProgID HasProgId: Push `$2` NoProgID: ;WriteRegStr HKCR "$R0\shell\open\command" "" $1 ${RegistryWrite} "HKEY_CLASSES_ROOT\$R0\shell\open\command" "" '$1' '$0' '$2' DeleteRegValue HKCR "$R0\shell\open\command" "backup_val" DeleteRegValue HKCR "$R0\shell\open\command" "backup_progid" StrCmp $R2 "" NoOwn 0 ;Delete protocol association if it's present DeleteRegKey HKCR $R2 ;Delete key with association name settings ;Goto NoOwn ; TODO: type = startMenu or type = mime NoOwn: registry::_Unload !verbose pop !macroend !define UpdateSystemIcons `!insertmacro UpdateSystemIcons_` !define un.UpdateSystemIcons `!insertmacro UpdateSystemIcons_` !macro UpdateSystemIcons !macroend !macro un.UpdateSystemIcons !macroend ; !defines for use with SHChangeNotify !ifdef SHCNE_ASSOCCHANGED !undef SHCNE_ASSOCCHANGED !endif !define SHCNE_ASSOCCHANGED 0x08000000 !ifdef SHCNF_FLUSHNOWAIT !undef SHCNF_FLUSHNOWAIT !endif !define SHCNF_FLUSHNOWAIT 0x3000 !macro UpdateSystemIcons_ ; Using the system.dll plugin to call the SHChangeNotify Win32 API function so we ; can update the shell. System::Call "shell32::SHChangeNotify(i,i,i,i) (${SHCNE_ASSOCCHANGED}, ${SHCNF_FLUSHNOWAIT}, 0, 0)" !macroend !endif # !AllAssociation_INCLUDED qupzilla-1.6.0/windows/install.ico000066400000000000000000000226761226107126500172320ustar00rootroot0000000000000000 %(0` ehɿCD??@Ƽ:A@?ɿ<@=@?D@?@?A<=@??AC>C?<Ĺ9A=A>Ƽ:=?@@=@@Ⱦ;DdhG˾829ķ39ƹ53;ƹ6Ź63̿9ǻ8;<;ǻ8=ǻ8;ɽ9Ǽ8;;˿9=<;:˿81¶59ǻ7ɼ814˾677Ÿ4ʽ57ö22ȼ8J>˾6Ķ.µ.3Ǻ15.ƹ2˾5ö22ǻ5Ȼ6:˿89ĸ6:ɽ89ʾ8ʾ8˿9˿9ǻ7=;;3˾80˾88ƹ500ƹ3˾34Ǻ1Ȼ13ɻ/,ö.9>˿=ǹ1Ǻ/,ķ0Ϳ3Ÿ26ö372Ÿ5ĸ59::ʾ8ø6;::::;;ȼ8>>˿9ĸ6˾84:814ĸ4ȼ55ƹ2ƺ27ɼ1.ǹ/0ķ2B@ö1ʼ1ķ0ö0˽4ǻ3ɼ578ʾ84Ź69:;:Ź7=CX|ݕߓیmTȼ;;ȼ8ɽ8:ƺ73ʾ8ʽ78˿6185/Ϳ2̾1õ.7CA5.ķ1ķ1µ27ʽ6˾79:÷5Ź7ɽ8<=Giݘ\<:4˿99:;÷487175Ķ039AB84.1ʽ5ɼ5:̿8Ȼ7==ǻ8ɽ9Oſn6<:>ȼ7Ǻ6:388Ǻ344̿6>?67914ƹ6ĸ5<¶6:Ź7:4:9Ź365˾3Ǻ5A@ƺ5ɼ499/25ƺ8;5^Ĺ9ʾ9ĸ6;949̿5Ÿ2ɻ2ɽ6?>̿7÷3ĸ59˿8135Ĺ7xŴȽC:ƺ74˾8ɽ7ƺ5ɽ5Ǻ35ƽ<ɾ=4¶404̿9ø723ύجέʭ·F6ɽ86ɼ7ɽ73.3@:433/17ĸ8Ѕ̶D7Ǻ8520/·5ź<7.03411nɿǻ:5321/2;;/-.34ŻKֳρ32..16ĺ=ɿA72//2ؙҊJ.0126ø<52564X۠sӖ3202499.+05ڝvoѱsQ/0027520-N}x{vttvybtkhޤ͊331062++,wn߂yogcaa```Hd~՞֍߫>,+,4/*+1Ԛߙߕߐޅބhaa```^]gpe܂nd}՛էՋوێەܙߡޥީ_.--13-+Eکݪٞާݞۖܒܐ݋zfmm``_]\dpkY|́VǺȼrӃԇҊӎԑءםڟ߫{-)*0,''^٦Օُٜؔڏ؇ocbcr\\Z]jk[VSԸЏ[Ӿɷg[rS{·ʇΓϗΒӜÇ;(*/-((zχޯܮԅ~iab`][GHbcWVVTWuSWjȌоrԽU]y zyʁ~ąʒƉːNJL+,1,')Ǔϊ߲zcYb__X>mJVUVUQaRn\OӹPʵZѹRd}$Oyxʼx˽zĊdžPx#z$)){t"zs"ľА̓חUabb``NlOJ[XVTN~a4#UwM\Yt!#rlȹqŶqʽ̽Kslvn}&+~)5Ïאligdlt]F]ZZXWURdly.)/-wd5q,l}zăƹ|tq=vn!un!|'̓ۚtzkhesp_^]jjYYXVUVs~a13'.'UuqtxS.wt@{łdJ9or[dvk__ab`r^Z[YX_^6!*$&#~" mQWWb_`fhecg݂c^]YYk}9')%;yяߢܨأԞIHRaknkig^e]N>21G& !.U %|ݝaBVltqomkb¶s^J>=:,$%$+&6~jtxutnha2N#&))!X4C}ݚޛz{zsijځ3U&(+,*)Z(11}|xy{u:T,.02,+0}ޚ؀tM_80.S C wP֕ޚGS.46+ ) 320~Ӷ߮֙EZ+159>=;3=6ݵ؜C_%'-39<;7HLݳsqa\[XC5892?Ii[LAj935#>bX %?ٟȰE˲Hz_9//*)D4BVԎ۬ϹWz`2'1UA$%RC@LGYBͽj](CfAa6(X}μ~Z>,}eUf\URDd ; 2012-2013 S. Razi Alavizadeh ; ; For compiling this script you need following plugins: ; FindProcDLL_plug-in, KillProcDLL_plug-in and 'AllAssociation.nsh' needs ; Registry_plug-in, Application_Association_Registration_plug-in ; Unicode version of them can be downloaded from: ; http://sourceforge.net/projects/findkillprocuni/files/bin/ ; http://nsis.sourceforge.net/Application_Association_Registration_plug-in ; http://nsis.sourceforge.net/Registry_plug-in RequestExecutionLevel admin ; WinVer.nsh was added in the same release that RequestExecutionLevel so check ; if ___WINVER__NSH___ is defined to determine if RequestExecutionLevel is ; available. !include /NONFATAL WinVer.nsh !addplugindir "wininstall\" !include "FileFunc.nsh" !include "wininstall\AllAssociation.nsh" SetCompressor /SOLID /FINAL lzma !define PRODUCT_NAME "QupZilla" !define /date PRODUCT_VERSION "1.6.0" !define PRODUCT_DIR_REGKEY "Software\Microsoft\Windows\CurrentVersion\App Paths\qupzilla.exe" !define PRODUCT_UNINST_KEY "Software\Microsoft\Windows\CurrentVersion\Uninstall\${PRODUCT_NAME}" !define PRODUCT_UNINST_ROOT_KEY "HKLM" !define PRODUCT_CAPABILITIES_KEY "Software\${PRODUCT_NAME}\Capabilities" !include "MUI.nsh" !define MUI_ABORTWARNING !define MUI_ICON "wininstall\install.ico" !define MUI_UNICON "wininstall\uninstall.ico" !define MUI_WELCOMEFINISHPAGE_BITMAP "wininstall\welcome.bmp" !define MUI_UNWELCOMEFINISHPAGE_BITMAP "wininstall\welcome.bmp" !insertmacro MUI_PAGE_WELCOME !insertmacro MUI_PAGE_LICENSE COPYRIGHT.txt !insertmacro MUI_PAGE_COMPONENTS !insertmacro MUI_PAGE_DIRECTORY !insertmacro MUI_PAGE_INSTFILES !define MUI_FINISHPAGE_RUN "$INSTDIR\qupzilla.exe" !insertmacro MUI_PAGE_FINISH !insertmacro MUI_UNPAGE_WELCOME !insertmacro MUI_UNPAGE_CONFIRM !insertmacro MUI_UNPAGE_INSTFILES !insertmacro MUI_UNPAGE_FINISH !insertmacro MUI_LANGUAGE "English" !insertmacro MUI_LANGUAGE "Czech" !insertmacro MUI_LANGUAGE "Slovak" !insertmacro MUI_LANGUAGE "German" !insertmacro MUI_LANGUAGE "Dutch" !insertmacro MUI_LANGUAGE "Portuguese" !insertmacro MUI_LANGUAGE "Greek" !insertmacro MUI_LANGUAGE "French" !insertmacro MUI_LANGUAGE "Italian" !insertmacro MUI_LANGUAGE "Romanian" !insertmacro MUI_LANGUAGE "Tradchinese" !insertmacro MUI_LANGUAGE "Simpchinese" !insertmacro MUI_LANGUAGE "Indonesian" !insertmacro MUI_LANGUAGE "Georgian" !insertmacro MUI_LANGUAGE "Japanese" !insertmacro MUI_LANGUAGE "Swedish" !insertmacro MUI_LANGUAGE "Polish" !insertmacro MUI_LANGUAGE "Ukrainian" !insertmacro MUI_LANGUAGE "Catalan" !insertmacro MUI_LANGUAGE "Serbian" !insertmacro MUI_LANGUAGE "SerbianLatin" !insertmacro MUI_LANGUAGE "Farsi" !insertmacro MUI_LANGUAGE "Hebrew" !insertmacro MUI_LANGUAGE "Spanish" !insertmacro MUI_RESERVEFILE_LANGDLL Name "${PRODUCT_NAME} ${PRODUCT_VERSION}" OutFile "${PRODUCT_NAME} ${PRODUCT_VERSION} Installer.exe" InstallDir "$PROGRAMFILES\${PRODUCT_NAME}\" InstallDirRegKey HKLM "${PRODUCT_DIR_REGKEY}" "" ShowInstDetails show ShowUnInstDetails show !include "wininstall\languages.nsh" Section !$(TITLE_SecMain) SecMain SectionIn RO FindProcDLL::FindProc "qupzilla.exe" IntCmp $R0 1 0 notRunning MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION "$(MSG_RunningInstance)" /SD IDOK IDCANCEL AbortInstallation KillProcDLL::KillProc "qupzilla.exe" Sleep 100 Goto notRunning AbortInstallation: Abort "$(MSG_InstallationCanceled)" notRunning: SetOverwrite on SetOutPath "$INSTDIR" File "COPYRIGHT.txt" File "qupzilla.exe" File "qupzilla.dll" File "libhunspell.dll" File "libeay32.dll" File "ssleay32.dll" File "sqlite3.dll" File "Microsoft.VC90.CRT.manifest" File "msvcm90.dll" File "msvcp90.dll" File "msvcr90.dll" File "QtCore4.dll" File "QtGui4.dll" File "QtNetwork4.dll" File "QtScript4.dll" File "QtSql4.dll" File "QtWebKit4.dll" File "QtXmlPatterns4.dll" SetOutPath "$INSTDIR\imageformats" File "imageformats\qico4.dll" File "imageformats\qsvg4.dll" File "imageformats\qgif4.dll" File "imageformats\qjpeg4.dll" File "imageformats\qmng4.dll" File "imageformats\qtiff4.dll" File "imageformats\qtga4.dll" SetOutPath "$INSTDIR\codecs" File "codecs\qcncodecs4.dll" File "codecs\qjpcodecs4.dll" File "codecs\qkrcodecs4.dll" File "codecs\qtwcodecs4.dll" SetOutPath "$INSTDIR\iconengines" File "iconengines\qsvgicon4.dll" SetOutPath "$INSTDIR\hunspell\doc" File "wininstall\hunspell\doc\*" call RegisterCapabilities SectionEnd SectionGroup $(TITLE_SecThemes) SecThemes Section Default SecDefault SectionIn RO SetOutPath "$INSTDIR\themes\windows" File "themes\windows\*" SetOutPath "$INSTDIR\themes\windows\images" File "themes\windows\images\*" SectionEnd Section Chrome SecChrome SetOutPath "$INSTDIR\themes\chrome" File "themes\chrome\*" SetOutPath "$INSTDIR\themes\chrome\images" File "themes\chrome\images\*" SectionEnd Section Mac SecMac SetOutPath "$INSTDIR\themes\mac" File "themes\mac\*" SetOutPath "$INSTDIR\themes\mac\images" File "themes\mac\images\*" SectionEnd Section Old SecOld SetOutPath "$INSTDIR\themes\default" File "themes\default\*" SetOutPath "$INSTDIR\themes\default\images" File "themes\default\images\*" SectionEnd SectionGroupEnd SectionGroup $(TITLE_SecTranslations) SecTranslations Section "English" SectionIn RO SetOutPath "$INSTDIR\hunspell" File "wininstall\hunspell\en_US.aff" File "wininstall\hunspell\en_US.dic" SectionEnd Section "Czech" SetOutPath "$INSTDIR\locale" File "locale\cs_CZ.qm" File "locale\qt_cs.qm" SetOutPath "$INSTDIR\hunspell" File "wininstall\hunspell\cs_CZ.aff" File "wininstall\hunspell\cs_CZ.dic" SectionEnd Section "Slovak" SetOutPath "$INSTDIR\locale" File "locale\sk_SK.qm" File "locale\qt_sk.qm" SetOutPath "$INSTDIR\hunspell" File "wininstall\hunspell\sk_SK.aff" File "wininstall\hunspell\sk_SK.dic" SectionEnd Section "German" SetOutPath "$INSTDIR\locale" File "locale\de_DE.qm" File "locale\qt_de.qm" SetOutPath "$INSTDIR\hunspell" File "wininstall\hunspell\de_DE.aff" File "wininstall\hunspell\de_DE.dic" SectionEnd Section "Dutch" SetOutPath "$INSTDIR\locale" File "locale\nl_NL.qm" File "locale\qt_nl.qm" SetOutPath "$INSTDIR\hunspell" File "wininstall\hunspell\nl_NL.aff" File "wininstall\hunspell\nl_NL.dic" SectionEnd Section "Italian" SetOutPath "$INSTDIR\locale" File "locale\it_IT.qm" File "locale\qt_it.qm" SetOutPath "$INSTDIR\hunspell" File "wininstall\hunspell\it_IT.aff" File "wininstall\hunspell\it_IT.dic" SectionEnd Section "Chinese" SetOutPath "$INSTDIR\locale" File "locale\zh_CN.qm" File "locale\zh_TW.qm" File "locale\qt_zh_CN.qm" File "locale\qt_zh_TW.qm" SectionEnd Section "Polish" SetOutPath "$INSTDIR\locale" File "locale\pl_PL.qm" File "locale\qt_pl.qm" SectionEnd Section "Spanish" SetOutPath "$INSTDIR\locale" File "locale\es_ES.qm" File "locale\es_VE.qm" File "locale\qt_es.qm" SetOutPath "$INSTDIR\hunspell" File "wininstall\hunspell\es_ES.aff" File "wininstall\hunspell\es_ES.dic" File "wininstall\hunspell\es_VE.aff" File "wininstall\hunspell\es_VE.dic" SectionEnd Section "Greek" SetOutPath "$INSTDIR\locale" File "locale\el_GR.qm" File "locale\qt_el.qm" SetOutPath "$INSTDIR\hunspell" File "wininstall\hunspell\el_GR.aff" File "wininstall\hunspell\el_GR.dic" SectionEnd Section "French" SetOutPath "$INSTDIR\locale" File "locale\fr_FR.qm" File "locale\qt_fr.qm" SetOutPath "$INSTDIR\hunspell" File "wininstall\hunspell\fr_FR.aff" File "wininstall\hunspell\fr_FR.dic" SectionEnd Section "Russian" SetOutPath "$INSTDIR\locale" File "locale\ru_RU.qm" File "locale\qt_ru.qm" SetOutPath "$INSTDIR\hunspell" File "wininstall\hunspell\ru_RU.aff" File "wininstall\hunspell\ru_RU.dic" SectionEnd Section "Portuguese" SetOutPath "$INSTDIR\locale" File "locale\pt_PT.qm" File "locale\pt_BR.qm" File "locale\qt_pt.qm" SetOutPath "$INSTDIR\hunspell" File "wininstall\hunspell\pt_PT.aff" File "wininstall\hunspell\pt_PT.dic" File "wininstall\hunspell\pt_BR.aff" File "wininstall\hunspell\pt_BR.dic" SectionEnd Section "Serbian" SetOutPath "$INSTDIR\locale" File "locale\sr_BA.qm" File "locale\sr_RS.qm" File "locale\qt_sr_BA.qm" File "locale\qt_sr_RS.qm" File "locale\sr_BA@latin.qm" File "locale\sr_RS@latin.qm" File "locale\qt_sr_BA@latin.qm" File "locale\qt_sr_RS@latin.qm" SetOutPath "$INSTDIR\hunspell" File "wininstall\hunspell\sr.aff" File "wininstall\hunspell\sr.dic" File "wininstall\hunspell\sh.aff" File "wininstall\hunspell\sh.dic" SectionEnd Section "Japanese" SetOutPath "$INSTDIR\locale" File "locale\ja_JP.qm" File "locale\qt_ja.qm" SectionEnd Section "Georgian" SetOutPath "$INSTDIR\locale" File "locale\ka_GE.qm" SectionEnd Section "Hungarian" SetOutPath "$INSTDIR\locale" File "locale\hu_HU.qm" File "locale\qt_hu.qm" SetOutPath "$INSTDIR\hunspell" File "wininstall\hunspell\hu_HU.aff" File "wininstall\hunspell\hu_HU.dic" SectionEnd Section "Indonesian" SetOutPath "$INSTDIR\locale" File "locale\id_ID.qm" SetOutPath "$INSTDIR\hunspell" File "wininstall\hunspell\id_ID.aff" File "wininstall\hunspell\id_ID.dic" SectionEnd Section "Romanian" SetOutPath "$INSTDIR\locale" File "locale\ro_RO.qm" SetOutPath "$INSTDIR\hunspell" File "wininstall\hunspell\ro_RO.aff" File "wininstall\hunspell\ro_RO.dic" SectionEnd Section "Swedish" SetOutPath "$INSTDIR\locale" File "locale\sv_SE.qm" File "locale\qt_sv.qm" SectionEnd Section "Ukrainian" SetOutPath "$INSTDIR\locale" File "locale\uk_UA.qm" File "locale\qt_uk.qm" SetOutPath "$INSTDIR\hunspell" File "wininstall\hunspell\uk_UA.aff" File "wininstall\hunspell\uk_UA.dic" SectionEnd Section "Persian" SetOutPath "$INSTDIR\locale" File "locale\fa_IR.qm" File "locale\qt_fa.qm" SetOutPath "$INSTDIR\hunspell" File "wininstall\hunspell\fa_IR.aff" File "wininstall\hunspell\fa_IR.dic" SectionEnd Section "Catalan" SetOutPath "$INSTDIR\locale" File "locale\ca_ES.qm" File "locale\qt_ca.qm" SetOutPath "$INSTDIR\hunspell" File "wininstall\hunspell\ca_ES.aff" File "wininstall\hunspell\ca_ES.dic" SectionEnd SectionGroupEnd Section $(TITLE_SecPlugins) SecPlugins SetOutPath "$INSTDIR\plugins" File "plugins\*.dll" SectionEnd SectionGroup $(TITLE_SecSetASDefault) SecSetASDefault Section $(TITLE_SecExtensions) SecExtensions SetOutPath "$INSTDIR" ${RegisterAssociation} ".htm" "$INSTDIR\qupzilla.exe" "QupZilla.HTM" $(FILE_Htm) "$INSTDIR\qupzilla.exe,1" "file" ${RegisterAssociation} ".html" "$INSTDIR\qupzilla.exe" "QupZilla.HTML" $(FILE_Html) "$INSTDIR\qupzilla.exe,1" "file" ${UpdateSystemIcons} SectionEnd Section $(TITLE_SecProtocols) SecProtocols ${RegisterAssociation} "http" "$INSTDIR\qupzilla.exe" "QupZilla.HTTP" "URL:HyperText Transfer Protocol" "$INSTDIR\qupzilla.exe,0" "protocol" ${RegisterAssociation} "https" "$INSTDIR\qupzilla.exe" "QupZilla.HTTPS" "URL:HyperText Transfer Protocol with Privacy" "$INSTDIR\qupzilla.exe,0" "protocol" ${RegisterAssociation} "ftp" "$INSTDIR\qupzilla.exe" "QupZilla.FTP" "URL:File Transfer Protocol" "$INSTDIR\qupzilla.exe,0" "protocol" ${UpdateSystemIcons} SectionEnd SectionGroupEnd Section -StartMenu SetOutPath "$INSTDIR" SetShellVarContext all CreateDirectory "$SMPROGRAMS\QupZilla" CreateShortCut "$SMPROGRAMS\QupZilla\Uninstall.lnk" "$INSTDIR\Uninstall.exe" CreateShortCut "$SMPROGRAMS\QupZilla\QupZilla.lnk" "$INSTDIR\qupzilla.exe" CreateShortCut "$SMPROGRAMS\QupZilla\License.lnk" "$INSTDIR\COPYRIGHT.txt" SectionEnd Section $(TITLE_SecDesktop) SecDesktop SetOutPath "$INSTDIR" CreateShortCut "$DESKTOP\QupZilla.lnk" "$INSTDIR\qupzilla.exe" "" SectionEnd !insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN !insertmacro MUI_DESCRIPTION_TEXT ${SecMain} $(DESC_SecMain) !insertmacro MUI_DESCRIPTION_TEXT ${SecTranslations} $(DESC_SecTranslations) !insertmacro MUI_DESCRIPTION_TEXT ${SecPlugins} $(DESC_SecPlugins) !insertmacro MUI_DESCRIPTION_TEXT ${SecDesktop} $(DESC_SecDesktop) !insertmacro MUI_DESCRIPTION_TEXT ${SecExtensions} $(DESC_SecExtensions) !insertmacro MUI_DESCRIPTION_TEXT ${SecThemes} $(DESC_SecThemes) !insertmacro MUI_DESCRIPTION_TEXT ${SecSetASDefault} $(DESC_SecSetASDefault) !insertmacro MUI_DESCRIPTION_TEXT ${SecProtocols} $(DESC_SecProtocols) !insertmacro MUI_FUNCTION_DESCRIPTION_END Section -Uninstaller WriteUninstaller "$INSTDIR\uninstall.exe" WriteRegStr HKLM "${PRODUCT_DIR_REGKEY}" "" "$INSTDIR\qupzilla.exe" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayName" "$(^Name)" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "UninstallString" "$INSTDIR\Uninstall.exe" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayIcon" "$INSTDIR\qupzilla.exe" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "DisplayVersion" "${PRODUCT_VERSION}" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "Publisher" "QupZilla Team" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "HelpLink" "https://github.com/QupZilla/qupzilla/wiki" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "InstallLocation" "$INSTDIR" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "InstallSource" "$EXEDIR" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "URLInfoAbout" "http://www.qupzilla.com" WriteRegStr ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "URLUpdateInfo" "http://blog.qupzilla.com/" ${GetSize} "$INSTDIR" "/S=0K" $0 $1 $2 WriteRegDWORD ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" "EstimatedSize" "$0" SectionEnd Section -MSVC InitPluginsDir SetOutPath $PLUGINSDIR File "wininstall\vcredist_x86.exe" DetailPrint "Installing Visual C++ 2008 Libraries" ExecWait '"$PLUGINSDIR\vcredist_x86.exe" /passive /Q:a /c:"msiexec /qb /i vcredist.msi"' SectionEnd Section Uninstall FindProcDLL::FindProc "qupzilla.exe" IntCmp $R0 1 0 notRunning MessageBox MB_OKCANCEL|MB_ICONEXCLAMATION "$(MSG_RunningInstance)" /SD IDOK IDCANCEL AbortInstallation KillProcDLL::KillProc "qupzilla.exe" Sleep 100 Goto notRunning AbortInstallation: Abort "$(MSG_InstallationCanceled)" notRunning: SetShellVarContext all Delete "$DESKTOP\QupZilla.lnk" RMDir /r "$INSTDIR" RMDir /r "$SMPROGRAMS\QupZilla" DeleteRegKey ${PRODUCT_UNINST_ROOT_KEY} "${PRODUCT_UNINST_KEY}" DeleteRegKey HKLM "${PRODUCT_DIR_REGKEY}" DeleteRegKey HKLM "Software\${PRODUCT_NAME}" DeleteRegValue HKLM "SOFTWARE\RegisteredApplications" "${PRODUCT_NAME}" ${UnRegisterAssociation} ".htm" "QupZilla.HTM" "$INSTDIR\qupzilla.exe" "file" ${UnRegisterAssociation} ".html" "QupZilla.HTML" "$INSTDIR\qupzilla.exe" "file" ${UnRegisterAssociation} "http" "QupZilla.HTTP" "$INSTDIR\qupzilla.exe" "protocol" ${UnRegisterAssociation} "https" "QupZilla.HTTPS" "$INSTDIR\qupzilla.exe" "protocol" ${UnRegisterAssociation} "ftp" "QupZilla.FTP" "$INSTDIR\qupzilla.exe" "protocol" ${UpdateSystemIcons} SectionEnd BrandingText "${PRODUCT_NAME} ${PRODUCT_VERSION} Installer" Function .onInit ;Prevent Multiple Instances System::Call 'kernel32::CreateMutexA(i 0, i 0, t "QupZillaInstaller-4ECB4694-2C39-4f93-9122-A986344C4E7B") i .r1 ?e' Pop $R0 StrCmp $R0 0 +3 MessageBox MB_OK|MB_ICONEXCLAMATION "QupZilla installer is already running!" /SD IDOK Abort ;Language selection dialog¨ ;Return when running silent instalation IfSilent 0 +2 return Push "" Push ${LANG_ENGLISH} Push English Push ${LANG_CZECH} Push Czech Push ${LANG_SLOVAK} Push Slovak Push ${LANG_GERMAN} Push German Push ${LANG_DUTCH} Push Dutch Push ${LANG_PORTUGUESE} Push Portuguese Push ${LANG_GREEK} Push Greek Push ${LANG_FRENCH} Push French Push ${LANG_ITALIAN} Push Italian Push ${LANG_ROMANIAN} Push Romanian Push ${LANG_TRADCHINESE} Push TraditionalChinese Push ${LANG_SIMPCHINESE} Push SimplifiedChinese Push ${LANG_INDONESIAN} Push Indonesian Push ${LANG_GEORGIAN} Push Georgian Push ${LANG_JAPANESE} Push Japanese Push ${LANG_SWEDISH} Push Swedish Push ${LANG_POLISH} Push Polish Push ${LANG_UKRAINIAN} Push Ukrainian Push ${LANG_CATALAN} Push Catalan Push ${LANG_SERBIAN} Push Serbian Push ${LANG_SERBIANLATIN} Push SerbianLatin Push ${LANG_FARSI} Push Persian Push ${LANG_HEBREW} Push Hebrew Push ${LANG_SPANISH} Push Spanish Push A ; A means auto count languages ; for the auto count to work the first empty push (Push "") must remain LangDLL::LangDialog "Installer Language" "Please select the language of the installer" Pop $LANGUAGE StrCmp $LANGUAGE "cancel" 0 +2 Abort FunctionEnd Function RegisterCapabilities !ifdef ___WINVER__NSH___ ${If} ${AtLeastWinVista} ; even if we don't associate QupZilla as default for ".htm" and ".html" ; we need to write these ProgIds for future use! ;(e.g.: user uses "Default Programs" on Win7 or Vista to set QupZilla as default.) ${CreateProgId} "QupZilla.HTM" "$INSTDIR\qupzilla.exe" $(FILE_Htm) "$INSTDIR\qupzilla.exe,1" ${CreateProgId} "QupZilla.HTML" "$INSTDIR\qupzilla.exe" $(FILE_Html) "$INSTDIR\qupzilla.exe,1" ${CreateProgId} "QupZilla.HTTP" "$INSTDIR\qupzilla.exe" "URL:HyperText Transfer Protocol" "$INSTDIR\qupzilla.exe,0" ${CreateProgId} "QupZilla.HTTPS" "$INSTDIR\qupzilla.exe" "URL:HyperText Transfer Protocol with Privacy" "$INSTDIR\qupzilla.exe,0" ${CreateProgId} "QupZilla.FTP" "$INSTDIR\qupzilla.exe" "URL:File Transfer Protocol" "$INSTDIR\qupzilla.exe,0" ; note: these lines just introduce capabilities of QupZilla to OS and don't change defaults! WriteRegStr HKLM "${PRODUCT_CAPABILITIES_KEY}" "ApplicationDescription" "$(PRODUCT_DESC)" WriteRegStr HKLM "${PRODUCT_CAPABILITIES_KEY}" "ApplicationIcon" "$INSTDIR\qupzilla.exe,0" WriteRegStr HKLM "${PRODUCT_CAPABILITIES_KEY}" "ApplicationName" "${PRODUCT_NAME}" WriteRegStr HKLM "${PRODUCT_CAPABILITIES_KEY}\FileAssociations" ".htm" "QupZilla.HTM" WriteRegStr HKLM "${PRODUCT_CAPABILITIES_KEY}\FileAssociations" ".html" "QupZilla.HTML" WriteRegStr HKLM "${PRODUCT_CAPABILITIES_KEY}\URLAssociations" "http" "QupZilla.HTTP" WriteRegStr HKLM "${PRODUCT_CAPABILITIES_KEY}\URLAssociations" "https" "QupZilla.HTTPS" WriteRegStr HKLM "${PRODUCT_CAPABILITIES_KEY}\URLAssociations" "ftp" "QupZilla.FTP" WriteRegStr HKLM "${PRODUCT_CAPABILITIES_KEY}\Startmenu" "StartMenuInternet" "$INSTDIR\qupzilla.exe" WriteRegStr HKLM "SOFTWARE\RegisteredApplications" "${PRODUCT_NAME}" "${PRODUCT_CAPABILITIES_KEY}" ${EndIf} !endif FunctionEnd qupzilla-1.6.0/windows/languages.nsh000066400000000000000000001432131226107126500175370ustar00rootroot00000000000000;;;;English LangString PRODUCT_DESC ${LANG_ENGLISH} "QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework." ; LangString TITLE_SecMain ${LANG_ENGLISH} "Main Components" LangString TITLE_SecTranslations ${LANG_ENGLISH} "Translations" LangString TITLE_SecPlugins ${LANG_ENGLISH} "Plugins" LangString TITLE_SecDesktop ${LANG_ENGLISH} "Desktop Icon" LangString TITLE_SecExtensions ${LANG_ENGLISH} "File Associations" LangString TITLE_SecThemes ${LANG_ENGLISH} "Themes" LangString TITLE_SecSetASDefault ${LANG_ENGLISH} "Default Browser" LangString TITLE_SecProtocols ${LANG_ENGLISH} "Protocol Associations" LangString FILE_Htm ${LANG_ENGLISH} "HTM File" LangString FILE_Html ${LANG_ENGLISH} "HTML File" ; LangString DESC_SecMain ${LANG_ENGLISH} "Main components of application." LangString DESC_SecTranslations ${LANG_ENGLISH} "Other translations available to install. Default is English." LangString DESC_SecPlugins ${LANG_ENGLISH} "Other plugins available to install." LangString DESC_SecDesktop ${LANG_ENGLISH} "Add launcher to desktop." LangString DESC_SecExtensions ${LANG_ENGLISH} "Associate QupZilla with .htm(l) files" LangString DESC_SecThemes ${LANG_ENGLISH} "Additional themes for QupZilla" LangString DESC_SecSetASDefault ${LANG_ENGLISH} "Set Qupzilla as default internet browser" LangString DESC_SecProtocols ${LANG_ENGLISH} "Associate QupZilla with http(s) and ftp protocols" ; LangString MSG_RunningInstance ${LANG_ENGLISH} "QupZilla is already running! Do you want the installer try to terminate it?" LangString MSG_InstallationCanceled ${LANG_ENGLISH} "Process cancelled by user." ;;;;Arabic LangString PRODUCT_DESC ${LANG_ARABIC} "كَبزيلّا متصفّح للوب جديد سريع وآمن ومفتوح المصدر. يُرخَّص استخدامه وفق الإصدار الثالث من رخصة جنو العمومية (GPL) أو أي إصدار أحدث من ذلك (اختر كما تشاء). يُبنى كَبزيلّا على محرّك العرض WebKitوإطار العمل Qt." ; LangString TITLE_SecMain ${LANG_ARABIC} "المكونات الأساسية" LangString TITLE_SecTranslations ${LANG_ARABIC} "الترجمات" LangString TITLE_SecPlugins ${LANG_ARABIC} "الإضافات" LangString TITLE_SecDesktop ${LANG_ARABIC} "رمز على سطح المكتب" LangString TITLE_SecExtensions ${LANG_ARABIC} "ارتباطات الملفات" LangString TITLE_SecThemes ${LANG_ARABIC} "السمات" LangString TITLE_SecSetASDefault ${LANG_ARABIC} "المتصفح المبدئي" LangString TITLE_SecProtocols ${LANG_ARABIC} "ارتباطات البروتوكولات" LangString FILE_Htm ${LANG_ARABIC} "ملف HTM" LangString FILE_Html ${LANG_ARABIC} "ملف HTML" ; LangString DESC_SecMain ${LANG_ARABIC} "المكونات الرئيسية للبرنامج." LangString DESC_SecTranslations ${LANG_ARABIC} "ترجمات أخرى متوفرة للتثبيت. اللغة المبدئية هي الإنكليزية." LangString DESC_SecPlugins ${LANG_ARABIC} "إضافات أخرى متوفّرة للتنزيل." LangString DESC_SecDesktop ${LANG_ARABIC} "أضف اختصارًا لتشغيل كَبزيلا من سطح المكتب." LangString DESC_SecExtensions ${LANG_ARABIC} "اربط كَبزيلّا بملفات HTML ذات اللواحق .htm أو .html." LangString DESC_SecThemes ${LANG_ARABIC} "سمات أخرى لكَبزيلّا" LangString DESC_SecSetASDefault ${LANG_ARABIC} "اجعل كَبزيلا المتصفح المبدئيّ" LangString DESC_SecProtocols ${LANG_ARABIC} "اربط كَبزيلّا ببروتوكولات HTTP وHTTPS وFTP." ; LangString MSG_RunningInstance ${LANG_ARABIC} "كَبزيلّا مفتوح الآن! أتريد من المُثبِّت إنهاءه الآن؟" LangString MSG_InstallationCanceled ${LANG_ARABIC} "ألغى المستخدم العملية." ;;;;Spanish LangString PRODUCT_DESC ${LANG_SPANISH} "Qupzilla es un nuevo, rápido y seguro navegador web de código abierto. Qupzilla está bajo licencia GPL versión 3 o (o en su opción) en cualquier versión. Está basado en el motor WebKit y en Qt Framework." ; LangString TITLE_SecMain ${LANG_SPANISH} "Componentes iniciales" LangString TITLE_SecTranslations ${LANG_SPANISH} "Traducciones" LangString TITLE_SecPlugins ${LANG_SPANISH} "Plugins" LangString TITLE_SecDesktop ${LANG_SPANISH} "Icono de escritorio" LangString TITLE_SecExtensions ${LANG_SPANISH} "Asociación de archivos" LangString TITLE_SecThemes ${LANG_SPANISH} "Temas" LangString TITLE_SecSetASDefault ${LANG_SPANISH} "Navegador por defecto" LangString TITLE_SecProtocols ${LANG_SPANISH} "Asociaciones de protocolo" LangString FILE_Htm ${LANG_SPANISH} "Archivo HTM" LangString FILE_Html ${LANG_ENGLISH} "Archivo HTML" ; LangString DESC_SecMain ${LANG_SPANISH} "Componentes iniciales de aplicación" LangString DESC_SecTranslations ${LANG_SPANISH} "Otras traduciones disponibles al instalar. Por defecto en inglés." LangString DESC_SecPlugins ${LANG_SPANISH} "Otros plugins disponibles al instalar." LangString DESC_SecDesktop ${LANG_SPANISH} "Añade acceso directo al escritorio." LangString DESC_SecExtensions ${LANG_SPANISH} "Asociar Qupzilla con archivos .htm(l)" LangString DESC_SecThemes ${LANG_SPANISH} "Temas adicionales para Qupzilla" LangString DESC_SecSetASDefault ${LANG_SPANISH} "Hacer Qupzilla tu navegador web por defecto" LangString DESC_SecProtocols ${LANG_SPANISH} "Asociar Qupzilla con los protocolos http(s) y ftp" ; LangString MSG_RunningInstance ${LANG_SPANISH} "Qupzilla se está ejecutando, Quieres que el instalador intente finalizarlo?" LangString MSG_InstallationCanceled ${LANG_SPANISH} "Proceso cancelado por usuario." ;;;;Czech LangString TITLE_SecMain ${LANG_CZECH} "Hlavní komponenty" LangString TITLE_SecTranslations ${LANG_CZECH} "Překlady" LangString TITLE_SecPlugins ${LANG_CZECH} "Doplňky" LangString TITLE_SecDesktop ${LANG_CZECH} "Zástupce na ploše" LangString TITLE_SecExtensions ${LANG_CZECH} "Asociace souborů" LangString TITLE_SecThemes ${LANG_CZECH} "Témata" LangString FILE_Htm ${LANG_CZECH} "Soubor HTM" LangString FILE_Html ${LANG_CZECH} "Soubor HTML" ; LangString DESC_SecMain ${LANG_CZECH} "Hlavní komponenty aplikace." LangString DESC_SecTranslations ${LANG_CZECH} "Ostatní překlady dostupné k instalaci. Angličtina je defaultní." LangString DESC_SecPlugins ${LANG_CZECH} "Ostatní doplňky dostupné k instalaci." LangString DESC_SecDesktop ${LANG_CZECH} "Přidat zástupce na plochu." LangString DESC_SecExtensions ${LANG_CZECH} "Associovat QupZillu s .htm(l) soubory" LangString DESC_SecThemes ${LANG_CZECH} "Dodatečná témata pro QupZillu" LangString PRODUCT_DESC ${LANG_CZECH} "QupZilla je nový, rychlý a bezpečný open-source WWW prohlížeč. QupZilla je licencována pod GPL verze 3 nebo (podle vaší volby) jakékoliv vyšší verze. Prohlížeč je založen na jádru WebKit a Qt Frameworku." LangString TITLE_SecSetASDefault ${LANG_CZECH} "Výchozí prohlížeč" LangString TITLE_SecProtocols ${LANG_CZECH} "Asociace protokolů" LangString DESC_SecSetASDefault ${LANG_CZECH} "Nastavit QupZillu jako výchozí internetový prohlížeč" LangString DESC_SecProtocols ${LANG_CZECH} "Asociovat QupZillu s http(s) a ftp protokoly" LangString MSG_RunningInstance ${LANG_CZECH} "QupZilla je právě spuštěna. Chcete aby ji instalátor zkusil ukončit?" LangString MSG_InstallationCanceled ${LANG_CZECH} "Proces zrušen uživatelem." ;;;;Catalan LangString PRODUCT_DESC ${LANG_CATALAN} "El QupZilla és un navegador web de codi obert nou, ràpid i segur. QupZilla està llicenciat sota GPL versió 3.0 o (si ho preferiu) qualsevol versió posterior. Està basat en WebKit i Qt." ; LangString TITLE_SecMain ${LANG_CATALAN} "Components principals" LangString TITLE_SecTranslations ${LANG_CATALAN} "Traduccions" LangString TITLE_SecPlugins ${LANG_CATALAN} "Complements" LangString TITLE_SecDesktop ${LANG_CATALAN} "Icona de l'escriptori" LangString TITLE_SecExtensions ${LANG_CATALAN} "Associacions de fitxers" LangString TITLE_SecThemes ${LANG_CATALAN} "Temes" LangString TITLE_SecSetASDefault ${LANG_CATALAN} "Navegador per defecte" LangString TITLE_SecProtocols ${LANG_CATALAN} "Associacions de protocols" LangString FILE_Htm ${LANG_CATALAN} "Fitxer HTM" LangString FILE_Html ${LANG_CATALAN} "Fitxer HTML" ; LangString DESC_SecMain ${LANG_CATALAN} "Components principals de l'aplicació." LangString DESC_SecTranslations ${LANG_CATALAN} "Altres traduccions disponibles per instal·lar. L'idioma predeterminat és l'anglès." LangString DESC_SecPlugins ${LANG_CATALAN} "Altres plugins disponibles per instal·lar." LangString DESC_SecDesktop ${LANG_CATALAN} "Afegeix una drecera a l'escriptori." LangString DESC_SecExtensions ${LANG_CATALAN} "Associa el QupZilla amb els fitxers .htm i .html" LangString DESC_SecThemes ${LANG_CATALAN} "Temes addicionals per al QupZilla" LangString DESC_SecSetASDefault ${LANG_CATALAN} "Fes que el Qupzilla sigui el navegador predeterminat" LangString DESC_SecProtocols ${LANG_CATALAN} "Associa el QupZilla amb els protocols http i https" ; LangString MSG_RunningInstance ${LANG_CATALAN} "El QupZilla ja està actiu. Voleu que l'instal·lador provi d'aturar-lo?" LangString MSG_InstallationCanceled ${LANG_CATALAN} "L'usuari ha cancel·lat el procés." ;;;;Slovak LangString TITLE_SecMain ${LANG_SLOVAK} "Hlavné komponenty" LangString TITLE_SecTranslations ${LANG_SLOVAK} "Preklady" LangString TITLE_SecPlugins ${LANG_SLOVAK} "Doplnky" LangString TITLE_SecDesktop ${LANG_SLOVAK} "Zástupca na ploche" LangString TITLE_SecExtensions ${LANG_SLOVAK} "Asociácia souborù" LangString TITLE_SecThemes ${LANG_SLOVAK} "Témy" LangString FILE_Htm ${LANG_SLOVAK} "Súbor HTM" LangString FILE_Html ${LANG_SLOVAK} "Súbor HTML" ; LangString DESC_SecMain ${LANG_SLOVAK} "Hlavné komponenty aplikace." LangString DESC_SecTranslations ${LANG_SLOVAK} "Ostatné preklady dostupné k inštalácii. Angličtina je defaultná" LangString DESC_SecPlugins ${LANG_SLOVAK} "Ostatné doplnky dustupne k inštalácii" LangString DESC_SecDesktop ${LANG_SLOVAK} "Pridat zástupca na plochu." LangString DESC_SecExtensions ${LANG_SLOVAK} "Associovat QupZillu s .htm(l) súbory" LangString DESC_SecThemes ${LANG_SLOVAK} "Dodatečné témy pre QupZillu" ;;;;German LangString PRODUCT_DESC ${LANG_GERMAN} "QupZilla ist ein neuer, schneller und sicherer, quelloffener Web Browser. QupZilla ist lizensiert unter GPL Version 3 oder später. Er nutzt Webkit und das Qt Framework." ; LangString TITLE_SecMain ${LANG_GERMAN} "Hauptkomponenten" LangString TITLE_SecTranslations ${LANG_GERMAN} "Übersetzungen" LangString TITLE_SecPlugins ${LANG_GERMAN} "Plugins" LangString TITLE_SecDesktop ${LANG_GERMAN} "Desktop Symbol" LangString TITLE_SecExtensions ${LANG_GERMAN} "Dateiverknüpfungen" LangString TITLE_SecThemes ${LANG_GERMAN} "Themen" LangString TITLE_SecSetASDefault ${LANG_GERMAN} "Standard-Browser" LangString TITLE_SecProtocols ${LANG_GERMAN} "Protokollverknüpfungen" LangString FILE_Htm ${LANG_GERMAN} "HTM-Datei" LangString FILE_Html ${LANG_GERMAN} "HTML-Datei" LangString DESC_SecMain ${LANG_GERMAN} "Hauptkomponenten der Anwendung." LangString DESC_SecTranslations ${LANG_GERMAN} "Weitere Übersetzungen sind verfügbar. Die Standardsprache ist Englisch." LangString DESC_SecPlugins ${LANG_GERMAN} "Weitere Plugins stehen zur Verfügung." LangString DESC_SecDesktop ${LANG_GERMAN} "Starter zum Desktop hinzufügen." LangString DESC_SecExtensions ${LANG_GERMAN} "Verknüpfe QupZilla mit *.htm(l) Dateien" LangString DESC_SecThemes ${LANG_GERMAN} "Weitere Themen für QupZilla" LangString DESC_SecSetASDefault ${LANG_GERMAN} "Qupzilla als Standard-Browser verwenden" LangString DESC_SecProtocols ${LANG_GERMAN} "Verknüpfe QupZilla mit HTTP(S)- und FTP-Protokoll" ; LangString MSG_RunningInstance ${LANG_GERMAN} "QupZilla ist bereits gestartet! Soll die Installationsroutine versuchen, QupZilla zu beenden?" LangString MSG_InstallationCanceled ${LANG_GERMAN} "Die Installation wurde vom Benutzer abgebrochen." ;;;;Dutch LangString TITLE_SecMain ${LANG_DUTCH} "Hoofdonderdelen" LangString TITLE_SecTranslations ${LANG_DUTCH} "Vertalingen" LangString TITLE_SecPlugins ${LANG_DUTCH} "Plugins" LangString TITLE_SecDesktop ${LANG_DUTCH} "Bureaublad-pictogram" LangString TITLE_SecExtensions ${LANG_DUTCH} "Bestandsassociaties" LangString TITLE_SecThemes ${LANG_DUTCH} "Thema's" LangString FILE_Htm ${LANG_DUTCH} "HTM-bestand" LangString FILE_Html ${LANG_DUTCH} "HTML-bestand" LangString DESC_SecMain ${LANG_DUTCH} "Hoofdonderdelen van het programma." LangString DESC_SecTranslations ${LANG_DUTCH} "Beschikbare vertalingen om te installeren. Standaardtaal is Engels." LangString DESC_SecPlugins ${LANG_DUTCH} "Beschikbare plugins om te installeren." LangString DESC_SecDesktop ${LANG_DUTCH} "Voeg starter toe op bureaublad." LangString DESC_SecExtensions ${LANG_DUTCH} "Associeer QupZilla met .htm en .html-bestanden" LangString DESC_SecThemes ${LANG_DUTCH} "Extra thema's voor QupZilla" ;;;;Portuguese LangString PRODUCT_DESC ${LANG_PORTUGUESE} "O QupZilla é um navegador web rápido, seguro e de código livre. O QupZilla está sujeito aos termos da GPL versão 3 ou (por opção) qualquer versão posterior. O Qupzilla é baseado nas tecnologias WebKit e Qt." ; LangString TITLE_SecMain ${LANG_PORTUGUESE} "Principais componentes" LangString TITLE_SecTranslations ${LANG_PORTUGUESE} "Traduções" LangString TITLE_SecPlugins ${LANG_PORTUGUESE} "Plugins" LangString TITLE_SecDesktop ${LANG_PORTUGUESE} "Ícone no ambiente de trabalho" LangString TITLE_SecExtensions ${LANG_PORTUGUESE} "Associação de ficheiros" LangString TITLE_SecThemes ${LANG_PORTUGUESE} "Temas" LangString TITLE_SecSetASDefault ${LANG_PORTUGUESE} "Navegador pré-definido" LangString TITLE_SecProtocols ${LANG_PORTUGUESE} "Associações" LangString FILE_Htm ${LANG_PORTUGUESE} "Ficheiro HTM" LangString FILE_Html ${LANG_PORTUGUESE} "Ficheiro HTML" ; LangString DESC_SecMain ${LANG_PORTUGUESE} "Principais componentes da aplicação" LangString DESC_SecTranslations ${LANG_PORTUGUESE} "Outros idiomas disponíveis. O idioma padrão é inglês" LangString DESC_SecPlugins ${LANG_PORTUGUESE} "Outros plugins disponíveis" LangString DESC_SecDesktop ${LANG_PORTUGUESE} "Adicionar ícone ao ambiente de trabalho" LangString DESC_SecExtensions ${LANG_PORTUGUESE} "Associar QupZilla aos ficheiros .htm e .html" LangString DESC_SecThemes ${LANG_PORTUGUESE} "Temas extra para o QupZilla" LangString DESC_SecSetASDefault ${LANG_PORTUGUESE} "Definir o Qupzilla como navegador web padrão" LangString DESC_SecProtocols ${LANG_PORTUGUESE} "Associar o QupZilla com os protocolos http e https" ; LangString MSG_RunningInstance ${LANG_PORTUGUESE} "O QupZilla está em execução! Pretende que o instalador tente terminar o processo?" LangString MSG_InstallationCanceled ${LANG_PORTUGUESE} "Processo cancelado pelo utilizador" ; ;;;;Greek LangString TITLE_SecMain ${LANG_GREEK} "Κύρια στοιχεία" LangString TITLE_SecTranslations ${LANG_GREEK} "Μεταφράσεις" LangString TITLE_SecPlugins ${LANG_GREEK} "Πρόσθετα" LangString TITLE_SecDesktop ${LANG_GREEK} "Εικονίδιο επιφάνειας" LangString TITLE_SecExtensions ${LANG_GREEK} "Συσχετίσεις αρχείων" LangString TITLE_SecThemes ${LANG_GREEK} "Θέματα" LangString FILE_Htm ${LANG_GREEK} "Αρχείο HTM" LangString FILE_Html ${LANG_GREEK} "Αρχείο HTML" LangString DESC_SecMain ${LANG_GREEK} "Κυρια στοιχεία της εφαρμογής." LangString DESC_SecTranslations ${LANG_GREEK} "Άλλες μεταφράσεις διαθέσιμες προς εγκατάσταση. Η προεπιλεγμένη είναι Αγγλικά." LangString DESC_SecPlugins ${LANG_GREEK} "Άλλα πρόσθετα διαθέσιμα προς εγκατάσταση." LangString DESC_SecDesktop ${LANG_GREEK} "Προσθήκη εκκινητή στην επιφάνεια." LangString DESC_SecExtensions ${LANG_GREEK} "Συσχέτιση του QupZilla με αρχεία .htm και .html" LangString DESC_SecThemes ${LANG_GREEK} "Πρόσθετα θέματα για το QupZilla" ;;;;French LangString PRODUCT_DESC ${LANG_FRENCH} "QupZilla est un nouveau navigateur Internet, libre, rapide et sûr. QupZilla est sous licence GPLv3 ou (selon votre version) une version plus récente. Il est basé sur WebKit et le framework Qt." LangString TITLE_SecMain ${LANG_FRENCH} "Composants principaux" LangString TITLE_SecTranslations ${LANG_FRENCH} "Langues" LangString TITLE_SecPlugins ${LANG_FRENCH} "Plugins" LangString TITLE_SecDesktop ${LANG_FRENCH} "Icône de Bureau" LangString TITLE_SecExtensions ${LANG_FRENCH} "Associations de fichiers" LangString TITLE_SecThemes ${LANG_FRENCH} "Thèmes" LangString TITLE_SecSetASDefault ${LANG_FRENCH} "Navigateur par défaut" LangString TITLE_SecProtocols ${LANG_FRENCH} "Associations de protocoles" LangString FILE_Htm ${LANG_FRENCH} "Fichiers HTM " LangString FILE_Html ${LANG_FRENCH} "Fichiers HTML" LangString DESC_SecMain ${LANG_FRENCH} "Composants principaux de l'application." LangString DESC_SecTranslations ${LANG_FRENCH} "Autres langues disponibles à l'installation. La langue par défaut est l'anglais." LangString DESC_SecPlugins ${LANG_FRENCH} "Autres plugins disponibles pour l'installation." LangString DESC_SecDesktop ${LANG_FRENCH} "Ajouter une icône sur le bureau." LangString DESC_SecExtensions ${LANG_FRENCH} "Associer QupZilla aux fichiers .htm et .html" LangString DESC_SecThemes ${LANG_FRENCH} "Thèmes supplémentaires pour QupZilla" LangString DESC_SecSetASDefault ${LANG_FRENCH} "Utiliser QupZilla comme navigateur par défaut" LangString DESC_SecProtocols ${LANG_FRENCH} "Associer QupZilla aux protocoles http(s) et ftp" LangString MSG_RunningInstance ${LANG_FRENCH} "QupZilla est déjà en fonctionnement ! Voulez vous que l'installeur le ferme pour vous ?" LangString MSG_InstallationCanceled ${LANG_FRENCH} "Processus annulé par l'utilisateur." ;;;;Italian LangString TITLE_SecMain ${LANG_ITALIAN} "Componenti principali" LangString TITLE_SecTranslations ${LANG_ITALIAN} "Traduzioni" LangString TITLE_SecPlugins ${LANG_ITALIAN} "Plugins" LangString TITLE_SecDesktop ${LANG_ITALIAN} "Icona Desktop" LangString TITLE_SecExtensions ${LANG_ITALIAN} "Associazione file" LangString TITLE_SecThemes ${LANG_ITALIAN} "Temi" LangString FILE_Htm ${LANG_ITALIAN} "File HTM" LangString FILE_Html ${LANG_ITALIAN} "File HTML" ; LangString DESC_SecMain ${LANG_ITALIAN} "Componenti principali dell'applicazione." LangString DESC_SecTranslations ${LANG_ITALIAN} "Altre traduzioni disponibili per l'installazione. Quella predefinita è l'Inglese." LangString DESC_SecPlugins ${LANG_ITALIAN} "Altri plugins disponibili per l'installazione." LangString DESC_SecDesktop ${LANG_ITALIAN} "Aggiunge il lanciatore al desktop." LangString DESC_SecExtensions ${LANG_ITALIAN} "Associa QupZilla ai file .htm and .html" LangString DESC_SecThemes ${LANG_ITALIAN} "Temi aggiuntivi per QupZilla" ;;;;Romanian LangString TITLE_SecMain ${LANG_ROMANIAN} "Componente principale" LangString TITLE_SecTranslations ${LANG_ROMANIAN} "Traduceri" LangString TITLE_SecPlugins ${LANG_ROMANIAN} "Plugin-uri" LangString TITLE_SecDesktop ${LANG_ROMANIAN} "Iconiță Desktop" LangString TITLE_SecExtensions ${LANG_ROMANIAN} "Asocieri fișiere" LangString TITLE_SecThemes ${LANG_ROMANIAN} "Teme" LangString FILE_Htm ${LANG_ROMANIAN} "Fișier HTM" LangString FILE_Html ${LANG_ROMANIAN} "Fișier HTML" ; LangString DESC_SecMain ${LANG_ROMANIAN} "Componentele principale ale aplicației." LangString DESC_SecTranslations ${LANG_ROMANIAN} "Alte traduceri disponibile pentru instalare. Predefinită este Engleza." LangString DESC_SecPlugins ${LANG_ROMANIAN} "Alte plugin-uri sunt disponibile pentru instalare." LangString DESC_SecDesktop ${LANG_ROMANIAN} "Adaugă scurtătură pe Desktop." LangString DESC_SecExtensions ${LANG_ROMANIAN} "Asociază QupZilla cu .htm și fișiere .html" LangString DESC_SecThemes ${LANG_ROMANIAN} "Teme adiționale pentru QupZilla" ;;;;Traditional Chinese LangString TITLE_SecMain ${LANG_TRADCHINESE} "主要組件" LangString TITLE_SecTranslations ${LANG_TRADCHINESE} "翻譯" LangString TITLE_SecPlugins ${LANG_TRADCHINESE} "外掛" LangString TITLE_SecDesktop ${LANG_TRADCHINESE} "桌面圖示" LangString TITLE_SecExtensions ${LANG_TRADCHINESE} "檔案管理" LangString TITLE_SecThemes ${LANG_TRADCHINESE} "主題" ; LangString FILE_Htm ${LANG_TRADCHINESE} "HTM 檔案" LangString FILE_Html ${LANG_TRADCHINESE} "HTML 檔案" ; LangString DESC_SecMain ${LANG_TRADCHINESE} "程式主要組件。" LangString DESC_SecTranslations ${LANG_TRADCHINESE} "可以安裝其他翻譯,預設為英文。" LangString DESC_SecPlugins ${LANG_TRADCHINESE} "可以安裝其他外掛。" LangString DESC_SecDesktop ${LANG_TRADCHINESE} "在桌面新增啟動圖示。" LangString DESC_SecExtensions ${LANG_TRADCHINESE} "將 QupZilla 做為預設開啟 .htm 以及 .html 檔案的瀏覽器。" LangString DESC_SecThemes ${LANG_TRADCHINESE} "額外的QupZilla主題。" ;;;;Simplified Chinese LangString TITLE_SecMain ${LANG_SIMPCHINESE} "主要组件" LangString TITLE_SecTranslations ${LANG_SIMPCHINESE} "翻译" LangString TITLE_SecPlugins ${LANG_SIMPCHINESE} "应用扩展" LangString TITLE_SecDesktop ${LANG_SIMPCHINESE} "桌面图标" LangString TITLE_SecExtensions ${LANG_SIMPCHINESE} "文件管理" LangString TITLE_SecThemes ${LANG_SIMPCHINESE} "皮肤" LangString FILE_Htm ${LANG_SIMPCHINESE} "HTM 文件" LangString FILE_Html ${LANG_SIMPCHINESE} "HTML 文件" ; LangString DESC_SecMain ${LANG_SIMPCHINESE} "程式主要组件。" LangString DESC_SecTranslations ${LANG_SIMPCHINESE} "可以安装其他翻译,默认为英文。" LangString DESC_SecPlugins ${LANG_SIMPCHINESE} "可以安装其他应用扩展。" LangString DESC_SecDesktop ${LANG_SIMPCHINESE} "在桌面新建启动图标。" LangString DESC_SecExtensions ${LANG_SIMPCHINESE} "將 QupZilla 做為默認打開 .htm 以及 .html 文件的瀏覽器。" LangString DESC_SecThemes ${LANG_SIMPCHINESE} "其他的QupZilla皮肤。" ;;;;Bahasa Indonesia LangString TITLE_SecMain ${LANG_INDONESIAN} "Komponen Utama" LangString TITLE_SecTranslations ${LANG_INDONESIAN} "Terjemahan" LangString TITLE_SecPlugins ${LANG_INDONESIAN} "Pengaya" LangString TITLE_SecDesktop ${LANG_INDONESIAN} "Ikon Desktop" LangString TITLE_SecExtensions ${LANG_INDONESIAN} "Asosiasi Berkas" LangString TITLE_SecThemes ${LANG_INDONESIAN} "Tema" LangString FILE_Htm ${LANG_INDONESIAN} "Berkas HTM" LangString FILE_Html ${LANG_INDONESIAN} "Berkas HTML" ; LangString DESC_SecMain ${LANG_INDONESIAN} "Komponen utama dari aplikasi." LangString DESC_SecTranslations ${LANG_INDONESIAN} "Tersedia terjemahan lain untuk diinstal. Default adalah Bahasa Inggris." LangString DESC_SecPlugins ${LANG_INDONESIAN} "Tersedia pengaya lain untuk diinstal." LangString DESC_SecDesktop ${LANG_INDONESIAN} "Tambahkan peluncur ke desktop." LangString DESC_SecExtensions ${LANG_INDONESIAN} "Asosiasikan QupZilla dengan berkas .htm dan .html" LangString DESC_SecThemes ${LANG_INDONESIAN} "Tema tambahan untuk QupZilla" ;;;;Georgian LangString TITLE_SecMain ${LANG_GEORGIAN} "მთავარი კომპონენტები" LangString TITLE_SecTranslations ${LANG_GEORGIAN} "თარგმანები" LangString TITLE_SecPlugins ${LANG_GEORGIAN} "მოდულები" LangString TITLE_SecDesktop ${LANG_GEORGIAN} "სამუშაო მაგიდის ხატულა" LangString TITLE_SecExtensions ${LANG_GEORGIAN} "ფაილებთან ასოცირება" LangString TITLE_SecThemes ${LANG_GEORGIAN} "თემები" LangString FILE_Htm ${LANG_GEORGIAN} "HTM ფაილი" LangString FILE_Html ${LANG_GEORGIAN} "HTML ფაილი" ; LangString DESC_SecMain ${LANG_GEORGIAN} "პროგრამის მთავარი კომპონენტები." LangString DESC_SecTranslations ${LANG_GEORGIAN} "სხვა ენები რომელთა დაყენებაც შესაძლებელია. ნაგულისხმევი არის ინგლისური." LangString DESC_SecPlugins ${LANG_GEORGIAN} "სხვა მოდულები რომელთა დაყენებაც შესაძლებელია." LangString DESC_SecDesktop ${LANG_GEORGIAN} "გამშვების დამატება სამუშაო მაგიდაზე." LangString DESC_SecExtensions ${LANG_GEORGIAN} "QupZilla-ს ასოცირება .htm და .html ფაილებთან" LangString DESC_SecThemes ${LANG_GEORGIAN} "დამატებითი თემები QupZilla-სთვის" ;;;;Japanese LangString PRODUCT_DESC ${LANG_JAPANESE} "QupZilla は新しくて、高速で、安全なオープンソース WWW ブラウザです。 QupZilla は GPL version 3 (任意の)それ以降のバージョンでライセンスされています。WebKit コアと Qt Framework ベースで開発されています。" ; LangString TITLE_SecMain ${LANG_JAPANESE} "メインコンポーネント" LangString TITLE_SecTranslations ${LANG_JAPANESE} "言語ファイル" LangString TITLE_SecPlugins ${LANG_JAPANESE} "エクステンション(拡張機能)" LangString TITLE_SecDesktop ${LANG_JAPANESE} "デスクトップアイコン" LangString TITLE_SecExtensions ${LANG_JAPANESE} "ファイルの関連付け" LangString TITLE_SecThemes ${LANG_JAPANESE} "テーマ" LangString TITLE_SecSetASDefault ${LANG_JAPANESE} "既定のブラウザ" LangString TITLE_SecProtocols ${LANG_JAPANESE} "プロトコルの関連付け" LangString FILE_Htm ${LANG_JAPANESE} "HTM ファイル" LangString FILE_Html ${LANG_JAPANESE} "HTML ファイル" ; LangString DESC_SecMain ${LANG_JAPANESE} "アプリケーションのメインとなる部分です。" LangString DESC_SecTranslations ${LANG_JAPANESE} "他の言語でも QupZilla を使えるようになります。デフォルトでは英語です。" LangString DESC_SecPlugins ${LANG_JAPANESE} "プラグイン(拡張機能)を追加してダウンロードします。" LangString DESC_SecDesktop ${LANG_JAPANESE} "デスクトップにアイコンを作成します。" LangString DESC_SecExtensions ${LANG_JAPANESE} "QupZilla に htm, html ファイルを関連付けます。" LangString DESC_SecThemes ${LANG_JAPANESE} "QupZilla のデフォルトテーマ以外のテーマをダウンロードします。" LangString DESC_SecSetASDefault ${LANG_JAPANESE} "QupZilla を既定の Web ブラウザに設定する。" LangString DESC_SecProtocols ${LANG_JAPANESE} "QupZilla を http, https プロトコルに関連付けます。" ; LangString MSG_RunningInstance ${LANG_JAPANESE} "QupZilla は起動中です!インストーラーによって終了させますか?" LangString MSG_InstallationCanceled ${LANG_JAPANESE} "プロセスはユーザーによって中止されました。" ;;;;SWEDISH LangString TITLE_SecMain ${LANG_SWEDISH} "Huvudkomponenter" LangString DESC_SecMain ${LANG_SWEDISH} "Programmets viktigaste komponenter." LangString TITLE_SecTranslations ${LANG_SWEDISH} "Översättningar" LangString DESC_SecTranslations ${LANG_SWEDISH} "Andra översättningar tillgängliga för installation. Förval är Engelska." LangString TITLE_SecPlugins ${LANG_SWEDISH} "Insticksmoduler" LangString DESC_SecPlugins ${LANG_SWEDISH} "Andra insticksmoduler tillgängliga för installation." LangString TITLE_SecDesktop ${LANG_SWEDISH} "Skrivbordsikon" LangString DESC_SecDesktop ${LANG_SWEDISH} "Lägg till en ikon på skrivbordet." LangString TITLE_SecExtensions ${LANG_SWEDISH} "Filbindningar" LangString DESC_SecExtensions ${LANG_SWEDISH} "Associera QupZilla med .htm- och .html-filer" LangString FILE_Htm ${LANG_SWEDISH} "HTM-fil" LangString FILE_Html ${LANG_SWEDISH} "HTML-fil" LangString TITLE_SecThemes ${LANG_SWEDISH} "Teman" LangString DESC_SecThemes ${LANG_SWEDISH} "Ytterligare teman för QupZilla" ;;;;Polish LangString TITLE_SecMain ${LANG_POLISH} "Składniki podstawowe" LangString TITLE_SecTranslations ${LANG_POLISH} "Tłumaczenia" LangString TITLE_SecPlugins ${LANG_POLISH} "Wtyczki" LangString TITLE_SecDesktop ${LANG_POLISH} "Ikona pulpitu" LangString TITLE_SecExtensions ${LANG_POLISH} "Skojarzenia plików" LangString TITLE_SecThemes ${LANG_POLISH} "Motywy" LangString FILE_Htm ${LANG_POLISH} "Plik HTM" LangString FILE_Html ${LANG_POLISH} "Plik HTML" ; LangString DESC_SecMain ${LANG_POLISH} "Podstawowe składniki programu." LangString DESC_SecTranslations ${LANG_POLISH} "Instalacja dodatkowych wersji językowych. Domyślnie tylko język angielski." LangString DESC_SecPlugins ${LANG_POLISH} "Instalacja dodatkowych wtyczek." LangString DESC_SecDesktop ${LANG_POLISH} "Dodaj skrót do pulpitu." LangString DESC_SecExtensions ${LANG_POLISH} "Skojarz przeglądarkę QupZilla z plikami .htm i .html" LangString DESC_SecThemes ${LANG_POLISH} "Dodatkowe motywy dla przeglądarki QupZilla" LangString MSG_InstallationCanceled ${LANG_POLISH} "Proces anulowany przez użytkownika." LangString MSG_RunningInstance ${LANG_POLISH} "QupZilla jest już uruchomiona! Chcesz aby instalator spróbował ją wyłączyć?" LangString DESC_SecProtocols ${LANG_POLISH} "Skojarz QupZille z linkami http(s) i protokołem ftp" LangString DESC_SecSetASDefault ${LANG_POLISH} "Ustaw QupZille jako domyślną przeglądarke" LangString TITLE_SecProtocols ${LANG_POLISH} "Protokół Skojarzeń" LangString TITLE_SecSetASDefault ${LANG_POLISH} "Domyślna Przeglądarka" LangString PRODUCT_DESC ${LANG_POLISH} "QupZilla jest nową, szybką i bezpieczną zbudowaną na otwartych źródłach przeglądarką . QupZilla podlega licencji GPL wersji 3 lub każdej późniejszej. Bazuje na silniku WebKit oraz Frameworku Qt." ;;;;Ukrainian LangString TITLE_SecMain ${LANG_UKRAINIAN} "Основні компоненти" LangString TITLE_SecTranslations ${LANG_UKRAINIAN} "Переклади" LangString TITLE_SecPlugins ${LANG_UKRAINIAN} "Плаґіни" LangString TITLE_SecDesktop ${LANG_UKRAINIAN} "Іконка на робочому столі" LangString TITLE_SecExtensions ${LANG_UKRAINIAN} "Асоціювання файлів" LangString TITLE_SecThemes ${LANG_UKRAINIAN} "Теми" LangString FILE_Htm ${LANG_UKRAINIAN} "Файл HTM" LangString FILE_Html ${LANG_UKRAINIAN} "Файл HTML" ; LangString DESC_SecMain ${LANG_UKRAINIAN} "Основні компоненти програми." LangString DESC_SecTranslations ${LANG_UKRAINIAN} "Доступні інші переклади для встановлення. Мова за умовчуванням - англійська." LangString DESC_SecPlugins ${LANG_UKRAINIAN} "Доступні інші плаґіни для встановлення." LangString DESC_SecDesktop ${LANG_UKRAINIAN} "Додати посилання на робочий стіл." LangString DESC_SecExtensions ${LANG_UKRAINIAN} "Асоціювати QupZill'у з файлами .htm і .html" LangString DESC_SecThemes ${LANG_UKRAINIAN} "Додаткові теми для QupZill'и" ;;;;Persian (Farsi) LangString PRODUCT_DESC ${LANG_FARSI} "‫کوپزیلا مرورگر اینترنتی متن‌باز، جدید، سریع و ایمنی است. کوپزیلا تحت توافقنامه GPL نسخه ۳ یا هر نسخه جدیدتر آن است. کوپزیلا تحت هسته وب‌کیت و چارچوب کیوت می‌باشد.‬" ; LangString TITLE_SecMain ${LANG_FARSI} "بخش اصلی" LangString TITLE_SecTranslations ${LANG_FARSI} "برگردان‌ها" LangString TITLE_SecPlugins ${LANG_FARSI} "افزونه‌ها" LangString TITLE_SecDesktop ${LANG_FARSI} "آیکون میزکار" LangString TITLE_SecExtensions ${LANG_FARSI} "تخصیص فایل" LangString TITLE_SecThemes ${LANG_FARSI} "فرهشت‌ها" LangString TITLE_SecSetASDefault ${LANG_FARSI} "مرورگر پیش‌فرض" LangString TITLE_SecProtocols ${LANG_FARSI} "تخصیص پروتکل" LangString FILE_Htm ${LANG_FARSI} "HTM File" LangString FILE_Html ${LANG_FARSI} "HTML File" ; LangString DESC_SecMain ${LANG_FARSI} "بخش اصلی نرم‌افزار." LangString DESC_SecTranslations ${LANG_FARSI} "دیگر برگردان‌های دردسترس. پیش فرض انگلیسی است." LangString DESC_SecPlugins ${LANG_FARSI} "افزونه‌های دیگر که برای نصب در دسترس هستند." LangString DESC_SecDesktop ${LANG_FARSI} "افزودن میان‌برِ آغازگر به میزکار" LangString DESC_SecExtensions ${LANG_FARSI} "کوپزیلا را برای بازکردن فایل‌های ‎.htm(l)‎ اختصاص می‌دهد." LangString DESC_SecThemes ${LANG_FARSI} "فرهشت‌های اضافی برای کوپزیلا" LangString DESC_SecSetASDefault ${LANG_FARSI} "تنظیم کوپزیلا به عنوان مرورگر پیش‌فرض" LangString DESC_SecProtocols ${LANG_FARSI} "کوپزیلا را به پروتکل‌های http(s)‎ و ftp اختصاص می‌دهد." ; LangString MSG_RunningInstance ${LANG_FARSI} "کوپزیلا هم‌اکنون در حال اجراست! آیا می‌خواهید برنامه نصب تلاش کند به اجرای آن خاتمه دهد؟" LangString MSG_InstallationCanceled ${LANG_FARSI} "فرایند توسط کاربر لغو گردید." ;;;;Serbian LangString PRODUCT_DESC ${LANG_SERBIAN} "Капзила је нови, брз и сигуран веб прегледач отвореног кода. Лиценцирана под ГПЛ в3 лиценцом или (по властитом нахођењу) каснијим издањем те лиценце. Заснована на ВебКит језгри и Кјут програмском окружењу." ; LangString TITLE_SecMain ${LANG_SERBIAN} "Главне компоненте" LangString TITLE_SecTranslations ${LANG_SERBIAN} "Преводи" LangString TITLE_SecPlugins ${LANG_SERBIAN} "Проширења" LangString TITLE_SecDesktop ${LANG_SERBIAN} "Икона на радној површи" LangString TITLE_SecExtensions ${LANG_SERBIAN} "Придружења фајлова" LangString TITLE_SecThemes ${LANG_SERBIAN} "Теме" LangString TITLE_SecSetASDefault ${LANG_SERBIAN} "Подразумеван прегледач" LangString TITLE_SecProtocols ${LANG_SERBIAN} "Придружења протокола" LangString FILE_Htm ${LANG_SERBIAN} "ХТМ фајл" LangString FILE_Html ${LANG_SERBIAN} "ХТМЛ фајл" ; LangString DESC_SecMain ${LANG_SERBIAN} "Главне компоненте програма." LangString DESC_SecTranslations ${LANG_SERBIAN} "Остали доступни преводи. Енглески је подразумеван." LangString DESC_SecPlugins ${LANG_SERBIAN} "Остала проширења - прикључци." LangString DESC_SecDesktop ${LANG_SERBIAN} "Покретач програма на радној површи." LangString DESC_SecExtensions ${LANG_SERBIAN} "Отварај .htm(l) фајлове у Капзили." LangString DESC_SecThemes ${LANG_SERBIAN} "Додатне теме за Капзилу" LangString DESC_SecSetASDefault ${LANG_SERBIAN} "Постави Капзилу за подразумевани веб прегледач." LangString DESC_SecProtocols ${LANG_SERBIAN} "Отварај http(s) и ftp протоколе у Капзили." ; LangString MSG_RunningInstance ${LANG_SERBIAN} "Капзила је већ покренута! Желите ли да инсталатер покуша да је угаси?" LangString MSG_InstallationCanceled ${LANG_SERBIAN} "Корисник је отказао процес." ;;;;SerbianLatin LangString PRODUCT_DESC ${LANG_SERBIANLATIN} "Kapzila je novi, brz i siguran veb pregledač otvorenog koda. Licencirana pod GPL v3 licencom ili (po vlastitom nahođenju) kasnijim izdanjem te licence. Zasnovana na VebKit jezgri i Kjut programskom okruženju." ; LangString TITLE_SecMain ${LANG_SERBIANLATIN} "Glavne komponente" LangString TITLE_SecTranslations ${LANG_SERBIANLATIN} "Prevodi" LangString TITLE_SecPlugins ${LANG_SERBIANLATIN} "Proširenja" LangString TITLE_SecDesktop ${LANG_SERBIANLATIN} "Ikona na radnoj površi" LangString TITLE_SecExtensions ${LANG_SERBIANLATIN} "Pridruženja fajlova" LangString TITLE_SecThemes ${LANG_SERBIANLATIN} "Teme" LangString TITLE_SecSetASDefault ${LANG_SERBIANLATIN} "Podrazumevan pregledač" LangString TITLE_SecProtocols ${LANG_SERBIANLATIN} "Pridruženja protokola" LangString FILE_Htm ${LANG_SERBIANLATIN} "HTM fajl" LangString FILE_Html ${LANG_SERBIANLATIN} "HTML fajl" ; LangString DESC_SecMain ${LANG_SERBIANLATIN} "Glavne komponente programa." LangString DESC_SecTranslations ${LANG_SERBIANLATIN} "Ostali dostupni prevodi. Engleski je podrazumevan." LangString DESC_SecPlugins ${LANG_SERBIANLATIN} "Ostala proširenja - priključci." LangString DESC_SecDesktop ${LANG_SERBIANLATIN} "Pokretač programa na radnoj površi." LangString DESC_SecExtensions ${LANG_SERBIANLATIN} "Otvaraj .htm(l) fajlove u Kapzili." LangString DESC_SecThemes ${LANG_SERBIANLATIN} "Dodatne teme za Kapzilu" LangString DESC_SecSetASDefault ${LANG_SERBIANLATIN} "Postavi Kapzilu za podrazumevani veb pregledač." LangString DESC_SecProtocols ${LANG_SERBIANLATIN} "Otvaraj http(s) i ftp protokole u Kapzili." ; LangString MSG_RunningInstance ${LANG_SERBIANLATIN} "Kapzila je već pokrenuta! Želite li da instalater pokuša da je ugasi?" LangString MSG_InstallationCanceled ${LANG_SERBIANLATIN} "Korisnik je otkazao proces." ;;;;Hebrew LangString PRODUCT_DESC ${LANG_HEBREW} "QupZilla הינו דפדפן WWW קוד פתוח חדש, מהיר ומאובטח. QupZilla רשוי תחת הרשיון GPL גרסא 3 או (כאופציה השמורה לך) כל גרסא מאוחרת יותר. זה מבוסס על ליבת WebKit ועל Qt Framework." ; LangString TITLE_SecMain ${LANG_HEBREW} "רכיבים עיקריים" LangString TITLE_SecTranslations ${LANG_HEBREW} "תרגומים" LangString TITLE_SecPlugins ${LANG_HEBREW} "תוספות" LangString TITLE_SecDesktop ${LANG_HEBREW} "סמל שולחן עבודה" LangString TITLE_SecExtensions ${LANG_HEBREW} "שיוכי קובץ" LangString TITLE_SecThemes ${LANG_HEBREW} "ערכות נושא" LangString TITLE_SecSetASDefault ${LANG_HEBREW} "דפדפן ברירת מחדל" LangString TITLE_SecProtocols ${LANG_HEBREW} "שיוכי פרוטוקול" LangString FILE_Htm ${LANG_HEBREW} "קובץ HTM" LangString FILE_Html ${LANG_HEBREW} "קובץ HTML" ; LangString DESC_SecMain ${LANG_HEBREW} "רכיבים עיקריים של יישום." LangString DESC_SecTranslations ${LANG_HEBREW} "תרגומים אחרים זמינים להתקנה. ברירת מחדל הינה English." LangString DESC_SecPlugins ${LANG_HEBREW} "תוספות אחרות זמינות להתקנה." LangString DESC_SecDesktop ${LANG_HEBREW} "הוסף משגר אל שולחן עבודה." LangString DESC_SecExtensions ${LANG_HEBREW} "שייך את QupZilla עם קבצי .htm(l)" LangString DESC_SecThemes ${LANG_HEBREW} "ערכות נושא נוספות עבור QupZilla" LangString DESC_SecSetASDefault ${LANG_HEBREW} "הגדר את Qupzilla כדפדפן אינטרנט ברירת מחדל" LangString DESC_SecProtocols ${LANG_HEBREW} "שייך את QupZilla עם פרוטוקול http(s) ופרוטוקול ftp" ; LangString MSG_RunningInstance ${LANG_HEBREW} "QupZilla כבר מורץ כעת! האם ברצונך מהמתקין לנסות לסיימו?" LangString MSG_InstallationCanceled ${LANG_HEBREW} "תהליך בוטל על ידי משתמש." ;;;;Basque LangString PRODUCT_DESC ${LANG_BASQUE} "QupZilla iturburu-irekiko WWW nabigatzaile berri, azkar eta seguru bat da. QupZilla GPL 3 bertsioa baimenpean dago edo (zure aukeran) edozein bertsio berriagoan. WebKit nukleoan eta Qt Framework-ean ohinarrituta dago." ; LangString TITLE_SecMain ${LANG_BASQUE} "Osagai Nagusiak" LangString TITLE_SecTranslations ${LANG_BASQUE} "Itzulpenak" LangString TITLE_SecPlugins ${LANG_BASQUE} "Pluginak" LangString TITLE_SecDesktop ${LANG_BASQUE} "Mahaigain Ikurra" LangString TITLE_SecExtensions ${LANG_BASQUE} "Agiri Elkarketa" LangString TITLE_SecThemes ${LANG_BASQUE} "Azalgaiak" LangString TITLE_SecSetASDefault ${LANG_BASQUE} "Berezko Nabigatzailea" LangString TITLE_SecProtocols ${LANG_BASQUE} "Protokolo Elkarketak" LangString FILE_Htm ${LANG_BASQUE} "HTM Agiria" LangString FILE_Html ${LANG_BASQUE} "HTML Agiria" ; LangString DESC_SecMain ${LANG_BASQUE} "Aplikazioaren osagai nagusiak." LangString DESC_SecTranslations ${LANG_BASQUE} "Ezartzeko eskuragarri dauden beste itzulpenak. Berezkoa Ingelera da." LangString DESC_SecPlugins ${LANG_BASQUE} "Ezartzeko eskuragarri dauden beste pluginak." LangString DESC_SecDesktop ${LANG_BASQUE} "Gehitu abiarazlea mahaigainean." LangString DESC_SecExtensions ${LANG_BASQUE} "Elkartu QupZilla .htm(l) agiriekin" LangString DESC_SecThemes ${LANG_BASQUE} "QupZilla-rentzako azalgai gehigarriak" LangString DESC_SecSetASDefault ${LANG_BASQUE} "Ezarri Qupzilla berezko internet nabigatzaile bezala" LangString DESC_SecProtocols ${LANG_BASQUE} "Elkartu QupZilla http(s) eta ftp protokoloekin" ; LangString MSG_RunningInstance ${LANG_BASQUE} "QupZilla jadanik ekinean dago! Nahi duzu ezartzaileak hura amaitzen saiatzea?" LangString MSG_InstallationCanceled ${LANG_BASQUE} "Prozesua erabiltzaileak ezeztaturik." ;;;;;;;;; ;;;;;;;;; ; Unfinished translations ;;;;;;;;; ;;;;;;;;; LangString PRODUCT_DESC ${LANG_SLOVAK} "QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework." LangString PRODUCT_DESC ${LANG_DUTCH} "QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework." LangString PRODUCT_DESC ${LANG_GREEK} "QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework." LangString PRODUCT_DESC ${LANG_ITALIAN} "QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework." LangString PRODUCT_DESC ${LANG_ROMANIAN} "QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework." LangString PRODUCT_DESC ${LANG_TRADCHINESE} "QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework." LangString PRODUCT_DESC ${LANG_SIMPCHINESE} "QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework." LangString PRODUCT_DESC ${LANG_INDONESIAN} "QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework." LangString PRODUCT_DESC ${LANG_GEORGIAN} "QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework." LangString PRODUCT_DESC ${LANG_SWEDISH} "QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework." LangString PRODUCT_DESC ${LANG_UKRAINIAN} "QupZilla is a new, fast and secure open-source WWW browser. QupZilla is licensed under GPL version 3 or (at your option) any later version. It is based on WebKit core and Qt Framework." LangString TITLE_SecSetASDefault ${LANG_SLOVAK} "Default Browser" LangString TITLE_SecSetASDefault ${LANG_DUTCH} "Default Browser" LangString TITLE_SecSetASDefault ${LANG_GREEK} "Default Browser" LangString TITLE_SecSetASDefault ${LANG_ITALIAN} "Default Browser" LangString TITLE_SecSetASDefault ${LANG_ROMANIAN} "Default Browser" LangString TITLE_SecSetASDefault ${LANG_TRADCHINESE} "Default Browser" LangString TITLE_SecSetASDefault ${LANG_SIMPCHINESE} "Default Browser" LangString TITLE_SecSetASDefault ${LANG_INDONESIAN} "Default Browser" LangString TITLE_SecSetASDefault ${LANG_GEORGIAN} "Default Browser" LangString TITLE_SecSetASDefault ${LANG_SWEDISH} "Default Browser" LangString TITLE_SecSetASDefault ${LANG_UKRAINIAN} "Default Browser" LangString TITLE_SecProtocols ${LANG_SLOVAK} "Protocol Associations" LangString TITLE_SecProtocols ${LANG_DUTCH} "Protocol Associations" LangString TITLE_SecProtocols ${LANG_GREEK} "Protocol Associations" LangString TITLE_SecProtocols ${LANG_ITALIAN} "Protocol Associations" LangString TITLE_SecProtocols ${LANG_ROMANIAN} "Protocol Associations" LangString TITLE_SecProtocols ${LANG_TRADCHINESE} "Protocol Associations" LangString TITLE_SecProtocols ${LANG_SIMPCHINESE} "Protocol Associations" LangString TITLE_SecProtocols ${LANG_INDONESIAN} "Protocol Associations" LangString TITLE_SecProtocols ${LANG_GEORGIAN} "Protocol Associations" LangString TITLE_SecProtocols ${LANG_SWEDISH} "Protocol Associations" LangString TITLE_SecProtocols ${LANG_UKRAINIAN} "Protocol Associations" LangString DESC_SecSetASDefault ${LANG_SLOVAK} "Set Qupzilla as default internet browser" LangString DESC_SecSetASDefault ${LANG_DUTCH} "Set Qupzilla as default internet browser" LangString DESC_SecSetASDefault ${LANG_GREEK} "Set Qupzilla as default internet browser" LangString DESC_SecSetASDefault ${LANG_ITALIAN} "Set Qupzilla as default internet browser" LangString DESC_SecSetASDefault ${LANG_ROMANIAN} "Set Qupzilla as default internet browser" LangString DESC_SecSetASDefault ${LANG_TRADCHINESE} "Set Qupzilla as default internet browser" LangString DESC_SecSetASDefault ${LANG_SIMPCHINESE} "Set Qupzilla as default internet browser" LangString DESC_SecSetASDefault ${LANG_INDONESIAN} "Set Qupzilla as default internet browser" LangString DESC_SecSetASDefault ${LANG_GEORGIAN} "Set Qupzilla as default internet browser" LangString DESC_SecSetASDefault ${LANG_SWEDISH} "Set Qupzilla as default internet browser" LangString DESC_SecSetASDefault ${LANG_UKRAINIAN} "Set Qupzilla as default internet browser" LangString DESC_SecProtocols ${LANG_SLOVAK} "Associate QupZilla with http(s) and ftp protocols" LangString DESC_SecProtocols ${LANG_DUTCH} "Associate QupZilla with http(s) and ftp protocols" LangString DESC_SecProtocols ${LANG_GREEK} "Associate QupZilla with http(s) and ftp protocols" LangString DESC_SecProtocols ${LANG_ITALIAN} "Associate QupZilla with http(s) and ftp protocols" LangString DESC_SecProtocols ${LANG_ROMANIAN} "Associate QupZilla with http(s) and ftp protocols" LangString DESC_SecProtocols ${LANG_TRADCHINESE} "Associate QupZilla with http(s) and ftp protocols" LangString DESC_SecProtocols ${LANG_SIMPCHINESE} "Associate QupZilla with http(s) and ftp protocols" LangString DESC_SecProtocols ${LANG_INDONESIAN} "Associate QupZilla with http(s) and ftp protocols" LangString DESC_SecProtocols ${LANG_GEORGIAN} "Associate QupZilla with http(s) and ftp protocols" LangString DESC_SecProtocols ${LANG_SWEDISH} "Associate QupZilla with http(s) and ftp protocols" LangString DESC_SecProtocols ${LANG_UKRAINIAN} "Associate QupZilla with http(s) and ftp protocols" LangString MSG_RunningInstance ${LANG_SLOVAK} "QupZilla is already running! Do you want the installer try to terminate it?" LangString MSG_RunningInstance ${LANG_DUTCH} "QupZilla is already running! Do you want the installer try to terminate it?" LangString MSG_RunningInstance ${LANG_GREEK} "QupZilla is already running! Do you want the installer try to terminate it?" LangString MSG_RunningInstance ${LANG_ITALIAN} "QupZilla is already running! Do you want the installer try to terminate it?" LangString MSG_RunningInstance ${LANG_ROMANIAN} "QupZilla is already running! Do you want the installer try to terminate it?" LangString MSG_RunningInstance ${LANG_TRADCHINESE} "QupZilla is already running! Do you want the installer try to terminate it?" LangString MSG_RunningInstance ${LANG_SIMPCHINESE} "QupZilla is already running! Do you want the installer try to terminate it?" LangString MSG_RunningInstance ${LANG_INDONESIAN} "QupZilla is already running! Do you want the installer try to terminate it?" LangString MSG_RunningInstance ${LANG_GEORGIAN} "QupZilla is already running! Do you want the installer try to terminate it?" LangString MSG_RunningInstance ${LANG_SWEDISH} "QupZilla is already running! Do you want the installer try to terminate it?" LangString MSG_RunningInstance ${LANG_UKRAINIAN} "QupZilla is already running! Do you want the installer try to terminate it?" LangString MSG_InstallationCanceled ${LANG_SLOVAK} "Process cancelled by user." LangString MSG_InstallationCanceled ${LANG_DUTCH} "Process cancelled by user." LangString MSG_InstallationCanceled ${LANG_GREEK} "Process cancelled by user." LangString MSG_InstallationCanceled ${LANG_ITALIAN} "Process cancelled by user." LangString MSG_InstallationCanceled ${LANG_ROMANIAN} "Process cancelled by user." LangString MSG_InstallationCanceled ${LANG_TRADCHINESE} "Process cancelled by user." LangString MSG_InstallationCanceled ${LANG_SIMPCHINESE} "Process cancelled by user." LangString MSG_InstallationCanceled ${LANG_INDONESIAN} "Process cancelled by user." LangString MSG_InstallationCanceled ${LANG_GEORGIAN} "Process cancelled by user." LangString MSG_InstallationCanceled ${LANG_SWEDISH} "Process cancelled by user." LangString MSG_InstallationCanceled ${LANG_UKRAINIAN} "Process cancelled by user." qupzilla-1.6.0/windows/uninstall.ico000066400000000000000000000226761226107126500175750ustar00rootroot0000000000000000 %(0` ehɿCD??@Ƽ:A@?ɿ<@=@?D@?@?A<=@??AC>C?<Ĺ9A=A>Ƽ:=?@@=@@Ⱦ;DdhG˾829ķ39ƹ53;ƹ6Ź63̿9ǻ8;<;ǻ8=ǻ8;ɽ9Ǽ8;;˿9=<;:˿81¶59ǻ7ɼ814˾677Ÿ4ʽ57ö22ȼ8J>˾6Ķ.µ.3Ǻ15.ƹ2˾5ö22ǻ5Ȼ6:˿89ĸ6:ɽ89ʾ8ʾ8˿9˿9ǻ7=;;3˾80˾88ƹ500ƹ3˾34Ǻ1Ȼ13ɻ/,ö.9>˿=ǹ1Ǻ/,ķ0Ϳ3Ÿ26ö372Ÿ5ĸ59::ʾ8ø6;::::;;ȼ8>>˿9ĸ6˾84:814ĸ4ȼ55ƹ2ƺ27ɼ1.ǹ/0ķ2B@ö1ʼ1ķ0ö0˽4ǻ3ɼ578ʾ84Ź69:;:Ź7=CX|ݕߓیmTȼ;;ȼ8ɽ8:ƺ73ʾ8ʽ78˿6185/Ϳ2̾1õ.7CA5.ķ1ķ1µ27ʽ6˾79:÷5Ź7ɽ8<=Giݘ\<:4˿99:;÷487175Ķ039AB84.1ʽ5ɼ5:̿8Ȼ7==ǻ8ɽ9Oſn6<:>ȼ7Ǻ6:388Ǻ344̿6>?67914ƹ6ĸ5<¶6:Ź7:4:9Ź365˾3Ǻ5A@ƺ5ɼ499/25ƺ8;5^Ĺ9ʾ9ĸ6;949̿5Ÿ2ɻ2ɽ6?>̿7÷3ĸ59˿8135Ĺ7xŴȽC:ƺ74˾8ɽ7ƺ5ɽ5Ǻ35ƽ<ɾ=4¶404̿9ø723ύجέʭ·F6ɽ86ɼ7ɽ73.3@:433/17ĸ8Ѕ̶D7Ǻ8520/·5ź<7.03411nɿǻ:5321/2;;/-.34ŻKֳρ32..16ĺ=ɿA72//2ؙҊJ.0126ø<52564X۠sӖ3202499.+05ڝvoѱsQ/0027520-N}x{vttvybtkhޤ͊331062++,wn߂yogcaa```Hd~՞֍߫>,+,4/*+1Ԛߙߕߐޅބhaa```^]gpeބpfȀ۟۬ۏߌߑߘߛޥީ_.--13-+Eکݪٞާݞۖܒܐ݋zfmm``_]\dpl[ӆZǓy݇݉܌ܑݕܗߦܡܡ߫{-)*0,''^٦Օُٜؔڏ؇ocbcr\\Z]jl]YWټؕbqb}ۈڋڏؑڜٞ֘٠Ɖ;(*/-((zχޯܮԅ~iab`][GHbcXYZY\ӃWa~º¹ƍӊԐ؜Ғ՗ΏN+,1,')Ǔϊ߲zcYb__X>mJWXZZWeٱɹqɿ֗ЍϏˍSz$z$)){t"zs"ľА̓חUabb``NlOK][ZZT݄Б[[??DDIINNwwĎɆńNvo wo }&+~)5Ïאligdlt]F][\[[[Ym77 !!&&,,aa‡y@yq"vo"|'̓ۚtzkhesp_^]jk[\\\d ""''..44;;̆͘fK9or[dvk__ab`r_\^] ""''..44;;AAmQWWb_`fhecg݂c^˹nee!!uu77::::ȢܨأԞIHRaknkig^b99aaii3333``aBVltqomkbϳ__aa----++ҧjtxutnhaee``tt&&&&%%vvޛz{zsijځkk[[ii !!!! MM}|xy{uppEEXXaaHHޚ؀trrFFBB,, XX^^CC֕ޚuuGGDD@@==mm``>>ߴ߮֙JJFFCCdd[[؜MMHHFFxxvvӮyyKKGG~~8877zz2222UUOOKKGG==;;9988555555ŧٟȰE˲HNNKKGGEECC@@>><<::9999888877Ԏ۬ϹWOOKKHHFFDDBB@@??==<<;;;;ծyyLLIIGGEEDDBBAA@@ffϬŏttrrppooկãŦѬϫٟٟ{|ڠ{qupzilla-1.6.0/windows/welcome.bmp000066400000000000000000004556561226107126500172330ustar00rootroot00000000000000BM[6(:x[  ɾɾȾɿƿŽŻƺŹŹŻǾƻźĺźǼȾɿƽļŽǿȽȿĺŻƓxid]ۻwl]A;3{ٹvjZ?90pڷzm\?90|lڷsbF@7~ugĔtbHxl[֩wik~̺նĵسqZK@2reTԵܸfUA&S> mV5eګ͕_qX7S?!J4J2I1I2N8\G)jLu\cWGKC8QI@jc[޴ӛq{lWpg[sݵݳվ~nqkcװpYK<)eO1}Xxaũt]H+I2I.P5 dJ$v^-K=+J<(L;%_H(yX+wR`@J0J3J6J9#K=+bUCţ]P=K;'J9"T>J5`I(bxgOKC8ME:t`Ť޴ҤqYKA3K?.UٲyyZQG8qЯl[I.I3I/ I-I-I-I-I-I. J2J5J9"vbFҤ״ncRKC7UK>޶XN@KB5LC6oYɮگ«QH;KB5KB5yiTūڮط|gLC7K@2J<(R= J2J2J5J9"K>.sgU̬ݱھo`LKA2K@1K@0LA1sXǨ|yW_G&J7J9!K;'NA0oRI;K?.N>)j;rU+J8mV6\K5KA4]THųݲ̘lQK?0K=,}d@뿀ԵdZJd[MѾ߽[N&K:$K;%K<'M@0sĞ[QBK@2M?+KLXC(M>(K<(K>-_TEϻǕt`BK<)J;'ZF)ŝbΔs\PI?ཫ|\QByiS}w{mXn^GkY?o]AuU׹޳طkaRKD9laRϮ¸TL@KD9rgVղ߿~jME:KD9e\MͭϱrfTKC8KC8_TEҲ_RC-K>.K?/NA/o۲سydKB6KB6KB5g\Mª߷ԧzXK:#K:"K:"K:$K>+nbPηˣm`NKA4L?.qDdmCL=)K=(K=)XK:ŰȡfU=J:#K8O8b4լolPLD9yhݽڷ~YOAr]ƥְqeSKC8bXJ̬ķTLAKD9wdضŽmME;KD9mbSٷvaKB6KB6QH:x⺁ubFKA4KB6MD6vܳϮpeTKC7KC8ME:{طt\K<(K;&L<%N>'L?,VL<֩s\KB4K@1s]=qȣl^N8K=+K=)WI5íʴSG6J;'mP'_&N6dK'O>&J?.nbQάݹ|UL>i׳ޱܿi\HKA5XN@ҽ·TLAKD:{hڹœxOH=KD9mcT۹ֱRF6K?/J>,rOڲ{lNKC7LD:MF:zݸͬe[LKD8KC8XOBõ᭢hZGn\C}gGs`DMB3TL?|ഠqNE7KA4_P:ѬxҜnMB3K?/[L9ɰܴzNE7L@0jBəRmQ)J7J8J:#iX@ĚذjNF8q۸ͳ^Q>K@0SG7޵俺TL@KD9{o^׶{PH/K@2aכҷ`S=K@.K@.mNԜ㽹VJ7K@0J@/nQΙߴ’rNL=(K>+OD3r^ůԳ~raLD8JB6j_Nñ۟uw\1J4J0 I.K0T:]EaJ&`I%VB"I9#I:'I;*taAĄަԪv]LA1K@/sTԛ߯Ťj_LKA3JA2pTϚݮȡwTU? J4K7^L2pYviWLC8JB6MD5hݶݣimU.L4I.I-I-I-I-I-I/ I3I5I8 jU2yڜȾ~vdg]L|ڦԱzseh`R{۫ޱѽlQYD&N9N<"N?+OC2YM